[发明专利]一种多用户场景下可验证的多密钥可搜索加密方法有效
申请号: | 201910478000.5 | 申请日: | 2019-06-03 |
公开(公告)号: | CN110392038B | 公开(公告)日: | 2021-07-13 |
发明(设计)人: | 王剑锋;宿雅萍;陈晓峰;张中俊;王贇玲 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 西安长和专利代理有限公司 61227 | 代理人: | 黄伟洪 |
地址: | 710071 陕西省*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多用户 场景 验证 密钥 搜索 加密 方法 | ||
1.一种多用户场景下可验证的多密钥可搜索加密方法,其特征在于,所
述多用户场景下可验证的多密钥可搜索加密方法包括以下步骤:
步骤一,对于每一个文件,数据拥有者使用对称加密算法生成相应的数据密钥,利用该密钥加密文件和对应的关键词集合,并将加密文件和加密的关键词集合组织在一起外包到云服务器中;将数据密钥发送给授权的用户;
步骤二,若数据拥有者分享一定数量的重要文件给用户,用户需要生成查询密钥、分享密钥和可验证的数据结构,并将分享密钥和可验证的数据结构存储在云服务器中,具体包括:
第一步,用户首先生成查询密钥KPRF,并为每个被分享的文件生成随机的文件标识符r;
第二步,用户从云服务器中下载(T,C),并利用数据拥有者发送的数据密钥KSE解密T并恢复出Wd;
第三步,对于集合Wd中的每一个关键词w,用户首先生成第二个PRF 的密钥kw=F(KPRF,w),F(.)是一个伪随机函数,并利用该密钥kw和文件标识符r计算对应的陷门tw=F(kw,r);对集合Wd中每一个关键词w的陷门信息tw,将它们存储于一个完美哈希表D中;
第四步,对所有分享的n个文件T1,...Tn:用户将文件标识符{r1,...rn}和哈希表D以Δ=({r1,...rn},D)的形式组织在一起形成分享密钥;
第五步,用户选择k个哈希函数片={h1...hk},安全参数λ,m是GBF变种的长度,以此建立可验证的数据结构GBF;
第六步,计算q=F(KPRF,w),对包含关键词w的所有文件的文件标识符r,对这些标识符进行异或操作,最终得到一个异或值R;利用这k个哈希函数,计算h1(q)...hk(q)得到GBF的k个位置;存储在这k个位置的元素GBF[h1(q)]..GBF[hk(q)]是长度为λ的随机比特串,且满足另外对GBF中剩余空的位置置为λ长的0比特串,即0λ;对数据拥有者分享给用户的所有文件中的所有不同关键词集合,即w∈W,依次进行第六步的操作,最终生成可验证的数据结构GBF;
第七步:用户将分享密钥Δ和可验证的数据结构GBF存储于云服务器中;
步骤三,当用户查询包含某一关键词的文件时,利用步骤二中生成的查询密钥生成查询信息,并提交给云服务器;
步骤四,云服务器收到用户的查询请求时,它会利用用户提交的查询信息生成相应的陷门信息,并在分享密钥上执行检索;返回查询结果,包括验证所需的证据;
步骤五,当云服务器返回查询的结果时,用户使用该证据验证返回的查找结果是否正确且完整,证明服务器的行为是诚实的或恶意的,具体包括:
第一步,当IdSet为空集时,用户首先检查GBF中关于查询q对应的k个位置处的元素是否存在GBF[hi(q)] 为0λ,1≤i≤k;如果存在,则说明服务器中确实没有匹配的文件,此时证明服务器是诚实的;否则,则说明服务器是恶意的,服务器没有执行检索搜索操作或者没有返回检索到的结果;
第二步,当IdSet不为空集时,首先对IdSet中的每一个文件标识符计算依次进行异或运算,得到异或值R′;接着计算比较R与R′是否相等,若满足R=R′,则说明云服务器返回的查询结果是正确并且是完整的,即服务器是诚实的;否则,说明服务器是恶意的,返回了部分或者不正确的结果给用户。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910478000.5/1.html,转载请声明来源钻瓜专利网。