胡雙喜,呂前進,梁友仁,劉健旭
(天津光電安辰信息技術股份有限公司,天津 300211)
?
基于國密算法的智能終端語音加密系統(tǒng)設計*
胡雙喜,呂前進,梁友仁,劉健旭
(天津光電安辰信息技術股份有限公司,天津 300211)
設計了基于國密算法的智能終端語言加密系統(tǒng),該系統(tǒng)采用移動互聯(lián)網(wǎng)、通信技術和密碼學技術相結合的方法,基于國密算法和標準的PKI證書機制,完成統(tǒng)一簽名身份認證、安全訪問控制和語音數(shù)據(jù)加解密功能,從而實現(xiàn)手機終端的端到端安全語音通信。
國密算法;語音加密;身份認證;訪問控制
由于缺乏保密措施, 電話竊聽事件不斷發(fā)生,嚴重威脅著個人隱私、軍事商業(yè)秘密甚至地區(qū)或國家的信息安全。目前基本采用兩種保密方式:一種是使用保密手機,采用這種方式用戶必須選擇特定的手機,不僅增加用戶成本,而且會使用戶的體驗感極大降低,用戶很難接受;另一種就是采用軟加密技術,針對國外的DES、AES和RSA[1]等算法的密碼學技術不可控,安全性得不到有效保證。
本文基于國產安全芯片和SM1、SM2和SM3國密算法,設計了一套語音加密系統(tǒng),在用戶無需更換手機終端的前提下,避免了非法用戶截取用戶通信數(shù)據(jù)來獲取語音內容的危險,消除了語音可能存在的數(shù)據(jù)丟失和隱私泄露的安全隱患,保護了語音信息的安全。
本文設計的基于國密算法的智能終端語音加密系統(tǒng)[2]的總體結構包括密鑰管理中心(KMC)、終端通信應用(APP)、SD密碼卡(蘋果專用KEY)及安全軟交換平臺的技術實現(xiàn)方案,其系統(tǒng)總體應用框圖如圖1所示。
圖1 語音加密通信系統(tǒng)結構圖
系統(tǒng)的軟硬件設計包括三層,分別是應用層、驅動層和物理層,如圖2所示。
圖2 系統(tǒng)的軟硬件組成圖
2.1 系統(tǒng)的硬件設計
本設計以智能終端和國密算法芯片微處理器為核心,智能終端實現(xiàn)語音采集回放、數(shù)字語音編解碼、國密算法芯片實現(xiàn)身份認證和加解密等功能, 通過VoIP網(wǎng)絡進行數(shù)據(jù)交換, 實現(xiàn)了語音的加密傳輸[3]。本文中智能終端是通用的手機設備,硬件設計主要集中于支持國密算法的硬件密碼設備中。
2.1.1 SD密碼卡
硬件SD密碼卡在SDIO總線定義中,DAT1信號線復用為中斷線。在SDIO的1BIT模式下DAT0用來傳輸數(shù)據(jù),DAT1用作中斷線。在SDIO的4BIT模式下DAT0~DAT3用來傳輸數(shù)據(jù),其中DAT1復用作中斷線。
2.1.2 蘋果專用KEY
蘋果專用KEY結構示意圖如圖3所示,其中l(wèi)ightning接口的Sa,Sb是信號接口,向iPhone發(fā)送信號,告訴iPhone現(xiàn)在是A面還是B面。另外lightning頭有4種模塊,如果是USB模塊,Sb還擔當了由iPhone提供給外設電源的功能。D+、D-是USB的數(shù)據(jù)線,傳輸數(shù)據(jù)。Vusb是USB的電源線,給iPhone充電。NC是未定義的腳,即暫時沒有用到。GND是地線。
圖3 蘋果專用KEY結構示意圖
2.2 系統(tǒng)的軟件設計
2.2.1 系統(tǒng)APP軟件的應用總體架構
本系統(tǒng)自頂向下主要分為四個層次,分別為應用程序界面、語音加密通話功能模塊、安全中間件、API和系統(tǒng)底層庫。四個層次呈現(xiàn)自頂向下的依賴和調用關系??傮w框架如圖4所示。
圖4 APP整體框架圖
2.2.2 密碼模塊的應用架構
密碼模塊主要負責密鑰管理、證書管理、加解密及簽名驗證等功能。本系統(tǒng)使用證書管理功能對用戶的身份進行認證,使用加解密功能對語音編碼后的數(shù)據(jù)進行加解密[4];密鑰管理程序使用密鑰管理、證書管理、加解密、身份驗證和訪問控制功能,完成證書的頒發(fā)、驗證及撤銷功能。密碼模塊的應用架構如圖5所示。
圖5 密碼模塊的應用架構
2.2.3 系統(tǒng)軟件的功能模塊設計
(1)音頻采集回放模塊
語音采集子模塊從手機的麥克風實時采集語音,采樣率為8 kHz,通過A/D轉換成數(shù)字語音。語音回放子模塊是將接收到的數(shù)字語音經過D/A轉換成模擬信號,從手機的聽筒或揚聲器實時回放語音信號,回放應保持語音的實時性。
本軟件的音頻采集模塊主要是通過調用系統(tǒng)底層的音頻處理庫來進行的。首先通過系統(tǒng)函數(shù),獲取音頻的路由,即通過何種方式采集和回放音頻。如果設備可用,則調用收發(fā)音頻的函數(shù),操作設備。音頻流被放置在若干個串聯(lián)成鏈表的緩沖鏈表數(shù)據(jù)結構中,一旦一包音頻數(shù)據(jù)采集完畢,則放到下一個緩沖環(huán)節(jié)中。
(2)音頻編解碼模塊
音頻編碼模塊采用G.729[5]語音編碼技術,對交換傳輸語音進行編解碼。由于G.729編解碼器具有很高的語音質量和很低的延時,被廣泛應用在數(shù)據(jù)通信的各個領域,如VoIP和H.323網(wǎng)上多媒體通信系統(tǒng)等。G.729編碼占用帶寬小,非常適合移動數(shù)據(jù)網(wǎng)絡下傳送語音數(shù)據(jù),使用普通編碼的語音通信需要占用64 Kb/s的帶寬,而G.729僅僅需要8 Kb/s。
(3)語音數(shù)據(jù)傳輸模塊
語音數(shù)據(jù)主要是通過基于UDP傳輸?shù)腞TP協(xié)議進行傳輸。RTP分為協(xié)議頭和消息載荷兩部分,協(xié)議頭有12 B,用來保存消息的序列、時間戳、編碼類型等信息。載荷的大小則是根據(jù)SDP協(xié)商出來的由語音編碼決定的音頻每一幀包的大小。即一包RTP傳送一幀的音頻數(shù)據(jù),通常一秒鐘會傳遞50包音頻數(shù)據(jù),每一包20 ms。本軟件采用的是G729編碼,載荷大小為20 B。
(4)加解密控制模塊
加解密控制模塊主要對本軟件加解密操作進行調度安排[6]。加解密控制模塊既要保證加解密過程的正確性,又要保證加解密過程的安全性。在進行重要的加解密操作或訪問安全等級較高的文件時,需要進行認證后才可以進行加解密操作,同時,傳輸過程中的數(shù)據(jù)也是加密傳輸?shù)摹Mㄔ挼臅r候,采用端加密,即設備在發(fā)送語音數(shù)據(jù)之前,將其加密,收到語音數(shù)據(jù)以后將其解密。
(5)密碼模塊中間件
密碼模塊中間件將底層的協(xié)議指令進行封裝,便于其他模塊對密碼模塊進行調用,同時,將底層的基本加解密、簽名驗證等簡單操作封裝為功能級別的接口,主要接口包括:對稱加解密、非對稱加解密、簽名驗證、摘要、身份認證、訪問控制及文件讀寫等。
本軟件的密碼模塊中間件主要是對加密卡的訪問進行封裝。主要函數(shù)為尋找設備、初始化設備、設備收發(fā)指令、外部驗證、銷毀設備。
(6)密碼模塊
密碼模塊為本系統(tǒng)提供核心密碼算法,主要包括對稱密碼算法、非對稱密碼算法、摘要密碼算法、隨機數(shù)發(fā)生器等。其中,密碼算法均為國密局指定算法,包括SM1、SM2、SM3、SM4等,同時還具備國際標準算法,包括AES、RSA等。
密碼模塊具有文件管理系統(tǒng),能夠對每個文件進行獨立的權限管理,具有較高的安全性。密碼模塊具有獨立的存儲空間,可以存儲密鑰、證書等關鍵數(shù)據(jù)。
(7)身份認證模塊
身份有效性驗證模塊用于在加密通信開始時,通信雙方對雙方的身份進行確認。本設計中身份認證分為兩種:一種是基于雙向數(shù)字證書的身份驗證,通常用于KMC初始化卡、密鑰協(xié)商等步驟。身份認證的主要流程為通過驗證證書的簽名來確保證書可信。另一種是基于商密算法的身份驗證,分為文件驗證和函數(shù)驗證。這個驗證主要是在密碼模塊內部進行的。
(8)密鑰協(xié)商模塊
本系統(tǒng)使用雙向數(shù)字信封技術實現(xiàn)密鑰交換的功能。密鑰交換模塊用于加密通信開始時,完成身份有效性驗證后,通信雙方通過密鑰交換,生成會話密鑰。密鑰協(xié)商過程:每一次會話之前都要協(xié)商會話密鑰,來確保一次通話一個密鑰,大大增加了黑客破解難度。由于建立在PKI機制和數(shù)字信封的基礎上,因此密鑰協(xié)商傳輸過程是安全的。
系統(tǒng)采用多種安全機制保障系統(tǒng)的安全性,如表1所示。
表1 系統(tǒng)設計的安全機制表
系統(tǒng)能夠保證通信信道上傳輸?shù)恼Z音數(shù)據(jù)的安全性,語音均為加密數(shù)據(jù),可以有效防止第三方從信道上竊取語音數(shù)據(jù)。應用軟件基于IP數(shù)據(jù)通信鏈路,能夠提供優(yōu)良的語音質量,較低的語音延遲,能夠覆蓋全球,具備跨國通話能力。使用本系統(tǒng)很容易在部門同事、供應商、合作伙伴之間發(fā)起一個正常的安全通話,無論你是在辦公室還是出差在外,在國內還是在國外,都能受到端到端的加密保護。
本設計適用于對語音保密通信有需求的政府機關、軍隊等, 也適合需要保密的商業(yè)通信。采用本系統(tǒng)用戶可以像使用普通電話一樣實現(xiàn)語音保密通信。在電信IDC機房、移動IDC機房分別搭建了加密語音通信服務平臺,已經達到實用化的目標,用戶反饋效果良好。
[1] 仇國慶,包俊杰, 曹冬梅,等.基于AES算法的ZigBee網(wǎng)絡加密方法研究[J].電子技術應用,2014,40(4):56-58.
[2] 劉安戰(zhàn),賈曉輝.基于Android的私密短信系統(tǒng)設計與實現(xiàn)[J].微型機與應用,2012,31(17):51-52.
[3] 劉雪樵.一個單方加密—多方解密的公鑰加密方案的分析[J].微型機與應用,2014,33(8):55-56.
[4] 嚴迎建,任方,付小兵,等.基于NiosII的語音加密傳輸系統(tǒng)設計[J].電子技術應用, 2009,35(9):61-64.
[5] ITU-T Rec.G.729(03/96)Coding of speech at 8 kbit/s using conjugate structure algebraic code excited linear prediction[S], 2012.
[6] 董貴山,盧顯良,鄧春梅,等.一種Linux網(wǎng)絡硬件加密高性能并發(fā)調度方法[J].計算機應用, 2008,28(1):65-67.
Design of intelligent terminal voice encryption system based on thenational standard encryption algorithm
Hu Shuangxi, Lv Qianjin, Liang Youren, Liu Jianxu
(Tianjin Toec Anchen Information Technology Co., Ltd., Tianjin 300211, China)
This paper designed an intelligent terminal encryption system based on the national standard encryption algorithm. It adopts the method of mobile Internet, communication technology and cryptography, based on the algorithm and standard mechanism of PKI certificate unification signature authentication, secure access control and voice data encryption function, so as to realize the end-to-end security voice communication of mobile terminal.
the national standard encryption algorithm; voice encryption; identity authentication; access control
天津市科技支撐計劃(16YFZCGX00200)
TP309.7
A
10.19358/j.issn.1674- 7720.2017.12.001
胡雙喜,呂前進,梁友仁,等.基于國密算法的智能終端語音加密系統(tǒng)設計[J].微型機與應用,2017,36(12):1-3.
2017-01-19)
胡雙喜,(1982-),男,碩士,高級工程師,主要研究方向:信息安全系統(tǒng)研發(fā)。
呂前進,(1975-),男,碩士,正高級工程師,主要研究方向:項管理與安全系統(tǒng)設計。
梁友仁,(1983-),男,碩士,高級工程師,主要研究方向:網(wǎng)絡安全信息系統(tǒng)設計。