Dynamic-EC: an efficient dynamic erasure coding method for permissioned blockchain systems
Mizhipeng ZHANG1, Chentao WU1,2(), Jie LI1,2, Minyi GUO1
1. Department of Computer Science and Engineering, Shanghai Jiao Tong University, Shanghai 200200, China 2. Yancheng Blockchain Research Institute, Hengyang 421200, China
Blockchain as a decentralized storage technology is widely used in many fields. It has extremely strict requirements for reliability because there are many potentially malicious nodes. Generally, blockchain is a chain storage structure formed by interconnecting blocks
A block is consist of a block header and a block body. The metadata is stored in block header and data is stored in block body.
, which are stored by full replication method, where each node stores a replica of all blocks and the data consistency is maintained by the consensus protocol. To decrease the storage overhead, previous approaches such as BFT-Store and Partition Chain store blocks via erasure codes. However, existing erasure coding based methods utilize static encoding schema to tolerant f malicious nodes, but in the typical cases, the number of malicious nodes is much smaller than f as described in previous literatures. Using redundant parities to tolerate excessive malicious nodes introduces unnecessary storage overhead.
To solve the above problem, we propose Dynamic-EC, which is a Dynamic Erasure Coding method in permissioned blockchain systems. The key idea of Dynamic-EC is to reduce the storage overhead by dynamically adjusting the total number of parities according to the risk level of the whole system, which is determined by the number of perceived malicious nodes, while ensuring the system reliability. To demonstrate the effectiveness of Dynamic-EC, we conduct several experiments on an open source blockchain software Tendermint. The results show that, compared to the state-of-the-art erasure coding methods, Dynamic-EC reduces the storage overhead by up to 42%, and decreases the average write latency of blocks by up to 25%, respectively.
the threshold of reputation value for integrity nodes
the threshold of reputation value for risk nodes
the th node in the blockchain system
a block with height
the checksum of
the th fragment of block
the classification of
the personal reputation value from to
the global reputation value of
the penalty for silent nodes
the penalty for dishonest nodes
the reward for correct nodes
Tab.1
Fig.1
Fig.2
Fig.3
Fig.4
Methods
Storage cost
Redundancy (n = 10, f = 3)
Network Cost
Punishment
Full replication
Partition chain
BFT-Store
Dynamic-EC(Optimal Case)
Dynamic-EC(Worst Case)
Tab.2
Fig.5
Fig.6
Fig.7
Level
Risk nodes()
Parities ()
Malicious attacks tolerated
Low
Middle
High
Tab.3
Fig.8
Fig.9
Description
Value
CPU
Intel Xeon 2.4 GHz
NIC
1000 Mbps
Memory
32 GB
Disk
12 TB HDD
Platform
Tendermint v0.35.0
# of nodes
Tab.4
Fig.10
Fig.11
Fig.12
Fig.13
Fig.14
Fig.15
Fig.16
1
Wood G. Ethereum: a secure decentralised generalised transaction ledger. Ethereum Project Yellow Paper, 2014, 151(2014): 1
2
F, Armknecht G O, Karame A, Mandal F, Youssef E Zenner . Ripple: overview and outlook. In: Proceedings of the 8th International Conference on Trust and Trustworthy Computing. 2015, 163−180
3
Qi X, Zhang Z, Jin C, Zhou A. BFT-Store: storage partition for permissioned blockchain via erasure coding. In: Proceedings of the 36th IEEE International Conference on Data Engineering (ICDE). 2020, 1926−1929
4
M, Barborak A, Dahbura M Malek . The consensus problem in fault-tolerant computing. ACM Computing Surveys, 1993, 25( 2): 171–220
5
Zheng Z, Xie S, Dai H, Chen X, Wang H. An overview of blockchain technology: architecture, consensus, and future trends. In: Proceedings of 2017 IEEE International Congress on Big Data (BigData Congress). 2017, 557−564
6
Castro M, Liskov B. Practical byzantine fault tolerance. In: Proceedings of the 3rd Symposium on Operating Systems Design and Implementation. 1999, 173−186
7
Z, Du X, Pang H Qian . PartitionChain: a scalable and reliable data storage strategy for permissioned blockchain. IEEE Transactions on Knowledge and Data Engineering, 2023, 35( 4): 4124–4136
8
I S, Reed G Solomon . Polynomial codes over certain finite fields. Journal of the Society for Industrial and Applied Mathematics, 1960, 8( 2): 300–304
9
L, Alvisi D, Malkhi E, Pierce M K, Reiter R N Wright . Dynamic Byzantine quorum systems. In: Proceedings of Proceeding International Conference on Dependable Systems and Networks. 2000, 283−292
10
M, Xia M, Saxena M, Blaum D A Pease . A tale of two erasure codes in HDFS. In: Proceedings of the 13th USENIX Conference on File and Storage Technologies. 2015, 213−226
11
H, Qiu C, Wu J, Li M, Guo T, Liu X, He Y, Dong Y Zhao . EC-fusion: An efficient hybrid erasure coding framework to improve both application and recovery performance in cloud storage systems. In: Proceedings of 2020 IEEE International Parallel and Distributed Processing Symposium (IPDPS). 2020, 191−201
12
C, Stathakopoulou S, Rüsch M, Brandenburger M Vukolić . Adding fairness to order: preventing front-running attacks in BFT protocols using TEEs. In: Proceedings of the 40th International Symposium on Reliable Distributed Systems (SRDS). 2021, 34−45
13
Guo B, Lu Z, Tang Q, Xu J, Zhang Z. Dumbo: faster asynchronous BFT protocols. In: Proceedings of 2020 ACM SIGSAC Conference on Computer and Communications Security. 2020, 803−818
14
Miller A, Xia Y, Croman K, Shi E, Song D. The honey badger of BFT protocols. In: Proceedings of 2016 ACM SIGSAC Conference on Computer and Communications Security. 2016, 31−42
15
Duan S, Reiter M K, Zhang H. BEAT: asynchronous BFT made practical. In: Proceedings of 2018 ACM SIGSAC Conference on Computer and Communications Security. 2018, 2028−2041
16
Androulaki E, Barger A, Bortnikov V, Cachin C, Christidis K, De Caro A, Enyeart D, Ferris C, Laventman G, Manevich Y, Muralidharan S, Murthy C, Nguyen B, Sethi M, Singh G, Smith K, Sorniotti A, Stathakopoulou C, Vukolić M, Cocco S W, Yellick J. Hyperledger fabric: a distributed operating system for permissioned blockchains. In: Proceedings of the 13th EuroSys Conference. 2018, 30
17
E Buchman . Tendermint: Byzantine fault tolerance in the age of blockchains. University of Guelph, Dissertation, 2016
18
Ghemawat S, Gobioff H, Leung S T. The Google file system. In: Proceedings of the 19th ACM Symposium on Operating Systems Principles. 2003, 29−43
19
Shvachko K, Kuang H, Radia S, Chansler R. The hadoop distributed file system. In: Proceedings of the 26th IEEE Symposium on Mass Storage Systems and Technologies (MSST). 2010, 1−10
20
Dai X, Xiao J, Yang W, Wang C, Jin H. Jidar: a jigsaw-like data reduction approach without trust assumptions for bitcoin system. In: Proceedings of the 39th IEEE International Conference on Distributed Computing Systems (ICDCS). 2019, 1317−1326
21
Sukhwani H, Wang N, Trivedi K S, Rindos A. Performance modeling of hyperledger fabric (permissioned blockchain network). In: Proceedings of the 17th IEEE International Symposium on Network Computing and Applications (NCA). 2018, 1−8
22
Weatherspoon H, Kubiatowicz J D. Erasure coding vs. replication: a quantitative comparison. In: Proceedings of the 1st International Workshop on Peer-to-Peer Systems. 2002, 328−337
23
Yang G, Xue H, Gu Y, Wu C, Li J, Guo M, Li S, Xie X, Dong Y, Zhao Y. XHR-code: an efficient wide stripe erasure code to reduce cross-rack overhead in cloud storage systems. In: Proceedings of the 41st International Symposium on Reliable Distributed Systems (SRDS). 2022, 273−283
24
Y, Hu L, Cheng Q, Yao P P C, Lee W, Wang W Chen . Exploiting combined locality for Wide-Stripe erasure coding in distributed storage. In: Proceedings of the 19th USENIX Conference on File and Storage Technologies. 2021, 233−248
25
Ye L, Feng D, Hu Y, Liu Q. Hybrid-RC: Flexible erasure codes with optimized recovery performance and low storage overhead. In: Proceedings of the 36th IEEE Symposium on Reliable Distributed Systems (SRDS). 2017, 124–133
26
Wu C, Wan S, He X, Cao Q, Xie C. H-Code: a hybrid MDS array code to optimize partial stripe writes in RAID-6. In: Proceedings of 2011 IEEE International Parallel & Distributed Processing Symposium. 2011, 782−793
27
Kong L, Manohar D J, Subbiah A, Sun M, Ahamad M, Blough D M. Agile store: Experience with quorum-based data replication techniques for adaptive Byzantine fault tolerance. In: Proceedings of the 24th IEEE Symposium on Reliable Distributed Systems (SRDS’05). 2005, 143−154
28
J P, Bahsoun R, Guerraoui A Shoker . Making BFT protocols really adaptive. In: Proceedings of 2015 IEEE International Parallel and Distributed Processing Symposium. 2015, 904−913
29
Silva D S, Graczyk R, Decouchant J, Völp M, Esteves-Verissimo P. Threat adaptive byzantine fault tolerant state-machine replication. In: Proceedings of the 40th International Symposium on Reliable Distributed Systems (SRDS). 2021, 78−87
30
A Shostack . Threat Modeling: Designing for Security. Indianapolis: John Wiley & Sons, 2014
31
Zhang J, Huang Y, Ye F, Yang Y. A novel proof-of-reputation consensus for storage allocation in edge blockchain systems. In: Proceedings of the 29th IEEE/ACM International Symposium on Quality of Service (IWQOS). 2021, 1−10
32
S D, Kamvar M T, Schlosser H Garcia-Molina . The eigentrust algorithm for reputation management in P2P networks. In: Proceedings of the 12th International Conference on World Wide Web. 2003, 640−651
33
Naehrig M, Niederhagen R, Schwabe P. New software speed records for cryptographic pairings. In: Proceedings of the 1st International Conference on Cryptology and Information Security in Latin America. 2010, 109−123
34
Hossain M A, Islam M K, Das S K. Cryptanalyzing of message digest algorithms MD4 and MD5. International Journal on Cryptography and Information Security, 2012, 2 (1): 1-13.
35
Luu L, Narayanan V, Zheng C, Baweja K, Gilbert S, Saxena P. A secure sharding protocol for open blockchains. In: Proceedings of 2016 ACM SIGSAC Conference on Computer and Communications Security. 2016, 17−30
36
J, Yang Y, Yue K V Rashmi . A large-scale analysis of hundreds of in-memory key-value cache clusters at twitter. ACM Transactions on Storage, 2021, 17( 3): 17
37
B S, Egala A K, Pradhan V, Badarla S P Mohanty . Fortified-chain: a blockchain-based framework for security and privacy-assured internet of medical things with effective access control. IEEE Internet of Things Journal, 2021, 8( 14): 11717–11731
38
El Houda Z A, Hafid A, Khoukhi L. Co-IoT: a collaborative DDoS mitigation scheme in IoT environment based on blockchain using SDN. In: Proceedings of 2019 IEEE Global Communications Conference (GLOBECOM). 2019, 1−6