Особенности дифференциального криптоанализа алгоритма AES

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

Таблица 4

_______________________Результаты реализации атаки_________________________

Раунд Число ключей Правильно

2 50 24

3 25 19

4 5 3

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

1. Pябко Б.Я., Монарев В.А., Шокин Ю.И. Новый тип атак на блоковые шифры // Проблемы передачи информации, 2005. - Т.41, № 4, -C.385-394.

2. SchneierB. Applied Cryptography // N.-Y., Wiley, 1996.

3. B.Ya. Ryabko, V.A. Monarev. Using information theory approach to randomness testing // Journal of Statistical Planning and Inference, 2005, -Vol. 133, № 1, -PP. 95-110.

4. J. Massey, G. Khachatrian, M. Kuregian. Nomination of SAFER++ as Candidate Algorithm for the New European Schemes for Signatures, Integrity, and Encryption (NESSIE) Presented at the First Open NESSIE Workshop, November 2000.

Л.К. Бабенко, Е.А. Ищукова

Россия, г. Таганрог, ТРТУ

ОСОБЕННОСТИ ДИФФЕРЕНЦИАЛЬНОГО КРИПТОАНАЛИЗА АЛГОРИТМА AES

В мае 2002 года в силу вступил новый стандарт блочного шифра США AES, в основе которого лежит алгоритм шифрования Rijndael. В связи со своей новизной алгоритм Rijndael является предметом многих обсуждений. Аналитики ищут его слабые места, однако их попытки пока не приносят особых успехов. Авторы статьи также стараются внести свой вклад в рассмотрение вопросов криптографической стойкости алгоритма. В стандарте AES алгоритм шифрования оперирует блоками, длина которых равна 128 битам. Как правило, исходный блок данных, промежуточные значения и зашифрованные данные на выходе алгоритма принято представлять в виде 16-байтового массива байтов, имеющего четыре строки и четыре столбца (каждая строка и каждый столбец в этом случае могут рассматриваться как 32-разрядные слова). Ключ шифрования также представляет собой такой же двумерный массива Каждый раунд шифрования состоит из четырех различных преобразований: замены байтов SubBytes(); сдвига строк ShiftRows(); перемешивания столбцов MixColumns и сложения с раундовым ключом AddRoundKey. Дифференциальный криптоанализ основан на прослеживании изменения схожести между двумя текстами, в процессе их последовательного прохождения через алгоритм шифрования. При этом, как правило, самое большое влияние на изменение схожести имеют те блоки алгоритма, в которых происходит нелинейное преобразование. Как правило, роль такого преобразования выполняют блоки замены, чаще всего обозначаемые как S-блоки. В алгоритме шифрования Rijndael подобного рода нелинейную замену данных выполняет преобразование SubBytes, обеспечивающее побайтную замену данных [1].

Нами было проанализировано преобразование SubBytes на предмет стойкости к дифференциальному криптоанализу и выявлено несколько особенностей, характерных для таблицы соответствия входных и выходных дифференциалов, показывающей с какой вероятностью на выходе блока появится та или иная разность АС, если на входе блока была разность ДА. Знание этих особенностей может

Известия ТРТУ

Тематический выпуск

существенно помочь при разработке алгоритма проведения дифференциального криптоанализа. Выявленные особенности следующие:

- максимальное значение в таблице равно 4, за исключением первой ячейки, соответствующей разностям ДА = 0 и ДС = 0, значение в которой равно 256;

- для каждой входной разности только одна выходная разность встречается с вероятностью р = 4/256, все остальные выходные разности имеют вероятность появления р = 2/256;

- нулевая разность на выходе может появиться только в том случае, если на входе тоже была нулевая разность, в отличие от алгоритма шифрования ББ8, где нулевая разность на выходе встречалась довольно часто при ненулевой входной разности;

- значение входной разности ДА = 253 остается неизменным на выходе с вероятностью р = 4/256, остальные входные разности либо не могут оставаться неизменными либо имеют вероятность в два раза меньшую.

Входной Выходной Входной Выходной 1 і Входной Выходной Входной Выходной 1

столбец столбец столбец столбец | столбец 1 столбец столбец столбец I

ДХ 2*ДХ 0 ДХ 1 1 , ДХ 2*ДХФЗ*ДХ ДХ 2*ДХФДХ 1

0 0 ^ ДХ ДХ 0 ^ 3*ДХ 1 ДХ 2*ДХ I 1 ДХ 1 0 ^ ДХ@2*ДХ 0 ^ ЛХФЗ*ДХ I 0 ДХ ДХФ2*ДХ

0 з*дх 0 ДХ 0 3*ДХФДХ 0 3*ДХФДХ 1

Входной Выходной Входной Выходной 1 Входноіі Выходной Входной Выходной |

столбец столбец столбец столбец I 1 столбец столбец столбец столбец I

