广告

Polkadot的GRANDPA

为什么Polkadot的GRANDPA协议不够安全?

本文将讨论Polkadot为解决拜占庭容错问题而提出的共识协议——GRANDPA协议。在本文中,我们默认读者已经熟悉拜占庭容错问题,所以我们将直接介绍Polkadot的GRANDPA协议是如何解决拜占庭容错问题的。首先,我们将简洁明了地介绍GRANDPA协议的主要内容。然后,我们将讨论可能导致GRANDPA协议失效的攻击方式。最后,我们会就如何解决上述安全漏洞,提出可能的解决方法。

概率确定性与可证明确定性

经由Casper FFG(Friendly Finality Gadget)协议启发,GRANDPA是一种新的、拜占庭容错的(BFT)、确定性工具的(Finality Gadget)共识协议。确定性工具(Finality Gadget)是一套经由一定提议机制而最终确定一条区块链上内容的机制。由“确定性工具”最终确认的链上内容,具有最终性,即不可逆。

正如Polkadot Wiki上所说:“那种运行纯粹中本聪式POW共识协议的区块链,只能达到概率确定性并完成最终共识。”与之相对,像GRANDPA或Casper FFG之类拥有确定性工具机制的协议,则可以为我们提供更强大的保证,称为可证明确定性。GRANDPA的确定性工具机制带来的可证明确定性,保证了经过一定共识机制运作之后,那些被最终确认的区块里的内容将永不可逆。

Polkadot的GRANDPA

Polkadot,是通过一个提名权益证明(NPoS)系统,将BABE用作其区块生成机制的(BABE,即著名的Blind Assignment for Blockchain Extension,即区块链扩展盲分配)。这个系统使用提名权益证明机制(NPoS),顾名思义,这个系统会通过一个提名过程选出验证者。在这个区块链系统中,为了从一个普通的参与者变成一个提名者,参与者需要先将其代币作为抵押品。这之后,这个升级为提名者的参与者,就可以提名他/她认可的节点作为验证者了。当被他/她提名的验证者偏离协议,他/她抵押的权益就将被削减,作为惩罚;相反,当被他/她提名的验证者遵守协议时,他/她也会获得报酬,作为奖励。另外值得一提的是,在这个区块链系统中,当选了的验证者在共识协议中的投票权是同等的。

有了GRANDPA(GHOST-based Recursive Ancestor Deriving Prefix Agreement)作为它的确定性工具机制,Polkadot的中继链包含两个不同的协议,分别对应两种不同类型的网络。我们要讨论的是第一个协议。这个协议对应的网络,是部分同步的,并且最多可以有1/3的参与者是恶意的。我们生活中遇到的网络,通常都是部分同步的。这是一个分布式系统的专业术语,简而言之,是指:网络在大多数情况下是同步的,当网络不同步时,经过一定时间,也会回到同步的状态(同步也是分布式系统的专业术语,这个可以暂时理解成日常用语里的“同步”)。

关于GRANDPA,值得注意的是:1)只有被确定性工具机制最终确认的区块能影响区块的生成  2)可以同时为不同高度的多个区块投票,这与Casper FFG不同。

本文只讨论Polkadot的第一个协议。它专为部分同步网络设计,不能容忍网络分区或DoS攻击。另外值得注意的一点是,该协议假定在未知时间GST之后,网络变为同步。

每个参与者都存储一个由BABE产生的区块树,这个区块树的根区块是创世块。参与者可以对树上的一个区块投票。如果一个区块B获得X票,X票包括了B自己和B的子孙节点的所有票。然后,⅔-GHOST函数g(S)返回获得票仓S里绝对多数的区块中区块高度最大的那个区块,记作B。

然后,区块作者着手确定这个区块B在票仓S中获得绝对多数的可能性。GRANDPA协议的论文《Byzantine Finality Gadgets》这样定义:“我们说,如果至少有2t + 1张票是超额投票(即一个投票者投了多于一张票)或者投给了除B子孙区块的其他区块,那么区块B在票仓S中占据大多数是不可能的;否则,区块B在票仓S中获得绝对多数是可能的。”此外,论文还指出,“一个区块B在一个票仓S里获得绝对多数是可能的,当且仅当存在一个容错票仓T,T是票仓S的子集,并且区块B在票仓T中占绝对多数。”

这个协议在实践中会出现以下的几个问题:

如果我们假设区块B和C不一致,而t个恶意投票者加1个诚实投票者投票给了B,2t个诚实投票人投给了C,那么根据上述定义,B得到绝对多数是可能的。然而,因为诚实的投票人不会超额投票,所以票仓S里不总是有一个子票仓T使得T里有绝对多数。这就使得GRANDPA无法实现活跃性保证。接下来,我们将详细介绍这种情况。

假设我们保持相同的情况,以B和C作为在某个回合r中产生的两个子区块-也就是说,BABE在此回合经历一个分叉,并且结果产生了两个子块B和C。

