以太坊扩容顶尖团队 Matter Labs 与 Offchain Labs 聊 Rollup 的未来展望_IMI:zksync币合法吗

在ZKRollup中加入Optimistic的元素可能没有什么意义,但是在OptimisticRollup中加入零知识证明的元素就很有意义了。

以太坊扩容迫在眉睫,Layer2已成为各家必争之地。CryptoTonight邀请到了Rollup方向的顶尖团队,MatterLabs联合创始人AlexGluchowski和OffchainLabs联合创始人HarryKalodner,以及深耕该方向的研究者,讨论互操作性、MEV、激励机制和原生代币等话题。

我们获得的信息是,那些财力最为丰厚的全球顶级区块链投资机构正在围猎最核心的以太坊Layer2扩容方案开发团队,希望斥重金投资他们。其中,相对成熟的Rollup方案开发团队是这些投资机构最为觊觎的猎物。不少谈判正在进行,投资机构不惜投出重金,将这些团队收至麾下。

根据此前链闻发布的《以太坊Layer2生态如何站队?》研究分析,从通用解决方案的生态应用数量和质量来看,MatterLabs、Optimism和OffchainLabs可能是目前最受关注的三个团队。

MatterLabs的仅支持转账的zkSync扩容技术已经上线了主网,其优势在于ZKRollup以零知识证明zk-SNARKs的密码学技术确保安全性,所以安全性可以几乎等同于以太坊主链。

OffchainLabs的联合创始人兼首席科学家EdFelten是普林斯顿大学的计算机科学教授,也是奥巴马任职期间的白宫首席技术官和高级顾问。其ArbitrumRollup方案可能是最早上主网的方案,另外智能合约的支持相对容易,退出期的设定也更加友好。

精彩论点:

在以太坊未完整上线2.0之前,Rollup就可以提供很大的帮助,因为VitalikButerin也表示要让以太坊走向以Rollup为中心的网络。ZKRollup相比OptimisticRollup在跨Layer1和Layer2的可互操作性上更有优势,但是目前也有利用状态通道的方案Connext在探索为不同网络之间增加流动性。StarkWare和Hermez探索的大规模资产迁移方案也非常有意思。OffchainLabs认为Hermez的方案微调后也可以给他们使用,而MatterLabs已经设计了zkSync的大规模迁移,之后会公开细节。ZKRollup方案需要很多的计算量,而MatterLabs将提供CPU、GPU以及FPGA等多种解决方案。针对矿工可获取价值这个问题,Layer2方案已经在研究可行的方案了。OffchainLabs将会探索全新的共识算法,而MatterLabs将使用零知识证明、VDF隐藏交易的内容。OffchainLabs认为零知识证明是一个非常厉害的技术,所以未来OptimisticRollup也可能会利用零知识证明,实现特定的功能。MatterLabs表示在zkSync系统中需要一种原生代币,以达成Layer2的共识;OffchainLabs表示,为网络提供终局性的节点也有必要使用一种代币形式的经济激励。主持人:

Yama,CryptoTonight嘉宾:

HarryKalodner:OffchainLabs联合创始人AlexGluchowski:MatterLabs联合创始人姚翔:MYKEYLab首席研究员潘致雄:ChainNews研究总监如果你还不了解Layer2和Rollup技术的最新生态布局、技术特性以及优势,建议可以参考如下这些内容:

《以太坊Layer2生态如何站队?》《以太坊扩容最热门主力方案Rollup学习指南》《链闻精选好文|读懂以太坊扩容主力「Rollup」》查看完整的节目视频可点击此处回看,以下是本期节目全程的文字记录,内容有所编辑。

问题1:以太坊2.0的Phase0终于上线了。ZKRollup、OptimisticRollup与以太坊2.0有怎样的关系呢?

