Аттестация

Сертифицированные устройства — это устройства, прошедшие процедуру сертификации Matter Connectivity Standards Alliance (Alliance) .

В процессе ввода в эксплуатацию сертифицированное устройство должно пройти аттестацию . Другими словами, ему необходимо доказать, что это то, что он заявляет, и что это подлинный продукт. Таким образом, все Matter устройства имеют учетные данные, которые включают пару ключей аттестации и связанную с ней цепочку сертификатов. Сертификат аттестации устройства ( DAC ) является частью этой цепочки. Как только устройство, находящееся в эксплуатации, представит DAC своему уполномоченному, последний удостоверит, что:

  • он был изготовлен сертифицированным производителем.
  • это настоящее устройство.
  • он прошел тесты на соответствие Matter .

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

При аттестации используется инфраструктура открытых ключей ( PKI ), которая использует корневые центры сертификации и промежуточные сертификаты аналогично широко распространенным сертификатам проверки подлинности сервера, используемым для SSL/TLS. Этот процесс называется цепочкой сертификатов аттестации устройства.

Аттестация устройства PKI

DAC представляет собой сертификат X.509 v3. Первая версия X.509 была опубликована ITU-T в 1988 году. X.509 v3 с сертификатом инфраструктуры открытых ключей и списком отзыва сертификатов (CRL), используемый Matter , указан в RFC5280 . Это содержит:

  • Открытый ключ
  • Эмитент
  • Предмет
  • Серийный номер сертификата
  • Срок действия, срок действия которого может быть неопределенным
  • Подпись

Идентификатор поставщика и идентификатор продукта являются атрибутами MatterDACName в теме DAC.

ЦАП уникален для каждого устройства и связан с уникальной парой ключей аттестации внутри продукта. Он выдается центром сертификации, связанным с производителем устройства.

Подпись DAC проверяется на основании промежуточного сертификата аттестации продукта ( PAI ), который также выдается PAA. Однако поставщик может создать один PAI для каждого продукта (зависящего от PID), группы продуктов или для всех своих продуктов.

В корне цепочки доверия открытый ключ центра сертификации продуктов ( PAA ) проверяет подписи PAI. Обратите внимание, что хранилище доверенных сертификатов Matter является объединенным, а набор сертификатов PAA, которым доверяют уполномоченные, хранится в центральной доверенной базе данных (Распределенный реестр соответствия). Вхождение PAA в набор доверенных лиц требует соблюдения политики сертификатов, управляемой Alliance .

Инфраструктура открытых ключей Matter Attestation
Рисунок 1. Инфраструктура открытых ключей Matter Attestation

PAI также является сертификатом X.509 v3, который включает в себя:

  • Открытый ключ
  • Эмитент
  • Предмет
  • Серийный номер сертификата
  • Срок действия, срок действия которого может быть неопределенным
  • Подпись

Идентификатор поставщика и идентификатор продукта (необязательно) являются атрибутами MatterDACName в теме DAC.

Наконец, PAA является корневым сертификатом в цепочке и является самоподписанным. Оно включает:

  • Подпись
  • Открытый ключ
  • Эмитент
  • Предмет
  • Серийный номер сертификата
  • Период действия

Дополнительные подтверждающие документы и сообщения

Процесс аттестации имеет несколько документов и сообщений. Следующие позиции представляют собой краткий обзор их функций и состава. Изображение ниже помогает понять их иерархию.

Иерархия документов аттестации
Рисунок 2: Иерархия документов аттестации
Документ Описание
Декларация о сертификации (CD) Компакт-диск позволяет устройству Matter доказать свое соответствие протоколу Matter . Каждый раз, когда процессы сертификации Matter завершаются, Alliance создает компакт-диск для данного типа устройства, чтобы поставщик мог включить его в прошивку. Компакт-диск включает, помимо прочей информации:
  • ВИД
  • ПИД (один или несколько)
  • Идентификатор категории сервера
  • Идентификатор категории клиента
  • Уровень безопасности
  • Информация о безопасности
  • Тип сертификации (разработка, предварительная или официальная)
  • Подпись
Информация о прошивке (необязательно) Информация о встроенном ПО содержит номер версии компакт-диска и один или несколько дайджестов компонентов встроенного ПО, таких как ОС, файловая система, загрузчик. Дайджесты могут представлять собой либо хэш программных компонентов, либо хэш подписанных манифестов программных компонентов.

Поставщик также мог бы включить в информацию о прошивке только «хеш-хеши» своих компонентов вместо массива отдельных хэшей.

Информация о встроенном ПО является необязательным элементом процесса аттестации и применима, когда поставщик имеет безопасную среду загрузки, которая обрабатывает пару ключей аттестации.
Информация о аттестации Сообщение, отправленное Комиссаром Комиссару. Информация о подтверждении объединяет TLV, содержащий элементы подтверждения , и подпись подтверждения .
Элементы аттестации Это TLV, содержащий:

  • Декларация сертификата
  • Временная метка
  • Аттестация
  • Информация о прошивке (необязательно)
  • Информация о поставщике (необязательно)
Аттестационный вызов Внеполосный запрос, создаваемый во время установления Passcode Authenticated Session Establishment (PASE) / Certificate Authenticated Session Establishment (CASE) и используемый для дополнительной защиты процедуры и предотвращения повторного воспроизведения подписей. Получается из сеанса CASE , сеанса PASE или возобновленного сеанса CASE .
Аттестация TBS (подлежит подписанию) Сообщение, содержащее элементы аттестации и вызов аттестации.
Подпись подтверждения Подпись аттестации TBS, подписанная с использованием закрытого ключа аттестации устройства.

Процедура аттестации

Комиссар несет ответственность за аттестацию Комиссара. Он выполняет следующие шаги:

  1. Комиссар генерирует случайный 32-байтовый одноразовый номер подтверждения. На криптографическом жаргоне nonce (число, используемое один раз) — это случайное число, сгенерированное в ходе криптографической процедуры и предназначенное для однократного использования.
  2. Комиссар отправляет одноразовый номер DUT и запрашивает информацию об аттестации.
  3. DUT генерирует информацию о аттестации и подписывает ее закрытым ключом аттестации.
  4. Комиссар восстанавливает сертификат DAC и PAI с устройства и ищет сертификат PAA в хранилище доверенных сертификатов Matter .
  5. Комиссар проверяет аттестационную информацию. Вот условия валидации:
    • Цепочка сертификатов DAC должна быть проверена, включая проверки отзыва PAI и PAA.
    • VID на DAC совпадает с VID на PAI.
    • Подпись подтверждения действительна.
    • Nonce в элементах аттестации устройства совпадает с nonce, предоставленным Комиссаром.
    • Подпись декларации сертификата действительна с использованием одного из известных ключей подписи декларации о сертификации Alliance .
    • Информация о встроенном программном обеспечении (если она присутствует и поддерживается Комиссаром) соответствует записи в распределенной книге соответствия.
    • Дополнительные проверки VID/PID также выполняются между кластером базовой информации об устройстве, декларацией о сертификации и DAC.