Chapter 2
Crypto Basics
MXDXBVTZWVMXNSPBQXLIMSCCSGXSCJXBOVQXCJZMOJZCVCTVWJCZAAXZBCSSCJXBqCJZCQJZCNSPOXBXSBTVWJCJZDXGXXMOZQMSCSCJXBOVQXCJZMOJZCNSPJZHGXXMOSPLHJZDXZAAXZBXHCSCJXTCSGXSCJXBOVQX
—plaintext from Lewis Carroll, Alice in Wonderland
The solution is by no means so difficult as you mightbe led to imagine from the first hasty inspection of the characters.These characters, as any one might readily guess,form a cipher—that is to say, they convey a meaning…
—Edgar Allan Poe, The Gold Bug
2.1 Introduction
In this chapter we’ll discuss some of the basic elements of cryptography. This discussion will lay the foundation for the remaining crypto chapters which, in turn, underpin much of the material throughout the book. We’ll avoid mathematical rigor as much as possible. Nevertheless, there is enough detail here so that you will not only understand the “what” but you will also have some appreciation for the “why.”
After this introductory chapter, the remaining crypto chapters focus on:
- Symmetric key cryptography
- Public key cryptography
- Hash functions
- Advanced cryptanalysis
A handful of special topics are also covered.
2.2 How to Speak Crypto
The basic terminology of crypto includes the following.
- Cryptology — the art and science of making and breaking “secret codes.”
- Cryptography — the making of “secret codes.”
- Cryptanalysis — the breaking of “secret codes.”
- Crypto — a synonym for any or all of the above (and more), where the precise meaning should be clear from context.
A cipher ...