APP下载

面向异构大数据环境的数据脱敏模型

2022-03-08佟玲玲李鹏霄段东圣任博雅李扬曦

北京航空航天大学学报 2022年2期
关键词:脱敏复杂度矩阵

佟玲玲,李鹏霄,段东圣,任博雅,李扬曦

(国家计算机网络应急技术处理协调中心,北京 100029)

近年来,大数据分析技术已经广泛应用在国家治理、企业运行、个人日常生活等方方面面,数据成为重要的生产要素和最热门的基础资源,但同时海量的数据资源中往往蕴含有关用户个人、企业,甚至国家重要行业的敏感、隐私信息,一旦遭到泄露或篡改,可能会给个人、企业甚至国家造成无法挽回的损失。如何在利用自身数据资源进行大数据研究分析的同时,避免敏感信息泄露的风险,成为了大数据分析应用领域众多研究者关注的热点问题。数据脱敏(data masking)又称为数据漂白、数据去隐私化或数据变形,是指在保留数据初始特征的条件下,通过脱敏规则对敏感数据进行数据的变形,避免未经授权的用户非法获取,实现敏感数据在分享和使用过程中的安全保护。数据脱敏可以在保存数据原始特征的同时改变其真实值,在保留数据有效性的同时保持数据的安全性,实现敏感隐私数据的可靠保护,避免敏感数据泄露的风险[1-6]。

目前,相关研究者已经提出了多种方法用于解决数据脱敏相关问题,但主要集中在文本或数据库类型的数据,如k-匿名(k-anonymous)[1]、l-多样性(l-diversity)[7]、t-保密(t-closeness)[8]等,并对传统脱敏方法进行了改进,如Sarada等[9]提出的基于最小最大归一化算法、范围映射脱敏算法,Gujjary和Saxena[10]提出的基于神经网络的自适应脱敏算法,Zhou和Louis[11]提出的基于空间平滑的矩阵屏蔽算法,吴克河等[12]提出的基于敏感信息度量的t-保密改良技术等。国内外研究主要关注具体脱敏方法并取得较多成果,但面向实际应用的数据脱敏系统模型研究较少。Santos等[13]提出了一种针对数据库的脱敏模型,张琦颖[14]和邵华西[15]分别提出了基于Spark分布式计算框架下数据脱敏系统模型,但这类数据脱敏系统模型,在系统内置统一的脱敏规则实现数据库脱敏,或在脱敏方法上的迁移性和普适性尚有欠缺。例如,某些脱敏方法重在数据保护,但会失去一些统计特征,适用于社交数据等数据冗杂性高的场景;某些方法兼顾数据保护和可用性,但计算复杂度高,适用于医疗、金融等数据精度要求高的场景。

随着信息技术的不断发展,文本、图片、音频等异构数据量日益增大,大数据分析应用场景也日趋复杂,在实际生产环境或非可信环境下的数据脱敏需求也各不相同,如何在数据交换、共享及使用等过程中实现对敏感数据的精准定向、高效脱敏,达到数据安全、可信和可用的目标,已经成为了各行业数据产生者、使用者和管理者面临的巨大挑战。

针对异构大数据环境下不同应用场景下差异化的数据脱敏需求,本文提出了一种基于文本、音频、图片和数据库等多样化大数据的数据脱敏模型,该模型可实现不同应用场景下异构敏感数据的自动标注和分级,并通过抽取数据预脱敏处理和脱敏效果评估,实现了多应用场景下异构数据的高效脱敏。

1 数据脱敏基本框架

本文提出的数据脱敏方法基本框架主要包括4个模块,即源数据预处理模块、敏感数据标注模块、数据脱敏模块、脱敏数据输出及恢复模块,具体描述如下:

1)源数据预处理模块。用户提交所需脱敏的源数据及应用场景。源数据的提交形式包括txt、Word、Excel等类型的文本数据,JPG、PNG等类型的图片数据,MP3、WAV等类型的音频数据,MySQL、HIVE等数据库数据;应用场景包括金融、医疗、社交、教育、政府、零售等。该模块将原始数据及应用场景进行解析,并进行统一格式转换,将数据处理成下一模块能够识别的形式,用于敏感数据的识别和脱敏。

2)敏感数据标注模块。该模块面向异构数据类型,采用机器学习方法和特定场景的敏感数据先验知识训练得到不同应用场景下的敏感数据识别模型[16],实现敏感数据和非敏感数据的识别和标注,并且为敏感数据分级(等级为数值1~10,等级越高,则该项数据越敏感)。

