Attestation

Les appareils certifiés sont des appareils qui ont passé le processus de certification Connectivity Standards Alliance (Alliance) Matter.

Au cours du processus de mise en service, un appareil certifié doit s'attester. En d'autres termes, il doit prouver qu'il est ce qu'il prétend être et qu'il s'agit d'un produit authentique. Par conséquent, tous les appareils Matter disposent d'identifiants qui englobent la paire de clés d'attestation et une chaîne de certificats associée. Le certificat d'attestation d'appareil (DAC) fait partie de cette chaîne. Une fois que l'appareil en cours de mise en service présente le DAC à son commissaire, celui-ci certifie que:

  • Il a été fabriqué par un fabricant certifié.
  • Il s'agit d'un appareil authentique.
  • elle a réussi les tests de conformité Matter.

Pendant la phase de développement, le fabricant peut tester ses appareils sans passer par le processus d'attestation complet. Les testeurs doivent être informés explicitement que l'appareil est en cours de test et qu'il n'a pas encore été certifié ni lancé. Une fois qu'un fabricant entre dans une phase de production, l'écosystème du provisionneur doit appliquer toutes les exigences d'attestation.

L'attestation utilise une infrastructure à clé publique (PKI) qui exploite des autorités de certification racine et des certificats intermédiaires, de la même manière que les certificats d'authentification de serveur largement adoptés utilisés pour SSL/TLS. Ce processus est appelé "chaîne de certificats d'attestation d'appareil".

PKI d'attestation d'appareil

Le DAC est un certificat X.509 v3. La première version de X.509 a été publiée en 1988 par l'UIT-T. Le certificat X.509 v3 avec l'infrastructure à clé publique et la liste de révocation de certificats (LRC) utilisés par Matter sont spécifiés par la RFC5280. Il contient les éléments suivants:

  • Clé publique
  • Émetteur
  • Objet
  • Numéro de série du certificat
  • Validité, où l'expiration peut être indéterminée
  • Signature

L'ID du fournisseur et l'ID du produit sont des attributs de l'MatterDACName dans l'objet de la notification DAC.

Le DAC est unique par appareil et associé à la paire de clés d'attestation unique du produit. Il est délivré par une autorité de certification associée au fabricant de l'appareil.

La signature du DAC est validée par le certificat intermédiaire d'attestation de produit (PAI), qui est également émis par une autorité d'attestation de produit. Toutefois, un fournisseur peut choisir de créer une PAI par produit (spécifique au PID), par groupe de produits ou pour tous ses produits.

À la racine de la chaîne de confiance, la clé publique de l'autorité d'attestation de produit (PAA) autorité de certification (CA) valide les signatures de l'API. Notez que le truststore Matter est fédéré et que l'ensemble des certificats PAA approuvés par les commissaires est géré dans une base de données centrale approuvée (Distributed Compliance Ledger). L'ajout d'une PAA dans l'ensemble approuvé nécessite de respecter une stratégie de certification gérée par Alliance.

Infrastructure à clé publique Matter Attestation
Figure 1: Infrastructure de clés publiques d'attestation Matter

Le PAI est également un certificat X.509 v3 qui inclut les éléments suivants:

  • Clé publique
  • Émetteur
  • Objet
  • Numéro de série du certificat
  • Validité, où l'expiration peut être indéterminée
  • Signature

L'ID du fournisseur et l'ID du produit (facultatif) sont des attributs de l'MatterDACName dans l'objet du DAC.

Enfin, le PAA est le certificat racine de la chaîne et il est autosigné. Il comprend les éléments suivants:

  • Signature
  • Clé publique
  • Émetteur
  • Objet
  • Numéro de série du certificat
  • Validité

Documents et messages d'attestation supplémentaires

Le processus d'attestation comporte plusieurs documents et messages. Les éléments suivants sont un bref aperçu de leur fonction et de leur composition. L'image ci-dessous vous aide à comprendre leur hiérarchie.

