本发明实施例涉及信息安全,尤其涉及一种全密态数据库代价转移方法、装置、设备及存储介质。
背景技术:
1、在全密态数据库中,用户可以指定表的列为全密态加密列,该列数据在传输、计算、存储等各个环节始终以密文的形式存在,可以极大提高数据的安全性。全密态数据库将数据的生命周期域分为可信域和不可信域。可信域一般是数据库客户端、上层用户程序等,数据在可信域中被认为是安全的,可以被解密并暴露明文信息。不可信域通常是网络传输环境、数据库服务器,包括服务器的内存和硬盘,数据在不可信域中必须全程以密文的形式存在,否则认为发生了隐私数据泄露。
2、现在绝大多数的数据库应用场景,可信域中的数据库前端一般没有很好的计算能力、内存容量等硬件配置,如仅提供数据展示功能的web服务、调用数据库接口的中间件等。而不可信域中的数据库服务器却拥有较强的硬件性能。但是全密态数据库中的大量工作却是在数据库前端完成的,数据库前端对sql语句的解析会导致数据库前端程序占用大量内存空间并消耗大量时间,同时数据库前端较差的计算能力也会导致全密态数据库整体性能较差。
技术实现思路
1、本发明提供了一种全密态数据库代价转移方法、装置、设备及存储介质,以解决现有技术中全密态数据库整体性能差的问题。
2、根据本发明的一方面,提供了一种全密态数据库代价转移方法,应用于数据库前端,所述方法包括:
3、获取初始结构化查询语言sql语句;
4、将所述初始sql语句中的常量数据替换为常量标记,得到待执行sql语句;
5、将所述待执行sql语句发送至服务器,接收服务器返回的语句解析信息;
6、根据所述语句解析信息将包括所述常量标记对应的真实数据或加密数据的应答信息发送至所述服务器,以使服务器执行所述待执行sql语句。
7、根据本发明的另一方面,提供了一种全密态数据库代价转移方法,应用于服务器,所述方法包括:
8、接收数据库前端发送的待执行sql语句;其中,所述待执行sql语句中的常量数据被替换为常量标记;
9、根据全密态元数据表对所述待执行sql语句进行解析得到语句解析信息,将所述语句解析信息发送至所述数据库前端;
10、接收所述数据库前端返回的包括所述常量标记对应的真实数据或加密数据的应答信息,以执行所述待执行sql语句。
11、根据本发明的另一方面,提供了一种全密态数据库代价转移装置,应用于数据库前端,所述装置包括:
12、获取模块,用于获取初始结构化查询语言sql语句;
13、替换模块,用于将所述初始sql语句中的常量数据替换为常量标记,得到待执行sql语句;
14、第一接收模块,用于将所述待执行sql语句发送至服务器,接收服务器返回的语句解析信息;
15、第一发送模块,用于根据所述语句解析信息将包括所述常量标记对应的真实数据或加密数据的应答信息发送至所述服务器,以使服务器执行所述待执行sql语句。
16、根据本发明的另一方面,提供了一种全密态数据库代价转移装置,应用于服务器,所述装置包括:
17、第二接收模块,用于接收数据库前端发送的待执行sql语句;其中,所述待执行sql语句中的常量数据被替换为常量标记;
18、第二发送模块,用于根据全密态元数据表对所述待执行sql语句进行解析得到语句解析信息,将所述语句解析信息发送至所述数据库前端;
19、执行模块,用于接收所述数据库前端返回的包括所述常量标记对应的真实数据或加密数据的应答信息,以执行所述待执行sql语句。
20、根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:至少一个处理器;以及
21、与所述至少一个处理器通信连接的存储器;其中,
22、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的全密态数据库代价转移方法。
23、根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的全密态数据库代价转移优化方法。
24、本发明实施例的一种全密态数据库代价转移方法、装置、设备及存储介质,所述方法包括:获取初始结构化查询语言sql语句;将所述初始sql语句中的常量数据替换为常量标记,得到待执行sql语句;将所述待执行sql语句发送至服务器,接收服务器返回的语句解析信息;根据所述语句解析信息将包括所述常量标记对应的真实数据或加密数据的应答信息发送至所述服务器,以使服务器执行所述待执行sql语句。该方法通过对初始sql语句中的常量数据替换为常量标记,并将替换后的sql语句发送至服务器,将对sql语句进行分析,以使确定常量数据是否需要进行加密的操作转移到服务器上进行,能够利用服务器较高的硬件性能提高全密态数据库的整体性能,解决了现有技术中全密态数据库整体性能差的问题。
25、应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
1.一种全密态数据库代价转移方法,其特征在于,应用于数据库前端,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述根据所述语句解析信息将包括所述常量标记对应的真实数据或加密数据的应答信息发送至所述服务器,包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
5.一种全密态数据库代价转移方法,其特征在于,应用于服务器,所述方法包括:
6.根据权利要求5所述的方法,其特征在于,所述根据全密态元数据表对所述待执行sql语句进行解析得到语句解析信息,包括:
7.根据权利要求5所述的方法,其特征在于,所述接收所述数据库前端返回的包括所述常量标记对应的真实数据或加密数据的应答信息,以执行所述待执行sql语句,包括:
8.根据权利要求5所述的方法,其特征在于,在执行所述待执行sql语句之后,还包括:
9.根据权利要求5所述的方法,其特征在于,所述方法还包括:
10.一种全密态数据库代价转移装置,其特征在于,应用于数据库前端,所述装置包括:
11.一种全密态数据库代价转移装置,其特征在于,应用于服务器,所述装置包括:
12.一种电子设备,其特征在于,所述电子设备包括:
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-4或5-9中任一项所述的全密态数据库代价转移方法。