首页> 中国专利> 标准模型下格上云存储密文数据公钥可搜索加密方法

标准模型下格上云存储密文数据公钥可搜索加密方法

摘要

本发明属于网络空间安全技术领域,具体涉及标准模型下格上云存储密文数据公钥可搜索加密方法。本发明的方法,不需要随机预言机,使其更加真实地反应设计的公钥可搜索加密方法的安全性,同时设计的密码算法基于LWE困难问题假设,能够有效抵抗量子计算机攻击。该发明方法需要指定唯一的云服务器来进行测试和返回相应搜索结果,使得任意恶意服务器都不能执行搜索测试操作,这样在一定程度上避免了恶意服务器的攻击。而且算法能够确保密文的不可区分性。此外,该发明方法在产生关键词密文阶段只需要计算有限的线性代数运算,并不需要计算开销较大的模指数运算和双线性对运算,在后量子通信环境中具有很大的实际应用价值。

著录项

  • 公开/公告号CN106789044A

    专利类型发明专利

  • 公开/公告日2017-05-31

    原文格式PDF

  • 申请/专利权人 西南石油大学;

    申请/专利号CN201710091523.5

  • 发明设计人 张晓均;张新鹏;何小曼;张源;

    申请日2017-02-20

  • 分类号H04L9/08;H04L29/06;H04L9/32;

  • 代理机构成都点睛专利代理事务所(普通合伙);

  • 代理人葛启函

  • 地址 610500 四川省成都市新都区新都大道8号

  • 入库时间 2023-06-19 02:28:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-12-27

    授权

    授权

  • 2017-06-23

    实质审查的生效 IPC(主分类):H04L9/08 申请日:20170220

    实质审查的生效

  • 2017-05-31

    公开

    公开

说明书

技术领域

本发明属于网络空间安全技术领域,具体涉及标准模型下格上云存储密文数据公钥可搜索加密方法。

背景技术

随着云存储技术的迅速发展,现在越来越多的用户将数据存储到云服务器。这样,用户享有高质量的数据存储服务,极大地降低了用户的计算开销以及维护数据的成本开销。为了安全存储外包数据在不可信的远程云服务器,用户的敏感数据在外包之前需要加密。然而,如何高效地搜索存储在云服务器上的密文数据就成为一个棘手的问题。

利用带关键词的公钥可搜索加密算法是一个非常可行的技术。Boneh等人最先提出了带关键词的公钥可搜索加密算法。之后,Baek等首次提出在公共信道下的公钥可搜索加密算法。在2010年,Fang等人再一次构造了公共信道下的公钥可搜索加密算法,并且与Baek等的算法相比,其效率更高。2014年Wu等人提出了指定测试者的基于身份的可搜索加密算法,该算法除了确保密文不可区分之外,还证明了算法能够确保陷门的不可区分性。

目前,所设计的面向云计算环境应用的公钥可搜索加密算法并不多。而且,对于这些现存的云存储密文数据公钥可搜索加密算法,都是着眼于现今应用比较成熟的设备,对安全性的考虑上也都基于DH问题和CDH问题等传统的数学困难问题,而这些问题都容易被量子计算机轻松破解,在量子计算环境下是不安全的。此外,这些公钥可搜素加密算法都是在标准模型下设计的,其安全性证明都要借助于随机预言机模型,这在一定程度上不能真实反应设计的公钥可搜索加密算法的安全性。基于此,目前越来越多的研究者正着眼于后量子密码安全的公钥可搜索加密算法的研究。因此结合格密码与可搜索加密算法,以及传统的标准模型密码设计技术,设计能够适用于云计算环境的抗量子计算的标准模型下格上公钥可搜索加密方法是一项很有意义的工作。

发明内容

本发明的目的是,提供一种标准模型下格上云存储密文数据公钥可搜索加密方法。

本发明的技术方案为:标准模型下格上云存储密文数据公钥可搜索加密方法,其特征在于,包括以下步骤:

a.系统初始化:设置格密码算法所需要的安全参数,运行陷门生成函数产生数据接收者和云服务器的公私钥对;同时设置向量编码函数;

b.关键词密文产生:数据拥有者根据向量编码函数计算与关键词相关联的公开矩阵,并根据LWE加密思想得到关键词密文的第一个分量;数据拥有者选取随机挑战身份,并根据此随机身份计算与之相关联的公开矩阵,同样根据LWE加密思想得到关键词密文的第二个分量;将关键词密文的第一个分量、关键词密文的第二个分量和随机挑战身份标识构成关键词密文发送到云服务器;

c.搜索陷门产生:数据接收者利用自己的私钥,并根据已知选定的向量,利用左原像抽样函数产生此向量的原像即搜索陷门,并通过安全信道发送给指定的云服务器;

