Вам бонус- начислено 1 монета за дневную активность. Сейчас у вас 1 монета

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Лекция



Привет, Вы узнаете о том , что такое шифр rc rons code или rivests cipher алгоритм криптостойкость, Разберем основные их виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое шифр rc rons code или rivests cipher алгоритм криптостойкость , настоятельно рекомендую прочитать все из категории Шифры в криптографии.

  • 1Описание
    • 1.1Параметры
    • 1.2Расширение ключа
      • 1.2.1Генерация констант
      • 1.2.2Разбиение ключа на слова
      • 1.2.3Построение таблицы расширенных ключей
      • 1.2.4Перемешивание
    • 1.3Шифрование
    • 1.4Дешифрование
  • 2Свойства
  • 3Криптостойкость
    • 3.1RSA Security Challenge
    • 3.2Атака по времени выполнения
  • 4Варианты алгоритма
    • 4.1RC5XOR
    • 4.2RC5P
    • 4.3RC5PFR
    • 4.4RC5KFR
    • 4.5RC5RA
  • 5Примечания
  • 6Ссылки

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Создатель: Рон Ривест

Создан: 1994 год

Опубликован: 1994 год

Размер ключа: 0-2040 битов (128 по умолчанию)

Размер блока: 32, 64 или 128 битов (64 по умолчанию для 32-разрядных платформ)

Число раундов: 1-255 (12 по умолчанию)

Тип: Сеть Фейстеля

RC5 (Ron’s Code 5 или Rivest’s Cipher 5) — это блочный шифр, разработанный Роном Ривестом из компании RSA Security Inc. с переменным количеством раундов, длиной блока и длиной ключа. Это расширяет сферу использования и упрощает переход на более сильный вариант алгоритма.

Описание

Существует несколько различных вариантов алгоритма, в которых преобразования в "пол-раундах" классического RC5 несколько изменены. В классическом алгоритме используются три примитивных операции и их инверсии:

  • сложение по модулю Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость
  • побитовое исключающее ИЛИ (XOR)
  • операции циклического сдвига на переменное число бит Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Основным нововведением является использование операции сдвига на переменное число бит, не использовавшиеся в более ранних алгоритмах шифрования. Эти операции одинаково быстро выполняются на большинстве процессоров, но в то же время значительно усложняют дифференциальный и линейный криптоанализ алгоритма.

Шифрование по алгоритму RC5 состоит из двух этапов. Процедура расширения ключа и непосредственно шифрование. Для дешифрования выполняется сначала процедура расширения ключа, а затем операции, обратные процедуре шифрования. Все операции сложения и вычитания выполняются по модулюШифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Параметры

Т.к. алгоритм RC5 имеет переменные параметры, то для спецификации алгоритма с конкретными параметрами принято обозначение RC5-W/R/b, где

  • W — половина длины блока в битах, возможные значения 16, 32 и 64. Для эффективной реализации величину W рекомендуют брать равным машинному слову. Например, для 32-битных платформ оптимальным будет выбор W=32, что соответствует размеру блока 64 бита.
  • R — число раундов, возможные значения от 0 до 255. Увеличение числа раундов обеспечивает увеличение уровня безопасности шифра. Так, при R=0 информация шифроваться не будет. Также алгоритм RC5 использует таблицу расширенных ключей размера 2(R+1) слов, которая получается из ключа заданного пользователем.
  • b — длина ключа в байтах, возможные значения от 0 до 255.

Расширение ключа


Перед непосредственно шифрованием или дешифрованием данных выполняется процедура расширения ключа. Процедура генерации ключа состоит из четырех этапов:

  • Генерация констант
  • Разбиение ключа на слова
  • Построение таблицы расширенных ключей
  • Перемешивание

Генерация констант

Для заданного параметр W генерируются две псевдослучайные величины используя две математические константы: e (экспонента) и f (Золотое сечение).

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

где Odd() — это округление до ближайшего нечетного целого.

Для w=16,32,64 получатся следующие константы:

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Разбиение ключа на слова

На этом этапе происходит копирование ключаШифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость в массив слов Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость то есть, количество байт в слове.

Если Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость дополняется нулевыми битами до ближайшего большего размера c, кратного Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

В случае если b=c=0, то мы устанавливаем значение Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Построение таблицы расширенных ключей

На этом этапе происходит построение таблицы расширенных ключей Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость, которое выполняется следующим образом:

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Перемешивание

Циклически N раз выполняются следующие действия:

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

причем G,H,i,j — временные переменные, начальные значения которых равны 0.

Количество итераций цикла N — это максимальное из двух значений 3*c и Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Шифрование


Перед первым раундом выполняются операции наложения расширенного ключа на шифруемые данные:

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

В каждом раунде выполняются следующие действия:

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Дешифрование


Для дешифрования данных используются обратные операции, т.е. Об этом говорит сайт https://intellect.icu . для i=R,R-1,...,1 выполняются следующие раунды:

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

После выполнения всех раундов, исходное сообщение находится из выражения:

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Свойства

Алгоритм RC5 обладает следующими свойствами:[1]

  • Пригодный как для аппаратной, так и для программной реализации (алгоритм использует операции, выполняющиеся одинаково быстро на всех процессорах).
  • Каждый раунд обрабатывает весь блок целиком (типичный раунд сети Фейстеля обрабатывает только «подблок»).
  • Одинаково хорош для машин с разной длиной машинного слова (т.е. работает также хорошо и на 64-битных машинах).
  • Имеет повторяющуюся структуру с переменным числом раундов, что позволяет пользователю самому выбирать между более высокой скоростью шифрования и большей защищенностью шифра.
  • Имеет переменную длину ключа, что позволяет пользователю самому выбирать уровень безопасности, соответствующий специфике его приложения.
  • Достаточно простой в реализации и анализе.
  • Не требователен к памяти, что позволяет использовать его даже в мобильных и переносных устройствах.