Hiérarchie des documents d'attestation
Figure 2: Hiérarchie des documents d'attestation
Document Description
Déclaration de certification (CD) Le CD permet à l'appareil Matter de prouver sa conformité avec le protocole Matter. Chaque fois que les processus de certification Matter sont terminés, Alliance crée un CD pour le type d'appareil afin que le fournisseur puisse l'inclure dans le micrologiciel. Le CD inclut, entre autres, les informations suivantes:
  • VID
  • PID (un ou plusieurs)
  • ID de la catégorie de serveur
  • ID de la catégorie client
  • Niveau de sécurité
  • Informations de sécurité
  • Type de certification (développement, provisoire ou officiel)
  • Signature
Informations sur le micrologiciel (facultatif) Les informations sur le micrologiciel contiennent le numéro de version du CD et un ou plusieurs récapitulatifs des composants du micrologiciel, tels que l'OS, le système de fichiers et le bootloader. Les récapitulatifs peuvent être un hachage des composants logiciels ou un hachage des fichiers manifestes signés des composants logiciels.

Le fournisseur peut également choisir d'inclure dans les informations sur le micrologiciel uniquement le "hachage des hachages" de ses composants, au lieu d'un tableau de hachages individuels.

Les informations sur le micrologiciel sont un élément facultatif du processus d'attestation et s'appliquent lorsqu'un fournisseur dispose d'un environnement de démarrage sécurisé qui gère la paire de clés d'attestation.
Informations sur l'attestation Message envoyé par le commissaire au commissaire. Les informations d'attestation combinent un TLV contenant les éléments d'attestation et une signature d'attestation.
Éléments d'attestation Il s'agit d'un TLV contenant:

  • Déclaration de certificat
  • Horodatage
  • Attestation Nonce
  • Informations sur le micrologiciel (facultatif)
  • Informations spécifiques au fournisseur (facultatif)
Défi d'attestation Défi hors bande dérivé lors de l'établissement de la session Passcode Authenticated Session Establishment (PASE)/Certificate Authenticated Session Establishment (CASE) et utilisé pour renforcer la procédure et éviter les signatures réjouées. Provient d'une session CASE, d'une session PASE ou d'une session CASE reprise.
Attestation TBS (à signer) Message contenant les éléments d'attestation et le défi d'attestation.
Signature de l'attestation Signature du TBS d'attestation, signée à l'aide de la clé privée d'attestation de l'appareil.

Procédure d'attestation

Le commissaire est chargé d'attester la qualité de commissaire du commissaire. Il exécute les étapes suivantes:

  1. Le commissaire génère un nonce d'attestation aléatoire de 32 octets. Dans le jargon de la cryptographie, un nonce (nombre utilisé une seule fois) est un nombre aléatoire généré dans la procédure de cryptographie et destiné à être utilisé une seule fois.
  2. Le commissaire envoie le nonce au DUT et demande les informations d'attestation.
  3. Le DUT génère les informations d'attestation et les signe avec la clé privée d'attestation.
  4. Le commissaire récupère le certificat DAC et PAI de l'appareil, puis recherche le certificat PAA dans son magasin de confiance Matter.
  5. Le commissaire valide les informations de l'attestation. Voici les conditions de validation :
    • La chaîne de certificats DAC doit être validée, y compris les vérifications de révocation sur le PAI et le PAA.
    • Le VID du DAC correspond au VID du PAI.
    • La signature de l'attestation est valide.
    • Le nonce des éléments d'attestation de l'appareil correspond au nonce fourni par le commissaire.
    • La signature de la déclaration de certification est valide à l'aide de l'une des clés de signature de déclaration de certification connues de Alliance.
    • Les informations sur le micrologiciel (le cas échéant et si elles sont acceptées par le commissaire) correspondent à une entrée du Distributed Compliance Ledger.
    • Des validations VID/PID supplémentaires ont également lieu entre le cluster d'informations de base sur l'appareil, la déclaration de certification et le DAC.