LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 币圈百科 > 行走笔记:以太坊2.0时代的N种可能性(上篇)

行走笔记:以太坊2.0时代的N种可能性(上篇)

2020-06-30 行走 来源:区块链网络

今晚币乎有AVA Labs的直播分享。行走对新的共识协议也很关注,但可能和投资机会关系不大。

目前来看,无论是沿用pow的共识,还是在POS上做探索的以太坊2.0、cosmos、波卡,在基础架构层面需要解决的问题依然很多,从效率层面上依然无法“咣当”一下解决TPS这个区块链性能的核心问题。

但无论如何,新的探索都值得投入精力去关注。对于AVA 是如此,对于要转换共识协议的以太坊2.0是如此,对于不改变POW共识,只在算法层面做调整的Confulx也是如此。那些踏踏实实在自己认定的领域做创新,并能获得社区相应,有更多参与者一起完善系统和应用的项目,都值得敬佩和鼓励。

作为AVA直播的开胃菜或者叫对照组。行走继续奉上来自金色财经的以太坊2.0系列直播笔记。如果你想看这个系列的上一篇笔记,点击这里

本篇?笔记内容较多,会分上下两篇呈现。

Enjoy:

主持人:今天的四位嘉宾都是以太坊生态内的代表项目和观察者。欢迎大家。

问题一,从各位的角度看,以太坊目前采用的无状态以太坊、多客户端、信标链、staking、ro|up等技术,给各位印象最深刻、认为最有应用价值的是哪个?以太坊的技术处理思路,适合用于其他加密货币网络吗?例如rollup、casper ffg等等。

Michael yuan:

我的理解是,以太坊2.0是一个PoS的跨链生态。与其它PoS系统相比,它的重大创新在于信标链至少要支持上万个验证人节点。系统会随机选择组合验证人形成应用子链。

以太坊2.0一定要有足够多的人去stake才能成功(标准是32ETH,现在是早期参与的好机会)。

因为验证人数量一定要很多,才能安全地随机选择验证人验证子链的数据。

尽管都是跨链的思路,但是采用大量节点与大量验证人的,目前只有以太坊一家。Polkadot与 Cosmos都不是这种方法。所以以太坊用来管理验证人的技术是创新的,也应该不会用在其他链上。其他的链远远没有这种规模。

但是随着开发进度的推进,比如EWASM虚拟机与 Solidity智能合约这些技术能够被其他加密网络广泛应用。毕竟纵观整个区块链世界,应用开发的模式都是按照以太坊思路来的。

夏伏彪:

ETH2.0是一个非常宏大的新网络。这些新技术都是以太坊不断进化的最大的动力。

我是密码学出身。天然会对区块链与密码技术结合非常感兴趣。从技术角度而言,这些技术里我最深刻的还是rollup。特别是最近很火的zKrollup。

这个技术充分体现了应用密码学去解决区块链层面问题的一个基本理念。简单来说,zKrollup将交易的打包出块等操作放在链下,而验证的工作放在链上,同时用一个零知识证明保证这整套链下处理流程是正确执行的,并且交易数据还可以上链保存。解决了数据可用性问题这个后顾之忧。

我们看到 Zkrollup可以很好地解决一些可扩展性问题。甚至ZKrollup还能将隐私和可扩展性结合在起。所以有 ZKrollup这种更有意思的技术应用出现。

最近社区里还有一个很有意思的提案,是用新的密码技术(多项式承诺)代替传统的 merkle tree来做状态数据存储。如果这个技术被进一步验证为可行,那无状态客户端里的某些数据存储量可以降到几乎为0。也是个非常了不起的技术思路。

当然实现这种新的存储结构要做非常多的努力,无论是算法还是工程层面。

其实大多数项目,特别是公链项目都可以借鉴技术社区化反哺主网团队的思路。毕竟没有一个好的社区基础是玩不转复杂的区块链的。

但是能不能做得像以太坊技术社区这种程度,其实是一个很任重道远的事情。

王东:

我觉得主持人问题中提到的这些术语可能不属于同一个范畴。想解决的问题似乎也不在同一个层面。放在一起无法做比较。

路印最熟悉的当然是 rollup技术。我深信rollup是区块链扩容最有前景的方向之一。zkRollup兼具了很多优点,也是业界最看好的。其中最重要的原因是 zkRollup不引入新的共识,不会降低安全性;也不依靠博弈游戏,没有博弈时间成本问题。

Rollup,包括 zKRollup,是一种通用的,可插拔的扩容方案。zKRllup只要底层区块链支持特定的椭圆曲线编写智能合约就可以。其他公有链其实应该可以受益于以太坊的技术进步。

