大數(shù)據(jù)平臺(tái)通過將所有數(shù)據(jù)整合起來域那,充分分析與挖掘數(shù)據(jù)的內(nèi)在價(jià)值顶别,為業(yè)務(wù)部門提供數(shù)據(jù)平臺(tái),數(shù)據(jù)產(chǎn)品與數(shù)據(jù)服務(wù)伞剑。大數(shù)據(jù)平臺(tái)接入的數(shù)據(jù)中可能包括很多用戶的隱私和敏感信息,如用戶在酒店的入住紀(jì)錄市埋,用戶支付信息等黎泣,這些數(shù)據(jù)存在可能泄漏的風(fēng)險(xiǎn)。
大數(shù)據(jù)平臺(tái)一般通過用戶認(rèn)證缤谎,權(quán)限管理以及數(shù)據(jù)加密等技術(shù)保證數(shù)據(jù)的安全抒倚,但是這并不能完全從技術(shù)上保證數(shù)據(jù)的安全。
嚴(yán)格的來說弓千,任何有權(quán)限訪問用戶數(shù)據(jù)的人員衡便,如ETL工程師或是數(shù)據(jù)分析人員等,均有可能導(dǎo)致數(shù)據(jù)泄漏的風(fēng)險(xiǎn)洋访。
另一方面镣陕,沒有訪問用戶數(shù)據(jù)權(quán)限的人員,也可能有對(duì)該數(shù)據(jù)進(jìn)行分析挖掘的需求姻政,數(shù)據(jù)的訪問約束大大限制的充分挖掘數(shù)據(jù)價(jià)值的范圍呆抑。
實(shí)際生產(chǎn)過程中,應(yīng)用場(chǎng)景會(huì)更加復(fù)雜汁展,僅靠類似這樣的訪問控制鹊碍,滿足不了生產(chǎn)的需要,還需要結(jié)合其它的途徑食绿,而數(shù)據(jù)脫敏就是一種有效的方式侈咕,既能滿足日常生產(chǎn)的需要,又能保護(hù)數(shù)據(jù)安全器紧。
數(shù)據(jù)脫敏耀销,具體指對(duì)某些敏感信息通過脫敏規(guī)則進(jìn)行數(shù)據(jù)的變形,實(shí)現(xiàn)敏感隱私數(shù)據(jù)的可靠保護(hù)铲汪。
這樣可以使數(shù)據(jù)本身的安全等級(jí)降級(jí)熊尉,就可以在開發(fā)罐柳、測(cè)試和其它非生產(chǎn)環(huán)境以及外包或云計(jì)算環(huán)境中安全地使用脫敏后的真實(shí)數(shù)據(jù)集。
借助數(shù)據(jù)脫敏技術(shù)狰住,屏蔽敏感信息张吉,并使屏蔽的信息保留其原始數(shù)據(jù)格式和屬性,以確保應(yīng)用程序可在使用脫敏數(shù)據(jù)的開發(fā)與測(cè)試過程中正常運(yùn)行催植。
數(shù)據(jù)脫敏方案作為大數(shù)據(jù)平臺(tái)整體數(shù)據(jù)安全解決方案的重要組成部分肮蛹,是構(gòu)建安全可靠的大數(shù)據(jù)平臺(tái)必不可少的功能特性。
本文首先分析了數(shù)據(jù)泄露可能帶來的風(fēng)險(xiǎn)查邢,然后詳細(xì)介紹了數(shù)據(jù)脫敏技術(shù)的理論基礎(chǔ)與常用算法蔗崎,最后介紹了一個(gè)基于大數(shù)據(jù)平臺(tái)的數(shù)據(jù)脫敏解決方案。
隱私數(shù)據(jù)脫敏技術(shù)
通常在大數(shù)據(jù)平臺(tái)中扰藕,數(shù)據(jù)以結(jié)構(gòu)化的格式存儲(chǔ)缓苛,每個(gè)表有諸多行組成,每行數(shù)據(jù)有諸多列組成邓深。根據(jù)列的數(shù)據(jù)屬性未桥,數(shù)據(jù)列通常可以分為以下幾種類型:
- 可確切定位某個(gè)人的列芥备,稱為可識(shí)別列冬耿,如身份證號(hào),地址以及姓名等萌壳。
- 單列并不能定位個(gè)人亦镶,但是多列信息可用來潛在的識(shí)別某個(gè)人,這些列被稱為半識(shí)別列袱瓮,如郵編號(hào)缤骨,生日及性別等。美國的一份研究論文稱尺借,僅使用郵編號(hào)绊起,生日和性別信息即可識(shí)別87%的美國人[3]。
- 包含用戶敏感信息的列燎斩,如交易數(shù)額虱歪,疾病以及收入等。
- 其他不包含用戶敏感信息的列栅表。
所謂避免隱私數(shù)據(jù)泄露笋鄙,是指避免使用數(shù)據(jù)的人員(數(shù)據(jù)分析師,BI工程師等)將某行數(shù)據(jù)識(shí)別為某個(gè)人的信息怪瓶。
數(shù)據(jù)脫敏技術(shù)通過對(duì)數(shù)據(jù)進(jìn)行脫敏局装,如移除識(shí)別列,轉(zhuǎn)換半識(shí)別列等方式,使得數(shù)據(jù)使用人員在保證可對(duì)#2(轉(zhuǎn)換后)半識(shí)別列铐尚,#3敏感信息列以及#4其他列進(jìn)行數(shù)據(jù)分析的基礎(chǔ)上,在一定程度上保證其無法根據(jù)數(shù)據(jù)反識(shí)別用戶哆姻,達(dá)到保證數(shù)據(jù)安全與最大化挖掘數(shù)據(jù)價(jià)值的平衡宣增。
隱私數(shù)據(jù)泄露類型
隱私數(shù)據(jù)泄露可以分為多種類型,根據(jù)不同的類型矛缨,通车ⅲ可以采用不同的隱私數(shù)據(jù)泄露風(fēng)險(xiǎn)模型來衡量防止隱私數(shù)據(jù)泄露的風(fēng)險(xiǎn),以及對(duì)應(yīng)不同的數(shù)據(jù)脫敏算法對(duì)數(shù)據(jù)進(jìn)行脫敏箕昭。一般來說灵妨,隱私數(shù)據(jù)泄露類型包括:
- 個(gè)人標(biāo)識(shí)泄露:
當(dāng)數(shù)據(jù)使用人員通過任何方式確認(rèn)數(shù)據(jù)表中某條數(shù)據(jù)屬于某個(gè)人時(shí),稱為個(gè)人標(biāo)識(shí)泄露落竹。個(gè)人標(biāo)識(shí)泄露最為嚴(yán)重泌霍,因?yàn)橐坏┌l(fā)生個(gè)人標(biāo)識(shí)泄露,數(shù)據(jù)使用人員就可以得到具體個(gè)人的敏感信息述召。- 屬性泄露:
當(dāng)數(shù)據(jù)使用人員根據(jù)其訪問的數(shù)據(jù)表了解到某個(gè)人新的屬性信息時(shí)朱转,稱為屬性泄露。個(gè)人標(biāo)識(shí)泄露肯定會(huì)導(dǎo)致屬性泄露积暖,但屬性泄露也有可能單獨(dú)發(fā)生藤为。- 成員關(guān)系泄露:
當(dāng)數(shù)據(jù)使用人員可以確認(rèn)某個(gè)人的數(shù)據(jù)存在于數(shù)據(jù)表中時(shí),稱為成員關(guān)系泄露夺刑。成員關(guān)系泄露相對(duì)風(fēng)險(xiǎn)較小缅疟,個(gè)人標(biāo)識(shí)泄露與屬性泄露肯定意味著成員關(guān)系泄露,但成員關(guān)系泄露也有可能單獨(dú)發(fā)生遍愿。
隱私數(shù)據(jù)風(fēng)險(xiǎn)泄露模型
將數(shù)據(jù)開放給數(shù)據(jù)分析人員存淫,同時(shí)就引入了隱私數(shù)據(jù)泄露的風(fēng)險(xiǎn)。
在限制隱私數(shù)據(jù)泄露風(fēng)險(xiǎn)在一定范圍內(nèi)的同時(shí)错览,最大化數(shù)據(jù)分析挖掘的潛力纫雁,是數(shù)據(jù)脫敏技術(shù)的最終目標(biāo)。
目前在隱私數(shù)據(jù)脫敏領(lǐng)域倾哺,有幾個(gè)不同的模型可以用來從不同角度衡量數(shù)據(jù)可能存在的隱私數(shù)據(jù)泄露風(fēng)險(xiǎn)轧邪。
K-Anonymity
隱私數(shù)據(jù)脫敏的第一步是對(duì)所有可標(biāo)識(shí)列進(jìn)行移除或是脫敏,使得攻擊者無法直接標(biāo)識(shí)用戶羞海。
但是攻擊者還是有可能通過多個(gè)半標(biāo)識(shí)列的屬性值識(shí)別個(gè)人忌愚。
攻擊者可能通過社工(知道某個(gè)人的姓名,郵編却邓,生日硕糊,性別等)或是其他包含個(gè)人信息的以開放數(shù)據(jù)庫獲得特定個(gè)人的半標(biāo)識(shí)列屬性值,并與大數(shù)據(jù)平臺(tái)數(shù)據(jù)進(jìn)行匹配,從而得到特定個(gè)人的敏感信息简十。
如表一所示檬某,如果攻擊者知道某用戶的郵編和年齡,就可以得到該用戶的疾病敏感信息螟蝙。
表1(原始 病人信息)
為了避免這種情況的發(fā)生恢恼,通常需要對(duì)半標(biāo)識(shí)列進(jìn)行脫敏處理,如數(shù)據(jù)泛化等胰默。
數(shù)據(jù)泛化是將半標(biāo)識(shí)列的數(shù)據(jù)替換為語義一致但更通用的數(shù)據(jù)场斑,已上述數(shù)據(jù)為例,對(duì)郵編和年齡泛化后的數(shù)據(jù)如表二所示牵署。
表2(3-Anonymity 病人信息)
經(jīng)過泛化后漏隐,有多條紀(jì)錄的半標(biāo)識(shí)列屬性值相同,所有半標(biāo)識(shí)列屬性值相同的行的集合被稱為相等集奴迅。
例如青责,表二中1,2半沽,3行是一個(gè)相等集爽柒,4,5者填,6行也是一個(gè)相等集浩村。
Sama- rati and Sweeney[4]引入了K-Anonymity用于衡量個(gè)人標(biāo)識(shí)泄露的風(fēng)險(xiǎn)。 K-Anonymity定義如下:
K-Anonymity要求對(duì)于任意一行紀(jì)錄占哟,其所屬的相等集內(nèi)紀(jì)錄數(shù)量不小于k心墅,即至少有k-1條紀(jì)錄半標(biāo)識(shí)列屬性值與該條紀(jì)錄相同。
圖二中的數(shù)據(jù)是一個(gè)3-Anonymity的數(shù)據(jù)集榨乎。
作為一個(gè)衡量隱私數(shù)據(jù)泄露風(fēng)險(xiǎn)的指標(biāo)怎燥,K-Anonymity可用于衡量個(gè)人標(biāo)識(shí)泄露的風(fēng)險(xiǎn),理論上來說蜜暑,對(duì)于K-Anonymity數(shù)據(jù)集铐姚,對(duì)于任意紀(jì)錄,攻擊者只有1/k的概率將該紀(jì)錄與具體用戶關(guān)聯(lián)肛捍。
L-Diversity
K-Anonymity可用于保護(hù)個(gè)人標(biāo)識(shí)泄露的風(fēng)險(xiǎn)隐绵,但是無法保護(hù)屬性泄露的風(fēng)險(xiǎn)。
對(duì)于K-Anonymity的數(shù)據(jù)集拙毫,攻擊者可能通過同質(zhì)屬性攻擊與背景知識(shí)攻擊兩種方式攻擊用戶的屬性信息依许。
- 同質(zhì)屬性攻擊。對(duì)于圖二半標(biāo)識(shí)列泛化后的數(shù)據(jù)集缀蹄,假如攻擊者知道Bob郵編為47677峭跳,年齡為29膘婶,則Bob一定對(duì)應(yīng)于前面三條記錄,從而可以確定Bob有心臟病蛀醉。
- 背景知識(shí)攻擊悬襟。對(duì)于圖二半標(biāo)識(shí)列泛化后的數(shù)據(jù)集,假如攻擊者知道Alice郵編為47673拯刁,年齡為36古胆,則Alice一定對(duì)應(yīng)于后面三條記錄,如果攻擊者知道Alice患有心臟病的幾率很小筛璧,則能判斷Alice很有可能患有癌癥。
Machanavajjhala et al. [5] 引入了L-Diversity用于衡量屬性泄露的風(fēng)險(xiǎn)惹恃,L-Diversity定義如下:
如果對(duì)于任意相等集內(nèi)所有記錄對(duì)應(yīng)的敏感數(shù)據(jù)的集合夭谤,包含L個(gè)"合適"值,則稱該相等集是滿足L-Deversity巫糙。
如果數(shù)據(jù)集中所有相等集都滿足L-Deversity朗儒,則稱該數(shù)據(jù)集滿足L-Deversity。
所謂L個(gè)“合適”值参淹,最簡單的理解就是L個(gè)不同值醉锄。
基于圖二的數(shù)據(jù)通過插入干擾紀(jì)錄,一個(gè)3-Anonymity 2-Diversity的數(shù)據(jù)集如表三所示:
表3 3-Anonymity 2-Diversity 病人信息
相對(duì)于K-Anonymity標(biāo)準(zhǔn)浙值,符合L-Deversity標(biāo)準(zhǔn)的數(shù)據(jù)集顯著降低了屬性數(shù)據(jù)泄露的風(fēng)險(xiǎn)恳不。
對(duì)于滿足L-Diversity的數(shù)據(jù)集,理論上开呐,攻擊者最多只有1/L的概率能夠?qū)傩孕孤豆粞萄瑢⑻囟ㄓ脩襞c其敏感信息關(guān)聯(lián)起來。
一般來說是通過插入干擾數(shù)據(jù)構(gòu)造符合L-Diversity標(biāo)準(zhǔn)的數(shù)據(jù)集筐付,但是同數(shù)據(jù)泛化一樣卵惦,插入干擾數(shù)據(jù)也會(huì)導(dǎo)致表級(jí)別的信息丟失。
同時(shí)L-Diversity標(biāo)準(zhǔn)也有不足之處瓦戚。
- L-Diversity標(biāo)準(zhǔn)有可能很難或是沒有必要實(shí)現(xiàn)沮尿。
例如,對(duì)于HIV的測(cè)試數(shù)據(jù)较解,測(cè)試結(jié)果列可能為陰性或是陽性畜疾。
對(duì)于10000條記錄,可能99%的記錄都是陰性的哨坪,只有1%是陽性的庸疾。
對(duì)于用戶來說兩種不同的測(cè)試結(jié)果敏感程度也是不同的,測(cè)試結(jié)果為陰性的用戶可能不介意其他人看到他的測(cè)試結(jié)果当编,但是測(cè)試結(jié)果為陽性的用戶可能更希望對(duì)別人保密届慈。
為了生成2-Deversity的測(cè)試數(shù)據(jù)集徒溪,會(huì)丟失大量的信息,降低數(shù)據(jù)分析挖掘的價(jià)值金顿。
- L-Diversity標(biāo)準(zhǔn)無法防御特定類型的屬性數(shù)據(jù)泄露臊泌。
- 傾斜攻擊
如果敏感屬性分布存在傾斜,L-Diversity標(biāo)準(zhǔn)很有可能無法抵御屬性數(shù)據(jù)泄露揍拆。
繼續(xù)以HIV測(cè)試數(shù)據(jù)為例渠概,假如構(gòu)造的數(shù)據(jù)集對(duì)于任意相等類測(cè)試結(jié)果都包含陰性與陽性,且陰性數(shù)量與陽性相同嫂拴,該數(shù)據(jù)集肯定滿足2-Diversity播揪。
按照真實(shí)測(cè)試記錄的分布,對(duì)于任意個(gè)人筒狠,攻擊者只能判斷其有1%的可能測(cè)試結(jié)果為陽性猪狈。
但是對(duì)于2-Diversity數(shù)據(jù)集,攻擊者會(huì)判斷每個(gè)人有50%的可能測(cè)試結(jié)果為陽性辩恼。
- 相似性攻擊
如果相等類的敏感屬性分布滿足L-Diversity雇庙,但是屬性值相似或是內(nèi)聚,攻擊者有可能從得到很重要的信息灶伊。
例如對(duì)于表四所示疆前,病人數(shù)據(jù)滿足3-Diversity,攻擊者如果了解Bob郵編為47677聘萨,年齡為29竹椒,則可以確認(rèn)Bob的工資收入在3-5K之間,且能確認(rèn)Bob得了胃病相關(guān)的病匈挖,因?yàn)榍叭龡l的病都和胃病相關(guān)碾牌。
表4 3-Diversity 病人信息簡單來說,對(duì)于L-Diversity相同的相等集儡循,敏感屬性值的分布信息對(duì)于保護(hù)屬性泄露至關(guān)重要舶吗。
L-Diversity只是用來衡量相等集的不同屬性值數(shù)量,并沒有衡量不同屬性值的分布择膝,所以其在衡量屬性泄露風(fēng)險(xiǎn)上仍有不足之處誓琼。
T-Closeness
直觀的來說,隱私信息泄露的程度可以根據(jù)攻擊者增量獲得的個(gè)人信息衡量肴捉。
假設(shè)攻擊者在訪問數(shù)據(jù)集之前已知的個(gè)人信息為B0腹侣,然后假設(shè)攻擊者訪問所有半標(biāo)識(shí)列都已移除的數(shù)據(jù)集,Q為數(shù)據(jù)集敏感數(shù)據(jù)的分布信息齿穗,根據(jù)Q傲隶,攻擊者更新后的個(gè)人信息為B1。
最后攻擊者訪問脫敏后的數(shù)據(jù)集窃页,由于知道用戶的半標(biāo)識(shí)列的信息跺株,攻擊者可以將某用戶與某相等集聯(lián)系在一起复濒,通過該相等集的敏感數(shù)據(jù)分布信息P,攻擊者更新后的個(gè)人信息為B2乒省。
L-Diversity約束是通過約束P的diverisity屬性巧颈,盡量減少B0和B2之間的信息量差距,差距越小袖扛,說明隱私信息泄露越少砸泛。
T-Closeness約束則期望減少B1和B2之間的信息量差距,減少攻擊者從敏感數(shù)據(jù)的全局分布信息和相等集分布信息之間得到更多的個(gè)人隱私信息蛆封。
T-Closeness的定義如下:
如果一個(gè)相等類的敏感數(shù)據(jù)的分布與敏感數(shù)據(jù)的全局分布之間的距離小于T唇礁,則稱該相等類滿足T-Closeness約束。
如果數(shù)據(jù)集中的所有相等類都滿足T-Closeness惨篱,則稱該數(shù)據(jù)集滿足T-Closeness垒迂。
T-Closeness約束限定了半標(biāo)識(shí)列屬性與敏感信息的全局分布之間的聯(lián)系,減弱了半標(biāo)識(shí)列屬性與特定敏感信息的聯(lián)系妒蛇,減少攻擊者通過敏感信息的分布信息進(jìn)行屬性泄露攻擊的可能性。
不過同時(shí)也肯定導(dǎo)致了一定程度的信息丟失楷拳,所以管理者通過T值的大小平衡數(shù)據(jù)可用性與用戶隱私保護(hù)绣夺。
常見數(shù)據(jù)脫敏算法
K-Anonymity, L-Diversity和T-Closeness均依賴對(duì)半標(biāo)識(shí)列進(jìn)行數(shù)據(jù)變形處理,使得攻擊者無法直接進(jìn)行屬性泄露攻擊欢揖,常見的數(shù)據(jù)變形處理方式如下:
此外陶耍,K-Anonymity, L-Diversity和T-Closeness約束可能還需要生成干擾數(shù)據(jù),敏感數(shù)據(jù)干擾項(xiàng)的生成策略與方法也是保證K-Anonymity, L-Diversity和T-Closeness的重要條件她混,在這里篇幅有限烈钞,就不過多介紹,請(qǐng)參考引用中的相關(guān)論文[4,5,6]坤按。
大數(shù)據(jù)脫敏平臺(tái)
用戶隱私數(shù)據(jù)保護(hù)與挖掘用戶數(shù)據(jù)價(jià)值是兩個(gè)互相沖突的矛盾體毯欣,徹底的數(shù)據(jù)脫敏,需要抹去全部的用戶標(biāo)識(shí)信息臭脓,使得數(shù)據(jù)潛在的分析價(jià)值大大降低酗钞。
另一方面,完全保留用戶隱私數(shù)據(jù)信息来累,可最大化數(shù)據(jù)的分析價(jià)值砚作,同時(shí)導(dǎo)致用戶隱私泄露的風(fēng)險(xiǎn)無法控制。
因此大數(shù)據(jù)脫敏平臺(tái)的設(shè)計(jì)目標(biāo)并不是實(shí)現(xiàn)工具算法用來完全抹去全部的用戶標(biāo)識(shí)信息嘹锁,而是包括如下幾個(gè)目標(biāo):
- 數(shù)據(jù)泄露風(fēng)險(xiǎn)可控葫录。
首先,實(shí)現(xiàn)基于大數(shù)據(jù)平臺(tái)的脫敏算法庫领猾,可并行米同,高效的按照脫敏規(guī)則對(duì)隱私數(shù)據(jù)進(jìn)行脫敏骇扇。其次,基于數(shù)據(jù)脫敏的理論基礎(chǔ)窍霞,建立用戶隱私數(shù)據(jù)泄露風(fēng)險(xiǎn)的衡量模型匠题,可定性定量的準(zhǔn)確衡量數(shù)據(jù)可能發(fā)生泄露的風(fēng)險(xiǎn)。- 可管理但金。
結(jié)合大數(shù)據(jù)平臺(tái)的用戶認(rèn)證體系韭山,權(quán)限管理體系,以及隱私數(shù)據(jù)不同保護(hù)級(jí)別的權(quán)限管理體系冷溃,實(shí)現(xiàn)對(duì)隱私數(shù)據(jù)基于審批的數(shù)據(jù)訪問機(jī)制钱磅。結(jié)合公司制度,規(guī)范似枕,法務(wù)等管理盖淡,實(shí)現(xiàn)在盡可能保護(hù)用戶隱私數(shù)據(jù),減少數(shù)據(jù)泄露風(fēng)險(xiǎn)的前提下凿歼,最大化保留數(shù)據(jù)分析挖掘的價(jià)值褪迟。- 可審計(jì)。
對(duì)數(shù)據(jù)的訪問要保證可回溯答憔,可審計(jì)味赃,當(dāng)發(fā)生數(shù)據(jù)泄露時(shí),要保證能夠通過審計(jì)日志找到對(duì)應(yīng)的泄露人員虐拓。
大數(shù)據(jù)脫敏平臺(tái)的設(shè)計(jì)方向一般包括靜態(tài)大數(shù)據(jù)脫敏平臺(tái)和動(dòng)態(tài)大數(shù)據(jù)脫敏平臺(tái)心俗,所謂靜態(tài)和動(dòng)態(tài)之分,主要在于脫敏的時(shí)機(jī)不同蓉驹。
- 對(duì)于靜態(tài)脫敏來說城榛,數(shù)據(jù)管理員提前對(duì)數(shù)據(jù)進(jìn)行不同級(jí)別的脫敏處理,生成不同安全級(jí)別的數(shù)據(jù)态兴,然后授予不同用戶訪問不同安全級(jí)別數(shù)據(jù)的權(quán)限狠持。
- 對(duì)于動(dòng)態(tài)脫敏來說,管理員通過元數(shù)據(jù)管理不同用戶訪問具體數(shù)據(jù)的安全權(quán)限瞻润,在用戶訪問數(shù)據(jù)的時(shí)候工坊,動(dòng)態(tài)的從原始數(shù)據(jù)中按照用戶權(quán)限動(dòng)態(tài)的進(jìn)行脫敏處理。
大數(shù)據(jù)平臺(tái)脫敏技術(shù)方案是一個(gè)非常有趣的課題敢订,目前業(yè)界還沒有看到有成熟的方案王污,鑒于其對(duì)數(shù)據(jù)安全和數(shù)據(jù)價(jià)值的作用,非常值得深入研究楚午。
美團(tuán)數(shù)據(jù)倉庫脫敏
敏感數(shù)據(jù)梳理
在數(shù)據(jù)脫敏進(jìn)行之前昭齐,首先要確定哪些數(shù)據(jù)要作為脫敏的目標(biāo)。根據(jù)美團(tuán)特有的業(yè)務(wù)場(chǎng)景和數(shù)據(jù)安全級(jí)別劃分(絕密矾柜、高保密阱驾、保密就谜、可公開,四個(gè)級(jí)別)里覆, 主要從“高保密”等級(jí)的敏感數(shù)據(jù)丧荐,開始進(jìn)行梳理。
這里把敏感數(shù)據(jù)分成四個(gè)維度進(jìn)行梳理喧枷,用戶虹统、商家、終端隧甚、公司车荔。
- 從用戶維度進(jìn)行梳理可能有這些敏感字段如下:手機(jī)號(hào)碼、郵件地址戚扳、賬號(hào)忧便、地址、固定電話號(hào)碼等信息(此外個(gè)人隱私數(shù)據(jù)相關(guān)還有如:種族帽借、政治觀點(diǎn)珠增、宗教信仰、基因等)
- 從商家維度進(jìn)行梳理:合同簽訂人砍艾,合同簽訂人電話等(不排除全局敏感數(shù)據(jù):如商家團(tuán)購品類等)
- 從用戶終端維度進(jìn)行梳理:能夠可能標(biāo)識(shí)終端的唯一性字段切平,如設(shè)備id。
- 從公司角度進(jìn)行梳理:交易金額辐董、代金卷密碼、充值碼等
確定脫敏處理方法
梳理出了敏感數(shù)據(jù)字段禀综,接下來的工作就是如何根據(jù)特定的應(yīng)用場(chǎng)景對(duì)敏感字段實(shí)施具體的脫敏處理方法简烘。
常見的處理方法如下幾種有:
- 替換:如統(tǒng)一將女性用戶名替換為F,這種方法更像“障眼法”定枷,對(duì)內(nèi)部人員可以完全保持信息完整性孤澎,但易破解。
- 重排:序號(hào)12345重排為54321欠窒,按照一定的順序進(jìn)行打亂覆旭,很像“替換”, 可以在需要時(shí)方便還原信息岖妄,但同樣易破解型将。
- 加密:編號(hào)12345加密為23456,安全程度取決于采用哪種加密算法荐虐,一般根據(jù)實(shí)際情況而定七兜。
- 截?cái)啵?3811001111截?cái)酁?38,舍棄必要信息來保證數(shù)據(jù)的模糊性福扬,是比較常用的脫敏方法腕铸,但往往對(duì)生產(chǎn)不夠友好惜犀。
- 掩碼: 123456 -> 1xxxx6,保留了部分信息狠裹,并且保證了信息的長度不變性虽界,對(duì)信息持有者更易辨別, 如火車票上得身份信息涛菠。
- 日期偏移取整:20130520 12:30:45 -> 20130520 12:00:00莉御,舍棄精度來保證原始數(shù)據(jù)的安全性,一般此種方法可以保護(hù)數(shù)據(jù)的時(shí)間分布密度碗暗。
但不管哪種手段都要基于不同的應(yīng)用場(chǎng)景颈将,遵循下面兩個(gè)原則:
- remain meaningful for application logic(盡可能的為脫敏后的應(yīng)用,保留脫敏前的有意義信息)
- sufficiently treated to avoid reverse engineer(最大程度上防止黑客進(jìn)行破解)
以這次脫敏一個(gè)需求為例:
美團(tuán)一般的業(yè)務(wù)場(chǎng)景是這樣的,用戶在網(wǎng)站上付款一筆團(tuán)購單之后言疗,會(huì)將團(tuán)購密碼晴圾,發(fā)到用戶對(duì)應(yīng)的手機(jī)號(hào)上。
這個(gè)過程中噪奄,從用戶的角度來看團(tuán)購密碼在未被用戶消費(fèi)之前死姚,對(duì)用戶來說是要保密的,不能被公開的勤篮,其次美團(tuán)用戶的手機(jī)號(hào)也是要保密的都毒,因?yàn)楣_之后可能被推送一些垃圾信息,或者更嚴(yán)重的危害碰缔。
從公司內(nèi)部數(shù)據(jù)分析人員來看账劲,他們有時(shí)雖然沒有權(quán)限知道用戶團(tuán)購密碼,但是他們想分析公司發(fā)送的團(tuán)購密碼數(shù)量情況金抡,這是安全允許瀑焦;
再有數(shù)據(jù)分析人員雖然沒有權(quán)限知道用戶具體的手機(jī)號(hào)碼,但是他們需要統(tǒng)計(jì)美團(tuán)用戶手機(jī)的地區(qū)分布情況梗肝,或者運(yùn)營商分布差異榛瓮,進(jìn)而為更上層的決策提供支持。
根據(jù)這樣的需求巫击,可以對(duì)團(tuán)購密碼做加密處理保證其唯一性禀晓,也保留其原有的數(shù)據(jù)格式,在保密的同時(shí)不影響數(shù)據(jù)分析的需求坝锰。
同樣粹懒,將用戶的手機(jī)號(hào)碼的前7位,關(guān)于運(yùn)營商和地區(qū)位置信息保留顷级,后四位進(jìn)行模糊化處理崎淳。
這樣同樣也達(dá)到了保護(hù)和不影響統(tǒng)計(jì)的需求。
因此從實(shí)際出發(fā)遵循上面的兩個(gè)處理原則,第一階段在脫敏工具集中拣凹,確定了如下4種基本類型的脫敏方案(對(duì)應(yīng)4個(gè)udf):
脫敏方法確定實(shí)施范圍與步驟
通過上面字段的梳理和脫敏方案的制定森爽,對(duì)美團(tuán)數(shù)據(jù)倉庫中涉及到得敏感字段的表進(jìn)行脫敏處理。
在數(shù)據(jù)倉庫分層理論中嚣镜,數(shù)據(jù)脫敏往往發(fā)生在上層爬迟,最直接的是在對(duì)外開放這一層面上。
在實(shí)際應(yīng)用中菊匿,既要參考分層理論付呕,又要從美團(tuán)現(xiàn)有數(shù)據(jù)倉庫生產(chǎn)環(huán)境的體系出發(fā),主要在數(shù)據(jù)維度層(dim)跌捆,以及基礎(chǔ)服務(wù)數(shù)據(jù)層(fact)上實(shí)施脫敏徽职。
這樣,可以在下游相關(guān)數(shù)據(jù)報(bào)表以及衍生數(shù)據(jù)層的開發(fā)過程中使用脫敏后的數(shù)據(jù)佩厚,從而避免出現(xiàn)數(shù)據(jù)安全問題姆钉。
確認(rèn)處理的表和字段后,還要確保相關(guān)上下游流程的正常運(yùn)行, 以及未脫敏的敏感信息的正常產(chǎn)出與存儲(chǔ)(通過更嚴(yán)格的安全審核來進(jìn)行訪問)抄瓦。
以用戶信息表user為例潮瓶,脫敏步驟如下:
1.首先生產(chǎn)一份ndm_user未脫敏數(shù)據(jù),用于未脫敏數(shù)據(jù)的正常產(chǎn)出钙姊。
2.對(duì)下游涉及的所有依賴user生產(chǎn)流程進(jìn)行修改毯辅,來確保脫敏后的正常運(yùn)行,這里主要是確認(rèn)數(shù)據(jù)格式煞额,以及數(shù)據(jù)源的工作思恐。
3.根據(jù)對(duì)應(yīng)的脫敏方法對(duì)user表中對(duì)應(yīng)的字段進(jìn)行脫敏處理遵岩。通過上面的幾個(gè)步驟的實(shí)施传睹,完成了第一階段的數(shù)據(jù)脫敏工作恼蓬。
在數(shù)據(jù)脫敏方案設(shè)計(jì)與實(shí)施過程中糜烹, 我們覺得更重要的還是從特定的應(yīng)用場(chǎng)景出發(fā)進(jìn)行整體設(shè)計(jì),兼顧了數(shù)據(jù)倉庫建設(shè)這一重要考量維度榆纽。
數(shù)據(jù)脫敏實(shí)施為公司數(shù)據(jù)安全的推進(jìn),提供了有力支持。
當(dāng)然缭召,我們第一階段脫敏的工具集還相對(duì)較少,需要補(bǔ)充逆日。 脫敏的技術(shù)架構(gòu)還有待完善和更加自動(dòng)化嵌巷。
總結(jié)
針對(duì)于大數(shù)據(jù)平臺(tái)對(duì)于數(shù)據(jù)脫敏的需求,本文分析了數(shù)據(jù)泄露可能帶來的風(fēng)險(xiǎn)室抽,介紹了數(shù)據(jù)脫敏技術(shù)的理論基礎(chǔ)與實(shí)現(xiàn)方式搪哪,同時(shí)簡單分析了大數(shù)據(jù)平臺(tái)的隱私數(shù)據(jù)脫敏技術(shù)方向。
本文討論的均是基于離線數(shù)據(jù)的數(shù)據(jù)脫敏坪圾,流式數(shù)據(jù)的脫敏技術(shù)無論是理論基礎(chǔ)與具體實(shí)踐大都還處在摸索的過程中[7]晓折,留待以后繼續(xù)探索惑朦。
引用
- 我國隱私保護(hù)相關(guān)法律報(bào)告
- 索尼用戶隱私數(shù)據(jù)泄露事件
- Uniqueness of Simple Demographics in the U.S. Population
- Protecting Privacy when Disclosing Information: k-Anonymity and Its Enforcement through Generalization and Suppression
- ?-Diversity: Privacy Beyond k-Anonymity
- Enhancing Cloud Security Using Data Anonymization
- CASTLE: Continuously Anonymizing Data Streams
參見:
大數(shù)據(jù)與數(shù)據(jù)脫敏:https://zhuanlan.zhihu.com/p/20824603
美團(tuán)數(shù)據(jù)倉庫-數(shù)據(jù)脫敏:https://tech.meituan.com/data_mask.html