蘇艷 黃錕錕
華南理工大學廣州學院電子信息工程系,廣州 510800
短信端到端保密通信系統研究
蘇艷 黃錕錕
華南理工大學廣州學院電子信息工程系,廣州 510800
本文針對GSM網絡的安全漏洞,手機用戶短消息交互面臨著信息被竊取的威脅,提出了一種端到端的短消息保密通信解決方案。然后闡述該方案的安全性,并介紹了該解決方案的系統的功能特性和系統的層次架構,并基于Windows Mo手bile機平臺進行系統實現。
短信保密;信息安全;智能手機
隨著移動通信的迅猛發展,短信業務已成為人們使用手機的基本業務。除了使用短信進行日常溝通外,個別敏感業務也是基于短信業務進行。如通過短信進行銀行賬戶查詢,進行電子交易等,在這些應用中會涉及用戶的隱私信息。由于在GSM網絡中,短信都是明文傳輸,只要對通信鏈路進行監聽,就可以獲得用戶的通信內容[1]。目前此類監聽設備有很多,進行監聽已不是技術難度高的工作。這也對短信通信內容的安全性提出了挑戰。
目前互聯網上流傳一些“短信加密”軟件,經過測試發現,該功能僅僅是對短消息的內容的每個字節加上固定的數值。通過分析明文和密文,即可發現所采用的算法。分析出加密算法后,可以在中途竊取密文,很容易還原出明文。這種無可靠理論支持的“偽解決方案”根本無法應用于高安全需求中。還有一些加密軟件,采用了高強度的對稱加密算法,但使用時,須通過非安全通道(電話、QQ、郵件等方式)告知對方加解密密鑰。若可盜取該加解密信息的密鑰,同樣可以破解短消息內容。
針對上述情況,本文基于智能手機提出一種端到端的短信保密方案,引入自動密鑰協商機制,保證共享密鑰傳輸的安全性;采用AES算法進行消息加密,保證信息保密性;短信保留在加密數據庫中。三重保護,保證短消息的安全性。
2.1 系統加密傳輸方式
本文采用的系統加密傳輸方式如圖1,在進行信息交互之前,通信雙方通過非對稱密碼算法Diffie-Hellman算法[2]進行密鑰協商,僅傳輸生成密鑰的參數,其中Diffie-Hellman算法保證了即使在空中接口截取密鑰參數也無法計算出共享密鑰。通信雙方在獲取生成密鑰的參數后,在本地進行運算生成共享密鑰并保存在本地。在后續的短消息信息交互中,采用對稱密碼算法AES[3]。手機發送端使用該共享密鑰對信息加密,形成密文,并在移動網絡中傳輸。到達手機接收方,使用相應的共享密鑰進行信息解密,還原出明文,從而實現端到端的短信保密的目的。

圖1 端到端短消息保密通信模型
2.2 系統加密方式安全分析
綜合運用Diffie-Hellman算法和AES算法進行保密通信,是非常安全的[4]。首先AES加解密算法對密鑰的選擇沒有任何限制,能有效抵抗目前已知的攻擊算法的攻擊。而Diffie-Hellman算法除了可以提供密鑰協商功能之外,還可以提供保密性服務和一定程度的身份鑒別功能。假設A和B進行通信,因為只有A和B知道這個密鑰K的值,其他用戶都無法獲知該值,從而不能解密報文,這樣便保證了機密性;接收方A知道只有用戶B才能用這個密鑰生成這個報文,從而保證了身份鑒別的功能。
下面對AES所用的密鑰的有效期進行分析。最安全的方法是每次使用之后立即銷毀,但在短消息保密通信中,卻不可行,除了時間消耗大方面的因素外,短消息的交互不具備實時性,無法實時的協商密鑰;而且每條短消息的大小有限制,在有限的傳輸空間里,再附加上進行Diffie-Hellman密鑰協商所需的公共數據,留給用戶數據的空間就太小了。所以本方案中,共享密鑰則需首先自動協商,然后保存在本地。進行短消息通信的時候,只需在傳送加密后的數據即可,不需要附帶Diffie-Hellman協商密鑰所需的信息。當然,為了避免短消息因共享密鑰泄露而被竊取的危險,需要經常更換短消息密鑰。
由于短消息默認是存放在SIM卡內的,為了獲取更高的安全性,這里需要將加密短信存放在另外的一個存儲空間。在本系統中,存放在移動嵌入數據庫SQL CE中。
2.3 加密方案實現
本方案的設計及實現是在智能手機平臺上進行的,所以要受智能手機平臺軟硬件支持和限制。測試平臺采用了索愛 M1i智能手機,內置Windows M o b i l e 6.5.3Professional操作系統,使用頻率為600MHz的處理器,擁有256MB RAM以及512MB FlashROM。該機擁有較快的處理速度,可以處理加密解密信息所需的大量的運算。開發環境為Visual Studio2008,該工具集成了移動項目的開發、測試、部署的一整套解決方案;由于需要保存系統本地配置信息,采用了數據庫SQL Server CE 3.5,該數據庫是SQL Server 的移動開發版本;由于SIM卡容量有限,收到的短信也放入數據庫。
按照層次結構劃分,本方案的實現可以分為操作系統/驅動程序層和保密服務層。如圖2。操作系統/驅動程序層屏蔽了硬件細節,對應用層軟件提供統一的接口,使保密服務層的實現與具體硬件無關;保密服務層工作在操作系統/驅動程序之上,主要包括了連接、密鑰交換協議、短信保密處理,是系統的關鍵。用戶界面開發以及保密服務層正是本系統的工作內容。

圖2 系統框架圖
在系統實現過程中,根據敏捷軟件開發的思想,嚴格按照設定的平臺軟件模塊劃分進行模塊化實現,劃分為加密解密模塊、數據操作模塊、短信操作模塊、UI模塊。實現的界面如圖3所示。具體如下列模塊:
1)加密/解密模塊
對系統需求采用模塊分解的辦法,對短信保密模塊進一步細化,從中抽取出短信保密的公共模塊:加密/解密模塊。
2)數據操作模塊
數據庫操作類,用于數據持久化操作,用于保存系統配置信息、用戶收到短消息以及短信密鑰。
3)UI模塊
提供用戶操作圖形界面,調用上述各個模塊提供的對外接口,實現短信保密功能。
4)短信操作模塊
包括短信攔截和發送功能。

圖3 系統功能界面圖
本文提出并實現了一種端到端的短信保密通信解決方案,該方案基于Windows Mobile智能手機開發,易于部署,并有較強可移植性,具有較高的現實意義和市場價值。
[1]謝亮,汪海航,譚成翔.安全短消息應用系統方案研究.計算機安全. 2007.830-32
[2]徐恒, 陳恭亮, 楊福祥. 密鑰交換中中間人攻擊的防范[J]. 信息安全與通信保密. 2009年02期: 91
[3]趙勇. Rijndael算法的結構與安全性分析[J].四川文理學院學報(自然科學).Sep.2008, Vol. 18No.5: 41-42
[4][美]Willianm Stall;ings劉玉珍, 王麗娜, 傅建明,等譯. 密碼編碼學與網絡安全-原理與實踐[M](第三版).北京: 電子工業出版社.2004: 103-22
TN929.5
A
10.3969/j.issn.1001-8972.2011.12.053
蘇艷(1983-),女,助教,碩士研究生, 研究方向:移動通信與天線。