首页 > 百科 > aeternity上哪个平台|波卡运行原理系列(四)BABE共识简述
MathChain  

aeternity上哪个平台|波卡运行原理系列(四)BABE共识简述

摘要:BABE是目前Kusama、Edgeware等网络使用的共识之一,用于确定出块顺序。概念定义Slot,槽,区块生成时间Epoch,时期,固定长度的Slot的集合

BABE是目前Kusama、Edgeware等网络使用的共识之一,用于确定出块顺序。

概念定义

Slot,槽,区块生成时间Epoch,时期,固定长度的Slot的集合VRF,可验证随机函数,私钥相关,任何人可以通过公钥来证明

解决问题

引入随机性,尽可能让下一个出块验证者不可预测,从而满足出块的去中心化

步骤

验证人使用自己的私钥生成VRF(随机数 + Proof)

验证人计算 SlotNo + Epoch No + 随机数 得到一个值,如果该值小于一个特定值,则获得出块机会

如果一个 Slot 方式如下情况:1 Slot 没有人的VRF满足要求2 Slot 多个验证者满足要求则按照Aura顺序指定验证人出块,被称为次级Aura区块,优先级低

每个Epoch,将根据最新的Staking情况,重新选择验证者集合重新选择验证者集合的随机数来自上一个Slot的随机值混合

BABE通过这个过程确定了出块验证者的顺序确定出块(敲定)则需要通过GRANDPA完成,具体可以看波卡运行原理系列(三)http://blog.boka.network/2020/02/29/bo-ka-yun-xing-yuan-li-xi-lie-san-zu-jian-zi-dian/

区块结构

区块由摘要 Digest 和 封章 Seal 组成

Digest包含:Pre-digest:VRF输出和证明运行时处理的 transactions 记录集合Post-digest:Epoch 切换时才有,输出混合随机值用于重新选择验证者集合

封章即节点的签名

BABE的问题

在很小范围和概率情况下,节点可以影响随机值:1 节点可以选择不出块,从而随机值不到下个 Epoch,因此能够实现小概率的验证人顺序预测。2 一个Slot可能存在没有BABE验证者,或有多个验证者的情况

所以在此基础上诞生改良的 Sassafras 共识,具体可以看TangWei的视频,本文不展开讨论https://www.bilibili.com/video/BV1bz411z73k

免责声明
世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。