在第r轮,t + 1个投票者(所有t个恶意投票者+ 1个诚实投票者)投票给B,其余2t诚实投票者投票给C。因此,对每个投票者i,我们的g()函数都会从前一个回合的estimate,E_ {r-1,i} [ E_{r,v} 表示投票者v在r轮的一个estimate,这个estimate包含了所有本可以在r轮最终确定却实际上没有被最终确定的区块的信息,详见论文《Byzantine Finality Gadgets》] 中输出一个向B、C的一个祖块。相应地,每个参与者都预先承诺(pre-commit)该祖块。(值得注意的是,即使是网络上诚实的节点,也可能由于网络延迟或异步而出现这种分裂的投票结果。一个诚实节点可以首先接收到区块B,因此它投票给B。其他诚实节点首先接收到C,因此他们投票给C。)

现在,每个投票者i估计从第r-1轮的E_ {r-1,i}来的祖块可能是哪个块。由于C_ {r,i} [ C_ {r,i}表示参与者i在r轮收到的所有预先承诺(pre-commits)] 可能导致E_ {r,i}的任何子级得到多数投票,因此回合r无法完成,整个共识过程失败。

即使可以通过修正GRANDPA中的语义定义来解决此处讨论的问题,我们也可以类似地将在Tendermint协议的讨论中提到的那些攻击用于GRANDPA。最终,我们只能得出结论,GRANDPA协议在上述网络中不安全。

24小时热点

BIBOX交易所无耻收割,限制提币

全球排名第6的Bibox虚拟币交易所违法运营,无耻收割,限制 ...

74655

CCFOX

满币交易所彻底崩盘

满币交易所彻底崩盘 「实锤」“满币网”高 ...

24796

T网

十大传销盘之:MASK币

MASK币 女装大佬开的项目,价格已经惨不忍睹 ...

100976

中国虚拟币排名

icp币怎么样?icp币的未来前景怎么样?

ICP币是近年来备受瞩目的数字货币之一,它是互联网计算机协议 ...

26534

Dune Analytics

全面解析以太坊挖矿视频教程

以太坊挖矿需要准备硬件平台、挑选挖矿显卡、准备系统驱动及软件 ...

2577

波场区块链浏览器

Dogwifhat (WIF)大幅飙升52%突破2美元 应该购买3个Solana生态迷因币

Meme币作为高风险、高波动又高回报的代币,其价格常常受市场 ...

23927

Business2Community

WBTC币(Wrapped Bitcoin)在那里下载?

WBTC(Wrapped Bitcoin)是一种基于以太坊网 ...

5042

Curve

元宇宙原力币未来潜力惊人,拉多先生:Forcecoin并不是作为一种替代币而诞生的

现如今加密货币的世界当中,每一个币种都会有着独自的价值,其中 ...

47736

波场区块链浏览器

Dogecoin狗狗币再次市值超越Cardano 迷因币季节到来要买哪些币可以是千倍币?

Dogecoin市值再次超越Cardano一事引发业内关注。 ...

6051

Business2Community

“千寻”数字藏品简介

“千寻”数字藏品是一套非常珍贵的数字藏品,由中国艺术家杨互君 ...

13015

泰达币交易平台
广告

热点专题

NFT艺术品到底是什么?

Beeple,“EVERYDAYS: THE FIRST 5 ...

2296117

Opera House

最全的NFT发展史

当我们理解一个新生事物,必须要首先了解其起源,通过对其源头以 ...

1738276

iBox

“华英会”诈骗圈钱5000亿!崩盘后将会凄惨无比

“华英会”崩盘的预警已多次发出,尽管尚未正式宣布崩盘,但大家 ...

1259301

Magic Eden

什么是IDO?这种模式会带来怎样的影响?

要理解IDO(Initial DeFi Offering)初 ...

1137794

Bitstamp交易所

有黑客采取新型 USDT 假充值手法

根据慢雾区情报,有黑客采取新型 USDT 假充值手法,黑客采 ...

991024

区块链博客

4种利用永续合约资金费率套利的策略

下文将介绍在保持市场中立的条件下,如何从永续掉期资金费率中套 ...

893993

DCG区块链孵化器

国内NFT平台是怎么赚钱的?

2021年被称为NFT的“元年”,互联网巨头、各大企业、艺术 ...

793373

CoinBene满币网

链圈百科:韩国政府机构组织图

一、行政院 韩国行政院是一个由政府的行政机构组成的中央政府 ...

781741

BitKeep钱包

元宇宙平台合法吗

现在,元宇宙平台备受热捧,但有人质疑其合法性。在此,我们将对 ...

724433

T网

宝二爷郭宏才的乘风破浪之旅

10年后的比特币会涨到10万美元吗?宝二爷说过:“先吹吹牛B ...

700414

QuillAudits