0 з*дх 0 ДХ ' 1 . ДХ 2*ДХФДХ 0 0 1

ДХ ^ 2*ДХ 0 ^ ДХ I 1 0 ^ 0 0 ^ 3*ДХФДХ I

0 ДХ 0 3*ДХ | 1 0 ДХФЗ*ДХ дх 2*ДХФЗ*ДХ

0 ДХ ДХ 2*ДХ 1 1 дх 3*ДХФ2*ДХ ДХ ДХФ2+ДХ 1

.

Рис. 1 Рис. 2

’ I і — 1

Входной Выходной Входной Выходной і і Входной Выходной Входной Выходной

столбец столбец столбец столбец 1 1 столбец 1 столбец столбец столбец

ДХ 2*ДХФЗ*ДУ ДХ 2*ДХФДУ 1 , ДХ 2*ДХФЗ*ДХФДХ ДХ 2*ДХ і

ДУ 0 ^ ДХФ2*ДУ 0 ^ ДХФЗ*ДУ 1 ДХ ДУ ДУ ДХФ2*ДУ | ДХ ^ і ДХ ДХФ2*ДХФЗ*ДХ 2*ДХ 0 - 3*ДХ дХ ^Х©2*ДХФЗ*ДХ 1

0 3*ДХФДУ 0 3*ДХФДУ ' і 1 0 3*ДХ ДХ 3*ДХФДХФ2*ДХ I

Входной Выходной Входной Выходной Входной Выходной столбец Входной Выходной I

столбец столбец столбец столбец | 1 столбец столбец столбец

ДХ 2*ДХФДУ 0 ДХФДУ 1 ДХ 2 ДХФЗ*ДХФДХ 0 3*ДХ I

0 ^ ДХФ4У 0 ^ 3*ДХФДУ 1 1 ДХ ^ 2*ДХ ДХ _^2*ДХФЗ*ДХФДХ

0 ДХФЗ*ДУ ДХ 2*дхфз*дїі ДХФ2*ДУ 1 0 3*ДХ ДХ ДХФ2*ДХФЗ*ДХ I

ДУ 3*ДХФ2*ДУ ДХ ДХ 3*ДХДХФ2*ДХ ДХ 2*ДХ I

Рис. 3

Рис. 4

Г’

Входной Выходной

столбец столбец

ДХ 2*ДХФЗ*ДХ

ДХ _____^ 2*ДХФЗ*ДХ

ДХ 2*ДХФЗ*ДХ

ДХ 2*ДХФЗ*ДХ

Рис. 5.

Другим, оказывающим серьезное влияние на изменение дифференциалов в процессе прохождения данных через алгоритм шифрования, является преобразование перемешивания столбцов (МіхСоІишш), при котором столбцы состояния рассматриваются как многочлены над вР(28) и умножаются по модулю х4+1 на многочлен §(х), имеющий вид g(x)={03}x3+{01}x2+{01}x+{02}. В результате такого умножения байты столбца S0c, Б1с, 82с, 83с заменяются соответственно на байты:

S’oc = ({02}*80с)©({03}*81с) ©Б^зс,

S’lc = Яос©({02}*81с) ©({03}*Я2с) ©Ясз,

S’2c = Я0с©Я1с©({02}*82с) ©({03}*Язс),

S’зc = ({03}*Я0с) ©81с©Я2с©({02}*8зс).

Рассматривая преобразование М1хСо1ишш, необходимо помнить, что разность рассматривается как сумма по модулю два между двумя состояниями текста, то есть ДХ = Х © Х’. В этом случае 2*ДХ = 2*Х © 2*Х’ и 3*ДХ = 3*Х © 3*Х’. Принимая это во внимание, нами были выявлены правила изменения разности столбцов в процессе прохождения данных через преобразование М1хСо1ишп«.

При этом рассматривались следующие варианты входных столбцов разностей:

- ненулевое значение имеет всего один байт (рис.1);

- ненулевое значение имеют два байта, и при этом ненулевые байты имеют одинаковое значение (рис. 2);

- ненулевое значение имеют два байта, и при этом ненулевые байты имеют разные значение (рис. з);

- три ненулевых байта, имеющих одинаковое значение (рис. 4);

- все байты равны между собой и отличны от нуля (рис. 5).

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

Работа поддержана грантом РФФИ № 06-07-89010

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

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

А.Т. Алиев, А.В. Аграновский

Россия, г. Ростов-на-Дону, ФГНУ НИИ "Спецвузавтоматика"

ВОПРОСЫ ПОСТРОЕНИЯ КРИПТОСТЕГАНОГРАФИЧЕСКИХ СИСТЕМ.

МОДЕЛЬ СТЕГАНОГРАФИЧЕСКОГО КАНАЛА ПЕРЕДАЧИ ДАННЫХ

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