Welcome to ECS 189F

Introduction to Distributed Ledgers

Instructor: Prof. Mohammad Sadoghi [[email protected]]
Teaching Fellow: Suyash Gupta [[email protected]]

Lecture: Tuesdays, Thursdays   4:40 - 6:00 PM   (Remote)
Discussion: Fridays   1:10 - 2:00 PM   (Remote)
Office Hours: Thursdays 3:00-4:30pm   (Remote)


Objectives

A unique open-source blockchain course created in partnership with Blockchain Acceleration Foundation and Blockchain at Davis that offers (1) introduction to concepts of distributed transactions and (2) overview of emerging blockchain fabrics and ecosystems.


Description

This project-based course will cover the foundations of distributed ledger technologies covering topics such as distributed transaction processing, resilient consensus protocols, consistency models, secure storage architecture, blockchain technologies, smart contracts, blockchains digital assets and payment systems, and recent developments in the blockchain industry.

  • Introduction to Transactions
  • Introduction to Distributed Consensus
  • Introduction Blockchains and Bitcoin
  • Foundations of Ethereum, Permissionless Fabric
  • Developing Decentralized Applications
  • Foundations of Hyperledger, Permissioned Fabric
  • Hyperledger Ecosystem Overview
  • Blockchain in Academia: ResilientDB
  • Sharding in Blockchain
  • Blockchain Applications: Agriculture, Healthcare, Energy, and Logistics
  • Bridging Public & Private Blockchains
  • Public Blockchain Protocol Participation
  • Blockchain Trilemma
  • Introduction Decentralized Governance & Voting Systems
  • Stablecoins and Payments
  • The State of Decentralized Finance

Grading

The final grade will be based upon the following components (all submissions are due at midnight):

Textbooks

Essential: (all freely available when accessed from UCD network) ResilientDB Resources:
  • Research Paper - ResilientDB: Global Scale Resilient Blockchain Fabric. S. Gupta, S. Rahnama, J. Hellings, M. Sadoghi. PVLDB 2020. [Paper, Slides, Video]
  • Demo Paper - Scalable, Resilient and Configurable Permissioned Blockchain Fabric. S. Rahnama, S. Gupta, T. Qadah, J. Hellings, M. Sadoghi. PVLDB 2020. [Paper, Slides, Video]
  • Tutorial - Building High Throughput Permissioned Blockchain Fabrics: Challenges and Opportunities. S. Gupta, S. Rahnama, J. Hellings, Mohammad Sadoghi. PVLDB 2020. [Paper, Slides: Theory | System, Video]
  • Architecture - Permissioned Blockchain Through the Looking Glass: Architectural and Implementation Lessons Learned. S. Gupta, S. Rahnama, Mohammad Sadoghi. ICDCS 2020. [Preprint, Slides, Video]
  • Others - ResilientDB Fabric Website, Journey, Vision/Slides, Bitcoin Radio, Code, Hands-on, Wiki.
Optional:

Workload

The most important component of the course is a quarter-long creative project on topics broadly related to distributed transactions, consensus protocols, and distributed ledgers (blockchain fabrics such as ResilientDB). The project must be done in groups of five, and the role and contributions of each group member must be clearly articulated. All projects must be approved and supervised by the instructor. The outcome of the final project will consist of (1) designing novel consensus protocols, benchmarking and studying existing consensus protocols, developing novel techniques or architectures to improve the performance of a blockchain fabric (e.g., sharding), or developing novel applications for blockchain; (2) writing a grant proposal for startup seed funding or a short research paper with the goal of submitting to a top-tier conference, of course, the actual submission is optional and does not affect your final grade. All project-related reports must be written in LaTex using ACM templates.


Communication

For communication with the instructor, please use email [[email protected]] and not Canvas. The instructor will not check/reply to Canvas messages. For group communication (monitored by TAs) and other students, we will rely on Slack. Please contact the TAs to add you to our Slack channel: ECS189F Slack.


Course Policy

In this class, we adopt the UC Davis Code of Academic Conduct available here. In addition, late submission will result in a 10% penalty for each day late. Students are strongly advised that any act of cheating will result in a score of 0 for the entire milestone (or the course) and offenses will be reported to the Office of the Dean of Students. You are encouraged to discuss problems and ideas but the final solution or code must be your own. In the event of a major campus emergency, course requirements, deadlines, and grading percentages are subject to changes that may be necessitated by a revised quarter calendar. If such unusual circumstances arise, students may determine any such changes by contacting the instructor.


Handouts

Course materials/grades will be made available on your  Canvas account.