H.X. Mel consults and develops computer systems for organizations such as Lucent, Xerox, MIT, the U.S. Government,
Motorola, Goldman Sachs, and PricewaterhouseCoopers.
Baker, Doris :
Doris Baker is a freelance technical writer and editor.
Preface
A Tool for Everyone
In the past, cryptography was used mainly to secure the communications of the powerful and influential, the
military and royalty. But the widespread use of computers, and the attacks to which they are vulnerable, has expanded
the need for secure communications around the globe. This book describes the protection afforded by modern computer
cryptographic systems and explains how the pace of modern technology requires continuing attention to the security
of those systems.
The advent of computers changed a great many things, but not the fundamentals of cryptography. Through stories
and pictures, Cryptography Decrypted presents cryptography's evolution into a modern-day science, laying
out patterns from the past that are applicable today. It also gives you a thorough understanding of terms that
are destined to become as much a part of our language and life as megabyte and Internet. As you begin
to think about controlling various aspects of your life using wired or wireless communication, on line all the
time, your understanding of cryptography--its benefits and its pitfalls--will make you feel a little more in control
of a rapidly changing world.
Because rapid advances in the speed of hardware will continue to threaten the security of current cryptographic
methods, it's essential that you choose appropriate techniques and perform ongoing assessment if you want to maintain
your digital security. You can make such choices and assessments only if you know the basic concepts of cryptography.
Cryptography Decrypted offers you that knowledge through visual representation of difficult concepts, an
easy-to-use reference for reviewing key cryptographic terminology, and instructive historical information.
You need little or no background in cryptography to read this book. Neither does it require technical or math
genius. It's designed so that anyone from CIOs to self-taught computer enthusiasts--and everyone in between--can
pick up this book without any knowledge of encryption and find it fascinating, understandable, and instructive.
If you have some understanding of computer cryptography, Cryptography Decrypted is systematic and comprehensive
enough to solidify your knowledge. It provides a simple description of the component parts of secret key and public
key cryptography. (Those who already understand and don't wish to cover any more material about secret key cryptography
may choose to read only Parts II through IV, bypassing Part I.)
Throughout the book, we use images to clarify cryptographic terms. After explaining the basic cryptographic
components, we describe real-world cryptographic systems, some possible attacks on those systems, and ways to protect
your keys.
The book provides a historical framework on which to build your understanding of how and why computer cryptography
works. After a discussion of how cryptography has evolved into an essential Internet tool, we analyze secret key
exchange problems and then explain the evolution of public key cryptography, with its solution to the key exchange
problem. Along the way we explain some simple background on the math tricks that make public key cryptography secure.
Traditionally, those who have thoroughly understood cryptography have been trained as mathematicians or scientists.
Our goal here is to explain computer cryptography with rather little discussion of math. If the esoteric details
aren't of immediate concern to you, you can skip Chapter 11 ("Making Public Keys: Math Tricks"), Chapter
14 ("Message Digest Assurances"), and the appendixes without diminishing your understanding of the basic
concepts. Appendix A describes some aspects of public key mathematics, including inverses, primes, the Fermat test,
Diffie-Hellman, DSA, elliptic curve, and pseudo-random number generation. Appendix B provides details of IPsec,
a security system introduced in Chapter 21.
Summary
Fundamental security concepts like cryptography and digital signatures are becoming as much a part of our everyday
lives as megabytes and the Internet. Anyone working with computer security--security professionals, network administrators,
IT managers, CEOs, and CIOs--need to have a comfortable understanding of the cryptographic concepts in this book.
Cryptography Decrypted shows you how to safeguard digital possessions. It is a clear, comprehensible, and practical
guide to the essentials of computer cryptography, from Caesar's Cipher through modern-day public key. Cryptographic
capabilities like detecting imposters and stopping eavesdropping are thoroughly illustrated with easy-to-understand
analogies, visuals, and historical sidebars.
You need little or no background in cryptography to read Cryptography Decrypted. Nor does it require technical
or mathematical expertise. But for those with some understanding of the subject, this book is comprehensive enough
to solidify knowledge of computer cryptography and challenge those who wish to explore the high-level math appendix.
Divided into four parts, the book explains secret keys and secret key methods like DES, public and private keys,
and public key methods like RSA; how keys are distributed through digital certificates; and three real-world systems.
Numerous graphics illustrate and clarify common cryptographic terminology throughout.
You will find coverage of such specific topics as:
Secret key and secret key exchanges
Public and private keys
Digital signatures
Digital certificates, Public Key Infrastructure (PKI), and PGP
Hashes and message digests
Secure e-mail, secure socket layer (SSL), and Internet Protocol Security (IPsec)
Protecting keys
Cryptographic attacks
Authentication, confidentiality, integrity, and nonrepudiation
Table of Contents
Foreword.
Preface.
Introduction.
I. SECRET KEY CRYPTOGRAPHY.
1. Locks and Keys.
Locks and Combinations.
Defining Cryptographic Terms.
Making and Solving Puzzles.
Review.
2. Substitution and Caesar's Cipher.
Cryptanalysis of Caesar's Cipher.
Empowering the Masses.
The Importance of Separating the Method and the Key.
Adding Keys.
A Weakness of Caesar's Ciphers: The Failure to Hide Linguistic Patterns.
More Complex Substitution: Vigenere's Cipher.
Review.
3. Transposition Ciphers: Moving Around.
Patterns and Cryptanalysis.
Adding Complexity.
Computer Transposition.
Combining Substitution and Transposition.
Review.
4. Diffuse and Confuse: How Cryptographers Win the End Game.
Diffusion.
The Polybius Cipher.
The Principle of Confusion.
Cryptographic Locks and Keys.
Review.
5. DES Isn't Strong Anymore.
The Historical Need for an Encryption Standard.
Cycling Through Computer Keys.
Double and Triple DES.
DES (and Other Block Cipher) Modes.
The Avalanche Effect.
Supplement: Binary Numbers and Computer Letters.
Review.
6. Evolution of Cryptography: Going Global.
Early Cryptography.
Commercial and Military Needs.
Entering the Computer Age.
Review.
7. Secret Key Assurances.
Confidentiality.
Authentication.
An Authentication Attack.
Not Really Random Numbers.
Integrity.
Using the MAC for Message Integrity Assurance.
Why Bother Using a Message Authentication Code?
File and MAC Compression.
Nonrepudiation: Secret Keys Can't Do It.
Review.
8. Problems with Secret Key Exchange.
The Problem and the Traditional Solution.
Using a Trusted Third Party.
Key Distribution Center and Key Recovery.
Problems with Using a Trusted Third Party.
Growth in the Number of Secret Keys.
Trust and Lifetime.
Review.
II. PUBLIC KEY CRYPTOGRAPHY.
9. Pioneering Public Key: Public Exchange of Secret Keys.
The Search for an Innovative Key Delivery Solution.
Developing an Innovative Secret Key Delivery Solution.
First Attempt: A Database of Key/Serial Number Pairs.
Second Attempt: An Encrypted Database of Key/Serial Number Pairs.
Merkle's Insight: Individually Encrypted Key/Serial Number Pairs.
Black Hat's Frustrating Problem.
The Key to Public Key Technology.
A New Solution: Diffie-Hellman-Merkle Key Agreement.
Alice and Bob Openly Agree on a Secret Key.
Problems with the Diffie-Hellman Method.
Separate Encryption and Decryption Keys.
Review.
10. Confidentiality Using Public Keys.
New Twists on Old Security Issues.
Confidentiality Assurances.
Distribution of Public Keys.
Two-Way Confidentiality.
Review.
11. Making Public Keys: Math Tricks.
Alice's Easy Problem.
Grade School Math Tricks.
More Grade School Math.
Division and Remainders: Modular Math.
Modular Inverses.
Using Modular Inverses to Make a Public Key.
Putting It All Together.
Giving BlackHat a Difficult, Time-Consuming Problem.
Trapdoor to the Easy Problem.
Knapsack Cryptography.
Modulo Calculations.
Exercise: Find Which Numbers Sum to 103.
Review.
12. Creating Digital Signatures Using the Private Key.
Written and Digital Signature Assurances.
Reviewing and Comparing Authentication.
15. Comparing Secret Key, Public Key, and Message Digests.
Encryption Speed.
Key Length.
Ease of Key Distribution.
Cryptographic Assurances.
Symmetric (Secret) Key.
Asymmetric (Public) Key.
Review.
III. DISTRIBUTION OF PUBLIC KEYS.
16. Digital Certificates.
Verifying a Digital Certificate.
Attacking Digital Certificates.
Attacking the Creator of the Digital Certificate.
Malicious Certificate Creator.
Attacking the Digital Certificate User.
The Most Devastating Attack.
Understanding Digital Certificates: A Familiar Comparison.
Issuer and Subject.
Issuer Authentication.
Transfer of Trust from the Issuer to the Subject.
Issuer's Limited Liability.
Time Limits.
Revoking Trust.
More than One Certificate.
Fees for Use.
The Needs of Digital Certificate Users.
Getting Your First Public Key.
Certificates Included in Your Browser.
Review.
17. X.509 Public Key Infrastructure.
Why Use X.509 Certificate Management?
What Is a Certificate Authority?
Application, Certification, and Issuance.
Certificate Revocation.
Polling and Pushing: Two CRL Delivery Models.
Building X.509 Trust Networks.
Root Certificates.
More Risks and Precautions.
Distinguished Names.
Certification Practice Statement.
X.509 Certificate Data.
Challenge Response Protocol.
Review.
18. Pretty Good Privacy and the Web of Trust.
The History of PGP.
Comparing X.509 and PGP Certificates.
Building Trust Networks.
Bob Validates Alice's Key.
Casey Validates Alice's Key Sent by Bob.
Dawn Validates Alice's Key Sent by Casey via Bob.
Web of Trust.
PGP Certificate Repositories and Revocation.
Compatibility of X.509 and PGP
Review.
IV. REAL-WORLD SYSTEMS.
E-mail Cryptographic Parameters.
Negotiation of SSL and IPsec Cryptographic Parameters.
User Initiation of Cryptographic E-mail, SSL, and Ipsec.
19. Secure E-mail.
Generic Cryptographic E-mail Messages.
Invoking Cryptographic Services.
Confidentiality and Authentication.
Choosing Services.
Positioning Services.
Deterring E-mail Viruses.
Review.
20. Secure Socket Layer and Transport.
Layer Security.
History of SSL.
Overview of an SSL Session.
An SSL Session in Detail.
Hello and Negotiate Parameters.
Key Agreement (Exchange).
Authentication.
Confidentiality and Integrity.
TLS Variations.
Anonymous Diffie-Hellman.
Fixed and Ephemeral Diffie-Hellman.
Comparing TLS, SSL v3, and SSL v2.
A Big Problem with SSL v2.
A Possible Problem with TLS and SSL.
Generating Shared Secrets.
Bob Authenticates Himself to AliceDotComStocks.
Review.
21. IPsec Overview.
Enhanced Security.
Key Management.
Manual Distribution.
Automated Distribution.
IPsec Part 1: User Authentication and Key Exchange Using IKE.
SSL/TLS and IPsec Key Agreement.
Security Association.
Phases.
IKE Nomenclature.
Benefits of Two-Phase Key Exchange.
IPsec Part 2: Bulk Data Confidentiality and Integrity for Message or File Transport.
Protocol and Mode.
ESP Examples.
AH Examples.
Management Control.
Implementation Incompatibilities and Complications.
Review.
22. Cryptographic Gotchas.
Replay Attack.
Man-in-the-Middle Attack.
Finding Your Keys in Memory.
Does Confidentiality Imply Integrity?
Example 1.
Example 2: Cut-and-Paste Attack.
Public Key as a Cryptanalysis Tool.
Example 1: The Chosen Plaintext Attack.
Public Key Cryptographic Standards.
Example 2: The Bleichenbacher Attack.