收集者 收集者为特定的平行链维护“全节点”;这意味着它们保留了所有必要的信息,以便能够创作新的区块并执行交易。在正常情况下,他们将整理并执行交易以创建未密封的区块,并将其与状态转换证明一起提供给一个或多个负责提出平行链区块的验证者。协作者还将在BABE中观察块生成和共识协议的进展,并在他们认为是最终定稿的最新中继链块的基础上进行开发。收集者不会直接参与中继链的共识,因此绝不会参与DOT。每个平行链都可能拥有自己的代币,并向收集者提供激励以使其在平行链上运行。验证者 验证者通过抵押DOT,验证来自收集者的证据,并与其他验证者达成共识来保护中继链。这些参与者将在为中继链以及所有旁链添加新区块方面发挥关键作用。这允许各方通过中继链完成跨链交易。
提名人 提名人是为验证人的保证金出资的持股方。除了放置风险资本外,他们没有其他角色,因此,它们表示他们信任特定的验证者(或其一组)在网络维护中负责任地采取行动。他们根据所贡献债券的增长按比例增加或减少存款。
渔民 渔民与区块创作过程没有直接关系。相反,他们是独立的“赏金猎人”,其动机是一笔一次性奖励。渔民正在检查网络每个部分中的拟建区块。理想情况下,一些渔民专注于一条平行链,另一组应对另一条平行链,而一组渔民则检查中继链验证程序。如果他们找到了一个被破坏的区块,那么该区块的创建者将被削减,而渔夫将获得一部分削减后的股份作为奖励。当有一组验证者勾结并提出受损的旁链区块时,渔民尤其重要。要求渔民投入少量的DOT,以防止重复进行的sybil攻击浪费验证者的时间和计算资源。共识如何运作? 整理者将观察BABE中块生成和共识协议的进展,并以他们认为将要完成的最新中继链块为基础。他们将整理并执行平行链的交易以创建未密封的区块,并将其以及状态转换证明提供给负责提议平行链区块的一个或多个验证者。
当验证者从整理者那里收到未密封的区块和有效性证明时,它将检查区块是否遵循平行链的状态转换规则。平行链的状态存储在Merkle树中。如果某些值发生更改,则可以仅通过查看新值和受影响的树中的路径来验证更改。基于此属性,验证器可以验证状态转换,而无需访问整个状态。它只需要:
验证者通过签署以下内容来构造平行链区块的候选收据: 在这一点上,不能保证除整理者和旁链验证者以外的任何人都可以看到有效性证明块。如果这些相互勾结,那么其余的顺链网络就不必具有顺链区块,那么大多数整理者就无法构建新的区块,并且可能不会发现该区块的无效性。与其将有效性证明块发送给中继链中的每个验证器(希望达到1000个验证器),还是出于性能原因而使用了移除编码。
中继链块是使用针对块链扩展的盲分配(BABE)协议生成的。 BABE使用块产生的随机性将验证者随机分配给块生产时隙。验证器将证明它已分配给插槽,并创建一个中继链块,其中包括来自各个副链的候选接收者。
附加检查由随机分配的验证程序执行。为了确保足够的安全性,验证平行链的验证器的最小数量为14。因此,如果将10个验证者分配给每个平行链进行初始检查,则至少需要另外4个隐藏的随机分配的验证者,才能对所产生的中继链块中包含的所有候选接收者执行附加检查。对于已收到渔民和整理者报告的平行链,则将分配其他验证者进行验证。
只有包含已执行足够检查的候选收据的中继链块才可以被投票以最终确定链。同时,整个过程不断重复,并且其他中继块已添加到中继链,但尚未最终确定。由于可以通过BABE的随机性选择多个提议者来为一个插槽生成块,因此中继链可能存在多个分支,并且如果不在最长链上,则可以在此时还原事务。
Polkadot中的所有平行链都遵循中继链的终结性。未来的顺链区块必须始终以最终中继链中的候选收据为基础。从编写块到完成为止,所有可用性和有效性检查应在不到一分钟的时间内进行。
安全性 在Polkadot的设计中,中继链的安全性至关重要,如果这会受到损害,那么所有连接的链也将受到损害。
四个月前,这个平价钱包曾遭到攻击,消耗了3000万美元的ETH。最近,以太坊由于Parity的以太坊客户端漏洞而受到攻击,迫使他们脱机。尽管GETH以太坊客户端不受攻击,但它并没有设法关闭整个以太坊网络。
有效性检查1 —每个平行链的指定验证者的安全性 Polkadot与以太坊2.0不同的方式之一是每个分片/副链的安全性。以太坊2.0每个分片至少需要111个验证器才能运行网络,每个分片至少需要256个验证器才能在一个时期内最终确定所有分片。两者都在分片之间旋转分配验证器,并使用类似的finality小工具协议。 Polkadot的每条平行链使用数量很少的验证器来实现可伸缩性(每条平行链大约使用10个验证器,最少5个),同时声称其与下面详述的其他点同样安全。
有效性检查2 —渔民 为了帮助找到已经合谋并包含如上所述的无效区块的验证者,渔民是赏金猎人,他们执行检查并报告他们以获取奖励。但是,没有动力继续进行检查。“如果长时间没有妥协的区块,那么渔民将停止从事他们的工作,因为他们没有得到任何回报,这使他们的业务无利可图。但是,网络上操作的渔民越少,验证者破坏区块的动机就越高。 为了在定案之前找到一个无效的区块,渔民目前只有60秒的很小时间。相比之下,以太坊在每个时期(6分钟)敲定区块,但建议完全敲定的时间是2个时期(12分钟)。时间周期越长,网络越安全,因为有更多的时间执行和报告其他检查,但要牺牲最终性。 如果在完成交易后检测到无效块,则必须回滚所有平行链和所有交易的状态,这也将破坏轻客户端,“所有平行链共享安全性和状态,这意味着如果一条链中的一条消息已还原,所有链都被还原”,这意味着该时间段内的所有事务都被还原,这给网络带来了巨大的不确定性和不安全性。另一种方法是不回滚状态,并且其中一个平行链的无效块可能会破坏其他连接的平行链。 有效性检查3-由一些随机和私人分配的验证者执行的其他检查 验证平行链的验证器的最小数量为14,以确保等待将恶意验证器随机分配给相同的平行链检查的可能性是不现实的(50年)。如果介绍的“检查1”中有10个验证者执行检查,那么至少需要4个其他验证者才能执行其他检查。验证者需要在附加检查中做更多的工作,要求为每个副链从网络的1/3请求删除编码块并执行验证,因此将限制中继链的可伸缩性。如果所有分配的验证者都在支票1中串通,下图显示了攻击成功的可能性以及附加支票的数量(?)。再增加一张支票可将成功几率降低到50%,带有2张支票的概率略高于25%,带有3张支票的概率为13%,带有4张支票的概率为7%。 但是,如果选择了恶意验证程序以在中继链中生成一个块,则它们可以首先在中继链块中包含来自旁链的合法块,然后发现谁是隐藏的其他验证程序,从而消除了被捕获的风险和潜在的勾结,消除了它们被隐藏在其他支票中的优势。然后,他们可以模棱两可(在同一插槽的另一个区块上投票),其中包括旁链上的恶意区块,攻击将成功。模棱两可的图块也不能无效,因为这将使最终性受到攻击。 Polkadot的进攻成本 当发现验证者的行为不当时,将根据严重性削减一定比例的股份。对于共谋等4级安全威胁,包括无效的封锁,则将削减100%的股份。真正重要的是要知道,验证者将同时拥有股份和指定的股份,因此,如果验证者恶意执行,可能会失去对验证者所拥有的所有DOT。
共享状态和共享安全假设 Polkadot的主要卖点之一是中继链和所有连接的平行链之间的共享状态基础结构。如果中继链由于某种原因必须还原,那么所有平行链也将还原。这是为了确保整个系统的有效性可以持续存在,并且各个部分都不会损坏。每个副链都具有与本文上文详述的相同的信任假设,因此中继链可验证状态转换并实现它们之间的无缝互操作性。
审查制度的攻击和前锋 在开篇我们讨论了共识的工作原理,最开始是由每个平行链整理交易的整理者和提出要在中继链上验证的区块组成。建议收集者将其转向哪个区域是由链条本身决定的。因此,每个平行链将需要在每个平行链上实施工作量证明或权益证明,以提供审查抵抗力并防止遭受sybil攻击。
整理者可以选择不将某些交易包含在平行链中,以对其进行审查或通过自己的交易进行前期处理。整理者还可以对分配的验证者进行DOS操作,以防止他们能够向中继链提出区块。此外,通过创建中继链块(不包括某些平行链块)进行检查的机会也较小。
对于parathreads,即使每个parathread实现pos / pow,也更难以解决该问题,因为在拍卖中有一组parathread相互竞争,以将其parachain块包含在中继链的下一个插槽中。允许从其他商品的交易中抢占先机,并支付高额交易费以确保首先被选中,或者只是通过收取更高的交易费来阻止其他人对其链进行验证。
结论 毫无疑问,Polkadot是一个优秀的项目,拥有一支才华横溢的团队和强大的应用率。与所有区块链项目一样,尽管存在局限性,需要权衡的问题和需要解决的问题,但在该领域仍处于难以置信的早期阶段,一些解决方案正在研究中。Polkadot的发布进一步大大改善了区块链的当前状态,使其更接近主流应用。但是,不会有一个平台可以将它们统统统治,有些用例更适合一个平台而不是另一个平台,而且它不是零和游戏。区块链将彻底改变行业和互联网本身。研究和交付突破性技术的项目越多,彼此之间就会互相学习,并相互推动,早日实现这一目标。就价值和应用率而言,目前的市场很小,几乎看不到什么,看到它的发展将令人兴奋。 原文链接:How Consensus Works —- 编译者/作者:洁sir 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
Polkadot:共识如何运作,局限性和存在的挑战有哪些?
2020-11-12 洁sir 来源:区块链网络
LOADING...
相关阅读:
- 专访爱芯集团创始人张培镇:矿工现在最需要有的坚持的心态2020-11-12
- 万事达卡希望开发区块链产品2020-11-12
- 加密货币可以减少全球贫困吗?2020-11-12
- 利用区块链投票是刚需2020-11-12
- 季节性挖矿波动对比特币的影响 2020-11-12