Методы и задачи криптографической защиты информации. Мартынов А.И. - 69 стр.

UptoLike

Составители: 

10. Лабораторная работа 2 «Блочные шифры»
Задание:
1. Изучить блочные алгоритмы шифрования: алгоритм перестановки,
алгоритм скремблеров, алгоритм замены по таблице, матричный метод
преобразования и алгоритм Винжера.
2. Изучить режимы использования блочных шифров (ECB, CBC, CFB и
OFB).
3. Изучить способы объединения блочных шифров (многократное
шифрование, сеть Фейстела).
4. Реализовать систему в соответствии с вариантами, указанными в таблице
2 и заданием:
Изучить принцип работы алгоритма, который указан в варианте
(Таблица 2, Поле А) на приведенном примере. Разработать собственный
алгоритм (или модифицировать пример), который реализует указанный
в варианте:
режим использования блочного шифра (Таблица 2, Поле В);
работает с указанной длиной блока (Таблица 2, Поле С);
позволяет оценивать скорость шифрования/дешифрования.
Дополнительные требования:
1. Функции шифрования/дешифрования + вспомогательные функции,
необходимые для осуществления процесса кодирования/декодирования,
помещаются в отдельную библиотеку dll (это необходимо для
выполнения третьей лабораторной работы).
2. Пароль в зашифрованном виде записывается в закодированный файл.
При попытке расшифровать его с другим паролем выводится сообщение
об ошибке.
3. В процессе кодирования осуществляется подсчет контрольной суммы.
При декодировании осуществляется проверка контрольной суммы. При
несовпадении выдается сообщение об ошибке. Для четных вариантов
контрольная сумма считается по открытому тексту, для нечетных
вариантов по шифрованному тексту.
4. Должна иметься возможность отключения режима использования
блочного шифра и работа программы в режиме простого ECB.
5. Паролем может быть ЛЮБАЯ последовательность символов (русских и
английских, цифр, знаков препинания и т. д.).
6. Программа должна быть оформлена в виде удобной утилиты,
позволяющей работать с любыми файлами.
7. Программа должна обеспечивать шифрование файлов произвольной
длины.