一种基于区块链的数据安全管理方法及系统与流程

文档序号:31063319发布日期:2022-08-09 20:01阅读:204来源:国知局
一种基于区块链的数据安全管理方法及系统与流程

1.本技术涉及数据处理领域,尤其涉及一种基于区块链的数据安全管理方法及系统。


背景技术:

2.区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。随着区块链技术的逐渐推广,越来越多的人了解到了区块链。区块链具有去中心化、防篡改、安全可信等特点,由于区块链上的数据难以篡改,在区块链上一个交易一旦发生,几乎不可能回滚。在传统的中心化系统中,由于中心节点的存在,我们可以人工的干涉系统的数据,通过高级权限来修正数据,抵消错误的发生。但在区块链上,事务一旦发生了,就没有办法撤销。尤其是公有链上,依托公有链技术的价值互联网,一旦转账交易发生了,是没有办法撤回的,只能依靠对方的再次发起一个反向交易来实现冲正。
3.随着区块链技术的广为人知,与此同时诸多黑客也涌入了区块链,各种智能合约的漏洞、各种新式的攻击,不断在公有链上出现。使用公有链技术的企业级联盟链,也同样面临着各种威胁。随着企业越来越重视区块链技术,越来越多的业务迁移到区块链上,企业可能面临的损失就越大。
4.因此,如何检测区块链的危险隐患,对区块链上的数据进行安全管理,提高区块链的安全性是目前亟需解决的技术问题。


技术实现要素:

