APP下载

民用机场航班信息系统数据脱敏

2019-11-07寇蒋恒何明星陈爱良何明泽

关键词:敏感数据标识符脱敏

寇蒋恒,何明星*,陈爱良,何明泽

(1.西华大学计算机与软件工程学院,四川 成都610039;2.民航成都信息技术有限公司,四川 成都610000)

随着机场人流量的在不断增加,机场每天会产生大量数据。对于小型机场而言,受其人力、财力、物力的限制,他们管理并处理数据的能力有限,因此数据需要被托管到其他机构进行分析与处理,以达到改善机场服务水平的目的。

在商业上数据托管、分析与处理已经比较成熟,例如Dropbox、OneDrive、GoogleDrive、云上贵州、阿里云、腾讯云等。这些数据托管方式节约了数据本地存储与运算的成本[1],但数据库托管也存在风险。由于民航数据包含了大量的敏感信息,在将数据托管到第三方时,应进行数据脱敏处理[2-3]以确保敏感数据安全。

1 数据脱敏技术研究现状

1.1 敏感数据脱敏技术

数据脱敏技术是去除存在于数据中的敏感信息的一种技术,通过使用该技术来避免托管数据泄漏所带来的危害。一般来讲,利用数据库进行测试、开发、训练、托管的第三方机构并不需要知道数据库中某些准确信息,只要内容看起来真实即可[4-7]。

在数据库托管的过程中,为了避免某些客户的隐私信息直接出现在外包数据库中,学者们提出了多种数据脱敏方法:1)数据失真技术[5-6,8-20];2)数据加密技术[21-29];3)限制公开的技术[30-33]。

1.2 数据失真技术

1.2.1 数据混淆技术

数据混淆技术是较早用于数据脱敏的一种技术,早期的数据混淆技术是基于线性变换的一种技术。研究表明,数据混淆是一种比较简单且有效的数据脱敏方式。由于对字段不需要任何复杂的操作,所以此脱敏技术有较高的运行效率。

数据混淆技术有3个主要属性:可逆性、规范性和变换性。可逆性指数据混淆将原始数据集D映射到一个新的数据集D′。可逆性又分为4类:部分信息可逆、过程可逆、组合可逆和不可逆。部分信息可逆:若混淆技术仅仅只是原始数据集的常量偏移,则将混淆数据集与原始数据集的已知条目进行匹配会显示出混淆算法的模式。过程可逆:数据混淆的方式或者其标准过程可能导致完全或者部分的混淆数据集可逆。组合可逆:敌手了解数据混淆技术和原始数据集中的部分信息,则可以对使用此混淆技术的数据进行逆向工程得到原始数据。不可逆:敌手根本无法通过混淆后的数据找到原有数据。

1.2.2 差分隐私算法

差分隐私算法是数据失真技术的一种[9]。差分隐私模型在降低隐私泄露风险的同时又保证了数据的高可用性,所以被广泛应用于商业上的数据脱敏。Apple和Google是首先将差分隐私算法商用的公司,并且该算法已开源[10]。近年来,Cormode等[11]通过降低敏感度等方式以解决数据噪声过大的问题。Sarathy等[12]将差分隐私首次应用在数值类型的数据脱敏上。Dwork等[13-14]针对连续观测和流数据的差分隐私保护,提出了泛隐私概念。Li 等[15]、 Zhou等[16]、Gehrke等[17]、Zhang等[18]将其他方法与差分隐私相结合,提高了隐私数据的安全性。

设数据集D和D′具有相同的数据结构,两者的对称差记作DΔD′,|DΔD′|表示D和D′ 2个数据库中记录条数的相差值。若|DΔD′|=1,表示D和D′之间仅仅只有一个纪录不同,称D和D′为邻近数据集。对D或D′任何查询都会得到近似的结果,因此敌手无法通过查询得到任何有关敏感数据的信息[19]。

定义1给定一个差分隐私查询函数κ(D)提供ε-差分隐私,任意2个邻近数据集D和D′最多相差一行记录的差分隐私公式为

Pr[κ(D)∈r]≤exp(ε)×Pr[κ(D′)∈r]r∈Range

(1)

式中:Pr[ ]表示隐私被披露的概率,概率空间由差分函数κ决定;实数ε称为差分隐私保护预算,值越小隐私保护强度越大,ε取值视具体数据情况而定。

