---
# System prepended metadata

title: 5.5 Mining Incentives and Strategies
tags: [Blockchain]

---

# 5.5 Mining Incentives and Strategies

###### tags: `Blockchain`
The following notes are taken from [Coursera](https://www.coursera.org/learn/cryptocurrency/home/week/2)

---
### Game-theoretic analysis of mining
Several strategic decisions
- Which transactions to include in a block
    - Default: any above minimum transaction fee
- Which block to mine on top of
    - Default: longest valid chain
- How to choose between colliding blocks
    - Default: first block heard
- When to announce new blocks
    - Default: immediately after finding them

### Game-theoretic analysis of mining
Assume you control 0 < a < 1 of mining power
Can you profit from a non-default strategy?
:::success
For some a, YES, though analysis is ongoing!
:::

### Forking Attacks
- Certainly possible if a > 0.5
    - may be possible with less 
    - avoid block collisions
- Attack is detectable 
- Might be reversed
- Might crash exchange rate
- ![](https://i.imgur.com/j7CsuE7.png)

### Forking Attacks via Bribery
- **Idea:** building a > 0.5 is expensive. Why not rent instead?
- Payment techniques:
    - out-of-band bribery
    - run a mining pool at a loss
    - insert large "tips" in the block chain

:::success
This is an open problem!
:::

![](https://i.imgur.com/EccNHd6.png)
![](https://i.imgur.com/rLKqxot.png)
![](https://i.imgur.com/QFDlghG.png)
![](https://i.imgur.com/fNXn5wq.png)
![](https://i.imgur.com/bDEyK1t.png)

### Block-withholding Attacks
- Improved strategy for any a if you can win every race
    - ideal network position
    - bribery?
- With a 50% chance of winning races, improved strategy for a > 0.25 
- Not yet observed in practice

### Punitive Forking
- Suppose you want to blacklist transactions from address X
    - freeze an individual's moeny forever
- **Extreme strategy:** annouce that you will refuse to mine on any chain with a transaction from X

:::danger
With a < 0.5, you'll soon fall behind the network
:::

### Feather-forking Strategy
- **To blacklist transactions from X,** announce that you will refuse to mine *directly* on any block with a transaction from X
    - but you'll concede after n confirming blocks
- Chance of pruning an offending block is a^2

### Response to Feather Forking
- **For other miners,** including a transaction from X induces an a^2 chacne of losing a block
- Might be safer to join the blaclist
- Can enforce a blacklist with a < 0.5

:::success
Success depends on convincing other miners you'll fork
:::

### Feather-forking: What is it good for?
- Freezing individual bitcoin owners
    - ransom/extortion
    - law enforcement?
- Enforcing a min transaction fee...

### A Second Look at Transaction Fees
Default policy:
```
priority = sum(input_value * input_age)/size_in_bytes
```
Accept without fees if:
```
priority > 0.576
```
![](https://i.imgur.com/rLzT41D.jpg)

### Summary
- Miners are free to implement any strategy 
- Very little non-default behavior in the wild 
- No complete game-theoretic model exists
