前言:V神认为,虽然从长远看,layer1应保持简单和稳定,layer2聚焦更多创新,这种想法是好的。但是,从短期看,layer1还不够强大,要想达成这种layer1和layer2的完美分层关系,首先要让layer1足够强大,而这个足够强大就是要让layer1协议达到一定级别的功能。所谓的一定级别,就是实现layer1和layer2完美互补关系的最小功能级别。V神用“功能逃逸速度”进行比喻。那么,layer1必须要有那些最小功能呢?其中包括一种可以验证需要验证的任意内容的编程语言;丰富的有状态性;数据可扩展性和低延迟等。本文由“蓝狐笔记”社群的“SIEN”翻译。
区块链领域有一个普遍的思路:区块链应该最大程度上简单,因为它们是很难改变的基础架构,一旦破坏会造成巨大危害,而更复杂的功能应该在上层构建,以layer2协议的形式:状态通道、Plasma、Rollup等。layer2是进行持续创新的地方,而layer1应该保持稳定性和进行维护,只有在紧急情况下才进行大的更改。
这种分离层的想法是非常好的主意,从长期看,我强烈支持这种想法。然而,这种想法忽略了一个重要的观点:尽管layer1无法很强大,但是由于更大的能力意味着更大的复杂性并因此带来更大的脆弱性,因此layer1也必须足够强大,以使得构建其上的layer2协议首先是可能的。
V神:可通过部分区块拍卖应对区块构建者的中心化风险,长远看区块生产需要第三者介入:10月3日消息,以太坊联合创始人Vitalik Buterin发文表示,可通过部分区块拍卖限制构建者权力以应对其中心化风险,并主要介绍了包含列表(Inclusion lists)、提议者后缀(Proposer Suffixes)两种可能方式:
在包含列表模式(Inclusion Lists)中,提议者提供一个包含列表,他们要求的事务列表必须包含在块中,除非构建者可以完全用其他事务填充块。这种设计相当简单,但弱点包括:激励相容性问题;提议者的额外负担;构建者仍然可以从事一些滥用行为;需要partial enshrining才能使账户抽象化发挥作用。
另一种构建方法是允许提议者为区块创建一个后缀。构建者在构建区块时不会看到关于提议者意图的信息,而提议者能够将构建者遗漏的任何交易添加到末端。这样的做法减少了激励的兼容性问题,尽管对提议者来说可能增加额外负担,但在从构建者那里得到响应和必须发布区块之间,提议者将得到一些MEV机会。
在任何情况下,我们需要在最大限度地减少构建者的权力和信息的同时,最大程度地减少强加给提议者的负担,而这似乎清楚地表明在区块生产中需要一些第三者介入。[2022/10/3 18:38:10]
一旦layer1协议达到一定级别的功能,我将其称为“功能逃逸速度”,那么到了这个时候,你可以在这个基础上做其他所有事情,而无须改变基础层。但是,如果layer1功能不够强大,那么,你可以谈论填补与layer2系统的空隙,但现实是,如果不再次引入layer1试图摆脱的整套信任假设,实际上就没有办法构建这些系统。
V神:ETH 2.0的益处将很快显现:金色财经报道,近日在以太坊基金会的AMA上,V神表示,ETH 2.0的益处将比人们预期的更快出现。V神表示希望网络更快得到显著改善。[2020/11/19 21:16:36]
本文会讨论构成“功能逃逸速度”的最小功能的一些含义。
一种编程语言
必须有可能在链上执行定制的用户生成的脚本。这种编程语言可以很简单,且实际上并不需要高性能,但它至少需要拥有这种级别的功能:能够验证可能需要验证的任意内容。这很重要,因为要构建于基础层之上的layer2协议需要某种验证逻辑,这种验证逻辑必须以某种方式由区块链执行。
你可能听说过图灵完备性。对这个术语,“外行人的直觉”是如果一种编程语言是图灵完备的,那么它可以做计算机理论上可以做的任何事情。一种使用图灵完备语言编程的程序可以翻译成任何其他图灵完备语言的等效程序。但是,事实证明,我们只需要更轻一些的东西:可以将编程限制为无循环,或者可以保证程序在特定数量的步骤之后终止。
丰富的状态
V神:单数据根需要高带宽P2P网络及更复杂的P2P基础设施:针对此前V神称希望可以摆脱委员会,推特网友Mustafa Al-Bassam持续与V神进行互动。该网友表示:“建议仍然有一个委员会,但只有1个委员会而不是64个委员会。这允许区块生产者在其自己的节点内分片生产区块。大矿池将分配给所有分片。至于完全消除委员会(即直接使用Nakamoto共识),我对依靠单个数据根的抽样感到非常满意。如果有多个数据根,那么我感到不舒服。轻客户端假设的数量是零散的。不过,在无委员会的多数据根模型中,一个重要的考虑是,客户端更可能意外地接受64个不可用数据根中的1个为可用,而不是1个不可用数据根中的1个为可用。”V神则表示:“单数据根的挑战在于,你需要一个非常高带宽的P2P网络,没有多少节点能够直接连接到它,所以你需要更复杂的P2P基础设施,以使常规客户能够查询。如果有多个数据根,那么我感到不舒服。轻客户端假设的数量是零散的。我不认为这是真的,因为不是每个客户都选择64个分片中的一个来检查,而是每个客户都需要检查每个分片。因此,问题不在于安全方向,而在于效率方向。”[2020/10/5]
不仅存在一种编程语言重要,而且该编程语言如何精确地集成到区块链中也很重要。在可集成语言的更受限的方法中,如果它用于纯粹交易验证:当你向某个地址发送代币,该地址代表了计算机程序P,P可用于验证从这个地址发送代币的交易。
V神:没有证据表明51%攻击将使代币价格下跌:V神刚刚在推特表示,没有证据表明,51%攻击将使代币价格下跌,从而使做空奏效。事实上,削减51%攻击可能会使代币价格上涨。[2020/9/3]
也就是说,如果你发送的哈希值为h的交易,你提供的签名为S,那么区块链会运行P,如果输出为TRUE,那么交易是有效的。通常,P是用于加密签名方案的验证器,但它可以执行更加复杂的操作。尤其需要注意的是,在这一模型中,P并不能访问交易的目的地。
但是,这种“纯函数”的方法还不够。这是因为这种纯粹基于函数的方法并不足以执行人们实际想实现的多种类型的layer2协议。它可以处理通道,但它无法实现具有强大属性的其他扩展性技术,它也无法用于引导出具有更复杂状态概念的系统,等等。
为了简单说明纯函数范式无法做什么,可以考虑一下具有如下功能的储蓄账户:存在一个加密密钥k,k可以发起提款,且如果发起了提款,在接下来的24小时内使用相同的密钥k可以取消提款。如果提款在24小时内仍未取消,则任何人都可以“戳”该账户以完成提款。
V神:加密社区需要超越狭隘的货币变革思维:以太坊联合创始人Vitalik Buterin表示,当前的经济危机与2008年全球金融危机(比特币从中诞生)大不相同,加密货币社区需要相应地调整其思维方式。V神认为,2020年不会重演2008/2009年的金融危机,相反,他表示,这是一次病危机,一次认知危机,也是一次霸权治安危机。
V神随后评论称,现在是时候让社区超越币安首席执行官赵长鹏推文中所展现的思维方式了,赵长鹏称比特币是和平抗议。V神表示,仅仅想着变革货币是不够的,加密社区需要更宽阔的思路。以太坊和其他区块链有许多种类的应用超越了金融领域:去中心化、抵制审查的出版和传播,去中心化社区/治理/DAO、用于内容管理的DAO等都是重要的工作。他认为,2016-2020年是意识形态调整的时期,许多旧的意识形态和联盟正在消亡,新的思想和联盟正在诞生,加密社区需要仔细观察并适应新状况。(Cointelegraph)[2020/6/3]
这么做的目的是,如果密钥被盗,账户持有人可以防止偷窃者提取资金。偷窃者当然可以阻止合法持有人获得资金,但这种攻击对于偷窃者来说将是无利可图的,因此他们可能不会去干这种事。
遗憾的是,如果仅用纯函数这种技术无法实现。问题是:需要用某种方式将代币从“正常”状态转变为“等待提款”状态。但程序P无法访问目标地。因此,任何可以授权将代币移至等待提款状态的交易也可以授权立即偷取这些代币;程序P无法分辨出其中差异。
这种改变代币状态而无须完全释放它们的能力,对很多应用来说都很重要,其中也包括layer2协议。Plasma自身就符合这种“授权,最终确定,取消”的范式:从Plasma退出必须被批准,然后有7天时间的挑战期,在这个挑战期内,如果能提供正确的证据,退出可能被取消。
Rollup也需要这种属性:在rollup内的代币必须由程序控制,该程序持续跟踪状态根R,并且如果某验证器P返回TURE,则将R更改为R',但在这种情况下,它仅仅将状态改变为R',它并不释放代币。
授权状态改变而无须完全释放一个账户中的所有代币,这种能力我称之为“丰富的有状态性”。它可以在很多方面实现,有些基于UTXO的,但如果没有它,区块链不足以实现大多数layer2协议,而无须包含信任假设。
请注意:是的,我知道如果P可以访问h,那么,你可以将目标地址包括进来作为S的一部分,然后对照h进行检查,并以此方式来限制状态改变。但是,可能有一种编程语言其资源太有限或受限于实际上的执行。让人吃惊的是,在区块链脚本语言中通常确实如此。
足够的数据可扩展性和低延迟
事实证明,Plasma和通道以及其他完全链下的layer2协议有一些根本性的弱点,使得它们无法完全复制layer1的能力。
我在这里详细探讨。总结来说,这些协议需要一种判断情形的方法,其中一些参与方恶意地不提供他们承诺提供的数据,且因为数据发布并非是全局可验证的,这些判断游戏在博弈论上看是不稳定的。
通道和Plasma巧妙地通过添加额外假设来解决这种不稳定性,特别是假定对于每个状态,都有一个参与者对该状态不被错误修改感兴趣,因此,为其自身利益可以被信任。但是,这远非通用。例如,像Uniswap这样的系统,有一个大型的“中央”合约,它不归任何人所有,因此,它们无法有效地受到这种范式的保护。
有一种方法可以解决这个问题,其中layer2协议在链上发布非常小量的数据,但完全在链下进行计算。如果数据可以确保可用,那么,链外进行计算是可行的,因为判断谁正确计算谁没有正确计算的游戏在博弈论上是稳定的。
这是ZKrollup和optimisticrollup背后的逻辑。如果区块链允许发布并确保合理的大量数据的可用性,即使其计算能力非常有限,那么,区块链也能支持这些layer2协议,并实现高水平的可扩展性和功能。
区块链需要处理和确保多少数据?好吧。这取决于你想要多少TPS。通过rollup,你可以将大多数活动压缩至每个交易大约10-20字节,因此,1kb/秒,大约可以有50-100的TPS,1MB/秒大约50,000-100,000的TPS,以此类推。
幸运的是,互联网带宽持续快速增长,并且在计算方面并没有看到摩尔定律的减速,因此,在不增加计算负载的情况下增加数据的可扩展性,这对于区块链来说,是非常可行的路径。
请注意,不仅数据容量很重要,数据延迟也重要,也就是具有低区块时间。Layer2协议,如rollup只是当数据实际发布到链上时才给予任何安全性保证。因此,数据被可靠地包含在链上所耗费的时间是指当Alice向Bob发送支付款项和Bob确信支付被包含进去之间所花费的时间。
基础层的区块时间设置了任何内容的延迟时间,这些内容的确认依赖于其被包含进基础层。可以用链上安全存款来解决此问题,其代价是资本效率低下,这种方式本质上不完善,因为恶意行为者可以通过牺牲一个存款质押无数人。
结论
“保持layer1简单,在layer2上弥补”并不是解决区块链可扩展性和功能性问题的通用答案。因为它没有考虑到layer1区块链自身必须要有足够的可扩展性和功能性,以使得构建其上实际上成为可能。
但是,在某个点之外,任何layer1功能确实可以在layer2上复制,且在很多情况下,通过这样做提高可升级性是个好想法。因此,在短期内,我们需要layer1跟layer2并行发展,从长远看,我们需要更多聚焦于layer2。
------
风险警示:蓝狐笔记所有文章都
不能作为投资建议或推荐,投资有风险,投资应该考虑个人风险承受能力,建议对项目进行深入考察,慎重做好自己的投资决策。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。