本發明涉及網絡安全,尤其涉及一種通信網絡算法協商方法、裝置、設備、介質及程序產品。
背景技術:
1、隨著互聯網技術快速發展,信息系統的網絡安全風險持續增加,威脅挑戰日益嚴峻,密碼安全是信息安全的重要基礎,可以用于有效保障網絡信息系統的數據安全,因此,密碼技術是保障網絡信息系統的核心技術和重要手段。然而,隨著密碼技術的發展,密碼算法面臨各種安全風險,例如一些密碼算法(比如消息摘要算法(message?digestalgorithm,md5)、安全哈希算法(secure?hash?algorithm,sha)、數據加密標準算法(dataencryption?standard,des)等)容易被破解,一些傳統的公鑰密碼算法(比如非對稱加密算法rsa、橢圓曲線密碼編碼加密算法(elliptic?curves?cryptography,ecc)等)受到量子攻擊,會被破解公鑰獲取私鑰,進而偽造簽名。
2、為了應對量子攻擊,后量子密碼算法(post-quantum?cryptography,pqc)等能夠降低對稱密碼算法的破解難度的加密算法營運而生,且隨著量子計算技術的發展各種應對惡意攻擊的加密算法也越來越多。但是,目前5g通信網絡在完成認證后,在接入層(accessstratum,as)的密鑰推衍主要采用密鑰生成函數(key?derivation?functions,kdf)實現,kdf的底層算法只有hmac-sha256算法,無法支持其他算法,也不支持算法協商,存在密碼算法被破解的風險。
技術實現思路
1、針對現有技術存在的問題,本發明實施例提供一種通信網絡算法協商方法、裝置、設備、介質及程序產品,通過增加第一支持能力來存儲所述用戶設備對接入層的密鑰派生算法的支持狀態,為接入層的密鑰推衍提供了算法協商和多算法的支持,降低密碼算法被破解的風險。
2、第一方面,本發明實施例提供了一種通信網絡算法協商方法,應用于用戶設備,包括:
3、接收網絡設備發送安全命令消息;其中,所述安全命令消息包括第一指示信息和/或第一支持能力,所述第一支持能力用于存儲所述用戶設備對接入層的密鑰派生算法的支持狀態,所述第一指示信息用于指示所述第一支持能力中所述網絡設備所選的密鑰派生算法;
4、將所述第一指示信息指示的密鑰派生算法作為密鑰生成函數的底層算法,開啟無線資源控制完整性保護和/或下行鏈路解密;
5、向所述網絡設備發送安全命令完成消息;其中,所述安全命令完成消息觸發所述網絡設備開啟無線資源控制上行鏈路解密。
6、作為上述方案的改進,所述方法還包括:
7、將所述用戶設備對接入層的密鑰派生算法的支持狀態寫入所述第一支持能力中。
8、作為上述方案的改進,所述第一支持能力采用以下至少一種方式配置:
9、配置在所述用戶設備與接入和移動管理功能網元之間的上行接口;
10、配置在所述接入和移動管理功能網元與所述網絡設備之間的下行接口;
11、配置在ue安全能力的預留字段。
12、作為上述方案的改進,所述安全命令消息還包括:第二指示信息、ue安全能力和無線資源控制標識,所述第二指示信息用于指示所述網絡設備所選的無線資源控制完整性算法;
13、所述開啟無線資源控制完整性保護和/或下行鏈路解密之前,所述方法還包括:
14、根據當前密鑰生成函數的底層算法和派生密鑰,計算第一完整性密鑰;
15、根據所述第二指示信息指示的無線資源控制完整性算法和所述第一完整性密鑰,對所述無線資源控制標識進行第一驗證;
16、對所述安全命令消息中的ue安全能力和第一支持能力進行第二驗證;
17、當通過所述第一驗證和所述第二驗證時,開啟無線資源控制完整性保護和/或下行鏈路解密。
18、作為上述方案的改進,所述對所述安全命令消息中的ue安全能力和第一支持能力進行第二驗證,包括:
19、判斷所述安全命令消息中的ue安全能力和第一支持能力是否與所述用戶設備本地存儲的ue安全能力和第一支持能力一致;
20、當所述安全命令消息中的ue安全能力和第一支持能力與所述用戶設備本地存儲的ue安全能力和第一支持能力一致時,通過第二驗證。
21、作為上述方案的改進,所述將所述用戶設備對接入層的密鑰派生算法的支持狀態寫入所述第一支持能力中之后,還包括:
22、向接入和移動管理功能網元發送初始化注冊請求;
23、其中,所述初始化注冊請求攜帶的ue安全能力和所述第一支持能力,所述ue安全能力包括所述用戶設備對接入層加密和完整性保護算法的支持狀態;所述初始化注冊請求用于指示所述接入和移動管理功能網元在建立與所述用戶設備之間的非接入層安全模式后,向所述網絡設備發送所述用戶設備的安全上下文,所述安全上下文包括所述ue安全能力、所述第一支持能力、派生密鑰。
24、作為上述方案的改進,所述安全命令完成消息包括無線資源控制標識;其中,所述無線資源控制標識是所述用戶設備使用所述第二指示信息指示的無線資源控制完整性算法和所述第一完整性密鑰對所述安全命令消息中的無線資源控制標識進行完整性保護得到。
25、作為上述方案的改進,所述方法還包括:
26、在向所述網絡設備發送安全命令完成消息之后,開啟無線資源控制上行鏈路加密。
27、作為上述方案的改進,所述將所述第一指示信息指示的密鑰派生算法作為密鑰生成函數的底層算法,包括:
28、檢查本地是否存儲有所述第一支持能力;
29、當檢查后到本地存儲有所述第一支持能力且本地存儲的所述第一支持能力中存儲有所述第一指示信息指示的密鑰派生算法的支持狀態時,將所述第一指示信息指示的密鑰派生算法作為密鑰生成函數的底層算法;
30、當檢查到本地未存儲有所述第一支持能力,或本地存儲有所述第一支持能力但本地存儲的所述第一支持能力中所有比特位均存儲第一字符時,將預設的默認密鑰派生算法作為密鑰生成函數的底層算法。
31、第二方面,本發明實施例提供了一種通信網絡算法協商方法,應用于網絡設備,包括:
32、向用戶設備發送安全命令消息;其中,所述安全命令消息包括第一指示信息和/或第一支持能力,所述第一支持能力用于存儲所述用戶設備對接入層的密鑰派生算法的支持狀態,所述第一指示信息用于指示所述第一支持能力中所述網絡設備所選的密鑰派生算法;所述安全命令消息用于指示所述用戶設備將所述第一指示信息指示的密鑰派生算法作為密鑰生成函數的底層算法,開啟無線資源控制完整性保護和/或下行鏈路解密;
33、接收所述用戶設備發送安全命令完成消息,開啟無線資源控制上行鏈路解密。
34、作為上述方案的改進,所述第一支持能力采用以下至少一種方式配置:
35、配置在所述用戶設備與接入和移動管理功能網元之間的上行接口;
36、配置在所述接入和移動管理功能網元與所述網絡設備之間的下行接口;
37、配置在ue安全能力的預留字段。
38、作為上述方案的改進,所述方法還包括:
39、接收接入和移動管理功能網元發送的所述用戶設備的安全上下文;所述安全上行文包括所述用戶設備的ue安全能力、所述第一支持能力、派生密鑰;
40、根據本地預存的安全策略,從所述第一支持能力中選擇最高優先級對應的密鑰派生算法,并將當前選擇的密鑰派生算法作為密鑰生成函數的底層算法;
41、根據所述派生密鑰和當前密鑰生成函數的底層算法,計算第二完整性密鑰;
42、根據所述第二完整性密鑰和所述網絡設備從所述ue安全能力中選中的無線資源控制完整性算法,計算無線資源控制標識,并開始無線資源控制完整性保護過程。
43、作為上述方案的改進,所述安全命令消息還包括:第二指示信息、所述ue安全能力和所述無線資源控制標識,所述第二指示信息用于指示所述網絡設備所選的無線資源控制完整性算法。
44、作為上述方案的改進,所述方法還包括:
45、在向用戶設備發送安全命令消息之后,開啟無線資源控制下行鏈路加密。
46、作為上述方案的改進,所述安全命令完成消息包括無線資源控制標識;其中,所述無線資源控制標識是所述用戶設備使用所述第二指示信息指示的無線資源控制完整性算法和所述第二完整性密鑰對所述安全命令消息中的無線資源控制標識進行完整性保護得到。
47、作為上述方案的改進,所述開啟無線資源控制上行鏈路解密之前,所述方法還包括:
48、根據當前選中的無線資源控制完整性算法和所述第二完整性密鑰,對所述安全命令完成消息中的無線資源控制標識進行第三驗證;
49、當通過所述第三驗證時,開啟無線資源控制上行鏈路解密。
50、第三方面,本發明實施例提供了一種通信網絡算法協商裝置,其特征在于,應用于用戶設備,包括:
51、安全命令消息接收模塊,用于接收網絡設備發送安全命令消息;其中,所述安全命令消息包括第一指示信息和/或第一支持能力,所述第一支持能力用于存儲所述用戶設備對接入層的密鑰派生算法的支持狀態,所述第一指示信息用于指示所述第一支持能力中所述網絡設備所選的密鑰派生算法;
52、完整性保護模塊,用于將所述第一指示信息指示的密鑰派生算法作為密鑰生成函數的底層算法,開啟無線資源控制完整性保護和/或下行鏈路解密;
53、安全命令完成消息發送模塊,用于向所述網絡設備發送安全命令完成消息;其中,所述安全命令完成消息觸發所述網絡設備開啟無線資源控制上行鏈路解密。
54、第四方面,本發明實施例提供了一種通信網絡算法協商裝置,應用于網絡設備,包括:
55、安全命令消息發送模塊,用于向用戶設備發送安全命令消息;其中,所述安全命令消息包括第一指示信息和/或第一支持能力,所述第一支持能力用于存儲所述用戶設備對接入層的密鑰派生算法的支持狀態,所述第一指示信息用于指示所述第一支持能力中所述網絡設備所選的密鑰派生算法;所述安全命令消息用于指示所述用戶設備將所述第一指示信息指示的密鑰派生算法作為密鑰生成函數的底層算法,開啟無線資源控制完整性保護和/或下行鏈路解密;
56、安全命令完成消息接收模塊,用于接收所述用戶設備發送安全命令完成消息,開啟無線資源控制上行鏈路解密。
57、第五方面,本發明實施例提供了一種通信網絡算法協商設備,包括:處理器、存儲器以及存儲在所述存儲器中且被配置為由所述處理器執行的計算機程序,所述處理器執行所述計算機程序時實現如第一方面中任意一項所述的通信網絡算法協商方法或者第二方面中任意一項所述的通信網絡算法協商方法。
58、第六方面,本發明實施例提供了一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機程序,其中,在所述計算機程序運行時控制所述計算機可讀存儲介質所在設備執行如第一方面中任意一項所述的通信網絡算法協商方法或者第二方面中任意一項所述的通信網絡算法協商方法。
59、第七方面,本發明實施例提供了一種計算機程序產品,包括計算機程序/指令,該計算機程序/指令被處理器執行時實現如第一方面中任意一項所述的通信網絡算法協商方法或者第二方面中任意一項所述的通信網絡算法協商方法。
60、在本發明實施例中,通過在用戶設備接入過程中增加通信網絡算法協商,用戶設備接收網絡設備發送安全命令消息;其中,所述安全命令消息包括第一指示信息和/或第一支持能力,所述第一支持能力用于存儲所述用戶設備對接入層的密鑰派生算法的支持狀態,所述第一指示信息用于指示所述第一支持能力中所述網絡設備所選的密鑰派生算法;用戶設備將所述第一指示信息指示的密鑰派生算法作為密鑰生成函數的底層算法,開啟無線資源控制完整性保護和/或下行鏈路解密;用戶設備向所述網絡設備發送安全命令完成消息;其中,所述安全命令完成消息觸發所述網絡設備開啟無線資源控制上行鏈路解密;本發明實施例通過增加第一支持能力來存儲所述用戶設備對接入層的密鑰派生算法的支持狀態,為接入層的密鑰推衍提供了算法協商和多算法的支持,降低密碼算法被破解的風險,建立安全通信。