一种基于密钥派生的数据存储和访问控制方法转让专利

申请号 : CN201611186235.X

文献号 : CN106941482B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 薛开平石隽陈炜铿李威洪佩琳

申请人 : 中国科学技术大学

摘要 :

本发明公开了一种基于密钥派生的数据存储和访问控制方法,首先数据拥有者根据所要上传文件M的访问权限需求生成进行属性加密所需的属性集合{A1,A2,...,An}和访问策略A;经过加密处理后上传所述密文CT到云服务器进行存储;云服务器生成N个随机字符串{S1,S2,...,SN},采用对称加密算法以为对称密钥分别加密该N个随机字符串;当其他用户需要获取所述云服务器存储的文件M时,云服务器和该提出请求的用户完成挑战‑应答过程;将所述用户所请求文件M对应密文CT中的数据密文EK(M)发送给所述用户;用户采用随机会话密钥K解密EK(M),得到所需要的文件M。利用上述方法可以有效的对特定用户的访问权限进行判断,避免恶意用户对云存储文件的非法下载,有效保证了云服务器自身及所存储数据的安全性,防止云端资源的消耗。

权利要求 :

1.一种基于密钥派生的数据存储和访问控制方法,其特征在于,所述方法包括:步骤1、数据拥有者根据所要上传文件M的访问权限需求生成进行属性加密所需的属性集合{A1,A2,...,An}和访问策略步骤2、所述数据拥有者生成随机会话密钥K,采用对称加密算法对文件M进行加密处理,并根据所述访问策略 采用属性加密方法对所述随机会话密钥K进行加密;

步骤3、所述数据拥有者选取安全哈希算法计算随机会话密钥K的哈希值 将密文记为 并上传所述密文CT到云服务器进行存储;

步骤4、所述云服务器生成N个随机字符串{S1,S2,...,SN},采用对称加密算法以 为对称密钥分别加密该N个随机字符串,得到 并更新密文为其中, 为密钥密文;EK(Si)为随机

字符串的密文;

步骤5、当其他用户需要获取所述云服务器存储的文件M时,所述云服务器和该提出请求的用户完成挑战-应答过程,在所述用户获取文件M之前验证该用户对文件的访问权限;

步骤6、若通过验证,则所述云服务器将所述用户所请求文件M对应密文CT中的数据密文EK(M)发送给所述用户;

步骤7、所述用户采用随机会话密钥K解密EK(M),得到所需要的文件M。

2.根据权利要求1所述基于密钥派生的数据存储和访问控制方法,其特征在于,所述云服务器和该提出请求的用户完成挑战-应答过程的步骤具体包括:所述云服务器从密文CT中随机选择一组未使用的 并将 和 作为挑战发送给该提出请求的用户;

所述用户根据自身的属性解密 得到K′,计算K′的哈希值 并利用作为对称密钥解密 得到S″i;

所述用户通过安全通道将S″i作为应答发送给所述云服务器;

所述云服务器比较所述用户返回的S″i与所选择的 中的Si,若相等,则判断所述用户的属性满足所请求文件的访问策略,将 标记为已使用,并进行后继步骤6的操作;否则,判断所述用户的属性不能满足所请求文件的访问策略,所述云服务器终止操作。

3.根据权利要求1所述基于密钥派生的数据存储和访问控制方法,其特征在于,所述步骤2中加密处理的过程具体为:首先所述数据拥有者选取对称加密算法利用所述随机会话密钥K对文件M进行加密,得到对应的数据密文EK(M);

然后所述数据拥有者利用属性加密算法根据所述访问策略 对所述随机会话密钥K进行加密处理,得到对应的密钥密文

4.根据权利要求1所述基于密钥派生的数据存储和访问控制方法,其特征在于,所述方法还包括:由所述云服务器对随机字符串及其密文进行更新操作;

所述更新操作为周期性执行,或者当之前生成的 均被使用过时,由所述云服务器执行更新过程。

5.根据权利要求4所述基于密钥派生的数据存储和访问控制方法,其特征在于,所述云服务器执行更新过程的方案具体为:所述云服务器产生新的N个随机字符串{S′1,S′2,...,S′N};

所述云服务器以密文中存储的 作为加密密钥,基于对称加密算法对该N个随机字符串分别进行加密得到所述云服务器使用新得到的 替换原有的

完成更新过程。

说明书 :

一种基于密钥派生的数据存储和访问控制方法

技术领域

