一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

多授权中心基于属性的确保数据删除的加密系统及方法与流程

2022-03-09 06:02:30 来源:中国专利 TAG:


1.本发明属于云计算技术领域,具体涉及一种多授权中心基于属性的确保数据删除的加密系统及方法。


背景技术:

2.为了缓解密钥托管问题,chase提出了多授权中心属性基加密(ma-abe)的概念,并且该技术已经在云存储环境中得到了广泛的应用。在数据共享环境中,数据的安全删除至关重要,但却很少受到重视。


技术实现要素:

3.本发明的目的在于提供一种多授权中心基于属性的确保数据删除的加密系统及方法,该系统及方法在保证可靠性的前提下,有效确保了数据删除的可验证性。
4.为实现上述目的,本发明采用的技术方案是:一种多授权中心基于属性的确保数据删除的加密系统,包括:
5.中央授权端,用于产生系统主密钥msk,属性私钥和系统公钥pk;根据主密钥msk,属性私钥和系统公钥pk,生成一部分私钥du;
6.属性授权端,用于根据属性私钥和系统公钥pk,生成属性公钥和另一部分私钥dk;
7.加密及请求删除端,用于产生一对签名的公私钥对{spk,ssk}和一个需要被删除的文件fname,在该文件属性集中定义一个虚拟属性“有效性”另外构建一个merkle哈希树,产生重加密密钥cki和被删除的文件fname的辅助认证信息aai;根据系统公钥pk、属性公钥访问策略γ、消息m,计算密文ct;根据签名的公私钥对{spk,ssk},对merkle哈希树的根结点签名sigr;根据被删除的文件fname和虚拟属性“有效性”计算一个删除请求dr;提交删除请求后,根据辅助认证信息aai,更新merkle哈希树,得到更新后的树的根结点根据服务器发送来的根结点与更新后的树的根结点验证删除的有效性;
8.解密端,用于根据密文ct和私钥sku,计算恢复消息m;
9.服务器,用于根据删除请求dr,重加密密钥cki和密文ct,生成重加密后的密文ct';根据辅助认证信息aai,更新merkle哈希树,得到更新后的树的根结点
10.本发明还提供了一种多授权中心基于属性的确保数据删除的加密方法,包括以下步骤:
11.步骤s1:中央授权端输入安全参数λ,输出主密钥msk,属性私钥和系统公钥pk;
12.步骤s2:每个属性授权端输入属性私钥和系统公钥pk,生成各自的属性公

13.步骤s3:中央授权端、属性授权端和加密及请求删除端输入用户身份gid,主密钥msk,解密端属性s,属性私钥和系统公钥pk,生成解密端私钥sku和一对签名的公私钥对{spk,ssk};
14.步骤s4:加密及请求删除端输入系统公钥pk,属性公钥访问策略γ,消息m,输出密文ct;
15.步骤s5:加密及请求删除端输入一对签名的公私钥对{spk,ssk}和密文ct,构建一个merkle哈希树,对该树根结点r签名sigr;
16.步骤s6:解密端输入密文ct和解密端私钥sku,输出消息m;
17.步骤s7:加密及请求删除端输入虚拟属性“有效性”输出删除请求dr;
18.步骤s8:服务器输入删除请求dr,输出相应的文件对应于merkle哈希树上的信息;
19.步骤s9:加密及请求删除端输入服务器返回的相应的文件对应于merkle哈希树上的信息,输出1或者0;
20.步骤s10:属性授权端输入删除请求dr和属性私钥输出重加密密钥信息rk;
21.步骤s11:服务器输入密文ct和重加密密钥信息rk,更新merkle哈希树,输出重加密密文ct'和更新后的根结点
22.步骤s12:加密及请求删除端输入密文ct,重加密密钥信息rk以及根结点同样更新merkle哈希树,输出1或者0。
23.进一步地,所述步骤s1具体包括以下步骤:
24.步骤s101:g和g1是阶为素数p的双线性群,g是群g的生成元;e:g
×g→
g1是一个双线性映射;|au|=n表示用户持有的属性数量;
25.步骤s102:中央授权端ca随机选取y0∈zp,计算随机选择一个伪随机函数f,用于随机化u,其中u=h(gid)并且gid是数据使用者du的身份;故系统公钥为pk=(y0,g,g1,g,e,f)且主密钥msk=y0;
26.步骤s103:中央授权端ca随机选取一组然后,ca发送sk和{t
k,i
}
i∈[1,n]
给属性授权端aak,对于每个属性授权端aak,属性私钥为,属性私钥为
[0027]
所述步骤s2中,在获得{t
k,i
}
i∈[1,n]
之后,每个属性授权端aak为每个属性i计算为每个属性i计算
[0028]
进一步地,所述步骤s3具体包括以下步骤:
[0029]
步骤s301:ca检查解密端的身份;如果解密端是合法的,ca验证身份并分发属性集合au给解密端;
[0030]
步骤s302:解密端计算u=h(gid),其中h:{0,1}
*
→zp
,并且发送u给ca和所有的属性授权端{aak}
k∈[1,k]

