Title: Improvements in Selfish Mining Speaker: Ayelet Sapirstein Abstract: Mining is the process of adding blocks of transaction to the Bitcoin’s block chain. The block chain serves to confirm transactions in the network. Nodes use the block chain to verify the legality of transactions. Each block contains a proof of work to be considered valid. This proof of work is verified by other nodes in the network. Mining is designed to be difficult so that the frequency of blocks found would be low and constant. Therefore if block creation rate decreases, the difficulty of block creation descends and vice versa. For this reason we are interested in the percentage of blocks we build in the network, instead of the quantity of blocks. The primary purpose of mining is to reach security in the Bitcoin network. Mining is also used to introduce Bitcoins into the system: When a miner discovers a block, the discoverer is paid for any transaction fees and newly created coins. A selfish mining attack is a strategy in which a mining pool selectively publishes or withholds blocks, instead of publishing blocks to the network immediately when found. In this strategy the attackers may sacrifice their own revenue but also often publish many blocks all at once and thus are forcing the rest of the network to discard blocks and lose revenue. This does reduce the attackers revenue in the short term, but it reduces everyone else’s revenue even more. Therefore it increases the percentage of blocks the attackers build in the network, that means increasing the attackers rewards. The attack strategy is as follows: The attacker keeps its own private chain, which is separate from the public chain that the rest of the network works on. At the beginning, the private chain and the public chain start out the same. The attacker always mines on the private chain and keeps any blocks that he finds private. If the public chain is longer than the private chain the attackers adopts the public chain and starts a new private chain that starts out the same as the public chain. In other cases, the attackers publish a portion of their private chain, In order to force the rest of the network to discard blocks, and accept the private chain blocks. This strategy is described extensively in the paper ”Majority is not Enough: Bitcoin Mining is Vulnerable”. In this project we introduce a new strategy that improves the selfish mining strategy for the selfish attackers. We describe an MDP that models the scenario of honest miners that act according to the protocol and attackers who keep their own private chain, as in the original paper, and choose to take action that will yield them the most gains. The optimal strategy for the attackers depends on their computing power in the network and their ability to convince honest miners to mine on their blocks chain instead of the honest chain when they see the same length chains. Therefore we compute the best deterministic selfish mining strategy for different parameters of the network, and for each parameter we get the optimal strategy for them by solving the MDP problem.