新四季網

一種密鑰配置方法及密鑰管理中心、網元與流程

2023-08-02 13:17:41 1


本申請涉及通信領域,尤其涉及一種密鑰配置方法及密鑰管理中心、網元。



背景技術:

在已有的移動通信安全架構中,數據從終端到網絡的安全保護均採用分段加密的方式進行,例如,一個用戶設備向另一個用戶設備發送數據的過程中,發送端用戶設備將加密的數據發給第一基站,第一基站將數據先解密再加密,並將再次加密的數據發給其它中間設備,最終數據被發送到接收端用戶設備。

因為分段加密的方式使得通信數據在中間設備中被解密,所以,增加了被竊取的風險。因此,端到端的安全通信成為安全通信的發展趨勢。所謂端到端的安全通信即發送端設備與接收端設備建立安全隧道,安全隧道的中間節點僅處理密文數據的轉發,而不對加密數據進行解密。

而對參與端到端通信的兩個網元進行安全密鑰的配置為端到端的安全通信的前提。



技術實現要素:

本申請提供了一種密鑰配置方法及裝置、網元,目的在於解決如何為網元進行安全密鑰的配置的問題。

為了實現上述目的,本申請提供了以下技術方案:

本申請的第一方面提供了一種密鑰配置方法,包括:密鑰管理中心獲取業務密鑰,所述業務密鑰用於對第一網元和第二網元之間傳輸的數據進行加密和/或完整性保護。所述密鑰管理中心獲取令牌,所述令牌為對所述業務密鑰進行加密和/或完整性保護的結果。所述密鑰管理中心發送所述令牌,所述令牌用於由所述第一網元獲取後向所述第二網元轉發,以使得所述第二網元依據所述令牌獲得所述業務密鑰。本申請所述的密鑰配置方法,密鑰管理中心獲取業務密鑰和令牌,第一網元在接收到業務密鑰和令牌後,向第二網元 發送令牌,因為令牌為對業務密鑰進行加密和/或完整性保護的結果,所述第二網元可以依據令牌獲取業務密鑰,又因為業務密鑰用於對所述第一網元和第二網元之間傳輸的數據進行加密和/或完整性保護,所以,通過密鑰管理中心和網元的交互,能夠實現對安全密鑰的配置,從而為第一網元和第二網元之間的端到端的安全通信奠定基礎。

本申請的第二方面提供了另一種密鑰配置方法,包括:第一網元獲取業務密鑰和令牌,所述業務密鑰用於對所述第一網元和第二網元之間傳輸的數據進行加密和/或完整性保護,所述令牌為對所述業務密鑰進行加密和/或完整性保護的結果。所述第一網元向所述第二網元發送所述令牌,所述令牌用於所述第二網元獲取所述業務密鑰。因為所述第一網元將所述令牌發送給所述第二網元,所以,第二網元可以從所述令牌中獲得所述業務密鑰,從而所述第一網元與所述第二網元之間可以進行端到端的安全通信。

本申請的第三方面提供了另一種密鑰配置方法,網絡控制中心接收密鑰請求,所述密鑰請求中攜帶第一網元的標識和第二網元的標識;如果所述第一網元的標識和/或所述第二網元的標識非永久標識,所述網絡控制中心將所述第一網元的標識替換為所述第一網元的永久標識,和/或將所述第二網元的標識替換為所述第二網元的永久標識;所述網絡控制中心向密鑰管理中心發送第二密鑰請求消息,所述第二密鑰請求消息包含第一網元的永久標識和第二網元的永久標識;所述密鑰管理中心用於依據所述密鑰請求中所述第一網元的永久標識和所述第二網元的永久標識,生成業務密鑰及令牌,所述令牌為對所述業務密鑰進行加密和/或完整性保護的結果,所述業務密鑰用於對所述第一網元和所述第二網元之間傳輸的數據進行加密和/或完整性保護。

本申請的第四方面提供了另一種密鑰配置方法,包括:密鑰管理中心接收密鑰請求,所述密鑰請求中攜帶第一網元的標識、第二網元的標識和業務參數的至少一個,所述密鑰請求由所述第一網元、所述第二網元、網絡控制中心、或者業務伺服器向所述密鑰管理中心發送;所述密鑰管理中心依據所述第一網元的標識、所述第二網元的標識和所述業務參數的至少一個生成業務密鑰,所述業務密鑰用於對所述第一網元和所述第二網元之間傳輸的數據進行加密和/或完整性保護;所述密鑰管理中心使用所述密鑰管理中心與所述第二網元之間的共享密鑰對所述業務密鑰及所述第一類密鑰參數組成的字符 串進行加密,得到令牌;其中,所述第一類密鑰參數為所述密鑰管理中心使用所述共享密鑰計算所述業務密鑰的消息認證碼,或者,所述密鑰管理中心使用所述共享密鑰計算所述業務密鑰與所述業務密鑰的信息組成的字符串的消息認證碼,其中,所述業務密鑰的信息包括以下任意一項:所述業務密鑰的使用實體標識、所述業務密鑰的有效期、所述業務密鑰的生成時間、應用所述業務密鑰的業務的信息及業務鏈路的信息;所述密鑰管理中心發送所述令牌,所述令牌用於由所述第一網元獲取後向所述第二網元轉發,以使得所述第二網元依據所述令牌獲得所述業務密鑰。

