3 ms·
Even though I'm not a blockchain expert, I'm a bit surprised by the other responses. AFAIK, when a node finds a new block, it announces that to its peers and s
by smartician 5y ago
Even though I'm not a blockchain expert, I'm a bit surprised by the other responses.
AFAIK, when a node finds a new block, it announces that to its peers and starts working on finding the next block. No explicit acknowledgment from peers is required, instead they implicitly acknowledge the new block by appending it to their version of the chain and working on finding the next block based off that version. If a node receives a broadcast with a chain that is different than the one it currently works off of, it keeps the one that is more difficult to verify ("longer"), discarding the other one.
If you would divide all nodes into two unconnected sets (by the hypothetical firewall), two parallel versions of the chain would emerge, and those chains would diverge at the block that was last found before the separation event. Once you drop the firewall, the longer version would "win" over the shorter version, and all blocks mined on the losing chain since the separation become "stale", and the transactions contained in those blocks are returned to the mempool for re-processing. This is a huge problem, since the processing order is not guaranteed and depends on the fees transactions are endorsed with. Addresses could theoretically spend BTC they do not yet possess. Not sure how this would be handled.
If this is a prolonged event, the Bitcoin community would probably work on a software fork in some way?
- daly 5y agoA 10 year chain of transactions would require an enormous amount of time to re-process. Effectively billions of transactions would arrive at once on both sides of the dropped firewall. Transactions that were "known good" for the last 5 years might not be valid, or at least could take years to validate.
- trompetenaccoun 5y agoThere is no "reprocessing", in Bitcoin the longest chain always wins. Assuming the cut-off country has fewer transactions than the rest of the world and assuming the people still continue to trade among themselves without any connection to the main net (which would be idiotic), every single transaction is invalid because it never was included in the longest chain. The only thing that happens when the country allows Bitcoin connections again is that everyone who accepted BTC as payment to a local wallet during a time when they had no internet connection find out they made a big mistake. Look at it this way: Would you trade Bitcoin with someone on a private intranet? They tell you "give me $1000 and I'll transfer you the coins on my intranet, not on the public net". Of course you wouldn't, right?