O comissionamento em Matter é o processo de atribuição de credenciais do Fabric a um novo dispositivo. O comissionador é o dispositivo que realiza o processo de comissionamento. O comissionado é o novo dispositivo que precisa ser provisionado no Fabric.
Em um nível alto, o fluxo de comissionamento pode ser dividido em várias etapas:
Descoberta de dispositivos
Antes do início do fluxo de comissionamento, o comissionado precisa começar a se anunciar. Ele pode se anunciar usando qualquer um dos três métodos de descoberta comissionável. O comissionado também precisa fornecer o payload de integração.
Conectar ao dispositivo (PASE)
Depois que o comissionador vê o anúncio e corresponde ao discriminador, ele usa a senha do payload de integração para fazer Passcode Authenticated Session Establishment (PASE) para se conectar ao dispositivo. Esse é o método para estabelecer chaves de forma segura que ambos os dispositivos poderão usar para estabelecer comunicação. Nessa etapa, o comissionador também arma um fail-safe. Um fail-safe oferece uma maneira de reverter o dispositivo ao estado original se o comissionamento não for concluído.
Receber informações do comissionado
O comissionador lê todos os descritores do comissionado. O DescriptorCluster está no endpoint 0 do dispositivo e descreve todos os outros endpoints. O comissionador também lê o cluster de informações básicas, que inclui informações como ID do fornecedor, ID do produto, nome do produto e número de série.
Nessa etapa, o comissionador também lê o tipo de dispositivo do comissionado, o que ajuda a impulsionar a experiência do usuário no lado do comissionador.
Configuração regulatória
O comissionador configura informações regulamentares no comissionado usando o comando SetRegulatoryConfig. As informações regulamentares incluem informações como a configuração do local (interno/externo/ambos) do dispositivo ou a configuração do código do país.
Atestado do comissionado
O objetivo do procedimento de atestado do comissionado é determinar se um dispositivo foi certificado e é um dispositivo Matter genuíno. O comissionador extrai o certificado de atestado do dispositivo (DAC) e o certificado intermediário de atestado do produto (PAI) do comissionado. Esses certificados contêm o ID do fornecedor, o ID do produto e a chave pública de atestado. Depois que os certificados são recebidos, o comissionador faz uma solicitação de desafio que precisa ser assinada pela chave privada de atestado e a usa para estabelecer a autenticidade do comissionado.
Solicitação de assinatura de certificado (CSR)
O comissionador envia uma solicitação de assinatura de certificado (CSR, na sigla em inglês) ao comissionado. O comissionado cria um par de chaves operacionais exclusivo que será usado em um Certificate Authenticated Session Establishment (CASE) mais tarde. O comissionado retorna as informações de CSR resultantes ao comissionador.
Adicionar certificado operacional de nó (NOC)
O comissionador usa as informações de CSR recebidas do comissionado e as transmite ao gerenciador de domínio administrativo (ADM) para gerar um certificado operacional de nó (NOC) confiável. O comissionador instala o certificado raiz no comissionado usando o comando AddTrustedRootCertReq e, em seguida, instala o certificado operacional de nó usando o comando AddNOC.
Provisionamento de rede
O comissionador configura a rede operacional no comissionado. Essa
etapa é necessária para Thread ou dispositivos Wi-Fi. Essa etapa não é necessária para dispositivos Ethernet em que o dispositivo já está conectado à rede. Ele usa os comandos ScanNetworks, AddOrUpdateWifiNetwork e ConnectNetwork.
Descoberta operacional
Depois que o nó recém-comissionado é conectado à rede, o comissionador usa a descoberta operacional para encontrar o nó na rede operacional. A descoberta operacional é o processo pelo qual os nós comissionados são encontrados na rede operacional usando o DNS-SD. Se o comissionado for um dispositivo Wi-Fi, ele usará o mDNS para descobrir o dispositivo.
A descoberta operacional ajuda o comissionador e outros nós na rede a saber qual endereço IP e porta o comissionado está usando.
Estabelecimento da sessão CASE
Depois que o nó recém-comissionado é descoberto, uma CASE sessão é estabelecida entre o comissionador e o dispositivo. Essa sessão é iniciada pelo comissionador e respondida pelo dispositivo. Nessa etapa, os certificados operacionais são trocados e uma confiança compartilhada é estabelecida validando que eles estão no mesmo Fabric lógico.
Comissionamento concluído
O comissionador usa CASE para enviar o comando
CommissioningComplete ao dispositivo recém-comissionado. Essa é a última etapa do processo de comissionamento. CommissioningComplete também desativa automaticamente o timer de fail-safe. Depois que o comissionamento é concluído, o dispositivo funciona como qualquer outro nó na rede operacional.