一行代码蒸发64亿,智能合约不安全?

4月22日中午,有黑客利用以太坊 ERC-20智能合约中BatchOverFlow漏洞攻击BEC(美链的代币“美蜜”)智能合约,成功向两个地址转出了天量级别的 BEC代币,导致市场上海量BEC被抛售。此事使得当日BEC的价值几乎归零。64亿人民币瞬间蒸发。

4月25日,仅仅三天后,另一个智能合约SmartMesh(SMT)曝出漏洞,交易所表示,因SMT出现异常交易,各交易平台暂停SMT的充提和交易。

现实世界里,财物失窃尚能够通过立点击打开链接案侦查追回损失。但是在互联网的世界里,尽管数字货币“钱途”无量,一旦被黑却血本无归。

智能合约,是指以数字形式定义的承诺,合约参与方可以在上面执行这些承诺的协议。简单来说,就是利用区块链的技术,大家共同约定,当一定条件被满足的情况下,可以被自动执行的合约。目前区块链最常用的智能合约平台是以太坊,谁都可以根据以太坊的ERC20标准分发代币(Token)。

一行代码蒸发64亿,智能合约不安全?_第1张图片

美链BEC于2018年2月在虚拟数字币交易平台OKEx上线,曾被业内认为是美图发行的数字货币,但美图否认了这点,只承认有合作。但因有此渊源,上线后,价格一度暴涨40倍。出现异常的4月22日,BEC当天最高价为2.27元,最低价0.137元,价格最高浮动率达94%。

浙江台州的蒋先生进入币市5年,接触数字货币十余种。此次BEC合约漏洞被攻击,也是蒋先生第一次遭遇这类事情。4月22日中午,蒋先生以每个币0.32美元的价格入手了2000个BEC币(价值约4000人民币),没想到时隔不到一个小时,币价跌近0元。

据《IT时报》记者了解,这是基于ERC20标准的代币首次出现智能合约漏洞,而造成如此大损失的原因仅仅是程序编写者自身不严谨,调用函数时一行非常简单的代码写错所致。

从事区块链安全防护的众享比特市场总监陈鸿刚告诉记者,在智能合约中,设计者一般会在代码中插入一笔转账函数,这个函数应当保证转出的账目小于等于钱包中原有账目。但是此次BEC出现的漏洞,使转账者在设计一笔特大转账数额时,函数计算结果为0,这就导致黑客可以向自己的钱包中转入任意巨额的数字货币。

一行代码蒸发64亿,智能合约不安全?_第2张图片

据悉,其实很多虚拟货币交易在过程中都出现过安全问题,事后的解决方案大多是回滚,也就是将交易数据回溯到攻击之前的状态。这样的补救措施只能使用户账户中拥有同样数量的新币,但因为攻击导致BEC币价大跌,事实上,用户并没能真正挽回损失。

此事发生后不久,PeckShield团队利用自动化系统扫遍了以太坊上诸多智能合约并对它们进行分析。结果发现,有超过12个ERC-20智能合约都存在BatchOverFlow安全隐患。

之所以如此多的智能合约出现同类漏洞,其背后是混乱的数字代币发行现状。

一位从事区块链技术的创业者告诉《IT时报》记者,一个程序员只要花5分钟,从网上抄一些智能合约代码,稍做修改,就可以发行一个代币。如果再写个白皮书,找几个知名顾问站台,就可以在数字货币交易所里发行几千万甚至上亿的项目。

那么问题来了~:
1、你有参与过买卖数字代币吗?对数字代币的未来怎么看?

2、ERC-20智能合约出现这样的漏洞,对其他数字代币会有什么样的影响?

3、发行数字代币的技术成本如此之低,是否是导致数字货币乱象的根本原因?

4、除了数字币以外,智能合约漏洞的出现会不会影响到其他区块链项目的发展?为什么?

参与话题

奖品区域 活动规则 27天后 结束

  • 奖品一

    阿里云代金券 x 5

  • 奖品二

    手机话费 x 3

    一行代码蒸发64亿,智能合约不安全?_第3张图片
  • 奖品三

    定制保温杯 x 1

    一行代码蒸发64亿,智能合约不安全?_第4张图片

22个回答                         按默认排序                         按时间排序                     

1

微wx笑 

1、你有参与过买卖数字代币吗?对数字代币的未来怎么看?
没有,数字代币将来应该属于国家层面的,法治化。
现在的数字代币没有任何法律保障。

2、ERC-20智能合约出现这样的漏洞,对其他数字代币会有什么样的影响?
影响肯定有啊,区块链也不是绝对的安全,让大家更理智的去看待吧。

3、发行数字代币的技术成本如此之低,是否是导致数字货币乱象的根本原因?
成本如此之低不是根本原因吧,原因是疯狂敛财,一夜暴富的梦吧!

4、除了数字币以外,智能合约漏洞的出现会不会影响到其他区块链项目的发展?为什么?
智能合约是区块链技术的特性之一,所以肯定有影响。
建立信任可能需要十年,而反之可能只需要一天甚至更短。

1

嘉德game

1、你有参与过买卖数字代币吗?对数字代币的未来怎么看?
没有,虽然比特币最近很火。 和通用的货币相比,货币是国家发行的,肯定的更有保障。目前购买数字代币的主要目的可能还是在炒作,低买高卖赚差价,就如同炒股一样,有收益必定有风险。 未来的数字代币,可能会由国家等可信任的单位来发行,有明确的权责主体,有明确的信用体系,风险体系等,就和股票类似。 
2、ERC-20智能合约出现这样的漏洞,对其他数字代币会有什么样的影响?
最大的问题就是不信任,很多人会开始担心自己持有数字代币,会不会也存在这样的漏洞与隐患,担心越来越多的代币会遭到黑客攻击。
3、发行数字代币的技术成本如此之低,是否是导致数字货币乱象的根本原因?
发行技术成本低,导致很多存在安全漏洞的代币得以发行,数字货币乱象最重要的问题是缺乏监管,缺乏监管的地方,一定会出现乱象。
4、除了数字币以外,智能合约漏洞的出现会不会影响到其他区块链项目的发展?为什么?
我觉得可能不会有太大的影响,因为区块链是存储的数据多副本,区块间相互印证的存储技术,解决的是信任问题。智能合约是通过区块链技术实现的,智能合约有问题,不代表区块链有问题,就像用java开发了一个应用存在bug,不代表java是有问题的,也不会影响其他人用java开发应用。

你可能感兴趣的:(java)