[0001] 本发明涉及云数据存储技术领域,尤其涉及一种基于密钥派生的数据存储和访问控制方法。

背景技术

[0002] 目前,在云存储环境中,出于经济以及便利的考虑,用户将自己的数据外包到云服务器中,为了保护用户数据的机密性和隐私性,访问控制是不可缺少的保护手段。然而由于用户并不能够完全的信任云服务器提供商,因此传统的访问控制手段并不能够很好的应用到云存储环境中。为了解决这一问题,基于属性的加密方案(ABE)被引入到云存储中,ABE使得数据拥有者能够直接对自己的数据进行访问控制,是一种有效的用户侧访问控制手段。其中,策略与密文相关的基于属性的加密方案(CP-ABE)被认为是最适合在云存储中实现访问控制的手段之一。
[0003] 然而由于缺乏相应的可兼容的云端访问控制策略,CP-ABE还是很难被直接部署到实际的公有云环境中。在目前的云端访问控制方案中,云服务器总是被假设为完全可信的,因此这些方案很难做到与CP-ABE方案相互兼容。由于缺乏相应的云端访问控制,在基于CP-ABE的访问控制方案中,云服务器始终暴露在多种安全威胁当中,其中最重要的安全威胁之一就是拒绝服务攻击(DoS/DDoS),恶意的用户可以无限制的下载云服务器上其他用户共享的文件,从而消耗云服务器上的各种资源,使得云服务器不能够正常的工作;除此之外,由于缺乏云端访问控制,恶意的用户通过下载大量的文件,可以进行有关密文分析的攻击,威胁用户数据的机密性。

发明内容

[0004] 本发明的目的是提供一种基于密钥派生的数据存储和访问控制方法,利用该方法,云服务器可以有效的对特定用户的访问权限进行判断,避免恶意用户对云存储文件的非法下载,有效保证了云服务器自身及所存储数据的安全性,同时不会对数据拥有者带来过多额外的开销。
[0005] 一种基于密钥派生的数据存储和访问控制方法,所述方法包括:
[0006] 步骤1、数据拥有者根据所要上传文件M的访问权限需求生成进行属性加密所需的属性集合{A1,A2,...,An}和访问策略A;
[0007] 步骤2、所述数据拥有者生成随机会话密钥K,采用对称加密算法对文件M进行加密处理,并根据所述访问策略A采用属性加密方法对所述随机会话密钥K进行加密;
[0008] 步骤3、所述数据拥有者选取安全哈希算法计算随机会话密钥K的哈希值将密文记为 并上传所述密文CT到云服务器进行存储;
[0009] 步骤4、所述云服务器生成N个随机字符串{S1,S2,...,SN},采用对称加密算法以为对称密钥分别加密该N个随机字符串,得到 (i∈[1,N]),并更新密文为
[0010] 步骤5、当其他用户需要获取所述云服务器存储的文件M时,所述云服务器和该提出请求的用户完成挑战-应答过程,在所述用户获取文件M之前验证该用户对文件的访问权限;
[0011] 步骤6、所述云服务器将所述用户所请求文件M对应密文CT中的数据密文EK(M)发送给所述用户;
[0012] 步骤7、所述用户采用随机会话密钥K解密EK(M),得到所需要的文件M。
[0013] 由上述本发明提供的技术方案可以看出,利用上述方法可以有效的对特定用户的访问权限进行判断,避免恶意用户对云存储文件的非法下载,有效保证了云服务器自身及所存储数据的安全性,同时不会对数据拥有者带来过多额外的开销。

附图说明

[0014] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
[0015] 图1为本发明实施例所提供的基于密钥派生的数据存储和访问控制方法流程示意图;
[0016] 图2为本发明实施例所述访问结构的示意图。
[0017] 图3为本发明实施例所提供的由云服务器执行更新过程的流程示意图。

具体实施方式