Криптостойкость

RSA потратила много времени на анализ его работы с 64-битным блоком. Так в период с 1995 по 1998 г. они опубликовали ряд отчетов, в которых подробно проанализировали криптостойкость алгоритма RC5. Оценка для линейного криптоанализа показывает, что алгоритм безопасен после 6 раундов. Дифференциальный криптоанализ требует Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость выбранных открытых текстов для алгоритма с 5 раундами, Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость для 10 раундов, Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость для 12 раундов и Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкостьдля 15 раундов. А так как существует всего лишь Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость возможных различных открытых текстов, то дифференциальный криптоанализ невозможен для алгоритма в 15 и более раундов. Так что рекомендуется использовать 18-20 раундов, или по крайней мере не меньше 15 вместо тех 12 раундов которые рекомендовал сам Ривест.

RSA Security Challenge

Для стимуляции изучения и применения шифра RC5 RSA Security Inc. 28 января 1997 года предложила взломать серию сообщений, зашифрованных алгоритмом RC5 с разными параметрами,[2] назначив за взлом каждого сообщения приз в $10 000. Шифр с самыми слабыми параметрами RC5-32/12/5 был взломан в течение нескольких часов. Тем не менее, последний осуществленный взлом шифра RC5-32/12/8 потребовал уже 5 лет вычислений в рамках проекта распределенных вычислений RC5-64(здесь 64=b·8, длина ключа в битах) под руководством distributed.net. По-прежнему неприступными пока остаются RC5-32/12/b для b от 9 до 16. distributed.net запустил проект RC5-72 для взлома RC5-32/12/9, в котором по состоянию на октября 2013 года удалось перебрать около 3% ключей.[3]

В мае 2007 года RSA Security Inc. объявила о прекращении поддержки соревнования и выплаты денежного вознаграждения. Чтобы не прекращать проект RC-72, distributed.net решила спонсировать для него приз в $4 000 из собственных средств.[4]

Атака по времени выполнения

На платформах, где операция циклического сдвига на переменное число битов выполняется за различное число тактов процессора, возможна атака по времениисполнения на алгоритм RC5. Два варианта подобной атаки были сформулированы криптоаналитиками Говардом Хейзом и Хеленой Хандшух (англ. Helena Handschuh). Они установили, что ключ может быть вычислен после выполнения около 220 операций шифрования с высокоточными замерами времени исполнения и затем от 228 до 240 пробных операций шифрования. Самый простой метод борьбы с подобными атаками — принудительное выполнение сдвигов за постоянное число тактов (например, за время выполнения самого медленного сдвига).

Варианты алгоритма

Т.к. одним из свойств RC5 является его простота в реализации и анализе, вполне логично, что многие криптологи[кто?] захотели усовершенствовать классический алгоритм. Общая структура алгоритма оставалось без изменений, менялись только действия выполняемые над каждым блоком в процессе непосредственно шифрования. Так появилось несколько различных вариантов этого алгоритма:

RC5XOR

В этом алгоритме сложение с ключом раунда по модулю Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкостьзаменено операцией XOR:

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Этот алгоритм оказался уязвим к дифференциальному и линейному криптоанализу. Бирюкову и Кушилевицу удалось найти атаку методом дифференциального криптоанализа для алгоритма RC5XOR-32/12/16, используя 228 выбранных открытых текстов.

RC5P

В этом алгоритме сложение двух обрабатываемых «подблоков» операцией XOR заменено сложением по модулю Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость:

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Этот алгоритм оказался уязвим к дифференциальному криптоанализу.

RC5PFR

В данном алгоритме циклический сдвиг осуществляется на фиксированное для данного раунда число бит, а не на переменное.

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

где Ri фиксированное число.

Этот алгоритм не достаточно хорошо изучен, однако предполагается,что он неустойчив к дифференциальному криптоанализу.

RC5KFR

В этом алгоритме число бит сдвига зависит от ключа алгоритма и от текущего раунда:

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Этот алгоритм также не достаточно хорошо изучен.

RC5RA

В этом алгоритме число бит сдвига определяется с помощью некоторой функции от другого «подблока»:

Шифр RC5 (Rons Code 5 или Rivests Cipher 5) Алгоритм, криптостойкость

Предполагается, что алгоритм RC5RA еще более стоек к известным методам криптоанализа, чем RC5.

Выводы из данной статьи про шифр rc rons code или rivests cipher алгоритм криптостойкость указывают на необходимость использования современных методов для оптимизации любых систем. Надеюсь, что теперь ты понял что такое шифр rc rons code или rivests cipher алгоритм криптостойкость и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Шифры в криптографии

создано: 2016-09-19
обновлено: 2021-03-13
320



Рейтиг 9 of 10. count vote: 2
Вы довольны ?:


Поделиться:

Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей

Комментарии


Оставить комментарий
Если у вас есть какое-либо предложение, идея, благодарность или комментарий, не стесняйтесь писать. Мы очень ценим отзывы и рады услышать ваше мнение.
To reply

Информационная безопасность, Шифры в криптографии

Термины: Информационная безопасность, Шифры в криптографии