区块链技术在网络安全中的应用研究
2023-05-10邱璐
邱璐
关键词:区块链技术;网络安全;网络安全技术;局限性
为保障网络系统的安全,目前主要采用认证、授权、访问控制、校验、加密、检测、备份等方法。但由于某些网络安全技术受依赖中心化、PKI技术、签名方式单一的限制,黑客利用网络安全漏洞进行攻击,往往还是会出现网络安全问题。区块链技术由于具有去中心化、可追溯性、不可篡改性等特点,应用于网络安全领域可以明显提升网络系统的安全性。
1区块链概述
1.1区块链的概念
2009年1月,比特币发布第一个创世块,标志着基于区块链技术应用的诞生。区块链是一种典型的分布式账本技术,利用共同识别等多边技术手段,支持数据的验证、共享、计算、存储等功能。
1.2区块链的主要技术特点
历经十几年的发展,区块链逐渐具备了去中心化、不可篡改性、可追溯性、不可否认性、不可伪造性和可编程性等特点。
1.2.1去中心化
相较于传统分布式一致性的协议,去中心化是區块链最显著的优势。区块链主要建立在开放网络中,去中心化可以根据节点进行备份,多一个节点也就多一个备份。以比特币为例,全球大约有一万个节点,自比特币诞生以来一直稳定运行,不会因某个节点不工作而停摆,即使有九千个节点停止工作,只要有一千个节点工作,整个系统依然能够正常运转。最极端的情况,即使只有几个节点在继续工作,整个系统仍然可以正常工作。
系统能够稳定的运行,不是依赖某个数据库或某个操作系统,而是依赖其区块数据结构,即便部分节点失陷,也不影响总体系统的运行。由于其具有去中心化的特点,大大增强了系统的可用性。
1.2.2使用密码技术
区块链使用密码技术,保证了所有交易的可追溯、不可篡改、不可否认和不可伪造,在保证数据共享安全和协同计算的同时,也可实现用户信息和敏感数据的保护。在保证区块数据的完整性方面,由于通过hash连接,所有的区块是否正确很容易被验证:伪造区块链hash的难点在于,需要通过大量的计算,付出大量的时间和精力,只有这样才会被系统认可,因此伪造对于网络攻击者来说成本太高。
区块链的用户体系建立在公钥基础上,每个用户的私钥对应一把公钥,攻击者无法进行暴力破解。区块链中的每一项交易需要通过签名才能完成。攻击者无法获取私钥,就无法完成签名并伪造交易;同时,有了签名的记录,用户必须承认有过交易。可见,区块链采用hash和公钥内置的机制,增强了用户身份和敏感数据的完整性、保密性。
1.2.3去信任
以太坊(Ethereum)支持的智能合约把区块链变成了一个可编程的公共数据区块。可编程性可以让交易者不依赖第三方中介,从而降低了合同执行的成本。当事人不需要通过第三方中介建立信任关系,只需要按照系统既定的规则和程序就可以自行建立可信的联系。同时,节点之间的数据都是公开的,任何要建立节点间信任的当事人都可以看到,无法欺骗对方。
2网络安全与网络安全技术概述
2.1网络安全的概念
网络安全是指信息网络中的软硬件和数据不因偶发或人为的事件遭到破坏、修改与泄露,能够持续、稳定地运行,信息服务不间断[1-2]。
网络安全实际上就是通过对网络系统中各种硬件、软件进行维护,并按照一定的方法,使其免受网络攻击,或者发现攻击后能够迅速补救,从而保证信息的安全。对于网络系统而言,3个安全的中心目标是保密性(Confidentiality)、完整性(Integrity)、有效性(Avilability),即CIA。
2.2网络安全技术
通常用来保障保密性、完整性、有效性( CIA)的做法就是授权、认证、加密、访问控制、检测、备份等,实现这些方法的网络安全技术有很多,以下对常用网络安全技术进行介绍。
2.2.1安全邮件
安全邮件是指对电子邮件进行加密和解密,以确保邮件的信息不被其他人获取。目前,主要有2种技术方案,即PGP和S/MIME。PGP(Pretty GoodPrivacy)是Phil Zimmermann在1991年提出为电子邮件加密的方案,目前已成为邮件加密的标准。PGP通过公钥加密为电子邮件提供安全保障。
2.2.2Web安全
互联网站点上存储着大量的信息,网络安全的一个重要内容是保护互联网站点上的信息安全。互联网安全主要包括3个层面,即服务器、浏览器以及服务器和浏览器之间的通信安全。互联网安全技术分为网络层、传输层、应用层3个层次。网络层可以使用IPSec协议过滤流量。传输层通过在TCP上实现网络安全,使用这种方法的例子有InternetSSL标准。应用层将安全服务嵌入到应用程序中实现网络安全。
2.2.3防火墙
防火墙是一种把内网和公共网络隔离的技术。防火墙设置在被保护网络和公共网络之间,以防止数据被破坏、篡改、盗取等。防火墙是在2个网络之间实现通信的一种授权控制,只有通过授权才能访问数据,可以最大限度地避免黑客未经允许访问内部网络。防火墙的类型主要有数据包过滤防火墙、代理服务器防火墙和混合型防火墙。
2.2.4入侵检测
入侵检测(Intrusion Detection)是预判是否存在入侵行为的测试。它通过分析访问者的行为、安全日志和计算机关键节点信息,来判断访问者是否存在违反安全策略的活动。入侵检测是一种主动的防御技术,在网络攻击发动之前提前预判是否可能会发动网络入侵行为。可以分为统计异常检测和基于规则的检测。
2.2.5木马和病毒检测
计算机病毒是指一组能够破坏计算机功能和数据、可自行复制的程序编码。病毒对计算机软硬件都会造成一定程度的影响。
3常见的网络漏洞
网络安全技术是用来修复网络安全漏洞的。漏洞实际上就是网络安全方面的一些弱点,是在网络的设计和实施中的缺陷、弱点或特性[3-5]。利用漏洞发起网络攻击,进而威胁网络安全。网络安全漏洞有很多种,以下简单介绍几种常见的类型。
3.1SQL注入
所谓SQL注入,是指黑客在地址栏中或者在URL等处输入了夹杂SQL语句的参数,程序在处理数据时,误将输入内容作为SQL语句的参数。因此,程序执行了黑客掺杂的SQL内容。黑客写入的预期外的数据,破坏了系统的完整性。
3.2缓冲区溢出漏洞
缓冲区存在的数据一般都有一个预设的大小,如果用户将数据存人缓冲区时未做好检查,数据大于缓冲区的预设值,就会造成缓冲区溢出。黑客可以利用溢出的数据覆盖原来的代码,使计算机执行黑客的程序,以破坏系统的完整性。
3.3文件上传漏洞
文件上传漏洞是指上传了能够被服务器解析的Web脚本。例如,用户在一个网站上传jpg格式的照片时,由于未做检查,黑客同时上传了JSP文件,找到该文件的URL后,就可以执行脚本,这个脚本可以说就是一个木马程序,利用木马程序黑客就能控制服务器。
3.4中间人劫持漏洞
劫持分为TCP劫持、DNS劫持、HTTP劫持、密钥协商劫持、证书劫持等。它们共同的特征是,网络中2个通信方都以为是与对方通信,但实际上通信都要通过中间人。换言之,通信方的对话信息都被第三方看到了,而且第三方可以修改通信方的对话信息。这破坏了通信的保密性,如果第三方还修改了数据,就破坏了通信的完整性。
3.5口令暴力破解
暴力破解就是通过不断重复来猜测密码。如果用户密码简单,黑客多次重试后,就有可能破解密码,然后进入系统。黑客一旦进入系统,系统的完整性和保密性就会被破坏。
3.6越权漏洞
越权漏洞是指应用程序在检验授权时存在漏洞,可以使攻击者利用低权限用户账号绕开检查以获得高级别用户账号的权限。例如,用户A和B是某个网站的普通用户,只能按照自己的权限操作,但A如果利用一些方法做出了B可以实现的操作,这就造成了平行越权;如果A是网站的普通用户,B是网站管理员,A通过某种方法执行B权限才能做的操作,这就造成了垂直越权。越权漏洞一般是校验权限的逻辑不够严谨造成的。
4区块链技术在网络安全中的应用及其局限性
4.1区块链技术在网络安全中的应用
4.1.1有效缓解分布式拒绝服务攻击
分布式拒绝服务攻击( DDOS)是攻击者利用相关手段让目标服务器停止工作,通过大范围联机的方式来复制、盗用、损坏信息,服务器在接收这些信息后,误认为是合法请求,导致目标网站中服务器资源被大量占用,迫使服务器缓冲区溢满,或使服务器接收非法的用戶接连,从而影响服务器的正常工作。在分布式网络中应用区块链技术,可以有效缓解DDOS的攻击,还可以采取出租额外带宽的方式来降低过流量带来的负面影响。
4.1.2提升数据保护效果
基于区块链技术的分布式账本和加密技术,可以为数据的保密性、可用性和完整性提供更好的保护效果。区块链是一个联系紧密的存储数据链条,为了让新加入的环节与相邻数据链接起来,需要将原有数据中包含的特征值全部复制到新的环节中,这种机制有效解决了传统模式下数据被篡改的问题。另外,分布式的记账技术采用不同信息进行不同的签名的方式,一般情况下攻击者是无法伪造数据的。通过加密技术,也可以保证数据在传输过程中不会被篡改。
4.1.3提升信息安全效果
目前,采用较多的是以PKI为基础的信息加密技术,KPI加密技术对中心化较为依赖,存储证书需要通过第三方授权才能活动。若黑客从第三方获得了用户的CA,则信息加密技术就会失效。区块链技术使用了非对称的加密技术,用户在获得动态密钥后才能被授权,从而增强了信息保密性。另外,通过去中心化的方式,使得各类信息不易被篡改,信息的安全性也会明显提升。
4.1.4区块链技术在隐私保护方面的应用
区块链中的数据在录入和传输等环节均有记录,使得数据可追溯,数据安全程度明显提升。区块链技术支持以地址的形式进行数据交换,而不是以用户身份进行,在用户交易时以匿名方式进行,使个人的隐私信息得到较好的保护。
4.2区块链技术在网络安全中应用的局限性
虽然区块链技术在网络安全方面提供了较多的技术保障,但作为技术本身来说,还是有一定的局限性的。比如,区块链技术使用了大量密码技术,但若设计或编码不当,则会产生较大的漏洞。又如,智能合约代码逻辑如果与设计的初衷不符,就会出问题。区块链所使用的密码学技术可能本身也有漏洞,这使得区块链技术在网络安全应用方面亦存在诸多挑战。
5结束语
区块链技术具有中心化、可追溯性、不可篡改性、不可伪造性、不可否认性和可编程性等特点。通过应用密码技术、区块链技术和PKI技术以及采用hash和公钥内置机制,使网络系统数据的保密性、完整性、有效性得到有效加强,为网络安全提供了强有力的保障。同时,对于区块链技术本身,其也存在一定的局限性,这需要我们在今后的工作中加强研究,取长补短,利用新技术不断优化网络安全效果。