首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

数据脱敏系统和方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:中恒华瑞(北京)信息技术有限公司

摘要:本发明实施例公开了一种数据脱敏系统和方法,其中的系统包括:数据源服务器、目标服务器和脱敏执行服务器,脱敏执行服务器接收客户端设备发送的数据脱敏指令,根据数据脱敏指令从数据源服务器中读取原始数据放入内存中,在内存中执行脱敏操作生成脱敏数据,并将脱敏数据发送至目标服务器存储。本发明的数据脱敏系统和方法,可以进行“不落地数据脱敏”,能够保障客户生产数据在非生产环境中安全使用,防止敏感信息泄露,保障数据安全,提升脱敏操作的效率,满足企业对于信息安全的要求。

主权项:1.一种数据脱敏系统,其特征在于,包括:数据源服务器,用于存储原始数据;目标服务器,用于存储脱敏数据;脱敏执行服务器,用于接收客户端设备发送的数据脱敏指令,根据所述数据脱敏指令从所述数据源服务器中读取原始数据放入内存中,在内存中执行脱敏操作生成脱敏数据,并将所述脱敏数据发送至所述目标服务器存储;其中,所述脱敏操作包括:基于预设的数据脱敏规则对所述原始数据中的敏感信息进行定位并生成与敏感信息对应的替换信息、将所述原始数据中的敏感信息替换为对应的替换信息生成所述脱敏数据;所述脱敏执行服务器包括:源数据获取模块、脱敏数据处理模块、脱敏数据存储模块;所述源数据获取模块,用于与所述数据源服务器中的源数据库建立源数据流管道,其中,所述源数据库从源数据文件中提取原始数据,所述源数据库基于预设的管道数据格式将此原始数据封装为原数据对象,将所述原数据对象写入源数据流管道;所述源数据获取模块,还用于从所述源数据流管道中读取所述原数据对象;所述脱敏数据处理模块,用于基于所述数据脱敏规则对所述原数据对象执行脱敏操作并生成脱敏数据;所述脱敏数据存储模块,用于与所述目标服务器中的目标数据库建立目标数据流管道,将此脱敏数据根据所述管道数据格式封装为脱敏数据对象,将所述脱敏数据对象写入目标数据流管道;所述目标数据库从目标数据流管道中获取所述脱敏数据对象,并将脱敏数据对象中的脱敏数据存储在目标数据文件中。

