一种支持数值属性比较的多关键字可搜索加密方法技术

技术编号:18208446 阅读:59 留言:0更新日期:2018-06-13 08:11
本发明专利技术公开了一种支持数值属性比较的多关键字可搜索加密方法,用于在云存储背景下实现数值属性比较的多关键字可搜索加密,利用可搜索加密技术建立有效的密文索引,实现了多关键字密文检索,不仅可以快速定位用户感兴趣的密文文档,而且节省了带宽资源以及提升了用户体验,利用密文策略的属性加密技术,实现了细粒度访问控制,只有合法的数据用户才能进行密文检索,对访问控制策略的数值属性进行0编码和1编码,可以支持数值属性比较,具有更广阔的应用场景。

【技术实现步骤摘要】
一种支持数值属性比较的多关键字可搜索加密方法
本专利技术属于信息安全
,涉及密文策略的属性加密技术,具体涉及一种支持数值属性比较的多关键字可搜索加密方法。
技术介绍
随着云计算的快速发展,云存储在越来越多的领域得到广泛的应用。数据用户将大量的私密信息存储在云端服务器,大大的减轻本地数据的管理和维护开销。但数据以明文的形式存储在云端服务器存在着严重的安全隐患,通常的解决办法是在上传云端服务器前对数据进行加密。可搜索加密技术目前成为了云计算的研究热点,该技术使得数据用户在不解密密文的前提下,可以对密文进行关键字查询操作。数据拥有者根据关键字建立密文索引,当数据用户查询含有某个关键字的密文时向云服务器提交陷门,云服务器通过匹配陷门和索引来返回匹配的密文。可搜索加密技术不仅保证了数据的安全,而且实现了对密文的快速检索。然而,单关键字密文检索技术会返回大量不相关的密文而浪费带宽资源,因此,如何设计索引实现高效的多关键字可搜索加密成为了最近的研究热点。在云环境解密方不固定的场景下,数据拥有者希望只有满足条件的数据用户才能对密文进行搜索。通过结合属性加密技术和可搜索加密技术提出的基于属性的可搜索加密技术,具体包括密文策略的可搜索加密技术和密钥策略的属性加密技术。其中,密文策略的可搜索加密技术的密文与访问控制策略相关,密钥和数据用户属性相关,属性满足访问控制策略的数据用户可以进行密文检索。因此,密文策略的可搜索加密技术不仅实现了高效的密文检索,而且支持细粒度的访问控制。大量的密文策略的可搜索加密技术的访问控制策略只支持文本属性或数值属性相等的情况,这给实际的应用带来了很大的局限性。为解决该问题,利用0编码和1编码技术设计有效的访问控制策略来支持数值属性比较,比如:访问控制策略是“年龄<50”,则年龄小于50的数据用户都是合法的。因此,如何在云存储背景下设计实现支持数值属性比较的多关键字可搜索加密方法成为了急需解决的关键问题。
技术实现思路
为了解决现有技术中存在的问题,本专利技术的目的是提供一种支持数值属性比较的多关键字可搜索加密方法,可搜索加密技术和0编码和1编码技术,可用于在云存储背景下实现数值属性比较的多关键字可搜索加密。为了实现上述目的,本专利技术采用的技术方案是,一种支持数值属性比较的多关键字可搜索加密方法,包括以下步骤:步骤一,系统初始化:第三方可信实体TTP根据安全参数k,生成公共参数pm和主密钥msk;步骤二,密钥生成:第三方可信实体TTP根据数据用户的属性集S生成私钥SK,并将私钥SK返回给数据用户;步骤三,索引建立:给定明文文档集F,关键字集W和访问控制结构P,数据拥有者对访问控制结构P的数值属性利用0编码和1编码技术进行编码,利用对称密钥集将明文文档集F加密成密文文档集C,利用访问控制结构P和关键字集W生成索引集I,并将密文文档集C和索引集I发送给云服务器;步骤四,陷门生成:数据用户根据查询关键字集W',属性集S和私钥SK生成陷门TW',对数据用户的数值属性利用0编码和1编码技术进行编码,并将陷门TW'和编码后的属性集发送给云服务器;步骤五,密文搜索:云服务器首先验证数据用户的属性集S是否满足访问控制结构P,如果不满足,终止操作;否则,云服务器将陷门Tw'和密文索引集I进行匹配,将匹配成功的密文集C'发送给数据用户,数据用户根据密文集C'和相应的对称密钥集,数据用户解密密文集C'得到明文文档。进一步的,所述步骤一中,公共参数pm={G,GT,e,p,g,H1,H2,ga,gb,gc},主密钥msk={a,b,c};其中G是p阶加法循环群,g是G的生成元,GT是p阶乘法循环群,e是双线性映射G×G→GT,H1表示将集合{0,1}*映射到p阶加法循环群G的哈希函数,H2表示将集合{0,1}*映射到p阶整数环Zp的哈希函数,a表示第一随机数:a∈Zp,b表示第二随机数b∈Zp,c表示第三随机数:c∈Zp。进一步的,所述步骤二中,数据用户的属性集S={A1,A2,…,An},私钥SK={{π1,j,π2,j}j∈[1,n],γ};其中An表示数据用户的第n个属性,可以是文本属性或者是数值属性,π1,j表示第一私钥分量,π2,j表示第二私钥分量,γ表示第三私钥分量:γ=g(ac-r)/b,r表示第四随机数,r∈Zp,νj表示第j随机数:νj∈Zp,j∈[1,n]表示j的取值范围。进一步的,所述步骤三,具体包括以下步骤:第一步,访问控制结构P是一种树形结构,树中的每个节点包括多项式和门限值,令κ=κnκn-1…κ1={0,1}n表示为一个长度为n的二进制字符串,其中n足够大并且可以覆盖各种可能的属性值,对整数κ进行0编码和1编码,则有以下的公式:整数κ的0编码值整数κ的1编码值如果访问控制结构中的策略是数值属性Att大于标准值x,即Att>x,对该策略进行0编码可以得到访问控制结构的0编码值其中||表示两个不同部分的连接,表示z是标准值x的某个0编码值;如果访问控制结构中的策略是数值属性Att小于标准值x,即Att<x,对该策略进行1编码可以得到访问控制结构的1编码值表示z是标准值x的某个1编码值;第二步,为根节点r选取多项式qr(v)和门限值kr(v),其中v是自变量,当自变量v=0时,qr(0)=α2,α2表示第五随机数,α2∈Zp,门限值kr(v)的范围1≤kr(v)≤numr,numr表示根节点r子节点个数;第三步,为非叶子节点x选取多项式qx(v)和门限值kx(v),多项式qx(v)满足以下条件:dx(v)=kx(v)-1,qx(0)=qparent(x)(index(x));其中dx(v)表示qx(v)的多项式次数,且当自变量v=0时,qx(0)=qparent(x)(index(x)),parent(x)表示节点x的父节点,index(x)表示parent(x)子节点的顺序,门限值kx(v)的范围1≤kx(v)≤numx,numx表示节点x子节点个数;第四步,为叶子节点l选取多项式ql(v)和门限值kl(v),其中多项式ql(v)=S,门限值kl(v)=1;第五步,根据访问控制结构P和给定关键字集W={w1,…wi,…wm},数据拥有者为每个明文文档建立密文索引其中η1表示第一索引分量,η2表示第二索引分量,η3表示第三索引分量,α1表示第六随机数;α1∈Zp,表示第四索引分量,若文档含关键字wi,则否则令θ1,l表示第五索引分量,θ2,l表示第六索引分量,Att(l)表示叶子结点的属性值,l∈L访问控制结构P中的叶子节点集合;第六步,数据拥有者利用对称密钥集将明文文档集F加密成密文文档集C,并将密文文档集C和索引集I发送给云服务器。进一步的,所述步骤四,具体包括以下步骤:第一步,数据用户根据查询关键字集W'={w'1,…,w't}中每个关键字在给定关键字集W={w1,…wi,…wm}的相对位置得到位置集X;第二步,数据用户根据查询关键字集W',属性集S和私钥SK生成陷门TW'={T1,T2,T3,{π'1,j,π'2,j}j∈[1,n]},其中T1表示第一陷门分量,u表示第七随机数;u∈Zp,T2表示第二陷门分量,T2=gcu,T3表示第三陷门分量,T3=γu,π'1,j表本文档来自技高网
...
一种支持数值属性比较的多关键字可搜索加密方法

