一种中文数据加密索引方法技术

技术编号:39491125 阅读:6 留言:0更新日期:2023-11-24 11:13
本发明专利技术公开一种中文数据加密索引方法

【技术实现步骤摘要】
一种中文数据加密索引方法、系统、电子设备及存储介质


[0001]本专利技术涉及计算机数据加密领域,具体涉及一种中文数据加密索引方法

系统

电子设备及存储介质


技术介绍

[0002]计算机网络技术的发展促进计算机应用日益广泛和深入
,
使得网络环境下计算机应用的安全问题日益复杂和突出

目前涉密

安全部门的计算机应用系统中数据信息都是以密文形式存放
,
最大限度地保证了系统和数据信息的安全性

虽然全文检索技术和加密算法都已经得到飞速发展并且有了很好的商业产品出现
,
但是如何在密文前提下实现全文检索
,
在国内外的相关研究和产品领域内仍然还是空白
,
加密技术和全文检索的结合还有很多难点问题有待解决

[0003]虽然密文检索技术己经得到了很大的发展
,
但其主要集中在密文数据库的检索以及英文的密文检索
,
而由于汉字自身的特点
,
英文全文检索技术并不适用于中文全文检索

目前国内一些学者已经开展的中文密文全文检索的相关研究
,
但还处于理论研究阶段
,
思想也不是很成熟
,
并且对加密引起的很多新问题都还没有进一步地研究和解决


技术实现思路

[0004]本专利技术的目的在于克服上述技术不足,提供一种中文数据加密索引方法

系统

电子设备及存储介质,解决现有技术中中文密文检索不完善的技术问题

[0005]为达到上述技术目的,本专利技术采取了以下技术方案:
[0006]第一方面,本专利技术提供一种中文数据加密索引方法,包括如下步骤:
[0007]获取原始文档,对所述原始文档进行分词处理,以获得索引词序列后,采用
SM3
算法对所述索引词序列的原始词条进行加密处理,获得加密词条,对所述加密词条进行首字母排序处理,获得密文索引,将所述密文索引存储至密文索引库中;
[0008]采用
SM2
公钥对所述原始文档的文档内容进行加密处理,以获得加密文档后,将所述加密文档存储至密文文档库中;
[0009]基于所述密文索引以及所述密文文档,建立所述密文索引库与所述密文文档库的对应关系;
[0010]对所述密文索引进行排序处理,基于排序处理后的密文索引建立加密词条倒排索引;
[0011]获取搜索条件,对所述搜索条件进行分词处理,以获得搜索词条后,采用
SM3
算法对所述搜索词条进行加密处理,获得加密搜索词条;
[0012]将所述加密搜索词条与所述加密词条倒排索引进行匹配,根据匹配结果获取密文索引库中与所述加密搜索词条对应的密文索引后,基于所述密文索引库与所述密文文档库的对应关系,查询出密文文档库中的加密文档,并通过与所述
SM2
公钥对应的
SM2
私钥对所述加密文档解密,以获得与所述搜索条件对应的明文文档

[0013]在其中一些实施例中,所述原始文档至少包括文档属性和文档内容,其中,所述文档属性通过文件类获取,所述文档内容通过文件类方法获取,且所述文档内容的格式为字符串数据

[0014]在其中一些实施例中,所述对所述原始文档进行分词处理,以获得索引词序列,包括:
[0015]采用
IKAnalyzer
分词器对所述原始文档进行分词处理,通过所述
IKAnalyzer
分词器对所述字符串数据进行分词,获得词条,通过哈希库的数据结构将获得的词条保存至集合中,并对所述集合中的词条进行去重处理后,生成新的词条集合,以得到所述索引词序列

[0016]在其中一些实施例中,所述采用
SM3
算法对所述索引词序列的原始词条进行加密处理,获得加密词条,包括:
[0017]采用
SM3
加密算法对所述索引词序列的原始词条进行消息填充

消息扩展

迭代压缩处理后,获得加密词条

[0018]在其中一些实施例中,所述对所述加密词条进行首字母排序处理,获得密文索引,将所述密文索引存储至密文索引库中,包括:
[0019]将所述加密词条处理后保存至字符数组中,通过字符
ASCII
差值对每个字符数组进行计算并得出其大小,根据每个字符数组的大小对各个字符数组进行排序,以获得密文索引后,将所述密文索引存储至密文索引库中

