Научная статья на тему 'Разностные уравнения для алгоритмов хэширования семейства mdx'

Разностные уравнения для алгоритмов хэширования семейства mdx Текст научной статьи по специальности «Математика»

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

Аннотация научной статьи по математике, автор научной работы — Лошкарёв Сергей Дмитриевич

Creating a hash function cryptographers almost never prove the selection of algorithmic blocks, the order of blocks. The hash-function HAVAL proposed in 1992 is probably the only exception from this rule.This hash-function is constructed of blocks with specific properties such as strong independence of output bits, strong avalanche effect, 0-1 balance and others for Boolean functions, and the result hash function was proposed to be cryptographically strong. But time had shown that it is not true. The papers, proposing other popular hash-functions such as MD4, MD5, SHA-0, SHA-1, SHA-2, RIPEMD, GOST 34.11-94 and others, do not contain any proof for choice of elements. The algorithms used in construction of the hash-family of MDx contain constant values, addition modulo 232, rotations and primitive Boolean functions, chosen by the author. The cryptanalytics almost had not undertaken yet any attempts to prove the choice of elements and if it is possible to change them to improve the cryptographic properties of the algorithm. The main target of this paper is an analysis of how primitive Boolean functions and rotations influence the resistance of MD5 to differential attacks.

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

Differential equations for hash functions from MDx-family

Creating a hash function cryptographers almost never prove the selection of algorithmic blocks, the order of blocks. The hash-function HAVAL proposed in 1992 is probably the only exception from this rule.This hash-function is constructed of blocks with specific properties such as strong independence of output bits, strong avalanche effect, 0-1 balance and others for Boolean functions, and the result hash function was proposed to be cryptographically strong. But time had shown that it is not true. The papers, proposing other popular hash-functions such as MD4, MD5, SHA-0, SHA-1, SHA-2, RIPEMD, GOST 34.11-94 and others, do not contain any proof for choice of elements. The algorithms used in construction of the hash-family of MDx contain constant values, addition modulo 232, rotations and primitive Boolean functions, chosen by the author. The cryptanalytics almost had not undertaken yet any attempts to prove the choice of elements and if it is possible to change them to improve the cryptographic properties of the algorithm. The main target of this paper is an analysis of how primitive Boolean functions and rotations influence the resistance of MD5 to differential attacks.

Текст научной работы на тему «Разностные уравнения для алгоритмов хэширования семейства mdx»

На практике число раундов алгоритма блочного шифрования выбирается превышающим экспонент примерно в 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,Х3,Х4} случайно и равновероятно, при этом незафиксированные параметры А принимают все возможные значения и по ним осуществляется усреднение. В соответствии с моделью для данного уравнения строится характеристический вектор Хз2(/, в), состоящий из 32 компонент, представляющих собой величины ЕР(/; _, _, _, _, _; в) для всех вариантов фиксации параметров А^.

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

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

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

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

— —в сумме Хг + Лг + аг, I = 1, 2, 3 (7г < 2);

74 в сумме f (Х1 + Л1 + а, Х2 + Л2 + а2, Х3 + Л3 + аз) + Х4 + Л4 + (74 ^ 2);

— 70 —в сумме Ло + f (Х1,Х2,Хз) + Х4 + ао (70 ^ 2);

— 75 — в сумме f (ХьХ2,Хз) + Х4 + а5 (75 < 2).

Введём матрицы М(f; Л0, Л1, Л2, Л3, Л4; п) (п = 2, 3), в которых индекс по строке в троичной системе счисления равен а51| ... || а0, индекс по столбцу в троичной системе счисления равен в5|| ... ||в0, а элементами матрицы являются вероятности угадать решение уравнения (2), такое, что приведенные выше переносы равны значениям в5, ..., во. Далее используются следующие операции над матрицами:

— ф(М) : Мз6хз6 ^ М3х36, исключает все строки, кроме первых трёх, и складывает столбцы, номера которых не равны только в младшем троичном разряде;

— Р(М) : М3 х3 ^ М3 х3, записывает в результирующую матрицу суммы столбцов с совпадающими разностями 70 — 75 (при 70 — 75 ^ 0) в столбец с номером, равным этой разности; удаляет строки, для номера которых а0 = а5 (теперь из-за уменьшения размера матрицы номер может быть представлен в виде строки (а4|| ... ||а0)); переставляет строки так, чтобы строка (а4|| ... ||а0) заняла место строки (а3||... ||а0||а4).

