揭秘企業(yè)中的數(shù)據(jù)屏蔽技術(shù)精簡(jiǎn)版
以下的文章主要是淺談揭秘企業(yè)中的數(shù)據(jù)屏蔽技術(shù),公司的網(wǎng)絡(luò)需要定期打補(bǔ)丁,網(wǎng)絡(luò)上運(yùn)行的應(yīng)用程序也亦是如此。將網(wǎng)絡(luò)和應(yīng)用程序補(bǔ)丁和版本升級(jí)結(jié)合起來(lái),就會(huì)發(fā)現(xiàn)要確保所有這些變化不會(huì)破壞企業(yè)的基礎(chǔ)設(shè)施,測(cè)試環(huán)境是多么的重要。
公司的網(wǎng)絡(luò)需要定期打補(bǔ)丁,網(wǎng)絡(luò)上運(yùn)行的應(yīng)用程序也同樣如此。將網(wǎng)絡(luò)和應(yīng)用程序補(bǔ)丁和版本升級(jí)結(jié)合起來(lái),就會(huì)發(fā)現(xiàn)要確保所有這些變化不會(huì)破壞企業(yè)的基礎(chǔ)設(shè)施,測(cè)試環(huán)境是多么的重要。
但在測(cè)試環(huán)境中,使用有效的生產(chǎn)數(shù)據(jù)并不切合實(shí)際。它的使用往往受隱私法律和安全政策的限制。在生產(chǎn)環(huán)境中,可以適當(dāng)?shù)貙?shí)施嚴(yán)格的訪問(wèn)控制措施,用戶界面提供數(shù)據(jù)的控制和管理權(quán)限。
非生產(chǎn)系統(tǒng)中,數(shù)據(jù)的安全性通常無(wú)法滿足開(kāi)發(fā)和測(cè)試過(guò)程中速度和靈活性的要求。加之更多的雇員(如開(kāi)發(fā)人員和系統(tǒng)工程師)需要擁有對(duì)數(shù)據(jù)進(jìn)行低級(jí)別訪問(wèn)的特權(quán)。顯然,這種類(lèi)型的環(huán)境不符合保護(hù)敏感數(shù)據(jù)的法律規(guī)定。
但要實(shí)現(xiàn)有效性,測(cè)試環(huán)境就必須使用真實(shí)數(shù)據(jù)。但是,如果一個(gè)應(yīng)用程序要處理50萬(wàn)個(gè)用戶和幾百萬(wàn)筆交易的話,手動(dòng)創(chuàng)建所需的大量數(shù)據(jù)是不可能的。
那么,在現(xiàn)行系統(tǒng)上運(yùn)行一個(gè)應(yīng)用程序之前,如何獲得該應(yīng)用更新所需的測(cè)試數(shù)據(jù)呢?為了提供實(shí)際數(shù)據(jù),許多測(cè)試團(tuán)隊(duì)轉(zhuǎn)而研究可用于非生產(chǎn)環(huán)境中的數(shù)據(jù)屏蔽技術(shù)。
數(shù)據(jù)屏蔽(data masking)——又被人們稱(chēng)為數(shù)據(jù)混淆、去身份識(shí)別(de-identification)、去個(gè)人化(depersonalization)或數(shù)據(jù)洗擦(data scrubbing),是為了消除數(shù)據(jù)所有可識(shí)別的特征來(lái)實(shí)現(xiàn)匿名時(shí)仍然可用的功能,而最重要的目的是為了消除泄漏敏感信息的風(fēng)險(xiǎn)。
數(shù)據(jù)屏蔽的概念于90年代初首次被提出,目的是:在不暴露敏感信息的情況下,向開(kāi)發(fā)團(tuán)隊(duì)提供有意義的測(cè)試數(shù)據(jù)。最近隨著法律和合規(guī)要求的出臺(tái)以及改進(jìn)的屏蔽技術(shù),重新創(chuàng)建大型數(shù)據(jù)集變得更加容易,這引起了企業(yè)的廣泛注意。
要在安全的基礎(chǔ)上實(shí)現(xiàn)有效性,數(shù)據(jù)屏蔽技術(shù)必須通過(guò)改變數(shù)據(jù)來(lái)保護(hù)個(gè)人記錄的隱私,所以無(wú)法確定或重新計(jì)算出實(shí)際值。最常用的數(shù)據(jù)屏蔽技術(shù)有加密、混編(shuffling)、屏蔽、替代、方差(variance)和置空方法。
混編方法指的是列數(shù)據(jù)的隨機(jī)移動(dòng),而替代則是以相似信息取代了原來(lái)的列數(shù)據(jù),而且替代的內(nèi)容與真實(shí)信息完全無(wú)關(guān),例如把所有的男性名字改為名單中隨機(jī)選出的名字。方差方法可用于數(shù)字和日期列,通過(guò)真實(shí)值的隨機(jī)比例對(duì)每個(gè)值進(jìn)行修正。
但實(shí)際上,數(shù)據(jù)屏蔽是一項(xiàng)復(fù)雜的技術(shù),該技術(shù)力求提供匿名且仍可用的測(cè)試數(shù)據(jù),這些測(cè)試數(shù)據(jù)還得具有原始資料的表面特征; 一連串毫無(wú)意義的隨機(jī)文本通常是不夠的。例如加密方法,將字符轉(zhuǎn)換成二進(jìn)制數(shù)據(jù)后再插入應(yīng)用程序,這樣數(shù)據(jù)看起來(lái)就不再真實(shí)了,并且對(duì)報(bào)告和打印機(jī)而言也不好。替代數(shù)據(jù),如街道名稱(chēng),有時(shí)很難找到大量的數(shù)據(jù),數(shù)據(jù)混編技術(shù)真的只能用于大型數(shù)據(jù)集,即便如此仍可能泄露敏感數(shù)據(jù)。
例如,人力資源數(shù)據(jù)庫(kù)中的最高工資(可能是該公司CEO的工資)仍然可見(jiàn),但顯示出來(lái)的是另一名雇員的工資數(shù)(當(dāng)然,某些訪問(wèn)了此數(shù)據(jù)的人可能猜得出是CEO的薪水,所以經(jīng)過(guò)推理,信息會(huì)泄漏出來(lái))。雖然方差技術(shù)提供了一種掩飾數(shù)據(jù)的合理方法,但數(shù)據(jù)的大小分布在合理范圍內(nèi)至關(guān)重要,如絕對(duì)不能出現(xiàn)某個(gè)員工150歲這樣的錯(cuò)誤。
自由格式文本數(shù)據(jù),如備忘錄和筆記,幾乎不可能用任何數(shù)據(jù)屏蔽技術(shù)進(jìn)行保密處理,因此這些數(shù)據(jù)都必須用諸如Lorem Ipsum的虛構(gòu)字體來(lái)取代。
不管數(shù)據(jù)屏蔽技術(shù)采用的是哪種方法,但數(shù)據(jù)庫(kù)里行、列、表格之間的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)關(guān)系在每一步的屏蔽操作中要保持相同,這一點(diǎn)至關(guān)重要。例如,如果雇員表的密碼是EMPLOYEE_NUMBER,那么它的變更一定會(huì)引起所有其它相關(guān)表格出現(xiàn)相同的變化。
有些數(shù)據(jù)項(xiàng)具有一種表征內(nèi)部含義的結(jié)構(gòu),如信用卡號(hào)碼的校驗(yàn)和。對(duì)這種類(lèi)型的數(shù)據(jù)進(jìn)行保密處理的唯一方法就是混編,混編后沒(méi)有任何一行包含原始數(shù)據(jù),但每個(gè)數(shù)據(jù)項(xiàng)仍然內(nèi)部有效。如果取而代之的是隨機(jī)數(shù)字集合,那么就意味著任何有效性檢查都會(huì)失敗,并會(huì)妨礙數(shù)據(jù)庫(kù)的更新測(cè)試。正如你所見(jiàn),要合理采用數(shù)據(jù)屏蔽技術(shù),就需要好好考慮很多問(wèn)題。
幸好有越來(lái)越多的數(shù)據(jù)屏蔽產(chǎn)品用于大型數(shù)據(jù)集的自動(dòng)加密。Camouflage Software公司被專(zhuān)業(yè)市場(chǎng)調(diào)研機(jī)構(gòu)Forrester Research評(píng)為數(shù)據(jù)屏蔽的五大供應(yīng)商之一,它提供隱蔽數(shù)據(jù)屏蔽生命周期管理套件(Camouflage Data Masking Lifecycle Management Suite)。
其他廠商還有DataGuise和Original Software,甲骨文公司為其開(kāi)發(fā)的數(shù)據(jù)庫(kù)應(yīng)用程序提供數(shù)據(jù)屏蔽包。同時(shí)IBM公司開(kāi)發(fā)了一種名為企業(yè)屏蔽網(wǎng)關(guān)(MAGEN)的軟件工具,此工具在數(shù)據(jù)到達(dá)用戶的屏幕之前,采用光學(xué)字符識(shí)別技術(shù)和屏幕抓取方式識(shí)別并掩蓋保密數(shù)據(jù)。
數(shù)據(jù)屏蔽技術(shù),如果使用得恰當(dāng),不僅可以做到遵守相關(guān)數(shù)據(jù)隱私法規(guī),而且對(duì)減少公司內(nèi)外部的數(shù)據(jù)泄漏風(fēng)險(xiǎn)而言也是行之有效的策略,數(shù)據(jù)屏蔽技術(shù)對(duì)任何非生產(chǎn)數(shù)據(jù)庫(kù)和其它測(cè)試環(huán)境而言也是最佳措施。該技術(shù)使得現(xiàn)實(shí)的數(shù)據(jù)被用于測(cè)試、培訓(xùn)和軟件開(kāi)發(fā),包括異地或跨國(guó)界的項(xiàng)目。