Furein:一文看懂区块链安全6大分类3大问题
Furein讯2018年8月6日,Furein看到腾讯安全发布《2018上半年区块链安全陈说》,Furein说闪现,现在在全球范围内,已出现了1600余种加密数字钱银,Furein从一则数据2018年上半年,区块链领域因安全问题丢掉超27亿美元,并且因区块链安全工作丢掉的金额还在不断攀升。从IOTA“邮件门工作”、USDT“假充值缝隙”、EOS“彩虹侵犯”,到BEC与SMT“整数溢出侵犯缝隙”、BTG“51%算力侵犯”等等,这一系列的工作引发了我们的广泛注重与考虑。
区块链安全挟制主要有哪些?为什么智能合约的安全问题如此重要,会引起这么多人注重?智能合约的安全类型有多少种?现在干流的安全监测方法有哪些?最有用的方法又是什么?我们怎么能取得安全无缝隙的智能合约代码?针对这一系列问题,阿尔法公社(微信群众号:alphastartups)对安比实验室(SECBIT)创始人郭宇进行了采访,为我们系统介绍区块链工作安全问题及干流处理计划。
二、区块链安全六大类型
从安全角度来看,区块链技术可分为五层,相应安全问题则为六大类。
链圈必读:一文看懂区块链安全6大分类3大问题
区块链2.0版别技术架构