本申請的第五方面提供了另一種密鑰配置方法,包括:密鑰管理中心接收第一網元發送的密鑰請求,生成業務密鑰,並向所述第一網元和第二網元發送所述業務密鑰,其中,所述業務密鑰用於對第一網元和第二網元之間傳輸的數據進行加密和/或完整性保護。

本申請的第六方面提供了一種密鑰管理中心,包括:第一處理器和第一存儲器;所述第一存儲器用於存儲作業系統以及應用程式、所述應用程式運行中產生的數據;所述第一處理器用於通過運行存儲在所述第一存儲器中的所述應用程式,實現以下功能:獲取業務密鑰,所述業務密鑰用於對第一網元和第二網元之間傳輸的數據進行加密和/或完整性保護;獲取令牌,所述令牌為對所述業務密鑰進行加密和/或完整性保護的結果;發送所述令牌,所述令牌用於由所述第一網元獲取後向所述第二網元轉發,以使得所述第二網元依據所述令牌獲得所述業務密鑰。

本申請的第七方面提供了一種網元,包括:第二處理器和第二存儲器。所述第二存儲器用於存儲作業系統以及應用程式、所述應用程式運行中產生的數據;所述第二處理器用於通過運行存儲在所述第二存儲器中的所述應用程式,實現以下功能:獲取業務密鑰和令牌,所述業務密鑰用於對所述第一網元和其它網元之間傳輸的數據進行加密和/或完整性保護,所述令牌為對所述業務密鑰進行加密和/或完整性保護的結果;向所述其它網元發送所述令牌,所述令牌用於所述其它網元獲取所述業務密鑰。

本申請的第八方面提供了一種網絡控制中心,包括:第三處理器和第三存儲器。所述第三存儲器用於存儲作業系統以及應用程式、所述應用程式運行中產生的數據;所述第三處理器用於通過運行存儲在所述第三存儲器中的 所述應用程式,實現以下功能:接收密鑰請求,所述密鑰請求中攜帶第一網元的標識和第二網元的標識;如果所述第一網元的標識和/或所述第二網元的標識非永久標識,將所述第一網元的標識替換為所述第一網元的永久標識,和/或將所述第二網元的標識替換為所述第二網元的永久標識;向密鑰管理中心發送第二密鑰請求消息,所述第二密鑰請求消息包含第一網元的永久標識和第二網元的永久標識;所述密鑰管理中心用於依據所述密鑰請求中所述第一網元的永久標識和所述第二網元的永久標識,生成業務密鑰及令牌,所述令牌為對所述業務密鑰進行加密和/或完整性保護的結果,所述業務密鑰用於對所述第一網元和所述第二網元之間傳輸的數據進行加密和/或完整性保護。

本申請的第九方面提供了又一種密鑰管理中心,包括:第四處理器和第四存儲器。所述第四存儲器用於存儲作業系統以及應用程式、所述應用程式運行中產生的數據;所述第四處理器用於通過運行存儲在所述第四存儲器中的所述應用程式,實現以下功能:接收密鑰請求,所述密鑰請求中攜帶第一網元的標識、第二網元的標識和業務參數的至少一個,所述密鑰請求由所述第一網元、所述第二網元、網絡控制中心、或者業務伺服器發送;獲取業務密鑰,所述業務密鑰用於對所述第一網元和所述第二網元之間傳輸的數據進行加密和/或完整性保護;使用所述密鑰管理中心與所述第二網元之間的共享密鑰對所述業務密鑰及所述第一類密鑰參數組成的字符串進行加密,得到令牌;其中,所述第一類密鑰參數為所述密鑰管理中心使用所述共享密鑰計算所述業務密鑰的消息認證碼,或者,所述密鑰管理中心使用所述共享密鑰計算所述業務密鑰與所述業務密鑰的信息組成的字符串的消息認證碼,其中,所述業務密鑰的信息包括以下任意一項:所述業務密鑰的使用實體標識、所述業務密鑰的有效期、所述業務密鑰的生成時間、應用所述業務密鑰的業務的信息及業務鏈路的信息;發送所述令牌,所述令牌用於由所述第一網元獲取後向所述第二網元轉發,以使得所述第二網元依據所述令牌獲得所述業務密鑰。

在一些實現方式中,所述獲取令牌包括:依據所述業務密鑰得到第一類密鑰參數,所述第一類密鑰參數包括由所述業務密鑰得到的消息認證碼或者數字籤名;使用第一參數,對所述業務密鑰及所述第一類密鑰參數組成的字 符串進行加密,得到所述令牌,所述第一參數包括所述密鑰管理中心與所述第二網元之間的共享密鑰、所述第二網元的公鑰或者所述第二網元的標識。

在一些實現方式中,所述依據所述業務密鑰得到第一類密鑰參數包括:使用所述共享密鑰計算所述業務密鑰的消息認證碼;或者,使用所述共享密鑰計算所述業務密鑰與所述業務密鑰的信息組成的字符串的消息認證碼;或者,使用預設的私鑰計算所述業務密鑰的數字籤名;或者,使用預設的私鑰計算所述業務密鑰與所述業務密鑰的信息組成的字符串的數字籤名;其中,所述業務密鑰的信息包括以下任意一項:所述業務密鑰的使用實體標識、所述業務密鑰的有效期、所述業務密鑰的生成時間、應用所述業務密鑰的業務的信息及業務鏈路的信息。

