[发明专利]一种多用户动态关键词可搜索加密方法有效

专利信息
申请号: 201610200952.7 申请日: 2016-03-31
公开(公告)号: CN105897419B 公开(公告)日: 2018-12-18
发明(设计)人: 江颉;林鹏;陈铁明;王小号;陈波 申请(专利权)人: 浙江工业大学
主分类号: H04L9/30 分类号: H04L9/30;H04L9/08;H04L29/06
代理公司: 杭州斯可睿专利事务所有限公司 33241 代理人: 王利强
地址: 310014 浙江省*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要: 一种多用户动态关键词可搜索加密方法,包括如下步骤:步骤1、输入参数1k,生成系统参数;步骤2、输入用户标识uid,输出用户私钥Kuid与用户公钥PKuid;步骤3、输入用户标识uid,根据uid撤销用户;步骤4、输入文件集合F,关键词集合W,用户私钥Kuid与用户公钥PKuid,生成索引结构I;步骤5、输入用户私钥Kuid,关键词w,输出搜索凭证Tw;步骤6、输入用户标识uid,搜索凭证Tw,输出满足条件的索引Iw;步骤7、输入文件f,输入关键词集合W,用户私钥Kuid,输出添加凭证TA;步骤8、输入添加凭证TA,进行添加操作;步骤9、输入文件f,用户私钥Kuid,输出添加凭证Td;步骤10、输入删除凭证,进行删除操作。本发明提供一种动态更新性能较好、搜索效率较高的一种多用户动态关键词可搜索加密方法。
搜索关键词: 一种 多用户 动态 关键词 搜索 加密 方法
【主权项】:
1.一种多用户动态关键词可搜索加密方法,其特征在于:该可搜素加密方法包括如下步骤:步骤1、输入参数1k,生成系统参数,过程如下:初始化生成双线性群G1,G2,群Zp,两个随机向量机H1:{0,1}*→{0,1}*,H2:{0,1}*→{0,1}*,哈希函数h:{0,1}*→G1,随机选取a,b,c∈Zp,并将a,b,c作为系统密钥MK保存;MK={a,b,c}  (1)步骤2、输入用户标识uid,输出用户私钥Kuid与用户公钥PKuid,过程如下:授权机构为用户组中的用户分发密钥,随机选取Kuid∈Zp,然后根据公式(2)计算PKuid,其中g为群G1的生成元:授权机构通过安全信道将用户私钥Kuid分发给用户,并同时将用户标识与公钥{uid,PKuid}分发给云服务器;步骤3、输入用户标识uid:云服务器根据用户标识uid,删除其对应的公钥PKuid即可完成用户撤销操作;步骤4、输入文件集合F,关键词集合W,用户私钥Kuid与用户公钥PKuid,生成索引结构I,用户完成与服务器的交互,开始构建加密索引,令As和Ad表示搜索数组和删除数组,令Ts和Td表示速查表,按照如下处理:4.1)构建Lw列表,Lw表示包含关键词w的文件链表,将Lw中的节点随机存储于搜索数组As中,并对各项按公式(6)加密,其中addrs表示节点N在As中对应的位置,id表示文件id,其中随机选取ri∈Zp,其中P(w),F(w),G(w)的计算需要交互执行;4.2)保存Lw列表中第一个节点信息到Ts,按公式(7)计算,其中addrd表示节点在Ad中对应的位置,表示N1在Ad中对应的节点;4.3)构建Lf列表,Lf表示包含文件f的关键词链表,将Lf中的节点随机存储于删除数组Ad中,并对各项按公式(8)加密,其中N+1表示N节点后一节点,N‑1则为前一节点,其中随机选取ri∈Zp4.4)保存Lf列表中第一个节点信息到Td,按公式(9)计算:4.5)令(F1,F2,...,Fz)为As中未使用节点,对应的Ad中节点为(F1',F2',...,Fz'),令Ts[free]=(addrs(Fz),0log|A|),并令As[addrs(Fi)]={0log|A|,addrs(Fi‑1),addrd(Fi′)};其中|A|表示As与Ad的长度;4.6)Ad,As将剩余节点填充为随机字符串,最终将(As,Ts,Ad,Td)传至云服务器;步骤5、输入用户私钥Kuid,关键词w,输出搜索凭证Tw,过程如下:用户利用私钥,按公式(10)生成搜索凭证Tw,并将搜索凭证交于服务器;步骤6、输入用户标识uid,搜索凭证Tw,输出满足条件的索引Iw,过程如下:云服务器获得用户搜索凭证Tw,根据uid,查找对应的PKuid,分别按公式(11)计算:云服务器从Ts中查询F(w),若不存在该项,则返回NULL,若Ts存在F(w),则令查找N1=As[α],令v1,r1=As[α],计算对i≥2,继续按上述步骤计算,直到αi+1=0,最终返回结果I={id1,...,idm};步骤7、输入文件f,输入关键词集合W,用户私钥Kuid,输出添加凭证TA,过程如下:用户与服务器进行交互,交互过程在后文进行说明,交互结束后,用户生成F(x),G(x),P(x),其中x∈{f,w1,w2,...},随机选取ri∈Zp,并按照公式(12)生成添加凭证TA:TA={F(f),G(f),λ1,λ2,...λ|w|}步骤8、输入添加凭证TA,进行添加操作,遍历λ1,λ2,...λ|w|,对每个λi做如下操作:8.1)查找free列表中第后一个节点,即计算8.2)更新free列表,即令8.3)取关键词对应文件列表中的头节点,若Tsi[1]]不存在,则令α1,都为0;8.4)将新节点放置到并更新该点前向节点信息,8.5)更新Ts信息,令Ts8.6)更新信息,令其中若Tsi[1]]不存在,则跳过该步骤;8.7)更新新增节点对应的删除列表中的信息,即令当i=|W|,则用0代替8.8)若i=1,则令步骤9、输入文件f,用户私钥Kuid,输出添加凭证Td,过程如下:按公式(13)生成删除凭证,并向服务器发送步骤10、输入删除凭证TD,过程如下:首先取出uid对应的用户公钥PKuid,按式(14)执行:服务端取出Lf列表,即计算并从Td中移除该项;遍历Lf列表,令1≤i≤|Lf|,继续执行以下步骤:10.1)计算其中(Di,r)=Ad[α′i];10.2)删除Di节点,即用随机字符串填充Ad[α′i];10.3)取得free节点列表中最后一个节点,即10.4)更新Ts[free],令Ts[free]={α4,0};10.5)若存在N‑1节点,即α5≠0,则其中{β12,r‑1}=As5],同时更新该节点在删除列表中的对应信息即其中10.6)若不存在N‑1节点,即α5=0,且不存在N+1,即α5=0,存在直接删除该节点对应的Ts项,即Ts[μ];10.7)若不存在N‑1节点,即α5=0,但是存在N+1,即α5≠0,则删除节点是对应关键词链表的头节点,需要更新Ts[μ],使得它指向N+1,即令10.8)若存在N+1节点,即α5≠0,则令其中10.9)令α′i+1=α1。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

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

本文链接:http://www.vipzhuanli.com/patent/201610200952.7/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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