全文数据:数据脱敏系统和方法技术领域[0001]本发明涉及信息安全技术领域,尤其涉及一种数据脱敏系统和方法。背景技术[0002]随着市场壮大和业务发展,企业数据库中存储的客户资料越来越多,一旦发生泄露,将会对企业带来巨大的信任危机及经济损失,对于敏感数据的脱敏处理是预防数据泄漏的积极、有效手段。数据脱敏是指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。借助数据脱敏技术,屏蔽敏感信息,并使屏蔽的信息保留其原始数据格式和属性,以确保系统或应用程序可在使用脱敏数据的开发与测试过程中正常运行。政府、金融、电信、银行、事业单位、个体企业等各行业用户意识到数据己成为企业的核心资产,商业数据、人力资源数据、财务数据等敏感信息,将直接影响企业的生存和发展,对核心数据资产非常重视,对脱敏过程中数据落地的实现方式产生质疑,担心落地数据会有泄漏风险。[0003]在现有技术中,通常的脱敏系统进行脱敏处理的流程如图1所示,根据测试、开发需求抽取核心数据到压缩格式的抽取文件中,将抽取中的敏感字段客户信息相关字段进行脱敏,利用脱敏抽取文件中保留的对象定义DDL,在开发环境中变更或创建初始数据环境,将脱敏后的数据插入目标环境,包括开发、测试环境。但是,现有脱敏系统在数据访问和传输过程中没有使用保密措施,数据在此过程中都存在泄密的可能性,并且基于文件的脱敏方法,在脱敏过程中必须生成临时文件,数据在此过程中也存在泄密的可能性。发明内容[0004]有鉴于此,本发明实施例提供一种数据脱敏系统和方法,可以进行“不落地数据脱敏”处理。[0005]根据本发明实施例的一个方面,提供一种数据脱敏系统,包括:数据源服务器,用于存储原始数据;目标服务器,用于存储脱敏数据;脱敏执行服务器,用于接收客户端设备发送的数据脱敏指令,根据所述数据脱敏指令从所述数据源服务器中读取原始数据放入内存中,在内存中执行脱敏操作生成脱敏数据,并将所述脱敏数据发送至所述目标服务器存储;其中,所述脱敏操作包括:基于预设的数据脱敏规则对所述原始数据中的敏感信息进行定位并生成与敏感信息对应的替换信息、将所述原始数据中的敏感信息替换为对应的替换信息生成所述脱敏数据。[0006]根据本发明的另一方面,提供一种数据脱敏方法,包括:脱敏执行服务器接收客户端设备发送的数据脱敏指令,根据所述数据脱敏指令从数据源服务器中读取原始数据放入内存中;所述脱敏执行服务器在内存中基于预设的数据脱敏规则对所述原始数据中的敏感信息进行定位并生成与敏感信息对应的替换信息,将所述原始数据中的敏感信息替换为对应的替换信息生成所述脱敏数据;所述脱敏执行服务器将所述脱敏数据发送至所述目标服务器存储。[0007]本发明的数据脱敏系统和方法,脱敏执行服务器从数据源服务器中读取原始数据,将原始数据中的敏感信息替换为对应的替换信息生成脱敏数据并发送至目标服务器存储,采用JDBC、0DBC和管道流等方式获取原始数据以及存储目标数据,脱敏过程中不需要生成任何临时文件,并且脱敏执行服务器与客户端通信采用加密传输方式,可以进行“不落地数据脱敏”,能够保障客户生产数据在非生产环境中安全使用,防止敏感信息泄露,保障数据安全,提升脱敏操作的效率。[0008]本发明实施例附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。附图说明[0009]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图:[0010]图1为现有技术中脱敏系统进行脱敏处理的流程示意图;[0011]图2为根据本发明的数据脱敏系统的一个实施例的示意图;[0012]图3为根据本发明的数据脱敏系统的一个实施例中的客户端设备的模块示意图;[0013]图4为根据本发明的数据脱敏系统的一个实施例中的脱敏执行服务器的模块示意图;[00M]图5为根据本发明的数据脱敏系统的一个实施例进行脱敏处理的流程示意图;[0015]图6为根据本发明的数据脱敏方法的一个实施例的流程示意图。具体实施方式[0016]现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。[0017]同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。[0018]以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。[0019]对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。[0020]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。[0021]本发明实施例可以应用于计算机系统服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统服务器一起使用的众所周知的计算系统、环境和或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。[0022]计算机系统服务器可以在由计算机系统执行的计算机系统可执行指令诸如程序模块的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。[0023]本发明提供一种数据脱敏系统,如图2所示,数据脱敏系统包括:脱敏执行服务器1、数据源服务器2、目标服务器3和客户端设备4。客户端设备4可以为PC、移动终端等。数据源服务器2存储原始数据,目标服务器3存储脱敏数据。[0024]脱敏执行服务器1接收客户端设备4发送的数据脱敏指令,根据数据脱敏指令从数据源服务器2中读取原始数据放入内存中,在内存中执行脱敏操作生成脱敏数据,并将脱敏数据发送至目标服务器2存储。[0025]脱敏执行服务器1执行的脱敏操作有多种,例如:基于预设的数据脱敏规则对原始数据中的敏感信息进行定位并生成与敏感信息对应的替换信息、将原始数据中的敏感信息替换为对应的替换信息生成脱敏数据等。[0026]脱敏执行服务器1在内存中执行脱敏操作,在脱敏过程中并不生成任何临时文件,将脱敏数据直接发送到目标服务器3中存储,实现脱敏过程中的数据不落地,提高对数据的安全保护。[0027]本发明中的“不落地数据脱敏”是指生产环境中的涉及个人隐私或者其它需要保护的敏感业务数据在需要进入非生产环境或者测试环境时,脱敏过程中不需要生成任何临时文件,脱敏后的目标数据直接进入非生产环境或者测试环境。[0028]敏感数据通常包含客户个人隐私数据以及某些关键的敏感业务数据,例如,姓名:客户姓名、客户名等;地址:家庭地址、公司地址等;邮箱:公司邮箱、常用邮箱等;电话:手机、固定电话等;证件:身份证、护照、军官证等;帐号:银行卡、客户号、税务登记号、组织机构代码、营业执照号等;邮编:公司邮编、家庭住址邮编等;日期:生曰等。[0029]如图3所示,客户端设备4包括:连接建立模块41、第一加解密模块41和指令发送模块42。如图4所示,脱敏执行服务器1包括:证书管理模块11、第二加解密模块12、脱敏规则建立模块13、脱敏数据处理模块14、源数据获取模块15和目标数据存储模块16。[0030]连接建立模块41与脱敏执行服务器1建立HTTPs连接,通过https协议来加密信息,以免敏感信息被第三方获取。客户端设备4可以设置浏览器,通过在浏览器里输入脱敏执行服务器1的https网址,连接到脱敏执行服务器1的443端口。[0031]第一加解密模块42向脱敏执行服务器1发送数字证书请求。证书管理模块H将与客户端设备4相对应的数字证书通过HTTPs连接发送给客户端设备4,数字证书包含加密公钥。采用HTTPS协议的服务器必须要有一套数字证书,可以自己制作,也可以向组织申请。自己制作证书需要客户端验证通过,才可以继续访问,而使用受信任的公司申请的证书则不会弹出提示页面。数字证书对应于一对加密公钥和加密私钥,将包含有加密公钥的数字证书发送给客户端设备4。[0032]第一加解密模块42基于TLS协议解析数字证书并验证加密公钥是否有效,比如颁发机构,过期时间等。如果确定加密公钥有效,第一加解密模块42生成一组随机数,使用加密公钥加密随机数,并将随机数的加密结果发送给脱敏执行服务器。如果第一加解密模块42验证加密公钥发现异常,则会弹出一个警告框,提示证书存在问题。[0033]第二加解密模块I2使用加密私钥对加密结果进行解密,获得随机数。客户端设备4和脱敏执行服务器1使用随机数作为共享密钥进行加密通信。例如,第一加解密模块42使用随机数作为密钥,基于预设的对称加密算法对数据脱敏指令进行对称加密,并将加密后的数据脱敏指令发送给脱敏执行服务器1。第二加解密模块12使用随机数并基于对称加密算法对加密后的数据脱敏指令进行解密,获取数据脱敏指令。进行对称加密、解密采用的方法包括:DES算法、3DES算法等,进行非对称加密、解密采用的方法包括:RSA算法、背包算法等。[0034]在一个实施例中,数据脱敏指令中携带的信息有多种,例如敏感数据类型、与敏感数据类型对应的脱敏算法等。脱敏规则建立模块13基于数据脱敏规则信息配置与数据源服务器对应的数据脱敏规则模板,数据脱敏规则模板中的数据脱敏规则包括:敏感数据类型以及对其进行脱敏采用的脱敏算法等。例如,数据脱敏规则模板中的一条数据脱敏规则是如何确定敏感数据为身份证号码,以及确定敏感数据类型为身份证号码时对于身份证号码进行脱敏采用的脱敏算法。[0035]脱敏数据处理模块14在执行脱敏任务时,获取数据脱敏规则模板中的数据脱敏规则对原始数据进行分析,定位原始数据中的敏感信息,确定此敏感信息的敏感数据类型以及对应的脱敏算法,调用确定的脱敏算法生成与此敏感信息对应的替换信息并进行替换。[0036]可以通过数据库保存数据脱敏规则模板,在进行脱敏时,将数据脱敏规则模板以及脱敏算法包加载在内存中,可以通过客户端设备4对数据脱敏规则模板进行动态的修改和设置,确定对某类型的脱敏数据进行脱敏采用的脱敏算法等。可以通过反射方式动态调用脱敏算法,调用脱敏算法实际上是调用与脱敏算法相对应的程序函数,例如jar包中的相关类中的与脱敏算法对应的方法。[0037]JAVA反射机制是在运行状态中,对于任意一个类都能够知道这个类的所有属性和方法,对于任意一个对象,都能够调用它的任意方法和属性,这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。客户端设备4将脱敏算法更新包上传到脱敏执行服务器。脱敏数据处理模块14根据预设的脱敏算法包名获取脱敏算法更新包,并在脱敏算法更新包中查找与脱敏算法对应的目标类。脱敏数据处理模块14利用java反射机制,在目标类中获取与脱敏算法对应的新脱敏计算目标方法以及属性,调用新脱敏计算目标方法以及属性生成与此敏感信息对应的替换信息并进行替换。[0038]数据脱敏指令携带的信息包括:源数据库的连接信息和鉴权信息、目标数据库的连接信息和鉴权信息等。连接信息是数据库的IP地址和端口信息,鉴权信息可以是用户名、密码。源数据获取模块15根据源数据库的连接信息和鉴权信息与数据源服务器2中的源数据库建立源数据库连接。[0039]可以使用sql查询语句,通过源数据库连接获取源数据库中待读取的数据记录的总条数,基于总条数设置分页,生成分页查询语句,分页查询语句中包含有待读取的起始数据的主键值、读取数据的数量。源数据获取模块15依次向源数据库发送分页查询语句,分页提取源数据库中的数据,得到分页数据。[0040]脱敏数据处理模块14基于数据脱敏规则对分页数据执行脱敏操作并生成分页脱敏数据。脱敏数据存储模块16根据目标数据库的连接信息和鉴权信息与目标服务器3中的目标数据库建立目标数据库连接,通过目标数据库连接将分页脱敏数据发送至目标数据库进行存储。源数据库连接和目标数据库连接包括:jdbc连接、ODBC连接等。[0041]如图5所示,脱敏执行服务器可以从数据源服务器中的源数据库或者源数据文件获取原始数据,将脱敏数据发送至目标服务器中的目标数据库或者目标数据文件中存储,执行“不落地脱敏”。源数据库和目标数据库可以支持多种数据库,例如Oracle、IBMDB2、MSSQ1SERVER、Mysql、Informix、Teradata、Sybase等,也可以支持其他的关系形数据库。源数据文件和目标数据文件都为格式化文件。[0042]源数据获取模块I5通过JDBC、0DBC等从关系型数据库取出源数据,可以按照不同数据库相应的批量读取方式。源数据获取模块15根据不同的数据库以及表的大小行数去设置分页、分块方式,可以按照系统默认的最优的方式进行分页或者分块从数据库得到数据,同时也可以根据具体实施环境,根据提供的服务接口去修改默认的分页或分块方式,灵活方便。脱敏数据存储模块16将目标数据通过JDBC、ODBC等,并根据不同的数据库以及表的大小进行相应的批量提交方式,放入目标数据库,数据直接从数据库接收数据脱敏请求后,放入目标数据库,此过程不落地。[0043]在一个实施例中,源数据获取模块15与数据源服务器2中的源数据库建立源数据流管道,数据流管道可以为输入输出流,源数据库可以为数据仓库、分布式数据库。源数据获取模块15会根据相应的数据库读取命令建立源数据流管道,快速得到数据库的源数据流,省去了频繁查询数据的过程,有效的提升了数据库读取的效率。[0044]根据源数据获取模块15向源数据库发送的数据库命令,源数据库从源数据文件中提取原始数据,基于预设的管道数据格式将此原始数据封装为原数据对象,将原数据对象写入源数据流管道。源数据获取模块15从源数据流管道中读取原数据对象。脱敏数据处理模块14基于数据脱敏规则对原数据对象执行脱敏操作并生成脱敏数据。[0045]脱敏数据存储模块16与目标服务器中的目标数据库建立目标数据流管道,数据流管道可以为输入输出流,目标数据库为数据仓库、分布式数据库等。脱敏数据存储模块16会根据相应的数据库读取命令建立目标数据流管道,能够快速向数据库发送数据流。脱敏数据存储模块16将此脱敏数据根据管道数据格式封装为脱敏数据对象,将脱敏数据对象写入目标数据流管道。根据源数据获取模块I5向源数据库发送的数据库命令,目标数据库从目标数据流管道中获取脱敏数据对象,并将脱敏数据对象中的脱敏数据存储在目标数据文件中。[0046]将源数据库从源数据文件中提取的源数据流封装为原数据对象,将脱敏数据处理过程封装为脱敏数据对象。原数据对象可以向管道中写入数据,脱敏数据对象以管道流方式不落地存入目标数据库,此管道流方式是不消耗内存的,所以节省了内存空间,并且实现了数据不落地,连续的处理。此过程是以批量的方式,不需要反复的查询插入的过程,这个过程中没有写磁盘。[0047]图6为根据本发明的数据脱敏方法的一个实施例的流程示意图,如图6所示:[0048]步骤601,脱敏执行服务器接收客户端设备发送的数据脱敏指令,根据数据脱敏指令从数据源服务器中读取原始数据放入内存中。[0049]步骤6〇2,脱敏执行服务器在内存中基于预设的数据脱敏规则对原始数据中的敏感信息进行定位并生成与敏感信息对应的替换信息。[0050]步骤603,脱敏执行服务器将原始数据中的敏感信息替换为对应的替换信息生成月兑〇[0051]步骤604,脱敏执行服务器将脱敏数据发送至目标服务器存储。[0052]在一个实施例中,客户端设备与脱敏执行服务器建立HTTPs连接。客户端设备向脱敏执行服务器发送数字证书请求,脱敏执行服务器将与客户端设备相对应的数字证书通过HTTPs连接发送给客户端设备,其中,数字证书包含加密公钥。[0053]客户端设备基于TLS协议解析数字证书并验证加密公钥是否有效,如果是,则生成一组随机数,使用加密公钥加密随机数,并将随机数的加密结果发送给脱敏执行服务器。脱敏执行服务器使用加密私钥对加密结果进行解密,获得随机数。客户端设备和脱敏执行服务器使用随机数作为共享密钥进行加密通信。_[0054]客户端设备使用随机数作为密钥,基于预设的对称加密算法对数据脱敏指令进行对称加密,并将加密后的数据脱敏指令发送给脱敏执行服务器。脱敏执行服务器使用随机数并基于对称加密算法对加密后的数据脱敏指令进行解密,获取数据脱敏指令。[0055]在一个实施例中,数据脱敏指令携带的信息包括:敏感数据类型、与敏感数据类型对应的脱敏算法等。脱敏执行服务器基于数据脱敏规则信息配置与数据源服务器对应的数据脱敏规则模板,数据脱敏规则模板中的数据脱敏规则包括:敏感数据类型以及对其进行脱敏采用的脱敏算法。[0056]脱敏数据处理模块在执行脱敏任务时,获取数据脱敏规则模板中的数据脱敏规则对原始数据进行分析,定位原始数据中的敏感信息,确定此敏感信息的敏感数据类型以及对应的脱敏算法,调用确定的脱敏算法生成与此敏感信息对应的替换信息并进行替换。[0057]客户端设备将脱敏算法更新包上传到脱敏执行服务器。脱敏执行服务器根据预设的脱敏算法包名获取脱敏算法更新包,并在脱敏算法更新包中查找与脱敏算法对应的目标类。脱敏执行服务器利用java反射机制,在目标类中获取与脱敏算法对应的新脱敏计算目标方法以及属性,调用新脱敏计算目标方法以及属性生成与此敏感信息对应的替换信息并进行替换。[0058]数据脱敏指令携带的信息包括:源数据库的连接信息和鉴权信息、目标数据库的连接信息和鉴权信息。脱敏执行服务器根据源数据库的连接信息和鉴权信息与数据源服务器中的源数据库建立源数据库连接。脱敏执行服务器通过源数据库连接获取源数据库中待读取的数据记录的总条数,基于总条数设置分页,生成分页查询语句,分页查询语句中包含有待读取的起始数据的主键值、读取数据的数量。[0059]脱敏执行服务器依次向源数据库发送分页查询语句,分页提取源数据库中的数据,得到分页数据,基于数据脱敏规则对分页数据执行脱敏操作并生成分页脱敏数据。脱敏执行服务器根据目标数据库的连接信息和鉴权信息与目标服务器中的目标数据库建立目标数据库连接,通过目标数据库连接将分页脱敏数据发送至目标数据库进行存储。[0060]在一个实施例中,脱敏执行服务器与数据源服务器中的源数据库建立源数据流管道。源数据库从源数据文件中提取原始数据,源数据库基于预设的管道数据格式将此原始数据封装为原数据对象,将原数据对象写入源数据流管道。脱敏执行服务器从源数据流管道中读取原数据对象,基于数据脱敏规则对原数据对象执行脱敏操作并生成脱敏数据。[0061]脱敏执行服务器与目标服务器中的目标数据库建立目标数据流管道,将此脱敏数据根据ii道数据格式封装为脱敏数据对象,将脱敏数据对象写入目标数据流管道。目标数据库从目标数据流管道中获取脱敏数据对象,并将脱敏数据对象中的脱敏数据存储在目标数据文件中。[0062]上述实施例中的数据脱敏系统和方法,脱敏执行服务器从数据源服务器中读取原始数据,将原始数据中的敏感信息替换为对应的替换信息生成脱敏数据并发送至目标服务器存储,采用jdbc、odbc和管道流等方式获取原始数据以及存储目标数据,脱敏过程中不需要生成任何临时文件,并且脱敏执行服务器与客户端通信采用加密传输方式,可以进行“不落地数据脱敏”,能够保障客户生产数据在非生产环境中安全使用,防止敏感信息泄露,保障数据安全,提升脱敏操作的效率,满足企业对于信息安全的要求。[0063]可能以许多方式来实现本发明的方法和装置、设备。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和装置、设备。用于方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。[0064]本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。[0065]本发明的实施例提供了A1、一种数据脱敏系统,包括:数据源服务器,用于存储原始数据;目标服务器,用于存储脱敏数据;脱敏执行服务器,用于接收客户端设备发送的数据脱敏指令,根据所述数据脱敏指令从所述数据源服务器中读取原始数据放入内存中,在内存中执行脱敏操作生成脱敏数据,并将所述脱敏数据发送至所述目标服务器存储;其中,所述脱敏操作包括:基于预设的数据脱敏规则对所述原始数据中的敏感信息进行定位并生成与敏感信息对应的替换信息、将所述原始数据中的敏感信息替换为对应的替换信息生成所述脱敏数据。[0066]A2、如A1所述的系统,其中,所述客户端设备包括:连接建立申旲块、第一加解禮模块;所述脱敏执行服务器包括:证书管理模块和第二加解密模块;所述连接建立模^夬,用于与所述脱敏执行服务器建立HTTPs连接;所述第一加解密模块,用于向所述脱敏执行服务器发送数字证书请求;所述证书管理模块,用于将与所述客户端设备相对应的数字证书通过所述HTTPs连接发送给所述客户端设备,其中,所述数字证书包含加密公钥;所述第一加解密模块,还用于基于TLS协议解析所述数字证书并验证所述加密公钥是否有效,如果是,则生成一组随机数,使用所述加密公钥加密所述随机数,并将所述随机数的加密结果发送给所述脱敏撕服錢;所二_嫌块,肝_加密_对臓加果获得臓随机数;其中,所述客户端设备和所述脱敏执行服务器使用所述随机数作为、孚遂钥讲行加遂通户A3r如^述的系统,其中,所述客户端设备包粗指令发送模块;所述第一加解密模块,还用4用所述随机数作为密钥,基于预设行对称加密;臓指令发送機,用于将加密后的数据脱敏^发赖所述脱敏执服力器;所述第二加解密模块,还用于使用所述随机数并基于所述对称加密算法对加密后的数据脱敏指令进行解密,获取所述数据脱敏指令。[0068]A4、如A2所述的系统,其中,所述数据脱敏指令携带的数据脱敏规则信息包括:敏感数据类型、与敏感数据类型对应的脱敏算法;所述脱敏执行服务器,包括:脱敏规则建立模块,用于基于所述数据脱敏规则信息配置与所述数据源服务器对应的数据脱敏规则模板,其中,所述数据脱敏规则模板中的数据脱敏规则包括:敏感数据类型以及对其进行脱敏采用的脱敏算法;脱敏数据处理模块,用于在执行脱敏任务时,获取所述数据脱敏规则模板中的数据脱敏规则对所述原始数据进行分析,定位所述原始数据中的敏感信息,确定此敏感信息的敏感数据类型以及对应的脱敏算法,调用确定的脱敏算法生成与此敏感信息对应的替换信息并进行替换。[0069]A5、如A4所述的系统,其中,所述客户端设备将脱敏算法更新包上传到所述脱敏执行服务器;所述脱敏数据处理模块,还用于根据预设的脱敏算法包名获取所述脱敏算法更新包,并在所述脱敏算法更新包中查找与所述脱敏算法对应的目标类;利用J’ava反射机制,在所述目标类中获取与所述脱敏算法对应的新脱敏计算目标方法以及属性,调用所述新脱敏计算目标方法以及属性生成与此敏感信息对应的替换信息并进行替换。[0070]A6、如A5所述的系统,其中,所述数据脱敏指令携带的信息包括:源数据库的连接信息和鉴权信息、目标数据库的连接信息和鉴权信息;所述脱敏执行服务器,包括:源数据获取模块,用于根据所述源数据库的连接信息和鉴权信息与所述数据源服务器中的源数据库建立源数据库连接;通过所述源数据库连接获取所述源数据库中待读取的数据记录的总条数;基于所述总条数设置分页,生成分页查询语句,其中,所述分页查询语句中包含有待读取的起始数据的主键值、读取数据的数量;依次向所述源数据库发送分页查询语句,分页提取所述源数据库中的数据,得到分页数据;所述脱敏数据处理模块,还用于基于所述数据脱敏规则对所述分页数据执行脱敏操作并生成分页脱敏数据;所述脱敏执行服务器,包括:脱敏数据存储模块,用于根据所述目标数据库的连接信息和鉴权信息与所述目标服务器中的目标数据库建立目标数据库连接,通过所述目标数据库连接将所述分页脱敏数据发送至所述目标数据库进行存储;其中,所述源数据库连接和所述目标数据库连接包括:jdbc连接、ODBC连接。[0071]A7、如A6所述系统,其中,所述源数据获取模块,还用于与所述数据源服务器中的源数据库建立源数据流管道,其中,所述源数据库从源数据文件中提取原始数据,所述源数据库基于预设的管道数据格式将此原始数据封装为原数据对象,将所述原数据对象写入源数据流管道;所述源数据获取模块,还用于从所述源数据流管道中读取所述原数据对象;所述脱敏数据处理模块,还用于基于所述数据脱敏规则对所述原数据对象执行脱敏操作并生成脱敏数据;所述脱敏数据存储模块,用于与所述目标服务器中的目标数据库建立目标数据流管道,将此脱敏数据根据所述管道数据格式封装为脱敏数据对象,将所述脱敏数据对象写入目标数据流管道;所述目标数据库从目标数据流管道中获取所述脱敏数据对象,并将脱敏数据对象中的脱敏数据存储在目标数据文件中。[0072]B8、一种数据脱敏方法,包括:脱敏执行服务器接收客户端设备发送的数据脱敏指令,根据所述数据脱敏指令从数据源服务器中读取原始数据放入内存中;所述脱敏执行服务器在内存中基于预设的数据脱敏规则对所述原始数据中的敏感信息进行定位并生成与敏感信息对应的替换信息,将所述原始数据中的敏感信息替换为对应的替换佶息生成所述脱敏数据;所述脱敏执行服务器将所述脱敏数据发送至所述目标服务器存储。、[0073]B9、如B8所述的方法,其中,所述客户端设备与所述脱敏执行服务器建立抓了作连接;所述客户端设备向所述脱敏执行服务器发送数字证书请求;所述脱敏执行服务器将与所述客户端设备相对应的数字证书通过所述HTTPs连接发送给所述客户端设备,其中,所述数字证书包含加密公钥;所述客户端设备基于TLS协议解析所述数字证书并验证所述加密公钥是否有效,如果是,则生成一组随机数,使用所述加密公钥加密所述随机数,并将所述随机数的加密结果发送给所述脱敏执行服务器;所述脱敏执行服务器使用加密私钥对所述加密结果进行解密,获得所述随机数;所述客户端设备和所述脱敏执行服务器使用所述随机数作为共享密钥进行加密通信。[0074]B10、如B9所述的方法,其中,所述客户端设备使用所述随机数作为密钥,基于预设的对称加密算法对所述数据脱敏指令进行对称加密,并将加密后的数据脱敏指令发送给所述脱敏执行服务器;所述脱敏执行服务器使用所述随机数并基于所述对称加密算法对加密后的数据脱敏指令进行解密,获取所述数据脱敏指令。[0075]B11、如B9所述的方法,其中,所述数据脱敏指令携带的数据脱敏规则信息包括:敏感数据类型、与敏感数据类型对应的脱敏算法;所述脱敏执行服务器基于所述数据脱敏规则信息配置与所述数据源服务器对应的数据脱敏规则模板,其中,所述数据脱敏规则模板中的数据脱敏规则包括:敏感数据类型以及对其进行脱敏采用的脱敏算法;所述脱敏数据处理模块在执行脱敏任务时,获取所述数据脱敏规则模板中的数据脱敏规则对所述原始数据进行分析,定位所述原始数据中的敏感信息,确定此敏感信息的敏感数据类型以及对应的脱敏算法,调用确定的脱敏算法生成与此敏感信息对应的替换信息并进行替换。[0076]B12、如B11所述的方法,其中,所述客户端设备将脱敏算法更新包上传到所述脱敏执行服务器;所述脱敏执行服务器根据预设的脱敏算法包名获取所述脱敏算法更新包,并在所述脱敏算法更新包中查找与所述脱敏算法对应的目标类;所述脱敏执行服务器利用java反射机制,在所述目标类中获取与所述脱敏算法对应的新脱敏计算目标方法以及属性,调用所述新脱敏计算目标方法以及属性生成与此敏感信息对应的替换信息并进行替换。[0077]B13、如B12所述的方法,其中,所述数据脱敏指令携带的信息包括:源数据库的连接信息和鉴权信息、目标数据库的连接信息和鉴权信息;所述脱敏执行服务器根据所述源数据库的连接信息和鉴权信息与所述数据源服务器中的源数据库建立源数据库连接;所述脱敏执行服务器通过所述源数据库连接获取所述源数据库中待读取的数据记录的总条数;基于所述总条数设置分页,生成分页查询语句,其中,所述分页查询语句中包含有待读取的起始数据的主键值、读取数据的数量;所述脱敏执行服务器依次向所述源数据库发送分页查询语句,分页提取所述源数据库中的数据,得到分页数据,基于所述数据脱敏规则对所述分页数据执行脱敏操作并生成分页脱敏数据;所述脱敏执行服务器根据所述目标数据库的连接信息和鉴权信息与所述目标服务器中的目标数据库建立目标数据库连接,通过所述目标数据库连接将所述分页脱敏数据发送至所述目标数据库进行存储;其中,所述源数据库连接和所述目标数据库连接包括:jdbc连接、ODBC连接。[0078]B14、如B13所述方法,其中,所述脱敏执行服务器与所述数据源服务器中的源数据库建立源数据流管道;所述源数据库从源数据又件中提取原始数据,所述源数据库基于预设的管道数据格式将此原始数据封装为原数据对象,将所述原数据对象写入源数据流管道;所述脱敏执行服务器从所述源数据流管道中读取所述原数据对象,基于所述数据脱敏规则对所述原数据对象执行脱敏操作并生成脱敏数据;所述脱敏执行服务器与所述目标服$器中的目标数据库建立目标数据流管道,将此脱敏数据根据所述管道数据格式封装为脱,数据对象,将所述脱敏数据对象写入目标数据流管道;所述目标数据库从目标数据流管道中获取所述脱敏数据对象,并将脱敏数据对象中的脱敏数据存储在目标数据文件中。