Harry:恭喜以太坊在研究和开发了这么多年的时间后,终于上线了2.0的网络,但离最终可以执行智能合约还有一些时间。然而更重要的是,Rollup技术相比其他基于智能合约的方案而言,可以更早利用以太坊2.0的特性。

最近VitalikButerin也在最新的路线图中表示,以太坊2.0的第1阶段中就会利用Rollup技术。因为Rollup需要非常大量的数据吞吐量,但并不需要执行。所以在以太坊2.0未进入最终阶段加入智能合约执行能力之前,Rollup就可以提供很大的帮助。

Alex:Vitalik在他的演讲中提到了路线图的改变,让以太坊走向以Rollup为中心的网络,应用提前适应Rollup,可以让迁移到Eth2的过程更加简便。因此,对于大多数应用和协议来说,部署在Rollup上,等待Rollup完整地迁移到Eth2上,或许是最方便的路径。除非你有什么特别的需求需要依赖底层,或是需要自己设计Rollup,你才需要考虑适应Eth2的底层特征。就像Vitalik说的,「这可能对每个人来说都是最简单的路径。」

问题2:如果一个开发者开发了在Layer2上的应用,这会损失可组合性或可互操作性的优势吗?这个应用如何与Layer1的应用交互?如何与其他Layer2的应用交互?

Harry:在这个问题中,OptimisticRollup相比ZKRollup存在更多复杂性。在OptimisticRollup方案中,有一个挑战期的设定,在这个期间中,任何人可以针对交易进行质疑,挑战期之后交易才可以完全确认。

所以从Layer2智能合约与Layer1智能合约进行交互的确是有一些互操作性的难度。但幸运的是,在实际中我们还是可以支持提升流动性的。还有就是比如使用状态通道进行扩容的Connext方案,提供一种在各种Layer2和Layer1之间的流转机制。

另外,我们可以将互操作性的需求最小化,比如只提供部分互操作性的子集,比如支持转账这类行为。因为对于大量的转账而言,更适合使用Rollup进行。

Alex:我想从这对用户和开发者的影响上来说。如果你在Layer2的Rollup上,OptimisticRollup也好,ZKRollup也好,任何部署在同一个Rollup间的应用的交互都和以太坊Layer1上的应用交互一样顺滑。在同一个Rollup中,A应用可以调用B应用,B应用调用C应用,一切都很简单,和现在以太坊上的应用互操作没什么区别。

如果Layer2的应用想和Layer1的应用交互,那么Layer2必须向Layer1传递消息。这分为消息传递和价值传递两种情况。对于价值传递,即代币的转移,可以通过流动性提供商来实现即时的互操作,当然NFT没法这么做。而更多的互操作是指消息传递,我们不仅仅转账,更多需要调用合约的一些方法,包括传递一些状态信息。

对于OptimisticRollup来说,退出时间可能要一周或更久,而ZKRollup只要等待一个零知识证明的时间,可能短到一分钟以内。再举一个例子,如果你在ZKRollup上部署了一个智能合约钱包合约,可以用很短的延时和很低的成本调用Layer1的合约。此外,部署在Layer1上的协议可以很流畅地迁移到Layer2上,这是很重要的工作。

不过目前Rollup协议都还很新,ZKRollup今年夏天才上线,OptimisticRollup还在测试当中,它们需要一些时间来得到验证,来获取人们的信任。说不定有什么bug,或者没有测试到的特殊情况。

时间会证明一切,就像MakerDAO面临的情况一样,MakerDAO的第一年是一个很小的协议,用户不多,流动性也不大,但它逐渐就成长为承载数十亿美元的协议。我相信这类事情会在Rollup上再次发生,我相信DeFi协议会有不同的版本,同时部署在Layer1和Layer2上,大部分用户可能还是选择留在Layer1,但一部分用户开始尝试Layer2,但最终用户会越来越多,因为Layer2更便宜,可以吸引更多的新用户。这些用户尝试使用DeFi协议的Layer2版本,例如Layer2上的Uniswap、Balancer,而这些协议通过治理,可以决定将流动性缓慢地从Layer1迁移到Layer2上。当然,这些流动性可能因为Layer1上的流动性挖矿而迁移回去。

