The education platform Coursera has hosted some interesting courses. For example the Stanford University is providing courses about Natural Language Processing, Game Theory, Probabilistic Graphical Models, Cryptography & Design and Analysis of Algorithms.
Coursera is committed to making the best education in the world freely available to any person who seeks it. We envision people throughout the world, in both developed and developing countries, using our platform to get access to world-leading education that has so far been available only to a tiny few. We see them using this education to improve their lives, the lives of their families, and the communities they live in.
Cryptography course by Dan Boneh Professor of Computer Science
Cryptography is an indispensable tool for protecting information in computer systems. This course explains the inner workings of cryptographic primitives and how to correctly use them. Students will learn how to reason about the security of cryptographic constructions and how to apply this knowledge to real-world applications. The course begins with a detailed discussion of how two parties who have a shared secret key can communicate securely when a powerful adversary eavesdrops and tampers with traffic.
We will examine many deployed protocols and analyze mistakes in existing systems. The second half of the course discusses public-key techniques that let two or more parties generate a shared secret key. We will cover the relevant number theory and discuss public-key encryption, digital signatures, and authentication protocols.
Towards the end of the course we will cover more advanced topics such as zero-knowledge, privacy mechanisms, and other forms of encryption. Throughout the course students will be exposed to many exciting open problems in the field.
Professor Boneh's main research area is applied cryptography and network security. His focus is on building security mechanisms that are easy to use and deploy. He has developed new mechanisms for improving web security, file system security, and copyright protection. He contributed to the security and performance of the RSA cryptosystem and contributed to the study of cryptographic watermarking.
- Background and overview.
- One-time encryption using stream ciphers.
- Semantic security.
- Block ciphers and pseudorandom functions.
- Chosen plaintext security and modes of operation.
- The DES and AES block ciphers.
- Message integrity. CBC-MAC, HMAC, PMAC, and CW-MAC.
- Collision resistant hashing.
- Authenticated encryption. CCM, GCM, TLS, and IPsec.
- Key derivation functions.
- Odds and ends: deterministic encryption, non-expanding encryption, and format preserving encryption.
- Basic key exchange: Diffie-Hellman, RSA, and Merkle puzzles.
- A crash course in computational number theory.
- Number theoretic hardness assumptions.
- Public key encryption.
- Trapdoor permutations and RSA.
- The ElGamal system and variants.