赣州新闻网

首页 / 科技

区块链的应用:安全威胁与解决策略

2020-02-05 · 赣州新闻网 · 科技

区块链的应用:安全威胁与解决策略

区块链技术具有去中心化、可追溯性和去信任化等特性,已被广泛应用于诸多领域。然而,人们往往忽略区块链自身的安全问题,较少有相关问题研究及解决方案的成果。文章着重剖析区块链所受安全威胁问题并提出其安全保护措施,从技术风险、内容风险等不同视角阐释区块链所受的安全攻击,在多个层面给出了区块链的安全保护机制} $ k 8 A },尤其对日蚀攻击防御中IP地址信用评价模型进行了思索。最后,从技术和监管两个方面,对区块链技术的发展 } ! ] . I /进行了展望。

区块链技术利用时间顺序将数据区块以链的形式组合而成实现了可追溯性,利用点对点通信技术实现了对等连接,利用分布式共识技术实现了系统数据的一致性,利用加密技术防止数据被篡改或者被伪造,利用智能合约技术实现了交易的自主处理。

通过加密算法、点对点通信技术、分布式共识机制和智能合约技术的结合,构建数据存储和处理的分布式账本技术。由于跨行业融合发展,它也从最初的“为比特币而生”发展为横跨银行、保险、医疗等各行各业的“开拓者”,实现计算机技术于大数据、云计算、互联网时代的“区块链+”创新模式。

区块链的应用:安全威胁与解决策略

区块# + Q x链技术最早被提出是在2008年中本聪发表的论文《比特币白皮书:一种点对点的电子现金系统》中。伴随人们对比特币的重视,作为比特币底层技术的区块链也引起了极大关注。

依据Gartner公布的成熟度曲线图,2016年区块链技术达到顶峰。区块链技术要进一步发展,则必须应用于实际中,否则只是虚的概念。近几年,区块链在多方信任共识、数据存证、溯源防伪等方面呈现较好的发展态势。例如,信息安全方面,当前环境b T [对其提出了高效性、可追踪性和分布式等要求,而区块链的去中心化、不可篡改性和可追溯性正好能够更优地解决身份认证、数据保护和访问控8 { = : m制等方R X f c l 0 # E面的问题。

身份认证是对网络中用户的身份鉴定技术! / V / ~,目前基于数字证书G a n P A的集中式PKI认证面临CA不可信的问题,而基于区块链的分布式公钥管理基础设施(Public Key Infrastractur4 V - h可快速完成交易的确认,使攻击者的交易信息更多地接入区块链,造成区块链的安全隐患。

双花攻击的起因是验证机制,若在控制51%算力的基础上创建新分支来进行交易回滚,即需两次相同资产来得到第一笔交易的资产,从而影响了区块链的完3 d | Q N 7 9 t T整性A k | p e,造成双花攻击。例如,2018年5月,一名矿工通过获T 0 x ~得至少51%的算力,对比特币黄金网络进行双重攻击,从而盗取了超过H I 7 L O 4 l B K388 200个比特币黄金,损失1860万美元。

1.2 智能合约漏洞和智能合约虚拟机漏洞

智能合约实际上是构建信任关系网络中的代码$ - W K,使程序可能出现错误或者漏洞。现存智能合约安全问题包3 g R括存储损K ~ x B漏洞对区块链的众筹项目TheDAO进行攻击,导致6 000万美金的数字3 * j I v v货币被获取。

1.3 DDoSc ; & M ] A Z } Q攻击

分布式拒绝服务(Dsif F { ] * 9 Dtributed Denial of Service,DDoS)是从拒绝服务(Denial of Serp p ) y avice,DoS)发展来的。所谓DoS是指攻击者通过阻止合法用户访问网络资源来达到自己的目的。而DDoS将攻击的网络包从很多的DoS攻击源一起涌| o I k到主机,致使合法请求无法被响应。

区块链的应用:安全威胁与解决策略

在区块链中,DDoS通过向节点发送大批量请求,使造成拒绝服务攻击的威力成倍放大;通过漏洞占用节点的8 % f ) g U V内存,造成系统崩溃。DDoS攻击造成的经济方面的损失只是一部分危害,最重要的是造成信任度降低。

1.4 分叉

