《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于智能手機(jī)的保密U盤(pán)設(shè)計(jì)與實(shí)現(xiàn)
基于智能手機(jī)的保密U盤(pán)設(shè)計(jì)與實(shí)現(xiàn)
2018年電子技術(shù)應(yīng)用第6期
李立甫,李紅亮,古勇軍
陸軍工程大學(xué) 通信士官學(xué)校,重慶400035
摘要: 深入分析了智能手機(jī)充當(dāng)U盤(pán)完成數(shù)據(jù)傳輸?shù)氖褂梅绞降陌踩[患,結(jié)合加解密技術(shù)和遠(yuǎn)程控制的技術(shù),提出了一種集“加密存儲(chǔ)、遙控銷(xiāo)毀、定位追蹤”等功能于一體的數(shù)據(jù)防護(hù)方案,并進(jìn)行了編程實(shí)現(xiàn),以期解決智能手機(jī)充當(dāng)U盤(pán)使用的數(shù)據(jù)安全問(wèn)題。
中圖分類(lèi)號(hào): TP309.2
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.173844
中文引用格式: 李立甫,李紅亮,古勇軍. 基于智能手機(jī)的保密U盤(pán)設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2018,44(6):120-123,128.
英文引用格式: Li Lifu,Li Hongliang,Gu Yongjun. The design and implementation of the secure USB disk based on smart mobilephone[J]. Application of Electronic Technique,2018,44(6):120-123,128.
The design and implementation of the secure USB disk based on smart mobilephone
Li Lifu,Li Hongliang,Gu Yongjun
Communication NCO Academy,the Army Engineering University of PLA,Chongqing 400035,China
Abstract: This paper analyzes the risk of using smart phones as U disk to complete data transmission. Combined with encryption technology and remote control technology,a data protection scheme is proposed, which integrates the functions of encryption storage, remote control destruction, location and tracking and so on. Finally,the programming realization has been carried on in order to solve the problem of data security for using smart phones as U disk.
Key words : encryption storage;remote control destruction;location and tracking

0 引言

    近幾年,隨著移動(dòng)互聯(lián)網(wǎng)的普及和信息技術(shù)的發(fā)展,智能手機(jī)已經(jīng)成為人們工作、生活的必需品[1]。人們不但可以使用智能手機(jī)完成信息交互、娛樂(lè),而且利用智能手機(jī)充當(dāng)U盤(pán)完成數(shù)據(jù)存儲(chǔ)與傳輸?shù)姆绞揭苍絹?lái)越多地被使用[2]。然而由于智能手機(jī)平臺(tái)開(kāi)放性和網(wǎng)絡(luò)互連性強(qiáng),更易受病毒、木馬等外來(lái)攻擊[3],根據(jù)CVE Details提供的統(tǒng)計(jì)數(shù)據(jù)顯示,Android、Debian Linux和Ubuntu Linux被評(píng)為2016年最易受攻擊的3種產(chǎn)品。智能手機(jī)存儲(chǔ)的數(shù)據(jù)較傳統(tǒng)U盤(pán)更容易泄露?;诖?,本文提出了“基于智能手機(jī)的保密U盤(pán)”的數(shù)據(jù)防護(hù)方案。

1 系統(tǒng)設(shè)計(jì) 

    系統(tǒng)基本組成架構(gòu)如圖1所示,系統(tǒng)主要包括:控制手機(jī)、基于智能手機(jī)的保密U盤(pán)和上位機(jī)??刂剖謾C(jī)是普通智能手機(jī),其軟件模塊主要由身份認(rèn)證模塊、控制處理模塊和定位追蹤模塊等組成?;谥悄苁謾C(jī)的保密U盤(pán)主要由身份認(rèn)證模塊、APP動(dòng)態(tài)認(rèn)證模塊、遙控銷(xiāo)毀模塊和定位模塊等組成,其硬件實(shí)體為智能手機(jī)+TF卡,搭載系統(tǒng)為Android。上位機(jī)主要由身份認(rèn)證模塊、上位機(jī)動(dòng)態(tài)認(rèn)證模塊、磁盤(pán)加/卸載模塊和過(guò)濾驅(qū)動(dòng)模塊組成,其硬件平臺(tái)為普通PC,搭載系統(tǒng)為Windows,支持32位和64位。

jsj3-t1.gif

    系統(tǒng)可分為3個(gè)核心功能區(qū),分別為:加密存儲(chǔ)功能區(qū)、遙控銷(xiāo)毀功能區(qū)和定位追蹤功能區(qū)。

