比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

天價手續費分析:我不是真土豪_FER

Author:

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

9月27日,Bitfinex的一個主要錢包以7676

將int轉成Hexhttps://github

判斷是否可以被2整除,如果不行需要在字符開頭添加一個0,這里主要是為了能夠成功的將數據2個1組寫入到buffer。https://github

if(a

returna;}

以出錯的示例數據:33974229950.550003進行分析,經過intToBuffer函數中的intToHex和padToEven處理后得到7e9059bbe.8ccd,這部分瀏覽器js和nodejs的結果都是一致的。

不一致的地方是在newBuffer的操作:

newBuffer(padToEven(hex.slice(2)),'hex');

香港虛擬資產交易所HKVAX:獲香港證監會頒發虛擬資產交易平臺牌照的原則上批準通知書:8月11日消息,香港虛擬資產交易所HKVAX發文稱,HKVAX獲香港證券及期貨事務監察委員會(證監會)頒發原則上批準通知書,可進行第一類及第七類受規管活動,將成為香港第三間持牌虛擬資產交易平臺。HKVAX 將提供三類核心產品,包括場外交易(OTC)經紀商服務,兼具縮窄差價及高流動性特點,令用戶可于法定貨幣和虛擬資產間輕松交易;機構級交易平臺;以及 100% 保障的托管服務,當中資產存取權及控制明確,客戶與公司本身持有的資產亦分隔清晰。

HKVAX 由香港企業家創立,其聯合創始人兼營運總監為霍兆樑,聯合創始人兼行政總裁為吳煒樑博士。HKVAX 旨在建立數字資產交易新標準,為本地與環球市場創建傳統金融與數字金融之間的橋梁,目標成為證券型代幣發行(STO)或資產支持代幣(ABT)等新產品類別的行業基準。[2023/8/11 16:20:51]

處理方式分析:瀏覽器js

Matic或向投資者提供以單價0.7美元將已鎖定Token贖回為現金的選擇權:6月11日消息,Twitter用戶@0xSisyphus發文稱,Matic向許多投資者提供了一種選擇權,即當Token價格跌破該水平線時以單價0.7美元將投資者已鎖定的Token贖回為現金。0xSisyphus同時詢問該機制的工作原理。隨后DeFi播客MarketCapping主持人@SmallCapScience回復推文并釋出相關條款:

最小購買頭寸5萬美元,最大20萬美元。根據條款和條件,在公司收到購買者簽名頁后向購買者交付Token數量和總購買價格,具體為:50%的Token在生效日期后12個月解鎖;25%的Token在生效日期后18個月解鎖;25%的Token在生效日期后24個月解鎖。所有Token將在條款生效日期后的24個月內交付給買方。即買方可以以14天的加權平均價格購買MATIC,授予期2年,解鎖期1年。在交易中,買方有Token下跌保護。如果一年后Token價格下降,買方可以選擇取回現金。[2023/6/11 21:29:04]

通過webpack打包好js文件并對文件進行引用,然后在瀏覽器上進行調試分析。

Ordinals銘文總量已突破400萬枚:金色財經報道,Dune Analytics數據顯示,Ordinals 銘文總量已突破400萬枚,現總計4,101,583枚。[2023/5/7 14:48:08]

首先輸入的示例字符33974229950.550003會進入到intToBuffer的函數中進行處理。同步分析intToBuffer的處理過程,這部分和」關鍵代碼分析「部分的代碼邏輯是一樣的,處理轉換部分得到的結果是7e9059bbe.8ccd。接下來分析如何將轉換后的字符填充進入的buffer中,通過這步可以得到buffer的內容是126,144,89,187,14,140,205對應的是7e,90,59,bb,e,8c,cd。

>0x7e->126>0x90->144>0x59->89>0xbb->187>0xe->14>0x8c->140>0xcd->205

彭博社:納斯達克正等待監管明確后推出加密交易平臺:金色財經報道,彭博社報道,納斯達克(NASDAQ)執行副總裁Tal Cohen表示,納斯達克可能會等到加密貨幣交易平臺的監管更加明確、被多數機構采用之后,再推出自己的加密貨幣交易平臺。

Tal Cohen補充道,為零售客戶提供服務的市場已經相當飽和,納斯達克將專注于其加密托管服務,因為如果你能妥善保管人們的資產,他們就會信任你,為之后開展各種業務做好鋪墊。[2022/10/6 18:40:44]

這里發現e.這部分的小數點消失了,于是開始解小數點消失之迷,追蹤到hexWrite這個函數,這個函數會將得到的數據2個一組進行切分。然后用了parseInt對切分后的數據進行解析。

然而parseInt('e.',16)->14===parseInt('e',16)->14消失的小數點被parseInt吃掉了,導致最終寫入到buffer中的數據發生了錯誤,寫入buffer的值是7e9059bbe8ccd。

Coinbase Pay集成Solana生態錢包Phantom:6月29日消息,Coinbase Pay宣布集成Solana生態錢包Phantom,用戶可在Phantom中使用Coinbase Pay賬戶購買和交易SOL。此前消息,Coinbase Pay于5月上線,Web3開發者可將Coinbase Pay集成到其dApp中。MetaMask是首個集成Coinbase Pay的應用。[2022/6/29 1:38:07]

處理方式分析:nodejs