在一些實現方式中,所述獲取令牌包括:接收其它密鑰管理中心發送的令牌。

在一些實現方式中,所述發送所述令牌包括:向所述第一網元發送所述令牌;所述第一處理器還用於:向所述第一網元發送所述業務密鑰。

在一些實現方式中,所述向所述第一網元發送所述業務密鑰及所述令牌的具體過程包括:使用第二參數對字符串進行加密形成密文,並向所述第一網元發送所述密文,所述字符串由所述業務密鑰、所述令牌及第二類密鑰參數組成;或者,使用第二參數對字符串進行加密形成密文,並向所述第一網元發送所述密文以及所述令牌,所述字符串由所述業務密鑰及所述第二類密鑰參數組成;其中,所述第二類密鑰參數包括由所述業務密鑰及所述令牌組成的字符串得到的消息認證碼或者數字籤名,所述第二參數包括所述密鑰管理中心與所述第一網元間的共享密鑰、所述第一網元的公鑰,或者所述第一網元的標識。

在一些實現方式中,所述字符串中的所述第二類密鑰參數為消息認證碼,所述消息認證碼為通過使用所述密鑰管理中心與所述第一網元之間的共享密鑰對所述業務密鑰與所述令牌組成的字符串進行完整性保護得到;或者,所述字符串中的所述第二類密鑰參數為數字籤名,所述數字籤名通過使用預設的私鑰對所述業務密鑰與所述令牌組成的字符串進行數字籤名運算得到。

在一些實現方式中,所述向所述第一網元發送所述業務密鑰及所述令牌的具體過程包括:通過預先建立的與所述第一網元之間的安全通道,向所述第一網元發送所述業務密鑰及所述令牌。

在一些實現方式中,所述發送所述令牌包括:向其它密鑰管理中心發送所述令牌。

在一些實現方式中,所述獲取業務密鑰包括:依據以下規則中的任意一種生成所述業務密鑰k:k=kdf(key,(time,預設參數中的至少一項)),其中,所述key為所述密鑰管理中心所選的隨機數、所述第一網元與所述密鑰管理中心之間的共享密鑰k1、所述第二網元與所述密鑰管理中心之間的共享密鑰k2、另一個密鑰管理中心所選的隨機數、或者所述另一個密鑰管理中心與所述第二網元之間的共享密鑰中的一個或多個的組合;time為業務密鑰k的截止時間、有效期時長、或當前的系統時間;所述預設參數包括所述第一網元的標識、所述第二網元的標識、所述業務參數和sn;所述業務參數為業務中的序列號、該業務密鑰的相關時間time、該業務中的相關id,新鮮參數(freshparameter)、隨機數(nonce/randomnumber)中的至少一項,sn為計算業務密鑰的序列號。。

在一些實現方式中,所述獲取業務密鑰包括:向另一個密鑰管理中心發送第一協商參數,所述第一協商參數為隨機數1、系統時間1、序列號1、新鮮參數freshparameter1中的至少一項;接收所述另一個密鑰管理中心發送的第二協商參數;所述第二協商參數為隨機數2、系統時間2、序列號2、新鮮參數freshparameter2中的至少一項;規則kdf(第一協商參數,第二協商參數)生成業務密鑰,或者,所述密鑰管理中心依據規則k=kdf(key,(time,預設參數中的至少一項))生成業務密鑰;其中,key為參考業務密鑰或者dh密鑰協商後得到的密鑰,所述參考業務密鑰依據kdf(第一協商參數,第二協商參數)生成;time為業務密鑰k的截止時間、有效期時長、或當前的系統時間;所述預設參數包括所述第一網元的標識、所述第二網元的標識、所述業務參數和sn;所述業務參數為業務中的序列號、該業務密鑰的相關時間time、該業務中的相關id,新鮮參數(freshparameter)、隨機數(nonce/randomnumber)中的至少一項,sn為計算業務密鑰的序列號。

在一些實現方式中,所述獲取業務密鑰包括:向另一個密鑰管理中心發送dh密鑰協商中的第一參數gx;接收所述另一個密鑰管理中心發送的所述dh密鑰協商中的第二參數gy;所述密鑰管理中心計算出gxy,將gxy,kdf(gxy),或者k=kdf(gxy,(time,預設參數中的至少一項))作為所述業務密鑰其中,key為參考業務密鑰或者dh密鑰協商後得到的密鑰,所述參考業務密鑰依據kdf(第一協商參數,第二協商參數)生成;time為業務密鑰k的截止時間、有效期時長、或當前的系統時間;所述預設參數包括所述第一網元的標識、所述第二網元的標識、所述業務參數和sn;所述業務參數為業務中的序列號、該業務密鑰的相關時間time、該業務中的相關id,新鮮參數(freshparameter)、隨機數(nonce/randomnumber)中的至少一項,sn為計算業務密鑰的序列號。

在一些實現方式中,所述獲取業務密鑰包括:接收其它密鑰管理中心發送的業務密鑰。

在一些實現方式中,還包括:接收密鑰請求,所述密鑰請求中攜帶所述第一網元的標識、所述第二網元的標識和業務參數的至少一個,所述密鑰請求由所述第一網元、所述第二網元、網絡控制中心、或者業務伺服器發送。

