【技术实现步骤摘要】
一种密文检索结果可验证的多关键字可搜索加密方法
[0001]本申请属于信息安全
,具体涉及一种密文检索结果可验证的多关键字可搜索加密方法。
技术介绍
[0002]云计算通过提供弹性的计算能力和资源存储能力,彻底改变了传统的计算模式。越来越多的个人或企业选择将自己的数据外包到云服务器上,以节省个人或企业的管理成本和存储开销。然而,云计算在为用户提供便利的同时,也带来了一些数据隐私安全隐患。因为云计算本身就是一个以提供计算能力、存储能力或其他能力而盈利的不完全可信第三方,它完全有动机去窃取个人或企业的隐私数据,并从中获取利益。在云环境下,为了保护用户数据隐私,数据一般会加密后再外包到云服务器,这样可以防止云服务器或者恶意第三方对用户数据的非授权访问。然而,这也导致了用户无法直接在加密的数据上进行查询检索。
[0003]因此,可搜索加密应运而生,其允许用户在不恢复数据明文的情况下对存储在云服务器上的加密数据进行关键字查询检索。然而,大多数可搜索加密方案都是以云服务器将诚实地遵循指定的协议为前提,即云服务器被设定为“半诚实”的模型,所以这些方案并没有考虑云服务器返回的匹配计算的结果是否真的可信。在实际情况下,云服务器完全有可能由于系统故障或为了降低计算成本从而只完成部分协议的计算任务并返回错误的计算结果给用户。所以,对于云服务器返回的检索结果不能完全信任,特别是非常关键的计算结果。因此,对于用户而言,能够在云服务器返回的密文检索结果数据集上进行验证十分重要。
[0004]尽管已有的可搜索加密技术实现了密 ...
【技术保护点】
【技术特征摘要】
1.一种密文检索结果可验证的多关键字可搜索加密方法,其特征在于,所述多关键字可搜索加密方法是基于数据客户端、搜索客户端以及云服务器来实现,包括如下步骤:步骤S1、数据客户端生成伪随机函数、关键字词典以及密钥集,其中,所述密钥集包括对称密钥、伪随机函数密钥、隐藏向量积加密密钥和安全向量内积运算所需的密钥;步骤S2、数据客户端通过对称密码算法对目标明文文档进行加密得到密文文档;步骤S3、数据客户端对所述目标明文文档进行关键字匹配生成明文索引向量,并根据所述明文索引向量生成对应的密文索引向量以及验证标签;步骤S4、数据客户端将所述密文文档、密文索引向量及其验证标签之间建立关系后上传至云服务器进行存储;步骤S5、搜索客户端根据待检索关键字集生成明文搜索陷门向量,并根据所述明文搜索陷门向量生成对应的密文陷门向量以及授权标签,最后再将所述密文陷门向量发送至所述云服务器;步骤S6、云服务器根据接收到的所述密文陷门向量进行查询检索,并将符合查询检索要求的所述密文文档及其验证标签返回给搜索客户端;步骤S7、搜索客户端对云服务器返回检索结果进行验证,并解密通过验证后的密文文档。2.根据权利要求1所述的多关键字可搜索加密方法,其特征在于,在所述步骤S1中,生成伪随机函数、关键字词典以及密钥集包括:步骤S11、生成伪随机函数F和伪随机函数密钥其中λ为安全参数;步骤S12、生成对称隐藏向量积加密密钥生成用于对称加密明文数据的对称密钥msk;步骤S13、生成包含所述目标明文文档所有关键字的关键字词典W,其中,所述关键字词典W中包含一般关键字和属性关键字;步骤S14、生成用于安全向量内积运算所需的加密密钥(S,M1,M2),其中,S是维度为1
×
(n+U+1)的分裂指示向量且仅包含0、1元素,{M1,M2}是两个维度为(n+U+1)
×
(n+U+1)的可逆矩阵,n+U为关键字词典的大小,U为噪音关键字的数量。3.根据权利要求2所述的多关键字可搜索加密方法,其特征在于,所述步骤S2中,所述数据客户端通过对称密码算法对目标明文文档进行加密得到密文文档包括:使用对称密码算法和对称密钥msk加密目标明文文档{F1,F2,...,F
N
},获得密文文档{C1,C2,...,C
N
}。4.根据权利要求2所述的多关键字可搜索加密方法,其特征在于,所述步骤S3中,数据客户端对所述目标明文文档进行关键字匹配生成明文索引向量包括:步骤S31、将目标明文文档F
i
=(F1,F2,
…
,F
N
)
i=1,2,...,N
进行关键字匹配,匹配出目标明文文档中包含的所有一般关键字和属性关键字;步骤S32、根据关键字匹配结果生成N个的明文索引向量I
i
={D
i1
,D
i2
}
1≤i≤N
,其中,D
i1
和D
i2
分别为每一个文档F
i
对应生成的向量,另外,明文索引向量的值为0或1;其中对于向量D
i1
,其中D
i1
[j]
1≤i≤N,1≤j≤n
表示关键字词典中的第j个关键字是否出现在文档F中,如果出现,则D
i1
[j]=1,否则D
i1
[j]=0;
对于向量D
i2
,其中D
i2
[j]表示文档F
i
中包含属性关键字的情况,如果第j个关键字为一般关键字,D
i2
[j]=a
i
,其中a
i
为随机数,如果第j个关键字是属性关键字且出现在文档F
i
中,D
i2
[j]等于该属性值,设该属性值为D
w
,则D
i2
[j]=D
w
,否则D
i2
[j]=0。5.根据权利要求4所述的多关键字可搜索加密方法,其特征在于,所述步骤S3中,根据所述明文索引向量生成对应的密文索引向量以及验证标签包括:步骤S33、对明文索引向量I
i
进行扩维处理,得到扩维后的向量D
i1
'[n+U+1]={D
i1
,ε1,ε2,
…
,ε
U
,1}和D
i2
'[n+U+1]={D
i2
,a
n+1
,a
n+2
,
…
,a
n+U+1
},其中,ε
i
和a
i
为随机数;步骤S34、利用分裂指示向量S分别将明文索引向量I
i
中的向量D
i1
和D
i2
裂变为向量(D'
ia
,D'
ib
),维度均为1
×
...
【专利技术属性】
技术研发人员:龚丽,刘翱,张益,何龙,张红莉,
申请(专利权)人:中国民用航空总局第二研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。