Режимы использования блочных симметричных шифров (БСШ) ИССЛЕДОВАНИЕ АЛГОРИТМОВ И ПРОГРАММНЫХ СРЕДСТВ БЛОЧНОГО СИММЕТРИЧНОГО ШИФРОВАНИЯ Цель работы Закрепить теоретические знания о блочных симметричных шифрах, их строении и режимах их использования. Методические указания по организации самостоятельной работы студентов При подготовке к лабораторной работе необходимо: - изучить строение алгоритма блочного симметричного шифрования, описанного в стандарте ГОСТ 28147-89; - изучить методы обеспечения аутентичности в блочных симметричных системах (схемы выработки имитовставки); - подготовить бланк отчета согласно с разделом "Содержание отчета"; - подготовить ответы на контрольные вопросы. Теоретические сведения Алгоритм блочного симметричного шифрования ГОСТ 28147-89 В алгоритме ГОСТ 28147-89 используются следующие элементарные криптографические преобразования: - подстановка 4-разрядных векторов; - перестановка 32-разрядных векторов (циклический сдвиг на 11 двоичных разрядов); - сложение по модулю 2; - сложение по модулю 2^32. Основные параметры алгоритма: размер блока – 64 бита; размер ключа – 256 бит; число циклов в процедуре зашифрования – 32. Схема 1 цикла преобразования представлена на рис. 1.  Рис. 1 Режимы использования блочных симметричных шифров (БСШ) Существует 5 основных режимов использования БСШ: 1 Режим простой замены или ECB (Electronic Code Book) – электронная кодовая книга. 2 Режим сцепления зашифрованных блоков или CBC (Cipherblock Chaining). 3 Режим поточного шифрования с обратной связью по зашифрованному блоку или CFB (Ciphertext Feedback). 4 Режим поточного шифрования с обратной связью по выходу или OFB (Output Feedback). 5 Режим выработки имитовставки или MAC (Message Authentication Code). Базовым является режим ECB. Независимо от того, какие преобразования выполняются в ходе выработки криптограмм, общая схема данного режима имеет следующий вид.  Рис. 1 На рисунке Mi– блоки открытого собщения, Ci– блоки криптограмм, К – секретный ключ, Ш – блок шифрования, ДШ – блок дешифрования. Основной недостаток первого режима – одинаковым открытым сообщениям будут соответствовать одинаковые криптограммы, передаваемые по открытому каналу. Для устранения этого недостатка разработан режим cцепления криптограмм (CBC). Схема на рис. 2.  Рис. 2 ИВ – инициализационный вектор, который подается на сумматор на первом шаге (при зашифровании первого блока сообщения), на последующих шагах на сумматор поступает значение предыдущей криптограммы. Если при передаче криптограмм возникнет искажение в одном бите, то получатель неправильно дешифрует два блока сообщения, при чем, во втором блоке будет искажен всего один бит. В третьем и четвертом режимах используется только прямое криптографическое преобразование. Схема режима с обратной связью по шифртексту представленана рис. 3.  Рис. 3 При возникновении искажения в одном бите получатель получит два неправвильных блока сообщений, при чем в первом будет искажен лишь один бит. Схема режима с обратной связью по выходу (OFB) представлена на рис. 4.  Рис. 4 Отличие этого режима от предыдущего заключается в том, что на вход шифратора поступает не криптограмма, а результат работы шифратора предыдущего шага. Искажение в одном бите криптограммы приведет к неправильному значению одного бита в соответствующем блоке у получателя. Пятый режим – режим выработки имитовставки (MAC) в отличие от первых четырех предназначен не для обеспечения конфиденциальности данных, а для обеспечения целостности и аутентичности сообщений. Схема выработки имитовставки представлена на рис. 5.  Рис. 5 Порядок выполнения работы 1. Сформируйте какой-нибудь текстовый файл. 2. Выполните шифрование этого файла с помощью набранной в командной строке команды : AGOSTA -e <режим> <входной файл> <выходной файл> <признак удаления> Параметр <режим> задает режим алгоритма шифрования и может принимать числовые значения от 1 до 4. Параметр <признак удаления> может принимать значения: 0 - не удалять исходный файл; 1 - удалять исходный файл. После запуска программы необходимо ввести какой-либо пароль. Этот пароль будет использован для генерации сеансового ключа. Пример: AGOSTA -e -1 x.txt x.sec 0 3. Выполните дешифрование файла с помощью команды: AGOSTA -d <режим> <входной файл> <выходной файл> <признак удаления> После запуска программы необходимо ввести тот же самый пароль, что и для шифрования. Пример: AGOSTA -d -1 x.sec x1.txt 0 4. Выполните шифрование и дешифрование, используя все 4 режима алгоритма ГОСТ. 5. Повторите п.4, но при этом внесите изменения в зашифрованный файл (следует изменить один из символов после 33-й позиции). Определите, как при этом изменяется расшифрованный файл. Заполните таблицу 1. Таблица 1 | Количество изменившихся битов(байтов) при изменении одного бита (байта) | Режим 1 | | Режим 2 | | Режим 3 | | Режим 4 | | Объясните, почемупроизошли именно такие изменения. 3.4. Контрольные вопросы и задания. 1. Дайте общую характеристику алгоритма шифрования ГОСТ 28147-89. 2. Дайте характеристику режимов алгоритма ГОСТ 28147-89. 3. Как обеспечивается аутентичность при использовании алгоритма ГОСТ 28147-89? 4. Поясните работу алгоритма ГОСТ в режиме простой замены. 5. Поясните работу алгоритма ГОСТ в режиме поточного шифрования. 6. Поясните работу алгоритма ГОСТ в режиме поточного шифрования с обратной связью. 7. Поясните работу алгоритма ГОСТ в режиме выработки имитовставки. 8. Вычислите безопасное время и расстояние единственности для алгоритма ГОСТ. 9. Сравните поточные и блочные криптосистемы. Назовите их основные достоинства и недостатки. 10. Сформулируйте предложения по применению алгоритма шифрования ГОСТ 28147-89 для цифровой подписи. |