Blockchains and Distributed Ledgers
Welcome to the web-site of blockchains and distributed ledgers course.
Catalogue link
Instructor: Aggelos Kiayias
Teaching Assistant: Dimitris Karakostas
Time and Location: Monday, 14:00-15:50.
G.06 in 50 George Square .
The class project is available
here.
Deadline: November 16th - submit at ITO .
The slides for the class are available in
this github directory.
Piazza web-site
click here.
Class Log
Lecture 01 (17.09.2018)
Introduction to blockchains and distributed ledgers, the never ending book parable. Digital Signatures and Hash Functions.
Presentation:
slides
Lecture 02 (24.09.2018)
Description of the bitcoin "backbone." Proof of work.
Presentation:
slides
Lecture 03 (03.10.2018)
The blockchain as a platform. introduction to Ethereum.
Presentation:
slides
Lecture 05 (7.10.2018)
Incentives for blockchain protocols.
Presentation:
slides
Lecture 04 (14.10.2018)
Data structures for blockchain protocols. Variable difficulty.
Blockchain Protocol variants.
Presentation:
slides
Lecture 06 (21.10.2018)
Sharing responsibility in blockchain protocols. Multi-signatures. Secret-Sharing.
Secure multiparty computation. Fair protocols.
Presentation:
slides
Lecture 07 (28.10.2018)
Anonymity and Privacy in blockchain protocols. Coinjoin transactions. Mix-nets.
Ring signatures.
Zero-knowledge proofs.
Presentation:
slides
(exclude slides 45-49)
Lecture 08 (5.11.2018)
Permissionless vs. Permissioned Ledgers.
BFT and PoS-based approaches for permissioned Dynamic participation.
Presentation:
slides
Lecture 09 (12.11.2018)
Pitfalls and security vulnerabilities in smart contracts.
Common bugs and hazards. The DAO attack.
Ponzi Schemes.
Using Libraries. Programming advice.
Presentation:
slides
Lecture 10 (19.11.2018)
Network and blockchain systems. Eclipse attacks. Network partitioning attacks.
The distributed ledger ecosystem. Colored Coins. Registries. Legal aspects. ICOs. The Howey Test.
Presentation:
slides
Summary (26.11.2018)
Summary and Overview. Student Questions.
Previous versions: 2017-18