LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 新闻观点 > ZkSync系列之二:ZkSync已上线!它如何为以太坊带来可信赖的可扩展支付?

ZkSync系列之二:ZkSync已上线!它如何为以太坊带来可信赖的可扩展支付?

2020-06-25 洁sir 来源:区块链网络

六个月前,我们介绍了zkSync的愿景:一种不信任的L2伸缩解决方案,可大规模采用公共区块链(更多详情请见《一文告诉你,咕噜持续关注的zkSync项目有哪些新功能和设计亮点?》)。如今,我们邀请你一起庆祝第一个重要里程碑——在主网上发布zkSync v1.0。


此版本解决了以太坊生态系统中的一个尖锐问题:由于gas价格飞涨,交易变得昂贵且不可靠。每个月,单独的ETH和ERC20代币转移都会使以太坊用户损失超过200万美元的gas费,此费用还在持续上升中。 ZkSync可以大大降低这些成本,同时逐步实现最高2,000 TPS的VISA规模吞吐量。

什么是zkSync?

ZkSync是使用Matter Labs的zkRollup技术构建的:将对零知识证明的前沿研究与链上数据可用性相结合。这种方法具有令人印象深刻的安全性,如果正确实施,放置在zkRollup中的资金将与基础L1一样安全。


尽管安全始终是zkSync架构的头等大事,但我们一直在寻求最优的设计思路,以实现无与伦比的UX和流畅的开发人员体验。以下是主要亮点:

交易费用设计为长期较低($ 0.01 / tx)。
代币中要支付的费用(用户无需gas费)。
创建链下帐户的零成本。
L2转移到任何以太坊地址(包括尚未部署的合约)
在几分钟之内即时确认交易和确定性。
在15分钟内撤回L1。
直观的UX,可与任何以太坊钱包配合使用。

理解系统的最好方法是自己尝试zkSync。为了开启你进入zkRollups世界的旅程,我们创建了一个一键式“水龙头”,该水龙头将为前500名用户授予纪念品:Matter Labs试用代币($ MLTT)。将资金提取到主网后,它将记录你在早期zkRollup中的证据。


尽管zkSync v1.0如今可以在以太坊上扩展加密支付,但它也为我们路线图的下一步奠定了技术基础:实现智能合约功能,隐私和加密保护的审查制度。


我们的最终目标是为数十亿人提供可扩展的,可保护隐私的,公平的,完全未经许可的加密基础架构,同时使开发人员可以轻松,实用地进行构建。


立即开始在zkSync上构建!

ZkSync完全没有权限,可以立即开始使用它。将其集成到你的项目中仅需几行代码:

zksync-js SDK遵循客户端库的最佳实践,并以最新的ethers-js为模型。

如果你的用例涉及一些复杂的逻辑,例如多重签名,交换,托管,原子交换,铸造/刻录或更复杂的智能合约,我们将特别有兴趣为您提供帮助。尽管我们的未来版本将在Zinc上启用强大的智能合约,但是zkSync v1.0如今已经可以实现很多功能。


在本文的其余部分中,我们将重点关注该协议的两个主要属性:安全性和可扩展性。

像主网一样安全

ZkSync的核心技术zkRollup是唯一可以提供与L1相同的、被动安全保证的L2缩放方法。这意味着一旦你确认资金已进入zkSync帐户,就可以离线使用一年,然后回来,并确保无需任何外部帮助即可收回资产。你的zkSync存款完全不受zkSync运算符的任何操纵或攻击。


这在现有的L2扩展解决方案中绝对是独一无二的:所有其他方法都需要积极的安全措施,这意味着他们的运营商需要进行一些持续的工作以保持资金安全。这会增加攻击面和其他种类的威胁,例如在某些情况下,操作员可能会冻结或扣押你的帐户。

ZkSync用户资产的安全性对我们来说至关重要。我们遵循非常严格的开发和DevOps安全实践,在负载测试中进行了数千笔交易,并通过单元测试和集成测试广泛地覆盖了我们的代码。


此外,zkSync协议,智能合约和零知识电路已经过零知识领域最受尊敬的专家组之一的审核:ABDK Consulting,该团队共同撰写了Poseidon,Equihash和Argon2哈希函数,并进行了Jarvis密码的密码分析,兼容STARK,AES,ALE,Catena,RC4,IDEA和许多其他密码方案和协议。


尽管经过了全面的审核,但出于额外的预防措施,我们还是决定将zkSync v1.0发布为公开测试版。实际上这是一回事:可以在较短的通知期后,由Matter Labs更新合约,这使我们可以快速应对任何意外情况。将通过智能合约事件向用户通知计划的升级(即将与spells.fyi服务集成)。如果用户不同意即将发生的更改,则他们将有通知期限,可以在L1上提交退出请求。根据设计,在处理所有退出请求之前,不会进行升级。升级授权通过由单独的冷钱包控制的多重信号来保护。我们将逐渐延长通知期限,直到最终实施选择性加入升级机制,以消除大规模退出的任何潜在风险,并为zkSync帐户制定100%被动安全性。

虽然zkSync UI可以与任何以太坊钱包一起使用,但有一个重要警告。ZkSync(Schnorr的一种变体)中使用的SNARK友好签名方案不同于以太坊中使用的ECDSA方案。我们有一个集成了我们的签名方案的Metamask snap原型(将在快照准备好进入主网后立即发布),还有一个合作伙伴计划正在进行中,以提供对移动,台式机和硬件钱包的本地支持。