d.测试匹配:指定的云服务器首先将密文拆分为关键词密文的第一个分量、关键词密文的第二个分量和随机挑战身份标识三个分量,利用数据接收者发送的搜索陷门从关键词密文的第一个分量中计算校验比特,同时根据随机挑战身份标识,利用左原像抽样函数导出与随机身份关联的公开矩阵对应的秘密向量,据此再从关键词密文的第二个分量中计算另一个校验比特,并在整数范围内将这两个校验比特与相比对;如果它们足够接近,则输出比特为1,表示测试正确,指定的云服务器返回数据接收者想搜索的与关键词相关联密文信息;否则,测试出错,无返回直接结束。

进一步的,所述步骤a的具体方法为:

a1.设置格密码算法所需要的安全参数:设安全参数n,设置素数q=poly(n),整数m≥2nlogq,设置为离散高斯噪声分布;同时为了左原像抽样函数SampleLeft能够正确运行,设置安全的高斯参数δ;

a2.运行陷门生成函数产生数据接收者和云服务器的公私钥对:运行陷门产生函数TrapGen(q,n)产生均匀随机的n×m矩阵对应的格格基为再次运行陷门产生函数TrapGen(q,n)产生均匀随机的n×m矩阵对应的格格基为

a3.设置向量编码函数:选择两个均匀随机的n×m矩阵A1、B1,同时选择两个均匀随机的n维矩阵向量则得到向量编码函数为H:

a4.构建系统公共参数为PP=(Ac,Ar,A1,B1,v1,v2,H),秘密参数

更进一步的,所述步骤b的具体方法为:

输入系统公共参数PP,关键词

b1.计算关键词密文的第一个分量:

b11.利用向量编码函数H计算与关键词关联的公开矩阵得:选取随机比特b∈{0,1},同时选取均匀随机的n维向量选取均匀随机的m×m矩阵R←{-1,1}m×m

b12.根据离散高斯噪声分布选取噪声e1,e2←Zq,根据离散高斯噪声分布选取两个m维噪声向量同时计算m维向量m维

b13.得到关键词密文的第一个分量:

b2.计算关键词密文的第二个分量:

选取随机身份标识计算与随机身份关联的公开矩阵得到关键词密文的第二个分量:

b3.数据拥有者发送关键词的密文CT={CT1,CT2,id}给云服务器。

更进一步的,所述步骤c的具体方法为:

数据接收者选取关键词产生相应的搜索陷门如下:

计算矩阵运行左抽样原像函数并从离散高斯噪声分布中输出原像根据向量编码函数H与关键词关联的公开矩阵可得于是

据接收者将通过安全信道发送给指定的云服务器。

再进一步的,所述步骤d的具体方法为:

指定的云服务器首先将密文数据CT拆分为CT1,CT2,id,并执行:

d1.采用数据接收者发送的搜索陷门从关键词密文的第一个分量中计算校验比特:计算在整数范围内比对b′与如果它们足够接近,即整数范围内测试结果输出为1,否则输出为0;

d2.利用随机身份标识id,云服务器利用在离散高斯噪声分布中产生根据向量编码函数H与关键词关联的公开矩阵得到于是最后,云服务器计算在整数范围内比对b″和如果它们足够接近,即整数范围内测试结果输出为1,否则输出为0;

d3.云服务器验证是否b′与b″相等,如果相等,则返回测试正确,否则,测试错误。

本发明的有益效果为,本发明提供了具有隐私保护的格上云存储密文数据公钥可搜索加密方法,属于网络空间全领域,解决了量子计算环境下云存储密文数据搜索的问题;此方法是在标准模型下设计的密码算法,不需要随机预言机,使其更加真实地反应设计的公钥可搜索加密方法的安全性,同时能够有效抵抗量子计算机攻击。

具体实施方式

下面详细描述本发明的技术方案:

系统初始阶段:系统首先设置格密码算法所需要的安全参数,运行陷门生成函数产生数据接收者和云服务器的公私钥对。系统再随机选取均匀随机的两个n×m矩阵和两个n维向量:设置一个特殊的向量编码函数。

关键词密文产生阶段:数据拥有者计算与关键词相关联的公开矩阵,并根据LWE加密思想得到关键词密文的第一个分量;数据拥有者选取随机挑战身份,并根据此随机身份计算与之相关联的公开矩阵,同样根据LWE加密思想得到关键词密文的第二个分量。

搜索陷门产生阶段:数据接收者利用自己的私钥,并根据已知选定的向量,利用左原像抽样函数产生此向量的原像即搜索陷门,并通过安全信道发送给指定的云服务器。

测试匹配阶段:指定的云服务器首先将密文拆分为三个分量,利用数据接收者发送的搜索陷门从第一个密文分量中计算校验比特,同时根据随机身份标识,利用左原像抽样函数导出与随机身份关联的公开矩阵对应的秘密向量,据此再从第二个密文分量中计算另一个校验比特,并在整数范围内将这两个校验比特与相比对。如果它们足够接近,则输出比特为1,测试正确,指定的云服务器返回数据接收者想搜索的与关键词相关联密文信息。否则,测试出错,无返回。

