Blockchain and distributed ledger technologies
Course objectives
General goals: Blockchains emerged as a novel, game-changing paradigm for the distributed management of transactional systems. A blockchain is a protocol for the management of distributed ledgers, that is for the decentralised storage of a tamper-proof sequence of transactions (ledger), maintained and verified by the nodes participating in the network. A combination of peer-to-peer networks, consensus-making, cryptography, and market mechanisms is at the core of blockchains, which ensure data integrity and transparency thereby. An increasing number of blockchain platforms provides support for so-called smart contracts, that is, executable code expressing how business is to be conducted among contracting parties (e.g., transfer digital assets after a condition is fulfilled). The design of a secure, verifiable and efficient blockchain-based application requires the capability of properly architecting the behavioural structures amid the involved parties. The course covers in details the principles and technologies underpinning blockchain platforms and the properties they guarantee, on one hand, and is aimed at providing the means for the creation and analysis of blockchain-based solutions and applications, on the other hand. Specific goals: The course revolves around four main topics: 1) fundamentals of blockchains and distributed ledger technologies; 2) smart contracts programming; 3) development of a full-stack blockchain-based application; 4) assessment and analysis of a blockchain-based application. Knowledge and understanding: Students will learn the basics of blockchain technologies and the interplay of the underlying techniques that lead to the immutability, persistency, security and eventual consistency of the blockchain platforms. Furthermore, they will learn how to encode smart contracts and, thereupon, create full-stack Decentralised Applications (DApps). To properly design DApps and the token systems they rely upon, learners will apply the principles of process behaviour modelling and execution. To that end, an overview of cybersecurity challenges, as well as legal and privacy aspects, will also be provided. Application of knowledge and understanding: At the end of the course, students will have gained a better understanding of the fundamental pillars of distributed ledger technologies and blockchains. Also, they will have the ability to design and implement blockchain-based systems. Furthermore, they will produce reports in a manner that provides the most value to the stakeholders of decentralised applications. Critical and judgmental skills: Learners will develop the ability to assess the quality of decentralized applications and blockchain-based solutions at large from the perspectives of reliability, behavioural soundness, execution cost, on-chain and off-chain load balance, applicability, cybersecurity, and privacy. Communication skills: Students will learn how to document their choices, including through the use of diagramming and reporting tools. They will also have acquired the ability to prepare presentations on scientific subjects. Learning ability: The notions acquired during the course will provide students with solid knowledge in order to further investigate the most advanced technical aspects and to keep themselves informed about the continuous developments and updates of blockchain and distributed ledger technologies.
Program - Frequency - Exams
Course program
Books
Frequency
Exam mode
Bibliography
Program - Frequency - Exams
Course program
Books
Frequency
Exam mode
Bibliography
- Lesson code10600490
- Academic year2025/2026
- CourseCybersecurity
- CurriculumSingle curriculum
- Year2nd year
- Semester1st semester
- SSDINF/01
- CFU6