区块见闻 区块见闻
Ctrl+D收藏区块见闻

GAS:EIP-3529:减少gas返还_Raptor Finance

作者:

时间:

简单总结

移除SELFDESTRUCT的gas返还,减少SSTORE的gas返还到一个较低水平,使得返还的量仍然相当大,但不会像现在高到可以被利用的地步。

原因

最初引入SSTORE和SELFDESTRUCT的gas返还是为了鼓励应用开发者写应用时能践行“良好的状态卫生”,清理不再需要的存储槽与合约。但是,结果证明这项技术带来的效率远低于预期,gas返还还带来多项未预料到的有害后果:

gas返还导致GASToken的出现。GasToken有益于把gas空间从低费用阶段转移到高费用阶段,但它也对网络有坏处,尤其是加剧状态大小膨胀(由于状态槽被有效用作“电池”来积攒gas)和低效地堵塞区块链gas使用。

gas返还加剧区块大小变化。一个区块实际消耗的gas量的理论最大值是接近名义上的gaslimit(因为返还会增加同一区块里后面交易的gas空间,尽管返还的gas最多是该笔交易消耗gas的50%)。这一点不是致命的,但影响还是相当不好,特别是返还可以被用来维持比EIP-1559使用两倍gaslimit更长的峰期。

元宇宙相关加密资产总市值为303.05亿美元:金色财经报道,据coinmarketcap数据显示,元宇宙相关加密资产总市值为303.05亿美元,24小时跌幅5.97%,24小时交易额约41.63亿美元。当前市值排名前五的元宇宙通证分别是:Decentraland(50亿美元)、AxieInfinity(41.51亿美元)、TheSandbox(40.14亿美元)、THETA(38.16亿美元)和EnjinCoin(18.37亿美元)。[2022/1/11 8:40:08]

规范

参数

对于存在block.number>=FORK_BLOCK的区块,需要作下列变更。

1.移除SELFDESTRUCT的返还

2.用SSTORE_RESET_GAS+ACCESS_LIST_STORAGE_KEY_COST(EIP-2929+EIP-2930合力下的4,800gas)取代SSTORE_CLEARS_SCHEDULE

美SEC主席:信息披露和广告真实性是将加密货币纳入《证券法》监管的关键:金色财经报道,美国证券交易委员会Gary Gensler今日接受CNBC采访时表示,“有些加密项目正在从公众那里筹集资金,它们是否与公众分享了帮助公众做出决定的相同披露信息,并且它们是否符合我们在广告中的真实性?这些问题都是决定他们是否会被纳入《证券法》监管的关键。无论是加密货币,还是SPAC这些新东西,最基本的传统理念是,如果你从公众那里筹集资金,公众就会考虑盈利,你就必须向他们披露基本信息。

此外,Gary Gensler表示,自己不会透露以太坊是否被视为证券,同时,加密项目对公众的信息透明度将决定其是否被纳入《证券法》。Gensler 称,金融体系基于信用,无论是对于企业还是官员,防止内幕交易对于信用体系都很重要。[2022/1/11 8:39:48]

3.把交易后的最大返还gas量减少到gas_used//NEW_MAX_REFUND_QUOTIENT

原理阐释

EIP-2200引入了返还的三种情况:

1.如果原始值是非零,新值是零,添加SSTORE_CLEARS_SCHEDULE的gas量到返还计算器

eToro欧洲用户称eToro关闭杠杆式加密合约是违约的:1月11日消息,eToro欧洲用户声称,杠杆式加密货币头寸受到了他们的追捧,但在该交易平台所谓的“极端市场波动”面前,这些头寸已被突然关闭。1月8日,eToro通过电子邮件告知在欧洲国家允许进行差价合约(CFD)交易的客户:“如果您未将保证金提高到100%,则该头寸将在今日GMT时间21:00关闭。” 对此,数位eToro欧洲客户的代表律师Slavko Vesenjak表示, eToro违反了与客户达成的合同。(CoinDesk)[2021/1/11 15:49:43]

2.如果原始值是零,当前值是非零,新值为零,添加SSTORE_SET_GAS-SLOAD_GAS(当前是19,900)的gas量到返还计算器

3.如果原始值是非零,当前值是一个不一样的非零值,新值等于原始值,添加SSTORE_RESET_GAS-SLOAD_GAS的gas到返还计算器

