A comprehensive guide to the most recent developments in blockchains in theoretical and industrial perspectives
Originally introduced as a method to keep track of Bitcoin transactions over a peer-to-peer network, blockchain is a continuously growing list of records, called blocks, which are linked and secured using cryptography into a chain held in public databases. The use of this technology has grown since its cryptocurrency creation and now store three types of information: 1) transactions, including the date, time, and value of purchases; 2) records of participates in transactions; and 3) unique code known as a “hash” that distinguishes one block from another. A single block on the blockchain can hold 1 MB of data, or potentially thousands of transactions - this then can allow for hundreds of thousands of transactions to be recorded as each block can join the state-of-the-art blockchain.
Blockchains provides a detailed overview of the latest and most innovative concepts, techniques, and applications related to the developing blockchain. Aimed at novices and experts on the subject, the book focuses on blockchain technologies, integrated systems, and use cases, specifically by looking at three major technical areas: blockchain platforms and distributed database technologies, consensus and fault tolerance, and Blockchain as a Service (BaaS). These avenues of research are essential to support blockchain functionalities, such as acquiring and updating existing data, securing data resources and the recovery of failures, and using blockchains in various services that range from cryptocurrencies to cloud automation.
Blockchains readers will also find: - Brainstorming activities that gradually builds the knowledge of readers on the described technology and deployment scenarios - Investigation of specific topics such as novel networking protocols, wireless techniques, new infrastructure designs, operations management, and deployment strategies - Discussion of technical challenges in blockchain, as well as how to manage cloud-based networks, service automation, and cyber security - Numerous elementary and advanced examples on various topics at the end of the book that can be used for training purposes - Illustrations including tables and diagrams to help elucidate points made throughout the volume - Glossary of relevant terminology to blockchains in enterprise
Blockchains is a useful reference for researchers in vehicular networking and computer science, as well as cloud storage providers and governmental offices for data management.
Table of Contents
About the Editors xvii
About the Contributors xxi
Foreword xxxix
Preface xliii
1 Introduction 1
Anwer Al-Dulaimi, Octavia A. Dobre, and Chih-Lin I
1.1 Exploring Blockchain Technology 1
1.2 Developing and Testing Blockchains: Software Development Approach 4
1.3 Blockchains and Cloud Integration 7
1.4 Blockchain and Mobile Networking 9
1.5 Open Architecture and Blockchains 11
1.6 Open API and Monetization of Mobile Network Infrastructure 12
1.6.1 Using Blockchain Technology to Tokenize API Access 13
1.6.2 Monetize Mobile Network Infrastructure 13
1.7 Resiliency of Current Blockchain Models 14
1.8 Next Evolution in Blockchain Functions 15
1.9 Book Objectives and Organization 16
References 18
2 Enabling Technologies and Distributed Storage 21
Sina Rafati Niya and Burkhard Stiller
2.1 Introduction 21
2.2 Data Storage 22
2.2.1 Distributed File Systems 23
2.2.2 Cloud Storage Systems 25
2.3 Blockchains 26
2.3.1 Building Elements of Blockchains 26
2.3.2 Mining in Blockchains 29
2.3.3 Blockchain-Based Data Storage 29
2.3.4 Blockchain Types 30
2.4 Distributed Storage Systems 31
2.4.1 DSS Layers 32
2.4.2 Distributed Storage Challenges 34
2.4.2.1 Security 34
2.4.2.2 Reliability 35
2.4.2.3 Economic Incentives 35
2.4.2.4 Coordination 36
2.4.2.5 Monetization 37
2.4.3 DSS Implementations 37
2.4.4 DSS Use Cases 41
2.4.4.1 SCT dApps 42
2.4.4.2 SCT dApp Food Chain Example 43
2.4.5 Performance Evaluation of DSSs 43
2.5 The Future of DSS 45
2.6 Concluding Considerations 46
Acronyms 46
References 47
3 Managing Consensus in Distributed Transaction Systems 53
Hans Walter Behrens, Kasim Selçuk Candan, and Dragan Boscovic
3.1 Ledgers and Consensus 53
3.1.1 Distributed Ledgers 53
3.1.2 Consensus 53
3.1.2.1 Consensus for Consistent Data Storage 54
3.1.2.2 Consensus for Transaction Ordering 56
3.1.2.3 Consensus as a Defense Against Bad Actors 56
3.1.3 Industrial Case Study 56
3.2 Consensus Protocols, Then and Now 57
3.2.1 State Machine Replication 57
3.2.2 Byzantine Fault Tolerance 59
3.2.3 Nakamoto Consensus 60
3.2.4 Hybrid Consensus 61
3.3 Cryptographic Nakamoto Proofs 62
3.3.1 Proof of Work 62
3.3.2 Proof of Stake 63
3.3.2.1 Chain-Based Proof of Stake 64
3.3.3 Proof of Capacity 64
3.3.4 Proof of Time 66
3.4 Challenges to Scalability 67
3.4.1 Communication Complexity 67
3.4.2 Asynchronous Context 68
3.4.3 Participant Churn 68
3.4.4 The Blockchain Scalability Problem 69
3.5 Block Size and Propagation 69
3.5.1 Larger Blocks 70
3.5.2 Shorter Rounds 71
3.6 Committees, Groups, and Sharding 71
3.6.1 Committees 71
3.6.2 Groups 72
3.6.3 Sharding 72
3.7 Transaction Channels 73
3.7.1 Trust-Weighted Agreement 74
3.7.2 Off-Chain Transactions 74
3.7.3 Lightning Network 75
3.8 Checkpointing and Finality Gadgets 76
3.8.1 Probabilistic Finality 76
3.8.2 Checkpointing 77
3.8.3 Finality Gadgets 77
3.9 Bootstrapping 78
3.9.1 Networking 78
3.9.2 Data 79
3.10 Future Trends 79
3.10.1 Private Consensus 79
3.10.2 Improved Oracles 80
3.10.3 Streaming Consensus 80
3.11 Conclusion 81
References 81
4 Security, Privacy, and Trust of Distributed Ledgers Technology 91
Saqib Rasool, Muddesar Iqbal, Shancang Li, Tasos Dagiuklas, and Saptarshi Ghosh
4.1 CAP Theorem and DLT 92
4.1.1 Distributed Database System (DDBS) 93
4.1.2 Evolution of DDBS to the Blockchain 93
4.1.3 Public vs Permissioned Blockchains 93
4.1.4 Evolution of Blockchain to the DLTs 94
4.2 CAP Theorem 94
4.2.1 CAP Theorem and Consensus Algorithms 95
4.2.2 Availability and Partition Tolerance (AP) Through PoW 95
4.2.3 Consistency and Partition Tolerance (CP) Through PBFT 96
4.2.4 Consistency and Availability (CA) 96
4.3 Security and Privacy of DLT 96
4.3.1 Security Differs by DLT 97
4.3.2 Security and Requirements for Transactions 97
4.3.3 Security Properties of DLT 97
4.3.4 Challenges and Trends in DLT Security 99
4.4 Security in DLT 99
4.4.1 Governance Scenario Security 99
4.4.2 DLT Application Security 99
4.4.3 DLT Data Security 100
4.4.4 Transactions Security 100
4.4.5 DLT Infrastructure Security 100
4.5 Privacy Issues in DLT 100
4.6 Cyberattacks and Fraud 101
4.6.1 Challenges 101
4.6.2 Key Privacy and Security Techniques in DLT 102
4.7 DLT Implementation and Blockchain 102
4.7.1 Cryptocurrencies and Bitcoin 103
4.7.1.1 Origin of Blockchain 103
4.7.1.2 Bitcoin 104
4.7.1.3 Monero 104
4.7.2 Blockchain and Smart Contracts 105
4.7.3 Typical Blockchain Systems 105
4.7.3.1 Ethereum Classic (ETC) 105
4.7.3.2 Ethereum (ETH) 106
4.7.3.3 Extensibility of Blockchain and DLT 106
4.7.4 Origin of Blockchain 3.0 106
4.7.5 Overview of Hyperledger Fabric 106
4.8 DLT of IOTA Tangle 107
4.9 Trilemma of Security, Scalability, and Decentralization 108
4.9.1 First-Generation Solutions: BTC/BCH 108
4.9.2 Second-Generation Solutions: ETH/BSC 108
4.9.3 Threats in DLT and Blockchain Networks 109
4.10 Security Architecture in DLT and Blockchain 109
4.10.1 Threat Model in LDT 110
4.11 Research Trends and Challenges 111
References 112
5 Blockchains for Business - Permissioned Blockchains 117
Ziliang Lai and Eric Lo
5.1 Introduction 117
5.2 Major Architectures of Permissioned Blockchains 119
5.2.1 Order-Execute 119
5.2.2 Simulate-Order-Validate 121
5.2.2.1 Simulation Phase 121
5.2.2.2 Ordering Phase 122
5.2.2.3 Validation Phase 122
5.2.3 Comparison and Analysis 122
5.3 Improving Order-Execute Using Deterministic Concurrency Control 123
5.3.1 Calvin 124
5.3.2 Bohm 125
5.3.3 Bcdb 125
5.3.3.1 Simulation Phase 126
5.3.3.2 Commit Phase 126
5.3.4 Aria 127
5.3.4.1 Simulation Phase 127
5.3.4.2 Analysis Phase 128
5.3.4.3 Commit Phase 129
5.3.5 Comparison and Analysis 129
5.4 Improving Execute-Order-Validate 129
5.4.1 Transaction Reordering 130
5.4.2 Early Abort 133
5.4.3 FastFabric 133
5.5 Scale-Out by Sharding 134
5.6 Trends of Development 136
5.6.1 Trusted Hardware 136
5.6.2 Chainify DBMSs 137
Acronyms 138
References 138
6 Attestation Infrastructures for Automotive Cybersecurity and Vehicular Applications of Blockchains 141
Thomas Hardjono
6.1 Introduction 141
6.2 Cybersecurity of Automotive and IoT Systems 142
6.2.1 Protecting Assets in Smart Cars 143
6.2.2 Reported Cases 145
6.2.3 Trusted Computing Base for Automotive Cybersecurity 145
6.2.4 Special Hardware for Security 146
6.2.5 Truthful Reporting: The Challenge of Attestations 147
6.3 The TCB and Development of Trusted Hardware 148
6.3.1 The Trusted Computing Base 148
6.3.2 The Trusted Platform Module (TPM) 149
6.3.3 Resource-Constrained Automotive Systems: Thin TPMs 150
6.3.4 Virtualized TPMs for ECUs 152
6.3.5 The DICE Model and Cyber-Resilient Systems 153
6.4 Attestations in Automotive Systems 154
6.4.1 A Reference Framework for Attestations 154
6.4.2 Entities, Roles, and Actors 155
6.4.3 Variations in Evidence Collations and Deliveries 158
6.4.4 Composite Attestations for Automotive Systems 158
6.4.5 Appraisal Policies 160
6.5 Vehicle Wallets for Blockchain Applications 161
6.5.1 Vehicular Application Scenarios 162
6.5.2 Protection of Keys in Automotive Wallets 163
6.5.3 Types of Evidence from Wallets 164
6.6 Blockchain Technology for Future Attestation Infrastructures 164
6.6.1 Challenges in the Supply-Chain of Endorsements 165
6.6.2 Decentralized Infrastructures 167
6.6.3 Example of Verifier Tasks 168
6.6.4 Notarization Records and Location Records 169
6.6.5 Desirable Properties of Blockchain-Based Approaches 170
6.6.6 Information within the Notarization Record 171
6.6.7 Information in the Location Record 172
6.6.8 The Compliance Certifications Record 173
6.7 Areas for Innovation and Future Research 173
6.8 Conclusion 174
Acknowledgments 175
References 175
7 Blockchain for Mobile Networks 185
Xavier Costa-Pérez, Vincenzo Sciancalepore, Lanfranco Zanzi, and Antonio Albanese
7.1 Introduction 185
7.2 Next-Generation Mobile Networks: Technology Enablers and Challenges 186
7.2.1 Mobile Networks: Technology Enablers 187
7.2.1.1 Software-Defined Networking (SDN) 187
7.2.1.2 Network Function Virtualization (NFV) 187
7.2.1.3 Cloud Computing (CC) 187
7.2.1.4 Multi-access Edge Computing (MEC) 188
7.2.1.5 5G-New Radio (5G-NR) and Millimeter Wave (mmWave) 188
7.2.2 Mobile Networks: Technology Challenges 188
7.2.2.1 Scalability in Massive Communication Scenarios 188
7.2.2.2 Efficient Resource Sharing 189
7.2.2.3 Network Slicing and Multi-tenancy 189
7.2.2.4 Security 189
7.3 Blockchain Applicability to Mobile Networks and Services 190
7.3.1 Background and Definitions 190
7.3.2 Blockchain for Radio Access Networks 192
7.3.3 Blockchain for Core, Cloud, and Edge Computing 194
7.3.3.1 Data Provenance 194
7.3.3.2 Encrypted Data Indexing 195
7.3.3.3 Mobile Network Orchestration 195
7.3.3.4 Mobile Task Offloading 196
7.3.3.5 Service Automation 196
7.4 Blockchain for Network Slicing 197
7.4.1 The Network Slice Broker (NSB) 197
7.4.2 NSB Blockchain Architecture (NSBchain) 198
7.4.2.1 Technical Challenges 199
7.4.3 NSBchain Modeling 201
7.4.3.1 System Setup 201
7.4.3.2 Message Exchange 201
7.4.3.3 Billing Management 202
7.4.4 NSBchain Evaluation 204
7.4.4.1 Experimental Setup 204
7.4.4.2 Full-Scale Evaluation 205
7.4.4.3 Brokering Scenario Evaluation 207
7.5 Concluding Remarks and Future Work 208
Acronyms 208
References 209
8 Blockchains for Cybersecurity and AI Systems 215
Dragan Boscovic, Kasim Selçuk Candan, Petar Jevtić, Nicolas Lanchier, Sasa Pesic, and Axel La Salle
8.1 Introduction 215
8.2 Securing Blockchains and Traditional IT Architectures 218
8.2.1 On Securing a Blockchain Platform 219
8.3 Public Blockchains Cybersecurity 221
8.3.1 Vulnerabilities Categorization 222
8.3.1.1 Technical Limitations, Legal Liabilities, and Connected 3rd-Party Applications 222
8.3.1.2 Cybersecurity Issues 224
8.3.1.3 Public Blockchain 1.0: PoW and PoS 224
8.3.1.4 Public Blockchain 1.0: DPoS 227
8.3.1.5 Public Blockchain 2.0: Ethereum Smart Contracts 228
8.3.1.6 Public Blockchain 2.0 - Privacy Issues 230
8.4 Private Blockchains Cybersecurity 231
8.4.1 Hyperledger Fabric Architecture 231
8.4.2 HLF Vulnerabilities Categorization 232
8.5 Modeling Blockchain Vulnerabilities Using Graph Theory 234
8.5.1 Petri Nets 234
8.5.2 Bond Percolation and Random Graphs 235
8.6 Security: Blockchain for IoT 237
8.6.1 IoT Security Vulnerabilities 237
8.6.2 Blockchain-IoT Convergence 238
8.6.2.1 Enhancing IoT Security Features 240
8.7 Blockchain for Federated AI 242
8.7.1 FML Basic Principles 243
8.7.2 Case Study: Blockchain-Based FML in Large-Scale Environmental Sensing 245
References 247
9 6G Resource Management and Sharing: Blockchain and O-RAN 253
Hao Xu, Paulo Valente Klaine, Oluwakayode Onireti, and Chih-Lin I
9.1 Introduction 253
9.2 Spectrum Management 256
9.3 Benefit of Using the Blockchain 259
9.3.1 Blockchain Background 259
9.3.2 Impact of Consensus and Security Performance 261
9.4 Application Scenarios 264
9.4.1 IoT and D2D Communications 264
9.4.2 Network Slicing 266
9.4.3 Network Slicing Broker 266
9.4.4 Integration of Blockchain to Network Slicing and Resource Brokerage 267
9.4.5 Inter-Domain Blockchain Ecosystem 271
9.4.6 Blockchain Introduction on Mutual Authentication, Identities, and Certifications for O-RAN 272
9.4.6.1 O-RAN Common Protocol Stack Integration of PDCP 275
9.4.6.2 O-RAN Interface Integration Scenario 276
9.4.7 Challenges of Applying the Blockchain Technology in Resource Sharing and Spectrum Management 276
9.5 Conclusions 277
Acronyms 278
References 279
10 Blockchain for Smart Healthcare 287
Dinh C. Nguyen, Pubudu N. Pathirana, Ming Ding, and Aruna Seneviratne
10.1 Introduction 287
10.2 Smart Healthcare Architecture with Blockchain 290
10.2.1 Blockchain-Based Healthcare Architecture 290
10.2.2 Blockchain Design 292
10.3 Blockchain for EMRs Data Sharing in Collaborative Healthcare 292
10.3.1 User Authentication with Smart Contract 293
10.3.1.1 Initialization Phase 293
10.3.1.2 Registration Phase 293
10.3.1.3 User Authentication Phase 294
10.3.2 Health Data Retrieval with Blockchain 296
10.4 Blockchain Mining Design for Smart Healthcare System 298
10.4.1 Miner Node Selection 300
10.4.1.1 Reputation Calculation 300
10.4.1.2 Miner Selection 301
10.4.2 Lightweight Block Verification 301
10.4.3 Latency of Block Verification 303
10.5 Experimental Results 304
10.5.1 Experimental Settings 304
10.5.2 Evaluation of EMRs Sharing Performance 304
10.5.2.1 Authentication Cost 305
10.5.2.2 Data Retrieval Latency 305
10.5.3 Evaluation of Blockchain Performance 307
10.5.3.1 Blockchain Consensus Performance 307
10.5.4 Security Analysis 309
10.5.4.1 Data Privacy 309
10.5.4.2 Authentication 309
10.5.4.3 Traceability 310
10.6 Conclusions 310
Acronyms 310
References 311
11 Blockchain Standards 315
Hui Ding, Xiaofeng Chen, Kyeong Hee Oh, Ismael Arribas, Jörn Erbguth, Alexander Chuburkov, Lisa J. Y. Tan, and Xiangjuan Jia
11.1 Introduction 315
11.2 The Role of Blockchain Standards 316
11.2.1 A Brief Introduction to Standards 316
11.2.2 Initiatives of Blockchain Standards 318
11.3 Landscape of Blockchain Standards 319
11.3.1 Blockchain Standards in IEEE 321
11.3.2 Blockchain Standards in ITU-T 324
11.3.3 Blockchain Standards in ISO 331
11.3.4 Regional, National, and Industrial Blockchain Standards 334
11.3.4.1 Etsi 335
11.3.4.2 DIN in Germany 335
11.3.4.3 UNE CTN 71/SC307 in Spain 336
11.3.4.4 LACChain Alliance in Latin America and the Caribbean 337
11.3.4.5 ISO, ITU Participation, and National Blockchain Standards for Financial Asset Management in Russia 338
11.3.4.6 Blockchain Standards in China and Financial Sector Application 339
11.3.4.7 Blockchain Standards in Communication Networks 341
11.4 From Blockchain Standards to Industrial Adoption 342
List of Acronyms 344
References 345
Index 349