本系列文章将分为3篇,为读者介绍被各大公链使用的PoS共识机制的异同。第一篇介绍BSC, Avalanche, Polygon三条公链所使用的共识机制,第二篇单独介绍Ethereum 2.0 共识机制,第三篇待定
Binance Smart Chain PoSA
严格来讲,Proof-of-Staked-Authority (PoSA) 并不是纯粹的PoS共识,介于PoS 和Proof-of-Authority (PoA) 之间。 BSC 采用了一种结合了DPoS和PoA的共识机制,其中每个区块由一组严格限制的Validator产出,每个Validator以PoA的机制轮流出块,类似以太坊Clique共识设计,但Validator的资格由基于权益 (Stake) 的治理决定选出。
在Binance Chain (BC)上有一个专用于BSC做权益质押的模块,此模块接受BSC上的BNB持有者质押BNB,并计算出质押权益最高的节点的集合。在每天GMT 0点,BC会发出一条ValidatorSetUpdate跨链消息,来通知BSC链更新其Validator集合。所以,可使用的Validator数量限制在21个,只有这些节点可以验证交易并出块,他们是被按照BNB持有量的高低排名来选出的,每天更新一次。
尽管PoSA共识模型可以达到更短的出块时间和更低的汽油费,但被牺牲掉的是去中心化和安全性。在此模型中,一个普通的用户没有办法像比特币和以太坊中的那样,简单的开始验证交易并获取奖励。
Avalanche Snowball
做一个比喻,一屋子的人要决定去一个饭店吃饭,川菜或者粤菜。一开始大家各持己见,但要有一种机制最后让决定统一起来。一个方法是,所有人都问一小组随机的其他人,如果得到的回答里“川菜”更多,我就也随大流也吃川菜,反之就选吃粤菜

Polygon PoA
Polygon Edge 用 IBFT PoA作为默认共识机制,PoA中Validator负责组装并发布区块到链上。所有Validator组成一个集合,并且可以通过一个投票算法增加或去除一个Validator,当51%或以上的Validator同意时,这个投票就可以通过,这样恶意的节点就可以被驱逐出去。
所有Validator轮流出块,必须由绝大多数(大于2/3)的Validator同意这个区块上链,才能通过。此外,有一些节点不出块,只做区块验证的环节


