一種端到端傳輸數據的方法
2023-06-07 18:44:56 1
一種端到端傳輸數據的方法
【專利摘要】一種端到端傳輸數據的方法,所述方法包括:將第一終端生成的隨機數發送至第二終端;第一終端和第二終端根據所述隨機數和密鑰加密密鑰KEK通過密鑰生成函數生成本次會話的會話密鑰SK;第一終端利用SK加密明文生成密文,將密文發送至第二終端;第二終端根據SK解密所述密文,得到所述明文。應用本發明實施例後,降低了高安全級別秘鑰的洩露的可能性,提高端到端數據傳輸的安全性。
【專利說明】一種端到端傳輸數據的方法
【技術領域】
[0001]本申請涉及通信【技術領域】,更具體地,涉及一種端到端傳輸數據的方法。
【背景技術】
[0002]集群通信系統是為了滿足行業用戶指揮調度需求而開發、面向特定行業應用的專用無線通信系統。該系統中大量無線用戶共享少量無線信道,以指揮調度為主體應用,是一種多用途、高效能的無線通信系統。集群通信系統廣泛應用於政府部門、公共安全、應急通信、電力、民航、石油化工和軍隊等領域。
[0003]由於集群通信系統傳輸信息要求較高的保密性,這就需要集群通信系統具有加密功能。加密需求主要包括四方面:全業務加密,包括視頻加密、多業務並發加密;空口加密與端到端加密,即對集群信令加密、提供全網密碼同步機制;採用商密晶片,以減小對終端的影響;實現故障弱化和脫網直通下的安全加密通信。
[0004]端到端安全加密包括:在密鑰加密密鑰(KEK)更新周期內,用於端到端加密的KEK是不變的。每次會話建立時,主被叫協商本次會話密鑰,利用會話密鑰加密本次會話,並進行加密通話。
[0005]具體包括:會話開始時,由主叫方生成本次會話密鑰,用KEK加密會話密鑰並發送到接收方。被叫方用共享的密鑰加密密鑰解密會話密鑰。或者採用以下的技術方案:密鑰分發中心(KDC)生成本次會話密鑰,由主/被叫雙方主密鑰加密後發送給主/被叫雙方,主/被叫雙方用各自主密鑰解密獲得本次會話密鑰。
[0006]發送會話密鑰需要利用共享的密鑰加密密鑰或主密鑰加密會話密鑰,並通過空口發送,上述的技術方案存在以下問題:利用高安全級別的密鑰加密密鑰或主密鑰加密會話密鑰,並在安全性不高的空口直接傳輸加密後的會話密鑰。一旦,加密後的會話密鑰遭到破解,則整個系統的密鑰加密密鑰、會話密鑰全部洩露。因此,現有技術中存在較大安全隱患。
【發明內容】
[0007]本發明實施例提出一種端到端傳輸數據的方法,降低了高安全級別秘鑰的洩露的可能性,提高端到端數據傳輸的安全性。
[0008]本發明實施例的技術方案如下:
[0009]一種端到端傳輸數據的方法,所述方法包括:
[0010]將第一終端生成的隨機數發送至第二終端;
[0011]第一終端和第二終端根據所述隨機數和密鑰加密密鑰KEK通過密鑰生成函數生成本次會話的會話密鑰SK ;
[0012]第一終端利用SK加密明文生成密文,將密文發送至第二終端;
[0013]第二終端根據SK解密所述密文,得到所述明文。
[0014]所述第一終端是主叫終端,所述第二終端是被叫終端。
[0015]所述第一終端是被叫終端,所述第二終端是主叫終端。
[0016]所述密鑰函數是單向函數。
[0017]所述將第一終端生成的隨機數發送至第二終端包括:在SIP會話建立中將第一終端生成的Call-1D發送至第二終端。
[0018]從上述技術方案中可以看出,在本發明實施例中將第一終端生成的隨機數發送至第二終端;第一終端和第二終端根據所述隨機數和KEK通過密鑰生成函數生成本次會話的會話密鑰SK ;第一終端利用SK加密明文生成密文,將密文發送至第二終端;第二終端根據SK解密所述密文,得到所述明文。由於第一終端僅將隨機數與密文發送至第二終端,即使發生傳輸錯誤,也不會洩露高安全級別的密鑰,從而提高了端到端數據傳輸的安全性。
【專利附圖】
【附圖說明】
[0019]圖1為端到端傳輸數據的方法流程示意圖。
【具體實施方式】
[0020]為使本發明的目的、技術方案和優點表達得更加清楚明白,下面結合附圖及具體實施例對本發明再作進一步詳細的說明。
[0021]在本發明實施例中,由第一終端生成隨機數並明文發送至第二終端,雙方利用此隨機數與共享的密鑰加密密鑰經密鑰生成函數運算生成會話密鑰。本發明中無需在空口傳輸加密信息即可實現一話一密,降低了會話密鑰以及密鑰加密密鑰洩露的可能性,從而提高了端到端數據傳輸的安全性。
[0022]參見附圖1是端到端傳輸數據的方法流程示意圖。其中,第一終端與第二終端通信建立時,由第一終端或第二終端生成隨機數。隨機數傳輸至第二終端或第一終端,第二終端或第一終端收到隨機數後,向第一終端或第二終端發送收到確認指示。
[0023]在本發明中第一終端是主叫終端,則第二終端是被叫終端;第一終端是被叫終端,則第二終端是被叫終端。下面以第一終端是主叫終端,第二終端是被叫終端為例進行詳細的說明。
[0024]在主叫終端處,隨機數和KEK作為輸入參數通過密鑰生成函數生成本次的會話密鑰(SK)。主叫終端利用SK加密主叫終端的明文生成密文。
[0025]在被叫終端處,隨機數和KEK作為輸入參數通過密鑰生成函數生成本次的SK。被叫終端利用SK解密密文,得到主叫終端的明文。
[0026]由於在主叫終端與被叫終端預置KEK,而主叫終端與被叫終端利用相同的參數與函數得到相同的SK。其中,密鑰生成函數可以是現有技術中的任意函數,也是可以是單向函數。
[0027]密鑰生成函數f若滿足下列兩個條件,則f稱為單向函數:
[0028]①對於所有屬於f定義域的任一 X,可以很容易計算f (X) =y ;
[0029]②對於幾乎所有屬於f值域的任一 y,則在計算上不可能求出X使得y=f (X)。
[0030]也就是說由隨機數和KEK通過密鑰生成函數計算SK容易,但是依據SK和密鑰生成函數得到隨機數和KEK幾乎不可能。因此,即使SK洩露,也不會洩露KEK。
[0031 ] 下面舉例說明本發明的技術方案。
[0032]通信建立時,由主叫終端生成一個隨機數,此隨機數與KEK作為輸入參數通過密鑰生成函數生成本次的會話密鑰SK,用SK加密主叫終端的明文生成密文。被叫終端先用接收到的隨機數以及與主叫終端共享的密鑰加密密鑰作為輸入參數,通過與主叫終端相同的密鑰生成函數生成本次的SK,用SK解密接收到的密文,得到主叫終端的明文。
[0033]例如,隨機數為本次會話的Call-1D,密鑰生成函數為單向函數y=f (xl, x2)。Call-1D是SIP會話協議用於標識一個特定邀請以及與這個邀請相關的所有後續事務。
[0034]主叫終端:SK=f(KEK,Call-1D)(I)
[0035]接收終端:SK'=f(KEK',Call-1D') (2)
[0036]其中KEK'為與主叫終端共享的密鑰加密密鑰,所以KEK=KEK' ;Call_ID'是從主叫終端發送來的,所以Call-1D'=Call-1D。從上(I)式和(2)式可以得到SK=SK',從而接收終端收到主叫終端的明文。
[0037]綜上所述,採用上述技術方案,即使會話密鑰被破解,也很難由會話密鑰得到密鑰加密密鑰,從而保證了其上一級密鑰即密鑰加密密鑰的安全。
[0038]以上所述,僅為本發明的較佳實施例而已,並非用於限定本發明的保護範圍。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
【權利要求】
1.一種端到端傳輸數據的方法,其特徵在於,所述方法包括: 將第一終端生成的隨機數發送至第二終端; 第一終端和第二終端根據所述隨機數和密鑰加密密鑰KEK通過密鑰生成函數生成本次會話的會話密鑰SK ; 第一終端利用SK加密明文生成密文,將密文發送至第二終端; 第二終端根據SK解密所述密文,得到所述明文。
2.根據權利要求1所述端到端傳輸數據的方法,其特徵在於,所述第一終端是主叫終端,所述第二終端是被叫終端。
3.根據權利要求1所述端到端傳輸數據的方法,其特徵在於,所述第一終端是被叫終端,所述第二終端是主叫終端。
4.根據權利要求1所述端到端傳輸數據的方法,其特徵在於,所述密鑰函數是單向函數。
5.根據權利要求1所述端到端傳輸數據的方法,其特徵在於,所述將第一終端生成的隨機數發送至第二終端包括:在SIP會話建立中將第一終端生成的Call-1D發送至第二終端。
【文檔編號】H04L29/06GK104243409SQ201310236233
【公開日】2014年12月24日 申請日期:2013年6月14日 優先權日:2013年6月14日
【發明者】劉文清, 陶雄強 申請人:中國普天信息產業股份有限公司