Back to top

Blockchain-based Systems Engineering

Course overview - 2024

SoSe 24' lecture content, exercises, and previous exams can be found on our GitHub page

Lectures

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).

Exercises

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:

  • Cryptographic basics
  • Peer-to-peer networks
  • Data structure and setup of the Bitcoin blockchain
  • Consensus mechanisms
  • Risks, challenges, and limitations of the technology
  • Working principles of the Ethereum blockchain
  • Smart contracts & smart contract engineering
  • Use cases of DLTs
  • Alternative DLT approaches
  • Self-Sovereign Identity (SSI)
  • Decentralized Finance (DeFi)
  • Blockchain Scalability
  • Trends and developments in blockchain technologies

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.

Prerequisites

  • IN0002: Fundamentals of Programming
  • IN0006: Introduction to Software Engineering
  • IN0009: Basic Principles: Operating Systems and System Software

 

Schedule Summer Term 2024

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).