一、智能合约发展现状
首先我们来一起看看现在智能合约发展的一个现状:在过去一个月当中,智能合约的数量每天还在以1317个的平均增长率高速稳定的增长着,这和我们所理解的“区块链现在处于寒冬的时期”不太一样,其实智能合约的增长率还是比较稳定的。
现在智能合约比较多的应用在一些基础设施、商业零售、游戏以及社交媒体和通讯领域中。
二、智能合约安全现状
从17年9月到18年6月,智能合约的漏洞频繁爆发,每次漏洞爆发都带来了大量的资金损失。这使得一些区块链开发者、智能合约的开发者或者一些用户对智能合约安全性产生高度的质疑,也阻碍了以太坊之后的一些发展。
除了基本的智能合作安全,现在DAPP的安全也是受到了极大的关注。比如说FOMO3D在兴起的时候,仅仅在第二天就出现了大量的山寨合约、山寨的游戏。在这些游戏中,开发者巧妙地更改了资金分配的逻辑,使得玩家在玩FOMO3D游戏的过程中,投入的资金其实大部分都是流向于这种山寨合约的开发者的,这对DAPP的发展有了极大的阻碍。
现在我们共同面临着一个问题——如何保证海量的智能合约的安全。
三、智能合约自动化审计方法
我们来回顾一下现在智能合约的情况。截止到昨天中午12点,据统计,现在共有193万个智能合约,并且一直保持着稳定的日增长率。现在的审计方法有人工的攻防审计以及自动化的审计。
在海量的智能合约中,最好的一种设想就是要降低人工审计的一些复杂度,从而更多的通过自动化审计来进行。
我们把自动化审计分为三个部分:
第一种就是特征代码的匹配,第二类就是基于形态化验证的自动化审计,最后一类是基于符号执行和符号抽象的自动化审计。
1、特征代码匹配
我们首先看这一项,特定代码匹配。大家从名字上来看应该就能理解到,其实它就