Welcome back to our series covering the essential elements of IOTA, a crypto network designed specifically for use with IoT (Internet of Things) devices. In our last post, we took a look at approvals, confirmation confidence, and the necessity of a Coordinator. While the Coordinator is currently a very necessary part of the network, what happens when the Coordinator is phased out and the network as a decentralized entity is able to take care of its own security and well-being? Let’s briefly revisit these before we take a look at the main topic of our post.
IOTA Series Review
Approvals are typically made when a node decides to perform a transaction on the network. Every time a node decides to transfer IOTA to another node, it must first perform two approvals on previous transactions. In order to approve a transaction, the node needs to perform a weighted random walk to find a transaction, ensure that all tokens spent and received are validated up to that point, and then give it a thumbs up. As a specific transaction receives more and more approvals, its confirmation confidence continues to climb until it is essentially 100% trustworthy. At this point, it is very safe to say that the transaction did, in fact, take place exactly as stated.
But what happens if someone decides to bombard the network with a very high number of transactions all at once? This leads to the inevitable problem in most crypto networks where a malicious actor who owns more than half (i.e., 51%) of the computing power on the network can wreak havoc on the network and the transactions therein.
IOTA is no stranger to this problem, and up until this point, has had to implement a Coordinator and milestone transactions to block nefarious users from executing this kind of attack. Every two minutes, the Coordinator releases milestone transactions onto the tangle; any transaction approved by the milestone is considered to have 100% confirmation confidence immediately. While scoffed at by some for the seeming centralization of the network, it has heretofore been a necessity. But what will IOTA look like when the Coordinator is no more?
That’s the whole discussion behind the Coordicide (the clever term coined by the IOTA Foundation in regard to the eventual exit of the Coordinator from the network). According to the IOTA Foundation, “The goal of Coordicide is for the network to reach consensus without the Coordinator, while also ensuring it has the following attributes…” The three attributes that any distributed ledger technology (DLT) needs to have in order to functional exceptionally include:
- Scalability – the network can grow to handle a massive number of transactions (i.e., a high transaction rate).
- Security – no nefarious actor is able to manipulate or in any way adulterate the consensus on the network.
- Decentralization – any nodes on the network that wish to participate fairly are allowed to do so; no one node or group of nodes holds a majority stake in decisions made by the network.
In this post, we want to begin our journey in uncovering how the Coordicide will take place by starting at the beginning – why was it ever necessary in the first place? Shouldn’t all networks be scalable, secure, and decentralized? While that’s definitely the hope, it’s unfortunately not the reality most of the time.
Although we hope for the three attributes listed above, most of the time we are only going to be able to choose two of these three simultaneously. This is commonly referred to as the “scalability trilemma.” Take a look at the figure below:
With IOTA we are able to get two of these three vertices currently: security and scalability. However, since the Coordinator is currently in place, there is no true sense of decentralization. With Bitcoin, on the other hand, we are able to have decentralization and security, but scalability is severely hampered (as Bitcoin is nominally limited to 6 transactions per second…this can hardly be considered scalable as a worldwide monetary transport medium).
So that’s the current state of affairs with IOTA. We don’t have a fully decentralized network at the present moment due to the fragility of the tangle. But why not just remove the Coordinator and let the network develop into a robust framework by itself? Well, that’s the eventual hope, but simply abandoning the Coordinator carte blanche would not solve the problem at hand.
The reason why this paradigm works well in Bitcoin and Ethereum and other cryptocurrencies is because they utilize miners which are focused on outputting a constant hashing power across the network. This allows the good guys to maintain the vast majority stake of the network’s power and severely limits what the bad guys can try to accomplish. Alas, IOTA doesn’t utilize mining and presently has no constant presence of honest computing power. Until the network is vast and supporting a large number of nodes, the network throughput simply isn’t high enough to rely on computing power for integrity.
Voting On IOTA
Computing power, at least for now, isn’t the silver bullet needed to solve the problem. Luckily, the folks over at the IOTA Foundation have decided to establish a voting mechanism whereby honest nodes will elicit the determination of other nodes in the network to determine whether or not transactions should be allowed. This leads to a decentralized paradigm where the only actors working for the good of the network are those presently utilizing the network, not the IOTA Foundation. Again, this is a tricky problem to solve for a massive network of current users.
The answer to the proverbial question, “How do you eat an elephant?” (one bite at a time) applies to the Coordicide as well. This is not a Boolean property – either the Coordinator exists, or it does not. Rather, the Coordicide will be slowly rolled out in a modular fashion. This means that various aspects of the Coordinator’s removal will be implemented one at a time until the entire solution has been completed. Operating in this fashion allows for each facet to be researched, tested, implemented, and improved independent of the other modules.
In understanding the modular approach to the removal of the Coordinator, the IOTA Foundation hopes to emphasize the modular nature of the DLT itself. Any software that is implemented without a means for future scalability and expansion is inherently doomed to fail or prove inadequate as the user base grows larger and larger. The developers of IOTA have determined to provide new features that will ultimately allow the network to scale to global levels with millions of users operating 24/7.
The Coordicide white paper details these needed modifications to the base software. We’ll list them briefly below, but in the next post we plan to spend more time discussing the ‘what’ and the ‘why’ behind these decisions:
- Node accountability hopes to include both global node IDs and Sybil protection.
- Autopeering and node discovery will reliably connect neighboring nodes.
- Rate control will ensure the network operates within its capacity.
- Consensus and voting will ultimately provide a more robust, decentralized consensus framework. This ensures a safe environment in which the tangle can reliably and safely operate without the need for the Coordinator.
- Tip selection is already implemented well, but the developers hope to produce an even better algorithm that is suited to the scale with which they hope to grow the network.
To give a brief explanation of the some of the topics above, let’s start with manual peering. Currently the network only supports the manual peering of existing nodes. Because nodes may or may not choose the best peering solution, milestones have proven to be incredibly useful in keeping the network from lagging or falling out of synchronization. In addition, the current tip selection algorithm is the major means of security on the network. This might discourage the use of the recommended tip selection algorithm. When the network has the proper protections put in place by the software architecture, there will be more freedom to expand currently and effectively while ensuring security of both the network as a whole and the transactions placed by users of the network.
Learn About Coordicide
Are you interested in learning more about the Coordicide? Check out a few of these links and be on the lookout for the next posts where we’ll discuss more about this topic.
- Here’s the main page for the Coordicide (provided by the IOTA Foundation). There’s an informative video at the top of the page that provides a great explanation about what’s going on.
- The link was already included above, but here’s the official Coordicide white paper. We’ll be diving into this in more detail in the next post.
- An excellent Medium article provides another look at the Coordicide process.
- Finally, here is the road map provided by the IOTA Foundation concerning the network’s upcoming modifications and improvements. The section specifically focused on the Coordicide is about halfway down the page.
We hope you’ve learned a ton in this post, and thanks for reading!