引自:《智能制造信息安全技術》(作者:秦志光, 聶旭云, 秦臻)
伴隨著當代社會互聯網技術的飛速發展,整個社會也進入了大數據時代。不論人們承認與否,我們的個人數據正在不經意間被動地被企業、個人進行搜集并使用。個人數據的網絡化和透明化已經成為不可阻擋的大趨勢。這些用戶數據對企業來說是珍貴的資源,因為他們可以通過數據挖掘和機器學習從中獲得大量有價值的信息。與此同時,用戶數據亦是危險的“潘多拉之盒”,數據一旦泄漏,用戶的隱私將被侵犯。在智能制造這一環境中,其系統本身不僅能夠在實踐中不斷地充實知識庫,而且其還具有自學習功能,并且具有搜集與理解環境信息和自身的信息,并且進行分析判斷和規劃自身能力的行為,所以在這一環境下,大數據系統的隱私保護工作就顯得尤為重要[1]。
「1.大數據系統隱私保護概述」
一個隱私保護系統包括各種參與者角色(participation role)、匿名化操作(anonymization operation)與數據狀態(data status),它們之間的關系如圖1所示。在隱私保護的研究中,有4個數據參與者角色。
圖1一個隱私保護系統中的數據參與角色及其操作
(1)數據生成者(data generator):指那些生成原始數據的個體或組織,例如病人的醫療記錄、客戶的銀行交易業務。他們以某種方式主動提供數據(如發布照片到社交網絡平臺)或被動提供數據給別人(如在電子商務、電子支付系統中留下個人的信用卡交易記錄等)。
(2)數據管理者(data curator):指那些收集、存儲、掌握、發布數據的個人或組織。
(3)數據使用者(data user):指為了各種目的對發布的數據集進行訪問的用戶。
(4)數據攻擊者(data attacker):指那些為了善意或惡意的目的從發布的數據集中企圖獲取更多信息的人。數據攻擊者是一種特殊類型的數據使用者。
在大數據系統中隱私保護技術方面,隱私保護的研究領域主要關注基于數據失真的技術、基于數據加密的技術和基于限制發布的技術。
基于數據失真的技術,主要通過添加噪聲等方法,使敏感數據失真但同時保持某些數據或數據屬性不變,仍然可以保持某些統計方面的性質。包括隨機化,即對原始數據加入隨機噪聲,然后發布擾動后數據的方法;第二種是阻塞與凝聚,阻塞是指不發布某些特定數據的方法,凝聚是指原始數據記錄分組存儲統計信息的方法;第三類是差分隱私保護。
基于數據加密的技術,采用加密技術在數據挖掘過程隱藏敏感數據的方法,包括安全多方計算 SMC,即使兩個或多個站點通過某種協議完成計算后,每一方都只知道自己的輸入數據和所有數據計算后的最終結果;還包括分布式匿名化,即保證站點數據隱私、收集足夠的信息實現利用率盡量大的數據匿名。
基于限制發布的技術,有選擇地發布原始數據、不發布或者發布精度較低的敏感數據,實現隱私保護。當前這類技術的研究集中于“數據匿名化”,保證對敏感數據及隱私的披露風險在可容忍范圍內。包括K-anonymity、L-diversity、T-closeness等[2]。
最早被廣泛認同的隱私保護模型是k-匿名,由Samarati和Sweeney在2002年提出,作者正是馬薩諸塞州醫療數據隱私泄露事件的攻擊者。為應對去匿名化攻擊,k-匿名要求發布的數據中每一條記錄都要與其他至少k-1條記錄不可區分(稱為一個等價類)。當攻擊者獲得k-匿名處理后的數據時,將至少得到k個不同人的記錄,進而無法做出準確的判斷。參數k表示隱私保護的強度,k值越大,隱私保護的強度越強,但丟失的信息更多,數據的可用性越低。
然而,美國康奈爾大學的Machanavajjhala等人在2006年發現了k-匿名的缺陷,即沒有對敏感屬性做任何約束,攻擊者可以利用背景知識攻擊、再識別攻擊和一致性攻擊等方法來確認敏感數據與個人的關系,導致隱私泄露。例如,攻擊者獲得的k-匿名化的數據,如果被攻擊者所在的等價類中都是艾滋病病人,那么攻擊者很容易做出被攻擊者肯定患有艾滋病的判斷(上述就是一致性攻擊的原理)。為了防止一致性攻擊,新的隱私保護模型l-diversity改進了k-匿名,保證任意一個等價類中的敏感屬性都至少有l個不同的值。t-Closeness在l-diversity 的基礎上,要求所有等價類中敏感屬性的分布盡量接近該屬性的全局分布。(a, k)-匿名原則,則在k-匿名的基礎上,進一步保證每一個等價類中與任意一個敏感屬性值相關記錄的百分比不高于a。
上述隱私保護模型依然有缺陷,需要不斷地被改進,但同時又有新的攻擊方法出現,使得基于k-匿名的傳統隱私保護模型陷入這樣一個無休止的循環中。差分隱私(differential privacy, DP)是微軟研究院的Dwork在2006年提出的一種新的隱私保護模型。該方法能夠解決傳統隱私保護模型的兩大缺陷:
(1)定義了一個相當嚴格的攻擊模型,不關心攻擊者擁有多少背景知識,即使攻擊者已掌握除某一條記錄之外的所有記錄信息(即最大背景知識假設),該記錄的隱私也無法被披露;
(2)對隱私保護水平給出了嚴謹的定義和量化評估方法。正是由于差分隱私的諸多優勢,使其一出現便迅速取代傳統隱私保護模型,成為當前隱私研究的熱點,并引起了理論計算機科學、數據庫、數據挖掘和機器學習等多個領域的關注。
「2.隱私保護常用算法簡介」
1)K-匿名(K-Anonymity)算法
在大數據的時代,很多機構需要面向公眾或研究者發布其收集的數據,例如醫療數據,地區政務數據等。這些數據中往往包含了個人用戶或企業用戶的隱私數據,這要求發布機構在發布前對數據進行脫敏處理。K匿名算法是比較通用的一種數據脫敏方法。例如下面兩張表,一張是用戶的會員注冊信息表,一張是對外發布的醫療信息表。每一行代表用戶的一條記錄,每一列表示一個屬性。每一個記錄與一個特定的用戶/個體關聯,這些屬性可以分為4類。
表1 會員注冊信息表
表2 醫療信息表
(1)顯示標識符(ID):記錄的唯一標識。
(2)準標識符(QI):較高概率識別記錄的最小屬性集合。
(3)敏感屬性(SA):需要保護的信息。
(4)非敏感屬性(NSA):為保護用戶的數據隱私,通常在發布之前會刪除顯示標識符,但通過準標識符結合背景知識,也可以獲得一次額外敏感信息。所以通常對準標識符進行匿名處理。
K-匿名(K-Anonymity)是Samarati和Sweeney在1998年提出的技術,該技術可以保證存儲在發布數據集中的每條個體記錄對于敏感屬性不能與其他的K-1個個體相區分,即K-匿名機制要求同一個準標識符至少要有K條記錄,因此觀察者無法通過準標識符連接記錄。
K-匿名的具體使用如下:隱私數據脫敏的第一步通常是對所有標識符列進行移除或是脫敏處理,使得攻擊者無法直接標識用戶。但是攻擊者還是有可能通過多個準標識列的屬性值識別到個人。攻擊者可能通過(例如知道某個人的郵編,生日,性別等)包含個人信息的開放數據庫獲得特定個人的準標識列屬性值,并與大數據平臺數據進行匹配,從而得到特定個人的敏感信息。為了避免這種情況的發生,通常也需要對準標識列進行脫敏處理,如數據泛化等。數據泛化是將準標識列的數據替換為語義一致但更通用的數據。
K-匿名技術就是每個相等集(或稱為等價組)中的記錄個數為K個,那么當針對大數據的攻擊者在進行鏈接攻擊時,對于任意一條記錄的攻擊同時會關聯到相等集中的其他K-1條記錄。這種特性使得攻擊者無法確定與特定用戶相關的記錄,從而保護了用戶的隱私。
K-匿名的實施,通常是通過概括(generalization)和隱匿(suppression)技術來實現。概括(generalization)指對數據進行更加概括、抽象的描述,使得無法區分具體數值。通過降低發布數據的精度,使得每條記錄至少與數據表中其他的K-1條記錄具有完全相同的準標識符屬性值,從而降低鏈接攻擊所導致的隱私泄露風險。
K-匿名技術能保證以下3點:
(1)攻擊者無法知道某特定個人是否在公開的數據中給定一個人。
(2)攻擊者無法確認他是否有某項敏感屬性。
(3)攻擊者無法確認某條數據對應的是哪個人。但從另外一個角落來看,K-匿名技術雖然可以阻止身份信息的公開,但無法防止屬性信息的公開,導致其無法抵抗同質攻擊,背景知識攻擊,補充數據攻擊等情況。
k-匿名算法存在著一些攻擊方式:
(1)同質化攻擊:某個k-匿名組內對應的敏感屬性的值也完全相同,這使得攻擊者可以輕易獲取想要的信息。
(2)背景知識攻擊:即使k-匿名組內的敏感屬性值并不相同,攻擊者也有可能依據其已有的背景知識以高概率獲取到其隱私信息。
(3)未排序匹配攻擊:當公開的數據記錄和原始記錄的順序一樣的時候,攻擊者可以猜出匿名化的記錄是屬于誰。例如如果攻擊者知道在數據中小明是排在小白前面,那么他就可以確認,小明的購買偏好是電子產品,小白是家用電器。解決方法也很簡單,在公開數據之前先打亂原始數據的順序就可以避免這類的攻擊。
(4)補充數據攻擊:假如公開的數據有多種類型,如果它們的k-anonymity方法不同,那么攻擊者可以通過關聯多種數據推測用戶信息[3]。
2) l-diversity 算法
美國康奈爾大學的Machanavajjhala等人在2006年發現了k-匿名的缺陷,即沒有對敏感屬性做任何約束,攻擊者可以利用背景知識攻擊、再識別攻擊和一致性攻擊等方法來確認敏感數據與個人的關系,導致隱私泄露。例如,攻擊者獲得的k-匿名化的數據,如果被攻擊者所在的等價類中都是艾滋病病人,那么攻擊者很容易做出被攻擊者肯定患有艾滋病的判斷(上述就是一致性攻擊的原理)。為了防止一致性攻擊,新的隱私保護模型l-diversity改進了k-匿名,保證任意一個等價類中的敏感屬性都至少有l個不同的值。t-Closeness在l-diversity 的基礎上,要求所有等價類中敏感屬性的分布盡量接近該屬性的全局分布。(a,k)-匿名原則,則在k-匿名的基礎上,進一步保證每一個等價類中與任意一個敏感屬性值相關記錄的百分比不高于a。如果一個等價類里的敏感屬性至少有l個良表示(well-represented)的取值,則稱該等價類具有l-diversity。如果一個數據表里的所有等價類都具有l-diversity,則稱該表具有l-diversity。
3)t-closeness算法
t-closeness認為,在數據表公開前,觀察者有對于客戶敏感屬性的先驗信念(prior belief),數據表公開后觀察者獲得了后驗信念(posterior belief)。這二者之間的差別就是觀察者獲得的信息(information gain)。t-closeness將信息獲得又分為兩部分:關于整體的和關于特定個體的。
首先考慮如下思想實驗:
記觀察者的先驗信念為B0,我們先發布一個抹去準標識符信息的數據表,這個表中敏感屬性的分布記為Q,根據Q,觀察者得到了B1;然后發布含有準標識符信息的數據表,那么觀察者可以由準標識符識別特定個體所在等價類,并可以得到該等價類中敏感屬性的分布P,根據P,觀察者得到了B2。
l-diversity其實就是限制B2與B0之間的區別。然而,我們發布數據是因為數據有價值,這個價值就是數據整體的分布規律,可以用B0與B1之間的差別表示。二者差別越大,表明數據的價值越大,這一部分不應被限制。也即整體的分布Q應該被公開。因為這正是數據的價值所在。而B1與B2之間的差別,就是我們需要保護的隱私信息,應該被盡可能限制。
t-closeness通過限制P與Q的距離來限制B1與B2的區別。其認為如果P=Q,那么應有B1=B2。P、Q越近,B1、B2也應越近。
The t-closeness Principle:如果等價類E中的敏感屬性取值分布與整張表中該敏感屬性的分布的距離不超過閾值t,則稱E滿足t-closeness。如果數據表中所有等價類都滿足t-closeness,則稱該表滿足t-closeness。
4)差分隱私算法
差分隱私,英文名為differential privacy,顧名思義,保護的是數據源中一點微小的改動導致的隱私泄露問題。圖2為差分隱私處理流程框架。
圖2 差分隱私處理框架流程
「3.面向聚類的隱私保護方案」
1) 面向大數據分析的隱私保護聚類方法
一種面向大數據分析的隱私保護聚類方法,其特征在于,包括以下步驟:
(1)對數據集中的數據進行歸一化處理;
(2)將數據集平均分為k個子集,在每個子集中隨機選擇一個樣本點作為初始中心點;
(3)設置總隱私預算ε和最大迭代次數tm,計算最小隱私預算εm和迭代次數t=ε/εm,如果t>tm,則采用等差隱私預算分配方法來分配隱私預算序列,如果t≤tm,則采用平均隱私預算分配方法來分配隱私預算序列,得到隱私預算序列εp,其中1≤p≤tm;
(4)對于數據集中的所有樣本點,分別計算其到k個中心點的歐氏距離,將樣本點分配給最近的中心點,將數據集劃分為k個聚類C={C1,C2,…,Ck};
(5)根據隱私預算序列εp中對應的項生成拉普拉斯分布的隨機數;
(6)對于每一個聚類Cj,其中1≤j≤k,計算該聚類樣本點數目num以及樣本點的和向量sum,分別對其添加噪聲得到num′和sum′,上述噪聲為步驟(5)中拉普拉斯分布的隨機數;
(7)更新每一個聚類Cj的中心點為sum′/num′,其中1≤j≤k;
(8)計算誤差平方和,如果本次和前次迭代的誤差平方和的差的絕對值小于設置閾值或者迭代次數達到上限tm,則結束執行,得到聚類結果,否則轉到步驟4繼續執行下一次迭代[4]。
2)隱藏算法NeSDO
為了防止微數據敏感性值的泄露,數據隱藏的主要思想是通過修改微數據部分(或全部)數值,盡量避免數據記錄中屬性值之間出現一對一的映射模式,以降低可能存在的逆推猜測風險,這就要求隱藏策略盡量保留數據個體間的共性,弱化個體記錄的個性特征。例如基于限制發布技術的k-匿名隱藏策略,通過限制所發布的每條記錄在準標識符屬性上與至少k-1條記錄的準標識符屬性相同,破壞屬性值間的一對一映射關系,防止敏感微數據值的泄露;而聚類分析的目標是將數據集分成若干聚簇,同一聚簇內數據對象具有較高的相似性,不同聚簇間的數據對象具有較高的相異性,隱藏中如果僅保留數據記錄的共性,則隱藏后數據聚類后所得聚簇劃分可能變得模糊,從而導致錯誤的聚類結果。因此,面向聚類的數據隱藏中,在保持微數據共性的同時,還應保持微數據關于聚類的個性特征。
在基于數據失真的擾動隱藏中,合成數據替換技術采用人工合成數據(通常采用某數據分組的統計信息)對數據表中的個體數據進行置換,由于合成數據并不存在于原數據表中,這種方法往往能獲得較好的隱私保護安全性,同時聚類與數據表全局與局部的統計信息也密切相關,選取合適的數據統計信息有利于聚類可用性的維護。考慮分析共性數據記錄和個性數據記錄特征與其鄰域均值的關系,用合適的鄰域數據記錄均值替換共性數據記錄與個性數據記錄的各屬性取值,實現隱藏操作對數據記錄關于聚類的共性特征和個性特征的保持。
-
數據
+關注
關注
8文章
7080瀏覽量
89175 -
機器學習
+關注
關注
66文章
8424瀏覽量
132765 -
大數據
+關注
關注
64文章
8896瀏覽量
137517
發布評論請先 登錄
相關推薦
評論