「認證裝置」是指已通過Connectivity Standards Alliance (Alliance) Matter認證程序的裝置。
在委任程序中,認證裝置必須認證自身。換句話說,它必須證明自己是它所聲稱的產品,而且是正版產品。因此,所有 Matter 裝置都具備憑證,其中包含認證金鑰組和相關聯的憑證鏈結。裝置認證憑證 (DAC) 是這個鏈結的一部分。待委任裝置向委任者提供 DAC 後,委任者會認證:
- 由認證製造商生產。
- 是正版裝置。
- 已通過 Matter 項法規遵循測試。
在開發階段,製造商可以測試裝置,不必完成完整的認證程序。測試人員應明確得知裝置正在測試中,尚未通過認證及推出。製造商進入生產階段後,佈建工具的生態系統應強制執行所有認證規定。
認證會使用公用金鑰基礎架構 (PKI),利用根憑證授權單位和中繼憑證,類似於 SSL/TLS 廣泛採用的伺服器驗證憑證。這項程序稱為裝置認證憑證鏈結。
裝置認證 PKI
DAC 是 X.509 v3 憑證。X.509 的第一個版本由 ITU-T 於 1988 年發布。Matter 使用的 X.509 v3 憑證 (含公用金鑰基礎架構憑證) 和憑證撤銷清單 (CRL) 是由 RFC5280 指定。其中包含:
- 公開金鑰
- 監理機關
- 主旨
- 憑證序號
- 效期,到期日可能不確定
- 簽名
供應商 ID 和產品 ID 是 DAC 主體中 MatterDACName 的屬性。
每部裝置都有專屬的 DAC,並與產品內的專屬認證金鑰組相關聯。由與裝置製造商相關聯的 CA 核發。
DAC 的簽章會根據產品認證中繼憑證 (PAI) 進行驗證,該憑證也是由 PAA 核發。不過,供應商可以選擇為每項產品 (PID 專屬)、產品群組或所有產品建立一個 PAI。
在信任鏈的根層級,產品認證授權單位 (PAA) 憑證授權單位 (CA) 公開金鑰會驗證 PAI 的簽章。請注意,Matter 信任存放區是聯合存放區,而委託人信任的 PAA 憑證組合則維護在中央信任資料庫 (分散式法規遵循總帳) 中。如要在信任組合中加入 PAA,必須符合Alliance管理的憑證政策。
PAI 也是 X.509 v3 憑證,包含:
- 公開金鑰
- 監理機關
- 主旨
- 憑證序號
- 效期,到期日可能不確定
- 簽名
供應商 ID 和產品 ID (選用) 是 DAC 主體中 MatterDACName 的屬性。
最後,PAA 是鏈結中的根憑證,且為自行簽署。包括:
- 簽名
- 公開金鑰
- 監理機關
- 主旨
- 憑證序號
- 有效性
其他認證文件和訊息
認證程序包含多份文件和訊息。以下簡要說明其功能和組成。下圖有助於瞭解其階層結構。
| 文件 | 說明 |
|---|---|
| 認證聲明 (CD) | CD 可讓 Matter 裝置證明其符合 Matter 通訊協定。每當 Matter 認證程序完成時,Alliance 就會為裝置類型建立 CD,以便供應商將其納入韌體。CD 包含下列資訊:
|
| 韌體資訊 (選填) | 「韌體資訊」包含 CD 版本號碼,以及韌體中一或多個元件的摘要,例如 OS、檔案系統、開機載入程式。摘要可能是軟體元件的雜湊,也可能是軟體元件已簽署資訊清單的雜湊。 供應商也可以選擇在韌體資訊中僅加入其元件的「雜湊的雜湊」,而非個別雜湊的陣列。 韌體資訊是認證程序中的選用元素,適用於供應商擁有處理認證金鑰組的安全啟動環境時。 |
| 認證資訊 | 委託人傳送給委託方的訊息。認證資訊結合了包含認證元素的 TLV 和認證簽章。 |
| 認證元素 | 這是 TLV,包含:
|
| 認證驗證問題 | 在 Passcode Authenticated Session Establishment (PASE)/Certificate Authenticated Session Establishment (CASE) 工作階段建立期間衍生的頻外驗證,用於進一步保護程序,並避免重送簽章。來自 CASE 工作階段、PASE 工作階段或已恢復的 CASE 工作階段。 |
| Attestation TBS (to be signed) | 包含認證元素和認證查問的訊息。 |
| 認證簽章 | 認證 TBS 的簽章,使用裝置認證私密金鑰簽署。 |
驗證程序
調試裝置負責驗證調試對象。執行下列步驟:
- Commissioner 會產生隨機的 32 位元組認證 Nonce。在密碼學術語中,nonce (一次性數字) 是在密碼編譯程序中產生的隨機號碼,只能使用一次。
- Commissioner 將 Nonce 傳送至 DUT,並要求提供認證資訊。
- DUT 會產生認證資訊,並使用認證私密金鑰簽署。
- Commission 程式會從裝置復原 DAC 和 PAI 憑證,並從其 Matter 信任存放區查詢 PAA 憑證。
- 委託者驗證認證資訊。驗證條件如下:
- DAC 憑證鏈結必須經過驗證,包括 PAI 和 PAA 的撤銷檢查。
- DAC 上的 VID 與 PAI 上的 VID 相符。
- 認證簽章有效。
- 裝置認證元素中的 Nonce 與 Commissioner 提供的 Nonce 相符。
- 憑證宣告簽章有效,使用的是 Alliance 的其中一個知名憑證宣告簽署金鑰。
- 韌體資訊 (如有,且 Commissioner 支援) 與分散式法規遵循總帳中的項目相符。
- 裝置基本資訊叢集、認證聲明和 DAC 之間也會進行額外的 VID/PID 驗證。