基于改进CP‑ABE的云存储分组加密访问控制方法与流程

文档序号:12789585阅读:197来源:国知局
基于改进CP‑ABE的云存储分组加密访问控制方法与流程

本发明涉及基于改进CP-ABE的云存储分组加密访问控制方法。



背景技术:

目前在基于CP-ABE云存储访问控制相关技术中,主要缺点表现为:用户属性集发生变化后都会导致重加密,重加密时需要对全部属性重加密,导致重加密的计算开销增大,计算效率低;影响属性集没有发生变化的用户访问;当用户会因为不在线而错过最新秘钥的分发;身份验证时直接使用树结构遍历,效率较低;直接分发给用户私钥,可能在传输过程中泄露私钥,安全性低。



技术实现要素:

本发明的目的在于克服现有技术由于用户属性变更引起重加密中存在的缺陷,提供基于改进CP-ABE的云存储分组加密访问控制方法,降低重加密的计算开销,避免密钥分发时用户不在线错过接收的情况,提高用户身份验证的效率,解决私钥传输过程中的安全性问题,不足。

本发明采用的技术方案是:

基于改进CP-ABE的云存储分组加密访问控制方法,其包括以下步骤:

S1:由属性权威中心生成公开参数PK和主密钥MK,并将公开参数PK分发给用户,且主密钥MK保存在属性权威中心;

S2:数据主体使用公开参数PK和访问结构T加密数据明文M得到数据密文CT,并将数据密文CT上传至资源管理中心;

S3:属性权威中心获取访问结构T,并进行遍历得出所有能够通过访问的用户属性组A;由于访问结构树T中存储着属性关系及是否可访问标准,用户属性组A则是能够通过访问的任何一个属性组,用户属性组A的划分依据是访问结构树T中属性关系

S4:属性权威中心使用主密钥MK对步骤S3中得到的所有的用户属性组A分别加密得到各用户属性组A对应的私钥SK,并利用哈希表将用户属性组A和对应的私钥SK保存;

S5:用户向访问控制认证点和资源管理中心分别发出访问申请;

S6:访问控制认证点从用户发出的申请中提取该用户属相集,并产生加密和解密私钥的参数P,将该用户属性集和参数P共同发送给属性权威中心;

S7:属性权威中心验证用户身份;

将用户自身的属性集与S3中遍历得到的能够通过访问的属性组进行匹配,如果匹配一致即身份验证通过,匹配不一致身份验证失败。

当用户身份验证通过时,属性权威中心向访问控制认证点发出验证通过的验证结果,属性权威中心获取该用户对应属性组的私钥SK,属性权威中心基于私钥SK生成伪密钥SK’并发送给用户;

当用户身份验证不通过时,向访问控制认证点发出验证不通过的验证结果;

S8:访问控制认证点基于用户身份验证结果通知资源管理中心是否发送密文;

当用户身份验证结果为验证不通过时,访问控制认证点通知用户访问失败,访问控制认证点通知资源管理中心不发送数据密文CT给用户;

当用户身份验证结果为验证通过,访问控制认证点将参数P发送给用户,访问控制认证点通知资源管理中心向用户发送数据密文CT;

S9:用户根据收到访问结果进行相应处理:

当用户身份验证失败时,用户无法访问数据密文CT,用户访问失败;

当用户身份验证成功时,解密接收到的数据密文CT并获取数据明文M。

进一步地,所述步骤S7,中当用户身份验证通过时,属性权威中心使用获得参数P加密私钥SK得到伪密钥SK’。

进一步地,所述步骤S9中,当用户身份验证成功时,用户获得伪密钥SK’、参数P、数据密文CT,使用参数P解密伪密钥SK’得到私钥SK,用户执行M=Decrypt(CT, SK),用私钥SK解密数据密文CT得到数据明文M。

