Attestierung

Zertifizierte Geräte sind Geräte, die den Connectivity Standards Alliance (Alliance) Matter-Zertifizierungsprozess durchlaufen haben.

Während der Inbetriebnahme muss sich ein zertifiziertes Gerät selbst zertifizieren. Mit anderen Worten, es muss beweisen, dass es das ist, was es behauptet, und dass es sich um ein echtes Produkt handelt. Somit haben alle Matter-Geräte Anmeldedaten, die das Attestierungsschlüsselpaar und eine zugehörige Zertifikatskette umfassen. Das Device Attestation Certificate (DAC) ist Teil dieser Kette. Sobald das in Betrieb genommene Gerät seinem Beauftragten den DAC vorlegt, bestätigt dieser Folgendes:

  • es von einem zertifizierten Hersteller stammt.
  • es sich um ein echtes Gerät handelt.
  • Er hat Matter Compliance-Tests bestanden.

Während der Entwicklungsphase kann der Hersteller seine Geräte ohne vollständigen Attestierungsprozess testen. Tester sollten explizit darüber informiert werden, dass das Gerät gerade getestet wird und noch nicht zertifiziert und auf dem Markt eingeführt wurde. Sobald ein Hersteller in eine Produktionsphase gelangt, sollte die Umgebung des Bereitstellers alle Attestierungsanforderungen durchsetzen.

Für die Attestierung wird eine Public-Key-Infrastruktur (Public Key Infrastructure, PKI) verwendet, die Root-Zertifizierungsstellen und Zwischenzertifikate nutzt, ähnlich wie die weit verbreiteten Serverauthentifizierungszertifikate für SSL/TLS. Dieser Prozess wird als Zertifikatskette für die Geräteattestierung bezeichnet.

Geräteattestierungs-PKI

Der DAC ist ein X.509 v3-Zertifikat. Die erste Version von X.509 wurde 1988 von ITU-T veröffentlicht. X.509 v3 mit dem von Matter verwendeten Public-Key-Infrastrukturzertifikat und der Zertifikatssperrliste (Certificate Revocation List, CRL) wird durch RFC5280 angegeben. Es enthält:

  • Öffentlicher Schlüssel
  • Aussteller
  • Betreff
  • Seriennummer des Zertifikats
  • Gültigkeit, wobei der Ablauf unbestimmt sein kann
  • Unterschrift

Anbieter-ID und Produkt-ID sind Attribute von MatterDACName im DAC-Subjekt.

Der DAC ist für jedes Gerät eindeutig und dem eindeutigen Attestierungsschlüsselpaar innerhalb des Produkts zugeordnet. Sie wird von einer Zertifizierungsstelle ausgestellt, die dem Gerätehersteller zugeordnet ist.

Die Signatur des DAC wird anhand des Product Attestation Intermediate Certificate (PAI) validiert, das ebenfalls von einer PAA ausgestellt wird. Ein Anbieter kann jedoch auch eine PAI pro Produkt (PID-spezifisch), Produktgruppe oder für alle seine Produkte erstellen.

Im Stamm der Vertrauenskette validiert der öffentliche Schlüssel der Product Attestation Authority (PAA) Zertifizierungsstelle (CA) Signaturen der PAI. Beachten Sie, dass der Matter-Trust Store föderiert ist und die von Commissioners als vertrauenswürdig eingestuften PAA-Zertifikate in einer zentralen vertrauenswürdigen Datenbank (Distributed Compliance Ledger) verwaltet werden. Für die Aufnahme einer PAA in den vertrauenswürdigen Satz muss eine Zertifikatsrichtlinie eingehalten werden, die von Alliance verwaltet wird.

Public-Key-Infrastruktur für die Attestierung von Matter
Abbildung 1: Public-Key-Infrastruktur für die Attestierung der Rechtsangelegenheit

Die PAI ist auch ein X.509 v3-Zertifikat, das Folgendes enthält:

  • Öffentlicher Schlüssel
  • Aussteller
  • Betreff
  • Seriennummer des Zertifikats
  • Gültigkeit, wobei der Ablauf unbestimmt sein kann
  • Unterschrift

Anbieter-ID und Produkt-ID (optional) sind Attribute von MatterDACName im DAC-Subjekt.

Schließlich ist die PAA das Root-Zertifikat in der Kette und ist selbst signiert. Es enthält:

  • Unterschrift
  • Öffentlicher Schlüssel
  • Aussteller
  • Betreff
  • Seriennummer des Zertifikats
  • Gültigkeit

Zusätzliche Attestierungsdokumente und Nachrichten

