Comparing Blockchain Algorithms
The entire idea behind blockchain algorithms is to decentralize a network, allowing the users of the network to share control the network or typically money. Instead of putting this control into the hands of governments and corporations.
There have been various attempts to create better algorithms to ensure the currency is more decentralized, more secure, processes transactions better and more.
We compare the most interesting ones and provide a glimpse into their pros and cons.
Algorithms compared in this article:
- DAG - Directed Acyclic Graph
- PBFT - Practical Byzantine Fault Tolerance
POW - Proof Of Work
The original blockchain algorithm. Proof of Work involves numerous computers choosing random numbers as fast as they can then checking to see if they win themselves the right to mine with the right number. This is like playing the lottery.
This major advantage to this algorithm is that it's simple and elegant.
Unfortunately time has proven this to not be decentralized enough and to use enormous amounts of electricity and has issues scaling. The electricity is costly and leads to a security/transaction fee tradeoff. High transaction fees are needed for sufficient security.
POS - Proof of Stake
Proof of Stake is the original algorithm that promised to improve upon the energy inefficiency issues of Proof of Work. Proof of Stake has a few issues with it. Proof of Stake weights mining power based upon the Stake aka account balances of it's users. The richer you are, the more power you have.
- Energy Efficient
- Aligns the investment interests of miners and token holders
- All the disadvantages basically boil down to: not really decentralized.. so what's the point?
- Concentrates the mining power into the hands of the wealthy few.. exactly the problem cryptocurrency is trying to solve and the whole point of cryptocurrency
- Rich get richer by collecting transaction fees, and power becomes more concentrated over time
- It has proven to be very hard to scale Proof of Stake because once you try to shard Proof of Stake, meaning break it into interconnected blockchains, you find yourself with miners able to move large concentrations of wealth to any given shard. Which centralizes those shards. The best proposed solution is for miners to randomly pick a shard, which means miners have to keep track of every shard.. which defeats the purpose to sharding.
- Can't figure out which blockchain is valid without trusting someone to tell you the initial state of the blockchain. Which defeats the purpose of building a trustless currency.
POP - Proof of Person
Proof of Person uses the social networks fundamental to society to verify its miners in a privacy friendly, fully decentralized manner. This is the only way I've seen to achieve provably complete decentralization. This ensure that every person mines with equal mining power. Given decentralization is the whole point of cryptocurrency.. this is a huge deal.
We believe this is the most promising algorithm of them all, hence the reason we invented it and Frink uses it as it's internal algorithm.
- 110 Million times more energy efficient than Proof of Work at Bitcoin's size.
- Everyone mines as an equal
- Easy to shard into communities of miners for high performance
- Only one that can provide free transactions
- Referral program
- Knowing the number of users and their usage can help value and stabilize the currency
- Though extensive testing and research has been done on Social Network Sybil Detection and it has been proven to work in other fields, it has not yet stood the test of time.
- Less inherent privacy. Must be added through the use of Zero Knowledge Proofs.
POI - Proof of Importance
Proof of Importance uses Proof of Stake mixed with number of transactions spent by miners.
- Designed to prevent the rich getting richer leading to centralization of Proof of Stake
- The rich still have the most money to spend and trade amongst themselves to stay in power
- Susceptible to dummy transactions which could be used to get excess power
POC - Proof of Capacity
This interesting and unique algorithm has been pioneered by Burst coin. Proof of Capacity allows cryptocurrencies to pre-compute Proof's of Work and save them to a hard drive.
- Roughly 4000x more energy efficient than Proof of Work
- Has proven more decentralized due to buying a hard drive being doable and already available for all and no ASIC equivalent providing a cost benefit to buying specialized hardware.
- Increased risk of hacker networks or storage facility centralizing and taking over the network as they already own large amounts of unused storage
- Vulnerable to a 'Nothing at Stake Attack'
DAG - Directed Acyclic Graph
The idea behind a directed acyclic graph is to use new transactions to confirm old transactions. Every transaction builds off of the old one. Many DAGs promise fast transaction confirmation, incredible decentralization, incredible scalability, and free transaction fees. However, this is simply marketing hype that they are not actually capable of achieving.
- Faster weak confirmations for transactions
- Extremely Insecure (Learn More)
- Safe Energy - Security Tradeoff as Proof of Work
- Problem is, this algorithm fails on all accounts except maybe slightly faster weak transaction confirmations.
Practical Byzantine Fault Tolerance (PBFT)
In a PBFT system, an initial group of miners are chosen in a centralized way, then a sufficient number of miners must sign off on any given block to come to consensus.
- Fast consensus
- Energy Efficient
- Requires trusted miners which defeats the point of decentralization
- Message heavy requiring large amounts of storage for every block