以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads
首頁 > SAND > Info

深?理解以太坊Gas機制:零字節地址能節省Gas?_GAS

Author:

Time:1900/1/1 0:00:00

前言

前段時間在Etherscan上查看交易時,發現一個很有趣的地址:0x00000000a03396F6F864B496713f2623b6756Be2。這個地址是以0x00000000開頭,抱著探索未知的心理對該地址進行了簡單的搜索,發現該地址并不簡單,它不僅構造獨特同時,還能節省Gas費。

什么是Gas

在講這個地址之前,我們首先需要理解什么是Gas。Gas是用于測量在以太坊區塊鏈上執行特定操作所需的計算工作量的單位,即以太坊網絡上的計算單位。我們可以簡單的把Gas理解為汽油,其保證了以太坊網絡的正常運行。在以太坊區塊鏈上,執行寫入操作都需要支付一定的Gas費用。在以太坊中,貨幣是以太幣(ether),1ether=1x1018Wei。在以太坊區塊鏈上進行操作,如發送代幣、調用合約等都要支付相應Gas,且以Wei作為單位來計算。Wei是ETH原生最小的單位,ETH消耗的Gas單位是Gwei,1Gwei=1x109Wei。2.1GasPrice

區塊鏈跨境結算技術公司Velo Labs完成1000萬美元融資,DWF Labs參投:金色財經報道,區塊鏈跨境結算技術公司Velo Labs宣布完成1000萬美元融資,數字資產做市商及投資公司DWF Labs參投。Velo Labs主要利用區塊鏈技術創建合規金融生態系統,旨在將當前全球經濟活動接入區塊鏈,并且推動實現資產在全球范圍內的去信任、無形式、無邊界和無限制的流動。[2023/6/26 22:00:52]

GasPrice是以太坊內消耗1個Gas對應多少的Gwei,當然交易發送方可以自定義愿意支付的每單位Gas價格。比如交易發送方的一筆交易需要耗費10Gas,交易發送者愿意支付3Wei/Gas,交易的成本總價就是30Wei。在我們使用的錢包里都會有調整Gas費的高級選項,GasPrice越高,打包的優先級就越高。2.2GasLimit

GasLimit是消耗Gas的限制單位,即交易發送方在完成每筆交易時最多能使用的用于執行交易的Gas量。如果沒有GasLimit做限制,可能會導致交易發送方的賬戶余額因錯誤操作而消耗完,GasLimit是安全機制,防止把賬戶中所有ETH消耗掉。2.3固有成本Gas

Binance在信標鏈上已質押超過10.7億美元的ETH:金色財經報道,Arkham監測顯示,今天早些時候,Binance將12.8萬枚ETH轉移到一個用于在信標鏈上進行質押的地址。就在本周,他們已經將57.6萬 枚ETH轉移到質押地址。這意味著僅Binance就已經質押了超過10.7億美元的ETH。[2023/5/11 14:55:41]

發送一筆交易的成本包括兩部分:1、固有成本2、執行成本執行成本顧名思義和執行有關,執行一筆交易的操作越多,它所需要的使用的EVM資源就越多,執行成本就越高。而固有成本由交易的負載決定:1、創建智能合約的負載是創建智能合約的EVM代碼2、調用智能合約函數的負載是執行消息時輸入的數據3、兩個賬戶之間轉賬的負載為空我們從以太坊黃皮書附錄G中可得知創建合約和執行交易的相關成本Gas。

區塊鏈互操作性初創公司Datachain完成穩定幣跨鏈結算的商業化實驗:4月27日消息,區塊鏈互操作性初創公司Datachain已完成數字證券和穩定幣跨鏈結算的商業化實驗,此次實驗使用CosmosIBC和LCP實現Corda和ConsenSysQuorum網絡的互連。三菱日聯金融集團旗下穩定幣平臺ProgmatCoin計劃將在多條鏈上發行穩定幣,并使用IBC作為通信協議,一旦獲得許可,將符合日本的監管要求。[2023/4/27 14:30:22]

我們假設$N{zeros}$代表的是交易負載中字節為0的字節總數,$N{nonzeros}$代表交易負載中字節不為0的字節總數,根據黃皮書6.2章節關于執行的描述,可以得到固有成本。

本周比特幣礦工收入升至2260萬美元/天,創2022年6月以來最高水平:金色財經報道,據區塊鏈分析公司Glassnode最新數據顯示,本周比特幣7日均價收盤上漲35.8%,從2015年開始只有16天出現過這種現象,隨著價格反彈比特幣周交易量的月平均數已經達到30.95萬筆/天,這是自2021年4月以來的最高水平,歷史上只有不到12.2%的交易日的交易活動比本周更多。此外,比特幣鏈上新增實體的數量達到12.2萬個/天, 歷史上,只有10.2%的交易日體現了更高的新用戶采用率。比特幣礦工成為市場復蘇的受益者,挖礦收入飆升到2260萬美元/天,已升至2022年6月以來的最高水平。[2023/3/23 13:21:37]

以太坊地址中零開頭的地址

由于Gas費用現在比較昂貴,所以優化Gas變得很重要,優化Gas費用的方法有很多,這里我們不一一列舉,本文只以以太坊地址中0字節降低Gas費來討論,這是從EVM層面來優化Gas。通過使用比平時更多的0字節的地址,并且在某些情況下,地址開頭有更多的0字節,我們可以在許多類型的交易中節省汽油。漢明重量是一串符號中非零符號的個數。全零符號的漢明重量為0,1101的漢明重量為3。在以太坊黃皮書附錄G中可以看到,使用0字節時需要4Gas,而使用非0字節時需要16Gas:

