91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

車載ECU嵌入式設備的診斷測試 - 會話和安全控制

上海控安 ? 來源:上??匕?/span> ? 作者:上??匕?/span> ? 2022-10-09 17:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者 |李偉 上海控安安全測評中心安全測評部總監(jiān)

來源 |鑒源實驗室

引言:第三篇(車載ECU嵌入式設備的診斷測試 - 服務)中我們已經把UDS的相關知識給大家做了介紹,主要講解CAN通訊的地址和尋址、UDS的請求和響應數(shù)據(jù)幀、多幀數(shù)據(jù)的結構、部分UDS服務介紹,以及測試測試設計的注意事項說明。本篇以及后續(xù)兩篇將會對UDS中最常用的服務進行詳細介紹。本文首先對會話控制請求服務$10和安全接入請求服務$27進行介紹。

01

$10會話控制請求服務

ECU在正常工作時會處于某一個會話模式下,上電后會自動進入默認會話模式,所以ECU啟動后我們不需要輸入$10 01來進入該會話模式。ECU的不同會話模式間存在一定的狀態(tài)轉換關系規(guī)則。

初次接觸會話控制模式可能不太理解這個服務的含義和用途,我們通過一個例子來進行類比。例如:我們將ECU之間的通訊類比成不同人員之間的對話。兩個人在公共場所暢所欲言,隨意討論非私密性的話題,這個場景類似默認會話,不會對安全性有要求,無需刻意尋找專門使用場所,即不需要專門會話控制進入此模式,上電即默認進入。如果兩人想討論隱秘點的話題,不想其他不相關人員知道,于是換個環(huán)境,從公共場所進入了單獨的會議室,這個過程可以類比成從默認會話進入了擴展會話,進入會議室后為了確認對方是本人沒被冒充,進行識別鑒權詢問口令“天王蓋地虎”,查看對方能不能答出“小雞燉蘑菇”,認證鑒權的這個附加過程就屬于跟$10服務配合使用的安全接入請求服務$27,溝通結束退出會議室回到公共區(qū)域,這個過程就是從擴展會話退出到默認會話的過程。大家可能有疑問為何沒提及編程會話,這個模式我們會另外講解。

1.1會話模式間的轉換

前面的例子中我們可以看到不同會話模式間的切換存在一定的邏輯關系。下圖顯示的就是一個不同會話間轉換示例圖,需要注意的是不同項目中對于進入編程會話通常會有不同的設計要求,具體項目中會話間跳轉關系必須依據(jù)項目的規(guī)范文件。

poYBAGNCjm-AfU-kAACHlJuw33k918.png

圖 1

1)默認會話

設備上電后自動進入默認會話模式,從圖中我們可以看出在默認會話模式下的切換關系。

本模式重新進入:可以通過$10 01再次進入默認會話,通過$11 01、$11 03復位服務重啟進入默認會話。

本模式進入其他模式:默認會話模式可以通過$10 02進入編程會話模式,在有些項目中默認會話是不能直接進入編程會話模式,具體項目中是否能夠支持需要查閱項目產品的診斷技術規(guī)范;默認會話模式下還可以通過$10 03進入擴展會話模式。

2)編程會話

啟動編程會話ECU會進入boot模式,進入boot模式后ECU可以進行固件的更新。boot的更新可以通過Jtag接口使用工具進行燒錄,相對來說Jtag接口的權限等級比較高,可以通過工具直接修改存儲空間中對應地址的數(shù)據(jù)信息。實際項目會使用CAN網(wǎng)絡進行軟件刷寫,商用階段去除Jtag接口,這樣處理的話安全性會得到一定保障。同樣的在boot模式下可以刷寫固件,那很多診斷服務在boot下也可以正常執(zhí)行,如配合刷寫的$11、$22、$2E、$31、$28、$34、$36、$37、$85等服務。

本模式重新進入:處于編程會話模式下,可以通過$10 02再次進入編程會話。

本模式進入其他模式:編程會話狀態(tài)下可以通過$10 01進入默認會話,通過$11 01服務復位ECU來進入默認會話;編程會話不能進入擴展會話模式。

3)擴展會話

某些服務需要擴展會話的支持才能執(zhí)行,擴展會話下如果不配合使用$3E服務,ECU會在數(shù)秒后自動退出擴展會話模式進入到默認會話模式。

本模式重新進入:處于擴展會話模式下,可以通過$10 03再次進入擴展會話。

本模式進入其他模式:在不使用$3E服務保持會話時,可以通過超時自動退出到默認會話模式,可以通過$10 01進入默認會話,通過$11 01、11 03服務復位ECU來進入默認會話;在某些項目中僅支持$10 03擴展模式下,才能進入$10 02編程會話。

