Back to top

Blockchain-based Systems Engineering

Registration in TUMonline

Course overview

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 the Proof-of-Work (PoW) consensus mechanism 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. The Tezos blockchain is introduced with a focus on its advanced infrastructure, consensus mechanism, on-chain governance, and use cases. 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 Decentralized Finance (DeFi), Self-Sovereign Identity (SSI), and applied web3.

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 contents 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 digital ledger technologies
  • Alternative DLT approaches
  • 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 2022

The lectures and central exercises will be held online. Zoom links are available in Moodle

Calendar week Date and Time Subject
17 Tuesday 26.04, 12:15-13:45 Organization and introduction
18 Tuesday 03.05, 12:15-13:45 Cryptographic Basics
19 Tuesday 10.05, 12:15-13:45 Bitcoin Basics
20 Tuesday 17.05, 12:15-13:45 Consensus in Bitcoin
21 Tuesday 24.05, 12:15-13:45 Bitcoin Evolution and Challenges
22 Tuesday 31.05, 12:15-13:45 Ethereum Basics
24 Tuesday 14.06, 12:15-13:45 Ethereum Smart Contracts
25 Tuesday 21.06, 12:15-13:45 Ethereum Design Pattterns
26 Tuesday 28.06, 12:15-13:45 Tezos Basics
27 Tuesday 05.07, 12:15-13:45 Guest Lecture (Parithosh Jayanthi - ETH Foundation)
28 Tuesday 12.07, 12:15-13:45 Hyperledger
29 Tuesday 19.07, 12:15-13:45 Micro-lectures I (dApps, Web3, and Metaverse; MEV)
30 Tuesday 26.07, 12:15-13:45 Micro-lectures II (DAO; SSI)

 

Lecture slides, exercises, and solutions sheets may be found in Moodle

Previous years' lecture content, exercises, and exams can be found on our GithHub page