Steemit Crypto Academy Season 2 Week 5|| homework post for @alphafx|| Consensus Algorithms

in SteemitCryptoAcademy3 years ago (edited)

this week3.png

Good day fellow students, hope you guys enjoyed the last class as I did? and to our dear Prof @alphafx, we say a big thank you for making all your classes simple for us to understand!

Write on any of these consensus algorithms extensively

  • Stellar Consensus Protocol
  • Proof of Capacity
  • Proof of Burn
  • Proof of Elapsed Time

Out of the above questions, I will be answering the question in the first bullet which says

“Stellar Consensus Protocol”

INTRODUCTION TO STELLAR CONSENSUS PROTOCOL

INTRO.png

Stellar Consensus Protocol is the first and the underlying consensus algorithm of the Stellar Network. It makes Stellar a decentralized and permissionless network at the same time. This consensus protocol is implemented under an agreement called Federated Byzantine Agreement (FBA).
The Stellar Consensus Protocol (SCP) uses decentralized, leaderless computing system efficiently to reach outcomes on some decisions. The Stellar payment network uses Stellar Consensus Protocol in providing a consistent view of the network's transaction history to all users.

CONCEPTS OF STELLAR CONSENSUS PROTOCOL

CONCEPTS.png

1. Federated Byzantine Agreement (FBA) & Byzantine Agreement:
Federated Byzantine Agreement was created in 2015 by David Mazières, a professor of Stanford.

It explains how all nodes in a network reaches an agreement on blockchain, though the agreement is not limited to blockchain alone and the major characteristics part of Federated Byzantine Agreement in accordance with what we have in the Stellar consensus protocol whitepaper are;

  • No-one is restricted from becoming a validator in the network, anyone is allowed.

  • Consensus can be reached in a few seconds.

  • Participants are free to choose quorum slices of their trust without any restrictions

  • Digital signatures and hash families are used in a way to protect the network even against immensely high computing power.

Note: The key difference between a Byzantine agreement system and a federated Byzantine agreement system according to stellar website is that “in Federated Byzantine Agreement, each node chooses its own quorum slices of trust.”

2. Quorums: As it's defined in dictionary; “it is a gathering of the minimal number of members of an organization to conduct business”
Quorums simple means a group of participants in stellar consensus protocol (trustworthy) that watches and directs all transactions history, they make sure that transactions are not false before validating such transaction

3. Quorum Slices:
Quorum slices are subsets of a quorum that can influence one particular node about agreement. A node can appear on many quorum slices.

THE THREE (3) INTERLOCKING PART OF STELLAR CONSENSUS PROTOCOL

INTERLOCKING.png

  • Nomination:
    This is a process whereby node(s) in the blockchain choose values to vote, the nomination protocol helps to know the best type of values to agree on by carrying out federated voting on statements. If the chosen values are much, nodes will have to vote and the value with the highest votes will be approved.

  • Balloting:
    During balloting, there is always avalue and a counter statement. The counter is always an integer, e.g 1, while a value is a nominated candidate. The presence of counter in balloting is to track the attempts made, to decide which value to approve

  • Timeout:
    This is when non of the nominated values is not being voted after balloting period

ADVANTAGES OF STELLAR CONSENSUS PROTOCOL

ADVANTAGES.png

I. Free to Participate: As I said earlier during the explanation, there is freedom for anyone to join and take part in the consensus process, no restrictions.

II. Safety: The fact is that stellar consensus protocol (SCP) is not 100% perfect, so, if any of the participants misbehave, consensus can be easily reach to bring back the network to it's right position

III. Fast and Cheap: Transactions in Stellar consensus protocol are fast and cheap, the transaction are confirmed within a little time frame (seconds)

IV. No Supremacy: In Stellar consensus protocol, all participants have equal right in making decisions. No one is fully licensed to make decisions

V. Stellar Consensus Protocol does not provide any system for coin emission which is useful in the case of cryptocurrencies and public blockchains.

PROBLEMS AND LIMITATIONS OF STELLAR CONSENSUS PROTOCOL

PROBLEMS.png

David Mazières, the creator stated in the white paper that Stellar Consensus Protocol has the following limitations:

  • It does not give a chance for minting digital coins

  • It does not create an incentive scheme to reward any good behavior from nodes

  • It does not tell nodes who they should trust, meaning that nodes are prone to bad quorum slices (although they have incentives not to) and possibly harm consensus.

Byzantine Generals’ Problem

Below is the best illustration to give in the explanation of Byzantine General's problem;

A region (XYZ) is facing daily attacks by terrorist group and a large group of soldiers arise to fight them, they encircle the region after defeating most of the terrorist forces.

The soldiers then split into divisions and there's a controller general in each division. The generals only communicate between each other through messengers because there's is no mobile signal in the region.

They all face a decision: should they attack or retreat? For them to succeed in their decision, they must do it with cooperation. The generals will then submit their votes and the majority vote will determine what to do.

However, some of the soldiers are not in full support, I mean there are betrayers among the soldiers, messages can get lost or changed along the way (they may fail), if a general message is given to another general there will be difficulty in reaching consensus.

Conclusion:
Getting deep information about stellar consensus protocol is scarce, only few people can give perfect explanation on how the process works!
So, my conclusion on this assignment is to get more illumination about this topic in the next class sir, as it's not yet explained fully, even from my research sources!

Thanks Prof @alphafx for your humanitarian service

My steem design.png

Cc:
@Alphafx
@steemcurator01
@steemcurator02

My steem design.png

All images are designed by me

Sort:  

Task satisfactorily done

Parameterrating
Presentation1/2
Content3.5/5
Originality3/3
Total7.5

Thanks for participating

Coin Marketplace

STEEM 0.29
TRX 0.12
JST 0.033
BTC 62831.42
ETH 3123.16
USDT 1.00
SBD 3.85