[发明专利]多数据拥有者环境中基于属性的连接关键字搜索方法有效

专利信息
申请号: 202010002939.7 申请日: 2020-01-02
公开(公告)号: CN111177787B 公开(公告)日: 2022-12-06
发明(设计)人: 李慧贤;杨葆哲;马勇;庞辽军;穆群英;刘黎明 申请(专利权)人: 西北工业大学
主分类号: G06F21/62 分类号: G06F21/62;G06F21/60;G06F16/14;G06F16/13
代理公司: 西安匠星互智知识产权代理有限公司 61291 代理人: 陈星
地址: 710072 *** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 多数 拥有 环境 基于 属性 连接 关键字 搜索 方法
【权利要求书】:

1.一种多数据拥有者环境中基于属性的连接关键字搜索方法,其特征在于步骤如下:

步骤1:系统初始化

系统中的可信授权中心选择哈希函数H:{0,1}*→Zp,阶为p的乘法循环群G、GT,Zp为整数有限域,p为素数;双线性映射e:G×G→GT,g为群G的生成元;可信授权中心为属性全集U={1,2,...,u)中的每个属性i,u为正整数,1≤i≤u,从群G中选择对应的随机数hi∈G,另随机选择α,β∈Zp,计算X=gα,Y=gβ,得到系统公钥PK和系统主密钥MSK:

PK=(G,GT,p,g,e,X,Y,h1,h2,…,hu) (1)

MSK=(α,β) (2)

步骤2:属性密钥生成

给定查询用户DUd的属性集Sd,其中lDU表示系统中查询用户的数量,lDU为正整数;可信授权中心为该用户随机选取整数r∈Zp,计算K=gαgβr和L=gr,对用户属性集Sd中的每一个属性j,1≤j≤u,计算Kj=hjr,生成用户DUd的属性密钥SKd

步骤3:索引生成

为了便于云服务器进行密文检索,每个数据拥有者都需要为待上传的文件生成索引;索引生成的具体步骤如下:

1)数据拥有者DOi从文件Fi,j中选取一组具有代表性的关键字集合其中1≤i≤lDO,lDO表示系统中数据拥有者的数量,lDO为正整数;表示系统中第i个数据拥有者的文件数量,为正整数;表示文件Fi,j中选出的关键字数量,为正整数;关键字集合Wi,j是系统关键字全集的子集,这里lw表示系统关键字全集W中关键词的数量,lw为正整数;对集合Wi,j中的每个关键字wi,j,t,计算得到索引Ii,j中的部分;

2)数据拥有者DOi为文件Fi,j选择LSSS型访问结构(Ml×n,ρ),其中Ml×n是一个l行n列的秘密共享矩阵,l和n均为正整数;函数ρ:{1,2,...,l}→ρ(i)表示将矩阵Ml×n中的第i行Mi映射为一个属性值ρ(i),1≤i≤l;令s∈Zp表示待分享的秘密值,随机选取y2,y3,...,yn∈Zp,构成列向量v=(s,y2,...,yn),并计算E0=gs和E1=gαs;对矩阵Ml×n中的每一行Mi,计算λi=v·Mi;另选l个随机数r1,r2,...,rl∈Zp,计算和该步骤的计算可获得索引Ii,j中的{E0,E1,{Ci,Di}i∈{1,2,...,l}}部分;

3)数据拥有者DOi根据公式(4)计算出关键字集Wi,j中每个关键字wi,j,t与文件Fi,j的相关性得分RSi,j,t,得到相关性得分集合

式中,表示文件Fi,j的长度,即文件Fi,j中包含单词的数量,为正整数,表示关键字wi,j,t出现在文件Fi,j中的频率,表示系统中所有包含关键字wi,j,t的文件数量,N表示系统中文件总数量,N为正整数;

为了保证相关性得分的机密性,DOi利用自身身份IDi,1≤i≤lDO,根据公式(5)选取对应的顺序累加隐私保护函数

