Cryptology ePrint Archive: Report 2015/469

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

Andrew Miller and Rob Jansen

Abstract: 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.

Category / Keywords:

Date: received 18 May 2015

Contact author: amiller at cs umd edu

Available format(s): PDF | BibTeX Citation

Version: 20150519:075354 (All versions of this report)

Short URL:

[ Cryptology ePrint archive ]