V神 : 混合式二层(Layer 2)协议的曙光

注:原文作者是以太坊创始人VitalikButerin,以下是译文内容。

特别感谢PlasmaGroup团队提供的审阅及反馈工作。

目前2层扩容方法正从理论阶段走向实践阶段,但同时,这些扩容技术所存在的内在挑战也越来越容易被看到,也因此它们距离成为成熟的以太坊扩容技术还有一段距离。以太坊在很大程度上可以说是成功的,因为它的开发体验是非常简单的:你编写一个程序,发布该程序,任何人都可以与之交互。另一方面,设计一个状态通道或Plasma应用,依赖于很多关于激励和特定于应用的开发复杂性的明确推理。对于特定的用例,例如相同的两方之间的重复付款和二人博弈游戏,状态通道是适合的,但对于更广泛的应用而言,这被证明是具有挑战性的。而Plasma,在支付方面可以很好地发挥作用,但面对更多的应用也同样会面临挑战:即使实施一个去中心化交易所,也需要客户端存储更多的历史数据,在Plasma上应用以太坊式智能合约似乎也非常困难。

但与此同时,一个被遗忘的“半layer-2”协议类别又重新出现了——这个类别在扩展性方面的收益较小,但其具有更容易泛化和更有利安全模型的好处。在一篇被大家遗忘已久的博客文章中,我介绍了“影子链”的概念,即区块数据发布在链上,但默认情况下区块不会被验证的一种架构。相反,区块是被暂时接受的,只有在一段时间后才能最终确定。在这两周内,一个暂时接受的区块可能会受到挑战;只有这样才能验证该区块,如果该区块被证明是无效的,那么该区块所在链将被恢复,并且原始发布者的存款将受到惩罚。合约不会跟踪系统的完整状态,它只跟踪状态根,用户自己可通过从头至尾处理提交给链的数据来计算状态。而最近出现的一个ZKRollup提议,通过使用ZK-SNARKs验证区块的有效性,在没有挑战期的情况下做同样的事情。

声音 | 量子链创始人帅初:Qtum在全球已经拥有5300个全节点:量子链(Qtum)创始人帅初刚刚发推表示:Qtum在70多个国家,已经拥有超过5300个全节点,我认为Qtum全节点在比特币和以太坊之后,如果计算全节点数,它将是最大的POS智能合约网络。[2019/6/13]

在链上发布ZKRollup包的剖析图:影响ZKRollup系统状态的数百笔“内部交易”被压缩成一个包,每笔内部交易包含约10个字节,用于指定状态转换,再加上一个约100-300字节的SNARK。

在这两种情况下,主链用于验证数据可用性,但不验证区块有效性或执行任何重要的计算,除非有挑战被提出。因此,这种技术并不具有惊人的可扩展性收益,因为链上数据开销最终会成为瓶颈,尽管如此,它依然是一个非常重要的技术。数据比计算便宜,有很多方法可以非常显著地压缩交易数据,特别是因为交易中的大部分数据是签名数据,很多签名可通过多种形式的聚合压缩为单个签名。zkrollup通过将每笔交易压缩到仅10个字节,其可承诺每秒500笔交易,这比以太坊链本身的吞吐量高出30倍。签名不需要包括在内,因为有效性由零知识验证。而使用BLS聚合签名,可以在影子链中实现类似的吞吐量。而即将到来的以太坊伊斯坦布尔硬分叉,将把数据的gas成本从每字节68单位降低到每字节16单位,从而将这些技术的吞吐量再提高4倍。

量子链创始人帅初:2018年是深耕区块链技术、监管规范化的开始:金色财经现场播报 在2018“中国区块链第一辩”暨行业领袖峰会上,关于2018年对于区块链行业是好是坏的问题上,量子链创始人帅初表示,区块链是具备周期性的,还有很多内在的问题,现在是个巨大的问号,行业需要找到可持续商业模式需求。而在技术方面,人们应该有更多的反思,来验证技术的成功,目前区块链技术仍处于早期的开发阶段,今年是深耕区块链技术、监管规范化的开始,总体而言是好的一年。[2018/3/28]

————————————————————————————————————————————————

那么,数据链上技术与数据链下技术相比有什么好处呢?首先,前者不需要半可信的运营者。在ZKRollup中,由于有效性是由加密证明验证的,所以package提交者没法实现恶意破坏。在optimisticrollup中,恶意提交者可以发布坏区块,但下一个提交者将在发布自己的区块之前立即挑战该区块。在ZKrollup和optimisticrollup中,在链上发布足够的数据,允许任何人计算完整的内部状态,只需按顺序处理所有提交的delta,并且没有可夺走此属性的“数据预扣攻击”。因此,成为一个运营者可能是完全没有权限的,所需要的只是一个用于反垃圾交易目的的保证金。

Qtum量子链宣布已经拥有超过200万人的全球社区及平均2100以上全节点:Qtum量子链在出席全球区块链峰会时宣布,目前子链已拥有超过200万人的全球社区及平均2100以上全节点。其创始人帅初认为,只有拥有良好灵活性和可扩展性的平台才能最大程度激发出智能合约的力量,也才能将其运用到物联网、人工智能、金融等诸多领域。Qtum现全球均价43.3美元,涨幅3.77%。[2018/1/29]

第二,optimisticrollup特别容易概括;optimisticrollup系统中的状态转换函数实际上可以是任何可在单个区块的gas限制内计算的函数。尽管在实践中,使ZKSNARKs超过通用计算是非常困难的(至少目前而言是这样),ZKRollup在理论上也是可用同样的方式进行概括的。第三,optimisticrollup更容易构建客户端,因为其对第二层网络基础设施的需求更少,只需扫描区块链就可以完成更多的工作。