5.本技术的目的在于提供一种基于区块链的数据安全管理方法及系统,检测区块链的危险隐患,对区块链上的数据进行安全管理,提高区块链的数据安全性。
6.为达到上述目的,本技术提供一种基于区块链的数据安全管理方法,该方法包括如下步骤:
7.响应于区块链节点发送的数据上传请求,对数据上传请求和待上传数据内容进行安全验证,若安全验证通过,则采集请求上传数据的区块链节点的信任评估数据,否则,禁止将数据上传至区块链;
8.根据信任评估数据,计算请求上传数据的区块链节点的可靠值;
9.比较请求上传数据的区块链节点的可靠值和预设第二阈值的大小,若请求上传数据的区块链节点的可靠值小于预设第二阈值,则禁止请求上传数据的区块链节点与区块链内其他节点进行数据交互,否则,允许请求上传数据的区块链节点与区块链内其他节点进行数据交互。
10.如上的,其中,加入区块链中成为区块链节点的方法为:对请求加入区块链的请求终端进行权限验证和网络安全检测,若权限验证和网络安全检测均通过,则允许该请求终端加入区块链作为区块链节点,否则,禁止该请求终端加入区块链。
11.如上的,其中,对请求终端进行权限验证的方法是:获取请求终端的验证信息,判
断验证信息是否为授权信息,若是,则请求终端的权限验证通过,否则,请求终端的权限验证未通过;
12.其中,验证信息包括:客户标签、网络协议和数字证书。
13.如上的,其中,若对请求加入区块链中的请求终端的权限验证和网络安全检测均通过,则建立该请求终端与区块链中其他区块链节点之间的数据加密传输通道。
14.如上的,其中,允许请求上传数据的区块链节点与区块链内其他节点进行数据交互后,接收待上传数据,将待上传数据上传至请求上传的区块链节点中。
15.如上的,其中,获取待上传数据的类型,根据待上传数据的类型不同,将数据存储至区块链节点的不同子区块中。
16.如上的,其中,请求终端加入区块链后,由区块链的网络层为请求终端分配一个数据收发地址,该数据收发地址作为区块链节点在区块链内的数据传输渠道地址。
17.如上的,其中,所述信任评估数据包括区块链节点的共识校验结果数据、网络安全异常数据和数据上传风险值。
18.本技术还提供一种基于区块链的数据安全管理系统,该系统包括:
19.数据安全验证模块,用于响应于区块链节点发送的数据上传请求,对数据上传请求和待上传数据内容进行安全验证,若安全验证通过,则通过数据采集模块,采集请求上传数据的区块链节点的信任评估数据,否则,禁止将数据上传至区块链;
20.数据处理器,用于根据信任评估数据,计算请求上传数据的区块链节点的可靠值;
21.数据比较模块,用于比较请求上传数据的区块链节点的可靠值和预设第二阈值的大小,若请求上传数据的区块链节点的可靠值小于预设第二阈值,则禁止请求上传数据的区块链节点与区块链内其他节点进行数据交互,否则,允许请求上传数据的区块链节点与区块链内其他节点进行数据交互。
22.如上的,其中,区块链节点管理模块,用于对请求加入区块链的请求终端进行权限验证和网络安全检测,若权限验证和网络安全检测均通过,则允许该请求终端加入区块链作为区块链节点,否则,禁止该请求终端加入区块链。
23.本技术实现的有益效果如下:
24.(1)本技术对请求加入区块链的请求终端进行权限验证和网络安全检测,若权限验证和网络安全检测均通过,则允许该请求终端加入区块链,建立该请求终端与区块链中各个节点之间的数据加密传输通道,否则,禁止请求终端加入区块链,进而提高了区块链节点的可靠性和安全性,提高数据传输的安全性,防止他人在数据传输的过程种非法盗取数据。
25.(2)本技术通过计算区块链节点的可靠值,从而对区块链节点上传数据的可靠性进行评估,当区块链节点的可靠值低于预设第二阈值时,表示该区块链节点上传数据的可靠性较低,较大可能存在安全隐患,此时,禁止区块链内其他节点与该区块链节点进行数据交互,提高区块链内数据的安全性。
附图说明
26.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
申请中记载的一些实施例,对于本领域技术人员来讲,还可以根据这些附图获得其他的附图。
27.图1为本技术实施例的一种基于区块链的数据安全管理方法流程图。
28.图2为本技术实施例的控制请求终端加入区块链的方法流程图。
29.图3为本技术实施例的对待上传数据和数据上传请求的风险评估方法流程图。
30.图4为本技术实施例的区块链节点中对不同类型数据进行分块存储的方法流程图。
31.图5为本技术实施例的一种基于区块链的数据安全管理系统的结构示意图。
32.附图标记:10-数据安全验证模块;20-数据采集模块;30-数据处理器;40-数据比较模块;50-数据传输模块;60-区块链节点管理模块;100-数据安全管理系统。
具体实施方式
33.下面结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
34.实施例一
35.如图1所示,本技术提供一种基于区块链的数据安全管理方法,该方法包括如下步骤:
36.步骤s1,对请求加入区块链的请求终端进行权限验证和网络安全检测,若权限验证和网络安全检测均通过,则允许该请求终端加入区块链,建立该请求终端与区块链中各个区块链节点之间的数据加密传输通道,否则,禁止该请求终端加入区块链。
37.具体的,响应于请求终端发送的加入区块链请求,对请求终端进行权限验证和网络安全检测,若权限验证和网络安全检测均通过,则允许该请求终端加入区块链,建立该请求终端与区块链中各个节点之间的数据加密传输通道,为该请求终端分配区块链节点地址和加入时间戳,否则,禁止请求终端加入区块链。对请求终端进行权限验证和网络安全检测,防止其他未授权的设备进去区块链访问区块链内的数据,保证区块链内数据节点的数据安全。
38.如图2所示,步骤s1包括如下子步骤:
39.步骤s110,对请求终端进行权限验证,若权限验证通过,则执行步骤s120,否则,禁止请求终端加入区块链。
40.具体的,对请求终端进行权限验证的方法是:获取请求终端的验证信息,判断验证信息是否为授权信息,若是,则请求终端的权限验证通过,否则,请求终端的权限验证未通过。其中验证信息包括客户标签、网络协议和数字证书等。授权信息为授权的客户标签、网络协议和数字证书等。若获取的请求终端的验证信息与授权信息均一致,则请求终端的权限验证通过,否则,请求终端的权限验证未通过。
41.步骤s120,对请求终端进行网络安全检测,若未检测到安全问题,则对请求终端的网络安全检测通过,允许该请求终端加入区块链,否则,禁止请求终端加入区块链。
42.其中,网络安全检测包括主机漏洞检测、网页漏洞检测和恶意链接检测等,若未检
测到网络安全问题,则对请求终端的网络安全检测通过。
43.步骤s130,建立请求终端与区块链中其他区块链节点之间的数据加密传输通道。
44.数据加密传输通道由两个区块链节点通过各自的公钥和私钥进行协商,协商出传输过程使用的对称加密方式和密码,通过对称加密方式对传输数据进行加密,并使用滑动窗口、随机数或签名机制对传输数据进行保护,防止数据被监听或攻击。
45.步骤s140,为该请求终端分配区块链节点地址,并标记加入时间戳。
46.其中,加入时间戳为请求终端加入区块链节点的时间点。
47.进一步,为加入区块链中的请求终端进行编号命名。
48.优选的,请求终端加入区块链后,由区块链的网络层分配一个数据收发地址,这个数据收发地址作为区块链节点在区块链内的数据传输渠道地址,其他不在网的设备或者没有数据收发地址(没有数据传输地址)的设备均无法从区块链节点获取数据,保证区块链的数据节点的数据不被区块链外其他设备获取,提高区块链的数据传输安全。
49.步骤s2,响应于区块链节点发送的数据上传请求,接收区块链节点发送的数据上传请求,对数据上传请求和待上传数据内容进行安全验证,若安全验证通过,则执行下一步:对区块链节点进行信任评估,否则,禁止将数据上传至区块链。
50.具体的,响应于数据上传请求,通过数据加密传输通道接收区块链节点发送的数据上传请求,对数据上传请求和待上传数据内容进行安全验证,若安全验证通过,则执行下一步,对区块链节点进行信任评估,否则,禁止将数据上传至区块链。
51.如图3所示,对数据上传请求和待上传数据内容进行安全验证的方法包括:
52.步骤s210,采集数据上传请求和待上传数据内容的风险数据。
53.风险数据包括:恶意词或非法敏感词。
54.步骤s220,根据采集的风险数据,计算数据上传风险值。
55.其中,数据上传风险值s的计算方法为:
[0056][0057]
其中,s表示数据上传风险值;val表示待上传数据的价值;s1表示恶意词的影响权重;s2表示非法敏感词的影响权重;s1+s2=1;a表示恶意词总种类数;ea表示第a种恶意词的恶意值;ha表示第a种恶意词的数量;d表示非法敏感词的总种类数;zd表示第d种非法敏感词的风险值;mfd表示第d种非法敏感词的数量。
[0058]
其中,预先设定多种恶意词的恶意值列表和多种非法敏感词的风险值列表,根据数据上传请求和待上传数据内容中检测到的恶意词和非法敏感词,以及预先设定多种恶意词的恶意值列表和多种非法敏感词的风险值列表,获取数据上传请求和待上传数据内容中的恶意词的恶意值和非法敏感词的风险值,作为待上传数据的风险数据。
[0059]
其中;待上传数据的价值val由数据隐私性和生成数据成本确定。
[0060]
val=q1*b1+q2*b2;
[0061]
其中,q1表示数据隐私性影响因子;q2表示生成数据成本影响因子;b1表示数据隐私值;b2表示生成数据成本。
[0062]
其中,数据隐私值为数据拥有者按照数据隐私评价表的评价标准对数据进行的评
估值;数据隐私值越大说明数据的重要性越大,数据价值越高,数据被恶意盗取后造成的损失越大。生成数据成本表示获取待上传数据所付出的成本(即花费的费用代价),生成数据成本越高,表示数据的价值越高。
[0063]
步骤s230,比较数据上传风险值和预设第一阈值的大小,若数据上传风险值大于预设第一阈值,则禁止上传该待上传数据,若数据上传风险值小于预设第一阈值,则对区块链节点进行信任评估。
[0064]
步骤s3,采集请求上传数据的区块链节点的信任评估数据。
[0065]
其中,信任评估数据包括区块链节点的共识校验结果数据、网络安全异常数据和数据上传风险值。
[0066]
对区块链节点进行共识算法校验,例如,使用工作量证明pow、权益证明pos、授权工作证明dpos、拜占庭容错算法中的至少一种,获取区块链节点的共识校验结果数据,若对区块链节点进行的共识算法校验均通过(成功),则对该区块链节点可信任,若有任意一种共识算法校验未通过,则对该区块链节点不可信任,进而验证区块链节点的可信任性。
[0067]
对区块链节点进行网络安全监测,获取最近一段时间内(例如:一个月、三个月或半年等)区块链节点的网络安全异常数据。网络安全异常数据包括:主机漏洞检测、网页漏洞检测和恶意链接检测等。
[0068]
步骤s4,根据信任评估数据,计算请求上传数据的区块链节点的可靠值。
[0069]
其中,区块链节点的可靠值g1的计算方法为:
[0070][0071]
其中,g1表示区块链节点的可靠值;γ表示共识算法校验结果,若共识算法校验通过,则γ=1,否则,γ=0;w1表示网络安全异常数据的影响权重;w2表示数据上传风险的影响权重;w1+w2=1;m表示网络安全异常数据的总种类数;αi表示第i种网络安全异常数据的危险值;fi表示第i种网络安全异常数据产生的总数量;δt表示对区块链节点进行网络安全监测的时长(单位:天);n表示区块链节点在时长δt内向区块链上传数据的总次数;y表示区块链节点上传数据的最大风险值(预设第一阈值);rj表示区块链节点第j次上传数据的数据上传风险值。
[0072]
步骤s5,比较请求上传数据的区块链节点的可靠值和预设第二阈值的大小,若请求上传数据的区块链节点的可靠值小于预设第二阈值,则为请求上传数据的区块链节点标记为风险节点,禁止请求上传数据的区块链节点与区块链内其他节点进行数据交互,否则,允许请求上传数据的区块链节点与区块链内其他节点进行数据交互。
[0073]
步骤s6,接收待上传数据,将待上传数据上传至请求上传的区块链节点。
[0074]
具体的,区块链管理节点接收请求上传数据的区块链节点的待上传数据,并将待上传数据上传至请求上传的区块链节点。
[0075]
步骤s7,获取待上传数据的类型,根据待上传数据的类型不同,将数据存储至区块链节点的不同子区块中。
[0076]
如图4所示,步骤s7包括如下子步骤:
[0077]
步骤s710,对区块链节点中各个子区块进行数据存储类型的标记。
[0078]
其中,区块链节点包括多个子区块,每一个子区块存储不同类型的数据,为每一个
子区块标记数据存储类型。
[0079]
步骤s720,根据待上传数据的类型,选择对应数据存储类型的子区块,将待上传数据存储至选择的子区块中。
[0080]
步骤s730,将待上传数据的摘要信息添加至子区块的存储数据列表中。存储数据列表中存储待上传数据的摘要信息(包括数据主题、数据上传者、数据上传时间和数据关键词等),以方便获取或查看子区块存储的数据信息。
[0081]
实施例二
[0082]
如图5所示,本技术提供一种基于区块链的数据安全管理系统100,该系统100包括:
[0083]
数据安全验证模块10,用于响应于区块链节点发送的数据上传请求,对数据上传请求和待上传数据内容进行安全验证,若安全验证通过,则通过数据采集模块20,采集请求上传数据的区块链节点的信任评估数据,否则,禁止将数据上传至区块链;
[0084]
数据处理器30,用于根据信任评估数据,计算请求上传数据的区块链节点的可靠值;
[0085]
数据比较模块40,用于比较请求上传数据的区块链节点的可靠值和预设第二阈值的大小,若请求上传数据的区块链节点的可靠值小于预设第二阈值,则禁止请求上传数据的区块链节点与区块链内其他节点进行数据交互,否则,允许请求上传数据的区块链节点与区块链内其他节点进行数据交互。
[0086]
数据传输模块50,用于接收待上传数据,将待上传数据上传至请求上传的区块链节点。
[0087]
该系统还包括:
[0088]
区块链节点管理模块60,用于对请求加入区块链的请求终端进行权限验证和网络安全检测,若权限验证和网络安全检测均通过,则允许该请求终端加入区块链作为区块链节点,否则,禁止该请求终端加入区块链。
[0089]
本技术实现的有益效果如下:
[0090]
(1)本技术对请求加入区块链的请求终端进行权限验证和网络安全检测,若权限验证和网络安全检测均通过,则允许该请求终端加入区块链,建立该请求终端与区块链中各个节点之间的数据加密传输通道,否则,禁止请求终端加入区块链,进而提高了区块链节点的可靠性和安全性,提高数据传输的安全性,防止他人在数据传输的过程种非法盗取数据。
[0091]
(2)本技术通过计算区块链节点的可靠值,从而对区块链节点上传数据的可靠性进行评估,当区块链节点的可靠值低于预设第二阈值时,表示该区块链节点上传数据的可靠性较低,较大可能存在安全隐患,此时,禁止区块链内其他节点与该区块链节点进行数据交互,提高区块链内数据的安全性。
[0092]
以上所述仅为本发明的实施方式而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理内所做的任何修改、等同替换、改进等,均应包括在本发明的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1