從傳鋒,楊 楨
(重慶師范大學涉外商貿學院,重慶 401520)
大數據的快速發展雖然給生活提供了極大的便利,可同樣也伴隨著巨大的風險。在大數據的環境下,隱私信息很容易泄漏,通過網絡所留下的一些信息,有可能被一些人進行利用,對此造成的損失以及后果是無法挽回的[1]。而各領域之間的數據共享和交換,對數據隱私保護提出了更多的要求,以此來迫使發布的匿名數據隱私滿足所有用戶的需求。
潘明波[2]提出的大數據環境下網絡數據隱私保護算法研究。先獲取隱私數據的特征,然后隨機生成一個變換函數,根據變換函數對隱私數據的特征值進行變換,實現隱私信息保護。該方法效率高,但保護效果不理想,存在較大誤差。劉彥和張琳[3]提出了位置大數據中一種基于Bloom Filter的匿名保護方法。采用隱私度量技術劃分匿名區,來隱藏隱私數據的真實位置。該方法保護效果好,但效率較低。
為此,提出一種基于大數據模式分解的隱私信息保護方法,利用網路數據隱私保護原理生成隨機轉化回答結果,再通過屬性聚類的方式對準標識符屬性類似值與敏感屬性類似值進行聚類,接著完成等價劃分,最終本文方法與MAH-ABE算法、CP-ABPRE兩種算法對比,經過實驗以后,本文方法具有優越性。
利用各種數據分解方法,以保證大數據滿足隱私保護的要求,所有的數據都是通過等價類標識符進行連接的,因此需要建立數據模式矩陣,接著利用模式矩陣完成對大數據分解[4]。
數據模式分解:給定的數據集D與數據集合A={A1,A2,…,An},即D的一個模式分解M定義成若干個子模式的集合M={m1,m2,…,m},其中所有的子模式?mi∈M,mi?A。
一個數據集會有很多種分解模式,依據不同的標準將這些模式分類[5]。可以分成滿足安全模式與不滿足安全模式兩種。依據分解模式的子模式數目,會有很多種結果,至少可以分解出一張表,最多能夠分解出n張表。
安全分解:給定的數據集D與屬性集合A,M則是一個安全的模式分解,即M滿足:?mi∈M,?rj∈R:mi滿足rj;?mi∈M:mi?A。
正確分解:給定的數據集D、屬性集合A與D的隱私數據C,M是隱私數據的C一個正確分解模式。即M滿足:?mi∈M,?rj∈C:mi滿足cj;?mi∈M:mi?A
一個正確模式分解一定會是一個安全分解模式[6]。
數據模式矩陣DMM:給定數據集D、屬性集合A={A1,A2,…,An}與隱私要求集合R={r1,r2,…,rm},即D的數據模式矩陣DMM是m×n的矩陣,它的所有行都各自對應著隱私向量[v(r1)T,v(r2)T,…,v(rm)T]T,具體定義為:
1)DMM的所有行都各自對應著屬性集合A的所有元素;
2)DMM的所有列都對應隱私要求的所有的要求;
3)DMM[i][j]代表第Ai(1≤i≤n)個屬性在第ri(1≤j≤m)個隱私要求上取值,其中riQ(rj)→S(rj),Q(rj)={Q1,Q2,…,QnQ},S(rj)={S1,S2,…,Sn}。
4)Resp[i]代表第Ai(1≤i≤n)個屬性在所有隱私要求上的綜合權重,即取值的總和。

(1)
Resp[i]=(1,1,…,1)1×m×DMMm×n

(2)
式中:|rj|代表rj的準標識符屬性個數與敏感屬性的數量之和。
轉化隨機回答網絡隱私處理的中心思想是,隨機生成一個給定條件的大數據,然后利用網絡中的隱私數據特征進行函數的變換,在對原始的網絡數據值轉換以后,將轉換以后的數據視為隨機回答的結果[7],具體的過程如下:
在大數據的環境下,假如給定的網絡數據集合為A={a1,a2,…,al},即網絡隱私數據元素的均值與方差分別可用以下的公式進行表示

(3)

(4)
式中:l代表網絡隱私數據中的屬性值;i代表隱私數據中的特征向量;ai代表隱私數據中的損失信息。
針對數值x,其隱私化的數據隨機函數公式為
r(x)=ax+b
(5)
式中:a∈A代表從隱私數據集合A內隨機選取的一個元素;b∈B代表從隱私數據集合B內隨機選取的一個元素,利用轉換后結果能夠利用下列公式進行計算,得出
y=r(x)
(6)
上式發布的網絡隱私數據集D′內的n條記錄相對應的敏感屬性At取值公式
Y=R(X)
(7)
式中:R(X)代表網絡隱私數據中的相似數據樣本,并且yi=r(xi),i=1,2,…n。
通過上面的描述轉換隨機回答方法,可將初始的網絡隱私數據x轉變,其公式如下所示
y=r(x)=ax+b
(8)

(9)


(10)


(11)

(12)
而初始網絡隱私數據均值方差的計算公式為

(13)


(14)


(15)

