Table of Contents
Fetching ...

iblock: Accurate and Scalable Bitcoin Simulations with OMNeT++

Niccolò Scatena, Pericle Perazzo, Giovanni Nardini

TL;DR

The paper introduces iblock, a C++ OMNeT++-based Bitcoin simulator designed to overcome inefficiencies of prior high-level implementations. It presents a modular architecture with BlockchainManager, MempoolManager, Wallet, Miner, and TransactionGenerator apps, enabling cross-layer experiments across network, consensus, and data management. The authors validate iblock using Bitcoin normal operation and selfish mining scenarios and demonstrate scalability advantages through extensive performance analyses and a BlockSim comparison. The work provides a practical, efficient platform for detailed Bitcoin protocol studies and makes the code publicly available for researchers and practitioners.

Abstract

This paper proposes iblock, a comprehensive C++ library for Bitcoin simulation, designed for OMNeT++. iblock offers superior efficiency and scalability with respect to state-of-the-art simulators, which are typically written in high-level languages. Moreover, the possible integration with other OMNeT++ libraries allows highly detailed simulations. We measure iblock's performance against a state-of-the-art blockchain simulator, proving that it is more efficient at the same level of simulation detail. We also validate iblock by using it to simulate different scenarios such as the normal Bitcoin operation and the selfish mine attack, showing that simulation results are coherent with theoretical expectations.

iblock: Accurate and Scalable Bitcoin Simulations with OMNeT++

TL;DR

The paper introduces iblock, a C++ OMNeT++-based Bitcoin simulator designed to overcome inefficiencies of prior high-level implementations. It presents a modular architecture with BlockchainManager, MempoolManager, Wallet, Miner, and TransactionGenerator apps, enabling cross-layer experiments across network, consensus, and data management. The authors validate iblock using Bitcoin normal operation and selfish mining scenarios and demonstrate scalability advantages through extensive performance analyses and a BlockSim comparison. The work provides a practical, efficient platform for detailed Bitcoin protocol studies and makes the code publicly available for researchers and practitioners.

Abstract

This paper proposes iblock, a comprehensive C++ library for Bitcoin simulation, designed for OMNeT++. iblock offers superior efficiency and scalability with respect to state-of-the-art simulators, which are typically written in high-level languages. Moreover, the possible integration with other OMNeT++ libraries allows highly detailed simulations. We measure iblock's performance against a state-of-the-art blockchain simulator, proving that it is more efficient at the same level of simulation detail. We also validate iblock by using it to simulate different scenarios such as the normal Bitcoin operation and the selfish mine attack, showing that simulation results are coherent with theoretical expectations.
Paper Structure (18 sections, 9 figures, 3 tables)

This paper contains 18 sections, 9 figures, 3 tables.

Figures (9)

  • Figure 1: OMNeT++ module hierarchy.
  • Figure 2: iblock node architecture. Solid arrows indicate DMCs, while dashed ones indicate direct messages.
  • Figure 3: Number of blocks mined by each miner. Confidence intervals at 95% level, with 30 samples. Red lines represent expected theoretical values.
  • Figure 4: Mining rewards (in satoshis) per miner, including block subsidies and fees.
  • Figure 5: Number of blocks mined by each miner. Confidence intervals at 95% level, with 30 samples. Red lines represent expected theoretical values.
  • ...and 4 more figures