本文总结了社区中对于 Polygon 侧链与 L2 的相关争议讨论,并且翻译了 Dankrad Feist 的文章《关于 51% 攻击,大家都搞错了什么》以便读者从中参考对这些争议的解答。
5 月 16 日,以太坊扩容解决方案 Polygon 的市值跻身加密货币市值前 20,随后 StarkWare 的联合创始人 Uri Kolodny 转推祝贺,但同时他强调:“Polygon 是侧链,而不是 Layer-2。L2 的安全性依赖于以太坊;而侧链的安全性与以太坊的不相关 (甚至更低)。” 因此,社区围绕 Polygon 到底是不是 L2 开始了激烈的讨论。
针对 Uri Kolodny 的评论,Mihailo Bjelic 做了以下回复 :
首先,Polygon 并不是一条侧链,它是一套扩容解决方案。其次 (也是最重要的),默认 L2 比 PoS 侧链 (我们的是提交链 commit chain) 更安全是绝对错误的。为了解释其中原因,我将简单地比较一下 Polygon 的 PoS 链和 StarkWare 的 zkRollup 或者 Validium。
我们的 PoS 链的确有自己的验证者集,但这是完全无需许可的,且质押金额已达到 28 亿美元。此外,该实现已经经过了实战测试 (1400 万个区块且零事故)。
然而 StarkWare Rollup 只有一个 PoA 运营者。这个运营者可能会宕机,抢跑、审查用户的交易等。并且,它由 STARKs 提供安全性,这是一个全新的、未经过验证的密码学。至于 Validium,情况甚至更令人担忧。DeversiFi 所使用的 Validium 方案还依赖于一小组 PoA 数据可用性节点。这些节点可以合谋,通过拒绝访问数据来阻止任何或所有用户提取资金。
考虑到上述情况,我认为那种默认 L2s 比侧链/提交链更加安全的想法是错误的。
针对 Mihailo Bjelic 的回复,社区分别从三个角度进行了讨论:1) Layer-2 与侧链在安全性上的区别;2) Layer-2 能否达到与 Layer-1一样的安全性;3) Eth2 与侧链在安全性上的区别。而对于社区上的困惑,以太坊基金会开发者 Dankrad Feist 发布了文章《关于 51% 攻击,大家都搞错了什么》(见下文),该文章基本上囊括了以上讨论中的问题与解答。
1.首先,关于第一个问题,Dankrad Feist 表示不赞同,他说 L2 确实更安全,因为作为 L2 必须提供与基础层相同的安全性。而 PoS 侧链具有较弱链 (通常是侧链) 的安全性。
James Prestwich 也参与了讨论 :“与侧链相比,L2 需要更少新的安全假设,但其安全性并非与主网完全一样。”他指出 L2 与侧链相比,具有以下不同的特点:
依赖于非审查 (欺诈证明)
依赖于新的密码学和可信的设置 (有效性证明) 补充一点,Starks 不需要依赖可信的设置
更高的硬件和带宽需求
Solana链上消息通知项目Dialect宣布完成410万美元种子轮融资:3月2日消息,Solana 链上消息通知项目 Dialect 完成 410 万美元种子轮融资,Multicoin Capital 和 Jump Capital 共同领投。
据悉,Dialect 将帮助 Solana 用户监控链上活动并将通知直接发送到与加密钱包相关联的移动设备,还可以帮助开发人员在其应用程序中构建钱包到钱包的聊天。(CoinDesk)[2022/3/2 13:33:05]
在下文中,Dankrad Feist 指出“侧链不验证有效性,仅验证共识条件的绝大部分,并且其不具有数据可用性检查。”关于侧链的安全性问题,详见文章中“侧链如何运作?”那一部分。
2.至于 L2 能否达到与 L1 一样的安全性。Patrick McCorry 认为,L2 的目标是尽可能地接近 L1 的安全性,但想要完全一样,是不可能的:
欺诈证明不是尚方宝剑,尤其是当发布欺诈证明的费用太高时,其安全性就更小了
同样的,零知识证明也不是万能的,会出现排序者掉线以及 L1 无法应对大规模退出的情况
他还提到,L2 解决方案可以归结为以下四点:
数据可用性 (委员会/rollup/等)
状态转换完整性 (零知识证明/欺诈证明)
提款完整性 (退出保证)
协议活性 (排序者的选择)
这个混合的方案难以完全达到 L1 的安全性。
回到下面的文章,Dankrad Feist 解释了“区块链的安全模型”,以强调为何 L1 的安全性如此难达到。
3.那么 Polygon 的 PoS chain 与 Eth2 的 PoS 机制对比呢?在讨论中, Dankrad Feist 指出,在长期发展来看,PoS 侧链会是一个很大的隐患。在 Eth2 中我们尽量移除大多数诚实假设,然而 PoS 桥接并不能做到。
以下是文章内容:
请大家原谅标题中的挑衅意味。显然,并不是每个人都会误解 51% 攻击,但还是有相当一部分人没有搞清楚,因此写一篇相关的文章并无坏事。
区块链圈内大概有一个神话:只要有人控制了比特币、以太坊或者其他区块链的超过 50% 的算力,那么 ta 就可以对网络做任何事。在 PoS (权益证明) 机制中,只要有人聚集了质押总额的 2/3,ta 同样可以对网络做任何事情。ta 可以转走别人的资产,随意发行代币等等。
这种想法是错误的。以下是 51% 攻击可以做的事情:
攻击者可以阻止用户使用区块链,即,拦截任何他们不喜欢的交易。这叫做审查。
24小时合约市场爆仓超11.81亿美元 BTC合约爆仓5.52亿美元:据合约帝行情统计报告显示:过去24小时合约市场全网总计爆仓11.81亿美元,爆仓人数74947人。其中,Huobi爆仓2.27亿美元,OKEx爆仓1.8亿美元,BitMEX爆仓1.26亿美元,Binance爆仓3.56亿美元,Bybit爆仓2.81亿美元。爆仓金额前三的币种是BTC5.52亿美元,ETH5.27亿美元,LTC3334万美元。[2021/1/4 16:25:13]
他们可以回滚区块链的交易,即撤销一定数量的区块并更改其中的交易顺序。
他们不能做到的是:更改系统的规则。这意味着:
他们不能简单地在区块链系统规定之外发行新代币;例如,比特币目前为每个新的区块生产者 6.25 BTC;他们不能将这个数字变成 100 万比特币
如果他们没有某个地址的私钥,他们就不能使用该地址的代币
他们生产的区块不能比共识规则规定的大
这并非说明 51% 攻击的后果不严重,这仍然是十分恶劣的攻击。重新排序交易可以造成双花,这是非常严重的问题。但他们能做的事情仍然有局限性。
那么包括比特币和以太坊的大多数区块链,他们现在如何确保这一点?如果有一名矿工挖出了违法共识规则的区块会如何?或者,如果绝大部分质押者对一个违反共识规则的区块签名会发生什么?
有时人们声称最长链为有效的比特币或者以太坊链。这个说法不太完整。对当前链头的正确定义是
总难度最高的有效链。
因此,在客户端接受区块链应该用来记录当前历史数据这个条件之前,他们需要验证两个属性:
该区块链必须有效。这意味着,所有状态转换都是有效的。比如,在比特币上,所有交易只花费此前没有花费的交易输出,coinbase 仅接收交易费和区块奖励,等等。
它必须是难度最高的链。通俗地说,这是一条最长链,然而“最长”不是以区块的数量来衡量的,衡量的是总共花了多少挖矿算力在这条链上。
这听起来可能有点抽象。我们有理由提出一个疑问,上述中的第一个条件由谁来验证,即谁来验证者区块链上的所有区块均应有效?因为如果还是矿工验证该链有效,那么这只是重复工作了,我们并没有真正从中获得什么。
但区块链不一样。让我们分析一下为什么,先从一个普通的客户端/服务器数据库架构开始:
请注意,对于典型的数据库,用户信任数据库服务器。他们不会检查回应是否正确;客户端确保已按照协议对其有效格式化,仅此而已。客户端 (此处用一个空白的方块表示) 是“非智能的”:它无法验证任何内容。
但是在区块链的架构中,是这样的:
我先来总结一下上图包括的组件。首先矿工 (或质押者) 生产区块链。P2P (点对点) 网络确保每个人都能够使用有效的链,尽管存在一些不诚实节点 (你需要连接到至少一个诚实且连接良好的 P2P 节点,以确保自己始终与有效链保持同步)。最后,客户端将交易发送至 P2P 网络并从网络中的其他节点接收最新的链更新 (或者是完整的链,如果它们正在同步的话)。客户端实际上是网络的一部分,它们也将通过转发区块和交易来做贡献,但在这里不是那么重要。
重要的部分是,用户正在运行一个全节点,上图中由客户端中的柱体表示。只要客户端获得一个新的区块,就像任何其他节点一样,无论是一个矿工还是 P2P 网络中的一个节点,这些客户端都将验证该区块是否为有效的状态转换。
如果这不是一个有效的状态转换,该区块则会被忽略。这就是为什么网络中的矿工试图挖掘无效的状态转换是没有意义的。所有人都只会忽略它。
许多用户运行自己的节点,与以太坊或比特币等区块链交互。许多社区已将此模式作为其文化的一部分,并且非常强调每个人都运行自己的节点,由此他们就成为验证过程的一部分。确实,让大多数用户 (尤其是那些质押了大笔资产的用户) 运行全节点是非常重要的;如果大多数用户变得懒惰,那么矿工可能会突然被诱使生产无效区块,如此一来该模型将不再适用。
这有点像民主制中的三权分立 —— 政府有不同的分支,而仅仅因为你在其中一个分支拥有多数席位 (比如立法机构),并不意味着你可以做任何你喜欢的事以及藐视所有的法律。同样,矿工或质押者有权排序区块链中的交易;而他们无权轻易对社区制定新规则。
But do all blockchains work like this?但是所有区块链都是这样运作的吗?
这是个好问题。需要注意的一个重点是,以上所说的模型只有在全节点易于运行的情况下才会奏效。作为普通用户,如果运行全节点必须要花 $5000 购买另一台计算机,并且一直需要 1 GBit/s 的网络连接,那么 ta 根本不会选择运行全节点。尽管 ta 可以在某些地方达到该网络要求,但是永久地保持以运行自己的区块链节点很可能不那么方便。在这种情况下,普通用户很有可能不会选择自己运行节点 (除非 ta 的交易非常有价值),这意味着 ta 将信任其他人来为其执行该操作。
假设有一条链,其运行成本太高,以至于只有质押者和交易所会运行全节点。你刚刚改变了信任模型,然后大多数质押者和交易所能够聚集在一起并改变共识规则。对于这一点,用户是没有任何争议的 —— 如果用户对该链完全没有控制权,那么他们无法发起分叉。他们可以坚持使用旧的规则,然而,除非他们开始运行全节点,否则,他们根本不知道自己的请求是否在自己想要的链 (满足其共识要求的链) 上得到了回应。
这就是为什么每当出现提高以太坊或比特币的区块大小的讨论时,总会引起大量的争论 —— 区块大小每提高一次,都会增加大家自己运行节点的负担。这对矿工来说不是什么大问题 —— 与实际的挖矿操作相比,运行一个节点的成本要小得多 —— 因此,这将权力的天平从用户转移到了矿工 (或质押者) 身上。
但是,如果用户只是想用加密货币来买咖啡,该怎么办?Ta 需要在手机上运行全节点吗?
当然,没人希望需要这样做,用户也不希望。那么这时候就是轻客户端发挥作用的时候了。轻客户端是较简单的客户端,它们不需要验证整条链 —— 它们仅验证共识,即总难度或者已投票的质押金额数量。
换句话说,轻客户端会被诱使跟随一条包含无效区块的链。对此有补救措施,例如数据可用性检查和欺诈证明。据我所知,目前还没有任何一条链实现了这些,但至少以太坊未来会这样做。
因此,使用具有数据可用性检查和欺诈证明的轻客户端,用户在不需要运行全节点的情况下,也可以使用区块链的安全模型了。这是我们最终的目标,即任何智能手机都能够轻松地运行以太坊轻客户端。
侧链是当前的热门话题。它们似乎可以提供一种简单的扩容方案,不像 rollups 那么复杂。简而言之:
创建一条新的 PoS 链
在自身和以太坊之间创建一个双向桥接
…
重点!请注意,侧链的安全性几乎完全依赖于桥接 —— 这是一种允许某条链读取另一条链的状态的构造。毕竟,如果攻击者能够主链上的桥,让桥接链上的所有资产都为其所有,那么即便 PoS 链上的全节点提出异议也没办法了。所以一切都取决于桥。
不幸的是,桥的状态与轻客户端相同。它们不验证有效性,仅验证共识条件的绝大部分。然而,侧链有两个方面比轻客户端更糟糕:
桥接用于价值非常高的交易,其中大多数用户会选择一个全节点,如果可以的话
不幸的是,我们没有办法加固桥接,而我们可以对轻客户端这样做 —— 原因就是它们无法验证数据可用性检查
第二点很微妙,可以花一到两篇文章讲解一下。但是简单来说,桥接不能做数据可用性检查,而没有数据可用性检查,欺诈证明也几乎没用了。而如果使用零知识证明,可以要求桥接打包所有有效区块的证明,从而改善这个问题 —— 不幸的是,这样还是有可能会受到数据可用性攻击,但也是一种改进了。
总言而止,侧链的安全模型与以太坊和比特币等区块链不同,而且要弱得多。它们无法防止无效的状态转换。
实际上,所有这些都与分片有很大的关系。我们之所以需要分片来进行扩容,是因为只有分片能够实现这样的扩容方式:既不需要提高运行全节点的门槛,同时又能够尽可能地维护区块链的完整安全性保证。
但如果有人撤销所有历史数据呢?那么 ta 还是可以盗取所有比特币/ETH/等
理论上说,在一条非检查点的 PoW 链上,可以通过回滚所有交易来盗取比特币。是的,你不能发行一万亿个比特币,但你仍然可以盗取现存的所有比特币,这也很好,对吧?
我认为这一点非常理论化。社区会接受一个修改其好几年数据 (甚至只是好几个小时) 的分叉的机率几乎为零。在所有可能的分叉中,都会出现大规模的争抢,很快就会得出结论并拒绝分叉,只同意有效的链为现存的那条链。
有了 PoS 和敲定,这种机制将变得形式化 —— 客户端永远不能回滚已敲定的区块。
https://twitter.com/MihailoBjelic/status/1393686451255226368
https://dankradfeist.de/ethereum/2021/05/20/what-everyone-gets-wrong-about-51percent-attacks.html
https://twitter.com/dankrad/status/1393721324300865537?s=20
https://twitter.com/_prestwich/status/1393730794238005253
https://twitter.com/stonecoldpat0/status/1393869662572748801
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。