1.1 加密存儲(chǔ)功能區(qū)

    加密存儲(chǔ)功能區(qū)主要由基于智能手機(jī)的保密U盤(pán)的APP動(dòng)態(tài)認(rèn)證模塊、TF卡和上位機(jī)程序組成,用于完成上位機(jī)與基于智能手機(jī)的保密U盤(pán)的動(dòng)態(tài)身份認(rèn)證,以及加密磁盤(pán)創(chuàng)建、加卸載、數(shù)據(jù)加解密與數(shù)據(jù)傳輸功能。

1.2 遙控銷(xiāo)毀功能區(qū)

    遙控銷(xiāo)毀功能區(qū)主要由控制手機(jī)的控制處理模塊和基于智能手機(jī)的保密U盤(pán)的遙控銷(xiāo)毀模塊組成,在基于智能手機(jī)的保密U盤(pán)丟失或被盜后,可通過(guò)控制手機(jī)發(fā)送遙控銷(xiāo)毀指令(短信形式承載),基于智能手機(jī)的保密U盤(pán)收到指令后自動(dòng)清除保密分區(qū)(數(shù)據(jù)),達(dá)成設(shè)備丟失后的數(shù)據(jù)遙控銷(xiāo)毀功能。

1.3 定位追蹤功能區(qū)

    定位追蹤功能區(qū)主要由控制手機(jī)的控制處理模塊和基于智能手機(jī)的保密U盤(pán)的定位模塊組成,主要用于完成基于智能手機(jī)的保密U盤(pán)的定位、位置回傳(通過(guò)短信指令)和定位追蹤功能,達(dá)成設(shè)備丟失后的定位追蹤和找回功能。

2 加密存儲(chǔ)原理與實(shí)現(xiàn)

    加密存儲(chǔ)功能主要由上位機(jī)程序和過(guò)濾驅(qū)動(dòng)配合完成,采用核心層(Kernel,又叫驅(qū)動(dòng)層)實(shí)現(xiàn)透明加解密。上位機(jī)程序主要用于實(shí)現(xiàn)人機(jī)接口、身份認(rèn)證、密鑰設(shè)定、加密磁盤(pán)創(chuàng)建、掛載和卸載等工作。過(guò)濾驅(qū)動(dòng)采用Windows提供的可安裝文件系統(tǒng)(Installable File System)[4]開(kāi)發(fā)接口開(kāi)發(fā)完成,通過(guò)此驅(qū)動(dòng)實(shí)現(xiàn)透明加解密功能。上位機(jī)程序和過(guò)濾驅(qū)動(dòng)基于Visual Studio 2008開(kāi)發(fā)環(huán)境完成開(kāi)發(fā)。

2.1 密盤(pán)的創(chuàng)建、掛載與卸載

    (1)密盤(pán)的創(chuàng)建

    上位機(jī)軟件中,創(chuàng)建密盤(pán)分為4步來(lái)描述:①根據(jù)輸入的用戶(hù)口令生成密盤(pán)加密密鑰;②讀取需要格式化磁盤(pán)的各種信息,建立對(duì)應(yīng)數(shù)據(jù)結(jié)構(gòu);③在內(nèi)存中創(chuàng)建文件系統(tǒng)頭;④調(diào)用寫(xiě)磁盤(pán)命令,建立密盤(pán)。建立密盤(pán)時(shí),通過(guò)調(diào)用過(guò)濾驅(qū)動(dòng),將明文的文件系統(tǒng)結(jié)構(gòu)加密后寫(xiě)入對(duì)應(yīng)位置,實(shí)現(xiàn)文件系統(tǒng)的加密存儲(chǔ)。完成這幾步操作后,就將磁盤(pán)分區(qū)格式化為了密盤(pán)文件系統(tǒng)。其實(shí)現(xiàn)流程如圖2所示。

jsj3-t2.gif

    (2)密盤(pán)的掛/卸載

    密盤(pán)文件系統(tǒng)的掛載是指將基于智能手機(jī)的保密U盤(pán)的密盤(pán)掛載到操作系統(tǒng)下。這里涉及編寫(xiě)密盤(pán)驅(qū)動(dòng)程序、掛/卸載分區(qū)、指定盤(pán)符等內(nèi)容。基于智能手機(jī)的保密U盤(pán)的密盤(pán)建立后,數(shù)據(jù)均是加密存儲(chǔ),采用掛載的方式是指在系統(tǒng)中進(jìn)行雙向身份認(rèn)證,通過(guò)認(rèn)證后,對(duì)密盤(pán)的訪問(wèn)將通過(guò)自動(dòng)調(diào)用過(guò)濾驅(qū)動(dòng)進(jìn)行處理,這時(shí)從操作系統(tǒng)層上看到的則是其真實(shí)的明文數(shù)據(jù),因此操作系統(tǒng)就可以對(duì)密盤(pán)數(shù)據(jù)進(jìn)行正常訪問(wèn)。

