新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > Android平臺手機防盜系統(tǒng)的安全解決方案

Android平臺手機防盜系統(tǒng)的安全解決方案

作者: 時間:2015-03-11 來源:網(wǎng)絡(luò) 收藏

  引言

本文引用地址:http://2s4d.com/article/270830.htm

  是Google開發(fā)的基于平臺的開源手機操作系統(tǒng),該平臺由操作系統(tǒng)、中間件、用戶界面和應(yīng)用軟件組成,被譽為第一個完整、開放而且免費的移動平臺[1].因3G技術(shù)的不斷發(fā)展和平臺的優(yōu)勢,移動應(yīng)用開發(fā)成為目前熱門的技術(shù)之一,基于Android平臺的智能手機數(shù)量也越來越多。由于Android手機的便利性和實用性,很多人會把銀行卡密碼、電話密碼、網(wǎng)絡(luò)支付密碼、重要日程提醒等個人信息和一些隱私數(shù)據(jù)存放到手機里。如果手機被盜,不僅短信、通訊錄、照片等隱私泄漏,還可能導(dǎo)致親戚朋友上當(dāng)受騙,會對人們的工作和生活帶來很大的影響。

  為了解決這一問題,本文提出了在手機被盜后,通過防盜追蹤模塊來監(jiān)測手機SIM卡是否被更換,從而確定自己的手機是否被盜。并利用即時通信模塊向被盜手機發(fā)送遠(yuǎn)程控制指令,來保護個人隱私并追蹤找回被盜手機。在手機鎖定后通過屏蔽手機的按鍵、攔截電話和短信以及關(guān)閉手機的USB調(diào)試連接,使手機不能使用,除非進(jìn)行解鎖。該系統(tǒng)將防盜追蹤、即時通信和遠(yuǎn)程控制等模塊有機地結(jié)合在一起,具有良好的研究價值和應(yīng)用前景。

  1系統(tǒng)總體設(shè)計

  手機防盜系統(tǒng)是以手機終端為載體,借助通信運營商提供的GPRS數(shù)據(jù)連接業(yè)務(wù)或者移動WiFi網(wǎng)絡(luò)以及短信業(yè)務(wù),實現(xiàn)遠(yuǎn)程控制。在實現(xiàn)遠(yuǎn)程控制之前,用戶首先需要通過GPRS數(shù)據(jù)連接或者移動WiFi網(wǎng)絡(luò),根據(jù)配置好的網(wǎng)絡(luò)環(huán)境啟動并運行服務(wù)器,然后再根據(jù)啟動服務(wù)器的IP地址、端口號,以及服務(wù)器上配置好的用戶名和密碼,激活安裝在Android終端上的客戶端軟件。在手機客戶端軟件激活之后,云端的服務(wù)器便跟手機客戶端之間建立了可靠的通信連接;連接建立成功后,用戶便可以按照手機云平臺的通信協(xié)議實現(xiàn)服務(wù)器跟客戶端之間的數(shù)據(jù)通信。手機客戶端將需要上傳的數(shù)據(jù)或操作生成的業(yè)務(wù)數(shù)據(jù),封裝成固定的Java Bean數(shù)據(jù)包的格式發(fā)送到云端的服務(wù)器,或者是云端服務(wù)器將網(wǎng)頁側(cè)下發(fā)的命令字段封裝成Java Bean數(shù)據(jù)包的形式,再下發(fā)給手機終端。手機終端將接收到的數(shù)據(jù)包進(jìn)行解析,并同時完成對手機相應(yīng)的命令操作,然后返回處理的結(jié)果[2].

  通過對整個系統(tǒng)的分析,從系統(tǒng)的總體架構(gòu)入手,對各個功能模塊進(jìn)行了劃分,并明確了系統(tǒng)各模塊之間的聯(lián)系。通過分析C/S模式和B/S模式各自的特點,結(jié)合系統(tǒng)的實際需要,采用了C/S模式和B/S模式相結(jié)合的架構(gòu)[3],用戶不僅能通過安全號碼來控制被盜的手機,在緊急情況下,還可登錄Web端的手機防盜管理系統(tǒng)來遠(yuǎn)程操控被盜的手機。第一時間對被盜的手機進(jìn)行全方位的監(jiān)聽,使小偷不能對手機進(jìn)行任何操作,既保護了隱私數(shù)據(jù),又給找回手機爭取了寶貴的時間。還可以通過GPS定位來獲取被盜手機當(dāng)前所在的位置,盡快找回被盜的手機。系統(tǒng)總體架構(gòu)如圖1所示。



  圖1系統(tǒng)總體架構(gòu)

  圖1說明了整個系統(tǒng)的架構(gòu)設(shè)計,在手機被盜之后,用戶可以通過安全號碼手機控制被盜的手機,還可以通過PC的瀏覽器登錄到Web端的手機防盜管理系統(tǒng),通過即時通信模塊向被盜手機發(fā)送遠(yuǎn)程控制指令,從而執(zhí)行手機報警、數(shù)據(jù)刪除、鎖定手機、GPS定位等功能。當(dāng)被盜手機接收到這些指令,也會進(jìn)行相應(yīng)的處理,完成后將處理結(jié)果通過即時通信模塊發(fā)送到Web端并顯示。這兩種控制方式都是在后臺秘密地進(jìn)行,小偷不會有任何察覺,從而更安全可靠地追蹤手機。

  2防盜追蹤模塊的設(shè)計與實現(xiàn)

  防盜追蹤模塊通過監(jiān)聽手機的開機廣播,實時監(jiān)測手機中插入的SIM卡是否合法,如果合法,不作任何處理;否則,將獲取新卡的SIM卡卡號,并將該SIM卡卡號作為短信的內(nèi)容發(fā)送至用戶指定安全號碼的手機,從而使用戶獲取被盜手機的SIM卡號碼,對手機進(jìn)行遠(yuǎn)程控制。與此同時,將開啟轉(zhuǎn)發(fā)被盜手機新短信的服務(wù)。下面說明該模塊的具體功能。防盜追蹤模塊處理流程如圖2所示。



  圖2防盜追蹤模塊處理流程

  ①設(shè)置、修改合法的SIM卡卡號:在安裝完程序第一次啟動的時候,系統(tǒng)會自動讀取當(dāng)前手機的SIM卡卡號,并將該卡號作為合法的SIM卡卡號寫入自動生成的配置文件中。由于每張SIM卡卡號(即IMSI序列號)是唯一的,因此該卡號將作為判斷以后手機中插入的SIM卡是否合法的主要依據(jù)。此外還允許用戶隨時修改該SIM卡序列號。

 ?、讷@取新SIM卡號碼和IMSI序列號:用戶的手機在丟失或被盜以后,手機SIM卡往往會被更換,在手機重新啟動時,系統(tǒng)會自動獲取當(dāng)前SIM卡的卡號,然后與之前配置文件中保存的卡號對比,如果不一致,系統(tǒng)會將該SIM卡卡號作為短信內(nèi)容向用戶指定的安全號碼發(fā)送通知短信,讓用戶可以通過安全號碼手機對被盜手機進(jìn)行遠(yuǎn)程操作,盡快找回被盜手機。

 ?、坶_啟轉(zhuǎn)發(fā)新短信的服務(wù):后臺轉(zhuǎn)發(fā)新短信的服務(wù)一直在運行,每一次用戶重新開機的時候,就會將配置文件中的SIM卡卡號跟當(dāng)前手機中的SIM卡卡號進(jìn)行對比,如果結(jié)果不一致,就會啟動該服務(wù),將用戶手機最新收發(fā)的短信記錄按照一定的格式自動發(fā)送至用戶指定的安全號碼手機。

  3即時通信模塊的設(shè)計與實現(xiàn)

  即時通信模塊為Web端手機防盜管理系統(tǒng)和手機防盜系統(tǒng)客戶端提供了實時通信的渠道,讓用戶在登錄Web端手機防盜管理系統(tǒng)之后,可以實時地對被盜手機進(jìn)行遠(yuǎn)程控制,保護用戶隱私,并追蹤找回被盜手機。即時通信模塊包括服務(wù)器和客戶端兩部分,通過在服務(wù)器與客戶端之間建立網(wǎng)絡(luò)連接,從而實現(xiàn)即時通信。

  即時通信模塊的處理流程如圖3所示。



  圖3即時通信模塊的處理流程圖

  3.1服務(wù)器端的設(shè)計與實現(xiàn)

  本系統(tǒng)采用開源的Openmobster手機云平臺來搭建即時通信服務(wù)器,并根據(jù)系統(tǒng)的需要進(jìn)行了改進(jìn)和優(yōu)化。該平臺是一個向本地手機程序提供“云”服務(wù)的平臺,它內(nèi)嵌了一個基于J2EE開放源代碼的應(yīng)用服務(wù)器JBoss.在JBoss服務(wù)器啟動后,可以通過PC的瀏覽器啟動控制臺。JBoss的控制臺界面簡陋,和其他商業(yè)化服務(wù)器的控制臺差別很大,不夠直觀。因此考慮將控制臺改造成網(wǎng)頁的形式,這樣既可以方便用戶操作,界面也更直觀。

  為了該平臺的服務(wù)器跟手機終端之間實現(xiàn)通信,需要在JBoss控制臺程序中新增一條命令,相應(yīng)地在服務(wù)器端也要新增處理這個命令的代碼,用控制臺發(fā)命令,讓服務(wù)器發(fā)Push消息給手機上的Service.服務(wù)器端的總體設(shè)計流程主要分為以下幾步:

 ?、賹刂婆_代碼進(jìn)行分析,找出控制臺的命令與類的對應(yīng)關(guān)系。

  ②因此新增了一個FindCommand類,并且修改了配置文件,使控制臺可以運行新命令。

 ?、墼诜?wù)器端新增了一個對應(yīng)控制臺新命令的findPhoneCommand類,繼承自MobileServiceBean,放在服務(wù)器端處理新增的命令。

 ?、茉诜?wù)器端建立一條Push通道。findPhoneCommand類在收到命令時就會通過這個Push通道向手機上的Service發(fā)Push消息。

 ?、輰⒖刂婆_改造成網(wǎng)頁的形式來發(fā)命令。

  3.2客戶端的設(shè)計與實現(xiàn)

  系統(tǒng)客戶端包括手機即時通信客戶端和Web即時通信客戶端。

  Web即時通信客戶端基于JavaEE,利用Openmobster云平臺的Jboss服務(wù)器對JSP網(wǎng)頁文件進(jìn)行熱部署,通過登錄到即時通信服務(wù)器端與手機客戶端進(jìn)行通信。

  移動互聯(lián)網(wǎng)中,Android智能終端通過WiFi或GPRS連接到互聯(lián)網(wǎng)。手機即時通信客戶端通過激活手機設(shè)備連接到服務(wù)器,然后以Java Bean的傳輸協(xié)議形式,對協(xié)議進(jìn)行解析并執(zhí)行相應(yīng)的命令操作。最后再將處理的結(jié)果封裝成Bean的對象,在客戶端與服務(wù)器之間進(jìn)行傳輸。

  4遠(yuǎn)程控制模塊的設(shè)計與實現(xiàn)

  4.1 Web遠(yuǎn)程控制模塊的設(shè)計與實現(xiàn)

  Web遠(yuǎn)程控制模塊在C/S模式的基礎(chǔ)上,增加了B/S模式,旨在增強對被盜手機的控制。當(dāng)手機丟失,安全號碼手機不能及時用來控制被盜手機,這時通過Web網(wǎng)頁來進(jìn)行遠(yuǎn)程控制,它能在第一時間鎖定手機,保護手機上的隱私數(shù)據(jù)不被竊取,為盡快找回手機提供幫助。Web控制模塊實現(xiàn)流程如下:

 ?、儆脩敉ㄟ^瀏覽器打開網(wǎng)頁,選擇需要下發(fā)的命令,然后輸入用戶名和密碼,點擊“確定”后調(diào)用JSP代碼。JSP代碼將網(wǎng)頁請求封裝的各功能選項字段取出,封裝進(jìn)一個數(shù)據(jù)對象中。

 ?、谠诜?wù)器端定義的用于下發(fā)的Channel會定期調(diào)用相關(guān)接口,對上面封裝的數(shù)據(jù)對象進(jìn)行檢查,一旦發(fā)現(xiàn)有新插入的數(shù)據(jù),會通過對應(yīng)的接口取出該數(shù)據(jù),將其封裝到Bean對象中,通過Openmobster推送給手機終端。

 ?、劢K端后臺模塊中的服務(wù)同樣建立了對應(yīng)云端Channel的處理。一旦收到Channel的下發(fā)通知,通過發(fā)送Intent的方式啟動一個Activity[4],這個Activity在啟動過程中可以通過Bean的相關(guān)接口讀出對應(yīng)用戶名和通道下發(fā)的Bean對象,通過Bean的一些方法解析并獲取下發(fā)通知中的各功能項數(shù)據(jù)字段,調(diào)用Android平臺提供的各接口,完成對手機的遠(yuǎn)程控制。

 ?、軐⑦h(yuǎn)程控制處理的結(jié)果封裝到一個新的Bean對象里,然后注冊一個用于上傳的Channel,最終將結(jié)果上傳到服務(wù)器的數(shù)據(jù)庫并顯示在網(wǎng)頁界面上。

  Web遠(yuǎn)程控制模塊的處理流程如圖4所示。



  圖4 Web遠(yuǎn)程控制模塊的處理流程

  4.2短信遠(yuǎn)程控制模塊的設(shè)計與實現(xiàn)

  短信控制模塊的設(shè)計主要是基于監(jiān)聽手機短信數(shù)據(jù)庫的變化,從而獲取短信并判斷短信的類型。如果是特殊格式的指令短信,則首先將手機調(diào)為靜音模式并關(guān)閉系統(tǒng)的消息通知,然后再根據(jù)指令進(jìn)行具體的操作。待操作完成以后,回復(fù)短信發(fā)件人告知指令執(zhí)行完畢,刪除此條短信并將手機恢復(fù)到之前的情景模式;否則,不作任何處理,進(jìn)入普通短信的系統(tǒng)處理流程。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

linux相關(guān)文章:linux教程



上一頁 1 2 下一頁

關(guān)鍵詞: Android Linux

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