在一些實現方式中,還包括:接收網絡控制中心發送的第一密鑰請求,所述第一密鑰請求中攜帶所述第一網元的永久標識和所述第二網元的永久標識,所述第一網元的永久標識由所述網絡控制中心依據所述第一網元的臨時標識轉換得到,所述第二網元的永久標識由所述網絡控制中心依據所述第二網元的臨時標識轉換得到,所述第一網元的臨時標識和所述第二網元的臨時標識攜帶在由所述第一網元、所述第二網元或者業務伺服器發送給所述網絡控制中心的第二密鑰請求中。

附圖說明

為了更清楚地說明本申請實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。

圖1為兩個網元之間通過通信網絡進行端到端通信的場景的示意圖;

圖2為密鑰管理中心的一種部署示意圖;

圖3為密鑰管理中心的又一種部署示意圖;

圖4為本申請實施例公開的密鑰管理中心的結構示意圖;

圖5為本申請實施例公開的一種密鑰配置方法的流程圖;

圖6為本申請實施例公開的又一種密鑰配置方法的流程圖;

圖7為本申請實施例公開的又一種密鑰配置方法的流程圖;

圖8為本申請實施例公開的又一種密鑰配置方法的流程圖;

圖9為本申請實施例公開的又一種密鑰配置方法的流程圖;

圖10為本申請實施例公開的又一種密鑰配置方法的流程圖。

具體實施方式

圖1所示為兩個網元之間通過通信網絡進行端到端通信的場景,其中,網元可以為用戶設備(userequipment,ue)、伺服器、控制器等通信參與方,也可以為網關等中間設備。通信網絡可以為移動通信網絡,例如全球移動通信系統(globalsystemformobilecommunications,gsm),寬帶碼分多址(widebandcodedivisionmultipleaccess,wcdma),3gpp長期演進(longtermevolution,lte),未來5g,無線保真(wirelessfidelity,wifi)(又稱802.11b標準)等無線通信網絡,也可以為網際網路。

本申請實施例中,兩個網元之間通過移動通信網絡進行端到端通信可以包括以下任意一種情況:兩個網元通過移動通信網絡完成端到端通信、兩個網元通過網際網路完成端到端通信以及兩個網元通過移動通信網絡和網際網路完成端到端通信。可選地,在通信網絡中可以包括業務伺服器和網絡控制中心,兩個網元之間可以通過業務伺服器和/或網絡控制中心實現與通信網絡的信息交互。

為了實現兩個網元之間的端到端的安全通信,可以使用業務密鑰對兩個網元之間傳輸的數據進行加密和/或完整性保護,而為網元進行業務密鑰的配置為實現上述目的的基礎。

為了實現上述目的,本申請中,在通信網絡中設置密鑰管理中心,負責為網元配置業務密鑰,如圖2所示,具體地,可以在一種類型的網絡中設置一個密鑰管理中心,此密鑰管理中心負責為兩個網元配置業務密鑰;也可以 在不同類型的網絡中各自設置一個密鑰管理中心,每一個密鑰管理中心負責為一個網元配置業務密鑰,例如,如圖3所示,在移動通信網絡中設置第一密鑰管理中心,負責為處於移動通信網絡中的第一網元配置業務密鑰,在網際網路中設置第二密鑰管理中心,負責為處於網際網路中的第二網元配置業務密鑰。

本申請的實施例將重點說明密鑰管理中心如何為網元配置業務密鑰。

圖2或圖3中所示的密鑰管理中心的結構如圖4所示,包括:第一處理器401、與第一處理器401匹配使用的第一存儲器402以及通信接口403。以上各部分通過總線進行通信。

其中,第一存儲器402包括存儲介質4021和存儲單元4022,具體地,存儲介質可以為只讀存儲器rom、硬碟或快閃記憶體,存儲單元可以為隨機存儲器ram。

在第一存儲器中存儲有作業系統、應用程式、所述應用程式運行中產生的數據。本實施例中,包括應用程式實現密鑰配置功能的程序,第一處理器通過調用並運行所述應用程式實現為網元配置業務密鑰的功能。第一處理器在運行所述程序的過程中產生的數據也被存儲在存儲單元中。

下面將詳細說明如圖4所述的密鑰管理中心如何實現為網元配置密鑰的功能。

如圖5所示,在圖2所示的僅包括一個密鑰管理中心的場景下,為兩個網元配置業務密鑰的具體過程包括以下步驟:

s501:密鑰管理中心接收密鑰請求,在密鑰請求中,攜帶第一網元的標識、第二網元的標識和業務的業務參數的至少一項。

業務的業務參數可以有多種。例如,該業務的業務參數可以包括業務中的序列號sn、該業務密鑰的相關時間time、該業務中的相關id,新鮮參數(freshparameter)、隨機數(nonce/randomnumber)中的至少一項。其中,該業務中的相關id可以包括密鑰管理中心的id、業務serviceid、會話sessionid、網絡id、鏈路id、應用appid、伺服器serverid和公共陸地行動網路(publiclandmobilenetwork,plmnid)中的至少一個。其中,該業務密鑰的相關時間time可以包括該業務開始的時間、結束的時間和有效期中的至少一項。

其中第一網元的標識和中第二網元的標識可以分別包括imei、imsi、impi、tmsi、impu、appid、網絡id、mac地址、ip地址、手機號碼和guti中的至少一項,在此不作限制。