2.2 加密文件系統(tǒng)的實(shí)現(xiàn)

    文件加密系統(tǒng)由文件過(guò)濾驅(qū)動(dòng)程序和用戶(hù)模式應(yīng)用程序組成[4]。如圖3所示,文件過(guò)濾驅(qū)動(dòng)程序接收用戶(hù)模式應(yīng)用程序傳來(lái)的設(shè)置信息,并按照這些信息對(duì)文件系統(tǒng)過(guò)濾驅(qū)動(dòng)進(jìn)行設(shè)置;對(duì)應(yīng)用程序發(fā)往文件系統(tǒng)的操作請(qǐng)求進(jìn)行監(jiān)控;在應(yīng)用程序?qū)Υ疟P(pán)上的文件進(jìn)行讀操作時(shí),進(jìn)行相應(yīng)的處理和解密操作;在進(jìn)行寫(xiě)操作時(shí),進(jìn)行加密操作。用戶(hù)模式應(yīng)用程序?qū)崿F(xiàn)PC與用戶(hù)之間的交互,將用戶(hù)設(shè)置信息通過(guò)用戶(hù)模式應(yīng)用程序與內(nèi)核模式程序的通信方式傳遞給文件過(guò)濾驅(qū)動(dòng)程序,并向用戶(hù)顯示文件過(guò)濾驅(qū)動(dòng)程序傳給用戶(hù)模式應(yīng)用程序的信息。

jsj3-t3.gif

2.3 實(shí)現(xiàn)效果

    (1)密盤(pán)創(chuàng)建、掛載、卸載功能

    密盤(pán)創(chuàng)建、掛載、卸載功能實(shí)現(xiàn)效果如圖4所示。

jsj3-t4.gif

    上位機(jī)軟件可呈現(xiàn)基于智能手機(jī)的保密U盤(pán)的連接狀態(tài),可實(shí)現(xiàn)與保密U盤(pán)的雙向鑒權(quán)以及創(chuàng)建、加載和卸載保密分區(qū)的功能。

    通過(guò)200次測(cè)試可以有效實(shí)現(xiàn)雙向鑒權(quán),實(shí)現(xiàn)保密分區(qū)的創(chuàng)建、加載與卸載功能,并且保密分區(qū)加載后與普通U盤(pán)使用方法完全一致。

    (2)保密分區(qū)的讀寫(xiě)速度測(cè)試

    作者使用ATTO DISK bench32對(duì)保密分區(qū)的讀寫(xiě)速度進(jìn)行了多次測(cè)試[5],如圖5所示,保密分區(qū)最大寫(xiě)速度接近16 MB/s,讀速度接近22 MB/s。

jsj3-t5.gif

    保密分區(qū)的讀寫(xiě)速度與普通U盤(pán)的讀寫(xiě)速度相差不大,基本不影響對(duì)數(shù)據(jù)的讀寫(xiě)。

    (3)加/解密功能測(cè)試

    作者采用WINHEX對(duì)基于智能手機(jī)的保密U盤(pán)加/解密功能進(jìn)行了測(cè)試[6],圖6為未加密數(shù)據(jù)圖,圖7為經(jīng)過(guò)濾驅(qū)動(dòng)加密后的數(shù)據(jù)圖。經(jīng)對(duì)比可以看出,數(shù)據(jù)經(jīng)過(guò)過(guò)濾驅(qū)動(dòng)后已經(jīng)被加密。

jsj3-t6.gif

jsj3-t7.gif

3 遙控銷(xiāo)毀的原理與實(shí)現(xiàn)

    遙控銷(xiāo)毀的指令收發(fā)通過(guò)短信形式完成,編程采用Android標(biāo)準(zhǔn)API接口,指令解析采用自定義協(xié)議,數(shù)據(jù)處理及狀態(tài)監(jiān)控采用Android標(biāo)準(zhǔn)API接口開(kāi)發(fā)。