1.2$10服務請求報文

$10服務的請求報文格式總體上跟上篇中描述服務發(fā)送報文內容一致。子服務通常是前文講的01默認會話、02編程會話、03擴展會話,當然規(guī)范中還存在00保留字段、04安全系統(tǒng)診斷會話、05-3F保留、40-5F主機廠自定義字段、60-7E零部件供應商自定義字段等等。實際上主機廠可以根據(jù)項目情況進行高自由度的內部自定義,因為這些定義的范圍都只是在當前項目適用,為了設計上的高復用性和減少設計研發(fā)工作量,要適當考慮自定義部分的占比。發(fā)送報文幀結構如下圖:

pYYBAGNCjnCAR3jkAAAWCVuix5s583.png

圖 2

舉例,$10服務的請求報文通常為:$10 01、$10 02、$10 03,當然根據(jù)項目實際情況可以進行自定義子服務。

1.3$10服務響應報文

$10服務的響應報文格式總體上跟上篇中報文發(fā)送內容格式一致。正響應報文的首字節(jié)服務號根據(jù)協(xié)議變?yōu)?50,第二字節(jié)對應請求報文的子功能。第3至4字節(jié)屬性字段是跟ECU收到報文后發(fā)送第一幀響應報文間隔時間相關的計時器設置數(shù)值,第5至6字節(jié)是NRC中0x78否定響應報文發(fā)送和下一個消息發(fā)送間隔時間相關的計時器設置數(shù)值。響應報文幀的結構圖如下所示:

poYBAGNCjnCAGqIJAAAYLkLRcdQ554.png

圖 3

舉例,$10服務的響應報文通常為:$50 01、$50 02、$50 03。

$10服務的否定響應格式,可以參考上篇文章服務響應總體中負響應部分介紹,所有UDS服務的負響應故障代碼表在項目中均是通用的。

02

$27安全控制服務

在本篇當中,我們之所以把這兩個服務一起來進行介紹,是因為通常$27服務使用的前提就是先進入$10服務的擴展會話,反過來講$10服務很少單獨使用,一般都是跟$27服務配合先完成安全驗證,然后其他服務才能在一定的會話模式和安全接入等級中正常使用。我們在前篇介紹過主機廠和零部件廠商可以通過不同的UDS服務對ECU執(zhí)行很多操作,這些操作有的會修改ECU配置,有的可以重啟設備,有的可以讀取信息等等。顯而易見的是,不同操作失誤造成的后果嚴重程度是不一樣的,因此通過安全認證就很有必要。我們通常把默認狀態(tài)下的ECU叫做鎖定狀態(tài)(Locked),成功執(zhí)行完成$27服務后的狀態(tài)叫做解鎖(Unlock),只有在解鎖狀態(tài)下才能進行數(shù)據(jù)寫入、修改等等操作。

每次$27服務的安全認證過程在Tester和ECU間會有兩輪的信息報文交互,大體的交互過程如下圖所示:

pYYBAGNCjnCANreHAACjI0AyCt4312.png

圖 4

2.1 請求報文

$27服務請求報文格式總體上跟上篇中UDS請求報文介紹一致,在交互過程圖中我們可以看到$27服務發(fā)送了2次請求報文。

1)Seed請求報文

$27服務開始時,第1條發(fā)送報文是用于向ECU請求獲取seed,seed通常由ECU根據(jù)算法隨機生成(不會是固定數(shù)值)。Tester獲取到seed后根據(jù)定義的算法算出key。$27服務根據(jù)項目診斷規(guī)范要求通常會有幾個不同的安全級別(一般3個足夠了),不同級別的區(qū)分通過報文第2字節(jié)子服務,即上圖中2n-1字段來定義,通常有0x1、0x 3、0x 5、0x 7-0x 41(奇數(shù))都可以由主機廠根據(jù)實際情況自定義選擇,后面的0x43-0x7F很多用于預留,當然主機廠想用于自定義也不是不可以。

舉例,本報文通常有$27 01、$27 05 、$27 09等等用于不同級別安全認證服務。具體安全等級個數(shù)和對應的子功能號均根據(jù)項目實際情況可以自定義實現(xiàn)。

2)Send key報文

$27服務的第2條發(fā)送報文是用于將計算好的key發(fā)送給ECU,key的計算都是基于和ECU使用的相同算法,以及ECU發(fā)出的seed。報文的第2字節(jié)子功能值跟第一條請求報文相關,通常是第1條報文子功能值加1,所以本報文的子服務為偶數(shù)。報文第3至6字節(jié)即為附帶的key。

