如何理解 “侧链”?
引言
Layer-2 对以太坊的重要性与日俱增,而且已成共识。
但是,“Layer-2” 是个不精确的标签。有些人说起 “Layer-2” 时,仅仅指的是 “不在以太坊 Layer-1(上的东西)”。但实际上,方案到底怎么跟以太坊 Layer-1 交互,是非常重要的。同属 “Layer-2” 名目下的不同方案,特性可以有天壤之别。可以争议 “Layer-2” 应该专指具备特定属性的某些东西(例如,我们大概都同意,部署在 AWS 上的东西不是 Layer-2,但也有一些项目,安全性保证差不多,但也被认为是 Layer-2)。不过,这不是我这里要讲的主题。
我在这里要讨论的是侧链(sidechains)的属性。
侧链的基本含义是:由一组验证者,把一条链的最新状态提交给一个(主链上的)智能合约,如此推进的一类系统。这些(最新状态的)检查点可被一个桥接合约(bridge contract)使用,以支持用户的存款和取款。一般来说,在该组验证者之间也会有一个领袖选举流程,来决定某时某刻由谁来创建侧链区块;例如 PoA 权威证明算法和 PoS 算法。(译者注:由该定义可见,作者所讨论的,是在主链上没有设计有效性保证机制的侧链;按照现在大家对 “侧链” 的宽泛定义,作者讨论的是广义侧链的一个子集;但是,原始的 “侧链”,也就是狭义的侧链概念,正与作者这里提出的一般无二。就看大家自己愿意把 “侧链” 当成一个专有名词,还是愿意取其衍生含义了。)
侧链在以太坊生态中也扮演着重要的角色。在研究人员还未开发出更好的方案之前,它们是可扩展性和可用性的临时解决方案。像 xDai 这样的产品,也点出了大家对更好的用户体验的需求,并使之扩散了开来。
但是,侧链并不具备广大的以太坊社区所期待的安全性。这不是说永远不该使用侧链这种方案。如果人们完全知情,但是愿意用,那是他们自己的选择,也可能是值得的。但如果人们是不知情的,那就危险了。本文是希望提供一些信息。如果每个人都已经完全知晓了这些特性,那我这再写一篇也无伤大雅。但如果这文章能帮助大家意识到自己的误解,那就算做了好事了。
那么侧链到底缺少了哪些安全特性?几乎所有的侧链,都不能够提供:
-
审查抗性
-
终局性
-
资金所有权保证
如果这些特性你全都要,那你可能得另找方案来代替侧链了。当然,也有可能在维持侧链核心架构的前提下改进具体方案在这些维度上的表现。我觉得开放性的讨论对大家都有好处。
审查抗性
显然,侧链的审查抗性比(设计优良的)区块链要弱。不然,那也根本不需要区块链了。但这里我们挖得再深一些。如果某条侧链有 N 个验证者,而只要有 M 个验证者一致同意就可以审查任意一笔交易,那么只需要 (N-M) 个验证者联合起来,就可以审查一个区块。这就导致了一个有趣的两难:要让审查交易变得更难,就会让审查区块变得更简单。因为审查交易和审查区块都是糟糕的事情,所以侧链就在根本上不能获得强健的审查抗性(译者注:这里的逻辑如下,如果只要 M 个验证者都不同意出某个块,系统就不能出块,那么自然,只需要 M 个验证者就可以通过拒绝出块来审查某一笔交易;但是,这也意味着,只要 N-M 个验证者同意,他们可以任意出块,总是出包含了别的内容的区块而不出某个区块,甚至集体玩消失)。这种担忧在使用 PoS 时也依然存在,甚至按权益来计算出块权重会让它变得更糟糕,因为达成阈值的独立实体数量可能会更低(即使在最理想的情况下,权益是充分均匀分布的,那也只不过跟不使用 PoS 的情形一样,不会变得更好)。
数据可得性保证
假设只要 (N-M) 个验证者就可以创建一个区块。再假设所有其他验证者需要拥有整个状态的数据才能够验证新状态。那么,只要 (N-M) 个验证者是恶意的,他们可以:
-
创建一个新区块
-
拒绝与诚实验证者共享区块数据
-
本质上就是将 N-(N-M) = M 名诚实验证者移出了共识过程,因此完全掌控了整个系统
这种情况发生的可能性有多大呢?显然需要更具体的细节才能下结论,但我们可以这样开始思考:一个理性的验证者,要跟其他人共享数据的激励在哪里呢?在传统的权威证明机制中,不这样做可能对声誉有损。但是,其实声誉机制也很难起作用,因为实际上并没有办法证明数据被扣起来了,除非其他人把所有数据都放到了链上。觉得这个解决方案听起来像是 optimistic rollup?没错,就是如此。这也意味着,带有更好安全性的侧链,本质上就 “退化” 成了 optimistic rollup。在大多数侧链方案中,验证者可以因为自己的工作而获得某种形式的支付。对于诚实的验证者,奖励会在 N 个验证者之间共享。对于不诚实的验证者,同样多的奖励只会在 N-(N-M)=M 个验证者之间共享,所以验证者完全有激励不跟其他人分享更新后的状态(译者注:此处的计算疑有误)。在这里,有一个根本性的难题:很难辨别数据可得性(data availibility)攻击。对于诚实验证者来说,很难分辨出,到底是有人发动了攻击,还是自己遇到的同步问题。
终局性
假设状态转换的流程如下:state1 => state2 => state3而每一次的转换都需要一些交易在已有的状态上生效从而改变状态。而终局性就是说,交易一旦生效,就不能撤销。侧链的检查点,经过侧链验证者的共识之后发送到以太坊区块链上,并根据以太坊的共识机制被固化下来。有些人可能因此就认为,侧链的终局性等同于以太坊的终局性;要回滚侧链的区块,你也需要回滚以太坊的区块。但这完全搞错了。因为终局性是说不能回滚交易,不是说不能用新状态来替代旧状态。只要 (N-M) 个验证者同意,他们可以执行如下的状态转换:state1 => state2 => state1(使用 state1 来替代 state3,就等于是回滚了大家默认已经终局的 state2,但这完全不需要以太坊主链也回滚。)
侧链资金所有权保证
假设现在的 state1={Alice:1000,Bob:0}。即 Alice 有 1000 块,而 Bob 啥也没有。那如果 Bob 是恶意的,而且控制着(或者可以高效地腐化) POA 验证者中的绝大多数,他可以怎么做?他可以执行一个状态转换,state1 => state2,而 state2={Alice:0,Bob:1000}。也就是偷走 Alice 所有的钱并交给 Bob。因此,侧链的防御就减弱为,不会有 (N-M) 个验证者同意去执行这样的非法状态转换。这已经是众所周知的事(至少我是这么相信的),但我认为还是有必要提醒大家。你对一条侧链的信心,只能是相信验证者中的大多数不会干这样的事情。对侧链的大部分安全分析都应该关注这一点。可能还是有某些人你可以在某种程度上信任他们。就像我们中的许多人都(出于许多理由而信任)中心化的服务提供商。有时候这种牺牲是值得的。重要的是,你得清楚这是一种权衡。
使用治理程序作为防御手段的问题
有一种说法是:”我们可以使用治理程序来解决上面提到的所有问题“。这种方法是有缺陷的,因为整个系统会退化为一个治理流程。这种说法格外使我担心的一个理由是,它意味着侧链的其他属性是剧院(什么时候,我们因为什么理由需要这样的属性呢?)。举个例子,如果治理流程才是防范上述问题的最终手段,那也就意味着,什么 PoS、PoA,统统都不重要。系统的治理流程才是真正的 PoA。而且,很明显,对系统的治理流程,同样可以发动一模一样的攻击。
侧链的特性在哪里可能特别有用?
除了侧链的一些附加属性,比如更快的区块时间(因此有更好的用户体验),确实有一些场合,是侧链的特点可以大放异彩的。比如:
-
你就是想要 N-M 个验证者就能执行任意状态转换。希望有一个高级控制权限的企业应用就是一个例子。
-
M=0,且 N 个验证者可以执行任意状态转换的情况。例如,一个四方参与的游戏。不过问题是,1个验证者就可以关停这条链。
结语
曾经,侧链是在保持一定水平的以太坊可组合型和互操作性的前提下,唯一可用的方案。现在,随着别的一些 Layer-2 扩展方案的成熟,是时候考虑侧链如何与其他方案更好地结合了。有一些属性,很适合让侧链加以整合:
-
实现不收费的大规模迁移,保证用户不会因为费用而被卡住,无法退出。
-
将领袖选举机制替换为其他具备更强审查抗性的方案(PoS 可能是个 错误 的方向。见此帖)
-
需要协调器来处理链上两个状态的差异。
-
加入错误性证明来防止非法的状态转换。
随着 optimistic rollup 和 optimistic VM 技术的成熟,项目的权衡范围也会改变,因此,现在是反思侧链属性及其相关取舍的好时机。
原文链接:
https://ethresear.ch/t/understanding-sidechains/8045
作者: barryWhiteHat
翻译: 阿剑
比推快讯
更多 >>- XEROF联创:贝莱德等比特币ETF削减了比特币增长空间
- Ola:首次代币发行快照已完成
- 比特币矿企Cleanspark今年Q1净利润突破1.267亿美元
- CME美联储观察:美联储6月维持利率不变的概率为96.5%
- Justin Sun通过2个地址向HTX充值2423万USDT
- 某巨鲸地址以843万美元的亏损清仓了ETH、OP以及ARB
- 摩根大通披露持有贝莱德等多个美国现货比特币 ETF 敞口
- ARK Invest 和 21 Shares 修改现货以太坊 ETF 备案,删减质押条款
- 哥伦比亚总统涉嫌接受50万美元非法加密货币捐款
- SEC称法院应驳回Coinbase的中间上诉请求
- Curve原生稳定币crvUSD铸造数量超过1.28亿枚
- ShapeShift 创始人 Erik Voorhees 推出生成式 AI 平台 Venice
- Rubric Capital Management持有超6000万美元的贝莱德现货比特币ETF
- 分析师:6 月底到期的比特币看涨期权未平仓合约集中在 75,000 美元
- EigenLayer 基金会:EIGEN空投申领和质押已开放
- Celo社区批准将 Optimism 的 OP 堆栈用于新的Layer2链的计划
- 美 CFTC 投票提议禁止通过赛事合约押注政治事件的规则
- 美司法部选择咨询公司Forensic Risk Alliance作为币安外部监管机构
- Jack Dorsey:2030 年比特币价格将突破 100 万美元
- Fireblocks推出受NYDFS监管的加密托管公司,将向美国客户提供冷存储托管服务
- 美联储理事Bowman:认为今年不需要降息
- 富国银行持有美国现货比特币ETF敞口
- 以太坊失守2900美元,日内跌幅4.53%
- 分析师:贝莱德IBIT和富达FBTC资管规模达到100亿美元仅用时49和77个交易日
- 一交易者花费3540美元买入michi,获利188万美元,回报达533倍
- 数据:4 月 CEX 累计现货交易量降至 1.6 万亿美元,为七个月来首次出现环比下降
- Kraken 律师再次推动驳回 SEC 诉讼,听证会将于 6 月进行
- 10x Research创始人:以太坊或将跌至 2500 美元
- 九只美国现货比特币 ETF 今日净流入约 4376 万美元
- 分析师:美元指数的低迷可能有利于比特币和股市
比推专栏
更多 >>观点
项目
比推热门文章
- XEROF联创:贝莱德等比特币ETF削减了比特币增长空间
- Ola:首次代币发行快照已完成
- 【比推一周Web3新闻精选】SEC向Robinhood美国加密业务发出Wells通知;美CFTC主席:针对加密的“执法行动周期”将在未来六个月到两年内进行;美国众议院投票废除有争议的 SEC 会计公告
- 比特币矿企Cleanspark今年Q1净利润突破1.267亿美元
- CME美联储观察:美联储6月维持利率不变的概率为96.5%
- Justin Sun通过2个地址向HTX充值2423万USDT
- 某巨鲸地址以843万美元的亏损清仓了ETH、OP以及ARB
- Bankless:这个周期会跳过以太坊吗?
- 美联储「印钞」套路大揭秘,洞悉发债背后的深层原因
- 生态建设突飞猛进,盘点处于价值洼地的 RGB++ 项目