在此之前,zkSync帐户控制键是由浏览器中的zkSync UI处理的,从安全角度来看并不理想。为了缓解这种攻击方式,我们实施了一种两要素安全机制:对于每笔交易,必须使用本机以太坊签名对纯文本授权进行签名,在将交易包含在汇总块中之前,服务器会对其进行检查。这样,即使我们的UI网站遭到黑客攻击,攻击者也将无法利用它。同时,我们希望本机集成能够快速跟进,从而使此安全预防措施变得不必要。

ZkSync是第一个没有特定于应用程序的、受信任设置的zkRollup——为什么这会改变游戏规则

a)可靠的设置很难,它需要很多专家和社区的关注才能确保安全。上一代SNARK需要特定于应用程序的受信任设置,从而大大降低了zkRollup技术的安全性和适用性。


b)zkSync是第一个具有通用受信任设置的zkRollup。我们重复使用有史以来最安全的MPC仪式的结果。


c)这使我们能够轻松安全地迭代zkSync设计,添加扩展,增加吞吐量,添加智能合约并实现隐私。

上一代基于SNARK的区块链技术(Zcash,Tornado Cash,Loopring)使用了称为Groth16的证明系统。虽然它在2016年发布时是最先进的协议,但过去一年来,我们看到了零知识证明协议的爆炸式增长,在Groth16上有了很大的改进,特别是在通用参考字符串(CRS)。


CRS更好地称为“受信任的设置”。在生成SNARK证据之前,必须先创建一次CRS,通常是在多方计算(MPC)仪式中,有很多参与者参与。如果这些参与者中至少有一个是诚实的,并且已经安全地删除了其贡献的值(随机性),则认为使用此CRS生成的SNARK是安全的。


受信任的设置MPC是巨大的操作安全挑战。但是Groth16通过要求特定于应用程序的可信设置,将其变成了安全性的噩梦。这意味着需要为每个应用程序以及此应用程序中逻辑的每次更新(每次更改,每个错误修正)分别进行可信设置。考虑以下:

a)受信任的设置协议需要经过高度详细的同行评审。 Zcash的Sprout的受信任设置的协议规范中的一个错误引入了一个严重的安全漏洞。你希望公众关注信任的设置。这很难经常执行,尤其是当绑定到单个应用程序时。


b)必须彻底审查可信设置实施的代码,以消除后门和薄弱环节。理想情况下,需要多个独立的实现。


c)可信设置的参与者必须遵循严格的安全性程序,以确保它们没有受到损害:在安全的环境(绝对不是在浏览器中)上运行它,最好在刚购买的空白计算机上运行。


d)用户希望看到他们亲自认识的参与者,并考虑值得信赖以及精通安全性。使用项目特定的设置很难做到这一点。


e)最后,该过程的复杂性(对于面向可伸缩性的可信设置,需要大量Gb下载/上传,以及数小时的计算,同时还要保护安全性),这使人们很难一致地参与。理想的情况是完全摆脱它,或者至少必须做到一次。

最近出现了一些透明的有效证明系统,即不需要可信的设置,例如STARK,Halo和SuperSonic。它们看起来非常有前途,尤其是STARK,因为其他系统过于昂贵,无法在以太坊上进行验证。因此,Matter Labs团队在这个方向上进行了很多试验:我们发布了STARK证明者实现程序Hodor,后来又开发了RedShift,它是结合了SNARK和STARK世界最好技术的混合透明证明系统。


不幸的是,就gas方面而言,STARK和RedShift证明仍然非常昂贵。这使得他们当前对zkRollups的部署有问题。需要做更多的工作以使它们足够有效地完成此任务。


但是,我们现在有了称为SNORK的新型证明系统:具有通用且可更新的、受信任设置的SNARK。这意味着仍然需要设置,但只需一次,以后可以被许多应用程序重用。同类产品中的第一个是Sonic(Matter Labs创建了它的简洁版本的第一个实现),但是后来有了更高效的版本。如今,PLONK是此类最先进且经过同行评审的证明系统。


在2019年秋季,物理实验室参加了AZTEC协议组织的PLONK点火MPC仪式。进一步的参与者包括Vitalik Buterin和加密社区的其他一些杰出成员。 Buterin还创建了参与者软件的独立实现。 ZkSync v1.0使用带有Ignition的CRS PLONK作为其证明系统。

这种一次性的信任设置意味着我们可以快速迭代zkSync设计,并实现新功能或扩展,而不会丢失任何安全性属性。


对于以太坊中可用的配对椭圆曲线,最大PLONK电路尺寸为2??。这导致zkSync v1.0中最大块大小的限制,该限制将吞吐量限制为300 TPS,而不是我们的技术堆栈和以太坊带宽,现在都可以实现的2,000 TPS。但是,这有两个原因:

1)当前容量超过了Paypal的平均交易负载(200 TPS)。我们相信,这对于zkSync运行的前几个月来说已经足够了。


2)更重要的是,即使没有椭圆曲线的循环,也很少有有效的递归策略可用于PLONK。我们已经实现了几种递归变体,并将基于更为详尽的测试选择一种策略。递归允许我们使zkSync v1.1中的块成为无上限的,而无需重新实现已经审计的基本块电路。此外,它是未来实施隐私和智能合约的关键。

正如我们在一开始所说的那样,我们的目标是为数十亿人提供可扩展的,保护隐私的,有弹性的,公平的,完全未经许可的区块链技术。今天,我们从可扩展性解决方案入手,该解决方案可以满足所有这些需求,并且没有隐私问题。一旦规模化,我们将为以太坊的隐私做同样的事情。

原文链接:https://medium.com/matter-labs/zksync-is-live-bringing-trustless-scalable-payments-to-ethereum-9c634b3e6823

—-

编译者/作者:洁sir

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

LOADING...
LOADING...