在这三种情况里,只有(1)会启动gastoken且允许区块在执行上消耗超过区块gaslimit的gas。(2)不具有这个特点,因为要获得19,900的gas返还,同一个存储槽必须在之前从零改为非零,这需要消耗20,000gas。无法从一个存储槽获得gas并用它来编辑另一个存储槽,意味着它不能被用作gastoken。另外,获得返还需要恢复存储的写入和扩展,使得返还的gas不会增加客户端处理区块的工作量。(3)是相似的:只有当同一个存储槽在之前已经消耗了5,000gas的时候才能获得4,900gas返还。

声音 | Sean Ryan:预计美国今年的加密货币报税人数将增加:据Finance Magnates消息,去年有报道称,很少有美国人对加密货币的收益和损失进行税收申报。加密货币税务公司Node40联合创始人Sean Ryan表示:“我相信,今年加密活动相关的报税人数将增加。”Ryan假设,更多的加密持有者可能实际上提交了报税文件,比大多数人想象的更普遍。部分原因可能是,加密货币持有者使用的许多税收工具并没有起到应有的作用。 文章称,报税人数今年可能增加的原因之一是有很多自动纳税服务。另一个可能推动申报的因素是机构资本和专业交易员的涌入。公司实体在提交税务申报时的诚实程度远高于普通个人持有者。[2019/4/12]

此EIP处理第一种情况。我们可以通过使用一个相似的“配对”变元来确定在何种条件下gastoken是不可用的(例如,你不可以在一个存储槽里获得比你的输入更多的gas),将每一笔返还映射到同一笔交易的同一个存储槽的前一笔支出。当一个存储槽的原始值是非零值,如果它被改为0时,有两个可能性:

1.这可能是存储槽第一次被设置为零。在这种情况下,我们可以把这个时间与SSTORE_RESET_GAS+ACCESS_LIST_STORAGE_KEY_COST第一次读取和编辑存储槽的最小开销进行配对。

鱼池正式宣布支持EIP-1559:2月26日消息,鱼池发布题为《站在历史的正确一边: EIP-1559》的文章,表示正式支持EIP-1559提案。

文章中提到,社区和核心开发人员都支持不断发展的以太坊,包括EIP-1559。站在用户和核心贡献者一边是很重要的,鱼池希望与用户和开发者站在一起;大多数社区成员,包括投资者,对EIP-1559有积极的反馈,并期望这能对价格起作用,如果EIP-1559未能实施,将对以太坊短期价格产生不利影响。鱼池表示,始终保持开放的心态,并乐于参与富有成效的讨论。仍愿意听取更多关于EIP-1559的意见。[2021/2/26 17:55:11]

2.这可能是存储槽第二次被设置为零或被设置为零后的情况。在这种情况下,我们可以把这个事件与最近一次数值从零改为其他值,且SSTORE_CLEARS_SCHEDULE的gas从返还中被移除的变元进行配对。

对于第二次或之后的情况,SSTORE_CLEARS_SCHEDULE?的值是什么并不重要,因为那个gas大小的返还是与相同大小的清除返还相匹配的。这就只剩下第一种情况了。为了确保存储槽上消耗的gas总量为正,我们需要SSTORE_CLEARS_SCHEDULE<=SSTORE_RESET_GAS+ACCESS_LIST_STORAGE_KEY_COST。因此,此EIP只把SSTORE_CLEARS_SCHEDULE减少到那两项开销的总和。

此EIP的另一个原因是,清除还未被读取的数据(通常是“无用”数据)是不会有净返还的,但清除被读取过的数据(通常是“有用”数据)还继续会有净返还。

向后兼容性

返还当前仅在交易执行后应用,因此无法对执行中任何特定可用的调用框架造成影响。因此,清除它们将不会破坏任何代码的执行,尽管它将使得一些应用变得经济上不可行。

Gastoken会变得没有价值。DeFi套利机器人今天经常不是使用已有的gastoken方案就是一个定制的,以减少链上的开销,这得益于重写它们的代码以清除对那些不再有用的gas存储机制的调用。

然而,完全保留在new=original=0!=current?里的返还,以及保留在其他nonzero->zero情况里的一些返还能确保一些接收(和值得)更好的gas开销待遇的关键用例能持续获益。例如,zero->nonzero->zero的存储设置模式保持只需消耗大约100gas。这些模式包括两个重要实例:

?反重入锁(通常在一个子调用开始前从0变为1,当子调用结束时再变回0)

?ERC20授权与发送(当代币转移得到授权,"授权值"会从零变成非零,然后在代币转移过程中恢复到零)

对清除存储激励的影响

