Кратко

  • В draft-ietf-suit-update-management-16 расширения управления обновлением необязательны, а сведения об их поддержке конкретным Recipient зависят от развертывания и могут поступать вне протокола.
  • Читаемые строки версии предназначены только для людей и считаются недоверенными. Решение процессора, авторизация, ожидание, установка, активация и работа требуют отдельных свидетельств.

Событие существует только вместе с локальным смыслом

Команда ожидания кажется простой: не продолжать, пока не появится питание, сеть, разрешение, нужная версия другого устройства или заданное время. Но каждое слово опирается на локальный источник данных.

Для местного времени нужны часовой пояс и правила сезонного перевода часов. Без них событие не поддерживается. Для версии другого устройства профиль развертывания должен определить пространство идентификаторов, область уникальности, источник версии и кодирование. Байтова́я строка сама по себе не указывает на объект инфраструктуры.

Редакция 16 требует удовлетворить все перечисленные события, но оставляет способ ожидания реализации. Процессор может блокироваться, подписаться на событие и приостановиться, опрашивать состояние либо завершить обработку и начать заново после уведомления. После перезагрузки эти варианты ведут себя по-разному.

Поэтому «ожидает» — не достаточный диагноз. За ним могут скрываться отсутствие команды, отсутствие сопоставления, ещё не наступившее условие, сбой возобновления или последующая ошибка. Проект рекомендует показывать поддерживаемые расширения и причину ожидания или отказа, а политике — определить переживание перезагрузки, отмену и тайм-аут.

Подпись не компилирует функцию в Recipient

Подпись связывает манифест с автором и защищает содержание. Она не доказывает, что получатель реализует необязательную операцию. В редакции 16 расширения необязательны и для реализации, и для включения; знание о поддержке специфично для развертывания и может быть установлено вне основного обмена.

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

Запись о возможности должна содержать автора утверждения, охват, версию реализации, метод проверки и дату. Ей нужен срок действия. Иначе старый внешний документ получает бессрочную власть над новыми обновлениями.

Deployment profile задаёт локальные значения открытых параметров и отображений. Это соглашение или конфигурация, а не новый объект на проводе. Именно поэтому его легко не включить в журнал, хотя без него невозможно объяснить результат.

Что изменилось после редакции 15

В редакции 15 был прямой текст: неизвестная команда или параметр приводили к отклонению манифеста, а Manifest Author должен был убедиться, что целевые Recipients объявили поддержку требуемых расширений.

Редакция 16 заменила этот абзац более общим положением о deployment-specific и out-of-band знании. Это изменение документа, а не доказательство изменения устройств. Однако оно переносит доказательную нагрузку. Если объявления в протоколе нет, оператор обязан сохранить внешний источник, на основании которого счёл команду исполнимой.

Без такой ссылки одинаковый подписанный манифест может привести к разным траекториям, а центральный журнал сохранит лишь одинаковый хэш.

Строка для человека не становится условием для машины

suit-set-version задаёт машинно-сравнимую версию набора, если её можно представить без потери смысла. suit-parameter-version соединяет оператор сравнения с версией компонента. Метаданные сборки не участвуют в машинном порядке SemVer.

suit-text-current-version и suit-text-version-required объясняют версию оператору. Даже запись, похожая на выражение сравнения, не должна интерпретироваться Manifest Processor. При расхождении авторитетны машинные поля.

Свободный текст считается недоверенным вводом. Его нельзя вычислять, нельзя исполнять разметку, нельзя позволять ему переопределять решение. Интерфейс обязан предотвращать инъекции в экран и журнал.

Есть и более тихая ошибка: показать правильную строку и рядом поставить знак «совместимо», хотя машинное сравнение не выполнялось. Доказательная запись должна отдельно назвать структурированное поле, наблюдаемый компонент, источник его версии, результат и время.

Приоритет передаётся тому, кто авторизует

Меньшее число означает более высокий приоритет, но практическое значение диапазонов задаёт локальная политика. Условие авторизации передаёт значение приложению и завершается ошибкой, если разрешение не получено.

Следовательно, срочность не является полномочием. Автоматическое разрешение возможно только как явное локальное правило. В журнале нужны исходный приоритет, версия политики, субъект решения, ответ и время.

Так сохраняется различие между оценкой автора и согласием оператора. Обе записи важны, но ни одна не заменяет другую.

CoSWID фиксирует ожидаемую идентичность, не факт запуска

suit-coswid поддерживает инвентаризацию, SBOM и аттестацию. Если элемент сделан отделимым, его можно удалить без нарушения подписи манифеста. Наличие поля не означает, что каждый Recipient обрабатывает его содержание.

CoSWID помогает сказать, какое ПО следует ожидать. Он не подтверждает загрузку, запись, установку, активацию или текущую работу. Эти состояния требуют последующих квитанций, привязанных к устройству и компоненту.

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

Как выглядит полная цепочка

Отчёт должен хранить статус спецификации и реестра, подписанный манифест, идентичность Recipient, происхождение и возраст capability-утверждения, deployment profile, машинные параметры и локальные сигналы, результаты условий, причину ожидания или ошибки, итог установки, активацию и наблюдаемую работающую версию.

На момент фиксации источников Datatracker показывал для редакции 16 отправленное объявление об одобрении, но документ ещё оставался Internet-Draft, а действие IANA продолжалось. Одобрение, публикация RFC, регистрация, реализация и успешная эксплуатация — разные события.

Сильная подпись полезна именно тогда, когда ей не приписывают лишнего. Она доказывает инструкцию. Возможность, полномочие и результат должны говорить собственными документами.

Источники