Attestation

Les Appareils certifiés sont ceux qui ont été soumis au Processus de certification Connectivity Standards Alliance (Alliance) Matter.

Au cours du processus de mise en service, un Appareil certifié doit effectuer une intervention automatique. En d'autres termes, il doit prouver qu'il s'agit bien de ce qu'il prétend être et qu'il s'agit d'un produit authentique. Ainsi, 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 aura présenté le DAC à son commissaire, ce dernier certifiera que:

  • il a été fabriqué par un fabricant certifié.
  • s'il s'agit d'un appareil authentique.
  • Matter test de conformité a réussi.

Pendant la phase de développement, le fabricant peut tester ses appareils sans passer par le processus d'attestation complet. Les testeurs doivent être explicitement informés 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 en phase de production, l'écosystème de l'approvisionneur doit appliquer toutes les exigences d'attestation.

L'attestation utilise une infrastructure à clé publique (PKI) qui exploite les autorités de certification racine et les certificats intermédiaires, de la même manière que les certificats d'authentification de serveur largement adopté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. La version X.509 v3 avec certificat d'infrastructure à clé publique et liste de révocation de certificats (CRL) utilisées par Matter est spécifiée par le document RFC5280. Il contient:

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

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

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

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

À la racine de la chaîne de confiance, la clé publique de l'autorité de certification (CA) de l'autorité d'attestation de produit (Product Attestation Authority) valide les signatures de la PAI. Notez que le magasin de confiance 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 de confiance (le Distributed Compliance Ledger). L'entrée d'un PAA dans l'ensemble de confiance nécessite le respect d'une stratégie de certificat gérée par le Alliance.

Infrastructure à clé publique d'attestation de litige
Figure 1: Infrastructure à clé publique pour l'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
  • La validité, lorsque l'expiration peut être indéterminée
  • Signature

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

Enfin, le PAA est le certificat racine de la chaîne. 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. Voici 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) La 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:
  • ID vidéo
  • PID (un ou plusieurs)
  • ID de la catégorie de serveur
  • ID de la catégorie client
  • Niveau de sécurité
  • Informations sur la sécurité
  • Type de certification (développement, provisoire ou officiel)
  • Signature
Informations sur le micrologiciel (facultatif) La section Informations sur le micrologiciel contient le numéro de version du CD et un ou plusieurs composants du micrologiciel, tels que le système d'exploitation, le système de fichiers et le bootloader. Les condensés peuvent être soit un hachage des composants logiciels, soit un hachage des fichiers manifestes signés des composants logiciels.

Le fournisseur peut aussi choisir d'inclure dans les informations sur le micrologiciel uniquement le hachage de hachage de ses composants, plutôt qu'un tableau de hachages individuels.

Les informations d'attestation sont un élément facultatif dans le processus d'attestation, qui est un élément facultatif dans le processus d'attestation et qui gère les informations de micrologiciel dans l'environnement de démarrage sécurisé.
Informations d'attestation Message envoyé du 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 Voici un TLV contenant:

  • Déclaration de certificat
  • Code temporel
  • Nonce d'attestation
  • 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 sécuriser davantage la procédure et éviter les signatures rejouées. Provient d'une session CASE, d'une session PASE ou d'une session CASE réactivée.
Attestation à confirmer (à signer) Message contenant les éléments d'attestation et le défi d'attestation.
Signature d'attestation Signature de la RS d'attestation, signée à l'aide de la clé privée d'attestation d'appareil.

Procédure d'attestation

Le commissaire est chargé d'attester qu'il est membre du commissaire. Elle exécute les étapes suivantes:

  1. Commissioner génère un nonce d'attestation aléatoire de 32 octets. Dans le jargon cryptographique, un nonce (nombre utilisé une fois) est un nombre aléatoire généré dans la procédure cryptographique et destiné à être utilisé une seule fois.
  2. Commissioner envoie le nonce à l'appareil testé et demande les informations d'attestation.
  3. L'appareil test 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 à partir de l'appareil, puis le recherche dans son magasin de confiance Matter.
  5. Le Commissaire valide les informations d'attestation. Voici les conditions de validation :
    • La chaîne de certificats DAC doit être validée, y compris en vérifiant la révocation des PAI et PAA.
    • Le VID sur le DAC correspond à celui de la PAI.
    • La signature d'attestation est valide.
    • Le nonce dans les éléments d'attestation d'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 les plus connues de Alliance.
    • Les informations du micrologiciel (si présentes et prises en charge par le commissaire) correspondent à une entrée du registre de conformité distribué.
    • D'autres validations VID/PID ont également lieu entre le cluster d'informations de base sur l'appareil, la déclaration de certification et le DAC.