式中,Aj,k表示m(x,j)·m(y,k)的系数,Aj,k为正整数,τ表示函数的阶,τ为正整数;x代表相关性得分变量,y表示不同拥有者身份IDi的哈希值,即y=H(IDi);函数m(x,j)用来保护相关性得分x的顺序,函数m(y,k)用来保护数据拥有者的身份,raof是随机整数项,raof∈{0,1,...,2j-1},m(x,j)是一个如公式(6)所示的递归函数,其中α和λ均为正整数;

数据拥有者DOi选取对应的并利用该函数加密RSi,j集合中的每一个元素RSi,j,t,得到相关性得分密文同时为了便于云服务器对不同数据拥有者索引中的相关性得分进行排序,DOi还需计算函数该步骤的计算可得到索引Ii,j中的部分;

经过以上三个步骤的计算,最终得到文件Fi,j的索引Ii,j如下:

步骤4:陷门生成

查询用户DUd选取待查询关键字集lQ表示查询关键字的数量,lQ为正整数;查询用户利用属性密钥SKd计算陷门;用户随机选择q∈Zp,计算其中1≤t≤lQ,T2=Kq,T3=grq,T4=gq;对于查询用户属性密钥SKd中的每一个元素Kj,计算Tj=Kjq,最终得到陷门Td,并上传至云服务器;

步骤5:密文搜索

云服务器根据查询用户上传的陷门Td,对当前已存储的文件进行搜索;以云服务器中已存储的文件Fi,j为例,其中1≤i≤lDO,云服务器根据文件Fi,j的索引Ii,j进行如下计算;若用户DUd的属性集Sd满足LSSS型访问结构(Ml×n,ρ),即可得到满足访问结构的最小属性集合X={i:ρ(i)∈Sd},则一定存在常数集{wi}i∈X,使得∑i∈Xwiλi=s;云服务器计算同时获取索引Ii,j中的进而验证等式(9)是否成立;若等式(9)成立,表示文件Fi,j的索引Ii,j所包含的关键字集与查询关键字集匹配,同时查询用户的属性集Sd满足文件Fi,j的LSSS型访问结构(Ml×n,ρ),因此文件Fi,j满足搜索条件,将Fi,j加入到初步搜索结果集F中,继续判断云服务器中存储的下一个文件是否满足搜索条件;若等式(9)不成立,表示文件Fi,j不满足搜索条件,则跳过该文件,继续判断存储的下一个文件是否满足搜索条件;经过步骤五的计算,最终得到一个满足用户搜索条件的初步搜索结果集F;

步骤6:搜索结果排序

为了提高搜索精确度,云服务器对初步搜索结果集F进行排序,仅给用户返回最相关的前k个文件,k为正整数;若用户提交的查询关键字集为假设当前满足搜索条件的文件共有m个,即F={F1,F2,...,Fm},其中m为正整数,1≤k≤m;云服务器通过如下计算从而实现搜索结果排序;排序分为以下两种情况:

1)若m个文件来自同一个拥有者DOi;云服务器分别计算文件F1,F2,...,Fm与查询关键字集Q的相关性得分;

再从{Vi,1,Vi,2,...,Vi,m}这m个数值中选出前k个最大的值,并把对应的文件集发送至查询用户;

2)若m个文件来自不同的数据拥有者,假定用户DOi拥有其中的η个文件,标记为其中1≤η<m;云服务器首先计算用户DOi拥有的文件集与查询关键字集Q的相关性得分;

除去用户DOi拥有的文件将剩余来自不同数据拥有者的个文件标记为其中由于不同拥有者的ID不同,对文件Fi_j选取的函数不同,因此对来自不同拥有者的文件计算的相关性得分密文不具有可比性;云服务器为了对这个文件与查询关键字集Q的相关性得分排序,首先将不同拥有者的身份哈希值统一用变量y表示,得到公式(12);

然后用H(IDi)替换公式(12)中的y,固定变量y的值,使得文件排序结果仅与相关性得分有关,得到公式(13);

从集合这m个数值中选出前k个最大的值,并把对应的文件集发送至查询用户。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西北工业大学,未经西北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010002939.7/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top