一种结合用户侧访问控制和云端访问控制的数据存储方法与流程

文档序号:11138692阅读:638来源:国知局
一种结合用户侧访问控制和云端访问控制的数据存储方法与制造工艺

本发明涉及云数据存储技术领域,尤其涉及一种结合用户侧访问控制和云端访问控制的数据存储方法。



背景技术:

目前,在云存储环境中,出于经济以及便利的考虑,用户将自己的数据外包到云服务器中,为了保护用户数据的机密性和隐私性,访问控制是不可缺少的保护手段。然而由于用户并不能够完全的信任云服务器提供商,因此传统的访问控制手段并不能够很好的应用到云存储环境中。为了解决这一问题,基于属性的加密方案(ABE)被引入到云存储中,ABE使得数据拥有者能够直接对自己的数据进行访问控制,是一种有效的用户侧访问控制手段。其中,策略与密文相关的基于属性的加密方案(CP-ABE)被认为是最适合在云存储中实现访问控制的手段之一。

然而由于缺乏相应的可兼容的云端访问控制策略,CP-ABE还是很难被直接部署到实际的公有云环境中。在目前的云端访问控制方案中,云服务器总是被假设为完全可信的,因此这些方案很难做到与CP-ABE方案相互兼容。由于缺乏相应的云端访问控制,在基于CP-ABE的访问控制方案中,云服务器始终暴露在多种安全威胁当中,其中最重要的安全威胁之一就是拒绝服务攻击(Dos/DDos),恶意的用户可以无限制的下载云服务器上其他用户共享的文件,从而消耗云服务器上的各种资源,使得云服务器不能够正常的工作;除此之外,由于缺乏云端访问控制,恶意的用户通过下载大量的文件,可以进行有关密文分析的攻击,威胁用户数据的机密性。



技术实现要素:

本发明的目的是提供一种结合用户侧访问控制和云端访问控制的数据存储方法,利用该方法,云服务器可以有效的对特定用户的访问权限进行判断,避免恶意用户对云存储文件的非法下载,有效保证了云服务器自身及所存储数据的安全性,防止云端资源的消耗。

一种结合用户侧访问控制和云端访问控制的数据存储方法,所述方法包括:

步骤1、数据拥有者根据所要上传文件M的访问权限需求生成进行属性加密所需的属性集合{A1,A2,...,An}和访问策略A;

步骤2、所述数据拥有者生成随机会话密钥K以及N个随机字符串{S1,S2,...,SN},并采用对称加密算法对文件M和该N个随机字符串分别进行加密处理,再根据所述访问策略A采用属性加密方法对所述随机会话密钥K进行加密处理,处理后的密文记为

步骤3、所述数据拥有者上传密文CT到云服务器进行存储,并在本地存储所述随机会话密钥K;

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

步骤5、所述云服务器将所述用户所请求的文件密文EK(M)发送给所述用户;

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

由上述本发明提供的技术方案可以看出,利用上述方法可以有效的对特定用户的访问权限进行判断,避免恶意用户对云存储文件的非法下载,有效保证了云服务器自身及所存储数据的安全性,防止云端资源的消耗。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

图1为本发明实施例所提供的结合用户侧访问控制和云端访问控制的数据存储方法流程示意图;

图2为本发明实施例所述访问结构的示意图;

图3为本发明实施例所提供的由数据拥有者执行更新过程的流程示意图。

具体实施方式

下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。

下面将结合附图对本发明实施例作进一步地详细描述,如图1所示为本发明实施例所提供的结合用户侧访问控制和云端访问控制的数据存储方法流程示意图,所述方法包括:

步骤1、数据拥有者根据所要上传文件M的访问权限需求生成进行属性加密所需的属性集合{A1,A2,...,An}和访问策略A;

在该步骤中,访问策略A为单调访问结构,可以表示为树形结构。

举例来说,如图2所示为本发明实施例所述访问结构的示意图,在图2中:访问策略A中对应的属性集合为{疾病:感冒,医院:A,年龄:儿童,年龄:老人}。

