Week 1

1. For the first week, we did some readings to familiarize ourselves with the way bitchoin blockchain works, and we tried to discussed what questions we want to address in our model and what factors do we want to take account in.

2. After Kira and I took some time revieweing some necessary probability knowledge(which is new to me), we started reading papers, blogs, and statistics about blockchain creation. Since most of us are unfamiliar with the bitcoin industry, basically we have to discuss every detail.

3. At the end of week, we plan to fetch statistical data by looking at the opensource projects out there.

Week 2

For the second week, we continued reading papers and started to understand Gun attack model and Fletcher’s critics towards his model. We used different Markov’s chain to model Gun attack and read a lot of background readings.

Kira and I started to think of models to simulate propagation processes. I was interested in the effects of propagation delay, as well as sybil attack; Kira was interested in transaction fee, especially when mining reward decreases, and mining is only motivated by transaction fees.

Week 3

In this week, Kira and I started some more formal models to describe Bitcoin mining process.

1) In my model, I tried to write a program that simulates Bitcoin mining and propagation of mining activity. In each step of the program, either a bitcoin is mined, or a certain miner’s bitcoin mined is propagated. The user gives the program a certain number of miners, and the program will run 2000 steps to simulate events based on rates. It is hypothesized that when the sum of propagation rates is significantly larger than the sum of computing rates (100 times larger), miners should have a fair revenue as their percentage of computing power.

2) Kira is working on a model that simulates how transaction fee could stay in an equilibrium. Merchants will pay transaction fee in order for their transactions to be processed, and miners will want higher transaction fee as a motivation for their mining activity. Kira is thinking about whether two or more rates of higher transaction fee will be possible as some customers will want their transactions faster while some may not care about the speed so that they wouldn’t want to pay a higher fee.

Week 4/5/6

In these weeks, I was working on a simulation programs that model Bitcoin propagation processes.


1) The first miner is assigned a certain computing power from 0.1 to 0.9, and propagating power ranging from 0.1 to 0.9;

2) The rest of the computing power and propagating power are assigned evenly among the rest of the miners(depending on how many miners the user wants at the beginning of the game). So that all miners except the first miner have equal power.


1) Whether different computing power will result in unfair share of the revenue.

2) What’s the best propagation strategy for a miner given a certain computing rate? Is it always beneficial for a powerful miner (alpha >0.5) to withhold information?

The experiment results and graphs are shown in the final report.

Week 7/8

In these two weeks, I developed a new program that explores further the results of the previous program.


1) A group of miners are represented by a set of vectors with the sum =1. Each vector represents one miner’s computing power. Their propagating power is assigned evenly among all miners regardless of their computing power, only depends on the sum of propagating power.

2) The sum of propagation ranges from 1,5, 25,125,625,3125,15625 in each round.

3) A curve of each miner’s percentage of revenue is recorded which indicates their revenue with regard to the sum of propagation power.


1) Given a certain computing rate, is it beneficial for him to withhold propagation?

2) When a miner is doing Gun’s attack, does the unfair revenue mostly depend on miner’s own computing power, or does it also depend other miners’ computing power and their strategy?

The experiment results are shown in the final report.

Week 9/10

In these two weeks, we analyzed experiment result and compared the results to the strategies written in Majority is not Enough: Bitcoin Mining is Vulnerable.

The conclusions I want to reach is to answer the questions that whether Bitcoin protocol is incentive-compatible. Therefore the experiment results only make sense when I consider them in reality. Although the experiment results show that propagation delay would give miners of high propagation power unfair share than their computing power, the propagation delay has to be very low to reach that. Therefore in reality it is unlikely to happen. However, in the paper Majority is not Enough, they described a strategy that is dishonest. In that case, when the miner intentionally selects when to propagate and when to withhold, the miner can earn more than their fair share by manipulating propagation.

I reexamined their paper and organized my final report in these two weeks.