(四川大學(xué) 計(jì)算機(jī)學(xué)院, 成都610065)
摘 要:為了解決數(shù)據(jù)在失控狀態(tài)下的安全問(wèn)題,提出了一種數(shù)據(jù)自毀方法。該方法定時(shí)對(duì)數(shù)據(jù)進(jìn)行失控檢測(cè),一旦發(fā)現(xiàn)數(shù)據(jù)失控,立即將其徹底擦除,使其不可恢復(fù),防止數(shù)據(jù)泄密。整個(gè)過(guò)程無(wú)須人工干預(yù),耗費(fèi)時(shí)間短。理論分析和實(shí)驗(yàn)結(jié)果表明該方法是數(shù)據(jù)保護(hù)的一種有效的新途徑。
關(guān)鍵詞:數(shù)據(jù)銷毀;數(shù)據(jù)擦除;覆寫(xiě);自毀;數(shù)據(jù)保護(hù)
中圖分類號(hào):TP3092 文獻(xiàn)標(biāo)志碼:A
文章編號(hào):10013695(2009)01035002
Data selfdestruction method
LU Zhengtian,LI Tao,HU Xiaoqin,ZHAO Kui,ZENG Jinquan,PENG Lingxi
( School of Computer, Sichuan University, Chengdu 610065, China)
Abstract:In order to solve the security problems of the data out of control, this paper presented a data selfdestruction method.The method regularly detected the state of the data. When the data was detected out of control, it would be thoroughly erased immediately, and it could not be restored. Data leaks were prevented. The whole process doesn’t need human intervention, and lasts a short time. The theoretical analysis and the experiment results show that the proposed method is a new good approach of data protection.
Key words:data destruction; data erasure; overwriting; selfdestruction; data protection
0 引言
隨著信息技術(shù)的飛速發(fā)展,越來(lái)越多的企業(yè)和部門使用信息系統(tǒng)處理日常業(yè)務(wù),大量的數(shù)據(jù)存放于計(jì)算機(jī)系統(tǒng)中,包括重要的、敏感的,甚至是涉及國(guó)家秘密的數(shù)據(jù)。然而,一旦存儲(chǔ)數(shù)據(jù)的軟硬件失控、丟失、失竊,勢(shì)必造成數(shù)據(jù)泄密,給企業(yè)和部門帶來(lái)難以估量的損失[1,2]。如何解決數(shù)據(jù)在失控狀態(tài)下的安全問(wèn)題,防止數(shù)據(jù)泄密,受到人們?cè)絹?lái)越多的關(guān)注。
傳統(tǒng)的數(shù)據(jù)保護(hù)方法,如加密技術(shù),可以在一定程度上防止數(shù)據(jù)泄密,但是面對(duì)失控環(huán)境,這些傳統(tǒng)方法始終都有安全隱患。在失控狀態(tài)下,最理想的解決方法就是數(shù)據(jù)銷毀,將數(shù)據(jù)徹底銷毀,不留一點(diǎn)痕跡,使其不可恢復(fù)。
目前,數(shù)據(jù)銷毀技術(shù)的研究主要集中在國(guó)外,他們提供的產(chǎn)品或技術(shù)大多需要專用銷毀設(shè)備或化學(xué)制劑,運(yùn)行成本高,非一般單位能夠承受;往往需要人工干預(yù),系統(tǒng)不能自動(dòng)判斷數(shù)據(jù)失控;受到出口限制,高安全性的數(shù)據(jù)銷毀產(chǎn)品或技術(shù)禁止出口中國(guó)[3~6]。
國(guó)內(nèi)近年來(lái)也出現(xiàn)了數(shù)據(jù)銷毀技術(shù)的研究。2005年張承臣等人[7]設(shè)計(jì)了一種強(qiáng)磁數(shù)據(jù)銷毀儀,利用強(qiáng)磁場(chǎng)使磁盤等磁記錄載體退磁,達(dá)到銷毀數(shù)據(jù)信息的目的,但是僅適用于磁記錄載體和系統(tǒng)分離的情況,整個(gè)過(guò)程需要人工干預(yù),不能夠滿足緊急情況下,數(shù)據(jù)自動(dòng)銷毀的要求。2007年丁送星[8]提出了一種銷毀終端信息的方法,但該方法僅適用于移動(dòng)終端系統(tǒng),無(wú)法用于計(jì)算機(jī)系統(tǒng)。
鑒于此,本文提出了一種數(shù)據(jù)自毀方法(data selfdestruction,DSD),該方法具有以下特點(diǎn):a)自動(dòng)判斷數(shù)據(jù)失控并及時(shí)擦除數(shù)據(jù),整個(gè)過(guò)程無(wú)須人工干預(yù);b)銷毀速度快,能快速完成對(duì)數(shù)據(jù)的破壞,防止數(shù)據(jù)落入他人之手;c)無(wú)須增加任何額外硬件投入,運(yùn)行成本低;d)存儲(chǔ)設(shè)備可重復(fù)使用,方便、經(jīng)濟(jì);e)無(wú)須改變企業(yè)和部門現(xiàn)有信息系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),實(shí)施部署簡(jiǎn)單靈活、適應(yīng)性強(qiáng)。
1 DSD方法
11 體系架構(gòu)
圖1為DSD方法的體系架構(gòu),其由自毀和自毀監(jiān)控兩個(gè)部分組成。
自毀模塊主要負(fù)責(zé)失控檢測(cè),在數(shù)據(jù)失控時(shí)進(jìn)行數(shù)據(jù)銷毀,并監(jiān)視自毀監(jiān)控模塊;自毀監(jiān)控模塊主要負(fù)責(zé)監(jiān)控自毀模塊,確保其安全、可靠運(yùn)行,防止被非法終止。
自毀包括失控檢測(cè)、數(shù)據(jù)銷毀和監(jiān)視自毀監(jiān)控。失控檢測(cè)能判定受控計(jì)算機(jī)是否失控并及時(shí)執(zhí)行數(shù)據(jù)銷毀,無(wú)須人工干預(yù),從而實(shí)現(xiàn)數(shù)據(jù)自毀。數(shù)據(jù)銷毀依次執(zhí)行快速、基本、徹底數(shù)據(jù)擦除。自毀監(jiān)控與監(jiān)視自毀監(jiān)控相互通信,確保雙方的安全性,防止任意一方被非法終止,從而實(shí)現(xiàn)了高安全性的數(shù)據(jù)自毀。
12 失控檢測(cè)
失控檢測(cè)模塊,首先與管理控制服務(wù)器建立網(wǎng)絡(luò)連接;定時(shí)向管理控制服務(wù)器發(fā)送檢測(cè)消息,并等待響應(yīng)報(bào)文。若在設(shè)定時(shí)間內(nèi)未收到響應(yīng),則表明此次檢測(cè)超時(shí);若出現(xiàn)連續(xù)設(shè)定次數(shù)檢測(cè)超時(shí),則認(rèn)為當(dāng)前受控計(jì)算機(jī)已經(jīng)失控,通知數(shù)據(jù)銷毀模塊進(jìn)行數(shù)據(jù)銷毀工作。具體算法描述如下:
Procedure 失控檢測(cè)
begin
/*v為檢測(cè)間隔時(shí)間, t為超時(shí)時(shí)間,k為判定失控的閾值*/
讀取v, t, k;
與管理控制服務(wù)器建立網(wǎng)絡(luò)連接;
i:=0; /*累計(jì)失敗的次數(shù)*/
while(i begin 向管理控制服務(wù)器發(fā)送檢測(cè)消息; if(t時(shí)間內(nèi)收到響應(yīng)報(bào)文)then i:=0; else begin 檢測(cè)超時(shí); i++; end; sleep(v); //準(zhǔn)備重新檢測(cè) end; 受控計(jì)算機(jī)失控; //判定失控 啟動(dòng)數(shù)據(jù)銷毀; end. 13 數(shù)據(jù)銷毀 鑒于存儲(chǔ)原理和數(shù)據(jù)讀寫(xiě)方法,普通的數(shù)據(jù)銷毀如數(shù)據(jù)刪除、格式化等方法均無(wú)法徹底清除數(shù)據(jù),使用一些常用恢復(fù)工具能夠輕而易舉地還原數(shù)據(jù),如RecoverMyFiles等。 根據(jù)美國(guó)國(guó)防部DoD 5220.22M標(biāo)準(zhǔn)[9](《國(guó)家工業(yè)安全程序操作手冊(cè)》),數(shù)據(jù)擦除是一種有效的數(shù)據(jù)銷毀方法。其基本思想是針對(duì)磁性介質(zhì)的存儲(chǔ)原理,用二進(jìn)制數(shù)據(jù)反復(fù)覆蓋磁性介質(zhì)上原先存儲(chǔ)的數(shù)據(jù),達(dá)到清除數(shù)據(jù)的目的。迄今為止,數(shù)據(jù)擦除是最安全、最經(jīng)濟(jì)的銷毀數(shù)據(jù)的方法。基于此,本文提出了一種基于擦除原理的數(shù)據(jù)銷毀算法,并以該算法為基礎(chǔ)設(shè)計(jì)了數(shù)據(jù)銷毀模塊。 數(shù)據(jù)銷毀模塊對(duì)數(shù)據(jù)文件進(jìn)行二進(jìn)制填充,對(duì)存儲(chǔ)設(shè)備上存儲(chǔ)的相應(yīng)信息進(jìn)行破壞、擦除,使其無(wú)法恢復(fù)。下面是數(shù)據(jù)銷毀算法,對(duì)數(shù)據(jù)文件依次進(jìn)行快速、基本、徹底數(shù)據(jù)擦除。 Procedure 數(shù)據(jù)銷毀 begin /*快速擦除*/ 在數(shù)據(jù)文件頭部位置,填充與文件頭部等長(zhǎng)的任意二進(jìn)制串; /*基本擦除*/ k:= Random(); //產(chǎn)生擦除次數(shù) M:= Rand(k); //產(chǎn)生擦除位置集合 for(每個(gè)m屬于M) begin 在位置m上填充一定長(zhǎng)度的任意二進(jìn)制串; end; /*徹底擦除*/ while(1) begin 對(duì)數(shù)據(jù)文件填充與其長(zhǎng)度相等的任意二進(jìn)制串; end; end. 1)快速擦除 在數(shù)據(jù)文件頭部位置,填充與數(shù)據(jù)文件頭部等長(zhǎng)的任意二進(jìn)制串,從而達(dá)到迅速破壞數(shù)據(jù)文件結(jié)構(gòu)的目的。 2)基本擦除 在數(shù)據(jù)文件中隨機(jī)選擇若干處,填充一定長(zhǎng)度的任意二進(jìn)制串。 3)徹底擦除 為一死循環(huán)步驟,只要有時(shí)間,就進(jìn)行數(shù)據(jù)徹底擦除工作。該擦除工作為對(duì)數(shù)據(jù)文件填充與其長(zhǎng)度相等的任意二進(jìn)制串。 14 自毀監(jiān)控 為確保自毀模塊安全、可靠運(yùn)行,防止其被非法終止,筆者通過(guò)自毀監(jiān)控模塊來(lái)監(jiān)視自毀模塊。一旦發(fā)現(xiàn)自毀模塊被關(guān)閉,則立刻重新啟動(dòng)被關(guān)閉的自毀模塊,確保自毀模塊一直在正常運(yùn)行。具體算法描述如下: Procedure 自毀監(jiān)控 begin /*v為檢測(cè)間隔時(shí)間*/ 讀取v; while(1) begin 檢測(cè)自毀模塊的運(yùn)行狀態(tài); if(已關(guān)閉)then 啟動(dòng)自毀模塊; sleep(v);//準(zhǔn)備重新檢測(cè) end; end. 15 監(jiān)視自毀監(jiān)控 下面給出監(jiān)視自毀監(jiān)控模塊的具體算法。首先檢測(cè)自毀監(jiān)控模塊是否被關(guān)閉,若發(fā)現(xiàn)自毀監(jiān)控模塊被關(guān)閉,則立刻重新啟動(dòng)被關(guān)閉的自毀監(jiān)控模塊,確保自毀監(jiān)控模塊一直在正常運(yùn)行,從另一方面進(jìn)一步確保自毀模塊一直在正常運(yùn)行。 Procedure 監(jiān)視自毀監(jiān)控 begin /*v為檢測(cè)間隔時(shí)間*/ 讀取v; while(1) begin 檢測(cè)自毀監(jiān)控模塊的運(yùn)行狀態(tài); if(已關(guān)閉)then 啟動(dòng)自毀監(jiān)控模塊; sleep(v); //準(zhǔn)備重新檢測(cè) end; end. 2 實(shí)驗(yàn)結(jié)果及分析 受控計(jì)算機(jī)的配置為P4 1.80 GHz處理器、512 MB內(nèi)存、40 GB IDE硬盤、Windows 2000操作系統(tǒng)。 切斷受控計(jì)算機(jī)的網(wǎng)絡(luò),制造數(shù)據(jù)自毀發(fā)生的條件,計(jì)算數(shù)據(jù)自毀花費(fèi)的時(shí)間,包括快速擦除時(shí)間、基本擦除時(shí)間和徹底擦除時(shí)間。數(shù)據(jù)自毀時(shí),依次進(jìn)行快速、基本、徹底擦除這三個(gè)步驟。為便于討論分析,本文計(jì)算得到的基本擦除時(shí)間包含快速擦除時(shí)間,徹底擦除時(shí)間包含快速和基本擦除時(shí)間。 實(shí)驗(yàn)結(jié)果如圖2和3所示。從圖2可以看出,本文提出的DSD方法能夠在極短的時(shí)間(<1 s)內(nèi)完成對(duì)數(shù)據(jù)的快速擦除,破壞數(shù)據(jù)文件的結(jié)構(gòu)。在較短的時(shí)間(<6 s)內(nèi)完成對(duì)數(shù)據(jù)的基本擦除,基本破壞數(shù)據(jù)文件,使得一些常用的恢復(fù)手段受到限制。 從圖3可以看出,本文提出的DSD方法能夠在較短的時(shí)間內(nèi)完成對(duì)數(shù)據(jù)的一遍徹底擦除,而且徹底擦除一遍花費(fèi)的時(shí)間與自毀數(shù)據(jù)量基本呈一種線性關(guān)系,主要由受控計(jì)算機(jī)的磁盤I/O速度決定,這意味著提升磁盤I/O速度,將相應(yīng)提升數(shù)據(jù)自毀速度。 3 結(jié)束語(yǔ) 本文提出了一種數(shù)據(jù)自毀(DSD)方法,通過(guò)失控檢測(cè)、數(shù)據(jù)銷毀等技術(shù)自動(dòng)判斷數(shù)據(jù)失控、及時(shí)擦除數(shù)據(jù),使其不可恢復(fù)。自毀監(jiān)控模塊與監(jiān)視自毀監(jiān)控模塊相互通信、互相檢測(cè)保證了數(shù)據(jù)自毀安全、可靠運(yùn)行。理論分析和實(shí)驗(yàn)結(jié)果表明該方法較好地解決了數(shù)據(jù)在失控狀態(tài)下的安全問(wèn)題,有效防止了數(shù)據(jù)泄密,是數(shù)據(jù)保護(hù)的一種較為有效的新途徑。 對(duì)DSD方法中的模塊進(jìn)行必要的改變并賦予不同的物理解釋,可以應(yīng)用于GPS無(wú)線自毀、遙毀、存儲(chǔ)介質(zhì)的銷毀與回收再利用等問(wèn)題的研究。 參考文獻(xiàn): [1] BENNISON P F,LASHER P J.Data security issues relating to end of life equipment[C]//Proc of IEEE International Symposium on Electronics and the Environment.Washington DC:IEEE Computer Society,2004:317320. [2]COLBORNE L.Securing storage:complete data erasure on storage systems[J].Information Storage Security Journal,2005,13(4):12. [3]THORSEN J D.Hard drive eraser:U. S. Patent,US 2007/0101055 A1[P].20070426. [4]FARAG I H.Chemical for data destruction:U. S. Patent,US 2005/0257049 A1[P]. 20050318. [5]DETZLER R.Dead on demand disk technology:U. S. Patent,US 2004/0252628 A1[P]. 20040318. [6]DEWEY D W.Policy based data shredding for storage controller:U. S. Patent,US 2006/0200357 A1[P].2006. [7]張承臣,張曙光. 強(qiáng)磁數(shù)據(jù)銷毀儀:中國(guó),CN200420030949.8[P].20050601. [8]丁送星. 一種銷毀終端信息的方法: 中國(guó),CN1984404A[P].20070620. [9]U.S.Department of Defense. DoD 5220.22M national industrial security program operating manual (NISPOM)[S].Washington:GPO,1995:800831.