非关系型数据库密文数据检索方法及介质

文档序号:35697028发布日期:2023-10-11 20:04阅读:29来源:国知局
非关系型数据库密文数据检索方法及介质

本发明涉及信息安全,特别涉及非关系型数据库密文数据检索方法及介质。


背景技术:

1、云计算技术的广泛应用,使得数据规模急速增大,非结构化数据库系统得到了迅速应用。由于非关系数据库系统多是以明文形态存储数据的,存在许多安全隐患,即便是被广泛应用的mongodb,也只是在推出了mongodb4.2企业版后才引入了字段级别加密,但并未很好地解决字段级加密数据检索问题。也就是说,对非关系型(nosql)数据库中的数据全库加密处理后,难以从数据库中安全地选取、查询加密数据。除数据源用户之外,其他必要的应用无法支持表达式查询。就mongodb4.2企业版而言,引入字段级别加密之后加密策略虽然比较灵活,但仍然不支持用户对完全随机加密数据执行表达式查询。因此,亟待针对非关系型数据库加密数据存储问题研究其密文数据检索方法,以便能够支持非关系型数据库字段级加密的数据检索。


技术实现思路

1、本发明提供了非关系型数据库密文数据检索方法及介质,其优点是能够对非关系型数据库中的加密数据进行检索,便于用户查找数据库中的加密数据,能够支持非关系型数据库字段级加密的数据检索。

2、一方面,本发明提供一种非关系型数据库密文数据检索方法,包括:

3、步骤一,获取数据用户向数据库系统提交的明文检索请求,提取所述明文检索请求中的明文关键字;

4、步骤二,根据所述明文关键字生成密文检索特征值t′,并在数据库中执行密文数据检索获得密文数据;

5、步骤三,对获得的密文数据进行解密运算恢复明文数据文档。

6、进一步的,通过基于关键字特征值的密文数据检索算法search完成所述的步骤二;

7、所述基于关键字特征值的密文数据检索算法search包括:

8、初始化算法:k=search.setup(λ),通过给定安全参数λ,生成加解密密钥k;

9、加密算法:c=search.enc(k,m),输入明文m及系统初始化算法生成的密钥k,该加密算法将明文m变换为密文c,并上传存储到非关系型数据库之中;

10、生成关键字特征值的算法:t=h(hm,hc),在明文文档m中选取关键字,利用哈希函数hash生成特征值t,将{t,c}存储到特征值数据库中;

11、基于反馈强化训练学习的关键字特征值匹配算法:数据用户进行明文检索时,对于任意待检索的明文关键字w,生成密文检索特征值t′,然后对特征值t′进行反馈强化训练学习,直至t′与t匹配;

12、判断特征值匹配结果算法:如果密文检索特征值t′与特征值t匹配时,根据检索关键字w在数据库密文中的对应字段进行关键字检索,输出所对应的密文c;

13、解密算法:m=search.dec(k,c),根据密文c、密钥k,该算法将密文c恢复为明文m。

14、进一步的,所述基于反馈强化训练学习的关键字特征值匹配算法包括以下步骤:

15、生成密文关键字检索特征值t′,t′=search.trapdoof(ksearch,w),输入明文检索关键字w和密钥ksearch,生成密文关键字检索特征值t′;将t′作为标签数据;

16、对密文关键字检索特征值t′和t进行匹配,{true,false}=search.query(t′,t),输入t′和t,算法返回检索特征值t′与t的匹配比对结果;true为匹配,false表示不匹配;

17、若匹配结果为false,则将t′、t作为初始值赋予预训练语言模型(lm);对lm生成的文本输出进行排序标注,生成一个标量数字sn;

18、将标量数字sn反馈至lm进行优化微调,依次进行反馈强化学习(rl),直至对任意明文m={m1,m2,...,mn}加密后形成的密文c,对于任意检索关键字w,若w∈m,则search.query(t′,t)为true。

19、进一步的,生成密文关键字检索特征值t′时的算法trapdoof()选用md5或者sha-512算法。

20、进一步的,对密文关键字检索特征值t′和t进行匹配的算法query()选用字符串匹配算法kmp。

21、进一步的,所述加密算法选用可搜索对称加密算法(sse)。

22、进一步的,在对数据库密文数据进行检索时,将数据库中存储的密文数据分割为若干子数据,若一个密文数据中的任意一个子数据包含检索关键字为w,输出整个密文数据。

23、进一步的,还包括:设置一个密钥数据库,用于存储加解密密钥k,在步骤三中,调用存储在密钥数据库中的加解密密钥k对密文数据进行解密运算。

24、进一步的,在步骤三之前对数据用户的身份进行验证,在数据用户的身份通过验证后执行步骤三。

25、另一方面,本发明提供一种介质,用于存储计算机程序,所述计算机程序被调用并运行时,执行上述任意一项方案中所述的非关系型数据库密文数据检索方法。

26、综上所述,本发明的有益效果是:能够对非关系型数据库中的加密数据进行检索,便于用户查找数据库中的加密数据,能够支持非关系型数据库字段级加密的数据检索。



技术特征:

1.非关系型数据库密文数据检索方法,其特征在于,包括:

2.根据权利要求1所述的非关系型数据库密文数据检索方法,其特征在于,通过基于关键字特征值的密文数据检索算法search完成所述的步骤二;

3.根据权利要求2所述的非关系型数据库密文数据检索方法,其特征在于,所述基于反馈强化训练学习的关键字特征值匹配算法包括以下步骤:

4.根据权利要求3所述的非关系型数据库密文数据检索方法,其特征在于,生成密文关键字检索特征值t′时的算法trapdoof()采用md5或者sha-512算法。

5.根据权利要求3所述的非关系型数据库密文数据检索方法,其特征在于,对密文关键字检索特征值t′和t进行匹配的算法query()选用字符串匹配算法kmp。

6.根据权利要求3所述的非关系型数据库密文数据检索方法,其特征在于,所述加密算法选用可搜索对称加密算法(sse)。

7.根据权利要求3所述的非关系型数据库密文数据检索方法,其特征在于,在对数据库密文数据进行检索时,将数据库中存储的密文数据分割为若干子数据,若一个密文数据中的任意一个子数据包含检索关键字为w,输出整个密文数据。

8.根据权利要求3所述的非关系型数据库密文数据检索方法,其特征在于,还包括:设置一个密钥数据库,用于存储加解密密钥k,在步骤三中,调用存储在密钥数据库中的加解密密钥k对密文数据进行解密运算。

9.根据权利要求8所述的非关系型数据库密文数据检索方法,其特征在于,在步骤三之前对数据用户的身份进行验证,在数据用户的身份通过验证后执行步骤三。

10.一种介质,用于存储计算机程序,其特征在于,所述计算机程序被调用并运行时,执行权利要求1-9任意一项所述的非关系型数据库密文数据检索方法。


技术总结
本发明公开了一种非关系型数据库密文数据检索方法,包括:步骤一,获取数据用户向数据库系统提交的明文检索请求,提取所述明文检索请求中的明文关键字;步骤二,根据所述明文关键字按照所提出的基于关键字特征值的密文数据检索算法,经反馈强化训练学习生成密文检索特征值,并在数据库中执行密文数据检索获得密文数据;其步骤三,对获得的密文数据进行解密运算恢复明文数据文档。本发明的优点是能够对非关系型数据库中的加密数据进行检索,便于用户查找数据库中的加密数据,能够支持非关系型数据库字段级加密的数据检索。

技术研发人员:刘化君,曹鹏飞,李杰
受保护的技术使用者:三江学院
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1