2020论文在线号No.15 CHINESE JOURNAL OF COMPUTERS 1 020Online No 15 基于区块链的网络安全体系结构 与关键技术研究进展 徐恪12)凌思通李琦2)吴波4沈蒙”张智超2)姚苏刘昕6李琳 清华大学计算机科学与技术系北京 2(北京信息科学与技术国家研究中心北京100084) (清华大学网络科学与网络空间研究院北京100084) )(华为技术有限公司2012实验室北京10085) 5(北京理工大学计算机学院北京1081) (咪咕文化科技有限公司北京10008 摘要随着互联网技术的不断演进与用户数量的“爆炸式”增长,网络作为一项基础设施渗透于人们生存、生活的各个方 面,其安全问题也逐渐成为人们日益关注的重点。然而,随着网络规模的扩大以及攻击者恶意行为的多样化复杂化,传统网 络安全体系架构及其关键技术已经暴露出单点信任、部署困难等诸多问题,而具备去中心化、不可篡改等特性的区块链技术 为网络安全所面临的挑战提供了新的解决思路。本文对近几年基于区块链的网络安全体系结构与关键技术研究进行梳理,将 这些研究从TCPP网络体系结构的角度划分为网络层安全、应用层安全以及支撑整个网络安全体系结构的PKI安全三个部 分,并将区块链在这些研究中所产生的作用归类为真实存储、真实计算、真实激励三种情形。针对区块链的具体应用领域 本文首先介绍了该领域的安全现状,然后对区块链的具体应用进行了介绍,并结合区块链的特点分析了区块链技术在该领域 所存在的优势。本文最后结合现有的解决思路对未来区块链应用中所需要注意的隐私问题、可扩展性问题、安全问题以及区 块链结构演进的方向进行了分析,并对未来基于区块链的网络安全体系结构与关键技术研究进行了展望 关键词区块链;网络安全体系结构;网络层安全;应用层安全:PKI安全 中图法分类号TP393 Research progress of network security architecture and key technologies based on blockchain XU Ke 2) LING Si-Tong )2)LI Qi2)3) WU Bo" SHEN Meng )ZHANG Zhi-Chao) 2) Yao Su"2) LIU Xing 6) LILin ( Department of Computer Science and Technology, Tsinghua University, Beijing 100084) (Beijing National Research Center for Information Science and Technology, Beijing 100084) Institute for Network Science and Cyberspace, Tsinghua University, Beijing 100084) '(2012 Labs, Huawei Technology Co Ltd, Beijing 100085) ' School of Computer Science, Beij ing Institute of Technology, Beijing 100081 '(Migu Culture Technology Co, Ltd, Beijing 100088) 本课题得到国家重点研发计划课题(2018¥FB0803405)国家杰出青年科学基金(61825204)、国家自然科学基金(61932016,6180222)、北京高校卓越 青年科学家计划项目( BJJWZYJE1201910003011)、国家研究中心项目(BNR2019RC0101)、华为技术有限公司委托项目(HF201905003)资助徐恪(通 信作者),男,1974年生,博士,教授,博士生导师,主要研究领域为互联网体系架构、高性能路由器、PP网络、物联网和网络经济学F-mal xuke amail tsinghua. edu. cn凌思通,男,1997年生,硕士研究生,主要研究领域为区块链与网络安全E- mail: lingsi8 @mails. tsinghua. edu. cn李琦 男,1979年生,博士,副研究员,主要研究方向为网络安全、隐私保护、大数据安全等E-mail:qili@)tsinghua.edu.cn
第 43 卷 计 算 机 学 报 Vol. 43 2020 论文在线号 No.15 CHINESE JOURNAL OF COMPUTERS 2020Online No.15 ——————————————— 本课题得到国家重点研发计划课题(2018YFB0803405)、国家杰出青年科学基金(61825204)、国家自然科学基金(61932016, 61802222)、北京高校卓越 青年科学家计划项目(BJJWZYJH01201910003011)、国家研究中心项目(BNR2019RC01011)、华为技术有限公司委托项目(HF2019015003)资助. 徐恪(通 信作者),男,1974年生,博士,教授,博士生导师,主要研究领域为互联网体系架构、高性能路由器、P2P网络、物联网和网络经济学.E-mail: xuke@mail.tsinghua.edu.cn. 凌思通,男,1997年生,硕士研究生,主要研究领域为区块链与网络安全. E-mail: lingst18@mails.tsinghua.edu.cn. 李琦, 男,1979年生,博士,副研究员,主要研究方向为网络安全、隐私保护、大数据安全等. E-mail: qi.li@sz.tsinghua.edu.cn. 基于区块链的网络安全体系结构 与关键技术研究进展 徐恪 1),2) 凌思通 1),2) 李琦 2),3) 吴波 4) 沈蒙 5) 张智超 1),2) 姚苏 1),2) 刘昕 6) 李琳 6) 1) (清华大学计算机科学与技术系 北京 100084) 2) (北京信息科学与技术国家研究中心 北京 100084) 3) (清华大学网络科学与网络空间研究院 北京 100084) 4) (华为技术有限公司 2012 实验室 北京 100085) 5) (北京理工大学计算机学院 北京 100081) 6) (咪咕文化科技有限公司 北京 100088) 摘 要 随着互联网技术的不断演进与用户数量的“爆炸式”增长,网络作为一项基础设施渗透于人们生存、生活的各个方 面,其安全问题也逐渐成为人们日益关注的重点。然而,随着网络规模的扩大以及攻击者恶意行为的多样化复杂化,传统网 络安全体系架构及其关键技术已经暴露出单点信任、部署困难等诸多问题,而具备去中心化、不可篡改等特性的区块链技术 为网络安全所面临的挑战提供了新的解决思路。本文对近几年基于区块链的网络安全体系结构与关键技术研究进行梳理,将 这些研究从 TCP/IP 网络体系结构的角度划分为网络层安全、应用层安全以及支撑整个网络安全体系结构的 PKI 安全三个部 分,并将区块链在这些研究中所产生的作用归类为真实存储、真实计算、真实激励三种情形。针对区块链的具体应用领域, 本文首先介绍了该领域的安全现状,然后对区块链的具体应用进行了介绍,并结合区块链的特点分析了区块链技术在该领域 所存在的优势。本文最后结合现有的解决思路对未来区块链应用中所需要注意的隐私问题、可扩展性问题、安全问题以及区 块链结构演进的方向进行了分析,并对未来基于区块链的网络安全体系结构与关键技术研究进行了展望。 关键词 区块链;网络安全体系结构;网络层安全;应用层安全;PKI 安全 中图法分类号 TP393 Research progress of network security architecture and key technologies based on blockchain XU Ke 1),2) LING Si-Tong 1),2) LI Qi 2),3) WU Bo 4) SHEN Meng 5) ZHANG Zhi-Chao 1),2) Yao Su1),2) LIU Xing 6) LI Lin 6) 1) (Department of Computer Science and Technology, Tsinghua University, Beijing 100084) 2) (Beijing National Research Center for Information Science and Technology, Beijing 100084) 3) ( Institute for Network Science and Cyberspace, Tsinghua University, Beijing 100084) 4) (2012 Labs, Huawei Technology Co. Ltd. , Beijing 100085) 5) ( School of Computer Science, Beijing Institute of Technology, Beijing 100081) 6) (Migu Culture Technology Co., Ltd , Beijing 100088)
徐恪等:基于区块链的网络安全体系结构与关键技术研究进展 2020年 Abstract With the continuous evolution of Internet technology and the explosively increasing number of users the network has penetrated all aspects of people's lives, and its security has gradually become the focus of peoples attention. Researchers have been doing much research on network security. However, with the expansion of network scale and the diversification of attackers' misbehaviors, some drawbacks have been exposed to traditional network security architecture and its key technologies. For example, most of today's network security infrastructure, such as PKI and RPKl, are all realized as a centralized architecture. And the effectiveness of cybersecurity measures are based on the trust in these centralized architectures, which exposes serious single-point of trust issues. The incidents of Dutch CA certificate provider DigiNotar hacked to issue the malicious certificate for more than 500 websites, and Symantec's misinformation of more than 30,000 certificate extension vouchers indicate that once these trust centers have problems, it will have a severe impact on the entire Internet. Secondly, since the early design of network architecture did not take security into account too much, the deployment of many later proposed security mechanisms not only require modifications to existing network protocols but also affect the efficiency of network operation, which cause difficulties in the actual deployment of hese security mechanisms. Besides, with the advent of the era of lot, the complexity of the network will continue to expand, and network security construction should be participated by many organizations and even the whole people. However, there is a lack of a trustworthy incentive mechanism to coordinate the cooperatio between different organizations and mobilize the enthusiasm of users to participate in the network security construction. Nowadays, there is no good solution for these disadvantages, but emerging technology blockchain provides new solutions. Blockchain is a trustworthy distributed database that integrates p2P technology cryptography, consensus mechanism, and distributed storage technology. Its characteristics, such as decentralization, immutability, and auditability, have led researchers to apply it to network security and generate much research. This paper summarizes these research works and divides them into three areas from the perspective of the TCP/IP network architecture: network-layer security, application-layer security, and PKI security. And categorize the role of blockchain in network security applications into three situations: true storage, true computing, and true incentives. Specific application areas include collaborative intrusion detection, inter-domain routing security, Vulnerability detection crowdsourcing, access control, and PKI security. For each specific application field of blockchain, this paper first introduces the security status of the field, then introduces the research of blockchain in this field, and finally analyzes the advantages of blockchain technology applied in this field. At the end of the paper, we analyze the four aspects of privacy issues, scalability issues, security issues, and structure evolution direction that should be paid attention to in blockchain applications. And prospect the future network security architecture and key technologies based on blockchain Key words blockchain; network security architecture; network-layer security; application-layer security, PKI 了严峻的挑战。从2018年2月黑客攻击韩国冬奥 引言 会致使会场网络中断到2018年8月全球最大的半 导体制造商台积电遭受 WannaCry恶意病毒袭击。, 自从1969年 ARPANET正式投入运行,互联再到2018年底万豪酒店集团五亿客户隐私数据泄 网已经发展了50余年,从最初的仅有4个节点到 如今全球接近44亿网络用户,从最初仅用于军事 研究目的到如今“互联网+”涵盖各个领域,互联 O Hackers Targeted the W o'embarraSs'southKoreahttp://time.com/5155234/hackers-t 网已经作为一项基础设施渗透于人们生存、生活的 rgeted-pveongchang-opening-ceremony 2018, 2, 13 各个方面。然而,互联网技术在为人们带来诸多便 2 TSMC Chip Maker Blames WannaCry Malware for Producti Halt.https://thehackernews.com/2018/08/tsmc-wannacry-ran 利的同时,其安全隐患也给人们的生活、财产带来
2 徐 恪等:基于区块链的网络安全体系结构与关键技术研究进展 2020 年 Abstract With the continuous evolution of Internet technology and the explosively increasing number of users, the network has penetrated all aspects of people's lives, and its security has gradually become the focus of people's attention. Researchers have been doing much research on network security. However, with the expansion of network scale and the diversification of attackers' misbehaviors, some drawbacks have been exposed to traditional network security architecture and its key technologies. For example, most of today's network security infrastructure, such as PKI and RPKI, are all realized as a centralized architecture. And the effectiveness of cybersecurity measures are based on the trust in these centralized architectures, which exposes serious single-point of trust issues. The incidents of Dutch CA certificate provider DigiNotar hacked to issue the malicious certificate for more than 500 websites, and Symantec's misinformation of more than 30,000 certificate extension vouchers indicate that once these trust centers have problems, it will have a severe impact on the entire Internet. Secondly, since the early design of network architecture did not take security into account too much, the deployment of many later proposed security mechanisms not only require modifications to existing network protocols but also affect the efficiency of network operation, which cause difficulties in the actual deployment of these security mechanisms. Besides, with the advent of the era of IoT, the complexity of the network will continue to expand, and network security construction should be participated by many organizations and even the whole people. However, there is a lack of a trustworthy incentive mechanism to coordinate the cooperation between different organizations and mobilize the enthusiasm of users to participate in the network security construction. Nowadays, there is no good solution for these disadvantages, but emerging technology blockchain provides new solutions. Blockchain is a trustworthy distributed database that integrates P2P technology, cryptography, consensus mechanism, and distributed storage technology. Its characteristics, such as decentralization, immutability, and auditability, have led researchers to apply it to network security and generate much research. This paper summarizes these research works and divides them into three areas from the perspective of the TCP/IP network architecture: network-layer security, application-layer security, and PKI security. And categorize the role of blockchain in network security applications into three situations: true storage, true computing, and true incentives. Specific application areas include collaborative intrusion detection, inter-domain routing security, Vulnerability detection crowdsourcing, access control, and PKI security. For each specific application field of blockchain, this paper first introduces the security status of the field, then introduces the research of blockchain in this field, and finally analyzes the advantages of blockchain technology applied in this field. At the end of the paper, we analyze the four aspects of privacy issues, scalability issues, security issues, and structure evolution direction that should be paid attention to in blockchain applications. And prospect the future network security architecture and key technologies based on blockchain. Key words blockchain; network security architecture; network-layer security; application-layer security; PKI security 1 引言 自从 1969 年 ARPANET 正式投入运行,互联 网已经发展了 50 余年,从最初的仅有 4 个节点到 如今全球接近 44 亿网络用户,从最初仅用于军事 研究目的到如今“互联网+”涵盖各个领域,互联 网已经作为一项基础设施渗透于人们生存、生活的 各个方面。然而,互联网技术在为人们带来诸多便 利的同时,其安全隐患也给人们的生活、财产带来 了严峻的挑战。从 2018 年 2 月黑客攻击韩国冬奥 会致使会场网络中断①到 2018 年 8 月全球最大的半 导体制造商台积电遭受 WannaCry 恶意病毒袭击②, 再到 2018 年底万豪酒店集团五亿客户隐私数据泄 ① Hackers Targeted the Winter Olympics Opening Ceremony t o „Embarrass‟ South Korea. http://time.com/5155234/hackers-t argeted-pyeongchang-opening-ceremony 2018,2,13 ② TSMC Chip Maker Blames WannaCry Malware for Producti on Halt. https://thehackernews.com/2018/08/tsmc-wannacry-ran somware-attack.html 2018,8,7
徐恪等:基于区块链的网络安全体系结构与关键技术研究进展 露°,各种网络安全事件都表明,一旦网络遭受攻的前期工作同样也只是集中在物联网安全领域, 击,将对人们的生活造成极其严重的影响。因此,对基于区块链的应用前景进行了描述,认为区块链 如何确保网络安全是网络发展的重点研究对象。去中心化的特点与物联网( Internet of Thing,oT) 直以来,研究者们在网络安全领域开展了大分布式的特点相适应,且区块链强大的算力储备能 量的研究工作,但是随着网络规模的扩大以及恶意弥补loT设备资源受限的窘境。Chen等人的工作 攻击行为的多样化复杂化,传统网络安全体系结构则主要是对区块链在域间路由安全的应用研究进 与关键技术己经暴露出诸多弊端。首先,如今的大行介绍,Tara等人的工作虽然对基于区块链的安 部分网络安全基础设施都是基于中心化的体系架全服务进行介绍,但并不是主要针对网络安全领 构,例如公钥基础设施( Public Key Infrastructure,域,其中主要涉及PKI、数据隐私、溯源三个方面。 PKⅠ)和资源公钥基础设施( Resource pkl,RPKⅠ)。与本文最相似的一篇综述则是来自于2018年陈烨 然而,作为许多现有网络安全技术的信任中心,这等人的工作国,该文章主要介绍了区块链在网络数 些网络安全基础设施却暴露出了严重的单点信任据安全和隐私保护、物联网设备的权限管理以及 问题(如单点作恶、操作失误等)。荷兰CA安全DDoS防御三方面的应用,然而该文章所涉及的区 证书提供商 Diginotar遭受入侵为超过500个冈站块链应用场景较少,且并没有对这些应用研究进行 发布恶意证书,以及证书颁发机构赛门铁克误发分类梳理,也没能对区块链应用于网络安全所要注 超过三万个证书扩展凭证等事件都表明,一旦这意的问题进行分析。本文对近几年基于区块链的网 些信任中心发生事故,将对整个互联网造成严重的络安全体系结构与关键技术研究进行梳理,以 影响。其次,由于网络架构的早期设计并没有详细TCP/P网络体系架构为基准,从网络层安全、应用 考虑安全问题,而许多后来提出的安全机制(例如层安全以及PKI安全三个方面介绍了基于区块链的 DNSsec和 BGPsecl)不仅需要对现有网络协议进网络安全体系结构与关键技术研究的最新进展;然 行改动,而且还会严重影响网络的运行效率,从而后对区块链引入的隐私问题、可扩展性问题、安全 造成这些机制实际部署上的困境;此外,随着万物问题以及区块链结构演进的方向进行了分析,并结 互联时代的到来,网络的复杂度将持续扩大,网络合现有的解决思路对未来应用研究进行了展望。 安全建设应该由现阶段的不同组织独立参与发展 本文后续组织如下:第二节对区块链体系结构 为多组织协同参与甚至全民参与,然而目前还缺乏与原理进行了介绍;第三节对区块链在网络安全的 套可信的激励机制来协调不同组织之间的合作应用进行了概述;第四节对区块链在网络层安全的 并调动大家参与网络安全建设的积极性。针对这些应用具体展开了介绍:第五节对区块链在应用层安 问题,区块链技术的出现提供了新的解决思路。 全的应用具体展开了介绍;第六节对区块链在PKI 块链是一种集成了P2P技术、密码学、共识安全的应用具体展开了介绍;第七节针对区块链应 机制以及分布式存储技术的可信分布式数据库,并用在网络安全过程中所需要注意的隐私问题、可扩 且具有可审计、去中心化、不可篡改等特点。正展性问题、安全问题以及区块链结构演进方向进行 是这些特点促使大量研究人员在基于区块链的网了分析与展望;最后对全文进行了总结 络安全体系结构与关键技术方面开展研究工作。然 而,现阶段却缺乏对这些研究进行系统性梳理的工2区块链体系结构 作,最早的一篇相关工作来自2017年赵阔等人向 但该文章主要针对物联网安全领域,因此没能对区 区块链这一概念最早起源于2008年中本聪发 块链在网络安全领域的应用进行系统性介绍;我们布的比特币白皮书9,之后分别经历了以太坊为 代表的智能合约时代和 Hyperledger为代表的联 ①史上规模最大!万豪旗下酒店发生5亿客户信息被泄露.htp 盟链时代的发展,如今区块链已经应用到了数字货 币、供应链管理、云游戏等各个领域,其体系结构 l2018,12,1 也呈现出了一种多元化的趋势,但总体上可以概括 2Diginotar.https:/en.wikipediaorg/wiki/diginotar 为数据层、网络层、共识层、智能合约层、应用层 3 Google takes Symantec to the woodshed for mis-issuing,0 Httpscertshttps://arstechnica.com/information-technolog 以及激励机制六个部分 v/2017/03/gooele-takes-symantec-to-the-woodshed-for-mis-issui (1)数据层是区块链可审计性的来源,其主
?期 徐 恪等:基于区块链的网络安全体系结构与关键技术研究进展 3 露 ①,各种网络安全事件都表明,一旦网络遭受攻 击,将对人们的生活造成极其严重的影响。因此, 如何确保网络安全是网络发展的重点研究对象。 一直以来,研究者们在网络安全领域开展了大 量的研究工作,但是随着网络规模的扩大以及恶意 攻击行为的多样化复杂化,传统网络安全体系结构 与关键技术已经暴露出诸多弊端。首先,如今的大 部分网络安全基础设施都是基于中心化的体系架 构,例如公钥基础设施(Public Key Infrastructure, PKI)和资源公钥基础设施(Resource PKI,RPKI)。 然而,作为许多现有网络安全技术的信任中心,这 些网络安全基础设施却暴露出了严重的单点信任 问题(如单点作恶、操作失误等)。荷兰 CA 安全 证书提供商 DigiNotar 遭受入侵为超过 500 个网站 发布恶意证书②,以及证书颁发机构赛门铁克误发 超过三万个证书扩展凭证③等事件都表明,一旦这 些信任中心发生事故,将对整个互联网造成严重的 影响。其次,由于网络架构的早期设计并没有详细 考虑安全问题,而许多后来提出的安全机制(例如 DNSsec [1]和 BGPsec [2])不仅需要对现有网络协议进 行改动,而且还会严重影响网络的运行效率,从而 造成这些机制实际部署上的困境;此外,随着万物 互联时代的到来,网络的复杂度将持续扩大,网络 安全建设应该由现阶段的不同组织独立参与发展 为多组织协同参与甚至全民参与,然而目前还缺乏 一套可信的激励机制来协调不同组织之间的合作 并调动大家参与网络安全建设的积极性。针对这些 问题,区块链技术的出现提供了新的解决思路。 区块链是一种集成了 P2P 技术、密码学、共识 机制以及分布式存储技术的可信分布式数据库,并 且具有可审计、去中心化、不可篡改等特点[3]。正 是这些特点促使大量研究人员在基于区块链的网 络安全体系结构与关键技术方面开展研究工作。然 而,现阶段却缺乏对这些研究进行系统性梳理的工 作,最早的一篇相关工作来自 2017 年赵阔等人[4], 但该文章主要针对物联网安全领域,因此没能对区 块链在网络安全领域的应用进行系统性介绍;我们 ① 史上规模最大!万豪旗下酒店发生 5 亿客户信息被泄露. http s://tech.sina.com.cn/roll/2018-12-01/doc-ihpevhcm5918790.shtm l 2018,12,1 ② DigiNotar. https://en.wikipedia.org/wiki/DigiNotar ③ Google takes Symantec to the woodshed for mis-issuing30,0 00 HTTPS certs. https://arstechnica.com/information-technolog y/2017/03/google-takes-symantec-to-the-woodshed-for-mis-issui ng-30000-https-certs/ 2017,3,24 的前期工作[5]同样也只是集中在物联网安全领域, 对基于区块链的应用前景进行了描述,认为区块链 去中心化的特点与物联网(Internet of Thing,IoT) 分布式的特点相适应,且区块链强大的算力储备能 弥补 IoT 设备资源受限的窘境。Chen 等人[6]的工作 则主要是对区块链在域间路由安全的应用研究进 行介绍,Tara [7]等人的工作虽然对基于区块链的安 全服务进行介绍,但并不是主要针对网络安全领 域,其中主要涉及 PKI、数据隐私、溯源三个方面。 与本文最相似的一篇综述则是来自于 2018 年陈烨 等人的工作[8],该文章主要介绍了区块链在网络数 据安全和隐私保护、物联网设备的权限管理以及 DDoS 防御三方面的应用,然而该文章所涉及的区 块链应用场景较少,且并没有对这些应用研究进行 分类梳理,也没能对区块链应用于网络安全所要注 意的问题进行分析。本文对近几年基于区块链的网 络安全体系结构与关键技术研究进行梳理,以 TCP/IP 网络体系架构为基准,从网络层安全、应用 层安全以及PKI安全三个方面介绍了基于区块链的 网络安全体系结构与关键技术研究的最新进展;然 后对区块链引入的隐私问题、可扩展性问题、安全 问题以及区块链结构演进的方向进行了分析,并结 合现有的解决思路对未来应用研究进行了展望。 本文后续组织如下:第二节对区块链体系结构 与原理进行了介绍;第三节对区块链在网络安全的 应用进行了概述;第四节对区块链在网络层安全的 应用具体展开了介绍;第五节对区块链在应用层安 全的应用具体展开了介绍;第六节对区块链在 PKI 安全的应用具体展开了介绍;第七节针对区块链应 用在网络安全过程中所需要注意的隐私问题、可扩 展性问题、安全问题以及区块链结构演进方向进行 了分析与展望;最后对全文进行了总结。 2 区块链体系结构 区块链这一概念最早起源于 2008 年中本聪发 布的比特币白皮书[9],之后分别经历了以太坊[10]为 代表的智能合约时代和 Hyperledger[11]为代表的联 盟链时代的发展,如今区块链已经应用到了数字货 币、供应链管理、云游戏等各个领域,其体系结构 也呈现出了一种多元化的趋势,但总体上可以概括 为数据层、网络层、共识层、智能合约层、应用层 以及激励机制六个部分。 (1)数据层是区块链可审计性的来源,其主
徐恪等:基于区块链的网络安全体系结构与关键技术研究进展 2020年 要定义了区块链的数据结构并借助密码学技术确节点在加入P2P网络时,都会试图获取其它节点的 保数据的安全性。区块链的数据通常都是采用文件地址信息并与多个节点建立邻居关系。当节点产生 系统(例如比特币)或数据库(例如以太坊)进行交易、区块等数据时会将其传播至邻居节点,邻居 存储,区块链的具体结构则因为区块链共识层、合节点则继续传播直到数据扩散至全网所有区块链 约层等其他部分不同而存在着一定的差异,但交易节点。每个节点都会根据收到的交易、区块等数据 的组织方式和区块的链接方式都大体相同。每个区构建本地区块链,节点与节点之间互为冗余备份, 块都包含头部区域和数据区域,如图1所示,节点从而构成了去中心化的分布式系统,因此可以有效 在打包交易之前,先将交易构建成默克尔树12,即解决单点故障问题 将交易作为一个二叉树的叶子节点,每个中间节点 (3)共识层是区块链一致性、不可篡改的来 为其左右子节点数据连接起来后的哈希值,从而得源,其主要定义了在完全不可信的环境下分布式节 到一个树根节点即默克尔树根;默克尔树根、前一点如何对区块链上的数据达成一致。即在每个区块 区块头部的哈希值以及部分其它字段一起组成区链节点都通过网络层获取到全网所有交易、区块等 块头部,默克尔树除去树根以外的部分则作为区块数据的前提下,即使部分节点可以随意发布恶意信 的数据区域。 息,也能通过共识算法确保其它诚实节点本地区块 区块头部保留的前一区块头部哈希使得区块链的数据是一致且正确的。现阶段主要共识算法有 链形成一种链式结构,在这样一种数据结构的基础工作量证明( Proof of work,PoW)例、权益证明 上,基于密码学的安全性,节点只需要存储任意区 Proof of stake,PoS)、实用拜占庭容错 块头部,就可以对之前区块头部进行哈希计算并与( Practical Byzantine Fault Tolerance,PBFr)等 所存区块头部中的哈希值进行对比,从而对之前所在每轮共识过程中,共识算法会选举或竞争出一个 有区块头部的完整性进行验证。 领导节点将收集的交易打包成区块并通过P2P网络 用默克尔树来组织交易则可以实现对单个交发送给其它节点。每个节点会对区块中的哈希值、 易的正确性进行高效验证,如图1所示,当用户需签名以及交易的有效性等进行验证,并将通过验证 要对交易Tx0进行验证时,可以请求区块链全节点的区块加入到本地区块链。由于在共识过程中所有 返回 Hash1、Hash23;然后将Tx0进行哈希获得节点都完成了区块的验证工作,因此区块链解决了 Hash0,并结合全节点所返回的哈希值计算出一个矿工节点间的互信问题;此外用户在访问区块链 根哈希;将计算出的根哈希与本地存储的哈希头部时,可以对多个节点同时访问,并根据少数服从多 中的根哈希进行比对,即可验证交易的完整性 数原则选择合适的结果,因此在多数节点遵从协议 区块头部 的情况下,区块链具有不可篡改的特性,并可以有 效解决中心化系统所存在的单点信任问题。 部哈希值 4)智能合约层的出现拓展了区块链的应用 Root hash 范围,其建立在共识层之上,主要定义了编写智能 合约的语言以及智能合约的执行环境。智能合约以 段程序的形式部署在分布式区块链节点上,当区 块链节点对本地区块链达成一致后,若区块中存在 交易对智能合约进行调用,或某些状态信息满足要 求,区块链节点将自动执行这段程序,并将程序执 行结果记录在本地区块链中。基于共识层所实现的 全网节点本地区块链的一致性,全网节点共同基于 本地一致的区块链数据库执行智能合约并将执行 图1区块数据结构示意图 结果记录到本地区块链中,从而全网节点能够对智 (2)网络层是区块链去中心化的来源,其主能合约的执行结果达成共识。因此基于共识层所提 要定义了区块链节点之间组网流程以及数据在节供的一致、不可篡改等特性,智能合约具备自动执 点间的传播方式。现阶段区块链主要是采用对等网行、执行结果不可篡改等特点。 络( Peer to peer,P2P)构建网络层,每个区块链 (5)应用层则是通过服务端、前端、app等现
4 徐 恪等:基于区块链的网络安全体系结构与关键技术研究进展 2020 年 要定义了区块链的数据结构并借助密码学技术确 保数据的安全性。区块链的数据通常都是采用文件 系统(例如比特币)或数据库(例如以太坊)进行 存储,区块链的具体结构则因为区块链共识层、合 约层等其他部分不同而存在着一定的差异,但交易 的组织方式和区块的链接方式都大体相同。每个区 块都包含头部区域和数据区域,如图 1 所示,节点 在打包交易之前,先将交易构建成默克尔树[12],即 将交易作为一个二叉树的叶子节点,每个中间节点 为其左右子节点数据连接起来后的哈希值,从而得 到一个树根节点即默克尔树根;默克尔树根、前一 区块头部的哈希值以及部分其它字段一起组成区 块头部,默克尔树除去树根以外的部分则作为区块 的数据区域。 区块头部保留的前一区块头部哈希使得区块 链形成一种链式结构,在这样一种数据结构的基础 上,基于密码学的安全性,节点只需要存储任意区 块头部,就可以对之前区块头部进行哈希计算并与 所存区块头部中的哈希值进行对比,从而对之前所 有区块头部的完整性进行验证。 用默克尔树来组织交易则可以实现对单个交 易的正确性进行高效验证,如图 1 所示,当用户需 要对交易 Tx0 进行验证时,可以请求区块链全节点 返回 Hash1、Hash23;然后将 Tx0 进行哈希获得 Hash0,并结合全节点所返回的哈希值计算出一个 根哈希;将计算出的根哈希与本地存储的哈希头部 中的根哈希进行比对,即可验证交易的完整性。 Hash0 Hash1 Tx0 Tx1 Hash01 Hash2 Hash3 Tx2 Tx3 Hash23 Root Hash 区块头部 前一区块头 部哈希值 其他 字段 区块体 图 1 区块数据结构示意图 (2)网络层是区块链去中心化的来源,其主 要定义了区块链节点之间组网流程以及数据在节 点间的传播方式。现阶段区块链主要是采用对等网 络(Peer to Peer,P2P)构建网络层,每个区块链 节点在加入 P2P 网络时,都会试图获取其它节点的 地址信息并与多个节点建立邻居关系。当节点产生 交易、区块等数据时会将其传播至邻居节点,邻居 节点则继续传播直到数据扩散至全网所有区块链 节点。每个节点都会根据收到的交易、区块等数据 构建本地区块链,节点与节点之间互为冗余备份, 从而构成了去中心化的分布式系统,因此可以有效 解决单点故障问题。 (3)共识层是区块链一致性、不可篡改的来 源,其主要定义了在完全不可信的环境下分布式节 点如何对区块链上的数据达成一致。即在每个区块 链节点都通过网络层获取到全网所有交易、区块等 数据的前提下,即使部分节点可以随意发布恶意信 息,也能通过共识算法确保其它诚实节点本地区块 链的数据是一致且正确的。现阶段主要共识算法有 工作量证明(Proof of Work,PoW)[9]、权益证明 (Proof of Stake,PoS)[13]、实用拜占庭容错 (Practical Byzantine Fault Tolerance,PBFT)[14]等, 在每轮共识过程中,共识算法会选举或竞争出一个 领导节点将收集的交易打包成区块并通过P2P网络 发送给其它节点。每个节点会对区块中的哈希值、 签名以及交易的有效性等进行验证,并将通过验证 的区块加入到本地区块链。由于在共识过程中所有 节点都完成了区块的验证工作,因此区块链解决了 矿工节点间的互信问题;此外用户在访问区块链 时,可以对多个节点同时访问,并根据少数服从多 数原则选择合适的结果,因此在多数节点遵从协议 的情况下,区块链具有不可篡改的特性,并可以有 效解决中心化系统所存在的单点信任问题。 (4)智能合约层的出现拓展了区块链的应用 范围,其建立在共识层之上,主要定义了编写智能 合约的语言以及智能合约的执行环境。智能合约以 一段程序的形式部署在分布式区块链节点上,当区 块链节点对本地区块链达成一致后,若区块中存在 交易对智能合约进行调用,或某些状态信息满足要 求,区块链节点将自动执行这段程序,并将程序执 行结果记录在本地区块链中。基于共识层所实现的 全网节点本地区块链的一致性,全网节点共同基于 本地一致的区块链数据库执行智能合约并将执行 结果记录到本地区块链中,从而全网节点能够对智 能合约的执行结果达成共识。因此基于共识层所提 供的一致、不可篡改等特性,智能合约具备自动执 行、执行结果不可篡改等特点。 (5)应用层则是通过服务端、前端、app 等现
徐恪等:基于区块链的网络安全体系结构与关键技术研究进展 有技术将智能合约的相关接口进行封装,并设计友可编程操作性,将激励机制以及获取激励的条件写 好的图形用户接口,为用户提供比特币钱包等各种到智能合约中,并借助智能合约自动执行且执行结 去中心化的应用服务 果不可篡改的特点确保激励能真实可信的发放到 (6)激励机制在早期作为激励层体现在区块满足条件的用户,从而达到吸引用户的目的;激励 链架构中,但随着区块链的发展,激励机制可以和机制与应用层相结合则是基于应用直接面向用户 区块链各个层次相结合并产生不同的激励效果。与的特点,根据区块链记录的用户历史行为对其进行 共识层结合时,矿工节点在打包区块时会在其中包信用评分,并根据信用评分的不同对用户进行区别 含一个将激励发送给自己的交易,因此激励会随着化服务,从而激励用户保持良好的行为习惯 区块的确认自动发放给相应的矿工节点,从而激励 上述区块链体系结构的内容可由图2进行概 矿工节点参与区块链的维护,比特币和以太坊就是括,正是因为区块链各部分所提供的可审计、去中 采用这种激励机制的典型代表;激励机制与智能合心化、一致性、不可篡改等诸多特点,区块链技术 约层相结合则是基于区块链中智能合约对货币的开始被广泛应用于网络安全领域。 技术支撑 具体应用实例 用户接口 应用层 服务端技术‖前端技术 Ap‖数字货币 供应链 已[ 自动执行 执行结果不 智能合 编程语言 执行环境 可篡改 Scrip Solidity JavaScript Docker 数据一致 共识算法 不可篡改 共识层 工作量证明(PoW) )[权益证明() 实用拜占庭容错(PBFT) P2P网络 去中心化 网络层 网络节点发现 邻居节点维护 数据传播 数据存储 数据安全(密码学技 可审计性 数据层 存储系统 数据结构 哈希函数 非对称加密 数字签名 图2区块链体系结构图 应用层安全中的邮件安全协议 S/MIME都是基于 3基于区块链的网络安全应用概PK1而建立,因此,PKI安全支撑着整个网络安全 体系架构,是网络安全的技术基础。 述 区块链在具体应用的过程中根据参与实体的 不同可以分类为私有链、公有链以及联盟链。其中 从TCP/P网络体系结构的角度出发,网络安私有链的参与方通常都属于一个组织;公有链的参 全体系架构应该被划分为链路层安全、网络层安与方则是任何实体;联盟链的参与方则是加入联盟 全、传输层安全以及应用层安全。然而,传统网络的成员。目前取得广泛应用的区块链类型都属于公 体系结构在设计之初并没有将安全性纳入设计范有链或联盟链,这两类区块链作为一个分布式可信 围,从而导致如今的大部分网络安全技术都需要基账本都涉及不同利益体之间的交互,主要用于解决 于第三方基础设施才能有效构建,这些第三方基础不同利益体之间的信任问题,或者作为一个第三方 设施被称为网络安全基础设施。PKI作为一个重要可信平台用来解决用户对平台的信任问题。因此 的网络安全基础设施支撑着整个网络安全体系架区块链主要在涉及多个平等利益体交互的场景,或 构,从不同层次来看,网络层安全中的 IPsec协议,者需要引入可信第三方的场景中发挥作用。从网络 传输层安全协议( Transport Layer Security,,TLS),安全体系结构的角度来看,具备这样特征的场景主
?期 徐 恪等:基于区块链的网络安全体系结构与关键技术研究进展 5 有技术将智能合约的相关接口进行封装,并设计友 好的图形用户接口,为用户提供比特币钱包等各种 去中心化的应用服务。 (6)激励机制在早期作为激励层体现在区块 链架构中,但随着区块链的发展,激励机制可以和 区块链各个层次相结合并产生不同的激励效果。与 共识层结合时,矿工节点在打包区块时会在其中包 含一个将激励发送给自己的交易,因此激励会随着 区块的确认自动发放给相应的矿工节点,从而激励 矿工节点参与区块链的维护,比特币和以太坊就是 采用这种激励机制的典型代表;激励机制与智能合 约层相结合则是基于区块链中智能合约对货币的 可编程操作性,将激励机制以及获取激励的条件写 到智能合约中,并借助智能合约自动执行且执行结 果不可篡改的特点确保激励能真实可信的发放到 满足条件的用户,从而达到吸引用户的目的;激励 机制与应用层相结合则是基于应用直接面向用户 的特点,根据区块链记录的用户历史行为对其进行 信用评分,并根据信用评分的不同对用户进行区别 化服务,从而激励用户保持良好的行为习惯。 上述区块链体系结构的内容可由图 2 进行概 括,正是因为区块链各部分所提供的可审计、去中 心化、一致性、不可篡改等诸多特点,区块链技术 开始被广泛应用于网络安全领域。 激 励 机 制 智能合 约层 执行环境 本地 EVM Docker 编程语言 Script Solidity JavaScript Go 应用层 具体应用实例 数字货币 供应链 云游戏 技术支撑 服务端技术 前端技术 App技术 共识层 共识算法 工作量证明(PoW) 权益证明(PoS) 实用拜占庭容错(PBFT) 数据层 数据存储 存储系统 数据结构 数据安全(密码学技术) 哈希函数 非对称加密 数字签名 网络层 P2P网络 网络节点发现 邻居节点维护 数据传播 提供友好的 用户接口 自动执行, 执行结果不 可篡改 数据一致, 不可篡改 去中心化 可审计性 图 2 区块链体系结构图 3 基于区块链的网络安全应用概 述 从 TCP/IP 网络体系结构的角度出发,网络安 全体系架构应该被划分为链路层安全、网络层安 全、传输层安全以及应用层安全。然而,传统网络 体系结构在设计之初并没有将安全性纳入设计范 围,从而导致如今的大部分网络安全技术都需要基 于第三方基础设施才能有效构建,这些第三方基础 设施被称为网络安全基础设施。PKI 作为一个重要 的网络安全基础设施支撑着整个网络安全体系架 构,从不同层次来看,网络层安全中的 IPsec 协议, 传输层安全协议(Transport Layer Security,TLS), 应用层安全中的邮件安全协议 S/MIME 都是基于 PKI 而建立,因此,PKI 安全支撑着整个网络安全 体系架构,是网络安全的技术基础。 区块链在具体应用的过程中根据参与实体的 不同可以分类为私有链、公有链以及联盟链。其中 私有链的参与方通常都属于一个组织;公有链的参 与方则是任何实体;联盟链的参与方则是加入联盟 的成员。目前取得广泛应用的区块链类型都属于公 有链或联盟链,这两类区块链作为一个分布式可信 账本都涉及不同利益体之间的交互,主要用于解决 不同利益体之间的信任问题,或者作为一个第三方 可信平台用来解决用户对平台的信任问题。因此, 区块链主要在涉及多个平等利益体交互的场景,或 者需要引入可信第三方的场景中发挥作用。从网络 安全体系结构的角度来看,具备这样特征的场景主
徐恪等:基于区块链的网络安全体系结构与关键技术研究进展 2020年 要出现在网络层、传输层、应用层、PKI四个部分。块链构建的分布式真实存储可以稳定运行,并且有 络层安全主要涉及数据平面安全和控制平效避免中心服务器宕机、恶意篡改、隐瞒数据,或 面安全,基于区块链的关键技术则体现在协同式网者对不同用户提供不一致的访问结果等问题 络入侵检测和域间路由安全两个方面,其中协同式 在基于区块链真实存储所构建的网络安全应 网络入侵检测是为了检测数据平面流量异常并及用中,存在着数据可验证与不可验证两种情况。数 时对异常流量报警过滤;域间路由安全则是为了确据可验证是指用户所上传数据的有效性存在清晰 保控制平面域间路由信息的正确性,从而有效指导的判断标准,因此其它用户在获取该数据时可以准 数据平面的流量转发。传输层安全主要涉及端到端确判断其可用性,并基于该数据完成后续的计算工 的通信安全,从而确保通信数据的机密性、完整性,作,例如域间路由安全中的路由宣告信息、访问控 现阶段这样一种安全机制是基于PKI所建立,因此制机制中的授权策略信息,PKI中的证书信息;数 区块链在传输层安全的应用主要通过在PKI安全中据不可验证则是指用户所上传数据的可用性无法 的应用来体现。应用层安全主要涉及应用软件自身显性判断,因此往往需要引入信用评分、用户评价 实现逻辑的安全性以及运行过程中面临潜在恶意等机制来辅助用户对数据的可用性进行预判,例如 用户访问时的安全性,基于区块链的关键技术则主协同式入侵检测中各系统上传的报警信息、检测模 要体现在漏洞检测众包以及访问控制机制两个方型信息等。 面,其中漏洞检测众包的目的是将漏洞检测任务众 (2)真实计算是在真实存储的基础之上,引 包出去,从而尽早发现漏洞并及时修补,确保应用入智能合约,进一步构建一个真实计算平台,确保 本身的安全;访问控制机制则是对资源的访问设置计算流程的公开、透明、可验证,以及计算结果的 规则,以防止用户资源被非法访问。PKI即公钥管真实、可信、不可篡改。在该计算平台中,计算逻 理设施,负责公钥的分发、撤销等一系列工作,并辑被编码进智能合约中并部署在区块链上,用户可 对公钥持有者的身份进行背书,从而确保网络中通以通过发布交易来触发智能合约的执行,调用智能 信双方可以互相认证身份。由于现有PKI主要是采合约的交易以及智能合约的执行结果都被真实存 用中心化架构,因此区块链在PKI安全方面的应用储在区块链中。因此相比于传统中心化、分布式计 主要体现在加强中心化PKI安全和构建去中心化的算平台,基于区块链构建的分布式真实计算平台能 PKI两个方面,前者主要目的是在保留原有中心化在承担用户计算开销的同时,有效解决传统中心化 PKI不变的基础上,引入区块链技术使其更安全高计算平台计算流程不透明,计算结果不可验证,无 效;后者则是用区块链构建一个完全去中心化的法确保真实性等问题。 PKI来取代现有的中心化架构。 在基于区块链真实计算平台所构建的网络安 在基于区块链构建上述网络安全相关技术的全应用中,根据计算时机的不同可以分为预先计算 过程中,区块链的主要作用可以总结为真实存储 和实时计算两种情况。 真实计算、真实激励三个方面 预先计算是指提前将要计算的任务交由区块 (1)真实存储是将区块链作为一个真实存储链执行,并将执行结果保存在区块链中,用户则可 平台,确保用户所存储的数据真实存在,不会被恶以按需直接对计算结果进行访问。预先计算通常在 意篡改,并且面对用户的数据访问请求也能做出真计算任务针对不同用户都一致时使用,因此可以提 实的回应。在基于区块链所构建的真实存储平台前计算好对所有用户都适用的结果,例如PKI中证 中,用户以交易的形式请求数据的增加、修改、撤书的验证工作,针对同一证书,所有用户对其验证 销等操作,其它用户则可以按需对数据库的内容进流程都是一致的。在预先计算场景下,由于用户在 行读取,并基于这些数据完成后续的计算工作。在査询计算结果时只需要进行哈希计算即可验证该 对数据存取的整个流程中,区块链数据层提供的可结果的完整性,因此当计算任务繁重时,预先计算 审计性确保用户在访问数据时可以对其完整性进的方式能显著减小用户获取计算结果的时间开销 行验证;区块链网络层提供的去中心化特性则可以 实时计算则是指用户在有计算任务需求时,通 有效避免单点失效问题;区块链共识层提供的一致过交易调用智能合约,等待交易被打包执行,并获 性和不可篡改性则确保用户访问所获取数据的真取执行结果。实时计算所涉及的中间数据通常都随 实性。因此相比于传统中心化的存储平台,基于区着调用者的不同而不同,因此无法像预先计算那样
6 徐 恪等:基于区块链的网络安全体系结构与关键技术研究进展 2020 年 要出现在网络层、传输层、应用层、PKI 四个部分。 网络层安全主要涉及数据平面安全和控制平 面安全,基于区块链的关键技术则体现在协同式网 络入侵检测和域间路由安全两个方面,其中协同式 网络入侵检测是为了检测数据平面流量异常并及 时对异常流量报警过滤;域间路由安全则是为了确 保控制平面域间路由信息的正确性,从而有效指导 数据平面的流量转发。传输层安全主要涉及端到端 的通信安全,从而确保通信数据的机密性、完整性, 现阶段这样一种安全机制是基于 PKI 所建立,因此 区块链在传输层安全的应用主要通过在PKI安全中 的应用来体现。应用层安全主要涉及应用软件自身 实现逻辑的安全性以及运行过程中面临潜在恶意 用户访问时的安全性,基于区块链的关键技术则主 要体现在漏洞检测众包以及访问控制机制两个方 面,其中漏洞检测众包的目的是将漏洞检测任务众 包出去,从而尽早发现漏洞并及时修补,确保应用 本身的安全;访问控制机制则是对资源的访问设置 规则,以防止用户资源被非法访问。PKI 即公钥管 理设施,负责公钥的分发、撤销等一系列工作,并 对公钥持有者的身份进行背书,从而确保网络中通 信双方可以互相认证身份。由于现有 PKI 主要是采 用中心化架构,因此区块链在 PKI 安全方面的应用 主要体现在加强中心化PKI安全和构建去中心化的 PKI 两个方面,前者主要目的是在保留原有中心化 PKI 不变的基础上,引入区块链技术使其更安全高 效;后者则是用区块链构建一个完全去中心化的 PKI 来取代现有的中心化架构。 在基于区块链构建上述网络安全相关技术的 过程中,区块链的主要作用可以总结为真实存储、 真实计算、真实激励三个方面: (1)真实存储是将区块链作为一个真实存储 平台,确保用户所存储的数据真实存在,不会被恶 意篡改,并且面对用户的数据访问请求也能做出真 实的回应。在基于区块链所构建的真实存储平台 中,用户以交易的形式请求数据的增加、修改、撤 销等操作,其它用户则可以按需对数据库的内容进 行读取,并基于这些数据完成后续的计算工作。在 对数据存取的整个流程中,区块链数据层提供的可 审计性确保用户在访问数据时可以对其完整性进 行验证;区块链网络层提供的去中心化特性则可以 有效避免单点失效问题;区块链共识层提供的一致 性和不可篡改性则确保用户访问所获取数据的真 实性。因此相比于传统中心化的存储平台,基于区 块链构建的分布式真实存储可以稳定运行,并且有 效避免中心服务器宕机、恶意篡改、隐瞒数据,或 者对不同用户提供不一致的访问结果等问题。 在基于区块链真实存储所构建的网络安全应 用中,存在着数据可验证与不可验证两种情况。数 据可验证是指用户所上传数据的有效性存在清晰 的判断标准,因此其它用户在获取该数据时可以准 确判断其可用性,并基于该数据完成后续的计算工 作,例如域间路由安全中的路由宣告信息、访问控 制机制中的授权策略信息,PKI 中的证书信息;数 据不可验证则是指用户所上传数据的可用性无法 显性判断,因此往往需要引入信用评分、用户评价 等机制来辅助用户对数据的可用性进行预判,例如 协同式入侵检测中各系统上传的报警信息、检测模 型信息等。 (2)真实计算是在真实存储的基础之上,引 入智能合约,进一步构建一个真实计算平台,确保 计算流程的公开、透明、可验证,以及计算结果的 真实、可信、不可篡改。在该计算平台中,计算逻 辑被编码进智能合约中并部署在区块链上,用户可 以通过发布交易来触发智能合约的执行,调用智能 合约的交易以及智能合约的执行结果都被真实存 储在区块链中。因此相比于传统中心化、分布式计 算平台,基于区块链构建的分布式真实计算平台能 在承担用户计算开销的同时,有效解决传统中心化 计算平台计算流程不透明,计算结果不可验证,无 法确保真实性等问题。 在基于区块链真实计算平台所构建的网络安 全应用中,根据计算时机的不同可以分为预先计算 和实时计算两种情况。 预先计算是指提前将要计算的任务交由区块 链执行,并将执行结果保存在区块链中,用户则可 以按需直接对计算结果进行访问。预先计算通常在 计算任务针对不同用户都一致时使用,因此可以提 前计算好对所有用户都适用的结果,例如 PKI 中证 书的验证工作,针对同一证书,所有用户对其验证 流程都是一致的。在预先计算场景下,由于用户在 查询计算结果时只需要进行哈希计算即可验证该 结果的完整性,因此当计算任务繁重时,预先计算 的方式能显著减小用户获取计算结果的时间开销。 实时计算则是指用户在有计算任务需求时,通 过交易调用智能合约,等待交易被打包执行,并获 取执行结果。实时计算所涉及的中间数据通常都随 着调用者的不同而不同,因此无法像预先计算那样
徐恪等:基于区块链的网络安全体系结构与关键技术研究进展 提前计算一个对所有用户都适用的结果。例如访问为两类,其一是将激励机制与智能合约层结合,该 控制机制中,针对同一资源,不同用户的访问控制方式主要是利用区块链真实计算的特点实现激励 策略是不一致的,因此需要在用户请求访问时根据发放、惩罚实施的公开透明性,例如漏洞检测众包 用户的身份实时判定用户的访问权限。在基于实时中漏洞赏金的的发放,PKI中恶意证书的举报奖励 计算所构建的的网络安全技术中,用户每次调用智以及CA发布恶意证书的惩罚措施;其二是将激励 能合约都需要等待交易的打包执行,从而造成一定机制与应用层结合,该方法主要是根据区块链记录 的时间等待开销,为了有效缓解时间等待开销带来的用户历史行为以及被举报、评价历史等计算用户 的影响,针对时间敏感型的应用,通常可以采用联的信用评分,从而对用户进行区别化服务,例如协 盟链来增加回应速度, 同式网络入侵检测中根据信用评分选择信息来源 (3)真实激励是在区块链真实可信的基础上 本文主要内容可以总结为图3所示,区块链以 引入激励机制,实现公开透明的奖惩措施,在如今真实存储、真实计算和真实激励三种形式支撑着网 面临网络复杂度持续扩大的情形下,真实激励是调络安全体系架构及关键技术,但在区块链的具体应 动大家参与网络安全建设积极性的重要手段。现阶用过程中也应该注意区块链隐私性、可扩展性、安 段利用区块链真实激励的网络安全应主要可以分全性等问题,本文后续将围绕图3具体展开介绍。 1、漏洞检测众包 <心应用层安全 2、访问控制机制 中心化PI安全 传输层安全安 PKI< 2、构建去中心化PKI 1、协同式网络入侵检测 网络层安全 2、域间路由安全 block i+1 K+- 1、真实存储 1、隐私问题 2、真实计算< 2、可扩展性问题 3、真实激励 3、安全问题 4、结构演进方向 区块链网络 图3基于区块链的网络安全体系结构与关键技术研究概括图 4.1协同式网络入侵检测 区块链在网络层安全的应用 网络入侵检测系统( Network Intrusion Detection System,NIDS)通常是部署在网络重要链 在TCPP协议体系中,网络层主要是确保数路旁监听网络流量,当发现异常时及时发出警报并 据包点到点的传输,其中控制平面负责路由策略的对异常流量进行过滤,从而确保网络数据平面的安 协商,从而指导数据平面的流量转发。因此,网络全。协同式网络入侵检测系统( Collaborative nids 层安全相应的可以分为控制平面安全和数据平面 CNIDS)则是指分布在多个区域的网络入侵检测系 安全,控制平面安全主要是指路由安全,数据平面统互相协作检测大规模的复杂攻击,从而及时做出 安全则是指数据转发平面的流量安全。现阶段区块反应并过滤攻击流量,避免网络遭受更大的损失。 链在网络层数据平面安全应用主要涉及协同式网4.1.1协同式网络入侵检测现状 络入侵检测领域,在控制平面安全应用则主要涉及 CNIDS根据交互信息的流向主要分为集中式、 域间路由安全领域。本节将从这两个领域详细介绍分层式以及分布式三种组织架构,其中集中式架构 区块链在网络层安全方面的应用。 和分层式架构中都引入了中心服务器,不仅会造成 单点故障问题,还会因为涉及不同组织之间的合作
?期 徐 恪等:基于区块链的网络安全体系结构与关键技术研究进展 7 提前计算一个对所有用户都适用的结果。例如访问 控制机制中,针对同一资源,不同用户的访问控制 策略是不一致的,因此需要在用户请求访问时根据 用户的身份实时判定用户的访问权限。在基于实时 计算所构建的的网络安全技术中,用户每次调用智 能合约都需要等待交易的打包执行,从而造成一定 的时间等待开销,为了有效缓解时间等待开销带来 的影响,针对时间敏感型的应用,通常可以采用联 盟链来增加回应速度, (3)真实激励是在区块链真实可信的基础上 引入激励机制,实现公开透明的奖惩措施,在如今 面临网络复杂度持续扩大的情形下,真实激励是调 动大家参与网络安全建设积极性的重要手段。现阶 段利用区块链真实激励的网络安全应主要可以分 为两类,其一是将激励机制与智能合约层结合,该 方式主要是利用区块链真实计算的特点实现激励 发放、惩罚实施的公开透明性,例如漏洞检测众包 中漏洞赏金的的发放,PKI 中恶意证书的举报奖励 以及 CA 发布恶意证书的惩罚措施;其二是将激励 机制与应用层结合,该方法主要是根据区块链记录 的用户历史行为以及被举报、评价历史等计算用户 的信用评分,从而对用户进行区别化服务,例如协 同式网络入侵检测中根据信用评分选择信息来源。 本文主要内容可以总结为图 3 所示,区块链以 真实存储、真实计算和真实激励三种形式支撑着网 络安全体系架构及关键技术,但在区块链的具体应 用过程中也应该注意区块链隐私性、可扩展性、安 全性等问题,本文后续将围绕图 3 具体展开介绍。 网络层安全 传输层安全 应用层安全 PKI 安 全 支撑 1、漏洞检测众包 2、访问控制机制 1、隐私问题 2、可扩展性问题 3、安全问题 4、结构演进方向 block i-1 block i block i+1 区块链网络 1、真实存储 2、真实计算 3、真实激励 1、协同式网络入侵检测 2、域间路由安全 1、中心化PKI安全 2、构建去中心化PKI 图 3 基于区块链的网络安全体系结构与关键技术研究概括图 4 区块链在网络层安全的应用 在 TCP/IP 协议体系中,网络层主要是确保数 据包点到点的传输,其中控制平面负责路由策略的 协商,从而指导数据平面的流量转发。因此,网络 层安全相应的可以分为控制平面安全和数据平面 安全,控制平面安全主要是指路由安全,数据平面 安全则是指数据转发平面的流量安全。现阶段区块 链在网络层数据平面安全应用主要涉及协同式网 络入侵检测领域,在控制平面安全应用则主要涉及 域间路由安全领域。本节将从这两个领域详细介绍 区块链在网络层安全方面的应用。 4.1 协同式网络入侵检测 网 络 入 侵 检 测 系 统 ( Network Intrusion Detection System,NIDS)通常是部署在网络重要链 路旁监听网络流量,当发现异常时及时发出警报并 对异常流量进行过滤,从而确保网络数据平面的安 全。协同式网络入侵检测系统(Collaborative NIDS, CNIDS)则是指分布在多个区域的网络入侵检测系 统互相协作检测大规模的复杂攻击,从而及时做出 反应并过滤攻击流量,避免网络遭受更大的损失。 4.1.1 协同式网络入侵检测现状 CNIDS 根据交互信息的流向主要分为集中式、 分层式以及分布式三种组织架构,其中集中式架构 和分层式架构中都引入了中心服务器,不仅会造成 单点故障问题,还会因为涉及不同组织之间的合作
8 徐恪等:基于区块链的网络安全体系结构与关键技术研究进展 2020年 而出现对中心服务器的单点信任问题;分布式架构对信息发布者进行评价,历史评价信息被记录在区 中每个节点都是独立的检测系统,因此完美解决了块链中用于计算信用评分,从而辅助参与者选择报 单点信任和单点故障问题,被认为是 CNIDS的一警信息源。与 TRIDEnt基于评价的信用评分计算机 种理想实现形式。然而,在现有的分布式系统实现制不同,Meng等人2则是提出基于挑战机制来构 中,单一节点往往无法获得全局信息,使得全局检建 CNIDS中的信任管理平台,在该架构中,入侵 测准确度低于集中式架构;此外, CNIDS中每个检测系统在互相共享报警信息的同时随机混入一 节点属于不同的组织,恶意节点可能发布虚假的报些挑战信息;每隔一段时间将正常报警信息的反馈 警信息来协助攻击者,因此存在着节点间的信任问序列和挑战信息的反馈序列作为交易参与共识:若 题。针对这个问题,目前主流的方法是建立一套信该序列中出现异常,即针对挑战信息和针对正常信 用评分系统,每个节点根据历史交互行为以及间断息给出的反馈存在差异,则认为这个反馈序列对应 性的挑战测试对各节点进行评分,并设定基于评分的入侵检测系统存在异常行为,该异常行为被记录 的协作策略1。然而这些方法中每个节点都是独到区块链中并更新对应检测系统的信用评分。 立评分,恶意节点可以只针对少部分人进行攻击 Rodrigues等人则主要针对分布式拒绝服务 尽管在P2P网络信任管理方面,大量研究都是通过( Distributed denial of service,DDoS)攻击提出了 节点之间评分推荐来获取一个全局评分181,但却个协同式防御系统,在该系统中,当任意区域 无法有效的应对多个恶意节点的合谋攻击1 检测到DDoS攻击源后,可将攻击源的地址上传到 4.1.2区块链的具体应用研究 区块链并同步到各个区域,从而提前预防攻击并在 目前区块链在 CNIDS的应用研究思路是将区源端过滤潜在的DDoS攻击流量;Yang等人在该方 块链作为一个真实存储平台用于信息共享,各参与法基础上引入了激励机制,设计了去中心化的互联 者将入侵检测的相关信息同步到区块链中共享给网资源信任框架D24,并将其作为DDoS流量过 其它参与者,从而实现协同式网络入侵检测。根据滤服务的交易平台,当受害者遭受DDoS攻击时可 各检测系统之间共享信息类型的不同, CNIDS可以以在线向攻击者所在区域的管理者购买DDoS流量 分为基于环境信息同步的 CNIDS和基于模型信息过滤服务,该服务通过将攻击者IP信息上传到区块 同步的 CNIDS。 链共享到流量源所在区域,请求在源端对攻击流量 基于环境信息同步的 CNIDS主要思路如图4进行过滤,从而有效防止DDoS流量进一步消耗中 所示,即入侵检测系统之间共享本地检测到的环境间网络以及目标网络的带宽资源 信息并对共享的信息达成共识,因此每个单独的入 侵检测系统可以掌握全局环境信息,从而进行更全 环境检测 获取全局 信息共享 川信息共识 并提前做 面的网络流量检测。例如 Alexopoulos等人于2017 出反应 图4基于环境信息同步的 CNIDS流程图 年初步构想了一个基于区块链的协同式网络入侵 检测系统框架,该架构由报警信息交换层以及共 与环境信息同步中各入侵检测系统之间交互 识层所组成,其中报警信息交换层负责局部报警信实时的环境检测信息不同,模型信息同步的主要思 息的扩散,共识层则确保区块链中报警信息的一致路如图5所示,即检测系统之间共享本地检测模型 性。之后 Alexopoulos等人进行了深入设计并提出并对共享的模型数据达成共识,检测系统则可以从 了 TRIDEn21,其中引入了激励机制以及信任管理区块链中筛选模型进行训练从而获得一个具有更 机制,构建了一个报警信息交易市场,参与者可以强检测能力的综合模型。例如 Golomb等人四提出 根据信用评分选择入侵检测系统并向其订阅报警用区块链来构建一个入侵检测模型共享平台,参与 信息,从而激励参与者共享报警信息的同时有效遏节点用本地信息训练出局部入侵检测模型并将其 制内部节点攻击。在该平台中,参与方以智能合约上传到区块链,然后综合链上的局部模型训练出 的形式发布报警信息的出售合约,合约中包含发布个检测能力更强的模型;Li等人也提出用区块链来 者身份、报警信息的价格,出售的报警信息类型;构建一个基于误用检测的协同式网络入侵监测系 参与者可以进行订阅并与发布者建立连接实现报统,每个检测系统将自己所学习到的入侵特征信 警信息的接收,并建立一个链下单向支付通道,根息记录到区块链中,从而使整个入侵检测系统的特 据收到的报警信息完成实时付款;信息消费者可以征库更全; Liang等人则针对车与万物互联
8 徐 恪等:基于区块链的网络安全体系结构与关键技术研究进展 2020 年 而出现对中心服务器的单点信任问题;分布式架构 中每个节点都是独立的检测系统,因此完美解决了 单点信任和单点故障问题,被认为是 CNIDS 的一 种理想实现形式。然而,在现有的分布式系统实现 中,单一节点往往无法获得全局信息,使得全局检 测准确度低于集中式架构[15];此外,CNIDS 中每个 节点属于不同的组织,恶意节点可能发布虚假的报 警信息来协助攻击者,因此存在着节点间的信任问 题。针对这个问题,目前主流的方法是建立一套信 用评分系统,每个节点根据历史交互行为以及间断 性的挑战测试对各节点进行评分,并设定基于评分 的协作策略[16-17]。然而这些方法中每个节点都是独 立评分,恶意节点可以只针对少部分人进行攻击; 尽管在 P2P 网络信任管理方面,大量研究都是通过 节点之间评分推荐来获取一个全局评分[18-19],但却 无法有效的应对多个恶意节点的合谋攻击[18]。 4.1.2 区块链的具体应用研究 目前区块链在 CNIDS 的应用研究思路是将区 块链作为一个真实存储平台用于信息共享,各参与 者将入侵检测的相关信息同步到区块链中共享给 其它参与者,从而实现协同式网络入侵检测。根据 各检测系统之间共享信息类型的不同,CNIDS 可以 分为基于环境信息同步的 CNIDS 和基于模型信息 同步的 CNIDS。 基于环境信息同步的 CNIDS 主要思路如图 4 所示,即入侵检测系统之间共享本地检测到的环境 信息并对共享的信息达成共识,因此每个单独的入 侵检测系统可以掌握全局环境信息,从而进行更全 面的网络流量检测。例如 Alexopoulos 等人于 2017 年初步构想了一个基于区块链的协同式网络入侵 检测系统框架[20],该架构由报警信息交换层以及共 识层所组成,其中报警信息交换层负责局部报警信 息的扩散,共识层则确保区块链中报警信息的一致 性。之后 Alexopoulos 等人进行了深入设计并提出 了 TRIDEnt [21],其中引入了激励机制以及信任管理 机制,构建了一个报警信息交易市场,参与者可以 根据信用评分选择入侵检测系统并向其订阅报警 信息,从而激励参与者共享报警信息的同时有效遏 制内部节点攻击。在该平台中,参与方以智能合约 的形式发布报警信息的出售合约,合约中包含发布 者身份、报警信息的价格,出售的报警信息类型; 参与者可以进行订阅并与发布者建立连接实现报 警信息的接收,并建立一个链下单向支付通道,根 据收到的报警信息完成实时付款;信息消费者可以 对信息发布者进行评价,历史评价信息被记录在区 块链中用于计算信用评分,从而辅助参与者选择报 警信息源。与 TRIDEnt 基于评价的信用评分计算机 制不同,Meng 等人[22]则是提出基于挑战机制来构 建 CNIDS 中的信任管理平台,在该架构中,入侵 检测系统在互相共享报警信息的同时随机混入一 些挑战信息;每隔一段时间将正常报警信息的反馈 序列和挑战信息的反馈序列作为交易参与共识;若 该序列中出现异常,即针对挑战信息和针对正常信 息给出的反馈存在差异,则认为这个反馈序列对应 的入侵检测系统存在异常行为,该异常行为被记录 到区块链中并更新对应检测系统的信用评分。 Rodrigues 等人则主要针对分布式拒绝服务 (Distributed Denial of Service,DDoS)攻击提出了 一个协同式防御系统[23],在该系统中,当任意区域 检测到 DDoS 攻击源后,可将攻击源的地址上传到 区块链并同步到各个区域,从而提前预防攻击并在 源端过滤潜在的 DDoS 攻击流量;Yang 等人在该方 法基础上引入了激励机制,设计了去中心化的互联 网资源信任框架 DII[24],并将其作为 DDoS 流量过 滤服务的交易平台,当受害者遭受 DDoS 攻击时可 以在线向攻击者所在区域的管理者购买 DDoS 流量 过滤服务,该服务通过将攻击者 IP 信息上传到区块 链共享到流量源所在区域,请求在源端对攻击流量 进行过滤,从而有效防止 DDoS 流量进一步消耗中 间网络以及目标网络的带宽资源。 环境检测 信息共享 获取全局 视图 信息共识 全局检测 并提前做 出反应 图 4 基于环境信息同步的 CNIDS 流程图 与环境信息同步中各入侵检测系统之间交互 实时的环境检测信息不同,模型信息同步的主要思 路如图 5 所示,即检测系统之间共享本地检测模型 并对共享的模型数据达成共识,检测系统则可以从 区块链中筛选模型进行训练从而获得一个具有更 强检测能力的综合模型。例如 Golomb 等人[25]提出 用区块链来构建一个入侵检测模型共享平台,参与 节点用本地信息训练出局部入侵检测模型并将其 上传到区块链,然后综合链上的局部模型训练出一 个检测能力更强的模型;Li 等人也提出用区块链来 构建一个基于误用检测的协同式网络入侵监测系 统[26],每个检测系统将自己所学习到的入侵特征信 息记录到区块链中,从而使整个入侵检测系统的特 征 库 更 全 ; Liang 等 人 则 针 对 车 与 万 物 互 联
徐恪等:基于区块链的网络安全体系结构与关键技术研究进展 ( Vehicle-to-everything,Vx)m场景基于区块链应用层相结合,根据参与者的历史行为评价为其计 设计了一个可以动态更新的协同式入侵检测架构,算一个全局信用评分,并基于该信用评分设置信息 在该架构中,节点按地理位置不同分为多个区域,采纳策略,因此各用户可以实时选取所需的数据而 每个区域组建一个微型区块链用于收集该区域智不用等待其它用户评价后再做选择。上述三种方式 能设备上传的入侵样例和入侵检测模型,然后动态各有优缺点,因此在未来基于区块链的协同式入侵 训练出最新的综合入侵检测模型,并将该模型部署检测系统研究中,如何针对具体场景设计一套共享 到进入该区域的智能汽车中。针对如何共享并选择数据采纳策略需要重点考虑。 合适的模型来训练综合模型,我们在最近的工作中42域间路由安全 提出了 SeccL2,一个基于区块链技术的联邦学习 边界网关协议( Border Gateway Protocol,BGP) 平台。为了解决用户数据隐私问题并预防攻击者上作为网络层控制平面中被广泛采纳的域间路由选 传恶意模型来对整体模型的训练进行攻击,该平台择协议,其在设计之初并没有考虑安全性,导致各 要求参与者用本地数据集对模型进行训练;每一轮自治域( Autonomous System,AS)宣告的路由会 训练结束后参与者上传模型参数的差值;各参与者被邻居默认接受。由于BGP协议的这个缺陷,恶 将区块链中的参数差值分别融合到模型中并用本意AS可以宣告虚假的路由源信息或者AS路径信 地数据集进行评估,然后将评估的结果上传到区块息来劫持目标网络的流量,巴基斯坦劫持 链:智能合约根据所有参与者的评估选出最好的模 You Tube,以及大量银行地址被劫持等事件所造 型参数并通知各参与者将其融入到训练模型中,然成的影响也正体现了目前BGP安全问题的严重性, 后继续下一轮训练。 SeccL平台的整个训练流程无因此如何验证各AS所宣告域间路由信息的真实性 需参与者公开本地数据集,且每轮训练的模型是综成为域间路由安全中亟待解决的问题。 合所有参与者评价所选出,因此有效解决了用户数421域间路由安全现状 据隐私问题和共享恶意模型的问题。Shen等人 现阶段域间路由安全机制主要是建立在资源 则是针对模型训练过程中对用户共享数据的评价密钥管理设施( Resource Public Key Infrastructure, 问题,提出用 Shapley值来判定用户上传数据对整RPK)上,其主要思路是在分配AS号与P地 体的贡献度,并基于所计算的贡献度对用户发放激址块资源的同时,将每个AS号与其对应的IP地址 励,从而激励用户贡献有效数据。 块进行绑定,并将这些绑定信息存储在相应的站点 供路由器访问,而这些信息则作为AS宣告路由 入侵检测 模型信息 源的合理性凭证。正是基于RPKI这一架构,预防 模型共享 模型筛选 路由前缀劫持的路由源认证算法到以及预防路 图5基于模型信息同步的CNDS流程图 径劫持的真实路径验证算法被提出。这些方法 虽然在理论上能够有效解决域间路由安全问题,但 4.1.3讨论与总结 在实际情况中,RPKⅠ、源路由认证算法以及真实路 总而言之,目前基于区块链的CNDS研究主径验证算法的部署情况并不理想 要是将区块链作为一个分布式的真实存储平台实 (1)RPKI的部署方面, Wahlisch等人通过测 现信息共享。然而,与其它区块链应用中交易存在量发现许多大规模的CDN( Content Delivery 清晰的对错判断标准不同,报警信息或者是检测模Neok)都没部署RPK5,NsT的最新监测情 型判断标准相对模糊,节点无法有效判断信息的可况也显示只有168%IPV4地址前缀部署在RPKI 用性,因此如何对这些信息设置清晰的选择标准是上;此外 Gilad等人发现由于人为配置错误原因, 个难题。 SeccL平台悶综合用户的评价实现模型RPKI中存在着大量的错误路由源认证信息( Route 的筛选是一种有效的解决措施,但该方法每次采纳 数据前需要等待大家的投票,不适合对实时性要求 ORensysBlog.PakistanhijacksYou'tube.https:/dyn.com/blogl 较高的场景:Shen等人叫基于 Shapley值计算用户 贡献度虽然可行,但是当涉及共享数据用户过多 2 Adrien de Beaupre. BGP multiple banking addresses hijack 时,会造成很大的计算开销;另一种解决方式则是 d.https://isc.sans.edw/diarv/bgp+multiple+bankingtaddressesT hacked62492013,7,29 在真实存储的基础上引入真实激励,将激励机制与 3NistRpkiMonitorhttps://rpki-monitor.antdnistgovl2019,1 0,6
?期 徐 恪等:基于区块链的网络安全体系结构与关键技术研究进展 9 (Vehicle-to-everything,V2X)[27]场景基于区块链 设计了一个可以动态更新的协同式入侵检测架构, 在该架构中,节点按地理位置不同分为多个区域, 每个区域组建一个微型区块链用于收集该区域智 能设备上传的入侵样例和入侵检测模型,然后动态 训练出最新的综合入侵检测模型,并将该模型部署 到进入该区域的智能汽车中。针对如何共享并选择 合适的模型来训练综合模型,我们在最近的工作中 提出了 SecCL [28],一个基于区块链技术的联邦学习 平台。为了解决用户数据隐私问题并预防攻击者上 传恶意模型来对整体模型的训练进行攻击,该平台 要求参与者用本地数据集对模型进行训练;每一轮 训练结束后参与者上传模型参数的差值;各参与者 将区块链中的参数差值分别融合到模型中并用本 地数据集进行评估,然后将评估的结果上传到区块 链;智能合约根据所有参与者的评估选出最好的模 型参数并通知各参与者将其融入到训练模型中,然 后继续下一轮训练。SecCL 平台的整个训练流程无 需参与者公开本地数据集,且每轮训练的模型是综 合所有参与者评价所选出,因此有效解决了用户数 据隐私问题和共享恶意模型的问题。Shen 等人[29] 则是针对模型训练过程中对用户共享数据的评价 问题,提出用 Shapley 值来判定用户上传数据对整 体的贡献度,并基于所计算的贡献度对用户发放激 励,从而激励用户贡献有效数据。 模型信息 共识 入侵检测 模型共享 模型筛选 训练综合 检测模型 图 5 基于模型信息同步的 CNIDS 流程图 4.1.3 讨论与总结 总而言之,目前基于区块链的 CNIDS 研究主 要是将区块链作为一个分布式的真实存储平台实 现信息共享。然而,与其它区块链应用中交易存在 清晰的对错判断标准不同,报警信息或者是检测模 型判断标准相对模糊,节点无法有效判断信息的可 用性,因此如何对这些信息设置清晰的选择标准是 一个难题。SecCL 平台[28]综合用户的评价实现模型 的筛选是一种有效的解决措施,但该方法每次采纳 数据前需要等待大家的投票,不适合对实时性要求 较高的场景;Shen 等人[29]基于 Shapley 值计算用户 贡献度虽然可行,但是当涉及共享数据用户过多 时,会造成很大的计算开销;另一种解决方式则是 在真实存储的基础上引入真实激励,将激励机制与 应用层相结合,根据参与者的历史行为评价为其计 算一个全局信用评分,并基于该信用评分设置信息 采纳策略,因此各用户可以实时选取所需的数据而 不用等待其它用户评价后再做选择。上述三种方式 各有优缺点,因此在未来基于区块链的协同式入侵 检测系统研究中,如何针对具体场景设计一套共享 数据采纳策略需要重点考虑。 4.2 域间路由安全 边界网关协议(Border Gateway Protocol,BGP) 作为网络层控制平面中被广泛采纳的域间路由选 择协议,其在设计之初并没有考虑安全性,导致各 自治域(Autonomous System,AS)宣告的路由会 被邻居默认接受。由于 BGP 协议的这个缺陷,恶 意 AS 可以宣告虚假的路由源信息或者 AS 路径信 息 来 劫 持 目 标 网 络 的 流 量 , 巴 基 斯 坦 劫 持 YouTube①,以及大量银行地址被劫持②等事件所造 成的影响也正体现了目前 BGP 安全问题的严重性, 因此如何验证各 AS 所宣告域间路由信息的真实性 成为域间路由安全中亟待解决的问题。 4.2.1 域间路由安全现状 现阶段域间路由安全机制主要是建立在资源 密钥管理设施(Resource Public Key Infrastructure, RPKI)[30]上,其主要思路是在分配 AS 号与 IP 地 址块资源的同时,将每个 AS 号与其对应的 IP 地址 块进行绑定,并将这些绑定信息存储在相应的站点 供路由器访问[31],而这些信息则作为 AS 宣告路由 源的合理性凭证。正是基于 RPKI 这一架构,预防 路由前缀劫持的路由源认证算法[32-33]以及预防路 径劫持的真实路径验证算法[2][34]被提出。这些方法 虽然在理论上能够有效解决域间路由安全问题,但 在实际情况中,RPKI、源路由认证算法以及真实路 径验证算法的部署情况并不理想: (1)RPKI 的部署方面,Wählisch 等人通过测 量 发 现 许 多 大 规 模 的 CDN ( Content Delivery Network)都没部署 RPKI[35],NIST 的最新监测情 况 ③也显示只有 16.8%IPV4 地址前缀部署在 RPKI 上;此外 Gilad 等人[36]发现由于人为配置错误原因, RPKI 中存在着大量的错误路由源认证信息(Route ① Rensys Blog. Pakistan hijacks YouTube. https://dyn.com/blog/ pakistan-hijacks-youtube-1/ 2018,2,24 ② Adrien de Beaupre. BGP multiple banking addresses hijacke d. https://isc.sans.edu/diary/BGP+multiple+banking+addresses+ hijacked/16249 2013,7,29 ③ NIST RPKI Monitor. https://rpki-monitor.antd.nist.gov/ 2019,1 0,6
徐恪等:基于区块链的网络安全体系结构与关键技术研究进展 2020年 Origin authorization,ROA),造成了RPKI体系的ROA一样作为源地址认证的基础,考虑到现有 信任问题,尽管作者提出了ROAe机制用于发现IPV4地址已分配完,作者认为 InBlock可以作为未 错误ROA并用邮箱或网站对管理者进行警告,但来IPV6地址的交易平台 是该机制依靠大家自发参与,缺乏激励机制以及对基于区块链实现源路由认证以及真实路径验 管理机构的监督惩罚措施。 证的研究中,根据区块链中记录的信息不同可以分 (2)路由源认证算法部署方面,Glad等人为两种。第一种主要思想如图7所示,即通过区块 测量得出,只有16%的AS部署了基于RPKI的路链来记录各AS的路由源宣告信息以及路径宣告信 由源认证算法,而针对路由源认证失败的路由信息,并结合IP地址块的分配信息来判断路由宣告的 息,只有不到6%的AS选择拒绝接受 合法性。例如Hari等人设计的互联网区块链 (3)真实路径验证算法部署方面, Lychee等 Internet blockchain)图,其中各AS与注册机构 人提出这些算法的实际部署情况并不理想,并且参与区块链的维护,并将初始的数字资源分配情况 这些算法只有在全面部署后才能带来极大的安全以及相应的ROA信息记录到初始区块中;当注册 提升,部分部署情况下不仅无法对域间路由安全做机构发布新的ROA信息时,构造ROA交易,ROA 出改善,而且可能会引发严重的逻辑漏洞。 交易的输入为相应的IP地址块(分配新的地址块 42.2区块链的具体应用研究 时)或过期的ROA信息(重新分配旧地址块时), 将区块链运用于域间路由安全的主要思路是输出则为该P地址块绑定的AS;当AS宣告路径 将区块链作为一个真实存储平台,来存储域间路由时,创建一个路径宣告交易,交易的输入为相应的 认证所需要的相关信息,从而确保AS可以基于这ROA信息(宣告路由源时)或上一个AS宣告的路 些信息实现安全的域间路由认证。这些研究根据所径信息(宣告路径时),输出则为与该AS建立了邻 实现目标的不同可以分为两大类:(1)基于区块链居关系的多个AS地址;ROA交易和路径宣告交易 构建一个去中心化的RPKI:(2)在去中心化RPKI经矿工节点验证后被记录到区块链中供边界路由 基础上实现源路由认证以及真实路径验证, 器査询,从而同时实现路由源认证和真实路径验证 基于区块链构建去中心化RPKI的主要思想如两种功能。刘冰洋等人设计的D以及Saad等 图6所示,即用区块链记录IP地址块的分配和交易人设计的 routeChain'也都采取了类似的思想,其 信息,从而确定每个IP地址块的所属身份。例如中DI提出将地址块的后续交易转让记录也记录到 Paillisse等人所提出的 IPchain'38,他们认为IP地址区块链中; Route Chain则提出对AS进行划分区域 块与数字货币一样,具有流转性(可进行分配与再并实现分层管理,使得每个区域能够更快地达成共 分配),都能被有限分割,而且在同一时刻都只能识,从而降低延迟并增强可扩展性 被一方拥有,因此用区块链构建一个去中心化的 RPKI架构,即用区块链来模拟RPKI地址分配流程 d block i-I block block i+l 将IP地址的分配历史都记录在区块链上,并提出 PoS共识比PoW共识更适合用来确保IP块的安全 录更新IP地址 分配。Xing等人设计现了基于区块链的资源 交易块与AS的绑 信息定信息 管理平台 BGPCoin,其中对RPKI不同角色之间的 布地址分 发布地址转 上、更新交易 地址分配设计了详细的智能合约,参与者调用相应 IANA 智能合约 的智能合约进行地址的申请和分配,分配信息则被 存储在区块链中提供查询。此外, BGPCoin引入了 发布地 用户监管模式,提出AS边界路由器可以担任检测 址出售 者,当发现错误ROA时调用ROA检测合约,上报 请求地 请求购买 错误ROA并获得相应的激励。 Stefano等人则将区 块链与IP地址交易市场结合,提出了 InBlock架构 H142),该架构记录每一笔IP地址的交易记录,每笔 图6去中心化的RPKI架构图 交易记录都包含具体的IP地址块信息以及被授予 第二种则是记录各AS的路由源信息以及AS 该地址块的组织账户ID,而这些交易记录可以像之间的邻居关系,在收到路由宣告后根据区块链所
10 徐 恪等:基于区块链的网络安全体系结构与关键技术研究进展 2020 年 Origin Authorization,ROA),造成了 RPKI 体系的 信任问题,尽管作者提出了 ROAlert 机制用于发现 错误 ROA 并用邮箱或网站对管理者进行警告,但 是该机制依靠大家自发参与,缺乏激励机制以及对 管理机构的监督惩罚措施。 (2)路由源认证算法部署方面,Gilad 等人[36] 测量得出,只有 16%的 AS 部署了基于 RPKI 的路 由源认证算法,而针对路由源认证失败的路由信 息,只有不到 6%的 AS 选择拒绝接受。 (3)真实路径验证算法部署方面,Lychev 等 人[37]提出这些算法的实际部署情况并不理想,并且 这些算法只有在全面部署后才能带来极大的安全 提升,部分部署情况下不仅无法对域间路由安全做 出改善,而且可能会引发严重的逻辑漏洞。 4.2.2 区块链的具体应用研究 将区块链运用于域间路由安全的主要思路是 将区块链作为一个真实存储平台,来存储域间路由 认证所需要的相关信息,从而确保 AS 可以基于这 些信息实现安全的域间路由认证。这些研究根据所 实现目标的不同可以分为两大类:(1)基于区块链 构建一个去中心化的 RPKI;(2)在去中心化 RPKI 基础上实现源路由认证以及真实路径验证。 基于区块链构建去中心化 RPKI 的主要思想如 图 6 所示,即用区块链记录 IP 地址块的分配和交易 信息,从而确定每个 IP 地址块的所属身份。例如 Paillisse 等人所提出的 IPchain[38],他们认为 IP 地址 块与数字货币一样,具有流转性(可进行分配与再 分配),都能被有限分割,而且在同一时刻都只能 被一方拥有,因此用区块链构建一个去中心化的 RPKI架构,即用区块链来模拟RPKI地址分配流程, 将 IP 地址的分配历史都记录在区块链上,并提出 PoS 共识比 PoW 共识更适合用来确保 IP 块的安全 分配。 Xing 等人[39-40]设计现了基于区块链的资源 管理平台 BGPCoin,其中对 RPKI 不同角色之间的 地址分配设计了详细的智能合约,参与者调用相应 的智能合约进行地址的申请和分配,分配信息则被 存储在区块链中提供查询。此外,BGPCoin 引入了 用户监管模式,提出 AS 边界路由器可以担任检测 者,当发现错误 ROA 时调用 ROA 检测合约,上报 错误 ROA 并获得相应的激励。Stefano 等人则将区 块链与 IP 地址交易市场结合,提出了 InBlock 架构 [41-42],该架构记录每一笔 IP 地址的交易记录,每笔 交易记录都包含具体的 IP 地址块信息以及被授予 该地址块的组织账户 ID,而这些交易记录可以像 ROA 一样作为源地址认证的基础,考虑到现有 IPV4 地址已分配完,作者认为 InBlock 可以作为未 来 IPV6 地址的交易平台。 基于区块链实现源路由认证以及真实路径验 证的研究中,根据区块链中记录的信息不同可以分 为两种。第一种主要思想如图 7 所示,即通过区块 链来记录各 AS 的路由源宣告信息以及路径宣告信 息,并结合 IP 地址块的分配信息来判断路由宣告的 合法性。例如 Hari 等人设计的互联网区块链 (Internet Blockchain)[43],其中各 AS 与注册机构 参与区块链的维护,并将初始的数字资源分配情况 以及相应的 ROA 信息记录到初始区块中;当注册 机构发布新的 ROA 信息时,构造 ROA 交易,ROA 交易的输入为相应的 IP 地址块(分配新的地址块 时)或过期的 ROA 信息(重新分配旧地址块时), 输出则为该 IP 地址块绑定的 AS;当 AS 宣告路径 时,创建一个路径宣告交易,交易的输入为相应的 ROA 信息(宣告路由源时)或上一个 AS 宣告的路 径信息(宣告路径时),输出则为与该 AS 建立了邻 居关系的多个 AS 地址;ROA 交易和路径宣告交易 经矿工节点验证后被记录到区块链中供边界路由 器查询,从而同时实现路由源认证和真实路径验证 两种功能。刘冰洋等人设计的 DII[44]以及 Saad 等 人设计的 RouteChain[45]也都采取了类似的思想,其 中 DII 提出将地址块的后续交易转让记录也记录到 区块链中;RouteChain 则提出对 AS 进行划分区域 并实现分层管理,使得每个区域能够更快地达成共 识,从而降低延迟并增强可扩展性。 block i-1 block i block i+1 IANA 智能合约 更新IP地址 块与AS的绑 定信息 RIR ISP 发布地址分 配交易 发布地 址出售 交易 记录 交易 信息 发布地址转 让、更新交易 请求地 址分配 请求购买 地址块 图 6 去中心化的 RPKI 架构图 第二种则是记录各 AS 的路由源信息以及 AS 之间的邻居关系,在收到路由宣告后根据区块链所