一种数据加密和加密数据查询方法及系统

文档序号:30493292发布日期:2022-06-22 02:41阅读:271来源:国知局
一种数据加密和加密数据查询方法及系统

1.本发明属于信息安全技术领域,特别是一种数据加密和加密数据查询方法及系统。


背景技术:

2.对于网络应用系统,数据安全非常重要,对保存在应用系统中的数据(如数据库中的数据)进行安全保护最有效的技术手段是对存储的数据加密,而在需要使用数据时再对加密的数据解密。
3.数据加密虽然是保护数据安全最有效的技术手段,但如何对针对加密数据(密文数据)进行查询搜索是一个尚未很好解决的问题,因为数据加密后会丧失很多原有的特性,不利于查询搜索(本发明中“查询”和“搜索”的含义是一样的、一致的,可互换使用)。现有的基于分词索引的加密(密文)数据查询方案需要修改系统的数据存储和查询处理逻辑和方式,其针对加密数据的查询处理逻辑和方式与原有的针对明文的查询处理逻辑和方式完全不同,比如,这种方案需要利用关键词的哈希值(散列值)并通过包含关键词的哈希值(散列值)的索引间接查询到数据,这样就需要修改数据存储系统的数据存储结构(如表的结构),并在数据库查询语句(sql)层面进行修改、改变,并改变对查询结果的处理方式(改变程序代码),这样才能得到期望的结果,而且这种基于分词索引的加密数据查询方式无法在不改变系统原有数据查询方式、处理逻辑(程序)的情况下通过过滤器(filter)、阀(valve)等插件(plug-in)机制实现,这对于已部署的系统不利,因为已部署的系统的数据存储和查询处理逻辑和方式是无发改变的,而且即便对于新开发的系统,开发人员需熟悉这种新的数据存储、查询方式,不能按其熟悉的原有的数据存储和查询方式编程。


技术实现要素:

