Mise en service

La mise en service dans Matter correspond au processus d'attribution d'identifiants Fabric à un nouvel appareil. Le commissaire est l'appareil qui assure le processus de mise en service. L'appareil à mettre en service est le nouvel appareil qui doit être provisionné dans Fabric.

Dans les grandes lignes, le processus de mise en service peut être décomposé en plusieurs étapes :

Processus de mise en service
Figure 1 : Flux de mise en service – Niveau général

Détection d'appareils

Avant le début du flux de mise en service, l'appareil à mettre en service doit commencer à diffuser des annonces. Le Commissionné peut faire de la publicité pour lui-même en utilisant l'une des trois méthodes de Découverte commissionnable. Le commissionné doit également fournir la charge utile d'intégration.

Se connecter à l'appareil (PASE)

Une fois que le commissaire a vu l'annonce et qu'il a mis en correspondance le discriminateur, il utilise le code secret de la charge utile d'intégration pour effectuer l'opération Passcode Authenticated Session Establishment (PASE) afin de se connecter à l'appareil. Il s'agit de la méthode permettant d'établir de manière sécurisée des clés que les deux appareils pourront utiliser pour établir la communication. À cette étape, le commissaire arme également un dispositif de sécurité. Un système de sécurité permet de rétablir l'état d'origine de l'appareil si la mise en service ne se termine pas correctement.

Obtenir des informations sur le commissionnaire

Le commissaire lit tous les descripteurs du commissaire. DescriptorCluster se trouve sur le point de terminaison 0 de l'appareil et décrit tous les autres points de terminaison. Le commissaire lit également le cluster d'informations de base, qui inclut des informations telles que l'ID du fournisseur, l'identifiant produit, le nom du produit et le numéro de série. À ce stade, le commissaire lit également le type d'appareil du commissionné, ce qui permet d'améliorer l'expérience utilisateur côté commissaire.

Configuration réglementaire

Le commissaire configure les informations réglementaires sur le commissaire à l'aide de la commande SetRegulatoryConfig. Les informations réglementaires incluent des informations telles que la configuration de l'emplacement (intérieur/extérieur/les deux) de l'appareil ou la configuration du code pays.

Attestation de l'élément mis en service

L'objectif de la procédure d'attestation du Commissionee est de déterminer si un appareil a été certifié et s'il s'agit d'un appareil Matter authentique. Le commissaire extrait le certificat d'attestation de l'appareil (DAC) et le certificat Product Attestation Intermediate (PAI) du commissaire. Ces certificats contiennent l'ID du fournisseur, l'identifiant produit et la clé publique d'attestation. Une fois les certificats reçus, le commissaire envoie une demande de vérification qui doit être signée par la clé privée d'attestation et l'utilise pour établir l'authenticité du candidat.

Demande de signature de certificat (CSR)

Le commissaire envoie une demande de signature de certificat (CSR) au commissaire. Le Commissionee crée une paire de clés opérationnelles unique qui sera utilisée ultérieurement dans un Certificate Authenticated Session Establishment (CASE). Le Commissionee renvoie les informations de CSR obtenues au Commissioner.

Ajouter un certificat opérationnel de nœud (NOC)

Le commissaire utilise les informations de CSR reçues du commissionné et les transmet au gestionnaire de domaine administratif (ADM) pour générer un certificat opérationnel de nœud (NOC) de confiance. Le commissaire installe le certificat racine sur le commissionné à l'aide de la commande AddTrustedRootCertReq, puis installe le certificat opérationnel du nœud à l'aide de la commande AddNOC.

Provisionnement du réseau

Le commissaire configure le réseau opérationnel sur le commissaire. Cette étape est nécessaire pour les appareils Thread ou Wi-Fi. Cette étape n'est pas nécessaire pour les appareils Ethernet, car ils sont déjà connectés au réseau. Il utilise les commandes ScanNetworks, AddOrUpdateWifiNetwork et ConnectNetwork.

Découverte opérationnelle

Une fois que le nœud nouvellement mis en service est connecté au réseau, le commissaire utilise la découverte opérationnelle pour trouver le nœud sur le réseau opérationnel. La découverte opérationnelle est le processus par lequel les nœuds mis en service sont détectés sur le réseau opérationnel à l'aide de DNS-SD. Si l'appareil à mettre en service est un appareil Wi-Fi, il utilisera mDNS pour découvrir l'appareil.

La découverte opérationnelle aide le commissaire et les autres nœuds du réseau à connaître l'adresse IP et le port utilisés par le commissionné.

Établissement de session CASE

Une fois le nœud nouvellement mis en service détecté, une session CASE est établie entre le commissaire et l'appareil. Cette session est initiée par le commissaire et l'appareil y répond. Au cours de cette étape, les certificats opérationnels sont échangés et une confiance partagée est établie en validant qu'ils se trouvent dans la même structure logique.

Mise en service terminée

Le commissaire utilise CASE pour envoyer la commande CommissioningComplete à l'appareil nouvellement mis en service. Il s'agit de la dernière étape du processus de mise en service. CommissioningComplete désactive également automatiquement le minuteur de sécurité. Une fois la mise en service terminée, l'appareil fonctionne comme n'importe quel autre nœud sur le réseau opérationnel.