幣安錢包歸集為何 Gas 狂漲?解析交易所業務邏輯

浩天
2023-09-24 10:00:47
收藏
交易所資產歸集問題,不單單是成本問題,涉及到面非常複雜。

作者:Haotian


交易所管理著大量的 EOA Deposit 充值地址,每次用戶充幣都把資產轉往了這些零碎的小地址,這些地址的資金,交易所通常要做「歸集」便於統一資產管理。

交易所地址歸集業務通常有兩個選擇:

  1. 用戶只要衝幣,程序立馬把相應資產轉往熱錢包地址,但問題是,一個用戶一個充幣需求,可能會分成多次,比如,大佬轉大資金一般會先轉個小額進來,再逐筆轉入為安全計,顯然這種方案,容易多出更多的 TXS,若交易所採用這種歸集方案,遇到恰好 GAS 費高的時候就得頂著高 GAS 執行,手續費也會很高,但好處是它的整個歸集過程是分散的,用戶端不會感知,對交易所而言也只是正常的業務損耗需要。
  2. 用戶衝幣後一段時間內,那些零散的小 EOA 地址保持不動,用戶再提幣的話直接從大的熱錢包提幣,然後固定一段時間進行一次地址歸集,這樣以來可以對一下賬,便於資產統一管理,二來可以選一個 Gas 相對低的時間段,統一來進行轉帳操作。但是這樣做有個難點,短時間大量操作很容易拉高 Gas,而且一旦被媒體盯上容易誘發公關事件。因為,很難向公眾解釋,為啥交易所需要集中歸集資產這件事,關鍵是還燒了那麼多的 Gas。

很顯然,幣安就採用了第二種地址歸集方案。站在交易所的業務邏輯下,無論選哪種方案,都存在大量的業務資金損耗,各家的管理資產策略可能會不同。

為了便於理解,我分別找了 Binance14 和 OKX3 兩個地址,Binance14 採取了第二種方案,而 OKX 應該是採取了第一種方案。但由於二者地址資產體量和交易量都相差懸殊,數據僅供參考。

如圖 1,Binance14 地址管理資產總規模近 11 萬 ETH,作為一個接收地址,歷史 Gas 共消耗了 1 萬個 ETH。而 9 月 13 日那次較多的歸集,單日消耗 Gas 也有 388 個以太,歷史上最多一次一天消耗 871 個 ETH,所以說地址歸集消耗幾百萬是正常業務損耗,別因為大家的不理解,讓負責歸集的同學給丟了飯碗。

如圖 2,OKX3 地址管理資產規模較小,但作為接受地址歷史消耗 1530 個 ETH。從圖可以看出,OKX 的日均消耗都比較均衡,峰值也就一天 15 個 ETH,可見第一種歸集方案就是花費在平時。

至於兩種方案哪個更好,交易所肯定會算出一套適合自己且最優化的選擇,沒有企業不去做成本優化這件事,Binance 大表哥雖然土豪,但也不至於不做優化。

此外大家得清楚交易所資產歸集管理會涉及成本優化、安全風控、內部審批流程、資金效率等多個問題,成本優化只是其中一個關鍵因素,但不是絕對。

  • 成本優化:較真的話,肯定可以做優化,我查了下數據,僅北京時間下午 5-6 點就發出了超 14 萬筆交易,大家很自然疑惑,平攤到 1-2 天不行嗎?監測到 Gas 擁堵把程序停掉不行嗎?從工程實現角度當然可以,問題是把時間平攤看,1-2 天,甚至 1-2 個月,肯定不會帶來 Gas 擁堵問題,也能省錢,但也可能帶來其他風險問題,這和第一種方案也沒差了。
  • 安全風控:最大考量應該還是安全問題,交易所管理者大量的地址私鑰,權限可能由一套系統控制,工程師歸集資產相當於要獲得系統一個高級管理權限(調取私鑰簽名),假定它是一套 HSM 冷錢包系統,這類系統盡可能少觸網,相比 2 天,開 2 個小時的權限顯然可以大大減少受攻擊面,避免系統被黑客攻擊。所以,之所以要快速歸集,安全風控會是一大核心考量因素。若花 300 ETH 能有效避免 30 萬個 ETH 被攻擊,應該很合理吧?
  • 內控流程:交易所系統是一個龐大的群體組織,涉及到管理層、執行層,內部為了規範資產使用流程也會有審批流程,幾十萬個 EOA 地址私鑰,最高效的自然是老闆最高權限,然後統一簽名,一次性處理。若分割成小份,再分批處理就涉及到,管理權分攤,那難免會出現部分員工單點爆破風險。若由老闆統一管理,理想方案是集中某個時間點,只審批一次就好了,若分好多地址,好多批次要歸集審批,把老闆的精力捆在資產歸集的事上,合適嗎?

至於資金效率問題,防止意外突發情況發生等等都是有可能的。

總之,交易所資產歸集問題,不單單是成本問題,涉及到面非常複雜,回溯 Binanc14 歷史會發現,類似高 Gas 歸集的情況不是個例,那很顯然這是 Binance 綜合考慮各方因素得出的一貫的權衡方案。

鏈捕手ChainCatcher提醒,請廣大讀者理性看待區塊鏈,切實提高風險意識,警惕各類虛擬代幣發行與炒作,站內所有內容僅係市場信息或相關方觀點,不構成任何形式投資建議。如發現站內內容含敏感信息,可點擊“舉報”,我們會及時處理。
banner
ChainCatcher 與創新者共建Web3世界