Attestazione

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

Durante la procedura di messa in servizio, un dispositivo certificato deve attestarsi. In altre parole, deve dimostrare di essere ciò che afferma di essere e di essere un prodotto genuino. Pertanto, tutti i dispositivi Matter dispongono di credenziali che includono 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 fase di messa in servizio presenta il DAC al proprio commissario, quest'ultimo certificherà che:

  • sia stato prodotto da un produttore certificato.
  • Si tratta di un dispositivo originale.
  • ha superato Matter test di conformità.

Durante la fase di sviluppo, il produttore può testare i propri dispositivi senza la procedura di certificazione completa. I tester devono essere informati esplicitamente che il dispositivo è in fase di test e non è ancora stato certificato e lanciato. Una volta che un produttore entra in una fase di produzione, l'ecosistema del provisioning 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 dall'ITU-T. Il certificato X.509 v3 con certificato dell'infrastruttura a chiave pubblica e l'elenco revoche certificati (CRL) utilizzato da Matter è specificato da RFC5280. Contiene:

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

L'ID fornitore e l'ID prodotto sono attributi del MatterDACName nell'oggetto del messaggio 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 in base al Documento intermedio per l'attestazione del prodotto (PAI), che viene emesso anche da un 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 certificazione (CA) dell'autorità di certificazione del prodotto (PAA) convalida le firme del PAI. Tieni presente che l'archivio di attendibilità Matter è federato e l'insieme di certificati PAA attendibili dai commissari viene gestito in un database attendibile centrale (Distributed Compliance Ledger). L'inserimento di un PAA all'interno dell'insieme attendibile richiede il rispetto di un criterio per i certificati gestito dal Alliance.

Infrastruttura a chiave pubblica Matter Attestation
Figura 1: infrastruttura a chiave pubblica Matter Attestation

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

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

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

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

  • 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. Di seguito è riportata una breve panoramica della loro funzione e composizione. L'immagine seguente aiuta a comprendere la gerarchia.

Gerarchia dei documenti di attestazione
Figura 2: Gerarchia dei documenti di attestazione
Documento Descrizione
Dichiarazione di certificazione (CD) Il CD consente al Matter device di dimostrare la propria conformità al Matter protocollo. Ogni volta che termina la procedura di certificazione, il fornitore crea un CD per il tipo di dispositivo in modo che possa essere incluso nel firmware.MatterAlliance Il CD include, tra le altre informazioni:
  • VID
  • PID (uno o più)
  • ID categoria server
  • ID categoria cliente
  • Livello di sicurezza
  • Informazioni sulla sicurezza
  • Tipo di certificazione (sviluppo, provvisoria o ufficiale)
  • Firma
(Facoltativo) Informazioni sul firmware La sezione Informazioni sul firmware contiene il numero di versione del CD e uno o più digest dei componenti del firmware, ad esempio 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 sul firmware solo l'"hash degli hash" dei suoi componenti, anziché un array di singoli hash.

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

  • Dichiarazione del certificato
  • Timestamp
  • Nonce dell'attestazione
  • (Facoltativo) Informazioni sul firmware
  • (Facoltativo) Informazioni specifiche del fornitore
Attestation Challenge Verifica fuori banda ricavata durante la creazione della sessione Passcode Authenticated Session Establishment (PASE)/Certificate Authenticated Session Establishment (CASE) e utilizzata per aumentare la sicurezza della procedura ed evitare la riproduzione delle firme. Proviene da una sessione CASE, da una sessione PASE o da una sessione CASE ripresa.
Attestazione TBS (da firmare) Messaggio contenente gli elementi di attestazione e la verifica di attestazione.
Firma dell'attestazione Firma del TBS di attestazione, firmata utilizzando la chiave privata di attestazione del dispositivo.

Procedura di attestazione

Il Commissioner è responsabile dell'attestazione del Commissionee. 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 sull'attestazione.
  3. Il DUT genera le informazioni sull'attestazione e le firma con la chiave privata dell'attestazione.
  4. Il commissario recupera il certificato DAC e PAI dal dispositivo e cerca il certificato PAA dal suo Matter store di attendibilità.
  5. Il commissario convalida le informazioni dell'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 dell'attestazione è valida.
    • Il nonce negli elementi di attestazione del dispositivo corrisponde a quello fornito dal Commissioner.
    • La firma della dichiarazione del certificato è valida se utilizza una delle chiavi di firma della dichiarazione del certificato ben note di Alliance.
    • Le informazioni sul firmware (se presenti e supportate dal commissario) corrispondono a una voce nel Distributed Compliance Ledger.
    • Vengono eseguite anche ulteriori convalide di VID/PID tra il cluster di informazioni di base del dispositivo, la dichiarazione di certificazione e il DAC.