Der Stoff

Nachdem wir nun einige wichtige Konzepte eines Knotens kennengelernt haben, analysieren wir, was die Kommunikation zwischen Geräten ermöglicht.

Die Matter-Spezifikation verwendet ausgefeilte Methoden zum Verschlüsseln und Entschlüsseln von Informationen sowie sichere Mechanismen, um die Identität eines Knotens zu bestätigen und kryptografische Anmeldedaten zu teilen.

Wenn mehrere Geräte in einem Netzwerk dieselbe Sicherheitsdomain verwenden und somit eine sichere Kommunikation zwischen Knoten möglich ist, wird dies als Fabric bezeichnet. Fabrics verwenden dasselbe Zertifikat der obersten Ebene der Zertifizierungsstelle (CA) (Root of Trust) und innerhalb des Kontexts der CA eine eindeutige 64-Bit-Kennung namens Fabric-ID.

Die Inbetriebnahme ist also die Zuweisung der Fabric-Anmeldedaten zu einem neuen Knoten, damit dieser mit anderen Knoten in derselben Fabric kommunizieren kann.

Betriebsanmeldedaten

Der Root of Trust wird auf einem Knoten während der Inbetriebnahme durch den Commissioner festgelegt, in der Regel ein Gerät mit einer Art Benutzeroberfläche wie ein Smartphone, Hub oder Computer, nachdem er ihn von einem Administrative Domain Manager (ADM) erhalten hat, der häufig ein Ökosystem ist, das als Trusted Root Certificate Authority (CA) fungiert.

Der Beauftragte hat Zugriff auf die CA. Dazu werden die Node Operational Credentials (Betriebsanmeldedaten des Knotens) im Namen des in Betrieb genommenen Knotens oder des Commissionee (Inbetriebnehmer) von der Zertifizierungsstelle angefordert. Die Anmeldedaten bestehen aus zwei Teilen:

Die Node Operational Identifier (oder Operational Node ID) ist eine 64-Bit-Zahl, die jeden Knoten im Fabric eindeutig identifiziert.

Das Node Operational Certificate (NOC) ist der Satz von Anmeldedaten, die Knoten verwenden, um innerhalb einer Fabric zu kommunizieren und sich zu identifizieren. Sie werden durch den Prozess Node Operational Certificate Signing Request (NOCSR) generiert.

NOCSR ist ein Verfahren, das auf dem Knoten ausgeführt wird, der in Betrieb genommen wird. Es werden mehrere kryptografische Elemente gebunden und dann an den Commissioner gesendet, der das CA-Ökosystem um das entsprechende NOC bittet. Abbildung 1 zeigt diesen Abhängigkeitsbaum und die Reihenfolge, in der einige Vorgänge ausgeführt werden.

Abhängigkeiten bei der NOC-Generierung
Abbildung 1: Abhängigkeiten bei der NOC-Generierung

Es ist wichtig, die einzelnen kryptografischen Elemente für die SDK-Entwicklung zu verstehen. Eine vollständige Analyse ihrer Rolle und Auswirkungen würde jedoch den Rahmen dieses Leitfadens sprengen. Wichtig:

  • NOCs werden vom CA-Ökosystem für Produktionsstoffe aus der realen Welt ausgestellt.
  • NOCs sind kryptografisch an das eindeutige Node Operational Key Pair (NOKP) gebunden.
  • NOKP wird generiert, wenn der Knoten während des Inbetriebnahmeprozesses in Betrieb genommen wird.
  • Die an das Ökosystem gesendeten NOCSR-Informationen enthalten den öffentlichen Schlüssel für den Betrieb des Knotens, der private Schlüssel für den Betrieb des Knotens wird jedoch niemals an den Commissioner oder die Zertifizierungsstelle gesendet.
  • Beim NOCSR-Prozess werden Eingaben aus dem Attestierungsverfahren verwendet, die CSRSR-Informationen werden signiert und somit wird die Anfrage an die Zertifizierungsstelle validiert, ein vertrauenswürdiges NOC zu generieren.

Das Attestierungsverfahren ist ein Verfahren, mit dem der Commissioner Folgendes bescheinigt:

  • Das Gerät wurde Matter-zertifiziert.
  • Das Gerät ist tatsächlich das, was es vorgibt zu sein: Es beweist kryptografisch seinen Anbieter, seine Produkt-ID und andere Herstellungsinformationen.

Multi-Admin

Knoten können auch in mehreren Fabrics in Betrieb genommen werden. Diese Property wird oft als „Multi-Admin“ bezeichnet. Ein Gerät kann beispielsweise sowohl für das Fabric des Herstellers als auch für das Fabric eines Cloud-Ökosystems in Betrieb genommen werden. Jedes Fabric verarbeitet dabei einen anderen Satz verschlüsselter Kommunikation und arbeitet unabhängig.

Da mehrere Fabrics gleichzeitig vorhanden sein können, kann ein Gerät mehrere Sätze von Node-Betriebsanmeldedaten haben. Das Datenmodell des Knotens ist jedoch gemeinsam: Die Clusterattribute, Ereignisse und Aktionen sind für alle Fabrics gleich. Obwohl Thread und/oder WLAN-Anmeldedaten während der Inbetriebnahme festgelegt werden, gehören sie zum Networking Operational Cluster und werden zwischen allen Fabrics geteilt. Sie sind Teil des Gerätebaums des Knotens, nicht der Fabric-Anmeldedaten.