Secure Communications. Cryptographic Applications
2 Classical Cryptosystems.
Shift Ciphers. Affine Ciphers. The Vige&ngrave;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.
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.