具體地,密鑰請求可以由第一網元、第二網元或者業務伺服器發送給密鑰管理中心。

另外,密鑰請求也可以由第一網元、第二網元或者業務伺服器發送給網絡控制中心,再由網絡控制中心轉發給密鑰管理中心。具體地,包括如下步驟:

s5011:網絡控制中心接收攜帶第一網元的標識、第二網元的標識和業務參數的至少一項的密鑰請求。

s5012:若第一網元的標識為臨時標識,網絡控制中心將第一網元的臨時標識轉換成第一網元的永久標識;若第二網元的標識為臨時標識,網絡控制中心將第二網元的臨時標識轉換成第二網元的永久標識。具體地,網絡控制中心可以預先存儲有各個網元的臨時標識和永久標識的對應關係,網絡控制中心可以通過查詢對應關係,實現臨時標識和永久標識之間的轉換。例如,臨時標識可能為:impu,guti,tmsi等;永久標識可能為:imsi,imei,impi,appid,網絡id,mac地址、ip地址、手機號碼等;在此不做限制。

s5013:網絡控制中心將攜帶第一網元的永久標識、第二網元的永久標識和業務參數的至少一項的密鑰請求發送給密鑰管理中心。

需要說明的是,第一網元在發送密鑰請求的同時,還可以一併發送消息驗證碼,驗證碼用於密鑰管理中心驗證密鑰請求的合法性,以避免攻擊者惡意發送的密鑰請求;第一網元可以基於第一網元與密鑰管理中心之間的共享密鑰k1,或者基於第一網元的私鑰計算所述消息驗證碼。

s5011-5013步驟為可選步驟。

s502:接收到上述密鑰請求後,密鑰管理中心依據以下規則中的任意一種生成業務密鑰k。

具體的,規則為

k=kdf(key,(time,預設參數中的至少一項)),其中,key可為隨機數、第一網元與密鑰管理中心之間的共享密鑰k1、第二網元與密鑰管理中心 之間的共享密鑰k2中的一個或多個的組合,time為業務密鑰k的截止時間、有效期時長、或當前的系統時間。

所述預設參數包括所述第一網元的標識、所述第二網元的標識、所述業務參數和sn;所述業務參數為業務中的序列號、該業務密鑰的相關時間time、該業務中的相關id,新鮮參數(freshparameter)、隨機數(nonce/randomnumber)中的至少一項,sn為計算業務密鑰的序列號。

進一步地,該業務中的相關id為第一網元的id、第二網元的id、密鑰管理中心的標識、serviceid、sessionid,網絡id,鏈路id,appid,serverid,plmnid,手機號碼,serverid或功能設備id中一個或多個的組合,time為業務密鑰k的截止時間、有效期時長、或當前的開始系統時間,sn為計算業務密鑰的序列號,第一網元的id和第二網元的id識可以為imei、imsi、impi、tmsi、impu、appid、網絡id、mac地址、ip地址、手機號碼和guti中的至少一項,kdf表示密鑰推演函數keyderivationfunction。

除了以上規則,密鑰管理中心還可以隨機生成字符串作為業務密鑰。

s503:密鑰管理中心生成令牌。

具體地,密鑰管理中心可以使用以下任意一種方式生成令牌:

第一種方式:密鑰管理中心使用與第二網元中間的共享密鑰k2計算業務密鑰k的消息認證碼mac_k2_(k),並使用密鑰管理中心與第二網元之間的共享密鑰k2、第二網元的公鑰pk2或者第二網元的標識id2對業務密鑰k及消息認證碼mac_k2_(k)組成的字符串進行加密,得到令牌token。

以使用k2為例,即:token=en_k2_(k||mac_k2_(k)),其中,k||mac_k2_(k)表示k和mac_k2_(k)級聯組成的字符串,en_k2表示使用k2對k||mac_k2_(k)進行加密。k和mac_k2_(k)可以採用所述級聯的方式,也可以採用其他字符串組合的形式,如兩個字符串通過特定標識串聯在一塊,如1111,逗號,分隔符等。以上處理方式並不代表被加密的內容僅包括k和mac_k2_(k),也可能包含其他的字符串,如nonce,freshparameter等等。以下字符串級聯的地方,也適用以上所述的組合方式;也支持被籤名、mac、加密和哈希的內容包含其他的字符串。

第二種方式:密鑰管理中心使用k2計算業務密鑰k與業務密鑰的信息indication組成的字符串的消息認證碼mac_k2_(k||indication),並使用k2、 pk2或者id2對業務密鑰k及消息認證碼mac_k2_(k||indication)組成的字符串進行加密,得到令牌token。其中,indication包括以下參數的至少一項:所述業務密鑰的使用實體標識、所述業務密鑰的有效期、所述或者業務密鑰的生成時間、應用所述業務密鑰的業務的信息及業務鏈路的信息、業務的業務參數。indication也可以攜帶在s401中所述的密鑰請求中。

以使用pk2為例,即:token=en_pk2_(k||mac_k2_(k||indication)),其中,k||mac_k2_(k||indication)表示k和mac_k2_(k||indication)級聯組成的字符串,en_pk2表示使用pk2對k||mac_k2_(k||indication)進行加密。

第三種方式:密鑰管理中心使用預設的私鑰sk_kms計算業務密鑰k的數字籤名,並使用k2、pk2或者id2對業務密鑰k的數字籤名進行加密得到所述令牌token。

