一种分布式自动加解密系统技术方案

技术编号:22884503 阅读:15 留言:0更新日期:2019-12-21 07:29
本发明专利技术公开了一种分布式自动加解密系统,包括KMS控制台、KMS客户端、配置中心、业务系统、持久层和数据库。本发明专利技术,密钥证书和数据密钥都不明文落盘,对软件系统的侵入性不强,对于老系统的改造工作量较小,不易引入新的安全隐患,因此具有易用性。

A distributed automatic encryption and decryption system

【技术实现步骤摘要】
一种分布式自动加解密系统
本专利技术涉及产品软件
,具体为一种分布式自动加解密系统。
技术介绍
互联网金融服务需要用到用户的身份、银行卡等敏感信息,按照《信息安全技术个人信息安全规范》的规定,这些数据应当被加密存储,在需要使用时再根据密文解密出明文。目前常见的做法是使用加解密、摘要工具库,加载配置在文件或者服务器上的密钥,在存储敏感信息时显式调用加密方法,在读取敏感信息时显式调用解密方法,在查询时使用摘要工具库计算索引值后匹配,密文、索引值需要分开存储,在改造老系统时对存取逻辑、数据表和映射对象都要做相应修改。目前常见的做法在易用性、可维护性和安全性等方面存在不足。易用性:因为需要显式的调用加解密方法,对软件系统的侵入性很强;对于老系统的改造工作量繁重,容易引入新的隐患。可维护性:加密密钥由运维配置,因为历史数据和多系统共用,密钥几乎无法更换。安全性:因为数据、密钥都由运维维护,且难以更换密钥,密钥和密文数据有同时泄漏的风险。
技术实现思路
本专利技术的目的在于提供一种分布式自动加解密系统,具有易用性、具有可维护性和具有较高的安全性,以解决上述
技术介绍
中提出的问题。为实现上述目的,本专利技术提供如下技术方案:一种分布式自动加解密系统,包括:KMS控制台:是密钥管理后台,用于给专门的安全人员配置密钥证书、新增数据密钥、加解密配置,加解密配置用于指定需要加密和索引的数据库、数据表、字段,同时进行手工加解密、计算索引值、批量处理数据表,密钥证书和数据密钥都不明文落盘,密钥证书和数据密钥由安全人员管理,数据库、数据表和字段中的数据由运维管理;KMS客户端:用于从配置中心加载加解密配置和所述数据密钥,并监听所述数据密钥的更新事件;配置中心:用于所述KMS控制台发布所述加解密配置和所述数据密钥,以及向所述KMS客户端发布更新通知;业务系统:用于实施敏感信息自动加解密的系统;持久层:业务系统中的数据存取模块;数据库:负责永久存储数据的软件系统。优选的,所述KMS控制台向若干个所述业务系统发布所述数据密钥。优选的,所述KMS客户端支持Druid和ShardingJDBC数据源,所述KMS客户端支持增加数据库的敏感信息字段长度。优选的,所述加解密配置采用RSA算法。优选的,所述KMS控制台发布配置的具体过程如下:S1:安全人员添加所述密钥证书,所述密钥证书缓存在服务器中,加解密所述数据密钥:S2:安全人员添加所述数据密钥、加解密配置,所述数据密钥用所述密钥证书加密存储;S3:所述KMS控制台向所述配置中心发布所述数据密钥和所述加解密配置。优选的,所述KMS客户端加载配置工作过程如下:S1:所述KMS客户端启动时从所述配置中心获取所述数据密钥、加解密配置;S2:所述KMS客户端使用所述数据密钥初始化加解密工具;S3:所述KMS客户端监听所述配置中心发布事件,如果有更新,重复上面两个步骤。优选的,所述KMS客户端自动加解密工作过程如下:S1:加载所述加解密配置,包括需加密的数据库、数据表、字段、是否加密、是否计算索引值;S2:所述KMS客户端拦截所述业务系统的持久层的SQL,识别数据源;S3:解析SQL,区分Insert、Update、Delete、Select,识别其中的数据表名、字段名、条件字段、参数值;S4:根据识别结果和所述加解密配置进行加解密、计算索引值、组装加解密结果,并设置到SQLStatement或ResultSet中。与现有技术相比,本专利技术的有益效果是:1、本专利技术,密钥证书和数据密钥都不明文落盘,对软件系统的侵入性不强,对于老系统的改造工作量较小,不易引入新的安全隐患,因此具有易用性;2、本专利技术,KMS控制台能够新增数据秘钥,实现了秘钥的更换,具有可维护性;3、本专利技术,密钥证书和数据密钥由安全人员管理,数据表和字段中的数据由运维管理,密钥和密文数据没有同时泄漏的风险,安全性较高。附图说明图1为本专利技术的模块结构示意图;图2为本专利技术的KMS控制台发布配置工作流程图;图3为本专利技术的KMS客户端加载配置工作流程图;图4为本专利技术的KMS客户端自动加解密工作流程图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例:请参阅图1-4,本专利技术提供一种技术方案:一种分布式自动加解密系统,如图1和3所示,包括:KMS控制台:是密钥管理后台,用于给专门的安全人员配置密钥证书、新增数据密钥、加解密配置,加解密配置用于指定需要加密和索引的数据库、数据表、字段,同时进行手工加解密、计算索引值、批量处理数据表,密钥证书和数据密钥都不明文落盘,密钥证书和数据密钥由安全人员管理,数据库、数据表和字段中的数据由运维管理;KMS客户端:用于从配置中心加载加解密配置和数据密钥,并监听数据密钥的更新事件;配置中心:用于KMS控制台发布加解密配置和数据密钥,以及向KMS客户端发布更新通知;业务系统:用于实施敏感信息自动加解密的系统;持久层:业务系统中的数据存取模块;数据库:负责永久存储数据的软件系统。进一步,KMS控制台向若干个业务系统发布数据密钥,大大降低了安全风险和维护成本。进一步,KMS客户端支持Druid和ShardingJDBC数据源,KMS客户端支持增加数据库的敏感信息字段长度,可以直接支持所有的Java应用,而不需要对现有系统代码做任何重构,大大降低了接入成本。进一步,加解密配置采用RSA算法,安全性较高。进一步,KMS控制台发布配置的具体过程如下:S1:安全人员添加密钥证书,密钥证书缓存在服务器中,加解密数据密钥:S2:安全人员添加数据密钥、加解密配置,数据密钥用密钥证书加密存储;S3:KMS控制台向配置中心发布数据密钥和加解密配置:进一步,KMS客户端加载配置工作过程如下:S1:KMS客户端启动时从配置中心获取数据密钥、加解密配置;S2:KMS客户端使用数据密钥初始化加解密工具;S3:KMS客户端监听配置中心发布事件,如果有更新,重复上面两个步骤。进一步,KMS客户端自动加解密工作过程如下:S1:加载加解密配置,包括需加密的数据库、数据表、字段、是否加密、是否计算索引值;S2:KMS客户端拦截业务系统的持久层的SQL,识别数据源;S3:解析SQL,区分Insert、Update、Delete、Select,识别其中的数据表名、字段本文档来自技高网...

