4CP53: BLOCKCHAIN TECHNOLOGY
CREDITS - 4 (LTP: 3, 0, 1)
Course objective:
To give students the understanding of emerging abstract models for Blockchain Technology and to
familiarise with the functional/operational aspects of cryptocurrency eco-system.
Teaching and Assessment Scheme:
Teaching Scheme
Credits Assessment Scheme
(Hours per Week)
Total
Theory Marks Practical Marks Marks
L T P C
ESE CE ESE CE
3 0 2 4 60 40 20 30 150
Course Contents:
Unit Teaching
Topics
No. Hours
1 Introduction: 04
Need for Distributed Record Keeping, Modeling faults and adversaries,
Byzantine Generals problem, Consensus algorithms and their scalability
problems, Nakamoto’s concept with Blockchain based cryptocurrency,
Technologies Borrowed in Blockchain – hash pointers, consensus, byzantine
fault-tolerant distributed computing, digital cash etc.
2 Basic Distributed Computing & Crypto primitives: 08
Atomic Broadcast, Consensus, Byzantine Models of fault tolerance, Hash
functions, Puzzle friendly Hash, Collison resistant hash, digital signatures,
public key crypto, verifiable random functions, Zero-knowledge systems
3 Bitcoin basics: 09
Bitcoin blockchain, Challenges and solutions, proof of work, Proof of stake,
alternatives to Bitcoin consensus, Bitcoin scripting language and their use
4 Ethereum basics: 13
Ethereum and Smart Contracts, The Turing Completeness of Smart Contract
Languages and verification challenges, Using smart contracts to enforce legal
contracts, comparing Bitcoin scripting vs. Ethereum Smart Contracts, Writing
smart contracts using Solidity & JavaScript
5 Privacy, Security issues in Blockchain: 08
Pseudo-anonymity vs. anonymity, Zcash and Zk-SNARKS for anonymity
preservation, attacks on Blockchains: Sybil attacks, selfish mining, 51% attacks
advent of algorand; Sharding based consensus algorithms to prevent these
attacks
6 Case Studies: 03
Block chain in Financial Service, Supply Chain Management and Government
Services
Total 45
List of References:
1. Narayanan, Bonneau, Felten, Miller and Goldfeder, “Bitcoin and Cryptocurrency Technologies
– A Comprehensive Introduction”, Princeton University Press.
2. Josh Thompson, ‘Blockchain: The Blockchain for Beginnings, Guild to Blockchain Technology
and Blockchain Programming’, Create Space Independent Publishing Platform, 2017.
3. Imran Bashir, “Mastering Blockchain: Distributed ledger technology, decentralization, and
smart contracts explained”, Packt Publishing.
4. Merunas Grincalaitis, “Mastering Ethereum: Implement Advanced Blockchain Applications
Using Ethereum-supported Tools, Services, and Protocols”, Packt Publishing.
5. Prof. Sandip Chakraborty, Dr. Praveen Jayachandran, “Blockchain Architecture Design And
Use Cases”[MOOC], NPTEL: https://nptel.ac.in/courses/106/105/106105184/
Course Outcomes (COs):
At the end of this course students will be able to…
1. Describe the basic concepts and technology used for blockchain.
2. Describe the primitives of the distributed computing and cryptography related to blockchain.
3. Illustrate the concepts of Bitcoin and their usage.
4. Implement Ethereum block chain contract.
5. Apply security features in blockchain technologies.
6. Use smart contract in real world applications.