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 (arXiv )
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-Broker2Earn-INFOCOM24.png
Broker2Earn: Towards Maximizing Broker Revenue and System Liquidity for Sharded Blockchains (INFOCOM 2024)
PDF
paper-AccountMig-INFOCOM24.png
Account Migration across Blockchain Shards using Fine-tuned Lock Mechanism (INFOCOM 2024)
PDF
paper-ToN23-MVCom.png
Scheduling Most Valuable Committees for the Sharded Blockchain (ToN/TNet 2023)
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-www-2026-liquiditypool.jpg
LiquidityPool: Game-Theoretic Analysis of Stakeholder Revenue in Ranking-Dependent DeFi (WWW 2026)
PDF
Paper-Justitia-INFOCOM-2025.png
Justitia: An Incentive Mechanism towards the Fairness of Cross-shard Transactions (INFOCOM 2025)
PDF
Paper-BlockEmulator-TSC-2025.png
BlockEmulator: An Emulator Enabling to Test Blockchain Sharding Protocols (TSC 2025)
PDF

Tutorial (Bilibili Videos)

Learn how to use BlockEmulator from our videos.

Video 1: How to launch BlockEmulator (In Chinese) Video 2: How to conduct experiments and How to find log results (In Chinese)

Team

黄华威
Huawei Huang
Huawei Huang (IEEE Senior Member) is a professor (full) 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 is recognized as one of the top 2% scientists by Stanford University. He has published more than 100 papers in top journals, including IEEE/ACM ToN, JSAC, TPDS, TDSC, TMC, and TC, as well as at prestigious international conferences such as INFOCOM, WWW, and ICDCS. He has published two blockchain books titled "From Blockchain to Web3 & Metaverse" and "Blockchain Scalability".
林建入
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
罗肖飞
Xiaofei Luo
Xiaofei Luo worked as a postdoctoral researcher at Sun Yat-sen University (2022-2025). He received his Ph.D. 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, 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 a co-author of the blockchain book "From Blockchain to Web3 & Metaverse", published by Springer, 2023.
QindeChen
Qinde Chen
Qinde Chen 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 Ye is currently a Master's student of the School of Software and 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. He redesigned and implemented an advanced version of BlockEmulator -- BlockEmulator-X (coming soon).
殷昭伉
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 the early version of BlockEmulator.
林岳
Yue Lin
Yue Lin received his M.Sc. degree from the School of Computer Science and Engineering at Sun Yat-Sen University in 2024, China. His research interests mainly include Blockchain. Since joining Huanglab in May 2021, he has been involved in two papers published at well-known conferences and journals. He participated in the development of the early version of BlockEmulator.
许淼泳
Miaoyong Xu
Miaoyong Xu received his M.Sc. degree from the School of Computer Science and Engineering at Sun Yat-Sen University in 2025, China. His research interests mainly include blockchain. He joined HuangLab in October 2021 and participated in the development of BlockEmulator.
吴均豪
Junhao Wu
Junhao Wu is a Ph.D 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.
Baozhou
Baozhou Xie
Baozhou Xie is currently a Master's student of the School of Software and Engineering at Sun Yat-Sen University. His research interest mainly focuses on blockchain. In September 2024, he joined HuangLab to help develop BlockEmulator. He also led the development of the first version of BrokerChain Testnet.
FeihongHU
Feihong Hu
Feihong Hu is currently a Master's student of the School of Software and Engineering at Sun Yat-Sen University. His research interest mainly focuses on blockchain. In September 2024, he joined HuangLab to help develop BlockEmulator. He contributed to the development of the first version of BrokerChain Testnet.
ZhouYang
Yang Zhou
Yang Zhou is currently a Master's student of the School of Software and Engineering at Sun Yat-Sen University. His research interest mainly focuses on blockchain. In September 2025, he joined HuangLab to help develop BlockEmulator and BrokerChain Testnet/Wallet.
JianboXiong
Jianbo Xiong
Jianbo Xiong is currently a Master's student of the School of Software and Engineering at Sun Yat-Sen University. His research interest mainly focuses on blockchain. In September 2025, he joined HuangLab to help develop BlockEmulator and maintain BrokerChain Testnet.

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
GuangDong Basic and Applied Basic Research Foundation (广东省杰青项目), 区块链分片机制关键技术的研究 2025B1515020053

Follow Us

We have released BlockEmulator version 1.0. In the future, an advanced version of BlockEmulator (BlockEmulator-X) 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

* If you want to communicate with other BlockEmulator users, welcome to join our WeChat Group (BlockEmulator 用户群). The administrator's WeChat ID: Qinglinyang