Atestado

Dispositivos certificados são aqueles que passaram pelo processo de certificação Connectivity Standards Alliance (Alliance) Matter.

Durante o processo de comissionamento, um dispositivo certificado precisa ser testado. Em outras palavras, ele precisa provar que é o que afirma ser e que é um produto genuíno. Assim, todos os dispositivos Matter têm credenciais que abrangem o par de chaves de atestado e uma cadeia de certificados associada. O certificado de atestado do dispositivo (DAC, na sigla em inglês) faz parte dessa cadeia. Depois que o dispositivo em comissionamento apresentar o DAC ao comissário, este último confirmará que:

  • tenha sido feita por um fabricante certificado.
  • ele é original.
  • passou por Matter testes de compliance.

Durante a fase de desenvolvimento, o fabricante pode testar os dispositivos sem o processo de atestado completo. Os testadores precisam ser explicitamente informados de que o dispositivo está em teste e ainda não foi certificado e iniciado. Depois que um fabricante entra na fase de produção, o ecossistema do provisionador aplica todos os requisitos do atestado.

O atestado usa uma infraestrutura de chave pública (ICP, na sigla em inglês) que utiliza as autoridades de certificação raiz e os certificados intermediários de maneira semelhante aos certificados de autenticação de servidor amplamente adotados usados para SSL/TLS. Esse processo é chamado de cadeia de certificados de atestado do dispositivo.

ICP de atestado do dispositivo

O DAC é um certificado X.509 v3. A primeira versão de X.509 foi publicada em 1988 pela ITU-T. O X.509 v3 com o certificado de infraestrutura de chave pública e a Lista de revogação de certificado (CRL, na sigla em inglês) usados por Matter é especificado por RFC5280. Ela contém:

  • Chave pública
  • Emissor
  • Assunto
  • Número de série do certificado
  • Validade, em que a expiração pode ser indeterminada
  • Assinatura

Os IDs do fornecedor e do produto são atributos de MatterDACName no assunto DAC.

O DAC é exclusivo por dispositivo e associado ao par de chaves de confirmação exclusivo no produto. Ele é emitido por uma CA associada ao fabricante do dispositivo.

A assinatura do DAC é validada em relação ao Certificado intermediário de atestado de produto (PAI, na sigla em inglês), que também é emitido por um PAA. No entanto, um fornecedor pode optar por criar uma PAI por produto (específico de PID), grupo de produtos ou todos os produtos dele.

Na raiz da cadeia de confiança, a chave pública da Autoridade de certificação do produto (PAA, na sigla em inglês) CA valida as assinaturas da PAI. Observe que o repositório de confiança Matter é federado, e o conjunto de certificados do PAA em que os comissários confiam é mantido em um banco de dados central confiável (o Livro razão de conformidade distribuída). A entrada de um PAA no conjunto confiável requer o cumprimento de uma política de certificado gerenciada pelo Alliance.

Infraestrutura de chave pública de atestado do Matter
Figura 1: infraestrutura de chave pública do atestado do Matter

A PAI também é um certificado X.509 v3 que inclui:

  • Chave pública
  • Emissor
  • Assunto
  • Número de série do certificado
  • Validade, em que a expiração pode ser indeterminada
  • Assinatura

Os IDs do fornecedor e do produto (opcionalmente) são atributos de MatterDACName no assunto DAC.

Por fim, o PAA é o certificado raiz na cadeia e é autoassinado. Isso inclui:

  • Assinatura
  • Chave pública
  • Emissor
  • Assunto
  • Número de série do certificado
  • Validade

Outros documentos e mensagens de atestado

O processo de atestado tem vários documentos e mensagens. Os itens a seguir são uma breve visão geral da função e composição deles. A imagem abaixo ajuda no entendimento de sua hierarquia.

Hierarquia de documentos de atestado
Figura 2: hierarquia de documentos de atestado.
Documento Descrição
Declaração de certificação (CD) O CD permite que o dispositivo Matter prove a conformidade com o protocolo Matter. Sempre que os processos de certificação Matter forem concluídos, o Alliance vai criar um CD para o tipo de dispositivo para que o fornecedor o inclua no firmware. O CD inclui, entre outras informações:
  • VID
  • PID (um ou mais)
  • ID de categoria do servidor
  • ID da categoria do cliente
  • Nível de segurança
  • Informações de segurança
  • Tipo de certificação (desenvolvimento, provisória ou oficial)
  • Assinatura
Informações do firmware (opcional) As informações do firmware contêm o número da versão do CD e um ou mais resumos dos componentes no firmware, como SO, sistema de arquivos e carregador de inicialização. Os resumos podem ser um hash dos componentes de software ou um hash dos manifestos assinados dos componentes de software.

O fornecedor também pode optar por incluir apenas o "hash-of-hashes" dos componentes, em vez de um conjunto de hashes individuais.

As informações do firmware são um elemento opcional no ambiente de inicialização de atestado e aplicável quando um fornecedor tem um par de chaves seguro, que é aplicável quando um fornecedor tem um par de chave seguro.
Informações de atestado Mensagem enviada do comissário ao comissário. As informações de atestado combinam um TLV contendo os elementos de atestado e uma assinatura de atestado.
Elementos de atestado Esse é um TLV contendo:

  • Declaração do certificado
  • Carimbo de data/hora
  • Documento de uso de atestado
  • Informações do firmware (opcional)
  • Informações específicas do fornecedor (opcional)
Desafio de atestado Desafio fora de banda derivado durante o estabelecimento da sessão Passcode Authenticated Session Establishment (PASE)/ Certificate Authenticated Session Establishment (CASE) e usado para proteger ainda mais o procedimento e evitar assinaturas repetidas. Vem de uma sessão CASE, PASE ou de uma sessão CASE retomada.
TBS do atestado (a ser assinado) Mensagem contendo os elementos de atestado e o desafio de atestado.
Assinatura do atestado Assinatura da TBS do atestado, assinada usando a chave privada do atestado do dispositivo.

Procedimento de declaração

O Comissário é responsável por atestar o Comissário. Ele executa as seguintes etapas:

  1. O Commissioner gera um valor de uso único de atestado aleatório de 32 bytes. No jargão de criptografia, um valor de uso único (número usado uma vez) é um número aleatório gerado no procedimento criptográfico e que deve ser usado uma vez.
  2. O Comissário envia o valor de uso único ao DUT e solicita as informações do atestado.
  3. O DUT gera as informações de atestado e as assina com a chave privada de atestado.
  4. O Commissioner recupera o certificado DAC e PAI do dispositivo e pesquisa o certificado do PAA no repositório de confiança Matter.
  5. O Comissário valida as informações do atestado. Estas são as condições de validação:
    • A cadeia de certificados DAC precisa ser validada, incluindo verificações de revogação na PAI e no PAA.
    • O VID no DAC corresponde ao VID na PAI.
    • A assinatura do atestado é válida.
    • O valor de uso único nos elementos de atestado do dispositivo corresponde ao valor de uso único fornecido pelo Comissário.
    • A assinatura da declaração de certificado é válida usando uma das chaves de assinatura de declaração de certificação conhecidas do Alliance.
    • As informações de firmware (se presentes e compatíveis com o Commissioner) correspondem a uma entrada no Livro razão de conformidade distribuída.
    • Outras validações de VID/PID também ocorrem entre o cluster de informações básicas do dispositivo, a declaração de certificação e o DAC.