• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site
Bachelor 2020/2021

Mathematical Methods for Distributed Ledger Systems

Category 'Best Course for Broadening Horizons and Diversity of Knowledge and Skills'
Type: Elective course (Software Engineering)
Area of studies: Software Engineering
When: 4 year, 1-3 module
Mode of studies: offline
Instructors: Yury Yanovich
Language: English
ECTS credits: 8

Course Syllabus

Abstract

Mathematical Methods for Distributed Ledger Systems: Distributed ledger technology (blockchain) was introduced in 2008 as a basis for the Bitcoin cryptocurrency and has found application in many areas: state registries, supply chain, financial sector, and others by the moment. The blockchain is based on beautiful mathematical approaches from cryptography, data structures and distributed algorithms, such as public-key cryptography, Merkle trees and consensus protocols, and challenges researchers with new ones. The course will tell you what a distributed ledger is, about its underlying theoretical principles and what current trends are in it. Mastering the material requires only standard computer science student skills, namely: • to be familiar with at least one high-level programming language and not be afraid of meeting new ones; • do not be afraid of power over a given field either on paper or in a computer; • draw pictures and display text in Jupyter notebook; • understand what an algorithm is.
Learning Objectives

Learning Objectives

  • study of distributed ledger (blockchain) technology with an emphasis on its mathematical foundations, as well as technical and applied aspects
Expected Learning Outcomes

Expected Learning Outcomes

  • Ability to design a blockchain application from the formulation of an application problem to a technical description
  • The ability to simulate cryptographic primitives and simplest blockchains in the Jupiter laptop web application
  • Be able to program and run simple smart contracts in Solidity language
  • Be able to program and run simple smart contracts on the Exonum platform
Course Contents

Course Contents

  • Blockchain basics
    Blockchain technology as a basis of Bitcoin. Blockchain application examples. My toy cryptocurrency. Inside Bitcoin: network protocol and clients.
  • Cryptography basics
    Introduction to cryptography. Block ciphers. Public key cryptography. RSA. ElGamal. Elliptic curves. PKI. Zero-knowledge proofs. Secret sharing scheme.
  • Deeper into blockchain
    Blockchain capabilities, limitations and challenges. Proof-of-X. Scaling blockchain: sidechains, sharding. Privacy in blockchains: Bitcoin case study. Privacy in blockchains: ZKP and private smart contracts. ZKP practice.
  • Smart contracts
    Micropayments and smart contracts (Bitcoin). Micropayments and smart contracts practice. Ethereum. Ethereum smart contracts. Lightning.
  • Private blockchains
    BFT consensus Private blockchains: Exonum, Hyperledger Fabric
Assessment Elements

Assessment Elements

  • non-blocking home assignment 1
  • non-blocking home assignment 2
  • non-blocking home assignment 3
Interim Assessment

Interim Assessment

  • Interim assessment (3 module)
    0.3 * home assignment 1 + 0.4 * home assignment 2 + 0.3 * home assignment 3
Bibliography

Bibliography

Recommended Core Bibliography

  • Handbook of blockchain, digital finance, and inclusion. Vol.1: Cryptocurrency, FinTech, InsurTech, and regulation, Chuen, D. L. K., 2018
  • Handbook of blockchain, digital finance, and inclusion. Vol.2: China Tech, mobile security, and distributer ledger, Chuen, D. L. K., 2018
  • Harvard Business Review, Don Tapscott, Marco Iansiti, Karim R. Lakhani, & Catherine Tucker. (2019). Blockchain : The Insights You Need From Harvard Business Review. Boston, Massachusetts: Harvard Business Review Press. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=2003693
  • Introduction to cryptography and network security, Forouzan, B. A., 2008
  • Introduction to cryptography, Buchmann, J., 2004

Recommended Additional Bibliography

  • Katz, J., & Lindell, Y. (2014). Introduction to Modern Cryptography (Vol. Second edition). Boca Raton, FL: Chapman and Hall/CRC. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=nlebk&AN=1766746