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 Hyperledger project and the framework Fabric are unfolded. We inspect the risks, challenges, and limitations of the technology and present an overview of the current state of the blockchain ecosystem.
In the exercise we focus on the complementary pratical application of knowledge gained in the lecture. We are further investigating functionality and scripting in Bitcoin, further understand consensus algorithms and understand the implications of design decisions in public and private Blockchain-based systems. Further, we investigate Smart Contract design patterns and make a deepdive into Solidity by developing dApps. In private Blockchains, we focus on Hyperledger Composer to get a solid understanding of applications in enterprise environments.
Content and Goals
Blockchain technology and, in general, distributed ledger technology (DLT) provide 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. Following contents are going to be covered:
Goals: After the 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.
To be announced.
To be announced.
There are no subpages or files.