第一层,密码学。密码学是区块链最底层的支撑技术,包括了哈希算法、数字签名、随机数等,假设这些密码学技术存在问题或许缝隙,那么根据此的整个区块链构建的信任将会坍塌。
虽然现在密码学技术现已较为老到,存在巨大缝隙的或许性比较小,但是仍然不打扫一些项目存在问题。2017年7月15日,具有“物联网国际第一币”之称IOTA收到了麻省理工学院从属的学术研究组DCI的邮件,提示IOTA团队,IOTA的哈希算法Curl-P存在缺陷,DCI可以对该系统进行成功的侵犯,盗取用户资金。虽然IOTA随后对DCI的邮件进行了质疑和争辩反驳,到现在为止,也没有用户因为此缝隙而发作资金被盗的情况,但这一工作引起了我们对IOTA和其他项目在密码学技术安全上的注重。
链圈必读:一文看懂区块链安全6大分类3大问题
第二层,用户私钥的生成、运用与保护。用户参与区块链的凭证是一对公私钥,每个人通过区块链发作交互行为的条件就是他具有安全的私钥、并且能保管好自己的私钥,因此私钥的生成、试用与保护问题就非常重要。
本年7月,EOS就因私钥生成东西存在安全风险,创建的私钥被黑客发现缝隙,并实施“彩虹”侵犯,导致账户数字资产被盗,构成上千万数字资产丢掉。
第三层,节点系统安全缝隙。这一问题归属于传统安全领域,比如区块链节点不能存在缓冲区溢出等传统的安全缝隙。其他区块链节点的结束要能忠实地正确结束区块链的共同协议;节点不能显露不该显露的API接口,导致黑客可以无障碍的获取一些节点要害信息。不论是以太坊仍是EOS都早年被爆出过比较严峻的安全缝隙。这一部分安全也是至关重要的。
第四层,底层共同协议。现在市场上干流的区块链共同协议有以下几种,POW、POS、DPOS、PBFT。底层共同协议抉择了区块链整个架构是否可信,能不能实在做到构成一个具有共同的区块链。现在实在被证明安全的共同协议并不多,因为共同协议本身不论从理论、仍是从技术结束上都不简略。而通过长时间验证的共同协议是比较安全的,比如像比特币的POW。 共同协议有一个不可能结束的三角联络:安全、去中心化和功率,这三者只能一同结束两样。假设寻求功率,要么牺牲去中心化,要么牺牲安全。
一个区块链系统的共同协议是不是安全这个问题至关重要。
理论上,根据底层共同协议创建的全部数字钱银都是存在51%算力侵犯风险。本年上半年,就有至少4种数字钱银分别受到了51%算力侵犯,分别是Monacoin、Bitcoin Gold、Verge和Electroneum,给用户构成数千万美元丢掉。
链圈必读:一文看懂区块链安全6大分类3大问题
美剧《硅谷》中“51%算力侵犯”
第五层,智能合约。智能合约是一套以数字方法定义的承诺(promises),包括合约参与方可以在上面实行这些承诺的协议。任何参与方都能在运用层创建合约,也就是所谓的DAPP(去中心化运用)。这也是现在出现安全问题最多的当地。
智能合约安全风险包括了三个方面:第一,有没有缝隙。合约代码中是否有常见的安全缝隙。第二,是否可信。没有缝隙的智能合约,未必就安全,合约要保证公平可信。 第三,符合必定规范和流程。因为合约的创建要求以数字方法来进行定义承诺,所以假设合约的创建进程不可规范,就简略留下巨大的风险。
现在市场上许多智能合约均存在安全缝隙问题,比如,6月3日,安比实验室(SECBIT)发现Ethereum上出现81个合约带有相同差错,ERC20 Token合约中的transferFrom函数存在巨大风险,一旦安置后出现问题,将构成不可解救的丢掉;6月6日,安比实验室(SECBIT)发现ERC20代币合约FXE因为业务逻辑结束缝隙,任何人都可以随意转出他人账户中的Token,Token随时面临彻底归零风险。
链圈必读:一文看懂区块链安全6大分类3大问题
作为区块链工作从业者、智能合约运用者或是加密钱银具有者,应该学习相应的密码学和智能合约编程知识,切不可随意拷贝运用触及资金安全的合约和公私钥等的代码。假设恶意侵犯者,将带有严峻缝隙的代码揭穿在网络上进行传达,诱导技术开发才华缺少的安排运用,将会给运用者构成毁灭性冲击和不可解救的丢掉。
第六层,鼓舞机制规划。智能合约要结束协作,一般是要规划相应的经济鼓舞机制。经济鼓舞是区块链技术里面非常有突破性的一个概念。一个实在健康有活力的区块链生态,需求一个很好的鼓舞机制。但是经济鼓舞规划得不可安全,或许生态就无法制作起来,比如典型的类庞氏游戏,这一点我们要警惕。
三、智能合约三大问题
前面介绍的六层区块链安全问题,都是依托相应的技术层级来区别的,越底层的技术越安稳,比如密码学从一初步选定之后,就不会简略改动。
智能合约因为比较活络,任何人都可以创建,所以相对简略出安全问题。
任何用户都能创建一个有共同基础的合约,就好像是每个老百姓都可以根据某部法则写一份合同,这个法则是一种共同机制(途径),这个合同也是有内在的捆绑条款,运用DAPP就像签订合同,全部行为都要按照这个合同条款实行。因此,智能合约的安全风险,直接联络到用户的产业丢掉。
到现在为止,安比实验室(SECBIT)发现了市场上智能合约的三大问题:
第一,以整数溢出为代表的安全缝隙。安全缝隙一般是被写代码的人不小心引入的,它或许引起合约某些功用部件失效,最严峻的情况,或许导致黑客侵犯、用户丢币、甚至黑客随意造出来许多的币。比如BEC、SMT、EDU,早年就因整数溢出安全缝隙,被黑客侵犯然后导致币值归零。
第二,智能合约权限控制。一般智能合约里会设置一个管理员,管理员一般具有超级权限,这类合约的安全风险比较大,因为一旦管理员的私钥被盗用,很简略构成巨大丢掉。据安比实验室(SECBIT)不彻底统计,排名前570名的Token合约中,有342个合约存在只需管理员能调用的功用(Only Owner),不少合约更存在管理员任意铸币、烧币、冻住账户、关停转账等过高权限 。
本年7月10日,加密钱银买卖途径Bancor称遭到侵犯,丢掉了当时折算法币金额为1250万美金的以太坊、1000万美金的Bancor代币和100万美金的Pundix代币。通过我们分析发现,这次Bancor途径被盗工作就是与BancorConverter合约有关,侵犯者(黑客/内鬼)通过获取了管理员账户的私钥,借用管理员身份盗走用户的Token,给用户构成巨大丢掉。
链圈必读:一文看懂区块链安全6大分类3大问题
第三,规范性问题。现在许多智能合约的结束并没有共同的规范。智能合约是以交互的方法多人协作,假设合约不规范,简略导致不同人对合约的行为发作误解,然后出现许多的安全问题。
比如,本年接连爆出的“假充值”工作,包括以太坊代币、USDT等,根据一家安排进行的不彻底统计闪现,市场上的单代币合约有3619份存在“假充值”缝隙风险,其间不乏出名代币。
正常情况下,充值进程中转账不成功,账户将无法充值,账户余额仍然是0。但假设合约存在“假充值”缝隙,在转账不成功的时分,系统并不会闪现充值失利(值),买卖所就会误判效果为充值成功。假设有黑客发现这一缝隙,就会一贯进行“假”充值,之后再把这笔钱提出,给买卖所带来直接丢掉。
四、方法化验证的重要性
现在,市场上针对智能合约安全问题的查验方法主要有三种,第一是检验,第二是审计,第三是方法化验证。检验需求程序自动跑,通过各种或许性的输入,检测是否存在整数溢出缝隙等问题。但这个检验一般不可能百分之百掩盖,必定会有丢失存在。审计就是靠专家的专业知识去审理,但再专业的专家也或许会有遗失。前两种传统的方法,并不能保证合约中没有缝隙,但方法化验证能做到这一点。
方法化验证可以处理三类问题,第一类是安全无缝隙:通过数学推理的方法,捕捉、掩盖合约的全部行为,掩盖全部或许性,然后保证合约没有缝隙。第二类是可信:揭穿透明。合约的创建者不只需说了解干了什么事,还要向我们证明代码确实是这么干的。这个也是现在只能用方法化验证才华做得到。第三类是规范性问题。前面提到的假充值缝隙,就是因为以太坊的ERC20规范,写得非常迷糊、不无缺。那怎么样能写无缺呢?这就要求合约的规范就不能用天然言语,或文字描述,而是应该引入方法化规范,用一种数学逻辑言语来严峻定义。
方法化验证在工业界、尤其是安全系统相关领域,现已有了许多运用案例,比如航空航天、高铁、核电等工作,都有专门的团队供应方法化验证服务,其效果与效果早就得到了安全工作专家的认可。
现在,方法化验证包括模型查验和演绎推理两种。安比实验室(SECBIT)在演绎推理方面积累了十几年的科研效果和工程阅历,技术在全球比较抢先。
相对声威和安全的公司,比如Zeppelin和以太坊官网都早年发布过有问题的智能合约代码。假设能有一个更可信,不依赖声威的智能合约代码库,开放给全部人运用,将能很好地处理这个问题。在这方面,安比实验室(SECBIT)现已做了许多作业,并且现在建立全球第一家可信的开源智能合约代码库,便当我们免费运用。
添加新手交流群:币种分析、每日早晚盘分析
添加助理微信,一对一亲自指导:YoYo8abc