目前存在一种对差分隐私模型的攻击,当敌手在查询某数据库表时,可能会使用数据库查询中的统计函数来查询数据。因为数据库统计是顺序统计,所以当敌手查询count(n)-count(n-1)时,旅客的某种信息就会被找到。如表1所示,敌手查询性别时使用count(4)-count(3)就可以获得Alice的真实性别。

表1 旅客信息(部分数据)

差分隐私的主要噪声产生机制有Laplace机制和指数机制。Laplace机制主要处理数值型数据;指数机制主要处理非数值型数据。噪声产生机制受到全局敏感性和隐私预算的制约。

Laplace机制将服从拉普拉斯分布的噪声加入查询结果中,从而实现ε-差分隐私保护。式(2)是服从位置参数为0、尺度参数为b的拉普拉斯分布函数Lap(b)的概率密度函数。

(2)

定义2给定数据库中的查询函数q:Dn→R,差分隐私函数κ(D)的输出满足ε-差分隐私公式,为

(3)

噪声的大小与Δq和ε的取值相关,Δq与噪声成正比、与ε成反比。当Δq比较小时查询结果较好。当ε变小时Laplace(Δq/ε)曲线会更加扁平,噪声增大。在满足ε-差分隐私保护时,ε越小则噪声越多,隐私保护级别越高,对不同数据库设置不同的ε值,也可以对同一个数据库中不同属性设置不同ε值来实现不同的隐私保护等级。

Laplace机制只能向精确的数值类型查询结果中添加噪声从而实现对数据的保护,例如查询某位旅客的某次所购买机票的价格或某位旅客的信用等级等数据。然而在许多实际民航信息系统查询中,查询结果为一种组合(例如一种方案或者一种选择),对于这一类查询结果适合使用指数机制来进行数据脱敏,例如对多家航空公司的满意度调查数据等。选择指数机制来进行数据脱敏则可以在保护数据的同时保留数据之间的关联。

(4)

1.3 数据加密技术

对数据脱敏也可用多种加密技术,其中常用的有保形加密技术,也称保留格式的加密[22-23]。它是一种对称加密体制,主要特点是密文数据的格式与明文数据格式完全相同。第三方托管平台对于数据集中数据的格式、数据的类型非常敏感,例如托管中心对于身份证号需要进行校验,若脱敏后数据的身份证号不符合则第三方托管平台将会视此信息为非真实信息。

当用户数据库中存在某些重要信息,例如用户唯一ID标识、身份证号等,需要进行加密处理,则可使用密码学加密算法,但直接使用此类算法可能会改变原始数据长度或数据格式,例如采用高级加密标准算法(advanced encryption standard,AES)来脱敏数据则不能保留数据格式,从而第三方平台无法进行分析与处理。

正因为通用的数据脱敏方法会改变数据的格式从而使第三方无法对数据进行分析,所以保形加密(format preserving encryption,FPE)被提出。使用FPE方法对用户ID进行脱敏后,数据类型、数据长度与原始数据完全相同。对于需要特定格式数据的第三方应用来讲,因为输入类型、数据长度并没有发生改变,从而能顺利地对数据进行分析并获得其中有用信息。在T.Spies提出使用FPE来保护数据库中的个人识别信息[24]之后,Bellare等提出了一种基于非平衡菲斯特网络(Feistel network)的FPE方案[25],此方案增加了保形加密的安全性。之后Schneier等提出FPE的FFX模型为保形加密算法的发展奠定了模型基础[26]。随后Morris等[27]提出了一种基于Thorp Shuffle的方案,Liu等[28]提出了针对日期的FPE方案,使保形加密可以处理更多类型的字段。目前最常用的FPE方案有The Thorp Shuffle、Hasty Pudding Cipher、VIL mode。虽然FPE算法有很多但由标准机构认证的保形加密算法有FF1与FF3,并统一叫做FFX算法,Prefix、Cycle-walking、Generalized-Feistel是几个最常用于构造加密算法的方法。Prefix方法在处理数据之前会先建立一个随机的置换表,再使用此置换表来对数据进行加解密。对于有限集X={0,1,…,n-1},当消息空间n<106时数据的加解密速度较快,但是当n>106时仅建立置换表就会耗费大量时间。

