2月26日21:00,BlockMania AMA 51期之后展开,本期主题为《零科学知识证明如何解决问题以太坊性能问题》,共享嘉宾为安比实验室工程师p0n1,他为大家理解了零科学知识证明在以太坊配套问题上的发展现状和未来方向,以下为本次共享的文字整理。关于安比实验室安比(SECBIT)实验室专心于区块链与智能合约安全性问题,全方位监控智能合约安全漏洞、获取专业合约安全性审核服务,在智能合约安全性技术上积极开展全方位深入研究,致力于参予资源共享共识、可靠、有序的区块链经济体。当我们谈论区块链性能时,我们谈些什么?很多人讨厌用「不有可能三角」这种模型来辩论一个系统面对的设计难题。区块链也不值得注意,大家一定听过关于安全性、去中心化、高效这三个方面的不有可能三角或者说三元悖论吧。
在这个很风行的众说纷纭中,「高效」只不过就是我们经常说道的「性能」,也叫「可扩展性」或者 Scalability。可以指出,以太坊和比特币从设计上更加侧重于「安全性」和「去中心化」这两点,因此不可避免地变得不是很「高效」。
特别是在是以太坊,作为享有最多开发者和应用于的区块链平台,更加多的人在上面尝试研发冷笑话简单的应用于,但平台能获取的性能承托极为受限,因此大家长期以来都在高喊「以太坊必须配套」!!!这也是为什么在以太坊之后,市场上又经常出现了很多「以太坊刺客」——许多想要从性能层面打破以太坊的项目。怎么打破以太坊呢?只不过打破的方法只不过也难于,「只必须」壮烈牺牲不有可能三角中的另外两点才可。
但有可能大部分人还是实在「安全性」和「去中心化」是无法退出的,自由选择之后回到以太坊。这造成「以太坊刺客们」冷冷清清凄凄惨惨无人问津,能开飞机的公路上却没车,性能「优势」几乎没空间展现出。所以当我们谈论区块链性能时,我们还是期望区块链的两大根基不挽回——「安全性」和「去中心化」尽量少不受影响。
以太坊性能究竟怎么样?以太坊目前性能十分受限。对于普通区块链用户来说,手续费和交易证实时间相当大程度要求了用于体验。
而以太坊目前的用于体验波动十分大。打个比方,整个网络空闲的时候就只不过最近疫情期间的高速,而交通堵塞的时候就像国庆黄金周时候的旅游景点。从性能参数 TPS 上看,国际信用卡 Visa 交易处理速度最少 2000 笔/秒,而以太坊则不多达 30 笔/秒,这个数值不能说道比老大哥比特币 7 笔/秒好了一些。
并且,导致以太坊网络交通堵塞的成本非常低。大多数时候,一个热门 dApp 就不会让整个网络显得交通堵塞致使。说实话目前这个 TPS 水平让以太坊很难确实大规模应用于。随着更好的人用于,以太坊网络交易手续费预见不会更加低,并且普通交易的证实时间不会更加幸。
以太坊社区在可扩展性上做到了哪些希望?以太坊令人失望的性能现状让其核心研发团队和社区仍然在探寻各类配套方案。于是大家常常听见一系列花哨的名词:分片(Sharding)、缴纳地下通道、状态地下通道、Plasma、Truebit、ZK-Rollup、Optimistic Rollup 等等,以及一个概念 Layer-2。上面提及的大部分方案都归属于二层配套方案。
其中 ZK-Rollup 和 Optimistic Rollup 则是最近最热门的。我们今天要重点辩论的就是 ZK-Rollup,而它的核心就是零科学知识证明技术。零科学知识证明为什么简单?零科学知识证明,有可能是目前最不具应用于前景和想象力的密码学白科技,可以在不泄漏任何其他信息的前提下证明一个命题的正确性。
两个关键词——「不外泄」和「证明」,一融合可以说道威力无穷,可以构建很多反直觉的炫酷特性。在配套方向上,我们并不需要过于注目零科学知识证明技术的「不泄漏」特性,这个往往跟隐私维护涉及,我们重点注目其「证明」的能力。
简而言之,链上资源或者说比特率是受限的,我们必须把大量计算出来迁入到链下展开,因此必须技术需要「证明」这些计算出来在区块链链下确实再次发生过。关于零科学知识证明的更好背景科学知识和技术细节这里就仍然进行讲解了,青睐大家注目我们安比实验室的系列文章,如《初识「零科学知识」与「证明」》https://mp.weixin.qq.com/s/XQL_taBhPkCHGZOBc24MyQ。确实要解读零科学知识证明可能会有些烧脑,但心里很有意思,大家感兴趣不妨试试。
好了,返回今天的主题上来。为什么说道基于零科学知识证明配套方案有可能是更佳的方向?我们不妨总结一下开始的第一个问题,当我们谈论区块链性能时,我们还是期望区块链的两大根基——「安全性」和「去中心化」尽量少不受影响。如果有配套方案能做这个,就是知道是十分难能可贵的。
基于零科学知识证明的二层配套方案 ZK-Rollup,就竟然知道可以在不壮烈牺牲「安全性」和「去中心化」这两点的前提下,很好地解决区块链性能问题!不熟知的同学可能会问:零科学知识证明配套代表方案 ZK-Rollup 究竟是什么?首先我们最差来解读下什么是 Rollup。Rollup 顾名思义,有「刮」和「汇总」的意思,可指出是众多类 Layer-2 配套方案的总称。
Rollup 特指先在链下展开简单的计算出来和状态确保,再行将与状态变更涉及的数据通过合约调用的方式,利用更加低廉的 CALLDATA 在链上留存数据,将大量交易「刮/汇总」包成一个交易,最后在确保了「数据可用性」的前提下提升 TPS。Rollup 方案的共同点是特别强调链上「数据可用性」,即任何人都能根据链上留存的数据,复原出有全局的状态,从而避免数据可用性问题带给的安全性风险。这一特点让Rollup 方案(data onchain)相对于 Plasma 这类 data offchain 的方案设计更加简练且更容易构建。Layer-2 这个概念只不过尤其好,因为这类方案的设计思路就是以太坊的底层完全不必须任何改动,底层还是向整天一样处置交易,所以会影响底层的安全性,让各种各样的海量交易在二层来处置,从而减低底层链的压力。
Plasma 是前两年最火的以太坊二层配套概念,整个社区花费了十分多的精力来辩论和构建,过程中演进出来一系列方案,比如 Plasma MVP、Plasma Cash、Plasma Debit、Plasma Prime......Plasma 家族的中间方案十分多,理论上都不切实际,但是就是如期无法落地。这里面的核心原因就在于 Plasma 各类方案都没确保「数据可用性」,从而使协议显得比较复杂,构建难度很大,变得很不简单。而 ZK-Rollup 方案源于 18 年下半年,由 Barry Whitehat 和 Vitalik 先后明确提出。
其关键就在于 ZK(Zero Knowledge),每一次的状态改变都必须获取零科学知识证明,由主链上的合约展开检验,只有检验通过才能变更状态。即每一次状态改变都严苛倚赖密码学证明。ZK-Rollup 方案利用了目前最风行的零科学知识证明技术 zkSNARK 在传输链上计算出来量的同时确保了数据正确性。
利用一棵 Merkle Tree 存储账户状态,合约只留存 Merkle Root。Operator(运营者)搜集用户的交易,批量包这些交易,并分解 zkSNARK 证明,明确不会证明交易的合法性(比如检验亲笔签名),以及前后状态下的 Merkle Root。Operator 把 Merkle Root 连同各交易数据和 zkSNARK 证明递交至合约,合约检验通过才将新的状态载入。
由于所有交易的计算出来过程不必在合约中继续执行,需要将大量状态载入合约 storage,并且 zkSNARK 证明大小(较小)与检验时间(迅速)是常数,网卓新闻网,不追随交易数量快速增长,因此 ZK-Rollup 可以极大地提高交易 TPS。ZK-Rollup 的链上性能容许仅有依赖 CALLDATA 存储数据的成本。随着以太坊 Istanbul 升级,CALLDATA 用于成本叛为原本的 1/4,ZK-Rollup 的性能则取得 4 倍提高,TPS 可超过将近 2000!TLDR,ZK-Rollup的原理只不过可以用一句话讲清:链下展开简单的计算出来和证明的分解,链上展开证明的检验和关键状态的确保。
上面提及 Rollup,有可能有同学会问:ZK-Rollup 与其他 Rollup 方案的核心区别是什么?的确还有其他多个Rollup 方案,比如 Optimistic Rollup 就是当中更为热门的一个,它与 ZK-Rollup 的核心区别在于明确如何确保状态变更的正确性。Optimistic Rollup 方案构成于 19 年下半年,由 John Adler 首次明确提出,后面主要由 Plasma Group 从 Plasma、ZK-Rollup、shadow chain 等方案中糅合,更进一步完备和拓展。与 ZK-Rollup 的仅次于区别在于,每次状态改变需要严苛检验,再行悲观地假设每次改变都是准确的,这就是 Optimistic 一词的由来。然后在一定时限内可以对某次改变展开挑战,如果挑战顺利就证明了之前的递交有问题,不会惩罚提交者并将状态回滚。
可以指出 Optimistic Rollup 最后倚赖经济鼓舞和博弈论来约束状态准确改变。两种方案的差异还可以从证明模型角度来对比:ZK-Rollup 为 Validity Proof(正确性证明),只有获取了「正确性证明」的状态才不会被写出接掌链合约;而 Optimistic Rollup 为 Fraud Proof(欺诈证明),用户必须在挑战期内对出现异常获取「欺诈证明」,负责管理检举不准确的状态。
注目以太坊的同学对 Plasma 一定会陌生。Alex Gluchowski 和 Ryuya Nakamura 这两位研究人员分别明确提出了在 PoW 和 PoS 共识下,对 Optimistic Rollup 或基于 Fraud Proof 的二层配套协议的反击模型, 且反击成本并不低:这类二层方案必需在挑战期内展开滋扰检举,而当合约中挤满了大量资产时,则有期望结构一个场景(因应者共享反击收益),让矿工因应做到凶,在挑战期内拒绝接受掉所有递交 Fraud Proof 的滋扰交易,这样不准确的状态改变不会被证实,最后可从合约中窃取所有资金。这种反击对 ZK-Rollup 违宪,因为合约中一直有正确性校验做到确保。ZK-Rollup的发展现状到底如何?目前有数多个团队基于 ZK-Rollup 方案开发新一代产品,毫无疑问 ZK-Rollup 是目前落地速度最慢、最有前景的二层配套方案,在众多配套方案中独占鳌头。
例如 Loopring 团队早已首度上线了基于 ZK-Rollup 的去中心化交易所(DEX),需要用户抵押资产,在性能上却能相媲美中心化交易所(CEX),仍然不受底层链性能制约,订单交易 TPS 超过了难以置信的 2025!另外 Matter Labs 公布了需要信任的配套和隐私方案 ZK Sync。ZK Sync 底层也倚赖 ZK-Rollup,目标在保证安全性的前提下提高交易性能。产品路线以定专心提升非常简单账户的性能和易用性,再行构建标准化智能合约的配套,最后再行再加隐私维护。
目前配套的目标也相似达成协议,至于隐私维护则依旧是凭借零科学知识证明技术。ZK Sync 中还包括一个新的 SNARK 方案 Redshift,和零科学知识证明合约编程框架 Zinc,这两者或是其未来构建标准化隐私智能合约的关键。可以说道 ZK-Rollup 目前在以太坊发展的劲头十足。零科学知识证明在以太坊配套方向上明确有哪些发展趋势?我们再度总结一下,零科学知识证明二层配套方案仅次于的优势在于不壮烈牺牲「安全性」和「去中心化」,也不必须对以太坊底层做到任何改动,却能取得极大的性能提高。
这一切源自零科学知识证明技术近年来的较慢发展,以及以太坊团队大约在四五年前就在底层链层面为这一切作好了技术打算,获取了适当的密码学运算反对。零科学知识证明技术确实让以太坊配套从理论南北了实际,我坚信未来这个方向还不会有更加多新的突破。而以太坊社区很可能会从解决问题智能合约通用性问题、减少零科学知识证明应用于研发可玩性、尝试更加多类型的应用于等方面来更进一步探寻配套。
二层配套概念下,各类普通的或者执着性能的交易可以在高效地跑完在二层,享用更慢的响应速度和便宜的用于成本,而一层也就是主链则专门负责管理支撑更高价值的交易,并为此代价更高的成本。另外,零科学知识证明还是解决问题区块链隐私问题的唯一解决方案。
这一方面以太坊社区也具有有趣的进展。我实在 ZK-Rollup 在安全性上更加有优势。所以我实在以太坊即使不升级 2.0 也能应战好几年。
本文来源:欧宝体育-www.milkang.com