<p>Selfish mining is based on delaying the propagation of the blocks a selfish miner (or pool) has mined. Following such approach, other miners continue mining on the top of an old block, wasting their time and  hash power. </p>

<p>There are different situations depending on how many blocks a selfish mining pool is able to mine in a row before any other node mines one (all the possible cases are described in the paper you cited). Moreover, selfish mining also requires fast block propagation through the network, since in some of the situations they try to take advantage of other nodes mining on the same block as them, virtually extending the hash power of the selfish mining pool. </p>

<p>Block propagation speed matters since when the blockchain forks in two branches of the same length, nodes start mining by default on the top of the first block they hear about. </p>

CC BY-SA 3.0
2017-04-29T12:24:08.163Z
Thank you very much for the answer! But, it's still not clear why they can get more revenue than they deserve :). Am I missing something?
user153465
CC BY-SA 3.0
2017-04-29T14:57:45.127Z
It's about making others waste time while you are the only one mining on the top of the longest branch. If I can get two blocks before you get one, when you try to broadcast your block I can broadcast two and invalidate yours. Then, all the effort you have invest on mining your block is lost. In a similar way, if I find a block before you and when you announce yours I announce mine, If I can get my block accepted instead of yours I have made you lose all the time between I found my block and you found yours.
sr_gi
CC BY-SA 3.0
2017-09-08T21:03:01.250Z
The question is: does the advantage that selfish mining offers outweigh the lost revenue that can happen if you’re too slow to publish your private block? I mean, you wait until the network finds a block to publish your private block, thus risking lost revenue if the network accepts the competing block instead of your (private) one. So, does this disadvantage outweigh the reward from a successful selfish mine (finding two blocks while the rest of the network only finds one)?
runeks
CC BY-SA 3.0
2017-04-28T23:04:41.340Z
2017-04-28T23:04:41.340Z
sr_gi
<p>It's not clear to me why attacker can gain more revenue if it does "selfish mining" attack than its revenue when it behaves honestly. </p>

<p>I'm aware of this <a href="https://www.cs.cornell.edu/~ie53/publications/btcProcFC.pdf" rel="nofollow noreferrer">paper</a>. </p>

<attack><selfish-mining>
Why is attacker revenue in the selfish mining disproportional to its hash-power?
user153465
# Why is attacker revenue in the selfish mining disproportional to its hash-power?

(Asked by: username_0 on 2017-04-28)

It's not clear to me why attacker can gain more revenue if it does "selfish mining" attack than its revenue when it behaves honestly.

I'm aware of this [paper](https://www.cs.cornell.edu/~ie53/publications/btcProcFC.pdf).

**Tags:** attack, selfish-mining


---

## 1 answers

### Answer by username_1 on 2017-04-28. Score: 3 | Accepted answer

Selfish mining is based on delaying the propagation of the blocks a selfish miner (or pool) has mined. Following such approach, other miners continue mining on the top of an old block, wasting their time and hash power.

There are different situations depending on how many blocks a selfish mining pool is able to mine in a row before any other node mines one (all the possible cases are described in the paper you cited). Moreover, selfish mining also requires fast block propagation through the network, since in some of the situations they try to take advantage of other nodes mining on the same block as them, virtually extending the hash power of the selfish mining pool.

Block propagation speed matters since when the blockchain forks in two branches of the same length, nodes start mining by default on the top of the first block they hear about.

> **Comments:**
> **username_0**: Thank you very much for the answer! But, it's still not clear why they can get more revenue than they deserve :). Am I missing something?  
> **username_1**: It's about making others waste time while you are the only one mining on the top of the longest branch. If I can get two blocks before you get one, when you try to broadcast your block I can broadcast two and invalidate yours. Then, all the effort you have invest on mining your block is lost. In a similar way, if I find a block before you and when you announce yours I announce mine, If I can get my block accepted instead of yours I have made you lose all the time between I found my block and you found yours.  
> **username_2**: The question is: does the advantage that selfish mining offers outweigh the lost revenue that can happen if you’re too slow to publish your private block? I mean, you wait until the network finds a block to publish your private block, thus risking lost revenue if the network accepts the competing block instead of your (private) one. So, does this disadvantage outweigh the reward from a successful selfish mine (finding two blocks while the rest of the network only finds one)?  

---

