В данном продукте решено использовать стандартный размер блока в 128 бит и размер ключа в 256 бит, как наиболее стойкий вариант


перейти к полному списку дипломных проектов

Ссылка на скачивания файла в формате .doc находится в конце странички

В данном продукте решено использовать стандартный размер блока в 128 бит и размер ключа в 256 бит, как наиболее стойкий вариант

Следовательно, злоумышленник не сможет предпринять повтор блока, и затруднится создание шифровальной книги. Хотя рекомендуется дня каждого сообщения, шифруемого одним и тем же ключом, выбирать уникальный IV, это требование не является обязательным.

IV не должен храниться в секрете, он может передаваться открыто вместе с шифротекстом.

Причины выбора алгоритма

Для выбора конкретного алгоритма шифрования я обратился к результатам конкурса на создание нового общенационального стандарта шифрования, который должен прийти на замену DES, проведенным в конце 1996г. национальным институтом стандартов США (NIST). Разрабатываемому стандарту было присвоено рабочее наименование AES (Advanced Encryption Standard). Отбор проходил в два этапа, после первого среди претендентов осталось 15 кандидатов, после второго – 5 (Crypton, Mars, RC6, Rijndael и Seipent). В конце 2000 года был сделан окончательный выбор. В качестве предлагаемого стандарта был выбран алгоритм Rijndael. Этот алгоритм был разработан Винсентом Райманом (Vincent Rijman) и Иоан Дамен (Joan Daemen) и представляет собой алгоритм, не использующий сети Фейстела.

Также исходя из документа «Performance Analysis of AES candidates on the 6805 CPU core», в котором приводятся результаты сравнения кандидатов по затратам ресурсов и времени работы, я пришел к выводу, что Rijndael лучше всех остальных подходит к моему заданию, т.к. является самым быстрым и требует наименьший объем ресурсов во время работы.





Также немаловажным было при выборе то, чтобы размер сектора диска (512 байт) был кратен размеру блока алгоритма. Из-за этого условия сразу отсеиваются алгоритмы MARS и RC6. Из оставшихся Serpent оказался слишком медленным (примерно на порядок медленнее средней скорости Rijndael). Crypton оказался медленнее примерно в 3 раза из-за медленного вычисления преобразования числа (, используемого в нем, а также сложнее в реализации.

Исходя из этого, было принято решение об использовании криптографического алгоритма Rijndael.

Алгоритм Rijndael

Самостоятельная и оригинальная разработка молодых, но достаточно широко известных в криптографическом сообществе ученых из Бельгии. Алгоритм демонстрирует превосходную производительность на всех рассматриваемых в состязании платформах. Для шифра характерны быстрое разворачивание ключа и низкие требования к памяти, так что он также хорошо работает и в аппаратной реализации, и в ограниченных по памяти условиях. Простая конструкция схемы и консервативный выбор операций должны облегчить дальнейший криптоанализ шифра. Кроме того, специалистами отдельно отмечается, что избранные конструкторами операции относительно просто защитить от известных опасных атак на физическую реализацию криптоалгоритма. Еще одна важная положительная характеристика (хотя и не рассматривавшаяся при выборе финалистов) - в шифре Rijndael имеется существенный потенциал к распараллеливанию, то есть к получению выгод в производительности благодаря применению компьютерных процессоров, позволяющих одновременно выполнять множество инструкций.

Алгоритм может быть сформулирован в терминах всего лишь двух операций - побитового суммирования по модулю 2 и индексированного извлечения из памяти, выполняемых над байтами - он может быть эффективно реализован на любых компьютерных платформах от младших микроконтроллеров до суперпроцессоров. Прямое и обратное преобразования в шифре имеют одинаковую алгоритмическую структуру и различаются константами сдвига, ключевыми элементами, узлами замен и константами умножения. При аппаратной реализации они могут быть совмещены на 60%, а при программной оптимальное быстродействие может быть достигнуто лишь при полностью раздельных реализациях обеих функций.

В качестве стандарта принят вариант шифра только с размером блока 128 бит (16 байт). Число раундов шифрования определяется в зависимости от размера блока и ключа по следующей таблице:

Иными словами, из двух размеров выбирается максимальный, и если он равен 128 бит, то используется 10 раундов, если 192 бита, то 12, и если 256 - то 14 раундов шифрования.

В данном продукте решено использовать стандартный размер блока в 128 бит и размер ключа в 256 бит, как наиболее стойкий вариант. Следовательно, будет 14 раундов шифрования.

скачать бесплатно Программного Обеспечения ЭВМ, Информационных Технологий и Прикладной Математики

Содержание дипломной работы

Техническое задание 1
Основная часть текста, разделенная на разделы: Исследовательская часть
Для того чтобы этого избежать, следует использовать специальный режим шифрования
С использованием IV сообщения с идентичным открытым текстом при шифровании переходят в сообщения с различным шифротекстом
В данном продукте решено использовать стандартный размер блока в 128 бит и размер ключа в 256 бит, как наиболее стойкий вариант
Коэффициенты этого преобразования выбраны таким образом, чтоб у полученного узла замен отсутствовали точки неподвижности (S[y] = y), и "антинеподвижности" (S[y] = ~y)
Кроме того, в обратной матрице присутствуют четыре различных элемента, тогда как в исходной - только три, что позволяло "сэкономить" одно умножение из четырех
inc – функции шифрования и дешифрации блоков по 16 байт, а также вспомогательные по отношению к ним функции; \Driver\AES\usefull_functions
При выборе пункта «Удалить образ диска» также вызывается единственная функция DelImageDlgShow, внутри которой происходит весь процесс удаления существующего файла образа диска
Аналог C/C++ функции strncpy; copy_block proc dst:DWORD, src:DWORD Функция копирования 16 байтного блока src в dst; StrLen proc item:DWORD Функция быстрого вычисления длины строки
Для выгрузки драйвера и удаления виртуального диска из системы выберите пункт «Выгрузить диск» контекстного меню
Кроме того, реализованный в данной работе криптографический алгоритм Rijndael (AES), обладает высокой криптостойкостью и очень высокой скоростью работы
, нами было разработано и проведено 6 занятий по 3D моделированию, позволяющих изучить основы 3D моделирования

заработать

Закачай файл и получай деньги