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 attestieren. Mit anderen Worten: Es muss nachgewiesen werden, dass es sich um das angegebene Produkt handelt und dass es sich um ein Originalprodukt handelt. Daher 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 Gerät, das in Betrieb genommen wird, dem Bevollmächtigten die DAC vorlegt, bestätigt dieser Folgendes:

  • es wurde von einem zertifizierten Hersteller hergestellt.
  • Es ist ein Originalgerät.
  • Sie hat Matter Compliance-Tests bestanden.

Während der Entwicklungsphase kann der Hersteller seine Geräte ohne den vollständigen Attestierungsprozess testen. Tester müssen ausdrücklich darüber informiert werden, dass das Gerät noch nicht zertifiziert und auf den Markt gebracht wurde. Sobald ein Hersteller in die Produktionsphase eintritt, sollten alle Attestierungsanforderungen vom Anbietersystem erzwungen werden.

Für die Attestierung wird eine Public-Key-Infrastruktur (PKI) verwendet, die Stammzertifizierungsstellen und Zwischenzertifikate nutzt, ähnlich wie die weit verbreiteten Serverauthentifizierungszertifikate, die für SSL/TLS verwendet werden. Dieser Vorgang wird als Geräteattestierungszertifikatskette bezeichnet.

PKI für die Geräteattestierung

Das DAC ist ein X.509 v3-Zertifikat. Die erste Version von X.509 wurde 1988 von der ITU-T veröffentlicht. Das von Matter verwendete X.509 v3-Zertifikat mit Public-Key-Infrastruktur und Zertifikatssperrliste (Certificate Revocation List, CRL) ist in RFC5280 spezifiziert. Sie enthält:

  • Öffentlicher Schlüssel
  • Aussteller
  • Betreff
  • Seriennummer des Zertifikats
  • Gültigkeit, bei der das Ablaufdatum unbestimmt ist
  • Unterschrift

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

Der DAC ist für jedes Gerät eindeutig und mit dem eindeutigen Attestierungsschlüsselpaar im Produkt verknüpft. Es wird von einer Zertifizierungsstelle ausgestellt, die mit dem Gerätehersteller verknüpft 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.

Am Anfang der Vertrauenskette wird der öffentliche Schlüssel der Zertifizierungsstelle der Produktattestierungsstelle (Product Attestation Authority Certificate Authority, PAA CA) verwendet, um Signaturen der PAI zu validieren. Der Matter-Trust Store ist föderiert und die von den Aufsichtsbehörden als vertrauenswürdig eingestuften PAA-Zertifikate werden in einer zentralen vertrauenswürdigen Datenbank (Distributed Compliance Ledger) verwaltet. Für die Aufnahme einer PAA in die vertrauenswürdige Gruppe muss eine von der Alliance verwaltete Zertifikatsrichtlinie erfüllt werden.

Matter Attestation Public Key Infrastructure
Abbildung 1: Matter Attestation Public Key Infrastructure

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

  • Öffentlicher Schlüssel
  • Aussteller
  • Betreff
  • Seriennummer des Zertifikats
  • Gültigkeit, bei der das Ablaufdatum unbestimmt ist
  • Unterschrift

Die Anbieter-ID und die Produkt-ID (optional) sind Attribute der MatterDACName im DAC-Subjekt.

Das PAA ist das Stammzertifikat in der Kette und selbst signiert. Dazu gehören:

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

Zusätzliche Attestationsdokumente und -nachrichten

Der Attestierungsprozess umfasst mehrere Dokumente und Nachrichten. Die folgenden Punkte geben einen kurzen Überblick über ihre Funktion und Zusammensetzung. Das folgende Bild veranschaulicht die Hierarchie.

Hierarchie der Attestationsdokumente
Abbildung 2: Hierarchie der Attestationsdokumente
Dokument Beschreibung
Zertifizierungserklärung (CD) Mit der CD kann das Matter-Gerät seine Einhaltung des Matter-Protokolls nachweisen. Nach Abschluss der Matter-Zertifizierung erstellt die 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 Category ID
  • Sicherheitsebene
  • Sicherheitsinformationen
  • Zertifizierungstyp (Entwicklung, vorläufig oder offiziell)
  • Unterschrift
