Delegated Byzantine Fault Tolerance (dBFT) by @hdnakum- Steemit Crypto Academy Season 4 - Homework Post for Task 6

in SteemitCryptoAcademy3 years ago

Hello Steemians,

Good afternoon to everyone,

Greeting to steemitcrytoacademy -The most knowledge enriching community on the steemit platform.

I'm @hdnakum. After completion of five homework lectured by dear professors such as @sapwood, @awesononso, @yousafharoonkhan, and @stream4u, I have dared to complete the next one named Different Types of Consensus Mechanisms by @sapwood. I think it is the third homework from @sapwood out of the first six homework. You Rock it @sapwood Sir.


Copy of Copy of Copy of Copy of Mustard Video Centric YouTube Channel Art.jpg
Made with Canva

I have read the lecture carefully and understood that every blockchain follows a consensus mechanism such as proof of work (Bitcoin, Ethereum), Proof of stake (Cardano, Polkadot, Soon Ethereum), Delegated proof of stake (Steem, Tron, EOS, Terra), Proof of history (Solana), Proof of Authority (VET, Cronos) and Delegated Byzantine Fault Tolerance (NEO, TON, Zilliqa).

There as three questions asked by @sapwood as usual, I will be answering the third question about Delegated Byzantine Fault Tolerance (dBFT) because those who are using the Steem platform are most probably aware of proof of work (PoW), Proof of stake(PoS) and Delegated proof of stake (DPoS). I will try to convince you guys that how the dBFT is best in the game of Consensus mechanism.

lets start.png

MAIN QUESTION:

Name a few Blockchain projects which use dBFT in combination with other consensus mechanisms? Indicate the scaling capacity? Explain dBFT along with the pros and cons?.


Question 1

Explain dBFT along with the pros and cons? Indicate the scaling capacity? Name a few Blockchain projects which use dBFT in combination with other consensus mechanisms?

Before understanding the Delegated Byzantine Fault Tolerance (DBFT) consensus mechanism. We need to understand the word Byzantine general problem (Fault).

1. BYZANTINE GENERAL PROBLEM

Imagine that the 4 generals (from the different geographical regions) of the Byzantine empire have surrounded the City of Rome to attack and win. In order the win over Rome, All generals needs to agree on either attack or retreat in unison. If any general act opposite of the consensus decision (at the time of the attack), the byzantine empire army will be defeated badly.

The decision (before surrounding Rome) to attack or retreat is put to vote and whichever received more than 50% votes is what all the generals agree to do. But the problem with this is, any member of general can betray the byzantine empire. Some may be working improperly and making bad decisions. Moreover, all the generals are from different geographic regions and the couriers carrying the votes (before circling Rome) on behalf of generals could be bribed or delivered the completely wrong message. To tackle this problem, the loyal generals (Not corrupt ones) need to find a way to reach a solid decision (consensus). The entire scenario is known as the Byzantine general problem.


Untitled-1.jpg
Explaining Byzantine general problem- Made with Adobe illustrator

Don't you feel the above byzantine scenario is analogous to the problem we are facing in distributed computing (same as generals from the different geographical regions) systems reaching consensus despite the presence of bad actors ( delegators or speakers (same as bad general or bad messenger)?.

2. DELEGATED BYZANTINE FAULT TOLERANCE CONSENSUS MECHANISM (dBFT)

(1) The Basic understanding of dBFT
The Delegated Byzantine Fault Tolerance (dBFT) consensus mechanism was first adopted by Neo blockchain. In the Neo Platform, every NEO token holder has been given a right to vote who will be their delegate (leader). These various elected delegates make laws on the modus operandi of the Neo blockchain platform. If major NEO holders have disagreed with the laws (work) proposed by any delegate, they can vote and elect a new delegate anytime.

When there is time to upgrade the system or any law, the group of delegates assign a randomly chosen delegate as speaker. The speaker then propose a law and passed it to delegates for voting. if 66% or above of delegates agree with the proposed low or upgrade, then it is passed and finalized. If less than 66% are in agreement, the new speaker will be randomly selected again and the processes start again and again until the consensus is reached.

Overall there are two possibilities, either speaker can be dishonest or the delegate can be dishonest to create a hurdle to reach a consensus.

  • If the Speaker is Dishonest
    For example, as shown below, the speaker sends correct information A to delegate 1, and wrong information B to delegate 2 & 3. Now, Delegates 2 and 3 would not calculate the same consensus as to the dishonest speaker and won't verify the transaction, resulting in two rejections from delegates 2 and 3. Delegate 1 has sent confirmation will confirm the transaction but still the transaction will be failed because 66% of votes went in favour of rejection of the transaction.


dishonest speaker.jpg
What if The Speaker is Dishonest- Made with Adobe illustrator

  • If the Delegate is Dishonest
    If you have an honest speaker and one dishonest delegate 3, the law proposed by the speaker will easily get validated because honest delegates 1 and 2 will verify the speaker's proposal. Two out of three votes (66%) in favour of the speaker's proposal will be passed easily. That's how the Delegated Byzantine Fault Tolerance (DBFT) consensus mechanism works faster than any other consensus mechanism by ignoring bad actors.


