孫璐,董曉玲,付金勇,張永剛
(北京汽車股份有限公司汽車研究院,北京 101300)
當前,汽車產業與信息通信技術深度融合,汽車產品加快向智能化和網聯化方向發展,在滿足交通出行的基礎上,汽車轉變為大型移動智能終端、儲能單元和數字空間。到2023年,智能網聯汽車預計將占全世界所有乘用車的1/4;到2025年,智能網聯汽車占全球汽車市場近86%[1]。
在這一過程中,車輛接口逐步開放,車載通信總線技術不斷更迭,CANFD和以太網逐漸成為車載總線的主體,在這一發展過程中,安全事故頻繁發生,寶馬汽車“Connected Drive”功能漏洞造成的大規模遠程修復、JEEP 汽車可遠程破解導致140 萬輛汽車被召回[1],科恩實驗室成功攻破特斯拉的Autopilot駕駛系統,對駕駛判斷結果進行干預,對車輛信息安全的保障成為車輛開放接口后需要重點保護的內容。國際知名汽車信息安全研究組織Upstream Security發布了2021年全球汽車信息安全報告,對比上一年度,基于服務的信息安全事件有了大幅度增加,2010—2020年的頂級攻擊量分解[1]如圖1所示。

圖1 2010—2020年的頂級攻擊量分解
信息安全指保護、維持信息的安全性、完整性和可用性,傳統車載網絡大多以CAN通信為主,廣播式明文傳輸方式,缺乏加密認證機制,在信息娛樂域和自動駕駛域信息量急劇增加的新型電子電器架構需求的大背景下[2-3],有效地混合網絡信息安全通信系統設計,在車載網絡傳輸的真實性、可核查性、抗抵賴性、可靠性等性質方面的保障,在OEM的系統設計過程中,需要在設計初期進行綜合性考慮,結合硬件、軟件綜合需求,滿足網絡傳輸實時性要求。
采用高速車載Ethernet和CANFD通信技術為主干網和域控制器的新型架構,關鍵系統采用冗余設計,支撐不同配置的車型使用,滿足智能網聯汽車的高實時性、高安全性和高可靠性的技術要求,整車分為6個域,共約80余個控制器節點,可以拓展至100個節點,具體劃分如圖2所示。

圖2 混合網絡拓撲設計
整車采用Ethernet和CANFD作為主干網的拓撲結構形式,關鍵系統采用冗余設計,支撐不同配置的車型使用,滿足智能網聯汽車的高實時性、高安全性和高可靠性的技術要求。高速的車載以太網和CANFD新型技術,滿足大數據量和高實時性通信傳輸需求;同時兼容傳統的CAN、LIN和LVDS通信方式,支撐不同配置車型搭載使用。
在具備Ethenet和CANFD的車內混合網絡中,基于AutoSAR標準的SecOC模塊可以進行完整性和實時性的驗證。
SecOC模塊提供了車內多個控制器之間基于協議數據單元(PDU)層針對敏感數據的認證機制,實現基礎要求發送方和接收方都具備SecOC模塊,并提供上下層PduR應用程序編程接口,SecOC模塊作為AUTOSAR軟件架構下的基礎模塊集成在AUTOSAR PduR 層面上,AUTOSAR 標準中,PduR模塊負責將收發到的需要安全保護的I-PDU路由到SecOC模塊。然后,SecOC模塊負責處理信息安全相關信息,將結果以IPDU的形式傳回PduR并交由其繼續發送。SecOC模塊目前支持對CAN總線和FlexRay 總線加密和驗證功能。在新型混合網絡架構中,CANFD總線節點端對端采用SecOC校驗機制,來保證信號抵抗篡改。
基于SecOC模塊的ECU之間的通信過程,需要SecOC模塊與PduR模塊之間的交互,在發送端,SecOC模塊通過增加認證信息,對發送的I-PDU來構建一個安全的I-PDU,認證信息通過增加認證的MAC值和FV值,綜合硬件成本、協議棧部署情況等多方面因素,FV可以采用單一Counter、多Counter,Timestamp的形式來進行。在接收端,SecOC檢查FV,并確認I-PDU的真實性,接收和發動端需要對FV的構建進行協商。
該系統的主要目的是傳輸具有真實性且被FV保護的消息。因此,發送方需要使用SecOC 密鑰來計算數據上的MAC,并管理所傳輸的FV。接收方使用相同的數據和SecOC 密鑰以及自己的FV作為輸入來驗證MAC值。當且僅當得到的MAC值相等時,驗證成功。消息的發送和驗證過程如圖3所示。

