Course detail
Blockchains and Decentralized Applications
FEKT-CZV-BDAAcad. year: 2024/2025
Not applicable.
Language of instruction
Czech
Number of ECTS credits
5
Mode of study
Not applicable.
Guarantor
Department
Entry knowledge
Not applicable.
Rules for evaluation and completion of the course
Not applicable.
Aims
Not applicable.
Study aids
Not applicable.
Prerequisites and corequisites
Not applicable.
Basic literature
ANTONOPOULOS, Andreas M.; WOOD, Gavin.Mastering Ethereum: Building Smart Contracts and DApps. 1st ed. O'Reilly Media, 2018. ISBN 978-1491971949 (CS)
ANTONOPOULOS, Andreas. Mastering bitcoin. 3rd ed. O'Reilly Media, 2023. ISBN 978-109815009. (CS)
Cachin, C., & Vukolić, M. (2017). Blockchain consensus protocols in the wild. arXiv preprint arXiv:1707.01873. (CS)
Casino, F., Dasaklis, T. K., & Patsakis, C. (2019). A systematic literature review of blockchain-based applications: current status, classification and open issues. Telematics and informatics, 36, 55-81 (CS)
Nakamoto, S. (2019). Bitcoin: A peer-to-peer electronic cash system. (CS)
ANTONOPOULOS, Andreas. Mastering bitcoin. 3rd ed. O'Reilly Media, 2023. ISBN 978-109815009. (CS)
Cachin, C., & Vukolić, M. (2017). Blockchain consensus protocols in the wild. arXiv preprint arXiv:1707.01873. (CS)
Casino, F., Dasaklis, T. K., & Patsakis, C. (2019). A systematic literature review of blockchain-based applications: current status, classification and open issues. Telematics and informatics, 36, 55-81 (CS)
Nakamoto, S. (2019). Bitcoin: A peer-to-peer electronic cash system. (CS)
Recommended reading
Not applicable.
Classification of course in study plans
- Programme CZV3-Cyber Lifelong learning - long-term course 2 year of study, winter semester, elective
Type of course unit
Lecture
26 hod., optionally
Teacher / Lecturer
Syllabus
1. Úvod a potřebné kryptografické konstrukty.
2. Bitcoin I - mining, transakce, block, hlavička, skriptovací jazyk, UTXO/account-balance model, SPV klienti a konsenzuální účastníci Bitocin a PoW Blockchainy - peněženky, selekce chainu, forky.
3. Bitcoin II - double spending, selfish mining, mining pools, čas a přesnost, škálovatelnost, spotřeba energie, privátnost, mixéry.
4. Konsenzuální protokoly - cíle, Zooko trojúhelník, CAP teorém, Byzantský konsenzus a kozistentní broadcast, PBFT, Nakamotův konsenzus, finálnost, Proof-of-Work, Proof-of-Stake, Proof-of-Authority, modely permissioned a permissionless , schémata odměn a modely teorie her.
5. Proof-of-Resource protokoly - ASIC-odolný mining (scrypt), Proof-of-Storage, Proof-of-Replication, populární altcoiny a jejich protokoly.
6. Ethereum and Smart Contracts - výpočetní model, mining (ethash), strýčkové, struktura bloku a hlavičky, light klienti, virtuální mašina, paměť a úložiště, koncept gasu, konzistentní aktualizace stavu s Merkle-Patricia stromy, smart kontrakty, typy invokací.
7. Programování Smart Kontraktů - ukázky standardních kontraktů a decentralizovaných aplikací (DAPP), fungibilní a nefungibilní tokeny, ukázky bagů v smart kontraktech, frameworky pro analýzu kódu, truffle a Solidity, decentralizované aplikace a eth.web3, Ganache Turingovo kompletní a nekompletní smart kontraktové jazyky.
8. Škálovatelnosti a propustnost - problémy a kompromisy, Bitcoin-NG, acyklické grafy , Shardování, Off-chainoání (platební kanály, lighting network), TEE, Permissioned blockchainy a Proof-of-Authority, centralizované blockchainy (stromy historie, CT).
9. Anonymnost a Privátnost - nezklinkovatelnost, deanonymizace na síťové vrstvě, centralizované a decentralizované mixovací služby, zero-knowledge důkazy, zk-Snarky, privátně-orientované kryptoměny.
10. Proof-of-Stake protokoly - virtuální mining, kombinace s BFT a PoR, příklady protokolů, útoky na PoS protokoly (nothing-at-stake, grinding, long-range, DoS na lídry a komise).
2. Bitcoin I - mining, transakce, block, hlavička, skriptovací jazyk, UTXO/account-balance model, SPV klienti a konsenzuální účastníci Bitocin a PoW Blockchainy - peněženky, selekce chainu, forky.
3. Bitcoin II - double spending, selfish mining, mining pools, čas a přesnost, škálovatelnost, spotřeba energie, privátnost, mixéry.
4. Konsenzuální protokoly - cíle, Zooko trojúhelník, CAP teorém, Byzantský konsenzus a kozistentní broadcast, PBFT, Nakamotův konsenzus, finálnost, Proof-of-Work, Proof-of-Stake, Proof-of-Authority, modely permissioned a permissionless , schémata odměn a modely teorie her.
5. Proof-of-Resource protokoly - ASIC-odolný mining (scrypt), Proof-of-Storage, Proof-of-Replication, populární altcoiny a jejich protokoly.
6. Ethereum and Smart Contracts - výpočetní model, mining (ethash), strýčkové, struktura bloku a hlavičky, light klienti, virtuální mašina, paměť a úložiště, koncept gasu, konzistentní aktualizace stavu s Merkle-Patricia stromy, smart kontrakty, typy invokací.
7. Programování Smart Kontraktů - ukázky standardních kontraktů a decentralizovaných aplikací (DAPP), fungibilní a nefungibilní tokeny, ukázky bagů v smart kontraktech, frameworky pro analýzu kódu, truffle a Solidity, decentralizované aplikace a eth.web3, Ganache Turingovo kompletní a nekompletní smart kontraktové jazyky.
8. Škálovatelnosti a propustnost - problémy a kompromisy, Bitcoin-NG, acyklické grafy , Shardování, Off-chainoání (platební kanály, lighting network), TEE, Permissioned blockchainy a Proof-of-Authority, centralizované blockchainy (stromy historie, CT).
9. Anonymnost a Privátnost - nezklinkovatelnost, deanonymizace na síťové vrstvě, centralizované a decentralizované mixovací služby, zero-knowledge důkazy, zk-Snarky, privátně-orientované kryptoměny.
10. Proof-of-Stake protokoly - virtuální mining, kombinace s BFT a PoR, příklady protokolů, útoky na PoS protokoly (nothing-at-stake, grinding, long-range, DoS na lídry a komise).