Contents

Introduction

Foreword by Whitfield Diffie

Preface

HOW TO READ THIS BOOK

ACKNOWLEDGMENTS

About the Author

1 FOUNDATIONS

1.1 TERMINOLOGY

1.2 STEGANOGRAPHY

1.3 SUBSTITUTION CIPHERS AND TRANSPOSITION CIPHERS

1.4 SIMPLE XOR

1.5 ONE-TIME PADS

1.6 COMPUTER ALGORITHMS

1.7 LARGE NUMBERS

PART I CRYPTOGRAPHIC PROTOCOLS

2 PROTOCOL BUILDING BLOCKS

2.1 INTRODUCTION TO PROTOCOLS

2.2 COMMUNICATIONS USING SYMMETRIC CRYPTOGRAPHY

2.3 ONE-WAY FUNCTIONS

2.4 ONE-WAY HASH FUNCTIONS

2.5 COMMUNICATIONS USING PUBLIC-KEY CRYPTOGRAPHY

2.6 DIGITAL SIGNATURES

2.7 DIGITAL SIGNATURES WITH ENCRYPTION

2.8 RANDOM AND PSEUDO-RANDOM-SEQUENCE GENERATION

3 BASIC PROTOCOLS

3.1 KEY EXCHANGE

3.2 AUTHENTICATION

3.3 AUTHENTICATION AND KEY EXCHANGE

3.4 FORMAL ANALYSIS OF AUTHENTICATION AND KEY-EXCHANGE PROTOCOLS

3.5 MULTIPLE-KEY PUBLIC-KEY CRYPTOGRAPHY

3.6 SECRET SPLITTING

3.7 SECRET SHARING

3.8 CRYPTOGRAPHIC PROTECTION OF DATABASES

4 INTERMEDIATE PROTOCOLS

4.1 TIMESTAMPING SERVICES

4.2 SUBLIMINAL CHANNEL

4.3 UNDENIABLE DIGITAL SIGNATURES

4.4 DESIGNATED CONFIRMER SIGNATURES

4.5 PROXY SIGNATURES

4.6 GROUP SIGNATURES

4.7 FAIL-STOP DIGITAL SIGNATURES

4.8 COMPUTING WITH ENCRYPTED DATA

4.9 BIT COMMITMENT

4.10 FAIR COIN FLIPS

4.11 MENTAL POKER

4.12 ONE-WAY ACCUMULATORS

4.13 ALL-OR-NOTHING DISCLOSURE OF SECRETS

4.14 KEY ESCROW

5 ADVANCED PROTOCOLS

5.1 ZERO-KNOWLEDGE PROOFS

5.2 ZERO-KNOWLEDGE PROOFS OF IDENTITY

5.3 BLIND SIGNATURES

5.4 IDENTITY-BASED PUBLIC-KEY CRYPTOGRAPHY

5.5 OBLIVIOUS TRANSFER

5.6 OBLIVIOUS SIGNATURES

5.7 SIMULTANEOUS CONTRACT SIGNING

5.8 DIGITAL CERTIFIED MAIL

5.9 SIMULTANEOUS EXCHANGE OF SECRETS

6 ESOTERIC PROTOCOLS

6.1 SECURE ELECTIONS

6.2 SECURE MULTIPARTY COMPUTATION

6.3 ANONYMOUS MESSAGE BROADCAST

6.4 DIGITAL CASH

PART II CRYPTOGRAPHIC TECHNIQUES

7 KEY LENGTH

7.1 SYMMETRIC KEY LENGTH

7.2 PUBLIC-KEY KEY LENGTH

7.3 COMPARING SYMMETRIC AND PUBLIC-KEY KEY LENGTH

7.4 BIRTHDAY ATTACKS AGAINST ONE-WAY HASH FUNCTIONS

7.5 HOW LONG SHOULD A KEY BE?

7.6 CAVEAT EMPTOR

8 KEY MANAGEMENT

8.1 GENERATING KEYS

8.2 NONLINEAR KEYSPACES

8.3 TRANSFERRING KEYS

8.4 VERIFYING KEYS

8.5 USING KEYS

8.6 UPDATING KEYS

8.7 STORING KEYS

8.8 BACKUP KEYS

8.9 COMPROMISED KEYS

8.10 LIFETIME OF KEYS

8.11 DESTROYING KEYS

8.12 PUBLIC-KEY KEY MANAGEMENT

9 ALGORITHM TYPES AND MODES

9.1 ELECTRONIC CODEBOOK MODE

9.2 BLOCK REPLAY

9.3 CIPHER BLOCK CHAINING MODE

9.4 STREAM CIPHERS

9.5 SELF-SYNCHRONIZING STREAM CIPHERS

9.6 CIPHER-FEEDBACK MODE

9.7 SYNCHRONOUS STREAM CIPHERS

9.8 OUTPUT-FEEDBACK MODE

9.9 COUNTER MODE

9.10 OTHER BLOCK-CIPHER MODES

9.11 CHOOSING A CIPHER MODE

9.12 INTERLEAVING

9.13 BLOCK CIPHERS VERSUS STREAM CIPHERS

