We all have messages we only want specific people to read, and as long as people have tried to hide things, there have been codes and ciphers scrambling those messages. The art of creating and using such codes and ciphers is called Cryptography, which comes from the Greek words for "hidden" and "writing".
Code and Cipher Terminology
It shouldn't be too surprising that cryptography, which is all about making things hard to read, has a lot of its own special words. The most important terms are below, and they'll help you better understand any cryptography resource.
- Plaintext: Plaintext is the readable message someone tries to send to someone else. Senders encrypt plaintext to hide it, and recipients decrypt the message to reveal the plaintext.
- Ciphertext: Ciphertext is what plaintext becomes when it's encrypted. Enemy agents who intercept an encrypted message only see the ciphertext.
- Cipher: A cipher turns plaintext into ciphertext using an algorithm. While it transforms and hides the plaintext, it doesn't have any meaning on its own.
- Code: A code is a kind of substitute language to express information without the use of a cipher. If your brother wants to tell you where your parents have hidden the cookies without revealing to your parents that he knows, he may use a code. Suppose you've agreed that "frisbee" = cookie and "mountain" = the top of the refrigerator. He may say, "The frisbees landed on the mountain." That is code.
- Block Cipher: A block cipher breaks a message into a set number of pieces and encrypts one piece, or block, at a time.
- Keyspace: Keyspace is the number of potential keys ciphertext has. The more possible keys, the more difficult the cipher becomes to break.
- Hash: A hashing cipher creates a "fingerprint" of a message instead of ciphertext. It works to ensure no data is lost and the message is the original one. Working with hashing ciphers creates new issues to look out for, and a good hashing cipher must be "deterministic", which means the same message put through the same cipher will always create the same fingerprint. It must also have low "collision". That means different messages put through the same cipher create different fingerprints.
- Monoalphabetic Cipher: This is a cipher that uses a single alphabet. Letters are usually just replaced with another letter in the same alphabet, like replacing S with Y. The Caesar, Pigpen, and Playfair ciphers are all monoalphabetic. Even Morse code is actually a monoalphabetic cipher.
- Polyalphabetic Cipher: These ciphers use more than one alphabet. The cipher has to include special signals that tell the recipient to change which alphabet they are using. The Alberti and Vigenere ciphers are good examples.
- Stream Cipher: This challenging cipher encrypts a message one letter at a time.
- Keys: Keys are words, phrases, etc. that are used to unlock or understand a cipher. A classic example is a book used to create a cipher. The cipher transforms plaintext into ciphertext by replacing each letter with the number of a page from the book that starts with that letter. If someone needed to encrypt the letter S, and page 14 began with the word "sunshine", then they could replace S with 14. Without the book, the key in this example, it would be extremely difficult to decrypt the message. There are two types of keys. Symmetrical keys are like the one used in the example above. You need the same key to encrypt and decrypt the message. Asymmetrical keys use a system with separate keys for encryption and decryption.
Famous Codes and Ciphers
There have been secret messages passed between spies, kingdoms, generals, and sweethearts for thousands of years. Some of the most famous codes and ciphers stand apart from the rest, though.
- Morse Code: This cipher of dots and dashes is used primarily by people at sea, but you've probably heard Morse Code for SOS, which is an international code for distress, used in movies.
- Enigma: Used by the Germans in WWII, this cipher and its breaking had major impacts on the course of the entire war.
- One Time Pad (OTP): This type of cipher became popular in the late 1800's, and its name is so direct it's kind of funny. Users changed keys for every single message, and they'd often share the key on a little pad of paper, giving it the name "One Time Pad".
- Pigpen Cipher: Also called the Freemason Cipher, this clever and alien-looking cipher uses a grid and dots to transform letters into something that looks like it came from Atlantis.