亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于Spark的大數(shù)據(jù)匿名化系統(tǒng)實現(xiàn)

        2018-05-04 02:38:58卞超軼朱少敏周濤
        電信科學 2018年4期
        關(guān)鍵詞:標識符子集郵編

        卞超軼,朱少敏,周濤

        (1.北京啟明星辰信息安全技術(shù)有限公司,北京 100193;2.北京郵電大學,北京 100876)

        1 引言

        電力行業(yè)大數(shù)據(jù)分析與應用促進了電力系統(tǒng)運行方式、管理體制、發(fā)展理念和技術(shù)路線等方面的重大變革,成為智能電網(wǎng)和全球能源互聯(lián)網(wǎng)創(chuàng)新發(fā)展的重要技術(shù)支撐。電力大數(shù)據(jù)分析涉及電力企業(yè)核心數(shù)據(jù)以及用戶隱私數(shù)據(jù),具有實時性更高、數(shù)據(jù)敏感度更強等特點,其數(shù)據(jù)安全與隱私保護的需求更加迫切,安全技術(shù)要求更高。例如,為了分析用戶用電行為,需要將用電數(shù)據(jù)提供給內(nèi)外部分析人員,但是原始數(shù)據(jù)中包含涉及用戶隱私部分,一旦大規(guī)模泄露并被不法分子利用,存在巨大安全隱患;在電力企業(yè)運行管理方面,目前廣泛利用大數(shù)據(jù)技術(shù)實現(xiàn)電源電網(wǎng)規(guī)劃、發(fā)輸變電設(shè)備狀態(tài)評估、配電網(wǎng)供電可靠性等研究與應用,這些海量異構(gòu)大數(shù)據(jù)是電力企業(yè)內(nèi)部關(guān)鍵的運行管理數(shù)據(jù),關(guān)系到電力企業(yè)的安全穩(wěn)定運行,大規(guī)模研究與利用對數(shù)據(jù)處理、使用和存儲等方面的信息安全帶來了新挑戰(zhàn);防范大數(shù)據(jù)環(huán)境下電力系統(tǒng)核心數(shù)據(jù)和用戶敏感數(shù)據(jù)的采集、上傳及傳播過程中的敏感數(shù)據(jù)泄露風險,迫切需要研究適應電力業(yè)務(wù)大數(shù)據(jù)分析架構(gòu)的大數(shù)據(jù)去隱私化處理理論、模型和算法,形成大數(shù)據(jù)多層次全方位敏感數(shù)據(jù)保護基礎(chǔ)環(huán)節(jié)。

        數(shù)據(jù)匿名化是指以隱私防護為目的而對數(shù)據(jù)敏感部分進行特殊處理的過程,典型處理手段包括加密、單向散列、消去、掩蓋和模糊泛化等,以避免數(shù)據(jù)在公開或共享時發(fā)生隱私泄露。分組匿名化(group-based anonymization)是一類經(jīng)典數(shù)據(jù)匿名化技術(shù)框架,它通過構(gòu)造匿名數(shù)據(jù)分組使得組內(nèi)的各條數(shù)據(jù)無法互相區(qū)分,從而隱藏數(shù)據(jù)對應的用戶身份。本文設(shè)計并實現(xiàn)了一種基于Spark實現(xiàn)的大數(shù)據(jù)匿名化系統(tǒng),利用分布式內(nèi)存計算來提高計算處理效率,支持Hadoop平臺多種常用數(shù)據(jù)格式,如HDFS文件、Hive表等,并對系統(tǒng)實現(xiàn)的效果進行了測試驗證及性能評估。

        2 相關(guān)工作

        2.1 Hadoop平臺

        Hadoop[1]是由Apache負責開發(fā)及維護的開源軟件框架,主要目標是提供對大數(shù)據(jù)分布式存儲及計算處理的支持。Hadoop的核心是分布式文件系統(tǒng)HDFS與分布式計算引擎MapReduce。

        Spark[2]是一種分布式內(nèi)存計算引擎,相比于MapReduce,啟用了內(nèi)存分布數(shù)據(jù)集,將計算任務(wù)中間結(jié)果保存在內(nèi)存中,避免了 MapReduce計算處理中利用HDFS中轉(zhuǎn)而帶來的大量磁盤I/O,大幅提高并行計算效率。在存儲方面,Spark沿用HDFS,實現(xiàn)對 Hadoop平臺上的多種數(shù)據(jù)管理訪問直接支持。

        2.2 分組匿名化

        傳統(tǒng)數(shù)據(jù)匿名化方法僅僅通過去除數(shù)據(jù)中的身份信息(例如身份證號、姓名等)達到信息隱匿效果,但是仍可利用一些其他信息來定位識別個體。例如,表1中雖然沒有包含身份信息,但是仍可以根據(jù)其中的非敏感信息(年齡、國籍及郵編)推斷識別出具體的個人,從而造成用戶用電量這類隱私敏感信息的泄露。這些可以被用于識別個體身份的非敏感信息被稱為準標識符(quasi-identifier)。數(shù)據(jù)匿名化技術(shù)正是通過對數(shù)據(jù)中的這些準標識符進行處理以達到隱私保護的效果。

        表1 包含敏感信息的數(shù)據(jù)

        分組匿名化是一類經(jīng)典數(shù)據(jù)匿名化技術(shù),其核心思想是通過構(gòu)造匿名記錄組,使得同一組內(nèi)的多條數(shù)據(jù)難以相互區(qū)分。k-匿名化(k-anonymity)[3]要求處理后的數(shù)據(jù)中存在的任意準標識符取值的組合都與至少 k條記錄匹配。匿名化處理的手段有泛化和隱藏:泛化是指將屬性的取值進行模糊替換處理,比如將“28”替換成“<30”,將“中國”替換成“亞洲”等;隱藏是指將屬性值隱去,例如使用“*”替換。表2給出了對表1數(shù)據(jù)經(jīng)過4-匿名化處理后的一種結(jié)果??偣?2條數(shù)據(jù)形成了3組,每組內(nèi)的4條數(shù)據(jù)擁有完全相同的準標識符,無法互相區(qū)分。

        表2 4-匿名化示例

        k-匿名化有缺陷,如表2中最后一組敏感屬性取值相同,這樣仍然暴露了隱私信息,因此l-多元化(l-diversity)[4]要求每種準標識符組合對應數(shù)據(jù)至少有l(wèi)種不同敏感屬性值。表3展示了對表1數(shù)據(jù)進行 3-多元化處理后的結(jié)果,它保證了每組敏感屬性至少有3種不同的取值。

        表3 3-多元化示例

        k-匿名化和l-多元化是廣泛應用的分組匿名化框架,已經(jīng)有相應算法被提出以滿足隱私要求[5],也有適用于小規(guī)模數(shù)據(jù)的開源工具發(fā)布[6],但是針對大數(shù)據(jù)場景僅有一些利用MapReduce來并行匿名化處理過程的工作[7]。為了滿足電力大數(shù)據(jù)分析實際安全需求,本文設(shè)計了基于分布式內(nèi)存計算引擎Spark開發(fā),支持對以HDFS文件、Hive表等格式存儲于 Hadoop平臺的數(shù)據(jù)進行高效匿名化處理的系統(tǒng),滿足分組匿名化的隱私要求,實現(xiàn)數(shù)據(jù)公開及共享時的有效隱私防護。

        3 系統(tǒng)實現(xiàn)

        3.1 匿名化算法

        本系統(tǒng)采用Mondrian算法[8]來實現(xiàn)數(shù)據(jù)匿名化。核心思想是先將所有準標識符對應的屬性完全模糊化,這種情況下所有數(shù)據(jù)條目都是相同的,然后逐輪選取一個屬于準標識符的屬性增加公開信息,對數(shù)據(jù)進行不斷劃分,并確保劃分出的任意子集包含的數(shù)據(jù)條目數(shù)均不小于k,也就是保證k-匿名化要求被滿足。算法每輪迭代中都會選取構(gòu)成準標識符的一個屬性對數(shù)據(jù)進行劃分,循環(huán)迭代直至不能再劃分,即無論如何繼續(xù)劃分都會造成某個子集不再滿足 k-匿名化要求。數(shù)據(jù)屬性有兩種類型:數(shù)值屬性和類別屬性。前者的劃分是通過選取中間值(或中位數(shù))對數(shù)據(jù)進行二分,而后者則是根據(jù)可取的具體類別數(shù)對數(shù)據(jù)進行劃分(二分或多分,由類別屬性的取值數(shù)決定)。

        圖1給出了一個對包含年齡、郵編這兩個數(shù)值屬性的數(shù)據(jù)集使用 Mondrian算法達到 2-匿名化要求的處理過程示例。圖1(a)為數(shù)據(jù)分布情況,以“★”符號表示數(shù)據(jù)條目。初始數(shù)據(jù)中的年齡及郵編屬性被完全模糊化,例如均以“*”表示。假設(shè)首先選擇郵編這一屬性進行數(shù)據(jù)劃分,則結(jié)果如圖1(b)所示。這時位于圖1(b)左側(cè)的數(shù)據(jù)子集的郵編屬性可由初始的“*”表示變化為“≤27K”,而右側(cè)的數(shù)據(jù)子集的郵編屬性變化為“>27K”。然后對位于圖1(b)左側(cè)的數(shù)據(jù)子集選擇年齡這一屬性再次進行劃分,結(jié)果如圖1(c)所示。相應地,圖1(c)左下方數(shù)據(jù)的年齡屬性由初始的“*”變化為“≤60”,而左上方數(shù)據(jù)的年齡屬性變化為“>60”。同樣對位于圖1(c)右側(cè)的數(shù)據(jù)子集也選擇年齡這一屬性進行再劃分,結(jié)果如圖1(d)所示。這樣圖1(d)右下方數(shù)據(jù)的年齡屬性變化為“≤62”,圖 1(d)右上方數(shù)據(jù)的年齡屬性變化為“>62”。此時不能再進行任何劃分,否則會破壞2-匿名化要求。最后數(shù)據(jù)被劃分為4個分組,每個分組內(nèi)的數(shù)據(jù)無法互相區(qū)分。例如圖1(d)中左上方的兩條數(shù)據(jù)的年齡屬性均為“>60”,郵編屬性均為“≤27K”。

        上述的Mondrian算法在簡單修改后即可支持l-多元化。具體來說,在每次數(shù)據(jù)劃分時不檢查劃分出的子集所包含的數(shù)據(jù)條目數(shù),而改為檢查劃分出的數(shù)據(jù)子集是否滿足 l-多元化要求。如果滿足就繼續(xù)遞歸劃分,否則就回滾該次劃分。

        3.2 算法復雜度

        Mondrian匿名化算法應用于僅包含數(shù)值屬性的數(shù)據(jù)集時的工作過程與kd樹的構(gòu)造過程相同,所以具有相同的計算復雜度,即O(nlogn),其中n為總數(shù)據(jù)集大小。而按類別屬性進行劃分時,只需要遍歷一遍相應數(shù)據(jù)即可,與數(shù)值屬性時按中位數(shù)二分的計算復雜度是相同的(均為 O(k),這里k為要劃分的數(shù)據(jù)集大?。?;劃分后形成的子集數(shù)雖然有差別,但是對于總體計算復雜度的影響只體現(xiàn)在常數(shù)系數(shù)上。因此,Mondrian算法應用于一般數(shù)據(jù)集的計算復雜度仍為 O(nlogn),具有良好的可擴展性,適用于大數(shù)據(jù)場景。

        3.3 實現(xiàn)細節(jié)

        (1)數(shù)值類型的劃分實現(xiàn)方式

        Mondrian算法對數(shù)值屬性劃分時采取的方法是按中位數(shù)進行二分。由于在大數(shù)據(jù)規(guī)模下使用快速排序再定位中位數(shù)計算,時間復雜度較高,且線性時間復雜度的求中位數(shù)算法在 Spark上實現(xiàn)較為復雜,所以系統(tǒng)實現(xiàn)時通過統(tǒng)計每種取值出現(xiàn)的次數(shù)再快速定位出中位數(shù),從而發(fā)揮Spark的數(shù)據(jù)并行處理優(yōu)勢。

        圖1 Mondrian算法劃分數(shù)值屬性數(shù)據(jù)示例

        (2)遞歸算法的實現(xiàn)方法

        Mondrian匿名化算法是一個具有遞歸思想的算法,自頂而下地對數(shù)據(jù)進行劃分,不斷對劃分出的子數(shù)據(jù)集使用相同過程進行再次劃分,直至滿足停止條件。然而遞歸實現(xiàn)在 Spark分布式計算平臺上無法使用。本文改進為采用非遞歸實現(xiàn),使用一個隊列記錄之后要繼續(xù)進行劃分的子數(shù)據(jù)集,然后按順序從隊列中取出依次進行。

        (3)輸入配置文件

        數(shù)據(jù)匿名化處理需要類別屬性的泛化樹作為輸入。所謂泛化樹,就是類別屬性進行泛化處理時的層次關(guān)系結(jié)構(gòu),如“中國”→“東亞”→“亞洲”→“*”。本系統(tǒng)中采用文本格式配置文件提供這一輸入,文件中的每一行描述一個從葉節(jié)點(具體屬性取值)到根節(jié)點(通常為“*”)的泛化關(guān)系,例如上述的泛化關(guān)系可表達為:“中國;東亞;亞洲;*”。

        4 系統(tǒng)驗證

        本文系統(tǒng)測試采用機器學習及數(shù)據(jù)分析挖掘中常用的數(shù)據(jù)集Adult進行。Adult數(shù)據(jù)集是從美國1994年人口普查數(shù)據(jù)庫抽取而來,其中包含一個敏感屬性——收入狀況,其他屬性包括年齡、婚姻狀態(tài)、職業(yè)、性別等。在測試中選取了其中8個非敏感屬性(構(gòu)成準標識符),其中兩個是數(shù)值屬性,其余6個均為類別屬性。測試時將數(shù)據(jù)集以文本文件形式存放在HDFS中,同時將匿名化算法所需要的泛化樹等配置信息也置于HDFS中供系統(tǒng)初始化時讀取。

        4.1 效果測試

        圖2顯示了測試數(shù)據(jù)集中準標識符屬性的取值樣例,其中第一列與第三列是數(shù)值屬性,其余均為類別屬性。而圖3則給出了準標識符屬性經(jīng)過本系統(tǒng)進行k-匿名化(k取值為10)處理后的樣例。注意這兩個圖中的數(shù)據(jù)條目并非一一對應,只是隨機選取的展示樣例??梢钥闯?,數(shù)值屬性被泛化成一個區(qū)間,如第一列的“[38,45]”和第三列的“[11,14]”;而類別屬性則被泛化成“*”或其他更高層次的泛化表達。經(jīng)檢查確認,本系統(tǒng)的匿名化處理結(jié)果與Mondrian算法的開源單機實現(xiàn)版本[9]相同,證明了本系統(tǒng)的匿名化算法實現(xiàn)的正確性。類似地,對于 l-多元化也進行了相應測試,同樣能夠得到預期正確結(jié)果,本文不再單獨列出。

        圖2 原始數(shù)據(jù)集準標識符屬性樣例

        圖3 經(jīng)數(shù)據(jù)匿名化處理后的準標識符屬性樣例

        4.2 性能評估

        為了驗證基于 Spark實現(xiàn)的系統(tǒng)在對數(shù)據(jù)進行匿名化處理時能否有效提高效率,對 Adult數(shù)據(jù)集進行擴充之后開展了一些簡單實驗。原始Adult數(shù)據(jù)集包含約 30 000條數(shù)據(jù),無法體現(xiàn)Spark在大數(shù)據(jù)處理方面的優(yōu)勢,因此將其復制100倍、1 000倍,并對復制數(shù)據(jù)條目的數(shù)值屬性進行隨機修改,從而獲得供性能評估測試用的數(shù)據(jù)。具體來說,復制100倍、1 000倍后的數(shù)據(jù)條數(shù)分別達到約3 ×106和30×106,相應的數(shù)據(jù)文件大小分別約為380 MB及3.8 GB。使用單機版的匿名化程序和基于 Spark實現(xiàn)的本系統(tǒng)分別進行相同的處理并記錄各自消耗的時間,對于兩種大小的數(shù)據(jù)集均重復進行了10次實驗。其中實驗用的Spark集群由3臺Dell R720服務(wù)器(CPU:Intel?Xeon? E5-2603 v2@ 1.80 GHz,8核;內(nèi)存:64 GB DDR3@ 1 600 MHz)組成,而單機版則在其中一臺服務(wù)器上運行。圖 4給出了實驗結(jié)果,直方塊表示10次實驗的平均值,誤差條表示標準差。結(jié)果顯示基于Spark實現(xiàn)的匿名化系統(tǒng)比單機版程序?qū)?80 MB和3.8 GB數(shù)據(jù)集進行匿名化處理所用的時間分別少約 21%和 47%,表明基于 Spark實現(xiàn)的系統(tǒng)能夠有效提高數(shù)據(jù)匿名化處理的效率,而且在數(shù)據(jù)規(guī)模增大時優(yōu)勢更為明顯。

        圖4 數(shù)據(jù)匿名化處理時間對比

        5 結(jié)束語

        本文設(shè)計了一個基于分布式內(nèi)存計算引擎Spark開發(fā)實現(xiàn)的大數(shù)據(jù)匿名化系統(tǒng),支持對Hadoop平臺的多種存儲格式的數(shù)據(jù)進行高效匿名化處理,使用Mondrian算法達到k-匿名化、l-多元化等分組匿名化框架,能夠在數(shù)據(jù)公開時對其中包含的隱私信息進行防護隱藏使其不會被惡意攻擊者獲取。系統(tǒng)性能相比于單機處理有明顯提升。在未來的研究工作中,將參考Spark MLlib中決策樹算法的實現(xiàn)來進一步提高系統(tǒng)的處理效率,并對數(shù)據(jù)經(jīng)本系統(tǒng)匿名化處理后的價值損失進行理論分析與評估。

        參考文獻:

        [1] Apache Software Foundation.Apache Hadoop[EB].2011.

        [2] Apache Software Foundation.Apache Spark[EB].2014.

        [3] SWEENEY L.K-anonymity: a model for protecting privacy[J].International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems, 2002, 10(5): 557-570.

        [4] MACHANAVAJJHALA A, KIFER D, GEHRKE J, et al.L-diversity: privacy beyond k-anonymity[J].ACM Transactions on Knowledge Discovery from Data (TKDD), 2007, 1(1): 3.

        [5] FUNG B, WANG K, CHEN R, et al.Privacy-preserving data publishing: a survey of recent developments[J].ACM Computing Surveys (Csur), 2010, 42(4): 14.

        [6] PRASSER F, KOHLMAYER F.Putting statistical disclosure control into practice: the ARX data anonymization tool[M].Berlin: Springer International Publishing, 2015.

        [7] JADHAV R H, INGLE R B.A survey on data anonymization approaches using MapReduce framework on cloud[J].Digital Image Processing, 2015, 7(2): 48-49.

        [8] LEFEVRE K, DEWITT D J, RAMAKRISHNAN R.Mondrian multidimensional k-anonymity[C]//International Conference on Data Engineering, April 3-7, 2006, Atlanta, GA, USA.Piscataway: IEEE Press, 2006: 25.

        [9] QIYUAN G.GitHub-qiyuangong/basic_mondrian[EB].2015.

        猜你喜歡
        標識符子集郵編
        解題擂臺
        由一道有關(guān)集合的子集個數(shù)題引發(fā)的思考
        淺析5G V2X 通信應用現(xiàn)狀及其側(cè)鏈路標識符更新技術(shù)
        基于底層虛擬機的標識符混淆方法
        計算機應用(2022年8期)2022-08-24 06:30:36
        拓撲空間中緊致子集的性質(zhì)研究
        三角
        基于區(qū)塊鏈的持久標識符系統(tǒng)①
        關(guān)于奇數(shù)階二元子集的分離序列
        《蓮年有魚》
        人物畫報(2019年2期)2019-09-10 07:46:47
        理事會員單位排名不分先后
        婷婷亚洲国产成人精品性色| 亚洲男女内射在线播放| 人妻丰满av无码中文字幕| 无码午夜成人1000部免费视频| 亚洲综合欧美日本另类激情| 精品久久久久久国产潘金莲| 国产一区二区三区免费视| 中文字幕亚洲综合久久| 亚洲中文字幕无码久久| 国产在线不卡视频| 蜜桃人妻午夜精品一区二区三区| 亚洲AV成人无码久久精品在| 国内精品国产三级国产avx| 超级乱淫片国语对白免费视频 | 欧美成人久久久| 国产目拍亚洲精品二区| 亚洲av成人综合网成人| 亚洲日韩成人av无码网站| 天天躁日日操狠狠操欧美老妇| 中文字幕日韩一区二区不卡| 久久综合噜噜激激的五月天| 亚洲精品午睡沙发系列| 韩国一级成a人片在线观看| 亚洲一区免费视频看看| 亚洲一区二区三区尿失禁| 人妻少妇精品视中文字幕国语| 亚洲A∨日韩Av最新在线| 日本女优中文字幕在线播放| 亚洲av无码久久精品色欲| 欧美亚洲国产精品久久高清| 人妻爽综合网| 中文字幕亚洲视频一区| 亚洲av中文无码乱人伦在线播放| 日韩第四页| 中文字幕亚洲精品一二三区| 国产亚洲精品久久久久5区| 国产va免费精品高清在线| 无码中文字幕av免费放| 日本亚洲中文字幕一区| 国产精品毛片一区二区| 妺妺窝人体色www聚色窝韩国|