BDL: Blockchains and Distributed Ledgers

Welcome to Blockchains and Distributed Ledgers

Learning Outcomes

On successful completion of this course, you should be able to: 

  1. explain and analyze protocols and systems involving multiple participants and their security properties.
  2. demonstrate the ability to think critically about cybersecurity.
  3. program smart contracts as part of scalable information technology services.
  4. analyse and evaluate smart contract code utilizing basic cryptographic primitives such as digital signatures and hash functions.

Course Outline

The concept of blockchain will be covered in detail together with the supporting cryptographic technology. Questions that will be covered is why it works and what problems can it solve. 

Syllabus:

  1. Introduction to consensus: Byzantine agreement, secure broadcast, and synchronous consensus protocols
  2. Asynchronous consensus protocols and chain-based consensus
  3. Nakamoto-style consensus and proof-of-work consensus
  4. Economic aspects, financial incentives, and smart contracts
  5. An introduction to solidity and smart contract programming
  6. Scalability
  7. Proof-of-stake consensus
  8. Anonymity
  9. Introduction to secret-sharing
  10. Introduction to secure multiparty computation
  11. Summary and overview with student questions.
License
Creative Commons - Attribution