我想强调的是,Layer1和ZKRollup的相互迁移上是可行的,只要很短的时间,而Layer1和OptimisticRollup的迁移只能是单向的,因为迁回Layer1需要一周需要更久。

问题3:这是不是意味着所有Layer2协议都是独立的?如果想在不同Layer2中迁移资产,就必须要通过Layer1?

Alex:如果一个Rollup想和另一个Rollup交互,必须通过Layer1作为中转,哪怕是状态通道,其流动性也是建立在Layer1上的,因此交互的延迟是「Layer2到Layer1的延迟」加上「Layer1到Layer2的延迟」。当然,你可以通过在每个Rollup之间建立流动性的方式来缓和这种延迟,但这意味着流动性会非常分散,管理流动性又是新的挑战。

Harry:其实Rollup等大多数Layer2协议的模式和侧链模式很接近。Rollup在很多方面上就像是一个区块链。所以就像其他区块链之间会遇到的互操作性问题而言,Rollup和Layer1之间也存在这样的问题,比如可以通过更通用性的原子交换增加互操作性。

问题4:StarkWare推出了条件转账功能提供可互操作性,Hermez也推出了大规模迁移功能,你们对于这些方案有和观点?你们目前有什么类似的计划吗?

Harry:跨Rollup的迁移能力是非常有用的。但是,目前看到的一些解决方案来说,可能更关注转账类的功能。因为支持智能合约迁移的话就比较困难了。我们一直在探索解决这件事情的各种策略,但是看起来这套方案可能不会是通用型的,也不可能满足所有人的需求。

今早我看了Hermez的方案,感觉上这套方案经过微调后也可以给ArbitrumRollup使用。这套方案的本质就是,创建一系列相关的智能合约,聚合了一堆资产,并且这些资产可以一起迁移。

Alex:我同意。大规模的迁移是对Rollup来说一个非常关键的问题,重要性类似Layer1的Fork。为什么这么说呢?以太坊的安全性更多的是基于成千上万的全节点,他们可以在验证人作恶时选择分叉。

但是对于Rollup来说,分叉是没办法做的,因为其状态是基于以太坊的状态。我觉得大规模迁移仍然是可能的,我们设计了zkSync的大规模迁移,尽管要处理通用的智能合约并不容易,我们仍然支持了Solidity编写的智能合约,这样现存的这些智能合约就具有了迁移到zkSync上的能力。我们不希望开发者在zkSync上部署应用时需要修改合约,而是让现存的合约直接可用。我们会在准备好之后公布这些细节。

问题5:以太坊网络可能会出现多个Layer2网络,对于钱包团队而言需要对接很多不同的网络标准,有没有可能推出一个EIP标准化呢?

Harry:钱包是用户和区块链交互的重要部分。ArbitrumRollup和zkSync都在使用相同的地址和交易。在不久之后,我们或许就可以使用另一种签名类型,比如以太坊2.0中的BLS签名,这可能会极大降低成本。

目前以太坊基金会的BarryWhitehat正在负责BLS签名的标准。对于Rollup系统而言,我们希望把它尽快用在以太坊1.0系统中。我认为EIP系统可以很好的把大家组织在一起,关注标准化。这样钱包就可以更灵活且长期关注集成各种不同的扩容方案。我们目前也在积极探索最好的方式,也很乐意参与制定标准。

Alex:我同意。标准化是很重要的事情,需要作出一些努力。以太坊的用户可以使用不同的钱包用标准化的协议来接入服务,通过Web3协议,jaxx钱包和MetaMask钱包都可以无缝连接以太坊。MetaMask还支持了snaps,这是一个自定义的对MetaMask的扩展钱包。但我们采用了不一样的密码协议,这实现零知识证明的电路时成本更低,我们已经找到了让任意钱包支持这种签名算法的方案。

