IEMS 5725 Blockchain and Applications (Spring 2024)


Course Information

Co-Instructors

Teaching Assistant:

  • Ms. PAN, Ying-yu (py022@ie, SHB 726)

Class Population:

  • BSc(CS), MSc(CS), MSc(EE), MSc(IE)
Note on email communication:
Prepend subject of the email with [IEMS5725].
Use your institutional email for correspondences.

Lectures:

Tuesday
7pm-10pm @ CYT 209A
Piazza

🌕/🌒

Course Syllabus

Week # Content Instructor Remarks
Introduction
Week 1 (9/1) Logistics and Overview Jack/Sherman
Week 2 (16/1) Basics of Blockchain, DLT Sherman/Jack Ref.: Bitcoin and Beyond
Week 3 (23/1) Blockchain Variants Jack
Smart Contract Basics
Week 4 (30/1) Smart Contract Jack
Week 5 (6/2) Solidity, Ethereum Jack Assignment 1 (Due on 23 Feb)
(13/2) Holiday
Crytography
Week 6 (20/2) Introduction to Cryptography Sherman
Week 7 (27/2) Basic Number Theory, Key Agreement, Signatures Sherman Ref.: Handbook of Applied Cryptography
Week 8 (5/3) RSA, Pairings, Secret Sharing Sherman
Week 9 (12/3) Privacy, Confidential Transactions, and Zero-Knowledge Proof Sherman Assignment 2 (Due on 24 Mar)
[mid-term exam scope ends here]
Applications
Week 10 (19/3) Central Bank Digital Currency, ERC-20 Tokens Sherman/Jack Ref.: e-HKD: A technical perspective
Week 11 (26/3) Mid Term Examination
Week 12 (2/4) Decentralized Oracle Network, Remote Guest Lecture (Consensus) Jack, Yang XIAO Ref.: A Survey of Distributed Consensus
Protocols for Blockchain Networks
Week 13 (9/4) Guest Lecture (ZK-SNARK Applications)
Layer-2 Channel, and Closing Remarks
Mingshu Cong
Jack/Sherman
Assignment 3 (Due on 4 May)
Week 14 (16/4) Final Examination

Course Description

The course introduces the basic underlying cryptographic concepts of blockchain as a powerful tool to support distributed ledgers in all digital transactions. The significances of trust, anonymity, and consensus mechanisms are discussed. The course further explores the applications of blockchain and smart contracts in various practical applications, including financial services, distributed systems, and specific domains such as smart city, healthcare, logistics and supply chains, etc.

Course Outcomes

Upon successful completion of the course, the students will have acquired the ability to:

  1. Understand the cryptographic concepts of blockchain as a distributed ledger;
  2. Describe the issues of trust, anonymity and consensus mechanisms;
  3. Describe and understand the differences between different types of blockchain structures;
  4. Understand the applications of blockchain in various applications, as well as their challenges.

Recommended Readings

  1. Imran Bashir. Mastering Blockchain: A deep dive into distributed ledgers, consensus protocols, smart contracts, DApps, cryptocurrencies, Ethereum, and more, 3rd edition, Packt Publishing Limited, 2020.
  2. Arvind Narayanan, Joseph Bonneau, Edward Felten, Andrew Miller, Steven Goldfeder. Bitcoin and Cryptocurrency Technologies: A Comprehensive Introduction, Princeton University Press, 2016.

Guest Lectures

1. Distributed Consensus Protocols for Blockchain Networks

Blockchain, the technology behind cryptocurrencies and smart contracts, allows distrustful participants to maintain a consistent transaction history and execute business logic without relying on a centrally trusted authority. Among the many technical components that compose of a blockchain system, the distributed consensus protocol is the key technology that underpins blockchain’s decentralization and security. In this talk, we will first take a closer look at the consensus protocol itself in from a distributed computing perspective, focusing on its technical components and core security/performance provisions. We will then introduce the most popular consensus protocols, including the Byzantine fault tolerant class to Nakamoto-style protocols and recent developments that attempt to make the best of both worlds. Their adoption in the blockchain networks will also be covered. We will finish by remarking on the design trade-offs of consensus protocols when we deal with varying network conditions and security assumptions.

Bio: Dr. Yang Xiao is an Assistant Professor in the Department of Computer Science at the University of Kentucky. He received a Ph.D. in Computer Engineering from Virginia Tech in the US. His research is focused on the security and privacy issues of blockchain networks, decentralized systems and applications, and mobile networks. Dr. Xiao has published his research in major computer networks and security venues, including NDSS, USENIX Security, ASIACCS, and INFOCOM. His long-term research goal is to tackle the security and privacy challenges in networked systems of zero or limited trust.

2. zk-SNARKS and Applications

Bio: Dr. CONG, Mingshu (Miranda) is currently in her fourth year as a PhD candidate in Computer Science at the University of Hong Kong. She previously earned a PhD in Finance from Peking University and has experience as a Fintech entrepreneur in Shenzhen. Her research focuses on designing zk-SNARK protocols for processing large datasets.

Assessment

Items Weighting
Assignments, including a mini project 50%
Mid-Term Exam 20%
Final Exam 30%