币安钱包归集为何 Gas 狂涨?解析交易所业务逻辑

时间:2024-09-13  分类:电子


交易所管理着大量的EOADeposit充值地址,每次用户充币都把资产转往了这些零碎的小地址,这些地址的资金,交易所通常要做「归集」便于统一资产管理。


交易所地址归集业务通常有两个选择:


用户只要冲币,程序立马把相应资产转往热钱包地址,但问题是,一个用户一个充币需求,可能会分成多次,比如,大佬转大资金一般会先转个小额进来,再逐笔转入为安全计,显然这种方案,容易多出更多的TXS,若交易所采用这种归集方案,遇到恰好GAS费高的时候就得顶着高GAS执行,手续费也会很高,但好处是它的整个归集过程是分散的,用户端不会感知,对交易所而言也只是正常的业务损耗需要。用户冲币后一段时间内,那些零散的小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个小时的权限显然可以大大减少受攻击面,避免系统被黑客攻击。所以,之所以要快速归集,安全风控会是一大核心考量因素。若花300ETH能有效避免30万个ETH被攻击,应该很合理吧?内控流程:交易所系统是一个庞大的群体组织,涉及到管理层、执行层,内部为了规范资产使用流程也会有审批流程,几十万个EOA地址私钥,最高效的自然是老板最高权限,然后统一签名,一次性处理。若分割成小份,再分批处理就涉及到,管理权分摊,那难免会出现部分员工单点爆破风险。若由老板统一管理,理想方案是集中某个时间点,只审批一次就好了,若分好多地址,好多批次要归集审批,把老板的精力捆在资产归集的事上,合适吗?


至于资金效率问题,防止意外突发情况发生等等都是有可能的。


总之,总之,交易所资产归集问题,不单单是成本问题,涉及到面非常复杂,回溯Binanc14历史会发现,类似高Gas归集的情况不是个例,那很显然这是Binance综合考虑各方因素得出的一贯的权衡方案。


以上就是币安钱包归集为何 Gas 狂涨?解析交易所业务逻辑的全部内容,望能这篇币安钱包归集为何 Gas 狂涨?解析交易所业务逻辑可以帮助您解决问题,能够解决大家的实际问题是非常好学习网一直努力的方向和目标。