Description
[*** Note: Course contents are publicly available on the Resources tab. ***]
There’s a lot of excitement about Bitcoin, but also a lot of confusion about what Bitcoin is and how it works. We’re offering this course to help cut through the hype and get to the core of what makes Bitcoin unique.
To really understand what is special about Bitcoin, we need to understand how it works at a technical level. We’ll address the important questions about Bitcoin, such as:
How does Bitcoin work? What makes Bitcoin different? How secure are your Bitcoins? How anonymous are Bitcoin users? What determines the price of Bitcoins? Can cryptocurrencies be regulated? What might the future hold?
After this course, you’ll know everything you need to be able to separate fact from fiction when reading claims about Bitcoin and other cryptocurrencies. You’ll have the conceptual foundations you need to engineer secure software that interacts with the Bitcoin network. And you’ll be able to integrate ideas from Bitcoin in your own projects.
Note: this is not an official Princeton University course.
There’s a lot of excitement about Bitcoin, but also a lot of confusion about what Bitcoin is and how it works. We’re offering this course to help cut through the hype and get to the core of what makes Bitcoin unique.
To really understand what is special about Bitcoin, we need to understand how it works at a technical level. We’ll address the important questions about Bitcoin, such as:
How does Bitcoin work? What makes Bitcoin different? How secure are your Bitcoins? How anonymous are Bitcoin users? What determines the price of Bitcoins? Can cryptocurrencies be regulated? What might the future hold?
After this course, you’ll know everything you need to be able to separate fact from fiction when reading claims about Bitcoin and other cryptocurrencies. You’ll have the conceptual foundations you need to engineer secure software that interacts with the Bitcoin network. And you’ll be able to integrate ideas from Bitcoin in your own projects.
Note: this is not an official Princeton University course.
General Information
Lectures
There will be 11 video lectures, at the rate of 1 per week, starting Feb 16.
The lecturers are Arvind Narayanan, Joseph Bonneau, Edward Felten (Princeton University), and Andrew Miller (University of Maryland).
Each week there will be a Google hangout with that week's lecturer.
The lecturers are Arvind Narayanan, Joseph Bonneau, Edward Felten (Princeton University), and Andrew Miller (University of Maryland).
Each week there will be a Google hangout with that week's lecturer.
Textbook
The textbook is closely based on the video lectures. Each chapter corresponds to a lecture, and contains a list of homework questions and links to further reading.
Programming assignments
There will be five programming assignments in which we'll ask you to build various components of simplified Bitcoin-like cryptocurrencies.
After each assignment, we'll provide testing scripts for you to check the correctness of your solutions by yourself.
After each assignment, we'll provide testing scripts for you to check the correctness of your solutions by yourself.
Prerequisites
An introductory computer science class (such as CS 101) is required.
Basic programming experience as well as some knowledge of data structures and algorithms (linked lists, sorting, searching...) are strongly recommended.
Basic programming experience as well as some knowledge of data structures and algorithms (linked lists, sorting, searching...) are strongly recommended.
Special thanks to students Steven Goldfeder, Shivam Agarwal, Pranav Gokhale, Alex Iriza and Hannah Park for helping develop educational materials for the course.
Announcements
Sign up
1/23/15 10:38 AM
To sign up, please fill out this (very short) form. You'll receive an email with the title "Arvind Narayanan welcomes you to BTC-Tech, Princeton University" which you can use to create a Piazza account and enroll in the course.
Name | Office Hours | |
---|---|---|
Ed Felten | When? Where? | |
Arvind Narayanan | When? Where? | |
Andrew Miller | When? Where? | |
Steven Goldfeder | When? Where? | |
Shivam Agarwal | When? Where? | |
Joseph Bonneau | When? Where? |
Lecture videos
Lecture videos
Lecture slides
Lecture slides