一种基于区块链的大数据隐私共享安全保护系统及方法
技术领域
本发明涉及数据安全技术领域,具体为一种基于区块链的大数据隐私共享安全保护系统及方法。
背景技术
区块链是一个共享数据库,存储于其中的数据或信息,具有“不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征,大数据相较于区块链而言容易遭受异常流量攻击,在数据传输时存在安全隐患,整体安全性较低。
现有的大数据隐私共享安全保护系统在对数据进行传输共享时,利用的隐私保护技术大多对静态数据起到较好的作用,但当前的大数据量在应用过程中是动态增加的,因此,大数据在传输共享时存在安全隐患,降低了大数据的隐私性,以及大数据在传输时,由于大数据传输的异构、多源、关联等特点,即使多个数据集各自脱敏处理,数据集仍然存在因关联分析而造成个人信息泄露的风险,降低了大数据所在环境的安全性,以及在大数据环境下,终端用户较多,且受众类型多,对用户身份确认环节需要耗费大量处理能力,降低了大数据共享速率。
发明内容
本发明的目的在于提供一种基于区块链的大数据隐私共享安全保护系统及方法,以解决上述背景技术中提出的问题。
为了解决上述技术问题,本发明提供如下技术方案:一种基于区块链的大数据隐私共享安全保护方法,所述方法包括以下步骤:
步骤一:将数据存储方、数据共享方和数据应用方均作为区块链网络上的连接节点,对数据存储方的动态数据进行隐私加密处理,动态数据表示对原数据经过处理后的数据;
步骤二:数据应用方发出数据共享请求,区块链网络对数据应用方身份进行认证,数据共享方根据认证结果决定是否进行数据共享;
步骤三:数据共享时,共享数据从数据存储方经过区块链网络传输至数据应用方,数据应用方根据数据共享方经过区块链网络传输的密钥对共享数据进行解密。
进一步的,所述步骤一中对数据存储方的动态数据进行隐私加密处理的具体方法为:
1)记录动态数据每次变动时的可信时间点,以及动态数据每次变动时的初始位置、变动范围和变动类型;
2)基于可信时间点对动态数据进行隐私加密处理,具体方法为:
Step1:将可信时间点、动态数据变动初始位置和动态数据变动范围转换为十进制数值,将转换后的十进制数值分别放入集合A、B、C中;
Step2:判断动态数据变动类型为数据替换还是数据更新,若动态数据为替换数据,则将数值1置于可信时间点中年份表示的十进制值前,若动态数据为更新数据,则将数值0置于可信时间点中年份表示的十进制值后,数据替换表示将原数据换一种表达方式进行表述,数据更新表示对原数据进行更改;
Step3:根据动态数据的敏感属性将集合A、B、C和动态数据划分成m个片段,对m个片段中的冗余片段进行剔除,将剩余片段放置在的网格中,并对网格进行标号处理,根据不同冗余片段对应的剔除数量,将对应片段放置在标号与剔除数量相同的网格中,当存在多个片段的剔除数量相同时,将多个片段放入同一个网格中,对不存在冗余片段的片段按照片段排队序号依次放入网格中,将存在冗余片段的网格标号值通过私钥传输至数据应用方,将不存在冗余片段的片段排队序号值通过公钥传输至数据应用方,基于网格构建坐标系,对各片段所在位置与X轴之间的夹角进行计算,将计算结果存储在片段首位,其中/>表示对/>进行向上取整。
进一步的,所述Step3中根据动态数据的敏感属性将集合A、B、C和动态数据划分成m个片段,具体方法为:
①.对动态数据与原数据之间的敏感度进行计算,具体的计算公式M为:
其中,i=n,n+1,n+2,…,n+v,n表示动态数据更新或替换的初始位置,v表示动态数据更新或替换的总位数,Xi表示原数据中第i位对应的数值,Yi表示动态数据中与原数据第i位相对应的位置记载的数值,表示将数值转换为v维向量,通过计算两向量与原点组成的线段之间的余弦值大小,对原数据和动态数据之间的敏感度进行计算,保证计算结果能够对原数据和动态数据之间的敏感度进行精确描述,且计算过程更为简单,当M越接近1时,表示原数据和动态数据之间的敏感度越高,当M越接近0时,表示原数据和动态数据之间的敏感度越低;
②.基于动态数据与原数据之间的敏感度,将集合A、B、C和动态数据划分成m个片段,则:
其中,a、b、c分别表示动态数据变动可信时间点和动态数据变动类型、动态数据变动初始位置、动态数据变动范围表示的十进制值的总位数,[(1-M)*10]表示对(1-M)*10进行取整,表示敏感度越高的动态数据划分的片段数量越多,保证动态数据的离散传输,提高了动态数据的共享隐私性,(1-M)*10表示将数值1-M扩大10倍,便于对(1-M)*10执行取整操作。
进一步的,所述步骤二中区块链网络对数据应用方身份进行认证的具体方法为:
<1>.对数据应用方所属类型和数据应用方的请求共享信息进行匹配对应,分析请求的共享信息与数据应用方所属类型之间的关联程度,具体的分析方法为:
检索共享数据中与共享请求信息之间存在关联的部分,放入序列U中,计算序列U与共享数据序列之间的关联度,关联度计算公式E为:
其中,t表示数据应用方所属类型,gt表示当数据应用方所属类型为t时对应的数据应用方总数量,d表示序列U对应的数据总量,D表示请求的共享数据序列对应的数据总量,k=1,2,3,…,s表示当数据应用方所属类型为t时发出的数据请求共享总量,表示当数据应用方所属类型为t时共享数据与数据所属类型之间的关联度,/>表示当数据应用方所属类型为t时共享数据与数据所属类型之间的平均关联度;
<2>.基于<1>中的分析结果,当数据应用方发出共享请求时,通过请求的共享信息预测数据应用方所属类型,若预测的数据应用方所属类型与实际情况符合,则数据应用方身份认证成功,反之,则身份认证失败。
进一步的,所述步骤三中对共享数据进行解密的具体方法为:
(1).根据共享数据中各片段长度,将共享数据按照组合片段和单独片段进行区分;
(2).基于组合片段或单独片段的首位存储值,得到各片段在网格中的存储位置,根据存储位置对网格存储状态进行还原,还原后,对各片段的排队顺序进行初步确认;
(3).数据应用方通过私钥得知存在冗余片段的网格标号值,通过公钥得知不存在冗余片段的片段排队顺序,进而分析组合片段中的片段是否存在冗余片段,以及存在的冗余片段数量,得到完整片段;
(4).基于原数据与动态数据之间的敏感度,将冗余片段插入片段排队序列中,对表示动态数据完整片段的排队顺序进行确定,得到共享数据,以及共享数据最新变动时间。
一种基于区块链的大数据隐私共享安全保护系统,所述系统包括数据传输分布模块、隐私加密处理模块、身份认证模块和共享数据解密模块;
所述数据传输分布模块用于对数据存储方、数据共享方、数据应用方与区块链网络的连接分布情况进行采集,并将采集内容传输至隐私加密处理模块;
所述隐私加密处理模块用于对数据传输分布模块传输的采集内容进行接收,对区块链网络中的共享数据进行隐私加密处理,并将隐私加密处理后的共享数据传输至身份认证模块,隐私加密处理模块设置在区块链网络中;
所述身份认证模块用于对隐私加密处理模块传输的共享数据进行接收,对发出共享请求的数据应用方身份进行验证,并将验证结果传输至共享数据解密模块,身份认证模块设置在数据共享方;
所述共享数据解密模块用于对身份认证模块传输的身份认证结果进行接收,数据共享方根据身份验证结果发出指令,使区块链网络将共享数据和密钥发送至共享数据解密模块,共享数据解密模块利用密钥对共享数据进行解密处理,共享数据解密模块设置在数据应用方。
进一步的,所述数据存储方、数据共享方和数据应用方均与区块链网络进行连接,所述数据存储方用于对动态数据进行存储,以及根据数据应用方的身份认证结果将共享数据从数据存储方传输至区块链网络,数据共享方用于根据数据应用方的身份认证结果发出指令,使密钥从数据共享方传输至区块链网络,使共享数据和密钥从区块链网络传输至数据应用方,数据应用方用于向数据共享方发出共享数据应用请求,接收区块链网络传输的共享数据和密钥,以及利用密钥对共享数据进行解密处理,区块链网络用于对存储的共享数据进行隐私加密处理。
进一步的,所述隐私加密处理模块包括动态数据状态采集单元、状态信息转换单元、动态数据敏感度计算单元、动态数据划分单元和动态数据加密处理单元;
所述动态数据状态采集单元对数据传输分布模块传输的采集内容进行接收,对动态数据每次变动时的可信时间点、动态数据每次变动时的初始位置、动态数据变动范围和动态数据变动类型进行采集,并将采集信息传输至状态信息转换单元,动态数据指原数据中发生变动的数据;
所述状态信息转换单元对动态数据状态采集单元传输的采集信息进行接收,将可信时间点、动态数据变动初始位置和动态数据变动范围分别转换为十进制数值,接着判断动态数据变动类型为数据替换还是数据更新,若动态数据为替换数据,则将数值1置于可信时间点中年份表示的十进制值前,若动态数据为更新数据,则将数值0置于可信时间点中年份表示的十进制值后,并将转换后的十进制值传输至动态数据划分单元,数据替换表示将原数据换一种表达方式进行表述,数据更新表示对原数据进行更改;
所述动态数据敏感度计算单元对动态数据和动态数据对应的原数据进行采集,将动态数据、原数据分别放入一个多维向量中,对两个多维向量之间的余弦值进行计算,当得到的余弦值接近1时,表示原数据和动态数据之间的敏感度越高,当得到的余弦值接近0时,表示原数据和动态数据之间的敏感度越低,并将计算得到的余弦值传输至动态数据划分单元;
所述动态数据划分单元对动态数据敏感度计算单元传输的余弦值,状态信息转换单元传输的转换后的十进制值进行接收,基于动态数据变动可信时间点和动态数据变动类型表示的十进制值的总位数a、动态数据变动初始位置表示的十进制值的总位数b、动态数据变动范围表示的十进制值的总位数c、敏感度值M和动态数据变动总位数v构建片段划分模型其中,[(1-M)*10]表示对(1-M)*10进行取整,/>表示敏感度越高的动态数据划分的片段数量越多,保证动态数据的离散传输,提高了动态数据的共享隐私性,(1-M)*10表示将数值1-M扩大10倍,便于对(1-M)*10执行取整操作,并将划分的片段数量传输至动态数据加密处理单元;
所述动态数据加密处理单元对动态数据划分单元传输的片段划分数量m进行接收,对m个片段中的冗余片段进行剔除,将剩余片段放置在的网格中,并对网格进行标号处理,根据不同冗余片段对应的剔除数量,将对应片段放置在标号与剔除数量相同的网格中,当存在多个片段的剔除数量相同时,将多个片段放入同一个网格中,对不存在冗余片段的片段按照片段排队顺序依次放入网格中,将存在冗余片段的网格标号值通过私钥传输至数据应用方,将不存在冗余片段的片段排队顺序值通过公钥传输至数据应用方,基于网格构建坐标系,对各片段所在位置与X轴之间的夹角进行计算,将计算结果存储在片段首位,其中/>表示对/>进行向上取整,并将共享数据加密处理结果、公钥和私钥传输至身份认证模块。
进一步的,所述身份认证模块包括分析单元和身份验证单元;
所述分析单元对动态数据加密处理单元传输的共享数据加密处理结果、公钥和私钥进行接收,对数据应用方所属类型和数据应用方的请求共享信息进行匹配对应,检索共享数据中与共享请求信息之间存在关联的部分,放入序列U中,基于应用方所属类型计算序列U与共享数据序列之间的平均关联度,根据计算结果分析请求的共享信息与数据应用方所属类型之间的关联程度,并将分析结果和共享数据加密处理结果、公钥、私钥传输至身份验证单元;
所述身份验证单元对分析单元传输的分析结果和共享数据加密处理结果、公钥、私钥进行接收,当数据应用方发出共享请求时,通过请求的共享信息预测数据应用方所属类型,若预测的数据应用方所属类型与实际情况符合,则数据应用方身份认证成功,反之,则身份认证失败,并将身份认证结果和共享数据加密处理结果传输至共享数据解密模块。
进一步的,所述共享数据解密模块对身份验证单元传输的身份认证结果和共享数据加密处理结果、公钥、私钥进行接收,根据共享数据中各片段长度,将共享数据按照组合片段和单独片段进行区分,基于组合片段或单独片段的首位存储值,得到各片段在网格中的存储位置,根据存储位置对网格存储状态进行还原,还原后,对各片段的排队顺序进行初步确认,数据应用方通过私钥得知存在冗余片段的网格标号值,通过公钥得知不存在冗余片段的片段排队顺序,进而分析组合片段中的片段是否存在冗余片段,以及存在的冗余片段数量,得到完整片段,基于原数据与动态数据之间的敏感度,将冗余片段插入片段排队序列中,对表示动态数据完整片段的排队顺序进行确定,得到共享数据,以及共享数据最新变动时间。
与现有技术相比,本发明所达到的有益效果是:
1.本发明通过对动态数据与原数据之间的敏感度进行计算,基于敏感度值、动态数据变动可信时间点和动态数据变动类型表示的十进制值的总位数、动态数据变动初始位置表示的十进制值的总位数、动态数据变动范围表示的十进制值的总位数和动态数据变动总位数构建片段划分模型,实现对共享数据的分段传输,以及基于对应片段的冗余量和片段排队序列对片段进行组合传递或单独传递,保证传递的片段即使被泄露,由于片段之间的关联性小,而无法通过片段得到完整信息,降低了个人信息泄露风险,进一步提高了大数据、及大数据所在环境的安全性。
2.本发明通过对动态数据与原数据之间的敏感度值进行计算,基于敏感度值对动态数据单独传输,将动态数据传输与动态数据传输区分开来,保证数据在进行传输共享时,具有良好的隐私保护性,进一步提高了系统的适用范围。
3.本发明通过对数据应用方所属类型和数据应用方的请求共享信息进行匹配对应,分析请求的共享信息与数据应用方所属类型之间的关联程度,通过数据应用方请求的共享信息预测数据应用方所属类型,将预测的数据应用方所属类型与实际情况进行对比,根据对比结果判断数据应用方身份验证是否通过,此过程将终端用户按照所属类型进行划分,对属于同种类型的终端用户进行统一管理,且根据数据应用方请求的共享信息预测数据应用方所属类型,减少了用户身份确认环节耗费的时间,且身份认证结果更为准确,进一步提高了数据共享速率。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是本发明一种基于区块链的大数据隐私共享安全保护系统及方法的流程示意图;
图2是本发明一种基于区块链的大数据隐私共享安全保护系统及方法的工作原理结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1和图2,本发明提供技术方案:一种基于区块链的大数据隐私共享安全保护方法,其特征在于:方法包括以下步骤:
2.步骤一:将数据存储方、数据共享方和数据应用方均作为区块链网络上的连接节点,对数据存储方的动态数据进行隐私加密处理,动态数据表示对原数据经过处理后的数据,具体方法为:
3)记录动态数据每次变动时的可信时间点,以及动态数据每次变动时的初始位置、变动范围和变动类型;
4)基于可信时间点对动态数据进行隐私加密处理,具体方法为:
Step1:将可信时间点、动态数据变动初始位置和动态数据变动范围转换为十进制数值,将转换后的十进制数值分别放入集合A、B、C中;
Step2:判断动态数据变动类型为数据替换还是数据更新,若动态数据为替换数据,则将数值1置于可信时间点中年份表示的十进制值前,若动态数据为更新数据,则将数值0置于可信时间点中年份表示的十进制值后,数据替换表示将原数据换一种表达方式进行表述,数据更新表示对原数据进行更改;
Step3:根据动态数据的敏感属性将集合A、B、C和动态数据划分成m个片段,对m个片段中的冗余片段进行剔除,将剩余片段放置在的网格中,并对网格进行标号处理,根据不同冗余片段对应的剔除数量,将对应片段放置在标号与剔除数量相同的网格中,当存在多个片段的剔除数量相同时,将多个片段放入同一个网格中,对不存在冗余片段的片段按照片段排队序号依次放入网格中,将存在冗余片段的网格标号值通过私钥传输至数据应用方,将不存在冗余片段的片段排队序号值通过公钥传输至数据应用方,基于网格构建坐标系,对各片段所在位置与X轴之间的夹角进行计算,将计算结果存储在片段首位,其中/>表示对/>进行向上取整,根据动态数据的敏感属性将集合A、B、C和动态数据划分成m个片段,具体方法为:
①.对动态数据与原数据之间的敏感度进行计算,具体的计算公式M为:
其中,i=n,n+1,n+2,…,n+v,n表示动态数据更新或替换的初始位置,v表示动态数据更新或替换的总位数,Xi表示原数据中第i位对应的数值,Yi表示动态数据中与原数据第i位相对应的位置记载的数值,表示将数值转换为v维向量,通过计算两向量与原点组成的线段之间的余弦值大小,对原数据和动态数据之间的敏感度进行计算,保证计算结果能够对原数据和动态数据之间的敏感度进行精确描述,且计算过程更为简单,当M越接近1时,表示原数据和动态数据之间的敏感度越高,当M越接近0时,表示原数据和动态数据之间的敏感度越低;
②.基于动态数据与原数据之间的敏感度,将集合A、B、C和动态数据划分成m个片段,则:
其中,a、b、c分别表示动态数据变动可信时间点和动态数据变动类型、动态数据变动初始位置、动态数据变动范围表示的十进制值的总位数,[(1-M)*10]表示对(1-M)*10进行取整,表示敏感度越高的动态数据划分的片段数量越多,保证动态数据的离散传输,提高了动态数据的共享隐私性,(1-M)*10表示将数值1-M扩大10倍,便于对(1-M)*10执行取整操作;
步骤二:数据应用方发出数据共享请求,区块链网络对数据应用方身份进行认证,数据共享方根据认证结果决定是否进行数据共享,具体方法为:
<1>.对数据应用方所属类型和数据应用方的请求共享信息进行匹配对应,分析请求的共享信息与数据应用方所属类型之间的关联程度,具体的分析方法为:
检索共享数据中与共享请求信息之间存在关联的部分,放入序列U中,计算序列U与共享数据序列之间的关联度,关联度计算公式E为:
其中,t表示数据应用方所属类型,gt表示当数据应用方所属类型为t时对应的数据应用方总数量,d表示序列U对应的数据总量,D表示请求的共享数据序列对应的数据总量,k=1,2,3,…,s表示当数据应用方所属类型为t时发出的数据请求共享总量,表示当数据应用方所属类型为t时共享数据与数据所属类型之间的关联度,/>表示当数据应用方所属类型为t时共享数据与数据所属类型之间的平均关联度;
<2>.基于<1>中的分析结果,当数据应用方发出共享请求时,通过请求的共享信息预测数据应用方所属类型,若预测的数据应用方所属类型与实际情况符合,则数据应用方身份认证成功,反之,则身份认证失败;
步骤三:数据共享时,共享数据从数据存储方经过区块链网络传输至数据应用方,数据应用方根据数据共享方经过区块链网络传输的密钥对共享数据进行解密,对共享数据进行解密的具体方法为:
(1).根据共享数据中各片段长度,将共享数据按照组合片段和单独片段进行区分;
(2).基于组合片段或单独片段的首位存储值,得到各片段在网格中的存储位置,根据存储位置对网格存储状态进行还原,还原后,对各片段的排队顺序进行初步确认;
(3).数据应用方通过私钥得知存在冗余片段的网格标号值,通过公钥得知不存在冗余片段的片段排队顺序,进而分析组合片段中的片段是否存在冗余片段,以及存在的冗余片段数量,得到完整片段;
(4).基于原数据与动态数据之间的敏感度,将冗余片段插入片段排队序列中,对表示动态数据完整片段的排队顺序进行确定,得到共享数据,以及共享数据最新变动时间。
一种基于区块链的大数据隐私共享安全保护系统,系统包括数据传输分布模块、隐私加密处理模块、身份认证模块和共享数据解密模块;
数据传输分布模块用于对数据存储方、数据共享方、数据应用方与区块链网络的连接分布情况进行采集,并将采集内容传输至隐私加密处理模块;
数据存储方、数据共享方和数据应用方均与区块链网络进行连接,数据存储方用于对动态数据进行存储,以及根据数据应用方的身份认证结果将共享数据从数据存储方传输至区块链网络,数据共享方用于根据数据应用方的身份认证结果发出指令,使密钥从数据共享方传输至区块链网络,使共享数据和密钥从区块链网络传输至数据应用方,数据应用方用于向数据共享方发出共享数据应用请求,接收区块链网络传输的共享数据和密钥,以及利用密钥对共享数据进行解密处理,区块链网络用于对存储的共享数据进行隐私加密处理;
隐私加密处理模块用于对数据传输分布模块传输的采集内容进行接收,对区块链网络中的共享数据进行隐私加密处理,并将隐私加密处理后的共享数据传输至身份认证模块,隐私加密处理模块设置在区块链网络中;
隐私加密处理模块包括动态数据状态采集单元、状态信息转换单元、动态数据敏感度计算单元、动态数据划分单元和动态数据加密处理单元;
动态数据状态采集单元对数据传输分布模块传输的采集内容进行接收,对动态数据每次变动时的可信时间点、动态数据每次变动时的初始位置、动态数据变动范围和动态数据变动类型进行采集,并将采集信息传输至状态信息转换单元,动态数据指原数据中发生变动的数据;
状态信息转换单元对动态数据状态采集单元传输的采集信息进行接收,将可信时间点、动态数据变动初始位置和动态数据变动范围分别转换为十进制数值,接着判断动态数据变动类型为数据替换还是数据更新,若动态数据为替换数据,则将数值1置于可信时间点中年份表示的十进制值前,若动态数据为更新数据,则将数值0置于可信时间点中年份表示的十进制值后,并将转换后的十进制值传输至动态数据划分单元,数据替换表示将原数据换一种表达方式进行表述,数据更新表示对原数据进行更改;
动态数据敏感度计算单元对动态数据和动态数据对应的原数据进行采集,将动态数据、原数据分别放入一个多维向量中,对两个多维向量之间的余弦值进行计算,当得到的余弦值接近1时,表示原数据和动态数据之间的敏感度越高,当得到的余弦值接近0时,表示原数据和动态数据之间的敏感度越低,并将计算得到的余弦值传输至动态数据划分单元;
动态数据划分单元对动态数据敏感度计算单元传输的余弦值,状态信息转换单元传输的转换后的十进制值进行接收,基于动态数据变动可信时间点和动态数据变动类型表示的十进制值的总位数a、动态数据变动初始位置表示的十进制值的总位数b、动态数据变动范围表示的十进制值的总位数c、敏感度值M和动态数据变动总位数v构建片段划分模型其中,[(1-M)*10]表示对(1-M)*10进行取整,/>表示敏感度越高的动态数据划分的片段数量越多,保证动态数据的离散传输,提高了动态数据的共享隐私性,(1-M)*10表示将数值1-M扩大10倍,便于对(1-M)*10执行取整操作,并将划分的片段数量传输至动态数据加密处理单元;
动态数据加密处理单元对动态数据划分单元传输的片段划分数量m进行接收,对m个片段中的冗余片段进行剔除,将剩余片段放置在的网格中,并对网格进行标号处理,根据不同冗余片段对应的剔除数量,将对应片段放置在标号与剔除数量相同的网格中,当存在多个片段的剔除数量相同时,将多个片段放入同一个网格中,对不存在冗余片段的片段按照片段排队顺序依次放入网格中,将存在冗余片段的网格标号值通过私钥传输至数据应用方,将不存在冗余片段的片段排队顺序值通过公钥传输至数据应用方,基于网格构建坐标系,对各片段所在位置与X轴之间的夹角进行计算,将计算结果存储在片段首位,其中/>表示对/>进行向上取整,并将共享数据加密处理结果、公钥和私钥传输至身份认证模块;
身份认证模块用于对隐私加密处理模块传输的共享数据进行接收,对发出共享请求的数据应用方身份进行验证,并将验证结果传输至共享数据解密模块,身份认证模块设置在数据共享方;
身份认证模块包括分析单元和身份验证单元;
分析单元对动态数据加密处理单元传输的共享数据加密处理结果、公钥和私钥进行接收,对数据应用方所属类型和数据应用方的请求共享信息进行匹配对应,检索共享数据中与共享请求信息之间存在关联的部分,放入序列U中,基于应用方所属类型计算序列U与共享数据序列之间的平均关联度,根据计算结果分析请求的共享信息与数据应用方所属类型之间的关联程度,并将分析结果和共享数据加密处理结果、公钥、私钥传输至身份验证单元;
身份验证单元对分析单元传输的分析结果和共享数据加密处理结果、公钥、私钥进行接收,当数据应用方发出共享请求时,通过请求的共享信息预测数据应用方所属类型,若预测的数据应用方所属类型与实际情况符合,则数据应用方身份认证成功,反之,则身份认证失败,并将身份认证结果和共享数据加密处理结果传输至共享数据解密模块;
共享数据解密模块用于对身份认证模块传输的身份认证结果进行接收,数据共享方根据身份验证结果发出指令,使区块链网络将共享数据和密钥发送至共享数据解密模块,共享数据解密模块利用密钥对共享数据进行解密处理,共享数据解密模块设置在数据应用方。
共享数据解密模块对身份验证单元传输的身份认证结果和共享数据加密处理结果、公钥、私钥进行接收,根据共享数据中各片段长度,将共享数据按照组合片段和单独片段进行区分,基于组合片段或单独片段的首位存储值,得到各片段在网格中的存储位置,根据存储位置对网格存储状态进行还原,还原后,对各片段的排队顺序进行初步确认,数据应用方通过私钥得知存在冗余片段的网格标号值,通过公钥得知不存在冗余片段的片段排队顺序,进而分析组合片段中的片段是否存在冗余片段,以及存在的冗余片段数量,得到完整片段,基于原数据与动态数据之间的敏感度,将冗余片段插入片段排队序列中,对表示动态数据完整片段的排队顺序进行确定,得到共享数据,以及共享数据最新变动时间。
实施例:设动态数据变动时的可信时间点为2013年2月18日15:06:27,动态数据变动范围为4,动态数据变动初始位置为第46位,动态数据变动类型为替换数据,替换数据为(1,3,7,3),原数据为(2,5,5,7),则将数据转换为十进制值为:
可信时间点2013年2月18日15:06:27转换为十进制值为:135\2\12\9\6\15;
动态数据变动范围转换为十进制值为:4;
动态数据变动初始位置转换为十进制值为:22;
动态数据变动类型为替换数据,则对应的十进制值为:1;
则,集合A、B、C分别表示为:
A=[1135\2\12\9\6\15]、B=[4]、C=[22];
利用计算公式M,对动态数据与原数据之间的敏感度进行计算,则:
其中,M=0.87≈1,表示替换数据与原数据敏感度较高,可通过原数据推出替换数据;
则动态数据划分为
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。