Mise en service

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

De manière générale, le processus de mise en service peut être divisé en plusieurs étapes:

Flux de mise en service
Figure 1: Flux de mise en service – Vue d'ensemble

Détection d'appareils

Avant le début du processus de mise en service, le bénéficiaire doit commencer à se faire connaître. Le bénéficiaire de la commission peut se faire connaître à l'aide de l'une des trois méthodes de découverte commissionnable. Le Commissaire doit également fournir la charge utile d'intégration.

Se connecter à un appareil (PASE)

Une fois que le commissaire a vu la publicité et mis en correspondance le discriminateur, il utilise le code secret de la charge utile d'intégration pour effectuer 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 une communication. À ce stade, le commissaire active également un système 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 l'élément mis en service

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'ID du produit, le nom du produit et le numéro de série. À cette étape, le commissaire lit également le type d'appareil du commissaire, ce qui permet de piloter l'expérience utilisateur du côté du 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, par exemple, 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 de la commission est de déterminer si un appareil a été certifié et s'il s'agit d'un véritable appareil Matter. Le commissaire extrait le certificat d'attestation d'appareil (DAC) et le certificat intermédiaire d'attestation de produit (PAI) du commissaire. Ces certificats contiennent l'ID du fournisseur, l'ID du produit et la clé publique d'attestation. Une fois les certificats reçus, le commissaire envoie une requête de défi qui doit être signée par la clé privée d'attestation et l'utilise pour établir l'authenticité du commissaire.

Requête de signature de certificat (CSR)

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

Ajouter un certificat d'opération de nœud (NOC)

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

Provisionnement 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 qui sont déjà connectés au réseau. Il utilise les commandes ScanNetworks, AddOrUpdateWifiNetwork et ConnectNetwork.

Découverte opérationnelle

Une fois le nœud nouvellement mis en service 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 le mandataire est un appareil Wi-Fi, il utilisera mDNS pour le découvrir.

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 commissaire.

É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 lancée par le commissaire et l'appareil y répond. À cette étape, des certificats opérationnels sont échangés et une confiance partagée est établie en validant qu'ils se trouvent dans le même tissu 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 du réseau opérationnel.