Certificación

Los dispositivos certificados son aquellos que aprobaron el proceso de certificación de Connectivity Standards Alliance (Alliance) Matter.

Durante el proceso de comisión, un dispositivo certificado debe certificar su propio dispositivo. En otras palabras, debe demostrar que es lo que afirma ser y que es un producto genuino. Por lo tanto, todos los dispositivos Matter tienen credenciales que abarcan el par de claves de certificación y una cadena de certificados asociada. El certificado de certificación del dispositivo (DAC) forma parte de esta cadena. Una vez que el dispositivo en puesta en marcha presenta el DAC a su comisionado, este último certificará lo siguiente:

  • lo hizo un fabricante certificado.
  • es un dispositivo auténtico.
  • pasó Matter pruebas de cumplimiento.

Durante la fase de desarrollo, el fabricante puede probar sus dispositivos sin el proceso de certificación completo. Se debe informar explícitamente a los verificadores que el dispositivo está en fase de pruebas y que aún no se certificó ni lanzó. Una vez que un fabricante ingresa en una fase de producción, el ecosistema del aprovisionador debe aplicar todos los requisitos de certificación.

La certificación usa una infraestructura de clave pública (PKI) que aprovecha las autoridades certificadoras raíz y los certificados intermedios, de manera similar a los certificados de autenticación de servidor ampliamente adoptados que se usan para SSL/TLS. Este proceso se denomina cadena de certificados de certificación de dispositivos.

PKI de certificación de dispositivo

El DAC es un certificado X.509 v3. La primera versión de X.509 fue publicada en 1988 por ITU-T. La RFC5280 especifica la versión X.509 v3 con certificado de infraestructura de clave pública y una lista de revocación de certificados (CRL) que usa Matter. Contiene lo siguiente:

  • Clave pública
  • Emisor
  • Asunto
  • Número de serie del certificado
  • Validez, en la que el vencimiento puede ser indeterminado
  • Firma

El ID del proveedor y el ID del producto son atributos de MatterDACName en el asunto de DAC.

El DAC es único por dispositivo y se asocia con el par de claves de certificación único dentro del producto. Lo emite una AC asociada con el fabricante del dispositivo.

La firma del DAC se valida con el certificado intermedio de certificación de productos (PAI), que también se emite mediante un PAA. Sin embargo, un proveedor puede elegir crear una PAI por producto (específico de PID), grupo de productos o para todos sus productos.

En la raíz de la cadena de confianza, la clave pública de la autoridad certificadora (CA) de la autoridad de certificación de productos (PAA) valida las firmas de la PAI. Ten en cuenta que el almacén de confianza Matter está federado y el conjunto de certificados PAA en los que confían los comisionados se mantiene en una base de datos central de confianza (el libro mayor de cumplimiento distribuido). La entrada de un PAA dentro del conjunto de confianza requiere que se cumpla una política de certificado administrada por Alliance.

Infraestructura de clave pública de certificación de asuntos
Figura 1: Infraestructura de clave pública de certificación de Matter

La PAI también es un certificado X.509 v3 que incluye lo siguiente:

  • Clave pública
  • Emisor
  • Asunto
  • Número de serie del certificado
  • Validez, en la que el vencimiento puede ser indeterminado
  • Firma

El ID del proveedor y el ID del producto (opcional) son atributos del MatterDACName en el sujeto de DAC.

Por último, el PAA es el certificado raíz de la cadena y es autofirmado. Incluye lo siguiente:

  • Firma
  • Clave pública
  • Emisor
  • Asunto
  • Número de serie del certificado
  • Validez

Documentos y mensajes de certificación adicionales

El proceso de certificación tiene varios documentos y mensajes. Los siguientes elementos son una breve descripción general de su función y composición. La siguiente imagen ayuda a comprender su jerarquía.

Jerarquía del documento de certificación
Figura 2: Jerarquía del documento de certificación
Documento Descripción
Declaración de certificación (CD) El CD permite que el dispositivo Matter demuestre que cumple con el protocolo Matter. Cuando finalizan los procesos de certificación de Matter, Alliance crea un CD para el tipo de dispositivo de modo que el proveedor pueda incluirlo en el firmware. La CD incluye, entre otra información, la siguiente información:
  • VID
  • PID (uno o más)
  • ID de categoría del servidor
  • ID de categoría de cliente
  • Nivel de seguridad
  • Información de seguridad
  • Tipo de certificación (de desarrollo, oficial o provisional)
  • Firma
Información del firmware (opcional) La Información de firmware contiene el número de versión del CD y uno o más resúmenes de los componentes del firmware, como el SO, el sistema de archivos y el bootloader. Los resúmenes pueden ser un hash de los componentes del software o un hash de los manifiestos firmados de los componentes del software.

El proveedor también puede optar por incluir en la información de firmware solo el "hash de hashes" de sus componentes, en lugar de un array de hashes individuales.

La información es un elemento opcional del proceso de certificación y es aplicable cuando un proveedor tiene un entorno de inicio seguro.
Información de la certificación Mensaje enviado por el comisionado al comisionado. La información de la certificación combina un TLV que contiene los elementos de certificación y una firma de la certificación.
Elementos de la certificación Este es un TLV que contiene lo siguiente:

  • Declaración de certificado
  • Marca de tiempo
  • Nonce de certificación
  • Información del firmware (opcional)
  • Información específica del proveedor (opcional)
Desafío de certificación El desafío fuera de banda se deriva durante el establecimiento de la sesión Passcode Authenticated Session Establishment (PASE) o Certificate Authenticated Session Establishment (CASE) y se usa para proteger aún más el procedimiento y evitar la repetición de firmas. Proviene de una sesión CASE, una sesión de PASE o una sesión de CASE reanudada.
Certificación TBS (por firmar) Mensaje que contiene los elementos de certificación y el desafío de certificación.
Firma de certificación Firma del TBS de certificación, firmado con la clave privada de certificación de dispositivo.

Procedimiento de certificación

El Comisionado es responsable de certificar al Comisionado. Ejecuta los siguientes pasos:

  1. El comisionado genera un nonce de certificación aleatorio de 32 bytes. En la jerga criptográfica, un nonce (número usado una vez) es un número aleatorio generado en el procedimiento criptográfico y destinado a usarse una vez.
  2. El comisionado envía el nonce al DUT y solicita la información de la certificación.
  3. El DUT genera la información de la certificación y la firma con la clave privada de la certificación.
  4. El comisionado recupera el certificado DAC y PAI del dispositivo y busca el certificado PAA en su almacén de confianza Matter.
  5. El comisionado valida la información de certificación. Estas son las condiciones para la validación:
    • Se debe validar la cadena de certificados de DAC, incluidas las verificaciones de revocación en la PAI y el PAA.
    • El VID del DAC coincide con el de la PAI.
    • La firma de la certificación es válida.
    • El nonce en los Elementos de certificación del dispositivo coincide con el nonce proporcionado por el Comisionado.
    • La firma de la Declaración de certificados es válida para usar una de las claves de firma de la Declaración de certificación conocidas de Alliance.
    • La información de firmware (si está presente y la admite el comisionado) coincide con una entrada en el libro mayor de cumplimiento distribuido.
    • También se realizan validaciones adicionales de VID/PID entre el clúster de información básica del dispositivo, la Declaración de certificación y el DAC.