Bravo’s approach to solving “Byzantine general” dilemma

in blockchain •  6 years ago 

In this article, I wanted to clarify why Bravo’s use of “Federated Byzantine Agreement” is better compared to the Proof of Work consensus mechanism used in Bitcoin or the one used in Ripple.

The Byzantine General problem is about the dilemma

Byzantine refers to the Byzantine Generals’ Problem, an agreement problem in which a group of generals, each commanding a portion of the Byzantine army, encircle a city. These generals wish to formulate a plan for attacking the city. In its simplest form, the generals must decide only whether to attack or retreat. Some generals may prefer to attack, while others prefer to retreat. The important thing is that every general agree on a common decision, for a halfhearted attack by a few generals would become a rout, and would be worse than either a coordinated attack or a coordinated retreat.

The problem is complicated by the presence of treacherous generals who may not only cast a vote for a suboptimal strategy, they may do so selectively. For instance, if nine generals are voting, four of whom support attacking while four others are in favor of retreat, the ninth general may send a vote of retreat to those generals in favor of retreat, and a vote of attack to the rest. Those who received a retreat vote from the ninth general will retreat, while the rest will attack (which may not go well for the attackers). The problem is complicated further by the generals being physically separated and having to send their votes via messengers who may fail to deliver votes or may forge false votes.

Approach to this dilemma :

The problem here is really about reaching consensus where it is impossible for every “soldier” to communicate amongst each other since there were no phones back then. The approach to this problem nowadays can be answered in multiple ways and, thanks to technology, one of the first answers was to create a central authority that would determine the consensus but will also give them the power to dictate and change terms as they like until Bitcoin came to existence.

Bitcoin (BTC) decided to do things a little differently, and create a decision process where every voter is connected in a peer-to-peer network in a distributed ledger, and this brought a lot of advantages in term of security, trust, and speed. In order to reach consensus, nodes on a blockchain validate blocks of data by reaching consensus on the solution to a given problem. A Byzantine Agreement is reached when a certain minimum number of nodes (known as a quorum) agrees that the solution presented is correct, thereby validating a block and allowing its inclusion on the blockchain.

Ripple (XRP) decided to take things to a different level and by giving up on some features of Bitcoin, so they could focus on speed, they tried to answer to this problem in a different way. In case of Ripple, validators (or nodes) are selected by the Ripple foundation. These validators send a message back and forth and use a voting process to confirm new ledger. If over 66% validators agree on the ledger, it is included in the network. It is significantly faster and efficient compared to PoW consensus used by Bitcoin and PoS consensus, but compromises on decentralization.

Bravo’s approach:

To answer to the general’s problem, Bravo is developing Federated Byzantine Agreement (similar to Stellar) where no recommended validator list is chosen by central authority instead each validator decides which validator or combinations of other participants to trust making it truly decentralized.

If every validator (every node) do this and select a group of other trusted nodes, you build a decentralized form of validation that leaves out the bad performers for not being included in the trust groups. The validations occur in a form of a cluster where the groups that need to verify the transactions are able to settle and validate the transactions in a faster fashion.

Validators (or nodes) use a voting process to agree what should be included in the ledger by signing their approval of new ledger using their private key. If over 66% validators agree on that ledger, it is included in the network.
In case of PoW, if bad actors control 51% of computing power on the network, they dictate consensus Vs in Bravo’s FBA approach, since validators sign their approval using their private key and need 66% approval, for bad actors to guess private key of each validator is impossible and are left with collusion making Bravo’s blockchain more secure and hence nearly impervious to a Sybil attack.

More about Bravo :

The BRAVO blockchain is the culmination of years of research, user feedback, design and engineering. Blockchain technology will allow BRAVO to scale at a faster rate and accommodate a much larger user base.

BRAVO is creating a hybrid blockchain technology that consists of a public and private blockchain. The public blockchain is based on the Federated Byzantine Agreement consensus algorithm which we have seen implemented by Stellar and Ripple, while BRAVO’s private, ‘Incognito blockchain’ is based on Proof-of-Stake algorithm. The BRAVO blockchain integrates these two technologies together giving end-users control/ choice over their transaction.

To know more about Bravo

Whitepaper: https://bvo.trybravo.com/BRAVO_Whitepaper_V1.pdf
Website: http://bvo.trybravo.com
Chat with like-minded: https://t.me/BRAVOPay
I have joined Bravo bounty campaign, If interested join using below registration link
Register: http://bvo.trybravo.com/?refer=132696

About me

BitcoinTalk profile link: https://bitcointalk.org/index.php?action=profile;u=2352486

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!