Introduction to Cryptography with Coding Theory

Wade Trappe / Lawrence C. Washington  
Total pages
July 2005
Related Titles

Product detail

Product Price CHF Available  
Introduction to Cryptography with Coding Theory
190.50 approx. 7-9 days


With its lively, conversational tone and practical focus, this new edition mixes applied and theoretical aspects for a solid introduction to cryptography and security, including the latest significant advancements in the field.


• Balances applied and theoretical aspects of security - Presents applications and protocols where cryptographic primitives are used in practice, such as SET and SSL.


• Coverage of Rijndael and AES - Provides a detailed explanation of AES, which has replaced Feistel-based ciphers (DES) as the standard block cipher algorithm.


• Coverage of practical applications of cryptography to security protocols - Connects the cryptographic tools developed earlier in the book to the building of real security tools, demonstrating to students that there is more to security and cryptography than just math.


• Friendly, story-like discussion of security concepts - Uses historical examples to illustrate the concepts of security and cryptanalysis by relating theory to easier-to-grasp events.


• Modern methods such as Elliptic curves, Lattice methods, and Quantum Techniques - Provides thorough coverage of topics that are becoming increasingly prominent in the field.


• Major coverage of coding theory - Offers a discussion of coding theory, which is often covered in today's cryptology courses.


• Numerous example calculations - Includes many examples, especially in purely mathematical chapters such as Ch. 3.


• Public key certificate - Provides an example of what an actual public key certificate looks like, rather than just describing it.


• Mathematica/Maple/Matlab problems and notebooks - Allow students to work with realistic sized examples in RSA and Digital Signatures, as well as classical cryptosystems and those with elliptic curves.


• Practical examples and applications - Give students hands-on experience with the large-numbered cryptography of today's security systems, and provides a discussion of security protocols.

New to this Edition

• New problems in Chs. 3 and 6 - Offers instructors an expanded problem set.


• Sections on Legendre and Jacobi symbols and Continued Fractions in Ch. 3 - Allows instructors to cover more advanced material (such as an attack on RSA) in later chapters.


• More modes of operation in Ch. 4 - Completes the discussion of block ciphers.


• Additional attacks on RSA - Makes students aware of the strengths and shortcomings of this popular scheme.


• New material on hash functions - Expands the coverage of these important cryptographic primitives, including recent advancements relevant to the security profession.


• Updated discussion of multicollisions - Keeps students up-to-date on events that will have a significant impact on security systems over the next few years.




Table of Contents

1 Overview 

Secure Communications. Cryptographic Applications 


2 Classical Cryptosystems.

Shift Ciphers. Affine Ciphers. The Vigen`ere Cipher. Substitution Ciphers. Sherlock Holmes. The Playfair and ADFGX Ciphers. Block Ciphers. Binary Numbers and ASCII. One-Time Pads. Pseudo-random Bit Generation. LFSR Sequences. Enigma. Exercises. Computer Problems. 


3 Basic Number Theory.

Basic Notions. Solving ax + by = d. Congruences. The Chinese Remainder Theorem. Modular Exponentiation. Fermat and Euler. Primitive Roots. Inverting Matrices Mod n. Square Roots Mod n. Legendre and Jacobi Symbols. Finite Fields. Continued Fractions. Exercises. Computer Problems. 


4 The Data Encryption Standard 

Introduction. A Simplified DES-Type Algorithm. Differential Cryptanalysis. DES. Modes of Operation. Breaking DES. Meet-in-the-Middle Attacks. Password Security. Exercises.


5 AES: Rijndael 

The Basic Algorithm. The Layers. Decryption. Design Considerations. 


6 The RSA Algorithm

The RSA Algorithm. Attacks on RSA. Primality Testing. Factoring. The RSA Challenge. An Application to Treaty Verification. The Public Key Concept. Exercises. Computer Problems 


7 Discrete Logarithms 

Discrete Logarithms. Computing Discrete Logs. Bit Commitment Diffie-Hellman Key Exchange. ElGamal Public Key Cryptosystems. Exercises. Computer Problems. 


8 Hash Functions 

Hash Functions. A Simple Hash Example. The Secure Hash Algorithm. Birthday Attacks. Multicollisions. The Random Oracle Model. Using Hash Functions to Encrypt. 


9 Digital Signatures 

RSA Signatures. The ElGamal Signature Scheme. Hashing and Signing. Birthday Attacks on Signatures. The Digital Signature Algorithm. Exercises. Computer Problems. 


10 Security Protocols 

Intruders-in-the-Middle and Impostors. Key Distribution. Kerberos 

Public Key Infrastructures (PKI). X.509 Certificates. Pretty Good Privacy. SSL and TLS. Secure Electronic Transaction. Exercises. 


11 Digital Cash 

Digital Cash. Exercises. 


12 Secret Sharing Schemes 

Secret Splitting. Threshold Schemes. Exercises. Computer Problems. 


13 Games 

Flipping Coins over the Telephone. Poker over the Telephone. Exercises. 


14 Zero-Knowledge Techniques 

The Basic Setup. The Feige-Fiat-Shamir Identification Scheme. Exercises. 


15 Information Theory 

Probability Review. Entropy. Huffman Codes. Perfect Secrecy. The Entropy of English. Exercises. 


16 Elliptic Curves 

The Addition Law. Elliptic Curves Mod n. Factoring with Elliptic Curves. Elliptic Curves in Characteristic 2. Elliptic Curve Cryptosystems. Identity-Based Encryption. Exercises. Computer Problems. 


17 Lattice Methods 

Lattices. Lattice Reduction. An Attack on RSA. NTRU. Exercises 


18 Error Correcting Codes 

Introduction. Error Correcting Codes. Bounds on General Codes. Linear Codes. Hamming Codes. Golay Codes. Cyclic Codes. BCH Codes. Reed-Solomon Codes. The McEliece Cryptosystem. Other Topics. Exercises. Computer Problems. 


19 Quantum Techniques in Cryptography 

A Quantum Experiment. Quantum Key Distribution. Shor's Algorithm. 4 Exercises. 

Mathematica Examples 

Maple Examples 

MATLAB Examples 

Further Reading