廖蓉暉,王 娟,彭 凱
(中國電子科技集團公司第三十研究所,四川 成都 610041)
DH密鑰體制在VoIP通信中的應用*
廖蓉暉,王 娟,彭 凱
(中國電子科技集團公司第三十研究所,四川 成都 610041)
隨著通信網絡與計算機技術的飛速發展,通信業務也逐漸多樣化。VoIP逐漸成為當前通信網絡發展的主流,DH密鑰協商體制作為保證VoIP網絡通信安全的重要技術越來越受到重視。首先介紹DH密鑰協商體制的基本原理,分析了其在VoIP通信系統中應用所存在的安全隱患和可能遭受的攻擊,針對不用應用需求提出了兩種解決方案,有效解決DH密鑰體制在合法身份認證方面的缺陷,提高了VoIP通信系統中密鑰協商的安全性,具有一定的實用價值。
DH密鑰交換協議 網絡電話(VoIP) 加密密鑰交換協議
隨著計算機和網絡技術向著數字化、綜合化、智能化的方向飛速發展,網絡已經深深融入了人們的日常生活、工作中,基于統一通信平臺上提供語音、視頻、傳真等多媒體綜合業務已成為當前網絡發展的趨勢。與此同時日趨完善的網絡協議,迅速增長的網絡帶寬以及不斷提升的計算機性能,也為通過IP網絡提供統一的多媒體通信業務提供技術基礎。例如當前廣泛應用的即時通訊(如微信和QQ等),多方的視頻會議、Skype網絡電話等,這些利用IP網絡為人們提供信息交互的VoIP技術,隨著各類網絡應用的普及也如雨后春筍般得到了蓬勃發展,已經成為人們相互聯絡的重要手段之一。
當然對于政府機關、公安系統、能源電力這樣行業用戶而言,不僅僅滿足于基于統一網絡平臺提供便捷、豐富的信息交互,他們對信息的安全保密也有著非常高的要求,因此這些用戶往往建設或擁有專用的IP通信網絡,為其內部的各類信息交互,數據通信提供一個相對安全的網絡環境。
然而,由于IP網絡和網絡協議的開放性特點,黑客可以比較容易的通過中間人攻擊方式實現對通信數據的竊聽或者篡改,從而造成關鍵信息的丟失或被竊聽,因此當前主流的VoIP通信往往都進行了加密保護,對數據加密而言最關鍵的是如何安全實現密鑰的協商和交換。本文將針對基于Diffie-Hellman(DH)密鑰交換體制在VoIP通信中的應用進行研究,對其存在安全隱患進行分析,提出進一步相應的解決方案。
DH密鑰交換體制由Whitfield Diffie和Martin Hellman在1976年公布的一種密鑰一致性算法,它是一種通信雙方建立密鑰的方法,而不是加密方法[1]。DH密鑰交換體制是第一個應用于非保護信道(例如Internet)中創建共享密鑰的方法,是VoIP通信網絡中很多認證協議的基礎。其基本原理利用著名的“離散對數問題”來保證在VoIP網絡中傳輸的密鑰安全性,具體方法如下:
1)設置兩個全網公開的密鑰參數,它包括一個素數q和一個整數a,其中a=FG(q)是q的一個原根。
2)當用戶A希望和用戶B建立保密的VoIP通信時,就需要實現共享的會話密鑰KSAB協商,用戶A首先本地產生隨機數RA(1≤RA≤q-1),計算出XA=aRAmodq經VoIP網絡傳遞給用戶B,其中RA并未在網絡中明文傳輸,而是被保護在XA中。
3)同理,用戶B也利用本地產生的隨機數RB(1≤RB≤p-1),計算出XB=aRBmodq,并將XB發送給用戶A[2]。
在這種基于DH體制的密鑰協商過程中,黑客或攻擊者雖然可以截取到a、q、XA、XB等參數,但因無法獲得密鑰素材RA和RB,也就無法計算出本次VoIP通信的公共會話密鑰KSAB。因為q是一個至少300位素數,并且XA和XB至少有100位長,那么即使使用全球所有的計算資源和當今最好的算法也無法計算出RA,這就是著名的離散對數問題。
由此可見,利用DH密鑰交換體制VoIP通信雙方可以在公共網絡中安全的建立了本次會話的共享密鑰KSAB,但是DH密鑰交換體制的問題是缺乏對協商雙方的身份鑒別機制。當出現了一個位于用戶A和B之間的惡意攻擊者用戶C時,他可以通過報文截獲、協議操控進行中間人攻擊,因此為保證用戶A和B之間密鑰協商的安全性,需要對協商雙方的身份進行鑒別,下一節將對中間人攻擊的原理進行分析。
DH密鑰交換體制最大缺點在于缺乏有效的身份認證,因而容易遭受中間人攻擊。我們假設在VoIP通信網絡中存在一個用戶C,在與用戶A通信時假扮為用戶B;在與用戶B通信時假扮為用戶A。這樣用戶A和B分別與用戶C協商一組會話密鑰,這樣用戶C就可以對用戶A和B之間的VoIP通信進行監聽或篡改。具體的攻擊操作步驟如下:
1)攻擊者C,在用戶B發送給用戶A的報文中,獲取XB。
2)攻擊者C修改用戶B的報文,并轉發至用戶A,該報文具有用戶B的ID但使用攻擊者C產生的XC。
3)用戶A收到攻擊者C的報文后,將XC和用戶B的ID綁定,同理攻擊者C向用戶B發送類似報文。
4)用戶B基于本地產生隨機數RB和XC計算出公共會話密鑰KSAB,用戶A基于本地產生隨機數RA和XC計算出公共會話密鑰KSAC。攻擊者C則使用RC、XA和XB計算出KSAC和KSBC,從而分別建立對用戶A和B之間保密通信。
由于DH密鑰交換體制在身份鑒別方面的缺失,通過上述的操作步驟,攻擊者C可以利用中間人的攻擊方式對用戶A和B之間通信內容的竊聽和篡改。
根據上述分析,要解決中間人攻擊的安全隱患,需要對DH密鑰交換體制在身份認證方面進行增強,針對VoIP通信網絡的應用特點我們提出了基于EKE和基于CPK密鑰協商協議兩種解決方案。
EKE是SteveBellovin和MichaelMerritt提出的一種加密密鑰交換協議,它利用對稱和公開密鑰為通信雙方的合法身份鑒別,提升密鑰交換的安全性。其基本原理是使用全網共享的用戶口令加密隨機產生的公開密鑰,例如VoIP通信網絡中的用戶A和B共享一個公共口令password,利用EKE結合DH的密鑰交換體制,可以實現通信雙方之間的身份鑒別和公共會話密鑰KSAB的協商[3]。
我們假定用戶A和用戶B在用戶全網公開的密鑰參數q和a的基礎上,還擁有共享的一組口令password,根據DH協議結合EKE的具體實現步驟如下:

圖1 EKE-DH密鑰交換流程
1)用戶A隨機產生一組私鑰PKA,通過XA=aPKAmodq計算出XA,并利用共享口令password加密后,發送給用戶B。

3)用戶A首先對EPASSWORD(XB)進行解密,得到XB后計算出KSAB,再解密RB,同時本地產生RA,利用KSAB加密后發送。
4)用戶B收到EK(RA,RB)之后,利用KSAB進行解密,對比RB和本地產生是否一致以對用戶A的身份進行驗證;驗證成功后在將解密后的RA加密發送到用戶A。
5)用戶A對來自用戶B的RB進行解密驗證,鑒別用戶B身份的合法性。
這樣通信的雙方就完成了相互的身份認證并計算出了一組本次通信使用的會話密鑰KSAB,基于EKE和DH相結合的密鑰協商協議只需用戶記住共享口令,而無需再額外保存公鑰/私鑰以及其它的安全措施,大大簡化了客戶端的設計。同時,由于XA和XB是加密傳輸,因此可以避免了單純的離線對數交換式可能發生的中間人攻擊,有效提升了密鑰交換協議的安全性。
在基于EKE的密鑰交換協議中,共享口令信息password是信息安全的關鍵。因為password負責保護XA和XB,通過XA和XB可計算出業務數據加密使用會話密鑰KSAB。因此,共享口令password通常預存于用戶終端上,采用隨機字符串的方式,并由系統管理員進行定時更新,以確保其安全性。但面對基于口令的攻擊時,基于EKE的密鑰交換協議的安全性需要進一步增強,否則攻擊者還是可能找到離散對數的漏洞。
CPK是“Combined Public Key”的縮寫,即中文名為組合公鑰,它是基于ECC算法的一種非對稱公鑰體制,它將密鑰分為私鑰和公鑰,由用戶信任的密鑰管理設施進行離線或在線的分發[4]。
CPK的私鑰和公鑰矩陣均為密鑰管理設施產生的隨機數,其中私鑰矩陣由密鑰管理設施保存,用于私鑰的產生。而公鑰矩陣則由私鑰矩陣派生,通過離線或在線的方式,分發到網絡中的每個合法用戶,負責計算產生公鑰。用戶終端則基于管理設備分發的公私鑰進行相互身份的認證和密鑰協商。
因此在一個基于CPK的密鑰協商系統中,需要包括基于CPK的密鑰管理設備,用戶A和B等,如圖2所示。

圖2 基于CPK密鑰協商系統組成
密鑰管理設備根據密鑰組合矩陣產生用戶終端需要使用的公私鑰對,它將包含了用戶終端ID標識的密鑰進行Hash變換得到Hk,然后對Hk進行多輪行列置換,得到該用戶的公私鑰,一組公私鑰對應一個用戶終端,再通過離線或在線的方式分發到對應的用戶終端。
得到全網唯一的公私鑰對之后,用戶終端即可實現端到端的相互身份認證和密鑰協商,詳細流程如下:

圖3 CPK-DH密鑰交換流程
1)用戶A將設備IDA、隨機數RA組成報文PA用散列函數進行處理,得到哈希值HA;在對該哈希值進行簽名運算得到SIG(HA)=(S,C)其中S為簽名碼,C為核對碼。當通道建立之后,用戶A將簽名結果(S,C)發送給用戶B,發起協商認證請求。
2)用戶B收到該簽名結果后,通過用戶A的ID標識計算得到其公鑰,并對其簽名進行驗證,當驗簽成功后,再構建用戶B自身的簽名報文,作為認證響應發送到用戶A。
3)用戶A完成對認證響應的簽名驗證后,基于ECC點乘運算特點(雙發的私鑰與對法公鑰點乘運算結果一致)計算出本次會話使用的公共會話密鑰KSAB,再利用KSAB建立保密通話。
這種基于CPK的DH密鑰協商協議,最短只需要一次即可完成通信雙發的身份認證和密鑰協商,而且由于基于第三方密鑰管理設備分發公私鑰的方式進行身份鑒別,在協商過程中用戶的公私鑰均不會暴露在網絡中,因此安全性較高。但由于需要建設所有用戶都能信任的公開密鑰基礎設施,在一定程度上增加了保密通信系統建設和運維的成本。
本文首先根據當前通信網絡的發展趨勢,介紹了DH密鑰協商體制的基本原理和在VoIP網絡中的應用。然后對VoIP網絡中常見的中間人攻擊進行了分析,指出了基于DH體制的密鑰協商由于缺乏對協商雙方的身份鑒別機制,可能導致VoIP通信安全隱患。最后提出了基于EKE和CPK的密鑰協商體制兩種解決方案,闡述了具體的密鑰協商流程,并對兩種解決方案的優劣進行了簡單分析。證明了基于EKE和CPK的密鑰協商方案可以有效彌補密鑰體制在合法身份鑒別方面的缺陷。
當然有效身份鑒別也會提升協議復雜度,降低協商的成功率。因此,下一步還需要對如何在保證密鑰協商安全的同時,提高網絡通信效能方面做進一步的研究。
[1] Whitfield DIFFIE, Martin HELLMAN.NewDirectionsinCryptograp[J].IEEE,1976,22(6):644-654.
[2] William Stallings.密碼編碼學與網絡安全—原理與實踐[M].第2版. 楊明,胥光輝,齊望東譯.北京:電子工業出版社,2012:185. YANG Ming, XU Guang-hui, QI Wang-dong Translate Cryptography and Network Security Principles and Practice[M].The second edition.Bei Jing:Publishing House Of Electronics Industry,2012:185.
[3] 陳華平.基于標識的組合公鑰體制的原理[J].計算機安全,2010(02):39-43. CHEN Hua-ping. The Principle of the CPK Cryptosystem based on Identity[J]. Network & Computer Security,2010(2):39-43.
[4] 陳南洋.基于CPK的VoIP技術研究[J].信息安全與通信保密,2013(08):63-64. CHEN Nan-yang.VoIP Technology based on Combined Public Key[J].Information Security and Communication Privacy,2013(8):63-64.
LIAO Rong-hui(1980-), male, M.Sci., engineer, mainly engaged in network communications.
王 娟(1983—),女,碩士,工程師,主要研究方向為網絡通信;
WANG Juan(1983-), female, M.Sci., engineer, mainly engaged in network communications.
彭 凱(1984—),男,碩士,工程師,主要研究方向為網絡通信。
Peng Kai(1984-), male, M.Sci., engineer, mainly engaged in network communications.
Application of DH Cryptosystem in VoIP Communication
LIAO Rong-hui, WANG Juan, PENG Kai
(No.30 Institute of CETC,Chengdu Sichuan 610041,China)
The rapid development of communication network and computer science diversifies the communication services,and VoIP becomes the major development trend of present communication network. As an important technology to assure the communication security of VoIP network, DH key negotiation system attracts more and more attention. This paper firstly describes the basic principle of DH key negotiation system, and then analyzes the security risks of its application in VoIP communication systems and the possible attacks herewith. Aiming at different application demands, two solutions are proposed to effectively solve the defects in terms of legal identity authentication and enhance the key-negotiation safety in VoIP communication system,and this is undoubtedly of certain practical value.
DH;VoIP;EKE
date:2014-11-03;Revised date:2015-01-25
TN918.91
A
1002-0802(2015)03-0367-04

廖蓉暉(1980—),男,碩士,工程師,主要研究方向為網絡通信;
10.3969/j.issn.1002-0802.2015.03.023
2014-11-03;
2015-01-25