Процедура расширения ключа алгоритма RC6 аналогична RC5, за исключением того, что алгоритму RC6 требуется несколько больше сгенерированных подключей, а именно 2R+4, т.е. для 20 раундов. Рассмотрим данную процедуру для алгоритма RC6 в варианте для конкурса AES, т.е. с указанными выше фиксированными параметрами.
Расширение ключа выполняется в два этапа.
1. Инициализация массива расширенных ключей производится следующим образом:
, (52)
, (53)
где и – псевдослучайные константы, образованные путем умножения на дробной части и последующего округления до ближайшего нечетного целого двух математических констант (e и φ соответственно):
;
.
2. Циклически выполняются следующие действия:
, (54)
, (55)
, (56)
, (57)
где i, j, A и B – временные переменные, их начальные значения равны нулю,
KI – исходный ключ шифрования, представленный в виде c 32-битных слов.
Выполняются 3c итераций цикла.
Примеры
1. Введем данные, которые необходимо зашифровать, и посмотрим, как данные преобразуются под действием алгоритма RC2 (рис.8-9).
Рис. 8. Входные данные
Рис. 9. Преобразование данных под действием алгоритма RC2
2. Создадим документ и зашифруем его на 8-битном ключе с помощью алгоритма RC2(рис.10-12).
Рис. 10. Создание документа с конфиденциальной информацией
Рис. 11. Ввод ключевых данных
Рис. 12. Зашифрованная информация
3. Проведем анализ зашифрованного сообщения (рис. 13-14).
Рис.13. Криптоанализ зашифрованного сообщения
Рис. 14. Подбор возможных вариантов ключей для расшифровки сообщения
4. Расшифруем зашифрованное сообщение с помощью правильного и неправильного ключа (рис. 15-17).
Рис. 15. Результат расшифровывания с помощью правильного ключа
Рис. 16. Ввод неправильного ключа
Рис. 17. Окно ошибки
5. Этот же документ зашифруем на 24-битном простом ключе с помощью алгоритма RC4 (рис. 18 - 19).
Рис. 18. Ввод простого ключа
Рис. 19. Зашифрованная информация
6. Проведем анализ зашифрованного сообщения (рис. 20-22).
Рис. 20. Криптоанализ зашифрованного сообщения
Рис. 21. Время, требующееся для расшифровки данного сообщения без знания ключа