<p>"Why are miners allowed to not announce their mined blocks to the network?" you can not prohibit to mine blocks and not announce them. if you do some mining-calculations on your mining-hardware, you can do that offline. no one knows that until you publish your block(s).</p>

<p>"So then, why not just force blocks into the main chain the moment they are mined?" you can not know assuredly the timestamp when a block was mined because the miner can write an arbitrary timestamp in the block. furthermore all bitcoin-nodes/-miners should/will follow the <em>longest</em> block-chain by definition. the timestamps in the blocks does not really matter.</p>

<p>this "private mining" and resulting doublespend-attacks are absolutely possible. the bitcoin community trust that no one ever will have enough hashing-power to do this attack.</p>

CC BY-SA 4.0
2018-08-15T13:20:41.293Z
2018-08-15T13:20:41.293Z
anion
<p>My question relates to a 51% Attack. As far as I understand, for this to work the miner must have a secret fork of the main blockchain, which he will later announce, whenever it becomes longer than the main blockchain, thus reverting a previous transaction and permitting double-spending.</p>

<p>So then, why not just force blocks into the main chain the moment they are mined? What is the rationale for these private forks? </p>

CC BY-SA 4.0
2018-08-15T12:01:00.557Z
How do you propose that works? No one else in the network knows that someone has mined a block until they broadcast it, so there is no way to force them to broadcast it
Raghav Sood
CC BY-SA 4.0
2018-08-16T12:07:20.367Z
Couldn't we just force the broadcast once a block is mined?
Erdös
CC BY-SA 4.0
2021-07-11T21:03:13.497Z
@Erdös How would you force it exactly? What mechanism would *you* use to force *me* to advertise blocks that *I* mined?
David Schwartz
<blockchain><mining-theory>
Why are miners allowed to not announce their mined blocks to the network?
Erdös
# Why are miners allowed to not announce their mined blocks to the network?

(Asked by: username_0 on 2018-08-15)

My question relates to a 51% Attack. As far as I understand, for this to work the miner must have a secret fork of the main blockchain, which he will later announce, whenever it becomes longer than the main blockchain, thus reverting a previous transaction and permitting double-spending.

So then, why not just force blocks into the main chain the moment they are mined? What is the rationale for these private forks?

**Tags:** blockchain, mining-theory

> **Comments:**
> **username_1**: How do you propose that works? No one else in the network knows that someone has mined a block until they broadcast it, so there is no way to force them to broadcast it  
> **username_0**: Couldn't we just force the broadcast once a block is mined?  
> **username_2**: @username_0 How would you force it exactly? What mechanism would *you* use to force *me* to advertise blocks that *I* mined?  

---

## 1 answers

### Answer by username_3 on 2018-08-15. Score: 2

"Why are miners allowed to not announce their mined blocks to the network?" you can not prohibit to mine blocks and not announce them. if you do some mining-calculations on your mining-hardware, you can do that offline. no one knows that until you publish your block(s).

"So then, why not just force blocks into the main chain the moment they are mined?" you can not know assuredly the timestamp when a block was mined because the miner can write an arbitrary timestamp in the block. furthermore all bitcoin-nodes/-miners should/will follow the *longest* block-chain by definition. the timestamps in the blocks does not really matter.

this "private mining" and resulting doublespend-attacks are absolutely possible. the bitcoin community trust that no one ever will have enough hashing-power to do this attack.


---