权利要求:1.一种数据脱敏系统,其特征在于,包括:数据源服务器,用于存储原始数据;目标服务器,用于存储脱敏数据;脱敏执行服务器,用于接收客户端设备发送的数据脱敏指令,根据所述数据脱敏指令从所述数据源服务器中读取原始数据放入内存中,在内存中执行脱敏操作生成脱敏数据,并将所述脱敏数据发送至所述目标服务器存储;其中,所述脱敏操作包括:基于预设的数据脱敏规则对所述原始数据中的敏感信息进行定位并生成与敏感信息对应的替换信息、将所述原始数据中的敏感信息替换为对应的替换信息生成所述脱敏数据。2.如权利要求1所述的系统,其特征在于,所述客户端设备包括:连接建立模块、第一加解密模块;所述脱敏执行服务器包括:证书管理模块和第二加解密模块;所述连接建立模块,用于与所述脱敏执行服务器建立HTTPs连接;所述第一加解密模块,用于向所述脱敏执行服务器发送数字证书请求;所述证书管理模块,用于将与所述客户端设备相对应的数字证书通过所述HTTPs连接发送给所述客户端设备,其中,所述数字证书包含加密公钥;所述第一加解密模块,还用于基于TLS协议解析所述数字证书并验证所述加密公钥是否有效,如果是,则生成一组随机数,使用所述加密公钥加密所述随机数,并将所述随机数的加密结果发送给所述脱敏执行服务器;所述第二加解密模块,用于使用加密私钥对所述加密结果进行解密,获得所述随机数;其中,所述客户端设备和所述脱敏执行服务器使用所述随机数作为共享密钥进行加密通信。3.如权利要求2所述的系统,其特征在于,所述客户端设备包括:指令发送模块;所述第一加解密模块,还用于使用所述随机数作为密钥,基于预设的对称加密算法对所述数据脱敏指令进行对称加密;所述指令发送模块,用于将加密后的数据脱敏指令发送给所述脱敏执行服务器;所述第二加解密模块,还用于使用所述随机数并基于所述对称加密算法对加密后的数据脱敏指令进行解密,获取所述数据脱敏指令。4.如权利要求2所述的系统,其特征在于,所述数据脱敏指令携带的数据脱敏规则信息包括:敏感数据类型、与敏感数据类型对应的脱敏算法;所述脱敏执行服务器,包括:脱敏规则建立模块,用于基于所述数据脱敏规则信息配置与所述数据源服务器对应的数据脱敏规则模板,其中,所述数据脱敏规则模板中的数据脱敏规则包括:敏感数据类型以及对其进行脱敏采用的脱敏算法;脱敏数据处理模块,用于在执行脱敏任务时,获取所述数据脱敏规则模板中的数据脱敏规则对所述原始数据进行分析,定位所述原始数据中的敏感信息,确定此敏感信息的敏感数据类型以及对应的脱敏算法,调用确定的脱敏算法生成与此敏感信息对应的替换信息并进行替换。5.如权利要求4所述的系统,其特征在于,所述客户端设备将脱敏算法更新包上传到所述脱敏执行服务器;所述脱敏数据处理模块,还用于根据预设的脱敏算法包名获取所述脱敏算法更新包,并在所述脱敏算法更新包中查找与所述脱敏算法对应的目标类;利用java反射机制,在所述目标类中获取与所述脱敏算法对应的新脱敏计算目标方法以及属性,调用所述新脱敏计算目标方法以及属性生成与此敏感信息对应的替换信息并进行替换。6.如权利要求5所述的系统,其特征在于,所述数据脱敏指令携带的信息包括:源数据库的连接信息和鉴权信息、目标数据库的连接信息和鉴权信息;所述脱敏执行服务器,包括:源数据获取模块,用于根据所述源数据库的连接信息和鉴权信息与所述数据源服务器中的源数据库建立源数据库连接;通过所述源数据库连接获取所述源数据库中待读取的数据记录的总条数;基于所述总条数设置分页,生成分页查询语句,其中,所述分页查询语句中包含有待读取的起始数据的主键值、读取数据的数量;依次向所述源数据库发送分页查询语句,分页提取所述源数据库中的数据,得到分页数据;所述脱敏数据处理模块,还用于基于所述数据脱敏规则对所述分页数据执行脱敏操作并生成分页脱敏数据;所述脱敏执行服务器,包括:脱敏数据存储模块,用于根据所述目标数据库的连接信息和鉴权信息与所述目标服务器中的目标数据库建立目标数据库连接,通过所述目标数据库连接将所述分页脱敏数据发送至所述目标数据库进行存储;其中,所述源数据库连接和所述目标数据库连接包括:]_dbc连接、㈤BC连接。7.—种数据脱敏方法,其特征在于,包括:脱敏执行服务器接收客户端设备发送的数据脱敏指令,根据所述数据脱敏指令从数据源服务器中读取原始数据放入内存中;所述脱敏执行服务器在内存中基于预设的数据脱敏规则对所述原始数据中的敏感信息进行定位并生成与敏感信息对应的替换信息,将所述原始数据中的敏感信息替换为对应的替换信息生成所述脱敏数据;所述脱敏执行服务器将所述脱敏数据发送至所述目标服务器存储。8.如权利要求7所述的方法,其特征在于,所述客户端设备与所述脱敏执行服务器建立HTTPs连接;所述客户端设备向所述脱敏执行服务器发送数字证书请求;所述脱敏执行服务器将与所述客户端设备相对应的数字证书通过所述肌了作连接发送给所述客户端设备,其中,所述数字证书包含加密公钥;所述客户端设备基于TLS协议解析所述数字证书并验证所述加密公钥是否有效,如果是,则生成一组随机数,使用所述加密公钥加密所述随机数,并将所述随机数的加密结果发送给所述脱敏执行服务器;所述脱敏执行服务器使用加密私钥对所述加密结果进行解密,获得所述随机数;所述客户端设备和所述脱敏执行服务器使用所述随机数作为共享密钥进行加密通信。9.如权利要求8所述的方法,其特征在于,所述客户端设备使用所述随机数作为密钥,基于预设的对称加密算法对所述数据脱敏指令进行对称加密,并将加密后的数据脱敏指令发送给所述脱敏执行服务器;所述脱敏执行服务器使用所述随机数并基于所述对称加密算法对加密后的数据脱敏指令进行解密,获取所述数据脱敏指令。10.如权利要求8所述的方法,其特征在于,所述数据脱敏指令携带的数据脱敏规则信息包括:敏感数据类型、与敏感数据类型对应的脱敏算法;所述脱敏执行服务器基于所述数据脱敏规则信息配置与所述数据源服务器对应的数据脱敏规则模板,其中,所述数据脱敏规则模板中的数据脱敏规则包括:敏感数据类型以及对其进行脱敏采用的脱敏算法;所述脱敏数据处理模块在执行脱敏任务时,获取所述数据脱敏规则模板中的数据脱敏规则对所述原始数据进行分析,定位所述原始数据中的敏感信息,确定此敏感信息的敏感数据类型以及对应的脱敏算法,调用确定的脱敏算法生成与此敏感信息对应的替换信息并进行替换。

百度查询: 中恒华瑞(北京)信息技术有限公司 数据脱敏系统和方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。