主頁(http://www.130131.com):TETRA數(shù)字集群系統(tǒng)端到端保密通信的實現(xiàn)
[摘要] 文章研究了TETRA數(shù)字集群系統(tǒng)的端到端保密通信技術,通過分析TETRA系統(tǒng)所面臨著的安全威脅,提出了一種端到端加密的設計方案,包括密鑰管理及移動臺端到端的加密通信,實現(xiàn)了TETRA集群系統(tǒng)內(nèi)從發(fā)送端用戶到接收端用戶間的信息通信全程保密。
[關鍵詞] 數(shù)字集群系統(tǒng);保密通信;密鑰管理
[英文摘要]By analyzing the threats that the TETRA system is facing, this paper outlines end-to-end communication encryption technologies and proposes an end-to-end encryption solution, including the key management and communication encryption of mobile stations. This solution can implement end-to-end encrypted communication from sender to receiver in a TETRA trunked system.
[英文關鍵字] digital trunked system; encrypted communication; key management
TETRA數(shù)字集群通信系統(tǒng)是基于數(shù)字時分多址(TDMA)技術的專業(yè)移動通信系統(tǒng),該系統(tǒng)是歐洲通信標準協(xié)會(ETSI)為了滿足歐洲各國的專業(yè)部門對移動通信的需要而設計、制定的具有統(tǒng)一標準的開放性系統(tǒng)。TETRA數(shù)字集群系統(tǒng)不僅提供多群組的調(diào)度功能,而且還可以提供短數(shù)據(jù)信息服務、分組數(shù)據(jù)服務以及數(shù)字化的全雙工移動電話服務。TETRA系統(tǒng)還支持功能強大的移動臺脫網(wǎng)直通(DMO)通信方式[1,2]。
獲得廣泛應用的模擬集群通信系統(tǒng)和GSM蜂窩網(wǎng)的通信保密與信息安全問題一直沒有得到有效解決,TETRA通信系統(tǒng)的通信保密與信息安全功能更是難以滿足要求,所以TETRA通信系統(tǒng)的通信保密與信息安全功能是系統(tǒng)設計者亟需解決的重要問題。
通常TETRA數(shù)字集群系統(tǒng)的終端設備與網(wǎng)絡設施之間的無線接口可能受到以下安全威脅:
(1)非法竊聽
攻擊者通過對無線信道的監(jiān)聽來獲取傳輸?shù)南ⅲ踔吝M行被動或主動流量分析。
(2)非授權訪問數(shù)據(jù)
攻擊者偽裝成合法用戶訪問網(wǎng)絡資源,以期達到破壞目的;或者攻擊者違反安全策略,利用安全系統(tǒng)的缺陷非法占有系統(tǒng)資源和訪問本應受保護的信息。
(3)破壞數(shù)據(jù)的完整性
攻擊者可能修改、插入、重放或刪除無線鏈路上合法用戶的數(shù)據(jù)或信令數(shù)據(jù)。
(4)拒絕服務攻擊
攻擊者通過在物理上或協(xié)議上干擾用戶數(shù)據(jù)、信令數(shù)據(jù)或控制數(shù)據(jù)在無線鏈路上的正確傳輸,來實現(xiàn)無線鏈路上的拒絕服務攻擊。
針對以上的一些安全威脅,一些TETRA系統(tǒng)實現(xiàn)了系統(tǒng)功能和安全保密功能的一體化設計,現(xiàn)已經(jīng)具有鑒權及空中接口加密功能,并支持端到端加密,端到端加密一般由用戶自行設計實現(xiàn)[3]。
鑒權功能可實現(xiàn)用戶和網(wǎng)絡設施間的單向或雙向鑒權,用于防止非法用戶接入系統(tǒng)和合法用戶接入假冒系統(tǒng),可解決非授權訪問數(shù)據(jù)與拒絕服務攻擊的威脅?罩薪涌诩用苡糜趯竞鸵苿优_間無線信道上的信息數(shù)據(jù)和信令進行加密保護,并保證信息不被重播,可部分解決非法竊聽與破壞數(shù)據(jù)的完整性的威脅。空中接口加密只能夠在無線鏈路上對用戶語音數(shù)據(jù)加密,并保護信令數(shù)據(jù)不被分析,但用戶的數(shù)據(jù)信息在網(wǎng)絡設施中是未加密的,端到端加密可以解決這個問題[4]。
本文提出一種端到端加密的設計方案,該方案不僅能有效地解決非法竊聽的問題,還可解決破壞數(shù)據(jù)完整性的問題。
1 TETRA端到端加密方案系統(tǒng)框架
TETRA數(shù)字集群系統(tǒng)由移動臺(MS)、基站(BS)、調(diào)度臺(DWS)、交換機(DXT)及TETRA互聯(lián)服務器(TCS)等構成,端到端加密的密鑰管理中心(KMC)作為TCS的應用開發(fā)系統(tǒng)連接到TETRA系統(tǒng)中。TETRA端到端加密方案的系統(tǒng)框架如圖1所示。

