On the Scalability and Security of Bitcoin - Research Collection

On the Scalability and Security of Bitcoin - Research Collection

Research Collection Doctoral Thesis On the Scalability and Security of Bitcoin Author(s): Decker, Christian Publication Date: 2016 Permanent Link: h...

737KB Sizes 0 Downloads 4 Views

Recommend Documents

On the Security and Scalability of Proof of Work - Scaling Bitcoin
Faster payments. Bigger block size. More payments / slower propagation. 10 minutes. 2.5 minutes. 1 minute. 20 seconds. B

Bitcoin and Beyond - Cyber Security Summit
Silk Road. – An online anonymous marketplace for “censorship-free” commerce. • Bi)nstant. – Charlie Shrem plea

Security Mechanisms in Bitcoin - IDA.LiU.se
network will agree upon this order through a proof of work system called hashcash [6]. This is the main security feature

Design and security analysis of Bitcoin infrastructure using application
the cryptographic algorithms underlying the Bitcoin Protocol, through applications allowing ...... be obtained from the

Addressing Scalability and Robustness in Security Games - Teamcore
each of these two threads alone fails to work in key real world security games. ... two research threads to yield a scal

Research on legislation in data privacy, security and the - ITU
Jul 20, 2003 - property, digital rights management and anti-circumvention, and a network security level, incorporating a