3)数据脱敏模块。该模块首先以10%的比例随机抽取样例数据,判断其类型为文本、图片、音频或数据库内容,通过内容的不同,选择内置的多种脱敏方法实现预脱敏操作(文本脱敏包括k-匿名、l-多样性、t-保密、差分隐私、对称加密、非对称加密、保形加密和全同态加密等;图片脱敏包括人脸替换、高斯模糊等;音频脱敏包括空白音频替换等;数据库包括AES加密等)。然后,系统根据内置规则计算数据可用性、数据关联性、隐私保护度、时间复杂度、空间复杂度5个方面的内容,得到多种脱敏方法的脱敏效果评价结果,即多个5维向量,并根据综合评测推荐最合适的脱敏方法。最后,用户根据需求选择合适的脱敏方法,系统完成所有数据的脱敏操作。

4)脱敏数据输出及恢复模块。将上述操作1)识别的敏感数据替换成脱敏后的数据,对授权用户可恢复成用户提交的原始数据格式,实现脱敏数据的授权访问。

2 异构大数据脱敏模型

图1为本文提出的面向异构大数据环境的数据脱敏模型,主要包括脱敏数据预处理、定制化脱敏策略、脱敏任务调度及脱敏数据恢复4部分。该模型集成了针对于文本、图片、音频和数据库4种类型数据的多种脱敏方法,对于数据库脱敏,运用AES对称加密算法对数据源进行脱敏;对于文本脱敏设计8种算法,分别是k-匿名、l-多样性、t-保密、差分隐私、对称加密、非对称加密、保形加密和全同态加密;对于图片数据,针对人脸数据设计替换和高斯模糊方法2种脱敏方式;对于音频数据,设计用空白音频替换敏感音频。此外,本文提出一种脱敏效果评估方法,针对预脱敏的结果,从数据可用性、数据关联性、隐私保护度、时间复杂度、空间复杂度5个方面进行量化评估,得到各种方法预脱敏的评测结果,并且通过不同的权值和影响因子进行综合计算,为用户进行推荐,根据用户选择确定最终的脱敏方法。

图1 异构大数据脱敏模型Fig.1 Data masking model for heterogeneous big data

2.1 脱敏数据预处理

本模块采用灵活配置的方式,支持用户实现对敏感数据的选择功能。在智能识别敏感数据的基础上,操作人员可以将敏感数据指定具体数据源、数据库、数据表及具体的属性字段上,以应对不同的业务需求。后续算法会根据用户的选择和定义将被指定为敏感的数据进行脱敏处理,而其他未指定的数据则保持不变。本模块由2个子模块构成:

1)数据信息提取。采用人工配置或语句查询等方式,提取需进行脱敏的数据源名称、数据库名称列表、对应数据库中存储的数据库表列表、特定数据库表结构对应的数据字段及相应属性等信息。对于新接入及现有各类数据源,能够较为方便总览其全部数据及不同数据表之间的关联信息,便于后续敏感数据的选择。

2)敏感信息设置。用户按照法律法规或标准规范等要求对敏感数据预设分类,并依据不同应用场景需求构建原始敏感数据知识库和分级规则。对于待脱敏数据,依据其数据类型的不同,分别采用自然语言处理和文本识别、多媒体内容理解和识别等技术,对待脱敏数据进行准实时处理,识别出敏感数据,同时设计人工反馈机制,可针对敏感数据识别结果进行修正,并逐步达到最优识别结果。此外,需明确各类敏感数据的具体数据类型,如针对文本数据是中文字符、英文字符、特殊字符等,以便后续最优脱敏策略的选择。

2.2 定制化脱敏策略

如图1所示,定制化脱敏策略模块主要包括可恢复性选择、脱敏方法选择、脱敏参数设置等。

1)可恢复性选择。按照脱敏后的数据能否恢复到原始数据来划分,现有的脱敏方法可以分为可恢复与不可恢复两大类,以满足不同任务需求。可恢复方法主要以数据加密方法为主,在数据加密的过程中会同时生成相应的解密密钥等,加密后的数据可依据实际使用需求,通过解密密钥还原为原始数据;不可恢复数据脱敏方法在使用匿名、替换等操作后,无法还原原始数据,因此在信息保留上存在一些损失。

