張雷 彭健
摘要:為了保護安卓手機用戶的個人隱私,提高短信傳輸?shù)目煽啃约鞍踩?,提出了基于安卓系統(tǒng)的短信加解密方案的設計方法,首先對安卓的信息安全及短信運行機制進行分析,指出短信加解密所需要的關鍵技術及方法,在此基礎上對安卓的三個版本進行比較分析,通過將幾種常用算法應用于短信加解密程序中,驗證了短信加解密的可行性和有效性。
關鍵詞:ANDROID平臺;加解密;短信息; 算法; 信息安全
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2013)07-1524-03
隨著移動通訊和手機操作系統(tǒng)的發(fā)展,如何有效地解決智能手機短信的安全性成為人們?nèi)找骊P注的熱點問題。近幾年,社會上不斷出現(xiàn)隱私信息被竊取的事件發(fā)生,說明手機通訊蘊涵了不少不安全因素。由于傳統(tǒng)手機的信息安全只能通過硬件加密實現(xiàn),無疑加大了成本,而伴隨著智能手機的發(fā)展,信息的加密可以通過軟件實現(xiàn),使自己的信息不被別有用心的人竊取。
1 背景
1.1 SMS安全
在ETSI TS 03.485中已經(jīng)明確列出了短信息的技術規(guī)范。技術規(guī)范的某些選項,比如安全參數(shù)索引(SPI),加密密鑰標識符(KIC),和完整性校驗值(RC / CC / DS),提供了可用的安全參數(shù)規(guī)格。冗余檢查(RC),加密校驗碼(CC)或數(shù)字簽名(DS)也可被用于驗證數(shù)據(jù)的完整性[1]。
在實際使用中,手機短信默認情況下,不進行加密,當短信通過信令信道時,采用循環(huán)冗余校驗 ,以確保不被損壞。采用傳統(tǒng)加密的的誤差轉寄保護功能也包含在內(nèi),但短信中并沒有提供保密性及完整性的加密算法。
由于短信在傳送過程中并沒有預先加密,所以信息在傳送時有可能被截取和竊聽。再者,在SMSC成功發(fā)送短信給收件人之前,短信是以明文的形式儲存起來的。而使用者能夠輕易的通過短信系統(tǒng)看到及修改這些短信。很多惡意軟件能夠自動獲取收件箱和發(fā)件箱中的短信,然后通過后臺程序將其上傳到遠端服務器,隱私及機密就會因此泄露出去。
1.2 加解密技術
在智能手機出現(xiàn)之前,短信加密的實現(xiàn)大多通過硬件,使用雙方都需要購買同一款加密手機才能實現(xiàn)短信加密,無疑加大了成本。而智能手機出現(xiàn)后,使用雙方只需安裝同一款軟件就能實現(xiàn)短信加密功能。對稱加密算法效率高,算法簡單,系統(tǒng)開銷小,加解密速度快,密鑰較短,適合加密大量數(shù)據(jù)等特點,被廣泛使用。
1.3 國內(nèi)外的研究情況
目前,多數(shù)人對信息安全并不敏感,僅對通話安全和郵件安全有些了解,對短信安全缺乏足夠的安全意識,很多所謂的短信加密軟件僅僅對收件箱進行加密,需要輸入密碼才能查看短信,而對于短消息在傳送過程中被攔截或運營商可能非法查看的情況沒有采取預防措施,僅有少量的軟件有相應的功能。因此相對于其他安全領域,ANDROID短信安全仍處于起步階段。
2 短信運行機制
SMSManager實現(xiàn)短信發(fā)送以及與SIM卡短信相關的操作,通過ISms接口提供對應的實現(xiàn)。ISms的服務器端實現(xiàn)是SimSmsInterfaceManager(在GSM類下,如果是CDMA則使用RuimSmsInterfaceManager),SimSmsInterfaceManager中關于短信發(fā)送的重要部分主要由SMSDispatcher提供支持。SMSDispatcher是短信部分的核心,提供發(fā)送SMS等操作接口,同時也提供接收SMS和返回報告等接口,它同樣被集成到GSMPhone中[2]。
2.1 發(fā)送SMS消息
1) 要在應用程序中發(fā)送文本消息,需要在清單文件中添加權限
2) 在布局文件中設置兩個可編輯文本框EditText用于輸入收件人電話號碼,一個用于編輯短信內(nèi)容,和一個按鈕Button,用于發(fā)送短信[3],此外還可以用Toast類提示短信是否發(fā)送成功,如圖3所示。
3)調用StringCryptor類,將短信加密,EncryptedMessage = StringCryptor.encrypt( new String(password),SmsMessage )
將加密過的短信通過SmsManager類[4]發(fā)送,smsManager.sendTextMessage(mobileNumber, null, EncryptedMessage, null, null);
2.2 接收SMS消息
1)讀取收件箱中的短信需要在清單文件中添加讀短信的權限