Theory and Applications of Blockchain (3-1-0)

Course Details:

Theory:
  1. Introduction to Blockchain Technology and its Importance: The origin of the blockchain technology, History of blockchain and cryptocurrencies
  2. Basic Crypto Primitives: Cryptographic Hash, Hashchain and Merkle Tree, Digital signatures, Multisignatures, Collective signing, and signature verifications
  3. Blockchain 1.0, 2.0 and 3.0: Concept of trustless decentralization, Decentralized applications and Decentralized Autonomous Organizations, Permissioned and Permissionless Blockchains - the basic idea, Distributed Ledger Technology and Blockchain 3.0, Introduction to Smart Contracts
  4. Elements of Blockchain: The data structure, Block header and transaction organization, Economic models
  5. Consensus Models: Consensus in permissionless vs permissioned models, Permissionless Consensus - Proof of Work, Other models of permissionless consensus (Proof of Stake, Proof of Elapsed Time, etc.), Permissioned Consensus - Non-Byzantine Consensus (Raft, Paxos, etc.), Byzantine Consensus (PBFT, RBFT, etc.)
  6. Smart Contract Execution Models: Smart contract generation, Distributed State Machine Replication for smart contract execution, Transaction verification and endorsement, Order-execute and Execute-order models
  7. Blockchain Security: Possible attacks on blockchains, Attack mitigation techniques
  8. Identity and Access Management, Blockchain Interoperability: Self-sovereign identity, Digital identity, Decentralized Identifiers (DID), Trust anchors and DID management, Interoperability Models, Hash Time-Locked Contracts
  9. Blockchain Applications: Supply chain management, Blockchain in Governance, Blockchain in Fintech

Tutorial:
  1. Ethereum: Introduction to Solidity, Ethereum Virtual Machines, Development of Dapps using Ethereum, Ethereum execution models over different test networks - PoW, PoA, etc.
  2. Hyperledger: Introduction to Hyperledger and its projects, Hyperledger Fabric, Hyperledger Indy, Hyperledger Burrow
  3. Other smart contract environments (Corda, etc.)


Suggested Text/Reference Books

Mastering Blockchain: A deep dive into distributed ledgers, consensus protocols, smart contracts, DApps, cryptocurrencies, Ethereum, and more, 3rd Edition, Imran Bashir, Packt Publishing, 2020, ISBN: 9781839213199, book website: https://www.packtpub.com/product/mastering-blockchain-thirdedition/9781839213199
Hyperledger Tutorials - https://www.hyperledger.org/use/tutorials
Ethereum Development Resources - https://ethereum.org/en/developers/
Online materials and case studies