劉海滄 林蔚 陳曉暉 黃景崖
【摘要】為防止個(gè)人或企業(yè)的信息泄漏,我們提出了基于wifi信號(hào)檢測(cè)的安全USB閃存驅(qū)動(dòng)器設(shè)計(jì)與實(shí)現(xiàn)方法。該設(shè)備通過上位機(jī)進(jìn)行配置,當(dāng)設(shè)備電量不足或所連wifi信號(hào)強(qiáng)度低于閾值時(shí),可由MCU主控控制USB通道切換開關(guān)選擇,可控制設(shè)備進(jìn)入數(shù)據(jù)自動(dòng)銷毀以及讀寫限制模式。實(shí)驗(yàn)結(jié)果表明,該設(shè)備不僅能夠支持4G以上大文件存儲(chǔ)(FATFS),而且能夠在脫離安全范圍內(nèi)進(jìn)行數(shù)據(jù)清除,較好地確保了設(shè)備的安全性。
【關(guān)鍵詞】wifi信號(hào)檢測(cè);加密安全USB閃存驅(qū)動(dòng)器;數(shù)據(jù)自動(dòng)銷毀;FATFS
大數(shù)據(jù)信息化浪潮的沖擊下,信息安全逐漸成為了網(wǎng)絡(luò)計(jì)算機(jī)技術(shù)領(lǐng)域的一大研究熱門。U盤作為一種可移動(dòng)的存儲(chǔ)設(shè)備,以其可插即用、靈活便捷、性能可靠、存儲(chǔ)量大等優(yōu)勢(shì)被廣泛地使用。由于U盤的操作性及移植性強(qiáng),相應(yīng)的安全隱患也隨之而至,U盤內(nèi)的數(shù)據(jù)信息極其容易受到不法分子的復(fù)制,這對(duì)個(gè)人或企業(yè)的影響不可估量。因此,保證U盤內(nèi)的數(shù)據(jù)不被泄露和篡改成為網(wǎng)絡(luò)信息安全領(lǐng)域的熱門研究工作之一。目前的U盤數(shù)據(jù)安全性研究工作主要圍繞對(duì)U盤內(nèi)數(shù)據(jù)進(jìn)行加密算法的設(shè)計(jì)展開。如:利用NAND Flash ECC校驗(yàn)方法對(duì)U盤內(nèi)的數(shù)據(jù)進(jìn)行加密,從而達(dá)到對(duì)數(shù)據(jù)進(jìn)行安全性保障的作用。
本文中提出了一種保障U盤數(shù)據(jù)安全性的新方法,我們提出了基于wifi信號(hào)檢測(cè)的安全USB閃存驅(qū)動(dòng)器設(shè)計(jì)與實(shí)現(xiàn)方法。該設(shè)備通過上位機(jī)進(jìn)行配置,當(dāng)電量不足或wifi信號(hào)強(qiáng)度低于閾值時(shí),可由MCU主控控制USB通道切換開關(guān)選擇,可控制設(shè)備進(jìn)入數(shù)據(jù)自動(dòng)銷毀以及讀寫限制模式。正常范圍及電量?jī)?nèi),U盤仍可作為普通存儲(chǔ)設(shè)備使用,本工作的主要貢獻(xiàn)點(diǎn)體現(xiàn)于:1)無需復(fù)雜的加密算法,超過用戶定義的閾值即可自動(dòng)擦除數(shù)據(jù)。2)交互性強(qiáng),允許用戶進(jìn)行wifi AP,數(shù)據(jù)保留范圍及電量閾值的自定義,實(shí)驗(yàn)結(jié)果同時(shí)表明了該工作既可保證U盤存儲(chǔ)功能的正常使用,又能切實(shí)地保障內(nèi)部數(shù)據(jù)的安全性。
1. 系統(tǒng)設(shè)計(jì)的理論基礎(chǔ)
1.1 USB3.0標(biāo)準(zhǔn)
USB3.0接口標(biāo)準(zhǔn)于2008年11月發(fā)布,由于其比之前USB2.0標(biāo)準(zhǔn)多出10倍以上的傳輸速率,迅速地?fù)屨剂耸袌?chǎng)。本設(shè)計(jì)采用的是USB3.0標(biāo)準(zhǔn)。
為了兼容之前的標(biāo)準(zhǔn),USB3.0采用了雙總線結(jié)構(gòu),HUB設(shè)計(jì)保證與之前標(biāo)準(zhǔn)的HUB設(shè)計(jì)彼此獨(dú)立。此外,USB3.0采用獨(dú)立總線連接至控制中心的設(shè)計(jì),區(qū)別與之前版本的單獨(dú)設(shè)計(jì),再者,USB3.0增加了更多的并行模式的物理總線,形成獨(dú)立的專用數(shù)據(jù)通路,支持雙向并發(fā)數(shù)據(jù)流傳輸。以上的三個(gè)主要改進(jìn),也是促使3.0標(biāo)準(zhǔn)比2.0及以下標(biāo)準(zhǔn)更具優(yōu)勢(shì)的原因。
1.2 鋰電池及電源管理
鋰電池相比于其它電池具有體積小、能量密度大、可循環(huán)使用等特點(diǎn),被廣泛應(yīng)用在各類儲(chǔ)能電源系統(tǒng)。本設(shè)計(jì)所用到航模鋰電池為1塊標(biāo)稱電壓為3.7V的鋰電池,電池的充電終止電壓為4.2V。
鋰電池常規(guī)充電方法分為四個(gè)階段:預(yù)充電階段(涓流充電階段)、恒流充電階段、恒壓充電階段及充電終止階段,充電過程如圖1-1所示。鋰電池電壓低于2.5V時(shí),以C/15的涓流進(jìn)行充電(C為充放電倍率),當(dāng)電壓介于3.7V-4.2V之間時(shí),處于恒流充電階段,采用0.5C-1C的恒定大電流對(duì)電池快速充電;鋰電池電壓達(dá)到4.2V后,采用恒壓充電。這個(gè)階段對(duì)電池進(jìn)行恒定電壓充電,充電電流不斷減小,電池容量接近滿容量;當(dāng)充電電流下降至C/10或者C/15量級(jí)時(shí),進(jìn)入充電終止階段,完成充電工作。
1.3 FATFS文件系統(tǒng)
操作系統(tǒng)中負(fù)責(zé)管理和存儲(chǔ)文件信息的軟件機(jī)構(gòu)稱為文件管理系統(tǒng),簡(jiǎn)稱文件系統(tǒng)。FATFS文件系統(tǒng)支持FAT12, FAT16與FAT32,支持多種存儲(chǔ)媒介,有獨(dú)立的緩沖區(qū),可對(duì)多個(gè)文件進(jìn)行讀寫,是一個(gè)可裁剪的文件系統(tǒng)。FATFS廣泛地運(yùn)用于嵌入式系統(tǒng)中,本設(shè)計(jì)采用的是FATFS文件系統(tǒng)。
FATFS系統(tǒng)結(jié)構(gòu)如圖1-2所示,應(yīng)用層為用戶封裝了一系列的 API 接口函數(shù),比如f_read、f_write、f_open、f_close等,用戶可依根據(jù)自己的實(shí)際情況進(jìn)行精簡(jiǎn);FATFS Module是 FATFS文件系統(tǒng)的核心層,已經(jīng)完整地實(shí)現(xiàn)了FAT文件結(jié)構(gòu);底層的硬件驅(qū)動(dòng)層為上層抽象和屏蔽硬件差異,實(shí)現(xiàn)具體的硬件操作。
2. 總體設(shè)計(jì)與具體實(shí)現(xiàn)
2.1 系統(tǒng)總體設(shè)計(jì)
本設(shè)計(jì)主要針對(duì)保護(hù)USB內(nèi)部數(shù)據(jù)安全設(shè)計(jì)的基于WiFi信號(hào)檢測(cè)的安全USB閃存驅(qū)動(dòng)器,通過USB切換開關(guān),在正常情況下,該設(shè)備能作為容量64GB的普通存儲(chǔ)設(shè)備使用。當(dāng)設(shè)備所連Wifi信號(hào)強(qiáng)度或電量百分比不足用戶在上位機(jī)初始預(yù)設(shè)的閾值時(shí),同樣通過USB切換開關(guān),設(shè)備自動(dòng)銷毀盤內(nèi)數(shù)據(jù)并限制存儲(chǔ)功能,直至信號(hào)強(qiáng)度和電量同時(shí)滿足所設(shè)閾值后,方可解除存儲(chǔ)功能的限制,在總體設(shè)計(jì)結(jié)構(gòu)示意圖如圖2-1所示:
2.2 系統(tǒng)具體實(shí)現(xiàn)
本節(jié)主要介紹系統(tǒng)的具體實(shí)現(xiàn)。通過上位機(jī)設(shè)定所需指定SSID的AP信號(hào)及信號(hào)強(qiáng)度的閾值,設(shè)置完畢WiFi模塊會(huì)檢測(cè)指定SSID的AP信號(hào)送給主控,當(dāng)AP信號(hào)不穩(wěn)定時(shí),主控控制開關(guān)切換IC使存儲(chǔ)模塊與主控模塊接通,此時(shí)主控會(huì)命令存儲(chǔ)模塊的存儲(chǔ)主控進(jìn)入讀寫限制模式,狀態(tài)指示燈會(huì)變黃;當(dāng)AP信號(hào)低于設(shè)定閾值或者電池電量低于指定值時(shí),主控控制開關(guān)切換IC使存儲(chǔ)模塊與主控模塊接通,此時(shí)主控會(huì)命令存儲(chǔ)單元進(jìn)行格式化處理,格式化在15秒內(nèi)完成,狀態(tài)指示燈變紅;AP信號(hào)在設(shè)定閾值內(nèi),為標(biāo)準(zhǔn)存儲(chǔ)模式,主控控制開關(guān)切換IC使存儲(chǔ)模塊與USB接口接通,用戶可進(jìn)行讀寫操作,狀態(tài)指示燈變綠。WiFi模塊掃描范圍可在無遮擋環(huán)境半徑10米以內(nèi),存儲(chǔ)模塊以普通存儲(chǔ)器性能指標(biāo)為準(zhǔn),采用FATFS存儲(chǔ)文件系統(tǒng),USB存儲(chǔ)接口采用USB3.0標(biāo)準(zhǔn)。本系統(tǒng)的整體工作流程圖如圖2-2所示。
MCU主控:主控芯片采用了STM32F105RBT6,具有高性能、低成本、超低功耗的嵌入式芯片且生態(tài)完整,開發(fā)難度相對(duì)較小。當(dāng)檢測(cè)到接收WiFi信號(hào)強(qiáng)度或設(shè)備電量不足用戶預(yù)設(shè)閾值時(shí),主控控制雙USB切換開關(guān)切換為數(shù)據(jù)自毀并限制存儲(chǔ)模式。當(dāng)Wifi信號(hào)強(qiáng)度及電量同時(shí)恢復(fù)到預(yù)設(shè)閾值之上時(shí),主控控制切換開關(guān)切換為正常存儲(chǔ)模式。
雙USB切換開關(guān)IC:USB3.0切換開關(guān)采用了P13USB302-A具有高速,高帶寬,低成本的優(yōu)點(diǎn)。切換開關(guān)接收主控的指令,完成數(shù)據(jù)自毀并限制存儲(chǔ)模式和正常存儲(chǔ)模式的切換。
存儲(chǔ)單元:存儲(chǔ)單元包括存儲(chǔ)主控和存儲(chǔ)顆粒。存儲(chǔ)主控采用IS903。主要提供正常的數(shù)據(jù)存儲(chǔ)功能。文件管理系統(tǒng)采用的FATFS,支持4G以上大文件存儲(chǔ)。U盤存儲(chǔ)容量為64GB。擦除模式下,快速格式化時(shí)間控制在15內(nèi)。
上位機(jī):作為交互界面,提供用戶初始設(shè)置指定SSID的AP信號(hào)、信號(hào)強(qiáng)度的閾值和電源電量閾值。
WiFi模塊:采用ESP8266-F型號(hào)Wifi模塊。該模塊檢測(cè)AP信號(hào)強(qiáng)度實(shí)時(shí)發(fā)送給主控。模塊掃描范圍可在無遮擋環(huán)境半徑10米以內(nèi)。
電源單元:設(shè)計(jì)采用容量為1000mAh,標(biāo)稱電壓為3.7V的鋰電池。電源管理模塊采用過充保護(hù)的芯片是DW01,具有過充保護(hù)功能,防止電池鼓包現(xiàn)象。在設(shè)備接入PC端讀取存儲(chǔ)數(shù)據(jù)時(shí),可同時(shí)對(duì)設(shè)備電池進(jìn)行充電。此外,電池單元也會(huì)實(shí)時(shí)將電量信息發(fā)送給主控。
存儲(chǔ)USB口:采用USB3.0標(biāo)準(zhǔn),提供數(shù)據(jù)存儲(chǔ)及電源單元充電通道。
3. 系統(tǒng)測(cè)試
3.1 硬件調(diào)試與分析
存儲(chǔ)模式測(cè)試
將設(shè)備插入計(jì)算機(jī)USB3.0接口,計(jì)算機(jī)能讀取到一個(gè)U盤設(shè)備,將一個(gè)大小為4.77G的ISO文件放入該存儲(chǔ)設(shè)備中,寫入速度可以維持在37-38MB/S,性能優(yōu)于市面上普通的USB3.0 U盤。
3.2 格式化測(cè)試
1) 將設(shè)備配置完成之后,從WiFi熱點(diǎn)位置想遠(yuǎn)處移動(dòng),到達(dá)設(shè)定閾值之前10%的預(yù)警值時(shí),設(shè)備進(jìn)行報(bào)警提示。當(dāng)設(shè)備信號(hào)強(qiáng)度弱于設(shè)定閾值,格式化指示燈常亮,設(shè)備進(jìn)行格式化。格式化完成后,拿到信號(hào)強(qiáng)度滿足設(shè)定閾值的位置,重新插入計(jì)算機(jī),可觀察到設(shè)備已經(jīng)被格式化。
2) 低電量格式化,將設(shè)備配置完成后,移除USB線,放置于WiFi信號(hào)滿足要求的位置,大約90分鐘后,設(shè)備發(fā)出低電量預(yù)警提示,再等待20分鐘之后,設(shè)備開始格式化,將設(shè)備插入計(jì)算機(jī),可觀察到格式化已經(jīng)完成。
3.3 關(guān)機(jī)測(cè)試
在WiFi信號(hào)強(qiáng)度與電量均滿足要求的情況下,長(zhǎng)按設(shè)備電源鍵進(jìn)行關(guān)機(jī),設(shè)備格式化指示燈亮,設(shè)備正在進(jìn)行格式化。格式化結(jié)束后,插入計(jì)算機(jī),設(shè)備重新開機(jī),可觀察到設(shè)備已經(jīng)格式化完成。
軟件調(diào)試與分析
打開上位機(jī)軟件,根據(jù)操作規(guī)則,輸入配置信息,設(shè)備連接到計(jì)算機(jī),選擇串口號(hào)之后,發(fā)送配置。設(shè)備接收配置信息,完成對(duì)設(shè)備的初始化配置。
4. 總結(jié)
本文針對(duì)U盤數(shù)據(jù)易泄露和篡改的問題,提出了基于wifi信號(hào)檢測(cè)的可自動(dòng)擦除U盤內(nèi)數(shù)據(jù)的設(shè)計(jì)與實(shí)現(xiàn)方法,該設(shè)備搭載于嵌入式軟硬件平臺(tái),實(shí)現(xiàn)了在用戶自定義的安全范圍內(nèi)(wifi強(qiáng)度和電量閾值)U盤可作為大容量存儲(chǔ)設(shè)備使用。在設(shè)備脫離安全范圍后,可自動(dòng)地對(duì)盤內(nèi)數(shù)據(jù)進(jìn)行數(shù)據(jù)擦除操作,銷毀內(nèi)部數(shù)據(jù),防止數(shù)據(jù)丟失與盜用,經(jīng)過反復(fù)的測(cè)試與分析,證明了該設(shè)備較好地保障了U盤內(nèi)數(shù)據(jù)訪問的安全性,達(dá)到了用戶使用U盤過程中數(shù)據(jù)的保密和安全需求。本文所介紹的設(shè)備,具有較好的可移植性,且穩(wěn)定度高、交互性強(qiáng)。實(shí)踐證明,該設(shè)備在信息安全領(lǐng)域有著廣闊的應(yīng)用前景。此外,在今后進(jìn)一步優(yōu)化該設(shè)備的工作中,我們還將從以下兩個(gè)方面入手:一是完善交互功能;二是增加處理器與Flash之間的緩存,提高數(shù)據(jù)交換及清除的速度。
參考文獻(xiàn):
[1] 喬毅, 白益鋮, 葉小琴. 實(shí)驗(yàn)室硬盤及U盤數(shù)據(jù)恢復(fù)技術(shù)研究[J]. 現(xiàn)代工業(yè)經(jīng)濟(jì)和信息化, 2019(5).
[2] 鄭奇, 袁志勇, 肖玲, et al. 基于Cortex-M3的高速安全U盤設(shè)計(jì)[J]. 計(jì)算機(jī)工程與設(shè)計(jì), 2014(04):102-108.
[3]王宗超, 倪凱, 王偉能, et al. 新一代高速串行接口USB3.0介紹[J]. 記錄媒體技術(shù)(2):34-36.
[4] ChenCH,DavuluriP,HanDH.Anovel measurement fixture for characterizing USB 3.0 radio frequency interference[C]// IEEE International Symposium on Electromagnetic Compatibility. IEEE, 2013.
[5] 王凱敏. 對(duì)礦用鋰離子電池的選型問題的探討[J]. 電子世界, 2013(17):121-121.
[6] 賈英江, 傅孝忠, 王耀濟(jì), 等. 鋰電池充電方法分析[J]. 科技資訊, 2009(2):123-123.
[7] 鄧開, 邱政, 梁國(guó)龍. FatFs文件系統(tǒng)在微型水聲監(jiān)測(cè)系統(tǒng)中的應(yīng)用[J]. 電腦知識(shí)與技術(shù):學(xué)術(shù)交流, 2016, 12(8):200-202.
[8] 崔鵬偉, 閆學(xué)文. 基于SD卡的FATFS文件系統(tǒng)的研究與應(yīng)用[J]. 工業(yè)控制計(jì)算機(jī), 2013(11):141-142.
[9]Huang, Peng-Fei, Du, Zhi-Xiu, Cheng, Cui-Fang,等. The design alarm and rescue terminal[J]. Journal of Discrete Mathematical Sciences & Cryptography, 19(3):649-661.