文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.2016.11.016
中文引用格式: 吳響,俞嘯,王換換. 面向數(shù)據(jù)挖掘的匿名化隱私數(shù)據(jù)發(fā)布系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2016,42(11):62-65.
英文引用格式: Wu Xiang,Yu Xiao,Wang Huanhuan. Design of anonymous privacy data publishing system for data mining[J].Application of Electronic Technique,2016,42(11):62-65.
0 引言
隨著信息技術(shù)及數(shù)據(jù)挖掘技術(shù)的飛速發(fā)展,越來越多的數(shù)據(jù)為人們所共享使用。如何保護(hù)發(fā)布數(shù)據(jù)中的隱私信息不被攻擊者惡意獲取,同時(shí)又使數(shù)據(jù)接收者充分利用數(shù)據(jù)信息進(jìn)行有效的探索和科學(xué)研究,已成為一個(gè)重要的信息安全問題。
目前,學(xué)術(shù)界對(duì)隱私保護(hù)技術(shù)開展了較為深入的研究[1-2],相關(guān)技術(shù)大致可以分為3 類:基于數(shù)據(jù)失真的技術(shù)[3-4]、基于數(shù)據(jù)加密的技術(shù)[5-6]和基于限制發(fā)布的技術(shù)[7-8]。其中,基于限制發(fā)布技術(shù)中的k-匿名得到廣泛的應(yīng)用[9]。k-匿名方法又可以分為精確求解方法和近似求解方法。前者能保證找到最優(yōu)k-匿名方案,但其時(shí)間復(fù)雜度為指數(shù)級(jí),只適用于小規(guī)模數(shù)據(jù);后者只能找到近似最優(yōu)k-匿名方案,但其時(shí)間復(fù)雜度為線性或近似線性,可應(yīng)用于大規(guī)模數(shù)據(jù)。同時(shí)近似求解方法通過采用多種啟發(fā)策略,可以在多項(xiàng)式時(shí)間內(nèi)找到滿足特定目標(biāo)函數(shù)的局部最優(yōu)方案,但不能保證找到全局最優(yōu)方案。不同的匿名算法應(yīng)用場(chǎng)景不同,數(shù)據(jù)匿名效果也各不相同,因此,需要根據(jù)發(fā)布者的需求進(jìn)行定制數(shù)據(jù)匿名化。
本文針對(duì)不同應(yīng)用場(chǎng)景及不同的用戶需求,對(duì)匿名化隱私數(shù)據(jù)發(fā)布系統(tǒng)進(jìn)行了研究。該系統(tǒng)在保證發(fā)布數(shù)據(jù)滿足k-匿名的基礎(chǔ)上,設(shè)計(jì)了自定義匿名算法的功能,實(shí)現(xiàn)用戶數(shù)據(jù)定制化發(fā)布;同時(shí)結(jié)合嵌入式Web服務(wù)器技術(shù)打破傳統(tǒng)硬件的限制,用戶在能夠訪問Internet的地方即可進(jìn)行數(shù)據(jù)發(fā)布的相關(guān)操作。通過測(cè)試實(shí)驗(yàn)對(duì)系統(tǒng)性能進(jìn)行評(píng)估,結(jié)果表明該系統(tǒng)具有良好的匿名性、移動(dòng)性和可擴(kuò)展性,同時(shí)具有很好的服務(wù)選擇性。
1 系統(tǒng)總體設(shè)計(jì)
系統(tǒng)主要由遠(yuǎn)程數(shù)據(jù)庫(kù)、數(shù)據(jù)發(fā)布終端及遠(yuǎn)程瀏覽器3部分構(gòu)成,實(shí)現(xiàn)數(shù)據(jù)的獲取、處理、發(fā)送及顯示,圖1所示為系統(tǒng)的總體結(jié)構(gòu)圖。
系統(tǒng)流程:用戶通過瀏覽器連接終端內(nèi)的嵌入式Web服務(wù)器對(duì)數(shù)據(jù)發(fā)布過程中的數(shù)據(jù)庫(kù)連接、算法選擇、數(shù)據(jù)加密方式及要求等相關(guān)信息進(jìn)行配置,同時(shí)通過遠(yuǎn)程瀏覽器實(shí)現(xiàn)任務(wù)開啟、結(jié)果顯示、數(shù)據(jù)導(dǎo)出等功能;數(shù)據(jù)發(fā)布終端在收到Web服務(wù)器的開始任務(wù)請(qǐng)求后讀取系統(tǒng)配置信息,通過Internet獲取遠(yuǎn)程數(shù)據(jù)庫(kù)的數(shù)據(jù)源,并使用相關(guān)算法將數(shù)據(jù)進(jìn)行匿名化操作;最后,終端將處理完成的數(shù)據(jù)集通過Web服務(wù)器呈現(xiàn)給遠(yuǎn)程瀏覽器,并提供文件導(dǎo)出、數(shù)據(jù)庫(kù)轉(zhuǎn)存等多種數(shù)據(jù)導(dǎo)出方式。
2 系統(tǒng)硬件設(shè)計(jì)
為了使數(shù)據(jù)發(fā)布終端既作為數(shù)據(jù)處理單元又作為嵌入式Web服務(wù)器單元,實(shí)現(xiàn)用戶通過瀏覽器對(duì)終端進(jìn)行遠(yuǎn)程配置、任務(wù)執(zhí)行和結(jié)果輸出等操作,將系統(tǒng)硬件分為電源管理模塊、處理器模塊、數(shù)據(jù)存儲(chǔ)模塊、網(wǎng)絡(luò)通信模塊和顯示器模塊5個(gè)部分,硬件系統(tǒng)總體結(jié)構(gòu)如圖2所示。
系統(tǒng)選用三星公司ARM Cortex系列中最新推出的Exynos 4412芯片為主處理器,是32 nm HKMG(High-K Metal Gate,HKMG)工藝的4核處理器,主頻高達(dá)1.5 GHz,具有高性能、低功耗的優(yōu)點(diǎn)。終端同時(shí)配備2G DDR3(Double Data Rate SDRAM 3,DDR3)內(nèi)存及4 GB高速閃存。系統(tǒng)選用由Davicom公司生產(chǎn)的DM9000A作為以太網(wǎng)控制器芯片,它有1個(gè)10/100 Mb/s的自適應(yīng)物理層與4 KB雙字節(jié)大小的靜態(tài)隨機(jī)存儲(chǔ)器,支持8 bit和16 bit的接口,可以支持不同類型的處理器,從而為終端執(zhí)行數(shù)據(jù)加密處理過程提供可靠、高效的執(zhí)行環(huán)境和硬件支持。
3 系統(tǒng)軟件設(shè)計(jì)
3.1 數(shù)據(jù)發(fā)布終端軟件設(shè)計(jì)
數(shù)據(jù)發(fā)布終端結(jié)合嵌入式Web服務(wù)器技術(shù)[10]實(shí)現(xiàn),用戶通過PC端的瀏覽器,使用圖形界面來直接地訪問嵌入式系統(tǒng)。這種基于Internet的方式使用戶端可以在世界任何一個(gè)可連接Internet的地方訪問Web服務(wù)器,根據(jù)用戶需求隨時(shí)隨地進(jìn)行數(shù)據(jù)匿名發(fā)布操作,極大地方便了用戶進(jìn)行的數(shù)據(jù)發(fā)布、系統(tǒng)管理和科研工作。
為實(shí)現(xiàn)用戶通過遠(yuǎn)程瀏覽器與嵌入式Web服務(wù)器進(jìn)行通信,系統(tǒng)中數(shù)據(jù)發(fā)布終端既作為數(shù)據(jù)處理單元又作為嵌入式Web服務(wù)器單元。嵌入式Web服務(wù)器在μClinux操作系統(tǒng)基礎(chǔ)上,利用操作系統(tǒng)自帶的TCP/IP協(xié)議棧提供的Socket編程接口進(jìn)行通信。Web服務(wù)器由Http引擎及應(yīng)用程序接口組成,通過CGI程序調(diào)用嵌入式應(yīng)用程序模塊,從而實(shí)現(xiàn)用戶驗(yàn)證、系統(tǒng)配置、任務(wù)執(zhí)行和數(shù)據(jù)導(dǎo)出等功能。嵌入式Web服務(wù)器總體結(jié)構(gòu)框架如圖3所示。
數(shù)據(jù)發(fā)布終端Web服務(wù)器采用多進(jìn)程偵聽模式,允許多個(gè)用戶的同時(shí)連接。在Socket通信套接字創(chuàng)建完成后,終端偵聽的過程是一個(gè)無限循環(huán),當(dāng)偵聽到合法連接后便進(jìn)行連接操作并解析Http報(bào)文請(qǐng)求。首先判斷用戶的合法性,若用戶身份認(rèn)證通過則繼續(xù)解析,否則返回登錄提示W(wǎng)eb界面。
CGI(Common Gateway Interface,CGI)是一種動(dòng)態(tài)Web網(wǎng)頁(yè)技術(shù),通過CGI程序定義的接口標(biāo)準(zhǔn)與其他應(yīng)用程序模塊之間進(jìn)行交互。在Web服務(wù)器對(duì)客戶端瀏覽器發(fā)送的請(qǐng)求報(bào)文進(jìn)行判斷時(shí),若為靜態(tài)頁(yè)面則直接返回相應(yīng)頁(yè)面,若為CGI動(dòng)態(tài)請(qǐng)求則將報(bào)文數(shù)據(jù)傳遞到CGI程序中處理,進(jìn)行相關(guān)操作并將執(zhí)行的結(jié)果封裝成Html形式發(fā)送到客戶端瀏覽器,從而展現(xiàn)給用戶。 具體的軟件流程如圖4所示。
3.2 算法介紹
為了適應(yīng)數(shù)據(jù)挖掘中不同應(yīng)用場(chǎng)景下的隱私保護(hù)匿名化需求,系統(tǒng)內(nèi)置10種匿名化隱私保護(hù)算法。算法主要分為全域泛化算法[11]和局域泛化算法[12]兩類,其中全域泛化算法包含Incognito算法、Datafly算法、Samarati算法、Classfly 算法和Classfly+算法;局域泛化算法包含TDS(Top-Down Specialization)算法、Mondrian算法、MDAV算法、KACA算法和Filter K-匿名算法。
本系統(tǒng)的內(nèi)置算法在其原文獻(xiàn)中均需消耗大量時(shí)間進(jìn)行訪問I/O接口的操作,使得算法處理數(shù)據(jù)集效率較差。針對(duì)這一問題本系統(tǒng)進(jìn)行了算法優(yōu)化,使系統(tǒng)在處理數(shù)據(jù)集時(shí)除讀取數(shù)據(jù)和導(dǎo)出匿名后的數(shù)據(jù)外,其余操作均在內(nèi)存中完成。這種優(yōu)化方式雖然消耗了內(nèi)存資源,但大幅度縮短了處理數(shù)據(jù)集的時(shí)間,提高了系統(tǒng)對(duì)數(shù)據(jù)匿名化處理的效率。
以Incognito算法為例,在文獻(xiàn)[11]中,該算法在形成表Ei的過程是在數(shù)據(jù)庫(kù)中進(jìn)行的,需要多次訪問I/O接口,造成時(shí)間的損耗。以下是文獻(xiàn)[11]形成Ei的SQL語(yǔ)句:
INSERT INTO Ei (start, end) WITH CandidateEdges (start, end) AS (SELECT p.ID, q.ID FROM Ci p, Ci q, Ei-1 e, Ei-1 f WHERE (e.start = p.parent1 ∧ e.end = q.parent1 ∧ f.start = p.parent2 ∧ f.end = q.parent2) ∨ (e.start = p.parent1 ∧ e.end = q.parent1 ∧ p.parent2 = q.parent2) ∨ (e.start = p.parent2 ∧ e.end = q.parent2 ∧ p.parent1 = q.parent1) ) SELECT D.start, D.end FROM CandidateEdges D EXCEPT SELECT D1.start, D2.end FROM CandidateEdges D1, CandidateEdges D2 WHERE D1.end = D2.start
這段代碼多次訪問I/O接口,占用該算法運(yùn)行的大部分時(shí)間,本系統(tǒng)內(nèi)置的Incognito算法對(duì)本部分優(yōu)化的偽代碼如下:
其中Ei包含Start和End兩個(gè)字段,Ci包含ID、屬性名和各屬性泛化級(jí)別字段。以上代碼均在內(nèi)存中執(zhí)行,減少了原算法的I/O接口的訪問次數(shù),極大地縮短了算法處理數(shù)據(jù)集的時(shí)間。
4 測(cè)試結(jié)果
為驗(yàn)證面向數(shù)據(jù)挖掘的匿名化隱私數(shù)據(jù)發(fā)布系統(tǒng)的實(shí)用性,測(cè)試選取了來自公共數(shù)據(jù)庫(kù)UC Irvine Machine Learning Repsditory的Adult數(shù)據(jù)集中的訓(xùn)練集(大小:30 162條記錄)作為系統(tǒng)數(shù)據(jù)源并對(duì)其進(jìn)行匿名化測(cè)試,準(zhǔn)標(biāo)識(shí)符屬性為age、workclass、education、marital_status、race、sex、native_country,敏感屬性為salary。
4.1 功能測(cè)試
在功能測(cè)試中,設(shè)置匿名隱私約束k等于10。測(cè)試時(shí),在瀏覽器地址欄下輸入嵌入式Web服務(wù)器的IP地址,服務(wù)器對(duì)瀏覽器的請(qǐng)求作出響應(yīng),進(jìn)行相應(yīng)操作并將結(jié)果發(fā)給瀏覽器。在瀏覽器中進(jìn)行對(duì)數(shù)據(jù)清洗,配置k-匿名隱私約束、準(zhǔn)標(biāo)識(shí)符屬性、泛化規(guī)則以及敏感屬性操作,并根據(jù)不同的需求選用相應(yīng)的匿名化隱私保護(hù)算法,最后執(zhí)行k-匿名處理。源數(shù)據(jù)表經(jīng)過泛化后均滿足k-匿名,且匿名表信息損失量較小。
4.2 性能測(cè)試
在性能測(cè)試中,以Incognito算法為例進(jìn)行了不同k值約束條件下文獻(xiàn)算法與系統(tǒng)優(yōu)化內(nèi)置算法執(zhí)行時(shí)間的對(duì)比,具體時(shí)間對(duì)比如表1所示。
5 結(jié)論
本文描述了面向數(shù)據(jù)挖掘的匿名化隱私數(shù)據(jù)發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),該系統(tǒng)通過內(nèi)置算法匿名化數(shù)據(jù)集的準(zhǔn)標(biāo)識(shí)符屬性,從而避免個(gè)人信息泄漏。測(cè)試結(jié)果證明,本系統(tǒng)可以有效地實(shí)現(xiàn)數(shù)據(jù)集的匿名,保護(hù)了個(gè)人隱私信息,并且其內(nèi)置的優(yōu)化算法大幅度地提高了處理數(shù)據(jù)的效率。同時(shí),系統(tǒng)提供的可配置數(shù)據(jù)庫(kù)及自定義算法功能使數(shù)據(jù)發(fā)布得以定制化,具有較好的移動(dòng)性、可擴(kuò)展性和服務(wù)選擇性,為數(shù)據(jù)挖掘科研工作的開展提供較大的參考價(jià)值。
參考文獻(xiàn)
[1] 周水庚,李豐,陶宇飛,等.面向數(shù)據(jù)庫(kù)應(yīng)用的隱私保護(hù)研究綜述(四)[J].計(jì)算機(jī)學(xué)報(bào),2009,32(5):847-861.
[2] 朱青,趙桐,王珊.面向查詢服務(wù)的數(shù)據(jù)隱私保護(hù)算法[J].計(jì)算機(jī)學(xué)報(bào),2010,33(8):1315-1323.
[3] SAYGIN Y,VERYKIOS V S,ELMAGARMID A K.Privacy preserving association rule mining[A].Proceedings of the 12th International Workshop on Research Issues in Data Engineering(RIDE)[C].USA:San Jose,2002:151-158.
[4] AGGARWAL C C,YU P S.A condensation approach to privacy preserving data mining[A].Proceedings of the 9th International Conference on Extending Database Technology (EDBT)[C].Greece:Heraklion,2004:183-199.
[5] YAO A C.How to generate and exchange secrets[A].Proceedings of the 27th IEEE Symposium on Foundations of Computer Science(FOCS)[C].Canada:Toronto,1986:162-167.
[6] CLIFTON C,KANTARCIOGLOU M,LIN X,et a1.Tools for privacy preserving distributed data mining[J].ACM SIGKDD Explorations,2002,4(2):28-34.
[7] 韓建民,于娟,虞惹群.面向敏感值的個(gè)性化隱私保護(hù)[J].電子學(xué)報(bào),2010,38(7):1723-1728.
[8] 楊靜,王超,張鍵沛.基于敏感屬性熵的微聚集算法[J].電子學(xué)報(bào),2014,42(7):1327-1337.
[9] SWEENEY L.Achieving k-anonymity privacy protection using generalization and suppression[J].International Journal of Uncertainty,F(xiàn)uzziness and Knowledge-Based System,2002,10(5):571-588.
[10] 王莉,周偉.基于ARM的嵌入式Web服務(wù)器設(shè)計(jì)[J].計(jì)算機(jī)工程與應(yīng)用,2012,48(14):90-93.
[11] LEFEVRE K,DEWITT D J,RAMAKRISHNAN R.Incognito:efficient full-domain K-anonymity[C].ACM SIGMOD International Conference on Management of Data,USA:Maryland,2005:49-60.
[12] LEFEVRE K,DEWITT D J,RAMAKRISHNAN R.Mondrian multi-mensional K-anonymity[C].Proc.of the 22nd International Conference on Data Engineering,2006.