[发明专利]一种前后向安全且具有可恢复关键字屏蔽的加密方法有效
申请号: | 202011148615.0 | 申请日: | 2020-10-23 |
公开(公告)号: | CN112311781B | 公开(公告)日: | 2021-11-12 |
发明(设计)人: | 李致君;马建峰;苗银宾;李颖莹;李佳忆 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L9/32;H04L9/08;H04L29/08 |
代理公司: | 西安通大专利代理有限责任公司 61200 | 代理人: | 房鑫 |
地址: | 710071 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 前后 安全 具有 可恢复 关键字 屏蔽 加密 方法 | ||
1.一种前后向安全且具有可恢复关键字屏蔽的加密方法,其特征在于:
通过单向陷门置换实现前向安全和可恢复关键字屏蔽:利用单向陷门置换在数据拥有者端生成更新的搜索令牌STc+1,在搜索过程中,云服务器能够根据陷门排列的公钥和STc+1将搜索令牌从ST0推导出到STc,但在没有密钥的情况下,无法根据STc计算STc+1;
通过可穿刺加密实现后向安全:使用伪随机函数为每个索引生成一个标签,并使用可穿刺加密对带有标签的索引进行再次加密;当关键字/文件对被删除时,数据拥有者会穿刺公钥加密的密钥,云服务器修改相应的标签,因此,云服务器无法解密关键字/文件对;
屏蔽阶段的操作如下:首先,数据拥有者初始化屏蔽计数器sc为0,并在进行关键字屏蔽或关键字取消屏蔽时将计数器增加1,数据拥有者在计数器sc mod 2=1时执行关键字屏蔽,从而生成新的屏蔽搜索令牌SST;数据拥有者只存储最新的屏蔽搜索令牌和屏蔽计数器sc;密钥Ks计算为Ksw;然后,在关键字表W中找到与关键字对应的标签、最新的SSTc和计数器sc;由于关键字标签和索引二叉树中节点位置之间的关系,标签乘以2的序列被分配给p;最后,数据拥有者将(Ksw,SSTw,p)作为覆盖值发送到云服务器;云服务器收到(Ksw,SSTw,p)后,根据p的位置定位叶节点;然后,云服务器使用陷门置换的计数器c和公钥PK来计算所有屏蔽搜索令牌SST;使用散列函数H、ST和Ksw,数据拥有者能够取消对关键字的屏蔽。
2.根据权利要求1所述的前后向安全且具有可恢复关键字屏蔽的加密方法,其特征在于:如果数据拥有者只是想暂时屏蔽一个关键字,那么不通过可穿刺加密实现后向安全,而是,数据拥有者使用单向陷门置换来加密云服务器上的关键字,使数据使用者不能发出有效的搜索查询;当数据拥有者想解除对关键字的屏蔽时,在云服务器上解密该关键字即可。
3.根据权利要求1所述的前后向安全且具有可恢复关键字屏蔽的加密方法,其特征在于:设置阶段操作如下:将文件分割成词序列,将每个文件转换成基于词序列的数据流,在输入安全参数λ时,生成伪随机函数F的密钥K、陷门置换的公共密钥对(PK,SK),以及用于存储密钥、计数器信息和关键字对应搜索令牌的空表W,输出伪随机函数Ftag的密钥Ktag。
4.根据权利要求1所述的前后向安全且具有可恢复关键字屏蔽的加密方法,其特征在于:搜索阶段操作如下:根据要查询的关键字w和伪随机函数的密钥K计算Kw;再在表W中找到与关键字w对应的标签并检查状态是否可搜索;如果是,检查最新的搜索令牌STc和计数器c;如果结果为空,则表示关键字w不在表W中,反之则表示在表W中;如果表W中存在关键字w,将标签数值乘以2的序列分配给p,然后把(Kw,STc,c,p)寄给云服务器;云服务器接收到(Kw,STc,c,p)后,先根据p的位置定位关键字w所在的叶节点,并在叶节点中获得一个存储相关文件ID的列表;根据计数器c和陷门排列的公钥PK的值,计算所有的搜索令牌STc;获得的搜索令牌STc数量与列表中文件ID的数量相同;最后使用存储在云服务器上的被刺穿的密钥PSK解密列表的内容;使用散列函数H,根据计算的搜索令牌和收到的Kw获得所有文件ID。
5.根据权利要求1所述的前后向安全且具有可恢复关键字屏蔽的加密方法,其特征在于:更新阶段的操作如下:首先,数据拥有者需要确定是执行添加还是删除操作;
如果添加关键字/文件ID对w/ind,首先根据关键字w和伪随机函数的密钥K计算Kw,并根据w/ind和密钥Ktag计算标签t;之后在关键字表W中查找与关键字w对应的标签、最新的搜索令牌STc和计数器c;如果结果为空,则表示关键字w不在关键字表W中;然后向关键字表W添加一个项,并将关键字w的标签设置为m,将计数器c设置为1;当计算关键字w的搜索令牌ST1时,生成一个穿刺的公钥和密钥对(PSK0,PPK);如果关键字表W中存在关键字w,则根据陷门置换的密钥将搜索令牌STc更新为STc+1;之后使用哈希函数H计算文件ID并加密为e’;然后用PPK对e’进行加密以获得e,输出与标签t关联的密文ct;最后,向云服务器发送(e,p,sk0,mc),其中p=seq*2,mc是最新的关键字数;云服务器收到元组(e,p,sk0,mc),将发送的最新关键字mc与云服务器中现有的关键字数目ms进行比较;如果Mc>Ms,则表示需要在系统中添加新的关键字,更新关键字的树结构和PSK;然后云服务器根据p的位置定位叶节点,得到叶节点中相关文件ID的列表,并将加密的文件ID值e添加到末尾;
如果删除关键字/文件ID对w/ind;首先根据w/ind和密钥Ktag计算标签t,然后在关键字表W中找到与关键字对应的条目;使用标签t执行增量刺穿来更新sk0,得到sk0’,计算sk’,并将(e,p,sk0,sk’)发送到云服务器,其中p=seq*2,e是要删除的w/ind对的加密结果;云服务器接收(e,p,sk0,sk’)后,定位关键字对应于p位置的叶节点,获取存储在叶节点中的相关文件ID的列表,更新被刺穿的加密密钥sk;最后云服务器删除关键字/文件ID对w/ind。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011148615.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于秸秆燃烧的多级尾气处理装置
- 下一篇:一种环保型燃烧设备