在標準TETRA系統(tǒng)中實現(xiàn)端到端加密功能,必須實現(xiàn)如下兩方面的工作:
(1)在TETRA系統(tǒng)中建立一個密鑰管理中心,密鑰管理中心通過互聯(lián)服務器的應用編程接口(API)與TETRA系統(tǒng)相連,通過空中接口以短數(shù)據(jù)的方式為移動臺分發(fā)通信密鑰(TEK)。此外密鑰管理中心負責密鑰的產(chǎn)生、存儲及增刪功能。
(2)對TETRA終端設備進行改造,使其能夠接受并響應密鑰管理中心的密鑰管理空中密鑰分發(fā)(OTAK)消息,并利用通信密鑰來進行端對端加密,這里的端到端指的是移動臺與移動臺之間或移動臺與調(diào)度臺之間。
2 端到端加密算法
在端到端加密的設計中需要使用4個密碼算法,即語音數(shù)據(jù)加密算法、通信密鑰加密算法、同步幀完整性算法以及密鑰管理消息加密算法。
(1)語音數(shù)據(jù)加密算法
語音及短數(shù)據(jù)加密采用流密碼算法,該加密算法中的通信密鑰和初始向量(IV)的長度要求不小于64位,分組數(shù)據(jù)長度為64位。
(2)通信密鑰的加密算法
通信密鑰的加密算法的加密強度應當不低于語音數(shù)據(jù)加密算法的加密強度,為此其密鑰的長度不小于64位,分組數(shù)據(jù)長度為64位。
(3)同步幀完整性算法
為了保證端到端加密中同步幀的完整性,在同步幀中包含一個加密的校驗和,該校驗和抽取幀的幾個部分,并由校驗和的生成算法循環(huán)冗余校驗(CRC)和通信密鑰共同計算得到。同步幀完整性算法的密鑰長度不小于64位,分組數(shù)據(jù)長度為64位。
(4)密鑰管理消息加密算法
密鑰管理消息加密算法是一個工作于密碼分組鏈接(CBC)模式的分組加密算法,加密密鑰長度不小于64位,分組數(shù)據(jù)長度不少于64位。
由于TETRA應用領域的特殊性,端到端加密中使用的加密算法可以是用戶自行開發(fā)的加密算法,也可以是國家、軍隊或行業(yè)準許的加密算法,密鑰長度也可由用戶自行規(guī)定。
3 端到端加密的密鑰管理
端到端加密的密鑰管理由密鑰管理中心實現(xiàn)。密鑰管理中心負責通信密鑰的生成、分發(fā)及增刪。
3.1 通信密鑰的生成
密鑰管理中心利用用戶自行設計的密鑰生成算法生成通信密鑰,并用密鑰標識(KEYID)來標識相應的通信密鑰。將這些KEYID每16個編成一個密碼組,并將密碼組與通話組相關聯(lián)。這樣在這個通話組的移動臺可以用密碼組的當前版本的通信密鑰對語音或短數(shù)據(jù)消息進行加密通信。
3.2 通信密鑰的分發(fā)
密鑰管理中心作為TETRA互聯(lián)服務器的客戶端,通過空中接口以短消息的方式為移動臺分發(fā)通信密鑰,這種方式稱為空中密鑰分發(fā)。通信密鑰有幾個不同版本(即以前使用的通信密鑰、正在使用的通信密鑰和即將使用的通信密鑰),這些通信密鑰由加密算法加密后進行傳輸,加密密鑰為該移動臺的主密鑰(KEK)或組密鑰(GEK),這里的主密鑰是通過帶外的硬件接口載入的,它也被用來加密GEK和信令加密密鑰(SEK)。
一個特定組的通信密鑰可以使用這個組的組密鑰進行加密,密鑰管理消息使用信令加密密鑰進行加密。OTAK使用TETRA短數(shù)據(jù)服務(SDS)進行密鑰的分發(fā),在TETRA標準中用一個協(xié)議標識(PID)來指定該消息的類型。由于移動臺可能關閉或不在網(wǎng)絡內(nèi),KMC必須要判斷來自移動臺的操作的正確應答,并記錄哪些移動臺已經(jīng)接收到密鑰更新的命令。
移動臺分配新密鑰和管理通信密鑰時,OTAK消息是由移動臺的SEK作為密鑰并用密鑰管理消息加密算法進行加密的。OTAK消息集里有一個MS_SIGNAL消息,當移動臺開機或重新進入網(wǎng)絡時會向KMC發(fā)送這個消息。KMC可以利用這個機會來更新移動臺中的密鑰(因為有的移動臺可能長時間處于網(wǎng)外而錯過了以前的密鑰更新消息)。
移動臺會解密并且驗證任何收到的OTAK SDS消息。每個消息都以密鑰標識來標識某個通信密鑰。KEYID以明文方式放在消息的KEY字段中,使得接收端移動臺能夠選擇正確的密鑰去解密收到的消息。
3.3 通信密鑰的增刪
當一個通話組發(fā)生變化時,如一個新的移動臺加入該通話組,則KMC將與該通話組相關聯(lián)的密碼組通過OTAK消息分發(fā)給該移動臺。若一個移動臺退出通話組,則KMC將重新分發(fā)該通話組所對應的密碼組。
3.4 密鑰管理的安全性分析
在安全性要求很高的場合,推薦所有KMC中保存的通信密鑰和GEK都預先經(jīng)過KEK加密。雖然這意味著密鑰在分發(fā)時要經(jīng)過KEK和SEK雙重加密,但是它保證了KMC中不可能獲得明文形式的通信密鑰,提高了密鑰存儲的安全性。
加密后的OTAK SDS消息可以被發(fā)送到特定的移動臺,也可以廣播給一組移動臺。所有的消息都有序列號、源與目的地址和一個全部數(shù)據(jù)的CRC校驗。這為防御重放和假冒攻擊提供了保證。
4 端到端加密的保密通信
一個移動臺可以有多個通話組,同樣也有相應的密碼組。移動臺可以與同一通話組的移動臺進行保密通信,即在與通話組相關聯(lián)的密鑰組中找到當前版本的通信密鑰,對語音和短數(shù)據(jù)進行加密傳送。接收端移動臺則根據(jù)同步幀中的密鑰標識找到相應的密鑰對接收的消息進行解密。
4.1 端到端語音加密通信
具體的端到端語音加密的過程如圖2所示。圖2中虛線左側(cè)是發(fā)送移動臺的加密過程,右側(cè)是接收移動臺的解密過程。語音數(shù)據(jù)加密算法有通信密鑰和初始向量兩個輸入,生成一個連續(xù)的密鑰流,該密鑰流與語音編解碼器(CODEC)輸出的語音數(shù)據(jù)流異或后得到在TETRA系統(tǒng)中傳輸?shù)募用苷Z音。為了讓接收移動臺能夠正確解密加密后的語音,同步初始向量被加入到數(shù)據(jù)流中。與發(fā)送端正好相反,接收端檢測到同步幀,取出同步幀中的同步向量,將該向量傳給本地的密鑰流產(chǎn)生器,從而完成與發(fā)送端的同步。

