当我们向一种新的扩容范式转变时,回顾被抛弃的旧范式是一种很好的做法。
这篇文章旨在让读者相信,“以rollup为中心”的方法并不会背离分片,并且有望构建对整个系统更直观的理解。
OptimisticRollup的定义
出于本文的目的,我们先详细说明最简单的OptimisticRollup(ORU)实现。
ORU需要具备以下几个特性:
将所有交易数据提交到链上
将状态根提交到链上
假设状态根是正确的
一些节点负责验证ORU的状态转换
设有链上欺诈证明执行程序,可以撤销无效状态转换
分片为什么不可行
在证明ETH2.0分片只是一种复杂的ORU系统之前,我们先来探究一下为什么原生分片系统并非安全的可扩展性解决方案。其背后原因不是特别直观。
从数学角度证明分片的安全性
假设一条区块链上有16384个验证者和64条分片链,每条分片链都由128名验证者组成的委员会负责验证。委员会成员选举是不可预见的:每个slot结束后,所有委员会都会解散,并随机从全体验证者中重新选出64个委员会,因此每个验证者都不知道其他验证者所在的委员会。假设一个区块需要获得委员会中2/3成员的认可才能被添加到分片链上,这就意味着在全体验证者中包含1/3恶意验证者的情况下,通过随机的方式选出恶意委员会的概率是:
意大利银行副行长:对于支付,零售CBDC、稳定币等都是不错的选择:金色财经报道,意大利银行副行长Piero?Cipollone在2023年世界银行全球支付周的会议上表示,十年后支付生态系统会是什么样子?这很难说,但这肯定取决于我们。理想情况下,我们的目标是建立一个家庭和企业可以轻松地在支付解决方案之间切换的经济体,可以使用CBDC或其他形式的私人发行的数字货币进行数字支付.
对于国内支付,许多解决方案正在涌现,以降低成本并增强包容性。零售CBDC、稳定币、代币化存款、快速支付都是不错的选择。它们构成了一个尚未达到平衡的生态系统。很可能每个司法管辖区都会根据其具体需要对这种均衡进行不同配置。
我的猜测是所有这些解决方案将共存,每个解决方案都有特定的用例。在这种情况下,中央银行需要确保适当的监管到位,在安全的环境中促进竞争和创新,造福于家庭和企业。[2023/5/23 15:19:37]
请注意,我们可以通过调整委员会的规模来按比例放大或缩小该参数,从而达到理想的安全级别。
由于选出恶意委员会的概率极低,以及对不作为验证者的反向激励,该分片系统理应继承其非分片协调系统的安全性和活性保障。但是,就像现实世界中的大多数系统那样,实现这一点并非易事。由于委员会成员是提前选好的,恶意参与者就有机会贿赂理性参与者。如果可以轻而易举地创建从验证者公钥到IP地址的映射,就会出现更多行贿现象。此外,在免许可型系统中,可验证投票从本质上来说无法防止行贿。综上,分片的实际安全性相比理论上来说低至少一个数量级。
ETH突破650美元关口 日内涨幅为3.43%:火币全球站数据显示,ETH短线上涨,突破650美元关口,现报650.03美元,日内涨幅达到3.43%,行情波动较大,请做好风险控制。[2020/12/27 16:38:05]
与Plasma一样,分片同样存在数据可用性问题
虽然分片的安全性低于整体协议,但是我们依然能够确保其安全性,即,采用欺诈证明来撤销无效状态转换。但是,如果不为我们这个设想中的简单分片链引入额外的设计,那么恶意验证者完全可以扣住数据、不放出来,使得他人没有足够的数据来生成欺诈证明。接下来,我们将讲解如何实现这种攻击。
假设有一条简单分片的区块链B,上面有X和Y两条分片链。区块链B在两个委员会中运行传统的拜占庭容错共识算法来帮助运行分片X和Y,分别是C~x~和C~y~。B上的每个区块都包含两个门限签名,即,C~x~和C~y~两个委员会中2/3的成员对各自分片链的当前区块的状态根的见证。
假设每条分片链的每秒数据和交易处理量与非分片系统相同,那么引入分片链应该能提供大约两倍的吞吐量。在乐观情况下,事实确实如此。
现在,让我们对B发起数据不可用攻击。假设一个恶意实体能够迫使C~x~中2/31的成员签署无效的状态根,并且不公开对应区块的输入数据。之后,这个无效的状态根会包含在下一个即将被添加到B上的区块内。这时候,并没有合理的机制可以让B回到有效状态,我们可以举一些机制例子看看:
NFT指数公司Center完成1100万美元种子轮融资:7月28日消息,NFT指数公司Center完成1100万美元种子轮融资,本轮融资Thrive和Founders Fund等参投。据悉,Center将对各区块链上的NFT进行索引和组织,并表示到目前为止其数据库中已整理1.2亿个NFT。[2022/7/28 2:43:45]
C~x~中剩余的1/3-1位成员可以在B上发出数据不可用警报。遗憾的是,这不是一个可明确归属方的错误,因此B无法确定是哪一方在作恶。怀有恶意的少数派有可能会借此发起零成本的DDOS攻击。
网络中的其它节点可以发出数据不可用警报。但他们很可能做不到,因为在错误发生期间,只有C~x~的成员在密切关注这个时间。
由整个社区来发现错误,并主动介入将B回滚到最新的有效状态。这种处理模式显然是糟糕的。
执行类似Plasma的批量退出机制,从X批量退出到B上,会产生相关的负面影响。
就像Plasma一样,这里真正的问题是数据可用性。
安全地提高数据可用性
希望上述分析能让你明白一个道理:我们首先应该将关注点放在扩展基础层的数据可用性上。否则,系统仍将遭受数据不可用攻击。
从传统上来说,提高区块链上的数据吞吐量需要就系统所支持的最低硬件/带宽要求达成社会共识——得出一个可以接受的区块大小。MustafaAl-Bassam和VitalikButerin最近的研究提供了一种概率性机制来确保数据可用性。M.Yu等人进一步扩展了该研究,提出了CodedMerkleTree累加器这一概念,给出了最优阶数的指标。
动态 | 原告团队就谁来领导针对Tether的集体诉讼展开辩论:在纽约南区的美国法院,法官听取了对Bitfinex、Tether和iFinex提起诉讼的三个原告团队的陈述,他们希望在这起可能有数万人受伤的集体诉讼中担任首席律师。代表原告Leibowitz等人的Kyle Roche辩称,他的公司是第一个调查所谓的市场操纵、第一个提起诉讼的公司,而且还拥有顶级的加密货币专业知识。此外还有许多律师参加了口头辩论。会议结束时,法官表示原打算今天决定此动议,但仍很难做出决定。并承诺在美国东部时间周四下午4点做出决定。(Cointelegraph)[2020/2/25]
上述机制主要放宽了网络中参与者下载所有数据的要求。Vitalik的提议是,让网络中的参与者随机选取区块中的小部分数据进行验证,以确保区块提议者公开了数据。风险在于,区块提议者只需要隐藏少量数据即可发动数据不可用性攻击。因此,参与者必须多次对区块进行抽样验证,才能对区块的可用性建立起足够的信心。为了减少抽样次数,Vitalik提议采用二维Reed-Solomon编码来对区块数据进行编码。
在这个结构中,区块被分割成N个份额,然后进行编码,生成M个份额,只要拥有M中任意N个份额即可重新构建区块。假设2N=M,区块提议者需要影响1/2的区块数据,才能成功发动数据不可用攻击。CodedMerkleTree采用类似的结构,只不过使用O(b)的解码成本和O(1)的哈希承诺来代替二维Reed-Solomon编码所提供的O(b^1.5^)解码成本和O($\sqrt{b}$)哈希承诺。
行情 | ETH价格上涨至116USDT:根据huobi数据显示,ETH快速拉升,当前价格116.03USDT,自开盘上涨9.08%。[2018/11/28]
关于该技术的详解,可以参见这篇文章。
分片就是Rollup
ETH2.0的分片设计模糊了它们是信标链的ORU这样一个事实。如果将重点从分布式处理转向有序的数据可用性层,就变得一目了然了。
如上图所示,验证者集起到以下4种作用:
验证并执行信标链
对分片所提供的数据进行抽样验证
组成分片委员会
提交关于无效状态转换的欺诈证明
我们已经作了两个假设:i)数据具有可用性,ii)区块链会从最近一个具有数据可用性的区块开始进行分叉。则要么人们可以构建欺诈证明,要么系统将缺乏数据可用性归咎于签署该区块的分片委员会,并回滚状态转换。
从定义上来说,ETH2.0是一种ORU
这时,考虑到我们之前对ORU的定义,我们应该能够证明分片实际上就是rollup:
1.所有交易数据都提交到链上
分片区块数据被集中到数据可用性层上,在一定概率上会由全网进行验证。
2.状态根被提交到链上
分片委员会为包含在信标链区块中的分片状态根提供证明。
3.状态根被假定为有效的
信标链在没有进行额外验证的情况下,假定分片委员会的证明是有效的
4.一些节点负责验证ORU的状态转换
分片委员会验证分片的状态转换。
5.有一个可以撤销无效状态转换的链上欺诈证明执行器
信标链支持分片状态转换欺诈证明。
解构ETH2.0
既然我们已经解释了ETH2.0和ORU系统之间不可思议的相似性,我们能够如何利用这一信息来更好地理解整个系统的设计?让我们通过ORU系统的角度来探索ETH2.0的一些设计决定:
数据吞吐量
在当前设计中,系统的数据吞吐量与分片机制紧密耦合。
这里可以采用的一种方法是,将数据可用性检查视为协议中的头等公民。这样可以对数据层进行独立优化,执行层也可以更细的粒度控制硬件要求。
例如,ETH2.0可以提供64个数据中心和一个在信标链上的ORU合约,以此代替分片链。ORU合约可以让rollup决定领导者选举机制,它们想要将数据发送到多少个数据中心上,以及它们是否想与其它rollup绑定。使用的数据中心越多,验证rollup所需的硬件要求就越高。
严格来说,上述系统是当前分片设计的超集。除了由协议定义的64个分片之外,还会有其它具有自己特征的rollup构建在安全数据层上,并且独立于协议分片。
回滚最小化
在简单的ORU中,当选的领导者有权提交无效状态转换。虽然这不会影响系统的安全性,因为无效状态转换是可以通过欺诈证明撤销的,但这确实会破坏rollup的进程。单独来看,这种破坏对作恶者来说通常是不划算的。然而,在ETH2.0中,跨分片通信让这个问题变得特别棘手。处于slotN的分片预期自己可以获得其它分片在slotN-1时的状态。假设分片S~i~提交了一个无效的状态转换,除了单方面发起回滚之外没有其它合理的方法来撤销该状态对分片S~j~的负面影响。
为避免灾难性事件,必须有适当的机制来防止这类回滚。其中最明显的两个机制是分片委员会和托管比特检查。正如“从数学角度证明分片的安全性”一节中所述,即使考虑到各种攻击向量,贿赂分片委员会中2/3以上成员的概率也很低。托管比特可以确保诚实的验证者不会因为懒惰而被签署无效的状态转换。
如果我们认为这些机制的目的是防止无效状态转换,而非维护系统安全,就能选择既有实用价值,又能实现相同效果的参数。例如,将分片委员会的规模减少到64人,随机组成恶意委员会的概率依然低至3.1×10-8。但是从网络和签名聚合的角度来看,这样能够极大减轻负担。
以rollup为中心的以太坊路线图
本文最初撰写于斯坦福区块链大会2020期间。那时,我开始充分领会到ETH2.0和ORU之间的相似性。在看过Vitalik的文章后,我决定发布这篇文章,来表示对以太坊将来采用以rollup为中心的扩容方案的支持。但是,如本文所述,“以rollup为中心”的扩容方案没有让我们偏离方向,而是一个超集。我们在分片设计中遇到的问题与我们在整合跨rollup通信时遇到的问题是同构的。这就意味着,已经开展的大部分工作都可以继续进行,不会被中断。
以rollup为中心的路线图会降低分片执行所必需的协议复杂性。这使得我们能够不断迭代类似分片的复杂的rollup机制。这样可以让更多开发者为不同的rollup格式做贡献,让现有核心开发者和研究者可以专注于构建一个健壮的数据可用性层。
可以说,通往功能完善的ETH2.0的道路从未如此清晰。
如果你对文中所述内容感兴趣,想要进行深入讨论,请在推特上联系我@lightclients。我也在将帮助各种有影响力的项目寻找优秀的研究者和工程师。如果你需要帮助,请私信我。
宏观投资者DT表示,不久后很可能会出现比特币短缺。因为最近灰度信托就像疯了一样鲸吞比特币。一旦新开采的77%上升到成了110%,非矿商供应遭遇巨大考验.
2020年10月16日周五八月三十大家好,我是你们的老朋友易天说。易天(aphz8705)一直认为做投资者需谦而不卑,骄而不横,敬而不畏.
10.15以太坊晚间分析 复盘回顾 昨天以太坊行情比较极端,早盘冲高385后承压下行,白盘一直在窄幅横盘震荡,午间18:40触及低点377.7一线企稳震荡上行.
近几个月,随着DeFi的兴起,有不少人在流动性挖矿上赚到数倍、甚至数十倍的超高收益。在超高收益刺激之下,越来越多的参与到DeFi挖矿中,后来者中正真赚钱的人却是少数.
世界上只分两种币:你能控制的,和你不能控制的。 ——派派 找币圈人问这么一个问题,“你的币放在哪了?”?90%的人会回答或其实所谓的存放在钱包、交易所并不是说把币放在了钱包、交易所的数据库里,世.
丁立国|中国企业家俱乐部理事、德龙控股董事局主席在南开大学,丁立国介绍了天铁混改前管理上的乱象。“我们所有的指标都由行业数据衡量,入驻天铁发现天铁的吨钢耗电量一直超标.