适用于云存储的多功能细粒度访问控制方法技术

技术编号:20164617 阅读:29 留言:0更新日期:2019-01-19 00:17
本发明专利技术公开了一种适用于云存储的多功能细粒度访问控制方法,解决了云存储中数据的细粒度访问控制问题。其实现步骤是:全局初始化和属性机构初始化;生成用户的公私钥以及云服务器私钥;系统进行离线/在线加密,设有策略隐藏机制,将最终密文上传至云服务器;云服务器端和用户端进行解密并验证密钥的正确性;云服务器从密钥列表中删除相应条目进行用户撤销。本发明专利技术提出了一个带有多个特性的多机构CP‑ABE方案,详细构造了离线/在线加密机制,大大降低了用户的计算开销。本发明专利技术具有属性撤销、无密钥托管问题、离线/在线加密机制、策略隐藏、可验证性的功能,可适用于教育、商业、医疗等云环境中对数据的细粒度访问控制。

【技术实现步骤摘要】
适用于云存储的多功能细粒度访问控制方法
本专利技术属于信息安全
,特别涉及云存储下的细粒度访问控制方案,具体是一种适用于云存储的多功能细粒度访问控制方法,可用于云环境中对数据的细粒度访问控制。
技术介绍
云存储是云计算概念的一个延伸,是一种新型的网络存储技术。由于云存储具有安全、高可靠、低成本的特点,近年来,越来越多的用户选择把数据存储在云端。通过云存储,用户可以高效便捷地在云端存储和共享数据,其中包含个人隐私等信息的敏感数据也会存储到云端。数据拥有者往往希望对自己的数据拥有访问控制权。例如,在个人健康档案中,患者通常希望医生可以访问到自己的医疗记录,但同时又不希望其他人获取到自己的隐私信息。因此,云存储中的数据安全和数据访问控制问题成为一大挑战。数据的访问控制方法是云存储中保护数据机密性的重要环节,传统的访问控制技术一般基于服务器可信的条件,云环境中的服务器不具备该种条件。因此,传统的访问控制方法不适用于云存储环境。2005年,Sahai和Waters提出的属性基加密方案可以较好地解决数据安全和数据访问控制问题,允许用户基于属性加密和解密数据,而且能够实现加密数据的细粒度访问控制。在此基础上,为提供更复杂的访问控制策略,密钥策略属性加密方案(KP-ABE)和密文策略属性加密方案(CP-ABE)被相继提出。在CP-ABE中,由数据发送方制定访问策略,因此特别适合用于云环境中访问控制类的应用。随着云存储技术的发展,只有一个权威机构的CP-ABE系统已经不能满足实际应用场景,其中一个原因就是属性机构的管理问题。针对此问题,Muller等人在2009年提出了多机构CP-ABE系统,由多个权威机构管理不同的属性集,去除了中心机构,实现了分布式要求,且所有属性机构之间地位平等。CP-ABE在云存储中有很好的应用前景。然而,许多现有方案都存在效率上的缺点,就是加解密的计算成本。使用在线/离线机制和计算外包技术可以提高用户端加解密的效率,将复杂的计算开销委托给一个具有高度计算能力的云服务器处理。而随之而来的另一个缺点是,访问策略与密文相关联可能会泄露大量的用户敏感信息。为解决计算效率的问题,2008年Guo等人首次提出了基于身份的在/离线加密概念,该方案将加密过程分为在线/离线两个阶段:离线阶段无需知道消息和接收者身份,对加密过程进行预处理;然后在线阶段获得明文消息和接收者身份信息后进行少量运算加密得到最终密文。此后不断有新的加密方案被提出,在解密阶段也可以外包给一个具有高度计算能力的代理中心,这类方案在很大程度上减轻了设备加解密运算负担。2011年,Green等人提出了带外包解密的ABE概念,将繁琐的计算开销交给云服务器处理。Lai等人在2013年提出了改进的带可验证的外包解密的ABE概念,从而允许用户验证由代理处理的部分解密密文的正确性。后续研究者相继提出了一些基于外包解密的ABE方案。在隐藏用户访问策略方面,2007年,Kapadia等人提出了隐藏访问结构的密文策略基于属性加密方案,但存在安全性的不足。Nishide等人在2008年提出了两种实现策略隐藏的CP-ABE构造,通过多值属性之间的与逻辑来表示访问控制策略,但均只能实现部分隐藏访问结构。2011年,Lai等人在合数阶群中提出了一个隐藏访问结构的ABE算法,在双线性DiffieHellman(BDH)假设下证明该方案是完全安全的。为了达到相同安全级别,相比于素数阶群,合数阶群需要取更大的阶,导致双线性对的运算效率远低于素数群。2010年,Okamoto和Takashima构造出一种基于素数阶双线性群的属性基加密体制,提高了方案的效率。在2012年,Lewko和Waters对素数阶群上的属性基加密方案的安全性进行研究。近年来,研究者针对不同的功能扩展,对隐藏策略、计算外包、属性撤销和叛逆者跟踪等进行了大量的研究。目前,最新的多机构CP-ABE方案在功能上各有侧重点。比如,2015年,Rouselakis等人引入了支持大属性域的多机构ABE方案,这意味着任何字符串都可以作为一个新的属性添加到系统中。此外,属性的数量不再与系统公共参数相关。2017年,张凯等人利用独立的云服务器私钥和用户私钥解决了密钥托管问题。但其方案中都没有同时包含数据的隐私保护和密钥的可验证性。而在云环境中,数据的安全和隐私问题对于数据拥有者来说至关重要,解密时密钥的可验证性可以确保用户能够正确地解密密文。对于云环境的数据访问控制应用,隐私保护和可验证性是一个急需解决的问题。
技术实现思路
本专利技术的目的在于针对上述现有方案的不足,基于素数阶群和大属性域,提出一种功能性更全面的适用于云存储的细粒度访问控制方法,解决云存储中数据的细粒度访问控制问题。本专利技术是一种适用于云存储的多功能细粒度访问控制方法,其特征在于,包括有如下步骤:(1)系统初始化:首先云存储系统进行初始化操作,初始化操作包括全局初始化和属性机构初始化;在全局初始化中,首先根据安全参数λ,选择一个可高效计算的双线性映射e:G×G→GT,一个对称密码算法SE=(SE.Enc,SE.Dec,lSE),五个抗碰撞的哈希函数,其中,G和GT是乘法循环群,SE.Enc是加密算法,SE.Dec是解密算法,lSE代表密钥长度,最后公开全局参数GP=<λ,e,G,GT,p,g,U,{Ui},H,F,h,H1,H2,SE>;在属性机构初始化中,每个属性机构在乘法循环群中随机选择随机数αi,βi,yi,并设置自己的私钥为SKi=<αi,βi,yi>,根据私钥计算自己的公钥为其中,g是乘法循环群G的生成元;(2)密钥生成:用户GID在乘法循环群中随机选取一个整数xGID,并根据该随机数设置用户自己的公钥UPKGID;对用户属性集合S中的每个属性j,如果j被属性机构i管理,则该属性机构在群中选取一个私钥随机数tj,并根据该随机数计算和用户GID相对应的云服务器私钥CSKGID,S;属性机构i将数组<GID,CSKGID,S>加入到密钥列表KT中并计算用户的私钥组件然后通过一个安全通道将发送给用户GID;用户GID在收到后,设置自己的私钥为USKGID;(3)数据加密:数据加密阶段分为离线数据加密和在线数据加密阶段,数据在加密时首先在本地进行离线加密,然后进行在线加密并将最终密文上传至云服务器;(3a)离线加密阶段:在此阶段中,系统对数据拥有者的数据进行本地加密,对任意一个属性j∈[1,U],其中,U表示属性空间,数据拥有者根据在群中选取的密文随机数λ'j,rj,w'j,输出中间密文IC;(3b)在线加密阶段:在此阶段中,对D中的每一个属性j,数据拥有者使用H1(σj)将j替换,其中,H1是抗碰撞的哈希函数,σj是与属性j相关的计算因子;使用替换后的属性生成访问策略(A,ρ),其中,A是一个l×n的矩阵,ρ是一个从矩阵A的行到D的一一映射;最后,数据拥有者计算最终的密文CT并将其上传至云服务器;(4)解密:解密分为云服务器解密和用户解密阶段,若用户的属性满足数据拥有者制定的访问结构时,则用户可以访问该数据;当用户需要访问数据时,需要先从云服务器下载数据并对其解本文档来自技高网
...

【技术保护点】
1.一种适用于云存储的多功能细粒度访问控制方法,其特征在于,包括有如下步骤:(1)系统初始化:首先云存储系统进行初始化操作,初始化操作包括全局初始化和属性机构初始化;在全局初始化中,首先根据安全参数λ,选择一个可高效计算的双线性映射e:G×G→GT,一个对称密码算法SE=(SE.Enc,SE.Dec,lSE),五个抗碰撞的哈希函数,其中,G和GT是乘法循环群,SE.Enc是加密算法,SE.Dec是解密算法,lSE代表密钥长度,最后公开全局参数GP=<λ,e,G,GT,p,g,U,{Ui},H,F,h,H1,H2,SE>;在属性机构初始化中,每个属性机构在乘法循环群

【技术特征摘要】
1.一种适用于云存储的多功能细粒度访问控制方法,其特征在于,包括有如下步骤:(1)系统初始化:首先云存储系统进行初始化操作,初始化操作包括全局初始化和属性机构初始化;在全局初始化中,首先根据安全参数λ,选择一个可高效计算的双线性映射e:G×G→GT,一个对称密码算法SE=(SE.Enc,SE.Dec,lSE),五个抗碰撞的哈希函数,其中,G和GT是乘法循环群,SE.Enc是加密算法,SE.Dec是解密算法,lSE代表密钥长度,最后公开全局参数GP=&lt;λ,e,G,GT,p,g,U,{Ui},H,F,h,H1,H2,SE&gt;;在属性机构初始化中,每个属性机构在乘法循环群中随机选择随机数αi,βi,yi,并设置自己的私钥为SKi=&lt;αi,βi,yi&gt;,根据私钥计算自己的公钥为其中,g是乘法循环群G的生成元;(2)密钥生成:用户GID在乘法循环群中随机选取一个整数xGID,并根据该随机数设置用户自己的公钥UPKGID;对用户属性集合S中的每个属性j,如果j被属性机构i管理,则该属性机构在群中选取一个私钥随机数tj,并根据该随机数计算和用户GID相对应的云服务器私钥CSKGID,S;属性机构i将数组&lt;GID,CSKGID,S&gt;加入到密钥列表KT中并计算用户的私钥组件然后通过一个安全通道将发送给用户GID;用户GID在收到后,设置自己的私钥为USKGID;(3)数据加密:数据加密阶段分为离线数据加密和在线数据加密阶段,数据在加密时首先在本地进行离线加密,然后进行在线加密并将最终密文上传至云服务器;(3a)离线加密阶段:在此阶段中,系统对数据拥有者的数据进行本地加密,对任意一个属性j∈[1,U],其中,U表示属性空间,数据拥有者根据在群中选取的密文随机数λ′j,rj,w′j,输出中间密文IC;(3b)在线加密阶段:在此阶段中,对D中的每一个属性j,数据拥有者使用H1(σj)将j替换,其中,H1是抗碰撞的哈希函数,σj是与属性j相关的计算因子;使用替换后的属性生成访问策略(A,ρ),其中,A是一个l×n的矩阵,ρ是一个从矩阵A的行到D的一一映射;最后,数据拥有者计算最终的密文CT并将其上传至云服务器;(4)解密:解密分为云服务器解密和用户解密阶段,若用户的属性满足数据拥有者制定的访问结构时,则用户可以访问该数据;当用户需要访问数据时,需要先从云服务器下载数据并对其解密,解密时首先进行云服务器解密阶段,再进行用户解密阶段;(4a)云服务器解密阶段:在此阶段中,当用户向云服务器请求解密密文CT时,对每个属性j,用户首先用H1(σj)替换自己的每个属性j;若H1(σj)满足访问结构(A,ρ),则云服务器向用户返回部分解密密文CTGID;若H1(σj)不满足访问结构(A,ρ),则云服务器向用户返回不满足符号⊥;(4b)用户解密阶段:当用户得到部分解密密文CTGID后,用户会对密文的有效性进行验证,若有效,则继续对其进行解密得到最终的明文M;若无效,则用户将会丢弃该部分解密密文;(5)用户撤销:若要撤销用户GID,则云服务器从密钥列表KT中找到相应的条目并删除。2.根据权利要求1所述的适用于云存储的多功能细粒度访问控制方法,其特征在于,其中步骤(2)中所述的密钥生成,包括有以下步骤:(2a)用户GID在乘法循环群中随机选取一个整数xGID,并根据该整数设置用户GID的公钥为其中,g是群G的生成元,是从乘法循环群映射到群G的哈希函数,完成对用户公钥的设置;(2b)对用户属性集合S中的每个属性j,如果j被属性机构i管理,则该属性机构在乘法循环群中选取一...

【专利技术属性】
技术研发人员:刘景伟武明利唐会芳孙蓉裴庆祺
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1