Foreword |
|
xvii | |
Preface |
|
xix | |
Editor Biographies |
|
xxi | |
Contributors |
|
xxv | |
|
Chapter 1 Blockchain Foundations and Methods |
|
|
1 | (24) |
|
1.0.1 Technologies Behind Blockchain |
|
|
1 | (1) |
|
1.1 Need for Blockchain Technology |
|
|
2 | (1) |
|
1.1.1 Blockchain Technology as an Infrastructure for the Modern Business |
|
|
3 | (1) |
|
1.1.2 Blockchain as a Service |
|
|
3 | (1) |
|
1.2 Blockchain Layered Architecture |
|
|
3 | (5) |
|
1.3 Blockchain Principles |
|
|
8 | (1) |
|
1.3.1 Immutability, Transparency, and Digital Freedom |
|
|
8 | (1) |
|
1.3.2 Excellence of use through Truly Decentralised Services |
|
|
8 | (1) |
|
1.4 Blockchain Core Components |
|
|
9 | (6) |
|
1.4.1 Distributed Ledger Technology |
|
|
9 | (1) |
|
|
10 | (1) |
|
1.4.2.1 Working of the Smart contracts |
|
|
10 | (1) |
|
1.4.2.2 Smart Contracts and Blockchain |
|
|
11 | (1) |
|
1.4.2.3 Smart Contract Platforms |
|
|
11 | (1) |
|
1.4.3 Blockchain Consensus Mechanisms |
|
|
12 | (3) |
|
1.5 Building a Blockchain |
|
|
15 | (2) |
|
1.6 Record-Keeping with Blockchain |
|
|
17 | (1) |
|
|
18 | (1) |
|
|
18 | (1) |
|
|
18 | (1) |
|
1.8 Limitations of Blockchain Technology |
|
|
19 | (1) |
|
|
19 | (1) |
|
|
20 | (5) |
|
Chapter 2 Unraveling the Blockchain: A Study on Blockchain and Its Potential Applications |
|
|
25 | (24) |
|
|
27 | (5) |
|
2.1.1 Structure of Blockchain |
|
|
28 | (2) |
|
|
30 | (1) |
|
|
30 | (1) |
|
2.1.3.1 Current Research on Blockchain Technology |
|
|
30 | (1) |
|
2.1.3.2 Technology in Healthcare |
|
|
31 | (1) |
|
2.1.3.3 Securing Smart Cities Using Blockchain Technology |
|
|
31 | (1) |
|
2.1.3.4 Blockchain Technology in the Chemical Industry |
|
|
31 | (1) |
|
2.1.3.5 Blockchain Technology in the Insurance |
|
|
32 | (1) |
|
|
32 | (1) |
|
|
33 | (1) |
|
|
33 | (1) |
|
|
34 | (1) |
|
2.4 Recent Developments in Blockchain Technology |
|
|
34 | (1) |
|
2.4.1 Companies Actively Involved in Blockchain Research |
|
|
34 | (1) |
|
|
35 | (3) |
|
2.5.1 Common Blockchain Tools |
|
|
35 | (1) |
|
2.5.2 Layers of Blockchain Technology |
|
|
36 | (2) |
|
|
38 | (2) |
|
|
38 | (1) |
|
2.6.2 Redesigning Blockchain |
|
|
38 | (1) |
|
|
38 | (1) |
|
|
39 | (1) |
|
|
39 | (1) |
|
|
39 | (1) |
|
2.7 Applications of Blockchain Technology and Future Directions |
|
|
40 | (3) |
|
|
43 | (6) |
|
Chapter 3 Interoperability Across Blockchains |
|
|
49 | (26) |
|
3.0.1 Advantages and Disadvantages of using Blockchain |
|
|
50 | (2) |
|
3.1 Diversified Implementation of Blockchains |
|
|
52 | (4) |
|
|
54 | (1) |
|
|
54 | (1) |
|
|
54 | (1) |
|
|
55 | (1) |
|
3.1.5 Fees and Contract Execution |
|
|
55 | (1) |
|
|
56 | (4) |
|
|
57 | (1) |
|
|
58 | (1) |
|
|
58 | (1) |
|
|
58 | (1) |
|
|
58 | (1) |
|
3.2.2.1 Public Connectors |
|
|
58 | (1) |
|
3.2.3 Chain of Blockchains |
|
|
59 | (1) |
|
3.3 High Level Design of Router |
|
|
60 | (3) |
|
|
60 | (3) |
|
3.4 Detailed Design of the Router |
|
|
63 | (3) |
|
|
63 | (1) |
|
|
63 | (1) |
|
|
63 | (1) |
|
|
64 | (1) |
|
3.4.4 Communication Mechanism |
|
|
64 | (1) |
|
3.4.5 Communication Protocol |
|
|
64 | (2) |
|
3.4.6 Tactics for Availability |
|
|
66 | (1) |
|
3.5 Prototype and Experiments |
|
|
66 | (4) |
|
|
70 | (5) |
|
Chapter 4 HBasechainDB 3.0 Scalable Implementation of Blockchain on HBase with Capability for Smart Contract |
|
|
75 | (24) |
|
4.1 Background and Related Work |
|
|
76 | (5) |
|
|
77 | (1) |
|
|
78 | (1) |
|
|
78 | (1) |
|
|
79 | (1) |
|
|
79 | (2) |
|
4.2 Performance of HBasechainDB through Forking |
|
|
81 | (4) |
|
4.2.1 Forking Problem in Hyperledger Fabric |
|
|
82 | (1) |
|
|
83 | (2) |
|
4.2.3 Forking Problem in HBasechainDB 3.0 |
|
|
85 | (1) |
|
|
85 | (5) |
|
|
85 | (1) |
|
|
86 | (1) |
|
|
87 | (1) |
|
4.3.3.1 Block Creation Algorithm |
|
|
87 | (2) |
|
4.3.3.2 Transaction Validation Algorithm |
|
|
89 | (1) |
|
4.3.3.3 Block Validation Algorithm |
|
|
89 | (1) |
|
|
89 | (1) |
|
4.3.3.5 HBasechainDB 3.0 Life Cycle |
|
|
89 | (1) |
|
|
90 | (6) |
|
4.4.1 Experimentation on Homogeneous HBase Cluster |
|
|
90 | (1) |
|
4.4.1.1 Experimental Setup - I |
|
|
90 | (2) |
|
4.4.1.2 Experimentation Setup - II |
|
|
92 | (1) |
|
4.4.1.3 Experimentation Setup - III |
|
|
93 | (3) |
|
|
96 | (1) |
|
|
96 | (3) |
|
Chapter 5 An Analysis of Blockchain Technology: A Security and Privacy Perspective |
|
|
99 | (20) |
|
5.1 Overview of Blockchain Technology |
|
|
99 | (4) |
|
5.1.1 Architecture of Blockchain Technology |
|
|
100 | (1) |
|
|
100 | (1) |
|
|
100 | (1) |
|
|
100 | (1) |
|
|
100 | (1) |
|
|
101 | (1) |
|
5.1.1.6 Application Layer |
|
|
101 | (1) |
|
5.1.2 Types of Blockchain |
|
|
101 | (1) |
|
5.1.2.1 Public Blockchain |
|
|
101 | (1) |
|
5.1.2.2 Private Blockchain |
|
|
102 | (1) |
|
5.1.2.3 Consortium Blockchain |
|
|
102 | (1) |
|
5.2 Characteristics of the blockchain |
|
|
103 | (2) |
|
|
103 | (1) |
|
|
103 | (1) |
|
|
103 | (1) |
|
|
104 | (1) |
|
5.2.5 Transaction dependency |
|
|
104 | (1) |
|
|
104 | (1) |
|
|
104 | (1) |
|
|
105 | (2) |
|
5.3.1 Proof of Work (PoW) |
|
|
105 | (1) |
|
5.3.2 Proof of Stake (PoS) |
|
|
106 | (1) |
|
5.3.3 Proof of Authority (PoA) |
|
|
106 | (1) |
|
5.3.4 Byzantine fault tolerance consensus algorithm (BFT) |
|
|
106 | (1) |
|
5.3.5 Proof of Elapsed Time (PoET) |
|
|
106 | (1) |
|
5.3.6 Comparision of consensus algorithms |
|
|
106 | (1) |
|
5.4 Types of attacks on Blockchains |
|
|
107 | (2) |
|
|
107 | (1) |
|
5.4.2 Double spending attack |
|
|
107 | (1) |
|
|
108 | (1) |
|
5.4.4 Private key security attack |
|
|
108 | (1) |
|
|
108 | (1) |
|
5.4.6 Selfish mining attack |
|
|
108 | (1) |
|
|
109 | (1) |
|
|
109 | (1) |
|
5.5 Security Issues in Blockchain |
|
|
109 | (1) |
|
|
109 | (1) |
|
|
109 | (1) |
|
|
110 | (1) |
|
|
110 | (1) |
|
5.5.5 Vulnerabilities in smart contract |
|
|
110 | (1) |
|
5.6 Existing Solutions to Security Attacks |
|
|
110 | (2) |
|
|
110 | (1) |
|
|
111 | (1) |
|
5.6.3 Double Spending Attacks |
|
|
111 | (1) |
|
5.6.4 Private Key Security Attack |
|
|
111 | (1) |
|
5.6.5 Transaction Privacy Leakage |
|
|
111 | (1) |
|
5.6.6 Selfish Mining Attack |
|
|
112 | (1) |
|
5.7 Existing Techniques to Security Issues |
|
|
112 | (1) |
|
|
112 | (1) |
|
5.7.2 Attribute based encyption |
|
|
112 | (1) |
|
5.7.3 Anonymous Signatures |
|
|
112 | (1) |
|
5.7.4 Non-Interactive Zero Knowledge Proofs |
|
|
113 | (1) |
|
|
113 | (2) |
|
5.8.1 Proper framework against the combined attacks |
|
|
113 | (1) |
|
5.8.2 Zero-day attack policies |
|
|
114 | (1) |
|
5.8.3 Exchange of security keys |
|
|
114 | (1) |
|
|
114 | (1) |
|
5.8.5 Utilisation of available resources |
|
|
114 | (1) |
|
5.8.6 Trade-off's in performance |
|
|
114 | (1) |
|
5.8.7 Insider threat management |
|
|
114 | (1) |
|
|
115 | (4) |
|
Chapter 6 Blockchain Technology and Its Potential Applications |
|
|
119 | (32) |
|
6.0.1 Blockchain's Core Characteristics |
|
|
119 | (1) |
|
6.0.2 Architecture of Blockchain |
|
|
119 | (2) |
|
6.1 Globalisation as a trend and challenge to adopt the trend |
|
|
121 | (1) |
|
6.1.1 The growing prominence of decentralised ledger |
|
|
121 | (1) |
|
6.1.2 Decentralised ledgers and blockchain are not the same |
|
|
122 | (1) |
|
6.2 Blockchain consensus algorithm |
|
|
122 | (2) |
|
|
124 | (1) |
|
6.4 Blockchain Transactional Flow |
|
|
125 | (1) |
|
6.5 Blockchain scalability |
|
|
125 | (2) |
|
6.6 Security and Privacy in Blockchain |
|
|
127 | (1) |
|
6.7 Blockchain as a Service (BaaS) |
|
|
128 | (1) |
|
|
129 | (2) |
|
|
130 | (1) |
|
|
130 | (1) |
|
|
130 | (1) |
|
|
130 | (1) |
|
6.8.5 Benefits of Hyperledger Fabric |
|
|
131 | (1) |
|
|
131 | (2) |
|
6.9.1 Is Ethereum Better Than Bitcoin? |
|
|
132 | (1) |
|
6.9.2 How Long Does It Take to Mine One Ethereum? |
|
|
132 | (1) |
|
6.9.3 Benefits of building on Ethereum |
|
|
132 | (1) |
|
6.10 The competition that blockchain faces |
|
|
133 | (2) |
|
|
133 | (1) |
|
6.10.1.1 Hashgraph Consensus Service |
|
|
133 | (1) |
|
6.10.1.2 Hedera Governance |
|
|
133 | (1) |
|
|
134 | (1) |
|
|
134 | (1) |
|
|
134 | (1) |
|
|
135 | (1) |
|
6.11 Applications with Illustrations |
|
|
135 | (9) |
|
|
135 | (1) |
|
|
136 | (1) |
|
|
137 | (1) |
|
|
138 | (1) |
|
|
139 | (1) |
|
6.11.6 Corporate Management |
|
|
139 | (1) |
|
6.11.7 Cross-border payments |
|
|
140 | (1) |
|
|
140 | (1) |
|
|
141 | (1) |
|
|
142 | (1) |
|
6.11.11 Identity Management |
|
|
143 | (1) |
|
|
143 | (1) |
|
6.12 Benefits of blockchain, current situation and what can be anticipated |
|
|
144 | (7) |
|
Chapter 7 Cryptoassets Inheritance: Needs, Challenges, and Solutions |
|
|
151 | (28) |
|
7.0.1 Representing cryptoasset - Is it a Fantasy? |
|
|
153 | (1) |
|
7.0.1.1 Cryptoassets are Inherently Secure |
|
|
154 | (1) |
|
7.0.1.2 Cryptoassets are Certifiable |
|
|
154 | (2) |
|
7.0.2 Risk in cryptoasset |
|
|
156 | (2) |
|
7.1 Wallet Safeguard Mechanism |
|
|
158 | (4) |
|
7.1.1 Wallet Design and recovery of Private key |
|
|
160 | (1) |
|
7.1.1.1 Non-deterministic and Randomised Wallet |
|
|
160 | (1) |
|
7.1.1.2 Deterministic Seeded Wallet |
|
|
160 | (1) |
|
7.1.1.3 Hierarchical Deterministic Wallets |
|
|
161 | (1) |
|
7.1.1.4 Multi-Signature Wallet |
|
|
162 | (1) |
|
7.2 Cryptocurrencies Jurisdictions and Regulations |
|
|
162 | (3) |
|
7.3 Some Practical Implementation of Private Key Custodian |
|
|
165 | (2) |
|
|
167 | (1) |
|
7.4.1 How to "Will" the Cryptoasset |
|
|
168 | (1) |
|
7.5 Bitcoin Script and Smart Contract for Cryptoasset Inheritance |
|
|
168 | (8) |
|
7.5.1 Bitcoin and Cryptographic "Will" |
|
|
169 | (4) |
|
7.5.2 Smart Contract and Cryptographic "Will" |
|
|
173 | (2) |
|
7.5.3 ERC20 and ERC721 Tokens |
|
|
175 | (1) |
|
|
176 | (3) |
|
Chapter 8 Blockchain in Healthcare |
|
|
179 | (14) |
|
8.1 Healthcare Industry 4.0 |
|
|
179 | (1) |
|
|
180 | (3) |
|
|
182 | (1) |
|
|
182 | (1) |
|
8.3 Healthcare Record Management |
|
|
183 | (2) |
|
|
185 | (1) |
|
8.5 Health Status Monitoring by BAN and IoT |
|
|
186 | (2) |
|
|
188 | (1) |
|
|
189 | (1) |
|
|
189 | (1) |
|
|
190 | (3) |
|
Chapter 9 Blockchain Privacy and Its Security Challenges |
|
|
193 | (22) |
|
|
194 | (7) |
|
9.1.1 The Concept of Blockchain |
|
|
194 | (2) |
|
9.1.2 How Blockchain Works |
|
|
196 | (1) |
|
9.1.3 The Blockchain's Structure |
|
|
197 | (1) |
|
9.1.4 How to get Consensus |
|
|
197 | (1) |
|
9.1.5 Proof of Work (PoW) |
|
|
198 | (2) |
|
9.1.6 Proof of Stake (PoS) |
|
|
200 | (1) |
|
9.1.7 Types of Blockchain |
|
|
200 | (1) |
|
9.1.7.1 Public Blockchain |
|
|
200 | (1) |
|
9.1.7.2 Consortium blockchain |
|
|
200 | (1) |
|
9.1.7.3 Private blockchain |
|
|
200 | (1) |
|
9.2 Application of Blockchain |
|
|
201 | (4) |
|
|
201 | (1) |
|
9.2.2 Banking and Finance |
|
|
202 | (1) |
|
|
203 | (1) |
|
|
203 | (2) |
|
|
205 | (1) |
|
9.2.6 Other uses of Blockchain |
|
|
205 | (1) |
|
9.3 Security Challenges of Blockchain |
|
|
205 | (4) |
|
9.3.1 Attacks based on Smart contract |
|
|
206 | (1) |
|
9.3.1.1 The Decentralised Autonomous Organisation(DAO) Hack |
|
|
206 | (1) |
|
9.3.2 Attack based on Consensus and Ledger Mechanism |
|
|
206 | (1) |
|
9.3.2.1 Selfish mining attack |
|
|
206 | (1) |
|
|
207 | (1) |
|
|
207 | (1) |
|
9.3.2.4 Majority (51 %) attack |
|
|
207 | (2) |
|
9.3.3 Attack based on P2P(Peer-to-Peer) Network |
|
|
209 | (1) |
|
|
209 | (1) |
|
|
209 | (1) |
|
9.3.4 Attack based on Wallet |
|
|
209 | (1) |
|
9.3.4.1 Parity Multisig Wallet Attack |
|
|
209 | (1) |
|
|
209 | (6) |
|
Chapter 10 Protocol for E-Voting Using Blockchain |
|
|
215 | (32) |
|
10.0.1 Pros Pros and Cons of Blockchain |
|
|
215 | (1) |
|
|
215 | (1) |
|
|
216 | (1) |
|
|
216 | (3) |
|
10.1.1 Normal-Voting Schemes |
|
|
217 | (1) |
|
10.1.2 Electronic-Voting Schemes |
|
|
217 | (1) |
|
10.1.3 Blockchain-Based Schemes |
|
|
218 | (1) |
|
10.1.4 Outcome of Literature Survey |
|
|
218 | (1) |
|
10.2 Blockchain Implementations |
|
|
219 | (6) |
|
|
219 | (1) |
|
|
220 | (2) |
|
|
222 | (1) |
|
10.2.4 Hyperledger Fabric |
|
|
222 | (2) |
|
10.2.5 Comparison Table for the blockchain Implementations |
|
|
224 | (1) |
|
|
225 | (8) |
|
10.3.1 Zero-Knowledge Proof (ZKF) |
|
|
225 | (1) |
|
10.3.2 Some Protocols based on Zero-Knowledge Proofs (ZKF) |
|
|
226 | (1) |
|
10.3.2.1 Schnorr Identification Protocol |
|
|
226 | (2) |
|
10.3.2.2 Fiat-Shamir Protocol |
|
|
228 | (1) |
|
|
228 | (1) |
|
|
228 | (3) |
|
10.3.3.2 Registration of Voters and Candidates/proposed query |
|
|
231 | (1) |
|
10.3.3.3 Votes Privacy and Votes Counting |
|
|
231 | (1) |
|
10.3.4 Security Consideration |
|
|
232 | (1) |
|
10.3.4.1 Voters Device Coercion |
|
|
232 | (1) |
|
10.3.4.2 Denial-of-Service (DoS) |
|
|
232 | (1) |
|
|
232 | (1) |
|
|
232 | (1) |
|
10.3.4.5 Trojan Horse Spywares |
|
|
232 | (1) |
|
10.4 Implementation Details |
|
|
233 | (4) |
|
|
234 | (2) |
|
|
236 | (1) |
|
|
237 | (4) |
|
|
237 | (3) |
|
|
240 | (1) |
|
10.6 Comparison between HBasechainDB and Ethereum |
|
|
241 | (3) |
|
|
244 | (1) |
|
|
244 | (3) |
|
Chapter 11 Secure Permission-based Medical Blockchain Framework for the Exchange of Electronic Health Records |
|
|
247 | (22) |
|
11.0.1 Blockchain Network |
|
|
247 | (1) |
|
11.0.1.1 Types of Blockchain |
|
|
248 | (1) |
|
11.0.1.2 Fundamental elements in blockchain |
|
|
249 | (1) |
|
11.0.2 Inter-Planetary File Systems (IPFS) |
|
|
249 | (1) |
|
11.0.3 Chaotic image encryption |
|
|
250 | (1) |
|
11.1 Blockchain technology in healthcare |
|
|
250 | (3) |
|
11.1.1 Research challenges for adopting blockchain technology in healthcare |
|
|
252 | (1) |
|
11.2 Novel Permission based secure medical blockchain for Electronic Health Record |
|
|
253 | (14) |
|
|
254 | (3) |
|
11.2.2 Conventional healthcare approach |
|
|
257 | (1) |
|
|
258 | (2) |
|
11.2.3.1 Symmetric encryption using chaos |
|
|
260 | (1) |
|
11.2.3.2 Secure storage - IPFS |
|
|
261 | (1) |
|
11.2.3.3 Medical Blockchain Framework |
|
|
261 | (3) |
|
11.2.4 Performance metrics for evaluation |
|
|
264 | (1) |
|
11.2.4.1 Performance evaluation for blockchain - Hyperledger Caliper |
|
|
264 | (1) |
|
11.2.4.2 Performance evaluation for secure medical image records |
|
|
264 | (3) |
|
|
267 | (2) |
|
Chapter 12 The Use of Blockchain in Taxing Digital Products and Services: A Conceptual Model Proposal |
|
|
269 | (24) |
|
|
270 | (2) |
|
12.2 Electronic Payment Systems |
|
|
272 | (1) |
|
12.3 Blockchain Technology |
|
|
273 | (3) |
|
|
275 | (1) |
|
12.4 Digital Service Tax Regulations in Countries |
|
|
276 | (3) |
|
12.5 Smart Contracts and Taxation Process Based on Blockchain Technology |
|
|
279 | (14) |
Appendix A A Partial Smart Contract Example Created for Asset Transfer |
|
293 | (2) |
Index |
|
295 | |