王擇
?
移動通信中的安全機制
王擇
海軍工程大學,湖北 武漢 430033
隨著移動通信技術的不斷發展,人們可以方便地通過通信系統來獲得語音以及各種的信息服務,移動通信已經和人們的生活緊密相連了,人們在體驗移動通信的便捷服務時對其安全的要求也是越來越高。在此,首先介紹了其安全需求以及安全設計所面臨的挑戰,接著重點研究了我們生活中運用最為廣泛的蜂窩移動網絡安全機制,它主要包含了第二代、第三代的移動通信網絡的安全機制及安全協議,最后針對移動通信用戶身份保密的問題提出解決方法。
移動通信;安全需求;設計挑戰;安全機制
移動通信的發展速度迅猛,目前我國的移動用戶已突破4億,可以說已經進入了移動通信的時代。正是由于人們越來越多地使用移動通信網絡,所以移動通信的安全性就越發顯得重要。移動網絡有很多的安全問題,不僅可能會導致人們遭受經濟損失,也有可能會對國家的安全造成威脅,所以研究移動通信的安全機制是非常有現實意義的,它的分析研究對維護人們的信息安全有著非常重要的作用。[1]
由于移動通信是一種無線連接技術,所以攻擊者可以對網絡攻擊而不必有物理性的網絡連接,因此其網絡更容易被攻擊。我們最為常見的一些攻擊形式有竊聽、偽裝、話務量分析、濫用權限服務以及干擾等。作為移動通信服務的供應商有義務為用戶提供一些安全機制,確保用戶的機密不被泄露和竊取。
2.1 第二代移動通信網絡的安全機制
2.1.1 GSM的安全機制
作為在世界上應用非常廣泛的蜂窩通信標準的GSM,它對用戶欺騙以及竊聽可以起到一定的抵制作用。GSM系統的安全實體有:SIM卡(用戶識別模塊),GSM手機和基站,GSM網絡子系統。GSM的關鍵數據包括一是用戶鑒別密鑰Ki作為在Auc和SIM卡之間可以進行共享,并且是生產會話密鑰的一個最為基礎的機密信息。二是國際的移動用戶身份,這個在世界范圍內用戶使用的唯一的標識碼。三是臨時的移動用戶身份和位置區域的標識碼同時進行使用,以掩飾用戶的身份達到不被竊聽的目的。還有就是Ki以及IMSI它們在通過物理保護的方法被存儲在SIM卡中并對非法的訪問進行限制,而且Ki不通過網絡進行傳輸。其關鍵的密碼學算法有第一是算法A3它的目的是對用戶進行鑒別;第二個是算法A8,它的作用是產生出所需的會話密鑰;第三個是算法A5它的主要作用是對手機到基站或者是基站到手機的會話進行加密以及解密。針對于GSM的鑒別,在里面利用了鑒別三元組,它通過Auc而產生然后在HLR中進行存儲,假如說用戶不在本地使用而到了別的地方,這時要利用鑒別協議來把相應的鑒別三元組發給那個地區的VLR。
2.1.2 GSM的鑒別和密鑰分發過程
在“挑戰-----應答”這個GSM的鑒別協議過程中挑戰數據RAND以及應數據SRES經過AC的計算之后將結果傳給VLR,這個過程中還會分發用戶會話所需的會話密鑰。[3]其主要的流程是當移動站在到達了新的基站,會利用明文的方式來向基站發送IMSI來請求建立會話,這時被訪問的VLR與移動站兩者之間還是不能進行鑒別。由于用戶的Ki不能被VLR所獲得,因此,VLR就把自己的身份標識號以及用戶的IMSI給了HLR/AuC,以此作為請求的信息。然后,HLR/AuC就會利用一個包含很多個的鑒別三元組的數據進行應答。這樣就保護了用戶的鑒別密鑰。
2.1.3 GSM的加密以及解密的過程
GSM的主要的加密以及解密的關鍵的算法A5不在SIM卡運行,而是在手機上運行。為了保證移動站與其訪問的通信的安全性,GSM網絡和移動站Kc 22比特的TDMA時分多址信號輸進了A5算法。[4]然后生成了228比特的密鑰流,并把其分成二部分。前一部分114比特主要的作用是加密和解密從網絡傳到用戶方向的數據;后一部分的主要目的是用戶到網絡的數據的加密和解密。
2.1.4 GSM的安全性分析
所用的GSM它的主要的安全缺陷:一是只能單方面地進行鑒別,就是指用戶的身份可以被基站鑒別,反之則不行,這樣就會導致偽基站對其進行攻擊。而且鑒別安全協議沒有時間限制,因此就導致了偽基站能無限使用破譯的密鑰,實施對用戶的竊聽。二是由于在VLR存儲了鑒別三元組,就導致其會在內部受到攻擊。三是在其核心的網絡中沒有設置加密,這樣很容易導致用戶的會話密鑰泄露。四是只對用戶的傳輸的書據進行了加密,對其數據的完整性并沒有進行保護。
2.2 第三代移動通信網絡的安全機制
2.2.1 鑒別與密鑰協商協議
針對第三代的移動通信最為重要的協議是認證與密鑰協商協議(AKA)。ISO的按照序列號的鑒別協議以及GSM的鑒別協議兩者一起組成了AKA雙向的鑒別機制。AKA的主要的參考數有:AV(由五個元素組成的鑒別向量)、 RAND(由HLR/Auc所產生的隨機數)、 XRES(網絡端想獲得的“響應”)、CK(加密密鑰)、IK(完整的密鑰)、AUTN(鑒別令牌)、K(被USIM及HLR/Auc一起使用的主密鑰)、SQN(系統的序列號)、AK(匿名密鑰)、AMK(鑒別的管理域)、MAC(消息的鑒別碼),其主要的關鍵算法有:f1*,f1,f2,f3,f4,f5*,f5,F8和F9。其中的f1計算得出MAC碼值。f1*是在同步的情況下對消息的鑒別碼進行計算。f2對鑒別響應的值進行計算。f3計算CK。f4計算IK。f5*在同步的情況下對匿名密鑰進行計算。f5計算AK。F8是會話的加密算法。F9是會話的完整性算法。[5]
2.2.2 加密和解密的過程
由于加解密的過程是在移動設備以及RNC之間的信道上來發生的,它是利用f8算法的一種流行的加密方法,密鑰長度為128比特,會產生密鑰流所需的參數CK、加密計算器認證身份和方向以及密鑰流的長度。還可以在15種的密碼學的算法中來選擇f8算法,KASUMI算法是3GPP要推薦使用的一個標準的算法。
2.2.3 完整性保護
移動設備以及網絡之間通過發送大部分的控制信息來實現完整性保護,用戶的數據并不在其作用的范圍之內,所選擇的算法是f9。它在產生消息的鑒別碼時,不僅需要信令數據以及IK這些參數,還需要隨機數以及完整性的計數器和方向。根據這些參數發送方來對消息的鑒別碼進行計算。再把消息鑒別碼經過無線鏈路的方式送出。而接受方也是采取和發送方一樣的算法來獲得鑒別碼,如果他們是相同的就可以說明數據是完整的。
2.2.4 移動通信用戶身份保密安全性的不足
主要的不足就是針對用戶的身份不能提高更加完善的保密措施,雖然TMSI來代替VLR可以對用戶的IMSI來進行保護,但是如果這個注冊失效了,就會選擇明文的方式把信息發送到服務的網絡上,攻擊者能輕而易舉的竊聽到,而導致用戶被定位或者是跟蹤。
2.3 移動通信用戶身份保密的增強方法
本文所采取方法是基于公鑰的一種算法,通過給每一個的HLR/Auc都配置一個不同的公鑰,還有就是在用戶而對卡中把其公鑰進行存儲在里面。
圖1
上圖1是實現的主要過程,在圖中,HLR/Auc的公鑰就是KuAuc。公開的密鑰加密函數是enc()。其中它的第一個參數就是指的公鑰,第二個參數指的就是被加密的東西。“‖”指的還是串接兩個二進制串。Rand指的是在用戶的客戶端所產生的具有一定長度的隨機數。在這個過程中假如我們不利用Rand而是選擇發送enc(KuAuc,IMSI),但是這樣雖然明文的IMSI不會被攻擊者解密,如果攻擊者采取長時間的進行竊聽,這樣如果得到一樣的密文,就可以對用戶實施定位和跟蹤了。所以,為了提高整體的加密以及解密的性能。針對這個方法我們利用一種非對稱的算法Rabin的模平方根密碼體制。就是使網絡端的解密的開銷比用戶端的加密小的很大。所以這種減少運算開銷的算法是可行的。它就是通過利用其有無數的用戶標識來隱蔽用戶的真實的身份,來增強用戶的身份保密性。
本文通過對于移動通信中的安全機制做了詳細的分析研究,在其中介紹了他們的基本運行過程,以及安全性的能力以及不足之處,然后介紹了一些專業的研究者對其提出的增強安全性的方法。移動通信的安全機制的是在不斷完善的,但還是由于自己能力的限制,不能對于移動通信中的所有的安全機制進行完全的介紹。
[1]陳廣輝,李方偉.移動通信系統的安全機制分析[J].移動通信,2004(9):78-81.
[2]Karen.GSM System Block Diagram[D].University of Toronto,2011.
[3]賴溪松,韓亮,張真誠,張玉清,肖國鎮.計算密碼學及應用[M].國防工業出版社,2012.
[4]高紅梅,包杰,孫科學.移動通信系統安全機制發展的研究[J].科技情報開發與經濟,2007(10):177-178.
[5]王建輝,李曉輝,薛鑫.移動通信中的安全問題[J].網絡安全技術與應用,2009(7):57-61.
TP393.08
A
1009-6434(2016)04-0012-02