本发明采用以上技术方案,对CP-ABE加密过程中的访问结构树T进行遍历,得出所有能够通过访问的的用户属性组A,对这些所有的属性组,在CP-ABE算法的第三步加密中分别加密,产生每个属性组对应的解密私钥。用户属性发生变化时,只需对自己之前所在属性组进行重加密,而不需要对所有属性进行重加密。因密钥始终存放在属性权威中心,重加密后私钥不需要进行重新发送(用户需要时发出请求即可),从而避免因用户不在线而导致的无法接收最新密钥。将这些用户属性组A和对应的解密私钥,利用哈希表存放在属性权威中心,用户身份验证时,可直接将用户属性集与属性组匹配。且用户接收到的密钥是伪密钥,可以进一步降低传输过程中信息泄露的风险。

本发明使用CP-ABE分组加密就可以有效的弥补这些缺陷。采用分组加密,减少了重加密过程中的计算开销,只对部分属性组重加密;将属性组与私钥用哈希表存放于属相权威中心,身份验证时直接将用户属性集与属性组匹配,提高了身份验证效率,且因不需要进行新私钥的重新发送,进而不需要用户在线。本发明引入伪密钥,避免了传输中的私钥泄露。

附图说明

以下结合附图和具体实施方式对本发明做进一步详细说明;

图1为本发明基于改进CP-ABE的云存储分组加密访问控制方法的原理示意图;

图2为本发明基于改进CP-ABE的云存储分组加密访问控制方法的流程示意图。

具体实施方式

如图1-2之一所示,本发明公开一种基于改进CP-ABE的云存储分组加密访问控制方法,其包括以下步骤:

S1:由属性权威中心生成公开参数PK和主密钥MK,并将公开参数PK分发给用户,且主密钥MK保存在属性权威中心;

S2:数据主体使用公开参数PK和访问结构T加密数据明文M得到数据密文CT,并将数据密文CT上传至资源管理中心;

S3:属性权威中心获取访问结构T,并进行遍历得出所有能够通过访问的用户属性组A;由于访问结构树T中存储着属性关系及是否可访问标准,属性组A则是能够通过访问的任何一个属性组,用户属性组A的划分依据是访问结构树T中属性关系。

S4:属性权威中心使用主密钥MK对步骤S3中得到的所有的用户属性组A分别加密得到各用户属性组A对应的私钥SK,并利用哈希表将用户属性组A和对应的私钥SK保存;

S5:用户向访问控制认证点和资源管理中心分别发出访问申请;

S6:访问控制认证点从用户发出的申请中提取该用户属相集,并产生加密和解密私钥的参数P,将该用户属性集和参数P共同发送给属性权威中心;

S7:属性权威中心验证用户身份;

将用户自身的属性集与S3中遍历得到的能够通过访问的属性组进行匹配,如果匹配一致即身份验证通过,匹配不一致身份验证失败。

当用户身份验证通过时,属性权威中心向访问控制认证点发出验证通过的验证结果,属性权威中心获取该用户对应属性组的私钥SK,属性权威中心基于私钥SK生成伪密钥SK’并发送给用户;

当用户身份验证不通过时,向访问控制认证点发出验证不通过的验证结果;

S8:访问控制认证点基于用户身份验证结果通知资源管理中心是否发送密文;

当用户身份验证结果为验证不通过时,访问控制认证点通知用户访问失败,访问控制认证点通知资源管理中心不发送数据密文CT给用户

当用户身份验证结果为验证通过,访问控制认证点将参数P发送给用户,访问控制认证点通知资源管理中心向用户发送数据密文CT;

S9:用户根据收到访问结果进行相应处理:

当用户身份验证失败时,用户无法访问数据密文CT,用户访问失败;

当用户身份验证成功时,解密接收到的数据密文CT并获取数据明文M。

进一步地,所述步骤S7,中当用户身份验证通过时,属性权威中心使用获得参数P加密私钥SK得到伪密钥SK’。

