KopherBit
診斷通訊

KopherBoot:車規 UDS Bootloader

KopherBoot 是 KopherBit 提供的車規 UDS Bootloader,採 ISO 14229 標準診斷服務,支援 CAN、CAN FD、DoIP 燒錄通道,內建 SecurityAccess、CRC / 簽章校驗、Application 區段自動回退等保護機制,相容 NXP MPC5744P 與 Infineon TC387QP 平台。

Summary

KopherBoot 是 KopherBit 提供的車規 UDS Bootloader 軟體,採 ISO 14229 標準診斷服務作為燒錄通訊基礎。支援 CAN / CAN FD / DoIP/Ethernet 三種通道,內建 SecurityAccess Seed/Key、CRC 與簽章校驗、Application 區段自動回退、Pre-Programming Conditions Check 等保護機制,相容於 NXP MPC5744P (KCU GEN1) 與 Infineon TC387QP (KCU GEN2 / GEN2 Micro) 平台,可整合 TC387QP 內建 HSM 進行 Secure Boot。

Technical Role

KopherBoot 的角色:

  • 獨立 Bootloader 區段:與 Application 區段隔離,刷寫失敗也不會影響 Bootloader 自身。
  • Application 切換邏輯:開機時檢查 Application 完整性 (CRC / 簽章 / Magic Number),通過則執行 Application;失敗則停留於 Bootloader 等待重新刷寫。
  • UDS 服務伺服端:在 Programming Session 下提供 0x10 / 0x11 / 0x27 / 0x31 / 0x34 / 0x36 / 0x37 等服務,由 KopherUDS 或第三方 Tester 驅動。
  • HSM 整合 (GEN2):可利用 TC387QP HSM 完成簽章驗證與密鑰保護,避免私鑰外洩。

Architecture

元件角色
Boot Vector / Reset Handler開機進入點,判斷進入 Application 或 Bootloader。
Bootloader 區段包含 UDS 服務、Flash 抹除/寫入、CRC/簽章校驗。
Application 區段客戶 ECU 應用軔體(KopherSAR + 客戶 SWC)。
Calibration / NV Data標定資料、永久變數,獨立於 Application 區段。
Magic Number / Status Flags標示 Application 是否寫入完成、CRC 是否通過。
HSM (僅 GEN2)簽章驗證、私鑰保護、Secure Boot 鏈起點。

Key Capabilities

  • 完整 ISO 14229 Programming Session 流程:與 KopherUDS / 第三方 Tester (Vector / ETAS) 相容。
  • 多傳輸層:CAN、CAN FD、DoIP / Ethernet。
  • OEM 自訂 SecurityAccess:Seed/Key 演算法可由客戶 plugin 替換或採 KopherBit 預設方案。
  • CRC + 簽章校驗:寫入完成後校驗,校驗失敗自動回退至 Bootloader。
  • 斷電保護:寫入過程斷電後 Application 區段不完整,重啟後自動進入 Bootloader 模式。
  • HSM 整合 (GEN2 / TC387QP):私鑰儲存於 HSM,Secure Boot 鏈起點。
  • Pre-Programming Conditions Check:燒錄前檢查整車狀態(如車輛靜止、電池電壓充足),符合 OEM 規範。

Engineering Inputs Required

輸入用途
Flash 區段配置Bootloader / Application / Calibration / NV Data 邊界。
簽章演算法RSA / ECDSA、HSH 算法 (SHA-256)、密鑰長度。
公鑰 / Trust Anchor寫入 Bootloader 區段或 HSM,作為簽章驗證依據。
SecurityAccess 演算法OEM 自訂或採 KopherBit 預設。
傳輸層配置CAN ID 路由、CAN FD baud rate、DoIP IP/Port。
Pre-Programming Conditions整車條件檢查邏輯(車速 = 0、Vbatt 範圍等)。
OTA 後端OTA 場景下,後端 Provisioning 與簽章流程。

How KopherBit Supports This

  • KopherBoot 軟體授權:含原始碼選項、客製整合服務。
  • KopherUDS 整合:產線/維修可直接使用 KopherUDS 操作燒錄。
  • KopherSAR 整合:Application 區段內建的 KopherSAR DCM 可在 Application Session 內主動切換進 Programming Session。
  • HSM 諮詢 (GEN2):協助客戶設計 Secure Boot 鏈、HSM 私鑰生命週期。
  • 驗證:KCU 平台 Testbench 提供燒錄壓測、斷電復原驗證。

FAQ

KopherBoot 與 OEM 自有 Bootloader 差異?

KopherBoot 為 KopherBit 預先驗證、針對 KCU 平台優化的 UDS Bootloader。OEM 可選擇直接採用、與其自有流程整合,或請 KopherBit 客製。相較自行開發,KopherBoot 縮短上線時程並降低斷電復原失敗風險。

是否支援 OTA?

KopherBoot 本身為 ECU 內 Bootloader,OTA 流程須搭配車側通訊閘道與後端 Provisioning。KopherBit 可協助設計完整 OTA 流程:後端簽章 → 通訊閘道下載 → ECU UDS RequestDownload → 校驗 → ECUReset。

Secure Boot 是否強制?

非強制。Secure Boot 為可選功能;客戶若有資安需求(例如 R155 / R156 法規對應)建議啟用。在 KCU GEN2 (TC387QP) 上 KopherBoot 可整合 HSM 完成 Secure Boot 鏈。

多 Application 切換是否支援?

可定義雙 Application 區段(A/B Slot)的 OTA 模式:寫入備援區、驗證通過後 swap,避免單一區段寫入失敗導致無法啟動。需於 Flash 配置階段規劃。

簽章演算法可以選嗎?

可以。KopherBoot 預設支援 ECDSA (secp256r1) + SHA-256,可依 OEM 政策選擇 RSA-2048/3072、ECDSA secp384r1 或其他 NIST 曲線。

Bootloader 自身可被更新嗎?

預設不可(Bootloader 為信任根)。若需 Bootloader 更新,須採二段式 Boot 設計(Boot Manager + Updateable Bootloader),具額外複雜度與安全考量,請依專案需求評估。

JSON-LD

{
  "@context": "https://schema.org",
  "@type": "TechArticle",
  "headline": "KopherBoot:車規 UDS Bootloader",
  "description": "KopherBoot 為 KopherBit 提供之 UDS Bootloader,支援 CAN / CAN FD / DoIP,內建 SecurityAccess、CRC/簽章校驗、HSM Secure Boot 整合。",
  "url": "https://kopherbit.com/knowledge/kopherboot-uds-bootloader/",
  "datePublished": "2026-05-09",
  "dateModified": "2026-05-09",
  "inLanguage": "zh-TW",
  "keywords": ["KopherBoot", "UDS Bootloader", "ISO 14229", "Secure Boot", "HSM"],
  "articleSection": "Diagnostics",
  "author": { "@type": "Organization", "name": "KopherBit", "url": "https://kopherbit.com" },
  "publisher": { "@type": "Organization", "name": "KopherBit", "logo": { "@type": "ImageObject", "url": "https://kopherbit.com/logo.png" } }
}