Comissionamento

O comissionamento no Matter é o 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.

Em um nível mais elevado, o fluxo de comissionamento pode ser dividido em várias etapas:

Fluxo de comissionamento
Figura 1: fluxo de provisionamento – nível superior

Descoberta de dispositivos

Antes do início do fluxo de comissionamento, o comissário precisa começar a se anunciar. O comissário pode se anunciar 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 Discriminator, 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 de forma segura que os dois dispositivos poderão usar para estabelecer comunicação. Nesta etapa, o comissário também ativa um mecanismo à prova de falhas. Um fail-safe oferece uma maneira de reverter o dispositivo ao estado original se o provisionamento não for concluído com sucesso.

Receber informações do comissário

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

Configuração regulatória

O comissário configura informações regulatórias no comissário usando o comando SetRegulatoryConfig. As informações regulamentares incluem a configuração da localização (interna/externa/ambas) do dispositivo ou do código do país.

Declaração do comissionado

O objetivo do procedimento de atestado do comissário é determinar se um dispositivo foi certificado e é um dispositivo Matter original. O comissário 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 comissário faz uma solicitação de desafio que precisa ser assinada pela chave privada de atestado e usa isso 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) ao comissário. O comissário cria um par de chaves operacionais exclusivo que será usado em um Certificate Authenticated Session Establishment (CASE) posteriormente. O comissário devolve as informações da CSR resultante ao comissário.

Adicionar certificado operacional do nó (NOC)

O comissário usa as informações da 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 comissário instala o certificado raiz no comissário usando o comando AddTrustedRootCertReq e depois 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. Essa etapa não é necessária para dispositivos Ethernet que já estão conectados à rede. Ele usa os comandos ScanNetworks, AddOrUpdateWifiNetwork e ConnectNetwork.

Descoberta operacional

Depois que o nó recém-comissionado é conectado à rede, o comissário usa o Operational Discovery 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 DNS-SD. Se o dispositivo comissionado for um dispositivo Wi-Fi, ele usará o mDNS para descobrir o dispositivo.

A descoberta operacional ajuda o comissário e outros nós na rede a saberem qual endereço IP e porta o comissário 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 respondida pelo dispositivo. Nesta etapa, os certificados operacionais são trocados e uma confiança compartilhada é estabelecida validando se eles estão na mesma estrutura lógica.

Comissionamento concluído

O comissário usa CASE para enviar o comando CommissioningComplete ao dispositivo recém-comissionado. Esta é a última etapa do processo de comissionamento. CommissioningComplete também desativa automaticamente o timer de segurança. Depois que o provisionamento for concluído, o dispositivo vai funcionar como qualquer outro nó na rede operacional.