同步幀中還包含有密鑰標識及加密算法標識等附加單元,使得接收端能夠根據(jù)這些單元選擇端到端語音加密的密鑰及加密算法。另外兩個單元——時間戳、密碼校驗和則被用于保證防止重放攻擊和保證同步幀的完整性。
4.2 端到端短數(shù)據(jù)加密通信
如同在GSM系統(tǒng)中一樣,TETRA系統(tǒng)也支持SDS,短數(shù)據(jù)消息可以是用戶自定義的消息或是狀態(tài)報告(狀態(tài)報告是預定義的消息)。TETRA系統(tǒng)所定義的SDS類型Ⅳ可發(fā)送最多達2 047不定長位的短數(shù)據(jù)。進行加密和完整性校驗前后的短數(shù)據(jù)消息內(nèi)容如圖3所示。

加密的過程與端到端語音加密類似,明文短數(shù)據(jù)消息與密鑰流(KSS)生成算法所輸出的KSS相異或得到密文消息,加密算法E5是流密碼算法,它有通信密鑰和初始化向量兩個輸入。它產(chǎn)生一個連續(xù)的密鑰流,并把密鑰流與短數(shù)據(jù)明文進行異或計算,得到密文流。安全校驗和(CCSUM)與其加密控制數(shù)據(jù)(ECD)組成同步向量,該向量是不保密的,不必加密。通過CCSUM可以驗證短數(shù)據(jù)的完整性。該校驗和的生成需要TEK作為密鑰,攻擊者無法獲得該密鑰,故無法偽造短數(shù)據(jù)消息并重新計算校驗和。算法E6是短數(shù)據(jù)完整性校驗算法,是一種工作在CBC模式的分組密碼算法,如圖4所示。整個SDS消息被劃分成64比特的分組,每個分組經(jīng)過E6加密后又作為下一分組加密的輸入,最后產(chǎn)生64比特的數(shù)據(jù)。