4.本发明的目的是提出一种可实现密文数据查询搜索的数据加密和查询技术方案,以克服现有技术的不足。
5.针对本发明的目的,本发明提出的技术方案包括一种数据加密方法、一种加密数据查询方法以及相应的系统。
6.本发明提出的数据加密方法具体如下。
7.所述数据加密方法包括数据存储拦截器;所述数据存储拦截器是位于数据存储处理路径、处理环节中的利用插件(plug-in)机制插入的一个组件,其位于(最终)执行数据存储处理的处理逻辑和组件之前;所述数据存储拦截器用于数据存储请求的转换;
8.拦截到(客户端或应用系统提交的)数据存储处理请求后,对于无需加密的(明文)数据,所述数据存储拦截器直接将数据存储请求传送给后面的数据存储处理逻辑或组件,由数据存储处理逻辑或组件将数据以明文形式保存在数据存储系统中,同时,数据存储拦截器调用分词组件对正在处理的要存储或已存储的明文数据进行分词处理,得到一个或多个分词后的明文数据块,即分词明文数据块,用于后续处理;
9.拦截到(客户端或应用系统提交的)数据存储处理请求后,对于需要加密的(明文)数据,所述数据存储拦截器将其加密后,生成新的数据存储请求,新的数据存储请求中有加密后的密文数据,然后将生成的新的数据存储请求传送给后面的数据存储处理逻辑或组件,由数据存储处理逻辑或组件根据新的数据存储请求将密文数据保存在数据存储系统中,其中:
10.对于需要加密的可搜索数据(明文数据),所述数据存储拦截器先调用分词组件对需要加密的可搜索数据进行分词处理,然后调用密码组件对分词处理后得到每个数据组成部分即分词后的明文数据块,即分词明文数据块,分别进行加密处理,然后将分别加密处理后得到的(密文)数据块组合形成最后的密文数据;所述需要加密的可搜索数据指加密得到的密文数据仍然保持可搜索特性的数据(可搜索特性,即可以通过搜索关键词或字查询、搜索);
11.对于需要加密的可排序数据(明文数据),所述数据存储拦截器调用调用密码组件对数据按可保序的加密方式进行加密(order-preserving encryption,ope);所述需要加密的可排序数据指加密后得到的密文数据仍然保持可排序特性的数据(可排序特性,即可以按一定的方式如大小进行排序);所述可保序的加密方式即加密得到密文数据仍然保持可排序特性的数据加密方式;
12.对于需要加密的非可搜索和非可排序数据(明文数据),所述数据存储拦截器调用密码组件采用预定(或设定)的加密方式对数据进行加密;
13.若需要加密的数据既是可搜索数据又是可排序数据,则按可搜索数据进行加密处理,其中对数据加密所采用的加密方式是可保序的加密方式,即先进行分词,然后采用可保序的加密方式对分词得到的每个明文数据块即分词明文数据块进行加密,然后再将加密后的(密文)数据块合并得到最后的密文数据;
14.所述数据存储系统是用于保存数据的系统(可以是关系数据库,也可以是非关系数据库,还可以是其他类型的数据存储系统,如基于文件的数据存储系统等);
15.所述数据存储拦截器通过配置信息确定数据存储请求中的哪些数据是以明文形式存储的,哪些数据是需要加密后以密文数据形式存储的,且需要加密的数据中哪些数据是可搜索数据,哪些数据是可排序数据,哪些数据是非可搜索和非可排序数据;
16.所述分词处理指根据预定的(语言或其他)规律、规则,将明文数据(如表示语句的明文数据)分成一个或多个数据组成部分即分词后的数据块,即分词明文数据块,且每个数据组成部分即数据块具有最大长度限制(不大于最大长度,但可以小于);针对以明文形式存储的数据和以密文形式存储的数据(即需要加密的可搜索明文数据)所采用的分词处理不必相同;
17.所述分词组件是对数据进行分词处理的组件;
18.所述密码组件是对数据进行加密处理的组件;
19.所述数据加密方法还包括如下几类(用于辅助数据查询、搜索的)辅助记录数据库:
20.明文搜索辅助记录数据库,可搜索密文搜索辅助记录数据库,可排序密文搜索辅助记录数据库,以及密文搜索辅助记录数据库(这里的数据库,可以是关系数据库,也可以是非关系数据库,或者是其他数据存储系统,各类辅助记录数据库可以采用各自的数据存
储系统,也可以是共用一个数据存储系统;作为辅助记录数据库的数据存储系统与存放明文和密文的数据存储系统不必采用同一个数据存储系统);
21.每一类辅助记录数据库中保存有一系列记录,每个记录称为一项记录或一项记录数据;所述辅助记录数据库中的记录不是用于查询搜索的索引(不是数据查询搜索的对象或被查询的数据对象的一部分,比如,不是进行数据查询时sql语句的查询对象),而是在数据查询时用于将搜索关键词转换为对应的或不同类型的搜索关键词,其中包括:明文关键词(用于针对明文数据的搜索),密文可搜索关键词(用于针对加密后的加密可搜索数据的搜索),密文可排序关键词(用于针对加密后的加密可排序数据的搜索),密文关键词(用于针对加密后的非可搜索和非可排序数据的搜索);
22.所述数据存储拦截器对于无需加密的(明文)数据,在对正在处理的要存储或已存储的明文进行分词处理,得到一个或多个分词后的明文数据块即分词明文数据块后,对得到的每个分词明文数据块按如下方式进行进一步的处理:
23.检查明文搜索辅助记录数据库中是否已记录有对应的分词明文数据块,即是否已有一项记录存放或对应有正在检查处理的分词明文数据块,若有,则处理下一个分词得到的分词明文数据块(对当前的分词明文数据块不生成辅助记录),直到所有分词得到的分词明文数据块都处理完毕;若没有,则生成一项明文搜索辅助记录,其存放或对应正在检查处理的分词明文数据块,将生成的明文搜索辅助记录保存到明文搜索辅助记录数据库中,然后处理下一个分词得到的分词明文数据块,直到所有分词得到的分词明文数据块都处理完毕;
24.所述数据存储拦截器对于需要加密的可搜索数据进行分词处理,得到一个或多个分词后的明文数据块即分词明文数据块,并在调用密码组件对分词得到的分词明文数据块完成加密处理之前或之后,对每个加密前的分词明文数据块按如下方式进行进一步的处理:
25.检查可搜索密文搜索辅助记录数据库中是否已记录有对应的分词明文数据块的哈希值(散列值),即是否已有一项记录存放或对应有正在检查处理的分词明文数据块的哈希值(散列值),若有,则处理下一个分词得到的分词明文数据块(对当前的分词明文数据块不生成辅助记录),直到所有分词得到的分词明文数据块都处理完毕;若没有,则生成一项可搜索密文搜索辅助记录,其存放或对应正在检查处理的分词明文数据块的哈希值(散列值),将生成的可搜索密文搜索辅助记录保存到可搜索密文搜索辅助记录数据库中,然后处理下一个分词得到的分词明文数据块,直到所有分词得到的分词明文数据块都处理完毕;
26.所述数据存储拦截器对于需要加密的可排序数据,在调用密码组件采用可保序的加密方式对数据进行加密处理之前或之后,按如下方式对加密之前的需要加密的可排序数据进行进一步的处理:
27.检查可排序密文搜索辅助记录数据库中是否已记录有对应的需要加密的可排序数据的哈希值(散列值),即是否已有一项记录存放或对应有需要加密的可排序数据的哈希值(散列值),若有,则不做进一步处理;若没有,则生成一项可排序密文搜索辅助记录,其存放或对应正在处理的需要加密的可排序数据的哈希值(散列值),将生成的可排序密文搜索辅助记录保存到可排序密文搜索辅助记录数据库中,完成处理;
28.所述数据存储拦截器对于需要加密的非可搜索和非可排序数据,在调用密码组件
对数据进行加密处理之前或之后,按如下方式对需要加密的数据进行进一步的处理:
29.检查密文搜索辅助记录数据库中是否已记录有对应的需要加密的数据的哈希值(散列值),即是否已有一项记录存放或对应有需要加密的数据的哈希值(散列值),若有,则不做进一步处理;若没有,则生成一项密文搜索辅助记录,其存放或对应正在处理的需要加密的数据的哈希值(散列值),将生成的密文搜索辅助记录保存到密文搜索辅助记录数据库中,完成处理。
30.对于以上所述的数据加密方法,若数据存储请求中包含有多项需要存储的数据(如一个需要存储的数据记录的多个字段),则所述数据存储拦截器对每项数据按所述数据加密方法进行处理。
31.对于以上所述的数据加密方法,若数据存储请求中包含有多项需要存储的数据,则所述数据存储拦截器需要同时处理的多项数据的存储类型不必相同(比如,其中一项是明文存储数据,一项是密文可搜索数据,一项是密文可排序数据等)。
32.针对以上所述数据加密方法的加密数据查询方法如下。
33.所述加密数据查询方法包括数据查询拦截器;所述数据查询拦截器是位于数据查询处理路径、处理环节中的利用插件(plug-in)机制插入的一个组件,其位于(最终)执行数据查询处理的处理逻辑和组件之前;所述数据查询拦截器用于数据查询请求和响应转换;
34.所述数据查询拦截器拦截到(客户端或应用系统提交的)数据查询请求后,根据查询请求中的搜索(查询)关键词(或称关键字,二者等同,下同),转换生成最终的(或新的)搜索(查询)关键词,利用转换生成的搜索(查询)关键词生成新的数据查询请求,然后将生成的新的数据查询请求传送给后面的数据查询处理逻辑或组件,由数据查询处理逻辑或组件从存放有明文和/或密文的数据存储系统中查询获取数据,然后拦截数据查询处理逻辑或组件查询返回的数据,调用密码组件对查询得到(返回)的数据中的加密数据(密文数据)进行解密,然后将明文数据返回(其中包括查询直接得到的明文数据和解密得到的明文数据);
35.所述数据查询拦截器对接收到的查询请求中的每个查询条件字段中的每个搜索关键词按如下方式进行转换处理(一个查询请求可以包含有多个查询条件字段,一个查询条件字段中可以包含有一个或多个搜索关键词,比如逗号或空格分隔的关键词):
36.根据配置信息的设定,将搜索关键词转换为指定的一种或多种类型的搜索关键词;
37.或者,根据配置信息设定的转换后的搜索关键词允许出现的类型,检查对应的辅助记录数据库中是否出现了(待转换的)搜索关键词或其哈希值(不一定是原搜索关键词完整出现,可能是分词后部分出现),将搜索关键词转换为允许出现的类型(的搜索关键词);
38.所述转换后的搜索关键词指定或允许出现的类型包括:明文关键词,密文可搜索关键词,密文可排序关键词,密文关键词;
39.转换后的搜索关键词允许出现的类型与对应检查的辅助记录数据库的对应关系如下:
40.明文关键词,对应明文搜索辅助记录数据库;
41.密文可搜索关键词,对应可搜索密文搜索辅助记录数据库;
42.密文可排序关键词,对应可排序密文搜索辅助记录数据库;
43.密文关键词,对应密文搜索辅助记录数据库;
44.若数据查询请求包含有多个查询条件字段,针对每个查询字段有相应的搜索关键词转换配置信息。
45.对于以上所述的加密数据查询方法,所述数据查询拦截器根据配置信息的设定,将搜索关键词转换为指定的一种或多种类型的搜索关键词的方式如下:
46.若是需要将搜索关键词转换为明文关键词,则转换后的搜索关键词即是转换前的搜索关键词(即不转换,即明文关键词);
47.若是需要将搜索关键词转换为密文可搜索关键词,则先调用分词组件对搜索关键词进行分词处理,然后调用密码组件对每个分词得到的明文数据块即分词明文数据块进行加密,然后将加密得到的数据合并,以合并后的加密数据作为搜索关键词(即密文可搜索关键词);
48.若是需要将搜索关键词转换为密文可排序关键词,则调用密码组件对搜索关键词按可保序的加密方式进行加密,然后以加密得到的数据作为搜索关键词(即密文可排序关键词);
49.若是需要将搜索关键词转换为密文关键词,则调用密码组件对搜索关键词按约定的方式进行加密(针对非可搜索和非可排序数据的加密方式),以加密得到的数据作为搜索关键词(即密文关键词);
50.若将搜索关键词转换为密文可搜索关键词,而使用密文可搜索关键词进行查询所针对的密文数据既是可搜索数据又是可排序数据,则在对待转换的搜索关键词进行分词处理后,对每个分词得到的明文数据块即分词明文数据块进行加密所采用的加密方式是可保序的加密方式;
51.完成转换后,以转换后的搜索关键词作为新的搜索关键词用于数据查询(一个搜索关键词可能经转换变成了多个搜索关键词)。
52.对于以上所述的加密数据查询方法,所述数据查询拦截器根据配置信息设定的转换后的搜索关键词允许出现的类型,检查对应的辅助记录数据库中是否出现了(待转换的)搜索关键词或其哈希值,将搜索关键词转换为允许出现的类型的方式如下:
53.若配置信息设定的转换后的搜索关键词允许出现的类型包括明文关键词,则调用分词组件对待转换的搜索关键词进行分词处理,然后检查分词得到的一个或多个数据块即分词明文数据块中是否有一个出现在明文搜索辅助记录数据库的一项记录中,若没有,则转换结果为空,若有,则将转换前的搜索关键词作为转换后的搜索关键词(即明文关键词);
54.若配置信息设定的转换后的搜索关键词允许出现的类型包括密文可搜索关键词,则调用分词组件对待转换的搜索关键词进行分词处理,然后检查分词得到的一个或多个数据块即分词明文数据块中是否有一个的哈希值(散列值)出现在可搜索密文搜索辅助记录数据库的一项记录中,若没有,则转换结果为空,若有,则调用密码组件对每个分词得到的明文数据块即分词明文数据块进行加密,然后将加密得到的数据合并,以合并后的加密数据作为转换后的搜索关键词(即密文可搜索关键词);
55.若配置信息设定的转换后的搜索关键词允许出现的类型包括密文可排序关键词,则检查待转换搜索关键词的哈希值(散列值)是否出现在可排序密文搜索辅助记录数据库的一项记录中,若没有,则转换结果为空,若有,则调用密码组件对搜索关键词进行加密,然
后加密后的数据作为转换后的搜索关键词(即密文可排序关键词);
56.若配置信息设定的转换后的搜索关键词允许出现的类型包括密文关键词,则检查待转换搜索关键词的哈希值(散列值)是否出现在密文搜索辅助记录数据库的一项记录中,若没有,则转换结果为空,若有,则调用密码组件对搜索关键词进行加密,然后以加密后的数据作为转换后的搜索关键词(即密文关键词);
57.若完成所有允许出现的类型的转换后,有一个或多个转换后的搜索关键词,则以转换后的搜索关键词作为新的搜索关键词用于数据查询;
58.若完成所有允许出现的类型的转换后,没有转换后的搜索关键词(即允许出现的类型的搜索关键词都是空),则将搜索关键词转换为配置信息指定的缺省类型的搜索关键词用于数据查询,或者依据配置信息设定的规则将搜索关键词转换为相应的类型的搜索关键词用于数据查询;配置信息设定的将搜索关键词转换为相应的类型的搜索关键词的规则包括:在允许的转换类型中随机选择一种转换后的搜索关键词的类型。
59.对于以上所述的加密数据查询方法,若配置信息在设定转换后的搜索关键词允许出现的多种类型的同时,限定最终的转换结果只允许有一种类型的搜索关键词,而转换结果有多于一种类型的搜索关键词,则所述数据查询组件依据配置信息设定的规则从转换得到的多种类型的搜索关键词中选择一种类型的搜索关键词用于数据查询;配置信息设定的从多种类型的搜索关键词中选择一种搜索关键词的规则包括:依据转换的搜索关键词类型的优先顺序(选允许的类型中的优级较高的类型),在允许的类型中随机选择一种转换后的搜索关键词类型。
60.对于以上所述的加密数据查询方法,若所述数据存储拦截器在进行数据存储处理时,在检查分词后的分词明文数据块或要被加密的分词后的明文数据的哈希值(散列值)或要被加密的数据的哈希值(散列值)是否已存在于辅助记录数据库的同时,统计要存储的分词明文数据块或要被加密的分词后的明文数据的哈希值(散列值)或要被加密的数据出现的次数(出现一次加一),则配置信息设定的从允许的多种类型的搜索关键词中选择一种类型的转换后的搜索关键词的规则包括:选择数据存储时出现次数最多的搜索关键词。
61.基于以上所述的数据加密方法的数据加密系统包括:
62.用于数据存储请求转换的数据存储拦截器,用于对(明文)数据进行分词处理的分词组件,用于对数据进行加密处理的密码组件,用于存放明文数据和密文数据(加密数据)的数据存储系统,以及辅助数据查询搜索的明文搜索辅助记录数据库,可搜索密文搜索辅助记录数据库,可排序密文搜索辅助记录数据库,密文搜索辅助记录数据库;
63.拦截到数据存储请求后,所述数据存储拦截器按所述数据加密方法进行数据存储请求转换处理。
64.基于以上所述的加密数据查询方法的加密数据查询系统包括:
65.用于数据查询请求和响应转换的数据查询拦截器,用于对(明文)数据进行分词处理的分词组件,用于对数据进行加密和解密处理的密码组件,用于存放明文数据和密文数据(加密数据)的数据存储系统,以及辅助数据查询搜索的明文搜索辅助记录数据库,可搜索密文搜索辅助记录数据库,可排序密文搜索辅助记录数据库,密文搜索辅助记录数据库;
66.拦截到数据查询请求后,所述数据查询拦截器按所述加密数据查询方法进行数据查询请求和响应转换处理。
67.基于本发明的数据加密和加密数据查询方法及系统:数据存储系统的数据存储结构(如表的结构)不需要改变;在进行数据存储时,通过数据存储拦截器自动对数据进行加密,数据存储处理逻辑或组件不用修改,仍存储原有方式进行数据存储数据;在进行数据查询时,通过数据查询拦截器将原有的搜索关键词转换为不同类型的搜索关键词,数据查询处理逻辑或组件不需要改变,仍按原有方式包括在查询语句层面仍按原有方式进行数据查询,仍按原有方式处理查询得到的结果(比如仍按原有方式组合查询得到的结果);由于所有这些数据操作处理是利用插件机制在拦截器层面实现的,因此,对于已有、已部署的系统而言,系统的数据存储和查询处理逻辑和组件无需修改,而对于新开发的系统而言,程序员仍按原有方式编写数据存储和查询程序。
附图说明
68.图1本发明的数据加密系统的结构示意图。
69.图2本发明的加密数据查询系统的结构示意图。
具体实施方式
70.下面对本发明的具体实施方式作进一步的说明,以下实施方式不代表全部可能的实施,不作为对本发明的限定。
71.本发明的数据存储拦截器可以通过位于数据存储处理路径、处理环节中的可插入一个组件实施,比如web服务器的过滤器(filter)、阀(valve)、代码方面(aspect)、某些技术架构中的拦截器(interceptor);同样地,数据查询拦截器可以通过位于数据查询处理路径、处理环节中的一个可插入组件实施,比如web服务器的过滤器(filter)、阀(valve)、代码方面(aspect)、某些技术架构中的拦截器(interceptor)。
72.本发明用于保存数据的数据存储系统,是实施加密功能之前的原有或通常的数据存储系统,比如,可以是关系数据库,也可以是非关系数据库,还可以是其他类型的数据存储系统,如基于文件的数据存储系统等。
73.本发明的分词处理可以是根据语言规律、规则,将表示语句的明文数据分成一个或多个数据组成部分即数据块,即分词明文数据块,且每个数据组成部分即数据块具有最大长度限制(不大于最大长度,但可以小于),这有许多成熟的技术。这时对分词结果加密可以采用具有电子密码本(ecb)特性的对称密钥加密,也可以采用支持密文搜索的非对称密钥加密,也可以采用其他支持密文搜索的加密方案(只要能实现针对密文的搜索就行,哪怕是部分搜索)。本发明的分词处理还可以是根据分块加密需求进行的数据分块,前提是对分块数据的加密能够实现密文搜索。若需要加密的数据既是可搜索数据又是可排序数据,则对需要加密的数据按可搜索数据进行加密处理,其中对分词得到的明文数据块即分词明文数据块加密所采用的加密方式是可保序的加密方式。
74.本发明的可保序的加密方式可以采用一种现有的、合适的保序加密方案(order-preserving encryption)。
75.对于非可搜索和非可排序数据的加密,可以采用一种实施者认为合适的加密方案,比如ecb分组加密,或同样明文产生同样密文的流加密。
76.计算哈希值(散列值)的哈希算法(散列算法)有很多,选择一个安全的就可以。
77.本发明的各类辅助记录数据库,是存放明文和密文数据之外的数据存储系统,可以采用关系数据库,也可以采用非关系数据库,或其他数据存储系统;它们可以采用各自独立的数据存储系统,也可以采用同一个数据存储系统;辅助记录数据库中一项记录的一个字段存储有分词明文数据块(针对明文存储数据),或者需要加密的可搜索数据分词后的分词明文数据块的哈希值,或者需要加密的可排序数据的哈希值,或者需要加密的非可搜索和排序数据的哈希值。
78.本发明在数据查询时,根据配置信息的设定,将搜索关键词进行转换有三种情形:
79.1)将搜索关键词转换为指定的一种或多种类型的搜索关键词;
80.2)根据配置信息设定的转换后的搜索关键词允许出现的类型,检查对应的辅助记录数据库中是否出现了(待转换的)搜索关键词或其哈希值,将搜索关键词转换为允许出现的类型的搜索关键词;
81.3)在2)的基础上加上限定,限定最终的转换结果只允许有一种类型的搜索关键词。
82.第1)种情形通常用于一个搜索字段中的搜索关键词允许出现多个,这样将一个搜索关键词指定转换为多个搜索关键词是允许的、可行的;搜索关键词转换完成后,以一个多或多个转换后的搜索关键词作为新的搜索关键词用于数据查询。
83.第2)种情形是对第1)情形的优化处理,避免不必要的搜索关键词转换;若完成所有允许出现的类型的转换后,有一个或多个转换后的搜索关键词,则以转换后的搜索关键词作为新的搜索关键词用于数据查询;若完成所有允许出现的类型的转换后,没有转换后的搜索关键词(即允许出现的类型的搜索关键词都是空),则将搜索关键词转换为配置信息指定的缺省类型的搜索关键词用于数据查询,或者依据配置信息设定的规则将搜索关键词转换为相应的类型的搜索关键词用于数据查询;配置信息设定的将搜索关键词转换为相应的类型的搜索关键词的规则包括:在允许的转换类型中随机选择一种转换后的搜索关键词的类型。
84.第3)种情形主要针对的是一个搜索字段只能出现一个搜索关键词,不允许出现多个搜索关键词,而事先无法知道应该采用哪种转换后的搜索关键词的情形;配置信息进一步规定,若转换结果有多于一种类型的搜索关键词,则从转换得到的多种类型的搜索关键词中选择一种类型的搜索关键词用于数据查询的规则是啥;配置信息设定的从多种类型的搜索关键词中选择一种搜索关键词的规则包括:依据转换的搜索关键词类型的优先顺序(选允许的类型中的优级较高的类型),在允许的类型中随机选择一种转换后的搜索关键词类型;进一步地,若数据存储拦截器在进行数据存储处理时,在检查分词后的分词明文数据块或要被加密的分词后的明文数据的哈希值(散列值)或要被加密的数据的哈希值(散列值)是否已存在于辅助记录数据库的同时,统计要存储的分词明文数据块或要被加密的分词后的明文数据的哈希值(散列值)或要被加密的数据出现的次数(出现一次加一),则配置信息设定的从允许的多种类型的搜索关键词中选择一种类型的转换后的搜索关键词的规则包括:选择数据存储时出现次数最多的搜索关键词。
85.基于本发明的数据加密方法可构建相应的数据加密系统,如图1所示,系统包括:用于数据存储请求转换的数据存储拦截器,用于对(明文)数据进行分词处理的分词组件,用于对数据进行加密处理的密码组件,用于存放明文数据和密文数据(加密数据)的数据存
储系统,以及辅助数据查询搜索的明文搜索辅助记录数据库,可搜索密文搜索辅助记录数据库,可排序密文搜索辅助记录数据库,密文搜索辅助记录数据库;拦截到数据存储请求后,所述数据存储拦截器按所述数据加密方法进行数据存储请求转换处理。
86.基于本发明的加密数据查询方法可构建相应的加密数据查询系统,如图2所示,系统包括:用于数据查询请求和响应转换的数据查询拦截器,用于对(明文)数据进行分词处理的分词组件,用于对数据进行加密和解密处理的密码组件,用于存放明文数据和密文数据(加密数据)的数据存储系统,以及辅助数据查询搜索的明文搜索辅助记录数据库,可搜索密文搜索辅助记录数据库,可排序密文搜索辅助记录数据库,密文搜索辅助记录数据库;拦截到数据查询请求后,所述数据查询拦截器按所述加密数据查询方法进行数据查询请求和响应转换处理。
87.其他未说明的具体技术实施,对于相关领域的技术人员而言是众所周知,不言自明的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1