2)脱敏方法选择。根据用户在上一模块的选择,系统将分别提供不同的方法,这些方法各有优缺点,适用于不同的应用场景,用户可根据需求进行灵活选择。其中,主流不可恢复脱敏方法包括k-匿名、l-多样性、t-保密、差分隐私;主流可恢复脱敏方法包括对称加密、非对称加密、保形加密、全同态加密等。其共同基本原理为:针对待脱敏数据,组合使用各类基础数据脱敏操作,以达到每种方法各自的脱敏规范。

针对不同数据类型,可使用的基础脱敏操作不同,具体的对应关系如表1所示。

表1 不同数据类型的常用脱敏操作Table 1 Commonly used data masking operation for different data types

3)脱敏参数设置。一些方法具有可调节的参数。例如,k-匿名中的k可以看作是控制脱敏力度的指标。k-匿名要求对于任意一行纪录,其所属的相等集内纪录数量不小于k,即至少有k-1条记录半标识列属性值与该条记录相同,即增大k的值,敏感数据会隐藏的更好,但相应地需要操作的数据条数、数据长度也会增加,因此导致更多的信息损失。用户可根据具体需求进行参数的设置,以完成脱敏方法的针对性定制。

图2为基于该脱敏策略的定制化脱敏流程,该过程中需要考虑的因素主要包括:

图2 定制化数据脱敏流程Fig.2 Customized data masking process

1)数据可用性。即脱敏后的数据应能满足分析应用需求,若脱敏后的数据无法用于目标分析及应用,就不具有使用价值。在特定的应用场景中,可能需要保留部分非关键信息(如身份证号码、手机号码的部分字段、数据的统计分析特征等)才能满足分析要求。

2)数据关联性。对于结构化和半结构化的数据,在同一数据表中某字段与另外字段有对应关系,如果脱敏方法破坏了这种关系,该字段的使用价值将不复存在。

3)隐私保护度。数据中原本隐含的敏感信息在脱敏后被其他人获取的难易程度,获取敏感信息的难度越高,则隐私保护度越高。

4)时间复杂度。即脱敏方法对数据进行脱敏所需要的时间,在保证敏感数据满足保护条件的前提下,所需计算时间越短越好。

5)空间复杂度。即脱敏方法对数据进行脱敏所需要的存储和计算空间。

2.3 脱敏任务调度

1)任务调度。由于本文模型是面向大数据应用环境的,需要处理的数据量可能会非常大,利用大数据计算环境执行分布式数据脱敏任务会极大提高任务的执行效率。任务调度模块通过对脱敏任务的数据量、各算法的执行效率、各节点的计算性能进行评估,将总体脱敏任务分解为若干个子任务并分配给对应子节点执行。

2)任务执行。根据任务调度结果,将脱敏方法下发至各对应子节点,子节点接受方法后开始对分配的敏感数据进行脱敏。脱敏完成后,将结果返回并整合汇总形成最终脱敏后的数据结果。

2.4 脱敏数据恢复

由于敏感数据的重要性,在实际应用中对部分脱敏数据的恢复时,需要进行严格的权限管理。

申请人员需要先提出申请,说明需要数据恢复的原因、需要恢复的具体数据项等信息,并进行相应的权限认证。在通过权限认证模块审核后,可在系统内执行相应的数据解密模块,并将数据恢复结果返回给特定申请用户。

2.5 脱敏模型安全性及可扩展性分析

本文所提异构大数据脱敏模型中4个关键模块具有较低的功能耦合度,又相互数据流关联实现了完整脱敏流程,从而使用该脱敏模型无需改变原有的业务数据逻辑,可确保数据整体安全性。此外,脱敏后数据恢复则需要严格权限认证才可获得解密密钥,满足了用户安全性需求。

本文提出的脱敏模型中定制化脱敏策略模块可提供灵活的脱敏规则配置及脱敏规则扩展,用户可以通过灵活调整配置参数,达到所设计的脱敏效果,实现了完全透明的、可扩展的数据脱敏处理能力。脱敏任务调度模块充分考虑了计算性能可扩展能力,通过采取多节点协作的分布式计算来提升计算效率,结合算法执行效率、单节点计算性能,将数据脱敏任务分解为若干个子任务后,分配给对应子节点进行计算,因此可方便增加子节点来扩展数据处理能力。

3 脱敏策略形式化描述

针对数据脱敏策略选择,通过层次分析法[17]对用户数据脱敏需求和提供的脱敏方法匹配度进行了形式化描述和定量化分析。该方法以脱敏数据的隐私保护度、数据可用性、数据关联性、时间复杂度、空间复杂度5项指标为用户选择脱敏方法的判断准则,主要包括4个步骤:①建立脱敏策略选择层次结构模型;②构造判断矩阵;③层次单排序及其一致性检验;④层次总排序及其一致性检验。