舉例,本報文通常有27 02 XX XX XX XX、27 06 XX XX XX XX、27 0A XX XX XX XX。

2.2 響應報文

與請求報文相對應,$27服務的響應報文也為2條。響應報文的格式整體上跟上篇文章介紹的響應報文格式一致。

1)Send seed響應報文

$27服務ECU的第1條響應報文目的是向Tester發(fā)送seed,seed是一串隨機數(shù),長度由具體項目規(guī)范確定,seed的產生是ECU根據(jù)內置的算法隨機產生的。ECU將seed發(fā)送給Tester時,本身也會根據(jù)seed值通過算法得出key值。

舉例,本報文通常有67 01 XX XX XX XX、67 05 XX XX XX XX、67 09 XX XX XX XX。

2)解鎖確認報文

解鎖成功正響應報文,$27服務ECU的第2條響應報文,是ECU根據(jù)Tester發(fā)送過來的key,對比本身基于同樣seed,同樣算法計算出的key值,在兩個key值相等的情況下,ECU通過安全認證服務,向Tester發(fā)送正響應,通知進入解鎖狀態(tài)成功。

舉例,本報文通常有$67 02、$67 06、$67 0A。

3)負響應

負響應的報文格式可以參考上篇的相關章節(jié),負響應NRC代碼表一般在項目中是通用的。

03

總結

$10服務和$27服務通常是配套使用的。

通過上面的描述我們可以看到$27服務用來做安全等級認證,有幾個關鍵的要點。一是seed計算,因為seed用于不同安全等級的key計算,且必須做好一定強度的防破解設計,所以通常情況下都會根據(jù)當前時間結合其他固定值,通過內部設計的算法來計算獲得一串偽隨機數(shù),將這串偽隨機數(shù)作為seed使用。二是key的計算方法,對應不同的安全認證等級,基于seed來計算key,算法在加密復雜度和數(shù)據(jù)交換速度之間做衡量。

用于$27服務認證的這套算法屬于主機廠的秘密等級較高的信息,主機廠對零部件供應商釋放時通常是以DLL庫文件的方法進行發(fā)布,并釋放調用方法的接口。

04

測試要點

對于$10服務的測試注意點在于:

·不同模式間的轉換實現(xiàn)是否跟規(guī)范要求一致;

·其他服務在不同狀態(tài)下的支持情況是否符合規(guī)范要求。

對于$27服務的測試注意點在于:

算法本身及dll文件一般都經過網(wǎng)絡架構組內部測試才發(fā)布,不需要過多關注,需要測試注意的是零部件廠商對于key的計算,在項目初期經常會碰到大小端和移位導致的同樣算法key不一致的情況。

