前言
前段時間在Etherscan上查看交易時,發現一個很有趣的地址:0x00000000a03396F6F864B496713f2623b6756Be2。這個地址是以0x00000000開頭,抱著探索未知的心理對該地址進行了簡單的搜索,發現該地址并不簡單,它不僅構造獨特同時,還能節省Gas費。
什么是Gas
在講這個地址之前,我們首先需要理解什么是Gas。Gas是用于測量在以太坊區塊鏈上執行特定操作所需的計算工作量的單位,即以太坊網絡上的計算單位。我們可以簡單的把Gas理解為汽油,其保證了以太坊網絡的正常運行。在以太坊區塊鏈上,執行寫入操作都需要支付一定的Gas費用。在以太坊中,貨幣是以太幣(ether),1ether=1x1018Wei。在以太坊區塊鏈上進行操作,如發送代幣、調用合約等都要支付相應Gas,且以Wei作為單位來計算。Wei是ETH原生最小的單位,ETH消耗的Gas單位是Gwei,1Gwei=1x109Wei。2.1GasPrice
BingX上線Tether (EUR?)和Tether Gold (XAU?):金色財經報道,新加坡加密貨幣交易所BingX宣布上線Tether (EUR?)和Tether Gold (XAU?),T ether首席技術官Paolo Ardoino表示,很高興 BingX 選擇為世界各地的用戶提供以歐元和實物黃金支持的數字資產,本次和作伙伴關系將解鎖金融自由和經濟的愿景,并擴大全球社區的包容性。(Prnewswire)[2023/7/20 11:05:29]
GasPrice是以太坊內消耗1個Gas對應多少的Gwei,當然交易發送方可以自定義愿意支付的每單位Gas價格。比如交易發送方的一筆交易需要耗費10Gas,交易發送者愿意支付3Wei/Gas,交易的成本總價就是30Wei。在我們使用的錢包里都會有調整Gas費的高級選項,GasPrice越高,打包的優先級就越高。2.2GasLimit
GasLimit是消耗Gas的限制單位,即交易發送方在完成每筆交易時最多能使用的用于執行交易的Gas量。如果沒有GasLimit做限制,可能會導致交易發送方的賬戶余額因錯誤操作而消耗完,GasLimit是安全機制,防止把賬戶中所有ETH消耗掉。2.3固有成本Gas
Coinbase已啟用ETH解除質押功能:金色財經報道,據官方推特,Coinbase宣布已啟用ETH解除質押功能。
此前消息,以太坊上海升級已完成。[2023/4/13 14:00:40]
發送一筆交易的成本包括兩部分:1、固有成本2、執行成本執行成本顧名思義和執行有關,執行一筆交易的操作越多,它所需要的使用的EVM資源就越多,執行成本就越高。而固有成本由交易的負載決定:1、創建智能合約的負載是創建智能合約的EVM代碼2、調用智能合約函數的負載是執行消息時輸入的數據3、兩個賬戶之間轉賬的負載為空我們從以太坊黃皮書附錄G中可得知創建合約和執行交易的相關成本Gas。
我們假設$N{zeros}$代表的是交易負載中字節為0的字節總數,$N{nonzeros}$代表交易負載中字節不為0的字節總數,根據黃皮書6.2章節關于執行的描述,可以得到固有成本。
OpenSea已新增支持Arbitrum Nova:據官方消息,OpenSea已新增支持Arbitrum Nova,OpenSea還將加入Nova上的數據可用性委員會(DAC),以提供對鏈上數據的訪問并幫助確保數據準確性。[2023/1/7 10:59:59]
以太坊地址中零開頭的地址
由于Gas費用現在比較昂貴,所以優化Gas變得很重要,優化Gas費用的方法有很多,這里我們不一一列舉,本文只以以太坊地址中0字節降低Gas費來討論,這是從EVM層面來優化Gas。通過使用比平時更多的0字節的地址,并且在某些情況下,地址開頭有更多的0字節,我們可以在許多類型的交易中節省汽油。漢明重量是一串符號中非零符號的個數。全零符號的漢明重量為0,1101的漢明重量為3。在以太坊黃皮書附錄G中可以看到,使用0字節時需要4Gas,而使用非0字節時需要16Gas:
茅臺與網易推出的“巽風”數字世界注冊用戶突破100萬:金色財經報道,貴州茅臺(1730.010, 3.01, 0.17%)進軍元宇宙,新上線一款古風十足的APP。1月2日晚間,貴州茅臺發布消息,截至1月2日23時,巽風數字世界注冊用戶數正式突破100萬。據了解,巽風數字世界是由茅臺集團旗下茅臺文旅與網易集團旗下網易好物共同出資成立的巽風科技(貴州)有限公司進行建設的。巽風數字世界依托網易的虛擬現實研發技術基礎,應用互動體驗引擎、數字孿生等技術。(中證報)[2023/1/3 22:23:30]
每次使用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$,和我們從黃皮書中得到的期望值一樣。
重慶共開立“數字人民幣”個人錢包106.66萬個,交易金額2.88億元:金色財經報道,重慶市新聞辦舉行重慶數字人民幣試點新聞發布會。人民銀行重慶營管部黨委委員、副主任吳豪聲表示,自4月份“數字人民幣”重慶試點工作啟動以來,“數字人民幣”使用場景和規模逐步擴大。
數據顯示,截至5月15日,重慶共開立“數字人民幣”個人錢包106.66萬個,對公錢包4.24萬個,累計交易筆數157.67萬筆,交易金額2.88億元。
吳豪聲介紹:“目前,重慶已在多個領域實現‘數字人民幣’應用落地,超12000家商戶可以接受數字人民幣支付。”(上游新聞)[2022/5/19 3:27:53]
而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
無論牛熊,無論新舊,項目在結合新領域或者新公鏈后總會催生出新的敘事,獲得更多關注,DeFi研究員LouisCooper近期介紹了一些AI+crypto、新上線L2、和創新敘事的項目.
1900/1/1 0:00:00在Luna、Celsius、Voyager、3AC以及FTX/Alameda崩潰之后,許多加密行業分析師都表示DeFi是潛在的解決方案.
1900/1/1 0:00:00年度事件 2022年是風險投資領域充滿挑戰的一年,市場低迷不僅影響了傳統資產類別如股票、債券,甚至波及了加密貨幣領域.
1900/1/1 0:00:0045000張,每張99美元,美國前總統唐納德·特朗普的首個NFT系列「TrumpDigitalTradingCards」僅用12個小時就全部售罄.
1900/1/1 0:00:00原文作者:SCapital相關閱讀:一文詳解去中心化穩定幣的現狀與未來一文詳解去中心化穩定幣的現狀與未來引言:FRAX的算法部分與LUNA并無顯著差別.
1900/1/1 0:00:00整理:餅干,鏈捕手2022年加密市場上充斥著太多壞消息——5月Terra崩潰,三箭資本、Voyager等加密巨頭相繼暴雷.
1900/1/1 0:00:00