你可以去Curve的首页,找到其在zkSync上的测试网的链接,你可以体验这种方案。这就类似于传统的开放认证协议GoogleConnect或FacebookConnect,你点击「连接钱包」,一个单独的应用页面在浏览器中弹出,这个页面是由zkSync维护的,每次你要签名的时候,都会首先进入这个页面确认,再回到之前的页面。其安全性和Google、Facebook的开放认证协议相似。请注意,这将更加安全,因为密钥并不存在浏览器中,始终没有离开钱包。这对大规模应用很重要,你现在就可以畅通无阻地使用了。

问题6:Layer2网络中有很多节点、验证人需要消耗计算资源,如何将这个计算资源去中心化?

Alex:零知识证明系统是「自证有效性」的系统,交易的合法性并不需要依赖「节点」来背书。那么,我们为什么还要「去中心化」呢?这不是为了「去中心化」而去中心化,而是为了抵抗有强大权力的机构;为了协议的公平性,避免单点风险;为了抗审查,防止有一个机构审查交易,让某些用户无法使用网络。

我们可以启动一个去中心的网络,但将「生成证明」的任务交由一些独立的角色。这些角色未必保证应答,但一旦应答,我们总可以验证它们的应答,如果这个证明是错误的,将无法通过智能合约的验证。因此,无需过度担心证明是由「云」或是很少的一组用户生成的。

当然,实现去中心化还有一个重要的原因,就是系统的可靠性:假设这些生成证明的角色都被权力机关要求关机,那么系统就不可用了。为了防止这种情况出现,类似golem这样的系统可以被简单地改造,用于所有的需要「生成证明」的系统。不过这些计算证明的节点和「共识」、「全节点」的服务是完全不同的,它们均可以链下计算,再与和提交证明的节点同步这些证明。

潘致雄:你的意思是,是否生成证明的过程可以是「中心化」的?

Alex:不是中心化。任何人都可以做这件事情,生成和提交证明是无需许可的。我的意思是,作为二层网络的验证者,你可以自己生成证明,也可以将这件事情代理给外包服务去做,不管是Google、AWS、Baidu……你不需要去信任这些服务,这很重要。也不需要和它们建立什么长时间的合作,只是当需要的时候,把任务提交上去,并取回生成好的证明。

我认为把这件事情「去中心化」在现阶段没有那么重要,但在下一个阶段是可以考虑做的,不要让这些平台控制我们的行为。不过,这些平台现在的权力已经很大了,你看看以太坊,它的大部分节点都是部署在AWS上的,这和我们讨论的事情有类似的处境。AWS上有非常多的应用,它们没法在确定的时间控制所有的行为。

潘致雄:目前的生成证明的计算过程是CPU友好还是GPU或者ASIC友好?

Alex:我们有基于CPU的解决方案,也有GPU的,不过成本要高一些。我们还有基于FPGA的解决方案,这大概只有CPU方案成本的1/3,但更重要的是,它生成证明的时间是CPU的1/10左右,非常地快。而且你还可以尝试把递归证明组合起来,可以用一些方法来并行地生成证明,你可以在一分钟内生成上万笔交易的一个证明。CPU也可以并行地做,但是时间会是FPGA的10倍。FPGA也是对云服务友好的,GoogleCloud和AWS都提供FPGA的云服务。这和CPU的云服务是类似的,你只需要提交任务,等待,接收计算好的证明即可。

Harry:OptimisticRollup就完全不存在这样的问题。运行一个OptimisticRollup网络的节点就和以太坊网络的节点差不多,比较轻量,不用大量的计算,所以也相对比较容易去中心化。

Alex问Harry:我有一个问题,你是否希望每个用户都可以运行OptimisticRollup的节点?在单个OR中的交易越多,运行全节点的要求就越高,你觉得有没有可能每个应用都会部署独立的OR?

