Take the 2-minute tour ×
Bitcoin Stack Exchange is a question and answer site for Bitcoin crypto-currency enthusiasts. It's 100% free, no registration required.

Yesterday I asked a question over at SuperUser, so that I could have my facts straight before asking this question. The scenario sets the basis for this question.

Regarding bitcoin, what would happen to the Bitcoin system if a portion of the world had it's internet connection severed with the rest of the world. In other words if, say, all outside communication was lost in the region of Armenia, would the Armenian Bitcoin users, who continue to use Bitcoin, ultimately create a forked block chain?

If so, what would happen to the blockchain when connection to the severed region of the world is restored, and the segregated network is resolved to the primary network?

I imagine the outcome would be similar to a 51% attack. Is that correct?

share|improve this question
    
Would it be possible to physically transfer files to mitigate the consequences? –  barrymac Oct 26 '11 at 12:50
1  
Thilo seems to answer in short, but what if the connection is severed for say a month and there is lively transactions in Armenia for that period. Would that cause merging issues upon reconnection? –  user622 Oct 26 '11 at 13:37
2  
@evanh: Assuming nobody actually attempted any double-spend attacks, there would be no problem -- all the 'lost' transactions in the reorganization would eventually be mined into new blocks. What this means is that in order to trust a transaction, you need not just confirmations but also to make sure you're talking to a large enough network. –  David Schwartz Oct 26 '11 at 14:09
    
Besides the potential double-spending, I see another potential problem in this scenario: if an Armenian miner keeps mining and spends immediately their earned coins before the reconnection, most probably those transactions will be deemed invalid when the network gets reunified. And, just like @user622, I wonder what would happen if the disruption takes longer than a week - if I understood correctly, transactions can't be live for more than 2 days, so all the isolated Armenian transactions would get reverted, right? –  Joe Pineda Jun 13 '13 at 21:53
1  
Related: bitcointalk.org/index.php?topic=106302.0 –  Stephen Gornick Sep 26 '13 at 5:30
show 1 more comment

3 Answers

up vote 7 down vote accepted

It wouldn't be a fork as both chains would only exists as the longest chain until the network was reconnected. As soon as Armenia was reconnected to the internet every client would via block exchange determine there is a longer block and switch to that chain. The orphaned chain would simply be discarded by all clients and eventually the entire network would be "re-unified" under the single longest chain.

In a situation like that it would be difficult but not impossible to pull off a double spend. An attacker would need to have wallets in both sub-networks so coins could be spent in both sub-networks during the "isolation". A precaution to take when isolated from "main internet" is to not process any transactions until the sub-networks have rejoined.

For example a store could accept coins, and prepare orders but not ship them until rejoining the main network and ensuring no double-spend occurred. If a double-spend had occurred the merchant would become aware once the larger network began processing the orphaned transactions and they were reported as invalid by the network. If no double spend occurred those transactions would eventually be included in longest blockchain and become confirmed.

For those in the "main network" there is no risk from a double spend because their chain will remain longest and will survive while overwriting transactions from the smaller sub-network once the networks are rejoined.

share|improve this answer
    
It may be helpful to be able to queue transfers without sending them for this scenario. –  osmosis Oct 26 '11 at 0:18
add comment

When bitcoin client downloads two conflicting blockchains, in other words when fork happened, it chooses the longer blockchain as valid, and the shorter becomes invalid and called "orphan blocks". "Length" is calculated as total combined difficulty of that chain, not number of blocks. Wiki: Block Chain

So in your scenario, Armenia most likely has less hashing power then the rest of world and it would produce shorter fork of blockchain, therefore it would be overrided after connection is restored.

51% attack implies coordinated effort from a small group of people with malicious intent, which is not the case according to your scenarion, therefore I wouldn't call 51% attack.

It would be easy to counter any negative outcome because users of isolated network would know instantly about the problem from sudden drop of total network hash power, and would just need to avoid spending bitcoins until connection is restored.

share|improve this answer
1  
+1 The hashing power on the Armenia network would be so low that blocks would be created very slowly. Because of (not only) this, people in Armenia would very soon notice that something is wrong with "their" blockchain, and take measures to reconnect somehow. Even if they did not, they would not be creating a block chain long enough to be considered a "fork". Anyone who continues to mine on this would lose their mining income after the eventual reconnect. On the other hand, all other transactions on the "Armenia fork" would be copied back to the real chain (unless they are double spends). –  Thilo Oct 26 '11 at 1:06
    
Wait, why would new blocks be created very slowly? They still get created at a 1 block per 10 minutes rate just like in the rest of the world. –  mafutrct Nov 6 '11 at 2:25
    
@mafutrct, "Length" is calculated as total combined difficulty of that chain, not number of blocks –  Serith Nov 6 '11 at 3:11
    
@Serith Yes, but I'm confused right now as to how this is related to my comment. Thilo made it sound like new blocks get created at a slower rate than in the rest of the world - which I believe is not the case. I agree with you and him that due to lower length (sum of difficulty) those blocks would be discarded anyway. Maybe I'm just misunderstanding his wording. –  mafutrct Nov 6 '11 at 3:17
    
@mafutrct, Thilo is right too. Difficulty gets adjusted every 2015 blocks, so there is a bit of a lag between network hash rate change and the adjustment, and it is possible for a blocks to take longer to mine before it gets adjusted back to 1 block per 10 minutes. So lets say Armenia represents 1% of total network hash rate, therefore, after separation, it will take roughly 1000 minutes to mine a block before it reaches the next checkpoint and sets the difficulty correctly. –  Serith Nov 6 '11 at 4:01
show 1 more comment

A cut off in part of the network might also, indirectly cause one of the "guilds" to obtain %51. Community should also keep that in mind IMHO. i.e. if BTCGuild was suddenly completely disconnected for a time, and GHash.IO and itself both had 33% of the hashrate; GHash.IO would have %50 for the time period BTCGuild is disconnected.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.