Skip to main content

Section 2.2 Terminology

Going forward, it is important to address some common cryptography terms as they will be used frequently:
Plaintext: unencrypted information
 1 
en.wikipedia.org/wiki/Plaintext
, data that is "in clear", or cleartext.
Cipher: an algorithm for performing encryption or decryption.
 2 
en.wikipedia.org/wiki/Cipher
Ciphertext: data that has undergone encryption.
Cryptographic algorithm: a series of steps to follow to encrypt or decrypt data.
Public key: information (typically a byte array) that can be used to encrypt data such that only the owner of the matching private key can decrypt it.
Private (secret) key: information (typically a byte array) that can be used to decrypt data encrypted using the corresponding public key.

Example 2.2.1. Caesar Cipher.

One of the most basic examples of encryption is the Caesar cipher, or substitution cipher. It is easy to understand, compute, and trivial to crack. Let’s create a table that maps every letter in the alphabet to a different letter:
Table 2.2.2. Caesar Cipher Substitution Table (A–M)
A B C D E F G H I J K L M
J G T Q X Y A U C R V I F
Table 2.2.3. Caesar Cipher Substitution Table (N–Z)
N O P Q R S T U V W X Y Z
H O K L E D B W S Z M N P
Now creating a message is simple a matter of performing the substitutions. For example, HELLO WORLD becomes UXIIO ZOEIQ.
While this is simple to understand and set up, it is also very easy to break. You could use a frequency attack, where you analyze a large chunk of encrypted text knowing that certain letters are more frequent than others. By matching up the most frequently used ciphertext letters with their standard English equivalents you may quickly reach a solution. You could also go through all permutations of the alphabet (4E26) and see what gives you the most English words. The second attack is made much more feasible through computing.
You have attempted 1 of 1 activities on this page.