Н. И. Лиманова Должность Уч степень, звание Подпись



страница5/8
Дата09.08.2018
Размер0.51 Mb.
#43720
1   2   3   4   5   6   7   8

1.5 Алгоритмы шифрования


В настоящее время выделяют несколько наиболее популярных и криптоустойчивых алгоритмов шифрования: AES (Rijndael), Threefish, а также распространённый в России ГОСТ 28147-89 (Магма).

1.5.1 Алгоритм AES


В AES был поиск нового стандарта шифрования как альтернатива, но более надежная, таких алгоритмов как DES и IDEA, криптостойкость которых вызвала сомнение и их признали ненадежными. [7]

На конкурсной основе был выбран новый стандарт шифрования Advanced Encryption Standard (AES) или Rijndael - симметричный алгоритм блочного шифрования с переменной длиной блока и переменной длиной ключа. Длина ключа и блока независимы в 128, 192 или 256 бит. Алгоритм использует линейно-подстановочные преобразования и состоит из 10, 12 или 14 раундов в зависимости от длины ключа (соответственно 128, 192 и 256 бит). Блок данных, обрабатываемый с использованием алгоритма Rijndael, делится на массивы байтов, и каждая операция шифрования является байт-ориентированной [8].

Раунд алгоритм Rijndael основан на использовании структуры типа SP-сеть (подстановочно-перестановочная сеть) – одна из блочного шифра, предложенная в 1971 году Хорстом Фейстелем. Преобразование каждого раунда состоит из четырех разных преобразований, или слоев. Каждый в отдельности слой с собственной функцией разрабатывался с учетом противодействия линейному и дифференциальному криптоанализу. [9]

Алгоритм AES очень хорошо реализуется как аппаратно так программно в большом диапазоне окружений, требования к памяти небольшие, пригоднен для окружений с ограниченными ресурсами.



1.5.2 Алгоритм Threefish


Threefish с простой структурой и может быть альтернативой алгоритмов блочного шифрования, является быстрым и гибким шифром, имеет произвольный режим шифрования. Threefish не использует S-блоки. Он использует комбинации инструкций повторяющегося сдвига, сложения и исключающего или.

Как и AES, Threefish реализован в виде подстановочно-перестановочной сети на обратимых операциях, не являясь шифром сети Фейстеля.

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

Несколько сложных раундов чаще хуже применения большого числа простых раундов, алгоритм имеет большое число раундов — 72 или 80 при ключе 1024 бит, но по заявлению создателей, его характеристики по скорости опережают примерно в два раза AES. Это утверждение верно, если используется 64-разрядная архитектура (по причине 64-битной структуры шифра), а на 32-разрядных процессорах демонстрирует значительно худшие результаты.

Ядро шифра простая функция «MIX», которая преобразует два 64-битных беззнаковых числа, происходит сложение, циклический сдвиг (ROL/ROR), и сложение по модулю 2 (XOR).

Создатели утверждают, что алгоритм имеет более высокий уровень безопасности, чем AES. Существует атака на 25 из 72 раундов Threefish, в то время как для AES — на 6 из 10. Threefish имеет показатель фактора безопасности 2.9, в свою очередь, AES всего 1.7 [9].

Для достижения полной диффузии, шифру Threefish-256 достаточно 9 раундов, Threefish-512 — 10 раундов и Threefish-1024 — 11 раундов. Это говорит о том, что 72 и 80 раундов соответственно в среднем, обеспечат лучшие результаты, чем существующие шифры.

Необходимую стойкость обеспечивает выполнение 72-80 раундов с алгоритмом простой структуры и функции преобразования, а размер ключа от 256 до 1024 бит сводит на нет возможность полного перебора паролей при так называемой атаке грубой силой (brute force attack) на современном оборудовании.



1.5.3 Алгоритм ГОСТ 28147-89


Алгоритм ГОСТ используется в качестве государственного стандарта в Российской Федерации.

Алгоритм предусматривает процесс формирования имитовставки. Этот процесс одинаков для любого из режимов шифрования данных. Имитовставка — криптографическая контрольная комбинация, предназначенная для защиты шифрограммы от изменений (случайных, вызванных помехами, или преднамеренных, обусловленных несанкционированным вмешательством). Имитовставка представляет собой блок из двоичных символов, который вырабатывается либо перед шифрованием всего сообщения, либо параллельно с шифрованием по блокам. Первые блоки открытых данных, которые участвуют в выработке имитовставки, могут содержать служебную информацию и не зашифровываться. [10]

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

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

Сформированное таким образом 64-разрядное число суммируется по модулю 2 с третьим блоком открытых данных и т. д. Последний блок, при необходимости дополненный до полного 64-разрядного блока нулями, суммируется по модулю 2 с результатом работы на N — 1 шаге, после чего зашифровывается в режиме простой замены по первым 16 циклам работы алгоритма. Из полученного 64-разрядного числа выбирается отрезок имитовставки длиной р бит.

Использование алгоритмом ГОСТ 28147 — 89 имитовставки повышает его стойкость к подделкам и искажениям.




2 Проектирование программы

2.1 Обоснование необходимости разработки программного продукта


Необходимость разработки данной программы обоснована тем, что достаточно мало программ похожего действия, да и то они имеют один или несколько из следующих недостатков:

  • Стоимость программ может достигать сотен долларов, что неприемлемо для массового распространения;

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

  • Неоднозначный, зачастую непонятный интерфейс, либо слишком большое нагромождение различных функций;

  • Необоснованно большой объем программного продукта вследствие добавления функций, не имеющих отношения к основной функции - шифрованию.

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


Каталог: sites -> store -> ЭИОС -> ВКР%202017%20год
ВКР%202017%20год -> В. Н. Тарасов Должность Уч степень, звание Подпись
ВКР%202017%20год -> В. Г. Карташевский Должность Уч степень, звание Подпись
ВКР%202017%20год -> Информатика и вычислительная техника
ВКР%202017%20год -> Н. И. Лиманова Должность Уч степень, звание Подпись
ВКР%202017%20год -> В. Г. Карташевский Должность Уч степень, звание Подпись
ВКР%202017%20год -> Информационных систем и технологий
ВКР%202017%20год -> Н. Ф. Бахарева Должность Уч степень, звание Подпись
ВКР%202017%20год -> Актуальность. В общедоступном значении слова маршрутизация означает передвижение информации от источника к пункту назначения через объединенную сеть. При этом, как правило, на пути встречается по крайней мере один узел
ВКР%202017%20год -> В. Г. Карташевский Должность Уч степень, звание Подпись
ВКР%202017%20год -> М. В. Новикова Должность Уч степень, звание Подпись


Поделитесь с Вашими друзьями:
1   2   3   4   5   6   7   8




База данных защищена авторским правом ©vossta.ru 2022
обратиться к администрации

    Главная страница