Introducing the fundamentals of cryptography and distributed systems that underpin modern blockchain platforms — including collision-resistant hash functions, digital signatures and classical consensus algorithms and examining the architecture of modern blockchain platforms, and develop tools to analyze and interact with them in Python.
No
CIT 5910 Introduction to Software Development and CIT 5920 Mathematical Foundations of Computer Science
Blockchains or Distributed Ledger Technology (DLT) provide a novel method for decentralizing databases in the presence of mutually distrustful or malicious agents. The promise of DLTs has attracted billions of dollars in investments, yet the true potential of these systems remains unclear.
This course introduces students to the fundamentals of cryptography and distributed systems that underpin modern blockchain platforms — including collision-resistant hash functions, digital signatures and classical consensus algorithms. From there, we will examine the architecture of modern blockchain platforms, and develop tools to analyze and interact with them in Python.
At the end of this course, students should understand the power and limitations of blockchain technology, and be able to develop software that interacts with current blockchain platforms.