金色财经现场报道,4月10日,由金色财经主办,波场TRON总冠名,HBTC、SumSwap、SubGame首席合作企业的“2021共为·创新大会”在上海举办。大会以“DeFi的创新进阶”为主题,汇聚百家优秀区块链企业和众多行业大咖,共同探讨Defi生态、波卡、NFT、交易所公链、ETH 2.0、Layer2六大赛道话题。
在下午的“DeFi+NFT”主题专场,Fairyproof TechCEO谭粤飞做了《小白用户如何读懂DeFi合约的审计报告》的主题演讲。谭粤飞在演讲中指出,2020年DeFi安全损失超过2亿美金,这些安全事故大多来自对智能合约的攻击,智能合约的安全事故较多,原因有三:第一个是智能合约本身,第二是区块链技术特点,第三是社会因素。首先智能合约一旦部署,不能被撤回。其次区块链结构使项目方无法知晓攻击者的社会身份以及交易不可逆。最后是智能合约应用的社会约束比较缺乏,例如缺乏对数字资产的保护,缺乏对区块链应用的约束和规范。
以下为演讲详情:
谭粤飞:今天我和大家分享的主题是如何阅读DeFi合约的审计报告。当我们说到审计报告的时候,事实上我们谈的是DeFi的安全,我们谈安全的时候,很多时候觉得这个概念比较抽象,所以,我给大家展示一些数据。
整个大饼是2020年整个一年所有和区块链安全事故所引起的损失,所有的损失,请大家注意看,其中光DeFi左边红色区域是DeFi损失,2.38亿万美元,占整个区块链安全所引发的损失40.9%,几乎接近一半。在2020年之前,DeFi安全的事故远远没有这么夸张,但是DeFi的出现导致安全的事故如此严重。
还不是这么直观,我们再看一些更具体的事例,我们从底下看起,2020年12月26日资金池的资金被转移,2020年12月21日被攻击,2021年1月份寿司被攻击,2月份WFI又被攻击,我罗列的数据不是指出这些项目本身怎么样,我是想要让大家注意,这些项目被攻击的时间点,大家有没有发现从2020年10月到2021年3月,每个月都有一个比较知名的DeFi项目受到供给,足以说明安全事故在DeFi领域发生的频率和频次多么高。
安全事故的频发不仅仅项目方的声誉,直接影响投资者的利益,接下来,我和大家分享一下为什么智能合约安全事故这么多,他是由特殊的因素所确定,我们Fairyproof Tech团队认为,出现安全事故的原因主要有三个因素,第一个智能合约本身运行的机制,第二个区块链技术的特点,第三个智能合约应用的社会约束。
我们首先来看第一个智能合约本身运行机制,智能合约有一个非常大的特点,和我们传统的IT应用有一个什么样大的特点,我们使用比较传统的应用的时候,我们使用一个游戏或者是APP,我们使用过程当中突然有一天项目方告诉我们,这个APP发布一个公告,这个APP有问题,在这种情况下,项目方把APP从APP商店里面下架,让大家使用旧的版本,他们把有问题的版本撤下去修改完善之后使用新的APP,但是在区块链领域,以太坊领域,一旦智能合约理解成为是一种APP,部署到以太坊上面以后,他是没有无法被撤退,这是不能像传统的IT里面的应用被撤回,一旦智能合约开始执行的时候,这是不可逆的,或者我们可以理解,我们发现有问题的智能合约部署到以太坊上面,漏洞被黑客发现,黑客利用漏洞攻击它的时候我们眼睁睁看到资金池里面的资金被盗走,我们无能为力,我们在传统领域,把服务器关掉,但是在以太坊上面,这样的事情是不能发生,我们不可能把以太坊关机。
演员陈柏霖Instagram头像更换为Mutant Ape Yacht Club作品:8月31日,演员陈柏霖Instagram头像更换为Mutant Ape Yacht Club作品。[2021/8/31 22:50:17]
我不知道大家注意到推广以太坊的时候,很多人不理解以太坊是什么,他用简单的一句话,以太坊是永远不停歇的世界计算机,永远不宕机,一旦运行无法停下来。
第二点跟区块链技术本身相关,我们谈到区块链技术的时候,我们首先看看区块链技术的第一个应用就是比特币,我们最早说比特币至今很多人比特币的时候想到第一个特点是匿名,当然如果按照纯技术的观点来讲,这是伪匿名,做到拟匿名的情况下,在某种情况下把个人真实的信息进行了隐藏,匿名是什么意思,我们在区块链里面进行每一笔交易的时候,我们在所有的可公开查询的资料里面,我们只能看到发起这笔交易或者是参与交易的这些地址,但是我们没有办法把这个地址和执行这笔交易的持有这个地址的人在社会生活当中的真实身份挂钩。我们不知道这个地址背后的持有人是谁,他叫什么名字,它的身份证号是多少,他在哪个国家,所以因为这个原因他是匿名的,这样导致了我们在区块链里面,在智能合约里面一旦发生安全事故,我们知道有黑客攻击我们只是看到攻击的地址,我们不知道地址后面的持有人是谁,我们不知道黑客真实的社会身份是什么。
刚刚我讲的智能合约本身的技术特点,还有区块链技术特点,导致安全事故非常特殊的特点,从技术角度考虑,还有一个角度我们平时各个公共场合大家提到比较少,但是在我们团队看来恰恰也是目前最复杂最难掌控的地方,这就是社会约束。
我在这里罗列两条,现有的法律法规缺乏对数字资产的保护,当我说这个问题的时候有朋友说,在我们国家关注到最近一两年关注数字货币法律的信息会说,我们国家在民法典出台具体的措施,保护数字资产,但是请大家注意,这样的一些条款和民法典里面,不管是我们国家的法律以及世界各国的法律,对传统资产的保护力度和广度跟他们相比是无法相比的,所以现在全世界各国对数字资产的保护,在法律上面都是不规范,不完善,不完备。
第二点现有的法律缺乏对区块链的应用和监管。现有的法律对所有的传统应用,互联网应用也好,他有一个约束性,有一个规范,但是这样的法律对智能合约的规范,目前在全世界任何一个国家几乎一个都没有,最近在美国,美国的某些州已经成人智能合约的某些法律效应,但是这是吃螃蟹而已,只是尝试而已,真正在具体落地或者是未来实现过程当中存在什么问题会产生新的问题或者是新的方式,我们目前都不得而知,在这方面也是一片空白。
所以,智能合约本身的问题,区块链技术本身的问题,以及智能合约应用缺乏的社会约会导致智能合约的安全有非常特殊的地方,所以,造成的事故这么频繁,造成的危害这么大。
刚刚我跟大家分享的是安全的一些特殊性,下面我和大家分享一下我们团队目前对所有在智能合约安全领域发生的事故我们一般分成三类,第一类是已知风险,第二类是潜在风险,第三类是人为风险。
什么是已知风险,已知风险我们现在在技术领域技术团队或者是业界根据以往所有发生的安全事故所总结出来的一些安全的特点,一些事故的特点,总结出来的一些规律,我们知道了这些规律,知道了这些事故的特点和特性我们很容易判断,所以我们称之为是已知的风险。
潜在的风险是什么,这些风险从来没有出现过,或许在我们运行的智能合约里面,但是我们不知道,或者说这些风险暂时因为条件不成熟,还没有被触发,这是潜在风险。
第三个是人为风险。我罗列了11个风险,实际上,并不是说在智能合约领域只有这11个风险,我罗列这11个风险,这是目前出现比较频繁的风险,而且我们见到比较多的风险,具体到每个风险,在业界有很多的分析和讲解,在这里我不和大家细说。
我们举一些更详细的例子讲讲已知风险和潜在风险和人为风险。我们看看这个风险,在座的朋友们有没有在2018年4月份之前上一轮进入币圈(有),那一轮的牛市疯狂,疯狂到什么地步,不仅很多小白用户进来,而且传统的IT界的大佬在这个领域,美链跟某一位传统的IT公司有非常深的关系,他做了什么事情,他发布一个智能合约出现一个重大的安全漏洞,什么漏洞?在一行代码计算过程当中没有使用安全的数学库,导致计算溢出,溢出导致的代币被巨量增发,导致价格暴跌。这是2018年4月22日。
在此之前可能这样的事故叫做潜在风险,现在这个事故发生以后,在业界我们用技术分析出来出现安全事故的原因以及可能出现的征兆和特点,我们现在称之为已知风险,这是已知风险的典型。
第二个案例,2020年312,比特币和以太坊全部报铁,比特币跌到4000美元以下,以太坊跌到100美元,在比特币和以太坊暴跌以后,MakerDAO出现疯狂挤兑的机制,最后发现是机制设计的问题。
接着红薯被攻击,20206年6月份,YAM被攻击,红薯这个项目非常有名,这个项目被攻击以后,它的创始人在推特上面发了一段话,对不起,我们失败了,这么大的事故是怎么产生的,主要是因为逻辑运算中缺乏分母,就是这么简单。
第三个案例,是YFI是去年一整轮过程当中,运行大半年没有出现问题,今年二月份出现问题,这个事件的出现是因为出现了一个应用方式善待贷导致稳定币的价格被操控。还有TSD被攻击,我们审查合约代码的时候,如果不是对逻辑理解特别深刻,红薯被攻击的除法算法不对,几乎很难被发现,另外三个更加困难,是治理机制出现了问题,而不是代码的问题,这个问题更难发现,对于这样的问题我们归结为潜在问题,潜在的问题以前有,今天有,未来还有,甚至包括我们所有运营的这么多合约上面,虽然很多都通过了很多公司的审计,但是我们依然担心里面还存在着很多潜在的大量的隐患,只不过这些隐患由于条件不成熟,没有被触发而已。潜在问题是对整个安全行业以及整个区块链行业最大的挑战,也是我们着力最重的地方。
还有一个是人为风险,因为时间有限,后面的内容我讲快一点,人为的疏忽跟代码的关系更少,几乎是因为人为的管理方面出现问题,我前面讲了安全的特殊性以及安全有哪些问题,下面我和大家讲一个非常重要的事项,也就是说,我们作为智能合约的审计公司,我们最重要的事情是做什么,就是为项目审计智能合约代码,看里面有没有安全事故,我刚刚在展台的时候有很多朋友过来问我们,你们写的这些报告对我们普通投资者小白来说到底有什么作用,我在这里讲,作用非常非常大。很多小白用户看到我们写的报告,这是技术文档,虽然是技术文档,但是里面有一部分内容非常通俗易懂,并且跟你的利益密切相关的。
在我们的报告里面这部分关键的内容就是我们整个审计报告里面的第一章,在我们审计报告当中的第一章,我们会开宗明义写这个项目是做什么的?这个项目的合约有什么功能?以及在我们审查过程当中,我们发现这个项目的风险没有?所以,对于任何用户而言,当你看一个项目的时候,如果这个项目有我们的审计报告,我个人建议处于你对自己投资利益的保护和自己利益的关心,无论如何你要看一看审计报告,当你拿到这份审计报告的时候,你可以不堪其他的章节,但是一定要看第一章,看完第一章,基本上不用花5分钟的时间你就能够明白这份合约安全不安全或者说这个项目通过我们公司审计的时候发现存在的问题,项目方是怎么处理这些问题,起码可以看到项目方对于处理问题的态度,对于你投资项目而言是参考的作用。
所以我强调审计报告一定要看,如果各位拿到是我们公司出的审计报告,关于技术部分不用看,但是一定要看第一章,第一章报告是我们对整个审计过程的精华和总结,看完第一章不需要5分钟,5分钟时间内大致理解这个项目做什么,合约是干什么的,安不安全,以及在审计过程当中出现什么问题。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。