【技术实现步骤摘要】
支持布尔访问控制策略的多关键字可搜索加密方法及系统
本专利技术涉及信息检索和密码学
,特别涉及一种支持布尔访问控制策略的多关键字可搜索加密方法及系统。
技术介绍
随着互联网技术的迅速发展和云计算技术的流行,越来越多的企业用户和个人将他们的数据存储到云中,取代了过去存储在自己的数据中心的做法。用户可以随时随地地检索云中的数据,且可以轻松分享给获得许可的人。然而,云计算给我们提供便利的同时也存在着严重的安全隐患。当数据以明文的形式外包给云服务器时,可能会遭受到云服务提供商或黑客的非法访问。通常的解决方法是对数据进行加密处理后以密文的形式存储在云服务器上,但也导致传统的明文检索技术无法应用在密文上。为了使得用户能在密文数据上进行关键字搜索,可搜索加密(SearchableEncryption,简称SE)技术作为一种解决方案而被提出。根据加密方法不同,可搜索加密可分为可搜索对称加密(SymmetricallySearchableEncryption,简称SSE)和公钥可搜索加密(PublicKeyEncryptionw ...
【技术保护点】
1.一种支持布尔访问控制策略的多关键字可搜索加密方法,其特征在于,步骤如下:/nS1、可信权威机构TA生成系统公开密钥pk、主密钥mk以及ElGamal私钥a′,并将系统公开密钥pk公开发布于云服务器,主密钥mk保存在可信权威机构TA,将ElGamal私钥a′发送至数据用户;/nS2、加密:数据拥有者使用系统公开密钥pk、关键字集合O=(o
【技术特征摘要】
1.一种支持布尔访问控制策略的多关键字可搜索加密方法,其特征在于,步骤如下:
S1、可信权威机构TA生成系统公开密钥pk、主密钥mk以及ElGamal私钥a′,并将系统公开密钥pk公开发布于云服务器,主密钥mk保存在可信权威机构TA,将ElGamal私钥a′发送至数据用户;
S2、加密:数据拥有者使用系统公开密钥pk、关键字集合O=(o1,...,om)和访问策略为文档生成索引密文CI和数据密文CD,并将所述密文CI、CD上传至云服务器;
S3、生成令牌:数据用户进行检索操作时,首先需要将其属性集S=(a1,...,an)和查询关键字谓词上传至可信权威机构TA,可信权威机构TA核实所述数据用户身份是否合法,若合法,则使用系统公开密钥pk和主密钥mk为数据用户生成检索令牌并将所述令牌发送至所述数据用户;
S4、搜索密文:数据用户接收到可信权威机构TA发来的检索令牌后,将检索令牌发送至云服务器;云服务器接收后,针对每一个索引密文CI,使用系统公开密钥pk来检查索引密文和检索令牌是否匹配,并将满足匹配条件的数据密文CD发送给数据用户;
S5、解密:数据用户接收到数据密文CD后,使用ElGamal私钥a′,将数据密文CD恢复成对应的明文内容。
2.根据权利要求1所述的支持布尔访问控制策略的多关键字可搜索加密方法,其特征在于,在步骤S1中,可信权威机构TA生成系统公开密钥pk、主密钥mk,以及ElGamal私钥a′的过程如下:
S11、可信权威机构TA使用合数阶双线性群的群生成器执行生成元组(p1,p2,p3,p4,G,GT,e),其中,为输入群生成器的安全参数,p1,p2,p3,p4为四个不同的素数,G和GT为N阶的循环群,且N=p1p2p3p4,满足双线性映射关系e:G×G→GT,该关系式表示将群G中的两个元素映射到群GT中的一个元素;分别表示G的p1,p2,p3,p4阶子群;
S12、可信权威机构TA随机选择元素a,a′,α∈群ZN,随机抽取元素g,h∈群元素X3∈群元素Z,X4∈群并通过计算得H=hZ,Y=e(g,g)α,H和Y分别代表系统公开密钥的成员;
S13、可信权威机构TA选择一个抗碰撞的哈希函数f,其中该哈希函数f满足以下映射:
S14、可信权威机构TA根据以上变量得到系统公开密钥pk=<N,g,ga,ga′,f,Y,H,X4>、主密钥mk=<α,h,X3>以及ElGamal私钥a′;
ElGamal私钥a′具体是通过加密信道发送给数据用户。
3.根据权利要求2所述的支持布尔访问控制策略的多关键字可搜索加密方法,其特征在于,步骤S2的加密过程如下:
S21、数据拥有者将关键字谓词映射为一个线性秘密共享方案表达其中A是ls×n的共享矩阵,ls表示行数,n表示列数;ρ是一个将矩阵A的每一行映射到一个属性字段的函数;T表示为(tρ(1),...,tρ(ls))的形式,tρ(i)是属性字段ρ(i)的属性,1≤i≤ls;
数据拥有者随机生成一个向量v=(s,v2,...,vn)∈群以及从群中随机选择一个元素Z1;s,v2,vn为向量v中的分量;
对于矩阵A的每一行Ai,从群ZN中随机选择元素ri和从群中随机选择两个元素Zc,i,Zd,i;
对于每一个关键字ox,从群中随机选择一个元素Ze,x,其中1≤x≤m;
S22、数据拥有者根据上述变量计算得到索引密文CI:
其中,C0=Ys,C1=gsZ1,
S23、数据拥有者随机生成多位对称密钥ψ,使用AES算法对其文档内容进行加密,得到密文CD,1;
S24、数据拥有者使用ElGamal算法,加密对称密钥ψ得到密文CD,2,其具体过程为:从系统公开密钥pk中获取g和ga′,从群G中随机选择元素y,计算得到δ1=gy,ε=(ga′)y;然后,将对称密钥ψ映射为G上的一个元素ψ′,并计算得到δ2=ψ′ε,最后生成密文CD,2=(δ1,δ2);
S25、数据拥有者根据步骤S23、S24的变量,得到数据密文CD=<CD,1,CD,2>。
4.根据权利要求2所述的支持布尔访问控制策略的多关键字可搜索加密方法,其特征在于,在步骤S3中,可信权威机构TA生成令牌的过程如下:
S31、可信权威机构TA将查询关键字谓词映射为一个线性秘密共享方案表达其中,是lO×m的共享矩阵,lO表示行数,m表示列数;是一个将矩阵的每一行映射到一个关键字字段的函数;表示为的形式,是关键字字段的关键字,1≤x′≤lO;
S32、可信权威机构TA从群ZN中随机选择两个元素c1,c2,生成向量其中,为随机数,从群中随机选择两个元素R0,R1;
S33、对于属性集S=(a1,...,an)中...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。