審核編輯 黃昊宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 汽車電子
    +關注

    關注

    3045

    文章

    8960

    瀏覽量

    172861
  • ecu
    ecu
    +關注

    關注

    14

    文章

    983

    瀏覽量

    57289
  • 嵌入式設備
    +關注

    關注

    0

    文章

    121

    瀏覽量

    17723
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Parasoft C/C++test:嵌入式安全關鍵行業(yè)的一體化軟件測試解決方案

    ? ? ? 在汽車電子、工業(yè)控制、醫(yī)療設備、航空航天等嵌入式安全關鍵行業(yè),軟件質量與功能安全直接決定產品可靠性與合規(guī)準入。面對日益復雜的代碼
    的頭像 發(fā)表于 03-06 09:42 ?249次閱讀

    嵌入式軟件單元測試必要性與專業(yè)工具重要性的系統(tǒng)性專業(yè)研究報告

    ?1. 背景:嵌入式系統(tǒng)的特殊性與測試困境 嵌入式軟件廣泛應用于汽車電子、醫(yī)療設備、航空航天、工業(yè)控制等?
    發(fā)表于 03-05 10:41

    用「EN 18031認證」通關歐盟,飛凌嵌入式這張 “網(wǎng)絡安全護照” 已就位

    飛凌嵌入式FCU2601嵌入式控制單元順利通過必維國際檢驗機構(Bureau Veritas)的嚴格評估測試,斬獲EN 18031網(wǎng)絡安全
    的頭像 發(fā)表于 02-06 10:14 ?2.3w次閱讀
    用「EN 18031認證」通關歐盟,飛凌<b class='flag-5'>嵌入式</b>這張 “網(wǎng)絡<b class='flag-5'>安全</b>護照” 已就位

    嵌入式系統(tǒng)安全設計原則

    隨著物聯(lián)網(wǎng)、工業(yè)控制和智能設備的普及,嵌入式系統(tǒng)的安全問題越來越突出。一個小小的漏洞,就可能導致設備被入侵、數(shù)據(jù)泄露,甚至對人身
    的頭像 發(fā)表于 01-19 09:06 ?341次閱讀
    <b class='flag-5'>嵌入式</b>系統(tǒng)<b class='flag-5'>安全</b>設計原則

    什么是嵌入式應用開發(fā)?

    系統(tǒng)中,用于控制、監(jiān)測或通信等特定用途。與一般計算機系統(tǒng)不同,嵌入式系統(tǒng)通常具有較小的存儲容量、處理能力和功耗,且需要滿足特定的實時性、可靠性和安全性要求?。 應用領域 嵌入式系統(tǒng)
    發(fā)表于 01-12 16:13

    嵌入式軟件測試找bug的常見方法和秘訣

    的領域使用軟件和微處理器控制各種嵌入式設備,對日益復雜的嵌入式軟件進行快速有效的測試愈加顯得重要。 就像修車需要工具一樣,好的程序員應該能夠
    發(fā)表于 01-12 07:07

    C語言單元測試嵌入式軟件開發(fā)中的作用及專業(yè)工具的應用

    語言使用率超過90%。從智能家居溫控系統(tǒng)到汽車ECU控制單元,從工業(yè)機器人到醫(yī)療設備,C語言仍然是嵌入式開發(fā)的首選語言。 C語言在嵌入式開發(fā)
    發(fā)表于 12-18 11:46

    C語言在嵌入式開發(fā)中的應用

    C 語言在汽車電子控制系統(tǒng)開發(fā)中的主導地位。 2、設備驅動程序 設備驅動程序是嵌入式系統(tǒng)中連接硬件和軟件的橋梁,它負責實現(xiàn)嵌入式系統(tǒng)與
    發(fā)表于 11-21 08:09

    嵌入式開發(fā)的關鍵點介紹

    開發(fā)需要考慮嵌入式系統(tǒng)的資源限制,例如:內存、CPU處理能力等等。因此,嵌入式開發(fā)需要開發(fā)人員具備優(yōu)化代碼的能力。嵌入式系統(tǒng)的安全性非常重要,開發(fā)人員需要考慮各種
    發(fā)表于 11-13 08:12

    嵌入式軟件測試與專業(yè)測試工具的必要性深度解析

    嵌入式系統(tǒng)作為控制、監(jiān)視或輔助裝置運行的專用計算機系統(tǒng),其軟件測試面臨著獨特的挑戰(zhàn)和嚴格的要求。專業(yè)測試工具在嵌入式軟件開發(fā)過程中發(fā)揮著不可
    發(fā)表于 09-28 17:42

    嵌入式開發(fā)就業(yè)還有前景嗎?

    嵌入式的發(fā)展前景如何呢?隨著科技的飛速發(fā)展,嵌入式開發(fā)在各個領域的應用越來越廣泛,因此嵌入式開發(fā)的就業(yè)前景也備受關注。以下將從智能家居、醫(yī)療設備、工業(yè)
    發(fā)表于 07-16 10:47

    嵌入式開發(fā)入門指南:從零開始學習嵌入式

    特定功能的計算機系統(tǒng),廣泛應用于智能家居、工業(yè)控制、醫(yī)療設備、車載系統(tǒng)等領域。 2. 學習嵌入式開發(fā)的前置知識熟悉C語言編程掌握基本的數(shù)據(jù)結構與算法了解數(shù)字電路與微
    發(fā)表于 05-15 09:29

    MAXQ1061/MAXQ1062用于嵌入式設備的DeepCover加密控制器技術手冊

    DeepCover?嵌入式安全方案采用多重先進的物理安全機制保護敏感數(shù)據(jù),提供最高等級的密鑰存儲安全保護。 DeepCover加密控制
    的頭像 發(fā)表于 05-14 10:43 ?999次閱讀

    嵌入式應用中常見的安全威脅

    越來越多的嵌入式設備存在互聯(lián)需求,在安全應用開發(fā)中,除功能安全外,應用還需考慮信息安全。
    的頭像 發(fā)表于 04-28 14:45 ?1192次閱讀
    <b class='flag-5'>嵌入式</b>應用中常見的<b class='flag-5'>安全</b>威脅

    嵌入式軟件單元測試的必要性、核心方法及工具深度解析

    一、為什么嵌入式軟件必須重視單元測試? ?嵌入式系統(tǒng)的特殊性? 在汽車 ECU、醫(yī)療設備控制器等
    的頭像 發(fā)表于 03-21 14:53 ?1439次閱讀