Научная статья на тему 'Криптографические свойства блочных шифров, построенных на основе регистров сдвига'

Криптографические свойства блочных шифров, построенных на основе регистров сдвига Текст научной статьи по специальности «Математика»

CC BY
308
50
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Коренева Алиса Михайловна, Фомичев Владимир Михайлович

Cryptographic properties of registertype block ciphers are studied. A way for designing a block encryption algorithm which is based on shift register with length 4 over the set of binary 16-dimensional vectors is investigated.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Cryptographic properties of block ciphers based on shift registers

Cryptographic properties of registertype block ciphers are studied. A way for designing a block encryption algorithm which is based on shift register with length 4 over the set of binary 16-dimensional vectors is investigated.

Текст научной работы на тему «Криптографические свойства блочных шифров, построенных на основе регистров сдвига»

УДК 519.6

КРИПТОГРАФИЧЕСКИЕ СВОЙСТВА БЛОЧНЫХ ШИФРОВ, ПОСТРОЕННЫХ НА ОСНОВЕ РЕГИСТРОВ СДВИГА

А. М. Коренева, В. М. Фомичев

В некоторых приложениях целесообразно использовать блочные шифры с большим размером блоков данных. В связи с этим актуальным является исследование криптографических свойств симметричных блочных шифров на основе преобразований регистра сдвига произвольной длины над множеством r-мерных векторов, являющихся обобщением шифров Фейстеля [1].

Доклад посвящён рассмотрению инволютивного алгоритма блочного шифрования на основе регистра сдвига длины 4 над множеством двоичных 16-мерных векторов. Результаты работы [1] применяются для оценки перемешивающих свойств раундовой подстановки.

Пример инволютивного алгоритма блочного шифрования

Размер блока данных x равен 64 битам, длина раундового ключа z — 32 бита, число циклов шифрования h — 16. Блок x разбивается на четыре подблока x^x2,x3,x4 размера 16 битов. Раундовый ключ z разбивается на два подключа z1 и z2 по 16 битов. Функция усложнения ^(x2, x3, x4, z) (основной элемент цикловой подстановки) состоит из трёх конструктивных слоев:

1. П одмешивание ключа реализуется с помощью функции

M(x2,x3,x4,z) = {x2 Ф z1,x3 ф z2,x4 ф z1}.

2. Применение s-б о к с о в —нелинейного преобразования S.

Пусть M(x2,x3,x4,z) = (y1,y2,y3) и имеются совершенные преобразования s11, s12, s13, s14, s21, s22, s23, s24 множества V4, то есть каждый бит выхода любой из этих функций существенно зависит от всех четырёх битов входа.

При y 1, У2, У3 е V16 применим к (у 1, У2, У3 ) преобразование S (y 1, y2, y3 ) = ( S1 (у 1 ), S2 (y2 ), S1(y3)), где S1 и S2 суть преобразования множества V16 и для b = (b1,..., b16)eV16 значение Si(b) определено следующей формулой, i = 1, 2:

Si(b) = (sa(b1,. . . , b4), Si2(b5,..., bs), Si3(bg,..., b12), Si4(b13, . . . , b16)).

При выполнении преобразований S1 и S2 4-битовые выходы s-боксов соединяются в 16-битовые векторы S1(y1), S2(y2), S1(y3), которые затем суммируются:

(а^ Й2,... , a16) = S1(y1) ф S2(y2) ф S1(y3).

3. Перемешивание координат, T11 —циклический левый сдвиг на 11 битов:

T 11(^1, Й2, . . . , Й16) = (^12, . . . , Й16, Й1, . . . , Яц).

Следовательно, функция усложнения ^(x2, x3, x4, z) при ключе z имеет вид

■0(x2,x3,x4, z) = T11 (^(S(M(x2,x3,x4,z)))) .

При данной функции ф алгоритм шифрования инволютивен [1, теорема 1] и каждый бит выхода функции усложнения ф зависит существенно от 12 битов множества векторов {x2, x3, x4}. Схема реализации раундовой подстановки шифра дана на рис. 1.

дг=(*1>*2ЛЛ)

і

■ ' 1 < ■

.Vi (16 бит) Л*2 (16 Г»ИТ) JCj (16 бит) Л'4 (16 біІТ)

*2 *3 У(^^з,Х4^)ФХі)

ф/.х)=(Х2Дз,Х4,у(*2ЛзХ|,г)©*1)

Рис. 1. Схема раундовой подстановки (х)

Подблоки ^2, , ^4, кодирующие существенную зависимость выходных битов

функции усложнения от битов векторов ж2,ж3,ж4, приведены на рис. 2.

0 0 0 0 0 1 L 1 1 0 0 0 0 0 0 O'

0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0

0 0 0 0 0 I 1 1 1 0 0 0 0 0 0 O'

