The Importance of Finality In Cross-Chain Communication
“Objective and unambiguous 100% finality is a critical property for all blockchains that wish to support inter-blockchain communication. Absent 100% finality, a reversion on one chain could have irreconcilable ripple effects across all interconnected chains.” — Daniel Larimer
Finality, the irreversibility in the transferring of ownership, is something that many of us don’t think about in our day-to-day dealings. We trust that when we see our paycheck arrive in our bank account that the money is ours to spend, that when we swipe our card buying groceries that once it says “Approved” we can walk out of the door with what we bought and when we see that bitcoin show up in our wallet, that it is officially ours, but behind all of this is a carefully considered judgment on the probability of the transaction that just occurred being reverted. As is the case with most imperceptible things that are part of the basic fabric of our life, it is essential to the normal operation of every transaction based system.
Finality is never an absolute. Mistakes can be made, banks can burn down, glitches happen and there are bugs in code. Something can always happen with some degree of probability that can take away what was previously in your possession. In centralized systems of trust, like banks, finality is up to the bank to make sure you have the funds and the permissions in order to transact and no one but them can decide on a valid history. In blockchains however, just because a transfer was made, doesn’t mean the network won’t decide to switch to a different valid chain a moment later which wipes that transaction from history.