La messa in servizio in Matter si riferisce alla procedura di assegnazione delle credenziali dell'Infrastruttura a un nuovo dispositivo. Il commissioner è il dispositivo che esegue la procedura di messa in servizio. Il dispositivo da mettere in servizio è il nuovo dispositivo di cui è necessario eseguire il provisioning nell'Infrastruttura.
In generale, il flusso di commissione può essere suddiviso in più fasi:
Rilevamento dispositivi
Prima dell'inizio del flusso di messa in servizio, il dispositivo da mettere in servizio deve iniziare a pubblicizzarsi. Il Commissionee può pubblicizzarsi utilizzando uno dei tre metodi di Commissionable Discovery. Il Commissionee deve anche fornire il payload di onboarding.
Connessione al dispositivo (PASE)
Una volta che il commissioner ha visto l'annuncio e ha abbinato il discriminatore, utilizza il passcode del payload di onboarding per eseguire Passcode Authenticated Session Establishment (PASE) per connettersi al dispositivo. Questo è il metodo per stabilire in modo sicuro le chiavi che entrambi i dispositivi potranno utilizzare per stabilire la comunicazione. In questo passaggio, il Commissioner attiva anche un sistema di sicurezza. Un sistema di sicurezza fornisce un modo per eseguire il rollback del dispositivo allo stato originale se la messa in servizio non viene completata correttamente.
Ottieni informazioni sul commissionato
Il Commissioner legge tutti i descrittori dal Commissionee. DescriptorCluster si trova sull'endpoint 0 del dispositivo e descrive tutti gli altri endpoint. Il commissioner legge anche il cluster di informazioni di base, che include
informazioni come l'ID fornitore, l'ID prodotto, il nome del prodotto e il numero di serie.
In questa fase, il commissioner legge anche il tipo di dispositivo del commissionee, il che contribuisce a migliorare l'esperienza utente sul lato del commissioner.
Configurazione normativa
Il Commissioner configura le informazioni sulle normative sul Commissionee utilizzando il comando SetRegulatoryConfig. Le informazioni sulle normative includono informazioni come la configurazione della posizione (interna/esterna/entrambe) del dispositivo o l'impostazione del codice paese.
Attestazione del commissionee
L'obiettivo della procedura di attestazione del commissionee è determinare se un dispositivo è stato certificato ed è un dispositivo Matter originale. Il commissioner estrae il Device Attestation Certificate (DAC) e il certificato Product Attestation Intermediate (PAI) dal commissionee. Questi certificati contengono l'ID fornitore, l'ID prodotto e la chiave pubblica di attestazione. Una volta ricevuti i certificati, il Commissioner esegue una richiesta di verifica che deve essere firmata dalla chiave privata di attestazione e la utilizza per stabilire l'autenticità del Commissionee.
Richiesta di firma del certificato (CSR)
Il Commissioner invia una richiesta di firma del certificato (CSR) al Commissionee. Il Commissionee crea una coppia di chiavi operative univoca che verrà utilizzata in un secondo momento in un Certificate Authenticated Session Establishment (CASE). Il dispositivo da commissionare restituisce le informazioni CSR risultanti al dispositivo che commissiona.
Aggiungi il certificato operativo del nodo (NOC)
Il commissioner utilizza le informazioni della CSR ricevute dal commissionee e le trasmette all'Administrative Domain Manager (ADM) per generare un Node Operational Certificate (NOC) attendibile. Il Commissioner installa il certificato radice sul Commissionee utilizzando il comando AddTrustedRootCertReq, quindi installa il certificato operativo del nodo utilizzando il comando AddNOC.
Provisioning della rete
Il Commissioner configura la rete operativa sul Commissionee. Questo passaggio è necessario per i dispositivi Thread o Wi-Fi. Questo passaggio non è necessario per i dispositivi Ethernet, se sono già connessi alla rete. Utilizza i comandi ScanNetworks, AddOrUpdateWifiNetwork e ConnectNetwork.
Rilevamento operativo
Una volta che il nodo appena commissionato è connesso alla rete, il commissioner utilizza il servizio Operational Discovery per trovare il nodo sulla rete operativa. Il rilevamento operativo è il processo mediante il quale i nodi commissionati vengono trovati sulla rete operativa utilizzando DNS-SD. Se il dispositivo da commissionare è un dispositivo Wi-Fi, utilizzerà mDNS per rilevare il dispositivo.
Il rilevamento operativo aiuta il Commissioner e gli altri nodi della rete a sapere quale indirizzo IP e quale porta sta utilizzando il Commissionee.
Creazione della sessione CASE
Una volta rilevato il nodo appena commissionato, viene stabilita una sessione CASE tra il commissioner e il dispositivo. Questa sessione viene avviata dal commissioner e il dispositivo risponde. In questo passaggio, vengono scambiati i certificati operativi e viene stabilita una relazione di attendibilità condivisa convalidando che si trovano nello stesso fabric logico.
Messa in servizio completata
Il commissario utilizza CASE per inviare il comando CommissioningComplete al dispositivo appena commissionato. Questo è l'ultimo passaggio del processo di messa in servizio. CommissioningComplete disattiva anche
automaticamente il timer di sicurezza. Una volta completata la messa in servizio, il dispositivo funziona come qualsiasi altro nodo sulla rete operativa.