Les Appareils certifiés sont des Appareils qui ont suivi le processus de certification Connectivity Standards Alliance (Alliance) Matter.
Lors 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. 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 présente le DAC à son commissaire, ce dernier certifie que :
- il a été fabriqué par un fabricant certifié.
- il s'agit d'un appareil authentique.
- il a réussi Matter tests de conformité.
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 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 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'ITU-T. Le certificat X.509 v3 avec 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'identifiant produit sont des attributs de MatterDACName dans l'objet DAC.
Le DAC est unique pour chaque appareil et associé à la paire de clés d'attestation unique 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 de produit (PAI), qui est également émis par une PAA. Toutefois, un fournisseur peut choisir de créer un 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é de certification (CA) de l'autorité d'attestation de produit (PAA) 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 de confiance centralisée (le Distributed Compliance Ledger). L'entrée d'une PAA dans l'ensemble de confiance nécessite de respecter une règle de certificat gérée par Alliance.
Le PAI est également un certificat X.509 v3 qui inclut :
- 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 MatterDACName dans l'objet du DAC.
Enfin, l'AAP est le certificat racine de la chaîne et est autosigné. Il comprend :
- 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 permet de mieux comprendre leur hiérarchie.
| Document | Description |
|---|---|
| Déclaration de certification (DC) | La déclaration de conformité permet à l'appareil Matter de prouver sa conformité au protocole Matter.
Chaque fois que le processus de certification Matter se termine, Alliance crée un CD pour le type d'appareil afin que le fournisseur puisse l'inclure dans le micrologiciel. Le CD comprend, entre autres, les informations suivantes :
|
| Informations sur le micrologiciel (facultatif) | Les informations sur le micrologiciel contiennent le numéro de version du CD et un ou plusieurs condensés des composants du micrologiciel, tels que l'OS, le système de fichiers et le bootloader. Les condensés 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 de 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 mandataire au mandant. Les informations d'attestation combinent une TLV contenant les éléments d'attestation et une signature d'attestation. |
| Éléments d'attestation | Il s'agit d'un TLV contenant :
|
| Code de vérification de l'attestation | Question d'authentification hors bande dérivée lors de l'établissement de la session Passcode Authenticated Session Establishment (PASE)/Certificate Authenticated Session Establishment (CASE) et utilisée 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 reprise. |
| Attestation TBS (à signer) | Message contenant les éléments d'attestation et le test d'attestation. |
| Signature d'attestation | Signature de l'attestation TBS, signée à l'aide de la clé privée d'attestation de l'appareil. |
Procédure d'attestation
L'élément de mise en service est chargé d'attester l'élément à mettre en service. Il exécute les étapes suivantes :
- 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 cryptographique et destiné à être utilisé une seule fois.
- Le commissaire envoie le nonce au DUT et demande les informations d'attestation.
- L'appareil testé génère les informations d'attestation et les signe avec la clé privée d'attestation.
- Le commissaire récupère le certificat DAC et PAI de l'appareil, puis recherche le certificat PAA dans son magasin de confiance Matter.
- Le commissaire valide les informations d'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 sur le DAC correspond au VID sur le PAI.
- La signature de l'attestation est valide.
- Le nonce dans les éléments d'attestation de l'appareil correspond au nonce fourni par le commissaire.
- La signature de la déclaration de certificat 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 (si elles sont présentes et acceptées par le commissaire) correspondent à une entrée du registre de conformité distribué.
- Des validations VID/PID supplémentaires ont également lieu entre le cluster d'informations de base de l'appareil, la déclaration de certification et le DAC.