一种基于TCP代理的数据库动态加解密的实现方法及系统技术方案

技术编号:29411926 阅读:55 留言:0更新日期:2021-07-23 22:53
本发明专利技术公开了一种基于TCP代理的数据库动态加解密的实现方法,包括以下步骤:在数据库客户端和数据库服务器之间建立TCP代理;对数据库客户端的请求和数据库服务器的响应内容进行拦截;根据预设的策略匹配规则对数据库客户端的请求和数据库服务器的响应内容进行过滤与匹配,以得到待加解密的存储信息;对待加解密的存储信息进行加解密处理,以得到加解密数据;对加解密数据进行解析重组,以得到重组数据,并将重组数据发送给对应的数据库客户端或数据库服务器。本发明专利技术还公开了一种基于TCP代理的数据库动态加解密的实现系统。本发明专利技术在客户端与服务器之间部署TCP代理软件,减少运算资源损耗,实现对客户端访问数据库动态加解密的功能。

【技术实现步骤摘要】
一种基于TCP代理的数据库动态加解密的实现方法及系统
本专利技术涉及加解密
,具体而言,涉及一种基于TCP代理的数据库动态加解密的实现方法及系统。
技术介绍
现有的动态加密系统,同样是以TCP代理的方式,部署在客户端与关系型数据库服务端之间,通过对客户端访问数据库的SQL语句的解析和重构,在存储类型的SQL语句上增加加密函数,在查询类型的SQL语句上增加对应的解密函数来实现对数据库访问的加解密功能。现有方案的缺点有:1.加解密算法需要数据库的支持;2.加解密的实际过程是在数据库服务器上完成的,加解密操作会消耗数据库的运算资源;3.对于不支持SQL查询的数据库无法进行加解密;4.加解密模块是一个单点故障点。
技术实现思路
为了克服上述问题或者至少部分地解决上述问题,本专利技术实施例提供一种基于TCP代理的数据库动态加解密的实现方法及系统,在客户端与服务器之间部署TCP代理软件,减少运算资源的损耗,实现对客户端访问数据库动态加解密的功能。本专利技术的实施例是这样实现的:第一方面,本专利技术实施例提供一种基于TCP代理的数据库动态加解密的实现方法,包括以下步骤:在数据库客户端和数据库服务器之间建立TCP代理;通过TCP代理对数据库客户端的请求和数据库服务器的响应内容进行拦截;根据预设的策略匹配规则对数据库客户端的请求和数据库服务器的响应内容进行过滤与匹配,以得到待加解密的存储信息;对待加解密的存储信息进行加解密处理,以得到加解密数据;获取并根据对应的数据库协议对加解密数据进行解析重组,以得到重组数据,并将重组数据发送给对应的数据库客户端或数据库服务器。通过在客户端与数据库之间部署TCP代理软件,实现对客户端访问数据库动态加解密的功能,通过数据库客户端与数据库服务器之间的TCP连接的代理对数据库客户端的请求和数据库服务器的响应的内容进行拦截,经过规则与策略匹配,对需要加解密的存储字段/响应内容进行加解密处理,然后重新根据对应的数据库协议格式组织数据内容,相对应地,把修改重组后的请求内容交给数据库服务器,把修改重组后的响应内容发送给数据库客户端。对于数据库客户端而言,不需要做任何代码上的修改,同时对于数据库又完全透明,在数据库服务器上不需要做任何配置和修改,也没有任何额外的运算负担;不仅可以使用软件的方法进行加解密,也可以与现有的硬件加密机对接,实现高速加解密功能;如果与合适的负载均衡设备进行对接,可以轻松地实现加解密的集群,快速提高性能与高可用性。本方法通过在客户端与服务器之间部署TCP代理软件,结合TCP代理软件,减少运算资源的损耗,实现对客户端访问数据库动态加解密的功能。基于第一方面,在本专利技术的一些实施例中,所述根据预设的策略匹配规则对数据库客户端的请求和数据库服务器的响应内容进行过滤与匹配,以得到待加解密的存储信息的方法包括以下步骤:根据预设的策略匹配规则判断数据库客户端的请求和数据库服务器的响应内容是否需要加解密,如果是,则提取数据库客户端的请求和数据库服务器的响应内容中的待加解密的存储信息;如果否,则对数据库客户端的请求和数据库服务器的响应内容进行解析重组,以得到重组数据,并将重组数据发送给对应的数据库客户端或数据库服务器。基于第一方面,在本专利技术的一些实施例中,所述根据预设的策略匹配规则对数据库客户端的请求和数据库服务器的响应内容进行过滤与匹配,以得到待加解密的存储信息的方法包括以下步骤:根据预设的策略匹配规则对数据库客户端的请求字段进行过滤与匹配,以得到待加密的存储请求字段;根据预设的策略匹配规则对数据库服务器的响应内容进行过滤与匹配,以得到待解密的存储响应内容。基于第一方面,在本专利技术的一些实施例中,所述对待加解密的存储信息进行加解密处理,以得到加解密数据的方法包括以下步骤:采用预设的加密算法和加密密钥对待加密的存储请求字段进行加密,以得到加密数据;根据预设的加密算法和加密密钥生成对应的解密算法和解密密钥,并采用解密算法和解密密钥对待解密的存储响应内容进行解密,以得到解密数据。基于第一方面,在本专利技术的一些实施例中,所述将重组数据发送给对应的数据库客户端或数据库服务器的方法包括以下步骤:将重组数据中的请求字段发送给数据库服务器;将重组数据中的响应内容发送给数据库客户端。第二方面,本专利技术实施例提供一种基于TCP代理的数据库动态加解密的实现系统,包括代理部署模块、数据拦截模块、过滤匹配模块、加解密模块以及数据重组模块,其中:代理部署模块,用于在数据库客户端和数据库服务器之间建立TCP代理;数据拦截模块,用于通过TCP代理对数据库客户端的请求和数据库服务器的响应内容进行拦截;过滤匹配模块,用于根据预设的策略匹配规则对数据库客户端的请求和数据库服务器的响应内容进行过滤与匹配,以得到待加解密的存储信息;加解密模块,用于对待加解密的存储信息进行加解密处理,以得到加解密数据;数据重组模块,用于获取并根据对应的数据库协议对加解密数据进行解析重组,以得到重组数据,并将重组数据发送给对应的数据库客户端或数据库服务器。通过代理部署模块在客户端与数据库之间部署TCP代理软件,实现对客户端访问数据库动态加解密的功能,数据拦截模块通过数据库客户端与数据库服务器之间的TCP连接的代理对数据库客户端的请求和数据库服务器的响应的内容进行拦截,然后通过过滤匹配模块对数据进行过滤匹配,经过规则与策略匹配得到待加解密的数据,通过加解密模块对需要加解密的存储字段/响应内容进行加解密处理,然后数据重组模块重新根据对应的数据库协议格式组织数据内容,相对应地,把修改重组后的请求内容交给数据库服务器,把修改重组后的响应内容发送给数据库客户端。对于数据库客户端而言,不需要做任何代码上的修改,同时对于数据库又完全透明,在数据库服务器上不需要做任何配置和修改,也没有任何额外的运算负担;不仅可以使用软件的方法进行加解密,也可以与现有的硬件加密机对接,实现高速加解密功能;如果与合适的负载均衡设备进行对接,可以轻松地实现加解密的集群,快速提高性能与高可用性。本系统通过在客户端与服务器之间部署TCP代理软件,结合TCP代理软件,减少运算资源的损耗,实现对客户端访问数据库动态加解密的功能。基于第二方面,在本专利技术的一些实施例中,所述过滤匹配模块包括判断子模块,用于根据预设的策略匹配规则判断数据库客户端的请求和数据库服务器的响应内容是否需要加解密,如果是,则提取数据库客户端的请求和数据库服务器的响应内容中的待加解密的存储信息;如果否,则对数据库客户端的请求和数据库服务器的响应内容进行解析重组,以得到重组数据,并将重组数据发送给对应的数据库客户端或数据库服务器。基于第二方面,在本专利技术的一些实施例中,所述过滤匹配模块包括请求子模块和响应子模块,其中:请求子模块,用于根据预设的策略匹配规则对数据库客户端的请求字段进行过滤与匹配,以得到待加密的存储请求字本文档来自技高网...

