区块链Aelf共识


AEDPoS共识

这AElf主链采用DPoS共识,而为了区别于其他DPoS共识机制,命名为AEDPoS共识机制


一、AEDPoS共识简介?

AEDPOS该共识相较于PoW和PoS机制,少了哈希碰撞的环节,多了几个其他环节:

  1. 选举,持币人需要能够对自己信赖的节点进行投票;
  2. 生产节点的调度,即这些被选举出来的生产节点按如何的次序进行出块,以及这种次序是怎么决定的;
  3. 换届,由于被选举出来的区块生产节点的票数是不断变动的,一定有一个时间节点,当前的区块生产节点可能会被其他节点替换。

二、选举

在AEDPoS中,我们使用了一个系统合约(Election合约)来记录选举信息,有以下几个接口:

  1. 参选(AnnouceElection)和退选(QuitElection),节点可以发送相应交易来声明自己参加竞选或者退出竞选;
  2. 投票(Vote)和赎回(Withdraw),持币人或选民可以发送相应交易来进行投票和赎回操作。

三、生产节点调度和换届

在AEDPoS中,我们构建了一个通用的共识接口和调度器,如果当前节点能够作为生产节点时,便可以借以实现区块生产和验证;非生产节点也会使用这些接口进行区块的共识信息的验证。 而AEDPoS的具体共识调度和验证接口被定义在ACS4中,并通过AEDPoS合约实现。

1.AEDPoS共识机制的节点调度流程。

AEDPoS共识中,生产节点个数为 2N+1 个,其中 N 从8开始,每年增加1。即AElf主网上线当年,可以通过投票选出17个区块生产节点,第二年增加至19个,第三年增加至21个,一次类推。与此同时,为了防止生产节点数量无限制增长下去,议会可以选择通过提案来限制生产节点的最大数量。

生产节点的调度中,引入两个周期:

轮(Round),每一轮中,每个生产节点都会被随机地分配一个时间槽(time slot),在该时间槽中,生产节点可以依据当前区块链系统的运行情况,生产1-8个区块;在该轮结束时,会有随机一名生产节点拥有一个额外时间槽(extratime slot),也会产生1-8个区块,但是其中的第1个区块需要将轮次推进到下一轮。

届(Term),默认情况下,AElf主链为每7天一届,换届的时候会重新统计此时每个生产节点候选人(即声明了参选的节点)的得票数,由高到低选取名作为下一届的区块生产节点。


总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值