Разделы презентаций


Практическое занятие №6,7 по дисцеплине Криптографические методы защиты

Содержание

Победитель конкурса AES объявленный в конце 2000 года, алгоритм Rijndael был разработан двумя бельгийскими криптографами: Дименом (Daemen) и Рийменом (Rijmen). Эта криптосистема, относясь к блочным шифрам, имеет много общего с DES

Слайды и текст этой презентации

Слайд 1Практическое занятие №6,7 по дисцеплине «Криптографические методы защиты информации»


Тема :Симметричный

алгоритм блочного шифрования AES (Advanced Encription Standard).
Кафедра "ИБ"

Практическое занятие №6,7  по дисцеплине «Криптографические методы защиты информации»Тема :Симметричный алгоритм блочного шифрования AES (Advanced Encription

Слайд 2Победитель конкурса AES объявленный в конце 2000 года, алгоритм Rijndael

был разработан двумя бельгийскими криптографами: Дименом (Daemen) и Рийменом (Rijmen).

Эта криптосистема, относясь к блочным шифрам, имеет много общего с DES хотя и не реализует архитектуру Фейстеля.
Rijndael – это симметричный блочный алгоритм шифрования с переменной длиной блока и ключа. Длины блока и ключа могут принимать значения 128, 192 и 256, причем в любой комбинации, варьируемое значение длины ключа составляет одно из достоинств стандарта AES, а вот "официальная" длина блока – только 128 бит.
Шифр Rijndael выполнен в архитектуре "Квадрат" для которой характерно представление шифруемого блока данных в виде двумерного байтового массива. Криптографические преобразования могут выполняться над отдельными байтами массива, а также над его строками или столбцами.
Входом и выходом алгоритма AES являются последовательности (блоки) 128 бит. Число бит в блоке называется длиной блока.
Биты в пределах этих блоков пронумерованы, начиная от нуля и кончая числом, на единицу меньшим длины последовательности.
Основным элементом, которым оперирует алгоритм AES. является байт (последовательность восьми бит).
Внутри алгоритма AES выполняются операции над матрицей размером 4х4 байт , называемой матрицей состояния или просто состоянием, поскольку преобразования удобно представлять как операции над таблицами, содержимое (состояние) которых на каждом цикле изменяются.
Четыре байта в каждом столбце матрицы состояния можно рассматривать как одно 32-х битное слово. Причём номер строки матрицы состояния является номером байта в пределах этого 4-х байтного слова.
Для обеспечения криптостойкости алгоритм Rijndael включает в себя повторяющиеся раунды (от 10 до 14 – это зависит от размера блока и длины ключа), в которых последовательно выполняются преобразования Sub Bytes, Shift Rows. Mix Columns, Add Round Key. Кроме того, Rijndael использует сильную математическую структуру: большинство его операций основаны на арифметике поля FG(28).
Преобразования, составляющие процедуру шифрования, могут быть инвертированы и применены в обратном порядке для получения процедуры расшифровывания InvChipher. В процедуре расшифровывания используются следующие отдельные преобразования: InvShiftRows, InvSubBytes, InvMixColumns и AddRoundKey.

Кафедра "ИБ"

Победитель конкурса AES объявленный в конце 2000 года, алгоритм Rijndael был разработан двумя бельгийскими криптографами: Дименом (Daemen)

Слайд 3Структура алгоритма
Алгоритм AES представляет блок данных в виде двумерного байтового

массива размером 4x4. Длина ключа 128, 192, 256. Все операции

производятся над отдельными байтами массива, а также над независимыми столбцами и строками. В каждом раунде алгоритма выполняются следующие преобразования (рис. 1):

Кафедра "ИБ"

Рис. 1. Структура алгоритма AES

Структура алгоритмаАлгоритм AES представляет блок данных в виде двумерного байтового массива размером 4x4. Длина ключа 128, 192,

Слайд 4Кафедра "ИБ"
Процедура зашифровывания (процедура Chipher)
Операция SubBytes
Представляющая собой табличную замену каждого

байта массива данных согласно таблице 1. Схема операции представлена на

рисунке 2.

Рис. 2. Операция SubBytes.

Кафедра

Слайд 5Таблица 1
Тип S-блока применяемый для шифрования
Кафедра "ИБ"

Таблица 1Тип S-блока применяемый для шифрованияКафедра

Слайд 6Выполняет циклический сдвиг влево всех строк массива данных, за исключением

нулевой (рис. 3). В стандарте шифрования AES сдвиг 1-ой происходит

на 1 байт, 2-ой – на 2 байта, 3-й – на 3 байта.

Операция ShiftRows

Рис. 3. Операция ShiflRows.

Кафедра "ИБ"

Выполняет циклический сдвиг влево всех строк массива данных, за исключением нулевой (рис. 3). В стандарте шифрования AES

Слайд 7Операция MixColumns
Работает на уровне столбца, столбцы рассматриваются как многочлены в

поле GF(28) и умножаются на фиксированный многочлен а(х).
a(x)={03}x3+{01}x2+{01}x+{02}.
MixColumns преобразовывает каждый

столбец матрицы состояний в новый столбец. Это преобразование – фактически матричное умножение столбца матрицы состояний и квадратной матрицы констант. Байты в столбце матрицы состояний и в матрице констант интерпретируются как слова по 8 битов (или полиномы) с коэффициентами в GF (2). Умножение байтов выполняется в GF(28) по модулю (x8+x4+x3+x+1). Сложение – это применение операции XOR к словам по 8 бит. Это можно записать в матричной форме:

В итоге байты столбца изменяются в соответствии со следующими выражениями:

Кафедра "ИБ"

Операция MixColumnsРаботает на уровне столбца, столбцы рассматриваются как многочлены в поле GF(28) и умножаются на фиксированный многочлен

Слайд 8Операция MixColumns представлена на рисунке 4
Рис.4. Операция Mix Columns.
Кафедра "ИБ"

Операция MixColumns представлена на рисунке 4Рис.4. Операция Mix Columns.Кафедра

Слайд 9Операция AddRoundKey
Ключ раунда Round Key прибавляется к массиву State

с помощью операции простого побитового сложения XOR (сложения по модулю

2, рис. 5).

Кафедра "ИБ"

Рис. 5. Операция AddRoundKey

Операция AddRoundKey Ключ раунда Round Key прибавляется к массиву State с помощью операции простого побитового сложения XOR

Слайд 10В процедуре расшифровывания используются следующие отдельные преобразования: InvShiftRows, InvSubBytes, InvMixColumns

и AddRoundKey.
Процедура InvShiftRows. Осуществляется циклический сдвиг строк на то же

самое количество элементов, что и при шифровании, но в обратную сторону – вправо. Либо, в силу свойств операции циклического сдвига, можно осуществить вращение строк матрицы в ту же сторону, что и при шифровании, т.е. влево, но на другое количество элементов
Процедура InvSubBytes. Выполняет замену каждого байта матрицы состояния в соответствии с обратной таблицей замены (инвертированным S-блоком, S-1).
Процедура InvMixColumns. Является обратной к процедуре MixColumns. Процедура InvMixColumns обрабатывает матрицу состояния столбец за столбцом, рассматривая каждый столбец как 4-х членный многочлен. Столбцы рассматриваются как многочлены в поле GF( 28 ) и умножаются по модулю x8+x4+x3+x+1 на фиксированный многочлен a-1 (х):
Инверсия процедуры AddRoundKey. Процедура AddRoundKey является обратной сама к себе, так как состоит только в применении операции XOR.

Процедура расшифровывания (процедура InvChipher)

Кафедра "ИБ"

В процедуре расшифровывания используются следующие отдельные преобразования: InvShiftRows, InvSubBytes, InvMixColumns и AddRoundKey.Процедура InvShiftRows. Осуществляется циклический сдвиг строк

Слайд 11Исходные данные для зашифровывания матрица состояния Nb размером 128 бит:
Пример

раунда AES
Ключ раунда 128 бит:
Кафедра "ИБ"

Исходные данные для зашифровывания матрица состояния Nb размером 128 бит:Пример раунда AESКлюч раунда 128 бит:Кафедра

Слайд 121. Операция SubBytes. Байтом замены (таблица S-блоков) является узел пересечения

старшей и младшей части байта. Например первый байт состояния Nb

88 заменяется на С4. Результат операции SubBytes:

2. Операция ShiftRows. В стандарте шифрования AES в 0-ой строке состояния сдвиг не происходит, 1-ая строка сдвигается на 1 байт, 2-ая – на 2 байта, 3-я – на 3 байта. Результат операции ShiftRows:

Кафедра "ИБ"

1. Операция SubBytes. Байтом замены (таблица S-блоков) является узел пересечения старшей и младшей части байта. Например первый

Слайд 133.Операция MixColumns работает на уровне столбца, столбцы рассматриваются как многочлены

в поле GF(28) и умножаются на фиксированный многочлен а(х).
a(x)={03}x3+{01}x2+{01}x+{02}.
MixColumns преобразовывает

каждый столбец матрицы состояний в новый столбец. Это преобразование – фактически матричное умножение столбца матрицы состояний и квадратной матрицы констант. Байты в столбце матрицы состояний и в матрице констант интерпретируются как слова по 8 битов (или полиномы) с коэффициентами в GF (2). Умножение байтов выполняется в GF(28) по модулю (x8+x4+x3+x+1). Сложение – это применение операции XOR к словам по 8 бит. В матричной форме это можно записать:

В итоге байты столбца изменяются в соответствии со следующими выражениями:

Кафедра "ИБ"

3.Операция MixColumns работает на уровне столбца, столбцы рассматриваются как многочлены в поле GF(28) и умножаются на фиксированный

Слайд 14Для нашего примера операция MixColumns будет выглядеть следующим образом:
Кафедра

"ИБ"

Для нашего примера операция MixColumns будет выглядеть следующим образом: Кафедра

Слайд 15Результат операции MixColumns:
3. Операция AddRoundKey ключ раунда Round Key прибавляется

к массиву State с помощью операции простого побитового сложения XOR

(сложения по модулю 2). Результат операции AddRoundKey:

Кафедра "ИБ"

Результат операции MixColumns:3. Операция AddRoundKey ключ раунда Round Key прибавляется к массиву State с помощью операции простого

Слайд 16Описание демонстрационной программы RijndaelDemo.
Программа выполнена на языке C# и состоит

из двух элементов – файла Rijndael.dll, содержащего реализацию алгоритма шифрования,

и демонстрационного приложения RijndaelDemo.exe (рис. 6). Для работы приложения необходима ОС Windows с установленным .NET Framework v1.1.

Кафедра "ИБ"

Рис. 6. Главное окно RijndaelDemo.

Описание демонстрационной программы RijndaelDemo.Программа выполнена на языке C# и состоит из двух элементов – файла Rijndael.dll, содержащего

Слайд 17В основном окне демонстрационной программы задаются длина ключа, длина блока,

можно посмотреть расширенный ключ шифрования, вычисляемый в соответствии с заданным

ключом шифрования (рис. 7).

Кафедра "ИБ"

Рис. 7. Расширенный ключ шифрования, вычисляемый в соответствии с заданным ключом шифрования.

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

Слайд 18Также есть возможность подробно рассмотреть действие всех операций раунда (ByteSub,

ShiftRow, MixColumn, AddRoundKey, рис.8) как при шифровании, так и при

дешифровании.

При шифровании необходимо выбрать исходный файл и файл, куда будет помещён результат шифрования, при дешифровании – зашифрованный файл и файл, предназначенный для помещения результата дешифрования. В процессе используются указанные в главном окне программы ключ шифрования и длины ключа и блока.

Кафедра "ИБ"

Рис. 8. Операции раунда AES

Также есть возможность подробно рассмотреть действие всех операций раунда (ByteSub, ShiftRow, MixColumn, AddRoundKey, рис.8) как при шифровании,

Слайд 19Выполнить раунд AES для своего ФИО. Ключ раунда (Round Key)

– дата и место рождения. Проверить правильность выполнения раунда при

помощи программы RijndaelDemo.
Рассмотреть один из алгоритмов шифрования которые участвовали в конкурсе AES.

Домашняя работа

Примечание! Кодовая таблица ASCII выдана в ПЗ№4

Кафедра "ИБ"

Выполнить раунд AES для своего ФИО. Ключ раунда (Round Key) – дата и место рождения. Проверить правильность

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

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


Для правообладателей

Яндекс.Метрика