【技术保护点】
1.一种基于TCP代理的数据库动态加解密的实现方法,其特征在于,包括以下步骤:/n在数据库客户端和数据库服务器之间建立TCP代理;/n通过TCP代理对数据库客户端的请求和数据库服务器的响应内容进行拦截;/n根据预设的策略匹配规则对数据库客户端的请求和数据库服务器的响应内容进行过滤与匹配,以得到待加解密的存储信息;/n对待加解密的存储信息进行加解密处理,以得到加解密数据;/n获取并根据对应的数据库协议对加解密数据进行解析重组,以得到重组数据,并将重组数据发送给对应的数据库客户端或数据库服务器。/n

【技术特征摘要】
1.一种基于TCP代理的数据库动态加解密的实现方法,其特征在于,包括以下步骤:
在数据库客户端和数据库服务器之间建立TCP代理;
通过TCP代理对数据库客户端的请求和数据库服务器的响应内容进行拦截;
根据预设的策略匹配规则对数据库客户端的请求和数据库服务器的响应内容进行过滤与匹配,以得到待加解密的存储信息;
对待加解密的存储信息进行加解密处理,以得到加解密数据;
获取并根据对应的数据库协议对加解密数据进行解析重组,以得到重组数据,并将重组数据发送给对应的数据库客户端或数据库服务器。