敏感屬性類似值聚類是數據隱私保護的主要方法:敏感屬性(SA)的不相同取值間具有一些特定的聯系,而且此聯系是通過準標識符屬性表現出來的,且具有特定的聯系敏感屬性取值,稱作相似敏感屬性值[8]。采用SA類似值聚類就能夠有效的避免匿名數據遭受到近似的攻擊影響[9]。
QI屬性可以分成字符屬性與數值屬性,現有的方法采用數值計算的方式來對相對數值屬性差異度進行處理;而相對字符屬性通常是沒有好的解決辦法,只能利用QI屬性值的聚類分析,可以計算出字符串之間的差異度,形成距離的字典,利用此方法對字符屬性的取值進行比較時,查找距離字典就可以了。
隨后采用兩次聚類進行等價類劃分與對數據的匿名操作。先分析敏感屬性值聚類。其原理如下:使用三維矩陣針對所有的敏感屬性取值聚類。通過這種方式來保護個人信息[10]。按照K-means的計算方法[11],隨機抽取敏感屬性S1的取值集合S1(Sv1,Sv2,…,Svd)內的K元素。作為K個簇的簇中心,其中d是敏感屬性維數;分別計算剩下的元素到K簇中心的相異度,把這些元素經過劃分各自最低簇的相異度,依據聚類的結果,對各自K簇的中心進行計算,直到把S1內的所有元素按照全新的中心進行聚類。一直到所有的SA聚類桶內的聚類中心收斂為止;就能夠得到K個SA聚類桶。
完成許多敏感屬性
D1×D2×…×Dd

(16)
接著完成所有的數據的聚類,首先對復合敏感屬性
仿真從隱私安全性以及算法的執行效率兩方面進行,隱私安全可通過密碼算法驗證,而執行效率可通過服務系統計算時間,同時計算時間又可以分成加密算法鑰匙的生成時間與解密時間,系統界面如圖1所示。

圖1 系統界面
為了進一步證明本文方法的有效性,通過傳統的MAH-ABE算法、CP-ABPRE算法進行對比,以此驗證本文方法的效果。
MAH-ABE算法的處理結果是只有用戶本身能夠獲取解密以后的隱私信息,所以,這就需要利用敏感信息隱藏率計算。而敏感信息隱藏率是其加密后所占敏感屬性信息屬性比例得出的。因此,可以獲得如圖2所示的不同算法的隱私保護能力敏感信息隱藏率。

圖2 不同算法敏感信息隱藏率對比圖
通過上述圖2能夠看出。MAH-ABE對敏感信息的隱藏率最低,因為該方法面對選擇性文本攻擊時,隱私的保護能力較弱。同時CP-ABPRE隱藏率與MAH-ABE結果近似,都會隨著總體數據量的增加而降低,而所提方法可以處理海量數據且處理效果較優秀,處理大量數據時會面臨計算時間短、處理效率滿,因此所提方法相比其它兩種性能更加優秀。
執行效率是利用私鑰的生成時間與加解密的時間的比值。其私鑰的生成時間是分別圍繞著屬性個數和屬性集合數量兩個方面進行。首先私鑰生成時間可采用兩方面表示:數據屬性個數、屬性集合個數。表1是屬性集合個數為1的情況下,幾種算法的私鑰生成時間和數據屬性個數的關聯。

表1 私鑰生成時間/S和屬性個數關聯
根據上表能夠看出,在屬性集合個數一定情況下,所有算法的私鑰生成時間都將會隨著屬性數目的增加而增加,且較為明顯。相對而言,本文算法在數據屬性個數較大情況下,要比另外兩種方法私鑰生成時間短,所以本文方法的執行效果更好。非常適合在大數據中使用,在相同的環境下數據的屬性個數設為50的進行實驗,結果如表2所示。

表2 私鑰的生成時間/S和屬性集合個數關系(集合50)
根據上表能夠看出,在數據屬性個數不變的情況下,私鑰生成時間是隨著集合個數增加而增加的。不過增長的速度較慢,根據不同結果可以看出本文算法在數據屬性集合增加的情況下,其私鑰生成時間相對另外兩種算法要少。
接著利用實驗進行驗證,對不同方法的加密時間與解密時間分析。如表3所示。
根據表3中能夠看出,本文保護方法具有更好的處理效率,加快數據加密與解密時間,使分級關聯和處理機制能夠更好對大數據進行保留。

表3 加密與解密時間的對比/s
進一步驗證加密后數據增量變化,進行如下實驗,實驗結果如圖3所示。

圖3 加密后的初始數據增量
根據圖3能夠看出,本文方法隨著數據屬性的增加所產生的數據要遠遠小于其它方法。這是因為公共數據對隱私保護的要求較低,所提方法利用公共數據的輕量級加密,導致數據的增加得較小。
提出一種基于大數據模式分解的隱私信息保護方法,利用隨機生成轉化的回答結果,通過聚類方式對準標識符屬性類似值與敏感屬性類似值進行聚類完成等價劃分。最終通過實驗證明,本文方法具有優秀的隱私效果,且可以保持高效率應對海量數據。不過未來還需要對其進行深入研究,通過分析其中的問題,并找出原因,制定更有效的措施,從而讓網絡的大數據環境得到安全性,使人們能夠隨意放心的通過網絡享受生活的便利。