【技术保护点】
一种支持数值属性比较的多关键字可搜索加密方法,其特征在于,包括以下步骤:步骤一,系统初始化:第三方可信实体TTP根据安全参数k,生成公共参数pm和主密钥msk;步骤二,密钥生成:第三方可信实体TTP根据数据用户的属性集S生成私钥SK,并将私钥SK返回给数据用户;步骤三,索引建立:给定明文文档集F,关键字集W和访问控制结构P,数据拥有者对访问控制结构P的数值属性利用0编码和1编码技术进行编码,利用对称密钥集将明文文档集F加密成密文文档集C,利用访问控制结构P和关键字集W生成索引集I,并将密文文档集C和索引集I发送给云服务器;步骤四,陷门生成:数据用户根据查询关键字集W',属性集S和私钥SK生成陷门TW',对数据用户的数值属性利用0编码和1编码技术进行编码,并将陷门TW'和编码后的属性集发送给云服务器;步骤五,密文搜索:云服务器首先验证数据用户的属性集S是否满足访问控制结构P,如果不满足,终止操作;否则,云服务器将陷门Tw'和密文索引集I进行匹配,将匹配成功的密文集C'发送给数据用户,数据用户根据密文集C'和相应的对称密钥集,数据用户解密密文集C'得到明文文档。