— Тг(М) —след матрицы (сумма диагональных элементов).

Теорема 1. При нечётном значении циклического сдвига в среднее ЕР^;...; в) можно вычислить по формуле (под В понимается множество {0,1})

(

ЕР (/;

в) = рт Тг

О

(!

\\

.ЄБ3,

(I

хЯ

ал ЄБ3 ¿г

а Є Б 2 , ¿г

в — 3 \

\

\

Е М(/; ...а,... ;3) • Е М (/; ...а,,...; 2)

/

Е М(/; ...а, ... ;3) • Е М(/;... а, ...; 2)

ал ЄБ2,

/ /

/

--Л

х

При чётном значении циклического сдвига в среднее ЕР(...) вычисляется по формуле

ЕР (/;...;в) = Тг

/ ((

О

\ (Т-.)/2\

ал Є Б 2 , ¿г

х Я

Е М (/; ...а, ...; 2) \ 5/2\ \

х

IV

Е М (/; ...а,...; 2)

а ~. Є Б 2 ,

/ /

/

Через к обозначено количество незафиксированных компонент в описании среднего.

Следствие 1. Сложность построения характеристического вектора для булевой функции / и фиксированного значения в по формулам из теоремы 1 меньше, чем 234 (при этом сложность построения того же характеристического вектора методом полного перебора больше чем 2288).

2

а

Теорема 2. Построенное бинарное отношение на множестве булевых функций при каждом зафиксированном значении циклического сдвига s совпадает с отношением порядка, построенным в работе [3].

В [3] показано, что наименьшим элементом для этого отношения является функция XOR. Поэтому имеет место

Следствие 2. Использование булевой функции XOR в хэш-функции MD5 является оптимальным с точки зрения устойчивости MD5 к дифференциальному криптоанализу.

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

ЛИТЕРАТУРА

1. Rivest R. The MD4 message digest algorithm // LNCS. 1991. V. 537. P. 303-311.

2. Rivest R. The MD5 message digest algorithm // RFC 1321, MIT Laboratory for Computer Science and RSA Data Security, Inc., April 1992.

3. Нгуен Т. Х., Карпунин Г. А. Оптимальность выбора функции xor в одной модели дифференциального криптоанализа хэш-функций семейства MDx // Материалы IV Междунар. научн. конф. по проблемам безопасности и противодействия терроризму и VII Общерос. научн. конф. «Математика и безопасность информационных технологий» (МАБиТ-2008), Москва, МГУ, 30 октября - 1 ноября 2008 г. М.: МЦНМО, 2009. С. 65-70.

УДК 519.151,519.725, 519.165

ПРОБЛЕМЫ ПОЧТИ ПОРОГОВЫХ СХЕМ РАЗДЕЛЕНИЯ СЕКРЕТА

Н. В. Медведев, С. С. Титов

В настоящее время вопросы, связанные с криптографическими методами защиты информации и математическими задачами криптологии, являются чрезвычайно важными [1]. Такими, например, являются задачи делегирования прав, разграничения доступа к информации и разделения секрета. Одними из основных криптографических примитивов в теории и практике защиты информации являются схемы разделения секрета (СРС).

Основная идея СРС состоит в предоставлении участникам долей секрета таким образом, чтобы только заранее заданные разрешённые коалиции участников могли однозначно восстановить секрет, а неразрешённые не получали никакой дополнительной к имеющейся априорной информации о возможном значении секрета [2].

В работе [3] описаны идеальные почти пороговые СРС, основанные на эллиптических кривых и позволяющие реализовать более сложную, чем у пороговых СРС, структуру доступа [4], при которой не все n-элементные множества участников могут однозначно восстановить секрет. Эллиптическая кривая и точки на ней используются для параметризации участников. В работе [5] доказано, что можно реализовать такую СРС с бесконечным количеством участников, где всюду плотность расположения рациональных точек на эллиптической кривой выступает аналогом совершенности.

Разрешённые коалиции идеальной совершенной схемы разделения секрета определяются циклами некоторого связного матроида, изучение которого и даёт структуру доступа [2], в данном случае матроиды будут почти пороговыми [3].

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