русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Процедура расширения ключа


Дата добавления: 2015-08-31; просмотров: 1274; Нарушение авторских прав


Процедура расширения ключа алгоритма 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. Время, требующееся для расшифровки данного сообщения без знания ключа

 

Рис. 22. Текст сообщения раскрыт

 



<== предыдущая лекция | следующая лекция ==>
Структура алгоритма | Содержание работы


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.168 сек.