Distributed ledgers and cryptocurrencies

Course Description

This course aims to provide an understanding of how blockchain and distributed ledgers work and an overview of the ideas, technologies, and organizations arising from them, such as cryptocurrencies. It covers the technological underpinnings of blockchain operations as distributed data structures and decision making systems, their functionality and different architecture types. It provides and understanding and a critical evaluation of existing technological capabilities and platforms, and examines their future directions, risks and challenges.

Learning Outcomes

  1. Define main notions in the distributed ledger technology
  2. Explain the underlying technology of transactions, blocks, proof-of-work, and consensus building
  3. Describe the differences between the most prominent blockchain structures
  4. Analyze platforms such as Ethereum for blockchain based application building
  5. Justify the utility and value of a digital currency
  6. Evaluate settings where blockchain based structures may be applied, their potential and their limitations
  7. Recognize new challenges that exist in monetizing businesses around cryptocurencies and distributed ledgers

Forms of Teaching


2 hours per week


2 exams

Laboratory Work

1 hour per week, focused into 5 sessions per 3 hours each


Assisting the students in completing their assignments

Grading Method

Continuous Assessment Exam
Type Threshold Percent of Grade Threshold Percent of Grade
Laboratory Exercises 0 % 10 % 0 % 0 %
Seminar/Project 0 % 10 % 0 % 0 %
Mid Term Exam: Written 0 % 40 % 0 %
Final Exam: Written 0 % 40 %
Exam: Written 0 % 100 %

The 50% threshold on the continuous assessment is applied to the total sum of scores.

Week by Week Schedule

  1. Introduction to distributed ledgers and cryptocurrencies (history of cryptocurrencies; overview of the literature and tools), basics of cryptography (cryptographic hash functions)
  2. Basics of cryptography (digital signatures, public keys as identities), simple cryptocurrencies.
  3. Nakamoto consensus (distributed consensus, consensus without identity using a blockchain, incentives and proof of work)
  4. Bitcoin’s protocols (Bitcoin transactions, Bitcoin scripts, the Bitcoin network)
  5. Approaches to mining and consensus (the task of Bitcoin miners, mining incentives and strategies)
  6. Alternative mining approaches (ASIC‐resistant puzzles, proof‐of‐useful‐work, proof-of-stake and virtual mining)
  7. Bitcoin applications and security (storage of Bitcoins, online wallets and exchanges, currency exchange markets)
  8. Midterm
  9. Programing smart contracts on Ethereum (traditional contracts vs. smart contracts, smart contract programming model, a simple example)
  10. Overview of Ethereum (Ethereum project, Ethereum blockchain structure, gas and transaction limits)
  11. Anonimity, scalability and regulation (anonimity, off-chain channels, lightning network, regulation)
  12. Cryptocurrency ecosystem (altcoins: history and motivation, a few altcoins in detail, relationship between Bitcoin and altcoins)
  13. Business perspectives on cryptocurrencies (smart contracts in the insurance and energy industry)
  14. Perspectives on cryptocurrencies (taxation of cryptocurrency)
  15. Final exam

Study Programmes

University graduate
Computer Science (profile)
Recommended elective courses (3. semester)
Information Processing (profile)
Recommended elective courses (3. semester)
Software Engineering and Information Systems (profile)
Recommended elective courses (3. semester)


A. Narayanan,‎ J. Bonneau,‎ E. Felten,‎ A. Miller, S. Goldfeder (2016.), Bitcoin and Cryptocurrency Technologies: A Comprehensive Introduction, Princeton University Press
A. M. Antonopoulos (2015.), Mastering Bitcoin: Unlocking Digital Cryptocurrencies, O'reilly media press

Laboratory exercises


ID 186821
  Winter semester
L0 English Level
L1 e-Learning
30 Lectures
0 Exercises
15 Laboratory exercises
0 Project laboratory

Grading System

89 Excellent
76 Very Good
63 Good
50 Acceptable