zkSync是一个用于以太坊扩容的无信任协议,由zkRollup技术驱动。它使用零知识证明为以太坊解决扩容、数据可用性和隐私等问题,且所有数据都不会离开主网。
虽然安全和去中心化是Matter Labs的考虑的优先事项,但用户和开发者体验是zkSync设计的核心。我们正在思考如何消除以太坊中的用户摩擦和复杂性。我们认为,用户和构建者都会发现zkSync是以太坊领域最灵活、最方便的工具。
扩容
zkSync v1.1是一类zkRollup,在如今的以太坊主网上可以实现达到最高3000TPS的峰值容量。虽然指望zkRollup100%全速运行是不现实的(因为rollup与其他交易共享Eth区块空间),但即使25%的区块空间利用率也足以支持所有500,000,000 Reddit用户的代币分发和订阅。
3,000 TPS是一个开始,但我们预计以太坊用户的增长会让摩尔定律再次生效。为了让以太坊为数十亿用户做好准备,Matter Labs提出了对zkSync的扩展,我们称之为zkPorter。zkPorter将允许协议将自己提升为分片,其交易吞吐量甚至超过zkSync的10-100倍。
安全
与现有的Layer2扩容解决方案相比,zkRollup提供了无与伦比的安全性。一个简单的试金石:一个协议X是否需要参与者主动工作以保证其资产安全?如果答案是肯定的,那么安全措施总是会出问题,资金也会流失。
据我们所知,zkRollup是唯一一个提供被动安全保障的协议:数据的可用性与用户活动隔离,确保资金与底层Layer1一样安全。
值得指出的是,zkSync依赖于最近的加密技术,这引入了协议风险。具体来说,zkSync v1.1采用了2019年开发的通用SNARK PLONK(又名SNORK)。虽然该系统的密码学假设被广泛认为是安全的,但它确实需要通过多方计算仪式获得的一次性可信设置。
为了给我们的zkSync生产测试版提供熵源,Matter Labs参加了AZTEC Ignition社区的可信设置仪式。有超过200人参加,包括以太坊基金会、Consensys、Vitalik等代表。可信设置对我们的用户来说意味着,如果至少有一个参与者诚实地参与了设置程序(通过在通用参考字符串中提供熵),那么整个网络就会永久地获得密码学上的安全。Reddit可以作为参与者加入到zkSync使用的Ignition设置中,为Reddit社区提供进一步的安全保障。
BCH突破310美元关口 日内跌幅为9.36%:火币全球站数据显示,BCH短线上涨,突破310美元关口,现报310.11美元,日内跌幅达到9.36%,行情波动较大,请做好风险控制。[2020/11/26 22:09:47]
完美是短暂的。zkSync将发展到不需要信任的设置。这就是为什么Matter Labs的研究人员设计并实现了RedShift:一个透明的SNARK。zkSync的未来版本将使用RedShift,因为我们预计RedShift的性能将达到或超过PLONK上的可能。
zkSync的协议、加密技术和智能合约已经通过了该领域最知名的安全公司之一的审核。ABDK咨询公司(由Poseidon哈希函数的共同作者创立)。
去中心化
我们在Matter Labs的使命是加速公链的大规模应用。自由和自我主权是我们公司的基本价值观。我们在这里打击中心化的权力聚合,以及潜在经济和监视控制。我们不会停止,直到世界上每一个人都能不折不扣地、私密地访问开放的、无权限的、无审查的全球数字经济网络。
我们认识到,在这条道路上,取舍是不可避免的--但我们非常谨慎地选择我们的取舍。互联网最初是一个自由和中立的空间。到了2020年,它的大部分基础设施都被少数大公司所控制。我们需要避免让大玩家主导金融互联网。
zkSync在Layer1的部分100%抗审查:因为在Layer1处保证了数据的可用性,所以任何验证者都无法阻止用户收回资金。正因为如此,也因为Layer2才刚刚开始,我们发现遵循渐进式去中心化的道路,最初推出zkSync的时候是可以接受的,并采用了权限验证器。验证区块的权利是由zkSync治理智能合约授予的。
最终,生态系统的健康取决于真正的去中心化Layer2(不接受任何替代品!)。由于大多数交易最终将在Layer2上进行,因此,未能将权限分散到Layer2上,就是未能将以太坊分散。Matter Labs致力于让zkSync在Layer2上具有很强的抗审查能力。为了实现这一目标,我们正在构建一个可扩展的多验证者共识,并建立一个独立的审查-预防机制。
可用性
可用性是zkSync的优势所在。
将zkSync与现有的钱包一起使用是最简单不过的了。一个zkSync交易需要一个单一的zkSync专用秘钥来进行签名。对于钱包提供商来说,与zkSync的集成只需要几行代码。
zkSync的最终性与以太坊的最终性紧密结合--用户最多等待几分钟就能看到自己的交易结算(包括退出)。"zkSync "不依赖流动性提供商来加速用户退出,用户也不必定期登录 "检查 "自己的资金,以保证资金安全,防止恶意退出企图。最重要的是,zkSync的Gas费比Layer1降低了约100倍。
zkSync原生支持元交易:费用可以在被转移的同一区块中支付。在我们的zkSync v1.1更新中,我们增加了第三方在任何费用中支付交易费用的选项。例如,Reddit可以用ETH、DAI或任何ERC20为其用户付费。
zkSync具有直观的Web客户端和全面的区块浏览器。
互操作性
zkSync可与任何支持web3的钱包(如MetaMask或WalletConnect)配合使用。
zkSync的API和SDK是开放的,无权限的,并且有完整的文档。
zkSync可与Layer1上的智能合约互操作。
随着Zinc的发布--一个零知识友好的智能合约编程框架--zkSync将能够直接将智能合约集成到Layer2中。
智能合约如何释放递归零知识证明的纯粹力量,一个很好的例子就是投票。一个涉及数百万社区成员投票的决定--投票权在zkSync上被代币化--可以通过一个Layer1智能合约来验证,成本是51万个Gas!
递归:最高3,000TPS;
zkSync v1.0由PLONK提供技术支持,需要一次性信任设置。在信任设置上,我们采用了有200多人参加的MPC会议的成果。设置的体积必须保持相对较小,以使参与实用。不幸的是,这限制了一个区块的zk证明的最大尺寸,因此zkSync的最大吞吐量被限制在约300 TPS。
为了解除这一限制,我们实现并完全集成到zkSync中的递归PLONK验证!现在,一个聚合区块可以验证多达20个正常区块,只有这最后一个证明需要在链上提交。之前的区块实现无需修改:它仍然包含相同的审核代码。
在我们的zkSync "Reddit版 "负载测试中,只向智能合约提交了递归证明,将零知识证明开销降低到了每次转账40Gas(在EVM中,一次PLONK证明验证需要51万Gas)。现在,添加一个可以验证其他聚合区块的元块也是小事一桩,可以让zkSync将任意多块聚合成一个证明,将证明开销降低到每笔交易只有1个gas。
现在zkSync中的纯数据可用性成本是每次传输320Gas。随着我们的验证器节点和智能合约的进一步小改动,以将提交的数据批量化在一起--这些改动没有包含在本月的冲刺中,因为它已经非常紧凑--zkSync的容量将被放大到Ethereum施加的最大限制:3000 TPS(假设13秒Eth区块间隔和12,5M区块Gas限制)。
交易批处理
用户体验应该是简单和便捷的。我们希望zkSync能够无缝集成到所有已有的钱包和支付工具中。我们已经使在被转移的代币中支付交易费用成为可能。如果用户只拥有DAI,应该不需要额外拥有ETH来支付气费。
虽然用户一般可以用任何代币支付交易费用,但有几个例外。市场流动性不足的代币(即相对不常见的代币)将不得不用流动性较高的代币支付Gas费。其次,当第三方为其用户补贴交易费用时,第三方可以用它喜欢的任何代币支付交易费用,无论用户的货币是什么。
为了支持这一功能,我们引入了交易批处理。交易批处理将一组交易捆绑成单笔交易,担保人支付的费用也会相应减少。Reddit可以使用这个功能来支付社区积分转账的交易费用。
Alex Gluchowski 作者
Edward 翻译
Edward 编辑
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。