以使用id2為例,token=en_id2_(k||signature_sk_kms_(k)),其中,signature_sk_kms_(k)為使用sk_kms計算得到的k的數字籤名,k||signature_sk_kms_(k)為k與signature_sk_kms_(k)組成的字符串,en_id2表示使用id2對k與signature_sk_kms_(k)組成的字符串進行加密。

第四種方式:密鑰管理中心使用預設的私鑰sk_kms計算業務密鑰k與indication組成的字符串的數字籤名,使用k2、pk2或者id2對k與indication組成的字符串的數字籤名進行加密得到令牌token。

以使用pk2為例,即:token=en_pk2_(k||signature_sk_kms_(k||indication))。

s504:密鑰管理中心向第一網元發送業務密鑰和令牌。

具體地,可以使用以下任意一種方式發送業務密鑰和令牌:

第一種方式:密鑰管理中心使用密鑰管理中心與第一網元之間的共享密鑰k1對業務密鑰k與令牌token組成的字符串進行完整性保護得到消息認證碼mac_k1_(k||token),使用k1、第一網元的公鑰pk1或者第一網元的標識id1對業務密鑰k、令牌token以及消息認證碼mac_k1_(k||token)組成的字符串k||token||mac_k1_(k||token)進行加密形成密文,即ciphertext=en_k1_(k||token||mac_k1_(k||token)),並向第一網元發送密文。

第二種方式:密鑰管理中心使用預設的私鑰sk計算業務密鑰k與令牌token組成的字符串的數字籤名signature_sk_kms_(k||token),使用k1、pk1或者id1對業務密鑰k、令牌token以及數字籤名signature_sk_kms_(k||token)組成的字符串k||token||signature_sk_kms_(k||token)進行加密形成密文,以使用k1為例,即ciphertext=en_k1_(k||token||signature_sk_kms(k||token)),並向第一網元發送密文。

第三種方式:密鑰管理中心使用k1對業務密鑰k與令牌token組成的字符串進行完整性保護得到消息認證碼mac_k1_(k||token),使用k1、pk1或者id1對業務密鑰k以及消息認證碼mac_k1_(k||token)組成的字符串k||mac_k1_(k||token)進行加密形成密文,以使用pk1為例,即ciphertext=en_pk_(k||mac_k1_(k||token)),因為密文中沒有包括token,所以,向第一網元發送密文以及token。

第四種方式:密鑰管理中心使用預設的私鑰sk計算業務密鑰k與令牌token組成的字符串的數字籤名signature_sk_kms_(k||token),使用k1、pk1或者id1對業務密鑰k以及數字籤名signature_sk_kms_(k||token)組成的字符串k||signature_sk_kms_(k||token)進行加密形成密文,以使用k1為例,即ciphertext=en_k1_(k||signature_sk_kms(k||token)),並向第一網元發送密文以及token。

第五種方式:密鑰管理中心通過預先建立的與所述第一網元之間的安全通道,向所述第一網元發送業務密鑰及令牌,因為通過安全通道發送,所以可以直接發送,而無需進行加密。

需要說明的是,以上所列的生成令牌的任意一種方式、以及發送令牌和業務密鑰的任意一種方式,均可以任意進行組合使用。

s505:依據上述發送方式的不同,第一網元可能接收到密文,也可能接收到密文和令牌,還可能接收到業務密鑰和令牌的明文。

第一網元接收到密文後,通過解密獲得業務密鑰和令牌,並對兩者進行完整性驗證。

s506:第一網元將令牌發送給第二網元。

s507:第二網元從令牌中解密出業務密鑰,並對業務密鑰進行完整性驗證。

從本實施例所述的過程可以看出,密鑰管理中心生成並向第一網元發送第一網元和第二網元進行數據傳輸的業務密鑰和令牌,第一網元再將令牌發給第二網元,第二網元從令牌中解密出令牌,因此,能夠實現密鑰管理中心將業務密鑰分發給網元的目的,從而為兩個網元間的端到端的安全通信奠定基礎。

需要說明的是,本實施例中,圖5所示的流程由密鑰管理中心接收到密鑰請求觸發,除此之外,密鑰管理中心也可以自行啟動s502及之後的各個步驟,s501、s5011和s5012為可選步驟。

除了圖2所示的場景外,圖3中所示的兩個密鑰管理中心的場景下為兩個網元配置業務密鑰的具體過程如圖6所示,包括以下步驟:

s601:第一密鑰管理中心生成業務密鑰k。具體地,此步驟可以由第一密鑰管理中心接收到密鑰請求觸發,也可以由第一密鑰管理中心自行啟動。

因為本實施例適用於兩個密鑰管理中心的場景,所以,兩個密鑰管理中心可以通過協商生成業務密鑰。具體方式包括以下幾種:

第一種方式:

s6011:第一密鑰管理中心向第二密鑰管理中心發送第一協商參數,其中,第一協商參數可以為隨機數1、系統時間1、序列號1、新鮮參數freshparameter1等參數的至少一項,也可為dh密鑰協商中的第一參數gx。

s6012:第二密鑰管理中心在接收到第一協商參數後,向第一密鑰管理中心發送第二協商參數;第二協商參數可以為隨機數2、系統時間2、序列號2、新鮮參數freshparameter2等參數的至少一項,也可為dh密鑰協商中的第二參數gy。

