感谢?MatterLabs?提出关于部分L1数据链上可用性的问题,我们一直以来都非常重视社区的声音,并会根据社区的需求修改方案。因此,我们想借着这次机会向大家分享?ZKSwap?开发团队辛勤工作所交付的产品背后的一些思考。
经过非常谨慎细致的思考之后,为了TPS和Gasfee的效率,我们决定将ZKSwap的L2转账放在链下。在ZKSwap的设计中,L1相关的数据在链上,L2相关的数据,比如转账和交易,存在链下。尽管存在链下,这部分数据也会被验证者实时公布。
例如,L2区块7831:
https://api.zkswap.info/block/7831/pub-data
三种转账类型
ZK-Rollup协议中,一个区块可以包括三种类型的转账:
LayerZero新增对Metis的支持:12月9日消息,以太坊Layer 2网络Metis在推特上表示,跨链互操作性协议LayerZero已支持Metis。[2022/12/10 21:34:43]
类型1:来自L1的存款和创建AMM交易对的转账;
类型2:L2发起且只能被L1验证的转账。比如,公钥转账将需要L1签名来确保L1账户的密钥所有者能将他们的账户与L2账户关联起来,因为电路不能检查确认L1的签名;
类型3:由L2签名验证而无法被L1验证的转账。
ZKSwap安全模型
一个区块内记录的L2转账在L1上只有部分记录。只有区块信息的总结会被记录在L1链上,例如区块哈希、新默克尔根、区块高度等等。
当一个区块的转账被提交到L1上,区块就被创建出来,区块哈希会被验证。由于以太坊内建了sha256算法,所以区块哈希通常也使用sha256进行计算。
以太坊开发者:当前以太坊Layer2 Gas使用量不到Layer1的1%:11月22日消息,以太坊开发者 Ryan Berckmans 发推称,根据 Dune Analytics 数据,当前以太坊 Layer2 网络使用的 Gas 量约占 Layer1 Gas 总量的 0.5% 到 1%,而未来几年内该数值可能增长至 50% 到 99%。所以,即使终端用户使用的 Gas 费用下降,以太坊网络总 Gas 费用依然会快速增长。[2021/11/22 7:04:36]
为了保持数据可用性,所有的转账数据都应该被提交到L1上,这被称为「公开数据」。一笔转账的公开数据与其在L2上的转账并不完全相同。系统在进入「退出模式」时将使用公开数据,这样任何人都能恢复最近的经过验证的默克尔树。
电路
L2的电路与L1的智能合约能够协同工作,确保ZK-Rollup协议的功能性。L2的电路保证了以下几点:L2转账签名正确、L1/L2转账执行正确、区块信息计算正确、及时有效地更新账户信息——包括默克尔根、账户默克尔树和费用信息等等。
dYdX上Layer2 Perpetuals总交易量达30亿美元:7月12日消息,dYdX Protocol官方发推宣布,自4月份公开发布以来,Layer2 Perpetuals的总交易量已达到30亿美元。同时披露了一系列关键数据,包括总交易量30亿美元;OI2700万美元;TVL4900万美元;独立用户16700个(按存款);市场19个。据悉,dYdX和StarkWare已经就基于StarkWare的StarkEx可扩展性引擎(Layer2)和dYdX的Perpetual智能合约,为交叉边缘的Perpetuals建立了Layer2协议。[2021/7/13 0:47:37]
双验证模式
验证模块对与安全性来说十分重要,是ZK-Rollup协议的基础。
公开数据验证——验证第一类和第二类转账的内容和次序。例如,验证存款需要确保存款数额和信息与L1上记录的相同,并且顺序无误。
日本公司LayerX将开发使用数字ID验证的区块链投票系统:日本公司Layer X将与一个名为xID的数字身份应用程序合作,在日本加贺市建立一个基于区块链的投票系统。上周四,位于东京的LayerX公司在一份声明中说,它将开发电子投票项目,以努力促进加贺市选举的安全性和可靠性,加贺市拥有6.8万居民。该公司表示,需要解决该区域目前电子投票系统的费用和稳定性问题。据悉,xID应用程序将通过帮助验证选民的身份和确保每人只发放一张选票,从而加强公司现有的投票系统。据报道,LayerX的系统将允许选民检查自己的投票结果,并为他们提供加密能力,以独立验证特定投票的记录和汇总过程是否在区块链网络上正确执行。(Cointelegraph)[2020/12/7 14:28:09]
区块验证——验证一个区块里的转账被正确执行,并且L2的账户默克尔树根被及时恰当地通过零知识证明进行更新。当一个区块被验证之后,更新的默克尔根就取得了最终性。
总结来说,整体的安全假设如下:
·一个区块的所有转账公开数据在链上;
·验证一个区块中第一类和第二类转账被正确执行;
·证明一个区块内的所有转账被正确执行、账户默克尔树被正确更新、一个区块内的所有转账的公开数据能够匹配;
·证明该区块内所有公开数据都被正确计算;
·提交给L1的区块公开数据与零知识证明系统所证明的数据相同。
公开数据不上链时会发生什么?
如果公开数据不在链上,安全假设「提交给L1的区块公开数据与零知识证明系统所证明的数据相同」就不能被验证。这时候,当L2的零知识证明系统阵营所有转账都被正确执行、默克尔树都被正确更新时,只能说明一个区块内的转账有效,而不能证明来自特定区块的其他转账。
大多数第三类转账都是安全的,但是对于提现操作来说,提现的收款人未经验证,不能被零知识证明系统证明。
对于第一类转账来说,所有可能的第一类转账都能被证明,但不能被验证。类如,零知识证明系统能证明一些非L1发起的存款转账。
由于只有验证着能提交公开数据或者区块证明,所以社区必须信任验证者是诚实的。当验证者诚实时,以上所有的风险都不会存在。对ZKSwap来说,所有公开数据都在浏览器中同步公布,任何人都可以验证公开数据和任何链上区块。
将公开数据存在链下不是一个草率的决定。这个选择背后的主要原因是降低Gas费和提高可扩展性。
Gas费用
保持ZK-Rollup协议运行的一个痛点是Gas。为了向L1提交一个区块,需要消耗以下GasLimit):
一个区块中,最多可以包括120笔交易转账。
如果要在L1提交验证一个区块,需要消耗大约23万GasLimit,calldata费用约占31%。
可扩展性
可扩展性是另一个考虑因素。假设一笔L2转账消耗1850.7Gas,那么ZKSwap将消耗10%的以太坊Gas,整体TPS将在51.5。
这是在只有交易、没有提现的情况,所以正常使用中将消耗更多Gas,TPS会更低。
结论
保护用户资金安全对所有区块链项目来说都很重要,也是ZKSwap的核心价值。当转账的公开数据没有提交上链时,安全性就依赖于零知识证明电路。当验证者诚实时,用户的资产就是安全的。从技术角度来说,如果验证者不诚实,安全性将会是一个问题。这是降低Gas、提高TPS的一个权衡。
考虑到Gas消耗和可扩展性,ZKSwap做了一个艰难的决定,将公开数据不上链,换来对L2用户更高的TPS和更低的Gas消耗。
我们愿意倾听开发者和用户的反馈,让ZKSwap系统更好。我们也可以在任何时间将所有数据上链。事实上,在发布ZKSwap之前,我们已经实现了100%数据可用的版本,所以我们可用随时升级至这个100%ZK-Rollup的版本,提供更高的Gas消耗、更低的TPS,但是更安全。
安全生产简析下meerkat跑路事件一、核心问题1.AdminUpgradeabilityProxy天然的负面影响一代理的逻辑合约可以被替换2.
1900/1/1 0:00:00来源:财联社财联社讯,隔夜,比特币又有惊无险地经历了一轮“监管大考”——美国证券交易委员会主席提名人加里?詹斯勒(GaryGensler)在参议院确认听证会上,发表了对比特币的一系列看法.
1900/1/1 0:00:002月20日,以太坊价格上涨至2,015美元的新高,当前看涨情绪的主要驱动因素之一是CME以太坊期货的推出.
1900/1/1 0:00:00摘要:韩国监管机构称新加密法规或威胁用户数据安全;内蒙古整顿虚拟货币挖矿项目,以确保完成能耗目标;EIP-1559正式被纳入伦敦硬分叉;美国加密税务公司TaxBit完成1亿美元融资据PANews.
1900/1/1 0:00:00因市场猜测Uniswap即将上线V3,其原生代币UNI的价格在一周内飙升近50%,并以178亿美元的市值成为了第八大加密资产.
1900/1/1 0:00:00调查:逾三分之一加密货币投资者对加密货币本身几乎一无所知新浪刚刚420Cardify最新调查报告发现,加密货币投资新手在步入该领域之前并没有做太多的研究.
1900/1/1 0:00:00