圖3 MAC認證和FV確認
在安全I-PDU中,MAC值為特定的認證字符串,通過密鑰、安全I-PDU的數據標識符、校驗Payload和FV,如圖4所示。

圖4 MAC和FV的截取
MAC提供了數據是由合法的源頭產生,并提供給特定的接收ECU。根據驗證算法,生成MAC值,調用Truncation功能,截取具備符合總線傳輸長度的MAC值和FV值,構建安全I-PDU。
新鮮度管理提供FV,該值會在協議數據單元(PDU)計算消息認證碼(MAC)中使用。由于AutoSAR中未指定新鮮度管理組件,并且SecOC 是跨ECU 系統,因此安全性管理由SecOC 解決方案提供。此外,由于發送方和接收方執行加密操作,FV必須由新鮮度管理來提供和同步。
SecOC系統中采用對稱密鑰計算MAC值,一般采用AES128 CBC算法,因此,對稱密鑰的保護成為保障整個體系安全運行的關鍵。
密鑰管理保存用以對協議數據單元(PDU)計算消息認證碼(MAC)的密鑰。由于AutoSAR中未指定密鑰管理組件,且SecOC 是跨ECU 的系統,因此密鑰管理由需要進行自定義。因此,安全地注入SecOC 密鑰是基礎,且應該具備密鑰管理后端。由于需要使得一組SecOC ECU 始終共享有效的SecOC 密鑰,并且根據不同的功能進行密鑰組的注入。
目前,為滿足多場景密鑰的使用需求,基于云平臺的KMS部署已經成為普遍應用。KMS為密鑰管理系統,可以根據不同的應用場景,生成不同種類及長度的密鑰,并通過安全傳輸,進行密鑰排放,可以有效地保證密鑰的安全性。結合云平臺KMS,可以實現遠程升級、遠程啟動、安全通信等場景的密鑰管理。因此,在此基礎上,以系統設計的級別,對通信信號進行分組隔離,定義密鑰組,根據混合網絡的通信設計需求,并基于一定周期進行密鑰更新,可以有效保持密鑰組的有效使用。圖5給出了一個基于服務器的對稱密鑰的申請和發放過程。

圖5 帶后臺的KMS的密鑰更新過程
車載ECU為需要進行安全通信的車載模塊,Tbox為車載通信單元,通過4G/5G通信模組與TSP進行通信,通信遵循HTTPS協議,安全通信協議版本需要TLS1.2以上,進行安全通信,對稱密鑰的更新請求及派發過程遵循以下步驟:
(1)參與安全通信的車載ECU通過應用報文發送密鑰更新請求給Tbox;
(2)Tbox驗證請求節點身份,判斷密鑰更新周期是否滿足要求;
(3)Tbox向后臺發送密鑰更新請求;
(4)云平臺生驗證Tbox合法性,成隨機數A發送給Tbox;
(5)Tbox發送密鑰更新請求+隨機數A給車載ECU;
(6)車載ECU接收請求+隨機數A,生成隨機數B,返回請求響應,包含隨機數A、隨機數B、ECU ID及預制CMAC;
(7)Tbox將車載ECU的密鑰更新響應傳遞給后臺;
(8)后臺驗證密鑰更新中所含信息的有效性;
(9)后臺生成一級傳遞密鑰,并傳遞給Tbox;
(10)Tbox接收一級傳遞密鑰,進行混淆算法計算,生成二級傳遞密鑰,并發送給車載ECU;
(11)車載ECU接收二級傳遞密鑰,進行混淆算法計算,生成存儲密鑰,通過校驗,寫入HSM,寫入的密鑰參與SecOC模塊計算,作為通信加解密密鑰使用。
文中詳細介紹了AutoSAR規范下車載安全通信模塊SecOC 的機制,結合新型電子電器架構平臺開發,設計了基于后臺的KMS的安全密鑰更新過程,實現了基于SecOC的混合網絡信息安全通信系統設計規則,該安全防護機制可以有效過濾非法的報文廣播,對發送方進行驗證,很好地保護了車載網絡通信的信息安全。
后期將在此基礎上進行系統設計,評估各節點硬件及軟件成本,并對時延進行測試,確保通信完整性和實時性。