Обращение криптографических хеш-функций с использованием несбалансированных приближений раундовых функций
Представлены результаты решения задач обращения неполнораундового варианта криптографической хеш-функции MD4 с использованием новой техники, которая включает в себя следующие этапы: замену некоторых раундовых подфункций MD4 несбалансированными булевыми функциями; решение полученной изменённой задачи; использование части информации из решения изменённой задачи для перехода к решению исходной задачи. Предлагаемая техника комбинируется с дополнительными условиями на переменные сцепления, введёнными ранее Г. Доббертином. Проведённые вычислительные эксперименты демонстрируют работоспособность предлагаемого подхода в применении к задаче обращения 39-шаговой версии MD4 (MD4-39).
The inversion of cryptographic hash functions using unbalanced approximations of round functions.pdf Хеш-функция MD4 [1] представляет собой один из первых примеров криптографических хеш-функций, построенных на основе конструкции Меркля - Дамгарда [2, 3]. В [4] данная функция была полностью скомпрометирована по отношению к атаке поиска коллизий. Однако для задачи обращения полнораундовой MD4 эффективных алгоритмов не предложено до сих пор. Насколько нам известно, все результаты по обращению неполнораундовых версий MD4 так или иначе основываются на идеях, высказанных Г. Доббертином [5]. В данной работе показано, что двухраундовый вариант MD4 (то есть вариант, включающий 32 шага базового алгоритма) не является стойким к атаке поиска прообраза известного хеша. Основная идея работы [5] состоит в использовании дополнительных условий, связывающих переменные сцепления на определённых шагах. Далее для условий данного типа мы применяем термин «условия Доббертина». Насколько можно судить из открытых источников, наилучший на данный момент результат для рассматриваемой задачи - это нахождение за разумное время прообразов хешей, порождаемых 39-шаговой версией MD4, которую далее будем обозначать MD4-39. Впервые этот результат приведён в [6], где для решения задачи использован SAT-подход. Некоторый вариант условий Доббертина добавлялся в пропозициональную кодировку алгоритма в виде дополнительных ограничений. По утверждению авторов [6], на решение одной задачи уходит около 8 часов работы SAT-решателя minisat на ПК с весьма мощным на тот момент процессором. В работе [7] результаты по обращению 39-шагового варианта MD4 улучшены и описан процесс автоматического синтеза условий Доббертина при помощи параллельного алгоритма решения задачи о булевой выполнимости. В настоящей работе представлены результаты по обращению неполнораундовых версий MD4 с использованием новой техники. Суть этой техники состоит в замене некоторых подфункций несбалансированными булевыми функциями, использование которых, по нашему мнению, должно делать задачу обращения соответствующего варианта рассматриваемой хеш-функции проще для SAT-решателя. Это предположение полностью подтверждается на практике. Будем называть проблему обращения варианта рассматриваемой хеш-функции, в котором подфункции некоторых раундовых функций заменены несбалансированными булевыми функциями, интерполированной задачей обращения. Кратко опишем принцип построения несбалансированных булевых функций. Везде далее процесс перехода от исходной сбалансированной булевой функции к несбалансированной будем называть модификацией. Напомним, что в MD4 вычисление значения переменной сцепления на i-м шаге описывается формулой Qi = (Qi-4 + Фг(ф-1,фг-2,фг-з) + mp(i) + ki)
Ключевые слова
криптоанализ,
обращение хеш-функций,
MD4,
SAT,
cryptanalysis,
inversion problem of hash functions,
MD4,
SATАвторы
Грибанова Ирина Александровна | Институт динамики систем и теории управления им. В. М. Матросова СО РАН | аспирантка | the42dimension@gmail.com |
Всего: 1
Ссылки
Rivest R. L. The MD4 message digest algorithm // LNCS. 1990. V. 537. P. 303-311.
Merkle R. A. Certified digital signature // LNCS. 1990. V.435. P. 218-238.
Damgard I. A. A design principle for hash functions // LNCS. 1990. V. 435. P. 416-427.
Wang X., LaiX., Feng D., et al. Cryptanalysis of the hash functions MD4 and RIPEMD // LNCS. 2005. V. 3494. P. 1-18.
Dobbertin H. The first two rounds of md4 are not one-way // LNCS. 1998. V. 1372. P. 284-292.
De D., Kumarasubramanian A, and Venkatesan R. Inversion attacks on secure hash functions using SAT solvers // LNCS. 2007. V.4501. P. 377-382.
Gribanova I., Zaikin O., Otpuschennikov I., and Semenov A. Using parallel SAT solving algorithms to study the inversion of MD4 hash function // Параллельные вычислительные технологии. XI Междунар. конф. ПаВТ'2017, г. Казань, 3-7 апреля 2017 г. Короткие статьи и описания плакатов. Челябинск: Издательский центр ЮУрГУ, 2017. С. 100-109.
Otpuschennikov I., Semenov A., Gribanova I., et al. Encoding cryptographic functions to SAT using TRANSALG system // ECAI 2016-22nd European Conference on Artificial Intelligence. Frontiers in Artificial Intelligence and Applications. 2016. V. 285. P. 1594-1595.
Biere A. Lingeling essentials. A tutorial on design and implementation aspects of the the SAT solver lingeling // Proc. Fifth Pragmatics of SAT Workshop. 2014. V. 27. P. 88.
http://hpc.icc.ru - Иркутский суперкомпьютерный центр СО РАН. Иркутск: ИДСТУ СО РАН.