TY - JOUR
T1 - BlockExplorer
T2 - Exploring Blockchain Big Data Via Parallel Processing
AU - Li, Shipeng
AU - Li, Jingwei
AU - Tang, Yuxing
AU - Luo, Xiapu
AU - He, Zheyuan
AU - Li, Zihao
AU - Cheng, Xi
AU - Bai, Yang
AU - Chen, Ting
AU - Tang, Yuzhe
AU - Liu, Zhe
AU - Zhang, Xiaosong
N1 - Funding Information:
This work was supported in part by the National Key R&D Program of China under Grant 2022YFB3104500, in part by the National Natural Science Foundation of China under Grants 61972073, 61872057, U19A2066, in part by the Key Research Funds of Sichuan Province under Grants 2021YFG0167, 2020YFG0298, in part by the Sichuan Science and Technology Program under Grant 2020JDTD0007, in part by the Fundamental Research Funds for Chinese Central Universities under Grants ZYGX2020ZB027, ZYGX2021J018, and in part by the Natural Science Foundation of Sichuan Province under Grant 2022NSFSC0871.
Publisher Copyright:
© 2023 IEEE.
PY - 2023/8/1
Y1 - 2023/8/1
N2 - Today's blockchain systems store detailed runtime information in the format of transactions and blocks, which are valuable not only to understand the finance of blockchain-based ecosystems but also to audit the security of on-chain applications. However, exploring this blockchain 'Big Data' is challenging due to data heterogeneity and the huge amount. Existing blockchain exploration techniques are either incomplete or inefficient, making them inapt in time-sensitive applications. This paper presents BlockExplorer , an efficient and flexible blockchain exploration system for Ethereum. BlockExplorer builds on a master-slave architecture, where the master partitions all blocks into multiple non-overlapped sets and each slave simultaneously processes Ethereum Big Data based on a set of blocks. BlockExplorer implements a transaction-based partitioning approach to address load balance among slaves, and a code instrumentation approach to acquire complete Ethereum Big Data. The evaluation shows that BlockExplorer accelerates the data acquisition performance of the state-of-the-art by 4.1×, while the workload difference among slaves is up to 18%. To demonstrate the application of BlockExplorer , we develop three apps upon BlockExplorer to detect real-life attacks against Ethereum and show that our apps can detect attacks in a large range of blocks (e.g., ten million) within a short time (e.g., multiple hours).
AB - Today's blockchain systems store detailed runtime information in the format of transactions and blocks, which are valuable not only to understand the finance of blockchain-based ecosystems but also to audit the security of on-chain applications. However, exploring this blockchain 'Big Data' is challenging due to data heterogeneity and the huge amount. Existing blockchain exploration techniques are either incomplete or inefficient, making them inapt in time-sensitive applications. This paper presents BlockExplorer , an efficient and flexible blockchain exploration system for Ethereum. BlockExplorer builds on a master-slave architecture, where the master partitions all blocks into multiple non-overlapped sets and each slave simultaneously processes Ethereum Big Data based on a set of blocks. BlockExplorer implements a transaction-based partitioning approach to address load balance among slaves, and a code instrumentation approach to acquire complete Ethereum Big Data. The evaluation shows that BlockExplorer accelerates the data acquisition performance of the state-of-the-art by 4.1×, while the workload difference among slaves is up to 18%. To demonstrate the application of BlockExplorer , we develop three apps upon BlockExplorer to detect real-life attacks against Ethereum and show that our apps can detect attacks in a large range of blocks (e.g., ten million) within a short time (e.g., multiple hours).
KW - Blockchain
KW - distributed system
KW - ethereum
KW - security and privacy
UR - http://www.scopus.com/inward/record.url?scp=85149363000&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85149363000&partnerID=8YFLogxK
U2 - 10.1109/TC.2023.3248280
DO - 10.1109/TC.2023.3248280
M3 - Article
AN - SCOPUS:85149363000
SN - 0018-9340
VL - 72
SP - 2377
EP - 2389
JO - IEEE Transactions on Computers
JF - IEEE Transactions on Computers
IS - 8
ER -