Bitcoin and Cryptocurrency Technologies by Princeton University (https://www.coursera.org/learn/cryptocurrency)
- Welcome
- Cryptographic Hash Functions
- Hash Pointers and Data Structures
- Digital Signatures
- Public Keys as Identities
- A Simple Cryptocurrency (Goofy Coin & Scrooge Coin)
- Programming Assignment: Scrooge Coin
- Centralization vs. Decentralization
- Distributed Consensus
- Consensus without Identity: the Block Chain
- Incentives and Proof of Work
- Putting It All Together
- Bitcoin Transactions
- Bitcoin Scripts
- Applications of Bitcoin Scripts
- Bitcoin Blocks
- The Bitcoin Network
- Limitations & Improvements
- How to Store and Use Bitcoins
- Hot and Cold Storage
- Splitting and Sharing Keys
- Online Wallets and Exchanges
- Payment Services
- Transaction Fees
- Currency Exchange Markets
- Programming Assignment: Consensus from Trust
- The Task of Bitcoin Miners
- Mining Hardware
- Energy Consumption & Ecology
- Mining Pools
- Mining Incentives and Strategies
- Anonymity Basics
- How to de-anonymize Bitcoin
- Mixing
- Decentralized Mixing
- Zerocoin and Zerocash
- Tor and the Silk Road
- Consensus in Bitcoin
- Bitcoin Core Software
- Stakeholders: Who's in Charge?
- Roots of Bitcoin
- Governments Notice Bitcoin
- Anti Money-Laundering
- Regulation
- New York's BitLicense Proposal
- Programming Assignment: Block Chain
- Essential Puzzle Requirements
- ASIC Resistant Puzzles
- Proof-of-useful-work
- Nonoutsourceable Puzzles
- Proof-of-Stake "Virtual Mining"
- Bitcoin as an Append-Only Log
- Bitcoin As Smart Property
- Secure Multi-Party Lotteries in Bitcoin
- Bitcoin As Randomness Source
- Prediction Markets & Real-World Data Feeds
- Short History of Altcoins
- Interaction Between Bitcoin and Altcoins
- Lifecycle of an Altcoin
- Bitcoin-Backed Altcoins, "Side Chains"
- The Block Chain as a Vehicle for Decentralization
- Routes to Block Chain Integration
- What Can We Decentralize?
- When Is Decentralization a Good Idea?