如果需要对旅客数据表中的旅客ID进行处理,首先选择分组密码算法E,接下来选择对称密钥k∈K,计算元组I=(Ek(0),Ek(1),…,Ek(n-1)),最后替换消息空间中的值得到加密结果。为了建立置换表来加密消息M={0,1,2,3,4,5,6,7,8,9},假设E是一个理想的8位的分组密码,Ek为从[0,255]均匀且随机的置换算法,将Ek的结果经过从小到大重新排序得到表2。通过将消息空间的字段按照表2的规则进行映射从而达到数据脱敏的目的。本文在2.2.2节中使用了此处所构造的一个简易置换表对数据进行脱敏处理。

表2 Prefix置换表

1.4 限制公开技术

匿名化技术[29]是早期外包数据库所常用的限制公开技术之一。在匿名化技术中最为常用的模型是k-anonymity、t-closeness、l-diversity等[30-33]。

定义4给定数据集D,设TD={t1,t2,…,tn}为D中的一个数据表,ti为数据表TD中第i条记录,其属性集为X={X1,X2,…,Xm},Xj表示这条记录属性集中的第j个属性,QI={Xi,…,Xj}表示数据表TD中所有准标识符属性的集合,其中QI⊆X,给定正整数k,如果对于任何一条记录t∈TD,TD中都有至少k-1条其他记录t1,t2,…,tk-1与记录t在准标识符上具有相同的属性值,则称数据表TD满足k-anonymity 保护模型。

k-anonymity(k-匿名)保护模型能泛化处理数据表中的准标识符属性,以防止敌手使用准标识符属性把具体的个体与其他k-1个个体区分开来,其核心想法是保证数据集中有关准标识符的k条记录在同一个集合内,集合内记录为同一个等价类,从而降低某个特定个体被识别出的概率。

此类脱敏算法主要关注数据集的微观方面,数据集包含N条记录,每条记录包含M个属性的表单,数据集中一条记录的属性可粗略划分为2类:1)标识符属性EI,用于唯一地识别出个体,如ID、身份证号、车牌号等;2)准标识符属性QI,用于间接地识别出个体,如性别、单位和地址等。

l-diversity(l-多样性)模型是对k-anonimity模型的一种更精确的定义。l-diversity模型通过减少同一等价类中的不同种类数量来保护敏感数据。在一个等价类里的敏感数据属性至少有l个良好表示值,则称该等价类具有l-diversity。如果一个数据表中所有等价类都具有l-diversity,则该表具有l-diversity。可以通过3种方式来定义l-diversity。

1)可区分l-diversity:同一等价类中的敏感属性至少有l个不同的值。

2)熵l-diversity:一个等价类所提供的熵应该不大于log(l),l为等价类中不同值的个数。

3)递归l-diversity:常出现的值不能出现过多,不常出现的值也不能明显太少。

t-closeness(t-接近性)模型是对l-diversity模型更精确的定义。t-closeness模型通过减少数据表示的细粒度来保护数据集中的敏感数据。数据细粒度的减少程度需要根据数据细腻度减少后对数据托管与数据分析造成的损失来决定。若一个等价类具有t-closeness则在此等价类中敏感数据属性的分布与整个表的属性分布的距离差值应该不超过阈值t。

1.5 常用数据脱敏技术比较

表3为各种数据脱敏技术在保护程度、数据损失程度、计算开销等方面的对比[6]。每种算法都有其优势与劣势,民航数据库中隐私数据与其他商业数据不同,需要根据具体的民航数据特点来选择不同的脱敏算法。

2 基于民用机场信息系统数据的组合脱敏方法

2.1 民航信息系统中敏感数据定义

本文以民航信息系统的数据为研究对象,对民航信息系统中的VIP表、旅客数据表、行李数据表、配载数据表进行敏感数据的定义,并按照k-anonymity保护模型在敏感数据中划分了标识符属性与准标识符属性。这些敏感数据均属于非统计类敏感数据。对于统计类敏感数据,本文使用差分隐私来进行脱敏实验。

