2

I'm trying to understand the Bitcoin protocol, and I have a security scenario.

  1. Let's assume that today between the internet connection between Europe and America is lost.
  2. John is in Europe
  3. John sends money to Henry while he is in Europe.

Then John saves his wallet to a CD and travels to America, were he uses another computer. The connection between Europe and America is still broken.

Can John send the same money to another Bitcoin client? In America nobody knows what John did in Europe.

If he can send the same money again in America, what will happen when America and Europe reconnect?

Edit after Murch's answer:

I have a new story, it is the same except for some little modifications.

  1. John is a bad boy. He cracked Alton's router and put him into a fake network. This network includes some (fake) Bitcoin peers that don't have a connection to internet.

  2. John, Alton and other peers are located in an isolated network.

  3. John sends money to Alton. Alton and the other isolated peers confirm this transaction, but it is not confirmed in the global block chain yet. Now, Alton thinks that he has the money.

  4. John takes his wallet and connects to internet. And sends the same money to his other account. This transaction is confirmed in global block chain.

  5. John releases Alton's router, now Alton can connect to internet.

  6. When Alton connects to internet he will see that his transaction is unconfirmed in the global block chain.

I think Alton needs a service to confirm that he had a real transaction and it is confirmed in global block chain.

Are there a service like this? I don't know do we really need a service to confirm transactions?

  • Concerning your edit: I doubt that John alone could confirm the transaction, as the difficulty would still be the same as before the network was isolated. The rest should work, except I would think that Alton should notice either that he is not connected to the internet anymore, that he is not receiving any records of transactions from other people, or that he hasn't received a valid block since he was put into the isolated network. That means such an attack would have to be timed very well and worth it. Yet given a valuable deal, Alton would probably insist on waiting for some confirmations. – Murch Aug 26 '13 at 22:31
  • 1
    Next time please start a new question for a new scenario, though. :) – Murch Aug 26 '13 at 22:33
  • To the edit:<br> What do you understand as "global" blockchain?<br> How can you tell which one is global? <br> There is blockchain.info and block-explorer.com, which shows transactions relayed to them.<br> However, somebody can still put them in Alton place and cheat them. Or worse, they can cheat you on purpose. Will their blockchain be still global? <br> – ripazha Aug 27 '13 at 15:38
  • I don't know how to define global block chain %100 correctly. I think it is the longest block chain in the network. Can you please answer on your own questions please? – fobus Aug 29 '13 at 13:14
5

The direct effects of the netsplit

Miners in both the European network and the American network will continue to find blocks and validate transactions in their respective network part. However, until the difficulty will be adjusted, the validation will be slower, because the difficulty was set for a greater mining power than is available in each part of the world.

Let's assume that

  • 2/3 of the mining power are in the Americas and 1/3 is in Europe
  • the hashing power remains constant (simplification) for the time of the network split
  • the network was operating at a previous block interval of 10 minutes in average before the split

Then the Americas should find a block every 15 minutes and the European network should take 30 minutes per block after the split. When the difficulty adjustment block is reached, both networks will return to creating blocks every 10 minutes in average. However, up to the adjustment the Americas will be twice as fast and thus their blockchain will be ahead significantly, specifically one and a half blocks for each block that had to be mined until the difficulty was scheduled to be adjusted.

John can spend his money again

When John goes to the Americas, the transactions sent in the European network have not been taken into account there. His wallet thus will still allow him to spend all the bitcoins that he had before the netsplit. He can now cheat Henry out of the money: John decides to send all the money to another of his own addresses.*

Reconnection: Shorter blockchain will be invalidated

Now, when the connection of the two networks is reconciliated, the American network's blockchain is longer (i.e. the total difficulty of the mined blocks is greater). All blocks in the European blockchain mined since the network split will be rejected by the American network, the European miners will retroactively lose their mining gains. The transaction John did in the Americas takes precedent, because it is part of the blockchain there and the transactions of the European network are just now readmitted to be validated by the global network. John's balance had already been sent to his other address, so the transaction that now tries to send the bitcoins to Henry is thrown out as invalid.

Alice, who had sent money to Bob in Europe, will see that her transaction (along with all others that were only seen in the European network) will go back to being unconfirmed in the new global blockchain (that is based on the longer American blockchain), because the block that had validated it in Europe has been obsoleted. The transactions that had been sent in the American network don't see any effect.

The global network will now find a new block every 6.67 minutes, until the difficulty is readjusted, because it had reduced the difficulty to fit the American miners' hashpower and is now returning to full power.


*However, if Gustav had taken his computer with him from Europe and connected it to the American bitcoin network before John arrived, Gustav could have submitted all transactions that had meanwhile occured in Europe to the American network as well, and John would not have been able to spend his balance again.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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