以面向文本数据的8种脱敏方法为例,对本文提出的脱敏策略执行过程进行描述。将决策的目标、考虑的因素(判断准则)和决策对象按相互关系分成目标层、准则层和方案层,形成层次化结构模型,如图3所示。

图3 数据脱敏策略层次结构模型Fig.3 Hierarchical model of data masking strategy

根据用户选择脱敏方法的5项判断准则优先级要求,设定构造判断矩阵A=(aij),aij表示第i个与第j个元素相对上一层某个因素重要性的相对权重量化值,并按下述标度进行赋值:aij=1,元素i与元素j对上一层次因素的重要性相同;aij=3,元素i比元素j略重要;aij=5,元素i比元素j重要;aij=7,元素i比元素j重要得多;aij=9,元素i比元素j极其重要;aij=2n,n=1,2,3,4,元素i比元素j的重要性介于aij=2n-1与aij=2n+1之间。

为分析一致性,先计算描述一个成对比较矩阵A(n>1阶方阵)不一致程度的指标CI:

式中:λmax为判断矩阵A的最大特征值;n为矩阵A的阶数。

为衡量CI的大小,引入随机一致性指标RI,如表2所示。

表2 随机一致性指标RI的数值Table 2 Values of random consistency indicator RI

定义一致性比率为CR=CI/RI,且当一致性比率CR<0.1时,判定A能够通过一致性检验,否则需重新构造对比矩阵A。计算矩阵A的特征向量得到U=(u1,u2,u3,u4,u5),ui表示每项脱敏效果评价指标对应最终脱敏方法选择的权重。

在上述基础上,计算方案层对最终目标层的总排序权向量,先需根据各脱敏方法在每个准则层指标上的比较,得到每个指标的判断矩阵。根据候选脱敏方法每项指标的对比,得到方案层的多个判断矩阵Bi,对每一个判断矩阵进行一致性检验和计算求权向量。最终将方案层与之前准则层的对比矩阵进行权向量组合,即可得到方案层对目标层的组合权向量,取其中权重最高者对应的脱敏方法,即为最适合用户需求的脱敏方案。

4 应用场景验证

基于以上构建的异构大数据脱敏模型,本文在2类大数据脱敏应用场景中进行了验证,具体脱敏验证流程分别描述如下。

4.1 银行客户贷款信息数据脱敏

图4为某银行客户贷款信息数据脱敏过程,其主要步骤包括:

图4 某银行客户贷款信息数据脱敏过程Fig.4 Data masking process for bank customer loan information

1)用户提交某银行客户贷款信息,该提交信息为Excel表格,包括姓名、性别、身份证号、籍贯、贷款金额、贷款日期、联系方式等内容,并选择金融行业场景。

2)根据金融行业场景标注的非敏感数据为性别、籍贯、贷款金额、贷款日期等,敏感数据为姓名、身份证号、联系方式。

3)以10%的比例随机抽取样例数据,判断其为文本数据,用户选择4种不可恢复文本脱敏方法(k-匿名、l-多样性、t-保密、差分隐私)实现预脱敏操作。通过分析用户需求,对准则层指标的优先级要求为:时间复杂度>空间复杂度=隐私保护度>数据可用性>数据关联性。

4)根据用户设定的指标优先级,采用层次分析法构建判断矩阵A如下:

计算判断矩阵A的最大特征值λmax=5.053,CI=0.013 25,RI=1.12,CR=0.012<0.1说明对比矩阵具有良好的一致性。该矩阵对应的特征向量U=(-0.395 1,0.508 7,0.508 7,0.707 1,-0.041 7),对该特征向量进行标准化,得到准则层对比矩阵的权向量U0=(0.182 8,0.235 4,0.235 4,0.327 1,0.019 3)。

构建方案层每一种脱敏方法对于准则层隐私保护度、数据可用性、数据关联性、时间复杂度、空间复杂度5项指标的判断矩阵,分别为B1、B2、B3、B4、B5:

经过对B1、B2、B3、B4、B5进行一致性检验,其一致性比率分别为0.005 8、0.024 3、0.024 3、0.018、0,均符合一致性要求。归一化后的特征向量分别为:U1=(0.320 6,0.339 7,0.339 7,0),U2=(-0.257 2,0.244 5,0.249 2,0.249 2),U3=(-0.257 2,0.244 5,0.249 2,0.249 2),U4=(0.496 9,-0.251 6,-0.251 6,0),U5=(0.106 8,0.225 6,-0.421 3,-0.244 9)。

