CS 251(p): Bitcoin and Crypto Currencies

Crypto Currencies, the Blockchain, and Smart Contracts

Autumn 2015

The course covers all aspects of crypto currencies: Bitcoin and other currencies, smart contracts and applications of the blockchain.

Students can sign up for CS251 and optionally also sign up for CS251p.
To sign up for CS251p, please fill out this Application Form.


Course syllabus (and readings)
Course overview (grading, textbooks, coursework, exams)
CS251 Lectures: Monday, Wednesday:   3-4:20pm,   Gates B03
CS251p Lab: Monday:   4:30-5:20pm,   Gates 505
Sections: Friday:   3:30-4:20pm,   Gates B03.
CA mailing list: cs251ta@cs.stanford.edu

Final Exam

The final exam:   [pdf]

Students may take the final at either one of the following two dates:

For remote SCPD students: Please email the TAs with your email address, the email address of your SCPD monitor if you have one, and which day you would like to take the exam. We will email a pdf to you which you should print, complete, and email back to us. Hold on to your completed exam until you receive confirmation. Note that if you are local to the bay area, you must come to one of the two exam slots, unless you contact us in advance.


Homework #1:    [pdf]
Due: 2015-10-05
Homework #2:    [pdf]
Due: 2015-10-28
Homework #3:    [pdf]
Due: 2015-11-17


Project #0: Initiate Bitcoin transactions using bitcoinj
Assignment:   [pdf]   [starter code]
Due: 2015-10-12
Project #1: Experiment with mining strategies
Assignment:   [pdf]   [starter code]
Due: 2015-10-21
Project #2: Explore the block chain
Assignment:   [pdf]   [data set]
Due: 2015-11-09
Project #3: Smart contracts
Due: 2015-12-03