АНАЛИЗ КРИПТОГРАФИЧЕСКОЙ СТОЙКОСТИ ШИФРА "КУЗНЕЧИК" МЕТОДОМ СВЯЗАННЫХ КЛЮЧЕЙ - Студенческий научный форум

IX Международная студенческая научная конференция Студенческий научный форум - 2017

АНАЛИЗ КРИПТОГРАФИЧЕСКОЙ СТОЙКОСТИ ШИФРА "КУЗНЕЧИК" МЕТОДОМ СВЯЗАННЫХ КЛЮЧЕЙ

Красовский А.В. 1
1Южный Федеральный Университет
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
Анализ криптографической стойкости стандарта шифрования РФ "Кузнечик" (далее Кузнечик) позволяет оценить стойкость средств криптографической защиты, используемых в органах государственного управления. Таким образом исследования Кузнечика (в рамках защиты всех государственных информационных систем применяющих средства криптографической защиты) становятся критически важными.

Для анализа криптографической стойкости Кузнечика можно применить метод анализа с использованием связанных ключей шифрования (далее МСК). МСК - это метод анализа при котором используется алгоритм шифрования на нескольких, с заранее известной разницей, ключах. Разница ключей выбирается аналитиком.

“Кузнечик” является блочным симметричным алгоритмом шифрования с размерностью открытого/закрытого текста в 128 бит и ключом шифрования в 256 битов. Данный алгоритм соответствует конструкции SP сети и содержит 9 раундов шифрования с завершающей операцией сложение по модулю два с десятым подключом.

Шифр содержит S преобразования, при котором 128 битное слово делится на 16 8-битных и каждое такое слово изменяется в соответствии с таблицей преобразования , после чего выходы таблиц объединяются в соответствии с входами. Так же имеется L преобразования, которое состоит из совокупности 16-ти R преобразований, которое можно определить как вычисление слова 8-ми бит на основе 128-ми бит с последующем не циклическим сдвигом вправо на 8 бит и заменой старших битов на ново образованные. Последним и самым простым преобразованием в ходе работы алгоритма является операция сложения по модулю два двух 128-ми битных слов, обозначаемое как X. У каждого представленного преобразования имеется обратное преобразование с соответствующим обозначением

Общий вид шифрования и дешифрования соответственно можно представить как:

,

,

где P – это открытый текст, C – закрытый текст, это подключи шифрования.

Как было показано выше, полный процесс шифрования требует 10 подключей с размерностью 128 бит, которые образуются в результате алгоритма развёртки, применяемого к исходному секретному ключу длиной 256 бит. Алгоритм выработки раундовых подключей основан на применении сети Фейстеля и состоит из 32 раундов, где через каждые 8 образуются новая пара подключей, а первыми и входными значениями является мастер ключ в 256 бит, разделённый на правую и левую части по 128 бит каждая. Первый раундовый подключ образуется из левых старших битов, второй – из правых младших битов. В каждом раунде используется постоянное значение (константа), вырабатываемое по следующему принципу:

Сам процесс генерации подключей можно описать как выражение:

,

.

Анализ Кузнечика с помощью МСК основывается на дифференциальных свойствах блоков шифра и на нарушении алгоритма выработки подключей Кузнечика. Т.е. при определении разницы ключей для МСК мы будем выбирать не существующие для Кузнечика ключи. Сам анализ имеет следующие утверждения: анализ происходит на трёх ключах (с разницей (1)), аналитик может шифровать и дешифровать любые тексты на каждом из трёх ключей.

(1)

(1)

где обозначает мастер ключ с номером n и обозначает подключ ключа n с номером i. Для анализа Кузнечика с помощью МСК следует работать в начале с , где используя одинаковые закрытые тексты требуется определить разные открытые тексты. Из-за взаимосвязей ключей можно получить разницу до и после S блока преобразования в первом раунде, а из-за свойств данного блока можно высчитать возможных первых подключей. Далее следует работать с и перебирать возможные первые подключи, где на каждую итерацию перебора определяются одинаковые закрытые текста и получаются разные открытые текста. После чего зная первый возможный подключ и открытые тексты следует получить разницу до и после S блока преобразования во втором раунде, где из-за свойств блока можно высчитать возможных вторых подключей.

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

[1] Vladimir Rudskoy. On zero practical significance of “Key recovery attack on full GOST block cipher with zero time and memory”. - Cryptology ePrint Archive, Report 2010/111, https://eprint.iacr.org/2010/111.pdf. — 2010.

[2] Biryukov A., Khovratovich D. Related-key Cryptanalysis of the Full AES-192 and AES-256. — Cryptology ePrint Archive, Report 2009/317, http://eprint.iacr.org/2009/317.pdf. — 2009.

[3] М. А. Пудовкина, Г. И. Хоруженко, Атака на шифрсистему ГОСТ 28147-89 с 12 связанными ключами - http://kaf42.mephi.ru/wp-content/uploads/2015/12/mvk88.pdf

[4] ГОСТ 34.12.-2015 “Кузнечик” - http://www.tc26.ru/standard/draft/GOSTR-bsh.pdf

[5] Бабенко Л.К., Ищукова Е.А. Современные алгоритмы блочного шифрования и методы их анализа. – М.: Гелиос АРВ, 2006. – 376 с.

Просмотров работы: 391