【技术特征摘要】
1.一种支持数值属性比较的多关键字可搜索加密方法,其特征在于,包括以下步骤:步骤一,系统初始化:第三方可信实体TTP根据安全参数k,生成公共参数pm和主密钥msk;步骤二,密钥生成:第三方可信实体TTP根据数据用户的属性集S生成私钥SK,并将私钥SK返回给数据用户;步骤三,索引建立:给定明文文档集F,关键字集W和访问控制结构P,数据拥有者对访问控制结构P的数值属性利用0编码和1编码技术进行编码,利用对称密钥集将明文文档集F加密成密文文档集C,利用访问控制结构P和关键字集W生成索引集I,并将密文文档集C和索引集I发送给云服务器;步骤四,陷门生成:数据用户根据查询关键字集W',属性集S和私钥SK生成陷门TW',对数据用户的数值属性利用0编码和1编码技术进行编码,并将陷门TW'和编码后的属性集发送给云服务器;步骤五,密文搜索:云服务器首先验证数据用户的属性集S是否满足访问控制结构P,如果不满足,终止操作;否则,云服务器将陷门Tw'和密文索引集I进行匹配,将匹配成功的密文集C'发送给数据用户,数据用户根据密文集C'和相应的对称密钥集,数据用户解密密文集C'得到明文文档。2.根据权利要求所述的一种支持数值属性比较的多关键字可搜索加密方法,其特征在于,所述步骤一中,公共参数pm={G,GT,e,p,g,H1,H2,ga,gb,gc},主密钥msk={a,b,c};其中G是p阶加法循环群,g是G的生成元,GT是p阶乘法循环群,e是双线性映射G×G→GT,H1表示将集合{0,1}*映射到p阶加法循环群G的哈希函数,H2表示将集合{0,1}*映射到p阶整数环Zp的哈希函数,a表示第一随机数:a∈Zp,b表示第二随机数b∈Zp,c表示第三随机数:c∈Zp。3.根据权利要求所述的一种支持数值属性比较的多关键字可搜索加密方法,其特征在于,所述步骤二中,数据用户的属性集S={A1,A2,…,An},私钥SK={{π1,j,π2,j}j∈[1,n],γ};其中An表示数据用户的第n个属性,可以是文本属性或者是数值属性,π1,j表示第一私钥分量,π2,j表示第二私钥分量,γ表示第三私钥分量:γ=g(ac-r)/b,r表示第四随机数,r∈Zp,νj表示第j随机数:νj∈Zp,j∈[1,n]表示j的取值范围。4.根据权利要求所述的一种支持数值属性比较的多关键字可搜索加密方法,其特征在于,所述步骤三,具体包括以下步骤:第一步,访问控制结构P是一种树形结构,树中的每个节点包括多项式和门限值,令κ=κnκn-1…κ1={0,1}n表示为一个长度为n的二进制字符串,其中n足够大并且可以覆盖各种可能的属性值,对整数κ进行0编码和1编码,则有以下的公式:整数κ的0编码值整数κ的1编码值如果访问控制结构中的策略是数值属性Att大于标准值x,即Att>x,对该策略进行0编码可以得到访问控制结构的0编码值其中||表示两个不同部分的连接,表示z是标准值x的某个0编码值;如果访问控制结构中的策略是数值属性Att小于标准值x,即Att<x,对该策略进行1编码可以得到访问控制结构的1编码值表示z是标准值x的某个1编码值;第二步,为根节点r选取多项式qr(v)和门限值kr(v),其中v是自变量,当自变量v=0时,qr(0)=α2,α2表示第五随机数,α2∈Zp,门限值kr(v)的范围1≤kr(v)≤numr,numr表示根节点r子节点个数;第三步,为非叶子节点x选取多项式qx(v)和门限值kx(v),多项式qx(v)满足以下条件:dx(v)=kx(v)-1,qx(0)=qparent(x)(index(x));其中dx(v)表示qx(v)的多项式次数,且当自变量v=0时,qx(0)=qparent(x)(index(x)),parent(x)表示节点x的父节点,index(x)表示parent(x)子节点的...

【专利技术属性】
技术研发人员:苗银宾马建峰伍祈应王祥宇
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西,61

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

1