Finding Consensus 4/4: Alternative Consensus Mechanisms
Welcome here at blockwhat? dear reader, I’m very happy you’ve made it here and hope that you’ll enjoy this post, which wraps up our exploration of Finding Consensus for now.
After having thoroughly looked into the most popular consensus mechanisms in the last couple of posts, we will expand our view today and see what kind of alternative and innovative ideas are floating around in this fabulous blockchain world of ours.
Join me in exploring six interesting and novel ideas, such as Proof of Elapsed Time, Proof of Capacity, Proof of Burn, Proof of Authority, Proof of Importance and as a little extra cherry on top, we’ll briefly look at Directed Acyclic Graphs.
Let’s get started, it’s going to be a captivating read!
This article is part nine of our journey into the technological foundations of blockchain technology.
- The Tech Behind Blockchains
- A Journey Into Decentralization
- Hash(ing) Everywhere — A Primer On Hash Functions
- Public Key Encryption — A Comprehensive Guide
- Merkle Trees — Ensuring Integrity On Blockchains
- Finding Consensus 1/4: Byzantine Fault Tolerance
- Finding Consensus 2/4: Proof Of Work
- Finding Consensus 3/4: Proof Of Stake
- Finding Consensus 4/4: Alternative Consensus Mechanisms (This article)
- Blockchain Networks & Their Components — A Comprehensive Guide
As we’ve seen extensively in the last couple of posts about Byzantine Fault Tolerance, Proof of Work (PoW) and Proof of Stake (PoS), finding consensus in a decentralized system tends to be a rather tricky and difficult affair.
While PoW and PoS are the most widely used consensus mechanisms in the existing blockchain systems, there are many shortcomings and disadvantages associated with both of them:
Due to the inherent high amount of computational power that is required in order solve the cryptographic puzzle that lays at the heart of Proof of Work algorithms, the energy consumption is immense. This has of course an environmental impact, that is quite often heavily criticized — yet, many supporters argue that this energy intensive process is also one of the strong suits of PoW.
Another issue associated with PoW is the rather low scalability, at least at the base layer (not accounting for second layer solutions like the Lightning Network) — Bitcoin is currently processing about 7 transactions per second and Ethereum about 25 transactions per second — Visa is estimated being able to handle about 25.000 transactions per second!
Part two of the mini series on finding consensus in a blockchain context — Proof of Work.medium.com
When it comes to Proof of Stake, many critiques hover around the aspect that the “rich get richer” and other issues, such as the “nothing at stake” or “long range” problem.
Part three of the mini series on finding consensus in a blockchain context — Proof of Statemedium.com
Due to these limitations, many smart people came up with a lot of interesting alternatives during the last couple of years.
Without any further ado, let’s take a look at some of the most prominent ones.
Proof of Elapsed Time
The first alternative consensus mechanism that we’ll look into is called Proof of Elapsed Time.
This concept was developed by Intel in 2016 and is mainly applied to permissioned blockchain systems — these are blockchains that are not open to the public, where the participants are known and need to identify themselves to the network. Due to this special nature of permissioned systems there is no need to have a cryptocurrency involved, since they normally serve an essential role in creating financial incentives for honest and integer behavior in networks, where the participants don’t know each other.
Intel’s idea revolves around the use of their proprietary Software Guard Extensions (SGX) programming reference manual. What this behemoth of words is describing, is basically a way of providing a secure enclave to developers to protect sensitive data.
This works by creating a so-called Trusted Execution Environment, which ensures that unwanted access is not possible, even when having physical access to the chip.
Based on these properties, Intel came up with their novel consensus mechanism Proof of Elapsed Time. In order to take part in a blockchain utilizing this mechanism, users have to identify themselves to the network and prove that they are running a SGX.
In order to be eligible to validate a block, each computer takes part in a lottery-style scheme where an internal randomized timer system assigns a random timer to each participating computer. The first timer to wake up then gets the right to validate the next block.
This special take on figuring out collectively who gets to validate the next block leads to it being a highly efficient approach, that isn’t very resource intensive.
There is one downside to this though — users need to trust Intel, an intermediary, who is the only entity manufacturing those chips. This can be somewhat tricky, since we saw some vulnerabilities being exposed as part of the Spectre issue.
Proof of Elapsed Time is currently used by Hyperledger Sawtooth, a blockchain developed for enterprise solutions by the Linux Foundation.
If you want to read more about this consensus method, just click here.
Proof of Capacity
Next up we will look at the Proof of Capacity, which was first developed as a “green” alternative to Proof of Work by the cryptocurrency project Burst in the summer 2014.
In order to cut down on the energy-intensive process of repeatedly finding hashes in a cryptographic mining race, Burst chose another approach. Instead of actively mine during the validation process, all the mining is done in advance and only once.
This process is called plotting and it works as follows: the mining is done on a harddrive in advance and creates unique plot files. Compared to Bitcoin’s Proof of Work, this mining is also requiring more computational power, since they use the Shabal hashing algorithm.
Once these plot files have been generated, the software calculates a so-called scoop number. The resulting number represents a “deadline” or a timer and refers to the amount of time that has to pass since the last block before you can create a new one. Therefore the harddrive that has the shortest “deadline” in the network gets to create a new block and receives the financial reward.
You can imagine this system like a lottery system. The plot files are like lottery tickets — a random number is then generated and the one who has the most matching numbers wins. But instead of losing your lottery tickets in the next round you actually get to keep them!
Even though more computational work is needed in the beginning to create all the plot files, this is a one-time only expense, which makes it way more energy efficient that Proof of Work. Also there is no special hardware needed, like ASIC chips, in order to successfully participate in the mining process, which leads to a lower barrier to entry for new users.
If you want a more in-depth explanation of this alternative consensus mechanism, be my guest.
Proof of Burn
Another (fiery) alternative is known as Proof of Burn, which was conceived originally by Ian Stewart and is often dubbed as “Proof of Work without the energy waste”.
Burning coins is a terminology that refers to making coins unusable — for example when they end up at an address that is not usable anymore (because the private key has been lost).
Normally, in order to successfully participate in a Proof of Work based consensus mechanism, users have to invest money and energy into acquiring specialized hardware and to build so-called mining rigs.
The basic idea of Proof of Burn is to create a “virtual mining rig”, where the coins that are being burned represent an investment into those. The more coins are burned, the bigger the virtual mining rig and therefore the higher the chance of being selected as a block validator.
In the context of this consensus mechanism, the coins need to be send to a verifiably unspendable address, also known as “eater adress” — these are randomly generated addresses with no associated private key.
By creating a short term loss for a long term investment, the idea is to promote a long lasting involvement of the users. This is supposed to lead to a greater price stability, as investors are unlikely to sell or spend their coins. They are rewarded over time and can earn lifetime privileges to mine on the system. Most systems support regular activity by giving more weight to recently burned coins.
Yet, critics argue that the resources used to generate the burnt coins is wasted and that the “rich gets richer” problem that is often associated with Proof of Stake applies here as well.
At the moment, Proof of Burn is often used as a complimentary mechanism to PoW/PoS, or when moving from one cryptocurrency to another within one system. One project that is utilizing Proof of Burn is Slim Coin.
Proof of Authority
In 2017, Gavin Wood (one of the founders of Ethereum & Parity) proposed a vastly different alternative to the privacy-focused consensus mechanism before and named it Proof of Authority.
It can be seen as an optimized Proof of Stake model, but instead of staking coins, it uses real identity. On a side note, it’s important to know that this alternative mechanism is mostly used for permissioned blockchains!
So what’s the whole backstory to this idea?
Well, it turns out that in blockchain systems, the stake that people hold of a specific cryptocurrency can have a wildly different value for the different people participating in it. Imagine Tfor example a situation in which you own 100 Bitcoin and no other coins — Alice also has 100 Bitcoins, but this only represents a small percentage of her holdings, since she also owns a lot of Ethereum, Dodgecoin and Jesuscoin.
Due to this different perceived value of the Bitcoins that they own as part of their overall portfolio, they can have very different approaches when it comes to governance and to their overall attitude towards the development of the system.
Proof of Authority therefore tries to establish a system in which a group of trusted validators ensures a fair and integer maintenance of the network — by bringing real social reputation into the mix.
This idea works by limiting the right to validate blocks to a group of pre-approved participants. In order to create this illustrious circle, there are three requirements that have to be met:
- The identities of the validators need to be formally identified on-chain, as well as off-chain (for example through a public database);
- It needs to be difficult to become a validator — this ensures long-term commitment, since financial and social reputation are at stake;
- There must be complete uniformity in the process, so it’s transparent to the rest of the system.
Once somebody passed the rigorous process and becomes a validator, they can now take part in the validation process and receive the financial rewards associated with it. Should they act in a malicious way, they can be easily removed through a governance process.
The advantages of this consensus mechanism is the low computational power that is required, as well the low level of communication needed between nodes in order to reach consensus. Due to the characteristic that the different validators have their real social reputation at stake, it also doesn’t matter if the number of nodes fluctuates slightly.
“It takes 20 years to build a reputation and 5 minutes to ruin it. If you think about that, you’ll do things differently.”
- Warren Buffet
These aspects taken together leads to an increased efficiency in transaction throughout and network consensus.
There are some disadvantages with this system that are often pointed out though — basically it’s simply a slightly more distributed version of a centralized system and some people also simply don’t care about their reputation.
Currently there is one blockchain project that has Proof of Authority implemented and it’s aptly named Proof of Authority Network.
Proof of Importance
Next on our list is the Proof of Importance mechanism.
At first look it seems quite similar to Proof of Stake, but after closes inspection there are some key differences that we will take a look at.
In order to partake in the block creation and validation process, which is called harvesting, nodes (aka users) vest (“stake”) an amount of the blockchain native currency. If they successfully harvest a block, they then receive a financial reward.
So far pretty much the same as your classical Proof of Stake blockchain.
The difference now lays in the metrics that are being used to determine the weight of the stake — or in other words how valuable / influential the stake is. The higher the weight, the higher the chance to harvest a block.
Instead of only taking into account the amount of coins staked and the corresponding coin age, there are a couple of other factors that also play a role.
For example, the net transfers in the past 30 days increase this weight, with more recent transactions leading to a bigger weight.
Also, so-called cluster nodes, that are part of a cluster of high activity are weighted slightly more favorable.
The advantages compared to classical PoS blockchains revolve around to main points.
Firstly, this method encourages using the currency instead of just hoarding it. Secondly, this mechanism guards against the “nothing at stake” problem.
Since there is no requirement for special hardware, the barrier to entry is very low — and the computers can be turned off to harvest.
At the moment there is one big blockchain project that utilizes this approach, which is called NEM.
Directed Acyclic Graph
And now, lust but not least, the cherry on top — Directed Acyclic Graphs (DAG).
Don’t let yourself be intimidated by this behemoth of a name!
While theoretically not being a blockchain, it still plays an important role in the field of distributed ledger technologies.
Blockchains are characterized by linking sequences of lists and grouping them into — surprise, surprise — into blocks. There are some intrinsic problems with blockchains though, especially when it comes to scalability and transaction throughput. When there are a lot of transactions happen during the same time in blockchain systems, it can lead to bottlenecks and “traffic jams” that bring the system to a halt — this is what happenend for example on the Ethereum network, when the Cryptokitties overwhelmed it.
DAGs work in a very different way though. They are used to model influence between different information and can easily overcome these bottleneck problems due to their specific architecture.
If you want to participate in the network, you have to validate other transactions, on order to being able to broadcast your own. This helps to unite the interests of users and miners into, since they are one and the same in these systems.
There a couple of characteristics that make DAGs so special.
First of all, they are acyclic, which means that new transactions reference old ones, but never the other way around.
The latency is also very low and only constrained by the bandwidth — there is no theoretical limit when it comes to scaling.
Another important aspect is that they are feeless, every transaction issued is also a validator, which enables feeless microtransactions.
Due to this characteristic, it is possible to create zero value transactions, with which messages can be send and received.
The last important aspect is so-called database pruning, which refers to the fact that it isn’t obligatory to have the entire history of the system at hand, but rather only a small and relevant part of it.
One of the most prominent projects that exist which makes use of this method is IOTA. Their idea is it to develop and establish their solution as a firm foundation for the Internet of Things infrastructure. Instead of calling it simply a Directed Acyclic Graph, they refer to their database as the tangle.
To read more about DAGs, click right here.
That’s it, we’ve reached the end of this post — thank you very much for your attention, I hope that you walk away somewhat more knowledgeable and that you enjoyed the read.
If you have any comments, questions or constructive feedback let me know I’d love to hear from you!
PS: If you’re looking for helpful and great resources to learn more about blockchain’s paradigm shifting technological potential, check out these awesome resources.