分叉问题指的是当区块链的系s X p q %统升级时,共识机制也产生了新协议,已经升级了的节点称为新节点,而没有升级的节点为旧节点。当新节点掌握超过51%算力的时候,出现了链上扩容的硬分叉和采用隔离见证SegWitS t i A C ?软分叉。

硬分叉:发布新的共识机制之后,未升级的节点没有办法验证已经升级的节点所~ ] , ^ d 4 p产生的区块,在此区块链中会有分叉的两条链。一旦出现硬分叉,则区块链的信任度会大大降低。例如,2013年3月,比特币曾发生硬分叉,最终` t S解决方) | 2 u | , * K v案是0.8版本的节: ! Z K ]点退回0.7版本。

软分叉:系统升级时,未升级的节点会产生不合法的区块,造成b W y ^ ] w p F B临时出现分叉,但其有很好的兼容* ( F 1 g性,允许逐步升级,实现平稳过渡,所以对系统的稳定性影响较小。

1.5 日蚀攻击

日v h 1蚀攻击q M $ W ! % f(EclipseAttack)是指攻击者通过修改t j A @ 4 3节点的路由表,将足够多的坏节点_ Q g y K M t ]添加到该节点周围,. I M O H F以独自占有与受害节点的所有连接,控制大量的IP地址,从而造成此节L h ` x b p j点“孤立”于区块链网络之外,然后利用受害者来攻击共识系统,进而造成对抗性分叉、伪造挖矿等,实现网络层面的攻击。

1.6 矿池攻击

1.6.1 自私的挖矿

一组恶意的矿工挖到新块后暂时封锁消息,并且新建一个分叉,而其他矿工并不知道新块的存在而是继续在旧块上挖矿。当恶意建造的分叉长过公共链后,发布其私有的分叉。由于它是最长的,所以被接受,而原有的公s B 6 @ w 0共链被丢弃,从而使其他节点做了无9 q 7 w N 6 ) G #用功。

1.6.2 块扣攻击

矿池中的恶意成员不对外公布挖到的区p Y |块,从而浪费同伴矿工的算) ^ / | b |力,降低所有矿池的收入。

1.6.3 块丢弃攻击