步骤2、所述数据拥有者生成随机会话密钥K以及N个随机字符串{S1,S2,...,SN},并采用对称加密算法对文件M和该N个随机字符串分别进行加密处理,再根据所述访问策略A采用属性加密方法对所述随机会话密钥K进行加密处理;

在该步骤中,首先所述数据拥有者选取合适的对称加密算法,如AES等,利用所述随机会话密钥K对文件M进行加密,得到对应的数据密文EK(M);

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

最后所述数据拥有者产生N个随机字符串{S1,S2,...,SN},对于任意一个随机字符串Si,i∈[1,N],所述数据拥有者选取同样的对称加密算法,并利用所述随机会话密钥K对该随机字符串Si,i∈[1,N]进行加密,得到对应随机字符串的密文EK(Si);

最终该处理后的密文可以记为:

具体实现中,随着云服务器端随机字符串及其密文的消耗,需要由所述数据拥有者对随机字符串及其密文进行更新操作;该更新操作为周期性执行,或者当之前上传的均被使用过时,由所述云服务器请求所述数据拥有者执行更新过程,如图3所示为本发明实施例所提供的由数据拥有者执行更新过程的流程示意图,该更新过程具体包括:

步骤31:所述数据拥有者产生新的N个以预定义固定字符开头的随机字符串{S′1,S′2,...,S′N};

步骤32:采用本地存储的随机会话密钥K基于对称加密算法对所述随机字符串{S′1,S′2,...,S′N}进行加密处理,得到{S′i,EK(S′i)}(i∈[1,N]),并将其通过安全通道上传到所述云服务器;

步骤33:所述云服务器使用新得到的{S′i,EK(S′i)}(i∈[1,N])替换原有的{Si,EK(Si)}(i∈[1,N]),完成更新过程。

另外,上述所生成的随机字符串{S1,S2,...,SN}以预定义的固定字符串开头,例如可以是“SAMPLE:”。

步骤3、所述数据拥有者上传密文CT到云服务器进行存储,并在本地存储所述随机会话密钥K;

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

在该步骤中,云服务器和该提出请求的用户完成挑战-应答过程具体包括:

首先,所述云服务器从密文CT中随机选择一组未使用的{Si,EK(Si)},并将EA(K)和EK(Si)作为挑战发送给该提出请求的用户;

然后,所述用户根据自身的属性解密EA(K)得到K′,并使用K′解密EK(Si)得到S′i;具体实现中,若用户的属性能够满足访问策略A,如用户的属性为{疾病:感冒,年龄:儿童,医院:A},则用户能够解密EA(K)得到会话密钥K′;否则,用户不能解密密文,如当用户的属性为{疾病:感冒,年龄:儿童,医院:B}时,用户就不能得到会话密钥K′。满足访问结构的用户可以利用解密得到的会话密钥K′解密EK(Si)得到S′i,并判断S′i是否以预定义的固定字符串开头。如果不是,则用户终止操作,并可以向数据拥有者举报云服务器的非法行为。若是,则所述用户通过安全通道将S′i作为应答发送给所述云服务器;

所述云服务器比较所述用户返回的S′i与所选择的{Si,EK(Si)}中的Si,若相等,则判断所述用户的属性满足所请求文件的访问策略,将{Si,EK(Si)}标记为已使用,并进行后继步骤5的操作;

否则,判断所述用户的属性不能满足所请求文件的访问策略,所述云服务器终止操作。

步骤5、所述云服务器将所述用户所请求文件M对应密文CT中的数据密文EK(M)发送给所述用户;

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

综上所述,本发明实施例所提供的方法具有如下优点:

1)云服务器端安全性的增强:借助随机字符串及其加密内容{Si,EK(Si)},云服务器只需要较小的通信开销就可以对用户的访问权限进行预判,这就减少了恶意用户申请下载云服务器端文件时云服务器侧的开销,使得云服务器能够有效的抵御消耗通信资源的DoS/DDoS攻击。

2)云服务器端存储数据安全性的增强:由于云端访问控制机制的存在,恶意用户很难从云服务器端进行任意文件的下载,这就防止了恶意用户针对密文分析的攻击。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

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