Firmwareinformationen (optional) Die Firmware-Informationen enthalten die CD-Versionsnummer und einen oder mehrere Digests von Komponenten in der Firmware, z. B. das Betriebssystem, das Dateisystem und den Bootloader. Die Digests können entweder ein Hash der Softwarekomponenten oder ein Hash der signierten Manifeste der Softwarekomponenten sein.

Der Anbieter kann in den Firmware-Informationen auch nur den „Hash-of-Hashes“ seiner Komponenten anstelle eines Arrays einzelner Hashes angeben.

Firmware-Informationen sind ein optionales Element im Attestation-Prozess und gelten, wenn ein Anbieter eine sichere Boot-Umgebung hat, die das Attestation-Schlüsselpaar verarbeitet.
Attestierungsinformationen Nachricht, die vom Bevollmächtigten an den Bevollmächtigten gesendet wurde. Die Attestierungsinformationen kombinieren ein TLV mit den Attestierungselementen und einer Attestierungssignatur.
Attestierungselemente Dies ist ein TLV mit folgenden Informationen:

  • Erklärung zum Zertifikat
  • Zeitstempel
  • Attestierungs-Nonce
  • Firmwareinformationen (optional)
  • Anbieterspezifische Informationen (optional)
Attestation Challenge Out-of-Band-Herausforderung, die während der Passcode Authenticated Session Establishment (PASE)/Certificate Authenticated Session Establishment (CASE)-Sitzungseinrichtung abgeleitet wird und dazu dient, das Verfahren weiter zu sichern und wiederholte Signaturen zu vermeiden. Stammt aus einer CASE-, PASE- oder einer fortgesetzten CASE-Sitzung.
Attestierung TBS (unterzeichnet werden muss) Nachricht mit den Attestierungselementen und der Attestierungs-Herausforderung.
Unterschrift für die Bestätigung Signatur der Attestierungs-TBS, signiert mit dem privaten Schlüssel der Geräteattestierung.

Attestierungsverfahren

Der Auftraggeber ist dafür verantwortlich, die Bevollmächtigten zu bestätigen. Dabei werden die folgenden Schritte ausgeführt:

  1. Der Prüfer generiert eine zufällige 32-Byte-Attestierungs-Nonce. Im Jargon der Kryptografie ist eine Nonce (einmalig verwendete Zahl) eine im kryptografischen Verfahren generierte Zufallszahl, die nur einmal verwendet werden soll.
  2. Die Zertifizierungsstelle sendet die Nonce an das DUT und fordert die Attestierungsinformationen an.
  3. Das DUT generiert die Attestierungsinformationen und signiert sie mit dem privaten Attestierungsschlüssel.
  4. Der Prüfer ruft das DAC- und PAI-Zertifikat vom Gerät ab und sucht das PAA-Zertifikat in seinem Matter-Truststore auf.
  5. Die Zertifizierungsstelle prüft die Attestationsinformationen. Für die Validierung gelten folgende Bedingungen:
    • Die DAC-Zertifikatskette muss validiert werden, einschließlich Widerrufsüberprüfungen für PAI und PAA.
    • Die VID auf dem DAC stimmt mit der VID auf dem PAI überein.
    • Die Attestierungssignatur ist gültig.
    • Die Nonce in den Geräteattestierungselementen stimmt mit der vom Aussteller bereitgestellten Nonce überein.
    • Die Signatur der Zertifizierungserklärung ist gültig, wenn sie mit einem der bekannten Signaturschlüssel für die Zertifizierungserklärung von Alliance erstellt wurde.
    • Die Firmware-Informationen (falls vorhanden und vom Regulierungsorgan unterstützt) stimmen mit einem Eintrag im Distributed Compliance Ledger überein.
    • Zusätzliche VID-/PID-Validierungen finden auch zwischen dem Cluster mit den grundlegenden Informationen zum Gerät, der Zertifizierungserklärung und dem DAC statt.