O comissionamento em Matter refere-se ao processo de atribuição de credenciais do Fabric a um novo dispositivo. O comissário é o dispositivo que realiza o processo de comissionamento. O comissionado é o novo dispositivo que precisa ser provisionado no Fabric.
De modo geral, o fluxo de comissionamento pode ser dividido em vários estágios:
Descoberta de dispositivos
Antes de iniciar o fluxo de comissionamento, o comissionado precisa começar a anunciar por conta própria. O comissionado pode anunciar a si mesmo usando qualquer um dos três métodos da Commissionable Discovery. O comissionado também precisa fornecer o payload de integração.
Conectar ao dispositivo (PASE)
Depois que o Comissário vê o anúncio e encontra o discriminador, ele usa a senha do payload de integração para fazer Passcode Authenticated Session Establishment (PASE) e se conectar ao dispositivo. Esse é o método para estabelecer com segurança chaves que os dois dispositivos poderão usar para estabelecer a comunicação. Nessa etapa, o comissário também prepara um dispositivo à prova de falhas. Um método à prova de falhas oferece uma maneira de reverter o dispositivo para o estado original se o comissionamento não for concluído.
Receber informações sobre o comissionado
O comissário lê todos os descritores dele. O DescriptorCluster
está no endpoint 0 do dispositivo e descreve todos os outros endpoints. O comissário 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.
Nesta etapa, o Comissário também lê o tipo de dispositivo do comissionado,
que ajuda a impulsionar a UX.
Configuração regulamentar
O comissário configura informações regulamentares no comissionado usando o
comando SetRegulatoryConfig
. As informações regulamentares incluem informações como
a configuração do local (interna/externa/ambas) do dispositivo ou a configuração do
código do país.
Atestado de comissionado
O objetivo do procedimento de atestado do comissionado é determinar se um dispositivo foi certificado e se é um dispositivo Matter genuíno. O comissário extrai o Certificado de atestado do dispositivo (DAC, na sigla em inglês) e o certificado de Atestado de produto intermediário (PAI) do comissionado. Esses certificados contêm o ID do fornecedor, o ID do produto e a chave pública do atestado. Depois que os certificados são recebidos, o Comissário 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 Commissioner 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 posteriormente em um Certificate Authenticated Session Establishment (CASE). O comissionado retorna as informações de CSR resultantes de volta para o comissionado.
Adicionar certificado operacional do nó (NOC, na sigla em inglês)
O comissário usa as informações de CSR recebidas do comissionado e as transmite ao Administrative Domain Manager (ADM) para gerar um Certificado operacional de nó (NOC, na sigla em inglês) confiável. O comissário instala o certificado raiz no comissionado usando o comando AddTrustedRootCertReq
e, em seguida, instala o certificado operacional do nó usando o comando AddNOC
.
Provisionamento de rede
O comissário configura a rede operacional no comissionado. Esta
etapa é necessária para dispositivos Thread ou Wi-Fi. Esta 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 comissário usa a descoberta operacional para encontrá-lo na rede operacional. A descoberta operacional é o processo pelo qual os nós comissionados são encontrados na rede operacional usando DNS-SD. Se o comissionado for um dispositivo Wi-Fi, ele vai usar o mDNS para descobrir o dispositivo.
A descoberta operacional ajuda o Comissário e outros nós na rede a saber qual endereço IP e porta ele está usando.
Estabelecimento da sessão CASE
Depois que o nó recém-comissionado for descoberto, uma sessão CASE é estabelecida entre o Comissário e o dispositivo. Essa sessão é iniciada pelo Comissário e respondida pelo dispositivo. Nesta etapa, os certificados operacionais são trocados e uma confiança compartilhada é estabelecida ao validar se eles estão na mesma malha lógica.
Comissionamento concluído
O comissário usa CASE para enviar o
comando CommissioningComplete
ao dispositivo recém-comissionado. Essa é a última etapa do processo de comissionamento. O CommissioningComplete
também
desliga automaticamente o timer à prova de falhas. Depois que o comissionamento for concluído, o dispositivo opera como qualquer outro nó na rede operacional.