You are previewing Computer Security and Cryptography.
O'Reilly logo
Computer Security and Cryptography

Book Description

Gain the skills and knowledge needed to create effective data security systems

This book updates readers with all the tools, techniques, and concepts needed to understand and implement data security systems. It presents a wide range of topics for a thorough understanding of the factors that affect the efficiency of secrecy, authentication, and digital signature schema. Most importantly, readers gain hands-on experience in cryptanalysis and learn how to create effective cryptographic systems.

The author contributed to the design and analysis of the Data Encryption Standard (DES), a widely used symmetric-key encryption algorithm. His recommendations are based on firsthand experience of what does and does not work.

Thorough in its coverage, the book starts with a discussion of the history of cryptography, including a description of the basic encryption systems and many of the cipher systems used in the twentieth century. The author then discusses the theory of symmetric- and public-key cryptography. Readers not only discover what cryptography can do to protect sensitive data, but also learn the practical limitations of the technology. The book ends with two chapters that explore a wide range of cryptography applications.

Three basic types of chapters are featured to facilitate learning:

  • Chapters that develop technical skills

  • Chapters that describe a cryptosystem and present a method of analysis

  • Chapters that describe a cryptosystem, present a method of analysis, and provide problems to test your grasp of the material and your ability to implement practical solutions

With consumers becoming increasingly wary of identity theft and companies struggling to develop safe, secure systems, this book is essential reading for professionals in e-commerce and information technology. Written by a professor who teaches cryptography, it is also ideal for students.

