Making Blockchain Experiments Easy

BlockEmulator: An Experiment Tool for Testing Blockchain Protocols

Initiated by HuangLab @ SYSU

Introduction

BlockEmulator is initiated by HuangLab (a research team in the School of Software Engineering, Sun Yat-sen University, China). It is a blockchain experiment tool that enables researchers to verify their proposed new protocols and mechanisms, particularly blockchain-sharding protocols.

BlockEmulator is a useful experimental platform for researchers and students when need to verify their new algorithms, consensus protocols, and mechanisms. Using BlockEmulator, researchers can quickly launch a testbed where they can collect the experimental data that can be exploited to plot experiment figures or tables.

BlockEmulator supports the replay of Ethereum's historical transactions. It automatically outputs experimental log files. Using those log files, researchers can interpret plenty of metrics such as system throughput, confirmation latency of transactions, the queueing of the transaction pool, etc. This function is extremely helpful for researchers and students to facilitate their experimental data collection and plotting of experimental charts.

Features

BlockEmulator is designed as an experimental platform that aims to help users (researchers, students, etc.) quickly verify their new protocols, e.g., blockchain consensus protocols and blockchain-sharding protocols.

BlockEmulator simplifies the implementation of a blockchain system since it only implements the core functions of a blockchain, including the transaction pool, block packaging, consensus protocols, and on-chain transaction storage. It also supports mainstream consensus protocols such as Practical Byzantine Fault Tolerance (PBFT) and Proof of Work (PoW).

Particularly, BlockEmulator offers the system-level design and implementation for blockchain sharding mechanisms. For example, the cross-shard transaction mechanisms implemented by BlockEmulator include the following two representative solutions, i.e., i) Relay transaction mechanism proposed by Monoxide (NSDI'2019), and the BrokerChain protocol proposed by BrokerChain (INFOCOM'2022) [PDF].

Lightweight
BlockEmulator is a lightweight testbed for blockchain experiments.
Fast Configuration
BlockEmulator enables users to configure their environments fast, even for a simple remote deployment on the Cloud.
Customization
BlockEmulator is implemented using Goland language, thus conveniently supporting customization and modification.
Easy to Experiment
BlockEmulator helps researchers quickly launch a testbed to collect the experimental data for plotting their charts.

Official Handbook

BlockEmulator: An Emulator Enabling to Test Blockchain Sharding Protocols (ResearchGate Page )
paper-BlockEmulator-arXiv-page

Please cite our paper if you use BlockEmulator as your experiment tool.

Related Publications

The following papers have adopted BlockEmulator as their experimental tool.

paper-infocom-2022
BrokerChain: A Cross-Shard Blockchain Protocol for Account/Balance-based State Sharding (INFOCOM 2022)
PDF
paper-srds-2022.png
Achieving Scalability and Load Balance across Blockchain Shards for State Sharding (SRDS 2022)
PDF
paper-iwqos-2023.png
tMPT: Reconfiguration across Blockchain Shards via Trimmed Merkle Patricia Trie (IWQoS 2023)
PDF
paper-icdcs-2021.png
MVCom: Scheduling Most Valuable Committees for the Large-Scale Sharded Blockchain (ICDCS 2021)
PDF

Team

