Введение

Блок шифр
блочный шифр

Описание

В отличие от многих схем, RC5 имеет переменный размер блока (32, 64 или 128 бит), размер ключа (от 0 до 2040 бит) и количество раундов (от 0 до 255). Изначально предлагаемые параметры включали размер блока 64 бита, 128-битный ключ и 12 раундов. Ключевой особенностью RC5 является использование вращений, зависящих от данных; одной из целей разработки RC5 было стимулирование изучения и оценки подобных операций в качестве криптографических примитивов. RC5 также состоит из ряда модульных сложений и операций исключающего ИЛИ (XOR). Процедуры шифрования и расшифровки могут быть реализованы в несколько строк кода. Однако, алгоритм формирования ключа более сложен, расширяя ключ с помощью, по сути, односторонней функции, использующей бинарные представления числа *e* и золотого сечения в качестве источников "случайных" чисел. Заманчивая простота алгоритма в сочетании с новизной вращений, зависящих от данных, сделала RC5 привлекательным объектом для изучения криптоаналитиков. RC5 обычно обозначается как RC5 w/r/b, где w – размер слова в битах, r – количество раундов, b – количество байтов в ключе.

Алгоритм

Шифрование и расшифрование в RC5 преобразуют случайный ключ в 2(r+1) слова, которые используются последовательно (и только по одному разу) в процессах шифрования и расшифровки. Все последующие сведения основаны на пересмотренной статье Ривеста о RC5.

Криптоанализ

Двенадцатираундовый RC5 (с 64-битными блоками) уязвим к дифференциальной атаке, использующей 244 выбранных открытых текста. Для обеспечения достаточной защиты предлагается использовать 18–20 раундов. Ряд этих задач был решен с помощью распределенных вычислений, организованных Distributed.net. Distributed.net провел брутфорс-взлом сообщений RC5, зашифрованных 56- и 64-битными ключами, и с 3 ноября 2002 года работает над взломом 72-битного ключа. По состоянию на 26 июля 2023 года было просмотрено 10,409% пространства ключей, и, исходя из скорости, зафиксированной в этот день, для полного просмотра 100% пространства ключей потребуется чуть более 59 лет. Эта задача стимулировала множество новых и оригинальных разработок в области кластерных вычислений. RSA Security, владевшая (истекшим) патентом на алгоритм, предлагала серию призов в размере 10 000 долларов США за взлом шифротекстов, зашифрованных с помощью RC5, но эти конкурсы были прекращены в мае 2007 года.