Why Bitcoin Payments Take 10 Minutes

It’s not 10 minutes, it’s in fact an hour!

Vasan Subramanian
UnBlockchain
3 min readFeb 5, 2018

--

There are two interlinked concepts that make Bitcoin transactions slow. The first is related to the consensus mechanism and the second is related to the time it takes to transmit a new block to everyone else in the network.

Consensus

The consensus mechanism that Bitcoin uses is called Proof of Work (PoW). For a block to be committed to the chain, a node has to prove that it has done some work by solving a mathematical puzzle. The actual puzzle is not that important, instead, what’s important is that it’s hard. And also that every node’s solution is unique, it depends on the transactions that they have picked up for their block.

So, why does it have to be a hard puzzle? Well, if it were not hard, there will be many solutions that come up from each of the nodes. And when every node claims that they have a solution, you can imagine the chaos — there will never be any consensus on which one to pick. Whereas, if the puzzle is hard, the number of solutions floating around at any point in time will be small, making consensus easier.

But however hard the puzzle, there is a small chance that two nodes come up a solution almost simultaneously. When these solutions are broadcast to the network, each of the other nodes picks up one solution randomly to base the next block on. This is called a fork in the chain, because there are two beliefs in the network. As more blocks are added, consensus is achieved by a simple rule: the longest chain wins.

Time to Transmit

The decision of 10 minutes was made assuming it will take 1 minute for any new block to reach every node in the network. This means that after one node finds a solution, for about a minute, the rest of the nodes are doing “useless” work, trying to find a solution when one has already been found.

Then, the inventors of Bitcoin said, let’s not waste more than 10% of the network’s resource doing useless work. So let’s make the difficulty of the puzzle so that it takes 10 minutes to solve the puzzle. If they had been OK to waste 20%, they could have made the difficulty 5 minutes.

Note that the difficulty is fixed in terms of time. As computers get more powerful, you may think that the puzzle may take lesser time to solve. But the Bitcoin protocol has a slow-down rule built in that adjusts the real difficulty of the puzzle based on the average time it took to solve it in the last one week.

But why one hour?

Ah, consensus is and all that is great, but we also have to prevent hackers from cheating, don’t we? It so happens that in a Blockchain, the only way to cheat is by rewriting history. Let me explain.

When a new block (or solution) is created, it’s easy for everyone to accept that it’s valid. All they need to do is verify the signature of senders in the list of transactions, and the fact that they own the coins they are sending. So you can’t cheat by paying with coins you don’t own.

But you can indeed cheat by undoing a transaction. Let’s say hacker Harry pays simple Susan some Bitcoins. Now, Harry is expecting something in return, say some dollars in his account. After Harry receives the money, he can theoretically create a longer chain of blocks that doesn’t include his own payment of Bitcoins. But he has to do it starting at the block before the block that contains his payment.

To prevent this, Susan shouldn’t transfer the dollars right after she sees Harry’s transfer of Bitcoins in a block accepted by the network. She should wait a few more blocks added to the chain, so that she can be confident that Harry will find it harder to create a longer chain to beat the consensus.

The mathematics of all this can be found in the original white paper. but in short, to get a 0.1% chance of getting attacked with a hacker controlling 10% of the nodes in the network, the number of blocks Susan should wait is 6, that is, one hour.

Conclusion

The Bitcoin network slows down transactions on purpose. This makes the distributed ledger come to a consensus quickly. It’s also a good idea to wait for one hour to deliver goods in exchange for Bitcoin payments.

--

--