Comissionamento

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 Comissário é o novo dispositivo que precisa ser provisionado no Fabric.

De modo geral, o fluxo de comissionamento pode ser dividido em vários estágios:

Fluxo de comissionamento
Figura 1: fluxo de comissionamento – nível alto

Descoberta de dispositivos

Antes de iniciar o fluxo de comissionamento, o comissário precisa começar a fazer a publicidade por conta própria. O responsável pode anunciar a si mesmo usando qualquer um dos três métodos de descoberta comissionável. O Comissário também precisa fornecer o payload de integração.

Conectar ao dispositivo (PASE)

Depois que o comissário vê o anúncio e corresponde ao 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 chaves com segurança que os dois dispositivos poderão usar para estabelecer a comunicação. Nessa etapa, o comissário também arma uma proteção contra falhas. Uma proteção de falhas oferece uma maneira de reverter o dispositivo ao estado original caso o comissionamento não seja concluído com sucesso.

Receber informações do comissário

O Comissário lê todos os descritores do Comissário. 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 comissário, que ajuda a impulsionar a UX do comissário.

Configuração regulatória

O Comissário configura informações regulamentares no Commissionee usando o comando SetRegulatoryConfig. As informações regulamentares incluem a configuração do local (interno/externo/ambos) do dispositivo ou o código do país.

Atestado de comissário

O objetivo do procedimento de atestado do Comissão é determinar se um dispositivo foi certificado e é um dispositivo Matter genuíno. O Comissário extrai o Device Attestation Certificate (DAC) e o Product Attestation Intermediate (PAI) do Commissionee. 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 contestação que precisa ser assinada pela chave privada de atestado e a usa para estabelecer a autenticidade do Comissário.

Solicitação de assinatura de certificado (CSR)

O comissário envia uma solicitação de assinatura de certificado (CSR, na sigla em inglês) ao Comissário. O Commissionee cria um par de chaves operacionais exclusivo que vai ser usado em um Certificate Authenticated Session Establishment (CASE) posteriormente. O Comissário retorna as informações de CSR resultantes de volta ao Comissário.

Adicionar certificado operacional do nó (NOC, na sigla em inglês)

O comissário usa as informações de CSR recebidas do comissário e as transmite ao gerenciador de domínio administrativo (ADM, na sigla em inglês) para gerar um certificado operacional de nó (NOC, na sigla em inglês) confiável. O Commissioner instala o certificado raiz no Commissionee 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 comissário. Essa etapa é necessária para dispositivos Thread ou Wi-Fi. Essa etapa não é necessária para dispositivos Ethernet em que o dispositivo já está conectado à rede. Ela 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 comissário 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 o Commissionee está usando.

Estabelecimento da sessão CASE

Depois que o nó recém-comissionado é descoberto, uma sessão CASE é estabelecida entre o Comissário e o dispositivo. Essa sessão é iniciada pelo comissário e recebe a resposta do dispositivo. Nesta etapa, os certificados operacionais são trocados e uma confiança compartilhada é estabelecida ao validar que eles estão na mesma estrutura lógica.

Comissionamento concluído

O Commissioner usa CASE para enviar o comando CommissioningComplete ao dispositivo recém-comissionado. Essa é a última etapa no processo de comissionamento. CommissioningComplete também desativa automaticamente o timer de segurança. Depois que o comissionamento é concluído, o dispositivo funciona como qualquer outro nó na rede operacional.