Аннотация:
В алгоритмах хэш-функций семейства $MDx$ используются циклические сдвиги, примитивные булевы функции и прибавления констант. До настоящего момента опубликовано крайне мало работ, пытающихся объяснить, как выбор констант, сдвигов и булевых функций влияет на криптографические свойства алгоритмов.
Г. А. Карпунин и Т. Х. Нгуен предложили модель, в которой устойчивость к дифференциальному криптоанализу можно оценить количественно посредством вычисления количества решений уравнения специального вида.
В настоящей работе в рамках этой модели выведено уравнение для хэш-функции MD5. Трудоемкость анализа одной булевой функции и одного значения циклического сдвига при полном переборе составляет $2^{128}$ операций вычисления шага хэш-функции. В настоящей работе предложены формулы, позволяющие сократить трудоемкость анализа до $2^{44}$ арифметических операций.
Ключевые слова:криптоанализ, криптография, хэш-функция, MD5, дифференциальный криптоанализ, дифференциальная характеристика.