コミッショニング

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

コミッショニング フローは、大まかに次の複数のステージに分割できます。

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

デバイス検出

コミッショニング フローを開始する前に、コミッショニーは広告自体を開始する必要があります。コミッショニーは、3 つのコミッション可能な検出方法のいずれかを使用して自身を宣伝することができます。コミッショニーは、オンボーディング ペイロードも提供する必要があります。

デバイスに接続(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 を使用して、コミッショニングされたノードを運用ネットワーク上で見つけるプロセスです。コミッショニーが Wi-Fi デバイスの場合、mDNS を使用してデバイスを検出します。

運用上の検出により、コミッショナーとネットワーク内の他のノードは、コミッショナーが使用している IP アドレスとポートを認識できます。

CASE セッションの確立

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

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

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