Public keys, private keys, and hash functions make the secure internet possible.
By Josh Fruhlinger
Contributing writer, CSO |
Cryptography is the art of keeping information secure by transforming it into form that unintended recipients cannot understand. In cryptography, an original human readable message, referred to as plaintext, is changed by means of an algorithm, or series of mathematical operations, into something that to an uninformed observer would look like gibberish; this gibberish is called ciphertext.
Cryptographic systems require some method for the intended recipient to be able to make use of the encrypted message—usually, though not always, by transforming the ciphertext back into plaintext.
Cryptography vs. cryptology vs. encryption
Before we move into the meat of this article, let's define a couple terms related to cryptography. The syllable crypt may make you think of tombs, but it comes from a Greek word that means "hidden" or "secret." Cryptography literally means "secret writing." Cryptology, meanwhile, means something like "knowledge of secrecy"; if cryptography is the practice of writing secret messages, then cryptology is the theory, although the two words are often used interchangeably. Encryption—"making secret"—is what we call the process of turning plaintext into ciphertext Encryption is an important part of cryptography, but doesn't encompass the entire science. Its opposite is decryption.
One important aspect of the encryption process is that it almost always involves both an algorithm and a key. A key is just another piece of information, almost always a number, that specifies how the algorithm is applied to the plaintext in order to encrypt it. In a secure cryptographic system, even if you know the method by which some message is encrypted, it should be difficult or impossible to decrypt without that key. Keep algorithms and keys in your mind, because they'll be important as we move on.
History of cryptography
This is all very abstract, and a good way to understand the specifics of what we're talking about is to look at one of the earliest known forms of cryptography. It's known as the Caesar cipher, because Julius Caesar used it for his confidential correspondence; as his biographer Suetonius described it, "if he had anything confidential to say, he wrote it in cipher, that is, by so changing the order of the letters of the alphabet ... If anyone wishes to decipher these, and get at their meaning, he must substitute the fourth letter of the alphabet, namely D, for A, and so with the others."
Suetonius's description can be broken down into the two cryptographic elements we've discussed, the algorithm and the key. The algorithm here is simple: each letter is replaced by another letter from later in the alphabet. The key is how many letters later in the alphabet you need to go to create your ciphertext. It's three in the version of the cipher Suetonius describes, but obviously other variations are possible—with a key of four, A would become E, for instance.
A few things should be clear from this example. Encryption like this offers a fairly simple way to secretly send any message you like. Contrast that with a system of code phrases where, say, "Let's order pizza" means "I'm going to invade Gaul." To translate that sort of code, people at both ends of the communication chain would need a book of code phrases, and you'd have no way to encode new phrases you hadn't thought of in advance. With the Caesar cipher, you can encrypt any message you can think of. The tricky part is that everyone communicating needs to know the algorithm and the key in advance, though it's much easier to safely pass on and keep that information than it would be with a complex code book.
The Caesar cipher is what's known as a substitution cipher, because each letter is substituted with another one; other variations on this, then, would substitute letter blocks or whole words. For most of history, cryptography consisted of various substitution ciphers deployed to keep government and military communications secure. Medieval Arab mathematicians pushed the science forward, particularly the art of decryption—once researchers realized that certain letters in a given language are more common than others, it becomes easier to recognize patterns, for instance. But most pre-modern encryption is incredibly simple by modern standards, for the obvious reason that, before the advent of computers, it was difficult to perform mathematical transformations quickly enough to make encryption or decryption worthwhile.
In fact, the development of computers and advances in cryptography went hand in hand. Charles Babbage, whose idea for the Difference Engine presaged modern computers, was also interested in cryptography. During World War II, the Germans used the electromechanical Enigma machine to encrypt messages—and, famously, Alan Turing led a team in Britain that developed a similar machine to break the code, in the process laying some of the groundwork for the first modern computers. Cryptography got radically more complex as computers became available, but it remained the province of spies and generals for several more decades.
Principles of cryptography
Before we move on here to modern cryptography, let's pause to discuss two important principles that underlie it. The first is what's come to be known as Kerckhoffs’s principle, named after the 19th century Dutch cryptographer Auguste Kerckhoffs. Remember, as we said, any cryptographic system involves both an algorithm and a key. Kerckhoffs believed that "a cryptographic system should be secure even if everything about the system, except the key, is public knowledge."
Now, these were the days when cryptography had almost entirely military applications. The idea here is that, while it would be nice to keep your cryptographic system a secret, your opponent will almost certainly eventually figure it out. Claude Shannon, a World War II cryptographer who would go on to be a pioneer in information theory, put it more succinctly: "The enemy knows the system." What Kerckhoffs and Shannon are getting at is that you want to design an algorithm that doesn't need to be a secret in order to successfully conceal information.
That said, in today's world, the public nature of cryptographic algorithms is seen as something good in and of itself, rather than an unavoidable evil. Standard cryptographic algorithms have been widely studied and stress-tested, and trying to come up with your own private algorithms is doomed to failure as security through obscurity usually is.
What you do need to keep secret is your cryptographic key. We'll get to the mathematics of how that works in a moment, but for now, we'll touch on another cryptographic principle that makes that math possible: a reliance on one-way functions, mathematical operations that are very difficult to reverse. The classic example of a one-way function is the multiplication of two very large prime numbers together. While that calculation is simple to do, if you only had the end result, it would be very difficult, verging on impossible, to figure out the original two prime numbers. The question of whether any function can truly be one-way is debated by mathematicians, but many are irreversible in practice at the limits of our current computing power, so we'll leave that question aside as we move on.
Cryptography in network security
It was the formation of the first computer networks that started civilians thinking about the importance of cryptography. Computers were talking to each other over the open network, not just via direct connections to one another; that sort of networking was transformative in many great ways, but also made it trivially easy to snoop on data traveling across the network. And with financial services being an early use case for computer communication, it was necessary to find a way to keep information secret.
IBM led the way in the late 1960s with an encryption method known as "Lucifer", which was eventually codified by the US National Bureau of Standards as the first Data Encryption Standard (DES). As the internet began to grow in importance, more and better encryption was needed, and today a significant portion of data flying around the world is encrypted using varying techniques that we'll discuss in more detail in a moment.
What is cryptography used for?
We've already discussed some of the specific applications of cryptography, from keeping military secrets to transmitting financial data safely across the internet. In the bigger picture, though, there are some broad cybersecurity goals that we use cryptography to help us achieve, as cybersecurity consultant Gary Kessler explains. Using cryptographic techniques, security pros can:
- Keep the contents of data confidential
- Authenticate the identity of a message's sender and receiver
- Ensure the integrity of the data, showing that it hasn't been altered
- Demonstrate that the supposed sender really sent this message, a principle known as non-repudiation
You may recognize some of these principles from variations of the CIA triad. The first of these uses is the obvious one—you can keep data secret by encrypting it. The others take a bit of explanation, which we'll get into as we describe the different types of cryptography.
What are the types of cryptography?
There are numerous cryptographic algorithms in use, but in general they can be broken into three categories: symmetric cryptography, asymmetric cryptography, and hash functions. Each has its own role to play within the cryptographic landscape.
Symmetric cryptography. The Caesar cipher we discussed above is a great example of symmetric cryptography. In the example we used, if encrypted messages were being exchanged between Caesar and one of his centurions, both parties would have to know the key—in this case, how many letters forward or backwards in the alphabet you need to move to transform plaintext to ciphertext or vice versa. That's what makes it symmetrical. But the key needs to stay a secret between the two of them, which is why this is sometimes also called secret key cryptography. You couldn't send the key along with the message, for instance, because if both fell into enemy hands the message would be easy for them to decipher, defeating the whole purpose of encrypting it in the first place. Caesar and his centurion would presumably have to discuss the key when they saw each other in person, though obviously this is less than ideal when wars are being fought over long distances.
Symmetric cryptography is widely used to keep data confidential. It can be very useful for keeping a local hard drive private, for instance; since the same user is generally encrypting and decrypting the protected data, sharing the secret key is not an issue. Symmetric cryptography can also be used to keep messages transmitted across the internet confidential; however, to successfully make this happen, you need to deploy our next form of cryptography in tandem with it.
Asymmetric cryptography. Caesar may have been able to confer with his centurions in person, but you don't want to go into your bank and talk to the teller just to learn what the private key is for encrypting your electronic communication with the bank—that would defeat the purpose of online banking. In general, in order to function securely, the internet needs a way for communicating parties to establish a secure communications channel while only talking to each other across an inherently insecure network. The way this works is via asymmetric cryptography, which is sometimes called public key cryptography.
In asymmetric cryptography, each participant has two keys. One is public and is sent to anyone the party wishes to communicate with. That's the key used to encrypt messages. But the other key is private, shared with nobody, and it's necessary to decrypt those messages. To use a metaphor: think of the public key as opening a slot on a mailbox just wide enough to drop a letter in. You give that key to anyone who you think might send you a letter so they can open the slot and deliver the envelope. The private key is what you use to open the mailbox so you can get the letters out.
The mathematics of how you can use one key to encrypt a message and another to decrypt it are where the idea of one-way functions that we discussed above come into play: the two keys should be related to each other mathematically such that it's easy to derive the public key from the private key but not vice versa. For instance, the private key might be those two very large prime numbers, which you'd multiply together to get the public key. The Infosec Institute has a deep dive if you're interested.
The computations needed for asymmetric cryptography are much more complex and resource intensive that those behind symmetric infrastructure. Fortunately, you don't need to use it to protect every message you send online. Instead, what usually happens is that one party will use symmetric cryptography to encrypt a message containing yet another cryptographic key. This key, having been safely transmitted across the insecure internet, will then become the private key that encodes a much longer communications session encrypted via symmetric encryption.
- Internet Security
- Network Security
Page 1 of 2
7 hot cybersecurity trends (and 2 going cold)
What is cryptography how algorithms keep information secret and safe? ›
Cryptography provides for secure communication in the presence of malicious third-parties—known as adversaries. Encryption uses an algorithm and a key to transform an input (i.e., plaintext) into an encrypted output (i.e., ciphertext).What is cryptography answer? ›
Cryptography is the study of secure communications techniques that allow only the sender and intended recipient of a message to view its contents. The term is derived from the Greek word kryptos, which means hidden.What is cryptography quizlet? ›
Cryptography. The science of transforming information into an unintelligible form while it is being transmitted or stored so that unauthorized users can't access it. DES. Data Encryption Standard: A symmetric block cipher that encrypts data in 64-bit blocks. Decryption.What is cryptography and how does it protect data? ›
Cryptography is a form of securing digital data and messages often using special keys that only the sender and recipient have access to. Cryptography uses mathematical systems and algorithms to encrypt and decrypt data. Symmetrical cryptography uses the same key for both encryption and decryption.What is cryptography examples? ›
Examples of public-key cryptography include: RSA, used widely on the internet. Elliptic Curve Digital Signature Algorithm (ECDSA) used by Bitcoin. Digital Signature Algorithm (DSA) adopted as a Federal Information Processing Standard for digital signatures by NIST in FIPS 186-4. Diffie-Hellman key exchange.What is cryptography secret? ›
In this cryptography method (also known as symmetric-key cryptography), the single key needed to encrypt and decrypt messages is a shared secret between the communicating parties.What are the 3 main types of cryptographic algorithms? ›
- Hash functions.
- Symmetric-key algorithms.
- Asymmetric-key algorithms.
- Hash Functions.
- Symmetric-Key Algorithms for Encryption and Decryption.
Cryptography works by taking plaintext (or cleartext) and scrambling it into ciphertext, so that the encoded output can be understood only by the intended recipient. As ciphertext, the information should be unreadable to all except the intended recipient.What is basic cryptography? ›
Cryptography is technique of securing information and communications through use of codes so that only those person for whom the information is intended can understand it and process it. Thus preventing unauthorized access to information. The prefix “crypt” means “hidden” and suffix graphy means “writing”.What is cryptography kid definition? ›
Cryptography, or cryptology, is the practice and study of hiding information. It is sometimes called code, but this is not really a correct name. It is the science used to try to keep information secret and safe. Modern cryptography is a mix of mathematics, computer science, and electrical engineering.
What is cryptography describe the 3 main goals of cryptography? ›
The Objectives of Cryptography
Put another way, the goals are data privacy (confidential treatment), data authenticity (verified source), and data integrity (original and unaltered message). Non-repudiation refers to the combination of each of these three things to prove undeniable validity of the message or data.
Cryptography is the science of using mathematics to encrypt and decrypt data. Cryptography enables you to store sensitive information or transmit it across insecure networks (like the Internet) so that it cannot be read by anyone except the intended recipient.How is cryptography used to secure data in use? ›
Cryptography includes a set of techniques for scrambling or disguising data so that it is available only to someone who can restore the data to its original form. In current computer systems, cryptography provides a strong, economical basis for keeping data secret and for verifying data integrity.How safe is cryptography encryption? ›
Private key handling: Modern key cryptography is extremely secure. However, human error is still the biggest factor in most security issues. An error handling a private key could expose it to outside parties, rendering the encryption useless.How cryptography can be used to secure data at rest? ›
Encryption at rest is designed to prevent the attacker from accessing the unencrypted data by ensuring the data is encrypted when on disk. If an attacker obtains a hard drive with encrypted data but not the encryption keys, the attacker must defeat the encryption to read the data.What are the 2 main types of cryptographic algorithms? ›
Cryptography is broadly classified into two categories: Symmetric key Cryptography and Asymmetric key Cryptography (popularly known as public key cryptography). Now Symmetric key Cryptography is further categorized as Classical Cryptography and Modern Cryptography.
Cryptography is used everywhere in our daily lives. Each time you make an online purchase, conduct a banking transaction, or ping your email client, cryptography is working in the background. It secures all transmitted information in our IoT world, to authenticate people and devices, and devices to other devices.Are encryption algorithms kept secret? ›
Encryption uses complex algorithms to scramble data and decrypts the same data using a key provided by the message sender. Encryption ensures that information stays private and confidential, whether it's being stored or in transit. Any unauthorized access to the data will only see a chaotic array of bytes.What is the most commonly used cryptography algorithm? ›
- Wireless security,
- Processor security and file encryption,
- SSL/TLS protocol (website security),
- Wi-Fi security,
- Mobile app encryption,
- Most VPNs (virtual private network), etc.
One of the simplest types of encryption is the Shift Cipher. It provides a good introduction to encryption because it is easy to understand. The Shift Cipher is also called the "Caesar Cipher", because Julius Caesar liked to use it for his personal correspondence.
What are the main components of cryptography? ›
- A process or algorithm which is a set of rules that specify the mathematical steps needed to encipher or decipher data.
- A cryptographic key (a string of numbers or characters), or keys.
Confidentiality, integrity, availability.What are cryptography skills? ›
Cryptography is the use of a series of complex puzzles to conceal and uncover messages. Equations and computer coding convert plain, readable data into a format that only an authorized system or person can read. This allows the information to remain secure and enables parties to send and receive complex messages.What kind of math is cryptography? ›
Most encryption is based heavily on number theory, most of it being abstract algebra. Calculus and trigonometry isn't heavily used. Additionally, other subjects should be understood well; specifically probability (including basic combinatorics), information theory, and asymptotic analysis of algorithms.What is the first goal of cryptography? ›
First, the most common goal of cryptography is to preserve confidentiality. Confidentiality ensures that unauthorized individuals are not able to gain access to sensitive information.How and where is cryptography used commonly? ›
Cryptography is used in many applications like banking transactions cards, computer passwords, and e- commerce transactions.What is cryptography and its benefits? ›
Cryptography is an essential information security tool. It provides the four most basic services of information security − Confidentiality − Encryption technique can guard the information and communication from unauthorized revelation and access of information.How can cryptography be used to secure and protect financial data? ›
Cryptographic algorithms (or ciphers) play a large role in data security because they are used to generate cryptographic keys and digital signatures, protect payment transaction protection, secure web browsing, and message authentication. Learn more about encryption here.What is cryptography its types and how it works? ›
Cryptography is technique of securing information and communications through use of codes so that only those person for whom the information is intended can understand it and process it. Thus preventing unauthorized access to information. The prefix “crypt” means “hidden” and suffix graphy means “writing”.What are the benefits of cryptography? ›
- Confidentiality − Encryption technique can guard the information and communication from unauthorized revelation and access of information.
- Authentication − The cryptographic techniques such as MAC and digital signatures can protect information against spoofing and forgeries.
Why is cryptography important today? ›
As the foundation of modern security systems, cryptography is used to secure transactions and communications, safeguard personal identifiable information (PII) and other confidential data, authenticate identity, prevent document tampering, and establish trust between servers.How does cryptography algorithm work? ›
Cryptography algorithms are the means of altering data from a readable form to a protected form and back to the readable form. Cryptographic algorithms are used for important tasks such as data encryption, authentication, and digital signatures.