因為輸入短數(shù)據(jù)是變長的,在加密計算之前應該使短數(shù)據(jù)消息成為加密分組的整數(shù)倍。同步向量中應包含所有必要的信息使得合法的接收端能解密短數(shù)據(jù)。在ECD單元的數(shù)據(jù)包含算法E5和初始向量,并讓接收端知道使用了哪個加密算法及密鑰,當然直接傳送的不是密鑰而是一個密鑰標識號。雖然攻擊者無法知道數(shù)據(jù)包內(nèi)容,但他也許會分析這是哪類數(shù)據(jù)(許多通信協(xié)議在協(xié)議頭中包含協(xié)議的類型)。在SDS類型Ⅳ的協(xié)議包頭中是協(xié)議標識,為了防止攻擊者得到相關的有用信息,未加密的短數(shù)據(jù)消息的原協(xié)議標識(O-PID)以一個編碼的格式傳送,即由一個新的協(xié)議標識來替代。獲得新協(xié)議標識對攻擊者是無用的,它只表示一個編碼的短數(shù)據(jù)消息被加密傳送。為了確認一個短數(shù)據(jù)消息通信成功,在SDS機制中有一個確認服務。如果短數(shù)據(jù)通信不成功,SDS消息的接收端將不發(fā)送確認消息或者發(fā)送失敗消息。
5 結論
在TETRA系統(tǒng)的端到端加密中,集群系統(tǒng)不參與密鑰的產(chǎn)生和管理,也不規(guī)定加密算法,只提供透明傳輸通路。端到端加密在TETRA集群系統(tǒng)的用戶面進行,集群終端設備應具有和端到端加密單元間的電氣接口和物理接口,以便于把端到端加密單元裝入終端設備中。本文提出一種端到端加密的設計方案,實現(xiàn)了TETRA集群系統(tǒng)內(nèi)從發(fā)送端用戶到接收端用戶間的信息通信全程保密,可用于對通信安全有特別嚴格要求的場合。
6 參考文獻
[1] SJ/T11228-2000. 數(shù)字集群移動通信系統(tǒng)體制 [S]. 2000.
[2] 鄭祖輝, 鮑智良. 數(shù)字集群移動通信系統(tǒng) [M]. 北京: 電子工業(yè)出版社, 2001.
[3] 虞忠輝. TETRA 數(shù)字集群移動通信系統(tǒng)的安全保密 [C]. 全國數(shù)字集群技術發(fā)展研討會,北京, 2000.
[4] ETS300 392-7. Radio Equipment and System (RES), Trans-European Trunked Radio (TETRA), Voice Plus Data (V+D), Part7: Security [S]. 1996.
(中國集群通信網(wǎng) | 責任編輯:陳曉亮) |