但这些优势来自于哪里呢?答案在于一个被称为数据可用性问题的高级技术性问题。基本上,在第二层系统中有两种方法。第一种是将无效数据发布至区块链,第二种方法是根本不发布数据。已发布但无效的数据很容易处理,因为一旦数据在链上发布,就有多种方法可以明确地确定其是否有效,而无效的提交则是明确无效的,因此提交者可能会受到严重惩罚。另一方面,不可用的数据会更难处理,因为即使在受到质疑时可检测到不可用性,也无法可靠地确定未发布的数据是谁的错误,尤其是在数据被默认保留的情况下,仅当某些验证机制试图验证其可用性时才按需显示。这一点在“渔夫困境”中得到了说明,它显示了一个挑战响应游戏如何无法区分恶意提交者和恶意挑战者:

声音 | V神:以太坊2.0是旨在改善人类组织的机制:据eToro今日消息,在特拉维夫举行的Ethereal峰会上,V神表示,以太坊2.0是旨在改善人类组织的机制。[2019/9/15]

渔夫困境,如果你只在时间T3开始查看给定的特定数据,那么你不知道自己是处在Case1还是Case2中,因此谁是错误的呢?

Plasma和状态通道,通过将问题推给用户,都是围绕解决“渔夫困境”问题:如果你作为用户,你决定你正在与之交互的另一个用户不向你发布他们应发布的数据,那么你有责任退出,并转移到另一个交易对手/运营者。事实上,作为一个用户,你拥有所有以前的数据,以及关于你签署的所有交易的数据,这允许你向链证明你在layer-2协议中拥有哪些资产,从而安全地将它们带出系统。你证明了一个给了你资产的操作的存在,没有其他人能证明你批准的将资产发送给他人的操作的存在,所以你得到了资产。

这种技术很优雅,然而,它依赖于一个关键的假设:每个状态对象都有一个逻辑上的“所有者”,并且没有所有者的同意就无法更改对象的状态。这对于基于UTXO的支付而言是好的,它甚至可用于去中心化交易所,但这种“所有权”属性还远远不够。一些应用程序并不具有自然所有者,即使在那些拥有所有者的应用程序中,也常常有多个人可合法地对对象进行编辑。而且,如果不引入拒绝服务攻击的可能性,就无法允许任意第三方退出资产,准确地说这是因为无法证明发布者或提交者是否有过错。

声音 | V神:分配资本是“杀手级”链条治理应用:据Ambcrypto消息,V神日前在接受Zcash采访时表示,EOS的投票机制创造了一种超线性专职效应,如果一个平台或个人足够大就有足够的投票购买代表位,从而以此赚取更多数字货币。V神称“这就是我认为硬币投票治理在分配资金的情况下会失败的一个例子。我实际上认为分配资本是链条治理的杀手级应用。”[2018/9/15]

另外,Plasma和状态通道也存在各自特有的问题。状态通道不允许已不是通道一部分的用户进行链外交易。Plasma要求用户存储大量的历史数据,当不同的资产可相互缠结时,这些数据会变得更大买单机制的去中心化交易所中发生的那样)。

由于数据链上计算链下第2层技术没有数据可用性问题,所以它们没有这些弱点。ZKrollup和optimisticrollup非常小心地在链上放置足够的数据,以允许用户计算第2层系统的完整状态,确保如果任何参与者消失,新的参与者都可轻松取代他们。它们唯一存在的问题,是在不进行链上计算的情况下验证计算,这是一个更容易解决的问题。而且,扩展性获得了显著的提高:在ZKRollup中,每笔交易大约有10个字节,通过使用BLS聚合签名,可以在optimisticrollup中实现类似级别的可扩展性。这相当于目前理论上每秒最多可支持500笔交易,而在伊斯坦布尔硬分叉后,就可实现超过2000TPS。

————————————————————————————————————————————————————

但如果你想要实现更多的可扩展性呢?然后,在数据链上layer2和数据链下layer2协议之间有一个很大的中间地带,有很多混合方法可以为你提供这两者的一些好处。举个简单的例子,可通过发布一个映射来防止在PlasmaCash上实现的去中心化交易所的历史存储爆炸问题,该映射表示哪些订单与链上的哪些订单匹配:

左边:如果PlasmaCash用户拥有1个币,他们需要存储的历史数据。中间:如果PlasmaCash用户拥有1个使用原子交换与另一个币进行交换的币,他们需要存储的历史数据。右边:如果订单匹配在链上发布,PlasmaCash用户需要存储的历史数据。

即使在去中心化交易所的环境之外,用户需在Plasma中存储的历史数据量,也可以通过让Plasma链定期在链上发布每个用户的一些数据来减少。我们还可以想象一个平台在某些状态没有逻辑“所有者”的情况下像Plasma一样工作。Plasma开发人员已开始着手这些优化工作。

因此,对于layer2可扩展性解决方案的开发人员来说,这种混合方案极大地提高了开发的易用性、通用性和安全性,并减少了每个用户的负载。这样做的效率损失也被夸大了:即使在完全脱链的layer-2结构中,用户在不同的交易对手和供应者的存款、取款和移动将是不可避免的,并且会经常发生,因此,不管怎样,都会有大量的每用户链上数据。混合路由为在半layer-2体系结构中快速部署完全通用的以太坊式智能合约打开了大门。

另请参见:

IntroducingtheOVM

BlogpostbyKarlFloersch

RelatedideasbyJohnAdler

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:15ms0-5:209ms