s6013:第一密鑰管理中心根據規則k=kdf(第一協商參數,第二協商參數)生成業務密鑰。若第一協商參數為gx,若第二協商參數為gy,此時第一密鑰管理中心首先計算出gxy,之後將gxy或者kdf(gxy)直接作為業務密鑰k。

第二種方式(圖6中未畫出):與第一種方式相比,在第一密鑰管理中心根據規則k=kdf(第一協商參數,第二協商參數)計算出結果後,將計算結果作為key代入到s502所述的規則中,生成業務密鑰。

除了上述方式以外,第一密鑰管理中心還可以按照s402的方式生成業務密鑰,這裡不再贅述。

s602:第一密鑰管理中心將業務密鑰發送給第二密鑰管理中心。

s603:第二密鑰管理中心生成令牌。

本實施例中,生成令牌的具體方式可以參見s503。需要說明的是,如果按照s503中的第二種方式和第四種方式生成令牌,則indication可以由第一密鑰管理中心發給第二密鑰管理中心,例如,在第一密鑰管理中心向第二密鑰管理中心發送業務密鑰的過程中,將indication一併發送第二密鑰管理中心。

s604:第二密鑰管理中心將令牌發送給第一密鑰管理中心。

s605:第一密鑰管理中心向第一網元發送業務密鑰和令牌。具體方式可以參數s504,這裡不再贅述。

s606:第一網元獲得業務密鑰和令牌後,向第二網元發送令牌。具體的獲得方式可以參數s505,這裡不再贅述。

s607:第二網元從令牌中解密出業務密鑰,並對業務密鑰進行完整性驗證。

除了圖6所示的過程,第一密鑰管理中心還可以既生成業務密鑰,也生成令牌,具體地,如圖7所示,包括以下步驟:

s701:第一密鑰管理中心生成業務密鑰。具體方式可以參見s601。

s702:第一密鑰管理中心生成令牌。

需要強調的是,本實施例中,如圖3所示,因為第二網元與第二密鑰管理中心同處一種類型的網絡中,而第一密鑰管理中心與第二網元不在同一種類型的網絡中,假設第一密鑰管理中心與第一網元的共享密鑰,第二密鑰管理中心與第二網元共享密鑰。在此前提下,第一密鑰管理中心只能按照s503中所述的第三種方式和第四種方式生成令牌。

s703:第一密鑰管理中心向第一網元會話和令牌。

s704:第一網元向第二網元發送令牌。

s705:第二網元通過解密令牌得到業務密鑰。

除了圖6和圖7所示的方法外,業務密鑰和令牌均可以由第二密鑰管理中心生成,具體地,如圖8所示,包括以下步驟:

s801:第一密鑰管理中心接收密鑰請求。在密鑰請求中,攜帶第一網元的標識和第二網元的標識,還可以攜帶indication。

s802:第一密鑰管理中心將密鑰請求發送給第二密鑰管理中心。

s803:第二密鑰管理中心生成業務密鑰和令牌,具體的生成方式可以參見s503所述。

s804:第二密鑰管理中心將業務密鑰和令牌發送給第一密鑰管理中心。

s805:第一密鑰管理中心將業務密鑰和令牌發送給第一網元。

s806:第一網元將令牌發送第二網元。

s807:第二網元從令牌中解析出令牌。

除了圖6、圖7和圖8所示的過程外,假設第一密鑰管理中心與第一網元的共享密鑰,第二密鑰管理中心與第二網元共享密鑰。還可以按照圖9所示的過程為第一網元和第二網元配置業務密鑰。

如圖9所示,包括以下步驟:

s901:第一密鑰管理中心接收第一網元發送的密鑰請求。

s902:第一密鑰管理中心生成業務密鑰。具體方式可以參見s601。

s903:第一密鑰管理中心向第二密鑰管理中心發送業務密鑰。

s904:第一密鑰管理中心向第一網元發送業務密鑰。

具體地,第一密鑰管理中心可以將業務密鑰進行加密發送,也可以通過與第一網元之間預設的安全通道發送。進行加密發送的具體實現方式包括:

第一種方式:第一密鑰管理中心使用第一密鑰管理中心與第一網元之間的共享密鑰k1對業務密鑰k進行完整性保護得到消息認證碼mac_k1_(k),使用k1、第一網元的公鑰pk1或者第一網元的標識id1對業務密鑰k以及消息認證碼mac_k1_(k)組成的字符串k||mac_k1_(k)進行加密形成密文,以使用k1為例,即ciphertext=en_k1_(k||mac_k1_(k)),並向第一網元發送密文。

第二種方式:第一密鑰管理中心使用預設的私鑰sk_kms計算業務密鑰k數字籤名signature_sk_kms_(k),使用k1、pk1或者id1對業務密鑰k 以及數字籤名signature_sk_kms_(k)組成的字符串k||signature_sk_kms_(k)進行加密形成密文,以使用k1為例,即ciphertext=en_k1_(k||signature_sk_kms(k)),並向第一網元發送密文。

s905:第二密鑰管理中心向第二網元發送業務密鑰。具體的發送方式與s907中相似,僅需要將s907中的k1替換為第二密鑰管理中心與第二網元間的共享密鑰k2,將sk替換為第二密鑰管理中心預設的私鑰tk,將id1替換為第二網元的標識id2即可。

