<blockquote>
  <p>What does it mean to have > 51% hashing power for mining a block?</p>
</blockquote>

<p>Having more than 50% of the hashing power in the total network means that you are likely to produce more that 50% of the blocks at current difficultly. This <em>alone</em> is not bad at first. </p>

<blockquote>
  <p>How does this link to the analogy between honest node and attacker ?</p>
</blockquote>

<p>However with more than 50% of the blocks produced you could also start mining blocks on another private chain. While mining you could buy something from a merchant with bitcoin. On your private chain you don't include the transaction to the merchant. </p>

<p>Once the merchant has send you the bought goods you could broadcast the private chain. Since you have more blocks (with more hashing work put into) all honest nodes would accept your (previously private) chain as a valid chain. You'd have double spend the coins. The merchant wouldn't have received any coins for the send goods.</p>

<blockquote>
  <p>Also can attacker start mining 2 blocks ahead? or 3 or 4 blocks ahead? </p>
</blockquote>

<p>It only makes sense to mine a block on top of another valid block. You need block <code>A</code> to mine block <code>B</code>. However you don't have to broadcast <code>A</code> to mine <code>B</code>. </p>

CC BY-SA 4.0
2018-07-13T14:01:51.940Z
thanks but this doesn't answer why the attacker cannot mine 2 blocks in advance. How else is double spending possible ?
peter
CC BY-SA 4.0
2018-07-13T15:21:03.137Z
You can mine block *A* but not broadcast it to the network, then mine *B* and have a two block advantage over the network.
0xb10c
CC BY-SA 4.0
2018-07-13T15:36:13.640Z
hold on. block A is mined privately and not broadcasted and followed up by mining block B silently and broadcasted ... but what are the assumptions ? The assumption is that the block A depends on what ? so as to keep the advantage before the attempt can be discarded.
peter
CC BY-SA 4.0
2018-07-13T15:57:17.807Z
Block `A` depends on the current chain tip. With > 51% you might never lose the advantage over the other participants in the network, even if they mine a Block `A'`.
0xb10c
CC BY-SA 4.0
2018-07-13T17:59:26.140Z
ok from a technical perspective u would have to get the 'timestamps' correct otherwise , mining ur own chain secretly would never be accepted by the network if u want to do the doublespend attack.
peter
CC BY-SA 4.0
2018-07-13T19:35:52.927Z
@peter each block’s header includes a reference to the previous block, so you can’t just start mining two (or more) blocks into the future. If we are currently at blockheight N, you must first find blockheight N+1 (referencing N in it), and then you can use N+1 as reference for N+2, etc. Timestamps are included, but are not really relevant to your question.
chytrik
CC BY-SA 4.0
2018-07-13T12:48:02.877Z
2018-07-13T12:48:02.877Z
0xb10c
<p>Can someone please shine some light on this and how it links to the analogy between honest node and attacker ?</p>

<p>also can attacker start mining 2 blocks ahead ? or 3 or 4 blocks ahead ? In the white paper it has only 1 block ?</p>

<blockchain><mining-theory><doublespend><whitepaper>
what does it mean to have >51% hashing power for mining a block?
peter
# what does it mean to have >51% hashing power for mining a block?

(Asked by: username_0 on 2018-07-13)

Can someone please shine some light on this and how it links to the analogy between honest node and attacker ?

also can attacker start mining 2 blocks ahead ? or 3 or 4 blocks ahead ? In the white paper it has only 1 block ?

**Tags:** blockchain, mining-theory, doublespend, whitepaper


---

## 1 answers

### Answer by username_1 on 2018-07-13. Score: 0

> What does it mean to have > 51% hashing power for mining a block?

Having more than 50% of the hashing power in the total network means that you are likely to produce more that 50% of the blocks at current difficultly. This *alone* is not bad at first.

> How does this link to the analogy between honest node and attacker ?

However with more than 50% of the blocks produced you could also start mining blocks on another private chain. While mining you could buy something from a merchant with bitcoin. On your private chain you don't include the transaction to the merchant.

Once the merchant has send you the bought goods you could broadcast the private chain. Since you have more blocks (with more hashing work put into) all honest nodes would accept your (previously private) chain as a valid chain. You'd have double spend the coins. The merchant wouldn't have received any coins for the send goods.

> Also can attacker start mining 2 blocks ahead? or 3 or 4 blocks ahead?

It only makes sense to mine a block on top of another valid block. You need block `A` to mine block `B`. However you don't have to broadcast `A` to mine `B`.

> **Comments:**
> **username_0**: thanks but this doesn't answer why the attacker cannot mine 2 blocks in advance. How else is double spending possible ?  
> **username_1**: You can mine block *A* but not broadcast it to the network, then mine *B* and have a two block advantage over the network.  
> **username_0**: hold on. block A is mined privately and not broadcasted and followed up by mining block B silently and broadcasted ... but what are the assumptions ? The assumption is that the block A depends on what ? so as to keep the advantage before the attempt can be discarded.  
> **username_1**: Block `A` depends on the current chain tip. With > 51% you might never lose the advantage over the other participants in the network, even if they mine a Block `A'`.  
> **username_0**: ok from a technical perspective u would have to get the 'timestamps' correct otherwise , mining ur own chain secretly would never be accepted by the network if u want to do the doublespend attack.  
> **username_2**: @username_0 each block’s header includes a reference to the previous block, so you can’t just start mining two (or more) blocks into the future. If we are currently at blockheight N, you must first find blockheight N+1 (referencing N in it), and then you can use N+1 as reference for N+2, etc. Timestamps are included, but are not really relevant to your question.  

---