隐私保护度、数据可用性、数据关联性、时间复杂度、空间复杂度分别为Z1、Z2、Z3、Z4、Z5。差分隐私、t-保密、l-多样性、k-匿名分别为F1、F2、F3、F4,则Z1、Z2、Z3、Z4、Z5脱敏方法的选择权重为(0.182 8,0.235 4,0.235 4,0.327 1,0.019 3),F1、F2、F3、F4对Z1、Z2、Z3、Z4、Z5的权重分别为:(0.320 6,0.339 7,0.339 7,0),(-0.257 2,0.244 5,0.249 2,0.249 2),(-0.257 2,0.244 5,0.249 2,0.249 2),(0.496 9,-0.251 6,-0.251 6,0),(0.106 8,0.225 6,-0.421 3,-0.244 9)。因此,F1对脱敏方法选择的权重为:0.320 6×0.182 8-0.257 2×0.235 4-0.257 2×0.235 4+0.496 9×0.327 1+0.106 8×0.019 3=0.102 1,F2对脱敏方法选择的权重为:0.339 7×0.182 8+0.244 5×0.235 4+0.244 5×0.235 4-0.251 6×0.327 1+0.225 6×0.019 3=0.099 2,F3对脱敏方法选择的权重为:0.339 7×0.182 8+0.249 2×0.235 4+0.249 2×0.235 4-0.251 6×0.327 1-0.421 3×0.019 3=0.089 0,F4对脱敏方法选择的权重为:0×0.182 8+0.249 2×0.235 4+0.249 2×0.235 4+0×0.327 1-0.244 9×0.019 3=0.112 6。F4方法对脱敏方法选择的权重最大,因此最终选择的脱敏方法为k-匿名。

5)系统采用k-匿名方法完成数据脱敏任务。

6)系统导出脱敏结果,将姓名、身份证号、联系方式替换成脱敏后的内容,并恢复成用户提交的Excel表格格式,发送给用户。

4.2 社交网络图片数据脱敏

图5为社交网络图片数据脱敏过程,其主要步骤包括:

图5 社交网络图片数据脱敏过程Fig.5 Data masking process for social network pictures

1)用户提交社交网络图片集,该提交信息为包含多个JPG文件的文件夹,图片内容涵盖人脸、风景、动物、美食、汽车,并选择社交应用场景。

2)根据金融行业场景标注的非敏感数据为风景、动物、美食、汽车,敏感数据为人脸,敏感层级为9。

3)以10%的比例随机抽取样例数据,判断其为图片内容,通过预置的2种图片脱敏方法(换脸、高斯模糊)实现预脱敏操作。

4)采用层次分析法,得到上述2种方法的评价结果,并根据综合评测推荐合适的脱敏方法为换脸方法。

5)若考虑到换脸后的图片难以满足业务需求,用户实际选择的脱敏方法为高斯模糊方法,系统完成数据脱敏任务。

6)系统导出脱敏结果,将原人脸替换成高斯模糊后的人脸,并保存为JPG文件,发送给用户。

5 结 论

本文主要针对当前异构大数据中敏感信息的精准定向、高效脱敏等研究难点,提出一种在异构大数据环境下,基于文本、图片、音频和数据库等异构数据的脱敏模型,并在实际应用场景中进行了验证,得到结论如下:

1)通过脱敏数据预处理,实现不同应用场景下敏感数据的自动标注和分级,有效降低实际应用场景脱敏处理复杂度,更有利于脱敏数据和脱敏策略的选择。

2)数据脱敏模型实现定制化脱敏策略,并利用数据预脱敏处理方法,从数据可用性、数据关联性、隐私保护度、时间和空间复杂度等5个维度进行脱敏效果评价。

3)通过银行客户贷款信息数据、社交网络图片数据脱敏应用场景进行验证,表明本文提出的异构大数据脱敏模型能够实现不同应用场景下异构敏感数据的高效脱敏。

猜你喜欢

脱敏复杂度矩阵
激光联合脱敏剂治疗牙本质过敏症
柬语母语者汉语书面语句法复杂度研究
数字经济对中国出口技术复杂度的影响研究
快速脱敏治疗的临床应用
Kerr-AdS黑洞的复杂度
非线性电动力学黑洞的复杂度
多项式理论在矩阵求逆中的应用
矩阵
矩阵
矩阵