コミッショニング

Matter のコミッショニングとは、新しいデバイスにファブリック認証情報を割り当てるプロセスです。コミッショナーは、コミッショニング プロセスを行うデバイスです。コミッショニーは、ファブリックにプロビジョニングする必要がある新しいデバイスです。

大まかに言うと、コミッショニング フローは複数のステージに分けられます。

コミッショニング フロー
図 1: 登録フロー - 概要

デバイス検出

コミッショニング フローを開始する前に、コミッショニーは自身の広告を開始する必要があります。コミッショナーは、3 つのコミッション対象のディスカバリ方法のいずれかを使用して、自己を宣伝できます。Commissionee はオンボーディング ペイロードも提供する必要があります。

デバイスに接続(PASE)

コミッショナーがアドバタイズメントを確認し、識別子を照合すると、コミッショナーはオンボーディング ペイロードのパスコードを使用して Passcode Authenticated Session Establishment (PASE) を実行し、デバイスに接続します。これは、両方のデバイスが通信の確立に使用できる鍵を安全に確立する方法です。このステップでは、コミッショナーはフェイルセーフも設定します。フェイルセーフは、コミッショニングが正常に完了しなかった場合にデバイスを元の状態にロールバックする方法を提供します。

委託先の情報を取得する

コミッショナーは、コミッショニーからすべての記述子を読み取ります。DescriptorCluster はデバイスのエンドポイント 0 にあり、他のすべてのエンドポイントを記述します。コミッショナーは、ベンダー ID、プロダクト ID、プロダクト名、シリアル番号などの情報を含む基本情報クラスタも読み取ります。このステップでは、コミッショナーはコミッショニーのデバイスタイプも読み取ります。これは、コミッショナー側の UX を推進するのに役立ちます。

規制構成

コミッショナーは、SetRegulatoryConfig コマンドを使用してコミッショニーの規制情報を構成します。規制情報には、デバイスの場所(屋内/屋外/両方)の構成や国コードの設定などの情報が含まれます。

コミッショニーの証明書

委託者の証明手続きの目的は、デバイスが認定済みで、本物の Matter デバイスであるかどうかを判断することです。コミッショナーは、コミッショニーからデバイス証明書(DAC)プロダクト証明書中間(PAI)を抽出します。これらの証明書には、ベンダー ID、プロダクト ID、認証公開鍵が含まれています。証明書を受け取ると、コミッショナーは証明書秘密鍵で署名されるチャレンジ リクエストを行い、それを使用してコミッショニーの信頼性を確立します。

証明書署名リクエスト(CSR)

コミッショナーは、証明書署名リクエスト(CSR)をコミッショニーに送信します。コミッショニーは、後で Certificate Authenticated Session Establishment (CASE) で使用される一意のオペレーション鍵ペアを作成します。コミッショニーは、結果の CSR 情報をコミッショナーに返します。

ノード運用証明書(NOC)を追加する

コミッショナーは、コミッショニーから受け取った CSR 情報を使用して、管理ドメイン マネージャー(ADM)に渡して、信頼できるノード オペレーション証明書(NOC)を生成します。コミッショナーは、AddTrustedRootCertReq コマンドを使用してコミッショニーにルート証明書をインストールし、AddNOC コマンドを使用してノード オペレーション証明書をインストールします。

ネットワークのプロビジョニング

コミッショナーはコミッショニーでオペレーション ネットワークを構成します。この手順は、Thread デバイスまたは Wi-Fi デバイスで必要です。デバイスがすでにネットワークに接続されているイーサネット デバイスの場合、この手順は必要ありません。ScanNetworksAddOrUpdateWifiNetworkConnectNetwork コマンドを使用します。

運用上の検出

新たにコミッショニングされたノードがネットワークに接続されると、コミッショナーは運用ディスカバリを使用して、運用ネットワーク上のノードを見つけます。運用ディスカバリは、DNS-SD を使用して運用ネットワーク上でコミッショニングされたノードを見つけるプロセスです。Commissionee が Wi-Fi デバイスの場合、mDNS を使用してデバイスを検出します。

オペレーショナル ディスカバリにより、コミッショナーとネットワーク内の他のノードは、コミッショニーが使用している IP アドレスとポートを認識できます。

CASE セッションの確立

新たにコミッショニングされたノードが検出されると、コミッショナーとデバイスの間に CASE セッションが確立されます。このセッションはコミッショナーによって開始され、デバイスによって応答されます。このステップでは、オペレーション証明書が交換され、同じ論理ファブリック内にあることを検証することで共有信頼が確立されます。

コミッショニングが完了しました

コミッショナーは CASE を使用して、新たにコミッショニングされたデバイスに CommissioningComplete コマンドを送信します。これはコミッショニング プロセスの最後のステップです。また、CommissioningComplete はフェイルセーフ タイマーを自動的に解除します。コミッショニングが正常に完了すると、デバイスはオペレーション ネットワーク上の他のノードと同様に動作します。