10 USING ALGORITHMS

10.1 CHOOSING AN ALGORITHM

10.2 PUBLIC-KEY CRYPTOGRAPHY VERSUS SYMMETRIC CRYPTOGRAPHY

10.3 ENCRYPTING COMMUNICATIONS CHANNELS

10.4 ENCRYPTING DATA FOR STORAGE

10.5 HARDWARE ENCRYPTION VERSUS SOFTWARE ENCRYPTION

10.6 COMPRESSION, ENCODING, AND ENCRYPTION

10.7 DETECTING ENCRYPTION

10.8 HIDING CIPHERTEXT IN CIPHERTEXT

10.9 DESTROYING INFORMATION

PART III CRYPTOGRAPHIC ALGORITHMS

11 MATHEMATICAL BACKGROUND

11.1 INFORMATION THEORY

11.2 COMPLEXITY THEORY

11.3 NUMBER THEORY

11.4 FACTORING

11.5 PRIME NUMBER GENERATION

11.6 DISCRETE LOGARITHMS IN A FINITE FIELD

12 DATA ENCRYPTION STANDARD (DES)

12.1 BACKGROUND

12.2 DESCRIPTION OF DES

12.3 SECURITY OF DES

12.4 DIFFERENTIAL AND LINEAR CRYPTANALYSIS

12.5 THE REAL DESIGN CRITERIA

12.6 DES VARIANTS

12.7 HOW SECURE IS DES TODAY?

13 OTHER BLOCK CIPHERS

13.1 LUCIFER

13.2 MADRYGA

13.3 NEWDES

13.4 FEAL

13.5 REDOC

13.6 LOKI

13.7 KHUFU AND KHAFRE

13.8 RC2

13.9 IDEA

13.10 MMB

13.11 CA-1.1

13.12 SKIPJACK

14 STILL OTHER BLOCK CIPHERS

14.1 GOST

14.2 CAST

14.3 BLOWFISH

14.4 SAFER

14.5 3-WAY

14.6 CRAB

14.7 SXAL8/MBAL

14.8 RC5

14.9 OTHER BLOCK ALGORITHMS

14.10 THEORY OF BLOCK CIPHER DESIGN

14.11 USING ONE-WAY HASH FUNCTIONS

14.12 CHOOSING A BLOCK ALGORITHM

15 COMBINING BLOCK CIPHERS

15.1 DOUBLE ENCRYPTION

15.2 TRIPLE ENCRYPTION

15.3 DOUBLING THE BLOCK LENGTH

15.4 OTHER MULTIPLE ENCRYPTION SCHEMES

15.5 CDMF KEY SHORTENING

15.6 WHITENING

15.7 CASCADING MULTIPLE BLOCK ALGORITHMS

15.8 COMBINING MULTIPLE BLOCK ALGORITHMS

16 PSEUDO-RANDOM-SEQUENCE GENERATORS AND STREAM CIPHERS

16.1 LINEAR CONGRUENTIAL GENERATORS

16.2 LINEAR FEEDBACK SHIFT REGISTERS

16.3 DESIGN AND ANALYSIS OF STREAM CIPHERS

16.4 STREAM CIPHERS USING LFSRS

16.5 A5

16.6 HUGHES XPD/KPD

16.7 NANOTEQ

16.8 RAMBUTAN

16.9 ADDITIVE GENERATORS

16.10 GIFFORD

16.11 ALGORITHM M

16.12 PKZIP

17 OTHER STREAM CIPHERS AND REAL RANDOM-SEQUENCE GENERATORS

17.1 RC4

17.2 SEAL

17.3 WAKE

17.4 FEEDBACK WITH CARRY SHIFT REGISTERS

17.5 STREAM CIPHERS USING FCSRS

17.6 NONLINEAR-FEEDBACK SHIFT REGISTERS

17.7 OTHER STREAM CIPHERS

17.8 SYSTEM-THEORETIC APPROACH TO STREAM-CIPHER DESIGN

17.9 COMPLEXITY-THEMATIC APPROACH TO STREAM-CIPHER DESIGN

17.10 OTHER APPROACHES TO STREAM-CIPHER DESIGN

17.11 CASCADING MULTIPLE STREAM CIPHERS

17.12 CHOOSING A STREAM CIPHER

17.13 GENERATING MULTIPLE STREAMS FROM A SINGLE PSEUDO-RANDOM-SEQUENCE GENERATOR

17.14 REAL RANDOM-SEQUENCE GENERATORS

18 ONE-WAY HASH FUNCTIONS

18.1 BACKGROUND

18.2 SNEFRU

18.3 N-HASH

18.4 MD4

18.5 MD5

18.6 MD2

18.7 SECURE HASH ALGORITHM (SHA)

18.8 RIPE-MD

18.9 HAVAL

18.10 OTHER ONE-WAY HASH FUNCTIONS

18.11 ONE-WAY HASH FUNCTIONS USING SYMMETRIC BLOCK ALGORITHMS

18.12 USING PUBLIC-KEY ALGORITHMS