郭宇:

前面几位专家讲得非常好,我做个补充。

个人非常看好路印的DEX系统以及ZkRollup技术。我们也有幸对路印的智能合约与零知识证明电路代码进行了深度安全审计,耗时近4个月。

zKRollup是一个一般性的区块链扩容架构,完全可以移植到其它公链或者区块链平台中。并且对于底层平台的要求并不高。只要区块链底层平台能支持相关的密码学原语,主要是零知识证明原语,就可以支持zKRo|up。

zKrollup技术基本已经实验成功,并且还存在着大量的优化空间。比如hash算法的优化,采用新的零知识证明方案。比如 plonk、 fractal。还有无FFT的零知识证明方案,利于引入ASC硬件加速来有效降低zKRollup证明的产生性能开销。

目前 zKrollup还存在不少技术难题,非常值得其他的公链团队来一起攻克。我认为公链之间不存在竞争关系,而是需要互相取长补短,加速区块链技术的发展。

除此之外,个人认为以太坊提出的无状态客户端协议有可能是未来最具颠覆性的新架构。

区块链验证节点不再需要存储区块,通过零知识证明来实现交易的验证和打包。这将打开更广阔的想象空间。目前这一技术的相关理论还是快速迭代过程中,相信很快这一技术就可以在一些试点场景中得到应用。

无状态客户端这个技术也是一种通用技术,完全可以移植到其它公链。但是相比 zKRollup,可能移植难度更大,需要更多的科研投入和社区建设。

主持人:

今天我们的主题是“以太坊2.0的N种可能性”。据我所知,四位的项目在应用和研究上都各有千秋,可以分别代表开发者工具、通讯和密码学MPC、协议应用和layer2、零知识证明、密码学研究。这也是请四位来参与讨论的原因。

问题二:那就请各位从自身项目研究应用的角度出发,给我们提供一个结合以太坊的解决方案示例?

Michael Yuan:

我们团队偏重在区块链开发工具这块。主要围绕以太坊生态体系打造产品。产品主要是WebAssembly的虚拟机SsⅥM、编译SOLL、IDE开发工具。

同时我也在一家电商公链 CyberMiles做首席科学家。当时主要想解决的是以太坊性能的问题。因此针对电商的需求,我们做了一些优化,优化了EⅥM虚拟机。

从我们的角度来看,除了PoS Sharding,以太坊在2.0比较大的变动是采用 WebAssembly虚拟机,并且支持更多的编程语言来写智能合约。

我们有个观点:区块链的架构是终极的无服务器架构。

我们将智能合约提交给区块链平台,由分布式的节点来执行智能合约,并依据自解码的操作代码与函数所需的存储空间进行计算。

其中,我们可以把智能合约看做函数,区块链看做常见的云厂商,虚拟机看做容器,这与无服务器架构是一一对应的。

那么谈到ETH2.0的应用,就是智能合约。一个是Defi,现在发展的已经比较好,另一个是以太坊设计的初衷——世界计算机。更广泛地说,就是云计算。

目前无服务器架构是云计算(从业人数比区块链大几百倍的产业)里最火的方向这不是偶然的。

我们正在做的事情是在Webassembly虚拟机上提供Serverless服务。更加安全,计费也会像gas费那样更加精确。

这不是严格意义上的“区块链”。但使用了区块链产生的技术。就像Facebook发行了 Libra,中国央行发了数字人民币,但他们都没有一条链存在,只是用了区块链产生的技术。

夏伏彪:

PlatoN很荣幸地受以太坊基金会邀请,参与了PoC的安全多方算法(MPC)设计和工程实现。

