Кратко

  • При повторном nonce SIV сохраняет аутентичность, но позволяет увидеть, что при том же ключе повторились открытый текст и весь набор связанных данных.
  • Устойчивость к ошибке ограничивает ущерб. Она не отменяет уникальность nonce, выбор допустимого режима, структуру AD и запрет выдавать кандидат открытого текста до проверки.

Сбой не исчез, а сменил форму

Некоторые AEAD-схемы при повторе пары ключ–nonce теряют конфиденциальность или целостность катастрофически. SIV сначала вычисляет значение S2V: CMAC обрабатывает вектор связанных данных и открытый текст. Полученный 128-битный синтетический IV становится началом AES-CTR. Результат содержит IV и шифртекст длины исходного текста.

При уникальном nonce действуют обычные свойства из RFC 5297. При повторе злоумышленнику по-прежнему трудно создать новую строку, которая после расшифрования даст не FAIL. Но если открытый текст и связанные данные совпали, одинаковый результат показывает сам факт повторения.

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

RFC продолжает считать повтор несовместимым с определением nonce. Misuse resistance предназначена для нарушения, а не для новой нормы. RFC 8452 позже подчёркивает ту же управленческую мысль для иной конструкции AES-GCM-SIV: лучшая защита при ошибке не означает намеренную ошибку как политику.

Один шифр обслуживает разные режимы

В nonce-режиме nonce занимает последнее место в AD непосредственно перед открытым текстом. Предыдущие элементы могут связывать арендатора, тип, версию, адресата и назначение. Случайный nonce должен иметь не менее 128 бит и источник с 128 битами энтропии; счётчик и время допустимы при надёжном правиле уникальности.

В детерминированном режиме nonce отсутствует. Типичный объект — непредсказуемый для противника криптографический ключ, который нужно аутентифицированно обернуть. Другие AD всё равно могут фиксировать адресата и назначение.

Общая библиотека не выдаёт общих полномочий. Отсутствие nonce может быть корректным key wrap или попыткой убрать состояние при защите предсказуемых бизнес-значений. Квитанция должна называть профиль, режим, разрешившую сторону и основание применимости.

Границы AD входят в доказательство

S2V принимает упорядоченный вектор строк переменной длины. Границы и позиции аутентифицируются. Пара ab, c не должна превращаться в a, bc после простой конкатенации; перестановка адресата и назначения также меняет смысл.

Интерфейс RFC 5116 предоставляет только один блок AD. Адаптер обязан кодировать вектор однозначно: длины, типы и версия схемы становятся частью контракта. Успешный тег доказывает совпадение байтов, но не одинаковое толкование полей двумя версиями программы.

Есть предел в 127 компонентов S2V. Один занят открытым текстом, поэтому AD может быть не больше 126. Тихое слияние, удаление или изменение порядка ради лимита защищает уже другое утверждение.

Кандидат должен оставаться безвластным

CTR сначала создаёт кандидат открытого текста. Затем получатель заново вычисляет S2V по тому же AD и кандидату. Только равенство с принятым IV позволяет вернуть текст; иначе результат — FAIL.

Обёртка может нарушить эту границу при безупречном криптографическом ядре. Если кандидат заранее поступил в журнал, парсер, кэш или policy engine, поздний отказ не удалит побочный эффект. Прохождение тестовых векторов не проверяет внешнюю карантинную зону.

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

Реестр и счётчики говорят о разном

IANA закрепляет 15, 16 и 17 за вариантами AES-SIV-CMAC. Это общие имена, а не свидетельство исполняемого кода, поколения и разделения ключа, режима, nonce, схемы AD, карантина или прикладного результата.

RFC 5297 также рекомендует осторожный предел порядка 2^48 различных вызовов SIV под одним ключом по примеру CMAC. Бюджет вызовов не является счётчиком уникальности nonce. Нормальное значение одного не подтверждает другое.

Несекретная квитанция связывает алгоритм и build, ключ и поколение, режим, имена и хеши AD по порядку, источник nonce и решение об уникальности, идентификатор объекта, хеш синтетического IV, проверку, выдачу, классификацию дубля, оценку утечки равенства, последующее принятие и бюджет ключа.

Sources