Course Preview

Bitcoin and Cryptocurrencies
Instructor: Dan Boneh, Joseph Bonneau
Department: Computer Science
Institution: Stanford University
Platform: Independent
Price: Free
Prerequisites: computer programming, Principles of Computer Systems

CS255 (Introduction to Cryptography) is helpful but not necessary; we will introduce concepts from cryptography as needed during class but students with no background in cryptography may wish to do extra reading. Ethereum's most popular smart contract language which claims similarity to JavaScript. No prior experience with Solidity is expected. Additional testing code may be required in JavaScript.

Arvind Narayanan,‎ Joseph Bonneau,‎ Edward Felten,‎ Andrew Miller,‎ Steven Goldfeder. "Bitcoin and Cryptocurrency Technologies: A Comprehensive Introduction", Princeton University Press, 2016.
The course covers all aspects of cryptocurrencies, including distributed consensus, blockchains, smart contracts and applications. We will focus in detail on Bitcoin and Ethereum as case studies. The potential applications for Bitcoin-like cryptocurrencies are enormous. The course will cover the technical aspects of cryptocurrencies, blockchain technologies, and distributed consensus. Students will learn how these systems work and how to engineer secure software that interacts with the Bitcoin network and other cryptocurrencies. This course is intended for advanced undergraduates and graduate students.