Table of Contents

  1. Cover Page
  2. Title Page
  3. Copyright
  4. CONTENTS
  5. FOREWORD
  6. PREFACE
    1. NATIONAL SECURITY AND COMPUTER SECURITY
    2. WHY STUDY CRYPTOGRAPHY?
    3. MY PRIOR ART
    4. ORGANIZATION OF THE BOOK
    5. ACKNOWLEDGMENTS
  7. ABOUT THE AUTHOR
  8. CHAPTER 1: APERITIFS
    1. 1.1 THE LEXICON OF CRYPTOGRAPHY
    2. 1.2 CRYPTOGRAPHIC SYSTEMS
    3. 1.3 CRYPTANALYSIS
    4. 1.4 SIDE INFORMATION
    5. 1.5 THOMAS JEFFERSON AND THE M-94
    6. 1.6 CRYPTOGRAPHY AND HISTORY
    7. 1.7 CRYPTOGRAPHY AND COMPUTERS
    8. 1.8 THE NATIONAL SECURITY AGENCY
    9. 1.9 THE GIANTS
    10. 1.10 NO SEX, MONEY, CRIME OR … LOVE
    11. 1.11 AN EXAMPLE OF THE INFERENCE PROCESS IN CRYPTANALYSIS
    12. 1.12 WARNING!
    13. REFERENCES
  9. CHAPTER 2: COLUMNAR TRANSPOSITION
    1. 2.1 SHANNON'S CLASSIFICATION OF SECRECY TRANSFORMATIONS
    2. 2.2 THE RULES OF COLUMNAR TRANSPOSITION ENCIPHERMENT
    3. 2.3 CRIBBING
    4. 2.4 EXAMPLES OF CRIBBING
    5. 2.5 PLAINTEXT LANGUAGE MODELS
    6. 2.6 COUNTING k-GRAMS
    7. 2.7 DERIVING THE PARAMETERS OF A MARKOV MODEL FROM SLIDING WINDOW COUNTS
    8. 2.8 MARKOV SCORING
    9. 2.9 THE ADFGVX TRANSPOSITION SYSTEM
    10. 2.10 CODA
    11. 2.11 COLUMNAR TRANSPOSITION PROBLEMS
    12. REFERENCES
  10. CHAPTER 3: MONOALPHABETIC SUBSTITUTION
    1. 3.1 MONOALPHABETIC SUBSTITUTION
    2. 3.2 CAESAR'S CIPHER
    3. 3.3 CRIBBING USING ISOMORPHS
    4. 3.4 THE χ 2 -TEST OF A HYPOTHESIS
    5. 3.5 PRUNING FROM THE TABLE OF ISOMORPHS
    6. 3.6 PARTIAL MAXIMUM LIKELIHOOD ESTIMATION OF A MONOALPHABETIC SUBSTITUTION
    7. 3.7 THE HIDDEN MARKOV MODEL (HMM)
    8. 3.8 HILL ENCIPHERMENT OF ASCII N -GRAMS
    9. 3.9 GAUSSIAN ELIMINATION
    10. 3.10 MONOALPHABETIC SUBSTITUTION PROBLEMS
    11. REFERENCES
  11. CHAPTER 4: POLYALPHABETIC SUBSTITUTION
    1. 4.1 RUNNING KEYS
    2. 4.2 BLAISE DE VIGENÈRE
    3. 4.3 GILBERT S. VERNAM
    4. 4.4 THE ONE-TIME PAD
    5. 4.5 FINDING THE KEY OF VERNAM–VIGENÈRE CIPHERTEXT WITH KNOWN PERIOD BY CORRELATION
    6. 4.6 COINCIDENCE
    7. 4.7 VENONA
    8. 4.8 POLYALPHABETIC SUBSTITUTION PROBLEMS
    9. REFERENCES
  12. CHAPTER 5: STATISTICAL TESTS
    1. 5.1 WEAKNESSES IN A CRYPTOSYSTEM
    2. 5.2 THE KOLMOGOROV – SMIRNOV TEST
    3. 5.3 NIST'S PROPOSED STATISTICAL TESTS
    4. 5.4 DIAGNOSIS
    5. 5.5 STATISTICAL TESTS PROBLEMS
    6. REFERENCES
  13. CHAPTER 6: THE EMERGENCE OF CIPHER MACHINES
    1. 6.1 THE ROTOR
    2. 6.2 ROTOR SYSTEMS
    3. 6.3 ROTOR PATENTS
    4. 6.4 A CHARACTERISTIC PROPERTY OF CONJUGACY
    5. 6.5 ANALYSIS OF A 1-ROTOR SYSTEM: CIPHERTEXT ONLY
    6. 6.6 THE DISPLACEMENT SEQUENCE OF A PERMUTATION
    7. 6.7 ARTHUR SCHERBIUS
    8. 6.8 ENIGMA KEY DISTRIBUTION PROTOCOL
    9. 6.9 CRYPTANALYSIS OF THE ENIGMA
    10. 6.10 CRIBBING ENIGMA CIPHERTEXT
    11. 6.11 THE LORENZ SCHLÜSSELZUSATZ
    12. 6.12 THE SZ40 PIN WHEELS
    13. 6.13 SZ40 CRYPTANALYSIS PROBLEMS
    14. 6.14 CRIBBING SZ40 CIPHERTEXT
    15. REFERENCES
  14. CHAPTER 7: THE JAPANESE CIPHER MACHINES
    1. 7.1 JAPANESE SIGNALING CONVENTIONS
    2. 7.2 HALF-ROTORS
    3. 7.3 COMPONENTS OF THE RED MACHINE
    4. 7.4 CRIBBING RED CIPHERTEXT
    5. 7.5 GENERALIZED VOWELS AND CONSONANTS
    6. 7.6 “CLIMB MOUNT ITAKA” – WAR!
    7. 7.7 COMPONENTS OF THE PURPLE MACHINE
    8. 7.8 THE PURPLE KEYS
    9. 7.9 CRIBBING PURPLE: FINDING THE V-STEPPER
    10. 7.10 CRIBBING PURPLE: FINDING THE C-STEPPERS
    11. REFERENCES
  15. CHAPTER 8: STREAM CIPHERS
    1. 8.1 STREAM CIPHERS
    2. 8.2 FEEDBACK SHIFT REGISTERS
    3. 8.3 THE ALGEBRA OF POLYNOMIALS OVER
    4. 8.4 THE CHARACTERISTIC POLYNOMIAL OF A LINEAR FEEDBACK SHIFT REGISTER
    5. 8.5 PROPERTIES OF MAXIMAL LENGTH LFSR SEQUENCES
    6. 8.6 LINEAR EQUIVALENCE
    7. 8.7 COMBINING MULTIPLE LINEAR FEEDBACK SHIFT REGISTERS
    8. 8.8 MATRIX REPRESENTATION OF THE LFSR
    9. 8.9 CRIBBING OF STREAM ENCIPHERED ASCII PLAINTEXT
    10. 8.10 NONLINEAR FEEDBACK SHIFT REGISTERS
    11. 8.11 NONLINEAR KEY STREAM GENERATION
    12. 8.12 IRREGULAR CLOCKING
    13. 8.13 RC4
    14. 8.14 STREAM ENCIPHERMENT PROBLEMS
    15. REFERENCES
  16. CHAPTER 9: BLOCK-CIPHERS: LUCIFER, DES, AND AES
    1. 9.1 LUCIFER
    2. 9.2 DES
    3. 9.3 THE DES S-BOXES, P-BOX, AND INITIAL PERMUTATION (IP)
    4. 9.4 DES KEY SCHEDULE
    5. 9.5 SAMPLE DES ENCIPHERMENT
    6. 9.6 CHAINING
    7. 9.7 IS DES A RANDOM MAPPING?
    8. 9.8 DES IN THE OUTPUT-FEEDBACK MODE (OFB)
    9. 9.9 CRYPTANALYSIS OF DES
    10. 9.10 DIFFERENTIAL CRYPTANALYSIS
    11. 9.11 THE EFS DES-CRACKER
    12. 9.12 WHAT NOW?
    13. 9.13 THE FUTURE ADVANCED DATA ENCRYPTION STANDARD
    14. 9.14 AND THE WINNER IS!
    15. 9.15 THE RIJNDAEL OPERATIONS
    16. 9.16 THE RIJNDAEL CIPHER
    17. 9.17 RIJNDAEL'S STRENGTH: PROPAGATION OF PATTERNS
    18. 9.18 WHEN IS A PRODUCT BLOCK-CIPHER SECURE?
    19. 9.19 GENERATING THE SYMMETRIC GROUP
    20. 9.20 A CLASS OF BLOCK CIPHERS
    21. 9.21 THE IDEA BLOCK CIPHER
    22. REFERENCES
  17. CHAPTER 10: THE PARADIGM OF PUBLIC KEY CRYPTOGRAPHY
    1. 10.1 IN THE BEGINNING …
    2. 10.2 KEY DISTRIBUTION
    3. 10.3 E-COMMERCE
    4. 10.4 PUBLIC-KEY CRYPTOSYSTEMS: EASY AND HARD COMPUTATIONAL PROBLEMS
    5. 10.5 DO PKCs SOLVE THE PROBLEM OF KEY DISTRIBUTION?
    6. 10.6 P.S.
    7. REFERENCES
  18. CHAPTER 11: THE KNAPSACK CRYPTOSYSTEM
    1. 11.1 SUBSET SUM AND KNAPSACK PROBLEMS
    2. 11.2 MODULAR ARITHMETIC AND THE EUCLIDEAN ALGORITHM
    3. 11.3 A MODULAR ARITHMETIC KNAPSACK PROBLEM
    4. 11.4 TRAP-DOOR KNAPSACKS
    5. 11.5 KNAPSACK ENCIPHERMENT AND DECIPHERMENT OF ASCII-PLAINTEXT
    6. 11.6 CRYPTANALYSIS OF THE MERKLE–HELLMAN KNAPSACK SYSTEM (MODULAR MAPPING) [SHAMIR, 1982]
    7. 11.7 DIOPHANTINE APPROXIMATION
    8. 11.8 SHORT VECTORS IN A LATTICE
    9. 11.9 KNAPSACK-LIKE CRYPTOSYSTEMS
    10. 11.10 KNAPSACK CRYPTOSYSTEM PROBLEMS
    11. REFERENCES
  19. CHAPTER 12: THE RSA CRYPTOSYSTEM
    1. 12.1 A SHORT NUMBER-THEORETIC DIGRESSION [KOBLITZ, 1987]
    2. 12.2 RSA [RIVEST ET AL., 1978]
    3. 12.3 THE RSA ENCIPHERMENT AND DECIPHERMENT OF ASCII-PLAINTEXT
    4. 12.4 ATTACK ON RSA [SIMMONS, 1983; DELAURENTIS, 1984]
    5. 12.5 WILLIAMS VARIATION OF RSA
    6. 12.6 MULTIPRECISION MODULAR ARITHMETIC
    7. REFERENCES
  20. CHAPTER 13: PRIME NUMBERS AND FACTORIZATION
    1. 13.1 NUMBER THEORY AND CRYPTOGRAPHY
    2. 13.2 PRIME NUMBERS AND THE SIEVE OF ERATOSTHENES
    3. 13.3 POLLARD'S p − 1 METHOD [POLLARD, 1974]
    4. 13.4 POLLARD'S ρ -ALGORITHM [POLLARD, 1978]
    5. 13.5 QUADRATIC RESIDUES
    6. 13.6 RANDOM FACTORIZATION
    7. 13.7 THE QUADRATIC SIEVE (QS)
    8. 13.8 TESTING IF AN INTEGER IS A PRIME
    9. 13.9 THE RSA CHALLENGE
    10. 13.10 PERFECT NUMBERS AND THE MERSENNE PRIMES
    11. 13.11 MULTIPRECISION ARITHMETIC
    12. 13.12 PRIME NUMBER TESTING AND FACTORIZATION PROBLEMS
    13. REFERENCES
  21. CHAPTER 14: THE DISCRETE LOGARITHM PROBLEM
    1. 14.1 THE DISCRETE LOGARITHM PROBLEM MODULO p
    2. 14.2 SOLUTION OF THE DLP MODULO p GIVEN A FACTORIZATION OF p − 1
    3. 14.3 ADELMAN'S SUBEXPONENTIAL ALGORITHM FOR THE DISCRETE LOGARITHM PROBLEM [ADELMAN, 1979]
    4. 14.4 THE BABY-STEP, GIANT-STEP ALGORITHM
    5. 14.5 THE INDEX-CALCULUS METHOD
    6. 14.6 POLLARD'S ρ -ALGORITHM [POLLARD, 1978]
    7. 14.7 EXTENSION FIELDS
    8. 14.8 THE CURRENT STATE OF DISCRETE LOGARITHM RESEARCH
    9. REFERENCES
  22. CHAPTER 15: ELLIPTIC CURVE CRYPTOGRAPHY
    1. 15.1 ELLIPTIC CURVES
    2. 15.2 THE ELLIPTIC GROUP OVER THE REALS
    3. 15.3 LENSTRA'S FACTORIZATION ALGORITHM [LENSTRA, 1986]
    4. 15.4 THE ELLIPTIC GROUP OVER
    5. 15.5 ELLIPTIC GROUPS OVER THE FIELD
    6. 15.6 COMPUTATIONS IN THE ELLIPTIC GROUP
    7. 15.7 SUPERSINGULAR ELLIPTIC CURVES
    8. 15.8 DIFFIE–HELLMAN KEY EXCHANGE USING AN ELLIPTIC CURVE
    9. 15.9 THE MENEZES – VANSTONE ELLIPTIC CURVE CRYPTOSYSTEM
    10. 15.10 THE ELLIPTIC CURVE DIGITAL SIGNATURE ALGORITHM
    11. 15.11 THE CERTICOM CHALLENGE
    12. 15.12 NSA AND ELLIPTIC CURVE CRYPTOGRAPHY
    13. REFERENCES
  23. CHAPTER 16: KEY EXCHANGE IN A NETWORK
    1. 16.1 KEY DISTRIBUTION IN A NETWORK
    2. 16.2 U.S. PATENT ’770 [HELLMAN ET AL., 1980; DIFFIE AND HELLMAN, 1976]
    3. 16.3 SPOOFING
    4. 16.4 EL GAMAL'S EXTENSION OF DIFFIE–HELLMAN
    5. 16.5 SHAMIR'S AUTONOMOUS KEY EXCHANGE
    6. 16.6 X9.17 KEY EXCHANGE ARCHITECTURE [ANSI, 1985]
    7. 16.7 THE NEEDHAM–SCHROEDER KEY DISTRIBUTION PROTOCOL [NEEDHAM AND SCHROEDER, 1998]
    8. REFERENCES
  24. CHAPTER 17: DIGITAL SIGNATURES AND AUTHENTICATION
    1. 17.1 THE NEED FOR SIGNATURES
    2. 17.2 THREATS TO NETWORK TRANSACTIONS
    3. 17.3 SECRECY, DIGITAL SIGNATURES, AND AUTHENTICATION
    4. 17.4 THE DESIDERATA OF A DIGITAL SIGNATURE
    5. 17.5 PUBLIC-KEY CRYPTOGRAPHY AND SIGNATURE SYSTEMS
    6. 17.6 RABIN'S QUADRATIC RESIDUE SIGNATURE PROTOCOL
    7. 17.7 HASH FUNCTIONS
    8. 17.8 MD5
    9. 17.9 THE SECURE HASH ALGORITHM
    10. 17.10 NIST'S DIGITAL SIGNATURE ALGORITHM [NIST, 1991, 1994]
    11. 17.11 EL GAMAL'S SIGNATURE PROTOCOL [EL GAMAL, 1985a, b]
    12. 17.12 THE FIAT–SHAMIR IDENTIFICATION AND SIGNATURE SCHEMA [FIAT AND SHAMIR, 1986]
    13. 17.13 THE OBLIVIOUS TRANSFER
    14. REFERENCES
  25. CHAPTER 18: APPLICATIONS OF CRYPTOGRAPHY
    1. 18.1 UNIX PASSWORD ENCIPHERMENT
    2. 18.2 MAGNETIC STRIPE TECHNOLOGY
    3. 18.3 PROTECTING ATM TRANSACTIONS
    4. 18.4 KEYED-ACCESS CARDS
    5. 18.5 SMART CARDS
    6. 18.6 WHO CAN YOU TRUST?: KOHNFELDER'S CERTIFICATES
    7. 18.7 X.509 CERTIFICATES
    8. 18.8 THE SECURE SOCKET LAYER (SSL)
    9. 18.9 MAKING A SECURE CREDIT CARD PAYMENT ON THE WEB
    10. REFERENCES
  26. CHAPTER 19: CRYPTOGRAPHIC PATENTS
    1. 19.1 WHAT IS A PATENT?
    2. 19.2 PATENTABILITY OF IDEAS
    3. 19.3 THE FORMAT OF A PATENT
    4. 19.4 PATENTABLE VERSUS NONPATENTABLE SUBJECTS
    5. 19.5 INFRINGEMENT
    6. 19.6 THE ROLE OF PATENTS IN CRYPTOGRAPHY
    7. 19.7 U.S. PATENT 3,543,904 [CONSTABLE, 1970]
    8. 19.8 U.S. PATENT 4,200,770 [HELLMAN ET AL., 1977]
    9. 19.9 U.S. PATENT 4,218,582 [HELLMAN AND MERKLE, 1977]
    10. 19.10 U.S. PATENT 4,405,829 [RIVERST ET AL., 1977]
    11. 19.11 PKS/RSADSI LITIGATION
    12. 19.12 LEON STAMBLER
    13. REFERENCES
  27. INDEX