dishonest delegate.jpg
What if The Delegate is Dishonest- Made with Adobe illustrator

All and above, dBFT is more like Delegated proof of stake (dPos) with more power provided to their native token holder (large scale participation). In the case of the NEO blockchain, the Neo holder will decide whom to choose as a delegate.

(2) Basic Requirement to become a successful Delegate
In the dBFT consensus mechanism, Anyone can be a delegate and can serve the blockchain wholeheartedly but there are still some parameters to be fulfilled for who is willing to be a delegate.

  • User must have to reveal his identity to become a delegate.
  • User must have a fast and reliable internet connection.
  • User must have sufficient equipment.
  • User must have 1000 Gas tokens.
  • User must be loyal to the Network.

(3) Advantages (Pros) of the dBFT consensus mechanism

  • The blockchain NEO that uses the dBFT consensus mechanism produces one block in just 20 seconds.
  • The Transaction per second (TPS) is 1000 for the blockchain using the dBFT consensus mechanism.
  • The Blockchain using the dBFT consensus mechanism (Neo, ) is quite energy-efficient unlike proof of work (Bitcoin).
  • To succeed in the transaction, more than 66% of delegate votes should go in favour of it otherwise transaction will be failed - isn't it see as Super secure?.
  • There is and there will never be Hard Fork in Neo Blockchain.
  • Despite the presence of corrupted nodes/delegates, dBFT reaches a consensus.

(4) Disadvantages (Cons) of the dBFT consensus mechanism

  • The dBFT consensus mechanism work under the Centralized system because the stakeholder should know delegates before voting for them.
  • A fully decentralized blockchain can not use the dBFT consensus mechanism because it works only by known (by identity) delegates/nodes whereas decentralised blockchain works on the principle of anonymity.
  • The lack of anonymity in the blockchain using the dBFT consensus mechanism does not guarantee privacy.

(5) The scaling capacity?
Transaction per second (TPS) of bitcoin is approximately 5-7 and ethereum can manage double of them, 12 TPS only. you would be surprised to know that VISA alone (web 2,0) manage 1760 transactions without using so-called new technology. What's the use of new blockchain technology if we slow down instead of aiming at 2000 transections per second (TPS). New blockchain, Solana blockchain successfully managed 1000 TPS using the Proof of History (PoH) consensus mechanism.

The NeO blockchain which uses delegated Byzantine Fault Tolerance (dBFT) consensus mechanism, as discussed above, have a plan to offers 10000 TPS. Now it is seating at 2000 TPS, still highest than any other blockchain.

(6) Projects Using BFT proof of Stake
There are several well-known projects which use proof of stake (PoS)consensus mechanisms such as Cardano, Polkadot, Ark, Lisk, Waves, Tezos, BOScoin. As the Delegated Byzantine Fault Tolerance (dBFT) is quite new and very few projects have exposure to the dBFT consensus mechanism because it takes decentralization of any blockchain away from it. However, there are some well-known projects such as Neo, Tendermint, Ripple, Stellar, and Zilliqa (POW/pBFT).

Out of all the above projects, Neo is the only project which uses Delegated Byzantine Fault Tolerance (dBFT) fully. Tendermint, Ripple, Stellar uses cocktail of BFT and PoS consensus mechanism. Governance of Neo blockchain consists of four main stages as shown below.


neo.jpg
Governance of Neo blockchain Source

There are two governing tokens of the Neo Blockchain. One is Neo Token and Another is Gas Token. Neo Token holders can vote for electing the Delegate. Each neo token is considered as One vote. There will be 21 candidates elected through this kind of Neo token-based election.

Five Gas Tokens are minted by every new block produced by 21 delegates. These tokens are distributed as below.


token dis.jpg
Gas Token Distribution Source

divider with threesteem.png

Conclusion

To be frank, I had no idea about Delegated Byzantine Fault Tolerance (dBFT) consensus mechanism before reading this valuable Homework 6 by @sapwood. There is a bunch of consensus mechanisms (PoS, DPoS, PoH, PoA, PoW) out there but I have preferred to write about this because very few students have attended this question. Moreover, this kind of new thing excites me to study and write about. I have learned a lot about dBFT by watching some youtube videos as well. I think that DBFT is going to be one of the best consensus mechanisms. Except for a bit of loss of decentralization, Thr DBFT consensus mechanism overshadows all other consensus mechanisms (PoS, DPoS, PoH, PoA, PoW). Thank you all for bearing with me. Have a great day ahead

divider with threesteem.png

cryptoacedemy info.gif

NOTE line.png

All images used above are originally made by @hdnakum using Canva and Adobe illustrator. ©2021 @hdnakum All Rights Reserved

Sort:  
Loading...

Coin Marketplace

STEEM 0.18
TRX 0.14
JST 0.030
BTC 58659.71
ETH 3164.52
USDT 1.00
SBD 2.43