一種密鑰信息的發送和接收方法、設備及系統的制作方法
【技術領域】
[0001] 本發明涉及通信技術領域,特別涉及一種密鑰信息的發送和接收方法、設備及系 統。
【背景技術】
[0002] 車聯網技術的主要應用目的是為了減少交通事故的發生。在車聯網系統中,車載 設備的n-Board化it, 0BU)用于監控車輛的位置及行駛信息并向周圍車輛廣播送些信息, 同時該車輛還將接收其他車輛發送的信息。OBU將分析本車及其他車輛的行駛信息,并將可 能的交通威脅及時通知給駕駛員。
[0003] 出于安全考慮,在車聯網系統中所播發的消息都要經過數字簽名。車輛用于簽發 其所發送的消息的證書稱為消息證書,車輛所擁有的權利保存在消息證書中。車聯網消息 證書將隨簽發的消息一起發送給接收者,W便消息接收者能夠驗證收到的消息。消息證書 含有用于驗證消息簽名的公鑰和發送者的權利描述。消息接收者收到消息后,首先驗證該 消息證書的有效性,然后利用收到的證書驗證該消息的有效性。接收者還可W通過分析消 息證書中的權利描述確定該車輛是否是具有特殊通行權的車輛,若是,則接收者可W通過 顯示屏或語音等向駕駛者提供相應信息,W便車輛駕駛者能夠決定是否采取避讓措施。
[0004] 目前所采用的安全方案都是基于非對稱加密算法的公鑰證書技術,即應用上述數 字簽名技術來保證信息的完整性,認證性,不可否認性,并采用匿名證書技術來保護用戶的 隱私。然而,非對稱加密算法的缺點是加解密速度慢,為了達到所需的操作速度實現成本 高。所W人們也在考慮使用基于對稱加密算法的安全方案。為實現在車聯網主動安全系統 中使用基于對稱加密算法的安全機制,亟需解決的問題是:將車聯網系統中基于對稱加密 算法消息安全播發技術方案中使用的密鑰下發給0BU。但是,對于車聯網系統中基于對稱加 密算法消息安全播發技術方案中使用的密鑰的發布,目前還沒有明確的技術方案。
【發明內容】
[0005] 本發明實施例提供了一種密鑰信息的發送和接收方法、設備,實現了基于對稱加 密算法消息安全播發技術方案中使用的密鑰的發布。
[0006] 本發明實施例提供的一種密鑰信息的發送方法,該方法包括:
[0007] 密鑰分發節點邸N與車載設備0腳建立通信連接后,接收所述0腳發送的密鑰請 求消息,所述密鑰請求消息用于請求所述KDN發布對稱加密算法中使用的消息組密鑰的相 關信息;
[000引所述KDN生成包含所述消息組密鑰的相關信息的密鑰應答消息,并將所述密鑰應 答消息發送給所述OBU ;
[0009] 所述KDN接收到所述OBU針對所述密鑰應答消息的確認應答消息后,釋放與所述 OBU建立的通信連接。
[0010] 較佳地,所述消息組密鑰的相關信息包括;密鑰管理中必KMC為至少一個邸N生成 的消息組密鑰記錄;
[0011] 其中,所述消息組密鑰記錄包括:所述消息組密鑰、和使用所述消息組密鑰的加解 密算法。
[0012] 進一步,所述消息組密鑰記錄還包括W下信息中的至少一種:
[0013] 所述KDN的標識信息、所述消息組密鑰的標識信息、使用所述消息組密鑰的有效 時間信息、使用所述消息組密鑰的有效地理區域信息、W及密鑰管理中必KMC對所述消息 組密鑰記錄進行簽名處理后得到的數字簽名信息。
[0014] 較佳地,所述消息組密鑰的相關信息中的消息組密鑰記錄包括:
[001引所述KMC為所述邸N生成的消息組密鑰記錄;或者
[0016] 所述KMC為所述邸N生成的消息組密鑰記錄、W及所述KMC為所述邸N相鄰的邸N 生成的消息組密鑰記錄。
[0017] 較佳地,所述密鑰請求消息中包括:
[0018] 第一公鑰加密密文,其中,所述第一公鑰加密密文為所述OBU使用所述KDN的公鑰 證書中用于數據加密的公鑰,對OMJ對稱加密密鑰進行加密處理后得到的;
[0019] 第一對稱加密密文,其中,所述第一對稱加密密文為所述OBU使用所述OBU對稱加 密密鑰,對所述KDN生成的KDN隨機數、所述OBU生成的0腳隨機數和所述0腳的公鑰證書 進行加密處理后得到的;
[0020] 第一消息數字簽名,其中,所述第一消息數字簽名為所述OBU使用與所述OBU的公 鑰證書中用于驗證數字簽名的公鑰對應的私鑰,對包含所述第一公鑰加密密文和所述第一 對稱加密密文的信息進行數字簽名處理后得到的;
[0021] 其中,所述OBU對稱加密密鑰為所述OBU生成的用于數據加密的密鑰。
[0022] 進一步,所述密鑰請求消息中還包括;用于表示所述密鑰請求消息類型的第一類 型信息、和/或用于表示使用所述OBU對稱加密密鑰的加/解密算法的第一對稱加密算法;
[0023] 其中,所述第一消息數字簽名為所述OMJ使用與所述OBU的公鑰證書中用于驗證 數字簽名的公鑰對應的私鑰,對包含所述第一類型信息和所述第一對稱加密算法中的至少 一個信息、所述第一公鑰加密密文、W及所述第一對稱加密密文的信息進行數字簽名處理 后得到的。
[0024] 在實施中,所述KDN接收到0腳發送的密鑰請求消息之后,所述KDN生成包含所述 消息組密鑰的相關信息的密鑰應答消息之前,該方法還包括;所述KDN對所述密鑰請求消 息進行驗證;
[00巧]所述KDN生成包含所述消息組密鑰的相關信息的密鑰應答消息,包括;在所述KDN 對所述密鑰請求消息的驗證通過后,所述KDN生成包含所述消息組密鑰的相關信息的密鑰 應答消息。
[0026] 較佳地,所述KDN對所述密鑰請求消息進行驗證,包括:
[0027] 所述KDN使用與所述KDN的公鑰證書中用于數據加密的公鑰對應的私鑰,對所述 密鑰請求消息中的第一公鑰加密密文進行解密,W獲取所述OBU對稱加密密鑰;
[0028] 所述KDN使用所述OBU對稱加密密鑰,對所述密鑰請求消息中的第一對稱加密密 文進行解密,W獲取KDN隨機數、0腳隨機數和所述0腳的公鑰證書;
[0029] 所述KDN在判斷出所述第一對稱加密密文中攜帶的KDN隨機數與所述KDN向所述 OBU已發送的KDN隨機數相同、所述OBU的公鑰證書在有效期內且為合法證書、W及根據所 述OBU的公鑰證書中用于驗證數字簽名的公鑰確定出所述第一消息數字簽名有效后,確定 所述密鑰請求消息的驗證通過。
[0030] 基于上述任一實施例,所述密鑰應答消息中包括:
[0031] 第二公鑰加密密文,其中,所述第二公鑰加密密文為所述KDN使用所述密鑰請求 消息中攜帶的所述OBU的公鑰證書中用于數據加密的公鑰,對KDN對稱加密密鑰進行加密 處理后得到的;
[0032] 第二對稱加密密文,其中,所述第二對稱加密密文為所述KDN使用所述KDN對稱加 密密鑰,對所述密鑰請求消息中攜帶的所述OBU生成的OBU隨機數和對稱加密算法中使用 的消息組密鑰的相關信息進行加密處理后得到的;
[0033] 第二消息數字簽名,其中,所述第二消息數字簽名為所述KDN使用與所述KDN的公 鑰證書中用于驗證數字簽名的公鑰對應的私鑰,對包含所述第二公鑰加密密文和所述第二 對稱加密密文的信息進行數字簽名處理后得到的;
[0034] 其中,所述KDN對稱加密密鑰為所述KDN生成的用于數據加密的密鑰。
[0035] 進一步,所述密鑰應答消息中還包括;用于表示所述密鑰應答消息類型的第二類 型信息、和/或用于表示使用所述KDN對稱加密密鑰的加/解密算法的第二對稱加密算法;
[0036] 其中,所述第二消息數字簽名為所述KDN使用與所述KDN的公鑰證書中用于驗證 數字簽名的公鑰對應的私鑰,對包含所述第二類型信息和所述第二對稱加密算法中的至少 一個信息、所述第二公鑰加密密文、W及所述第二對稱加密密文的信息進行數字簽名處理 后得到的。
[0037] 基于上述任一實施例,所述KDN接收到所述0腳發送的密鑰請求消息之前,該方法 還包括:
[0038] 所述KDN接收所述0腳發送的證書請求消息,所述證書請求消息用于獲取所述KDN 的公鑰證書;
[0039] 所述邸N生成邸N隨機數,W及生成包含自身的公鑰證書和所述邸N隨機數的證 書應答消息;W及
[0040] 所述KDN將所述證書應答消息發送給所述0BU。
[0041] 本發明實施例提供的一種密鑰信息的接收方法,該方法包括:
[0042] 車載設備0腳與所在小區所屬的密鑰分發節點KDN建立通信連接后,向所述KDN 發送密鑰請求消息,所述密鑰請求消息用于請求KDN發布對稱加密算法中使用的消息組密 鑰的相關信息;
[0043] 所述OBU接收所述KDN返回的針對所述密鑰請求消息的密鑰應答消息,并從所述 密鑰應答消息中獲取所述消息組密鑰的相關信息;
[0044] 所述OBU向所述KDN返回針對所述密鑰應答消息的確認應答消息,并釋放與所述 邸N建立的通信連接。
[0045] 較佳地,所述消息組密鑰的相關信息包括;密鑰管理中必KMC為至少一個KDN生成 的消息組密鑰記錄;
[0046] 其中,所述消息組密鑰記錄包括:所述消息組密鑰、和使用所述消息組密鑰的加解 密算法。
[0047] 進一步,所述消息組密鑰記錄還包括W下信息中的至少一種:
[0048] 所述KDN的標識信息、所述消息組密鑰的標識信息、使用所述消息組密鑰的有效 時間信息、使用所述消息組密鑰的有效地理區域信息、W及密鑰管理中必KMC對所述消息 組密鑰記錄進行簽名處理后得到的數字簽名信息。
[0049] 較佳地,所述消息組密鑰的相關信息中的消息組密鑰記錄包括:
[0050] 所述KMC為所述邸N生成的消息組密鑰記錄;或者
[0051] 所述KMC為所述邸N生成的消息組密鑰記錄、W及所述KMC為所述邸N相鄰的邸N 生成的消息組密鑰記錄。
[0052] 較佳地,所述密鑰請求消息中包括:
[0053] 第一公鑰加密密文,其中,所述第一公鑰加密密文為所述OBU使用所述KDN的公鑰 證書中用于數據加密的公鑰,對OMJ對稱加密密鑰進行加密處理后得到的;
[0054] 第一對稱加密密文,其中,所述第一對稱加密密文為所述OBU使用所述OBU對稱加 密密鑰,對所述KDN生成的KDN隨機數、所述OBU生成的0腳隨機數和所述0腳的公鑰證書 進行加密處理后得到的;
[00巧]第一消息數字簽名,其中,所述第一消息數字簽名為所述OBU使用與所述OBU的公 鑰證書中用于驗證數字簽名的公鑰對應的私鑰,對包含所述第一公鑰加密密文和所述第一 對稱加密密文的信息進行數字簽名處理后得到的;
[0056] 其中,所述0腳對稱加密密鑰為所述0腳生成的用于數據加密的密鑰。
[0057] 進一步,所述密鑰請求消息中還包括;用于表示所述密鑰請求消息類型的第一類 型信息、和/或用于表示使用所述OBU對稱加密密鑰的加/解密算法的第一對稱加密算法;
[0058] 其中,所述第一消息數字簽名為所述OMJ使用與所述OBU的公鑰證書中用于驗證 數字簽名的公鑰對應的私鑰,對包含所述第一類型信息和所述第一對稱加密算法中的至少 一個信息、所述第一公鑰加密密文、W及所述第一對稱加密密文的信息進行數字簽名處理 后得到的。
[0059] 較佳地,所述密鑰應答消息中包括:
[0060] 第二公鑰加密密文,其中,所述第二公鑰加密密文為所述KDN使用所述密鑰請求 消息中攜帶的所述OBU的公鑰證書中用于數據加密的公鑰,對KDN對稱加密密鑰進行加密 處理后得到的;
[0061] 第二對稱加密密文,其中,所述第二對稱加密密文為所述KDN使用所述KDN對稱加 密密鑰,對所述密鑰請求消息中攜帶的所述OBU生成的OBU隨機數和對稱加密算法中使用 的消息組密鑰的相關信息進行加密處理后得到的;
[0062] 第二消息數字簽名,其中,所述第二消息數字簽名為所述邸N使用與所述邸N的公 鑰證書中用于驗證數字簽名的公鑰對應的私鑰,對包含所述第二公鑰加密密文和所述第二 對稱加密密文的信息進行數字簽名處理后得到的;
[0063] 其中,所述KDN對稱加密密鑰為所述KDN生成的用于數據加密的密鑰。
[0064] 進一步,所述密鑰應答消息中還包括;用于表示所述密鑰應答消息類型的第二類 型信息、和/或用于表示使用所述KDN對稱加密密鑰的加/解密算法的第二對稱加密算法;
[0065] 其中,所述第二消息數字簽名為所述OMJ使用與所述OBU的公鑰證書中用于驗證 數字簽名的公鑰對應的私鑰,對包含所述第二類型信息和所述第二對稱加密算法中的至少 一個信息、所述第二公鑰加密密文、W及所述第二對稱加密密文的信息進行數字簽名處理 后得到的。
[0066] 在實施中,所述OBU接收到所述KDN發送的密鑰應答消息之后,所述OBU向所述 KDN返回所述確認應答消息之前,該方法還包括:
[0067] 所述OBU對所述密鑰應答消息進行驗證;
[0068] 在所述OMJ對所述密鑰應答消息的驗證通過后,所述OMJ生成針對所述密鑰應答 消息的確認應答消息。
[0069] 較佳地,所述OBU對所述密鑰應答消息進行驗證,包括:
[0070] 所述0腳使用所述KDN的公鑰證書中用于驗證數字簽名的公鑰對所述密鑰應答消 息中的第二消息數字簽名進行驗證;
[0071] 若驗證通過,所述OMJ使用與所述OBU的公鑰證書中用于數據加密的公鑰對應的 私鑰,對所述密鑰應答消息中的第二公鑰加密密文進行解密,W獲取所述KDN對稱加密密 鑰;
[0072] 所述OBU使用所述KDN對稱加密密鑰,對所述密鑰應答消息中的第二對稱加密密 文進行解密,W獲取OBU隨機數和所述消息組密鑰的相關信息;
[0073] 所述OBU在判斷出所述第二對稱加密密文中攜帶的OBU隨機數與所述OBU向所述 KDN已發送的OBU隨機數相同后,使用KMC的公鑰證書中用于驗證數字簽名的公鑰對所述消 息組密鑰的相關信息中包含的消息組密鑰記錄進行驗證,并在驗證通過后,確定所述密鑰 應答消息的驗證通過,并保存所述消息組密鑰的相關信息中包含的消息組密鑰記錄。
[0074] 基于上述任一實施例,所述0腳與所述KDN建立通信連接之后,所述OBU向所述 KDN發送密鑰請求消息之前,該方法還包括:
[00巧]所述OBU向所述KDN發送證書請求消息,所述證書請求消息用于獲取所述KDN的 公鑰證書;
[0076] 所述0腳接收所述KDN返回的證書應答消息,其中,所述證書應答消息中包括所述 邸N生成邸N隨機數和所述邸N的公鑰證書。
[0077] 本發明實施例提供的一種密鑰分發節點邸N,包括:
[0078] 第一模塊,用于在所屬的KDN與車載設備0腳建立通信連接后,接收所述0腳發送 的密鑰請求消息,所述密鑰請求消息用于請求所述KDN發布對稱加密算法中使用的消息組 密鑰的相關信息;
[0079] 第二模塊,用于生成包含所述消息組密鑰的相關信息的密鑰應答消息,并將所述 密鑰應答消息發送給所述OBU ;
[0080] 第H模塊,用于接收到所述OBU針對所述密鑰應答消息的確認應答消息后,釋放 與所述OMJ建立的通信連接。
[0081] 較佳地,所述消息組密鑰的相關信息包括;密鑰管理中必KMC為至少一個邸N生成 的消息組密鑰記錄;
[0082] 其中,所述消息組密鑰記錄包括:所述消息組密鑰、和使用所述消息組密鑰的加解 密算法。
[0083] 較佳地,所述密鑰請求消息中包括:
[0084] 第一公鑰加密密文,其中,所述第一公鑰加密密文為所述OBU使用所述KDN的公鑰 證書中用于數據加密的公鑰,對OMJ對稱加密密鑰進行加密處理后得到的;
[0085] 第一對稱加密密文,其中,所述第一對稱加密密文為所述OBU使用所述OBU對稱加 密密鑰,對所述KDN生成的KDN隨機數、所述OBU生成的0腳隨機數和所述0腳的公鑰證書 進行加密處理后得到的;
[0086] 第一消息數字簽名,其中,所述第一消息數字簽名為所述OBU使用與所述OBU的公 鑰證書中用于驗證數字簽名的公鑰對應的私鑰,對包含所述第一公鑰加密密文和所述第一 對稱加密密文的信息進行數字簽名處理后得到的;
[0087] 其中,所述0腳對稱加密密鑰為所述0腳生成的用于數據加密的密鑰。
[0088] 在實施中,所述第二模塊具體用于:
[0089] 對所述密鑰請求消息進行驗證;W及在對所述密鑰請求消息的驗證通過后,生成 包含所述消息組密鑰的相關信息的密鑰應答消息。
[0090] 較佳地,所述第二模塊對所述密鑰請求消息進行驗證,包括:
[0091] 使用與所述KDN的公鑰證書中用于數據加密的公鑰對應的私鑰,對所述密鑰請求 消息中的第一公鑰加密密文進行解密,W獲取所述OBU對稱加密密鑰;使用所述OBU對稱加 密密鑰,對所述密鑰請求消息中的第一對稱加密密文進行解密,W獲取KDN隨機數、OBU隨 機數和所述OBU的公鑰證書;在判斷出所述第一對稱加密密文中攜帶的KDN隨機數與所述 第一模塊向所述OBU已發送的KDN隨機數相同、所述0腳的公鑰證書在有效期內且為合法 證書、W及根據所述OBU的公鑰證書中用于驗證數字簽名的公鑰確定出所述第一消息數字 簽名有效后,確定所述密鑰請求消息的驗證通過。
[0092] 基于上述任一實施例,所述密鑰應答消息中包括:
[0093] 第二公鑰加密密文,所述第二公鑰加密密文為所述第二模塊使用所述密鑰請求消 息中攜帶的所述OBU的公鑰證書中用于數據加密的公鑰,對KDN對稱加密密鑰進行加密處 理后得到的;
[0094] 第二對稱加密密文,所述第二對稱加密密文為所述第二模塊使用所述KDN對稱加 密密鑰,對所述密鑰請求消息中攜帶的所述OBU生成的OBU隨機數和對稱加密算法中使用 的消息組密鑰的相關信息進行加密處理后得到的;
[0095] 第二消息數字簽名,所述第二消息數字簽名為所述第二模塊使用與所述KDN的公 鑰證書中用于驗證數字簽名的公鑰對應的私鑰,對包含所述第二公鑰加密密文和所述第二 對稱加密密文的信息進行數字簽名處理后得到的;
[0096] 其中,所述KDN對稱加密密鑰為所述第二模塊生成的用于數據加密的密鑰。
[0097] 基于上述任一實施例,所述第一模塊接收到所述OBU發送的密鑰請求消息之前, 還用于:
[0098] 接收所述0腳發送的證書請求消息,所述證書請求消息用于獲取所述KDN的公鑰 證書;生成KDN隨機數,W及生成包含自身的公鑰證書和所述KDN隨機數的證書應答消息; W及將所述證書應答消息發送給所述0BU。
[0099] 本發明實施例提供的另一種邸N,包括:
[0100] 處理器,用于讀取存儲器中的程序,執行下列過程:
[0101] 在所屬的KDN與OBU建立通信連接后,通過收發機接收所述OBU發送的密鑰請求 消息,所述密鑰請求消息用于請求所述KDN發布對稱加密算法中使用的消息組密鑰的相關 信息;生成包含所述消息組密鑰的相關信息的密鑰應答消息,并通過收發機將所述密鑰應 答消息發送給所述OBU ;通過收發機接收到所述OBU針對所述密鑰應答消息的確認應答消 息后,釋放與所述OMJ建立的通信連接;
[0102] 收發機,用于在處理器的控制下接收和發送數據。
[010引較佳地,所述消息組密鑰的相關信息包括;密鑰管理中必KMC為至少一個邸N生成 的消息組密鑰記錄;
[0104] 其中,所述消息組密鑰記錄包括:所述消息組密鑰、和使用所述消息組密鑰的加解 密算法。
[0105] 較佳地,所述密鑰請求消息中包括:
[0106] 第一公鑰加密密文,其中,所述第一公鑰加密密文為所述0腳使用所述KDN的公鑰 證書中用于數據加密的公鑰,對OMJ對稱加密密鑰進行加密處理后得到的;
[0107] 第一對稱加密密文,其中,所述第一對稱加密密文為所述OMJ使用所述OMJ對稱加 密密鑰,對所述KDN生成的KDN隨機數、所述OBU生成的0腳隨機數和所述0腳的公鑰證書 進