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 fazer o teste a si mesmo. 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 do atestado e uma cadeia de certificados associada. O Certificado de atestado do dispositivo (DAC) faz parte dessa cadeia. Depois que o Dispositivo em comissionamento apresentar o DAC ao Comissário, este certificará que:

  • por um fabricante certificado.
  • é um dispositivo genuíno.
  • ele foi aprovado em Matter testes de compliance.

Durante a fase de desenvolvimento, o fabricante pode testar os dispositivos sem o processo completo de atestado. Os testadores precisam ser explicitamente informados de que o dispositivo está em teste e que 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, na sigla em inglês) que utiliza autoridades certificadoras raiz e 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 de dispositivos.

ICP do 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 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 validade pode ser indeterminada
  • Assinatura

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

O DAC é exclusivo por dispositivo e associado ao par exclusivo de chaves de atestado no produto. Ele é emitido por uma AC associada ao fabricante do dispositivo.

A assinatura do DAC é validada em relação ao Certificado intermediário do atestado do 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 atestado do produto (PAA, na sigla em inglês) Autoridade de certificação (CA, na sigla em inglês) valida 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 Distributed Compliance Ledger). A entrada de um PAA dentro do conjunto confiável exige atender a uma política de certificado gerenciada pelo Alliance.

Infraestrutura de chave pública do 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 validade pode ser indeterminada
  • Assinatura

O ID do fornecedor e o ID do produto (opcional) são atributos do MatterDACName no assunto do 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 a entender a hierarquia deles.

Hierarquia de documentos de atestado
Figura 2: hierarquia de documentos de atestado
Documento Descrição
Declaração de certificação (CD, na sigla em inglês) A CD permite que o dispositivo Matter prove que está em conformidade com o protocolo Matter. Sempre que os Matter Processos de certificação são concluídos, o Alliance cria um CD para o tipo de dispositivo para que o Fornecedor possa incluí-lo no firmware. A CD inclui, entre outras informações:
  • ID de vídeo
  • 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 de 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 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 nas informações de firmware apenas o "hash-of-hash" dos componentes dele, 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 atestado seguro.
Informações de atestado Mensagem enviada pelo comissionado ao comissário. As informações do atestado combinam um TLV que contém os elementos do atestado e uma assinatura do atestado.
Elementos do atestado Este é um TLV que contém:

  • Declaração do certificado
  • Carimbo de data/hora
  • Atestado Nonce
  • Informações de firmware (opcional)
  • Informações específicas do fornecedor (opcional)
Desafio do 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 novas assinaturas. Vem da sessão CASE, PASE ou de uma sessão CASE retomada.
Atestado TBS (a ser assinado) Mensagem contendo os elementos do atestado e o desafio do atestado.
Assinatura do atestado Assinatura do TBS do atestado, assinado usando a chave privada do 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 nonce (número usado uma vez) é um número aleatório gerado no procedimento criptográfico e destinado a ser usado apenas 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 do atestado e as assina com a chave privada do atestado.
  4. O Commissioner recupera o certificado DAC e PAI do dispositivo e procura o certificado da PAA no repositório de confiança Matter.
  5. O comissário valida as informações do atestado. Estas são as condições para 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 no 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 da declaração de certificação Alliance.
    • As informações de firmware (se presentes e compatíveis com o Commissioner) correspondem a uma entrada no Distributed Compliance Ledger.
    • 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.