Der Attestierungsprozess umfasst mehrere Dokumente und Nachrichten. Die folgenden Elemente geben einen kurzen Überblick über ihre Funktion und Zusammensetzung. Das Bild unten hilft beim Verständnis ihrer Hierarchie.

Hierarchie von Attestierungsdokumenten
Abbildung 2: Hierarchie von Attestierungsdokumenten
Dokument Beschreibung
Zertifizierungserklärung (CD) Mithilfe der CD kann das Matter-Gerät die Einhaltung des Matter-Protokolls nachweisen. Nach Abschluss der Matter-Zertifizierungsprozesse erstellt Alliance eine CD für den Gerätetyp, die der Anbieter in die Firmware aufnehmen kann. Die CD enthält unter anderem folgende Informationen:
  • VID
  • PID (eine oder mehrere)
  • Serverkategorie-ID
  • Client-Kategorie-ID
  • Sicherheitsebene
  • Sicherheitsinformationen
  • Art der Zertifizierung (Entwicklung, vorläufige oder offizielle Zertifizierung)
  • Unterschrift
Firmware-Informationen (optional) Die Firmwareinformationen enthalten die CD-Versionsnummer und einen oder mehrere Digests der Firmwarekomponenten wie Betriebssystem, Dateisystem und Bootloader. Die Digests können entweder ein Hash der Softwarekomponenten oder ein Hash der signierten Manifeste der Softwarekomponenten sein.

Außerdem kann der Anbieter in den Firmwareinformationen auch nur den Hash-of-Hashes seiner Komponenten anstelle eines Arrays einzelner Hashes aufnehmen.

Firmwareinformationen sind ein optionales Element im Attestierungsprozess und gilt für ein sicheres Boot-Paar, das von einem Anbieter bereitgestellt wird.
Attestierungsinformationen Diese Nachricht wurde vom Kommissar an den Kommissar gesendet. Die Attestierungsinformationen kombinieren einen TLV mit den Attestierungselementen und einer Attestierungssignatur.
Attestierungselemente Dies ist ein TLV mit:

  • Zertifikatsdeklaration
  • Zeitstempel
  • Bestätigung Nonce
  • Firmware-Informationen (optional)
  • Anbieterspezifische Informationen (optional)
Attestierungsherausforderung Out-of-Band-Herausforderung, die während der Passcode Authenticated Session Establishment (PASE)/Certificate Authenticated Session Establishment (CASE)-Sitzungseinrichtung ermittelt und verwendet wird, um das Verfahren weiter abzusichern und wiederholte Signaturen zu vermeiden. Sie stammen entweder aus einer CASE-Sitzung, einer PASE-Sitzung oder einer fortgesetzten CASE-Sitzung.
Bestätigung TBS (muss unterschrieben werden) Nachricht mit den Attestierungselementen und der Attestierungsherausforderung.
Attestierungssignatur Signatur der Attestierungs-TBS, signiert mit dem privaten Schlüssel für die Geräteattestierung.

Attestierungsverfahren

Der Commissioner ist für die Bestätigung des Kommissionsmitglieds verantwortlich. Dazu werden die folgenden Schritte ausgeführt:

  1. Commissioner generiert eine zufällige 32-Byte-Attestierungs-Nonce. Im Kryptografiejargon ist eine Nonce (eine Zahl wird einmal verwendet) eine Zufallszahl, die beim kryptografischen Verfahren generiert und einmal verwendet werden soll.
  2. Der Commissioner sendet die Nonce an den DUT und fordert die Attestierungsinformationen an.
  3. DUT generiert die Attestierungsinformationen und signiert sie mit dem privaten Schlüssel für die Attestierung.
  4. Der Commissioner stellt das DAC- und PAI-Zertifikat vom Gerät wieder her und ruft das PAA-Zertifikat aus seinem Matter-Trust Store ab.
  5. Der Commissioner überprüft die Attestierungsinformationen. Dies sind die Bedingungen für die Validierung:
    • Die DAC-Zertifikatskette muss validiert werden, einschließlich Sperrprüfungen der PAI und PAA.
    • Die VID im DAC stimmt mit der VID in der PAI überein.
    • Die Attestierungssignatur ist gültig.
    • Die Nonce in den Elementen zur Geräteattestierung stimmt mit der vom Commissioner angegebenen Nonce überein.
    • Die Signatur der Zertifikatdeklaration ist mit einem der bekannten Signaturschlüssel der Alliance-Zertifizierungserklärung gültig.
    • Firmwareinformationen (falls vorhanden und vom Commissioner unterstützt) stimmen mit einem Eintrag im Distributed Compliance Ledger überein.
    • Weitere VID/PID-Validierungen finden außerdem zwischen dem Cluster mit den grundlegenden Informationen des Geräts, der Zertifizierungserklärung und dem DAC statt.