一种用于云存储的加密和访问控制方法与流程

文档序号:11064789阅读:593来源:国知局

本发明涉及云存储,云加密,访问控制技术领域。



背景技术:

随着云技术的发展,云存储服务面向越来越多的用户,用户随时随地远程访问存储在云空间中的数据,其成本低、易于使用和接口高扩展性在商业中也受到了广泛应用和关注,然后,用户在享受这种便利的同时,也面临数据存储脱离自身控制,产生了安全问题,许多著名的云服务商也面临过云存储的安全问题,导致了严重的后果,所以云存储的安全问题是当下研究的热点。

访问控制是实现用户数据机密性和进行隐私保护的主要工具之一,然而云存储的外包存储服务模式导致特权用户的存在,其具有非授权访问用户数据的权利,导致用户数据信息和隐私泄露等内部攻击问题。

针对上述安全问题,现有技术引入基于模糊身份加密的加密访问控制技术。一种方法是将用户私钥关联到访问控制结构树,密文关联到属性集,若用户的属性集满足访问控制树,则该用户可以解密数据,否则,该用户无法解密数据。另一种方法是将用户私钥关联到属性集,密文关联到访问控制树,属性集满足该访问控制树的用户具有解密数据的能力,上述方案中的加密者不能直接控制哪些用户能访问密文数据,还需要继续进行深入研究。



技术实现要素:

针对现有技术存在的上述问题,本发明提出一种用于云存储的加密和访问控制方法,本方法由加密算法的访问控制结构树转为策略规则,应用访问控制架构实现细粒度多权限访问控制机制。

本发明所采用的技术方案是:一种用于云存储的加密和访问控制方法,首先,该方法用双线性对称加密算法对明文数据进行加密,得到数据密文;其次对对称密钥采取再次加密,生成密钥密文;最后,将数据密文和密钥密文按照系统设计格式保存至云存储中,当用户需要对存储数据访问时,采用访问控制结构的策略规则控制用户的多重权限,只有当访问者的主题属性通过访问规则策略控制,才可以访问密钥密文,才能解密密钥密文得到对称密钥用以解密密文得到数据明文,策略规则可以从加密方法访问控制结构树转换来,也可以单独进行添加和修改。

本发明的有益效果是:该方法结合加密手段和访问结构控制,保证只有合法用户在权限范围内才能访问、操作资源,保障了数据的机密性,同时对合谋攻击具有更好的抗性,并且该访问控制方案具有后向安全性。

具体实施方式

本方法由加密算法的访问控制结构树转为策略规则,应用访问控制架构实现细粒度多权限访问控制机制,只有当访问者的主题属性通过访问规则策略控制,才可以访问密钥密文和解密密钥密文得到对称密钥用以解密密文得到数据明文,策略规则可以从加密方法访问控制结构树转换来。

加密方案中采用属性加密的方式,属性包括主体属性、资源属性和环境属性,主体属性包括用户名、用户ID、用户所在企业名称部门职位等用户固有属性,资源属性包括资源名称、主题、资源大小、创建者等,环境属性包括时间、网络、资源使用率等。

该方法的具体实施步骤如下:

步骤1:生成主密钥MK和公共参数PK

设G和GT是p(p为素数)阶的群,他们之间存在可有效计算的双线性映射e:G×G→GT,在映射中,若a,b∈Zp和g,h∈G,满足e(ga,hb)=e(g,h)ab,并且存在g,h∈G使e(g,h)≠1,也就是不是所有G×G的元素都能映射到GT中,但是g,h∈G,e(g,h)都是可有效计算的;

设P={P1,P2,…,Pn}为所有属性集合,某个用户u的属性集合A是P的非空子集,则N个属性是可以区别2N个用户的;

设主密钥为MK,公共参数为PK,如果

|Pr[β(g,ga,gb,gs,e(g,g)abs)=0-Pr[β(g,ga,gb,gs,z)=0|≥ε

则有:

PK={G0,g,h=gβ,e(g,g)α}

MK=(β,gα)

其中,G0为生成元,α,β∈Zp,b∈{0,1}

使用MK和用户属性集A生成用户密码SK

SK=(PK,M,T),T为访问结构树,M为明文数据。

步骤2:数据上传时加密处理:

设DO为文件F的唯一标识号,随机选择对称密钥KeyF加密F得到密文CF,DO制定访问控制结构树T并调用1)中的加密算法,加密对称密钥KeyF得到密文密钥CT;

设Y是访问结构树T所有叶子节点的集合,r为访问结构树T的根节点,节点t的门限值为kt,qt为节点t生成一个kt-1次的随机多项式;qt(0)代表该节点的私密属性;定义函数ind(x)返回节点的索引编号,函数par(x)为返回节点x的父节点,函数att(y)为叶子节点对应的属性,随机参数s∈Zp,令qt(0)=s,则qx(0)=q(ind(x)),此时可以得到密钥密文为:

数据加密后上传到云服务器,存储方式为:(IDF,CF,CT);云服务提供商根据DO上传数据中的访问控制树T,解析并生成策略规则文件并存储于策略数据库中。

步骤3:数据访问过程的解密处理

用户申请访问数据时,首先云服务器验证用户的有效性,有效则对用户的数据访问请求按照访问策略进行决策,否则拒绝访问,用户通过验证后,根据用户主题属性集A生成对应的私人访问密钥SK:

SK=(D=g(α+γ)/β,其中随机参数γ∈Zp,属性j∈A;

执行解密算法得到对称密钥KeyF,使用该密钥解密密文得到明文,解密过程为:

(1)一种情况:定义归运算DecryptNode(CT,SK,x),令i=attr(y),每个叶子节点为x时的计算:

1):当i不属于A时DecryptNode(CT,SK,x)=⊥;

2):当i属于A时,

(2)另一种情况:对于非叶子节点z,利用kx个叶子节点DecryptNode(CT,SK,x)作为拉格朗日插值定理的插值点,计算得到

访问控制树T的根节点R,令则解密明文

得到明文后,用户可以自由浏览数据,操作数据。

步骤4:用户访问权限变更

对于用户变更或者撤销对文件的访问权限,可以通过跟新文件的访问控制策略,在访问控制结构树T上进行修改,生成新的对称密钥进行加密,重加密方案采用云服务器端代理重加密机制。

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