(12)发明专利申请
(10)申请公布号 CN 111914294 A(43)申请公布日 2020.11.10
(21)申请号 202010762510.8(22)申请日 2020.07.31
(71)申请人 中国建设银行股份有限公司
地址 100033 北京市西城区金融大街25号 申请人 建信金融科技有限责任公司(72)发明人 欧阳解文 魏茜 叶俊 (74)专利代理机构 北京三友知识产权代理有限
公司 11127
代理人 许曼 贾磊(51)Int.Cl.
G06F 21/62(2013.01)G06F 16/906(2019.01)
权利要求书3页 说明书15页 附图5页
(54)发明名称
一种数据库敏感数据识别方法及系统(57)摘要
本文提供了一种数据库敏感数据识别方法及系统,其中,方法包括:连接数据库以获取待识别数据;对所述待识别数据进行特征化处理,得到反映所述待识别数据中字段内容信息量变化的特征化数据;根据所述待识别数据中各字段内容的特征化数据及数据特征识别规则,确定所述待识别数据中各字段内容敏感数据分类及脱敏范围;其中,所述数据特征识别规则包括敏感数据分类与包含特征化数据范围的判别规则之间的对应关系及脱敏范围计算规则。本文能够在不掌握数据全貌的情况下也能实施敏感数据发现工作,同时减少敏感数据发现的盲区和人工干预的工作量,具备很好的普适性和应用价值。
CN 111914294 ACN 111914294 A
权 利 要 求 书
1/3页
1.一种数据库敏感数据识别方法,其特征在于,包括:连接数据库以获取待识别数据;
对所述待识别数据进行特征化处理,得到反映所述待识别数据中字段内容信息量变化的特征化数据;
根据所述待识别数据中各字段内容的特征化数据及数据特征识别规则,确定所述待识别数据中各字段内容敏感数据分类及脱敏范围;
其中,所述数据特征识别规则包括敏感数据分类与包含特征化数据范围的判别规则之间的对应关系及脱敏范围计算规则。
2.如权利要求1所述的方法,其特征在于,连接数据库以获取待识别数据,包括:根据用户配置的数据库连接信息及数据量信息,连接数据库以获取待识别数据。3.如权利要求1所述的方法,其特征在于,所述特征化数据至少包括:所述待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp、各字段内容最大长度lmax、各字段内容最大保留长度keepLen。
4.如权利要求3所述的方法,其特征在于,对所述待识别数据进行特征化处理,得到反映所述待识别数据中字段内容信息量变化的特征化数据,包括:
对所述待识别数据按字段进行循环处理,得到各字段内容空置率nullProb、各字段内容最大长度lmax、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy;
根据各字段内容原始信息量originalEntropy,计算各字段最大信息量占比maxEntropyProp;
对所述待识别数据按字段内容截取长度进行循环处理,得到各字段内容最大保留长度keepLen。
5.如权利要求4所述的方法,其特征在于,对所述待识别数据按字段进行循环处理,得到各字段内容空置率nullProb,包括:统计所述待识别数据的各字段内容中数据项总数及数据项为空的个数;
利用各字段内容中数据项为空的个数除以数据项总数,得到各字段内容空置率nullProb。
6.如权利要求4所述的方法,其特征在于,对所述待识别数据按字段进行循环处理,得到各字段内容最大长度lmax,包括:
统计所述待识别数据的各字段内容中各数据项的字符串长度;将各字段内容中最大字符串长度作为各字段内容最大长度lmax。7.如权利要求4所述的方法,其特征在于,对所述待识别数据按字段进行循环处理,得到各字段内容长度信息量lenEntropy,包括:
将所述待识别数据的各字段内容输入至信息熵工具函数中,计算得到各字段内容长度信息量lenEntropy。
8.如权利要求4所述的方法,其特征在于,根据各字段内容原始信息量originalEntropy,计算各字段最大信息量占比maxEntropyProp,包括:
从所有字段内容原始信息量originalEntropy中选择最大原始信息量为
2
CN 111914294 A
权 利 要 求 书
2/3页
theMaxEntropy;
将各字段内容原始信息量originalEntropy与最大原始信息量theMaxEntropy的比值,作为各字段最大信息量占比maxEntropyProp。
9.如权利要求4所述的方法,其特征在于,对所述待识别数据按字段内容截取长度进行循环处理,得到各字段内容最大保留长度keepLen,包括:
对于每一字段,按截取长度从1到该字段内容最大长度lmax的顺序,从该字段内容中各数据项中截取数据,得到多个子内容;
利用信息熵函数,逐一计算各字段中各子内容信息熵splitEntropy;
根据各字段中各子内容的信息熵splitEntropy及各字段内容原始信息量originalEntropy,计算得到各字段中各子内容的信息量占比lenEntProp;
根据各字段中大于预定值的子内容信息量占比lenEntProp对应的截取长度,确定各字段内容的最大保留长度keepLen。
10.如权利要求3所述的方法,其特征在于,根据所述待识别数据中各字段内容的特征化数据及数据特征识别规则,确定所述待识别数据中各字段内容敏感数据分类及脱敏范围,包括:
根据所述待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp及所述对应关系,确定各字段内容敏感数据分类;
根据待识别数据中各字段内容的最大长度lmax、各字段内容的最大保留长度keepLen及所述脱敏范围计算规则,确定各字段的脱敏范围。
11.如权利要求7所述的方法,其特征在于,根据所述待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp及所述对应关系,确定各字段内容敏感数据分类,包括:
根据所述待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp从所述对应关系中查找符合的判别规则;
将查找出的判别规则对应的敏感数据分类作为所述待识别数据中字段内容敏感数据分类。
12.如权利要求7所述的方法,其特征在于,根据待识别数据中各字段内容最大长度lmax、各字段内容最大保留长度keepLen及所述脱敏范围计算规则,确定各字段的脱敏范围,包括:
按所述脱敏范围计算规则,根据各字段内容最大保留长度keepLen确定开始脱敏位置,根据各字段内容最大长度lmax确定结束脱敏位置。
13.一种数据库敏感数据识别系统,其特征在于,包括:数据库连接模块,用于连接数据库以获取待识别数据;特征化处理模块,用于对所述待识别数据进行特征化处理,得到反映所述待识别数据中字段内容信息量变化的特征化数据;
敏感数据识别模块,用于根据所述待识别数据中各字段内容的特征化数据及数据特征
3
CN 111914294 A
权 利 要 求 书
3/3页
识别规则,确定所述待识别数据中各字段内容敏感数据分类及脱敏范围;
其中,所述数据特征识别规则包括敏感数据分类与包含特征化数据范围的判别规则之间的对应关系及脱敏范围计算规则。
14.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至12中任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行计算机程序,所述计算机程序被处理器执行时实现权利要求1至12中任一项所述的方法。
4
CN 111914294 A
说 明 书
一种数据库敏感数据识别方法及系统
1/15页
技术领域
[0001]本文涉及数据库数据分析领域,尤其涉及一种数据库敏感数据识别方法及系统。背景技术
[0002]在当前这个数据时代,数据已成为企业的核心资产,对数据资产的安全保护、有效掌握和合理利用都是企业关注的重要命题。对于掌握大量结构化数据的企业,无论是大量分散独立的应用数据库,还是存储海量数据的数据仓库,都需要一种简单、实用、有效的数据库扫描工具,探明敏感数据的分布,实现分级分类管理。现有的敏感数据识别方案的显著特点是,基于已经掌握的敏感数据或者明确了什么数据敏感,再设计规则或模型去识别发现敏感数据。现有敏感数据识别方案存在如下缺陷:[0003]1)只有知道敏感数据存在,才能去发现敏感数据。对于组织上的变动而导致的数据拥有者变更等情况是普遍存在的,新的数据拥有者可能并不知道敏感数据的存在,这就极易造成数据安全事故的产生。
[0004]2)只能识别已知敏感数据,无法识别未知敏感数据。现有技术中敏感数据发现一般是针对已知的敏感数据字段预设发现规则,并不能发现潜在的或者未知的敏感数据。这就给敏感数据发现造成了盲区,存在潜在数据安全隐患。[0005]3)需要针对不同的敏感数据设置不同的规则,具有识别繁琐、实用性低、人工介入多的问题。
[0006]4)未对敏感数据进行分等级及分类,不便于敏感数据的管理。[0007]5)人工确定脱敏策略的方式存在人工工作量大的问题。
发明内容
[0008]本文用于解决现有技术中存在的如下缺陷:只能识别已知敏感数据,无法识别未知敏感数据;不同的敏感数据的识别具有不同的规则,且需要人工确定脱敏策略,具有识别繁琐、实用性低、人工介入多的问题;未对敏感数据进行分类及分等级,不便于敏感数据的管理。
[0009]为了解决上述技术问题,本文的第一方面提供一种数据库敏感数据识别方法,包括:
[0010]连接数据库以获取待识别数据;
[0011]对所述待识别数据进行特征化处理,得到反映所述待识别数据中字段内容信息量变化的特征化数据;
[0012]根据所述待识别数据中各字段内容的特征化数据及数据特征识别规则,确定所述待识别数据中各字段内容敏感数据分类及脱敏范围;[0013]其中,所述数据特征识别规则包括敏感数据分类与包含特征化数据范围的判别规则之间的对应关系及脱敏范围计算规则。[0014]进一步实施例中,连接数据库以获取待识别数据,包括:
5
CN 111914294 A[0015]
说 明 书
2/15页
根据用户配置的数据库连接信息及数据量信息,连接数据库以获取待识别数据。
[0016]进一步实施例中,所述特征化数据至少包括:
[0017]所述待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp、各字段内容最大长度lmax、各字段内容最大保留长度keepLen。[0018]进一步实施例中,对所述待识别数据进行特征化处理,得到反映所述待识别数据中字段内容信息量变化的特征化数据,包括:
[0019]对所述待识别数据按字段进行循环处理,得到各字段内容空置率nullProb、各字段内容最大长度lmax、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy;
[0020]根据各字段内容原始信息量originalEntropy,计算各字段最大信息量占比maxEntropyProp;
[0021]对所述待识别数据按字段内容截取长度进行循环处理,得到各字段内容最大保留长度keepLen。
[0022]进一步实施例中,根据各字段内容原始信息量originalEntropy,计算各字段最大信息量占比maxEntropyProp,包括:
[0023]从所有字段内容原始信息量originalEntropy中选择最大原始信息量为theMaxEntropy;
[0024]将各字段内容原始信息量originalEntropy与最大原始信息量theMaxEntropy的比值,作为各字段最大信息量占比maxEntropyProp。[0025]进一步实施例中,对所述待识别数据按字段内容截取长度进行循环处理,得到各字段内容最大保留长度keepLen,包括:[0026]对于每一字段,按截取长度从1到该字段内容最大长度lmax的顺序,从该字段内容中各数据项中截取数据,得到多个子内容;[0027]利用信息熵函数,逐一计算各字段中各子内容信息熵splitEntropy;
[0028]根据各字段中各子内容的信息熵splitEntropy及各字段内容原始信息量originalEntropy,计算得到各字段中各子内容的信息量占比lenEntProp;
[0029]根据各字段中大于预定值的子内容信息量占比lenEntProp对应的截取长度,确定各字段内容的最大保留长度keepLen。[0030]进一步实施例中,对所述待识别数据按字段进行循环处理,得到各字段内容空置率nullProb,包括:统计所述待识别数据的各字段内容中数据项总数及数据项为空的个数;[0031]利用各字段内容中数据项为空的个数除以数据项总数,得到各字段内容空置率nullProb。
[0032]进一步实施例中,对所述待识别数据按字段进行循环处理,得到各字段内容最大长度lmax,包括:
[0033]统计所述待识别数据的各字段内容中各数据项的字符串长度;[0034]将各字段内容中最大字符串长度作为各字段内容最大长度lmax。[0035]进一步实施例中,对所述待识别数据按字段进行循环处理,得到各字段内容长度信息量lenEntropy,包括:
6
CN 111914294 A[0036]
说 明 书
3/15页
将所述待识别数据的各字段内容输入至信息熵工具函数中,计算得到各字段内容
长度信息量lenEntropy。[0037]进一步实施例中,根据所述待识别数据中各字段内容的特征化数据及数据特征识别规则,确定所述待识别数据中各字段内容敏感数据分类及脱敏范围,包括:[0038]根据所述待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp及所述对应关系,确定各字段内容敏感数据分类;[0039]根据待识别数据中各字段内容的最大长度lmax、各字段内容的最大保留长度keepLen及所述脱敏范围计算规则,确定各字段的脱敏范围。[0040]进一步实施例中,根据所述待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp及所述对应关系,确定各字段内容敏感数据分类,包括:[0041]根据所述待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp从所述对应关系中查找符合的判别规则;
[0042]将查找出的判别规则对应的敏感数据分类作为所述待识别数据中字段内容敏感数据分类。
[0043]进一步实施例中,根据待识别数据中各字段内容最大长度lmax、各字段内容最大保留长度keepLen及所述脱敏范围计算规则,确定各字段的脱敏范围,包括:[0044]按所述脱敏范围计算规则,根据各字段内容最大保留长度keepLen确定开始脱敏位置,根据各字段内容最大长度lmax确定结束脱敏位置。[0045]本文的第二方面,提供一种数据库敏感数据识别系统,包括:[0046]数据库连接模块,用于连接数据库以获取待识别数据;[0047]特征化处理模块,用于对所述待识别数据进行特征化处理,得到反映所述待识别数据中字段内容信息量变化的特征化数据;[0048]敏感数据识别模块,用于根据所述待识别数据中各字段内容的特征化数据及数据特征识别规则,确定所述待识别数据中各字段内容敏感数据分类及脱敏范围;[0049]其中,所述数据特征识别规则包括敏感数据分类与包含特征化数据范围的判别规则之间的对应关系及脱敏范围计算规则。[0050]进一步实施例中,所述特征化数据至少包括:
[0051]所述待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp、各字段内容最大长度lmax、各字段内容最大保留长度keepLen。[0052]进一步实施例中,所述特征化处理模块包括:[0053]第一特征化单元,用于对所述待识别数据按字段进行循环处理,得到各字段内容空置率nullProb、各字段内容最大长度lmax、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy;[0054]第二特征化单元,用于根据各字段内容原始信息量originalEntropy,计算各字段最大信息量占比maxEntropyProp;
7
CN 111914294 A[0055]
说 明 书
4/15页
第三特征化单元,用于对所述待识别数据按字段内容截取长度进行循环处理,得
到各字段内容最大保留长度keepLen。[0056]进一步实施例中,所述第二特征化单元根据各字段内容原始信息量originalEntropy,计算各字段最大信息量占比maxEntropyProp,包括:
[0057]从所有字段内容原始信息量originalEntropy中选择最大原始信息量为theMaxEntropy;
[0058]将各字段内容原始信息量originalEntropy与最大原始信息量theMaxEntropy的比值,作为各字段最大信息量占比maxEntropyProp。[0059]进一步实施例中,所述第三特征化单元对所述待识别数据按字段内容截取长度进行循环处理,得到各字段内容最大保留长度keepLen,包括:[0060]对于每一字段,按截取长度从1到该字段内容最大长度lmax的顺序,从该字段内容中各数据项中截取数据,得到多个子内容;[0061]利用信息熵函数,逐一计算各字段中各子内容信息熵splitEntropy;
[0062]根据各字段中各子内容的信息熵splitEntropy及各字段内容原始信息量originalEntropy,计算得到各字段中各子内容的信息量占比lenEntProp;
[0063]根据各字段中大于预定值的子内容信息量占比lenEntProp对应的截取长度,确定各字段内容的最大保留长度keepLen。[0064]进一步实施例中,所述敏感数据识别模块包括:[0065]敏感数据分类识别单元,用于根据所述待识别数据中各字段内容空置率nullProb、各字段内容最大信息量占比maxEntropy、各字段内容长度信息量lenEntropy、各字段原始信息量originalEntropy及所述对应关系,确定各字段内容敏感数据分类;[0066]脱敏范围识别单元,用于根据待识别数据中各字段内容的最大长度lmax、各字段内容的最大保留长度keepLen及所述脱敏范围计算规则,确定各字段的脱敏范围。[0067]进一步实施例中,所述敏感数据分类识别单元具体用于:[0068]根据所述待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp从所述对应关系中查找符合的判别规则;
[0069]将查找出的判别规则对应的敏感数据分类作为所述待识别数据中字段内容敏感数据分类。
[0070]进一步实施例中,所述脱敏范围识别单元具体用于:[0071]按所述脱敏范围计算规则,根据各字段内容最大保留长度keepLen,确定开始脱敏位置;根据各字段内容最大长度lmax确定结束脱敏位置。[0072]本文的第三方面提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述任一实施例所述的方法。
[0073]本文的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行计算机程序,所述计算机程序被处理器执行时实现前述任一实施例所述的方法。
[0074]本文提供的数据库敏感数据识别方法及系统通过对待识别数据进行特征化处理,能够得到反映待识别数据中字段内容信息量变化的特征化数据,根据待识别数据中各字段
8
CN 111914294 A
说 明 书
5/15页
内容的特征化数据及数据特征识别规则,确定待识别数据中各字段内容敏感数据分类及脱敏范围,能够实现如下技术效果:
[0075]1)在不完全掌握数据的情况下,可以识别敏感数据,发现海量数据中潜在的敏感数据;
[0076]2)采用通用统一的数据特征识别规则,降低使用门槛和减少工作量;[0077]3)对敏感数据进行细致的分类,有利于数据的进一步细化管理;[0078]4)在保证数据有较强的脱敏安全程度下,可以给出敏感数据的建议脱敏范围,很大程度上解决数据安全与数据挖掘分析间的权衡取舍难题。[0079]为让本文的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。附图说明
[0080]为了更清楚地说明本文实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本文的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0081]图1示出了本文实施例数据库敏感数据识别方法的流程图;[0082]图2示出了本文实施例待识别数据的二维结构图;
[0083]图3示出了本文实施例敏感数据分类及脱敏范围确定过程的流程图;[0084]图4示出了本文实施例识别结果的展示示意图;
[0085]图5示出了本文实施例数据库敏感数据识别系统的结构图;[0086]图6示出了本文实施例特征化处理模块的结构图
[0087]图7示出了本文实施例敏感数据识别模块的结构图;[0088]图8示出了本文实施例计算机设备的结构图。[0089]附图符号说明:[0090]802、计算机设备;[0091]804、处理器;[0092]806、存储器;[0093]808、驱动机构;[0094]810、输入/输出模块;[0095]812、输入设备;[0096]814、输出设备;[0097]816、呈现设备;[0098]818、图形用户接口;[0099]820、网络接口;[0100]822、通信链路;[0101]824、通信总线。
9
CN 111914294 A
说 明 书
6/15页
具体实施方式
[0102]下面将结合本文实施例中的附图,对本文实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本文一部分实施例,而不是全部的实施例。基于本文中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本文保护的范围。
[0103]本文中用到的术语解释如下:[0104]待识别数据:指用户数据库中的数据,或者是终端用户所存储使用的各种数据,是未经过处理或简化的数据,这些数据可能是也可能不是机器可读形式。[0105]敏感数据:指含有个人敏感信息的数据,常见的有姓名、身份证号码、住址、电话、银行账号、邮箱、密码、医疗信息、教育背景等。[0106]数据脱敏:指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。
[0107]如图1所示,图1示出了本文实施例的数据库敏感数据识别方法的流程图。本实施例能够在不掌握数据全貌的情况下也能实施敏感数据发现工作,同时减少敏感数据发现的盲区和人工干预的工作量,具备很好的普适性和应用价值。具体的,数据库敏感数据识别方法包括:
[0108]步骤100,连接数据库以获取待识别数据。[0109]实施时,可根据配置文件连接数据库,配置文件中记录了数据库连接信息及相关性能参数信息,其中,数据库连接信息包括数据库的驱动程序类型,例如com.mysql.jdbc.Driver、连接地址url、数据库用户名、密码等必要的连接信息,相关性能参数信息包括获取数据量。通过数据库连接信息可以连接到指定数据库,支持的数据库类型例如为mysql关系型数据库,基于Hapdoop的hive等大数据仓库。通过相关性能参数信息能够限制获取表的数据量,以减少计算资源和保证执行效率。连接数据库后,先获取表的元数据,包括所有表名以及表的字段名称、字段类型、字段注释,然后获取表的数据内容,表的数据内容与表的元数据共同构成待识别数据,表的数据内容如图2所示,是一个m×n的二维结构,其中,m为表的行数,n为表的列数,一般情况下,表的列与表的字段同义通用,对应表的字段内容集合表示为对应表的列数据集合表示为{col1,col2,…,coli,…,coln},coli表示第i列数据,i取值{1,2,…,n},n对应表的列数,coli对应的集合表示为{d1i,d2i,dji,…,dmi},dji表示一列数据的第j个数据项,j取值{1,2,…,m},m对应为表的行数。[0110]步骤200,对所述待识别数据进行特征化处理,得到反映所述待识别数据中字段内容信息量变化的特征化数据。
[0111]该步骤为识别敏感数据的基础性工作,若待识别数据中存在非字符类型数据,本步骤在执行前,需将非字符类型数据转换为字符类型数据。
[0112]特征化处理的过程是指将待识别数据按一定计算过程转化为少量的反映待识别数据中字段内容信息量变化的特征化数据的过程。本文对特征化数据具体为何不做限定,凡是能够反映待识别数据中字段内容信息变化量的数据均指本文所述的特征化数据,例如空置率、信息量(通过信息熵计算得到)等。[0113]步骤300,根据所述待识别数据中各字段内容的特征化数据及数据特征识别规则,确定所述待识别数据中各字段内敏感数据分类及脱敏范围,其中,所述数据特征识别规则
10
CN 111914294 A
说 明 书
7/15页
包括敏感数据分类与包含特征化数据范围的判别规则之间的对应关系及脱敏范围计算规则。
[0114]详细的说,敏感数据分类可预先根据数据所属行业需求进行设定,数据特征识别规则可预先根据特征化数据进行设定,本文对此不作限定,数据所属行业及识别出的特征化数据不同,对应的数据特征识别规则也可以不同。[0115]一些实施方式中,敏感数据分类具体可以用敏感数据级别表示,例如敏感数据级别分为1至5,级别越高、敏感程度越高。其它实施方式中,敏感数据分类还可以用敏感数据级别名称表示,例如敏感数据级别名称为不含敏感信息、可指定敏感信息、敏感信息、半识别信息、可识别信息等。脱敏范围用于限定脱敏字符的范围,实施时,可根据脱敏范围对字段内容进行脱敏,例如地址字段,分析出的脱敏范围9_16,则需要对第10位至第16位的范围进行加密处理,具体实施时,可通过加*的实现脱敏,本文对具体脱敏方法不做限定。[0116]以一具有一百多个字段的个人信息表为例,经过步骤100~步骤300,能够快速识别出敏感数据分类及脱敏范围。
[0117]本实施例提供的数据库敏感数据识别方法能够实现如下技术效果:[0118]一、本方案针对敏感数据的识别分级提出了通用的数据特征识别规则,不需在使用时针对性的预设识别规则。在使用时只需要配置数据库的连接信息,即可扫描全部数据库表数据,自动识别出敏感数据分类。不针对特定字段或特定范围字段的数据特征识别规则,将有效提高实用性和便利性,减少设置规则的人工介入工作量及使用门槛,避免未被预设识别规则针对的敏感数据被遗落的风险。在数据库和表数量巨大时将更加凸显价值,节约大量的人力成本投入,在短时间内全面掌握敏感数据的分布情况。[0119]二、基于统一的数据特征识别规则可以细化敏感数据分类,解决了敏感数据分类问题。
[0120]三、本文根据能够反映字段内容信息变化量的特征化数据,给出了建议的脱敏范围。脱敏范围是在尽量保障字段内容安全的前提下,尽量保留数据内容的挖掘价值。面向脱敏后的数据进行数据挖掘分析,可以更加有利于数据分析应用环境的提供,减少了诸如专网专机(即专业内容及专用数据分析计算机)、摄像头监控等数据使用环境的投入成本。[0121]本文一实施例中,为了提高识别精度及速度,上述步骤200得到的反映待识别数据中字段内容信息变化量的特征化数据如表1所示,至少包括:待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、最大信息量占比maxEntropyProp、各字段内容最大长度lmax、各字段内容截取保留长度keepLen。以身份证号字段为例,得到的特征化数据例如为[0,0.069890771,8.897845456,1.0,9,18]。[0122]表1
[0123]
特征化数据简称nullProblenEntropy
originalEntropymaxEntropyPropkeepLen特征化数据名称字段内容空置率
字段内容长度信息量字段内容原始信息量字段最大信息量占比字段内容最大保留长度
11
用途
敏感识别敏感识别敏感识别敏感识别脱敏范围开始
CN 111914294 A
说 明 书
8/15页
lmax字段内容的最大长度脱敏范围结束
[0124]下面详细叙述这些特征的计算过程:[0125]1)各字段内容空置率nullProb、各字段内容最大长度lmax、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy。[0126]按字段对待识别数据进行循环处理,即逐一对待识别数据中各字段内容进行处理,可以得到各字段内容空置率nullProb、各字段内容最大长度lmax、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy。具体的,计算过程包括:[0127](1)各字段内容空置率nullProb[0128]对于任一字段内容coli,统计该字段内容coli中数据项总数及数据项为空的个数,利用该字段内容coli中数据项为空的个数除以数据项总数该字段内容coli中数据项dji为空的占比,将统计得到的占比作为该字段内容coli空置率nullProb。[0129](2)各字段内容最大长度lmax[0130]对于任一字段内容coli,统计该字段内容coli中各数据项dji的字符串长度,将统计得到的长度集合{l1,l2,…,lm}中最大长度记为该字段内容最大长度lmax。[0131](3)各字段内容原始信息量originalEntropy[0132]对于任一字段内容coli,将该字段内容coli输入信息熵工具函数H(U)中,计算得到该字段内容原始信息量originalEntropy。
[0133]原始信息量用于描述字段内容的不确定程度。信息熵的使用说明如下,在数据信息源中,需要考虑数据源所有可能发生情况的平均不确定性。例如最简单的单符号信息源仅取0和1两个元素,其概率为P和Q=1-P。若数据源符号有n种取值:U1…Ui…Un,对应概率为:P1…Pi…Pn,且各种符号的出现彼此独立。这时,数据源的平均不确定性应当为单个符号不确定性-logPi的统计平均值(E),可称为信息熵,即
式中对数取2为底,单位为比特。
(4)各字段内容长度信息量lenEntropy[0135]对于任一字段内容coli,确定该字段中各数据项字符串长度集合{l1,l2,…,lm},将该字段各数据项字符串长度集合{l1,l2,…,lm}输入信息熵工具函数H(U)中,计算得到该字段内容长度信息量lenEntropy,长度信息量用于描述字段中各数据项字符长度的不确定程度。
[0136]2)各字段最大信息量占比maxEntropyProp
[0137]根据各字段内容原始信息量originalEntropy,计算各字段最大信息量占比maxEntropyProp。具体的,计算过程包括:
[0138]从所有字段内容原始信息量originalEntropy中选择最大原始信息量为theMaxEntropy,对于每一字段内容原始信息量originalEntropy,求该字段内容原始信息量originalEntropy与最大原始信息量theMaxEntropy的比值,得到的比值为该字段最大信息量占比maxEntropyProp,其取值范围为0~1。[0139]3)各字段内容最大保留长度keepLen
[0140]对待识别数据按字段内容截取长度进行循环处理,得到各字段内容最大保留长度keepLen。详细的说,截取长度为需要从各字段内容的数据项中提取的字符量,若数据项的长度小于截取长度,则将截取数据项中所有的数据,若数据项的长度大于截取长度,则仅从
12
[0134]
CN 111914294 A
说 明 书
9/15页
数据项中截取截取长度的数据。具体的,各字段内容最大保留长度keepLen计算过程包括:[0141](1)对于每一字段,按截取长度从1到该字段内容最大长度lmax的顺序,从该字段内容的各数据项中截取数据,得到多个子内容。例如某一字段的内容如表2所示,该字段内容最大长度lmax为3,按截取长度从1至3的顺序,从该字段中截取各数据项中截取数据,得到的子内容为{5,3,1},{5,35,10},{5,35,101}。[0142]表2
年龄535101
[0144]对于各字段内容,随着截取长度的增长,各字段保留的内容也越来越多,即保留下来的信息量也越来越多,信息量可由信息熵计算得到,信息量的增量过程反映数据内容的规则性变化过程。[0145](2)利用信息熵函数,逐一计算各字段中各子内容信息熵splitEntropy。[0146](3)根据各字段中各子内容信息熵splitEntropy及各字段内容原始信息量originalEntropy,计算得到各字段中各子内容信息量占比lenEntProp。[0147]具体实施时,利用各字段中各子内容信息熵splitEntropy除以各字段内容原始信息量originalEntropy,可以得到各字段中各子内容信息量占比lenEntProp。[0148](4)根据各字段中大于预定值的子内容信息量占比lenEntProp对应的截取长度,确定各字段内容的最大保留长度keepLen,即各字段内容开始脱敏的位置。[0149]预定值可根据实际需求进行设定,一些具体实施方式中,预定值取0.9。[0150]进一步的,如图3所示,上述步骤300根据所述待识别数据中各字段内容的特征化数据及数据特征识别规则,确定所述待识别数据中各字段内容敏感数据分类及脱敏范围,包括:
[0151]步骤310,根据待识别数据中各字段内容空置率nullProb、各字段内容最大信息量maxEntropy、各字段内容长度信息量lenEntropy、各字段中原始信息量originalEntropy及所述对应关系,确定各字段内容敏感数据分类。[0152]其中,敏感数据分类用敏感数据级别及敏感数据级别名称表示,其划分如表3所示,数据特征识别规则如表4所示。[0153]表3
[0143]
13
CN 111914294 A
说 明 书
10/15页
[0154]
本实施方式将敏感数据划分为5个敏感分类,由高到低对应数据的敏感程度。相对
于敏感与不敏感的二分类,更多的敏感数据分类有益于数据的详细分类,便于针对不同的敏感数据分类选择适配不同数据脱敏策略。同时,敏感数据分类可作为数据字典的补充信息,在数据使用时提供字段范围的选择参考,尤其是在刚接触数据字段多的宽表时。在数据中心数据表多的情况,也可根据敏感数据分类查看表的字段,快速掌握大量表的核心字段的分布情况,有利于普遍提高表数据的利用率,避免数据沉睡价值流失。[0156]表4
[0155]
14
CN 111914294 A
说 明 书
11/15页
[0157]
[0158]
表4所示判别规则中特征化参数取值可根据需求进行配置,本文对此不作具体限
定。
详细的说,上述步骤310具体实施过程包括:根据待识别数据中各字段内容空置率
nullProb、各字段内容最大信息量maxEntropy、各字段内容的长度信息量lenEntropy、各字段中原始信息量originalEntropy从所述对应关系中查找所属的判别规则;将查找出的判别规则对应的敏感数据分类作为所述待识别数据中相应字段的敏感数据分类。[0160]步骤320,根据待识别数据中各字段内容的最大长度lmax、各字段内容的最大保留长度keepLen及脱敏范围计算规则,确定各字段的脱敏范围。[0161]详细的说,脱敏范围计算规则规定:根据各字段内容最大保留长度keepLen,确定开始脱敏位置,本步骤实施时,可将最大保留长度keepLen的下一字符作为开始脱敏位置;根据各字段内容最大长度lmax,确定结束脱敏位置,本步骤实施时,可将各字段内容最大长度lmax作为结束脱敏位置。
[0159]
15
CN 111914294 A[0162]
说 明 书
12/15页
本文提供的数据库敏感数据识别方法通过对待识别数据进行特征化处理,能够得
到反映待识别数据中字段内容信息量变化的特征化数据,根据待识别数据中各字段内容的特征化数据及数据特征识别规则,确定待识别数据中各字段内容敏感数据分类及脱敏范围,能够实现如下技术效果:
[0163]1)在不完全掌握数据的情况下,可以识别敏感数据,发现海量数据中潜在的敏感数据;
[0164]2)采用通用统一的数据特征识别规则,降低使用门槛和减少工作量;[0165]3)对敏感数据进行细致的分类,有利于数据的进一步细化管理;[0166]4)在保证数据有较强的脱敏安全程度下,可以给出敏感数据的建议脱敏范围,很大程度上解决数据安全与数据挖掘分析间的权衡取舍难题。[0167]本文一实施例中,具体实施时,为了便于用户查看和进一步共享识别结果,可将识别结果(敏感数据分类及脱敏范围)输出至配置目录下的结果文件中。输出识别结果后,需将识别结果与对象表的元数据信息(即识别前的待识别数据)进行关联,将关联结果写入结果文件中。结果文件的表结果例如为{数据库表名,字段名,字段类型,字段注释,内容空置率,内容最大长度,执行时间,敏感数据级别,敏感数据级别名称,脱敏范围},如图4所示,脱敏范围可用“m_n”的形式表示,“m_n”的含义为长度为n的字符串,字符串下标从0开始,对下标m位开始的字符进行脱敏处理,例如按照建议的脱敏范围18位的身份证号的部分字符隐藏脱敏效果为“432522199*********”。本实施例能够指导后续数据安全的应用。[0168]基于同一发明构思,本文还提供一种数据库敏感数据识别系统,如下面的实施例所述。由于数据库敏感数据识别系统解决问题的原理与数据库敏感数据识别方法相似,因此数据库敏感数据识别系统的实施可以参见数据库敏感数据识别方法,重复之处不再赘述。具体的,如图5所示,数据库敏感数据识别系统包括:[0169]数据库连接模块510,用于连接数据库,以获取待识别数据。[0170]特征化处理模块520,用于对所述待识别数据进行特征化处理,得到反映所述待识别数据中字段内容信息变化量的特征化数据。[0171]敏感数据识别模块530,用于根据所述待识别数据中各字段内容的特征化数据及数据特征识别规则,确定所述待识别数据中各字段内容敏感数据分类及脱敏范围;[0172]其中,所述数据特征识别规则包括敏感数据分类与包含特征化数据范围的判别规则之间的对应关系及脱敏范围计算规则。[0173]一具体实施例中,所述特征化数据至少包括:待识别数据中各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp、各字段内容最大长度lmax、各字段内容最大保留长度keepLen。其中,各字段内容空置率nullProb、各字段内容原始信息量originalEntropy、各字段内容长度信息量lenEntropy、各字段最大信息量占比maxEntropyProp用于识别字段内容敏感数据分类,各字段内容最大长度lmax、各字段内容最大保留长度keepLen用于识别字段的脱敏范围。[0174]对应的,如图6所示,特征化处理模块520包括:[0175]第一特征化单元521,用于对所述待识别数据按字段进行循环处理,得到各字段内容空置率nullProb、各字段内容最大长度lmax、各字段内容原始信息量originalEntropy、
16
CN 111914294 A
说 明 书
13/15页
各字段内容长度信息量lenEntropy。[0176]实施时,第一特征化单元521对待识别数据字段进行循环处理过程包括逐一对待识别数据中各字段内容coli进行如下处理:统计该字段内容coli中数据项dji为空的占比,将统计得到的占比作为该字段内容coli空置率nullProb;统计该字段内容coli中各数据项字符串的长度,将统计得到的长度集合{l1,l2,…,lm}中最大长度记为该字段内容最大长度lmax;将该字段内容coli输入信息熵工具函数H(U)中,计算得到该字段内容原始信息量originalEntropy;确定该字段中各数据项字符串长度集合{l1,l2,…,lm},将该字段各数据项字符串长度集合{l1,l2,…,lm}输入信息熵工具函数H(U)中,计算得到该字段内容长度信息量lenEntropy。
[0177]第二特征化单元522,用于根据各字段内容原始信息量originalEntropy,计算得到各字段最大信息量占比maxEntropyProp。实施时,第二特征化单元522计算各字段最大信息量占比maxEntropyProp过程包括:从所有字段内容原始信息量originalEntropy中选择最大原始信息量为theMaxEntropy;将各字段内容原始信息量originalEntropy与最大原始信息量theMaxEntropy的比值,作为各字段最大信息量占比maxEntropyProp。[0178]第三特征化单元523,用于对所述待识别数据按字段内容截取长度进行循环处理,得到各字段内容最大保留长度keepLen。实施时,第三特征化单元523计算过程包括:对于每一字段,按截取长度从1到该字段内容最大长度lmax的顺序,从该字段内容中各数据项中截取数据,得到多个子内容;利用信息熵函数,逐一计算各字段中各子内容信息熵splitEntropy;根据各字段中各子内容的信息熵splitEntropy及各字段内容原始信息量originalEntropy,计算得到各字段中各子内容的信息量占比lenEntProp;根据各字段中大于预定值的子内容信息量占比lenEntProp对应的截取长度,确定各字段内容的最大保留长度keepLen。
[0179]如图7所示,图7示出了本文实施例敏感数据识别模块的结构图。具体的,敏感数据识别模块包括:
[0180]敏感数据分类识别单元531,用于根据待识别数据中各字段内容空置率nullProb、各字段内容最大信息量占比maxEntropy、各字段内容长度信息量lenEntropy、各字段原始信息量originalEntropy及所述对应关系,确定各字段内容敏感数据分类。具体的,敏感数据分类识别单元531处理过程包括:根据待识别数据中各字段内容空置率nullProb、各字段内容最大信息量maxEntropy、各字段内容的长度信息量lenEntropy、各字段中原始信息量originalEntropy从所述对应关系中查找所属的判别规则;将查找出的判别规则对应的敏感数据分类作为所述待识别数据中相应字段的敏感数据分类。[0181]脱敏范围识别单元532,用于根据待识别数据中各字段内容的最大长度lmax、各字段内容的最大保留长度keepLen及所述脱敏范围计算规则,确定各字段的脱敏范围。具体的,脱敏范围识别单元532具体用于按脱敏范围计算规则规定,根据各字段内容最大保留长度keepLen,确定开始脱敏位置;根据各字段内容最大长度lmax,确定结束脱敏位置。[0182]本文提供的数据库敏感数据识别系统能够实现如下技术效果:[0183]1)在不完全掌握数据的情况下,可以实施敏感数据发现识别,可以发现海量数据中潜在的敏感数据。
[0184]2)可以不用针对特定的数据字段预设敏感数据识别规则,可以降低使用门槛和减
17
CN 111914294 A
说 明 书
14/15页
少工作量。
[0185]3)可以对敏感数据进行细致的分级分类,有利于数据的进一步细化管理。[0186]4)在保证数据有较强的脱敏安全程度下,可以给出敏感数据的建议脱敏范围,可以很大程度上解决数据安全与数据挖掘分析间的权衡取舍难题。[0187]本文一实施例中,如图8所示,还提供一种计算机设备,计算机设备802可以包括一个或多个处理器804,诸如一个或多个中央处理单元(CPU),每个处理单元可以实现一个或多个硬件线程。计算机设备802还可以包括任何存储器806,其用于存储诸如代码、设置、数据等之类的任何种类的信息,一实施方式中,存储器上存储有可在处理器804上运行的计算机程度,处理器804执行计算机程序时实现前述任一实施例所述的数据库敏感数据识别方法。非限制性的,比如,存储器806可以包括以下任一项或多种组合:任何类型的RAM,任何类型的ROM,闪存设备,硬盘,光盘等。更一般地,任何存储器都可以使用任何技术来存储信息。进一步地,任何存储器可以提供信息的易失性或非易失性保留。进一步地,任何存储器可以表示计算机设备802的固定或可移除部件。在一种情况下,当处理器804执行被存储在任何存储器或存储器的组合中的相关联的指令时,计算机设备802可以执行相关联指令的任一操作。计算机设备802还包括用于与任何存储器交互的一个或多个驱动机构808,诸如硬盘驱动机构、光盘驱动机构等。
[0188]计算机设备802还可以包括输入/输出模块810(I/O),其用于接收各种输入(经由输入设备812)和用于提供各种输出(经由输出设备814))。一个具体输出机构可以包括呈现设备816和相关联的图形用户接口(GUI)818。在其他实施例中,还可以不包括输入/输出模块810(I/O)、输入设备812以及输出设备814,仅作为网络中的一台计算机设备。计算机设备802还可以包括一个或多个网络接口820,其用于经由一个或多个通信链路822与其他设备交换数据。一个或多个通信总线824将上文所描述的部件耦合在一起。[0189]通信链路822可以以任何方式实现,例如,通过局域网、广域网(例如,因特网)、点对点连接等、或其任何组合。通信链路822可以包括由任何协议或协议组合支配的硬连线链路、无线链路、路由器、网关功能、名称服务器等的任何组合。[0190]本文一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述任一实施例所述数据库敏感数据识别方法的步骤。
[0191]本文实施例还提供一种计算机可读指令,其中当处理器执行所述指令时,其中的程序使得处理器执行前述任一实施例所述数据库敏感数据识别方法的步骤。[0192]应理解,在本文的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本文实施例的实施过程构成任何限定。
[0193]还应理解,在本文实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。[0194]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这
18
CN 111914294 A
说 明 书
15/15页
些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本文的范围。
[0195]所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。[0196]在本文所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
[0197]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本文实施例方案的目的。[0198]另外,在本文各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0199]所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本文的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本文各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0200]本文中应用了具体实施例对本文的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本文的方法及其核心思想;同时,对于本领域的一般技术人员,依据本文的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本文的限制。
19
CN 111914294 A
说 明 书 附 图
1/5页
图1
图2
20
CN 111914294 A
说 明 书 附 图
2/5页
图3
21
CN 111914294 A
说 明 书 附 图
3/5页
图4
图5
22
CN 111914294 A
说 明 书 附 图
4/5页
图6
图7
23
CN 111914294 A
说 明 书 附 图
5/5页
图8
24
因篇幅问题不能全部显示,请点此查看更多更全内容