时间:2022-01-23|浏览:501
从项目安全的角度来看,如果解决了代码问题,真的能保证项目的安全吗?
我不这么认为。作为项目的一个非常重要的一点,智能合同不容忽视,但智能合同中还存在一些其他问题。一个项目不仅包括智能合同,还包括技术团队、白皮书质量和社交网络舆论,这可能会对我们的项目安全造成一定的风险。
例如,在技术团队中,我们统计有许多技术团队欺诈。这些简历实际上是不真实的,或者白皮书的相似性很高,但质量很低。
再到羊毛收集现象,一个项目的空投,一个地址,可以收集很多硬币。例如,在官方地址下,输入一些使用这些官方名称的以太币,假装发现一些空投,然后欺骗正常用户。
因此,我们认为区块链安全是一种多维安全。从智能合同或代码的角度来看,光线并不能保证整个项目的安全。我们应该更多地结合大数据技术或人工智能技术npl测试项目安全性的自然语言分析技术。
智能合约的自动审计
在我们统计的数据上,现在的智能合约已经达到20万之多。单纯的从第三方的人工角度审计来说,可能已经跟不上合约发展了,所以自动化审批现在也是大家比较关注的。
自动化审计可分为三种类型。一是基于特征代码的匹配,二是基于形式化验证的自动化检测,三是基于符号和抽象的自动化审批。
与传统的特征代码相似,智能合约的特征代码匹配是我们通过匹配检测模块的源代码来检测和抽象的。
然而,智能合同仍然存在一个问题。事实上,合同在公共网络上并不总是明确的。据我们统计,只有40%左右是明确的。因此,对于特征码匹配,我们可能需要结合一些逆向来匹配一些特征码,因此很难说。
我们来介绍一下基于符号执行和抽象的自动化检测。目前有很多这样的检测工具,比如知名的Mythril、Oyente、Maian,以及其他符号执行工具。事实上,智能合同的源代码是通过SOC编译成编译器OPcode,也就EVM,类似于汇编执行的操作码,然后通过CFG建立(控制流程图),通过这种建模形式将其转化为图纸,让我们更清楚地理解opcode例如,当判断出现时,我们可以更清楚地分析这些问题。
最后,我们可能是对符号抽象的分析Securify,在智能合约和其他源代码有很大的不同,是智能合约代码耦合很低,我们原来的代码耦合很高,所以在智能合约检测中,我们可以测试个别模块,每个模块建模,然后匹配一些恶意攻击。
这与传统资本自动化检测分析不同,Securify这样,我们就可以完成抽象分析符号的测试。
用戶喜愛的交易所
已有账号登陆后会弹出下载