Distributed Systems and Real-World Usage of Cryptography: A Modern Perspective
Course ID 15635
Description In this course, students will learn the mathematical foundations of blockchains, including how to construct distributed consensus protocols and prove them secure, cryptography for blockchains, and mechanism design for blockchains. This course will take a mathematically rigorous approach. Students are expected to have mathematical maturity and be able to write formal mathematical proofs. Students may also be expected to implement some consensus or cryptographic algorithms. This course is crosslisted with 15-435. Graduate students should take 15-635. Undergraduates should take 15-435.
Required Background Knowledge
Students are expected to have taken Discrete Math (e.g., 15251, 15259) or equivalent. The homeworks will have a combination of algorithms analysis, proofs, as well as implementations.