[0020]在其中一些实施例中,所述采用
SM2
公钥对所述原始文档的文档内容进行加密处理,以获得加密文档后,将所述加密文档存储至密文文档库中,包括:
[0021]采用
SM2
加密算法进行非对称加密,生成一对公私钥,其中,
SM2
公钥用于进行加密,
SM2
私钥用于进行解密;
[0022]基于
utf
‑8编码技术,通过所述
SM2
公钥对所述原始文档的文档内容进行加密,以获得加密文档后,将所述加密文档存储至密文文档库中

[0023]在其中一些实施例中,所述对所述密文索引进行排序处理,基于排序处理后的密文索引建立加密词条倒排索引,包括:
[0024]通过分布式搜索引擎
ElasticSearch
建立索引文档,对所述密文索引进行排序处理,基于排序处理后的密文索引建立加密词条倒排索引

[0025]第二方面,本专利技术还提供一种中文数据加密索引系统包括:
[0026]密文索引模块,用于获取原始文档,对所述原始文档进行分词处理,以获得索引词序列后,采用
SM3
算法对所述索引词序列的原始词条进行加密处理,获得加密词条,对所述加密词条进行首字母排序处理,获得密文索引,将所述密文索引存储至密文索引库中;
[0027]文档加密模块,用于采用
SM2
公钥对所述原始文档的文档内容进行加密处理,以获得加密文档后,将所述加密文档存储至密文文档库中;
[0028]加密词条倒排索引建立模块,用于对所述密文索引进行排序处理,基于排序处理后的密文索引建立加密词条倒排索引;
[0029]加密搜索词条获取模块,用于获取搜索条件,对所述搜索条件进行分词处理,以获得搜索词条后,采用
SM3
算法对所述搜索词条进行加密处理,获得加密搜索词条;
[0030]明文文档获得模块,用于将所述加密搜索词条与所述加密词条倒排索引进行匹
配,根据匹配结果获取密文索引库中与所述加密搜索词条对应的密文索引后,基于所述本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种中文数据加密索引方法,其特征在于,包括如下步骤:获取原始文档,对所述原始文档进行分词处理,以获得索引词序列后,采用
SM3
算法对所述索引词序列的原始词条进行加密处理,获得加密词条,对所述加密词条进行首字母排序处理,获得密文索引,将所述密文索引存储至密文索引库中;采用
SM2
公钥对所述原始文档的文档内容进行加密处理,以获得加密文档后,将所述加密文档存储至密文文档库中;基于所述密文索引以及所述密文文档,建立所述密文索引库与所述密文文档库的对应关系;对所述密文索引进行排序处理,基于排序处理后的密文索引建立加密词条倒排索引;获取搜索条件,对所述搜索条件进行分词处理,以获得搜索词条后,采用
SM3
算法对所述搜索词条进行加密处理,获得加密搜索词条;将所述加密搜索词条与所述加密词条倒排索引进行匹配,根据匹配结果获取密文索引库中与所述加密搜索词条对应的密文索引后,基于所述密文索引库与所述密文文档库的对应关系,查询出密文文档库中的加密文档,并通过与所述
SM2
公钥对应的
SM2
私钥对所述加密文档解密,以获得与所述搜索条件对应的明文文档
。2.
根据权利要求1所述的中文数据加密索引方法,其特征在于,所述原始文档至少包括文档属性和文档内容,其中,所述文档属性通过文件类获取,所述文档内容通过文件类方法获取,且所述文档内容的格式为字符串数据
。3.
根据权利要求2所述的中文数据加密索引方法,其特征在于,所述对所述原始文档进行分词处理,以获得索引词序列,包括:采用
IKAnalyzer
分词器对所述原始文档进行分词处理,通过所述
IKAnalyzer
分词器对所述字符串数据进行分词,获得词条,通过哈希库的数据结构将获得的词条保存至集合中,并对所述集合中的词条进行去重处理后,生成新的词条集合,以得到所述索引词序列
。4.
根据权利要求3所述的中文数据加密索引方法,其特征在于,所述采用
SM3
算法对所述索引词序列的原始词条进行加密处理,获得加密词条,包括:采用
SM3
加密算法对所述索引词序列的原始词条进行消息填充

消息扩展

迭代压缩处理后,获得加密词条
。5.
根据权利要求4所述的中文数据加密索引方法,其特征在于,所述对所述加密词条进行首字母排序处理,获得密文索引,将所述密文索引存储至密文索引库中,包括:将所述加密词条处理后保存至字符数组中,通过字符
ASCII
差值对每个字符数组进行计算并得出其大小,根据每个字符数组的大小对各个字符数组进行排序,以获得密文索引后,将所述密文索引存储至密文索引库中
...

【专利技术属性】
技术研发人员:姜依德徐斌董建军周雨胡亚林明小民石薇杨琰
申请(专利权)人:武汉大数据产业发展有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1