2.根据权利要求1所述的一种基于TCP代理的数据库动态加解密的实现方法,其特征在于,所述根据预设的策略匹配规则对数据库客户端的请求和数据库服务器的响应内容进行过滤与匹配,以得到待加解密的存储信息的方法包括以下步骤:
根据预设的策略匹配规则判断数据库客户端的请求和数据库服务器的响应内容是否需要加解密,如果是,则提取数据库客户端的请求和数据库服务器的响应内容中的待加解密的存储信息;如果否,则对数据库客户端的请求和数据库服务器的响应内容进行解析重组,以得到重组数据,并将重组数据发送给对应的数据库客户端或数据库服务器。


3.根据权利要求1所述的一种基于TCP代理的数据库动态加解密的实现方法,其特征在于,所述根据预设的策略匹配规则对数据库客户端的请求和数据库服务器的响应内容进行过滤与匹配,以得到待加解密的存储信息的方法包括以下步骤:
根据预设的策略匹配规则对数据库客户端的请求字段进行过滤与匹配,以得到待加密的存储请求字段;
根据预设的策略匹配规则对数据库服务器的响应内容进行过滤与匹配,以得到待解密的存储响应内容。


4.根据权利要求3所述的一种基于TCP代理的数据库动态加解密的实现方法,其特征在于,所述对待加解密的存储信息进行加解密处理,以得到加解密数据的方法包括以下步骤:
采用预设的加密算法和加密密钥对待加密的存储请求字段进行加密,以得到加密数据;
根据预设的加密算法和加密密钥生成对应的解密算法和解密密钥,并采用解密算法和解密密钥对待解密的存储响应内容进行解密,以得到解密数据。


5.根据权利要求1所述的一种基于TCP代理的数据库动态加解密的实现方法,其特征在于,所述将重组数据发送给对应的数据库客户端或数据库服务器的方法包括以下步骤:
将重组数据中的请求字段发送给数据库服务器;
将重组数据中的响应内容发送给数据库客户端。


6.一种基于T...

【专利技术属性】
技术研发人员:唐更新宋辉王锋赵卫国
申请(专利权)人:北京中安星云软件技术有限公司
类型:发明
国别省市:北京;11

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

1