攻击者将多个有较好网络连接的节点放在网络中x j K M ( x 5 + $,实现快速知! e N p道新挖的区块并迅速传送区块。当挖到新块时先不公开,知道其他节点要公布区块时,它立刻公布自挖的区块并快速传播到网络,从而造成合法节点的区块被丢弃。

1.6.4 增加难度攻击

攻击者通过挖矿来增加难度,当其认为难度达到顶峰后,自动离开系统,而剩下的矿工$ F y t面临非常艰难的采矿过程,从而使生成区块的时间大大增大。

1.6.5 链跳跃攻击

攻击者通过难度低时切入、难度高时切出,从而达到最大化利润o l e C e ~ T l,造成块的j 2 2生成时间非常不稳定。

1.6.6 时间戳攻击

攻击者利用恶意时间戳而不是系统时@ 0 W [ L e间来欺骗难度调整算法,使4 s p得具有正确时间戳的块不能被其他节7 6 = 之路”的交易平台利用比特币在网络中匿名交易的特征进行毒品交易、走私军火等非法活动。

2.区块链安全保护措施

2.1 区块链工作过程

发送节点将构造的交易在全网广播,若经接收节点检验合法后,交易被打包成区块。区块头包括哈希值、时间戳、Nonce和前一区块等。Nonce证明矿工完成了工作量,由于包括前7 e O e q ^ . y一区块哈希值,所以构造类似数据结构中的链式存[ O r储结构。接收节点利用共识机制J u H对区块检验,若检验通过则被按顺序T b K L a s添加到区块链中作为一个区块,从而完成{ ( W Q C J 8一个操作,如图1所示。

区块链的应用:安全威胁与解决策略

图1 区块链的工作过程

区块链的安全性首先通过共识机制来管理节点,从而保持不变性,然后用加密技z . U & V * 0术和数字签名技术验证区块链上交易的真实性。

2.2 安全模型

区块链的安全框架模型,如图2所示。

区块链的应用:安全威胁与解决策略

图2 安全框架模型

2.3 数据安全性

在做数据挖掘和数据分析时,有80%的T b h _ q F 时间是用在有效数据的收集9 ~ ( @ a O k &和数据清洗上。有了区块链后6 w V = 9 y L 7,基于区块链的分析和挖掘成本会被降低,区块链的数据保护采用去中心化的数g N r Z 3 H ,据管理系统,通过区块链和外面数据库相配合来实现。区块链的去中心化、加密、P2P等特性,实现保护数据的完整性和未被授权不可V W ? I P访问。个人数据在区块链中转化为密文,当需要用到这类信息时,只需将密文传送过去,接1 F c N /收方f r . y s ~ b H N将信息同区块链上的加密数据对比,不涉及真实信息。

比特币的基础是区块链,而区块链的基础是密码学,通过密码学实现了区块链的防篡改性。具体原理是利用哈希算法在每个区块生成一个包含上一个5 % y [ 3 5区块的哈希值,通过哈希算法具有的正向计算快速、逆向计算较难的特性完成数学签名等的验证I q [ v v F o,实现了安全访问、隐私的保护,如图3所5 K g S 2 4 J Q K示。

区块链的应用:安全威胁与解决策略

图3 区块链s 2 .的数据结构

目前,常用的哈希函数有MD系列、RIPEMD系列和SHA系列。图3中,A0、A1、A2、A3表示用户,通过将前一笔交易和后面那个人的公钥来签一份数字签名,并附加到交易的末尾。非对称加密中的加密密钥是公x z B N . ( Y g开的,称为公钥;解密密钥由用户自己持有,称为私钥。利用非对称加密算法发送信息前,发送方先得到接收方 e _ ` d 2 O的加密密钥,然后使用密钥将明文转化为密文,接收者使用解密密钥将密文还原为明文,通过公钥和私钥分开,使其在不安全通道} Z + $ 6 2 R也可传送,如图4所示。

区块链的应用:安全威胁与解决策略

图4 非对称加密体系结构

由于j & h g PRSA不够安全,区块链中建议用椭圆曲线密码] { + ] {系统(Elliptic CurveCryptosystems,ECC)。通过Hash函数,又叫哈希函数,将任意输入转化成固定长度的输出。Merkel树也叫哈希树,是一种二叉树,如图5所示。

区块链的应用:安全威胁与解决策略

图B T 3 Z = G J l r5 Merkel树

分析Merkel结构可以发现,底层数据的变化会引起父p 6 i d + B m亲节点的变化,进而辐射到树根,最终存储于区块头的值是Merkel根的值。数字签名是由] + + V t ; e非对称密码发展而来的,为不安全通道的发送信息4 G k Q ] T M 7 K提供了进一步保证,使接收者确认信息是由发送方发送的。

2.4 网络安全性

2.4.1 垃圾交易防御

设定最低交易费用,尽量减少垃圾交易量。例如,交易以前在智i Q w Z O { !能合约中存入一些令牌,若发现大批量的垃圾交易,可以通过智能合约没收存款。

2.4.2 Eclipse攻f 2 Z m击防范

为了防止Eclipse攻击,可考虑构建IP地址的信任评价模型,利用18世纪英国学者贝叶斯提出4 3 . 4 = T l的贝叶斯定理,判定一个IP地址是否值得信赖。式(1)是一个条件概率,利用它可以实现对一个事件的重新认识,也称为后验概率。

区块链的应用:安全威胁与解决策略

设IP地址为可信的和不可信的概率分别为0.5:

区块链的应用:安全威胁与解决策略

设B为可信的IP地址的s 0 f 8 f m X 7情况下正常工作和非正常工作的概率分别为0.9和0.1:

区块链的应用:安全威胁与解决策略

设B为不可信的IP地址的情况下,正常工作和非正常工作的概率分别为0.5和0.5:

区块链的应用:安全威胁与解决策略

则正常工作的概率求解如下:

区块链的应用:安全威胁与解决策略

通过一次正常工作其后验概率上升为0.64:

区块链的应用:安全威胁与解决策略

通过分析发现IP地址可通过正常工作提升了系统对它的信任度,当连续正@ m Q m : Q u常工作4次后可以提升T f 5 z D R授权的节点接入网络,T l 4 ! 5 4在联盟链和私有链中使用较多,如超级账本中的节点要经CA认证才可接入。

(2)屏蔽恶意节点

公有链中通过检测若发现有恶意节点,则立刻加入黑名单4 s ] 4 I J B ] E。文献提到一? g ! _种恶意节点的检测方法,可减少恶意节点带来的泄露问题。

(3)数据混淆

区块链在隐蔽的g w ; ;网络中运行,能较好地隐藏IP地址,使恶意节点很难发现网络中真实的II % y 1P地址。

2.5 共识安全性

去中心化是区块链的本质特征,而共识机制* = ) Z I ? 2 C m是去中心化的核心内容。它z @ _ R B是在同一时间内就交易顺序达成共识的算法,用于实现数据和账本的正确记录。共识机制本质上实行少数服从多数原则。

2.5.1 工作量证明

工作量证明(Proof of Work,PoW)是用P y w u ^来证明用户做过一定量的工作,也可以说通过辛勤劳动获得说话权。首先监听网络中的数据,若合法则对其保存,对不同的随机数进行哈希计算的过程中找到合理的随机数,从而! K ^ i i f ~生成区块` F w信息,然后对外广播此区块( | : d x h !。若验证通过,则连接到区块中。这种拼算力获得记账权的方式称为佃农模式。

2.5.2 股权证明

股权证明(Prv I : c )oof of Stake,PoS)是节点记账权的获得难度与节点持有的权益成反比。通常用持有的token时间或token数量来决定,若权益越高,则挖矿o M : Z q c v O S的难度会越低。这种拼财力获得说话权的方式称为地主模式。

2.5.3 授权股份证明

授权H l H L T 4股份证明(Deletated Proof of Stake,DPoS)是指用户通过抵押权益成为记账候选人,然后用投票来决定排名,排W h 8 c o a名靠前的节点拥有某个时间片内的记账权。因为共识节点少且通信快,b ? - ] 2 Z i X所以为迅速完成打包,广播及验证增加了可用性。这种靠拉票能力获得记账权的方式称为党鞭模式。

2.5.4 实用拜占庭容错协议

实用拜占庭容错协议(Practical Byzantine Fault Tolerance,PBFT)主节点对请求进行排序,从节点支持。这种根据多数人的意志而达成共识的做法称为民主模式B ! ! ,。

2.5.5 51%的攻击防御和双花攻击防御

为了防御51%的攻击,需尽量扩大利益资源或整个网络的计算能力。计算` - W Z T能力越大,攻击者进行51%攻击的成本将会更高,防止双花随着确认数量的增加而成功的可能性降低。区块链中的回交事务越长,网络中接收恶意链之前需要捕捉到更多的块,从而从更大程度上降低修改交易历史的可能性。为防止快速支付系统中发生双花攻击,可以使用监听时段技术来监视; 9 ! |所有接收事务,只在没有双重花费的情况下发送产品,但此法只可增加双重花费攻击的难度,无法从根本上消除。

2.5.6 自私挖矿攻击防御

(1)新鲜度X b ] h S @据的加密,使只有获得密钥的人才可读懂数据,包括交易的数据、交易的输出和输入,从而避免泄露交易数据。利用数字签名证明信息由被请求方发送。

(1)聚合签名

Boneh等学者提出基于co-GD] N q G BH和双线性映射的聚合签名,将W个不同用户的W个不同信息上的W个签名,汇总成一个简短的签名,防止攻击者伪造签名。

(2)群签名

Chaum等学者首选提出,其允许群中的成员基于不可否认签名来匿名代R O W N .表群签名消息,从而实现系统的可靠性,以有效抵抗联合攻击。

(3)环签名

Rives等学者提出基于RSA/ w r f的[ B F h R { b m环签名。v 5 t c m信息,从而实现发送方地址和交 9 U e S * M Y易内容本身的隐私保护。

(6)非对称加密

利用公钥加密甚至更加复杂的同态加密来保护隐私。

2.6.4 非法内容防御

(1)Merkle哈希树

利用哈希树表示每个块。哈希树中的节点代表了一个交易哈希,? x k m通过投票机制或委员会删除非法内容g ) ) U Y R v,保证区块链的不可逆性。9 / n q 2 3 O D

(2)人工智能技术

利K g + f * $ 0用人工智能检测非法内容,并丢弃有非法内f K + ! ` &容的交易,而不是打包到新块中,从而减少犯罪活动。

2.6.5 犯罪活动防御

了解你的客户KYC(Know Your Customer)政策,验证客户的? . y : d Z !身份并评估业务关系非法意图的| u 2 k & x h x风险,也可利用人工智能技术识别系统中潜在的犯罪活动。

2.6.6 内容损坏漏洞防御

软件工程中常利用源X p /代码审计、渗透测试和模糊测试,可以降低内存[ @ 8损坏漏洞的风险。此法在区块链中也适用。

2.6.7 访问控/ j =制

利用访问控制只允许有权限的用户访问系统,如基于智能合约的访问控制,满足合同要求自动执行的特点,定做特定的虚拟机来运行智能合约。虚拟机中建议关闭访问系统资源和文件系统交互等功能。

2.6.8 区块链自身Bug防御

文献研究了8个具有代表性的区块链故障,动手c o r 2 M 检查了1108个报告并总结出了10个故障类型。

3.应用展望

3.1 司法行政体系方面

最新的《民事诉讼法》中增加了“电子证v j @ #据”这一证据类别,而互联网中的数据易出现“失真”现象,基于区块链的不可篡; [ L T改性可解决“电子证据”失真现象,提升法院判决的合理性。

3.2 网络资产管理方M h R 4 o L t面

开发基于区块链技术的网络资产管理系统,网络服务提供商利用区块链账号的管理系统加强对各种财产的管理,充分利用区块链J * X d Q s技术_ Z N ^ C I i w ;带来的安全性,减少针对网络财产的犯罪问题。

3.3 电子签名应用F ! 1 % S方面

国务院于2015年5月制定的《关于大力发展电子商务加快培育经济新动力的意见》第一次明确提出“建立电子合同等电子交易凭证的B j P ? ~规范管理机制,确保交易各方的合法权益”。目前主要是以g @ C Z K /电子签名的形式保p g E @证真实性,借助区块链技术、电子合同将拥有更高的安全性,可以使合同- ; ^文书和合同内容紧密联系在一起。

3.4 隐私保护实现方面

2013年工业和信息化部制定的《电信和互联网用户个人信息保护规定》中规定,个人信息x ! + @ w 3 - Z ;指用户姓名、出生日期、身份证号码、S 0 h g D s住址和电话等数据。《中华人民共和国刑法修正案(九)》中设置了“侵犯公民个人信( ) p l ` % Z g R息罪0 w q & x c”,区块链的可追踪降低了执法侦破成本,可更好地保护个人隐私。

4.结语

伴随区块链的漫漫发展长Z - y M s / s路,机遇与危险并存,会出现诸v + L v B ;多问题。例如,随时间的增加存储成本逐步增大,因此应关注存储的优化升级;区块链的数据安全性依赖密码学来实现,但也带来加密算法较难升级的问题。基于区块链的数据安全性使L n t Y @ s {其被广泛应用于各行各业,但安全威胁问题日益凸显。建议结合当8 , + G a前区块链发展现状,加大立法监督,规范区块链的应用;引入先进技术积极研发区块链平台f G 3 3 o , . j的监测机制,以实现科学有力的监管;进一步加大投入,积极研发区块链的底层技术,实现技术的自主创新。

转自丨信息安全与通信保密杂志社

作者丨刘h g ) u K宗妹

选自丨《通信技术》2020年第一期 (为便于排版,已省去原文参考文献)

研# ( J究所简介

国际技术经济研究所(IITE)成立于1985年11月,是f # / P j c 2隶属于o d I j w [ #国务院发展研究中心的非营利性研究机u x . D构,主要职能是研究我国经济、科技社会发展中的重大政F ~ j ? ,策性、& 1 Q G ^ # c H 3战略性、前瞻性问题,^ k B K跟踪和分析世界科技、经济发展态势,为中央和有关部委提供决策咨询服务。“全球技术地图”为国际技术经济研究所官方微信账号,致力于向公众传递前沿技术资讯和科技创新洞见。

地址:北京市海淀区小南庄20号楼A座

电话:010-82635522

微信:iite& V y R % ) !_er

宁都利用技术智能合约区块链攻击算力比特币双花