0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 1 I 1 1 0 0 0

0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0

0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0

0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0

1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1

1 0 0 0 0 0 0 0 0 0 0 0 0 ] 1 1

1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1

1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1

0 I 1 1 1 0 0 0 0 0 0 0 0 0 0 0

0 I 1 1 1 0 0 0 0 0 0 0 0 0 0 0

0 I 1 1 1 0 0 0 0 0 0 0 0 0 0 0

0 1 1 1 1 0 0 0 о 0 0 0 0 0 0 0

Рис. 2. Вид подблоков ф2,'фз,'ф4

Оценим характеристики перемешивающего графа подстановки ^z (x), используя [1].

Граф Г^ с 16 вершинами является сильносвязным, что обеспечивается действием перестановки T11. Следовательно, сильносвязным является и перемешивающий граф Г(^).

Граф Г(^) с 64 вершинами примитивен, что проверяется с помощью возведения в степень матрицы смежности вершин графа. Тогда при n = 4 и r = 16 верна оценка exp Г^ ^ 312.

Вместе с тем с помощью возведения в степень матрицы смежности вершин графа посчитано на ЭВМ точное значение экспонента перемешивающего графа: exp Г(^) = 7. Большая разница между оценкой и точным значением экспонента объясняется большим разбросом значений экспонента и универсальностью оценки теоремы 3.3 [1].

На практике число раундов алгоритма блочного шифрования выбирается превышающим экспонент примерно в 2 раза, чтобы любой промежуточный блок данных зависел от всех битов либо входного, либо выходного блока. Следовательно, достаточно реализовать 14 раундов шифрования для обеспечения требуемого перемешивания данных.

ЛИТЕРАТУРА

1. Коренева А. М., Фомичев В. М. Об одном обобщении блочных шифров Фейстеля // Прикладная дискретная математика. 2012. №3 (в печати).

УДК 519.7, 004.056.2, 004.056.53

РАЗНОСТНЫЕ УРАВНЕНИЯ ДЛЯ АЛГОРИТМОВ ХЭШИРОВАНИЯ СЕМЕЙСТВА ЫБк

С. Д. Лошкарёв

В работах [1, 2], описывающих хэш-функции семейства МЮх, практически отсутствует обоснование выбора элементов алгоритма. Основная цель данной работы — исследовать влияние примитивных булевых функций и значений циклических сдвигов на стойкость хэш-функции МЮ5 к методам дифференциального криптоанализа в рамках модели, построенной в работе [3]. Данная модель позволяет количественно оценить устойчивость хэш-функции к дифференциальному криптоанализу. В рамках этой модели каждой хэш-функции ставится в соответствие разностное уравнение. Для шага преобразования хэш-функции МЮ5 это разностное уравнение имеет вид (Х — переменные, А — параметры, в — величина циклического сдвига на данном шаге)

(/(Х1+А]_,Х2+^2,Хз+Аз)+Х4+А4) в = (Ао << в)+(/(Х1, Х2, Хз)+Х4) в. (1)

Далее в рассматриваемой модели поочередно фиксируются нулями все возможные сочетания параметров А и для каждого зафиксированного набора строится величина ЕР(/; _, _, _, _, в) (на месте ¿-го символа _ ставится 0, если параметр А зафик-

сирован нулем, и * — в противном случае)—среднее значение вероятности угадать решение данного уравнения, выбирая вектор Х = {Х1 , Х2,Хз,Х4} случайно и равновероятно, при этом незафиксированные параметры А принимают все возможные значения и по ним осуществляется усреднение. В соответствии с моделью для данного уравнения строится характеристический вектор Хз2(/, в), состоящий из 32 компонент, представляющих собой величины ЕР(/; _, _, _, _, _; в) для всех вариантов фиксации параметров А^.

В рамках модели [3], используя похожую аргументацию, можно показать, что хэш-функция МЮ5 с булевой функцией /2 на фиксированном шаге при фиксированном значении циклического сдвига в более устойчива к дифференциальному криптоанализу, чем МЮ5 с булевой функцией /1 на том же шаге с тем же значением циклического сдвига, если хз2(/2,в) Хз2(/1,в). Это сравнение формирует бинарное отношение на множестве булевых функций при фиксированном значении циклического сдвига в и бинарное отношение на множестве циклических сдвигов при фиксированной булевой функции /.

Для анализа уравнения (1) требуется расмотреть уравнение /(Х1+А1 +«1,Х2+А2+«2,Хз+Аз+аз)+А+Х4+«4 = /(Х1,Х2,Хз)+Х4+Ао+ао, (2)

в котором сравнение происходит по модулю 2з2 и а0, а1, а2, аз, < 2, а4 < 3. Для

данного уравнения введём обозначения для следующих переносов из младших п бит:

i Надоели баннеры? Вы всегда можете отключить рекламу.