3.1 指令接收與發(fā)送

    系統(tǒng)利用短消息作為信令載體,關(guān)鍵編程實(shí)現(xiàn)方式如下。

    (1)指令發(fā)送

    指令發(fā)送調(diào)用Android SDK的SmsManager類(lèi)進(jìn)行二次開(kāi)發(fā)[7]。

    (2)指令接收

    指令接收采用BroadcastReceiver廣播接收器的方式,監(jiān)聽(tīng)SMS消息服務(wù)。

    (3)訪問(wèn)權(quán)限

    集成Android系統(tǒng)的讀寫(xiě)短信訪問(wèn)權(quán)限。

3.2 指令生成與解析

    指令生成與解析主要采用自定義協(xié)議,自定義協(xié)議如下。

    (1)基于智能手機(jī)的保密U盤(pán)發(fā)送指令

    基于智能手機(jī)的保密U盤(pán)指令如表1所示。

jsj3-b1.gif

    (2)控制手機(jī)發(fā)送指令

    控制手機(jī)指令如表2所示。

jsj3-b2.gif

3.3 數(shù)據(jù)處理

    數(shù)據(jù)處理主要是指基于智能手機(jī)的保密U盤(pán)根據(jù)收到的控制指令做出相應(yīng)處理,清除sdcard文件。

    (1)核心代碼

    調(diào)用Android SDK的ContentResolver類(lèi)進(jìn)行實(shí)例化處理[8]

    (2)權(quán)限設(shè)置

    集成Android系統(tǒng)的讀寫(xiě)sdcard訪問(wèn)權(quán)限。

3.4 狀態(tài)監(jiān)控

    狀態(tài)監(jiān)控主要是監(jiān)控手機(jī)開(kāi)機(jī)啟動(dòng)和更換SIM/UIM卡狀態(tài),監(jiān)控方法如下:首先監(jiān)聽(tīng)系統(tǒng)開(kāi)機(jī)啟動(dòng)消息,然后在設(shè)備啟動(dòng)時(shí)檢測(cè)系統(tǒng)SIM/UIM卡的信息(SIM/UIM卡內(nèi)部信息包括:序列號(hào)、手機(jī)號(hào)、IMSI號(hào)等),最后對(duì)比SIM/UIM卡信息和設(shè)置的受監(jiān)聽(tīng)SIM/UIM信息是否相同,若相同則未更換,若不同則更換了。

    (1)系統(tǒng)啟動(dòng)監(jiān)控

    基于Android SDK的開(kāi)機(jī)啟動(dòng)監(jiān)聽(tīng)主要是采用BroadcastReceiver來(lái)接收Android系統(tǒng)的開(kāi)機(jī)啟動(dòng)消息廣播,并做相應(yīng)處理[9]。

    (2)SIM卡信息檢測(cè)

    在本系統(tǒng)的研發(fā)過(guò)程中發(fā)現(xiàn),不同SIM/UIM卡,其內(nèi)部存儲(chǔ)的信息不太相同,有的存有手機(jī)號(hào)碼,有的沒(méi)有;有的存有序列號(hào),有的沒(méi)有;只有IMSI號(hào)具備通用性[10]。因此,本系統(tǒng)采用SIM/UIM卡的IMSI號(hào)作為監(jiān)聽(tīng)換卡的依據(jù)。

3.5 實(shí)現(xiàn)效果

    如圖8所示,控制手機(jī)可設(shè)置被控制號(hào)碼、控制方式以及選擇丟失后處理選項(xiàng)(包括:清除保密分區(qū)、位置通知、啟動(dòng)報(bào)警、停止報(bào)警、鎖死屏幕),最后點(diǎn)擊“指令發(fā)送”,可以實(shí)現(xiàn)對(duì)基于智能手機(jī)保密U盤(pán)丟失處理指令的生成和發(fā)送。

jsj3-t8.gif

    經(jīng)過(guò)200次不同環(huán)境測(cè)試,遙控銷(xiāo)毀平均處理時(shí)間為4 s,正常處理率為100%。

4 定位追蹤原理與實(shí)現(xiàn)

    定位追蹤模塊主要功能架構(gòu)如圖9所示,基于智能手機(jī)的保密U盤(pán)通過(guò)GPS/北斗、移動(dòng)基站和WiFi多種方式定位[11-13],提交位置信息到定位模塊,并以短消息的形式上報(bào)位置信息到控制手機(jī)??刂剖謾C(jī)收到發(fā)來(lái)的丟失設(shè)備位置信息,顯示于地圖上,并可以做實(shí)時(shí)更新與定位追蹤。

