Skip to content

sebischair/bbse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Blockchain-based Systems Engineering – Lecture Slides

Ulrich Gallersdörfer, Patrick Holl, and Florian Matthes
Department of Informatics
Technical University of Munich
{ulrich.gallersdoerfer, patrick.holl, matthes}@tum.de
https://wwwmatthes.in.tum.de/

For citation, please use the provided .bib file.

Introduction

This GitHub-repository contains all contents of the lecture Blockchain-based Systems Engineering (IN2359), held regularly in the summer term at the Technical University of Munich, starting in 2018. About 500 students regularly enroll in the course.

  • Lecture: Prof. Dr. Florian Matthes
  • Exercises / Tutorials: Ulrich Gallersdörfer
  • Contact: Please open an issue / pull requests for comments. If you are interested in the .pptx-files, drop us an email.

Slide deck 13 (Corda) created with support of Gonzalo Munilla Garrido and Susanne Stahnke.

Module description

In this lecture, we provide an overview about Blockchain systems and systems engineering, focusing on 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 consensus mechanism of Bitcoin and illustrate the mining scheme. Following this, we demonstrate the system architecture of the Ethereum blockchain with a focus on the Ethereum Virtual Machine 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 concepts and architecture of Hyperledger Fabric and Corda are explained. We inspect the risks, challenges, and limitations of distributed ledger technologies and present an overview of the current state of the blockchain ecosystem.

Contents

Lecture and Exercise (+ Videos)

Content of Lecture Lecture Recording Content of Exercise Exercise Recording
0 & 1: Organization & Introduction - -
2: Cryptographic Basics Lecture Recording 2 2: Cryptographic Basics Solution
3: Bitcoin Basics Lecture Recording 3 3: Bitcoin 1 Solution
4: Bitcoin Script Lecture Recording 4 4: Bitcoin 2 Solution
5: Consensus in Bitcoin Lecture Recording 5 5: Bitcoin 3 Solution
6: Bitcoin Assessment Lecture Recording 6 6: Bitcoin 4 Solution
7: Ethereum Basics Lecture Recording 7 7: Ethereum 1 Solution
8: Ethereum Smart Contracts Lecture Recording 8 8: Ethereum 2 Solution
9: Ethereum Design Patterns Lecture Recording 9 9: Ethereum 3 Solution
10: Ethereum Dapps Lecture Recording 10 10: Ethereum 4 (optional) Solution
11: Hyperledger I Lecture Recording 11 - -
12: Hyperledger II Lecture Recording 12 - -
13: Corda Lecture Recording 13 - -

Guest Lectures

Title Speaker Slides Video Recording
Bringing DLT into Practice Thilo Keber Slides Recording
Zero-Knowledge Proofs Alexander Esslinger Slides Recording

We thank both speakers Thilo Keber and Alexander Esslinger for providing the material and talk as well as allowing us to share this material within this repository.

Exams

License

Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

This work is licensed under Attribution-ShareAlike 4.0 International (CC BY-SA 4.0).

Acknowledgements

We wish to thank our students Alexander Hefele, Kaan Uzdogan, Christian Ziegler, and Konstantin Kuchenmeister for supporting the lecture and all others which provided valuable feedback!

Other information

Symbols used from FontAwesome.