欢迎光临
我们一直在努力

Symbol:GRANDPA共识算法浅谈

Symbol是一个面向企业的企业级区块链解决方案,是企业值得信赖的安全价值交换网络。Symbol消除了业务摩擦,增加了数据和创新流程,以增强资产的创建,交换和保护。

在NIS1的基础上,Symbol实现原子交换,即跨链系统。实现NIS1和Symbol,以及其公有链和私有链之间的价值交换,为保一致性,Symbol使用了GRANDPA算法,本文主要简单介绍GRANDPA算法。

比特币的工作量证明或其它协议有一个问题,即它们不提供异步安全性,这意味着足够大的攻击可能导致全网混乱。Symbol为了解决最终性(Finality)难题,将区块的生成和确认进行分开。

Symbol在第五稿共识算法设计中使用GRANDPA(基于GHOST的Recursive Ancestor Deriving Prefix Agreement)共识来建立一个更安全,更有弹性的网络。

在良好的网络条件下,GRANDPA几乎可以瞬间完成分块。在糟糕的网络条件下,比如网络分区,GRANDPA可以在分区解析时一次性完成大量的块(理论上是数百万个)。

GRANDPA背后的核心理念是将区块链的结构纳入共识算法。当考虑一个区块是否有效时,依赖于要考虑该区块的父块的有效性。此区块有效即父块有效,依此类推。另外,参与者不对单个区块进行投票,而是让参与者对他们认为有效的最高区块进行投票,并且GRANDPA算法将利用表决的方式将投票应用到之前所有的区块。之后GRANDPA算法将确定投票数量大于2/3的最佳区块,并生成最终证明(proof-of-finality)。最终证明是通过获得多数票并将它们捆绑在一起成为一条消息来构造的。

换句话说,只要有超过2/3的验证人证明链种包含了某个特定区块,所有和该区块的相联的区块也就获得最终确认,从而解决最终性(Finality)难题。

总体上,POS算法负责出块,GRANDPA算法负责确认,在2/3递归确定原则的进行下,区块整体效率就获得质的提升。在POS+GRANDPA混合共识算法的作用下,将获得高的消息传递效率,并同时能保证价值交换网络安全。

评论 抢沙发