Harry:我们当然希望所有核心的参与方都能自己运行全节点,以提高安全性。而且运行节点并不昂贵,设置起来也很容易。不过我们也不指望所有人都会运行全节点,就像现在也就一小部分人运行了以太坊全节点,更多人会依赖Infura,所以在OptimisticRollup网络中可能也是类似的情况。

问题7:MEV是目前比较热门的话题,是否可能在Layer2避免这样的情况发生?

Harry:这是个很大话题。MEV有很多形式,最主要的一种就是抢先交易。也就是当你看到网络中有一笔交易时,你可以在它之前和之后设计两笔交易,就可以没有损失地赚钱。

在目前以太坊生态中,矿工有能力完全控制要打包交易的顺序,所以他们可以查看每一笔交易,然后往区块中塞入自己设置好的特殊交易。

那我们能如何做呢?目前大家也在探索怎么做,目前有一个由PhilDaian参与的项目,他是之前MEV学术论文的作者之一。通过去中心化的方式提供MEV功能以避免单个矿工执行类似的交易。

还有其他的解决方案,比如Optimism团队推出了「MEV拍卖」提案,这里我就不提更多的细节了因为我不太喜欢那个方案,可能会让MEV的情况更严重。

我们OffchainLabs也在探索一种相对比较新颖的方案,可能不会在刚开始的时候提供。很多共识系统并不会提供排序保证,比如Tendermint,整体系统是去中心化的,但是交易排序并不完全是,因为这不是安全的一部分。

OffchainLabs联合创始人和首席执行官StevenGoldfeder,同样也是MEV学术论文的作者之一,最近联合发表了一种全新的共识算法论文《Order-FairnessforByzantineConsensus》,将排序这件事去中心化,这里可能涉及我们很多核心技术,但最终的目的就是极大降低MEV的情况。

一个很重要的因素是,MEV能被实现是因为你有足够多的时间去计算执行,如果我们可以限制任何一方可以计算MEV的时间,就可以很大程度上降低MEV的概率。

Alex:你刚才说在Layer2上可以降低MEV的影响,但我有些担心。Layer2的网络的「去中心化」程度相比Layer1要差得多,因为目前Layer2的网络价值还比较低,用户也较少。如果在Layer2上什么也不做,估计事情只会更糟糕。

问题在于,每个区块的间隔时间得有一个基本的粒度,因为你必须得考虑从澳洲传数据到北京、纽约的延时,而且延时还是双向的。计算交易的结果速度很快,因此当矿工发现一笔Uniswap的交易时,很容易立即判断它是否是「可提取价值的」。

MatterLabs相信,从信息理论的角度,要阻止这种情况,必须要隐藏交易的内容。这通过「零知识证明」是可以实现的!银色子弹!可以通过时间锁的方式来实现,可以把交易放进一个加密信封中发送给矿工,这样交易被打包后,就已经在区块链上作出了承诺。而交易的具体内容随着时间的流逝,通过VDF谜题的慢慢解决而逐渐揭露。VDF可以设置为30分钟,这可以彻底地避免MEV。我们认为这是解决问题的方法。

Harry:我目前还没看到基于可验证延迟函数的时间锁技术可以做到如此精确。VDF通过串行计算而非并行计算实现一个功能,就是没有人可以通过堆计算资源而实现更快计算出结果。虽然比目前以太坊2.0也使用了VDF,但是VDF目前还没有被完全证实是不能被攻击的,在正式场景中会如何,还不清楚。但是我希望它是有效的。

Alex:这很简单。首先,这是ETH2中很关键的环节,你可以使用和ETH2相同的VDF函数。这样,我们就共享了ETH2的大量资金、研究、试验VDF的成果。我也听到一些提案,即生产VDF硬件,把这些含有VDF功能的芯片随身携带,甚至是放置在卫星上提供服务,来保证此服务的去中心化。你甚至可以想象有人有巨大的优势,例如他的计算能力是其他人的10倍,这已经很难了,但仍然很难实现MEV。

