Blockchain systems (distributed systems that use a blockchain-based distributed ledger as a primary building block) have emerged in recent years as a disruptive technology in many sectors. Though perhaps best known for their ability to support cryptocurrencies like bitcoin, the real power of these systems is their general ability to enable and incentive multiparty transactions without the need for a trusted centralized authority.
Much of the initial development of blockchain-based technologies occurred in the context of more systems-oriented fields like networks, systems, and security, with developers racing to deploy systems that seemed like they should work as promised. There is now an effort to apply more theory to this field, using, in particular, tools from computer science subfields like distributed algorithm and game theory to both better formalize the guarantees and vulnerabilities of existing systems and enable new innovations.
The goal of this doctoral seminar is to perform a survey of the small but growing literature of computer science papers that apply formal theory to the study of blockchain systems. In particular, we will focus on categories of papers summarized in the reading list below.
Participants in this seminar should develop a strong understanding of the current state of the blockchain research community, and understand the main attempts to apply formal theory to its core ideas. It is hoped that the seminar will result in publishable research problems for those participants who are interested in continuing their study of this field. Any student who is interested should be able to write and publish a workshop-caliber paper on blockchain theory by the completion of this course (and hopefully, some will).
With the exception of the introductory and concluding meetings, and the possibility of a small number of guest lectures, the seminar meetings will be structured around two student presentations: a short (10 - 30 minute) non-technical presentation on a selected blockchain system, application, or idea (to help elaborate our understanding of the contours of this field), and a long technical presentation on a selected blockchain-related theory paper (or collection of related papers).
The schedule of topics and assignments of students to presentations will be determined during the seminar meetings and captured in the below schedule. Grading will be based on the quality of presentations and engagement in the discussion.
Here is an evolving reading list of blockchain theory papers, divided into broad categories. This list will grow as the the semester continues, and we might not be able to cover all of these titles during the seminar meetings, but putting together a reasonable survey of work in blockchain theory seemed to be an endeavor of standalone value.
Analysis of Existing Blockchain Systems
Distributed Systems that Leverage Blockchains as a Blackbox Service
Adapting Byzantine Consensus Theory to Blockchain-Inspired Settings
Below is a schedule of seminar meerings. Notice, in particular, the Tuesdays on which we will not meet. As the semester continue we will begin to fill in presentation and guest lecture information on specific dates.
Date | Information |
1/15 | Introduction
|
1/22 |
Non-technical presentation (Hao-Ren)
|
1/29 |
Non-technical presentation (Shaobo)
|
2/5 | Not meeting (professor travel) |
2/12 |
Non-technical presentation (Shuchen)
|
2/19 | Not meeting (holiday) |
2/26 |
Non-technical presentation (Alex)
|
3/5 | Not meeting (spring break) |
3/12 | We will go through the main results of the following paper altogether as a class: The Bitcoin Backbone Protocol. Review the paper enough to have basic familiarity. We will try to figure out the details together. |
3/19 |
Non-technical presentation (Katina)
|
3/26 |
Non-technical presentation (Hao-Ren)
|
4/2 |
Non-technical presentation (Shaobo)
|
4/9 |
Non-technical presentation (Katina)
|
4/16 |
Non-technical presentation (Shuchen)
|
4/23 |
Non-technical presentation (Alex)
|
4/30 | Concluding discussion |