Proof of Stake

Authority Proof Of Staked based on equity (Authority Proof Of Staked)

Although Proof of Work (PoW) has proven to be a practical solution for achieving decentralized networks, it is not environmentally friendly and requires a large number of participants to maintain network security.

Ethereum and some other networks, such as MATIC Bor, TOMOChain, GoChain, and xDAI, use Proof of Authority (PoA) or its variants in different scenarios, including testnets and mainnets. PoA provides defense against 51% attacks and more effectively prevents some Byzantine nodes from doing evil. Choosing PoA as the underlying consensus is one of the ideal options.

At the same time, the PoA protocol has been criticized for being less decentralized than PoW because validators, the nodes who take turns generating blocks, have tremendous power and are prone to corruption and security attacks. Other blockchains, such as EOS, have introduced different types of Delegated Proof of Stake (DPoS), allowing token holders to vote for validator nodes. It makes the network more decentralized and facilitates community management.

Inspired by the above, FSC combines DPoS and PoA to reach consensus. The solution adopted is:

  1. Blocks are generated by a limited number of validators

  2. Validators take turns generating blocks in a PoA manner, similar to Ethereum’s Clique consensus engine

  3. The set of validators is selected and eliminated based on on-chain governance of equity pledges

Validator node quorum

During the genesis block phase of network launch, a number of trusted nodes will operate as the initial set of validators. After the block production begins, anyone can participate as a candidate in the election of validators. The maximum tolerance for validators in the FON smart chain's re-creation block is 99 validators. When there are >99 validators, they will not be able to join as a new validator. certifier. The stake pledge status determines that the top 21 nodes with the most stake pledges become the next set of validators. Such elections and eliminations occur every 3 hours.

FON is the token for FSC equity pledge.

To maintain compatibility with the Ethereum consensus protocol, including upcoming upgrades, FSC has chosen independent staking management. In the FSC stake staking module. It will accept FSC stakes from FON holders and calculate the set of nodes with the largest stakes. Every 3 hours, the ranking of block producers is refreshed and FSC is notified to update its validator set.

Before generating a new block, existing FSC validators regularly check whether there is a "ValidatorSetUpdate" message forwarded to FSC. If so, they will update the validator set after a certain height (i.e. a predefined block interval). For example, if FSC generates a block every 5 seconds and the check period is 240 blocks, then the current validator set will check and update the validator set for the next period in 1200 seconds (20 minutes).

safety and finality

Considering that more than half of the ½N+1 validators are honest and trustworthy, PoA-based networks can generally work safely and properly. However, in some cases, Byzantine validators may still manage to attack the network, such as through a "clone attack." In order to ensure FSC security, we encourage FSC users to wait until the received block is confirmed by more than ⅔N+1 different validators, and can tolerate less than 1/3*N Byzantine validators.

For 21 validators, if the block time is 5 seconds, then ⅔* N + 1 different validators will take (2/3*21 + 1)5 =75 seconds to confirm. Any significant application of FSC will likely have to wait ⅔N + 1 to ensure a relatively safe end result.

Consensus and number of validators

Based on the above design principles, FSC’s consensus protocol is to achieve the following goals:

  1. The block time should be shorter than Ethereum time, such as 5 seconds or even less.

  2. Only need to wait a limited amount of time for the transaction to be finalized, such as about 1 minute or less.

  3. There is no inflation. The revenue of the blockchain comes from handling fees, which are paid in the form of FON.

  4. Be as compatible with Ethereum as possible.

  5. Equipped with an on-chain governance mechanism based on equity pledge.

income

All FSC validators in the current validator set will receive income from fees paid in FON. Since FON is not an inflationary token, it will not generate mining revenue like the Bitcoin and Ethereum networks. Handling fees are the main revenue for validators. Since FON is also a utility token for other applications, delegators and validators will still receive other benefits of holding FON. Validators’ income is obtained from the fees collected from transactions in each block. Validators receive 85% of the total verification block revenue, and the remaining 15% will enter the official treasury to reward FON ecological users. Each validator will take turns generating blocks with equal probability (if they remain 100% online), so in the long run, all stable validators are likely to receive similarly sized gains.

instability

The availability of FSC relies on each validator in the validator set in the APoS consensus to be able to generate blocks in time when it is their turn to generate blocks. A validator may miss the opportunity to produce a block for a number of reasons, especially due to hardware, software, configuration or network issues. This unstable operation will harm the performance of the network and bring more uncertainty to the system. FSC has an internal contract that is responsible for recording the blocks missed by each validator. Once this indicator exceeds the predefined threshold, the validator will no longer participate in block production in the current 3 hours, and will no longer receive the allocated rewards, but will be shared by other better validators. In this way, poorly functioning validators will gradually exit.

Last updated