进一步地,所述步骤S9中,当用户身份验证成功时,用户获得伪密钥SK’、参数P、数据密文CT,使用参数P解密伪密钥SK’得到私钥SK,用户执行M=Decrypt(CT, SK),用私钥SK解密数据密文CT得到数据明文M。

本发明采用以上技术方案,对CP-ABE加密过程中的访问结构树T进行遍历,得出所有可能出现的用户属性组A,对这些所有的属性组,在CP-ABE算法的第三步加密中分别加密,产生每个属性组对应的解密私钥。用户属性发生变化时,只需对自己之前所在属性组进行重加密,而不需要对所有属性进行重加密。因密钥始终存放在属性权威中心,重加密后私钥不需要进行重新发送(用户需要时发出请求即可),从而避免因用户不在线而导致的无法接收最新秘钥。将这些用户属性组A和对应的解密私钥,利用哈希表存放在属性权威中心,用户身份验证时,可直接将用户属性集与属性组匹配。且用户接收到的密钥是伪密钥,可以进一步降低传输过程中信息泄露的风险。

下面就具体实施例对本发明做详细说明

一种基于改进CP-ABE的云存储分组加密访问控制方法,其包括以下步骤:

S1:属性权威中心执行Setup()产生公开参数PK和主密钥MK,并将公开参数PK分发给用户,主密钥MK保存在属性权威中心;

S2:数据主体执行CT=Encrypt(PK,M,T),使用公开参数PK和访问结构T加密数据明文M得到数据密文CT,并将数据密文CT上传至资源管理中心;

S3:属性权威中心获取访问结构T,并进行遍历得出所有能够通过访问的用户属性组A;

S4:属性权威中心执行SK=KeyGen(MK,A)对步骤S3中得到的所有用户属性组A分别加密获得对应的私钥SK,利用哈希表,将用户属性组A和对应的私钥SK保存;

S5:用户向访问控制认证点和资源管理中心发出申请;

S6:访问控制认证点从用户发出的申请中提取该用户属相集,并产生加密和解密私钥的参数P,将用户属性集和参数P共同发送给属性权威中心;

S7:属性权威中心验证用户身份;

当用户身份验证通过时,属性权威中心向访问控制认证点发出验证通过的验证结果,属性权威中心获取该用户对应属性组的私钥SK,属性权威中心基于私钥SK生成伪密钥SK’并发送给用户;具体地属性权威中心使用获得加密参数P加密私钥SK得到伪密钥SK’;

当用户身份验证不通过时,属性权威中心向访问控制认证点发出验证不通过的验证结果;

S8:访问控制认证点基于用户身份验证结果通知资源管理中心是否发送密文;

当用户身份验证结果为验证不通过时,访问控制认证点通知用户访问失败,访问控制认证点通知资源管理中心不发送数据密文CT给用户;

当用户身份验证结果为验证通过,访问控制认证点将参数P发送给用户,访问控制认证点通知资源管理中心向用户发送数据密文CT;

S9:用户根据收到访问结果进行相应处理:

当用户身份验证失败时,用户无法访问数据密文CT,用户访问失败;

当用户身份验证成功时,用户获得SK’、P、CT,使用P解密SK’得到私钥SK,用户执行M=Decrypt(CT,SK),用私钥SK解密密文CT,得到数据明文M。

综上所述,本发明采用以上技术方案,遍历访问结构T,得出所有能够通过访问的用户属性组A,并对所有属性组进行加密得到私钥,将这些属性组及与之对应的私钥,用哈希表存储在属性权威中心,降低了由于用户身份属性的变化引起重加密的计算开销;用户属性发生变化时,只需对该用户之前所在属性组进行重加密,不需要对全部属性组进行重新加密后重发给全部用户,重加密后私钥不需要重新分发,从而不需要用户在线,进而避免秘钥分发时用户不在线错过接收的情况,提高用户身份验证的效率,解决私钥传输过程中的安全性问题。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1