超90%容错共识算法,如何实现?

2019-01-19 13:10 栏目:经验之谈 来源: 查看()
2019年1月17日,北京大学软,八部分协同创新实验室启动了第九届学术沙龙讨论会。北京大学沉庆妮老师,杨亚辉老师,方跃建老师和北京大学一些博士生,硕士生和Trias高级系统研究开发胡志林就共识算法和容错机制。

有一种说法是共识算法是区块链网络中的法则。它决定了谁有能​​力做出阻止以及谁获得了该块的奖励。然而,不同的一致性算法具有不同的效率速度,高能耗和容错机制。什么是合理的一致性算法?本周,高级系统开发人员胡志林博士带来了他的见解。

让我们简要回顾一致的算法相关性。目前,一致性算法可以主要分为两类:同步一致性算法和异步一致性算法。同步一致性算法相对简单。它指的是在一段时间内收集共识信息。只要“好”节点超过一半,就可以顺利达成共识,例如POW算法。异步一致性算法(例如PBFT)不需要显式时间同步,但对“坏”节点的容忍度较低。传统拜占庭共识算法的容错性通常不超过33%。

超90%容错共识算法,如何实现?

关于拜占庭容错,1981年Lamport提出了《拜占庭将军问题》,它解释了拜占庭一般问题的两个解。

1口头信息,即OM(m)协议。多项式复杂度PBFT是在弱同步的假设下实现的,弱同步是所谓的1/3容错节点的最大数量的理论上限。

2签名消息,SM(m)协议。与口头协议相比,所有消息都被记录下来,从而解决了可追溯性问题。已经证明,该协议可以实现任意数量节点的容错,即容错率接近100%。这种算法的应用被限制为同步网络。

在上述背景下,让我们简要介绍一下Trias超级节点的起源。 Trias上的节点必须具有TEE环境并通过一个名为“God Rolls”的游戏。这样,每个节点的可信度始终处于动态监控中。通过特定时段发布的天数列表,选择排名和安全性最高的节点作为超级节点。 

从理论上讲,超级节点的可靠性非常高,但并不排除超级节点被临时恶意攻击,或者可能是为了获利。那么如何进一步保证超级节点呢?这是通过在超级节点集上运行一致性算法来完成的。

根据Trias的优化方案(称为KeepBFT方法),首先,在选择超级节点集时,一定数量的节点是冗余的。发生问题节点时,直接选择备用节点以维护线路上正常的可信超级节点的数量。

此外,Trias基于分散签名验证方案为超级节点的一部分分配新功能。它也被称为观察层。它也可以称为共识确认层。观察层由多个Paxos状态机观察。和AI决策模块。所有观察层节点始终在线,接受链上的所有提议信息。

超90%容错共识算法,如何实现?

在正常情况下,共识确认层与其他超级节点一起用于日常工作。但是当一些节点受到攻击时,观察层可以分析谁是“好”节点并选择它们以达成共识。在此轮有效期内,恶意节点的提议被拒绝并发送到所有超级节点。

即使恶意节点的数量非常大,整个系统也能够可靠地实现共识的高容错性,即忠实节点仍然可以达到有效的共识。基于超级节点和IAS选择的确认层的联合保护,共识容错能力超过90%,甚至接近100%。

微信二维码
售前客服二维码

文章均源于网络收集编辑侵删

提示:仅接受技术开发咨询!

郑重申明:资讯文章为网络收集整理,官方公告以外的资讯内容与本站无关!
NFT开发,NFT交易所开发,DAPP开发 Keywords: NFT开发 NFT交易所开发 DAPP开发