目前 PlatoN的算法团队已经完成了第一阶段的代码实现和测试,并且在 GitHub开源(https://github.com/PlatONnetwork/proof_of_custody)

我来简单介绍一下MPC形式的PoC是个什么东东吧。

我们知道ETH2.0的设计方案是以一条信标链连接多条平行的分片链的架构运行的。每条分片链之间相对独立,并且由一部分验证人组成的委员会进行出块。由于这些验证人之间相互独立,所以在协同运转时势必存在数据可用性问题。

简单来说,数据可用性问题一般是这样的:在一个ETH2.0的验证人网络里,一个轻节点通常因为机器性能或者其他业务上的原因,不会下载全部的区块数据,而是通常会连接一个全节点来下载轻量级的区块头,校验通过后就会认可该区块的有效性。这个为轻节点提供服务的全节点,就有义务保证轻节点不会受骗。

目前的做法是,这个全节点一旦发现某个区块有非法的交易,它就会根据这个交易数据和状态信息,生成一个“欺诈证明”。这个欺诈证明很轻并且很容易验证。这样从机制上遏制了坏节点构造双花、分叉等可能性。

但这里一个关键问题是,生成欺诈证明是需要区块数据的。如果这个全节点拿不到区块数据,就没有办法生成这个证明,就会陷入困境:拿不到数据生成欺诈证明,从而无法确定这个区块到底有没有藏有恶意交易,轻节点也就没办法同步和认可该区块。

为解决该问题,ETH2.0提出了PoC解决方案。在要求验证人节点提交区块的时候,需要附带“拥有数据的证明”,也就是 proof of custody (PoC)。

为防止单点故障并減少验证人的委托成本,PoC的设计目标中包括了对MPC的兼容性。此外,通过MPC可以建立无需信任的委托池,并有可能基于此衍生新的 Staking商业模式。

王东:

路印最开始是做现货交易去中心化协议的。目前更清晰的定位是基于zKrollup,专注于支付和交易的二层扩容协议。

我们的目标很直接,就是让支付和交易具有和以太坊一样的安全性。同时能够大幅降低成本(千分之一),提升整体吞吐量(一千倍)。

比如我们清算一百万笔交易只需要几百人民币,清算一百万笔支付(或者P2P转账),只需要小几百块人民币。

过去大家对去中心化交易所都不看好,认为用户体验很差。但其实用户的体验是一步步通过各种技术层面的问题的解决,并结合交互的改进而进阶到一个更好阶段的。

我相信很快,通过使用路印的技术和安排,大家就会知道去中心化交易所的体验要优于中心化交易所的体验;去中心化的支付体验也会媲美并很快超越中心化支付系统的体验。我这里指的就是比微信、支付宝的体验还要好。

在保障安全的前提下,如果支付和交易体验得到了根本的改善,区块链落地实体经济也就更近了一步。

路印一直在啃的就是这两块硬骨头。我们不一定会成为区块链中的支付宝,但zkRllup这条路确定无疑是下一个支付宝要走的。

郭宇:

我们团队有一个开源的科研项目zkPoD。这是一个暂时没有商业化计划,纯粹科研导向的开源项目。

zkPoD试图结合零知识证明与区块链技术,实现链上价值流通与链下数据流通的双向交互。目前 zkPOD基于eth1.0。目前阶段, ZkPoD主要解决数字信息的交换协议。

在传统的交易环节中,必须要有一个第三方才能完成“一手交钱,一手交货”。早在80年代,就已经证明了必须存在第三方。

然而我们知道,在分布式协议中,恶意节点数量不能超过1/3。但是在两方交易过程中,任何一方是恶意节点,都正好是50%。这注定两方交易无法互信地完成。

那我们想,能不能把区块链或者智能合约作为一个第三方来代替传统的中心化第三方?区块链或智能合约是公开透明可信的,假设大多数矿工诚实可靠,他们组成的区块链网络可以实现一个无需信任的第三方。

于是经过持续一年多的研究,我们提出了 ZkPoD协议。彻底解决了这一问题。在目前的 ZkPoD协议中,我们充分利用了零知识证明的功能,保证数据在交易之前,数据源是可靠的;

其次,在交易过程中,保证加密数据是通过可信的加密方式来加密的数据,买家无需担心加密数据中內容掺假;同时保证在交易过程中,卖家在没收到付款之前,不会泄露任何原始数据的内容,也就是保证完美的“零知识”。

在这个项目研究过程中,我们发现现有的零知识证明方案普遍没有考虑数据比较大的情况下做零知识证明的问题。

当我们需要交换超过1MB的数据时,传统的证明方案就要巨大的开销。这距离实用很遥远。

后来我们又经过一年的研究,找到了新的路径,可以实现对GB级别数据进行零知识证明。

我们从最简单的数据处理开始,直到可以在数据上实现机器学习。

我们希望 ZkPoD能帮忙以太坊和其他公链,在区块链TPS受限的情况下,打通链上智能合约与链下数据处理之间的壁垒。把区块链的应用场景从金融推到更广阔的的数字世界。

目前 zkPoD在做一些理论收尾的工作。今年将会发布新的进展。

以上就是行走整理的关于以太坊2.0时代,多种可能性的嘉宾观点。明天会继续这个主题的下篇。

币乎今晚的直播因为10点才结束,而行走明天依然要上班工作,所以不确定是否今天能整理好。如果整理好就今晚发,整理不好就明天发。发文前会做个微文告知。

—-

编译者/作者:行走

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...