术语
Epoch:一个Epoch以一定的区块数来记数,在同一个Epoch下验证者节点是固定的,下一个Epoch会根据上一个Epoch投票情况产生新的验证者。
Checkpoint:共识算法不会处理链中的所有区块,而是以Checkpoint为单位来验证,一般情况下以一个Epoch的区块数作为一个Checkpoint。
Justified:一个Checkpoint在收到一次2/3确认后状态为justified,justified的节点可能会被推翻。
Finalized:一个已经justified的Checkpointc的子节点被justified后,则Checkpointc转化为finalized,具有finalized的checkpoint不可被推翻。
比特币ATM提供商Chainbytes正在萨尔瓦多建立一个比特币ATM制造中心:比特币ATM提供商Chainbytes正在萨尔瓦多建立一个比特币ATM制造中心,Chainbytes 透露,它计划“让萨尔瓦多成为整个美洲的比特币ATM制造中心”。(bitcoinnews)[2021/6/24 0:02:31]
为什么我们需要升级Bytom2.0共识
Vapor也采用了和Bytom2.0一样的DPoS+BFT算法,且稳定运行了较长时间,并承载了很多应用,但同时也发现存在以下问题:
在高速出块的情况下,每个区块都要进行2/3的签名确认将占用大量的网络带宽。0.5秒出块使得链上数据占用的磁盘空间急剧膨胀;容易导致分叉;此外,也给一些钱包、浏览器造成了一些性能上的瓶颈。共识算法未经过有效的安全性验证,传统的BFT算法一般都需要两次确认。Bytom2.0对共识进行了升级,以解决上述的几个问题:
分析:匿名实体已垄断DigiByte两种算法的矿池算力 或可对其发动51%攻击:据Reddit上发布的详细分析,一个匿名实体正在使用高级挖矿硬件并开始垄断Digibyte其中两种算法Skein和Qubit的矿池算力。该实体挖矿的速度大约是其他矿工的三倍。该分析考虑了莱特币创始人Charlie Lee对DigiByte的“5种算法系统”的评论,即这并不比莱特币更安全。总而言之,分析称“这个实体在NiceHash上租几百美元的算力就可对该网络发动51%攻击。具有讽刺意味的是,就在几天前,DigiByte联合创始人Jared Tate还重申了基金会对权力下放的承诺。据了解,DigiByte是一个基于PoW共识算法的网络,于2013年推出。与许多其他加密货币不同,它使用五种不同的挖矿算法,包括Scrypt、SHA256、Qubit、Skein和Groestl,旨在增加网络的去中心化程度。(CryptoPotato)[2020/4/27]
采用Checkpoint为单位来进行验证和签名,大大减少了签名确认所占用的网络带宽将0.5s一个块延长为6s一个块,降低分叉概率对每个Checkpoint进行两次确认,第一次为Justified状态,第二次才进入最终确认Finalized状态Bytom2.0升级后,在以下多个方面可以获得较大提升:
声音 | Digibyte创始人:加密货币行业已被贪婪和腐败劫持:据Usethebitcoin消息,Digibyte(DGB)的创始人Jared Tate近日在社交媒体表示,加密货币行业已被贪婪和腐败劫持。Tate称,这个行业已经被集中的交易所占据,这些交易所作为控制用户资金的集中管理机构。而此前中本聪创建比特币时并没有说,市场应该将所有的控制权和利润集中在交易所。Tate补充说, 将来新的去中心化交易所可以发布到市场,并帮助整个空间朝着加密空间去中心化的方向发展。[2019/12/7]
节约能源更好的性能提升更好的经济安全性更强的扩展性
共识过程
1、在Bytom2.0链刚启动时,由创世节点负责出块。此时其他节点可进行抵押BTM来成为共识节点,普通参与者可对共识节点进行投票。
比特大陆AI负责人汤炜伟:比特大陆未来每一代AI产品都会支持Bytom挖矿计算,更有助于Bytom和AI的结合:今天下午,在“2018区块链+人工智能高峰论坛”上,比特大陆AI负责人汤炜伟在演讲中表示,人工智能芯片和POW公链结合在一起形成强大的算力,为PoW公链非常好的保驾护航。BYTOM的PoW算法充分利用了张量计算、矩阵计算的非线性特性,PoW公链算法具有优秀的不可逆加密特性。基于张量计算的PoW公链算法具有很好的前景和生命力,比特大陆未来每一代AI产品都会支持Bytom挖矿计算,AI芯片加速,更有助于Bytom和AI的结合,生命力更强。让AI智能机器赋能更强生命力,用Blockchain智能机器更好维护信任的公链,使得生产力和生产关系都能并行往前走。[2018/4/27]
2、每个投票和选举轮次称为一个Epoch,一个Epoch包含一组区块,在该Epoch中共识节点是固定的,下一个Epoch开始根据投票数量重新选举共识节点。
3、当下一个Epoch检测到有合法的共识节点达到一定个数时,创世节点停止出块,由共识节点出块。
4、从当前Epoch开始,每隔6秒出1个块,每个共识节点按照票数排序轮流进行出块。
5、Bytom2.0不会对每个区块进行验证,而是采用Checkpoint为单位来处理,一般情况下以一个Epoch的区块数作为一个Checkpoint。
6、Bytom2.0会对每个Checkpoint进行两次确认,一次是Checkpoint在收到2/3确认后状态为Justified,此时还可被推翻,而等到其子节点也被确认为Justified状态后,获得二次确认并获得Finalized状态,此时获得最终确认且不能被推翻。
7、为了防止无利害攻击,Bytom2.0会对同时进行同一高度的两个区块签名的共识节点进行惩罚,罚没其抵押的部分BTM,考虑到这部分的复杂性,Bytom2.0会在共识稳定后逐步引入该机制
选举和出块过程
CheckPoint验证
每个Checkpoint会经过一轮共识节点的验证和签名,当获得超过2/3的签名后,Checkpoint会得到一次确认,并设置为Justified。
状态转换
如下图所示,黄色粗箭头存在一条link,从某一个sourcecheckpoint到targetcheckpoint,如果该link得到2/3?签名,target变成justified。如果source是他的直接父节点才会变成finalized,出块会跟随具有最大高度justifiedcheckpoint的链。
小结
Bytom2.0的共识算法,是基于Vapor共识算法的经验和教训,同时吸收了ETHCasper的相关设计理念,但对于其复杂的部分又进行了优化,推出的适合于比原链自身的一种创新共识。
Bytom2.0的共识算法,在节能,性能,对抗攻击能力和扩展性等方面都具有优势,共识算法作为区块链底层最重要的基础协议,必将在Bytom2.0上发挥巨大的价值。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。