The need for transaction finality in the business world is almost always non-negotiable – so we need to be very careful when marrying the exciting world of blockchain with the world of business.
I caused some controversy on Twitter recently when I got into a debate with members of the Ethereum community about the nature of probabilistic consensus. Exciting way to spend a Friday evening, right? It sounds like an arcane debate but, as that exchange revealed, the finality promises made by different blockchain platforms are not obvious and they have profound implications for the unwary.
Businesses really don’t like transactions that have a chance of being reversed. Transactions that can go from “confirmed” to “unconfirmed” can cause utter chaos. Imagine handing your car keys to a buyer after checking their payment had hit your account, only to discover later that what the bank meant to say was that the money had “probably” arrived and, upon closer examination, they subsequently determined that it hadn’t.
You’d probably be quite annoyed.
The myth of immutability
You may think this set up to an article is an absurd strawman.
“Why is Richard inventing a nonsense scenario and then inviting you to agree that it is indeed nonsense? Blockchain transactions are immutable!”
Not quite… The strange reality is that transactions on public blockchains such as Bitcoin and Ethereum always have a probability of being reversed, a probability that often decays with time but which is never zero. Their finality is probabilistic.
Your transaction is not final straight away, and never will be. And because these blockchains are fully anonymous, you may never know the identity of the parties involved if a reversal happens to you.
Now, this phenomenon is a consequence of the censorship-resistant, ‘permissionless’ nature of such platforms. Depending on the scenario, it’s a…