Crypto-Currency Syllabus

Jan 26 : Watch ``Rise and Rise of Bitcoin''

Lecture slides
Both instructors away -- attending crypto-currency workshops! :) Xiao Shaun Wang will lead the class by giving a quick high-level background introduction, and leading the class to watch a cool Bitcoin documentary.

Please finish watching the documentary offline (if class time is not enough).
By Friday Jan 30, please email to both instructors (amiller,elaine@cs) answers to the following questions (please use at most 2-3 sentences for each questions):
1) Describe your prior experience with cryptocurrency
2) This class expects a large amount of research work on cryptocurrency. How much time do you plan to commit to the cryptocurrency research project this semester?
3) What do you think are the big problems with cryptocurrency today?
4) Describe your general research area.
5) Describe what you think is the most exciting idea where you can apply techniques from your area to make cryptocurrency better.
6) Why are you taking/auditing this class? Please state whether you are taking or auditing the class.
Note: you will also be asked to introduce yourself by answering a subset of these questions in the next class.

Feb 2: Overview, logistics, and Bitcoin introduction

Overview of the course, logistics, and course projects (Elaine). Bitcoin introduction (Andrew or Elaine).

Homework (short-term, due Sunday Feb 8) :
1. Read "systemization of knowledge" paper distributed in class. Write 2 paragraphs on what you think, each paragraph contains 3-5 sentences. For example, you can pick two most exciting things you learned from the paper.

2. Read the "selfish mining" paper, and summarize what is selfish mining and why it works in 2 sentences.

3. Briefly describe how you spent the bitcoin you were given.

Due Sunday, Feb 8. Submission by emailing both elaine and amiller. Please indicate [cryptocurrency-818I] at the beginning of your subject line.

Homework (short-term, due Sunday Feb 15 -- you get a free extension till Feb 19) : Please do a security analysis of the following -- work in groups of 2: (suggested by Jonathan Katz)

1. Find out how many public keys there are in bitcoin and/or the rate of new public keys being generated.

2. Find out about the hash-power existing in bitcoin, and/or the rate of growth of hash-power, and/or when you think at what hashpower the network will saturate (perhaps based on the cost of the most cost-effective ASICs).

3. Estimate in how long the following bruteforce public-key collision attack will have non-negligible success rate or better -- will become economically viable: leverage the hash power to find public/private key collision with other existing public keys in the network. Economically viable means that it is ``worth'' the effort for the miners to shift the mining to do a public key collision attack. To estimate this, you might also need to get an estimate about the average balance on each public key. This question might be difficult, I suggest you do an analysis for today first and then try to project for tomorrow.

Homework: Please form final project groups (2 people per group.) Each group must schedule a meeting with both instructors to discuss the project before 2/13. We can meet with you more often throughout the semester to help you with the research project. It is highly recommended that you take an initiative and meet with the instructors once per week. Project proposal and slides due Wedn 2/25. Proposal must be 2 page maximum, 11pt font, single column. Please also submit a deck of at most 3 slides (excluding title slide).

Homework: Startup company survey. See lecture slides for detailed instructions. Presentation slides due Sunday, March 29. Presentations to take place Monday, March 30.

Note: If you have not obtained instructor permission for attending/auditing the class, please contact Elaine after this class.

Feb 9: Ethereum introduction

Introduce Ethereum smart contract programming.
Introduce Ethereum lab: in groups of 2, you will design a small application using Ethereum, do a security analysis of your application, and present your application in class.

Homework (short-term, due Sunday Feb 15) ): Use just a few sentences to answer each of the following questions.

Please comment on what you think are the advantages/disadvantages of a centralized cryptocurrency and a decentralized one.

Why did centralized cryptocurrency not take off but Bitcoin did? What did Bitcoin do right? What was the resistance to deploying a centralized version of Bitcoin eariler?

Where do you envision things will be in the future? Will a decentralized cryptocurrency win, will a centralized cryptocurrency win in the end? Will they co-exist?

Homework: Ethereum lab. Project presentation slides due Sunday, March 1st. Project presentations will take place Monday, March 2nd.

Note: Please choose a different partner for the Ethereum lab than your final project group.
For undergraduate students who have taken my 414 and done this project earlier, please contact me for a variant of the project.

Feb 16: 10:30am AVW 4172 !! Guest Lecture by Vitalik Buterin, founder of Ethereum.

Joint with the Cryptocurrency Hotshot Speaker Series.

Feb 23: Discussions: measurements and trends for Bitcoin, viability of Jonathan Katz's public-key attack, selfish mining and incentives.

March 11: Ethereum Project Presentations.

March 13 (Friday!!): Guest Lecture by Dr. James Grimmelmann, Professor of Law. CSIC 1122, 2pm.

Joint with the Cryptocurrency Hotshot Speaker Series.

April 2 (Thursday!!): Guest Lecture by Dr. Susan Athey - Stanford, Ripple

Joint with the Cryptocurrency Hotshot Speaker Series.

April 10 (Friday!!): Guest Lecture by Jonathan Levi - Stanford

Joint with the Cryptocurrency Hotshot Speaker Series.

April 16 (Thursday!!): Guest Lecture by Jerry Brito and Peter Van Valkenburgh

Joint with the Cryptocurrency Hotshot Speaker Series.

April 20 Measurement Studies for Decentralized Cryptocurrency (Andrew Miller)