What Proof-of-Work and Proof-of-Stake
Proof-of-Work and Proof-of-Stake are the two best-known cryptocurrency consensus algorithms. They offer mechanisms of proof of work that differ in their structure.
What is Proof-of-Work
Proof-of-Work (PoW – literally: proof of work) is an algorithm for protecting distributed systems from abuse (DoS attacks, spam mailings, etc.), the essence of which boils down to two main points:
- The need to perform a certain rather complex and lengthy task;
- The ability to quickly and easily check the result.
PoW-tasks are not originally intended for humans, their solution by a computer is always achievable in the deadlines, but it requires large computing power. At the same time, verification of the obtained solution requires much less resources and time.
Who coined the term Proof-of-Work
The Proof-of-Work concept was first described in 1993 in Pricing via Processing, Or, Combatting Junk Mail, Advances in Cryptology (by Cynthia Dvork and Moni Naor). Although the term itself has not yet been used in the article, the authors proposed the following idea:
“In order to access the shared resource, the user must calculate some function: rather complicated, but feasible; This way you can protect the resource from abuse. ”
In 1997, Adam Beck launched the Hashcash project dedicated to the same anti-spam protection. The task was formulated as follows: ‘Find a value x such that the SHA (x) hash would contain the N most significant zero bits.’
The system suggested hashing partial inversions when sending via email. To calculate the corresponding header, about 252 hash calculations are required, which must be recalculated for each send. And if additional calculations of obstacles do not create obstacles for sending several ordinary letters, then sending spam makes the need for constant recounting very resource-intensive. At the same time, the verification of the correctness of the calculated code is very fast: a one-time calculation of SHA-1 with a pre-prepared label is used.
What does Proof-of-Work have to do with cryptocurrencies
On the Bitcoin network, the PoW mechanism was used as a means of reaching consensus (a consensus on which version of the blockchain is considered correct). At the same time, the creator of the first cryptocurrency Satoshi Nakamoto took the idea of the Hashcash project mentioned above, adding to it a mechanism of varying complexity – a decrease or increase in N (the required number of zeros) depending on the total power of the network participants. The computed function is SHA-256.
In simple words, the PoW mechanism provides the ability of a network node (node) to verify that a miner (in the role of a node that adds a new block to the blockchain) has actually performed the calculations. This process includes an attempt to find a block header hash (a blockchain part that contains a link to the previous block and the summed value of the transactions included in it), which in its value will correspond to the current level of complexity.
Is the complexity of the calculation ‘complicated’
These calculations can only be done interactively, and the complexity is set at such a level that it really turns out to be difficult. At the same time, checking the results of calculations remains simple. The nodes can always make sure that the miner has found the correct value, however, since the process of finding the block is very laborious and random, it is impossible to accurately predict which miner will solve the problem and find the block.
In order for the system to recognize the block as valid, it is necessary that the value of its hash be lower than the current target. Thus, each block shows that a certain work has been done to find it.
Each block contains a hash of the previous block, forming a chain. It is impossible to change a block – it is only possible to create a block at the same height, which will contain the hash of the previous block. To carry out such a process, it is necessary to do the work of finding all the previous blocks. The high complexity of this process protects the blockchain from unauthorized access and double spending.
How has Proof-of-Work influenced mining
Bitcoin’s Proof-of-Work spawned a whole mining industry and became an impetus for the development of specialized equipment, since the computing resources spent on hashing blocks are huge and far exceed the capacities of the largest supercomputers.
At the same time, the notorious “reverse side of the coin” was not without: PoW quickly turned into a monster, devouring electricity in the race for mining profitability. In 2012, the total capacity of the Bitcoin network already exceeded the most powerful supercomputer in the world in terms of performance, and the first alternative appeared on the horizon – Proof-of-Stake.
What is a Proof-of-Stake
An alternative consensus mechanism, first implemented in 2012 in the cryptocurrency PPCoin (now known as PeerCoin). The idea is to use a “stake” as a resource that determines which particular node gets the right to mine the next block.
In the Proof-of-Stake approach, the nodes also try to hash data in search of a result less than a certain value, but the complexity in this case is distributed proportionally and in accordance with the balance of this node. In other words, in accordance with the number of coins (tokens) in the user’s account.
Thus, a node with a greater balance is more likely to generate the next block. The scheme looks quite attractive primarily because of the small requirements for computing resources, and also because there is no question of ‘wasted’ capacity.
What are the pros and cons of Proof-of-Stake
Typically, the following arguments are in favor of using PoS:
- Significant funds are required to carry out an attack, which makes it financially impractical.
- At the same time, if an attacker has a large number of tokens at his disposal, he himself will suffer from the attack, as this will violate the stability of the cryptocurrency.
Arguments of Concern:
- PoS provides additional motivation for the accumulation of funds in the same hands, which can negatively affect the decentralization of the network.
- If a small group is formed that collects large enough funds, it will be able to impose its rules on the network of the other participants.
Additionally, there is the Nothing-at-Stake problem (empty stack), which makes PoS systems inherently unstable in the eyes of many cryptocurrency enthusiasts. An attacker can try to fork a blockchain, that is, create a longer alternative chain by spending ‘nonexistent’ resources. Moreover, other miners can support it, since they also do not spend “genuine” resources. Through a fork, an attacker can reject certain transactions and carry out a “double waste” attack.
Disputes between proponents of Pow and PoS have been going on for a long time, but the nature of these disputes is more theoretical. Practice shows that the role of the developer in matters of security is still very high.
At the same time, many consider the hybrid version of PoS and PoW systems to be the safest solution. This approach is already actively practiced – many cryptocurrencies have a PoW stage, when a currency is issued through classic mining, and a PoS stage, which occurs after the completion of the issue.
Nevertheless, despite the fact that PoS systems will always be easier to implement and generally more reliable in terms of security, most serious cryptocurrencies will most likely not refuse PoW.
What other evidence mechanisms are there in cryptocurrencies
Proof-of-Work and Proof-of-Stake can be considered the two most popular consensus algorithms in the world of cryptocurrencies, however, in addition to them, there are a number of mechanisms that have their own subtleties and features.
Their list may be quite large, so we list a few of the most famous:
- Proof of Activity – a standard hybrid scheme combining PoW and PoS;
- Delegated Proof of Stake is a generic term that describes the evolution of basic consensus protocols based on stake confirmation. DPoS is used in BitShares, EOS and Tezos;
- Proof of Burn (proof of burning) – “burning” occurs by sending coins to an address from which it is guaranteed not to be spent. Getting rid of his coins in this way, the user receives the right to lifetime mining, which is also arranged as a lottery among all owners of burned coins;
- Proof of Capacity – Proof of the popular idea of megabytes as resources. It is necessary to allocate a significant amount of disk space in order to be included in mining;
- Proof of Storage (proof of storage) – similar to the previous concept, in which the allocated space is used by all participants as a shared cloud storage.