Home

Course Information

Course Registration

Calendar

Lectures and Handouts

Term Projects

Resources

Previous Years

References

SHA-3 Writeups

Below are links to material relevant to our lectures.
To suggest the addition of a hyperlink or paper, email
*6857-staff at mit.edu*.

**Links:**- Professor Rivest's CRYPTO 2008 talk slides
- Handbook of Applied Cryptography, Chapter 9 (Hash Functions). Covers the construction and application of hash functions.
- Wikipedia on the "Birthday Problem"
- The ECRYPT hash function conference -- includes a nice survey by Preneel
- The NIST site for the SHA-3 hash function competition
- Wikipedia on the MD5 hash function
- The official MD6 website

**Handouts:**- Lecture 3 Notes [PDF]

**Handouts:**- Lecture 4 Notes [PDF]

**Links****Handouts:**

**Links:**- AES Specification -- see Section 5 for the optimized implementation.
- OpenSSL's 32-bit AES implementation -- Look in crypto/aes/aes_core.c, for AES_encrypt() and AES_decrypt().

**Handouts:**- Lecture 6 Notes [PDF]

**Links:**- Hellman's time/memory tradeoffs, with and without distinguished points
- Rainbow tables
- Wikipedia article on Cycle detection -- has a nice summary of collision finding and sample code
- Wikipedia article on the RSA Challenge -- Good summary of RSA factoring records.
- Special-purpose cryptanalytic devices

**Handouts:**- Lecture 7 Notes [PDF]

**Handouts:**- Lecture 09 Notes [PDF]

**Handouts:**- Problem Set 2 Solutions [PDF]

**Handouts:**- Lecture 11 Notes [PDF]

**Handouts:**- Lecture 12 Notes [PDF]

**Handouts:**- Lecture 13 Notes [PDF]

**Links:**- How to Share a Secret, by Adi Shamir
- Secret Sharing Made Short, by Hugo Krawczyk
- NIST page on DSS
- Wikipedia on DSS

**Handouts:**- Lecture 14 Notes [PDF]

**Links:**- Handbook of Applied Cryptography (see chapter 12)
- Wikipedia on Needham-Schroeder
- Also see "Protocols for Authentication and Key Establishment" by Colin Boyd and Anish Mathuria (Springer, 2003)

**Handouts:**- Lecture 15 Notes [PDF]

**Handouts:**- Problem Set 4 [PDF]

**Handouts:****Links:**- Number Theory for Computing by Song Y. Yan. Springer, 2002.
- Wikipedia entry for PKI
- Certificate Chain Discovery in SPKI/SDSI by Clarke et al.
- SPKI/SDSI page
- Lecture notes 14 from 6.857/2002

**Handouts:**- Lecture 18 Notes [PDF]

**Links:**- An Undetectable Computer Virus by David Chess and Steve White
- Wikipedia page on quines
- Carey Nachenberg's slides, "Virus/Anti-virus Co-evolution" (Note: these slides are password protected with the same login as the problem set solutions)
- Wired Story on Slammer Worm
- How to 0wn the Internet in your spare time by Staniford, Paxson and Weaver

**Handouts:****Links:**- Ken Thompson's Turing Award lecture, "Reflections on Trusting Trust"
- Shamir's Multiply-Instruction Microprocessor Bug Attack
- On the Importance of Eliminating Errors in Cryptographic Computations by Dan Boneh, Richard A. DeMillo, and Richard J. Lipton

**Handouts:**- Lecture 20 Notes <<< [PDF]
- Demo code from class and a transcript of the exploit
- Problem Set 4 Solutions [PDF]

**Links:**- Smashing the Stack for Fun and Profit, by Aleph One in
*Phrack*Vol. 7, No. 49 - Blended Attacks Exploits, Vulnerabilities and Buffer-Overflow Techniques in Computer Viruses, by Eric Chien and Peter Szor
- StackGuard: Automatic Adaptive Detection and Prevention of Buffer-Overflow Attacks, by Cowan et al.
- Cross-site Scripting Explained, by Amit Klein

- Smashing the Stack for Fun and Profit, by Aleph One in

**Handouts:**- Lecture 21 Notes [PDF]

**Links:**- How to Make a Mint: The Cryptography of Anonymous Electronic Cash by Law, Sabett, and Solinas
- Lecture 10: More on Proofs of Knowledge (Lecture by Susan Hohenberger at JHU, 2/27/07)

**Handouts:****Links:**- Untraceable Off-line Cash in Wallets with Observers by Stefan Brands

**Handouts:****Links:**- Survey of Fuzzy Extractors by Yevgeniy Dodis, Leonid Reyzin and Adam Smith. See here for the paper's publication information.