目前基于以太坊的Token合约风险主要有两种:
一是自己写的智能合约出现漏洞, 被人攻击。以太坊作为一个记录DAPP执行结果的区块链, 对于基于合约层的智能合约,需要依赖开发者自己来保障其安全逻辑,一旦合约编写者一时粗心,便可能造成一失足成千古恨的后果。例如18年4月22日BeautyChain出现重大安全漏洞,价值几乎归零,BEC凭空蒸发了10亿美元,事后证明是程序员忘记做溢出检查。
二是合约调用的底层合约出问题,间接产生风险。合约层是一台封装了可以执行图灵完备脚本语言的虚拟机,可以通过编写脚本语言作为智能合约部署到以太坊区块链中。去年,一个叫做“devops199”的开发者触发了以太坊Parity钱包漏洞,漏洞出在钱包调用的一个library(以太坊的底层库函数,可以理解成公用合约)上。因为以太坊的合约调用是把地址当指针使用,每次执行用户编写的智能合约都要调用library。“devops199”把底层库函数破坏的同时相当于把所有合约的指针都破坏了,从而使得所有钱包里的资金被永久冻结。
微博研发副总经理Tim Yang曾表示,“为什么以太坊比较容易出安全问题?以太坊只是一个记录DAPP执行结果的区块链,其本身并没有加密货币复式记账所需的UTXO模型。重要的TOKEN资产本身是需要货币级别的安全程度,以太坊目前的设计更适合游戏积分之类的合约运行结果。” 他还强调,重要的TOKEN资产不适合构建在ERC20体系基础之上。
那加密货币复式记账所需的UTXO模型的区块链项目有哪些,在安全性上又有哪些优势?
比特币的UTXO模型经过了多年较为稳定的运行和测试,性能和安全性都有较大的优势。而以太坊的账户模型理解起来比较容易,但是需要考虑更多复杂的临界情况来防止双花攻击和重播攻击。另外做资产交易的量子链和比原链也采用了UTXO模型。
其中使用扩展UTXO模型BUTXO的比原链,把资产作为新的UTXO形式进行交互,不仅支持无限种类的资产,而且拥有了图灵完备的智能合约。同时杜绝了以太坊帐户模型所存在的数据溢出,或者各种其它漏洞的出现,兼具灵活性和可控性。