Finality—Part 2: Bookkeeping
"Whether incorporated explicitly or implicitly, an opinion weight in the form of a scarce resource ensures that validator votes are expensive and successful Sybil attacks are statistically unlikely."
Finality is a four-part exploration into the inner workings and technological significance of the IOTA tangle’s many-worlds Nakamoto consensus mechanism. Visit wiki.iota.org to learn more about the IOTA tangle, or click below to continue reading the Finality series with:
📕 Part 1: Two Generals
📗 Part 2: Bookkeeping
📘 Part 3: Total Order
📙 Part 4: Many Worlds
Long after general-purpose computer networks were introduced in the late 1960s, researchers and engineers continued to fall short of developing ungameable solutions to the distributed consensus problem.
It was only in recent decades that resource scarcity proved to be the critical ingredient for designing robust Sybil protection mechanisms and, by extension, secure permissionless networks.
Whether incorporated explicitly or implicitly, an opinion weight in the form of a scarce resource ensures that validator votes are expensive and successful Sybil attacks are statistically unlikely.
For example, imagine that the supreme commander in the Two Generals’ Problem modified his attack strategy by deploying many armies with independent commanding generals while retaining the ability to deploy additional troops as necessary.
How would the situation then have evolved if a compromised general proposed many different times of attack to the other generals? Could the other generals have easily reconciled the many opposing perceptions of reality?
In this circumstance, the number of generals would be unspecified, the identities of the generals would not necessarily be known to one another, and new generals would be able to join the network without permission.
Without a scarcity-based voting system to weight each generals’ opinion on the time of attack, a compromised general would be unimpeded from proposing any number of times of attack in the hopes of personal gain, agreement failure, or network disruption.
In practice, however, a resource-constrained voting protocol is only one of several interdependent software components that work to resolve opposing informational network states known as conflicts.
Only when the sum of all opinion weights, also known as the approval weight, on a reality is greater than 50% will a network begin to consider an informational state as final.
For instance, if 67% of a distributed network’s scarce resources approve reality A, and 33% approve reality B, then reality A is the network’s globally approved informational state, or heaviest reality, by a majority approval weight.
But how do validators go about tracking their local perceptions of reality? Is it necessary for validators to track every single conflicting perception of reality? What if there were millions, or even billions, of conflicting network states at any given time?
For thousands of years, double-entry bookkeeping was the de facto standard method of accounting for the flow of assets and liabilities through the economies of the physical world.
It was only in the late 2000s that the triple-entry ledger was introduced as a bookkeeping data structure utilizing cryptographic identifiers called hashes.
Together, a voting protocol, sybil protection mechanism, and bookkeeping data structure, defined here as a distributed consensus mechanism, ensure that a secure distributed network’s heaviest reality always wins.
By design, however, triple-entry data structures can only entertain a single perception of network events, thereby forcing validators to only incorporate information viewed first into their local perceptions of reality.
For example, if validator A receives conflicting messages from validator B and validator C, then validator A will, by game-theoretic principles, adopt the first message to arrive as the correct perception of reality.
Ultimately, it is entirely irrelevant which informational state a permissionless network comes to adopt as its global reality; it is essential for everyday usability, however, that a statistically irreversible global network state, otherwise known as finality, is always reached in a timely fashion.
But how far have consensus mechanisms come since the introduction of the triple-entry ledger? Is every voting protocol, sybil protection mechanism, and bookkeeping data structure equally performant? Or has the totality of distributed computing still yet to be realized?
If you’re enjoying the Finality series, you may also be interested in checking out Layer One, a three-part philosophical journey into the emergence and implications of the IOTA distributed ledger technology and its parallel reality based data structure. Click below to read more.
📕 Part 1: Assimilation
📗 Part 2: Error Correction
📘 Part 3: Metamoney
🤘 Thank you for reading iologica—the blog that strives to challenge you.
✍️ The Finality series was written in large part based on the commentary of Hans Moog, which is publicly available on Twitter and Medium. Please also acknowledge Holger (Phylo) of the IOTA Foundation, unrecognized_User and Jeroen van den Hout of the IOTA Experience Teams, and John for providing valuable assistance in the creation of the Finality series.
👉 If you enjoyed reading this article, feel free to share it or subscribe below.
🤝 If you found the information in this article valuable, consider donating below to support the author’s future work.
🤙 If you want to get in touch, contact the author below.
The Content of this article is provided for informational purposes only, you should not construe any such information or other material as legal, tax, investment, financial, or other advice. The Content is not to be construed as a recommendation or solicitation to buy or sell any security, financial product, instrument, or to participate in any particular trading strategy.