Кратко
- RFC 9935 задаёт
seed,expandedKeyиboth; вариант распознаётся по тегу ASN.1, а не по догадке о длине. - Для
bothполучателю следует заново получить развёрнутый ключ из seed и сравнить байты; если выполненная проверка выявила расхождение, пакет необходимо отклонить.
Сообщение «импорт завершён» часто скрывает объём доказанного. RFC 9935 разделяет синтаксически понятный контейнер и согласованную пару представлений закрытого ключа.
Для открытой части ML-KEM-512, 768 и 1024 имеют разные OID NIST, параметры AlgorithmIdentifier отсутствуют, размеры фиксированы. Если в сертификате есть keyUsage, разрешён только keyEncipherment. Так определяется формат и заявленное назначение, но не доверенный путь сертификата, владение закрытым материалом или разрешение приложения.
Seed содержит 64 байта и детерминированно порождает развёрнутый ключ декапсуляции и открытый ключ. expandedKey хранит большой секрет непосредственно. both связывает системы, сохраняющие seed, с устройствами, поддерживающими лишь развёрнутую форму.
Тег [0] означает seed, OCTET STRING — развёрнутый ключ, SEQUENCE — оба поля. Разбор SEQUENCE подтверждает наличие, но не связь значений.
Получателю следует выполнить предписанное развёртывание seed и побайтно сравнить результат с вложенным ключом. Он может сэкономить вычисление, но тогда не способен подтвердить совпадение. Если проверка проведена и значения различаются, RFC 9935 требует отказа.
В журнале нужны отдельные состояния: структура разобрана, вариант распознан, сравнение выполнено, совпадение получено, импорт принят, ключ использован. Одно не является квитанцией за следующее.
FIPS 203 устанавливает независимый рубеж: до декапсуляции развёрнутый ключ проверяется по типу, длине и внутреннему хешу. Более широкая проверка пары может включать согласованность seed и цикл инкапсуляции/декапсуляции. Даже она не гарантирует, что KeyGen правильно создал пару.
Выбор хранения необратим. Из seed можно получить развёрнутый ключ, но после уничтожения seed восстановить его из развёрнутой формы нельзя. Сохранение помогает переносу и восстановлению, одновременно оставляя секрет, способный воссоздать пару. Отказ от seed закрывает будущий экспорт.
RFC 5958 задаёт контейнер, RFC 9936 — соседний путь CMS. Локальное действие доказывает квитанция с отпечатком пакета, формой, алгоритмом, версиями проверок, результатом, решением и преобразованием, но без секретных байтов.
Источники
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров

