Attestazione

I dispositivi certificati sono dispositivi che hanno superato la Connectivity Standards Alliance (Alliance) Matter procedura di certificazione.

Durante la procedura di commissioning, un dispositivo certificato deve attestare la propria identità. In altre parole, deve dimostrare di essere ciò che dichiara di essere e di essere un prodotto originale. Pertanto, tutti i dispositivi Matter Matter hanno credenziali che comprendono la coppia di chiavi di attestazione e una catena di certificati associata. Il certificato di attestazione del dispositivo (DAC) fa parte di questa catena. Una volta che il dispositivo in commissioning presenta il DAC al suo commissario, quest'ultimo certificherà che:

  • È stato realizzato da un produttore certificato.
  • È un dispositivo originale.
  • Ha superato i test di conformità Matter.

Durante la fase di sviluppo, il produttore è in grado di testare i propri dispositivi senza la procedura di attestazione completa. I tester devono essere informati esplicitamente che il dispositivo è in fase di test e che non è ancora stato certificato e lanciato. Una volta che un produttore entra in una fase di produzione, l'ecosistema del provisioner deve applicare tutti i requisiti di attestazione.

L'attestazione utilizza un'infrastruttura a chiave pubblica (PKI) che sfrutta le autorità di certificazione radice e i certificati intermedi, in modo simile ai certificati di autenticazione del server ampiamente adottati utilizzati per SSL/TLS. Questa procedura è chiamata catena di certificati di attestazione del dispositivo.

PKI di attestazione del dispositivo

Il DAC è un certificato X.509 v3. La prima versione di X.509 è stata pubblicata nel 1988 da ITU-T. La versione X.509 v3 con certificato di infrastruttura a chiave pubblica e elenco revoche certificati (CRL) utilizzata da Matter è specificata nella RFC5280. Contiene:

  • Chiave pubblica
  • Emittente
  • Oggetto
  • Numero di serie del certificato
  • Validità, dove la scadenza può essere indeterminata
  • Firma

L'ID fornitore e l'ID prodotto sono attributi di MatterDACName nell'oggetto DAC.

Il DAC è univoco per dispositivo e associato alla coppia di chiavi di attestazione univoca all'interno del prodotto. Viene emesso da una CA associata al produttore del dispositivo.

La firma del DAC viene convalidata rispetto al certificato intermedio di attestazione del prodotto (PAI), anch'esso emesso da una PAA. Tuttavia, un fornitore potrebbe scegliere di creare un PAI per prodotto (specifico per PID), gruppo di prodotti o per tutti i suoi prodotti.

Alla radice della catena di attendibilità, la chiave pubblica dell'autorità di attestazione del prodotto (PAA) autorità di certificazione (CA) convalida le firme del PAI. Tieni presente che l'archivio di attendibilità Matter è federato e l'insieme di certificati PAA considerati attendibili dai commissari viene gestito in un database attendibile centrale (il registro di conformità distribuito). L'inserimento di una PAA nel set attendibile richiede il rispetto di un criterio di certificato gestito da Alliance.

Infrastruttura a chiave pubblica per l'attestazione di Matter
Figura 1: infrastruttura a chiave pubblica di attestazione Matter

Il PAI è anche un certificato X.509 v3 che include:

  • Chiave pubblica
  • Emittente
  • Oggetto
  • Numero di serie del certificato
  • Validità, dove la scadenza può essere indeterminata
  • Firma

L'ID fornitore e l'ID prodotto (facoltativo) sono attributi di MatterDACName nell'oggetto DAC.

Infine, il PAA è il certificato radice della catena ed è autofirmato. Include:

  • Firma
  • Chiave pubblica
  • Emittente
  • Oggetto
  • Numero di serie del certificato
  • Validità

Documenti e messaggi di attestazione aggiuntivi

La procedura di attestazione prevede diversi documenti e messaggi. I seguenti elementi sono una breve panoramica della loro funzione e composizione. L'immagine riportata di seguito aiuta a comprendere la loro gerarchia.