A Protocol for High-Security Bitcoin Storage - Bitcoin Armory
Feb 10, 2017 - Factory-sealed computer with 2 USB ports and a camera [Amazon: ​2016 ... manufacturer than the drives f

Architecture and Scalability - CareEvolution
ARCHITECTURE AND SCALABILITY. 2 www.careevolution.com. Background. Predicting the evolutionary growth of any given RHIO

Security Concerns and Issues for Bitcoin - International Journal of
proof of work is generated. Bitcoin uses the Hashcash proof of work. Bitcoin's use of a Proof of Work system is one of t

Section 702 and the Collection of International - Just Security
May 13, 2014 - 86. * Professor of Law, Georgetown Law. Special thanks to William Banks, Orin Kerr, and David Kris for th

Research Collection

Doctoral Thesis

On the Scalability and Security of Bitcoin Author(s): Decker, Christian Publication Date: 2016 Permanent Link: https://doi.org/10.3929/ethz-a-010619000

Rights / License: In Copyright - Non-Commercial Use Permitted

This page was generated automatically upon download from the ETH Zurich Research Collection. For more information please consult the Terms of use.

ETH Library

DISS. ETH NO. 23233

On the Scalability and Security of Bitcoin

A thesis submitted to attain the degree of DOCTOR OF SCIENCES of ETH ZURICH (Dr. sc. ETH Zurich)

presented by

Christian Decker MSc, ETH Zurich

born on 01.10.1984

citizen of Germany and Switzerland

accepted on the recommendation of Prof. Dr. Roger Wattenhofer, examiner Prof. Dr. Emin G¨ un Sirer, co-examiner 2016

Abstract Since its inception in late 2008, Bitcoin has enjoyed a rapid growth, both in value and in the number of transactions. Its success is mostly due to innovative use of a peer-to-peer network to implement all aspects of a currency’s lifecycle – from creation to its transfer between users. Bitcoin offers cash-like transactions that are near-instantaneous and non-refundable, while at the same time allowing truly global transactions, processed at the same speed as local ones. It offers a public transaction history, enabling trustless auditability, and it introduces many new and innovative use-cases such as smart property, micropayments, contracts, and escrow transactions for dispute mediation. However, the same features that make Bitcoin attractive for its end-users are also its main limitations. Its decentralized nature limits the number of transactions and the speed at which transactions can be performed and confirmed. The problem with the slow confirmations is compounded with the semantics of the confirmations which are not final, requiring multiple confirmations and further delaying acceptance of a transaction. In the first part of the thesis we analyze whether the current Bitcoin protocol scales and what the scalability limits are. We find that Bitcoin does not scale, because its synchronization mechanism, the blockchain, limits the maximum rate of transactions the network can process. In order to address the scalability problem we propose Duplex Micropayment Channels, which increase the rate at which Bitcoin transfers can be performed by several orders of magnitude, by moving the transfers off the blockchain and using the blockchain solely for dispute mediation. Another form of scalability problem is the fact that more and more blockchain based applications are being created, each

with their own small isolated blockchain, and vulnerable to attacks. We present PeerCensus, a subsystem that acts as a certification authority, manages peer identities in a peer-to-peer network and does not store application specific data in the blockchain. Using PeerCensus, any number of applications can share a single blockchain, decoupling confirmations from block generation rate and enhancing Bitcoin and similar systems with strong consistency. Being a relatively new technology, Bitcoin has a number of new security challenges and innovative properties. We analyze these properties and challenges in the second part of the thesis. The first novel property is that the transaction history, in the form of the blockchain, is public and accessible by anyone. Making use of the open nature of the blockchain, we were able to dispell claims by MtGox, once the world’s largest Bitcoin exchange, that a bug in the Bitcoin protocol was used in a large scale attack to defraud them. We then use the blockchain to build a prototype of an audit protocol that allows a fiduciary, such as a Bitcoin exchange, to demonstrate that its assets cover its liabilities, without resorting to trusted third parties. Bitcoin also shifts the responsibility of managing and securing funds from a trusted third party to the end-user, which may not have the necessary tools to protect her funds. We show how a merchant may accept fast-payments, i.e., transactions without waiting for confirmations, with reasonable security against doublespending attacks by observing how transactions propagate in the network. Finally, we present a prototype of a secure device that stores private keys in tamper resitant storage and allows the user to independently verify a payment before authorizing it.

Abstract Seit ihrer Einf¨ uhrung Ende 2008 hat die virtuelle W¨ ahrung Bitcoin einen massiven Zuwachs sowohl in Wert als auch in der Anzahl Transaktionen verzeichnet. Der Erfolg kann gr¨ osstenteils auf die innovative Verwendung eines Peer-to-Peer Netzwerks zur¨ uckgef¨ uhrt werden, das alle Aspekte einer W¨ ahrung implementiert – von der Erstellung zu den Transfers zwischen Endbenutzer. Bitcoin bietet Bargeld a ¨hnliche Transaktionen die nahezu instantan und nicht r¨ uckzahlbar sind, zugleich sind diese Transaktionen aber auch global, und werden stets mit derselben Geschwindigkeit verarbeitet werden unabh¨ angig davon ob sie interkontinental oder lokal sind. Bitcoin stellt eine o ¨ffentliche Transaktions-Verlauf zur Verf¨ ugung, was wiederum unabh¨ angige Audits, Smart-Property, Micropayments und Contracts erm¨ oglicht. Allerdings sind es diese Eigenschaften die f¨ ur den Endbenutzer attraktiv sind auch die gr¨ ossten Einschr¨ ankungen. Die dezentrale Architektur beschr¨ ankt die Anzahl Transaktionen und die Geschwindigkeit mit der sie ausgef¨ uhrt und best¨ atigt werden k¨ onnen. Dar¨ uber hinaus sind die Best¨ atigungen nicht endg¨ ultig, was dazu f¨ uhrt dass man auf mehrere Best¨ atigungen warten muss, was die Annahme von Transaktionen verz¨ ogert. Im ersten Teil dieser Dissertation analysieren wir ob das jetzige Bitcoin Protokoll skaliert und was die heutigen Grenzen sind. Unsere Resultate zeigen dass Bitcoin nicht skaliert: die Blockchain, der zentrale Synchronisierungs-mechanismus, beschr¨ ankt die maximale Transaktionsrate die das Netzwerk verarbeiten kann. Um das Skalierbarkeitsproblem zu l¨ osen, schlagen wir das Duplex Micropayment Channel Protokoll vor, dass die Rate der Transaktionen die ausgef¨ uhrt werden k¨ onnen um mehrere Gr¨ ossenordnungen erh¨ oht, indem die Blockchain nicht mehr bei jedem Transfer verwendet wird, sondern nur noch um Konflikte zu l¨ osen.

Eine andere Form von Skalierbarkeitsproblemen ergibt sich daraus dass viele Blockchain basierte Applikationen erstellt werden, jede mit ihrer eigenen isolierten Blockchain, die Angreifbar ist. Wir stellen PeerCensus vor, ein Subsystem dass als Certification Authority agiert, Identit¨ aten im Peer-to-Peer Netzwerk verteilt und Applikationsagnostisch ist, also keine Applikationsdaten in der Blockchain speichert. PeerCensus erm¨ oglicht es dass eine einzelne Blockchain von einer Vielzahl von Applikationen genutzt werden kann, dass Best¨ atigungen der Operationen von Bl¨ ocken entkoppelt werden und verst¨ arkt die Garantien von Bitcoin und a ¨hnlichen Systemen. Da es sich bei Bitcoin um eine relativ neue Technologie handelt, hat Bitcoin einzigartige Herausforderungen und innovative Eigenschaften. Wir analysieren diese Eigenschaften und Herausforderungen im zweiten Teil der These. Die erste Eigenschaft ist dass der gesamte Transaktions-Verlauf, in Form der Blockchain, o ¨ffentlich ist und kann von jedermann eingesehen werden. Diese Offenheit der Blockchain hat es uns erm¨ oglicht die Behauptungen von MtGox, einst der gr¨ osste Bitcoin Exchange der Welt, zu entkr¨ aften dass ein Fehler im Bitcoin Protokoll verwendet wurde um den Exchange zu bestehlen. Basierend auf der Blockchain haben wir einen Prototypen eines Protokolls erstellt mit dem es f¨ ur einen Treuh¨ ander, wie zum Beispiel ein Exchange, zu beweisen dass er u ¨ber die n¨ otigen Aktiva verf¨ ugt um die Passiva zu decken, ohne vertrauliche Information offenzulegen. Bitcoin verschiebt die Zust¨ andigkeit der Verwaltung und Absicherung der Gelder von einem vertrauensw¨ urdigen Zwischenh¨ andler, e.g., Banken, auf den Endbenutzer, der eventuell die n¨ otigen Werkzeuge nicht zur Verf¨ ugung hat. Wir zeigen wie ein H¨ andler schnelle Zahlungen annehmen kann, i.e., Transaktionen die noch nicht in der Blockchain best¨ atigt wurden, und dabei das Risiko eines Doublespends senken kann indem er die Verbreitung der Transaktion im Netzwerk beobachtet. Zuletzt stellen wir einen Prototypen eines sicheren Ger¨ ates vor, dass die Private Keys sichert und es dem Nutzer erm¨ oglicht Transaktionen unabh¨ angig zu verifizieren bevor er sie autorisiert.