同样,VDF可以通过ASIC和FPGA来实现,FPGA的效率可能会更高一些,我对这个技术很有信心。如果你不相信呢,那可能不得不对ETH2的安全性产生一些怀疑,因为ETH2的随机数可能很容易被操纵,导致验证人可以联合起来作恶,这样ETH2也会变得脆弱。所以,ETH2的成功也可以让这种时间锁的技术的可信度和可行性大增,这样MEV是可以解决的。

Harry:我非常希望VDF技术是有效的。而且OptimisticRollup也可以完全采用这个方案,而且这套方案应该也能兼容所有的Rollup系统。

Alex:是的,你得生成零知识证明,来证明这个信封里的加密交易的确是可以被解密的,而不是一个垃圾交易。可能也需要一些硬件专家。

Harry:而且这套方案也可能成为一种标准的方案,也许我们不如MatterLabs这么快支持这套方案,可能会晚几个月支持。

零知识证明是一个非常厉害的技术。所以未来也可能是OptimisticRollup也会利用零知识证明,实现特定的功能。总结来说,在ZKRollup中加入Optimistic的元素可能没有什么意义,但是在OptimisticRollup中加入零知识证明的元素就很有意义了。

问题8:如何为一套Layer2系统设计激励机制,确保节点和验证人可以提供高质量的服务?在这个系统中有必要存在原生代币吗?

Harry:在ArbitrumRollup网络中,参与者有很多种类型。其中验证人节点是验证交易的人,他们是完全去中心化的。他们可以被激励,但可能也没有必要,因为运行验证人节点成本很低,需要被激励的事情是让他们可以持续提供服务,为网络提供「活性」。可能会有一种方式来激励他们进行验证,但可能不是从很显著的经济上的。

第二种参与者是普通的节点,获得所有数据但是不验证数据,类似于Infura提供的服务,这些节点应该不需要被激励。Infura可以通过提供数据服务获得收入。

第三种参与者就非常需要激励了,也就是如何为Rollup提供终局性,这是个很大的话题,我就大概介绍下。如何将Layer2的终局性快于以太坊主网,能做到这样是因为一部分人需要对订单进行排序,这就是激励在这里很重要的原因。所以潜在的可以通过一些治理的方式,这一部分可能就是用代币激励的地方,之后可以进一步探索。最终的目标一定是完全去中心化,项目越去中心化,就越不需要这些花哨的激励机制。激励机制本身就有点中心化。

Alex:我来谈谈zkSync的一些情况吧。在ZKRollup中,得有人来序列化交易,并计算相应的证明,这是一些必须要完成的任务。我们考虑使用去中心化的方式来解决避免交易审查的问题,并提升系统的可靠性,因此我们采用了「无需许可的方法」来治理这些工作的分配。

我们的做法是,我们会有zkSync的代币,这是用来达成Layer2的共识的,同样也可以让交易更快得到确认。用户肯定不希望交易30秒才能确认,通过zkSync的代币,也许3秒钟就可以完成交易的确认。共识协议会协商出每一个区块的出块人,由它生成证明,并提交到以太坊网络当中。这是治理无需许可的二层协议最直接的方法,因此我们的确需要这样的代币。Layer2交易的手续费可以用于激励这些出块人,我们认为手续费是足以激励它们的,因为在今年夏天,以太坊的手续费达到了每个月2亿美元,而这仅仅是很少的用户贡献的。对于仍没有进入密码货币世界的人来说,这些潜在的数亿用户可能贡献更多的手续费,一旦Rollup成功并吸引这些用户进入,手续费的收入是非常可观的。

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

金宝趣谈

[0:15ms0-5:425ms