Equilibrium Consensus (1)

EQBR
EQBR
Published in
6 min readJul 14, 2022

Foreword

Hello, welcome back to Volare! Today, we would like to delve ourselves a little into the core of the Volare network, the consensus algorithm. We will explain PoW and pBFT methods, which account for the majority of the blockchain market, and then Volare’s consensus method using Equilibrium’s improved consensus technology evolved from pBFT.

PoW (Proof of Work)

PoW, which is a method of proving through work, is a method of proving blocks by finding hash values. The reason for calculating the hash value is to maintain the security of the blockchain. All blockchains have a block generation cycle (10 minutes for Bitcoin), and every generation cycle creates a block that is added to the chain. And the blocks created in this way contain transaction history.

In the case of Bitcoin, the miners selectively select and mine transactions that take place around the world over a 10-minute period. When this is done, the blocks are then confirmed and the transactions in the block become reliable data.

Blockchain is public, so anyone can be a node, and there are no regulating administrators. We call nodes that behave maliciously in the network Byzantine nodes, and the blockchain must maintain a reliable ledger unless the Byzantine nodes exceed a certain percentage. PoW is the concept of ‘I’ve done a lot of computation to get the hash value, and my resources that went into it guarantee the blocks I’ve created’.

The desired hash value in PoW method is a value below the mining difficulty level. It is guaranteed that everyone must spend an average of 10 minutes of computing power to create a new block. In order to ensure 10 minutes of time, Bitcoin adjusts the mining difficulty for every 2,016 blocks. If it took more than 20,160 minutes to create 2016 blocks, the difficulty level is lowered, and if it took less, the difficulty level is raised. The mining difficulty is adjusted by the hex value and the hash value that the node must obtain for block generation is the hash value below the difficulty level. Let us illustrate it with an example.

0x00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

The above hexadecimal mining difficulty is a 32 byte number with 8 zeros in front and 56 F’s behind.

1)0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

2)0x00000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

3)0x0000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

The hash number 1 is greater than the mining difficulty. Number 2 is also a higher value than the difficulty target, and finally, the hash value of number 3 is less than the difficulty, so you can create blocks.

The resulting blocks must be propagated and validated throughout the network because they come from miners.

For example, let’s assume created blocks through mining are going to be added after the P block.

However, since mining is done simultaneously from all mining nodes, the content and order of transactions in a block may differ as shown in the figure below.

At a single point in time, let’s assume a node in Canada and another node in Australia are successful at mining and creating blocks almost simultaneously. If the blocks created by a node in Canada are called Red (Block A) and the blocks created by a node in Australia are Green (Block B), the post-creation propagation process is shown in the following figure.

The nodes adjacent to the node in Canada recalculate the block hash of the Red block received and verify that the value is less than a specific number, and therefore a correct value, then add the Red block to the Blue block that it had. In the same way, Red and Green blocks are propagated to nodes distributed throughout the world by nodes adjacent to the Australian node.

At this point, the Russian node created a new Pink block and added it after Green block.

Similarly, a node in Portugal added a Red block after Blue block, and Pink block is delivered as shown in the picture below, resulting in branching in the blockchain.

In PoW method, there is a standard for which blockchain to trust when such a branching occurs and subsequently a collision occurs. Bitcoin’s method to select the longest chain is usually to select the sixth block thereafter as a confirmed and reliable chain.

Hence, transactions generated in Bitcoin by the users are normally confirmed and considered reliable on an average of about an hour. Ethereum, which also uses PoW, has a relatively shorter block generation and verification time than Bitcoin, but still needs to wait a few minutes for the transaction to be completely processed.

Summary

To summarize, PoW records transactions through time-stamping for a series of records that occur over time, and these recordings based on hash values of transactions have irreversibility that cannot be changed. The longest chain is used to prove the sequence of events that occurred, as it is considered to have used the largest pool of computing power (CPU) to process. The transaction details of each node are shared as much as possible within the network, and nodes are free to participate and leave the network. If a malicious attacker wants to manipulate transactions on the blockchain, the attacker must retain 51% of total hash power of the entire network, and this is practically impossible because the attacker’s profit is lower than the cost.

Bitcoin uses a method called SHA-256 to generate a nonce, which is a random number that increases by one to find a hash value that meets certain conditions, and it takes an average of thousands of trillion attempts to find that value, and as such, a miner with more computing power is at a relative advantage. Groups of miners are called mining pools, and if enough mining pools collude to retain more than 51% of the total network computing power, there is a risk that Bitcoin’s security could collapse.

Moreover, Bitcoin mining involves the consumption of enormous amounts of electricity and energy. As a typical PoW, Bitcoin consumes 61.4 Twh (Terawatt-hour), which is equivalent to the amount of energy consumed in the Czech Republic, and the energy consumption continues to grow as mining competition heightens. PoW is a proof method inevitable to consume large amount of energy. Bitcoin also emits equally large amounts of heat and noise as byproducts.

Finally, because it takes a long time to create blocks through mining and confirming, users who are accustomed to conventional financial systems for services such as remittance and payment that can be calculated in seconds, do not find blockchain technology to be practical.

We’ve explained the advantages and disadvantages of PoW method in this post. In the next post, we will learn more about pBFT and Volare’s consensus algorithm developed for commercial service.

Reference

https://www.eqbrh.com/

https://medium.com/dnext-post/blockchain-core-series-pow-61227506a8c7

https://volare.network/

Bitcoin: A Peer-to-Peer Electronic Cash System

https://ethereum.org/en/whitepaper/

Mastering Bitcoin — http://chimera.labs.oreilly.com/books/1234000001802/ch08.html#forks

--

--