A solid and entertaining introduction to cryptography. To get the most out of this course you should probably have a good foundation in discrete probability and pre-calculus; some calculus would help as well.

FEATURES:

1. Six weeks with approximately 11 video lectures per week.

2. Topics covered (non-exhaustive): history of cryptography, one-time pads and perfect secrecy, Shannon's Theorem, PRNGs (pseudo-random number generators), stream ciphers, security definitions, block ciphers (DES, AES), pseudo-random functions and permutations, modes (CBC, CTR), MACs (message authentication codes), collision-resistant hashes, side-channel attacks, Diffie-Hellman protocol, RSA, El Gamal.

3. Quizzes include both math-based and programming questions.

PROS:

1. (Close to) mathematically rigorous.

2. In-lecture quizzes had the right level of difficulty: not too hard, not too difficult.

3. Homework assignments very much helped to reinforce the ideas from class.

4. Lectures were edited well to remove extraneous pauses and irrelevancies.

5. Lecturer knew his material well.

6. Many good examples of where cryptographic protocols mis-applied (e.g., WEP, certain SSL/TLS instances, etc.)

7. PDF notes of lectures were very useful when studying for exams and doing homework.

CONS:

1. Supplementary sources were not as helpful as I would have liked.