Updates & Forks - Discussion

The coinbase transaction (blockreward + all tx fee’s) is unspendable for 100blocks

2 Likes

Perfect, exactly what I was looking for. Thanks!

1 Like

That is a bad understanding/conclusion of BTC security told by a BCH point of view, if it’s not in the blockchain (if it is still only in th mempool) then it is not processed yet, so for BTC wait 6 confirmations ~ 60 minutes, even if BCH removed RBF (replace-by-fee) feature remember if it is not in the chain it is not confirmed and can be trowen away out of the mempool or even never processed. Would you trust your bank employee a deposit of cash without an electronic-receipt that the DB was updated and leave the cash on the employee desk only? the mempool is the desk only, the blockchain the database.
Is BTC good for paying coffe need to wait 60 minutes? Not so much, I would use BCH instead, but would you be malicious paying coffe?

2 Likes

Hi,
several lottery did happen up to 2018 according to this graph https://blockchain.info/charts/n-orphaned-blocks,


there were up to 7 simultaneous accidental forks. But you know even 10 minutes looks small time interval the world is very big and there are a lot o miners all over, Asia, America, Russia, Iceland, all over planet Earth … so it takes a lot of time to spread a block all over to all nodes in all world (just think about those nodes over satellite link!! even if the protocol ‘thinks’ that 10 minutes is enough).
Regards,
Carlos

Btc on chain is good for big transactions. If you want instant settlement for small payments, you can use the lightning network.

2 Likes

10 minutes blocktime is a trade off between fast transaction clearing and minimize accidental forks.
Thanks for the link

1 Like

I just finish watching the hard fork definition.
that means the community of the bitcoin will create an fork between the old nodes and new updated nodes?
And what will happen to those old nodes who are not yet receive an update?
Will be exclude from the blockchain and must update itself?

In a hardfork, if not everybody updates the software with new consensus rules, the blockchain will fork at this blockheight. The miners and full node users need to install the new update. So you will have 2 identical blockchains. Only the chain with new consensus rules will accept blocks from miners who updated. While other miners keep mining on the other blockchain. But this get communicated well when there is a fork

How is it possible for both chains of an Accidental fork to continue on for multiple blocks each chain ? For Instance if block 5 is the fork how do we get 6 ,7,8 block height from both chains . Why doesn’t the network pick the chain with most POW right away at block 6 ?
I hope this question made sense . Lol

You visuallize it like a hardfork. Just every node has it own mempool and blockchain. But the gossip propagation, takes a bit of time. But it doesn’t matter. If 2 miners mine a block on the same block height, the chain has basically 2 versions for some and eventually all nodes. Then it al depends on wich of those 2 versions, the next miner mines a new block, wich make 1 version longer with more proof of work. And the rule is the longest chain wins. Don’t forget, average blocktime is 10 minutes. So it’s not that there will be 2 long different chains. In the probability for the network to mine a new block (10 minutes) , all nodes should have all information synced by then. That’s why we have a 10 minute blocktime to make sure that accidental forks stay at a minimum.

1 Like

Thank you , that’s what I thought but it’s clear now .

1 Like

Hello Filip.

I have a question about updates, can the whole network trust that the ones’ that manipulate the rules of the blockchain do not have malicious intent? I mean can we trust that they will not change the rules for their individual gain in some way? If we CAN trust them, how does it work?

Thank you.

Bitcoin updates require social consensus, so you can trust that. But if someone suspicious wants to fork bitcoin and tries to get you updated on his own version, I wouldn’t trust that. You can trust updates from https://github.com/bitcoin/bitcoin

My question has to do with how much of the network has to be onboard with a change to take place. So this is the way I understand it right now, but feel free to correct me.

  1. Hard fork : More than 50% of the miners have to be on board with it.
  2. Soft fork : More than 50% of the miners have to be on board with it.

Does at any point 100% of the miners have to be on board with it???

My second question is about Bitcoin SV, GOLD, DIAMOND, and CASH? If a majority of the miners had to agree in order for the split to take place, then why is Bitcoin still a better protocol than any of its forks?

Thanks in advance.

Hi Filip,
6 confirmatios. Does that mean 10 minutes for each confirmation?

1 confirmation means your transaction is put in the most recent new block.
2 confirmation means that another new block is mined on top of the block with your transaction init. Etcetera.
Mining difficulty adjusts every 2016 blocks to get an average of 10 minutes time between each block. But this does not mean that it is exactly 10 minutes each time. Sometimes it could be 7 minutes, next block maybe 13 minutes. 2016 blocks must be mined in 2 weeks, if it’s more/less, the network will adjust mining difficulty.

Hi @filip, i was listening to a podcast talking about Decred. The were discussing updates and forks and mentioned that Decred is designed not to fork and yet i believe it is based on PoW. Am i confused or is this true? Can you please explain. Thanks

In an accidental fork the transactions in the stale block will be almost identical to the transactions in the accepted block, the content of the blocks will be only slightly different. So these stale transactions go back to the mem pool. What is to prevent the stale transactions that were also in the accepted block from getting processed a second time in the mem pool?

1 Like

Hi filip. In a soft fork you said that the shorter chain will be abandoned. So what happens to all of the blocks/transactions on the abandoned chain?

1 Like

I can grasp the reasons and effects for Accidental, Hard and Soft forks.

Are there any countermeasures written into code of the software to reduce occurrences and longevity of forks?
Or maybe some sort of rules/best practices for nodes to follow?

If I understand correctly, sometimes a Hard Fork might be intentional (desired) in the case of a new currency based in the same Blockchain…?
So on that thought: If it were desired, then it would be a Pro of course.
But if it’s simply a bunch of nodes missing an update it’s a Con.

So judging wether it were a Pro/Con would be wether it were intentional.

1 Like