車載通訊加密方案
疫情當(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)化的趨勢(shì),車載Ethernet在未來得到推廣的可能性要比FlexRay高很多)。
但在目前的車載網(wǎng)絡(luò)中,大部分?jǐn)?shù)據(jù)傳輸都是在沒任何安全措施的情況下進(jìn)行的,即使有安全措施也大都非常簡陋。因此在絕大多數(shù)情況下,控制器基本以原始數(shù)據(jù)的形式進(jìn)行數(shù)據(jù)交互。即使接收節(jié)點(diǎn)能對(duì)數(shù)據(jù)進(jìn)行合理性檢查,這些措施對(duì)數(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)了游樂場(chǎng),輕松便可以偽造報(bào)文對(duì)車輛進(jìn)行控制。
為了給CAN通訊增加一定的安全性,攻城獅們?cè)贑AN報(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定義的也比較簡單,很容易被破解從而對(duì)總線的數(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ì)對(duì)總線的繁忙程度產(chǎn)生負(fù)面影響,因此OEM盡量使用少的Bit位來承載RollingCounter和Checksum,這也讓黑客較容易就可逆向出算法。
所以,加密通信(Cyber Security或Security Onboard Communication)近年來受到了越來越多的關(guān)注,因最近幾年也發(fā)生了很多對(duì)車載網(wǎng)絡(luò)的惡意攻擊事件。為了響應(yīng)汽車行業(yè)對(duì)數(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級(jí)別上為關(guān)鍵數(shù)據(jù)提供有效可行的身份驗(yàn)證機(jī)制。認(rèn)證機(jī)制與當(dāng)前的AUTOSAR通信系統(tǒng)無縫集成,同時(shí)對(duì)資源消耗的影響應(yīng)盡可能小,以便可為舊系統(tǒng)提供附加保護(hù)。該規(guī)范主要使用帶有消息認(rèn)證碼(MAC)的對(duì)稱認(rèn)證方法。與不對(duì)稱方法相比,它們使用更小的密鑰實(shí)現(xiàn)了相同級(jí)別的安全性,并且可以在軟件和硬件中緊湊高效地實(shí)現(xiàn)。但是,規(guī)范提供了兩種方法必要的抽象級(jí)別,因此對(duì)稱和非對(duì)稱身份驗(yàn)證方法都可使用。
1.對(duì)稱加密算法
對(duì)稱加密算法的加密和解密使用的密匙是相同的,也就是說如果通訊兩方如果使用對(duì)稱加密算法來加密通訊數(shù)據(jù),那么通訊雙方就需要都知道這個(gè)密匙,收到通訊數(shù)據(jù)后用這個(gè)密匙來解密數(shù)據(jù)。
2.非對(duì)稱加密算法
非對(duì)稱算法中用到的密匙有兩個(gè),分別是公匙和私匙,要求通訊雙方都有自己的公匙和私匙,自己公匙加密的數(shù)據(jù)只有自己的私匙才能解開,自己私匙加密的數(shù)據(jù)也只有自己的公匙才能解開。公匙是可以公布在網(wǎng)絡(luò)上的,相當(dāng)于一個(gè)公共的電話簿,可以被其他人獲取到的。
以一個(gè)通信的例子來說明非對(duì)稱算法:
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ù)被黑客截取,由于黑客沒有對(duì)應(yīng)的私匙,他也無法解密數(shù)據(jù)進(jìn)行查看。
在通信中對(duì)稱加密算法比較高效,但是需要告知對(duì)方加密鑰匙,在實(shí)際運(yùn)用時(shí)比較麻煩,所以一般都是用非對(duì)稱加密算法來加密對(duì)稱加密算法的鑰匙,然后發(fā)送給對(duì)方,對(duì)方收到對(duì)稱加密算法的鑰匙后,后續(xù)通信就用對(duì)稱加密算法來加密消息內(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一般用于對(duì)稱加密,整車廠可在車輛下線刷寫程序時(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ù)載,對(duì)于只有可憐巴巴的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等資料)
發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長度6~500個(gè)字
圖片新聞
最新活動(dòng)更多
-
11月19日立即報(bào)名>> 【線下論壇】華邦電子與恩智浦聯(lián)合技術(shù)論壇
-
12月19日立即報(bào)名>> 【線下會(huì)議】OFweek 2024(第九屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會(huì)
-
精彩回顧立即查看>> 蔡司新能源汽車三電質(zhì)量解決方案
-
精彩回顧立即查看>> 蔡司新能源汽車三電質(zhì)量解決方案
-
精彩回顧立即查看>> 2024(第五屆)全球數(shù)字經(jīng)濟(jì)產(chǎn)業(yè)大會(huì)暨展覽會(huì)
-
精彩回顧立即查看>> 【線下會(huì)議】全數(shù)會(huì)2024電子元器件展覽會(huì)
推薦專題
-
10 “寧王”再出手
- 1 從小鵬、理想、蔚來布局看自動(dòng)駕駛發(fā)展趨勢(shì)
- 2 被逼墻角的Mobileye,祭出 CAIS 大旗,挑戰(zhàn)端到端大模型智能駕駛
- 3 SiC、Chiplet、RISC-V,汽車半導(dǎo)體發(fā)展的三大動(dòng)力
- 4 676億地平線港股上市,要與英偉達(dá)、華為搶市場(chǎng)
- 5 6 輸給新勢(shì)力,賽力斯失去“華為溢價(jià)”
- 7 如何跑贏汽車智能化下半場(chǎng)?
- 8 激光雷達(dá)即將降價(jià),純視覺回到鄙視鏈底層?
- 9 “端到端”風(fēng)口已至?
- 10 小馬智行招股書曝光:成立8年融資92億,近2年半虧掉23億
- IE工程師(汽車智聯(lián)) 惠州碩貝德無線科技股份有限公司
- 銷售總監(jiān)-汽車電子方向 深圳市智立方自動(dòng)化設(shè)備股份有限公司
- 結(jié)構(gòu)工程師-汽車電子事業(yè)部(J10116) 深圳奧尼電子股份有限公司
- 產(chǎn)品工程師(汽車) 易思維(杭州)科技股份有限公司
- 項(xiàng)目經(jīng)理(汽車內(nèi)飾&汽車電子) 伯恩光學(xué)(惠州)有限公司
- 銷售經(jīng)理(汽車新能源行業(yè)) 廣州瑞松智能科技股份有限公司
- 高級(jí)軟件工程師 廣東省/深圳市
- 自動(dòng)化高級(jí)工程師 廣東省/深圳市
- 光器件研發(fā)工程師 福建省/福州市
- 銷售總監(jiān)(光器件) 北京市/海淀區(qū)
- 激光器高級(jí)銷售經(jīng)理 上海市/虹口區(qū)
- 光器件物理工程師 北京市/海淀區(qū)
- 激光研發(fā)工程師 北京市/昌平區(qū)
- 技術(shù)專家 廣東省/江門市
- 封裝工程師 北京市/海淀區(qū)
- 結(jié)構(gòu)工程師 廣東省/深圳市