Paper 2015/469

Shadow-Bitcoin: Scalable Simulation via Direct Execution of Multi-threaded Applications

Andrew Miller and Rob Jansen


We describe a new methodology that enables the di- rect execution of multi-threaded applications inside of Shadow, an existing parallel discrete-event network sim- ulation framework. Our methodology utilizes function interposition and an application-layer thread library to emulate the ordinary thread interface to the application. Using this methodology, we implement a new Shadow plug-in that directly executes the Bitcoin reference client software. We describe optimizations that enable scalable execution of thousands of Bitcoin nodes on a single ma- chine, and discuss how to model the Bitcoin network for experimental purposes. Finally, we present novel denial- of-service attacks against the Bitcoin software, which exploit low-level implementation artifacts in the Bitcoin reference client. We demonstrate these attacks using our methodology, tools, and models.

Available format(s)
Publication info
Preprint. Minor revision.
Contact author(s)
amiller @ cs umd edu
2015-05-19: received
Short URL
Creative Commons Attribution


      author = {Andrew Miller and Rob Jansen},
      title = {Shadow-Bitcoin: Scalable Simulation via Direct Execution of Multi-threaded Applications},
      howpublished = {Cryptology ePrint Archive, Paper 2015/469},
      year = {2015},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.