1.一種基于信息安全技術(shù)的車輛遠(yuǎn)程固件更新方法,其特征在于,包括以下步驟:
1)遠(yuǎn)程服務(wù)器生成一固件更新請求消息,根據(jù)該固件更新請求消息的消息摘要生成第一哈希值,對所述固件更新請求消息和第一哈希值進(jìn)行對稱加密封裝為第一消息,發(fā)送給目標(biāo)ECU;
2)目標(biāo)ECU對所述第一消息進(jìn)行對稱解密,根據(jù)解密獲得的固件更新請求消息的消息摘要計算第二哈希值,判斷所述第二哈希值與所述第一哈希值是否相同,若是,則執(zhí)行步驟3),若否,則忽略所述第一消息;
3)目標(biāo)ECU生成一密鑰K,將該密鑰K對稱加密后發(fā)送給遠(yuǎn)程服務(wù)器;
4)遠(yuǎn)程服務(wù)器通過所述密鑰K對新固件及與所述新固件對應(yīng)的第三哈希值進(jìn)行加密,生成第二消息發(fā)送給目標(biāo)ECU;
5)目標(biāo)ECU對所述第二消息進(jìn)行解密,根據(jù)解密獲得的新固件計算第四哈希值,判斷所述第四哈希值與所述第三哈希值是否相同,若是,則將所述新固件下載至目標(biāo)ECU的RAM中,執(zhí)行步驟6),若否,則忽略所述第二消息;
6)目標(biāo)ECU對新固件進(jìn)行燒寫。
2.根據(jù)權(quán)利要求1所述的基于信息安全技術(shù)的車輛遠(yuǎn)程固件更新方法,其特征在于,所述遠(yuǎn)程服務(wù)器與目標(biāo)ECU之間的對稱密鑰在目標(biāo)ECU出廠時設(shè)置。
3.根據(jù)權(quán)利要求1所述的基于信息安全技術(shù)的車輛遠(yuǎn)程固件更新方法,其特征在于,所述步驟3)中,目標(biāo)ECU對密鑰K和與該密鑰K對應(yīng)的第五哈希值進(jìn)行加密后送給遠(yuǎn)程服務(wù)器,遠(yuǎn)程服務(wù)器對所述第五哈希值進(jìn)行驗證,在驗證通過后向目標(biāo)ECU發(fā)送確認(rèn)消息。
4.根據(jù)權(quán)利要求3所述的基于信息安全技術(shù)的車輛遠(yuǎn)程固件更新方法,其特征在于,所述確認(rèn)消息為由帶有對應(yīng)哈希值的加密消息。
5.根據(jù)權(quán)利要求1所述的基于信息安全技術(shù)的車輛遠(yuǎn)程固件更新方法,其特征在于,在執(zhí)行所述步驟6)之前,驗證新固件的安全性,具體為:
通過串口偵聽以及通信協(xié)議的分析,獲得新固件傳輸過程中的二進(jìn)制數(shù)據(jù),將二進(jìn)制數(shù)據(jù)進(jìn)行哈希計算得到第六哈希值,判斷所述第六哈希值與第三哈希值是否相同,若是,是判定新固件安全,若否,則判定新固件不安全。
6.一種基于信息安全技術(shù)的車輛遠(yuǎn)程固件更新裝置,其特征在于,該更新裝置設(shè)置于車輛通信系統(tǒng)中,所述車輛通信系統(tǒng)包括通過無線網(wǎng)絡(luò)連接的遠(yuǎn)程服務(wù)器和目標(biāo)ECU,所述更新裝置包括設(shè)置于目標(biāo)ECU中的加密模塊和第一通信模塊以及設(shè)置于遠(yuǎn)程服務(wù)器內(nèi)的第二通信模塊,其中,
所述加密模塊生成與遠(yuǎn)程服務(wù)器通信的對稱密鑰和用于新固件加密的密鑰K;
所述第二通信模塊利用所述對稱密鑰向目標(biāo)ECU發(fā)送加密的固件更新請求消息,并在所述固件更新請求消息被接收后利用密鑰K向目標(biāo)ECU發(fā)送加密的新固件;
所述第一通信模塊解密所述固件更新請求消息和新固件,在利用哈希值驗證所述固件更新請求消息和新固件安全后,將所述新固件下載至目標(biāo)ECU的RAM中。
7.根據(jù)所述權(quán)利要求6所述的一種基于信息安全技術(shù)的車輛遠(yuǎn)程固件更新裝置,其特征在于,所述第二通信模塊包括:
更新消息生成單元,生成一固件更新請求消息,根據(jù)該固件更新請求消息的消息摘要生成第一哈希值,根據(jù)對稱密鑰對所述固件更新請求消息和第一哈希值進(jìn)行對稱加密封裝為第一消息,發(fā)送給目標(biāo)ECU;
新固件發(fā)送單元,在接收到經(jīng)驗證后的密鑰K時響應(yīng),通過所述密鑰K對新固件及與所述新固件對應(yīng)的第三哈希值進(jìn)行加密,生成第二消息發(fā)送給目標(biāo)ECU。
8.根據(jù)所述權(quán)利要求7所述的一種基于信息安全技術(shù)的車輛遠(yuǎn)程固件更新裝置,其特征在于,所述第一通信模塊包括:
更新消息驗證單元,對所述第一消息進(jìn)行對稱解密,根據(jù)解密獲得的固件更新請求消息的消息摘要計算第二哈希值,判斷所述第二哈希值與所述第一哈希值是否相同;
固件密鑰發(fā)送單元,在所述更新消息驗證單元的判斷結(jié)果為是時響應(yīng),將密鑰K對稱加密后發(fā)送給遠(yuǎn)程服務(wù)器;
固件驗證單元,對所述第二消息進(jìn)行解密,根據(jù)解密獲得的新固件計算第四哈希值,判斷所述第四哈希值與所述第三哈希值是否相同;
固件下載單元,在所述固件驗證單元的判斷結(jié)果為是時響應(yīng),將所述新固件下載至目標(biāo)ECU的RAM中,對新固件進(jìn)行燒寫。
9.根據(jù)所述權(quán)利要求8所述的一種基于信息安全技術(shù)的車輛遠(yuǎn)程固件更新裝置,其特征在于,該更新裝置還包括:
信任鏈建立模塊,將新固件由第一通信模塊發(fā)送至加密模塊,通過串口偵聽以及通信協(xié)議的分析,獲得新固件傳輸過程中的二進(jìn)制數(shù)據(jù),將二進(jìn)制數(shù)據(jù)進(jìn)行哈希計算得到第六哈希值,判斷所述第六哈希值與第三哈希值是否相同,若是,是判定新固件安全,若否,則判定新固件不安全;
在判定新固件安全后對新固件進(jìn)行燒寫。