Инициализация

Инициализацией в Matter называется назначение новому устройству учетных данных в связанной группе. Уполномоченное устройство – это устройство, которое выполняет инициализацию. Инициализируемое устройство – это новое устройство, которое нужно добавить в связанную группу.

В целом процесс ввода в эксплуатацию можно разбить на несколько этапов:

Процесс ввода в эксплуатацию
Рисунок 1. Процесс ввода в эксплуатацию – высокий уровень

Обнаружение устройств

Перед началом процесса ввода в эксплуатацию вводимое в эксплуатацию устройство должно начать передавать объявления. Комиссионер может рекламировать себя, используя любой из трех методов Обнаружения с комиссией. Уполномоченное лицо также должно предоставить полезную нагрузку для регистрации.

Подключиться к устройству (PASE)

Обнаружив объявление и сопоставив дискриминатор, комиссионер использует код доступа из полезной нагрузки интеграции, чтобы выполнить Passcode Authenticated Session Establishment (PASE) и подключиться к устройству. Это метод безопасного создания ключей, которые оба устройства смогут использовать для установления связи. На этом этапе комиссар также включает отказоустойчивость. Отказоустойчивость позволяет вернуть устройство в исходное состояние, если ввод в эксплуатацию не завершился успешно.

Получение информации об инициализируемом устройстве

Комиссар считывает все дескрипторы от Комиссионера. DescriptorCluster находится на конечной точке 0 устройства и описывает все остальные конечные точки. Комиссионер также считывает кластер базовой информации, который включает такие сведения, как идентификатор поставщика, идентификатор товара, название товара и серийный номер. На этом этапе контроллер также считывает тип устройства, которое добавляется, что помогает улучшить UX на стороне контроллера.

Нормативные требования

Комиссионер настраивает нормативную информацию на Комиссионере с помощью команды SetRegulatoryConfig. Нормативная информация включает в себя сведения о настройке местоположения (в помещении, на улице или и то, и другое) устройства или настройке кода страны.

Подтверждение инициализируемого устройства

Цель процедуры подтверждения уполномоченного лица – определить, сертифицировано ли устройство и является ли оно подлинным устройством Matter. Уполномоченное устройство извлекает сертификат подтверждения устройства (DAC) и промежуточный сертификат подтверждения продукта (PAI) из уполномочиваемого устройства. Эти сертификаты содержат идентификатор поставщика, идентификатор товара и открытый ключ подтверждения. После получения сертификатов уполномоченный выполняет запрос на аутентификацию, который должен быть подписан закрытым ключом аттестации, и использует его для установления подлинности уполномоченного.

Запрос на подпись сертификата (CSR)

Уполномочивающее устройство отправляет уполномочиваемому запрос на подпись сертификата (CSR). Устройство, добавляемое в сеть, создает уникальную пару рабочих ключей, которая будет использоваться в Certificate Authenticated Session Establishment (CASE). Устройство, добавляемое в сеть, возвращает полученную информацию CSR устройству, добавляющему в сеть.

Добавить сертификат NOC

Уполномоченный использует информацию CSR, полученную от уполномоченного, и передает ее менеджеру административного домена (ADM) для создания доверенного операционного сертификата узла (NOC). Комиссионер устанавливает корневой сертификат на комиссионера с помощью команды AddTrustedRootCertReq, а затем устанавливает рабочий сертификат узла с помощью команды AddNOC.

Инициализация сети

Инициализирующее устройство настраивает рабочую сеть на инициализируемом устройстве. Этот шаг необходим для устройств с поддержкой Thread или Wi-Fi. Этот шаг не требуется для устройств Ethernet, которые уже подключены к сети. Используются команды ScanNetworks, AddOrUpdateWifiNetwork и ConnectNetwork.

Оперативное обнаружение

После того как новое устройство подключится к сети, комиссионер использует обнаружение в рабочей сети, чтобы найти его. Обнаружение в рабочей сети – это процесс, в ходе которого введенные в эксплуатацию узлы обнаруживаются в рабочей сети с помощью DNS-SD. Если подключаемое устройство использует Wi-Fi, оно будет обнаружено с помощью mDNS.

Операционное обнаружение помогает комиссионеру и другим узлам в сети узнать, какой IP-адрес и порт использует комиссионер.

Установление сеанса CASE

После обнаружения нового узла между комиссионером и устройством устанавливается сеанс CASE. Этот сеанс инициируется уполномоченным лицом, и устройство отвечает на него. На этом этапе происходит обмен рабочими сертификатами и устанавливается общее доверие путем проверки того, что они находятся в одной логической структуре.

Инициализация завершена

Комиссионер использует CASE, чтобы отправить команду CommissioningComplete на новое устройство. Это последний шаг в процессе ввода в эксплуатацию. CommissioningComplete также автоматически отключает таймер безопасности. После успешного ввода в эксплуатацию устройство работает как любой другой узел в рабочей сети.