Block Consensus
Proof-of-Stake(PoS) is a consensus algorithm that gives voting power equivalent to the amount staked on a Public blockchain. Unlike Proof-of-Work(PoW)-based blockchains that reward participants that decrypt complex cryptography, Proof-of-Stake give block-producing rights based on the amount of tokens held. PoS-based systems have, as of recent, become a contender for PoW-based systems, as PoS-based blockchains offer high security, high levels of decentralization, and better energy efficiency.
The blockchain, by default, tracks all validators on-chain at all times. By creating a transaction that stakes a certain amount of assets on to the chain, anyone can become a validator. Production of a block is generated through the consensus algorithm, and all validators are eligible to participate in this process.
Previous PoW consensus algorithm used by BTC and Ethereum was regarded as an excessive use of energy to ad infinitum, and this problem is detailed in “EIP1011”. Mentioned within this article are the various problems of PoW, such as the waste of energy, and the monopoly introduced with mining hardware, and the centralization caused by large mining pools. All of these problems can be, and must be solved through a switch over to PoS, this article argues. Ethereum is currently being converted into a full-fledged PoS system after a transition through a stage named Casper FFG (Casper the Friendly Finality Gadget), which is a system employing both PoS and PoW.
Vitalic explains the philosophy behind blockchain consensus algorithm, through his paper titled “A Proof of Stake Design Philosophy.” PoW, he argues, is a method employed by the miners in building the chain through injection of funds, and is representative of a Maximalist philosophy. Vitalic calls the philosophy behind Casper PoS “Cypherpunk” - a philosophy embodying a desire to respect individualism, and to resist against central systems. This is in line with the message contained within the Genesis Block of Bitcoin, a note left by Satoshi titled “The Times 03/Jan/2009 Chancellor on brink of second bailout for banks.” This is the very philosophy behind decentralized public ledgers, and the building blocks of all blockchain systems.
PoW ( Proof - of - work )
Currently, Blockchain consensus algorithm is the one used by most major (by market cap) blockchains. It is the algorithm suggested by Nakamoto Satoshi, the creator of Bitcoin, and the one detailed in the paper “Bitcoin: A Peer-to-Peer Electronic Cash System.” It is used in Bitcoin, Ethereum and other various public blockchains.
The word “Proof-of-Work” signifies the similarity of block producing to actual mining. Allow us to explain PoW through the most commonly known blockchain, Bitcoin. Individual blocks in a blockchain contains a unique hash value, called BlockHash. BlockHash is a value generated from version, Merklehash, bits, previousblockhash, time and nonce values. In order to “mine” the block, a miner must find a specific hash value at the current block height, and this process is done by continuously changing the nonce value to find the right hash value. Because there is no direct correlation the nonce value and the hash value, mining computers enter random values into nonce continuously until the right hash value has been found. In the process of these computations, a large amount of computing power and electricity is consumed.
In case of PoW, the blockchain is protected from attackers by the sheer amount of computing power and electricity required to perform an attack. However, there is still a possibility of an attack succeeding, and when it does, it is not easy to revert. ASIC chip was developed for the purpose of mining, but the possibility of utilizing a large number of these chips to engineer an attack has been raised as an issue. To combat this problem, a blockchain may change its hash algorithm to protect itself from danger, but this too may change by modifying the ASIC mining equipment. A change in blockchain’s hash algorithm requires a hard fork of blockchain, and the cost of this is incurred against the cost of mining countermeasures of ASIC attackers, which does not maintain system integrity through asymmetry. It means there is a need for another consensus algorithm, so the PoS system is receiving much support as an alternative.
PoS ( Proof - of - Stake )
As observed above, PoW ia a method that involves producing blocks through using a tremendous amount of computing power, whether from CPU or GPU. However, with PoS, a method known as “staking” is used to produce blocks. Staking is a method of distributing new blocks based on the amount of monetary units a participants owns on the chain. PoS is a block-producing consensus system that was introduced to overcome the limitations of previous PoW systems.
As of now, there are quite a few PoS consensus algorithms that was introduced. EOS DPoS, Tezos LPoS, Cosmos Tendermint are all but a few of those algorithms. PoS is still in its infancy, and is continually being updated through constructive criticism of the community.
The concept of miners of PoW are replaced with validators in PoS. Two of the most well-known designs of PoS are Chain-based PoS and BFT PoS. For Chain-based PoS, validators are chosen by periodic random validator selection to choose a block producer. For BFT PoS, block producers are chosen at random. The block that is to be produced is then put through a Finalization process in which the Finality of the block is verified through a voting process of the validator group.
For PoW, if two blocks are to be produced at equal heights to be incorporated into the chain, the chain with higher heights is chosen to be the more legitimate one. For PoS, consensus among the validators are used to determine the legitimate block, to prevent a party with higher hash power from altering the chain on purpose.
For EOS, a system known as DPoS is employed. It is criticized for its lack of decentralization, as only 21 BPs that were selected through a voting process are eligible for producing blocks. These 21 BP positions can be claimed by wealth, and they can maintain their power in the same fashion. They can also conspire for their own profit, by producing blocks that are in their favor, and actively declining the ones that go against their will. The fact that the voting against them, and the shift in power and funds occur through the blockchain is a subject for much discussion as the block will be produced by the already-chosen 21 members. PoS can be designed in a variety of ways, and can be improved through such discussions.
The core safeguard in decentralization of blockchain is the design that causes the destruction of the system to cost more than to maintain it. In this regard, PoW is limited in many ways. PoS, however, is maintained by the validators that participate in the system. They become validators through staking, and are rewarded in growing and maintaining the chain in monetary terms. They are also punished if they were to harm the chain, in monetary terms and other ways. PoS system is the sum of various functions within it, such as what constitutes as efforts to improve the ecosystem, and the compensation in such efforts, and the definition of harming the ecosystem, and the punishment that follows. The blockchain is maintained by designing the security in asymmetrical fashion, as to make the punishment far harsher than the rewards.
Byzatine Fault Tolerance
The idea of implementing a Byzantine Fault Tolerance (BFT) consensus came from the challenges we faced while building blockchain solutions for banks. We chose Ethereum as the baseline protocol mostly because of its smart contract capability. However, the built-in consensus, proof of work or Ethash, is not the ideal choice when settlement finality and minimum latency is required.
Orbit’s consensus algorithm was designed based on the Practical Byzantine Fault Tolerance (PBFT) algorithm. The logic behind our high performance and instant finality is to support the connection of many assets and usability Dapp services utilizing the Orbit chain. We operate Ethereum-based blockchains that support Ethereum Smart Contract. Ethereum has been used as a platform for a long time to build decentralized applications (DApps) through the stability of Ethereum smart contract. Additionally, Ethereum 2.0 technologies such as Plasma, Casper, and Sharding are constantly being updated to create a fully decentralized and permissionless platform. Orbit chain is operated as a PoS consensus blockchain based on the Orbit BFT (OBFT) consensus algorithm which improves the existing Ethereum PoW consensus issue.
The Orbit BFT algorithm is a 3-phase consensus algorithm that consists of PRE-PREPARE, PREPARE, and COMMIT. It confirms immediately after block generation by eliminating the issues caused by the generation of multiple blocks at the same height occurring in existing Ethereum, Bitcoin, and EOS. Therefore, the instant finality is expected to be very supportable in a blockchain where many financial transactions occur.
Block generation consensus by a selected few representatives of staking based PoS improves transaction performance limited to 10-30 per second in previous Ethereum to enable fast block generation and high transaction throughput.
Block Proposer Selection
For a fair selection of the next block producer, a completely unpredictable random number is used for the process. The random variable is generated through RANDAO and VDF, and each individual block producer is chosen to produce the block, and the validators validate the production.
RANDAO
RANDAO is performed through the function “commit reveal scheme”. Each validators submit a random hash value generated locally on the blockchain. When all the hash values have been collected, the REVEAL function occurs, where all the secret hash values are then calculated through an XOR calculations.
For RANDAO, there is a possibility of a Last Revealer Attack. If the last person to submit the hash value is compromised, there is a possibility of engineering the random number, and RANDAO may become a predictable process.
VDF ( Verifiable Delay Function )
To prevent Last Revealer Attack from occurring, we have implemented a Verifiable Delay Function, or VDF. VDF is a function that solves a computational problem that takes a very long time to decode, but very short time to verify should the input and the output values exist. Through VDF, we can intentionally design the output function so that the last revealer hash value is one that cannot be predictable.
Last updated