Blockchain is an emerging platform for developing decentralized applications and data storage, over and beyond its role as a platform for cryptocurrencies. This reference text provides a comprehensive discussion on blockchain technology from research and application perspective.
- Discusses different approaches for building distributed applications (DAPPS).
- Provides detailed listing and discussion of blockchain technology applications in solving real life problems.
- Covers proof of work (PoW) based blockchain consensus, and proof of stake (PoS) based blockchain consensus.
- Discusses blockchain algorithms including practical byzantine fault tolerance (PBFT) and simplified byzantine fault tolerance (SBFT).
It comprehensively covers important topics including blockchain consensus algorithms, Ethereum, Hyperledger, blockchain scalability, smart contracts with solidity, ERC20 standards, building DApp with Golang, building DApp using Hyperledger, building PoCs with Hyperledger fabric, blockchain as a server, blockchain security and privacy.
The text will serve as a useful text for senior undergraduate and graduate students in interdisciplinary areas including electronics and communications engineering, electrical engineering, computer science, and information technology.
Author(s): Manoj Kumar M. V., Likewin Thomas, Sourav Kanti Addya, Niranjanamurthy M., Annappa B.
Series: Advances in Industry 4.0 and Machine Learning
Publisher: CRC Press
Year: 2022
Language: English
Pages: 322
City: Boca Raton
Cover
Half Title
Title Page
Copyright Page
Dedication
Contents
Foreword
Preface
Editor Biographies
Contributors
Chapter 1: Blockchain Foundations and Methods
1.0.1. Technologies Behind Blockchain
1.1. Need for Blockchain Technology
1.1.1. Blockchain Technology as an Infrastructure for the Modern Business
1.1.2. Blockchain as a Service
1.2. Blockchain Layered Architecture
1.3. Blockchain Principles
1.3.1. Immutability, Transparency, and Digital Freedom
1.3.2. Excellence of use through Truly Decentralised Services
1.4. Blockchain Core Components
1.4.1. Distributed Ledger Technology
1.4.2. Smart Contracts
1.4.2.1. Working of the Smart contracts
1.4.2.2. Smart Contracts and Blockchain
1.4.2.3. Smart Contract Platforms
1.4.3. Blockchain Consensus Mechanisms
1.5. Building a Blockchain
1.6. Record-Keeping with Blockchain
1.7. Types of Blockchain
1.7.1. Public Blockchain
1.7.2. Private Blockchain
1.8. Limitations of Blockchain Technology
1.9. Future Directions
1.10. Conclusion
Chapter 2: Unraveling the Blockchain: A Study on Blockchain and Its Potential Applications
2.1. Background
2.1.1. Structure of Blockchain
2.1.2. Blockchain Types
2.1.3. Related Works
2.1.3.1. Current Research on Blockchain Technology
2.1.3.2. Technology in Healthcare
2.1.3.3. Securing Smart Cities Using Blockchain Technology
2.1.3.4. Blockchain Technology in the Chemical Industry
2.1.3.5. Blockchain Technology in the Insurance
2.2. Consensus Algorithm
2.3. Distributed Ledger
2.3.1. Ethereum
2.3.2. Hyperledger
2.4. Recent Developments in Blockchain Technology
2.4.1. Companies Actively Involved in Blockchain Research
2.5. Blockchain Platforms
2.5.1. Common Blockchain Tools
2.5.2. Layers of Blockchain Technology
2.6. Challenges
2.6.1. Scalability
2.6.2. Redesigning Blockchain
2.6.3. Privacy Leakage
2.6.3.1. Mixing
2.6.3.2. Anonymous
2.6.4. Selfish Mining
2.7. Applications of Blockchain Technology and Future Directions
2.8. Conclusion
Chapter 3: Interoperability Across Blockchains
3.0.1. Advantages and Disadvantages of using Blockchain
3.1. Diversified Implementation of Blockchains
3.1.1. Transactions
3.1.2. Ether and Gas
3.1.3. Ethereum Accounts
3.1.4. Smart Contracts
3.1.5. Fees and Contract Execution
3.2. BigChain DB
3.2.1. R3 Corda
3.2.1.1. Architecture
3.2.1.2. Key Features
3.2.1.3. PBFT Consensus
3.2.2. Literature Review
3.2.2.1. Public Connectors
3.2.3. Chain of Blockchains
3.3. High Level Design of Router
3.3.1. Basic Goals
3.4. Detailed Design of the Router
3.4.1. Various Components
3.4.1.1. Adapter
3.4.2. Atomic Swaps
3.4.3. Sockets
3.4.4. Communication Mechanism
3.4.5. Communication Protocol
3.4.6. Tactics for Availability
3.5. Prototype and Experiments
3.6. Conclusion
Chapter 4: HBasechainDB 3.0 Scalable Implementation of Blockchain on HBase with Capability for Smart Contract
4.1. Background and Related Work
4.1.1. Ethereum
4.1.2. World of Bigdata
4.1.2.1. Apache HBase
4.1.2.2. BigchainDB
4.1.2.3. HBasechainDB
4.2. Performance of HBasechainDB through Forking
4.2.1. Forking Problem in Hyperledger Fabric
4.2.2. Proposed Model
4.2.3. Forking Problem in HBasechainDB 3.0
4.3. HBasechainDB 3.0
4.3.1. Design Features
4.3.2. Structural Design
4.3.3. Structural Design
4.3.3.1. Block Creation Algorithm
4.3.3.2. Transaction Validation Algorithm
4.3.3.3. Block Validation Algorithm
4.3.3.4. Voting Algorithm
4.3.3.5. HBasechainDB 3.0 Life Cycle
4.4. Performance Analysis
4.4.1. Experimentation on Homogeneous HBase Cluster
4.4.1.1. Experimental Setup - I
4.4.1.2. Experimentation Setup - II
4.4.1.3. Experimentation Setup - III
4.5. Conclusion
4.6. Acknowledgements
Chapter 5: An Analysis of Blockchain Technology: A Security and Privacy Perspective
5.1. Overview of Blockchain Technology
5.1.1. Architecture of Blockchain Technology
5.1.1.1. Data Layer
5.1.1.2. Network Layer
5.1.1.3. Consensus Layer
5.1.1.4. Incentive Layer
5.1.1.5. Contract Layer
5.1.1.6. Application Layer
5.1.2. Types of Blockchain
5.1.2.1. Public Blockchain
5.1.2.2. Private Blockchain
5.1.2.3. Consortium Blockchain
5.2. Characteristics of the blockchain
5.2.1. Multiple writers
5.2.2. Shared databases
5.2.3. Distributed trust
5.2.4. No Intermediaries
5.2.5. Transaction dependency
5.2.6. Time stamping
5.2.7. Transaction rules
5.3. Consensus Algorithms
5.3.1. Proof of Work (PoW)
5.3.2. Proof of Stake (PoS)
5.3.3. Proof of Authority (PoA)
5.3.4. Byzantine fault tolerance consensus algorithm (BFT)
5.3.5. Proof of Elapsed Time (PoET)
5.3.6. Comparision of consensus algorithms
5.4. Types of attacks on Blockchains
5.4.1. Liveness attack
5.4.2. Double spending attack
5.4.3. 51% attack
5.4.4. Private key security attack
5.4.5. Privacy leakage
5.4.6. Selfish mining attack
5.4.7. Eclipse attack
5.4.8. DAO attack
5.5. Security Issues in Blockchain
5.5.1. Network Security
5.5.2. Malleability
5.5.3. Privacy
5.5.4. Redundancy
5.5.5. Vulnerabilities in smart contract
5.6. Existing Solutions to Security Attacks
5.6.1. Liveness attack
5.6.2. 51% Attack
5.6.3. Double Spending Attacks
5.6.4. Private Key Security Attack
5.6.5. Transaction Privacy Leakage
5.6.6. Selfish Mining Attack
5.7. Existing Techniques to Security Issues
5.7.1. Mixing
5.7.2. Attribute based encyption
5.7.3. Anonymous Signatures
5.7.4. Non-Interactive Zero Knowledge Proofs
5.8. Open Issues
5.8.1. Proper framework against the combined attacks
5.8.2. Zero-day attack policies
5.8.3. Exchange of security keys
5.8.4. Infrastructure
5.8.5. Utilisation of available resources
5.8.6. Trade-off’s in performance
5.8.7. Insider threat management
5.9. Conclusion
Chapter 6: Blockchain Technology and Its Potential Applications
6.0.1. Blockchain’s Core Characteristics
6.0.2. Architecture of Blockchain
6.1. Globalisation as a trend and challenge to adopt the trend
6.1.1. The growing prominence of decentralised ledger
6.1.2. Decentralised ledgers and blockchain are not the same
6.2. Blockchain consensus algorithm
6.3. Types of blockchain
6.4. Blockchain Transactional Flow
6.5. Blockchain scalability
6.6. Security and Privacy in Blockchain
6.7. Blockchain as a Service (BaaS)
6.8. Hyperledger Fabric
6.8.1. Shared Ledger
6.8.2. Smart Contracts
6.8.3. Privacy
6.8.4. Consensus
6.8.5. Benefits of Hyperledger Fabric
6.9. Ethereum
6.9.1. Is Ethereum Better Than Bitcoin?
6.9.2. How Long Does It Take to Mine One Ethereum?
6.9.3. Benefits of building on Ethereum
6.10. The competition that blockchain faces
6.10.1. Hedera Hashgraph
6.10.1.1. Hashgraph Consensus Service
6.10.1.2. Hedera Governance
6.10.2. Cosmos
6.10.3. Polkadot Network
6.10.4. Circle
6.10.5. Coinbase
6.11. Applications with Illustrations
6.11.1. E-commerce
6.11.2. Government
6.11.3. Healthcare
6.11.4. Entertainment
6.11.5. Real Estate
6.11.6. Corporate Management
6.11.7. Cross-border payments
6.11.8. Assets Management
6.11.9. Share markets
6.11.10. Banking
6.11.11. Identity Management
6.11.12. Transportation
6.12. Benefits of blockchain, current situation and what can be anticipated
Chapter 7: Cryptoassets Inheritance: Needs, Challenges, and Solutions
7.0.1. Representing cryptoasset - Is it a Fantasy?
7.0.1.1. Cryptoassets are Inherently Secure
7.0.1.2. Cryptoassets are Certifiable
7.0.2. Risk in cryptoasset
7.1. Wallet Safeguard Mechanism
7.1.1. Wallet Design and recovery of Private key
7.1.1.1. Non-deterministic and Randomised Wallet
7.1.1.2. Deterministic Seeded Wallet
7.1.1.3. Hierarchical Deterministic Wallets
7.1.1.4. Multi-Signature Wallet
7.2. Cryptocurrencies Jurisdictions and Regulations
7.3. Some Practical Implementation of Private Key Custodian
7.4. Cryptoasset Will
7.4.1. How to “Will” the Cryptoasset
7.5. Bitcoin Script and Smart Contract for Cryptoasset Inheritance
7.5.1. Bitcoin and Cryptographic “Will”
7.5.2. Smart Contract and Cryptographic “Will”
7.5.3. ERC20 and ERC721 Tokens
7.6. Conclusion
Chapter 8: Blockchain in Healthcare
8.1. Healthcare Industry 4.0
8.2. Blockchain
8.2.1. Consesnus
8.2.2. Smart Contract
8.3. Healthcare Record Management
8.4. Medical Insurance
8.5. Health Status Monitoring by BAN and IoT
8.6. Clinical Research
8.7. Contact Tracing
8.8. Medical Emergency
8.9. Conclusion
Chapter 9: Blockchain Privacy and Its Security Challenges
9.1. Overview
9.1.1. The Concept of Blockchain
9.1.2. How Blockchain Works
9.1.3. The Blockchain’s Structure
9.1.4. How to get Consensus ?
9.1.5. Proof of Work (PoW)
9.1.6. Proof of Stake (PoS)
9.1.7. Types of Blockchain
9.1.7.1. Public Blockchain
9.1.7.2. Consortium blockchain
9.1.7.3. Private blockchain
9.2. Application of Blockchain
9.2.1. Healthcare
9.2.2. Banking and Finance
9.2.3. Internet of Things
9.2.4. Voting
9.2.5. Supply Chain
9.2.6. Other uses of Blockchain
9.3. Security Challenges of Blockchain
9.3.1. Attacks based on Smart contract
9.3.1.1. The Decentralised Autonomous Organisation(DAO) Hack
9.3.2. Attack based on Consensus and Ledger Mechanism
9.3.2.1. Selfish mining attack
9.3.2.2. Finney attack
9.3.2.3. Timejack attack
9.3.2.4. Majority (51%) attack
9.3.3. Attack based on P2P(Peer-to-Peer) Network
9.3.3.1. Eclipse attack
9.3.3.2. Sybil attack
9.3.4. Attack based on Wallet
9.3.4.1. Parity Multisig Wallet Attack
9.4. CONCLUSION
Chapter 10: Protocol for E-Voting Using Blockchain
10.0.1. Pros Pros and Cons of Blockchain
10.0.1.1. ros:
10.0.1.2. Cons:
10.1. Literature Review
10.1.1. Normal-Voting Schemes
10.1.2. Electronic-Voting Schemes
10.1.3. Blockchain-Based Schemes
10.1.4. Outcome of Literature Survey
10.2. Blockchain Implementations
10.2.1. Bitcoin
10.2.2. Ethereum
10.2.3. BigchainDB
10.2.4. Hyperledger Fabric
10.2.5. Comparison Table for the blockchain Implementations
10.3. Contribution Work
10.3.1. Zero-Knowledge Proof (ZKF)
10.3.2. Some Protocols based on Zero-Knowledge Proofs (ZKF)
10.3.2.1. Schnorr Identification Protocol
10.3.2.2. Fiat-Shamir Protocol
10.3.3. Protocol Design
10.3.3.1. Voter Anonymity
10.3.3.2. Registration of Voters and Candidates/proposed query
10.3.3.3. Votes Privacy and Votes Counting
10.3.4. Security Consideration
10.3.4.1. Voters Device Coercion:
10.3.4.2. Denial-of-Service (DoS)
10.3.4.3. Sybil attack:
10.3.4.4. Insider Attack:
10.3.4.5. Trojan Horse Spywares:
10.4. Implementation Details
10.4.0.1. On Ethereum
10.4.0.2. On HBasechainDB
10.5. Analysis and Result
10.5.1. On Ethereum
10.5.1.1. On HBasechainDB
10.6. Comparison between HBasechainDB and Ethereum
10.7. Conclusion
10.8. Future Work
Chapter 11: Secure Permission-based Medical Blockchain Framework for the Exchange of Electronic Health Records
11.0.1. Blockchain Network
11.0.1.1. Types of Blockchain
11.0.1.2. Fundamental elements in blockchain
11.0.2. Inter-Planetary File Systems (IPFS)
11.0.3. Chaotic image encryption
11.1. Blockchain technology in healthcare
11.1.1. Research challenges for adopting blockchain technology in healthcare
11.2. Novel Permission based secure medical blockchain for Electronic Health Record
11.2.1. Related works
11.2.2. Conventional healthcare approach
11.2.3. Proposed approach
11.2.3.1. Symmetric encryption using chaos
11.2.3.2. Secure storage – IPFS
11.2.3.3. Medical Blockchain Framework
11.2.4. Performance metrics for evaluation
11.2.4.1. Performance evaluation for blockchain - Hyperledger Caliper
11.2.4.2. Performance evaluation for secure medical image records
11.3. Conclusion
Chapter 12: The Use of Blockchain in Taxing Digital Products and Services: A Conceptual Model Proposal
12.1. Digital Services
12.2. Electronic Payment Systems
12.3. Blockchain Technology
12.3.1. Smart Contracts
12.4. Digital Service Tax Regulations in Countries
12.5. Smart Contracts and Taxation Process Based on Blockchain Technology
Appendix A: A Partial Smart Contract Example Created for Asset Transfer
Index