由于瀏覽器上出問題的是7_**__**_e9059bbe.8ccd在寫入buffer的時候小數點被parseInt吃掉了導致數據出錯,但是經過分析,node的數據也是錯誤的,且產生錯誤的原因是和瀏覽器的不一樣。

首先我們先看下如下的示例:

node三組不同的數據填充到buffer得到的結果居然是一樣的,經過分析node的buffer有個小特性,就是2個一組切分后的數據,如果沒法正常通過hex解析的,就會把那一組數據以及之后的數據都不處理了,直接返回前面可以被正常處理的那部分數據。可以理解為被截斷了。這部分可以參考node底層的buffer中node_buffer.cc中的代碼邏輯。

>newBuffer('7e9059bbe','hex')>newBuffer('7e9059bbe.8ccd','hex')>newBuffer('7e9059bb','hex')

執行結果的比較

node由于會將原始數據7e9059bbe.8ccd中的e.及之后的數據進行截斷,所以最終錯誤的值是7e9059bb,相比正確的值07e9059bbe小。

node的執行結果:瀏覽器由于會將原始數據7e9059bbe.8ccd中的.吃掉,所以最終錯誤的值是7e9059bbe8ccd,相比正確的值07e9059bbe大很多。

瀏覽器的執行結果:

問題的原因

ethjs-util的intToBuffer函數不支持浮點型的數據,且在這個函數中沒有判斷傳入的變量類型,來確保變量類型是預期內的。由于ethereumjs的toBuffer引用了ethjs-util的intToBuffer進行處理,也沒有對數據進行檢查。導致了這次事件的發生,所幸最終善良的礦工歸還了「天價手續費7626ETH」。

吸取的教訓

從第三方的庫的角度來看,在編碼過程中應該要遵循可靠的安全的編碼規范,在函數的開頭要對傳入的數據進行合法性的檢查,確保數據和代碼邏輯是按照預期內執行。

從庫的使用者的角度來看,使用者應該要自行閱讀第三方庫的開發文檔和對接文檔,并且也要對代碼中接入第三方庫的邏輯進行測試,通過構造大量的數據進行測試,確保業務上能夠正常按照期望執行,保證高標準的測試用例的覆蓋率。

參考資料:

https://github.com/ethereumjs/ethereumjs-monorepo/issues/1497

https://blog.deversifi.com/23-7-million-dollar-ethereum-transaction-fee-post-mortem/

https://www.chainnews.com/news/611706276133.htm

來源鏈接:mp.weixin.qq.com

免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。

慢霧

慢霧

慢霧科技是一家專注區塊鏈生態安全的國家高新技術企業,通過「威脅發現到威脅防御一體化因地制宜的安全解決方案」服務了全球許多頭部或知名的項目。慢霧科技的安全解決方案包括:安全審計、威脅情報、漏洞賞金、防御部署、安全顧問等服務并配套有加密貨幣反洗錢、假充值漏洞掃描、漏洞監測、被黑檔案庫、智能合約防火墻、SafeStaking等SAAS型安全產品,已有商業客戶上千家。慢霧慢霧科技慢霧AML慢霧安全Slowmist查看更多以太坊

Tags:BUFFFERUFFINTbuff幣是什么Rufferal.comruff幣跑路了paint幣前景

歐易交易所
CoinW賺幣節,短期高息,坐享收益!_OIN

親愛的用戶: CoinW將于2021年9月30日16點開啟短期賺幣活動,本次賺幣活動通過FansUp活動頁面參與,FansUp參與成功即為賺幣參與成功,參與成功時同步開始短期鎖倉賺幣.

1900/1/1 0:00:00
Indexed Finance 用戶可以鎖定 NDX 獲得 dNDX 代幣來獲得項目收入紅利,最低鎖定金額 100NDX_TET

鏈聞消息,去中心化被動投資管理協議IndexedFinance宣布用戶可以將治理代幣NDX鎖定90天到360天不等,以鑄造dNDX代幣,每個NDX鑄造dNDX比例從1:1到4:1不等.

1900/1/1 0:00:00
企業區塊鏈軟件公司 R3 正在開發 DeFi 協議 Obscuro 并計劃發行代幣_STE

鏈聞消息,據LedgerInsights報道,企業區塊鏈軟件公司R3在CordaCon2021大會上宣布,公司正在開發新的DeFi協議Obscuro.

1900/1/1 0:00:00
a16z合伙人:美國SEC加密法規需要“公平應用”_區塊鏈

據CoinDesk9月30日消息,a16z的普通合伙人KatieHaun在CNBC的投資者峰會上表示,加密貨幣行業并不反對監管,但確實需要監管機構的明確規定,監管機構需要評估一個事實.

1900/1/1 0:00:00
ZT創新板即將上線 EVA_USDT

親愛的ZT用戶: ZT創新板即將上線EVA,并開啟EVA/USDT交易對。具體上線時間如下:充值:已開啟;交易:2021年9月29日17:00?; EVA 項目簡介:EVA是Web3生態中融合了.

1900/1/1 0:00:00
Chair NFT BYP元宇宙 2021華語區KOL招募計劃_HAIR

Chair是全球首家權益類NFT去中心化交易平臺,作為NFT2.0的開創者,在Chair任何人都可以將自己的權益鑄造成NFT,并參與到交易、拍賣、BYP、元宇宙中去,來降低NFT權益化的門檻.

1900/1/1 0:00:00
ads