【技术保护点】
1.一种分布式自动加解密系统,其特征在于包括:/nKMS控制台:是密钥管理后台,用于给专门的安全人员配置密钥证书、新增数据密钥、加解密配置,密钥证书和数据密钥都不明文落盘,密钥证书和数据密钥由安全人员管理,数据库、数据表和字段中的数据由运维管理;/nKMS客户端:用于从配置中心加载加解密配置和所述数据密钥,并监听所述数据密钥的更新事件;/n配置中心:用于所述KMS控制台发布所述加解密配置和所述数据密钥,以及向所述KMS客户端发布更新通知;/n业务系统:用于实施敏感信息自动加解密的系统;/n持久层:业务系统中的数据存取模块;/n数据库:负责永久存储数据的软件系统。/n

【技术特征摘要】
1.一种分布式自动加解密系统,其特征在于包括:
KMS控制台:是密钥管理后台,用于给专门的安全人员配置密钥证书、新增数据密钥、加解密配置,密钥证书和数据密钥都不明文落盘,密钥证书和数据密钥由安全人员管理,数据库、数据表和字段中的数据由运维管理;
KMS客户端:用于从配置中心加载加解密配置和所述数据密钥,并监听所述数据密钥的更新事件;
配置中心:用于所述KMS控制台发布所述加解密配置和所述数据密钥,以及向所述KMS客户端发布更新通知;
业务系统:用于实施敏感信息自动加解密的系统;
持久层:业务系统中的数据存取模块;
数据库:负责永久存储数据的软件系统。


2.根据权利要求1所述的一种分布式自动加解密系统,其特征在于:所述KMS控制台向若干个所述业务系统发布所述数据密钥。


3.根据权利要求1所述的一种分布式自动加解密系统,其特征在于:所述KMS客户端支持Druid和ShardingJDBC数据源,所述KMS客户端支持增加数据库的敏感信息字段长度。


4.根据权利要求1或2所述的一种分布式自动加解密系统,其特征在于:所述加解密配置采用RSA算法。


5.根据权利要求1所述的一种分布式自动加解密系统,其特征在于:所述KMS控制台发布配置的具体过程如下:
S1:安全人员添加所述密钥证书,所述密钥证书缓存在服务器中,加解密所述数据密钥:

【专利技术属性】
技术研发人员:刘文强蒋长强
申请(专利权)人:中腾信金融信息服务上海有限公司
类型:发明
国别省市:上海;31

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

1