Atestado

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

Durante o processo de comissionamento, um dispositivo certificado precisa atestar a si mesmo. Em outras palavras, ele precisa provar que é o que afirma ser e que é um produto original. Assim, todos os dispositivos Matter 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) faz parte dessa cadeia. Depois que o dispositivo em comissionamento apresenta o DAC ao comissário, ele certifica que:

  • foi fabricado por um fabricante certificado.
  • é um dispositivo original.
  • foi aprovado nos testes de conformidade Matter.

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

O atestado usa uma infraestrutura de chave pública (PKI) que aproveita 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.

PKI de atestado do dispositivo

O DAC é um certificado X.509 v3. A primeira versão do X.509 foi publicada em 1988 pela ITU-T. O X.509 v3 com certificado de infraestrutura de chave pública e lista de revogação de certificados (CRL) usado por Matter é especificado por RFC5280. Ele contém:

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

O ID do fornecedor e o ID do produto são atributos do MatterDACName no assunto do DAC.

O DAC é exclusivo por dispositivo e associado ao par de chaves de atestado 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 do produto (PAI), que também é emitido por uma PAA. No entanto, um fornecedor pode optar por criar um PAI por produto (específico do PID), grupo de produtos ou para todos os produtos.

Na raiz da cadeia de confiança, a chave pública da autoridade de atestado do produto (PAA) autoridade de certificação (CA) valida as assinaturas do PAI. Observe que o armazenamento confiável do Matter é federado e o conjunto de certificados PAA confiáveis pelos comissários é mantido em um banco de dados confiável central (o Distributed Compliance Ledger). A entrada de uma PAA no conjunto confiável exige o cumprimento de uma política de certificados gerenciada pelo Alliance.

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

O 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

O ID do fornecedor e o ID do produto (opcionalmente) são atributos do MatterDACName no assunto do DAC.

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

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

Documentos e mensagens de atestado adicionais

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 a entender a hierarquia deles.

Hierarquia de documentos de atestação
Figura 2: hierarquia de documentos de atestado
Documento Descrição
Declaração de certificação (CD) O CD permite que o Matter dispositivo prove a conformidade com o Matter protocolo. Sempre que os Matter processos de certificação terminam, a Alliancecria um CD para o tipo de dispositivo para que o fornecedor possa incluí-lo no firmware. O CD inclui, entre outras informações:
  • VID
  • PID (um ou mais)
  • ID da 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 de componentes no firmware, como SO, sistema de arquivos, bootloader. 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 nas informações do firmware apenas o "hash de hashes" dos componentes, em vez de uma matriz de hashes individuais.

As informações do firmware são um elemento opcional no processo de atestado e aplicáveis quando um fornecedor tem um ambiente de inicialização segura que processa o par de chaves de atestado.
Informações de atestado Mensagem enviada do comissionado para o comissário. As informações de atestado combinam um TLV que contém os elementos de atestado e uma assinatura de atestado.
Elementos de atestado Este é um TLV que contém:

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

Procedimento de atestado

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

  1. O comissário gera um valor de uso único de atestado aleatório de 32 bytes. No jargão da criptografia, um valor de uso único (número usado uma vez) é um número aleatório gerado no procedimento criptográfico e destinado a ser usado uma vez.
  2. O comissário envia o valor de uso único para o DUT e solicita as informações de atestado.
  3. O DUT gera as informações de atestado e as assina com a chave privada de atestado.
  4. O comissário recupera o certificado DAC e PAI do dispositivo e procura o certificado PAA no armazenamento Matter confiável do Matter.
  5. O comissário valida as informações de atestado. Estas são as condições para validação:
    • A cadeia de certificados DAC precisa ser validada, incluindo verificações de revogação no PAI e na PAA.
    • O VID no DAC corresponde ao VID no PAI.
    • A assinatura de 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 Alliance's chaves de assinatura de declaração de certificado conhecidas.
    • As informações do firmware (se presentes e compatíveis com o comissário) correspondem a uma entrada no Distributed Compliance Ledger.
    • Validações adicionais 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.