[0031]
步骤s303:aak计算其中表示种子为sk的伪随机函数;aak随机选取一个度为d-1的多项式f(x,设置f(0)=y
k,u
并为每个属性i计算其中其中表示部分私钥;
[0032]
步骤s304:ca计算和
[0033]
步骤s305:加密及请求删除端随机选取αu∈z
p
,并计算αu通过安全信道被传送给解密端;因此,解密端的私钥是sku=du,dk}
k∈[1,k]
,αu);
[0034]
步骤s306:加密及请求删除端生成一个签名的公私钥对{spk,ssk},该公私钥对被用来对mht的根进行签名;
[0035]
所述步骤s4中,加密及请求删除端随机选取s∈z
p
,为所有的属性授权端{aak}
k∈[1,k]
计算c1=gs和其中因此,密文为因此,密文为
[0036]
进一步地,所述步骤s5具体包括以下步骤:
[0037]
步骤s501:加密及请求删除端构造一个mht,其叶子结点为有序的h(c
k,i
),其中哈希函数
[0038]
步骤s502:产生的mht的根节点,加密及请求删除端使用签名的私钥ssk对根结点r签名,输出为签名sigr;
[0039]
步骤s503:存在一个虚拟属性“有效性”该属性包含在且是访问结构中γ必不可少的;如果属性被改变,即意味着嵌入再密文中的访问结构已经被修改;属性“有效性”有两个值,分别是“有效”和“无效”;用表示对应于属性“有效性”的密文成分,其中ind表示对应于属性“有效性”的密文成分的mht中的索引;然后,加密及请求删除端为消息m选择一个文件名fname,并计算一个标签加密及请求删除端发送{fname,ind,σ,ct,sigr}给服务器;
[0040]
所述步骤s6中,解密端选择一个任意d个元素的子集s,输出:
[0041][0042]
进一步地,所述步骤s7具体包括以下步骤:
[0043]
步骤s701:当加密及请求删除端要去删除文件fname,就修改对应的密文中的属性“有效性”的值;加密及请求删除端发送删除请求给属性授权端aak,其中vi表示“有效”,v'i表示“无效”,即意味着把属性从“有效”改为“无效”;
[0044]
步骤s702:do发送删除请求给云服务器。
[0045]
进一步地,所述步骤s8中,服务器搜索文件fname并返回相应的给加密及请求删除端,其中ω
ind
是索引为ind的结点的辅助认证信息aai。
[0046]
进一步地,所述步骤s9具体包括以下步骤:
[0047]
步骤s901:加密及请求删除端验证是否等式成立;如果等式成立,表明对应于属性的密文成分;
[0048]
步骤s902:加密及请求删除端使用和ω
ind
生成mht的根结点r';加密及请求删除端验证是否等式sigr=sig
r'
成立;如果等式成立,表面ind是对应属性的的一个有效的索引。
[0049]
进一步地,所述步骤s10中,在收到删除请求dr后,属性授权端aak随机选取计算aak发送cki给加密及请求删除端;然后,加密及请求删除端发送给加密及请求删除端;然后,加密及请求删除端发送给服务器;
[0050]
所述步骤s11中,服务器计算新的密文成分之前的密文成分被替代;服务器输出重加密的密文服务器计算并获得新的mht的根结点最后,服务
器发送给加密及请求删除端,其中是一个删除证明。
[0051]
进一步地,所述步骤s12中,do利用rk重加密生成同时,加密及请求删除端执行mht更新算法,获得一个新的根结点的值;新的根结点被发送给服务器;收到云服务器发送来的ω
ind
,加密及请求删除端利用生成新的mht的根结点;在获得服务器发来的根do验证是否成立;如果等式成立,表明密文的确被修改了,存储的数据已经被删除。
[0052]
与现有技术相比,本发明具有以下有益效果:提供了一种多授权中心基于属性的确保数据删除的加密系统及方法,在多授权中心属性基确保数据删除方案中,多个属性授权中心针对各自所监管的属性集合为其生成相对应的属性私钥,最后拥有所有属性授权中心所产生的属性私钥即可恢复出解密密钥,多个授权中心的设计缓解了对单个授权中心的过分依赖问题。此外,本发明提供了数据删除的可验证功能,能够为数据拥有者提供数据删除证明,还提供了密文的不可区分性。本系统及方法在数据安全和细粒度数据访问控制中具有很强的实用性和广阔的应用前景。
附图说明
[0053]
图1是本发明实施例的系统架构示意图。
具体实施方式
[0054]
下面结合附图及实施例对本发明做进一步说明。
[0055]
应该指出,以下详细说明都是示例性的,旨在对本技术提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本技术所属技术领域的普通技术人员通常理解的相同含义。
[0056]
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本技术的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
[0057]
如图1所示,本实施例提供了一种多授权中心基于属性的确保数据删除的加密系统,包括:中央授权端、属性授权端、加密及请求删除端、解密端和服务器。
[0058]
中央授权端用于产生系统主密钥msk,属性私钥和系统公钥pk;根据主密钥msk,属性私钥和系统公钥pk,生成一部分私钥du。
[0059]
属性授权端用于根据属性私钥和系统公钥pk,生成属性公钥和另一部分私钥dk。
[0060]
加密及请求删除端用于产生一对签名的公私钥对{spk,ssk}和一个需要被删除的文件fname,在该文件属性集中定义一个虚拟属性“有效性”另外构建一个merkle哈希树,产生重加密密钥cki和被删除的文件fname的辅助认证信息aai;根据系统公钥pk、属性公钥访问策略γ、消息m,计算密文ct;根据签名的公私钥对{spk,ssk},对merkle哈希
树的根结点签名sigr;根据被删除的文件fname和虚拟属性“有效性”计算一个删除请求dr;提交删除请求后,根据辅助认证信息aai,更新merkle哈希树,得到更新后的树的根结点根据服务器发送来的根结点与更新后的树的根结点验证删除的有效性。
[0061]
解密端用于根据密文ct和私钥sku,计算恢复消息m。
[0062]
服务器用于根据删除请求dr,重加密密钥cki和密文ct,生成重加密后的密文ct';根据辅助认证信息aai,更新merkle哈希树,得到更新后的树的根结点
[0063]
本实施例还提供了一种多授权中心基于属性的确保数据删除的加密方法,包括以下步骤:
[0064]
步骤s1:中央授权端输入安全参数λ,输出主密钥msk,属性私钥和系统公钥pk。
[0065]
所述步骤s1具体包括以下步骤:
[0066]
步骤s101:g和g1是阶为素数p的双线性群,g是群g的生成元;e:g
×g→
g1是一个双线性映射;|au|=n表示用户持有的属性数量;
[0067]
步骤s102:中央授权端ca随机选取y0∈z
p
,计算随机选择一个伪随机函数f,用于随机化u,其中u=h(gid)并且gid是数据使用者du的身份;故系统公钥为pk=(y0,g,g1,g,e,f)且主密钥msk=y0;
[0068]
步骤s103:中央授权端ca随机选取一组然后,ca发送sk和{t
k,i
}
i∈[1,n]
给属性授权端aak,对于每个属性授权端aak,属性私钥为,属性私钥为
[0069]
步骤s2:每个属性授权端输入属性私钥和系统公钥pk,生成各自的属性公钥
[0070]
在本实施例中,属性授权方使用一组属性集生成用户的私钥,具体为:在获得{t
k,i
}
i∈[1,n]
之后,每个属性授权端aak为每个属性i计算
[0071]
步骤s3:中央授权端、属性授权端和加密及请求删除端输入用户身份gid,主密钥msk,解密端属性s,属性私钥和系统公钥pk,生成解密端私钥sku和一对签名的公私钥对{spk,ssk}。
[0072]
在本实施例中,中央授权端和属性授权端进行交互,另外需要加密以及请求删除端的参与,产生解密端私钥,具体包括以下步骤:
[0073]
步骤s301:ca检查解密端的身份;如果解密端是合法的,ca验证身份并分发属性集合au给解密端;
[0074]
步骤s302:解密端计算u=h(gid),其中h:{0,1}
*
→zp
,并且发送u给ca和所有的属性授权端{aak}
k∈[1,k]