Gerarchia dei documenti di attestazione
Figura 2: gerarchia dei documenti di attestazione
Documento Descrizione
Dichiarazione di certificazione (CD) Il CD consente al Matter dispositivo di dimostrare la sua conformità al Matter protocollo. Al termine delle procedure di certificazione Matter, l' Alliance crea un CD per il tipo di dispositivo in modo che il fornitore possa includerlo nel firmware. Il CD include, tra le altre informazioni:
  • VID
  • PID (uno o più)
  • ID categoria server
  • ID categoria client
  • Livello di sicurezza
  • Informazioni sulla sicurezza
  • Tipo di certificazione (sviluppo, provvisoria o ufficiale)
  • Firma
Informazioni firmware (facoltativo) Le informazioni firmware contengono il numero di versione del CD e uno o più digest dei componenti del firmware, come il sistema operativo, il file system e il bootloader. I digest possono essere un hash dei componenti software o un hash dei manifest firmati dei componenti software.

Il fornitore può anche scegliere di includere nelle informazioni firmware solo l'"hash-of-hashes" dei suoi componenti, anziché un array di hash individuali.

Le informazioni firmware sono un elemento facoltativo nella procedura di attestazione e sono applicabili quando un fornitore dispone di un ambiente di avvio sicuro che gestisce la coppia di chiavi di attestazione.
Informazioni di attestazione Messaggio inviato dal commissionario al commissario. Le informazioni di attestazione combinano un TLV contenente gli elementi di attestazione e una firma di attestazione.
Elementi di attestazione Si tratta di un TLV contenente:

  • Dichiarazione di certificato
  • Timestamp
  • Nonce di attestazione
  • Informazioni firmware (facoltativo)
  • Informazioni specifiche del fornitore (facoltativo)
Sfida di attestazione Sfida fuori banda derivata durante Passcode Authenticated Session Establishment (PASE)/ Certificate Authenticated Session Establishment (CASE) creazione della sessione e utilizzata per proteggere ulteriormente la procedura ed evitare firme riprodotte. Proviene da una sessione CASE o da una sessione PASE o da una sessione CASE ripresa.
Attestazione TBS (da firmare) Messaggio contenente gli elementi di attestazione e la sfida di attestazione.
Firma di attestazione Firma dell'attestazione TBS, firmata utilizzando la chiave privata di attestazione del dispositivo.

Procedura di attestazione

Il commissario è responsabile dell'attestazione del commissionario. Esegue i seguenti passaggi:

  1. Il commissario genera un nonce di attestazione casuale di 32 byte. Nel gergo della crittografia, un nonce (numero utilizzato una volta) è un numero casuale generato nella procedura crittografica e destinato a essere utilizzato una sola volta.
  2. Il commissario invia il nonce al DUT e richiede le informazioni di attestazione.
  3. Il DUT genera le informazioni di attestazione e le firma con la chiave privata di attestazione.
  4. Il commissario recupera il certificato DAC e PAI dal dispositivo e cerca il certificato PAA nel suo Matter archivio di attendibilità Matter.
  5. Il commissario convalida le informazioni di attestazione. Queste sono le condizioni per la convalida:
    • La catena di certificati DAC deve essere convalidata, inclusi i controlli di revoca su PAI e PAA.
    • Il VID sul DAC corrisponde al VID sul PAI.
    • La firma di attestazione è valida.
    • Il nonce negli elementi di attestazione del dispositivo corrisponde al nonce fornito dal commissario.
    • La firma della dichiarazione di certificato è valida utilizzando una delle Alliance's chiavi di firma della dichiarazione di certificato note.
    • Le informazioni firmware (se presenti e supportate dal commissario) corrispondono a una voce nel registro di conformità distribuito.
    • Vengono eseguite anche convalide VID/PID aggiuntive tra il cluster di informazioni di base del dispositivo, la dichiarazione di certificato e il DAC.