18.13 CHOOSING A ONE-WAY HASH FUNCTION

18.14 MESSAGE AUTHENTICATION CODES

19 PUBLIC-KEY ALGORITHMS

19.1 BACKGROUND

19.2 KNAPSACK ALGORITHMS

19.3 RSA

19.4 POHLIG-HELLMAN

19.5 RABIN

19.6 ELGAMAL

19.7 MCELIECE

19.8 ELLIPTIC CURVE CRYPTOSYSTEMS

19.9 LUC

19.10 FINITE AUTOMATON PUBLIC-KEY CRYPTOSYSTEMS

20 PUBLIC-KEY DIGITAL SIGNATURE ALGORITHMS

20.1 DIGITAL SIGNATURE ALGORITHM (DSA)

20.2 DSA VARIANTS

20.3 GOST DIGITAL SIGNATURE ALGORITHM

20.4 DISCRETE LOGARITHM SIGNATURE SCHEMES

20.5 ONG-SCHNORR-SHAMIR

20.6 ESIGN

20.7 CELLULAR AUTOMATA

20.8 OTHER PUBLIC-KEY ALGORITHMS

21 IDENTIFICATION SCHEMES

21.1 FEIGE-FIAT-SHAMIR

21.2 GUILLOU-QUISQUATER

21.3 SCHNORR

21.4 CONVERTING IDENTIFICATION SCHEMES TO SIGNATURE SCHEMES

22 KEY-EXCHANGE ALGORITHMS

22.1 DIFFIE-HELLMAN

22.2 STATION-TO-STATION PROTOCOL

22.3 SHAMIR'S THREE-PASS PROTOCOL

22.4 COMSET

22.5 ENCRYPTED KEY EXCHANGE

22.6 FORTIFIED KEY NEGOTIATION

22.7 CONFERENCE KEY DISTRIBUTION AND SECRET BROADCASTING

23 SPECIAL ALGORITHMS FOR PROTOCOLS

23.1 MULTIPLE-KEY PUBLIC-KEY CRYPTOGRAPHY

23.2 SECRET-SHARING ALGORITHMS

23.3 SUBLIMINAL CHANNEL

23.4 UNDENIABLE DIGITAL SIGNATURES

23.5 DESIGNATED CONFIRMER SIGNATURES

23.6 COMPUTING WITH ENCRYPTED DATA

23.7 FAIR COIN FLIPS

23.8 ONE-WAY ACCUMULATORS

23.9 ALL-OR-NOTHING DISCLOSURE OF SECRETS

23.10 FAIR AND FAILSAFE CRYPTOSYSTEMS

23.11 ZERO-KNOWLEDGE PROOFS OF KNOWLEDGE

23.12 BLIND SIGNATURES

23.13 OBLIVIOUS TRANSFER

23.14 SECURE MULTIPARTY COMPUTATION

23.15 PROBABILISTIC ENCRYPTION

23.16 QUANTUM CRYPTOGRAPHY

PART IV THE REAL WORLD

24 EXAMPLE IMPLEMENTATIONS

24.1 IBM SECRET-KEY MANAGEMENT PROTOCOL

24.2 MITRENET

24.3 ISDN

24.4 STU-III

24.5 KERBEROS

24.6 KRYPTOKNIGHT

24.7 SESAME

24.8 IBM COMMON CRYPTOGRAPHIC ARCHITECTURE

24.9 ISO AUTHENTICATION FRAMEWORK

24.10 PRIVACY-ENHANCED MAIL (PEM)

24.11 MESSAGE SECURITY PROTOCOL (MSP)

24.12 PRETTY GOOD PRIVACY (PGP)

24.13 SMART CARDS

24.14 PUBLIC-KEY CRYPTOGRAPHY STANDARDS (PKCS)

24.15 UNIVERSAL ELECTRONIC PAYMENT SYSTEM (UEPS)

24.16 CLIPPER

24.17 CAPSTONE

24.18 AT&T MODEL 3600 TELEPHONE SECURITY DEVICE (TSD)

25 POLITICS

25.1 NATIONAL SECURITY AGENCY (NSA)

25.2 NATIONAL COMPUTER SECURITY CENTER (NCSC)

25.3 NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY (NIST)

25.4 RSA DATA SECURITY, INC.

25.5 PUBLIC KEY PARTNERS

25.6 INTERNATIONAL ASSOCIATION FOR CRYPTOGRAPHIC RESEARCH (IACR)

25.7 RACE INTEGRITY PRIMITIVES EVALUATION (RIPE)

25.8 CONDITIONAL ACCESS FOR EUROPE (CAFE)

25.9 ISO/IEC 9979

25.10 PROFESSIONAL, CIVIL LIBERTIES, AND INDUSTRY GROUPS

25.11 SCI.CRYPT

25.12 CYPHERPUNKS

25.13 PATENTS

25.14 U.S. EXPORT RULES

25.15 FOREIGN IMPORT AND EXPORT OF CRYPTOGRAPHY

25.16 LEGAL ISSUES

Afterword by Matt Blaze

PART V SOURCE CODE

Source Code

References

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.144.17.91