对之前关于移除返还的EIP(EIP-3298和EIP-3403)的批评是这些EIP完全消除了把一个值设为零的激励,相当于鼓励用户不要完全清除一个存储槽(即使他们想这么做),哪怕他们想再次使用该存储槽的几率是最小的。

举一个例子,如果你有一个单位的ERC20代币,且你要送出或卖出你的所有余额,你可以只给出0.999999个单位,把剩余的留下。如果你想在未来重新放入更多该种代币到同一个账户,你仅需要为SSTORE支付5,000gas(2,100用于读取+2,900用于非零变为非零的设置)而不是22,100(20,000用于零到非零值的设置)。今天,这部分的gas会被清除存储获得的15,000gas返还所抵消,因此,如果你有超过15000/17100=87.7%的把握会再使用这个存储槽,你才会有动力这样做;按照EIP3298或EIP3403的设定,抵消激励这部分是不存在的,因此,如果你再次使用该存储槽的可能性是大于0的,设为非零值会更好。

对于剩下的4,800gas返还,如果你觉得再次使用某个存储槽的几率大于4800/17100=28.1%,你才有保持该存储槽为非零的动力。这并不是完美的,但它可能高于一般人在清除了他们的全部余额后在同一个地址重新获得同一代币的几率。

gas返还的上限是所消耗gas量的1/5,这意味着这种返还仅够用于增加处理一个区块所需的存储写入操作量最多为25%,限制了利用这个机制进行以存储写入为重点的拒绝服务攻击。

测试用例

EIP-2929的gas开销

注意,“热”和“冷”存储槽之间是有区别的。这个表展示了EIP-2929下的值,假定所有变动过的存储槽都已经是“热”状态(区别是一次性消耗2,100gas)。

减少了的返还后

如果通过把SSTORE_CLEARS_SCHEDULE从15,000变为4,800(以及去除selfdestruct的返还),减少了部分的返还,下面是是一个对比表。

安全考虑

返还对于事务执行时不可见的,因此这不会对事务执行逻辑产生任何影响。

如果我们不计算后来重置回零的零到非零的SSTORE,在一个区块里执行的最大gas消耗量受到gaslimit的限制。不计算这些事可以的,因为如果这样的SSTORE被重置了,存储不会被扩展,客户端实际上不需要调整默克尔树;gas消耗是可以返还的,但客户端对这些操作码的处理通常也会被取消。如果new_value=original_value,客户端应该保证不会进行存储写入;这是自以太坊创世以来的一次谨慎优化,但它现在变得更重要了。

来源|?eips.ethereum.org

作者|VitalikButerin&MartinSwende

标签:GASSTOTORSTORGastreamBlockchain Store TokenRaptor FinanceSTOR币

币安app下载热门资讯
ETHER:巴比特观察丨是时候抄底了吗?_比特币市值跌破5000亿美元是真的吗

比特币于今日午间跌破4万美元/枚,较历史高点回落约25000美元,24小时内跌约12%,7日跌近30%.

加密货币:科普 | 算法稳定币的视觉解释_加密货币行情

去年稳定币的使用量呈现爆炸式增长,然而了解稳定币实际工作原理的人越来越少。由于某种原因,稳定币的创造者沉迷于复杂的设计中,几乎每份白皮书都深陷在方程式和新发明的术语中,就好像创作者试图说服你一样.

MEEB:教程 | 如何将Meebits引入元宇宙(Metaverse)_meer币能涨到多少

近期NFT领域最火的两个项目,一个是屡屡卖出天价的Cryptopunks,另一个则是新秀Meebits,而两者的共同点便是其创造者是同一个——Larvalabs.

GAS:加密牛市到达顶峰了吗?历史是否会重演?_ORE

随着比特币和以太坊均从历史高点双双下跌超过25%,恐慌情绪在市场蔓延开来,许多投资者担心市场已经见顶,并开始进入看跌区域.

ITA:融资新闻 | SubDAO完成新一轮融资,Kernel Ventures及众多知名机构参与_DsunDAO

SubDAO正式完成新一轮融资,本轮融资由Hypersphere、HuobiVentures、KernelVentures、OKExBlockdreamVentures、CMSHoldings、.

VEN:马斯克与狗狗币、比特币进退“阳谋” ,会否牵涉市场操纵?_HEAVEN

来源:21世纪经济报道 作者:胡天姣 马斯克关于比特币撤离动作与言论不断。继上周马斯克突然宣布因比特币从开采到交易过程中的高污染性,特斯拉停止比特币购买汽车的支付方式后,上周日,一名网友预判,“.