This chapter describes problems in cryptography. The first few problems ask you to use cryptographic systems that were once state-of-the-art but that are now insecure. They are purely for fun and are of historical significance. Later problems use modern, secure techniques, such as the .NET Framework's cryptographic library, to build secure programs.
When studying cryptography, it's useful to know a few basic terms. A key is a piece of secret information that you can use to encrypt and decrypt messages. Sometimes, a password is a key. Other times, a password is used to generate a key in a format suitable for use by a particular encryption algorithm. A message that is not encrypted is called plaintext. The encrypted version of plaintext is called ciphertext.
Traditionally, plaintext and ciphertext are written in five-letter groups...