文 | 小犀财经李玲
编 | 杨舒芳
曾经高出美图5倍市值的美链Token BEC,在一场合约bug中被转走价值60亿元的代币。更夸张的是,危机引发了价格闪崩,按照交易中的闪跌最低价0.137元计算,大跌近94%,当时的市值仅为10亿元,一举蒸发120亿元,整个代币几近归零。
4月22日下午1点,传言中的美图token、美链 BEC智能合约被曝出安全漏洞,同一时间大额BEC瞬间抛售套现,导致BEC 瞬间蒸发60亿元。据媒体报道,这是该安全漏洞被黑客利用所导致的。
美链 BEC于2018年2月在虚拟数字币交易平台OKEx上线,目前OKEx上已找不到该代币的价格趋势图。国内某小交易平台显示,美链BEC4月22日当天最高价为2.27元,最低价0.137元,价格最高浮动率达94%。
4月22日下午,OKEx作出紧急反应,宣布暂时关闭BEC/USDT、BEC/BTC、BEC/ETH的交易和BEC的提现功能。
随后,美链官网也挂出了公告,称“由于美链token BEC出现智能合约安全问题,造成BEC价格大幅波动。经美链基金会研究决定,美链已暂时停止一切交易和转账。”
瞬间飞走的60亿元
BEC的这场智能合约bug,被很多人解释为美链幕后的绯闻老板蔡文胜的报应——“割人者,人恒割之。”
据媒体报道,4月22日,有人在群里称“Beauty Chain美蜜代码里面有bug,已经有人利用该bug,瞬间转移了57,896,044,618,658,100,000,000,000,000,000,000,000,000,000,000,000,000,000,000.792003956564819968个BEC”,这些数量的BEC价值60亿元。
除去利用漏洞被转移的BEC,该漏洞造成的大额交易还引起了其价格的大幅度波动。按照BEC总量70亿枚的设定,当日均价为1.84元,计算下来美链 BEC的正常市值为129亿元。但按照闪跌最低价0.137元计算,其市值仅为10亿元,缩水近120亿元。
图片来源:dapdap区块链
BEC在巅峰时期市值最高曾达到350亿美元(合约人民币2208亿元),相比美图公司440亿港币(合约人民币355亿元)的市值整整高出5倍。但开盘的疯狂期过后,至2月26日,其价格为0.61美元,相比最高点已经跌去87.8%,市值也下跌至42.7亿美元。
但显然,此次漏洞具有更大的影响力,除去瞬间被转移的60亿元Token,还导致BEC市值大跌近94%,最大蒸发额近120亿元。
智能合约漏洞曝出后,OKEx和美链都迅速在官网发布相关公告。
OKEx在《关于OKEx暂停BEC交易和提现的公告》中称,“2018年4月22日13时左右,BEC出现异常交易,应BeautyChain (BEC)项目方的要求,暂时关闭BEC/USDT、BEC/BTC、BEC/ETH的交易和BEC的提现,具体开放时间另行通知。”
随后,美链在官网公告称:“由于美链token BEC出现智能合约安全问题,造成BEC价格大幅波动。经美链基金会研究决定,美链已暂时停止一切交易和转账。该安全问题不会影响到用户钱包中的BEC数量,我们也正在与交易所OKEx积极沟通,尽快恢复BEC交易。”
两则声明中同时强调了时间“2018年4月22日13:18”这个时间点。美链的公告中,声将采取尽快发布新的智能合约、与OKEx交易所达成一致,回滚交易至4月22日13:18、新的智能合约会与BEC进行1:1映射。
交易回滚意味着,上述时间后,美链上产生的所有交易将会被取消,购买BEC的数字货币将会被原路退回。发布新的智能合约1:1映射则意味着将有一个新的币种生成替代BEC,其总量也为70亿个。
一般情况下,替代的代币出现,原有代币作废,但美链官方对于BEC的处置方式未作进一步解释。并且,对于Beauty Chain基金会所提及的回滚交易等措施,OKEx的公告中只字未提,甚至对于智能合约的bug也未作具体解释。
程序bug引发的美链泡沫
事实上,60亿元瞬间被转移走的缘由,是一个简单的程序Bug。而大众在意的点,则是智能合约里不可修复的规则。
转账记录显示,价值60亿元的BEC被转至两个账户。该操作属于BEC智能合约的漏洞,即原始程序代码出现错误,导致BEC设置的值超过了取值范围,而利用漏洞转出token总量大于token实际设定的数量发生,又被称为“溢出”。
“这就相当于两个人之间的转账。如果你给我转100块钱,首先你得有100块钱。”业内人士称,一般跟金钱挂钩的代码,是重中之重的,要多次检测的。这次智能合约漏洞程序代码的每一个数据类型都是有范围的,若范围是1-100,那么101就和1是一样的。如果在转账的时候,没有进行safeMath判断,情况就是 101和1是相等的。如果加了判断,101就是报错。
“你想象成一个圆,转了370度和转了10度是一样的结果。如果代码没有漏洞,他就只允许你转360度以内。为了不让他转370度,用到了safeMath方法。而程序员没用到这段代码,所以出了这个漏洞。”
这次BEC合约bug的发生,就是因为报错代码提示的错误,使得程序继续执行交易。“实际上就是你没有100块钱,给我转账的时候,我却真的有了100块钱。”
目前,美链BEC的价格定格在1.8元左右,相比其上线交易所首日,价格从开盘时的0.0923美元飙涨5317%至5美元(合约人民币32元),现在的BEC价格已缩水94%,近2月内市值最高蒸发2114亿元。
尽管蔡文胜仍然否认自己及美图与美链BEC的关系,多位币圈人仍然认为美链BEC“就是蔡文胜的币”。大众此时好奇的是,此次大失血后,蔡文胜的区块链梦、或者说是韭菜梦,是不是要凉了?