全網DeFi鎖倉量為1099.7億美元:金色財經消息,據DeFiLIama數據顯示,當前全網DeFi鎖倉量1099.7億美元,24小時下降1.61%。目前,鎖倉量排名前5的公鏈分別為:ETH(696.2億美元)、BSC(84億美元)、Avalanche(51.7億美元)、Tron(42.8億美元)、Solana(40.2億美元)。[2022/5/15 3:16:34]

每次使用0字節代替非0字節時,就可以節省16個Gas,因此,每次在msg.data中用一個0字節代替一個非0字節,都將給我們節省12個Gas。在以太坊中,地址是由0x開頭的40個隨機字符的16進制字符串,當以16進制形式查看字節串時,由于每對數字構成一個字節,所以單個16進制的0,或相鄰的0分布在兩個不同的字節中,不會減少字節串的漢明重量,所以只有連續2個16進制的0才會減少漢明重量。0字節的排序對所產生的Gas優化也沒有影響。在ERC20的transfer()函數中,msg.sender的漢明重量沒有區別,而作為transfer()函數的一部分傳入msg.data的_to地址參數就有區別。使用OpenZeppelin的StandardToken作為參考實例。向一個沒有0字節的地址進行標準轉賬需要花費35039Gas,然而向一個有4個0字節的地址進行轉賬只需要34991Gas,他們相差了$35039-34991=48\\,Gas$。而我們前面說到每次使用0字節代替非0字節時,可以節省12個Gas,這里的48Gas可以表示成$4\\times12=48\\,Gas$,和我們從黃皮書中得到的期望值一樣。

而2個0字節的地址0x00a0009e638D25EFE5a894f6a36F42734477dECa和上面2個差值分別都是24Gas,說明也是符合期望的。

但是如果我們地址尾部存在0字節時,又容易被短地址進行攻擊,所以以0x00開頭的具有多個0字節的地址就成為了更好的選擇。如果地址至少有4個前導0字節,那么每個地址將只需要占用16個字節,這樣兩個地址就可以裝入一個32字節包了。這樣的優化不僅在于使用了$G_{txdatazero}$帶來的Gas優化,而且由于不用從調用數據中讀寫更多的字節,我們還能省下更多的Gas,所以向這樣的地址轉賬時,不管該地址是合約地址還是普通賬戶地址,都能省下5%左右的費用。由去中心化交易所聚合器1inch.exchange開發的CHIGasToken就是采用這樣的原理,也有不少的普通賬戶地址使用前導0作為自己的地址。

如何得到更多前導0開頭的地址呢,這里就和大家看到的以太坊靚號生成是一樣的,這里就不提供生成方法了。當然了,想要得到的開頭0越多,難度就越大,需要的時間也就會越久。

92.47%的機會在地址上找到0個0字節。7.25%的機會找到1個0字節。0.27%的機會找到2個0字節的機會。0.00635%的機會找到3個0字節的機會。0.00000106%的機會找到4個0字節的機會。后記

優化Gas的方法有很多,這里我們就以EVM底層視角研究了節省Gas的方法,通過研究我們可以得到一個結論:以太坊地址里面的00越多,不管這個地址是合約地址還是普通地址,不管是轉入地址還是轉出地址,都能夠節省不少的Gas。參考文章

以太坊黃皮書2022-10-24深入理解以太坊Gas機制:從概念起源和21個EIP開始OnEfficientEthereumAddresses

Tags:GAS以太坊ETH區塊鏈VEGAS幣怎么得到以太坊幣togetherbnb能睡幾個銀行區塊鏈幣有什么用

SAND
Sharding Capital合伙人:預測2023年Web3的5大增長賽道_NFT

2022年的加密市場給出了一份非常“動蕩”的年終答卷。2022開年至今,在全球大類資產表現中,比特幣65%左右的跌幅超過其他主流資產類別.

1900/1/1 0:00:00
盤點Polygon生態中10個備受期待的DeFi協議_MAN

為什么我認為Polygon將會成為未來2-3個月內的DeFi創新發生地?當人們專注于敘事時——建設者一直在努力解決問題。本文帶你了解在Polygon上建立的獨特、新穎的協議.

1900/1/1 0:00:00
Web3機構們眼中的2023_WEB

在過去的幾周里,我們看到了大量的機構發布報告,回顧了過去一年的加密寒冬并提供了對2023年的展望。我們收集了這些報告,并整理出了各個機構的觀點.

1900/1/1 0:00:00
一文盤點值得關注的10個未發幣新項目_SYN

加密KOLSergioGallardo在其社交平臺分享了10個即將上線的新項目介紹,BlockBeats對其翻譯整理如下。IVXIVX是建立在GMX上的期權AMM.

1900/1/1 0:00:00
FTX.US前總裁爆料:我和FTX不得不說的故事_FTX

Odaily星球日報譯者|Moni 去年九月,FTXUS總裁BrettHarrison在其個人社交平臺宣布辭職,隨著FTX破產案件的啟動,他近日在社交媒體發文公開了自己如何度過那段暗黑時光.

1900/1/1 0:00:00
獨家專訪Tether CTO:八年伴隨行業成長,推動加密金融自由_THE

過去一年,加密行業經歷了動蕩和洗牌,黑天鵝頻至,在緊張的市場情緒中,人們對Tether和USDT的FUD層出不窮,但實際上,在Tether問世的8年多時間之中,從未拒絕過任何贖回請求.

1900/1/1 0:00:00
ads