[0075]
步骤s303:aak计算其中表示种子为sk的伪随机函数;aak随机选取一个度为d-1的多项式f(x),设置f(0)=y
k,u
并为每个属性i计算其中
表示部分私钥;
[0076]
步骤s304:ca计算和
[0077]
步骤s305:加密及请求删除端随机选取αu∈z
p
,并计算αu通过安全信道被传送给解密端;因此,解密端的私钥是sku=(du,{dk}
k∈[1,k]
,αu);
[0078]
步骤s306:加密及请求删除端生成一个签名的公私钥对{spk,ssk},该公私钥对被用来对mht的根进行签名。
[0079]
步骤s4:加密及请求删除端输入系统公钥pk,属性公钥访问策略γ,消息m,输出密文ct。
[0080]
具体地,加密及请求删除端随机选取s∈z
p
,为所有的属性授权端{aak}
k∈[1,k]
计算c1=gs和其中因此,密文为
[0081]
步骤s5:加密及请求删除端输入一对签名的公私钥对{spk,ssk}和密文ct,构建一个merkle哈希树,对该树根结点r签名sigr。
[0082]
所述步骤s5具体包括以下步骤:
[0083]
步骤s501:加密及请求删除端构造一个mht,其叶子结点为有序的h(c
k,i
),其中哈希函数
[0084]
步骤s502:产生的mht的根节点,加密及请求删除端使用签名的私钥ssk对根结点r签名,输出为签名sigr;
[0085]
步骤s503:存在一个虚拟属性“有效性”该属性包含在且是访问结构中γ必不可少的;如果属性被改变,即意味着嵌入再密文中的访问结构已经被修改;属性“有效性”有两个值,分别是“有效”和“无效”;用表示对应于属性“有效性”的密文成分,其中ind表示对应于属性“有效性”的密文成分的mht中的索引;然后,加密及请求删除端为消息m选择一个文件名fname,并计算一个标签加密及请求删除端发送{fname,ind,σ,ct,sigr}给服务器。
[0086]
步骤s6:解密端输入密文ct和解密端私钥sku,输出消息m。
[0087]
具体地,解密端选择一个任意d个元素的子集s,输出:
[0088][0089]
步骤s7:加密及请求删除端输入虚拟属性“有效性”输出删除请求dr。
[0090]
所述步骤s7具体包括以下步骤:
[0091]
步骤s701:当加密及请求删除端要去删除文件fname,就修改对应的密文中的属性“有效性”的值;加密及请求删除端发送删除请求给属性授权端aak,其中vi表示“有效”,v'i表示“无效”,即意味着把属性从“有效”改为“无效”;
[0092]
步骤s702:do发送删除请求给云服务器。
[0093]
步骤s8:服务器输入删除请求dr,输出相应的文件对应于merkle哈希树上的信息。
[0094]
具体地,服务器搜索文件fname并返回相应的给加密及请求删除端,其中ω
ind
是索引为ind的结点的辅助认证信息aai。
[0095]
步骤s9:加密及请求删除端输入服务器返回的相应的文件对应于merkle哈希树上的信息,输出1或者0。
[0096]
所述步骤s9具体包括以下步骤:
[0097]
步骤s901:加密及请求删除端验证是否等式成立;如果等式成立,表明对应于属性的密文成分;
[0098]
步骤s902:加密及请求删除端使用和ω
ind
生成mht的根结点r';加密及请求删除端验证是否等式sigr=sig
r'
成立;如果等式成立,表面ind是对应属性的的一个有效的索引。
[0099]
步骤s10:属性授权端输入删除请求dr和属性私钥输出重加密密钥信息rk。
[0100]
具体地,在收到删除请求dr后,属性授权端aak随机选取计算aak发送cki给加密及请求删除端;然后,加密及请求删除端发送给服务器。
[0101]
步骤s11:服务器输入密文ct和重加密密钥信息rk,更新merkle哈希树,输出重加密密文ct'和更新后的根结点
[0102]
具体地,服务器计算新的密文成分之前的密文成分被替代;服务器输出重加密的密文服务器计算并获得新的mht的根结点最后,服务器发送给加密及请求删除端,其中被看作是一个删除证明。
[0103]
步骤s12:加密及请求删除端输入密文ct,重加密密钥信息rk以及根结点同样更新merkle哈希树,输出1或者0。
[0104]
具体地,do利用rk重加密生成同时,加密及请求删除端执行mht更新算法,获得一个新的根结点的值;新的根结点被发送给服务器;收到云服务器发送来的ω
ind
,加密及请求删除端利用生成新的mht的根结点;在获得服务器发来的根do验证是否成立;如果等式成立,表明密文的确被修改了,存储的数据已经被删除。
[0105]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0106]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0107]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0108]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0109]
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献