Some Opening Remarks

Throughout these lectures, we are going to consider the following scenario:

Alice, Bob, Carol, Dave, Eve, Joe, and Mallory all live in the same apartment building. Alice, Carol, and Eve are roommates, as are Bob, Dave, and Joe. Mallory is the landlord who lives down stairs. While all her tenants pay their rent on time, she thinks they are too loud and doesn't like them to have parties. We mention this because next Saturday is Joe's birthday, and his friends want to throw him a surprise party.

They are going to have a difficult time planning it, however. First of all, Joe can't know anything in advance, otherwise it would ruin the surprise. Also Mallory can't know, since she would tell Joe in hopes that ruining the surprise would stop the party. Complicating matters further, Eve is a blabber-mouth and wouldn't be able to keep the party a secret. So Alice, Bob, Carol, and Dave are the only ones left to do all the work.

Since one of Eve, Joe, and Mallory is very likely to be around, there is no safe way for Alice, Bob, Carol, and Dave to make plans face-to-face. Since it is equally hard to have four-way telephone conversations, their only option left is to send one another written messages. Of course, this leaves a paper trail, which would likely be discovered by Eve, Joe, or Mallory. It seems like the only viable option is for Alice, Bob, Carol, and Dave is to use a secret code.

Definitions and Terminology

For the rest of these lectures, Alice and Carol will be trying to send messages to Bob and Dave (respectively). Eve will be eavesdropping, that is, if she comes across a message she'll blab it, but she won't be actively seeking to intercept message. Mallory will be a malicious attacker, that is, she will be actively trying to intercept messages and use their information for her own benefit.

A cipher (or code) is a method of taking a message and disguising its contents so that, hopefully, only the intended readers and understand its true meaning. Before applying the cipher, the message is in what is known as plaintext. After applying the cipher, the message will be in ciphertext.

The process of taking plaintext and using a cipher to convert it to ciphertext is known as encryption. The reverse process, taking ciphertext and using the cipher converting it to plaintext, is decryption. The study of encrypting and decrypting messages is called cryptography.

Suppose that somebody comes across an encrypted message, but doesn't know the cipher that was used to encrypt it. If this person tries to `crack the code' and recover the original message, they are making an attack on the cipher. The study of how vulnerable certain ciphers are to attack is called cryptoanalysis. Cryptology is cryptography and cryptoanalysis combined. In these lectures, we will be focusing on cryptography.

This work was made possible through a grant from the National Science Foundation.