[发明专利]一种创建密文索引的方法、装置及系统在审
申请号: | 201510698146.2 | 申请日: | 2015-10-23 |
公开(公告)号: | CN106610995A | 公开(公告)日: | 2017-05-03 |
发明(设计)人: | 欧锻灏 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京中博世达专利商标代理有限公司11274 | 代理人: | 申健 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 创建 索引 方法 装置 系统 | ||
本发明实施例公开了一种创建密文索引的方法、装置及系统,涉及计算机信息安全领域,用以提高密文搜索的速度。该方法包括:采用可逆加密算法对敏感数据进行加密得到所述敏感数据的密文;采用分词算法对所述敏感数据进行分词得到目标关键词;根据所述目标关键词和哈希算法,生成哈希认证码;采用预设编码方式对所述哈希认证码进行编码得到索引字符串,所述索引字符串为可打印字符串,所述索引字符串为所述密文的索引;向数据库服务器发送所述密文和所述索引字符串,以便于所述数据库服务器将所述密文和所述索引字符串存储在同一数据表中,所述索引字符串与所述密文是对应存储的。
技术领域
本发明涉及计算机信息安全领域,尤其涉及一种创建密文索引的方法、装置及系统。
背景技术
在大数据平台或公有云平台中,为了防止个人敏感数据(手机号码、家庭住址、身份证号码、护照号和/或银行账号等)被非法访问,需要对个人敏感数据进行加密存储,由于对个人敏感数据进行加密后得到的密文以乱码的形式被存储,无法直接进行搜索,因此,出现了基于关键词索引的密文搜索技术。
一般情况下,基于关键词索引的密文搜索技术包括创建索引阶段和搜索匹配阶段,一种创建索引的方法包括:采用中文分词算法将中文敏感数据进行分词,得到N个关键词;对N个关键词中的每个关键词计算基于拼音的编辑距离,得到N个编辑距离;将N个编辑距离中的每个编辑距离和密钥作为HMAC(Hash-based Message Authentication Code,哈希消息认证码)算法的输入,计算得到N个哈希认证码;将N个哈希认证码作为中文敏感数据的N个索引;采用加密算法将中文敏感数据进行加密,得到中文敏感数据的密文;将N个索引与该密文一同存储在数据库服务器中。
采用上述方法生成的密文的索引,不能用于在数据库服务器中直接搜索该密文,因此,使得密文搜索的速度较慢。
发明内容
本发明的实施例提供一种创建密文索引的方法、装置及系统,用以提高密文搜索的速度。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种创建密文索引的方法,包括:
采用可逆加密算法对敏感数据进行加密得到所述敏感数据的密文;
采用分词算法对所述敏感数据进行分词得到目标关键词;
根据所述目标关键词和哈希算法,生成哈希认证码;
采用预设编码方式对所述哈希认证码进行编码得到索引字符串,所述索引字符串为可打印字符串,所述索引字符串为所述密文的索引;
向数据库服务器发送所述密文和所述索引字符串,以便于所述数据库服务器将所述密文和所述索引字符串存储在同一数据表中,所述索引字符串与所述密文是对应存储的。
结合第一方面,在第一种可能的实现方式中,在所述采用预设编码方式对所述哈希认证码进行编码得到索引字符串之前,所述方法还包括:
截取所述哈希认证码的前r位,得到子哈希认证码,1≤r≤R,R和r均为整数,R为所述哈希认证码的长度;
所述采用预设编码方式对所述哈希认证码进行编码得到索引字符串,包括:
采用预设编码方式对所述子哈希认证码进行编码得到索引字符串。
结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,当所述索引字符串的个数为N时,在所述采用预设编码方式对所述哈希认证码进行编码得到索引字符串之后,所述方法还包括:
将N个索引字符串随机置乱,N≥1,N为整数;
将随机置乱后的所述N个索引字符串串连起来,串连后的所述N个索引字符串中的相邻的索引字符串之间通过非所述预设编码方式中的可打印字符间隔开。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510698146.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:点击路径的统计方法和装置
- 下一篇:热词典切换方法和装置