jsj3-t9.gif

4.1 定位模塊的實(shí)現(xiàn)

    定位模塊采用Android傳感器API和開(kāi)源地圖API二次開(kāi)發(fā)實(shí)現(xiàn)。

4.2 導(dǎo)航追蹤功能的實(shí)現(xiàn)

    定位追蹤功能模塊包括:丟失設(shè)備顯示模塊、站立點(diǎn)顯示模塊、地圖顯示模塊和追蹤路徑規(guī)劃模塊組成,協(xié)同完成丟失手機(jī)定位和追蹤功能。

4.3 實(shí)現(xiàn)效果

    定位追蹤模塊實(shí)現(xiàn)效果如圖10所示,點(diǎn)擊設(shè)備位置,即可將丟失設(shè)備顯示在地圖上;點(diǎn)擊“駕車(chē)追蹤”、“公交追蹤”或“步行追蹤”,即可實(shí)現(xiàn)站立點(diǎn)到丟失設(shè)備位置的路徑規(guī)劃。

jsj3-t10.gif

    經(jīng)過(guò)30次,累計(jì)60 h、900公里的測(cè)試,位置更新指令傳遞平均用時(shí)8 s,地圖刷新平均用時(shí)2 s,正確定位追蹤準(zhǔn)確率為96%。

5 結(jié)束語(yǔ)

    本文對(duì)智能手機(jī)充當(dāng)U盤(pán)完成數(shù)據(jù)傳輸?shù)氖褂梅绞降娘L(fēng)險(xiǎn)進(jìn)行了分析,提出一種“基于智能手機(jī)的保密U盤(pán)”的數(shù)據(jù)保護(hù)方案,并對(duì)其加密存儲(chǔ)、遙控銷(xiāo)毀、定位追蹤等核心功能進(jìn)行了編程實(shí)現(xiàn)和實(shí)驗(yàn)測(cè)試。通過(guò)測(cè)試證明了本方案可以有效達(dá)成智能手機(jī)充當(dāng)U盤(pán)完成數(shù)據(jù)傳輸這種使用方式的安全防護(hù)。

參考文獻(xiàn)

[1] 汪奕祥.Android惡意軟件檢測(cè)方法研究[D].合肥:合肥工業(yè)大學(xué),2016.

[2] 鄭理.Smartphone也能當(dāng)U盤(pán)[J].電子世界,2007(3):55-55.

[3] 梁丹.基于動(dòng)態(tài)字節(jié)碼注入的Android沙盒模型[D].上海:上海交通大學(xué),2015.

[4] 胡宏銀,姚峰,何成萬(wàn).一種基于文件過(guò)濾驅(qū)動(dòng)的Windows文件安全保護(hù)方案[J].計(jì)算機(jī)應(yīng)用,2009,29(1):168-171.

[5] 洪婷,張朝民,趙真.Micro SD與M2手機(jī)存儲(chǔ)卡的讀寫(xiě)速度分析[J].世界華商經(jīng)濟(jì)年鑒·高校教育研究,2009(5):160-162.

[6] 張輝,周柳陽(yáng),丁承林.Windows內(nèi)存取證的研究與應(yīng)用[J].科技傳播,2009(3):188.

[7] 王穎,李威耀.基于Android平臺(tái)的手機(jī)防盜與數(shù)據(jù)保護(hù)系統(tǒng)[J].電腦與微電子技術(shù),2013(18):62-64.

[8] 吳亞峰,索依娜.Android核心技術(shù)與實(shí)例講解[M].北京:電子工業(yè)出版社,2010.

[9] 浩明.基于安卓系統(tǒng)的手機(jī)防盜設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2014(14):36-39.

[10] 江燕良,黃海于.Android平臺(tái)手機(jī)防盜系統(tǒng)的安全解決方案[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2013,13(7):15-18.

[11] 張波.基于移動(dòng)主體技術(shù)的手機(jī)地圖服務(wù)[M].廈門(mén):廈門(mén)大學(xué),2008.

[12] 崔和宏.移動(dòng)定位技術(shù)概述[J].科技信息,2008(20):23-34.

[13] 劉穎,王樹(shù)勛,宋春莆.移動(dòng)終端定位算法及誤差分析[J].系統(tǒng)工程與電子技術(shù),2001,23(7):99-106.



作者信息:

李立甫,李紅亮,古勇軍

(陸軍工程大學(xué) 通信士官學(xué)校,重慶400035)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。