[0018] 下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
[0019] 下面将结合附图对本发明实施例作进一步地详细描述,如图1所示为本发明实施例所提供的基于密钥派生的数据存储和访问控制方法流程示意图,所述方法包括:
[0020] 步骤1、数据拥有者根据所要上传文件M的访问权限需求生成进行属性加密所需的属性集合{A1,A2,...,An}和访问策略A;
[0021] 在该步骤中,访问策略A为单调访问结构,可以表示为树形结构。
[0022] 举例来说,如图2所示为本发明实施例所述访问结构的示意图,在图2中:访问策略A中对应的属性集合为{疾病:感冒,医院:A,年龄:儿童,年龄:老人}。
[0023] 步骤2、所述数据拥有者生成随机会话密钥K,采用对称加密算法对文件M进行加密处理,并根据所述访问策略A采用属性加密方法对所述随机会话密钥K进行加密;
[0024] 在该步骤中,首先所述数据拥有者选取合适的对称加密算法,如AES等,利用所述随机会话密钥K对文件M进行加密,得到对应的数据密文EK(M);
[0025] 然后所述数据拥有者利用属性加密算法根据所述访问策略A对所述随机会话密钥K进行加密处理,得到对应的密钥密文EA(K)。
[0026] 步骤3、所述数据拥有者选取安全哈希算法计算随机会话密钥K的哈希值将密文记为 并上传所述密文CT到云服务器进行存储;
[0027] 步骤4、所述云服务器生成N个随机字符串{S1,S2,...,SN},采用对称加密算法以为对称密钥分别加密该N个随机字符串,得到 (i∈[1,N]),并更新密文为
[0028] 步骤5、当其他用户需要获取所述云服务器存储的文件M时,所述云服务器和该提出请求的用户完成挑战-应答过程,在所述用户获取文件M之前验证该用户对文件的访问权限;
[0029] 在该步骤中,所述云服务器和该提出请求的用户完成挑战-应答过程的步骤具体包括:
[0030] 所述云服务器从密文CT中随机选择一组未使用的 并将EA(K)和作为挑战发送给该提出请求的用户;
[0031] 所述用户根据自身的属性解密EA(K)得到K′,计算K′的哈希值 并利用作为对称密钥解密 得到Si′;举例来说,若用户的属性为{疾病:感冒,年龄:儿童,医院:A},则用户能够解密EA(K)得到会话密钥K′;否则,用户则不能解密密文,例如,当用户的属性为{疾病:感冒,年龄:儿童,医院:B}时,用户就不能得到会话密钥K′。满足访问结构的用户可以计算解密得到的会话密钥K′的哈希值 利用 解密 得到Si′;除此之外,不满足访问结构的用户也可以使用伪造的Si′作为应答发送给云服务器。
[0032] 所述用户通过安全通道将Si′作为应答发送给所述云服务器;
[0033] 所述云服务器比较所述用户返回的Si′与所选择的 中的Si,若相等,则判断所述用户的属性满足所请求文件的访问策略,将 标记为已使用,并进行后继步骤6的操作;
[0034] 否则,判断所述用户的属性不能满足所请求文件的访问策略,所述云服务器终止操作。
[0035] 步骤6、所述云服务器将所述用户所请求文件M对应密文CT中的数据密文EK(M)发送给所述用户;
[0036] 步骤7、所述用户采用随机会话密钥K解密EK(M),得到所需要的文件M。
[0037] 另外,随着随机字符串及其密文的消耗,还可以由所述云服务器对随机字符串及其密文进行更新操作;所述更新操作为周期性执行,或者当之前生成的均被使用过时,由所述云服务器执行更新过程。
[0038] 如图3所示为本发明实施例所提供的由云服务器执行更新过程的流程示意图,云服务器执行更新过程的方案具体为:
[0039] 步骤31:所述云服务器产生新的N个随机字符串{S1′,S2′,...,S′N};
[0040] 步骤32:所述云服务器以密文中存储的 作为加密密钥,基于对称加密算法对该N个随机字符串分别进行加密得到 (i∈[1,N]);
[0041] 步骤33:云服务器使用新得到的 (i∈[1,N])替换原有的(i∈[1,N]),完成更新过程。
[0042] 综上所述,本发明实施例所提供的方法具有如下优点:
[0043] 1)云服务器端安全性的增强:借助随机字符串及其加密内容 云服务器只需要较小的通信开销就可以对用户的访问权限进行预判,这就减少了恶意用户申请下载云服务器端文件时云服务器侧的开销,使得云服务器能够有效的抵御消耗通信资源的DoS/DDoS攻击。
[0044] 2)云服务器端存储数据安全性的增强:由于云端访问控制机制的存在,恶意用户很难从云服务器端进行任意文件的下载,这就防止了恶意用户针对密文分析的攻击。
[0045] 3)与现有用户侧访问控制方案的高效兼容性:在传统的CP-ABE访问控制方案基础上,该方法只需要数据拥有者额外计算和上传一次会话密钥的哈希值,这就使得该方法能够高效的兼容现有的CP-ABE访问控制方案。
[0046] 以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。