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 bestätigen. Mit anderen Worten: Es muss beweisen, dass es das ist, was es verspricht, und dass es ein echtes Produkt ist. Daher haben alle Matter-Geräte Anmeldedaten, die das Bestätigungsschlüsselpaar und eine zugehörige Zertifikatskette umfassen. Das Device Attestation Certificate (DAC) ist Teil dieser Kette. Sobald das in Betrieb genommene Gerät dem Beauftragten des DAC den DAC vorlegt, bestätigt dieser Folgendes:

  • von einem zertifizierten Hersteller hergestellt wurde.
  • dass 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 den vollständigen Bestätigungsprozess testen. Tester sollten explizit darüber informiert werden, dass das Gerät gerade getestet wird und noch nicht zertifiziert und eingeführt wurde. Sobald ein Hersteller in eine Produktionsphase eintritt, sollte das System des Bereitstellers alle Anforderungen an die Zertifizierung durchsetzen.

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

Geräteattestierungs-PKI

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

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

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

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.

Als Stamm der Vertrauenskette validiert der öffentliche Schlüssel der Product Attestation Authority (Product Attestation Authority, PAA) Certificate Authority (CA) Signaturen der PAI. Der Trust Store Matter ist föderiert und die von den Kommissionen vertrauenswürdigen PAA-Zertifikate werden in einer zentralen vertrauenswürdigen Datenbank (Distributed Compliance Ledger) verwaltet. Für den Eintrag einer PAA innerhalb des vertrauenswürdigen Satzes muss eine Zertifikatsrichtlinie erfüllt sein, die von Alliance verwaltet wird.

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

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

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

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

Schließlich ist die PAA das Stammzertifikat in der Kette und selbst signiert. Sie umfasst Folgendes:

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

Zusätzliche Dokumente und Nachrichten für die Bestätigung

Der Attestierungsprozess umfasst mehrere Dokumente und Nachrichten. Die folgenden Elemente bieten einen kurzen Überblick über ihre Funktion und Zusammensetzung. Die Abbildung unten verdeutlicht ihre Hierarchie.

Hierarchie des Attestierungsdokuments
Abbildung 2: Hierarchie des Attestierungsdokuments
Dokument Beschreibung
Zertifizierungserklärung (CD) Mit der CD kann das Matter-Gerät seine Compliance mit dem Matter-Protokoll nachweisen. Sobald die Matter-Zertifizierungsprozesse abgeschlossen sind, erstellt die Alliance eine CD für den Gerätetyp, damit der Anbieter sie in die Firmware aufnehmen kann. Die CD enthält unter anderem folgende Informationen:
  • VID (VID)
  • PID (eine oder mehrere)
  • Serverkategorie-ID
  • Clientkategorie-ID
  • Sicherheitsebene
  • Sicherheitsinformationen
  • Zertifizierungstyp (Entwicklung, vorläufig oder offiziell)
  • Unterschrift
Firmware-Informationen (optional) Die Firmwareinformationen enthalten die CD-Versionsnummer und einen oder mehrere Digests der Komponenten in der Firmware, z. B. das Betriebssystem, das Dateisystem, den Bootloader. Die Digests können entweder ein Hash der Softwarekomponenten oder ein Hash der signierten Manifeste der Softwarekomponenten sein.

Es kann aber auch sein, dass in die Firmwareinformationen nur der Hash-Wert der Hashes der Komponenten und nicht ein Array einzelner Hashes aufgenommen werden.

Firmware-Informationen sind ein optionales Element im Attestationsprozess und sind anwendbar, wenn ein Anbieter über einen sicheren Boot-Schlüssel verfügt.
Informationen zur Bestätigung Nachricht, die vom Kommissionsmitglied an den Beauftragten gesendet wird Die Attestierungsinformationen kombinieren eine TLV, die die Bestätigungselemente und eine Bestätigungssignatur enthält.
Attestierungselemente Dies ist ein TLV, das:

  • Zertifikatdeklaration
  • Zeitstempel
  • Attestierung Nonce
  • Firmware-Informationen (optional)
  • Anbieterspezifische Informationen (optional)
Attestierungsherausforderung Out-of-Band-Abfrage, die während der Passcode Authenticated Session Establishment (PASE)-/Certificate Authenticated Session Establishment (CASE)-Sitzungseinrichtung ermittelt wurde und verwendet wird, um das Verfahren weiter abzusichern und wiederholte Signaturen zu vermeiden. Sie stammt aus einer CASE- oder PASE-Sitzung oder einer fortgesetzten CASE-Sitzung.
Bestätigung TBS (noch zu unterzeichnen) Nachricht, die die Elemente der Attestierung und die Herausforderung enthält.
Unterschrift der Attestierung Signatur von TBS, signiert mit dem privaten Schlüssel der Geräteattestierung.

Bestätigungsverfahren

Der Beauftragte ist für die Bestätigung des Beauftragten verantwortlich. Er führt die folgenden Schritte aus:

  1. Der Provisioner generiert eine zufällige 32-Byte-Attestierungs-Nonce. Im Kryptografiejargon ist eine Nonce (eine Nummer, die einmal verwendet wird) eine Zufallszahl, die im kryptografischen Verfahren generiert und nur einmal verwendet werden soll.
  2. Der Beauftragte sendet die Nonce an die DUT und fordert die Bestätigungsinformationen an.
  3. Die DUT generiert die Bestätigungsinformationen und signiert sie mit dem privaten Schlüssel der Attestierung.
  4. Der Commissioner stellt das DAC- und PAI-Zertifikat vom Gerät wieder her und ruft das PAA-Zertifikat im Trust Store Matter ab.
  5. Der Beauftragte überprüft die Bestätigungsinformationen. Dies sind die Bedingungen für die Validierung:
    • Die DAC-Zertifikatskette muss validiert werden, einschließlich Widerrufsprüfungen für PAI und PAA.
    • Die VID im DAC stimmt mit der VID auf der PAI überein.
    • Die Attestierungssignatur ist gültig.
    • Nonce in den Elementen der Geräteattestierung entspricht der vom Commissioner angegebenen Nonce.
    • Die Signatur der Zertifikatdeklaration ist gültig, wenn sie einen der bekannten Signaturschlüssel der Alliance verwenden.
    • Firmware-Informationen (sofern vorhanden und vom Kommissar unterstützt) stimmen mit einem Eintrag im Distributed Compliance Ledger überein.
    • Zusätzliche VID/PID-Validierungen finden auch zwischen dem Basisinformations-Cluster des Geräts, der Zertifizierungserklärung und dem DAC statt.