車載通訊加密方案
疫情當(dāng)下,各種消息滿天飛,不如一起在家看SecOC!!!
通訊加密的必要性
隨著汽車電子的發(fā)展及整車功能復(fù)雜性的提高,車載控制器數(shù)量從之前的寥寥幾個(gè)增加至規(guī)模復(fù)雜的上百個(gè)。基于功能的需求,各個(gè)控制器每時(shí)每刻需要進(jìn)行大量數(shù)據(jù)的交互,數(shù)據(jù)交互的方式也多種多樣,比如Lin、CAN、CANFD、FlexRay 、車載Ethernet等。
其中成本低、可靠性高、應(yīng)用普遍的有Lin、CAN通訊,而FlexRay、車載Ethernet等基于成本因素,目前主要在高端車型中使用(FlexRay后續(xù)得到普遍應(yīng)用的可能性較小,樓主主要認(rèn)為其比較尷尬,首先成本方面接近車載以太網(wǎng)而通訊速率又遠(yuǎn)低于它,而伴隨著未來智能化、網(wǎng)聯(lián)化的趨勢,車載Ethernet在未來得到推廣的可能性要比FlexRay高很多)。
但在目前的車載網(wǎng)絡(luò)中,大部分?jǐn)?shù)據(jù)傳輸都是在沒任何安全措施的情況下進(jìn)行的,即使有安全措施也大都非常簡陋。因此在絕大多數(shù)情況下,控制器基本以原始數(shù)據(jù)的形式進(jìn)行數(shù)據(jù)交互。即使接收節(jié)點(diǎn)能對數(shù)據(jù)進(jìn)行合理性檢查,這些措施對數(shù)據(jù)可靠性的提升也是有限的。接收節(jié)點(diǎn)無法驗(yàn)證數(shù)據(jù)來自于期望的發(fā)送節(jié)點(diǎn)還是其他節(jié)點(diǎn),即無法驗(yàn)證數(shù)據(jù)是否真實(shí)。同時(shí),總線上傳輸?shù)臄?shù)據(jù)也是可以自由訪問的,因此可以通過分析總線上傳輸?shù)脑紨?shù)據(jù)來反推得到其表示的內(nèi)容,這樣的數(shù)據(jù)傳輸既不進(jìn)行保密也不進(jìn)行認(rèn)證。例如應(yīng)用最廣的CAN通訊設(shè)計(jì)之初是沒有考慮過信息安全問題的。其明文傳輸、報(bào)文廣播傳輸、極少網(wǎng)絡(luò)分段等特性,讓進(jìn)入整車網(wǎng)絡(luò)的黑客如同進(jìn)了游樂場,輕松便可以偽造報(bào)文對車輛進(jìn)行控制。
為了給CAN通訊增加一定的安全性,攻城獅們在CAN報(bào)文的負(fù)載中做文章,即在報(bào)文中增加RollingCounter和Checksum進(jìn)行報(bào)文丟幀和數(shù)據(jù)準(zhǔn)確性的檢驗(yàn),RollingCounter就不說了,我個(gè)人感覺就是心理安慰罷了,報(bào)文計(jì)數(shù)符合一定的累加原則就可以仿造,而Checksum的計(jì)算方法大部分OEM定義的也比較簡單,很容易被破解從而對總線的數(shù)據(jù)進(jìn)行篡改,一旦能夠直接訪問車輛的總線,任何人都可以讀取總線上傳輸?shù)脑紨?shù)據(jù),甚至可以截獲這些數(shù)據(jù)并且修改后重新發(fā)送到總線系統(tǒng)中,這毫無疑問會(huì)影響整車的功能和安全性;另一方面,一個(gè)標(biāo)準(zhǔn)CAN報(bào)文的數(shù)據(jù)部分最多有8個(gè)字節(jié),本身需要承載很多車輛運(yùn)行的功能數(shù)據(jù),從中拿出任何Bit用于承載RollingCounter和Checksum都會(huì)對總線的繁忙程度產(chǎn)生負(fù)面影響,因此OEM盡量使用少的Bit位來承載RollingCounter和Checksum,這也讓黑客較容易就可逆向出算法。
所以,加密通信(Cyber Security或Security Onboard Communication)近年來受到了越來越多的關(guān)注,因最近幾年也發(fā)生了很多對車載網(wǎng)絡(luò)的惡意攻擊事件。為了響應(yīng)汽車行業(yè)對數(shù)據(jù)加密和驗(yàn)證的需求,AUTOSAR組織補(bǔ)充了全稱為Secure Onboard Communication(SecOC)的組件,為車載通訊總線引入了一套通信加密和驗(yàn)證的標(biāo)準(zhǔn),可以說SecOC是目前為止車載網(wǎng)絡(luò)上一種有效的信息安全方案。
SecOC介紹
SecOC是在AUTOSAR軟件包中添加的信息安全組件(組件位置及可應(yīng)用的通訊方式如下圖所示),該Feature增加了加解密運(yùn)算、秘鑰管理、新鮮值管理和分發(fā)等一系列的功能和新要求。SecOC模塊在PDU級別上為關(guān)鍵數(shù)據(jù)提供有效可行的身份驗(yàn)證機(jī)制。認(rèn)證機(jī)制與當(dāng)前的AUTOSAR通信系統(tǒng)無縫集成,同時(shí)對資源消耗的影響應(yīng)盡可能小,以便可為舊系統(tǒng)提供附加保護(hù)。該規(guī)范主要使用帶有消息認(rèn)證碼(MAC)的對稱認(rèn)證方法。與不對稱方法相比,它們使用更小的密鑰實(shí)現(xiàn)了相同級別的安全性,并且可以在軟件和硬件中緊湊高效地實(shí)現(xiàn)。但是,規(guī)范提供了兩種方法必要的抽象級別,因此對稱和非對稱身份驗(yàn)證方法都可使用。
1.對稱加密算法
對稱加密算法的加密和解密使用的密匙是相同的,也就是說如果通訊兩方如果使用對稱加密算法來加密通訊數(shù)據(jù),那么通訊雙方就需要都知道這個(gè)密匙,收到通訊數(shù)據(jù)后用這個(gè)密匙來解密數(shù)據(jù)。
2.非對稱加密算法
非對稱算法中用到的密匙有兩個(gè),分別是公匙和私匙,要求通訊雙方都有自己的公匙和私匙,自己公匙加密的數(shù)據(jù)只有自己的私匙才能解開,自己私匙加密的數(shù)據(jù)也只有自己的公匙才能解開。公匙是可以公布在網(wǎng)絡(luò)上的,相當(dāng)于一個(gè)公共的電話簿,可以被其他人獲取到的。
以一個(gè)通信的例子來說明非對稱算法:
A 要和 B 進(jìn)行通信,A在網(wǎng)絡(luò)上獲取到B的公匙,然后把數(shù)據(jù)用B的公匙進(jìn)行加密發(fā)送給B,B收到了數(shù)據(jù)后就用自己的私匙進(jìn)行解密數(shù)據(jù),然后就可以看到數(shù)據(jù)內(nèi)容了,即使在網(wǎng)絡(luò)傳輸中加密數(shù)據(jù)被黑客截取,由于黑客沒有對應(yīng)的私匙,他也無法解密數(shù)據(jù)進(jìn)行查看。
在通信中對稱加密算法比較高效,但是需要告知對方加密鑰匙,在實(shí)際運(yùn)用時(shí)比較麻煩,所以一般都是用非對稱加密算法來加密對稱加密算法的鑰匙,然后發(fā)送給對方,對方收到對稱加密算法的鑰匙后,后續(xù)通信就用對稱加密算法來加密消息內(nèi)容了
若控制器之間實(shí)現(xiàn)SecOC功能,則需要發(fā)送和接收控制器都集成并實(shí)現(xiàn)SecOC模塊。在AUTOSAR中,需要加密保護(hù)的數(shù)據(jù)信息被稱為Authentic I-PDU。SecOC模塊基于Authentic I-PDU和密鑰使用一定的加密算法得到Authenticator(例如 MAC)。Authenticator和Authentic I-PDU再加上一些必要的報(bào)頭即得到Secured I-PDU,Secured I-PDU也可選包含新鮮度值Freshness Value,Secured I-PDU的結(jié)構(gòu)如下圖所示:
其中MAC和新鮮度分別具有不同的作用,在SecOC標(biāo)準(zhǔn)中,AUTOSAR主要基于兩種手段來實(shí)現(xiàn)數(shù)據(jù)的真實(shí)性和完整性的校驗(yàn):基于MAC的身份驗(yàn)證和基于Freshness的防重放攻擊。首先MAC(Message Authentication Code)是保障信息完整性和認(rèn)證的密碼學(xué)方法之一,其中CMAC(Cipher–based Message Authentication Code,CMAC一般用于對稱加密,整車廠可在車輛下線刷寫程序時(shí)靜態(tài)分配密鑰,也可選擇使用云端服務(wù)器動(dòng)態(tài)地給車輛分配密鑰。)是車載總線加密認(rèn)證常用方案。MAC的作用不是防止有效數(shù)據(jù)被泄露,而是為了保護(hù)數(shù)據(jù)不會(huì)被攻擊方篡改,即完成數(shù)據(jù)來源的認(rèn)證。如需保護(hù)通信數(shù)據(jù)不被攻擊方監(jiān)聽,則報(bào)文的有效數(shù)據(jù)還需要進(jìn)行額外的加密。
為了降低重復(fù)攻擊的風(fēng)險(xiǎn),則需要在Secured I-PDU中加入新鮮度值,Freshness Value是一個(gè)根據(jù)一定邏輯不斷更新的數(shù)值,Freshness Value的更新方法多種多樣,AUTOSAR 標(biāo)準(zhǔn)將計(jì)數(shù)器或基于時(shí)間的新鮮度值作為典型選項(xiàng)。具體使用何種和具體的加密方式,以及如何定義新鮮度度其實(shí)并不在標(biāo)準(zhǔn)之內(nèi),這就給OEM有了各自定制化方案的可選余地,因此OEM 在實(shí)施 SecOC 方案時(shí)需要定義和做好兩個(gè)關(guān)鍵部分:新鮮度值管理和密鑰管理。
基于SecOC的通訊加密和認(rèn)證過程如下所示:
在發(fā)送節(jié)點(diǎn),SecOC模塊向待發(fā)送的Authentic I-PDU添加認(rèn)證信息從而創(chuàng)建Secured I-PDU。認(rèn)證信息包括Authenticator(例如CMAC)和可選的Freshness Value。無論Freshness Value是否包含在打包后的Secured I-PDU中,在生成Authenticator期間都會(huì)考慮Freshness Value。
在接收節(jié)點(diǎn),SecOC模塊通過驗(yàn)證收到的Secured I-PDU中包含的Authenticator來判斷Authentic I-PDU的來源。為了實(shí)現(xiàn)認(rèn)證,接收節(jié)點(diǎn)除了需要Authentic I-PDU外還需要知道發(fā)送節(jié)點(diǎn)計(jì)算Authenticator時(shí)使用的Freshness Value。
總結(jié)
車載通訊加密除了AUTOSAR推薦的方案,也有很多私有的定制化方案,其目的都是保證整車通訊的安全性,這在未來的汽車電子發(fā)展中是非常重要的一方面,但是實(shí)施SecOC后,其會(huì)大量占用CAN報(bào)文負(fù)載,對于只有可憐巴巴的8字節(jié)傳統(tǒng)CAN通訊來說可能無福消受了,因認(rèn)證信息的強(qiáng)度和信息長度強(qiáng)相關(guān)。在傳統(tǒng)CAN上應(yīng)用不僅導(dǎo)致總線負(fù)載率提升、通信實(shí)時(shí)性下降,甚至可能影響正常功能,最終既得不到預(yù)想的信息安全強(qiáng)度,又犧牲了相當(dāng)大的CAN通信能力,因此SecOC更適合配合CANFD協(xié)議使用。
參考文獻(xiàn):
1、Autosar 、Vector、EB、CSDN等資料)
請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個(gè)字
圖片新聞
技術(shù)文庫
最新活動(dòng)更多
-
3月27日立即報(bào)名>> 【工程師系列】汽車電子技術(shù)在線大會(huì)
-
免費(fèi)參會(huì)立即報(bào)名>> 7月30日- 8月1日 2025全數(shù)會(huì)工業(yè)芯片與傳感儀表展
-
精彩回顧立即查看>> 【線上直播】新能源汽車熱管理行業(yè)應(yīng)用新進(jìn)展
-
精彩回顧立即查看>> 【線上直播】西門子電池行業(yè)研討會(huì)-P4B如何加速電池開發(fā)
-
精彩回顧立即查看>> 【線下會(huì)議】OFweek 2024(第九屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會(huì)
-
精彩回顧立即查看>> 【線下論壇】華邦電子與萊迪思聯(lián)合技術(shù)論壇
推薦專題
- 1 2025上海車展看什么?看這一篇就夠了!
- 2 關(guān)稅大戰(zhàn),汽車芯片會(huì)漲價(jià)嗎
- 3 工信部召開智能網(wǎng)聯(lián)汽車產(chǎn)品準(zhǔn)入及軟件在線升級管理工作推進(jìn)會(huì)提的內(nèi)容,將如何影響智駕行業(yè)發(fā)展?
- 4 地平線智駕方案軟硬結(jié)合,大眾、保時(shí)捷的合作紛至沓來
- 5 高呼的“全民智駕”真的做到“全民”了嗎?
- 6 一季度汽車產(chǎn)量省份排名大洗牌!誰在異軍突起?
- 7 奇瑞的混動(dòng)技術(shù):厚積薄發(fā),從發(fā)動(dòng)機(jī)到混動(dòng)系統(tǒng)
- 8 東風(fēng)+華為,還是華為借東風(fēng)?華為ADS3.0技術(shù)詳解
- 9 工信部對浮躁的智駕說“不”
- 10 重要信號!奇瑞汽車IPO背后大佬現(xiàn)身海信集團(tuán)