Алгоритм RC5

интересен по многим причинам.

?      Алгоритм разработан известнейшим криптологом Рональдом Ривестом — одним из разработчиков асимметричной системы RSA и одним из основателей одноименной фирмы (RSA Data Security), которая, несомненно, является одним из мировых лидеров рынка средств криптографической защиты информации. Аббревиатура RC обозначает, по разным источникам, либо Rivest Cipher, либо Ron’s Code, т. е., в совокупности, «шифр Рона Ривеста» [28, 395].

?      Аналогично предыдущим алгоритмам шифрования Рона Ривеста RC2 (см. разд. 3.41) и RC4 (является потоковым шифром, поэтому в данной книге не описан), алгоритм RC5 получил весьма широкое распространение;

по количеству пользователей в мире он стоит в одном ряду с такими известными алгоритмами, как IDEA (см. разд. 3.26) и Blowfish (см. разд. 3.8).

?      На преобразованиях, используемых в RC5, основана последующая разработка компании RSA — алгоритм RC6 (см. разд. 3.43), который стал финалистом конкурса AES по выбору нового стандарта шифрования США; алгоритм RC6 не победил в конкурсе, но, видимо, превзойдет своего предка по широте использования.

Структура алгоритма

Аналогично, например, алгоритму SHARK (см. разд. 3.50), часть основных параметров алгоритма RC5 являются переменными. Как пишет автор алгоритма «RC5 — это несколько различных алгоритмов», поскольку, помимо секретного ключа, параметрами алгоритма являются следующие [328]:

?      размер слова w (в битах); RC5 шифрует блоками по два слова; допустимыми значениями w являются 16, 32 или 64, причем 32 является рекомендуемым;

?      количество раундов алгоритма R — в качестве значения допустимо любое целое число от 0 до 255 включительно;

?      размер секретного ключа в байтах Ъ — любое целое значение от 0 до 255 включительно.

Наиболее часто для уточнения параметров алгоритма, используемых в его конкретной реализации, применяется обозначение RC5-w/R/b’, например, RC5-32/12/16 обозначает алгоритм RC5 с 64-битным блоком, 12 раундами и 128-битным (16-байтным) ключом. Такую комбинацию параметров Ривест рекомендует в качестве основного варианта алгоритма.

По мнению автора алгоритма, переменные параметры расширяют сферу использования алгоритма, а также позволяют сильно сократить издержки при необходимости перехода на более сильный вариант алгоритма — в отличие от DES (основная проблема которого — короткий 56-битный ключ), в программной или аппаратной реализации RC5, поддерживающей переменные параметры, легко было бы заменить ключ более длинным, таким образом устранив проблему. Вот что пишет об этом Рон Ривест: «Фиксированные параметры могут быть не менее опасны [переменных], поскольку они не могут быть улучшены при необходимости. Рассмотрим проблему DES: его ключ слишком короток и нет простого способа увеличить его» [328].

Автор предусмотрел и проблему совместимости реализаций RC5 с различными параметрами — каждое зашифрованное сообщение рекомендуется предварять заголовком, содержащим список значений основных параметров алгоритма — предполагается, что в этом случае для расшифровывания сообщения следует установить параметры из заголовка, после чего (при наличии корректного ключа) сообщение легко будет расшифровано.

KFR также не является хорошо изученным алгори+мом, однако считается, что во многих случаях (особенно при недостаточно большом количестве раундов) криптоанализ данного варианта алгоритма RC5 сводится к анализу алгоритма RC5PFR, что не внушает уверенности в его стойкости [190].

? RA, в котором выполняется циклический сдвиг на переменное число битов, определяемое не значением младших log2 w битов другого субблока, а некоей функцией /(), обрабатывающей в качестве входного значения все биты другого субблока (рис. 3.159):

И этот вариант алгоритма еще недостаточно изучен (и, видимо, уже не будет достаточно изучен, поскольку можно утверждать, что RC5 и его варианты сейчас представляют лишь исторический интерес), но существует мнение, что алгоритм RC5RA может быть еще сильнее, чем RC5, против известных методов криптоанализа [190].

Продолжение истории алгоритма

Как было сказано выше, на основе алгоритма RC5 в 1998 г. был разработан алгоритм RC6, который также основан на циклических сдригах на переменное число битов. Подавляющее большинство криптоаналитических исследований алгоритма RC5 могут быть в различной мере применены и к RC6. У RC6 уже своя богатая история, которая заслуживает отдельного описания.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100