本文对民航数据库中的VIP表进行分析,确定了标识符为特殊旅客唯一ID、特殊旅客姓名,准标识符为单位、职务、舱位信息、座位号、随行人数、警位等级、联系人、联系电话、备注、VIP等级、航班标识,如表4所示。因为敌手可以通过特殊旅客唯一ID、特殊旅客姓名找到VIP客户,所以将这2个字段归为标识符信息。通过分析旅客数据表中的数据,将旅客ID、ICS记录信息、旅客证件号归入标识符属性。因为这些字段都是对某个用户的唯一标识信息,如表5所示。通过同样的方法,对行李数据表和配载数据表进行分析,得到表6和表7。

表3 数据脱敏技术对比

表4 VIP敏感数据

表5 旅客敏感数据

表6 行李敏感数据

表7 配载敏感数据

2.2 民航机场信息系统组合托敏方法

2.2.1 组合方法中的数据混淆技术

数据混淆技术可用于本文2.1中所定义的敏感数据中的数字与数值类型数据脱敏。给出混淆脱敏算法为

yi=xi×(1+r)+C

(5)

式中:xi,yi分别表示原始数据集和混淆数据集中对应的第i个实体;r表示随机变量;C代表常数。敌手可以结合随机混淆过程的知识,使用逆向工程技术来分析部分脱敏数据从而推断出整个原始数据。使用式(5)对旅客ID进行脱敏,选择随机数r与常数C。对于随机数r的选择需要使xi×(1+r)的位数大于所规定的ID的最小长度并且小于ID的最大长度,常数C的长度也要保证在规定ID的长度内,在此例中xi×(1+r)的值要大于190亿并且小于999亿9 999万9 999。表8为混淆处理后的旅客ID。

表8 可逆技术脱敏后旅客信息

在脱敏实验中,可以使用具有可逆性的混淆技术,例如使用加密算法进行数据脱敏,也可以使用具有不可逆性的混淆技术,例如散列算法对数据进行脱敏。可逆性混淆技术一般用于保护一些完全不能被第三方所知道,但在将来会被民航单位重新利用的数据。不可逆数据用于保护一些完全不能被第三方所知道,且民航单位在将来也不需要利用的数据。表9为对旅客ID使用不可逆性的混淆技术中的安全散列算法(Secure Hash Algorithm 1,SHA-1)进行脱敏后所得到的结果。

表9 不可逆旅客信息

2.2.2 组合方法中的保形加密技术

保形加密适用于敏感数据中具有某些特定格式的数值与数字类型数据脱敏。使用这种方法,脱敏后的数据依然保持某种格式,从而可以让数据更适合第三方的数据分析与托管。对表10中旅客ID使用1.3节中的Prefix方法脱敏,其结果如表11所示。

表10 旅客原始数据

表11 Prefix方法脱敏后旅客数据

在某些情况下要保证民航外包数据中身份证字段脱敏后与脱敏前格式不变。相较于其他数值型数据,这类数据处理更加复杂,处理过程的一个应用如表12所示,将一个出生日期为1988年12月21日的江苏省扬州市宝应县男性身份证号码,转换成一个出生日期为1970年01月05日四川省成都市锦江区男性身份证号码。

表12 身份证字段的脱处理

身份证的预先处理过程可将身份证分为4段:第1段为前6位数字,表示行政区划代码,可以通过保形加密生成不同于原始数据的行政区划代码;第2段为第7位到第14位,表示对象出生年月日,脱敏过后的值要在合理范围内,并考虑每个月中含有天数不同,是否为闰年;第3段中第15位到第16位为对同一天出生的人的编号,17位为性别编号,男生则分配奇数,女生则分配偶数;最后一段为校验码。通过保形加密对于每段数字进行合理变换,使最终脱敏后的身份证依然符合国家标准GB11643—1999。

2.2.3 组合方法中的匿名化技术

匿名化技术更加精确地划分了敏感数据,根据2.1节中不同数据表定义出的标识符与准标识符,使用匿名化技术进行脱敏。表13、14为脱敏前民航信息系统数据库中原始数据表中的部分数据,表15、16、17为脱敏后数据。VIP表中标识符特殊旅客唯一ID保留1位数。特殊旅客姓名只保留姓氏,删除单位、职务、随行人数,保留舱位信息等字段。航班标识保留前6位用于识别航空公司和飞机类型。旅客数据表中保留旅客ID前2位,因航班标识与VIP表中航班标识格式不同所以保留前5位航班标识。ICS记录信息保留前2位,对于旅客证件号此处使用简单的字段屏蔽方法保留前2位,也可以采用保形加密与其他方法来处理此字段。旅客数据表和行李数据表中脱敏操作与VIP表的脱敏操作相同。

