Требования к криптосистемам. Режимы и алгоритмы шифрования. Обоснование необходимости разработки программного продукта. Формирование требований к программному обеспечению. Использованные при разработке библиотеки. Разработка пользовательского интерфейса.
Криптография возникла как наука о методах шифрования, и долгое время именно шифрование (т.е. защита передаваемых или хранимых данных от несанкционированного чтения) оставалась единственной проблемой, изучаемой криптографией. Однако в последнее время, в связи с бурным развитием информационных технологий, возникло множество новых применений, напрямую не связанных с сокрытием секретной информации. Необходимость применения криптографических методов вытекает из условий, в которых происходит хранение и обмен информацией. В таких ситуациях необходимы средства, гарантирующие, что в процессе обмена или хранения информация не будет подвергнута искажениям, или не будет подменена целиком. Задачей выпускной квалификационной работы является разработать программу с учетом следующих требований: - простой интерфейс;Основные задачи криптографии заключаются в следующем: - Обеспечение конфиденциальности данных (предотвращение несанкционированного доступа к данным). Это одна из основных задач криптографии, для ее решения применяется шифрование данных, т.е. такое их преобразование, при котором прочитать их могут только законные пользователи, обладающие соответствующим ключом. Под модификацией понимается вставка, удаление или подмена информации, а также повторная пересылка перехваченного ранее текста. Под аутентификацией понимается проверка подлинности субъектов (сторон при обмене данными, автора документов, и т.д.) или подлинности самой информации.Криптография предоставляет возможность преобразовать информацию таким образом, что восстановить информацию возможно только при условии того, что известен ключ [1]. В качестве шифрованной и дешифрованной информации, будут рассматриваться тексты, построенные с использованием некоторого алфавита. Шифрование - преобразование исходного текста или открытого текста на шифрованный текст с помощью ключа. Ключ - информация, применимая для шифрования и дешифрования текстов. Составление и распределение ключей между пользователями или распределение ключей и управление ключами относятся к процессам системы обработки информации.Для современных криптографических систем защиты информации сформулированы следующие общепринятые требования [2]: - Зашифрованное сообщение должно поддаваться чтению только при наличии ключа; число операций, необходимых для расшифрования сходной информации путем брутфорса (перебором всевозможных ключей) должно иметь строгую нижнюю оценку и выходить за пределы вычислительных возможностей современных компьютеров; знание алгоритма шифрования не должно влиять на надежность защиты;В шифре ГОСТ 28147-89 отсутствует режим OFB, а соотнести названия режимов с классификацией НИСТ можно следующим образом [2]: 1. В режиме ECB шифрование/дешифрование-го блока открытого текста/шифротекста выполняется независимо от остальных блоков: , (1.1) (1.2) где - номера блоков; В режиме CBC берется не только ключ и открытый текст, но и генерируется случайное число, которое не является секретным и имеет размер с блок. При шифровании первого блока берется инициализационный вектор, складывается по модулю 2 с открытым текстом и шифруется. В режиме CFB также происходит «маскировка» блока открытого текста уже зашифованными блоками: , где - номера блоков;В настоящее время выделяют несколько наиболее популярных и криптоустойчивых алгоритмов шифрования: AES (Rijndael), Threefish, а также распространенный в России ГОСТ 28147-89 (Магма). В AES был поиск нового стандарта шифрования как альтернатива, но более надежная, таких алгоритмов как DES и IDEA, криптостойкость которых вызвала сомнение и их признали ненадежными. Алгоритм использует линейно-подстановочные преобразования и состоит из 10, 12 или 14 раундов в зависимости от длины ключа (соответственно 128, 192 и 256 бит). Раунд алгоритм Rijndael основан на использовании структуры типа SP-сеть (подстановочно-перестановочная сеть) - одна из блочного шифра, предложенная в 1971 году Хорстом Фейстелем. Алгоритм использует tweak-значения, своего рода вектора инициализации, позволяя изменять значение выхода, без изменения ключа, что положительно как для реализации новых режимов шифрования, так и на криптостойкости алгоритма.Необходимость разработки данной программы обоснована тем, что достаточно мало программ похожего действия, да и то они имеют один или несколько из следующих недостатков: - Стоимость программ может достигать сотен долларов, что неприемлемо для массового распространения;В качестве языка программирования был выбран язык C#.Платформой для разработки программного продукта была выбрана линейка операционных систем Microsoft Windows, начиная с версии Windows XP.Данный программный продукт должен предоставлять простой и надежный способ криптографической защиты конфиденциальной информации с предоставлением доступа к данной информации посредством виртуальных логических дисков.
План
Содержание
Введение
1 Теоретические основы криптографии
1.1 Задачи криптографии
1.2 Работа криптографии
1.3 Требования к криптосистемам
1.4 Режимы шифрования
1.5 Алгоритмы шифрования
2 Проектирование программы
2.1 Обоснование необходимости разработки программного продукта
2.2 Обоснование выбора языка и среды программирования
2.3 Обоснование выбора платформы
2.4 Формирование требований к программному обеспечению
3 Разработка программы
3.1 Использованные при разработке библиотеки
3.2 Структура программы
3.3 Разработка пользовательского интерфейса
4 Использование программы
4.1 Руководство пользователя
Заключение
Список использованных источников
Приложение криптосистема шифрование программный библиотека
Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность своей работы