以下给出一个具体实例说明:

实施中用到的符号说明见下表:

标准模型下格上云存储密文数据公钥可搜索加密方法。该公钥可搜索加密方法包括以下基本步骤:Setup,PEKS,Trapdoor,Test。

Setup:包括以下四个子步骤:

(1)对于安全参数n,设置素数q=poly(n),整数m≥2nlogq,设置为离散高斯噪声分布。为了左原像抽样函数SampleLeft能够正确运行,系统设置安全的高斯参数δ。

(2)运行陷门产生函数TrapGen(q,n)产生均匀随机的n×m矩阵它对应的格格基为同样运行TrapGen(q,n)产生均匀随机的n×m矩阵对应的格格基为

(3)选择两个两个均匀随机的n×m矩阵A1,B1。同时选择两个均匀随机的n维矩阵向量设置特殊的向量编码函数,具体为H:

(4)系统分别输出公共参数PP=(Ac,Ar,A1,B1,v1,v2,H),秘密参数

PEKS:输入系统公共参数PP,关键词数据拥有者产生关键词的密文如下:

(1)利用特殊的向量编码函数H计算与关键词关联的公开矩阵选取随机比特b∈{0,1},同时选取均匀随机的n维向量选取均匀随机的m×m矩阵R←{-1,1}m×m

(2)根据离散高斯噪声分布选取噪声e1,e2←Zq,根据离散高斯噪声分布选取两个m维噪声向量同时计算m维向量m维

(3)计算关键词密文的第一个分量:

(4)选取随机身份标识计算与随机身份关联的公开矩阵并计算关键词密文的第二个分量

(5)数据拥有者发送关键词的密文CT={CT1,CT2,id}给云服务器。

Trapdoor:数据接收者选取关键词产生相应的搜索陷门如下:

(1)计算矩阵运行左抽样原像函数并从离散高斯噪声分布中输出原像注意到于是

(2)数据接收者将通过安全信道发送给指定的云服务器。

Test:指定的云服务器首先将密文数据CT拆分为CT1,CT2,id,并执行以下步骤:

(1)计算在整数范围内比对b′与如果它们足够接近,即整数范围内测试结果输出为1,否则输出为0。

(2)利用随机身份标识id,云服务器利用在离散高斯噪声分布中产生注意到于是最后,云服务器计算在整数范围内比对b″和如果它们足够接近,即整数范围内测试结果输出为1,否则输出为0。

(3)云服务器验证是否b′与b″相等,如果相等,则返回测试正确,否则,测试错误。

该标准模型下格上公钥可搜索加密方法的正确性推导如下:

利用陷门Tw′,指定的云服务器能够计算利用自己的解密私钥云服务器能够利用左原像抽样函数得到这样,云服务器能够计算由于式子都是噪声向量,为了解密正确,需要确保这两个噪声上界不超过q/5。一旦被正确解密后,云服务器从分量CT1中得到b′=b,以及从CT2,id中得到b″=b,于是此指定的云服务器能够验证b′=b",因此云服务器相信密文CT=(CT1,CT2,id)与数据接收者提供的搜索陷门Tw′是一致的,即数据接收者选取的关键词与数据拥有者产生的密文对应的关键词一致。

该标准模型下格上公钥可搜索加密方法的正确性推导如下:

利用陷门Tw′,指定的云服务器能够计算利用自己的解密私钥云服务器能够利用左原像抽样函数得到这样,云服务器能够计算由于式子和都是噪声向量,为了解密正确,需要确保这两个噪声上界不超过q/5。一旦被正确解密后,云服务器从分量CT1中得到b′=b,以及从CT2,id中得到b″=b,于是此指定的云服务器能够验证b′=b",因此云服务器相信密文CT=(CT1,CT2,id)与数据接收者提供的搜索陷门Tw′是一致的,即数据接收者选取的关键词与数据拥有者产生的密文对应的关键词一致。

本发明提供格上云存储密文数据公钥可搜索加密方法。该公钥可搜索加密方法在标准模型下设计的密码算法,不需要随机预言机,使其更加真实地反应设计的公钥可搜索加密方法的安全性,同时设计的密码算法基于LWE困难问题假设,能够有效抵抗量子计算机攻击。该发明方法需要指定唯一的云服务器来进行测试和返回相应搜索结果,使得任意恶意服务器都不能执行搜索测试操作,这样在一定程度上避免了恶意服务器的攻击。而且算法能够确保密文的不可区分性。此外,该发明方法在产生关键词密文阶段只需要计算有限的线性代数运算,并不需要计算开销较大的模指数运算和双线性对运算,这在后量子通信环境中具有很大的实际应用价值。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号