Интернет магазин китайских планшетных компьютеров



Компьютеры - RC6 - Безопасность

14 июня 2011


Оглавление:
1. RC6
2. Детали RC6
3. Шифрование и расшифрование
4. Реализация алгоритма RC6 на языке C#
5. Безопасность
6. Оценка аппаратных средств
7. Выполнение
8. Лицензирование



Вариант алгоритма RC6, который был заявлен на AES, как уже было сказано, поддерживает блоки длиной 128 бит и ключи длиной 128, 192 и 256 бит, а также содержит 20 раундов. То есть RC6-128/20/b, где b=128,192 или 256 бит. В отношении такого алгоритма никаких атак не было обнаружено. Были обнаружены атаки только против упрощенных версий алгоритма, то есть алгоритма с уменьшенным количеством раундов.

Полагается, что лучший вариант нападения на RС6, доступный для криптоаналитика, является полным перебором b-байтового ключа шифрования. Для полного перебора требуется min операций. Дон Копперсмит наблюдал, что за счет значительной памяти и предварительного вычисления можно организовать атаку «meet-in-the-middle», чтобы восстановить расширенный ключевой массив S. Это потребовало бы 2 вычислений и таким образом требуемое количество операций равнялось min. Более продвинутые атаки, такие как дифференциальный и линейный криптоанализ, выполнимые на версиях шифра с маленьким количеством раундов, сложно выполнимы для нападение на полный шифр RC6 с 20 раундами. Сложность состоит в том, что трудно найти хорошие повторяющиеся особенности или линейные приближения, с которыми могла бы быть осуществлена атака.

Интересная проблема — установить соответствующие цели для безопасности против этих более продвинутых атак. Чтобы преуспеть, эти атаки типично требуют большого количества данных, и получение 2 блоков известных или выбранных пар зашифрованного\открытого текста — задача отличная от попытки возвратить один ключ из 2 возможных. Стоит заметить, что с шифром, работающим со скоростью один терабит в секунду, время, требуемое для 50 компьютеров, работающих параллельно, чтобы зашифровать 2 блоков данных, составляет более года; зашифровать 2 блоков данных — больше чем 98 000 лет; и зашифровать 2 блоков данных составляет больше чем 10 лет.

Хотя требования к данным для 2 блоков для успешной атаки могли бы быть рассмотрены как достаточные в практических сроках, разработчики стремились обеспечивать намного больший уровень безопасности.

Исследования RC5 не проявили слабостей в установке ключа. Это привело к использованию того же процесса установки ключа и в RC6. Процесс преобразования ключа, предоставляемого пользователем, к таблице ключей, кажется, хорошо смоделирован псевдослучайным процессом. Таким образом, в то время как нет доказательства, что никакие два ключа не приводят к одной и той же таблице ключей, это, кажется, очень маловероятно. Это можно оценить как веоятность того, что существуют два 256-битовых ключа, приводящие к одной и той же таблице 44, 32-разрядных ключей, есть приблизительно 2 = 2 = 10 .

Мы можем суммировать наши требования на безопасности RC6 следующим образом:

— Лучшая атака на RC6 является полный перебор для обеспеченного пользователем ключа шифрования.

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

Важным критерием резерва безопасности является максимальное число раундов, при котором возможна атака. Это возможно для 12-, 14- и 15- раундовых вариантов RC6.

Шифр Количество раундов Тип атаки Текст Байты памяти Операции
RC6-128/20/b 12 Статистические различия 2 2 2
14 Статистические различия 2 2 2
15 Статистические различия 2 2 2

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



Просмотров: 9492


<<< RC5
ROT13 >>>