Открыть сервис

Режим выработки имитовставки

Режим выработки имитовставки — это криптографический режим работы блочного шифра, предназначенный для обеспечения имитозащиты (контроля целостности и подлинности) передаваемых или хранимых данных. В отличие от режимов шифрования, основной задачей которых является сокрытие содержания информации, режим выработки имитовставки формирует фиксированную по длине проверочную комбинацию (имитовставку), зависящую от всего массива открытых данных и секретного ключа. Имитовставка добавляется к шифротексту или открытому тексту и позволяет получателю убедиться, что данные не были изменены (модифицированы, вставлены или удалены) в процессе передачи или хранения, а также подтвердить их авторство при условии использования общего секретного ключа.

Принцип действия

Режим выработки имитовставки (часто обозначаемый как режим выработки имитоприставки или режим вычисления имитовставки) реализуется на основе блочного шифра, работающего в режиме, напоминающем сцепление блоков шифротекста (CBC, Cipher Block Chaining), но с существенными отличиями. Процесс вычисления имитовставки (Imitation Insertion, I) для сообщения, разбитого на n блоков (M1, M2, …, Mn) одинаковой длины (обычно 64 или 128 бит), состоит из следующих шагов:

  1. Инициализация: Устанавливается начальное значение (вектор инициализации, IV), которое обычно принимается равным нулю или фиксированной константе. В некоторых стандартах начальное значение может быть нулевым вектором.
  2. Последовательное шифрование: Каждый блок открытого текста Mi последовательно обрабатывается с использованием блочного шифра (например, ГОСТ 28147-89, AES) на ключе K. Результат шифрования предыдущего блока (Ci-1) складывается по модулю 2 (XOR) с текущим блоком Mi перед шифрованием. Для первого блока M1 операция XOR выполняется с вектором инициализации IV.
  3. Формирование имитовставки: После обработки последнего блока Mn получается зашифрованный блок Cn. Из этого блока выбирается часть фиксированной длины (обычно от 16 до 64 бит, в зависимости от требуемого уровня надёжности и стандарта). Эта часть и является имитовставкой I.

Математически процесс можно описать следующим образом:

C1 = EK (M1 ⊕ IV) Ci = EK (Mi ⊕ Ci-1) для i = 2, …, n I = MSB(Cn, L)

где:

  • EK — функция блочного шифрования на ключе K;
  • ⊕ — операция побитового исключающего ИЛИ (XOR);
  • MSB(Cn, L) — функция выделения L старших (левых) бит из блока Cn;
  • L — длина имитовставки в битах.

Отличие от режимов шифрования

Хотя алгоритмически режим выработки имитовставки напоминает режим CBC, между ними есть принципиальные различия:

  • Цель: Режим CBC предназначен для шифрования данных, то есть для обеспечения конфиденциальности. Режим выработки имитовставки — только для контроля целостности и подлинности.
  • Выходные данные: В режиме CBC на выходе получается шифротекст, длина которого равна длине открытого текста (с учётом дополнения). В режиме выработки имитовставки на выходе получается короткая фиксированная строка (имитовставка), которая не является шифротекстом и не раскрывает содержимого сообщения.
  • Обратимость: Процесс шифрования в CBC обратим (расшифрование). Процесс выработки имитовставки необратим — по имитовставке невозможно восстановить исходное сообщение или ключ.
  • Использование ключа: В режиме выработки имитовставки используется тот же ключ, что и для шифрования, или отдельный ключ имитозащиты. В некоторых схемах применяется один ключ, в других — два разных ключа для шифрования и имитозащиты.

Длина имитовставки

Длина имитовставки (L) является критическим параметром, определяющим стойкость имитозащиты. Чем длиннее имитовставка, тем меньше вероятность того, что злоумышленник сможет случайно или целенаправленно подобрать корректную имитовставку для модифицированного сообщения. Обычно используются следующие длины:

  • 16 бит: Обеспечивает низкий уровень защиты (вероятность успешной атаки 1/65536). Используется в системах с низкими требованиями к безопасности или для коротких сообщений.
  • 32 бита: Средний уровень защиты (вероятность 1/4,3 млрд). Часто применяется в коммерческих и банковских системах.
  • 64 бита: Высокий уровень защиты (вероятность 1/1,8×10¹⁹). Используется в государственных и военных стандартах, а также в высоконадёжных системах.

Выбор длины имитовставки является компромиссом между требуемым уровнем безопасности и накладными расходами на передачу и хранение (имитовставка добавляется к сообщению, увеличивая его объём).

Применение

Режим выработки имитовставки широко используется в различных областях, где требуется гарантировать целостность и подлинность данных:

Криптографические стандарты

  • ГОСТ 28147-89 (Россия): В этом стандарте режим выработки имитовставки является одним из четырёх основных режимов работы. Имитовставка имеет длину 32 бита (4 байта) и вычисляется на основе 64-битного блочного шифра. Этот режим используется для защиты целостности данных в российских системах электронной подписи и шифрования.
  • ГОСТ Р 34.13-2015 (Россия): Более современный стандарт, описывающий режимы работы блочных шифров. В нём режим выработки имитовставки (обозначается как «Режим выработки имитоприставки») детализирован для шифров с длиной блока 64 и 128 бит (например, «Кузнечик» и «Магма»). Длина имитовставки может варьироваться от 32 до 128 бит.
  • Международные стандарты: В стандартах ISO/IEC 10116 и NIST SP 800-38A аналогичный режим называется CMAC (Cipher-based Message Authentication Code). CMAC использует блочный шифр (например, AES) и обеспечивает имитозащиту сообщений произвольной длины.

Системы передачи данных

  • Банковские системы: При передаче финансовых сообщений (например, SWIFT, платёжные поручения) имитовставка гарантирует, что сумма перевода, номер счёта и другие реквизиты не были изменены злоумышленником.
  • Системы управления: В промышленных сетях (SCADA) и системах управления технологическими процессами имитовставка защищает команды управления и данные телеметрии от несанкционированной модификации.
  • Протоколы связи: В протоколах защищённой передачи данных (TLS, IPsec, SSH) имитовставка (часто в составе MAC-кода) используется для проверки целостности каждого пакета данных.

Хранение данных

  • Файловые системы: Для защиты целостности файлов и метаданных на диске (например, в системах шифрования дисков).
  • Базы данных: Для контроля целостности записей и предотвращения несанкционированного изменения данных в хранилище.

Криптографическая стойкость

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

  • Атака подбора имитовставки: Злоумышленник, перехватив сообщение с имитовставкой, пытается изменить сообщение и подобрать новую имитовставку. Вероятность успеха обратно пропорциональна 2L (где L — длина имитовставки). При L=64 бита вероятность успеха одной попытки составляет 2-64, что делает атаку практически неосуществимой.
  • Атака на основе известного открытого текста: Если злоумышленник знает открытый текст и соответствующую ему имитовставку, он может попытаться восстановить ключ шифрования. Однако для современных блочных шифров (AES, «Кузнечик») такая атака вычислительно неосуществима.
  • Атака на основе выбранного открытого текста: Злоумышленник может выбирать открытые тексты и получать их имитовставки. Это позволяет ему проводить статистические атаки, но для стойких шифров они также неэффективны.

Основным ограничением режима является то, что он не обеспечивает конфиденциальности данных. Для полной защиты (конфиденциальность + целостность) обычно комбинируют режимы шифрования (например, CTR или CBC) и режим выработки имитовставки (например, в режиме GCM — Galois/Counter Mode, который одновременно шифрует и вычисляет имитовставку).

Реализация

Реализация режима выработки имитовставки в программном или аппаратном обеспечении включает:

  1. Выбор блочного шифра: Наиболее распространены AES, ГОСТ 28147-89, «Кузнечик», «Магма».
  2. Определение длины имитовставки: В зависимости от требований к безопасности и накладных расходов.
  3. Обработка сообщения: Сообщение разбивается на блоки, каждый блок шифруется с использованием ключа и предыдущего результата.
  4. Формирование имитовставки: Из последнего зашифрованного блока извлекается заданное количество бит.

В современных процессорах (например, Intel AES-NI) и микроконтроллерах существуют аппаратные ускорители, позволяющие выполнять операции шифрования и вычисления имитовставок с высокой скоростью.

Примеры использования

  • Банкоматы: При считывании данных с карты (например, PIN-кода) банкомат вычисляет имитовставку для проверки целостности запроса к банковскому серверу.
  • Электронные замки: В системах доступа имитовставка используется для проверки подлинности команды открытия.
  • Обновления прошивки: Производитель вычисляет имитовставку для файла прошивки, а устройство проверяет её перед установкой, чтобы убедиться, что прошивка не была повреждена или модифицирована.

Источники

  1. ГОСТ 28147-89. Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования.
  2. ГОСТ Р 34.13-2015. Информационная технология. Криптографическая защита информации. Режимы работы блочных шифров.
  3. NIST SP 800-38A. Recommendation for Block Cipher Modes of Operation: Methods and Techniques.
  4. Шнайер Б. Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си. — М.: Триумф, 2002.
  5. Алферов А.П., Зубов А.Ю., Кузьмин А.С., Черемушкин А.В. Основы криптографии. — М.: Гелиос АРВ, 2001.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →