[陳格]
一種基于安全芯片的VoLTE加密通話方案設(shè)計
[陳格]
以新一代移動通信4G網(wǎng)絡(luò)發(fā)展需求為背景,為應(yīng)對日趨嚴重的手機泄密問題,在TD-LTE蜂窩移動通信業(yè)務(wù)的基礎(chǔ)之上,提出一種新的加密方案,采用商用密碼技術(shù)對話音內(nèi)容進行保護的一種電信業(yè)務(wù)。
TD-LTE VoLTE 密碼卡
陳格
男,碩士研究生,重慶郵電大學通信與信息工程學院。
隨著移動互聯(lián)網(wǎng)的高速發(fā)展,移動通信運營商的傳統(tǒng)語音業(yè)務(wù)用戶收入值持續(xù)降低,移動互聯(lián)網(wǎng)技術(shù)也隨之快速提升,以SKYPE、GoogleVoICE、微信電話本等為代表的OTT業(yè)務(wù)對傳統(tǒng)語音業(yè)務(wù)的侵蝕嚴重,為應(yīng)對市場變化,中國移動率先推出IP數(shù)據(jù)傳輸?shù)腣oLTE語音業(yè)務(wù),可實現(xiàn)數(shù)據(jù)與語音業(yè)務(wù)在同一網(wǎng)絡(luò)下的統(tǒng)一;同時由于手機病毒樣本數(shù)始終保持高速增長趨勢,手機安全威脅升高,用戶面臨電話或短信騷擾、個人隱私信息和社交信息泄漏或被盜用等一系列安全問題。為保證用戶通話安全,本文提出一種VoLTE加密語音方案。
2.1系統(tǒng)結(jié)構(gòu)圖
VoLTE加密系統(tǒng)架構(gòu)如圖1。
2.2密鑰管理系統(tǒng)
密鑰管理系統(tǒng)由密鑰管理服務(wù)器,信息簽名服務(wù)器、業(yè)務(wù)管理服務(wù)器、加密業(yè)務(wù)接入網(wǎng)關(guān)、加密通信網(wǎng)關(guān)和密碼管理終端組成。密鑰管理系統(tǒng)各設(shè)備通過局域網(wǎng)連接。
(1)密鑰管理服務(wù)器(KMS)
密鑰管理服務(wù)器KMS為加密終端提供密鑰管理服務(wù)。密鑰管理服務(wù)器配置的密碼卡實現(xiàn)密碼算法運算、密鑰產(chǎn)生、隨機數(shù)產(chǎn)生等功能。
(2)信息簽名服務(wù)器(ISS)
信息簽名服務(wù)器ISS提供管理員信息簽名功能,為加密業(yè)務(wù)接入網(wǎng)關(guān)提供身份簽名功能,為TF密碼卡提供用戶信息簽名功能。信息簽名服務(wù)器配置的密碼卡實現(xiàn)密碼算法運算、密鑰產(chǎn)生、隨機數(shù)產(chǎn)生等功能。
圖1 VoLTE加密語音電話系統(tǒng)結(jié)構(gòu)
(3)業(yè)務(wù)管理服務(wù)器(SMS)
業(yè)務(wù)管理服務(wù)器SMS提供加密電話功能開啟/關(guān)閉和用戶信息管理等功能,用戶信息包括用戶名、電話號碼等。
(4)加密通信網(wǎng)關(guān)(ECG)
加密通信網(wǎng)關(guān)與Internet互聯(lián)網(wǎng)相連,提供管理消息加解密和消息收發(fā)的功能。加密通信網(wǎng)關(guān)配置的密碼卡實現(xiàn)密碼算法運算、密鑰產(chǎn)生、隨機數(shù)產(chǎn)生等功能。與SP短信接口相連,支持短信驗證碼的下發(fā)。
(5)加密業(yè)務(wù)接入網(wǎng)關(guān)(ESAG)
加密業(yè)務(wù)接入網(wǎng)關(guān)ESAG是所有密碼管理終端接入密鑰管理系統(tǒng)的唯一接入點,提供管理信息加解密等功能。加密業(yè)務(wù)接入網(wǎng)關(guān)配置的密碼卡實現(xiàn)密碼算法運算、密鑰產(chǎn)生、隨機數(shù)產(chǎn)生等功能。
(6)密碼管理終端(ME)
密碼管理終端是密鑰管理系統(tǒng)管理員的操作平臺。管理員通過管理終端實現(xiàn)TF密碼卡初始化、TF密碼卡密鑰遠程銷毀、加密終端加密通信功能開啟/關(guān)閉、日志查看/審計等管理操作。密碼管理終端通過智能密碼鑰匙實現(xiàn)管理員身份認證和管理指令加解密等功能。
2.3加密終端系統(tǒng)
加密終端系統(tǒng)由4G加密終端3.0和TF密碼卡兩部分組成。
(1)4G加密終端3.0
4G加密終端3.0即本方案所采用的多模VoLTE加密終端,它在標準VoLTE終端的基礎(chǔ)上,集成了密碼卡管理軟件(ECM)和密碼業(yè)務(wù)接口庫,支持TF密碼卡功能調(diào)用,實現(xiàn)VoLTE加密語音電話、密碼管理等功能。
(2)TF密碼卡
TF密碼卡是集成了集成電路安全芯片的TF卡,是VoLTE加密手機的安全根,實現(xiàn)密碼算法運算、隨機數(shù)產(chǎn)生、密鑰產(chǎn)生、密鑰存儲、證書存儲等功能。
2.4接口描述
(1)4G加密終端3.0與TF密碼卡的接口(M1)
4G加密終端3.0通過標準SD I/O/Memory接口與TF密碼卡進行數(shù)據(jù)交互。采用定制協(xié)議實現(xiàn)密碼算法運算、密鑰產(chǎn)生、隨機數(shù)產(chǎn)生、數(shù)據(jù)加解密、用戶口令驗證等功能。
(2)4G加密終端3.0與密鑰管理系統(tǒng)的接口(M2)
4G加密終端3.0通過安全通道與密鑰管理系統(tǒng)進行數(shù)據(jù)交互。采用定制協(xié)議實現(xiàn)密碼卡綁定、狀態(tài)獲取、密鑰更新、遠程/本地密鑰銷毀、業(yè)務(wù)狀態(tài)變更等密碼管理功能。
2.5業(yè)務(wù)流程
(1)綁定流程
在初次使用未綁定過的密碼卡以及用戶需要將密碼卡與其他手機號碼重新綁定的情況下,執(zhí)行綁定流程。加密終端通過加密通信網(wǎng)關(guān)向業(yè)務(wù)管理服務(wù)器發(fā)送綁定請求。綁定請求中攜帶密碼卡ID、期望綁定的手機號碼、密碼卡公鑰以及簽名信息。手機號碼由用戶手動輸入,簽名是使用私鑰對“密碼卡ID||手機號碼||公鑰”的簽名,用于驗證公私鑰對的一致性。接收到綁定請求后,業(yè)務(wù)管理服務(wù)器根據(jù)密碼卡可綁定手機號碼的白名單檢驗本次上報的手機號碼是否合法。如果手機號碼合法,業(yè)務(wù)管理服務(wù)器生成隨機數(shù)短信驗證碼并以密碼卡ID索引緩存,之后通過加密通信網(wǎng)關(guān)以短信方式向加密手機發(fā)送短信驗證碼。用戶手動輸入接收到的短信驗證碼,加密終端通過加密通信網(wǎng)關(guān)向業(yè)務(wù)管理服務(wù)器發(fā)送綁定驗證請求。業(yè)務(wù)管理服務(wù)器收到用戶上報的驗證碼后,根據(jù)密碼卡ID查詢并比較驗證碼。如果加密終端上報的和業(yè)務(wù)管理服務(wù)器本地存儲的校驗碼一致,則表明綁定過程中用戶輸入的電話號碼與加密終端當前使用的電話號碼一致。業(yè)務(wù)管理服務(wù)器將電話號碼與密碼卡相關(guān)聯(lián),將它們設(shè)置為已綁定狀態(tài)。
(2)加密終端主動發(fā)起的安全通道建立流程
在需要與密鑰管理系統(tǒng)交互密碼管理信息時,加密終端與加密通信網(wǎng)關(guān)建立安全通道。加密通信網(wǎng)關(guān)檢查密碼卡是否已銷毀。如果已銷毀,加密通信網(wǎng)關(guān)拒絕與加密終端建立安全通道,并指明密碼卡已銷毀。安全通道建立完成后,加密通信網(wǎng)關(guān)檢查是否緩存有未成功下發(fā)的管理命令。如果有,加密通信網(wǎng)關(guān)將緩存的管理命令發(fā)送給加密終端。加密終端對管理命令處理完畢后向加密通信網(wǎng)關(guān)返回管理命令回復(fù)。加密通信網(wǎng)關(guān)將接收到的管理命令回復(fù)轉(zhuǎn)發(fā)給密鑰管理服務(wù)器或業(yè)務(wù)管理服務(wù)器做進一步處理。
3.1密話標識
VoLTE加密語音電話的密話標識在SIP信令層面通過INVITE請求消息和183響應(yīng)消息攜帶。
在發(fā)起加密呼叫時,主叫VoLTE加密終端通過在INVITE請求消息Call-Info頭域generic parameter中攜帶特定參數(shù)的方法來標識加密呼叫,輔助被叫VoLTE加密終端對來電進行明密識別。同時,主叫VoLTE加密終端還通過在INVITE請求消息SDP消息體中m行攜帶特定動態(tài)負載類型值的方法來標識加密呼叫。
被叫VoLTE加密終端在接收到INVITE請求消息后,通過檢驗Call-Info頭域中是否存在特定的參數(shù)標識來完成明密識別,并轉(zhuǎn)入相應(yīng)的處理邏輯。在被叫VoLTE加密終端判定來電為加密呼叫的情況下,被叫向主叫返回包含有同樣Call-Info頭域特定參數(shù)的SIP響應(yīng)消息(183 Session Progress),確認本次加密呼叫可以繼續(xù)進行,并通過在183響應(yīng)消息SDP消息體中m行攜帶特定動態(tài)負載類型值的方法來標識加密呼叫。否則,主叫VoLTE加密終端認為被叫側(cè)不支持加密電話功能,將終止加密呼叫,回落至普通明文呼叫。
3.2密鑰協(xié)商
加密電話呼叫接續(xù)成功后,媒體面通道建立。主被叫VoLTE加密終端利用媒體面通道帶內(nèi)進行密鑰協(xié)商,包括數(shù)字證書交換和會話密鑰協(xié)商。密鑰協(xié)商成功后主被叫用戶開始加密通話。
(1)VoLTE加密終端向VoLTE加密終端撥打加密語音電話,主叫用戶發(fā)起加密呼叫時,主叫加密終端向被叫發(fā)送INVITE消息,其中的Call-Info頭域中攜帶如下信息用于指示本次呼叫為加密呼叫。
Call-Info: 〈http://www.10086.cn〉; CMCC. enciphered.phone.call
在SDP消息m行中至少包含3個固定組合的負載類型值。此負載類型值在96~127之間,全部為連續(xù)偶數(shù)。加密終端至少支持AMR-WB、AMR、AMR2三種編碼,具體如下:
m=audio〈端口〉RTP/AVP 112 114 116 〈其他負載類型值〉
a=rtpmap:112 AMR/8000
a= a=rtpmap:114 AMR-WB/16000
a=rtpmap:116 AMR2/8000
a=……
加密語音采用的固定速率編碼將被分配112。
(2)被叫為VoLTE加密終端,支持加密電話功能,能夠識別INVITE消息Call-Info頭域enciphered phone call參數(shù),判定來電為加密呼叫。因此,在Precondition階段,在TF密碼卡有效的情況下,被叫加密終端向主叫返回183 Session Progress響應(yīng)消息,其中攜帶同樣的Call-Info頭域信息(如下)用于通知主叫加密呼叫可以繼續(xù)。在TF密碼卡無效的情況下,返回的183 Session Progress響應(yīng)消息中不攜帶該Call-Info頭域信息。
Call-Info: 〈http://www.10086.cn〉; CMCC. enciphered.phone.call
在SDP消息m行中包含被叫選擇的編碼對應(yīng)的動態(tài)負載類型值。負載類型值為請求中相應(yīng)負載類型值加1。具體如下:
如果被叫方選擇AMR編碼,則回應(yīng)SDP中應(yīng)攜帶:
m=audio〈端口〉RTP/AVP 113 〈其他負載類型值〉
a=rtpmap:113 AMR/8000
a=……
(3)接收到183 Session Progress響應(yīng)消息后,主叫在確認被叫支持加密電話功能后繼續(xù)進行后續(xù)加密呼叫流程,否則終止加密呼叫,回落至普通明文呼叫。
(4)主被叫終端按照普通明文呼叫流程進行呼叫接續(xù)。媒體協(xié)商及資源預(yù)留成功后,被叫加密終端返回180 Ring響應(yīng)消息,向主叫送回鈴音,同時向被叫用戶振鈴。
(5)被叫用戶摘機后,被叫終端返回200 OK響應(yīng)消息,主叫終端回復(fù)ACK確認,媒體通道建立。
(6)利用媒體面帶內(nèi)傳輸通道,主被叫加密終端交換數(shù)字證書及會話密鑰,完成密鑰協(xié)商。
(7)密鑰協(xié)商成功后,主被叫用戶開始進行加密語音通話。
(8)主叫或被叫用戶掛機后,本次加密呼叫結(jié)束,本次通話所使用的會話密鑰隨即刪除。
本方案是在現(xiàn)有的IMS網(wǎng)絡(luò)架構(gòu)基礎(chǔ)之上新增了密鑰管理系統(tǒng),作為獨立存在的TF密碼卡,其密碼模塊內(nèi)部集成了加密通信協(xié)議和加解密算法,通過API接口為上層通信業(yè)務(wù)提供密碼服務(wù),Codec芯片負責在加密通話過程中根據(jù)控制指示啟動或關(guān)閉靜音檢測,并將上下行語音幀中的用戶語音凈荷部分取出送往終端IMS電話應(yīng)用進行加解密處理。
1沈臻懿.智能手機信息的泄密與防范[J].檢查風云,2014,(20):34-36
2邊曄. 4G-VoLTE實現(xiàn)方案與系統(tǒng)安全性研究[J].現(xiàn)代電信科技, 2015,45(1):5-6
10.3969/j.issn.1006-6403.2016.07.003
2016-06-20)