汪文彬+楊少輝



摘要:設計了一款以短信作為通信媒介的手機安全系統,通過客戶端發送指令,進行定位、鎖屏、拍照、警報、找回數據、刪除數據等操作,實現遠程控制被盜手機功能。通過測試,系統運行穩定,操作簡單,具有良好的用戶體驗。
關鍵詞:Android;手機防盜;數據安全;遠程控制;短信
中圖分類號:TP311.5
文獻標識碼:A
DOI:10.3969/j.issn.1003-6970.2015.06.005
本文著錄格式:汪文彬,楊少輝,基于短信控制的Android手機安全系統的設計與實現[J].軟件,2015,36(6):21-25
DesignandImplementationoftheSecuritySystemsofAndroidMobiles
BasedonSMSControl
WANGWen-bin,YANGShao-hui[Abstract]:Theauthordesignsasystemtorealizetheremotecontrolofthestolenmobilephonesthroughtheinstructionssentbytheclientstoachieveoperationssuchaspositioning,lockingscreen,camera,alert,retrievingdataanddeletingdata.ThissystemsetsSMSasamediumofcommunication.Throughthetesting,thesystemrunsstablyandoperateseasily.Asaresult,ithasexcellentuserexperience.
[Keywords]:Android;Mobilesecurity;Datasecurity;Remotecontrol;SMS
0引言
國內外,只要擁有防盜功能的軟件,其核心功能都用到了GPS定位、鎖死屏幕、安全警報、清除數據等。綜合各軟件優缺點,本文設計的手機防盜應用軟件不僅具有這些常規功能,還提供給用戶更多的操作手段,同時具有換卡通知和找回丟失數據的功能[1]。
基于短信控制的Android手機防盜系統,目的是將手機安全防護與遠程控制相結合,用于保護用戶的手機與手機中的資料,解決手機被盜或者丟失所帶來的隱私泄露問題。本系統采用Android系統的四大基本組件:Activity(活動)、Service(服務)、Broadcastreceiver(廣播接收器)、Contentproviders(內容提供者),結合GPS(全球定位系統)、SMS(短信服務)、E.mail(電子郵件)等技術,設計開發了追蹤定位、數據安全、遠程控制、換卡通知等功能模塊。
1系統設計
1.1系統原理[2][3]
本系統由服務端和客戶端兩部分組成,明確分T,簡化操作。服務端安裝在目標手機上,以后臺服務的形式運行,負責接收、解析遠程指令,處理遠程操作,是系統的核心部分;客戶端用于發送指令,顯示處理結果,遠程控制目標手機。安裝服務端的手機丟失后,可以利用客戶端發送指令請求服務端執行各種操作,以保護丟失手機的數據安全。系統原理如圖1所示。
1.2安全機制
由于程序本身涉及用戶隱私數據,程序的安全性也需要得到充分保障,防止他人惡意利用,竊取用戶隱私。本系統采取的安全措施主要有以下幾點:
(1)登錄機制。想要打開服務端和客戶端都必須輸入密碼登陸,密碼驗證通過后方可進入系統進行操作,沒有密碼則不能進入系統進行任何操作,防止他人惡意操作造成不必要的損失。
(2)綁定手機。安裝服務端后用戶必須綁定安全號碼,服務端只有接收到用戶綁定的安全號碼發來的指令才能生效。
(3)綁定郵箱。通過指令找回的個人數據都是以郵件的形式發送的,因此,只要綁定的郵箱是自己的,別人即使破解密碼,使用安全號碼獲取數據,最終數據還是發回到白己的郵箱,不必擔心數據丟失泄露。
(4)密碼驗證。客戶端向目標手機發送指令前.必須設置目標手機的登陸密碼作為指令驗證碼才可以發送。而安裝在目標手機的服務端也會檢查驗證碼是否正確。驗證碼默認為服務端登陸密碼。一個條合法的指令格式如圖2所示。例如:18976281234#ADMIN123456001就是一條合法的指令,每個部分都需要檢測合格才能生效。
1.3客戶端設計
客戶端主要用于發送指令控制丟失的目標手機,主要分為用戶登錄,定位追蹤,數據安全,遠程控制,用戶設置等五個模塊,如圖3所示。
1.4服務端設計
服務端主要用于保護手機的數據安全,接收和處理客戶端請求的遠程指令,并返回處理結果。為簡化操作,服務端只保留用戶登錄,個人信息設置和系統設置界面,其主要功能都在后臺服務中實現,由客戶端發送遠程指令激活執行。服務端結構圖如圖4所示
2系統實現
2.1通信方案[4]
由于涉及客戶端與服務端的遠程交互,兩端通信必不可少。短信好可以彌補網絡通信斷網的不足和藍牙的距離限制,而且信號非常穩定,無法手動關閉,因此本系統采用短信通信方式。
使用短信通信必須在程序中聲明短信的相關權限,聲明代碼如下:
<!..接收短信權限..>
<!..發送短信權限..>
<!..讀短信權限..>
2.2存儲方案
本系統的客戶端和服務端需要存儲的數據都非常少,且大都是配置信息,因此采用Android提供的一種輕量級存儲方式SharedPreferences。
SharedPreferences存儲格式代碼如下:
<?xmlversion=1.0encoding=utf.8standalone=yes?>
2.3客戶端實現[5]
客戶端主要用于和用戶交互,界面部分主要使用Android的Activity實現。Activity中所有操作都與用戶密切相關,是一個負責與用戶交互的組件,可以通過setContentView(View)來顯示指定控件。
客戶端實現的工程結構說明如表1所示。
2.4服務端實現
服務端主要用于接收和執行遠程指令,與用戶交互的地方不多,主要的用戶操作集中在用戶登錄界面和系統設置界面。用戶登錄界面與客戶端的登錄界面完全相同,因此不再贅述。系統設置界面要存儲用戶設置信息,因此也要采用PreferenceActivity實現。
服務端實現的工程結構說明如表2所示。
3系統測試
3.1測試方案
通過系統使用黑盒測試方法,對系統的功能模塊的正確實現,系統功能的正確性等方面進行測試[5][6]。測試方案如表3所示。
3.2測試用例
測試用例如表4所示。
4結論
經過測試,本軟件實現了所有防盜功能。當裝有此防盜軟件手機丟失時,通過安裝程序時設定的安全號碼,可以獲取到丟失手機的實時位置并顯示到地圖上;保證丟失手機的數據安全(找回通訊錄、短信、重要文件及銷毀文件);獲得丟失手機的遠程控制權(解鎖拍照、安全警報、鎖死屏幕、短信轉發、來電通知、開機提醒、換卡提醒等)。大大增加了找回丟失手機的可能性,保護了用戶的數據安全及個人隱私。
參考文獻
[1]齊榮.用戶隱私研究綜述[J].軟件,2015,36(1):125-130.
[2]陳澤恩.基于Android平臺的移動監控系統設計與應用分析[J].軟件,2012,33(10):52-54.
[3]劉偉,孫其博.Android平臺惡意軟件行為模式研究[J].軟件,2012,33(11):150-156.
[4]孟遠.Android網絡通信框架Volley的解析和比較[J]軟件,2014,35(12):66-68.
[5]汪文彬,馬玉春,尹建.基于加速度傳感器的智能手機動作識別系統的設計與實現[J].軟件,2015,02:10-13.
[6]錢樂秋,趙文耘,牛軍鈺.軟件工程[M].北京:清華大學出版社,2007