One might assume, because it’s so slow to process transactions, that Bitcoin must be inherently flawed. Perhaps that’s true, in a broad sense. But it’s not actually a design flaw that causes the network to run so slowly. In fact, Bitcoin is specifically designed to be exactly as slow as it is.
Computers from around the world act as arbiters of Bitcoin’s peer-to-peer network (we call them “miners”). Anybody can participate or, rather, compete, to successfully process (“mine”) any given “block” of transactions. Each block contains many transactions grouped together, and appends onto the chain. That chain consists of all previous blocks that came before it.
Ultimately, then, Bitcoin is just a ledger–a record of all the transactions that have ever occurred between investors. This record is maintained by users of the system, each of whom owns a copy.
Now, consider for a moment how difficult it would be to maintain a physical list (of any kind, really) with thousands of people adding to it at once. It’d get messy, right? With everybody writing new lines of information, the result is a cacophony of scribbles, overlapping text, and potentially fraudulent information. Furthermore, the fraudulent information gets buried so deep in the ledger that it is irreversible without ruining everyone else’s business.
How might you establish order and fairness in this scenario? You’d probably want to slow everybody down, first and foremost. For example, you could make a rule: everybody gets a pair of dice, and in order to write a new entry into the ledger, you first must roll three snake eyes in a row.
Bitcoin’s solution to maintaining order, reducing waste and preventing fraud is to make the process of adding new blocks to the chain difficult; difficult like having to roll snake eyes three times in a row. The network automatically self-corrects every two weeks such that the first computer to successfully process a new block in the chain will take, on average, around ten minutes to do so.
This ten minute rule is essential to Bitcoin’s function. In fact, it has been written into law since the beginning. From Medium:
Satoshi Nakamoto (inventor of Bitcoin) himself decided that the block production rate should maintain a steady average pace of 1 block per 10 minutes, because: a blockchain will estimately need 10 minutes to propagate the latest block(s) to all nodes globally, in order for the blockchain to stay properly synchronized. If blocks are produced at a faster pace, some nodes on the other side of the globe might not be able to catch up fast enough with the late transaction data, and this may cause nodes to be no longer correctly aligned, leading to “uncle blocks” (chain splits), which is basically something a blockchain must avoid as much as possible in order to stay secure.
Bitcoin works well when all participants agree on the same data. When new blocks post too quickly for the entire network to get on the same page, Bitcoin ceases to work as well.
So we’re stuck with ten-minute wait times. But it’s worse than that. There is another layer of security which further extends the time it takes for a transaction to settle. In the original Bitcoin white paper, Satoshi Nakamoto proposed a hypothetical:
We now consider how long the recipient of a new transaction needs to wait before being sufficiently certain the sender can’t change the transaction. We assume the sender is an attacker who wants to make the recipient believe he paid him for a while, then switch it to pay back to himself after some time has passed. The receiver will be alerted when that happens, but the sender hopes it will be too late.
How can we be sure that somebody won’t reverse a previous payment issued from their account? The equations we use to calculate such probabilities are beyond the scope of this article. Suffice to say: there is a value that Satoshi landed on, for which even a very powerful malicious actor would not have any reasonable chance at reversing a prior payment.
That value is six blocks. Six blocks before a payment can be considered 99.9% irreversible.
In other words: after the ten minutes it takes to validate your transaction, five more blocks of transactions have to be added to the blockchain before yours can be considered set in stone.
You should hope that your grocer isn’t too paranoid, or else you’ll be waiting at the cashier’s station for a full hour before walking away with your ice cream.