s906:第一網元和第二網元分別獲得業務密鑰。具體地,如果接收到的是密文,則需要從密文中解密出業務密鑰。

需要說明的是,s903和s904的順序可以調換,s904和s905的順序可以調換,s904和s905也可以同時進行。

也就是說,本實施例中,可以由第二密鑰管理中心直接向第二網元發送業務密鑰,而無需通過令牌傳遞。

圖9所示的思想同樣可以應用在圖2所示的一個密鑰管理中心的場景下。如圖10所示,包括以下步驟:

s1001:密鑰管理中心接收第一網元發送的密鑰請求。

s1002:密鑰管理中心生成業務密鑰。具體實現方式可以參見s502。

s1003:密鑰管理中心向第一網元發送業務密鑰,具體實現方式可以參見s1004。

s1004:密鑰管理中心向第二網元發送業務密鑰,具體實現方式與s1103相似,只需將k1替換為第二密鑰管理中心與第二網元間的共享密鑰k2,將sk替換為第二密鑰管理中心預設的私鑰tk,將id1替換為第二網元的標識id2即可。

s1005:第一網元和第二網元分別獲得業務密鑰。具體地,如果接收到的是密文,則需要從密文中解密出業務密鑰。

除了密鑰管理中心之外,圖1、圖2、圖3、圖5、圖6、圖7或圖8中所示的第一網元包括:第二處理器和第二存儲器。

其中,所述第二存儲器用於存儲作業系統以及應用程式、所述應用程式運行中產生的數據。所述第二處理器用於通過運行存儲在所述第二存儲器中的所述應用程式,實現以下功能:獲取業務密鑰和令牌,所述業務密鑰用於對所述第一網元和其它網元之間傳輸的數據進行加密和/或完整性保護,所述令牌為對所述業務密鑰進行加密和/或完整性保護的結果;向所述其它網元發送所述令牌,所述令牌用於所述其它網元獲取所述業務密鑰。

本實施例所述的網元的功能的具體實現可以參見上述實施例,這裡不再贅述。

圖1、圖2、圖3、圖5、圖6、圖7或圖8中所示的網絡控制中心,包括:

第三處理器和第三存儲器。

其中,所述第三存儲器用於存儲作業系統以及應用程式、所述應用程式運行中產生的數據。所述第三處理器用於通過運行存儲在所述第三存儲器中的所述應用程式,實現以下功能:接收密鑰請求,所述密鑰請求中攜帶第一網元的標識和第二網元的標識;如果所述第一網元的標識和/或所述第二網元的標識非永久標識,將所述第一網元的標識替換為所述第一網元的永久標識,和/或將所述第二網元的標識替換為所述第二網元的永久標識;向密鑰管理中心發送第二密鑰請求消息,所述第二密鑰請求消息包含第一網元的永久標識和第二網元的永久標識;所述密鑰管理中心用於依據所述密鑰請求中所述第一網元的永久標識和所述第二網元的永久標識,生成業務密鑰及令牌,所述令牌為對所述業務密鑰進行加密和/或完整性保護的結果,所述業務密鑰用於對所述第一網元和所述第二網元之間傳輸的數據進行加密和/或完整性保護。

圖5中所示的密鑰管理中心包括第四處理器和第四存儲器。

其中,所述第四存儲器用於存儲作業系統以及應用程式、所述應用程式運行中產生的數據。所述第四處理器用於通過運行存儲在所述第四存儲器中的所述應用程式,實現以下功能:接收密鑰請求,所述密鑰請求中攜帶第一網元的標識、第二網元的標識和業務參數的至少一個,所述密鑰請求由所述第一網元、所述第二網元、網絡控制中心、或者業務伺服器發送;獲取業務密鑰,所述業務密鑰用於對所述第一網元和所述第二網元之間傳輸的數據進行加密和/或完整性保護;使用所述密鑰管理中心與所述第二網元之間的共享密鑰對所述業務密鑰及所述第一類密鑰參數組成的字符串進行加密,得到令 牌;其中,所述第一類密鑰參數為所述密鑰管理中心使用所述共享密鑰計算所述業務密鑰的消息認證碼,或者,所述密鑰管理中心使用所述共享密鑰計算所述業務密鑰與所述業務密鑰的信息組成的字符串的消息認證碼,其中,所述業務密鑰的信息包括以下任意一項:所述業務密鑰的使用實體標識、所述業務密鑰的有效期、所述業務密鑰的生成時間、應用所述業務密鑰的業務的信息及業務鏈路的信息;發送所述令牌,所述令牌用於由所述第一網元獲取後向所述第二網元轉發,以使得所述第二網元依據所述令牌獲得所述業務密鑰。

本申請實施例中所述的密鑰管理中心、網元及控制中心,通過上述圖5、圖6、圖7、圖8、圖9或圖10所示的方法進行交互,能夠生成業務密鑰,從而端到端的安全通信的實現奠定基礎。

本說明書中各個實施例採用遞進的方式描述,每個實施例重點說明的都是與其它實施例的不同之處,各個實施例之間相同或相似部分互相參見即可。

對所公開的實施例的上述說明,使本領域專業技術人員能夠實現或使用本申請。對這些實施例的多種修改對本領域的專業技術人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本申請的範圍的情況下,在其它實施例中實現。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