CODE COURSE NAME INFORMATION
CATEGORY L T TECHNOLOGY
P CREDIT
BLOCK CHAIN
ITT474 PEC 2 1 0 3
TECHNOLOGY
Preamble: The purpose of this course is to introduce the foundation of blockchain
technology. The course introduces the cryptographic principles behind blockchain and helps
the students understand concepts like consensus, crypto-currency, smart contracts, use cases
etc. The course enables students to develop simple decentralized applications using
blockchain networks such as Ethereum.
Prerequisite: ITT201 Data Structures, ITT303 Operating System Concepts
Course Outcomes: After completion of the course the student will be able to
CO Bloom's
Course Outcome (CO)
No. Category Level
Discuss the cryptographic building blocks of blockchain Level 2:
CO 1
technology Understand
Explain the fundamental concepts of blockchain Level 2:
CO 2
technology Understand
Level 2:
CO 3 Summarize the classification of consensus algorithms
Understand
Explain the concepts of first decentralized cryptocurrency Level 2:
CO 4
bitcoin Understand
Level 2:
CO 5 Explain the use of smart contracts and its use cases.
Understand
Develop simple applications using Solidity language on Level 3:
CO 6
Ethereum platform. Apply
Mapping of Course Outcomes with Program Outcomes
PO PO PO
PO 1 PO 2 PO 3 PO 4 PO 5 PO 6 PO 7 PO 8 PO 9
10 11 12
CO 1 2 2 - - - - - - - - - 1
CO 2 2 2 - - - - - - - - - 1
CO 3 2 2 - - - - - - - - - 1
CO 4 2 2 - - - - - - - - - 1
CO 5 2 2 - - - - - - - - - 1
CO6 3 2 2 2 - - - - - - - 2
3/2/1: High/Medium/Low
Assessment Pattern
Continuous INFORMATION TECHNOLOGY
End Semester
Bloom’s Category Assessment
Examination
Levels Tests
1 2
Level 1: Remember 10 10 20
Level 2: Understand 40 25 70
Level 3: Apply 15 20
Level 4: Analyse
Level 5: Evaluate
Level 6: Create
Mark distribution
End Semester
Total Continuous Internal
Examination ESE Duration
Marks Evaluation (CIE)
(ESE)
150 50 100 3 hours
Continuous Internal Evaluation Pattern:
Attendance : 10 marks
Continuous Assessment Test (2 numbers) : 25 marks
Assignment/Quiz/Course project : 15 marks
End Semester Examination Pattern: There will be two parts; Part A and Part B. Part A
contain 10 questions with 2 questions from each module, having 3 marks for each question.
Students should answer all questions. Part B contains 2 questions from each module of which
student should answer any one. Each question can have maximum 2 sub-divisions and carry
14 marks.
Sample Course Level Assessment Questions
Course Outcome 1 (CO 1):
1. Distinguish between Symmetric cryptography and asymmetric cryptography.
2. Explain Cryptographic hash functions and its applications
Course Outcome 2 (CO 2):
1. Categorize consensus mechanism used in blockchain.
2. Define Blockchain. Explain how decentralization of computing or processing power
is achieved by a blockchain.
Course Outcome 3 (CO 3):
1. Explain how Proof of Stake can achieve consensus among peers.
2. Explain the working of Raft protocol.
Course Outcome 4 (CO 4): INFORMATION TECHNOLOGY
1. Describe the use of genesis block.
2. Explain the mining algorithm used in bitcoin.
Course Outcome 5 (CO 5):
1. Illustrate how blockchain technology can be used in supply chain management.
2. What are oracles in a blockchain ecosystem? Explain the generic data flow from a
smart contract to an oracle.
Course Outcome 6 (CO 6):
1. Develop a smart contract for voting process. In this application, delegated voting is
allowed and the counting is automatic and completely transparent at the same time.
2. Develop a smart contract for auction process. The contract should be a blind auction
where it is not possible to see the actual bid until the bidding period ends.
Model Question Paper
Course Code: ITT474
Course Name: BLOCK CHAIN TECHNOLOGY
Max.Marks :100 Duration: 3 Hrs
Part A
Answer all questions. Each question carries 3 marks (10 * 3 = 30 Marks)
1. Discuss the role of hash tables in blockchain.
2. Illustrate asymmetric cryptography.
3. Illustrate the blockchain based decentralized system
4. Explain how Proof of Stake can achieve consensus among peers.
5. If your blockchain network has 5 Byzantine nodes, what is the minimum number of
nodes that are required to ensure Byzantine fault tolerance using PBFT protocol
6. How are transactions verified in a Bitcoin network?
7. Explain how smart contracts can be used for enforcing agreements between parties in
the form of business logic.
8. Explain the concept of blockchain-based digital identity cards.
9. Explain error handling in Solidity language.
10. With the help of a figure show the relationship between the transaction, transaction
trie, and block header in Ethereum
Part B
INFORMATION
Answer all questions. Each question carries 14 marks. (5 * 14 = 70TECHNOLOGY
Marks)
11.a. Explain the importance of Cryptography in Blockchain. 9
b. Explain how hash functions are used to build Merkle trees in blockchain. 5
OR
12.a. Explain public and private keys. Perform encryption and decryption using RSA 7
for p=3, q=11, e= 7 and M=5
b. Explain Cryptographic hash functions and its importance in Blockchain. 7
13.a. Illustrate and explain how blockchain works using a neat diagram. 7
b. Explain the benefits, features and limitations of blockchain. 7
OR
14.a. Explain consensus mechanisms used in blockchain. List out any six consensus 7
algorithms used in the context of blockchain.
b. Define blockchain. Explain how decentralization of computing or processing 7
power is achieved by a blockchain
15.a. Explain and illustrate how Paxos protocol can be used to achieve consensus 7
b. Show how Practical Byzantine Fault Tolerance can achieve consensus in the 7
presence of Byzantine faults.
OR
16.a. Describe the various fields that make up a transaction in Bitcoin. 7
b. What is the role of a Bitcoin miner? Explain the mining algorithm used in 7
Bitcoin with the help of a flowchart.
17.a. Illustrate how blockchain technology can be implemented in finance sector. 7
b. Discuss oracles in a blockchain ecosystem. Explain the generic data flow from a 7
smart contract to an oracle.
OR
18.a. Explain the design process of decentralized applications with diagrams. 7
b. Explain the use of blockchain technology in supply chain management. 7
19.a. Using Solidity language, create a simple bank contract that allows a user to 7
deposit, withdraw and view balance.
b. Define block difficulty. Explain how block difficulty is adjusted in Ethereum 7
blockchain network.
OR
20.a. Using Solidity language, create a simple voting smart contract where a 7
chairperson will give the right to vote to each address individually.
b. Explain the concept of Gas in Ethereum. Explain how transaction cost can be 7
calculated in an Ethereum blockchain network.
INFORMATION TECHNOLOGY
Syllabus
Module 1: Fundamentals of Cryptography (7 Hours)
Introduction to Cryptography, Symmetric cryptography – AES. Asymmetric cryptography
– RSA. Cryptographic hash functions-Applications of cryptographic hash functions –
Merkle trees, Distributed hash tables.
Module 2: Fundamentals of Blockchain Technology (6 Hours)
Blockchain – Definition, architecture, elements of blockchain, benefits and limitations,
types of blockchain. Consensus – definition, types, consensus in blockchain.
Decentralization – Decentralization using blockchain, Methods of decentralization, Routes
to decentralization, Blockchain and full ecosystem decentralization.
Module 3: Consensus Algorithms and Bitcoin (8 Hours)
Consensus Algorithms, Crash fault-tolerance (CFT) algorithms – Paxos, Raft. Byzantine
fault-tolerance (BFT) algorithms – Practical Byzantine Fault Tolerance (PBFT), Proof of
work (PoW), Proof of stake (PoS), Types of PoS.
Bitcoin – Definition, Cryptographic keys – Private keys, public keys, addresses.
Transactions – Lifecycle, coinbase transactions, transaction validation. Blockchain – The
genesis block.
Mining – Tasks of miners, mining algorithm, hash rate. Wallets – Types of wallets.
Module 4:Smart Contracts and Use cases (7 Hours)
Smart Contracts – Definition, Smart contract templates, Oracles, Types of oracles,
Deploying smart contracts. Decentralization terminology – Decentralized applications,
Decentralized Autonomous Organizations.
Use cases of Blockchain technology – Government, Health care, Finance, Supply chain
management.
Blockchain and allied technologies – Blockchain and Cloud Computing, Blockchain and
Artificial Intelligence.
Module 5: Ethereum and Solidity 7 Hours)
Ethereum – The Ethereum network. Components of the Ethereum ecosystem – Keys and
addresses, Accounts, Transactions and messages. The Ethereum Virtual Machine, Blocks
and blockchain.
The Solidity language – The layout of a Solidity source code, Structure of a smart contract,
variables, data types, control structures, events, inheritance, libraries, functions, error
handling.
Smart contracts Case study: Voting, Auction
Text Books
INFORMATION TECHNOLOGY
1. Imran Bashir, Mastering Blockchain: A deep dive into distributed ledgers, consensus
protocols, smart contracts, DApps, cryptocurrencies, Ethereum, and more, Packt
Publishing, Third edition, 2020.
Reference Books
1. Ritesh Modi, Solidity Programming Essentials: A beginner's guide to build smart
contracts for Ethereum and blockchain, Packt Publishing, First edition, 2018.
2. Kumar Saurabh, Ashutosh Saxena, Blockchain Technology: Concepts and
Applications, First Edition, Wiley Publications, First edition, 2020.
3. Chandramouli Subramanian, Asha A George, et al, Blockchain Technology,
Universities Press (India) Pvt. Ltd, First edition, August 2020.
4. Lorne Lantz, Daniel Cawrey, Mastering Blockchain: Unlocking the Power of
Cryptocurrencies, Smart Contracts, and Decentralized Applications, O'Reilly Media,
First edition, 2020.
5. Andreas M. Antonopoulos, Gavin Wood, Mastering Ethereum: Building Smart
Contracts and DApps, O'Reilly Media, First edition, 2018.
Course Contents and Lecture Schedule
Sl. No. of
Topic
No. Lectures
1 Fundamentals of Cryptography and Hash functions 7 Hours
1
1.1 Introduction to cryptography
1.2 Symmetric cryptography, AES 1
1.3 Asymmetric cryptography, RSA 1
1.4 Cryptographic hash functions 1
1.5 Applications of cryptographic hash functions 1
1.6 Merkle trees 1
1.7 Distributed hash tables 1
2 Fundamentals of Blockchain Technology 6 Hours
2.1 Blockchain – definition and architecture 1
2.2 Elements of blockchain. 1
2.3 Blockchain – benefits and limitations, types. 1
2.4 Consensus – definition, types, consensus in blockchain 1
2.5 Decentralization using blockchain, Methods of decentralization 1
Routes to decentralization, Blockchain and full ecosystem
2.6 1
decentralization
3 Consensus Algorithms and Bitcoin 7 Hours
Consensus Algorithms – Crash fault-tolerance (CFT) algorithms –
3.1 1
Paxos, Raft (working is expected).
Byzantine fault-tolerance (BFT) algorithms – Practical Byzantine
3.2 1
Fault Tolerance (PBFT) (working is expected).
INFORMATION TECHNOLOGY
3.3 Proof of work (PoW), Proof of stake (PoS), Types of PoS 1
Bitcoin – Definition, Cryptographic keys – Private keys, public keys,
3.4 1
addresses.
Transactions – Lifecycle, coinbase transactions, transaction
3.5 1
validation
3.6 Blockchain – The genesis block. Mining – Tasks of miners 1
3.7 Mining – mining algorithm, hash rate. Wallets – Types of wallets. 1
4 Smart Contracts and Use cases 6 Hours
4.1 Smart Contracts – Definition, Smart contract templates 1
4.2 Oracles, Types of oracles, Deploying smart contracts. 1
Decentralization terminology –Decentralized applications,
4.3 1
Decentralized Autonomous Organizations.
4.4 Use cases of Blockchain technology – Government, Health care. 1
Use cases of Blockchain technology – Finance, Supply chain
4.5 1
management.
Blockchain and Allied Technologies – Blockchain and Cloud
4.6 1
Computing, Blockchain and Artificial Intelligence.
5 Ethereum and Solidity 9 Hours
Ethereum - The Ethereum network,
5.1 Components of the Ethereum ecosystem – Keys and addresses, 1
Accounts
Components of the Ethereum ecosystem – Transactions and
5.2 1
messages
5.3 The Ethereum Virtual Machine 1
5.4 Ethereum Blocks and blockchain 1
The Solidity language – The layout of a Solidity source code,
5.5 1
Structure of a smart contract, variables, data types
The Solidity language – control structures, events, inheritance,
5.6 1
libraries
5.7 The Solidity language – functions, error handling. 1
5.8 Smart contracts Case study: Voting. 1
5.9 Smart contracts Case study: Auction. 1