Thursday, October 20, 2022

A White Swan Event

Bitcoin Fails to Produce 1 Block for Over an Hour by Oliver Knight makes it sound like something went wrong:
It took more than an hour to mine a block of bitcoin (BTC) on Monday, leaving thousands of transactions stuck in an unconfirmed state.

According to on-chain data from several block explorers, the interval between the two latest blocks mined by Foundry USA and Luxor was 85 minutes.

According to Mempool, over 13,000 transactions were pending before the latest block was mined.

Last week Bitcoin underwent a difficulty adjustment to ensure block confirmations kept taking place every 10 minutes. With mining difficulty surging to 35.6 trillion it becomes more expensive to mine bitcoin, which heaps pressure on a mining industry that is dealing with soaring energy prices and a crypto bear market.
But the tail of Knight's post contradicts that:
Tadge Dryja, founder of the Lightning Network, tweeted that an 85-minute interval between blocks can be expected to happen once every 34 days, not taking into account difficulty changes.
Below the fold I explain that Dryja is right, the system is behaving as designed.

There are many problems with using Bitcoin as a currency. Among them are that various important parameters of the system are completely unpredictable, including transaction fees and transaction finality times. The reason why finality in a Proof-of-Work system is unpredictable is that Proof-of-Work is a random process. The Bitcoin protocol adapts to maintain the median block time at ten minutes, but because of the random nature of the hash guessing process actual block times follow a Poisson distribution, with very long tails.

Back in March Marcel Waldvogel studied the statistics of the block production process over a range of timespans in Bitcoin Block Timing Statistics:
Data set 3 (2020+) shows further calming on both ends: Extremes are now -32 minutes and +2:19 hours, with the inner 99.98 % spanning -1½ to +1:45. The shaded areas only cover 11 intervals each, as the total number of intervals during these 26 months is only 114 595.

The average interval duration is about 9.8 minutes, very close to the 10 minute target. The median is at 6.9 minutes (actually, 6 minutes and 52 seconds)

±0 is at 0.27 %, +2 at 18 %, +10 at 64 %, +20 at 87 %, +30 at 95 %, +40 at 98 %; i.e., with the exception of ±0, they all moved left just slightly.
Single-block times are interesting but what is important for transaction finality is the 6-block interval. Waldvogel writes:
The minimum 6-interval duration seen in the past 26 months is 2 minutes, the maximum 6:02 hours. The 99.98 % center ranges from to 0:07 to 3:44, with 2 % corresponding to 20 minutes, 22 % corresponding to 40 minutes; and 57 %, 81 %, 93 %, and 97.7 % corresponding to 60, 80, 100, and 120 minutes, respectively.

So, on average, on about 6 of the 240 daily intervals, you have to wait longer than 2 hours before your block is confirmed. Given that this 26 month dataset contains 112 intervals longer than 3 hours, on average, about once peer week you confirmation will take longer than 3 hours.

In summary, neither the block generation intervals, the likelihood of your transaction being included in a particular transaction, nor the duration of the confirmation interval are reasonably predictable. In my opinion, this alone puts serious question marks on the claim that Bitcoin should become a replacement for traditional money.
Waldvogel is right. In the real world of transactions, predictability has considerable value.

No comments: