基于区块链的网络安全检查重复性校验系统的研究与设计
2021-04-24
(国家计算机网络应急技术处理协调中心黑龙江分中心 黑龙江 150001)
《中华人民共和国网络安全法》[1]正式实施以来,我国网络安全工作成效显著,各行业网络安全基础工作不断筑牢,网络安全防护能力显著提升。其中,网信、公安、工信等网络安全工作监管部门开展的跨行业及本行业的网络安全检查工作起到了非常积极的作用。以查促改、以查促建,网络安全检查成了各监管主管部门监督相关单位落实网络安全责任、建设网络安全防护技术手段、修补网络安全风险的重要方法。但重复检查、交叉检查等问题也随之出现,检查频次过高、检查事项重复给广大网络运营者带来了繁重的负担和不必要的资源浪费。
本文将利用区块链技术的去中心化、信息不可篡改和匿名性等特性,研究设计一个网络安全检查重复性校验系统,鼓励网络安全检查工作中各有关角色独立发布各自的检查工作信息,实现检查信息的多方全量采集与相互印证,发现检查重复实施情况及检查重复事项情况,供相关主管部门决策参考,以降低网络运营者的负担。
1 研究现状
近几年来,新型数字货币发展迅速,其中以比特币(Bitcoin)[2]为代表的数字货币的价值和社会影响力已经不可估量,比特币的底层技术区块链也随之成了一个新的技术领域,特别是将区块链与供应链、物联网、医疗、版权保护、农业等传统行业相结合,不断创造区块链技术新的研究热点,如“区块链+医疗”主要是研究建立基于区块链的医疗健康数据安全模型,通过共识机制保证在没有中心节点的情况下医疗机构快速达成一致,共享医疗健康数据。在我国,区块链已上升至国家战略高度,2019 年10 月24 日,习近平总书记在中央政治局第十八次集体学习时强调,把区块链作为核心技术自主创新重要突破口,加快推动区块链技术和产业创新发展。
2 重复性校验系统设计
由于监管主管部门、检查服务机构、网络运营者之间存在着较为复杂的关系,需要消除各相关单位真实上报网络安全检查信息的顾虑,并且需要防范网络安全检查各相关方为了规避暴露一些问题点而修改已上报检查信息的可能。本文着重通过区块链、多级密码管理等技术解决上述问题。系统的设计示意图如图1 所示,执行流程如图2 所示。
2.1 密钥分发模块
非对称加密技术是一种成熟的密码技术,具有公钥、私钥两个密钥,公钥与私钥为一对,使用公钥加密的数据只能用私钥解密,相应的使用私钥加密的数据只能用公钥解密,并且通过一个密钥无法推导出另一个密钥[3]。本文通过引入非对称加密技术实现各单位上报的网络安全检查信息的可靠加密存储,保障只能由平台管理者实现数据解密。密钥分发模块流程如下:
(1)平台管理者生成总体保管密钥对[PubKeyT,PriKeyT]。
(2)平台管理者为每一个单位单独生成密钥对[PubKeyi,PriKeyi]。
(3)平台管理者将各单位私钥 PriKeyi分发给各单位保管。
(4)平台管理者使用总体公钥PubKeyT对各单位公钥PubKeyi进行加密,得到各单位公钥密文Cipher(PubKeyi)。
(5)平台管理者对各单位公钥密文Cipher(PubKeyi)进行集中保管。
(6)平台管理者删除各单位原始公钥PubKeyi。
2.2 数据发布模块
监管主管部门、检查服务机构、网络运营者等单位独立将各自发起的、受委托的、接受的网络安全检查信息,在区块链和数据库中发布,发布过程使用前文的密钥进行加密保护。数据发布模块流程如下:
(1)各单位整理网络安全检查信息,包括检查时间、检查单位、委托检查服务机构、被查单位、检查通知、检查方案、检查结果等。
(2)各单位参照json 结构生成检查信息集InspectInfoSeti。
(3)各单位对网络安全检查信息集InspectInfoSeti生成检查信息摘要Hash(InspectInfoSeti)。
(4)各单位将检查信息摘要Hash(InspectInfoSeti)存储到区块链中。
(5)各单位对网络安全检查信息集InspectInfoSeti使用各自的私钥 PriKeyi进行加密生成检查信息密文Cipher(InspectInfoSeti)。
(6)各单位将检查信息密文Cipher(InspectInfoSeti)存入数据库集群中。
通过以上两个模块,各单位将检查信息摘要存储到区块链中,实现各单位发布信息的匿名性和不可篡改,各单位将检查信息密文存储在数据库中,实现即使数据库中数据、各单位私钥、各单位公钥密文等泄露,攻击者也无法解密检查信息,保障检查信息机密性。
图1 系统设计示意图
2.3 重复性校验模块
平台管理者对监管主管部门、检查服务机构、网络运营者发布的网络安全检查信息进行内部、外部多维度重复性校验,发现重复检查信息。重复性校验模块流程如下:
(1)平台管理者使用总体私钥 PriKeyT对各单位公钥密文Cipher(PubKeyi)进行解密,得到各单位公钥PubKeyi。
(2)平台管理者使用各单位公钥PubKeyi对检查信息密文Cipher(InspectInfoSeti)进行解密,得到检查信息集合InspectInfoSeti。
图2 系统流程示意图
(3)平台管理者删除各单位公钥PubKeyi。
(4)平台管理者对检查信息集合InspectInfoSeti按照监管主管部门、检查服务机构、网络运营者三个类别进行归类,并分别整理出各类别中的检查时间、检查单位、委托检查服务机构、被查单位、检查事项等主要内容。
(5)平台管理者在每个类别内部校验重复检查实施情况和重复检查事项。
(6)平台管理者在每个类别间校验重复检查实施情况和重复检查事项。
3 结束语
本文研究和设计了一个基于区块链的网络安全检查重复性校验系统,可以有效发现网络安全重复检查事项。后续,作者将把重复性校验系统中的网络安全检查信息自动化比对方法作为研究重点,使校验系统不断完善。