表13 原始VIP数据

表14 原始配载数据

表15 脱敏后VIP数据

表16 脱敏后配载数据

在实际民航数据库中使用匿名方法脱敏时可能存在某个等价类中某种数据类别较少的问题,敌手能够通过一些其他信息将此用户辨识出来,因此通过增加一些干扰记录来降低属性数据泄漏的风险。表16虽然满足k-anonymity保护模型定义,但只有一条航班ID为22592*的记录,导致该等价类中数据量较少,敌手只需要找到近期其他发布数据中航班ID为22592*的数据则可以很大概率确定此航班ID对应个体的详细信息。将其他始发站和目的站作为此航班ID的干扰项插入表中来构造每个等价类符合l-diversity模型的数据集。表17为插入干扰数据形成满足3-diversity的新配载数据表。

表17 满足3-diversity的配载数据

2.2.4 组合方法中的差分隐私技术

差分隐私适用于具有统计特征的数据脱敏,例如平均旅客年龄、航空公司满意度调查等。表18为差分隐私指数机制在民航数据脱敏中的应用。假设现有4个航空公司进行用户满意度调查,根据差分隐私指数机制,在给定隐私保护预算ε下可以计算出各项目的概率。ε值根据当前想要达到的保护级别来动态设定,ε越小保护级别越好,数据可用性越差,ε越大保护级别越低,数据可用性越高。对普通旅客满意度调查结果使用差分隐私进行脱敏时建议让ε接近于1;对于VIP旅客满意度调查结果使用差分隐私进行脱敏时建议让ε大于0.5且尽量接近0.5,这样选择ε可以使VIP旅客的数据得到更强的保护。

表18 指数机制在脱敏中的应用

3 结论

本文对通用脱敏算法进行了介绍,定义了民航信息系统的敏感数据,对敏感数据中数字与数值类型采用混淆技术、加密技术进行脱敏实验,并使用数据脱敏评价标准k-anonymity模型对本文所定义的敏感数据更加细致地划分出标识符与准标识符。针对非统计类型敏感数据,可组合使用数据混淆技术中的可逆技术、不可逆技术,加密技术中的AES对称加密技术、保形加密技术进行脱敏。针对身份证数据,给出了一种保形加密的思路与算法。对标识符与准标识符使用简易的字段处理技术进行脱敏,并使实验结果满足匿名化模型。针对统计类的敏感数据,使用差分隐私技术来对数据进行脱敏。

实验结果表明:若敏感数据需要被还原,则使用数据混淆技术中的线性变换;若敏感数据需要被还原且需要较高保护级别,则可以使用加密算法,例如AES;若数据需要较高保护级别且不需要被还原,直接使用假名替换、散列算法或直接删除此字段等方法;若标识符字段中要求此数据脱敏后必须满足某种格式,例如身份证信息,则可以使用保形加密,如表12中的身份证脱敏算法,此算法同样可以推广到其他需要保留格式的ID型数据的脱敏操作。

民用机场航班保障类核心系统敏感数据脱敏技术研究包含了影响脱敏效果的多项指标,但是受到可操作性限制,本文只使用了3万条民航数据作为实验数据。由于数据量偏小,有个别指标项的数据在实证研究时过于单一,在一定程度上可能对价值评估的结果产生影响,使得最终脱敏效果并不能最为理想。在未来研究中,笔者会增加数据量进行脱敏实验从而对组合方法进行优化改进。

猜你喜欢

敏感数据标识符脱敏
干扰条件下可检索数字版权管理环境敏感数据的加密方法
基于底层虚拟机的标识符混淆方法
激光联合脱敏剂治疗牙本质过敏症
基于大数据的智能数据脱敏系统
实现虚拟机敏感数据识别
基于区块链的持久标识符系统①
谈一谈脱敏治疗
基于透明加密的水下通信网络敏感数据防泄露方法
让青春脱敏
脱敏汤治疗肺脾气虚型变应性鼻炎的临床疗效观察