EOS在第一版白皮书中使用的DPOS共识机制

EOS从DPOS升级到BFT-DPOS共识机制,显著提升出块速度至0.5秒,TPS达3590次/秒。通过主节点广播与验证,确保区块不可逆,避免分叉,同时优化节点地理分布,减少网络延迟。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

想知道更多关于区块链技术知识,请百度【链客区块链技术问答社区】
链客,有问必答!!

EOS在第一版白皮书中使用的DPOS共识机制,而在新一版的白书中,对共识机制进行了改进,使用BFT+DPOS混合共识机制。使出块速度从原来的3秒变为0.5秒,tps显著提高,达到测试3590次/秒。

EOS第一版共识机制DPOS
EOS现在系统运行的链用的共识机制是第一版白皮书的,也就是纯DPOS共识机制。
DPOS即授权权益证明共识机制。相比于比特币的POW机制,DPOS不用浪费算力资源去争夺记账权,而是通过赋予EOS通证持有人的投票选举,选出21个超级节点担任记账人的角色,保证整个网络的正常运行。值得一提的是,人们的投票所占的比重取决于他们持有多少token。这意味着拥有更多token的人将比拥有极少token的人更多地影响网络。21个超级节点轮流负责记账。每轮都会随机打乱他们的出块顺序,每个超级节点作为出块节点时,只负责出一个块。每一个区块产生后会按照顺序传递给下一个超级节点中。第二个超级节点要负责打包新的区块,同时还要确认上一个区块的内容。当某一个区块被超过2/3的超级节点确认后,则该区块将成为不可逆转区块,即上链区块。

该算法有些地方明显需要改良。比如容易出现漏块现象。21个超级节点分布世界各地,如果随机打乱顺序,导致总是依次顺序的节点相距地理位置很远,当前目前设的出块时间是3秒,理论上能够解决这种漏块现象,但想提高eos的性能,这块肯定是要改进的。

EOS最新版共识机制BFT-DPOS

BFT即拜占庭容错算法。EOS引入这个算法,主要是赋予出块节点更大的权力,加快出块速度,解决节点出的块都被漏掉的问题。

EOS共识算法的升级,势必需要超级节点们更新代码,使用新的程序,然后在当前链上继续运行。但如果超过1/3的节点拒绝更新代码,可能会出现硬分叉问题。所以如何很好地做好过渡是EOS最大难题。

EOS使用BFT+DPOS共识机制后,不再按照出块顺序让超级节点一个个验证区块内容,而是让出块节点成为主节点。出块后,同时向其他20个超级节点进行广播该区块,并获得他们的验证。如果超过2/3的节点验证通过后,则该区块将成为不可逆转区块。

BFT可以使EOS出块速度显著增加。目前使用BFT+DPOS共识机制的EOS,可以实现0.5秒的出块速度,1秒实现区块的不可逆转。为避免因出块速度过快而漏块,EOS的超级节点按照其他的地理位置依次轮流成为主节点,尽可能减少超级节点的网络延迟。比如超级节点有中国、美国、加拿大、日本,那么成为主节点的顺序是中国>日本>美国>加拿大或者反过来,总之保证相邻最近的超级节点要依次交接主节点角色。

同时规定每个主节点连续生产6个区块,至少保证6个区块的前几个能确认完成,不存在整个超级节点被跳过的现象。可以看出每轮记账节点的出块总时间还是3秒钟,在这3秒里,因为他对他自己出的块是信任的,所以可以持续出块。一边出块一边广播,3秒之内率先广播的区块肯定能够得到确认,在网络通畅的情况下,6个区块都会可能得到确认。

EOS共识处理分叉问题非常简单,和比特币一样,节点只会认可最长的链作为合法链。假如某个节点开始作恶,自己出块并生成自己的链,也就是每次轮到它就产生6个块。但是超级节点总共21个,每轮产生理论126个块。根据选择最长链作为主链原则,肯定作恶的链得不到认可。所以EOS不会发生分叉问题。

### 联邦学习与DPOS共识机制结合 #### 实现方式 为了增强分布式系统的性能和安全性,联邦学习与委托权益证明(Delegated Proof of Stake, DPOS共识机制的结合提供了一种创新的方法。在这种架构下,参与节点通过选举选出一组代表节点来负责模型参数更新的工作[^1]。 具体来说,在每一轮迭代中,客户端设备会先在本地完成一次完整的训练过程并生成新的模型权重。随后这些更新会被发送给由社区投票产生的超级代表节点。超级代表们收集来自不同用户的梯度信息之后再进行聚合操作形成全局模型,并广播回整个网络供其他成员下载使用。这种方式不仅减少了通信成本还提高了决策速度,因为只需要少数几个受信任方来进行验证工作而不是全部参与者都参与到每一次确认当中去[^3]。 ```python class DPoSFLSystem: def __init__(self): self.super_representatives = [] def elect_super_representatives(self, candidates): """模拟DPoS选举过程""" pass def aggregate_model_updates(self, updates): """聚合从多个客户端收到的模型更新""" aggregated_update = sum(updates) / len(updates) return aggregated_update ``` #### 优势分析 这种组合带来了多方面的改进: - **高效性**:相比于传统的PoW或其他类型的PoS算法,DPOS能够更快达成一致意见,从而加快了联邦学习过程中各轮次之间的转换速率; - **资源节约型设计**:减少不必要的重复计算量的同时也降低了能源消耗; - **更高的透明性和公平性**:所有交易记录都被公开存储于不可篡改账本之上,任何一方都可以随时查阅历史版本变更情况以确保公正性; - **增强了抗攻击能力**:即使某些选民或见证者遭到破坏,只要大多数诚实节点仍然在线运作,则系统依旧能正常运转而不受影响[^2]。 #### 应用场景探讨 该方案特别适用于那些需要频繁交互却又担心敏感资料泄露风险较高的行业领域内,比如医疗保健、金融服务等行业。例如在一个跨国银行联盟里实施此策略可以帮助机构间更便捷地共享客户信用评分预测模型而无需暴露原始账户明细数据。同样道理也可以扩展到物联网(IoT),车联网(V2X)等领域促进边缘侧智能体之间协作共赢的局面出现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值