Cryptocurrency Engineering and Design
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.
Syllabus
- 1 Lecture 1: Signatures, Hashing, Hash Chains, e-cash, and Motivation
- 2 Lecture 2: Proof of Work and Mining
- 3 Lecture 3: Signatures
- 4 Lecture 4: Transactions and the UTXO Model
- 5 Lecture 5: Synchronization Process, Pruning
- 6 Lecture 6: SPV and Wallet Types
- 7 Lecture 7: OP_RETURN and Catena
- 8 Lecture 8: Forks
- 9 Lecture 10: PoW Recap, Other Fork Types
- 10 Lecture 11: Fees
- 11 Lecture 12: Transaction Malleability and Segregated Witness
- 12 Lecture 13: Payment Channels and Lightning Network
- 13 Lecture 14: Lightning Network and Cross-chain Swaps
- 14 Lecture 15: Discreet Log Contracts
- 15 Lecture 16: MAST, Taproot, Graftroot
- 16 Lecture 17: Anonymity, Coinjoin and Signature Aggregation
- 17 Lecture 18: Confidential Transactions
- 18 Lecture 22: Alternative Consensus Mechanisms
- 19 Lecture 23: New Directions in Crypto
- 20 Lecture 24: zkLedger
Course materials
- Course on MIT OpenCourseWare β website