黄华威
Huawei Huang
Huawei Huang (IEEE Senior Member) is an associate professor at Sun Yat-sen University. He received his Ph.D. in Computer Science and Engineering from The University of Aizu, Japan. His research interests include blockchain, Web3, metaverse, and distributed computing/protocols. He has more than 100 papers published in top journals such as IEEE/ACM ToN, JSAC, TPDS, TDSC, TMC, TC, etc., as well as in prestigious international conferences INFOCOM, ICDCS, SRDS, IWQoS, etc. He has published two blockchain books titled "From Blockchain to Web3 & Metaverse" and "Blockchain Scalability".
郑子彬
Zibin Zheng
Zheng Zibin (IEEE Fellow) received his Ph.D. degree from the Chinese University of Hong Kong, Hong Kong, in 2012. He is a Professor at the School of Software Engineering, Sun Yat-Sen University, China. His current research interests include service computing, blockchain, etc.
林建入
Jianru Lin
Lin Jianru, a research scientist engineer, has rich experience in the design and implementation of decentralized systems, smart contract languages, and virtual machines. He is the translator of the Chinese edition of Designing for Scalability with Erlang/OTP. He is also the technical mentor of HuangLab, a blockchain laboratory at Sun Yat-sen University. His Github
李涛涛
Taotao Li
Taotao Li is a postdoctoral researcher at the School of Software Engineering, Sun Yat-sen University. He received his Ph.D. in cyberspace security from the Institute of Information Engineering, Chinese Academy of Sciences in 2022. The main research interests include blockchain theory and technology application, and the application of cryptography, including sidechain technology, cross-chain protocol, lightweight blockchain, and the application of cryptographic tools in blockchain.
罗肖飞
Xiaofei Luo
Xiaofei Luo is currently a postdoctoral researcher at Sun Yat-sen University. He received his Ph.D. degree in Computer Science and Engineering from the University of Aizu in March 2023. His current research interests include blockchain, payment channel networks, and reinforcement learning.
杨青林
Qinglin Yang
Qinglin Yang, Ph.D., IEEE member, received his Ph.D. in Computer Science and Engineering from the University of Aizu in March 2021. His research interests include intelligent edge cloud computing, federated learning privacy protection, and Web3. He is co-author of the blockchain book "From Blockchain to Web3 & Metaverse", published by Springer, 2023.
陈钦德
Qinde Chen
Qinde is a Ph.D. student at the School of Software Engineering, Sun Yat-sen University. His research interests mainly include blockchain. In August 2022, he joined HuangLab and participated in the development of BlockEmulator.
叶光
Guang Ye
Guang is currently a student pursuing his Master's degree at the School of Software Engineering, at Sun Yat-Sen University. His research interests mainly include Blockchain. Since joining HuangLab as an undergraduate intern in August 2021, he has participated in the development of BlockEmulator.
殷昭伉
Zhaokang Yin
Zhaokang is currently a student pursuing his Master's degree at the School of Software Engineering, at Sun Yat-sen University. His research interest mainly focuses on blockchain. In October 2022, he joined HuangLab to participate in the development of BlockEmulator.
彭肖文
Xiaowen Peng
Xiaowen earned his M.Sc. degree from the School of Computer Science and Engineering, Sun Yat-Sen University, China. His research interests mainly include blockchain. In August 2021, he participated in the development of BlockEmulator.
林岳
Yue Lin
Yue is currently a student pursuing his master's degree at the School of Computer Science and Engineering, at Sun Yat-Sen University. His research interests mainly include Blockchain. Since being a member of Huanglab in May 2021, he has been involved in two papers published in well-known conferences and journals. He is an early developer of the BlockEmulator.
许淼泳
Miaoyong Xu
Miaoyong is currently a student pursuing his master's degree at the School of Computer Science and Engineering, Sun Yat-sen University. His research interests mainly include blockchain. He joined HuangLab in October 2021 and participated in the development of BlockEmulator.
吴均豪
Junhao Wu
Junhao is an undergraduate student at the School of Software Engineering, Sun Yat-sen University. In September 2022, he joined HuangLab as an intern and participated in the development of BlockEmulator.

Acknowledgement

BlockEmulator receives partial support from the following research funds and grants.

Projects Grant No.
National Key Research & Development Program of China, 高通量区块链交易技术 2022YFB2702304
National Natural Science Foundation of China (NSFC), 分片联盟链的关键技术研究 62272496
Fundamental Research Funds for the Central Universities, 区块链分片机制关键技术的研究 23lgbj019

Follow Us

We have released BlockEmulator version 1.0. In the future, an advanced version of BlockEmulator will offer better operability and a user-friendly IDE.

* We have applied a patent for BlockEmulator version 1.0. Academic usage of BlockEmulator is free. However, any commercial usage should be allowed by our team. Email: 478727684@qq.com