Course Meeting Times
Lectures: 2 sessions / week, 1.5 hours / session
Prerequisites
Programming experience is required to succeed in this course. See the list of Introductory Programming Courses on OCW.
Course Description
Bitcoin and other cryptographic currencies have gained attention over the years as the systems continue to evolve. This course looks at the design of Bitcoin and other cryptocurrencies and how they function in practice, focusing on cryptography, game theory, and network architecture. Future developments in smart contracts and privacy will be covered as well. Programming assignments in the course will give practical experience interacting with these currencies.
Problem Sets
There are three assignments for this course that are described further in the Assignments section.
Final Projects
Groups of 1–4 submit topics for a final project. Teams will design and implement an application or system, add a new feature to an existing system (e.g., a cryptocurrency or shared ledger implementation), propose a new formalization in this space, or pose and solve an interesting problem.
Grading
Activities | Percentages |
---|---|
Attend Lectures | 20% |
Problem Sets | 40% |
Final Project | 40% |