- Jeffrey Hoffstein, Jill Pipher, and Joseph H. Silverman:
"An Introduction to Mathematical Cryptography", Springer.
*First edition may be purchased online.*List of corrections is available here.

- Johannes A. Buchmann: "Introduction to Cryptography". Springer, Second Edition, 2004. Paperback. ISBN 9780387207568.
- "Handbook of Applied Cryptography" by Menezes, van Oorschot, and Vanstone. CRC Press, Fifth Printing, 2001. ISBN: 0-8493-8523-7.

Basic Concepts of Cryptology: Substitution Ciphers, Permutation Ciphers, Vigenere Cipher, Rotor Machines, Attack Models. Symmetric Ciphers, Block Ciphers, One-Time Pad, Information-Theoretic Properties of One-Time Pad, Perfect Secrecy, Misuses of One-Time Pad, Malleability. Stream Ciphers, Linear Feedback Shift Register, Golomb's Randomness Postulates, Linear Complexity, Non-linear Filters, Knapsack Keystream Generator.

Introduction to Number Theory: Congruences, Chinese Remainder Theorem, Fermat's Little Theorem, Euler's Theorem, Modular Exponentiation by Repeated Squaring. Finite Fields. Splitting Fields. Quadratic Residues. Legendre Symbol. Jacobi Symbol. Law of Quadratic Reciprocity.

Public-Key Cryptosystems: Diffie-Hellman Key Exchange, Person-in-the Middle Attack. Discrete Logarithm. RSA Public-Key Cryptosystem.

Selected topics from modern cryptography and computer network security.

- Exercise 1.1 on p. 47 of Hoffstein
*et al.*, 1st edition. - Exercise 4.10b on p. 264 of Hoffstein
*et al.*, 1st edition. - Exercise 4.11a on p. 264 of Hoffstein
*et al.*, 1st edition. - Exercise 4.23 on pp. 268-269 of Hoffstein
*et al.*, 1st edition. - Exercise 4.24ab on p. 269 of Hoffstein
*et al.*, 1st edition. Hint: Use the previous problem, 4.23. - Consider the LFSR given by the connection polynomial
1 + x + x
^{2}+ x^{3}+ x^{6}+x^{7}and the initial content 1010101. Using the stream cipher, encrypt the plaintext 111000111100011110001.

- Exercise 1.9ab on p. 49 of Hoffstein
*et al.*, 1st edition. - Exercise 1.11 on p. 49 of Hoffstein
*et al.*, 1st edition. - Exercise 1.12ac(i)(ii)de on p. 50 of Hoffstein
*et al.*, 1st edition. No programming is required for the midterm. - Exercise 1.15 on pp. 50-51 of Hoffstein
*et al.*, 1st edition. - Exercise 1.23 on p. 52 of Hoffstein
*et al.*, 1st edition. - Exercise 4.42 on p. 274-275 of Hoffstein
*et al.*, 1st edition. - Exercise 4.43 on p. 275 of Hoffstein
*et al.*, 1st edition.

*Please note: Also due with Midterm #2 is your choice of a topic of your
5-page
report for the final exam. This is only the choice of the topic; the report
itself will be due together with the final exam.*