徐雅斌,郭 昊
(1.網(wǎng)絡(luò)文化與數(shù)字傳播北京市重點(diǎn)實(shí)驗(yàn)室,北京 100101;2.北京信息科技大學(xué)北京材料基因工程高精尖創(chuàng)新中心,北京 100101;3.北京信息科技大學(xué)計(jì)算機(jī)學(xué)院,北京 100101)
隨著人工智能和大數(shù)據(jù)技術(shù)的逐漸成熟和快速發(fā)展,數(shù)據(jù)成為一種稀缺資源。很多研究機(jī)構(gòu)和科技型企業(yè)因缺少數(shù)據(jù),由此嚴(yán)重阻礙了其業(yè)務(wù)的開(kāi)展。為鼓勵(lì)和支持大數(shù)據(jù)的發(fā)展,2015 年9 月5 日,我國(guó)政府頒布了《促進(jìn)大數(shù)據(jù)發(fā)展行動(dòng)綱要》,其中明確提出要在依法加強(qiáng)安全保障和隱私保護(hù)的前提下,穩(wěn)步推動(dòng)公共數(shù)據(jù)資源開(kāi)放,形成政府?dāng)?shù)據(jù)統(tǒng)一開(kāi)放平臺(tái)。通過(guò)制定公共機(jī)構(gòu)數(shù)據(jù)開(kāi)放計(jì)劃,建立政府部門和事業(yè)單位等公共機(jī)構(gòu)數(shù)據(jù)資源清單,并制定實(shí)施政府?dāng)?shù)據(jù)開(kāi)放共享標(biāo)準(zhǔn)與數(shù)據(jù)開(kāi)放計(jì)劃。
由于大數(shù)據(jù)中包含大量有關(guān)個(gè)人的隱私信息,如果不能對(duì)數(shù)據(jù)進(jìn)行有效管理和利用,則不可避免地會(huì)造成隱私數(shù)據(jù)的泄露,給相關(guān)人員帶來(lái)負(fù)面影響和傷害,不僅會(huì)引發(fā)法律糾紛,而且也將嚴(yán)重制約大數(shù)據(jù)和人工智能技術(shù)的快速發(fā)展與廣泛應(yīng)用。因此,對(duì)數(shù)據(jù)進(jìn)行隱私保護(hù)是一個(gè)不容忽視的問(wèn)題。
本文構(gòu)建一個(gè)隱私保護(hù)模型,該模型根據(jù)用戶身份和數(shù)據(jù)用途判定用戶安全等級(jí),確定對(duì)應(yīng)的匿名化方案和初始隱私參數(shù),判斷是否能夠同時(shí)滿足數(shù)據(jù)發(fā)布方的隱私保護(hù)要求以及數(shù)據(jù)使用方對(duì)數(shù)據(jù)可用性的要求,按確定的方法和參數(shù)進(jìn)行隱私保護(hù)處理并發(fā)布數(shù)據(jù)。
在數(shù)據(jù)隱私保護(hù)領(lǐng)域,研究工作主要面向訪問(wèn)者的隱私保護(hù)策略和面向數(shù)據(jù)本身的隱私保護(hù)技術(shù)兩個(gè)方面。面向訪問(wèn)者的隱私保護(hù)策略中最常用的解決方案為基于角色或目的的訪問(wèn)控制策略[1-2]。目的是防止非法用戶進(jìn)入系統(tǒng),以及合法用戶對(duì)系統(tǒng)資源的非法使用,從而保證數(shù)據(jù)中的隱私不被泄露。
面向數(shù)據(jù)本身的隱私保護(hù)技術(shù),依據(jù)實(shí)現(xiàn)方法的不同大致分為干擾和轉(zhuǎn)換方法[3-4]、匿名化方法[5-7]、安全多方計(jì)算方法[7-8]和基于以上幾種方法的混合方法[9]等。
干擾和轉(zhuǎn)換方法的基本思想是通過(guò)加入噪聲數(shù)據(jù)來(lái)保護(hù)真實(shí)數(shù)據(jù)。一方面確保不會(huì)泄露用戶的隱私,另一方面使得這些被修改后的數(shù)據(jù)仍可用于統(tǒng)計(jì)分析。由于該方法對(duì)原始數(shù)據(jù)進(jìn)行了修改,因此不能很好地支持查詢統(tǒng)計(jì)等需求。
匿名化方法因?yàn)槠滹@著的安全性和有效性而得到了更為廣泛的應(yīng)用,目前已發(fā)展成為一系列的方法。其中,最著名的方法是k-anonymity 方法[10]。該方法是由SWEENEY 等人于1998 年提出的,可以有效地阻止鏈接攻擊。然而,k-anonymity 方法存在以下缺陷:當(dāng)一個(gè)分組中的所有記錄擁有同一個(gè)敏感屬性值時(shí),攻擊者就可以輕易獲得隱私信息。
為解決分組中含有同種敏感屬性值的問(wèn)題,MACHANAVAJJHALA 等人于2006 年提出了ldiversity 方法[11],有效解決了k-anonymity 方法所存在的鏈接攻擊問(wèn)題,但該方法無(wú)法抵擋相似性攻擊,即某一敏感屬性值占比過(guò)大的情況。在這種情況下,攻擊者仍有較高的概率可以推出個(gè)體隱私。隨后LI 等人提出了t-closeness 方法[12],它要求分組中敏感屬性值的分布和數(shù)據(jù)表中的分布是近似的,由此可以解決l-diversity 方法所存在的相似性攻擊問(wèn)題。
在實(shí)際應(yīng)用中,動(dòng)態(tài)數(shù)據(jù)發(fā)布比較普遍,但是當(dāng)對(duì)數(shù)據(jù)表中增加新的數(shù)據(jù)后,可能會(huì)導(dǎo)致對(duì)數(shù)據(jù)表做的匿名保護(hù)被破壞,從而泄露隱私。因此,需要對(duì)增量數(shù)據(jù)進(jìn)行匿名化處理。文獻(xiàn)[13]提出了支持連續(xù)發(fā)布數(shù)據(jù)表的插入更新匿名模型。在每個(gè)發(fā)布的數(shù)據(jù)表滿足l-diversity 約束的前提下,新的記錄如果滿足l-diversity 約束,則可以直接插入原表,否則將記錄分別插入到已有的信息損失最小等價(jià)類中。
此外,針對(duì)多維敏感屬性的情況,文獻(xiàn)[14-15]提出了多維桶分組發(fā)布(Multi-Sensitive Bucketization,MSB)模型,以解決多維敏感屬性數(shù)據(jù)的匿名化問(wèn)題,該方法的解決主要是根據(jù)敏感屬性值來(lái)構(gòu)建多維桶,每個(gè)桶中映射多個(gè)記錄,再根據(jù)不同的選擇策略在不同的桶中提取記錄,從而形成分組。在提取記錄時(shí),盡量從不同的桶中提取記錄,使得單個(gè)維度上每條記錄的敏感值都不相同。
綜上所述,盡管出現(xiàn)了一些新的隱私保護(hù)方法,但到目前為止,經(jīng)典的隱私保護(hù)方法當(dāng)屬隱私保護(hù)程度呈逐級(jí)遞增的k-anonymity、l-diversity 和tcloseness 3 種方法,但3 種方法對(duì)數(shù)據(jù)的破壞程度也是逐級(jí)遞增的[16]。其中,k-anonymity 方法對(duì)數(shù)據(jù)的改動(dòng)最少,數(shù)據(jù)可用性最好,但隱私效果最差;tcloseness 方法的隱私保護(hù)效果最好,但對(duì)數(shù)據(jù)改動(dòng)很大,可用性也是最差的;l-diversity 方法的數(shù)據(jù)改動(dòng)性和可用性處于中游。如何針對(duì)不同的隱私保護(hù)需求,科學(xué)、合理地選取最恰當(dāng)?shù)姆椒?,并自?dòng)找到最優(yōu)的參數(shù),還沒(méi)有實(shí)際可應(yīng)用的成果。因此,如何選取最合適的方法與參數(shù),使得進(jìn)行隱私保護(hù)處理后的數(shù)據(jù)既可以達(dá)到數(shù)據(jù)提供者所希望的隱私保護(hù)效果,又能夠滿足數(shù)據(jù)使用者的可用性要求,是非常值得研究的[17-19]。
本文的創(chuàng)新點(diǎn)如下:
1)提出了一個(gè)面向數(shù)據(jù)發(fā)布的隱私保護(hù)模型,通過(guò)該模型不僅可以選擇最適合的隱私保護(hù)方法,而且還可以優(yōu)選對(duì)應(yīng)的隱私保護(hù)參數(shù),既可以達(dá)到數(shù)據(jù)提供者所期望的隱私保護(hù)效果,又能夠滿足數(shù)據(jù)使用者對(duì)可用性的要求。
2)給出了k-匿名隱私保護(hù)算法中的k參數(shù)、l-多樣性隱私保護(hù)算法中的l參數(shù)以及t-閉合隱私保護(hù)算法中的t參數(shù)的優(yōu)選方法,從而為用戶確定這些參數(shù)提供了便利。
本文數(shù)據(jù)隱私保護(hù)模型如圖1 所示。
圖1 大數(shù)據(jù)發(fā)布隱私保護(hù)模型Fig.1 Big data dissemination privacy protection model
從圖1 可以看出,用戶首先進(jìn)行登錄/注冊(cè),系統(tǒng)識(shí)別用戶身份,然后提交自己的數(shù)據(jù)需求范圍和數(shù)據(jù)用途說(shuō)明,數(shù)據(jù)層接收到用戶的數(shù)據(jù)需求后,執(zhí)行SQL 查詢語(yǔ)句,檢索出用戶所需要的數(shù)據(jù)。安全等級(jí)判斷模塊則根據(jù)用戶的身份和數(shù)據(jù)的用途為用戶確定安全等級(jí),并將等級(jí)信息傳遞給隱私保護(hù)處理部分。隱私保護(hù)處理部分根據(jù)用戶的安全等級(jí)在隱私保護(hù)程度不同的3 種匿名化方法中為其選擇合適的匿名化方法。確定匿名化方法后,再針對(duì)該方法進(jìn)行初始參數(shù)選取。然后根據(jù)數(shù)據(jù)提供方的隱私保護(hù)要求進(jìn)行效果評(píng)價(jià),若不滿足要求則進(jìn)行參數(shù)調(diào)整,如果參數(shù)調(diào)整無(wú)效則進(jìn)行方案調(diào)整。每次調(diào)整完成后,重新進(jìn)行隱私保護(hù)效果評(píng)估。參數(shù)調(diào)整完成后,隱私保護(hù)數(shù)據(jù)處理模塊按照所選擇的匿名化方法及參數(shù)對(duì)待發(fā)布數(shù)據(jù)進(jìn)行隱私保護(hù)處理,形成可發(fā)布數(shù)據(jù)。
表1 為按照用戶身份和數(shù)據(jù)用途確定數(shù)據(jù)安全級(jí)別,并對(duì)應(yīng)選擇匿名化處理方法。
表1 安全等級(jí)及匿名化方法對(duì)比Table 1 Comparison of security level and anonymization methods
由于模型中采用的3 種隱私保護(hù)方法均為經(jīng)典的方法,因此本文不再闡述。但是如何選取恰當(dāng)?shù)膮?shù),目前尚無(wú)具體的解決方案,因此,本文研究的重點(diǎn)和闡述的內(nèi)容主要放在參數(shù)的優(yōu)選上。
在k-anonymity 隱私保護(hù)方法中,k的取值直接影響隱私保護(hù)的程度和數(shù)據(jù)的質(zhì)量[20-21]。k的取值越大,對(duì)應(yīng)的等價(jià)類規(guī)模就越大,為了滿足k-匿名約束,需要泛化的屬性值也越多(泛化范圍越大),因此數(shù)據(jù)質(zhì)量就越差。但同時(shí)由于每個(gè)等價(jià)類對(duì)應(yīng)的實(shí)體也越多,因此猜測(cè)每個(gè)實(shí)體敏感信息的概率也就越小,隱私保護(hù)的程度也越高。k的取值越小,對(duì)應(yīng)的等價(jià)類規(guī)模就越小,為了滿足k-匿名約束,需要泛化的屬性值就越少(泛化范圍越?。?,因此數(shù)據(jù)質(zhì)量就越好。每個(gè)等價(jià)類對(duì)應(yīng)的實(shí)體越少,猜測(cè)每個(gè)實(shí)體敏感信息的概率就越大,隱私保護(hù)的程度也越低。因此,k值的選取非常重要,需要從隱私保護(hù)程度和數(shù)據(jù)可用性兩個(gè)方面考慮。如果選取不當(dāng),則會(huì)影響隱私保護(hù)效果。
因此,首先必須確定隱私保護(hù)程度的評(píng)價(jià)方法和約束條件[22-23]。對(duì)于隱私保護(hù)程度的評(píng)價(jià),用等價(jià)類中敏感屬性值的最大重復(fù)次數(shù)與等價(jià)類元組數(shù)之比來(lái)計(jì)算,所代表的意義是從任意等價(jià)類中推測(cè)出某一實(shí)體隱私信息的概率。隱私約束條件即為隱私泄露概率閾值,用Pmax來(lái)表示,Pmax由數(shù)據(jù)提供方根據(jù)實(shí)際數(shù)據(jù)的情況給出。Pmax與k值的數(shù)學(xué)關(guān)系如下:
其中,t為等價(jià)類中敏感屬性值的最大重復(fù)次數(shù),Kmin為k值的最小值。
對(duì)于數(shù)據(jù)可用性的評(píng)價(jià),文獻(xiàn)[12]采用辨識(shí)度度量標(biāo)準(zhǔn)(CDM)作為數(shù)據(jù)質(zhì)量的評(píng)估指標(biāo)。為更加準(zhǔn)確地描述k值與數(shù)據(jù)質(zhì)量之間的關(guān)系,本文對(duì)辨識(shí)度度量標(biāo)準(zhǔn)進(jìn)行了改進(jìn),計(jì)算方法如下:
其中,Q表示數(shù)據(jù)表中第i個(gè)等價(jià)類的規(guī)模,N為等價(jià)類數(shù)目。CDM值越小,說(shuō)明數(shù)據(jù)表中的等價(jià)類規(guī)模越均勻,數(shù)據(jù)質(zhì)量也越好;CDM值越大,說(shuō)明數(shù)據(jù)表中的等價(jià)類規(guī)模相差越大,數(shù)據(jù)質(zhì)量也越差。數(shù)據(jù)質(zhì)量約束條件即為數(shù)據(jù)質(zhì)量閾值,由用戶根據(jù)數(shù)據(jù)的特定應(yīng)用來(lái)確定。k值與CDM的數(shù)學(xué)關(guān)系如下:
根據(jù)式(1)和式(3),即可求出Kmin和Kmax。由此可以確定,k值的可選范圍為[Kmin,Kmax]。k值的選取范圍是一個(gè)區(qū)間值,通常比較寬泛。當(dāng)k取Kmin時(shí),數(shù)據(jù)表的數(shù)據(jù)質(zhì)量最好,但隱私保護(hù)程度最低;當(dāng)k取Kmax時(shí),數(shù)據(jù)質(zhì)量最差,但隱私保護(hù)程度最高。因此,k的取值具體需要根據(jù)需求來(lái)確定。在一般情況下,可以選取兩者的中間值,即=Kmin+(Kmax-Kmin)/2。
由此可見(jiàn),本文方法在進(jìn)行k參數(shù)優(yōu)選時(shí),通過(guò)確定k的最大和最小取值范圍[Kmin,Kmax],可有效地避免k值選取的盲目性,幫助盡快找到最合適的k值,從而為k-anonymity 隱私保護(hù)方法的應(yīng)用提供指導(dǎo)和幫助,提高k-anonymity 隱私保護(hù)方法的有效性和可用性。
信息熵在一定程度上反映了屬性的分布情況。信息熵越大,意味著等價(jià)類中敏感屬性值的分布越均勻,推導(dǎo)出具體個(gè)體的難度也就越大。為此,文獻(xiàn)[9]給出了基于信息熵確定l值的方法,但該方法并沒(méi)有考慮到數(shù)據(jù)質(zhì)量的問(wèn)題。由于l-diversity 方法建立在k-anonymity 方法的基礎(chǔ)上,因此本文在k值選取方法的基礎(chǔ)上,給出了同時(shí)滿足給定隱私保護(hù)要求和數(shù)據(jù)質(zhì)量要求的l值取值算法。
算法1l值取值算法
輸入滿足k-anonymity 約束的數(shù)據(jù)表,滿足用戶給出隱私保護(hù)要求與數(shù)據(jù)可用性要求的k值
輸出l值
1)計(jì)算由信息熵模型確定的l值。
假設(shè):A為準(zhǔn)標(biāo)識(shí)屬性,SA為敏感屬性,S={Si…Sj}為敏感屬性值,等價(jià)類集合為E={Ei…Ej},則l的計(jì)算公式為:
其中,p、E、s為等價(jià)類Ei中敏感屬性值s出現(xiàn)的頻率,為等價(jià)類Ei的信息熵。根據(jù)式(4),可以得出l的最大值。l的最小值取敏感屬性類別最少的等價(jià)類中所包含的敏感屬性的類別數(shù)。
2)l值從最小值開(kāi)始取值。判斷數(shù)據(jù)表是否滿足l-diversity 約束,若滿足,則參數(shù)調(diào)整結(jié)束。l值即為該步驟下取得的l值。
3)若不滿足約束,則添加和該等價(jià)類內(nèi)準(zhǔn)標(biāo)識(shí)屬性值相同的元組。添加元組的敏感屬性值類別為表中包含的,且在該等價(jià)類中并不包含的類別,直至數(shù)據(jù)表滿足l-diversity 約束。
4)重新計(jì)算數(shù)據(jù)表的CDM值,判斷該值是否小于滿足l-diversity 最小值約束的數(shù)據(jù)表的CDM值。若小于該值,則說(shuō)明經(jīng)過(guò)l-diversity 處理后,數(shù)據(jù)表的數(shù)據(jù)可用性滿足用戶要求,那么參數(shù)調(diào)整結(jié)束。
5)若不滿足,則l值加1,返回步驟2),直至l值增加到最大值。
6)若l值嘗試到最大值時(shí),仍不滿足條件,此時(shí)k值加1,返回步驟1)。
7)若k值增至最大值時(shí),所有l(wèi)值仍不滿足,則參數(shù)選取失敗。
該取值算法最終取得的(k,l)參數(shù),即為同時(shí)滿足給定的隱私保護(hù)要求和數(shù)據(jù)質(zhì)量要求的參數(shù)。
從實(shí)現(xiàn)成本上來(lái)看,為了平衡隱私保護(hù)要求和數(shù)據(jù)質(zhì)量要求,需要增加一個(gè)(k,l)參數(shù)選取算法,較k參數(shù)的優(yōu)選成本有較大提升。
該算法的算法復(fù)雜度僅為O(k×l)。復(fù)雜度與k值和l值成正比,隨著k和l的增大而增大。因此,盡快確定k和l參數(shù),能夠有效降低算法的復(fù)雜度。
若(k,l)參數(shù)選取失敗,則表明隱私保護(hù)要求和數(shù)據(jù)質(zhì)量要求相沖突,算法不能同時(shí)滿足給定的隱私保護(hù)要求和數(shù)據(jù)質(zhì)量要求。此時(shí),已不再適合采用l-diversity 方法,應(yīng)選擇k-anonymity 方法進(jìn)行隱私保護(hù),除非提高隱私泄露閾值或降低數(shù)據(jù)質(zhì)量要求。
在t-closeness 方法中,給定不同的t參數(shù)將直接影響要保護(hù)數(shù)據(jù)表的隱私保護(hù)程度和數(shù)據(jù)質(zhì)量。一般來(lái)說(shuō),t值越大,分布差異也越大。那么,對(duì)數(shù)據(jù)的約束就越寬松,相應(yīng)的數(shù)據(jù)質(zhì)量就越好,相對(duì)應(yīng)地,隱私保護(hù)的程度就越低。反之,t值越小,等價(jià)類的分布就需要更加接近被保護(hù)數(shù)據(jù)表的分布。那么,為滿足t-closeness 的隱私約束,需要泛化的屬性就越多(泛化范圍越大),數(shù)據(jù)質(zhì)量就越差,但同時(shí)每個(gè)等價(jià)類對(duì)應(yīng)的實(shí)體也越多,因此猜測(cè)每個(gè)實(shí)體敏感信息的概率就越小,隱私保護(hù)程度也越高。
綜上可以看出,t值的選取非常重要,需要從隱私保護(hù)程度和數(shù)據(jù)可用性兩個(gè)方面考慮。選取不當(dāng),就會(huì)影響隱私保護(hù)效果。為此,本文提出一個(gè)t值選取方法,可以選取同時(shí)滿足隱私保護(hù)要求和數(shù)據(jù)可用性要求的t值。
t參數(shù)選取算法的主要思想就是通過(guò)迭代的方式不斷地調(diào)整t值,使得CDM小于由Pmax決定的CDM的初始值(即滿足隱私保護(hù)要求的數(shù)據(jù)表所能到達(dá)的最佳數(shù)據(jù)質(zhì)量),記為。Pmax與的數(shù)學(xué)關(guān)系為:
當(dāng)CDM小于該值時(shí),數(shù)據(jù)表的數(shù)據(jù)可用性必定滿足用戶對(duì)于數(shù)據(jù)質(zhì)量的要求,那么此時(shí)對(duì)應(yīng)的t值就是最優(yōu)的。
算法2t參數(shù)選取的算法
輸入經(jīng)過(guò)泛化的表T、Pmax
輸出t
1)數(shù)據(jù)表T的等價(jià)類集合為E={Ei…Ej},P為Di所有值的集合。
2)令Di=EDM(T,Ei),EMD(Earth Mover’s Distance)為推土機(jī)距離,表示從一個(gè)分布轉(zhuǎn)移到另一個(gè)分布所需要的最小代價(jià)。Dmin=min{Di},Dmax=max{Di},分別為最小代價(jià)和最大代價(jià),根據(jù)實(shí)際分布情況確定,并非是一個(gè)定值。
其中,Di表示第i個(gè)等價(jià)類中敏感屬性值的分布與全局分布的距離。
3)令表T滿足t值為Dmin的t-closeness 約束,計(jì)算表T的CDM值。若小于,則參數(shù)選取結(jié)束,此時(shí)t的取值即為Dmin。
4)若不滿足,則t值增加Dmin,返回步驟3,直到t≥Dmax。
5)若t≥Dmax時(shí)仍不滿足,則參數(shù)選取失敗。
通過(guò)該參數(shù)選取算法所取得的參數(shù),即為同時(shí)滿足給定的隱私保護(hù)要求和數(shù)據(jù)質(zhì)量要求的參數(shù)。如果參數(shù)選取失敗,說(shuō)明隱私保護(hù)要求和數(shù)據(jù)質(zhì)量要求相沖突,不能同時(shí)滿足給定的隱私保護(hù)要求和數(shù)據(jù)質(zhì)量要求。此時(shí),已不再適合采用t-closeness 方法,除非提高隱私泄露閾值或降低數(shù)據(jù)質(zhì)量要求。
由于t的取值范圍為(0~1),因此在進(jìn)行t值選取的過(guò)程中,為降低算法的復(fù)雜性,提高收斂速度,本算法將t值控制在兩位精度。
本文實(shí)驗(yàn)所采用的數(shù)據(jù)集為醫(yī)院患者數(shù)據(jù)集,包含25 000 條記錄,大小為2.3M。其中包含患者的基本信息和疾病信息,共計(jì)5 個(gè)屬性,準(zhǔn)標(biāo)識(shí)屬性共4 個(gè),分別為{性別,年齡,出生日期,郵編},敏感屬性共1 個(gè),為{疾?。?。在數(shù)據(jù)的預(yù)處理過(guò)程中,將數(shù)據(jù)的顯標(biāo)識(shí)屬性和含有缺失值的元組去除。
下文主要從方法的擴(kuò)展性、數(shù)據(jù)的可用性和隱私保護(hù)的效果3 個(gè)方面對(duì)模型的性能進(jìn)行評(píng)價(jià)。
設(shè)初始值k=5,l=4,t=0.25,測(cè)試在不同數(shù)據(jù)量情況下,采用k-anonymity、l-diversity 和t-closeness 3 種匿名隱私保護(hù)方法進(jìn)行匿名化處理的執(zhí)行時(shí)間隨數(shù)據(jù)量變化而變化的情況,如圖2 所示。
圖2 不同方法的實(shí)驗(yàn)結(jié)果Fig.2 Experimental results of different methods
在給定其他參數(shù)值時(shí),圖2 中曲線的變化趨勢(shì)是一致的。從圖2 可以看出,當(dāng)利用3 種匿名化方法處理同樣的數(shù)據(jù)量時(shí),k-anonymity 耗時(shí)最少,ldiversity 次之,t-closeness 耗時(shí)最多。這是因?yàn)? 種方法的隱私保護(hù)程度是遞增的,因而方法的復(fù)雜性也是遞增的。但是,3 種方法的執(zhí)行時(shí)間都隨著數(shù)據(jù)量的增加基本呈線性增長(zhǎng),這說(shuō)明3 種方法的可擴(kuò)展性較好。
為測(cè)試通過(guò)參數(shù)選取方法所取得的參數(shù)是否能夠滿足數(shù)據(jù)可用性要求,并且同時(shí)滿足隱私保護(hù)要求,提取實(shí)驗(yàn)數(shù)據(jù)集中的3 000 條記錄,屬性集與上文實(shí)驗(yàn)所用的數(shù)據(jù)集相同,假設(shè)隱私泄露概率閾值Pmax=0.25。根據(jù)上面的參數(shù)選取方法所計(jì)算出來(lái)的參數(shù)分別為k=7、l=5、t=0.42。
不同k值對(duì)應(yīng)的數(shù)據(jù)質(zhì)量指標(biāo)CDM與隱私泄露概率閾值Pmax的對(duì)應(yīng)關(guān)系如圖3 所示。
圖3 不同k 值對(duì)應(yīng)的數(shù)據(jù)可用性實(shí)驗(yàn)結(jié)果Fig.3 Experimental results of data availability corresponding to different k values
從圖3 可以看出,數(shù)據(jù)質(zhì)量隨著隱私泄露概率閾值的降低而提高。只要k≥7 與Pmax≤0.25,均滿足隱私保護(hù)要求,但當(dāng)k=7、Pmax=0.23 時(shí),CDM值是滿足隱私保護(hù)要求的參數(shù)值中最小的,對(duì)應(yīng)的數(shù)據(jù)質(zhì)量最優(yōu)。由此表明,通過(guò)k值選取算法可以得到數(shù)據(jù)質(zhì)量最優(yōu),且滿足隱私保護(hù)要求的參數(shù)。
l值選取算法的實(shí)驗(yàn)結(jié)果如圖4 所示。
圖4 不同l 值對(duì)應(yīng)的數(shù)據(jù)可用性實(shí)驗(yàn)結(jié)果Fig.4 Experimental results of data availability corresponding to different l values
從圖4 可以看出,由于l-diversity 比k-anonymity更嚴(yán)格,因而隱私保護(hù)程度更高。對(duì)應(yīng)地,l-diversity的Pmax比k-anonymity 的Pmax值應(yīng)更小。經(jīng)過(guò)l-diversity 進(jìn)行隱私保護(hù)處理后的數(shù)據(jù)質(zhì)量更差。對(duì)應(yīng)地,l-diversity 的CDM比k-anonymity 的CDM值也更大。為此,在給定Pmax=0.25 的情況下,就要向下尋找滿足Pmax≤0.25 情況下可以取得的l值。l的可取值范圍為5、6、7。顯然,取l=5 可取得最小的CDM,即在滿足隱私保護(hù)要求的前提下,當(dāng)l=5 時(shí)數(shù)據(jù)質(zhì)量最優(yōu)。由此說(shuō)明,本文提出的l值選取算法可以得到數(shù)據(jù)質(zhì)量最優(yōu),且滿足隱私保護(hù)要求的參數(shù)。
t值選取算法的實(shí)驗(yàn)結(jié)果如圖5 所示。
圖5 不同t 值對(duì)應(yīng)的數(shù)據(jù)可用性實(shí)驗(yàn)結(jié)果Fig.5 Experimental results of data availability corresponding to different t values
從圖5 可以看出,t值的間隔為0.21,該值為最小規(guī)模等價(jià)類的EMD 距離。t值越大,即分布差異越大,對(duì)隱私的約束就越寬松。對(duì)應(yīng)地,隱私保護(hù)程度就會(huì)相應(yīng)降低,數(shù)據(jù)質(zhì)量也就會(huì)越好。因此,在滿足隱私保護(hù)要求的所有t值(t=0.42,t=0.21)中,取t=0.42 比t=0.21 的數(shù)據(jù)質(zhì)量更優(yōu)。由此證明,t值選取算法可以得到數(shù)據(jù)質(zhì)量最優(yōu),且滿足隱私保護(hù)要求的參數(shù)。
本文實(shí)驗(yàn)主要驗(yàn)證在不同屬性集的情況下,經(jīng)過(guò)匿名化處理后數(shù)據(jù)集抵御攻擊的能力。對(duì)此可通過(guò)計(jì)算不能抵御攻擊的等價(jià)類占所有等價(jià)類的比例進(jìn)行判斷。實(shí)驗(yàn)結(jié)果如圖6 所示。
圖6 不同匿名方法的抵御攻擊比較Fig.6 Comparison of anti-attack capabilities of different anonymous methods
從圖6 可以看出,隨著準(zhǔn)標(biāo)識(shí)屬性的增加,等價(jià)類生成的規(guī)模也越來(lái)越小,越來(lái)越難以滿足匿名約束,由此導(dǎo)致3 種方法整體的抵御攻擊能力逐漸變?nèi)?。? 種方法的比較可以看出,k-anonymity 的抵御攻擊能力最差,這是因?yàn)閗-anonymity 沒(méi)有對(duì)敏感屬性值做任何約束。而l-diversity 和t-closeness 針對(duì)這一問(wèn)題進(jìn)行了改進(jìn),所以抵御攻擊的能力遞進(jìn)增強(qiáng)。
由于l-diversity 要求每個(gè)等價(jià)類中至少含有l(wèi) 個(gè)敏感屬性值,因此需要對(duì)k-anonymity 處理后的數(shù)據(jù)進(jìn)行l(wèi)-diversity 約束判斷。盡管l-diversity 相比于kanonymity 做了很大的改進(jìn),但是仍然無(wú)法避免相似性攻擊。所謂相似攻擊是指在某一敏感屬性值占比過(guò)大的情況下,攻擊者有較高概率可以推斷出個(gè)體隱私。由于t-closeness 方法進(jìn)一步考慮了敏感屬性值的分布問(wèn)題,因此要求任何一組等價(jià)類中的敏感值分布與該屬性在整個(gè)數(shù)據(jù)表中的分布差異不能超過(guò)預(yù)先設(shè)定的閾值t,從而解決了相似性攻擊的問(wèn)題。
在保證數(shù)據(jù)可用性的同時(shí)又不泄露個(gè)體隱私是大數(shù)據(jù)發(fā)布的基本要求和前提。本文設(shè)計(jì)基于匿名化隱私保護(hù)方法的大數(shù)據(jù)發(fā)布系統(tǒng)模型。根據(jù)用戶的不同身份和數(shù)據(jù)的不同應(yīng)用需求,選擇合適的匿名化方法和參數(shù),有效地實(shí)現(xiàn)隱私保護(hù),并提出了針對(duì)模型中3 種方法的參數(shù)優(yōu)選方法,使得經(jīng)過(guò)處理后的數(shù)據(jù)既可以達(dá)到數(shù)據(jù)提供方所要求的隱私保護(hù)效果,同時(shí)也能夠滿足數(shù)據(jù)使用方對(duì)數(shù)據(jù)可用性的要求。實(shí)驗(yàn)結(jié)果證明了該方法的有效性。由于本文只研究了關(guān)系型數(shù)據(jù)的靜態(tài)發(fā)布問(wèn)題,下一步將研究有關(guān)數(shù)據(jù)增量更新和動(dòng)態(tài)發(fā)布的問(wèn)題。