張志強(qiáng),寧東平,黃 茨,劉驍知,范晉文
(中國電子科技集團(tuán)公司第五十八研究所,江蘇無錫 214072)
近年來,伴隨著大數(shù)據(jù)及信息化技術(shù)的高速發(fā)展,固態(tài)硬盤(Solid State Disk,SSD)憑借著優(yōu)越的性能已廣泛應(yīng)用于國家安全、國防軍工、高性能計(jì)算等領(lǐng)域。通過SSD 保存涉密信息已經(jīng)非常普遍,同時(shí)帶來的數(shù)據(jù)安全問題也更加凸顯,適用于SSD 硬件的數(shù)據(jù)安全領(lǐng)域的研究也已成為熱點(diǎn)[1],為了保護(hù)存儲(chǔ)數(shù)據(jù)的安全,防止數(shù)據(jù)發(fā)生泄露,除了研究數(shù)據(jù)本身的存儲(chǔ)安全性外[2],研究數(shù)據(jù)銷毀技術(shù)對(duì)信息安全工作也具有重要意義[3-6]。
對(duì)于數(shù)據(jù)銷毀技術(shù)的研究,目前國內(nèi)相比于國外的科研水平還有著較大的差距,主要體現(xiàn)在數(shù)據(jù)的安全銷毀標(biāo)準(zhǔn)和數(shù)據(jù)安全銷毀產(chǎn)品的應(yīng)用普及方面[7]。早在30 年前美國就把數(shù)據(jù)銷毀技術(shù)列入重點(diǎn)發(fā)展技術(shù),美國國防部在1995 年頒布了數(shù)據(jù)銷毀DOD5220.22-M 標(biāo)準(zhǔn)[8]。在后續(xù)的幾十年里,美國在數(shù)據(jù)銷毀技術(shù)方面取得了很多成果,研發(fā)了多種類型的數(shù)據(jù)銷毀技術(shù)[9]。中國在2007 年頒布了BMB21-2007《涉及國家秘密的載體銷毀與信息消除安全保密要求》,對(duì)于涉及國家秘密的載體、設(shè)備,從研制到生產(chǎn)再到檢測(cè)都做了詳盡的規(guī)定,同時(shí)對(duì)涉密載體、銷毀判定級(jí)別、相應(yīng)的技術(shù)指標(biāo)與安全管理也做了要求[10]。但是,隨著數(shù)據(jù)銷毀技術(shù)的發(fā)展以及制造工藝的升級(jí),傳統(tǒng)磁盤的數(shù)據(jù)銷毀技術(shù),如數(shù)據(jù)覆蓋技術(shù)和消磁技術(shù)已顯現(xiàn)出較多的弊端。近些年隨著固態(tài)存儲(chǔ)技術(shù)的普及以及SSD 特有的電子存儲(chǔ)結(jié)構(gòu)具備數(shù)據(jù)銷毀的徹底性及時(shí)效性等特點(diǎn),SSD 已經(jīng)成為安全硬盤的首選存儲(chǔ)介質(zhì)。
本文通過研究SSD 的數(shù)據(jù)銷毀方法,針對(duì)板載SSD 的應(yīng)用場(chǎng)景,設(shè)計(jì)了一種基于控制板卡的數(shù)據(jù)銷毀策略,并通過實(shí)驗(yàn)證明了銷毀電路的有效性和可靠性。
SSD 是由存儲(chǔ)芯片F(xiàn)lash 作為存儲(chǔ)介質(zhì)的固態(tài)存儲(chǔ)設(shè)備,SSD 的數(shù)據(jù)銷毀主要分為軟件銷毀和硬件銷毀兩種方式。
軟件銷毀是指通過軟件操作的方式刪除存儲(chǔ)介質(zhì)中的數(shù)據(jù),軟件銷毀并不會(huì)造成SSD 的永久性損壞。常見的軟銷毀方式主要包括格式化和數(shù)據(jù)覆蓋。
2.1.1 格式化
格式化是最常見的存儲(chǔ)設(shè)備數(shù)據(jù)銷毀方式,SSD通過控制器算法將Flash 芯片的存儲(chǔ)單元進(jìn)行一次擦除操作,使數(shù)據(jù)狀態(tài)呈現(xiàn)全0 或全F[11]。由于該方式可通過專業(yè)的數(shù)據(jù)恢復(fù)技術(shù)對(duì)數(shù)據(jù)進(jìn)行恢復(fù),一般應(yīng)用于處理非敏感數(shù)據(jù)。
2.1.2 數(shù)據(jù)覆蓋
數(shù)據(jù)覆蓋主要指在進(jìn)行數(shù)據(jù)銷毀的時(shí)候,用垃圾數(shù)據(jù)來代替原有存儲(chǔ)數(shù)據(jù),使得數(shù)據(jù)原先所攜帶的信息隨著數(shù)據(jù)的改變而消失。該理論最早在第六屆USENIX 安全會(huì)議上由奧克蘭大學(xué)計(jì)算機(jī)科學(xué)學(xué)院GUTMANN 教授提出,但如果需要安全地刪除數(shù)據(jù),需要覆蓋數(shù)據(jù)35 次才可以達(dá)到無法恢復(fù)的程度[12],因此該方式需要耗費(fèi)較長的時(shí)間。
硬件銷毀是指通過物理手段毀壞存儲(chǔ)介質(zhì),使存儲(chǔ)介質(zhì)失去存儲(chǔ)能力的一種方式。因?yàn)镾SD 是以Flash 芯片為存儲(chǔ)介質(zhì),不同于磁盤或者機(jī)械硬盤,消磁、化學(xué)腐蝕等物理銷毀方式并不適用于SSD,因此SSD 的物理破壞方式主要是通過外力損毀或者通過高電壓方式損壞存儲(chǔ)芯片。針對(duì)板載SSD 的應(yīng)用場(chǎng)景,主要通過高電壓的方式進(jìn)行毀壞。實(shí)現(xiàn)方式是通過引入高電壓將存儲(chǔ)單元擊毀,確保數(shù)據(jù)不發(fā)生泄露,使得系統(tǒng)存儲(chǔ)的數(shù)據(jù)徹底丟失,但這種方式會(huì)對(duì)存儲(chǔ)器造成不可逆的損壞,設(shè)備將無法繼續(xù)使用。
基于SSD 銷毀方法的分析,并結(jié)合項(xiàng)目應(yīng)用場(chǎng)景的特點(diǎn),本文提出了一種以國產(chǎn)CPU 為控制芯片的板載SSD 數(shù)據(jù)銷毀策略,采用軟硬銷毀相結(jié)合的方式,對(duì)非密的存儲(chǔ)數(shù)據(jù)采用格式化的軟件銷毀方式,對(duì)于含有涉密信息的存儲(chǔ)數(shù)據(jù)采用高壓燒毀SSD 的硬件銷毀方式。圖1 為數(shù)據(jù)銷毀硬件設(shè)計(jì)框圖,CPU 選用的是國產(chǎn)龍芯CPU,SSD 選用的是威固的RS20 系列RSSD。
圖1 數(shù)據(jù)銷毀硬件設(shè)計(jì)框圖
軟件銷毀策略是利用該SSD 支持的智能數(shù)據(jù)軟銷毀功能,即HOST 命令方式,龍芯CPU 收到上位機(jī)發(fā)來的數(shù)據(jù)軟銷毀指令后,通過I/O 管腳電平信號(hào)觸發(fā)數(shù)據(jù)軟銷毀。具體方式為持續(xù)拉低SSD QE 管腳電平2 s,SSD 芯片的主控啟動(dòng)數(shù)據(jù)軟銷毀,存儲(chǔ)在Flash中的數(shù)據(jù)被刪除,SSD 恢復(fù)至未初始化狀態(tài),再次使用時(shí)需要重新進(jìn)行初始化分區(qū)。
由于龍芯CPU 啟動(dòng)階段I/O 口默認(rèn)為低電平,為防止在啟動(dòng)階段觸發(fā)軟銷毀,本文將MOSFET 設(shè)計(jì)成反邏輯,當(dāng)CPU I/O 口高電平時(shí)MOSFET 導(dǎo)通,SSD QE 被拉成低電平,否則QE 管腳為高電平,電路結(jié)構(gòu)如圖2 所示。
圖2 數(shù)據(jù)軟件銷毀控制電路
硬件銷毀設(shè)計(jì)策略是在系統(tǒng)內(nèi)部設(shè)置高壓電路與SSD 相連,系統(tǒng)需要硬銷毀數(shù)據(jù)時(shí),由邏輯開關(guān)控制接通高壓電路,使SSD 與高壓直接相連而燒毀?;赟SD 存儲(chǔ)芯片F(xiàn)lash 的內(nèi)部結(jié)構(gòu)特點(diǎn),VDD 電源貫穿到芯片內(nèi)部的每一個(gè)晶體管上,而其他信號(hào)線覆蓋部分區(qū)域,因此在硬件設(shè)計(jì)中將高電壓引到VDD 管腳上,擊穿內(nèi)部的存儲(chǔ)芯片及電源電路,使SSD 存儲(chǔ)單元燒毀,失去存儲(chǔ)能力。
由于硬件銷毀對(duì)SSD 會(huì)造成永久性損壞,為防止CPU 出現(xiàn)軟失效等故障導(dǎo)致I/O 口電平不穩(wěn)而誤觸發(fā)硬銷毀指令,在硬銷毀的硬件電路設(shè)計(jì)上,本文提出了一種基于計(jì)數(shù)器控制的硬銷毀方案。
計(jì)數(shù)器選用的是CD4017,該計(jì)數(shù)器是5 位Johnson 計(jì)數(shù)器,有9 個(gè)譯碼輸出端,在設(shè)計(jì)中用第9路輸出端控制邏輯開關(guān),當(dāng)CPU 收到上位機(jī)下發(fā)的硬銷毀指令后,對(duì)計(jì)數(shù)器CD4017 進(jìn)行清零,再向計(jì)數(shù)器發(fā)送連續(xù)的9 個(gè)觸發(fā)脈沖,當(dāng)計(jì)數(shù)器收到CPU 連續(xù)發(fā)送的9 個(gè)觸發(fā)脈沖后,計(jì)數(shù)器第9 路輸出端輸出高電平并控制邏輯開關(guān)打開高壓電路,使高壓釋放到SSD的VDD 管腳,進(jìn)而使SSD 燒毀,電路結(jié)構(gòu)如圖3 所示。SSD 數(shù)據(jù)銷毀軟件邏輯流程如圖4 所示。
圖3 數(shù)據(jù)硬件銷毀控制電路
圖4 數(shù)據(jù)銷毀軟件邏輯流程
原理驗(yàn)證板如圖5 所示,分別測(cè)試了軟件銷毀和硬件銷毀,獲得了銷毀時(shí)間、銷毀后的系統(tǒng)狀態(tài)以及修復(fù)時(shí)間等信息,具體結(jié)果如表1 所示。從試驗(yàn)結(jié)果分析,基于不同的銷毀命令,可有效完成數(shù)據(jù)銷毀。
表1 數(shù)據(jù)銷毀驗(yàn)證結(jié)果
在數(shù)據(jù)軟銷毀前,存儲(chǔ)在SSD 內(nèi)的系統(tǒng)文件可正常引導(dǎo)板卡啟動(dòng),并可查詢盤內(nèi)存儲(chǔ)的數(shù)據(jù)。當(dāng)上位機(jī)下發(fā)軟件銷毀后,SSD 盤被格式化,存儲(chǔ)在SSD 中的數(shù)據(jù)及系統(tǒng)文件被刪除,板卡重新上電后,系統(tǒng)無法啟動(dòng),軟件銷毀后串口界面如圖6 所示。
圖6 軟件銷毀后串口界面
1:CPU 模塊2:計(jì)數(shù)器模塊3:SSD 模塊圖5 原理驗(yàn)證板卡
圖7為通過示波器測(cè)試的硬銷毀過程波形,通道1(黃色)為龍芯CPU 發(fā)出9 個(gè)銷毀脈沖,通道2(藍(lán)色)為引入到SSD VDD 管腳的高壓波形,當(dāng)計(jì)數(shù)器收到CPU 發(fā)來的9 個(gè)連續(xù)脈沖后,計(jì)數(shù)器打開邏輯開關(guān)引入12 V 高壓,SSD 被燒毀。
圖7 硬件銷毀測(cè)試波形
存儲(chǔ)設(shè)備在國防軍工等領(lǐng)域有著廣泛的應(yīng)用,數(shù)據(jù)銷毀技術(shù)作為數(shù)據(jù)安全的最后屏障,對(duì)其進(jìn)行研究具有重要的意義。本文對(duì)SSD 的數(shù)據(jù)銷毀方法進(jìn)行了分析總結(jié),提出了一種板載SSD 應(yīng)用場(chǎng)景的數(shù)據(jù)銷毀設(shè)計(jì)方案,并經(jīng)過試驗(yàn)驗(yàn)證該方法可有效解決板載SSD 應(yīng)用場(chǎng)景的數(shù)據(jù)銷毀問題。在本設(shè)計(jì)方案中采用計(jì)數(shù)器控制的方式實(shí)現(xiàn)硬件銷毀,可有效解決因控制器軟失效等原因造成的誤觸發(fā)硬銷毀的問題,為后續(xù)板載數(shù)據(jù)銷毀技術(shù)研究提供參考。