Course overview - 2024
SoSe 24' lecture content, exercises, and previous exams can be found on our GitHub page
In this lecture, we provide an overview of blockchain systems and systems engineering, focusing on the technical details and applications of blockchain systems. We introduce cryptographic hash functions and present their properties. Then the data structure and the working principles of the Bitcoin blockchain are investigated in detail. We analyze permissionless consensus and Sybil control mechanisms like Proof-of-Work (PoW) of Bitcoin and illustrate the mining scheme. Moreover, we inspect the risks, challenges, and limitations of the technology. Following this, we demonstrate the system architecture of the Ethereum blockchain with a focus on the Ethereum Virtual Machine (EVM) and smart contracts. Subsequently, the Solidity language is explained in terms of syntax, types, and design. Ethereum decentralized applications (dApps) are illustrated with current standards and frameworks, and specifics to dApp developments are introduced. Alternative approaches to distributed ledger technologies in the enterprise space are also discussed. Accordingly, the Hyperledger project and the framework Fabric are unfolded. Further, we present an overview of the current state of the blockchain ecosystem with a focus on topics such as Self-Sovereign Identity (SSI) & Decentralized Identity Management, Blockchain Scalability & Interoperability, and Decentralized Finance (DeFi) & Maximal Extractable Value (MEV).
In the exercise, we focus on the complementary practical application of knowledge gained in the lecture. We further investigate the functionality and scripting in Bitcoin and analyze consensus algorithms. We are also exploring the implications of design decisions in public and private blockchain-based systems. Moreover, we investigate smart contract design patterns and make a deep dive into Solidity and web3 by developing dApps from end-to-end.
Content and Goals
Blockchain technology and, in general, distributed ledger technology (DLT) provides the technical foundation for the development and usage of innovative, decentralized distributed systems. In this lecture, we analyze the characteristics of these technologies. Additionally, students should be empowered to analyze and develop blockchain-based solutions. The following topics are going to be covered:
Goals: After successful participation in this module, the students are able to analyze blockchain-based application systems. Further, they are able to create these systems for given use cases and to select appropriate technology. They understand the technological foundations such that they are enabled to comprehend and assess alternative distributed ledger technologies.
Rooms
Lecture (Tue 12-14): 5510.EG.001 (Gustav-Niemann-Hörsaal)
Central Exercise (Wed 16-18): 5620.01.101 (Hörsaal 1, "Interims I")
16 | Tuesday 16.04, 12:15-13:45 | Organization and Introduction |
17 | Tuesday 23.04, 12:15-13:45 | Cryptographic Basics |
18 | Tuesday 30.04, 12:15-13:45 | Bitcoin Basics |
19 | Tuesday 07.05, 12:15-13:45 | Consensus in Bitcoin |
20 | Tuesday 14.05, 12:15-13:45 | Bitcoin Evolution and Challenges |
22 | Tuesday 28.05, 12:15-13:45 | Ethereum Basics |
23 | Tuesday 04.06, 12:15-13:45 | Ethereum Smart Contracts |
24 | Tuesday 11.06, 12:15-13:45 | Ethereum Design Patterns |
25 | Tuesday 18.06, 12:15-13:45 | Micro-lectures ("Blockchain Scalability and Interoperability";"DeFi, AMMs, and MEV") |
26 | Tuesday 25.06, 12:15-13:45 | Guest Lecture (Vera Neidl, Deutsche Bank) |
27 | Tuesday 02.07, 12:15-13:45 | SSI & Decentralized Identity Management |
28 | Tuesday 09.07, 12:15-13:45 | Hyperledger |
Calendar week | Date and Time | Subject |
Registration in TUMonline
The lecture and the exercise sessions will be streamed and recorded in SoSe 24' (TUM-Live).