Defend Dissent is an introduction to cryptography paired with the social impacts of surveillance and the protective potential of encryption, with a focus on US social movements. Each chapter ends with a story that brings social context to the material—from surveillance used against contemporary US protests to the African National Congress’s use of partially manual encryption in fighting apartheid in South Africa in the 80s.
Let’s start with the basics—think “pen and paper encryption”—before moving on to more complex encryption methods made possible by computers. Encryption is the process of scrambling a message so that it can only be unscrambled (and read) by the intended parties. The method by which you scramble the original message, or plaintext, is called the cipher or encryption protocol. In almost all cases, the cipher is not intended to be kept secret. The scrambled, unreadable, encrypted message is called the ciphertext and can be safely shared. Most ciphers require an additional piece of information called a cryptographic key to encrypt and decrypt (scramble and unscramble) messages.
A Simple Cipher: The Caesar Cipher
Consider the first and perhaps simplest cipher: the Caesar cipher. Here, each letter in the message is shifted by an agreed-upon number of letters in the alphabet. For example, suppose you wanted to encrypt the plaintext
by shifting each letter in the message forward by three places in the alphabet, so that A becomes D, B becomes E, and so on, with Z wrapping around to the start of the alphabet to become C. The plaintext gets encrypted to the following ciphertext:
To decrypt this message, the recipient would do the reverse, shifting each letter in the message backward three places in the alphabet, so Z becomes W and A wraps around through the end of the alphabet to become X. For the recipient to be able to decrypt the message (quickly), they would have to know the key to the cipher. For the Caesar cipher, this is the number of places that each letter is shifted in the alphabet; in this example, it is the number 3. A Caesar cipher key can also be represented by a letter of the alphabet corresponding to the result of the translation from A. For example, a shift of 3 would be the key D, a shift of 23 would be the key Z, and the shift of zero (the identity shift) would be the key A.
Let’s review the terms. In this example, to apply the cipher (or encryption protocol), one must simply follow these instructions: “To encrypt, shift each letter in the plaintext message forward in the alphabet by n letters. To decrypt, shift each letter in the message ciphertext backward in the alphabet by n letters.” The key is the amount of the shift, n.
Of course, the Caesar cipher is not a strong cipher, and you certainly shouldn’t trust it to keep your plans secret. All an adversary would need to do to break (or crack) your secret code (ciphertext) is to try every possible backward shift through the alphabet. There are not many possibilities, so this wouldn’t take long: since the key A makes the ciphertext equal the plaintext, there are only twenty-five possible keys. Such an attack is called a brute-force attack, in which an adversary attempts to decipher an encrypted message by trying every possible key. This attack is feasible in the case of the Caesar cipher because there are very few possible keys.