Теперь, когда мы разобрались с основными понятиями, связанными с узлом, давайте посмотрим, что позволяет устройствам обмениваться данными друг с другом.
В спецификации Matter используются сложные методы шифрования и расшифровки информации, а также безопасные механизмы для подтверждения личности узла и обмена криптографическими учетными данными.
Набор устройств в сети, находящихся в одном домене безопасности, который предоставляет защищенную среду для взаимодействия узлов друг с другом. В рамках одной структуры используется один и тот же сертификат верхнего уровня центра сертификации (ЦС) (корневой сертификат доверия) и уникальный 64-битный идентификатор, называемый идентификатором структуры.
Таким образом, инициализация – это процесс назначения учетных данных в связанной группе новому узлу, чтобы тот мог взаимодействовать с другими узлами в этой группе.
Операционные учетные данные
Корень доверия устанавливается на узле при вводе в эксплуатацию с помощью инициализатора, обычно устройства с графическим интерфейсом, например смартфона, концентратора или компьютера, после получения от менеджера административного домена (ADM), который часто представляет собой экосистему, выступающую в качестве доверенного корневого центра сертификации (CA).
Уполномоченный имеет доступ к ЦА. Таким образом, он запрашивает у ЦС операционные учетные данные узла от имени узла, который вводится в эксплуатацию, или уполномоченного лица. Учетные данные состоят из двух частей:
Операционный идентификатор узла (или идентификатор операционного узла) – это 64-битное число, которое однозначно идентифицирует каждый узел в структуре.
Операционный сертификат узла (NOC) – это набор учетных данных, которые узлы используют для связи и идентификации в связанной группе. Они генерируются в процессе запроса на подпись операционного сертификата узла (NOCSR).
NOCSR – это процедура, которая выполняется на узле, который вводится в эксплуатацию. Он связывает несколько криптографических элементов, а затем отправляет их Комиссару, который запрашивает у экосистемы ЦС соответствующий NOC. На рисунке 1 показано дерево зависимостей и порядок выполнения некоторых операций.
Понимание каждого криптографического элемента важно для разработки SDK, но полный анализ их роли и последствий выходит за рамки этого руководства. Важно отметить, что:
- NOC выпускаются экосистемой ЦС на основе реальных производственных тканей.
- NOC криптографически связаны с уникальной парой операционных ключей узла (NOKP).
- NOKP генерируется узлом, который вводится в эксплуатацию.
- Информация NOCSR, отправляемая в экосистему, включает операционный открытый ключ узла, но операционный закрытый ключ узла никогда не отправляется ни уполномоченному лицу, ни в центр сертификации.
- В процессе NOCSR используются входные данные из процедуры подтверждения, подписывается информация CSRSR и, таким образом, проверяется запрос к ЦА на создание доверенного сертификата NOC.
Процедура подтверждения – это процесс, используемый Комиссаром для подтверждения того, что:
- Устройство прошло сертификацию Matter.
- Устройство действительно является тем, чем оно себя называет: оно криптографически доказывает свой идентификатор поставщика, идентификатор продукта и другую информацию о производстве.
Несколько администраторов
Узлы также могут быть введены в эксплуатацию в нескольких сетях Fabric. Это свойство часто называют многоадминистраторским. Например, устройство может быть подключено к двум сетям Fabric: одной, созданной производителем, и другой, созданной в облачной экосистеме. Каждая из них будет обрабатывать свой набор зашифрованных данных и работать независимо.
Поскольку может существовать несколько тканей, у устройства может быть несколько наборов операционных учетных данных узла. Однако модель данных узла является общей: атрибуты, события и действия кластера одинаковы для всех тканей. Таким образом, хотя учетные данные Thread и/или Wi-Fi задаются в процессе инициализации, они являются частью операционного кластера сети, передаются между всеми структурами и входят в DM узла, а не в учетные данные структуры.