都在谈共识 但以太坊 2.0 的共识有多安全?
作者 | Alex Stokes
编译 | Jhonny
Casper 权益证明 (PoS) 共识协议的正常操作可以带来我们称为数据最终性 (finality) 的输出,参与者在此过程中将会达成共识。
我们之所以称之为数据的最终性 (也即数据被敲定),是因为一旦数据被最终敲定了,那该数据就无法被修改了,除非系统中所有参与者抵押的1/3的资产被销毁。事实证明,这种属性为以太坊2.0系统增加了一些当前的 PoW 系统中缺乏的安全性保证。
理解 Casper 协议的一种方式就是,系统中的验证者 (validators,在 PoW 系统中称为矿工) 负责对他们认为“规范的”区块进行投票。
如果某个验证者同意其他的验证者 (推动链上的共识) 就可以获取奖励;而如果该验证者被证明进行了恶意行为 (比如试图对链上两条截然不同的分叉投赞成票),那该验证者将受到惩罚。这种惩罚将应用于该验证者质押 (stake) 在系统合约中的存款,因为用户如果想要成为验证者参与投票,必须首先将一定资产 (当前的以太坊2,0规范要求为32 ETH) 锁定在系统之中。
以太坊2.0的安全性来自于这些质押存款的总量以及一些罚没规则 (slashing conditions),这些罚没规则确保了攻击共识的验证者将损失其质押的存款。
系统的安全界限是:以太坊2.0共识失败的前提是网络中超过1/3的活跃验证者违反了罚没规则。假设系统中质押的 ETH 总量为 10,000,000 ETH,这意味着成功地对系统共识发起攻击将需要销毁大约 3,300,000 ETH (按照撰写本文时的价格计算,其价值超过了5亿美元)。
鉴于这种级别的安全界限,任何在 Casper 共识过程中被认为是“规范的”数据都被认为是最终被敲定的数据,从某种意义上说,如果要撤销数据的“规范性”将需要采取灾难性的行为 (销毁大量的 ETH)。
这种数据最终性的属性与中本聪共识带来的安全保证形成了鲜明的对比:就数据之上执行的 PoW (工作量证明) 而言 (参阅比特币区块链中的“确认数 (confirmations)”),中本聪共识只能对给定的一段数据的安全性进行概率性声明 (make probabilistic statements)。
以太坊2.0共识并不假设区块链在达到某个区块高度之后不会通过一个包含更多工作量的分叉链 (fork) 进行回滚,以太坊2.0共识将清楚地知道,在某个点之后以太坊区块链将永远不会回滚。
想想看,任何时候当你试图在交易所进行存款或取款,必须等待一些区块被确认 (通常是很长时间),之后你的存/取款操作才能完成——而在一个最终性系统 (finalized system) 中,你将只需要等待系统进行仅仅一次自然的共识过程就可以将你的操作视为完成。
参考链接:
https://medium.com/@ralexstokes/how-secure-is-ethereum-2-0-consensus-41523a59f270
【文章版权归原作者所有,其内容与观点不代表Unitimes立 场。转载文章仅为传播更有价值的信息,合作或授权联系请发邮件至 [email protected]或添加微信unitimes2017】