隨著人們?cè)絹碓秸J(rèn)識(shí)到我們的汽車正在演變?yōu)闈L動(dòng)數(shù)據(jù)中心,制造商面臨著保持軟件最新的挑戰(zhàn)。部分需求是由經(jīng)濟(jì)驅(qū)動(dòng)的;召回行動(dòng)成本的上升使得自動(dòng)升級(jí)變得至關(guān)重要。與此同時(shí),消費(fèi)者開始期待他們的計(jì)算機(jī)和移動(dòng)設(shè)備會(huì)自動(dòng)升級(jí)。因此,一個(gè)明顯的步驟是使用移動(dòng)連接進(jìn)行軟件無線 (SOTA) 更新。在汽車信息娛樂系統(tǒng)中使用 SOTA 更新已變得相對(duì)普遍,但在汽車的關(guān)鍵功能區(qū)域?qū)嵤┲埃枰紤]安全性、安全性和便利性因素。必須保護(hù)車輛免受篡改并且更新過程是可靠的,
IHS 的研究人員預(yù)測(cè),向 SOTA 更新的運(yùn)動(dòng) 將加速,在最近的一份汽車報(bào)告中估計(jì),通過 SOTA 節(jié)省的潛在成本將從 2015 年的約 27 億美元增長到 2022 年的超過 350 億美元(圖 1)。降低召回成本、加快功能更新和提高客戶滿意度是汽車制造商 (OEM) 引入 SOTA 的充分理由。
【圖1 | 顯著的成本節(jié)約是 SOTA 的主要?jiǎng)恿Γ?/p>
為電子控制單元 (ECU) 實(shí)施 SOTA 比信息娛樂應(yīng)用要求更高。通常,帶有嵌入式閃存的微控制器用于控制汽車中的實(shí)時(shí)應(yīng)用程序。執(zhí)行更新時(shí),必須遵守質(zhì)量、安全和安保標(biāo)準(zhǔn)。車輛安全絕不能因數(shù)據(jù)安全性差而受到影響。
如果沒有有效的安全性,SOTA 更新很容易受到旨在操縱車輛安全關(guān)鍵應(yīng)用程序的攻擊。這可能會(huì)危及整個(gè)車輛的安全,在最壞的情況下會(huì)危及車內(nèi)乘客的生命。需要一種支持使用證書和私鑰以及加密操作的復(fù)雜安全架構(gòu)來防止這種情況。合適的密碼學(xué)基于標(biāo)準(zhǔn)算法,例如 RSA、ECC、AES 和 SHA。安全微控制器具有此類安全功能和特性。
SOTA 流程和必要的安全架構(gòu)
除了 SOTA 集成的安全性和安全性方面,對(duì)于汽車制造商來說,將車輛現(xiàn)有系統(tǒng)架構(gòu)的影響降到最低并保證最大可用性(即車輛必須保持靜止的更新時(shí)間最小化)是極其重要的。在這方面特別感興趣的是現(xiàn)有的車載網(wǎng)絡(luò)架構(gòu)和 ECU 級(jí)別的特殊要求。這些將在下面討論。
以前,對(duì) ECU(或整車)進(jìn)行重新編程意味著要去車庫。此類更新使用插入車載診斷 (OBD) 插座的診斷工具。診斷工具管理完整的更新過程(特別是新軟件或服務(wù)包的下載)、分發(fā)到目標(biāo) ECU 以及最終驗(yàn)證。如果可能,OEM 希望為 SOTA 保留類似的機(jī)制。因此,對(duì)于 SOTA,診斷工具的功能需要轉(zhuǎn)移到車載網(wǎng)絡(luò)架構(gòu)的中心點(diǎn),并為附加 SOTA 過程提供所需的功能。
SOTA 更新通常在連續(xù)的步驟中執(zhí)行。一旦一個(gè)新的軟件包被生產(chǎn)出來并被賦予一個(gè)安全“包裝”(加密和簽名),與目標(biāo)車輛的通信就會(huì)發(fā)生。在車輛(作為客戶端)和 OEM 更新服務(wù)器之間建立安全連接。車輛與服務(wù)器平臺(tái)進(jìn)行相互認(rèn)證,并建立一個(gè)具有傳輸層安全性(TLS)的安全加密傳輸通道,將新的軟件包交付給車輛。在初始驗(yàn)證后,更新存儲(chǔ)在中央存儲(chǔ)器中。此更新階段在后臺(tái)進(jìn)行,不會(huì)通知駕駛員或影響車輛在駕駛時(shí)的行為。實(shí)際的更新過程要等到車輛安全停放后由駕駛員啟動(dòng)后才會(huì)開始。
SOTA 架構(gòu)
SOTA 的車輛架構(gòu)基本上可以細(xì)分為三個(gè) ECU 模塊,其中不同的安全微控制器執(zhí)行不同的安全功能:遠(yuǎn)程信息處理控制器、中央網(wǎng)關(guān)和目標(biāo)控制單元(圖 2)。
【圖2 | SOTA實(shí)現(xiàn)的主要功能塊:遠(yuǎn)程信息處理單元、中央網(wǎng)關(guān)和目標(biāo)ECU]
遠(yuǎn)程信息處理單元通過其移動(dòng)無線電接口連接到 OEM 服務(wù)器并執(zhí)行服務(wù)認(rèn)證。出于安全原因,建議為此關(guān)鍵身份驗(yàn)證功能實(shí)施專用安全控制器(即可信平臺(tái)模塊或 TPM)。除了實(shí)際的應(yīng)用控制器之外,還使用了一個(gè)獨(dú)立的微控制器 (MCU),以實(shí)現(xiàn)與車輛網(wǎng)絡(luò)的安全連接。
中央網(wǎng)關(guān)中的 MCU 支持對(duì)接收到的軟件進(jìn)行驗(yàn)證和中間存儲(chǔ)。還可以將安全關(guān)鍵的身份驗(yàn)證功能從遠(yuǎn)程信息處理單元轉(zhuǎn)移到網(wǎng)關(guān)中。在這種情況下,建議將 TPM 放置在網(wǎng)關(guān)中,然后網(wǎng)關(guān)可以承擔(dān)其他重要的安全功能,例如中央密鑰管理。
實(shí)際更新是在驅(qū)動(dòng)程序初始化后在目標(biāo) ECU 中執(zhí)行的。數(shù)據(jù)包從內(nèi)存?zhèn)鬏數(shù)侥繕?biāo) ECU,在那里它被解密、再次驗(yàn)證并最終“刷新”。如今,汽車級(jí) MCU 支持所有這些與安全相關(guān)的功能。
使用“信任錨”進(jìn)行安全身份驗(yàn)證和驗(yàn)證
如上所述,被稱為“信任錨”的安全控制器執(zhí)行專門的安全功能以防止操縱和故障,尤其是在更新關(guān)鍵安全相關(guān)應(yīng)用程序期間。TPM 是一種基于標(biāo)準(zhǔn)、經(jīng)過認(rèn)證的安全控制器,可專門用于關(guān)鍵身份驗(yàn)證功能。它的任務(wù)是確保只有經(jīng)過授權(quán)的設(shè)備才能向車輛發(fā)送數(shù)據(jù)。
TPM 執(zhí)行所有加密算法以進(jìn)行身份??驗(yàn)證。為此,它將長期證書和私鑰保存在受保護(hù)的域中。TPM 2.0 支持最新的算法,如 ECC、RSA、AES 和 SHA 256。TPM 可以加密鏈接到應(yīng)用程序處理器。TPM 的密鑰存儲(chǔ)器是可擴(kuò)展的,可以安全地加載到應(yīng)用處理器的外部存儲(chǔ)器中。因此,OEM 能夠保存更多的身份驗(yàn)證證書。
TPM 是在經(jīng)過安全認(rèn)證的制造過程中生產(chǎn)的,其中第一個(gè)密鑰安全地保存在 TPM 中。與安全硬件擴(kuò)展 (SHE) 模塊或硬件安全模塊 (HSM) 相比,TPM 中的保護(hù)級(jí)別(例如針對(duì)硬件或側(cè)信道攻擊)要高得多。但是,所有相關(guān)的 MCU 都應(yīng)具有這些集成安全模塊之一,以確保端到端保護(hù)。
典型的網(wǎng)絡(luò)攻擊以執(zhí)行非指定操作的方式操縱系統(tǒng)。為了防止這種情況,系統(tǒng)通常被分解為不同的、隔離的安全域。TPM 是隔離安全域的示例,它將非對(duì)稱密鑰存儲(chǔ)在單獨(dú)的受保護(hù)環(huán)境中,并將它們用于加密過程。汽車微控制器還定義了隔離的安全域。HSM 可以將安全功能與應(yīng)用程序域隔離開來。第一個(gè)重要步驟是通過安全啟動(dòng)對(duì)在駕駛周期開始時(shí)涉及的微控制器中的程序存儲(chǔ)器進(jìn)行完整性檢查;SHE 和 HSM 都使用加密校驗(yàn)和檢查內(nèi)存內(nèi)容。
具有嵌入式 HSM 的 MCU 還對(duì)接收到的軟件進(jìn)行重要驗(yàn)證。驗(yàn)證過程受益于 HSM 強(qiáng)大的加密加速器和快速通信總線。此驗(yàn)證由網(wǎng)關(guān) MCU 使用 HSM 執(zhí)行。由于固件驗(yàn)證僅使用公共證書,因此安全要求低于身份驗(yàn)證過程。
在 SOTA 上下文中,HSM 也可用于按需完整性檢查。在我們的示例中,遠(yuǎn)程信息處理單元和網(wǎng)關(guān)都安全地交換其完整性狀態(tài),然后才開始軟件更新。可以在目標(biāo) ECU 上實(shí)施類似的程序。目標(biāo) ECU 也使用 HSM,但安全閃存引導(dǎo)加載程序 (SFBL) 負(fù)責(zé)接收和驗(yàn)證更新。閃存引導(dǎo)加載程序 (FBL) 和 SFBL 之間的區(qū)別在于后者實(shí)現(xiàn)了額外的加密算法。引導(dǎo)加載程序本身應(yīng)從任何 SOTA 更新過程中排除。由于車輛在行駛過程中可能會(huì)受到攻擊,因此動(dòng)態(tài)檢查應(yīng)用軟件的能力是 HSM 優(yōu)于 SHE 模塊的關(guān)鍵優(yōu)勢(shì)。
專為最大可用性而設(shè)計(jì)
身份驗(yàn)證和相關(guān)的安全功能通常在網(wǎng)關(guān) ECU 內(nèi)部執(zhí)行,新軟件包從 OEM 服務(wù)器下載后臨時(shí)存儲(chǔ)在中央存儲(chǔ)器中。由于新軟件必須從網(wǎng)關(guān)的中央存儲(chǔ)器傳輸?shù)侥繕?biāo) ECU,因此必須考慮相應(yīng)的網(wǎng)絡(luò)拓?fù)洌驗(yàn)樗?OEM 之間有所不同。本質(zhì)上存在三種不同的方法(圖 3)。
【圖3 | 用于安全 OTA 固件更新的各種方法:使用中央網(wǎng)關(guān)內(nèi)存的傳統(tǒng)方法、使用兩個(gè)閃存塊的 A/B 交換以及具有額外本地內(nèi)存的方法]
在“傳統(tǒng)”方法中,為了更新單個(gè) ECU,相關(guān)的新軟件包通過板載網(wǎng)絡(luò)從中央存儲(chǔ)器加載到目標(biāo) ECU 微控制器中的嵌入式閃存中。這是一步完成的——無需對(duì) ECU 進(jìn)行任何硬件更改。主要限制是總線速度,它決定了更新需要多長時(shí)間。表 1 顯示了常見總線系統(tǒng)的數(shù)據(jù)速率。讓我們假設(shè)一個(gè) 4 MB 的服務(wù)包,如表中所示。在這種情況下,通過 CAN 總線更新單個(gè) ECU 大約需要 5 分鐘;帶有 20 個(gè) ECU 的車輛將停止運(yùn)行超過 1.5 小時(shí)。盡管有多種方法可以提高吞吐量(集群 CAN 總線子域或數(shù)據(jù)壓縮),但它們都會(huì)導(dǎo)致復(fù)雜性和成本增加。
[表 1 | 各種總線系統(tǒng)的數(shù)據(jù)傳輸率比較]
另一種方法是 A/B 交換。閃存中有兩個(gè)塊(A 和 B)用于執(zhí)行微控制器內(nèi)部的代碼。軟件從中央存儲(chǔ)器下載到目標(biāo) ECU 并重新編程空閑的內(nèi)存塊(例如塊 B)可以在車輛使用時(shí)在后臺(tái)進(jìn)行,并且需要盡可能長的時(shí)間。同時(shí),塊 A 不受影響,可以繼續(xù)用于執(zhí)行當(dāng)前代碼。一旦所有 ECU 都以這種方式“預(yù)編程”,控制器就會(huì)將代碼執(zhí)行從塊 A 切換到塊 B。交換過程在重新啟動(dòng)后完成。這種方法具有幾乎不存在停機(jī)時(shí)間的巨大優(yōu)勢(shì)。缺點(diǎn)在于更大的閃存成本更高,并且需要額外的驗(yàn)證機(jī)制來排除對(duì)功能安全的任何影響。此外,
第三種方法旨在結(jié)合前兩種方法的優(yōu)點(diǎn): 提供額外的“ECU 級(jí)別的外部存儲(chǔ)器”。新服務(wù)在車輛使用時(shí)在后臺(tái)加載到此外部存儲(chǔ)器中,并在此處等待實(shí)際更新過程。這種方法利用了這樣一個(gè)事實(shí),即現(xiàn)代微控制器可以非常快速地擦除和重新編程其閃存。例如,可以通過 SPI 接口在 8 秒內(nèi)從外部本地存儲(chǔ)器擦除和重新編程 4 MB。這種方法的主要好處是對(duì)現(xiàn)有系統(tǒng)設(shè)計(jì)的干預(yù)最少、可管理的額外成本以及附加存儲(chǔ)元件的小尺寸。表 2 對(duì)所討論的三種方法進(jìn)行了比較。
[表 2 | SOTA固件更新的各種方法的優(yōu)缺點(diǎn)]
結(jié)論
汽車軟件的無線更新功能有望為汽車行業(yè)節(jié)省大量資金,并改善客戶的擁有體驗(yàn)。但是,需要制定足夠的安全規(guī)定,以防止非法訪問車輛及其安全關(guān)鍵應(yīng)用程序。適當(dāng)?shù)奈⒖刂破骱完P(guān)鍵點(diǎn)的額外專用安全控制器提供優(yōu)化的功能來保護(hù) SOTA。除了具體的安全措施外,OEM 還需要考慮如何通過優(yōu)化的網(wǎng)絡(luò)架構(gòu)和內(nèi)存策略,最大限度地減少更新過程中的車輛停機(jī)時(shí)間,從而減少對(duì)駕駛員的影響。
作者:Bjoern Steurich,Martin Klimke,Ines Pedersen
審核編輯:郭婷
-
微控制器
+關(guān)注
關(guān)注
48文章
7951瀏覽量
154975 -
控制器
+關(guān)注
關(guān)注
114文章
17100瀏覽量
184224 -
存儲(chǔ)器
+關(guān)注
關(guān)注
38文章
7649瀏覽量
167353
發(fā)布評(píng)論請(qǐng)先 登錄
基于SCA的軟件無線電系統(tǒng)的概念與架構(gòu)

《AI Agent 應(yīng)用與項(xiàng)目實(shí)戰(zhàn)》閱讀心得3——RAG架構(gòu)與部署本地知識(shí)庫
AN-825: iCoupler隔離產(chǎn)品的電源考慮因素

OTA軟件升級(jí)管理系統(tǒng)

軟件定義車輛加速推進(jìn)汽車電子技術(shù)的未來發(fā)展

DCS系統(tǒng)實(shí)施中的常見挑戰(zhàn)
socket編程的安全性考慮
Zonal架構(gòu)在SDV中的主要優(yōu)勢(shì)
PoE電源設(shè)備裝置的雷電浪涌考慮因素

無線充芯片-手機(jī)無線充電芯片-無線充電芯片開發(fā)定制
DDR存儲(chǔ)器接口的硬件和布局設(shè)計(jì)考慮因素
架空線路導(dǎo)線選取因素需要考慮的有哪些
8月8日在線研討會(huì) | 如何快速開發(fā)量產(chǎn)級(jí)別功能安全應(yīng)用軟件

評(píng)論