原文标题:《StarkNetAlpha——以太坊最强扩容之路》
作者:Thonee
ZKRollup扩容方案StarkNetAlpha上线以太坊主网,该解决方案有助于缓解以太坊当前高昂的手续费使用环境。
目前已经有好几个扩展解决方案被实际采用,但ZK-Rollup技术始终被视为是扩容解决方案的最佳解答,原因究竟为何呢?
以太坊可扩展性问题
高昂的gasfees已经成为以太坊的主要问题,由于交易费用是以ETH支付,当资产价格上涨时,使用网络的成本也随之上升,ETH今年上涨了460%,这意味著以美元计算的交易成本也增加了460%。
另外,交易费用也取决于网络拥堵程度,由于目前的链上应用项目对以太坊区块空间有著极大的需求,但是区块空间是有限的,导致其网络很容易变得拥挤,使交易确认速度变慢及gasfee变高。
使用网络的高成本成为用户参与DeFi和NFT的阻碍,甚至失去参与DAO的机会,许多加密货币爱好者已经迁移到其他第一层区块链上,如Solana和Avalanche。
以太坊交易gas价格中位数
安全团队:获利约900万美元,Moola协议遭受黑客攻击事件简析:10月19日消息,据Beosin EagleEye Web3安全预警与监控平台监测显示,Celo上的Moola协议遭受攻击,黑客获利约900万美元。Beosin安全团队第一时间对事件进行了分析,结果如下:
第一步:攻击者进行了多笔交易,用CELO买入MOO,攻击者起始资金(182000枚CELO).
第二步:攻击者使用MOO作为抵押品借出CELO。根据抵押借贷的常见逻辑,攻击者抵押了价值a的MOO,可借出价值b的CELO。
第三步:攻击者用贷出的CELO购买MOO,从而继续提高MOO的价格。每次交换之后,Moo对应CELO的价格变高。
第四步:由于抵押借贷合约在借出时会使用交易对中的实时价格进行判断,导致用户之前的借贷数量,并未达到价值b,所以用户可以继续借出CELO。通过不断重复这个过程,攻击者把MOO的价格从0.02 CELO提高到0.73 CELO。
第五步:攻击者进行了累计4次抵押MOO,10次swap(CELO换MOO),28次借贷,达到获利过程。
本次遭受攻击的抵押借贷实现合约并未开源,根据攻击特征可以猜测攻击属于价格操纵攻击。截止发文时,通过Beosin Trace追踪发现攻击者将约93.1%的所得资金 返还给了Moola Market项目方,将50万CELO 捐给了impact market。自己留下了总计65万个CELO作为赏金。[2022/10/19 17:32:31]
在过去的几年里,几个扩展解决方案已经被开发出来,以帮助缓解以太坊的网络拥堵及交易成本问题。
慢雾简析Qubit被盗原因:对白名单代币进行转账操作时未对其是否是0地址再次进行检查:据慢雾区情报,2022 年 01 月 28 日,Qubit 项目的 QBridge 遭受攻击损失约 8000 万美金。慢雾安全团队进行分析后表示,本次攻击的主要原因在于在充值普通代币与 native 代币分开实现的情况下,在对白名单内的代币进行转账操作时未对其是否是 0 地址再次进行检查,导致本该通过 native 充值函数进行充值的操作却能顺利走通普通代币充值逻辑。慢雾安全团队建议在对充值代币进行白名单检查后仍需对充值的是否为 native 代币进行检查。[2022/1/28 9:19:19]
Polygon在2019年推出,可以说是第一个获得巨大吸引力的以太坊扩容解决方案,该网络使用一个名为Plasma的扩容方案。
它将交易从主要的以太坊区块链转移到一个专用的侧链,许多以太坊原生的DeFi应用已经在Polygon上推出,如Curve和Aave。
虽然Polygon网络透过低交易成本成功吸引用户使用,但它常被质疑安全性和中心化问题,而被认为不是一个真正的扩展解决方案。
该网络使用其自身的节点验证者管理PoS共识机制,这意味著它不使用以太坊主网来验证交易。
慢雾:Spartan Protocol被黑简析:据慢雾区情报,币安智能链项目 Spartan Protocol 被黑,损失金额约 3000 万美元,慢雾安全团队第一时间介入分析,并以简讯的形式分享给大家参考:
1. 攻击者通过闪电贷先从 PancakeSwap 中借出 WBNB;
2. 在 WBNB-SPT1 的池子中,先使用借来的一部分 WBNB 不断的通过 swap 兑换成 SPT1,导致兑换池中产生巨大滑点;
3. 攻击者将持有的 WBNB 与 SPT1 向 WBNB-SPT1 池子添加流动性获得 LP 凭证,但是在添加流动性的时候存在一个滑点修正机制,在添加流动性时将对池的滑点进行修正,但没有限制最高可修正的滑点大小,此时添加流动性,由于滑点修正机制,获得的 LP 数量并不是一个正常的值;
4. 随后继续进行 swap 操作将 WBNB 兑换成 SPT1,此时池子中的 WBNB 增多 SPT1 减少;
5. swap 之后攻击者将持有的 WBNB 和 SPT1 都转移给 WBNB-SPT1 池子,然后进行移除流动性操作;
6. 在移除流动性时会通过池子中实时的代币数量来计算用户的 LP 可获得多少对应的代币,由于步骤 5,此时会获得比添加流动性时更多的代币;
7. 在移除流动性之后会更新池子中的 baseAmount 与 tokenAmount,由于移除流动性时没有和添加流动性一样存在滑点修正机制,移除流动性后两种代币的数量和合约记录的代币数量会存在一定的差值;
8. 因此在与实际有差值的情况下还能再次添加流动性获得 LP,此后攻击者只要再次移除流动性就能再次获得对应的两种代币;
9. 之后攻击者只需再将 SPT1 代币兑换成 WBNB,最后即可获得更多的 WBNB。详情见原文链接。[2021/5/2 21:17:59]
根据截稿前的Polygonscan的数据,只有100个验证者管理Polygon网络,最大的验证节点地址占其整体网络验证区块的27%以上。
慢雾:Polkatrain 薅羊毛事故简析:据慢雾区消息,波卡生态IDO平台Polkatrain于今早发生事故,慢雾安全团队第一时间介入分析,并定位到了具体问题。本次出现问题的合约为Polkatrain项目的POLT_LBP合约,该合约有一个swap函数,并存在一个返佣机制,当用户通过swap函数购买PLOT代币的时候获得一定量的返佣,该笔返佣会通过合约里的_update函数调用transferFrom的形式转发送给用户。由于_update函数没有设置一个池子的最多的返佣数量,也未在返佣的时候判断总返佣金是否用完了,导致恶意的套利者可通过不断调用swap函数进行代币兑换来薅取合约的返佣奖励。慢雾安全团队提醒DApp项目方在设计AMM兑换机制的时候需充分考虑项目的业务场景及其经济模型,防止意外情况发生。[2021/4/5 19:46:39]
Polygon网络前25大区块验证占比
Rollup扩展解決方案
近期Rollup扩展解决方案在以太坊社群引起了一阵热议,Rollup方案顾名思义就是一种将计算数据“打包”并将有效性证明送回以太坊主网的方式。
这种做法可节省区块空间,进一步减少提交给主网的数据量,由于交易被捆绑在一起,Gasfee就能让许多用户分摊。
Harvest.Finance被黑事件简析:10月26号,据慢雾区消息 Harvest Finance 项目遭受闪电贷攻击,损失超过 400 万美元。以下为慢雾安全团队对此事件的简要分析。
1. 攻击者通过 Tornado.cash 转入 20ETH 作为后续攻击手续费;
2. 攻击者通过 UniswapV2 闪电贷借出巨额 USDC 与 USDT;
3. 攻击者先通过 Curve 的 exchange_underlying 函数将 USDT 换成 USDC,此时 Curve yUSDC 池中的 investedUnderlyingBalance 将相对应的变小;
4. 随后攻击者通过 Harvest 的 deposit 将巨额 USDC 充值进 Vault 中,充值的同时 Harvest 的 Vault 将铸出 fUSDC,而铸出的数量计算方式如下:
amount.mul(totalSupply()).div(underlyingBalanceWithInvestment());
计算方式中的 underlyingBalanceWithInvestment 一部分取的是 Curve 中的 investedUnderlyingBalance 值,由于 Curve 中 investedUnderlyingBalance 的变化将导致 Vault 铸出更多的 fUSDC;
5. 之后再通过 Curve 把 USDC 换成 USDT 将失衡的价格拉回正常;
6. 最后只需要把 fUSDC 归还给 Vault 即可获得比充值时更多的 USDC;
7. 随后攻击者开始重复此过程持续获利;
其他攻击流程与上诉分析过程类似。参考交易哈希:0x35f8d2f572fceaac9288e5d462117850ef2694786992a8c3f6d02612277b0877。
此次攻击主要是 Harvest Finance 的 fToken(fUSDC、fUSDT...) 在铸币时采用的是 Curve y池中的报价(即使用 Curve 作为喂价来源),导致攻击者可以通过巨额兑换操控预言机的价格来控制 Harvest Finance 中 fToken 的铸币数量,从而使攻击者有利可图。[2020/10/26]
Rollup为用户提供了近乎即时的交易速度,可以将费用减少50到200倍,同时保持以太坊主网的安全性和去中心化。
目前Rollup方案的两种类型分别为:
Optimistic?Rollup和Zero-KnowledgeRollup。
什麽是OptimisticRollup?
OptimisticRollup方案假设发回主链的交易是合法的,只有当验证人能够透过提交诈欺证明来证明交易是性的,交易才会被拒绝。
换句话说,OptimisticRollups采取“在证明有罪之前是无罪的”的方法来验证交易。
目前OptimisticRollup已经能看到实际采用情形,部分原因是开发者在该网络上开发应用程式较容易。
OptimisticRollup可以直接支援完整的智能合约功能,开发人员可以使用以太坊的程式语言Solidity编写应用程式。
根据L2beat的数据显示,目前最大的OptimisticRollup网络Arbitrum已经在DeFi应用当中吸引了超过25亿美元的总锁仓价值,它承载了以太坊上许多受欢迎的DeFi应用。
然而,由于OptimisticRollup验证交易的方法,它们面临一些挑战,传送回以太坊主网的资金要经历长达一周的挑战期,这给用户带来了不便,并破坏了可组合性。
虽然OptimisticRollups已经改进了基于Plasma的解决方案。
如Polygon,但他们通常被认为是不如ZK-Rollups的,OptimisticRollups提供高达77倍的可扩展性提升,而ZK-Rollups提供了高达500倍的提升,并且无挑战期。
什么是ZK-Rollup?
ZK-Rollup方案在交易打包至主网时产生加密证明以证明交易是合法的,只有在加密证明被验证后,交易才会在以太坊上被接受,与OptimisticRollup不同,ZK-Rollup采取了“在证明无罪之前有罪的”的验证方式。
然而,ZK-Rollup还没有达到与OptimisticRollup同类产品相同的兼容性水平,因为ZK-Rollup在每笔交易中要伴随著有效性证明。
所以它们在技术发展上更难,目前ZK-Rollup的开发上已经能执行一些简单的任务,例如直接转帐和交易,虽然整合智能合约功能是有可能的,但比OptimisticRollup更加困难。
就在今年,以太坊联合创始人VitalikButerin预测,开发完全可组合的ZK-Rollup将需要几年时间。
然而,开发人员已经提前完成了计划,几个ZK-Rollups项目正在准备部署解决方案,这些解决方案是兼具可组合性和互操作性,甚至能让多个Rollups互通。
ZK-Rollups的发展将允许以太坊主网和多个第2层网络之间共享通讯框架,网络可以共享流动性并克服第1层区块链面临的最大的采用挑战。
基于ZK-Rollup的网络将不需要为了让去中心化交易所上拥有高效率交易而争夺流动性,而是能够以合作的方式扩展以太坊。
ZK-Rollup还具有另一个独特的功能,越多人交易会使交易费用变得更便宜,发送一个批次的费用不会有太大的变化。
随著更多的交易被打包在一个批次中,交易成本可以在更多的用户中分摊,ZK-Rollups可以打包几乎无限量的交易。
因此当有足够的用户时,交易的gasfee可以减少到只要几分钱,这个功能被称为“有效性证明摊销”。
虽然以太坊仍然面临著可扩展性问题,但一些开发者已经在部署第二层ZK-Rollup网络,承诺在智能合约、其他第二层解决方案和以太坊虚拟机之间实现完全可组合性和兼容性。
ZK-Rollup的类型
目前有两种不同类型的ZK-Rollup被用于以太坊的扩展解决方案中,第一种是最被广泛使用的类型ZK-SNARKs,全名为简洁的非交互式知识论证,也是第一个被发现的零知识证明类型。
专注于隐私保护的区块链项目Zcash早在2016年就采用ZK-SNARKs,该技术构成了ZK-Rollup大部分开发者的资料库和代码,并被认为是以太坊扩展项目的一个强有力的选择。
但SNARKs有一个缺陷,它们需要一个初始创建事件的密钥,这些密钥用于创建交易所需的证明,如果可信设置事件中的密钥没有被销毁,它们可以被用来凭空创造新的代币或伪造交易。
目前备受瞩目的SNARK扩展解决方案是MatterLab的zkSync,该项目于2020年6月启动。
在其目前的迭代中宣称每秒可处理2000笔交易,并希望在未来实现更高的吞吐量,该平台开始致力于在兼容EVM的环境中部署智能合约,推出了zkEVM测试网。
zkSync目前著重于让Ethereum主网的过渡尽可能容易,那些想在zkEVM上开发的人可以使用以太坊语言Solidity编写智能合约。
MatterLabs最近在a16z领投的B轮融资中筹集了5000万美元,以帮助zkSync的发展,此外,该公司已与几个以太坊DeFi应用合作,如Curve、Aave和1inch。
另一种ZK-Rollup方案为STARKs,全名为可扩展的透明知识论证,STARKs比SNARKs更有优势。
因为STARKs完全依赖哈希函数,不需要可信的设置,这意味着STARKs在理论上比SNARKs更安全。
StarkWare是第一家使用STARKs来扩展以太坊的公司,是目前开发基于STARK技术的主要推动者。
该公司的两位联合创始人EliBen-Sasson和MichaelRiabzev共同发明了这项技术。
StarkWare为基于STARK的ZK-Rollups创造了一种图灵完备的编程语言,称为Cairo,“StarkEx协议”是以Cairo语言创造的第一个产品。
StarkEx是一种针对特定应用的扩展解决方案,目前正被几个以太坊项目使用,包括dYdX、ImmutableX、Sorare和DeversiFi。
StarkWare即将发布的StarkNet是一个无权限的ZK-Rollup网络,可以让开发者直接在第二层建构并启动应用程式。
StarkNet的目标是成为一个真正去中心化的多应用扩展解决方案。
StarkNet发展示意圖
ZK-Rollup即将改变加密货币社群使用以太坊的方式,随著zkSync和StarkNet等高速、低成本网络的实现。
更多以太坊主网上的交易将被外包至第二层,这应该会让以太坊更接近其成为一个可扩展、安全和去中心化的区块链网络的愿景。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。