Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: No_2 on July 10, 2015, 08:01:55 AM



Title: Blockchain forks and proof of their age?
Post by: No_2 on July 10, 2015, 08:01:55 AM
When the blockchain forks people often point at external sources of validation for this such as blockchain.info (http://blockchain.info).

I’m wondering if the blockchain itself is able to keep track of forks in a provable way – i.e. using proof of work or similar - and if and of so if there is any way to prove the age of the blocks on a fork. E.g. could someone mine a fork weeks/months after it was started and add new blocks, as long as the median age was within the correct range would the blocks be acceptable (although most nodes would not propagate them)?

I understand that Gavin uses a private key to lock the blockchain at a certain age into state as "fixed" from the perspective of the core bitcoin software, does this have any effect on forks that have occurred in the past?


Title: Re: Blockchain forks and proof of their age?
Post by: fbueller on July 10, 2015, 03:57:51 PM
Gavin does not use a private key to lock the blockchain every now and then.

You may be referring to checkpoints however? These are blocks that are so deep (3 months worth of confirmations), we can be certain they should not change. Hence, their hashes are save, to guide new peers when downloading.

If a malicious party tried to make his own fork from block 0 - block 1000, he could do it quite easily nowadays. But with these checkpoints, at least a hash for certain heights is committed to, so there's no way for the blocks between them to change.

There usually isn't much evidence for forks. Blockchain only has a partial view of the network, and so do you.. So neither of you will have all the forks.


You are correct the old forks could be continued on in the background, and maybe released later - but only since the highest checkpoint (cos earlier hashes are committed to) And IF they caught up and produced more work than us, they'd displace all the transactions confirmed since the fork.

Since this is a poisson process, it's unlikely to happen unless they have enough hashrate to catch up AND outpace the network (larger than 50%)


Title: Re: Blockchain forks and proof of their age?
Post by: achow101 on July 10, 2015, 04:14:09 PM
When the blockchain forks people often point at external sources of validation for this such as blockchain.info (http://blockchain.info).

I’m wondering if the blockchain itself is able to keep track of forks in a provable way – i.e. using proof of work or similar - and if and of so if there is any way to prove the age of the blocks on a fork. E.g. could someone mine a fork weeks/months after it was started and add new blocks, as long as the median age was within the correct range would the blocks be acceptable (although most nodes would not propagate them)?
It is not possible. A block is only aware of itself and the block before it. Your node could theoretically record every single fork, but that would take a lot of data since orphan blocks (essentially mini-forks) happen every single day. It would require a connection to every single node in order to catch every single fork.

Someone could mine a fork for a long time, but the only way for it to be accepted is if it is longer and more difficult. The timestamps don't matter. This would only work well if the miner was extremely lucky or had more hash power than the main network (assuming he isn't mining there also).

I understand that Gavin uses a private key to lock the blockchain at a certain age into state as "fixed" from the perspective of the core bitcoin software, does this have any effect on forks that have occurred in the past?

Actually no. Gavin does not use a private key to lock anything or put anything into a "fixed" state. There is nothing that does this. However, there are several checkpoint blocks hard coded into the code. If your blockchain doesn't match the checkpoint blocks, then all nodes will reject it.


Title: Re: Blockchain forks and proof of their age?
Post by: Warren Buffet on July 10, 2015, 04:34:06 PM
I understand that Gavin uses a private key to lock the blockchain at a certain age into state as "fixed" from the perspective of the core bitcoin software, does this have any effect on forks that have occurred in the past?


Incredible that this is coming from a hero member. Is it a purchased account ?


Title: Re: Blockchain forks and proof of their age?
Post by: gmaxwell on July 10, 2015, 11:57:28 PM
That kind of profound confuseion is happening much more often because there are many altcoins that use centeralized blocksigning to pin the chain and prevent reorgs. Unfortunately they call this mechenism "checkpoints", though it has basically no relationship to the really narrow thing in Bitcoin by the same name.


Irony in suggesting "external sources of validation" like block explorers is that in the recent chain fork most of them were wrong.


Title: Re: Blockchain forks and proof of their age?
Post by: newb4now on July 11, 2015, 12:04:13 AM
That kind of profound confuseion is happening much more often because there are many altcoins that use centeralized blocksigning to pin the chain and prevent reorgs. Unfortunately they call this mechenism "checkpoints", though it has basically no relationship to the really narrow thing in Bitcoin by the same name.


Irony in suggesting "external sources of validation" like block explorers is that in the recent chain fork most of them were wrong.

This is exactly why it is good to verify a transaction on multiple block explorers, especially if you are only waiting for a relatively small number of confirmations.

I think too many people solely rely on 1 block explorer and still think 1 confirmation is okay


Title: Re: Blockchain forks and proof of their age?
Post by: gmaxwell on July 11, 2015, 12:08:56 AM
This is exactly why it is good to verify a transaction on multiple block explorers, especially if you are only waiting for a relatively small number of confirmations.
I think too many people solely rely on 1 block explorer and still think 1 confirmation is okay
You could have checked more than four of them and wou ld have gotten the same incorrect data.