-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathintroduction.tex
25 lines (14 loc) · 5.06 KB
/
introduction.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
\chapter{Introduction}\label{chap:introduction}
Bitcoin is the most prominent example for a decentralized cryptocurrency~\cite{1}. Before the development of Bitcoin a decentralized cryptocurrency had been envisioned for many years. It is a system, where a ledger is kept consistent among multiple parties in a peer-to-peer network without a trusted third party. It enables the deployment of electronic cash without a central authority figure like a bank.
For this reason it is an enhancement to the currently established electronic banking system.
Key to the system is a consistent and correct decentralized ledger. Without a central authority, the ledger must be solved in a cooperative, distributed manner.
Since multiple independent parties have to find agreement, the ledger is a Byzantine agreement problem~\cite{garay2015bitcoin}.
Bitcoin assumes an honest majority in a public system~\cite{tschorsch}. Therefore, the consistence and correctness of the ledger can be formulated as a voting problem. However, voting in a public system is challenging. Sybil attacks~\cite{sybil} enable an attacker to forge multiple identities and obtain a dishonest majority. Thus, voting right cannot be bound to identity. Bitcoin binds voting right to computational power through cryptographic puzzles. A peer has to solve such a puzzle in order to participate in the system. Through this mechanism Bitcoin is able to protect against Sybil attacks.
This process, also known as mining, consumes computational resources of the peer. Mining is incentivized to achieve participation in the system. If a miner mines a block, he receives a mining reward. Without a mining reward there is no economical reason to spend computational resources on Bitcoin. Every party competes for mining rewards and as a result the overall computational power is spread across the system, which leads to a decentralized system.
As a result of the incentive system, miners strive for the best strategy to maximize rewards. A mining protocol maximizing rewards is called incentive compatible. The original Bitcoin mining protocol is assumed to be incentive compatible~\cite{1}. However, \citeauthor{eyal} show the existence of deviant mining protocols with greater rewards~\cite{eyal}, resulting in a so called revenue gain. Miners executing such protocols are called selfish miners and obtain a greater voting power than their computational power. The results of the attack are a tilted honest majority balance and a reduced performance of the overall system.
The central goal of this master thesis is to analyze the impact of selfish mining as an attack on blockchain systems. The contributions of this thesis are threefold. The first is the implementation of a new analytic blockchain model, the Selfish Rumor Model. It is based on the blockchain model introduced by \gopalan , which utilizes rumor spreading for an abstract network representation. This model provides a representation of block propagation and networking factors, which can be used to study networking effects in blockchain systems. The Selfish Rumor Model can be seen as an enhancement to the blockchain model introduced by \gopalan . The biggest change is the inclusion of adversarial mining strategies such as selfish mining. However, those enhancements are fundamental to the behavior of the system and as such it is to be considered a new model.
The second contribution is the implementation of the Selfish Rumor Model Simulator as a discrete event simulation, which is based on Simpy~\cite{simpy}.
Abstracting away unnecessary network details in the Selfish Rumor Model enables the simulator to simulate more system time. Thus, the simulator can produce statistical significant results. The simulator is validated against Bitcoin using block propagation delay distribution data obtained from the Bitcoin Network Monitor~\cite{BitcoinNetworkMonitor}. As a result we obtain parameter setups for the Selfish Rumor Model Simulator with a block propagation similar to Bitcoin.
The third contribution studies the impact of selfish mining utilizing those parameter setups. We analyze the conditions in which selfish mining produces revenue gain. Our first analysis focuses on a homogeneous network setup, where no peer possesses a networking advantage. In contrast to the results of \citeauthor{eyal} we find that only increasing the relative share of computational resources does not result in a significant revenue gain. In addition we observe, that honest mining produces a slight revenue gain if the miner possesses enough computational resources.
As a result we analyze the performance of selfish mining in scenarios, where the selfish miner possesses a networking advantage. We find that with a significant networking advantage selfish mining increases revenue.
In addition, we clearly see a decreased growth of the blockchain, if a miner with a significant share of computational resources executes selfish mining. However, the impact of selfish mining on the growth of the blockchain is not proportional to revenue gain. In accordance to \citeauthor{eyal}, this proofs that selfish mining reduces the overall system performance.