Файл: Образовательная программа Компьютерный анализ и интерпретация данных к защите допустить Зав каф. Сиб.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 08.11.2023

Просмотров: 115

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

ГЛАВА 1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ И ПОСТАНОВКА ЗАДАЧИ РАЗРАБОТКИ ПРОТОКОЛА ЗАЩИЩЕННОГО ОБМЕНА СООБЩЕНИЯМИ ДЛЯ МЕССЕНДЖЕРОВ

1.1. Понятие криптографических протоколов передачи данных

1.2. Анализ существующих криптографических протоколов

1.3. Определение требований к протоколу защищенного обмена сообщениями

1.4. Постановка задачи создания защищенного протокола для обмена сообщениями

1.5. Выводы

ГЛАВА 2. КОМПЬЮТЕРНЫЙ АНАЛИЗ ГЕНЕРАТОРОВ ПСЕВДОСЛУЧАЙНЫХ ЧИСЕЛ

2.1. Понятие псевдослучайных чисел и генераторов псевдослучайных чисел

2.1. Линейно конгруэнтный метод

2.2. Регистр сдвига с линейной обратной связью

2.3. Алгоритм «Вихрь Мерсенна»

2.4. Построение и тестирование генераторов псевдослучайных чисел

2.5. Сравнительная характеристика генераторов

2.6. Выводы

ГЛАВА 3. МАТЕМАТИЧЕСКОЕ ОПИСАНИЕ РАЗРАБОТАННОГО АЛГОРИТМА

3.1. Аутентификация пользователей

3.2. Получение сеансового ключа

3.3. Генератор псевдослучайных чисел

3.4. Таблица замен символов

3.5. Шифрование сообщения

3.6. Расшифровка сообщения

3.7. Алгоритм целостности данных

3.8. Выводы

ГЛАВА 4. ВЫБОР ОПТИМАЛЬНЫХ ЗНАЧЕНИЙ ПАРАМЕТРОВ АЛГОРИТМА

4.1. Ограничения времени сеанса

4.2. Ограничения объема передаваемой информации

4.3. Выбор параметров для алгоритма Диффи-Хеллмана

4.4. Выбор параметров для генератора псевдослучайных чисел

4.5. Выводы

ЗАКЛЮЧЕНИЕ

Conclusion

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

3.7. Алгоритм целостности данных


При создании собственного канала передачи данных может также возникнуть необходимость в добавлении этапа проверки целостности передаваеммых данных. В качестве метода проверки используются так называемые коды обнаружения и исправления ошибок.

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

К данным кодам относятся коды Хемминга, циклический избыточный код, коды Боуза — Чоудхури — Хоквингема и другие алгоритмы. [29]

Однако при использовании готового канала связи в виде мессенджеров вроде Telegram или WhatsApp потребность в алгоритме целостности данных отпадает, так как эти интструменты уже гарантируют целостность отправки и получения сообщений.

3.8. Выводы


В данной главе была произведена разработка и описание математического обеспечение для реализации алгоритма шифрования сообщения.

Был использован ряд уже криптографических решений, таких как протокол CHAP (для аутентификации пользователей), протокол Диффи-Хеллмана (для выработки общего сеансового ключа), ГПСЧ Вихрь Мерсенна (для выработки ПСП).

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

На рисунке 3.11 показан пример работы разработанного протокола с пошаговым описанием:



Рис. 3.11. Пример работы протокола

ГЛАВА 4. ВЫБОР ОПТИМАЛЬНЫХ ЗНАЧЕНИЙ ПАРАМЕТРОВ АЛГОРИТМА


В данной главе описываются требования к разработанному обеспечению. Проводится оценка параметров алгоритма на обеспечение заданным требованиям.

4.1. Ограничения времени сеанса


Довольно важным требованием для разрабатываемой системы является ее защищенность.

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

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

Также данное ограничение может быть полезным в ситуации, когда один из пользователей лишится доступа к устройству, например из-за потери или кражи. В этом случае автоматическое завершение сеанса спустя определенное время не даст потенциальному злоумышленнику скомпроментировать участников общения.

4.2. Ограничения объема передаваемой информации


Проблема малого периода ГПСЧ (и, как следствие, криптостойкость алгоритма шифрования) отпадает ввиду использования алгоритма Вихря Мерсенна, имеющего впечатляюще большой период.

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

Например, можно установить ограничение в 100 сообщений по 100 символов. Тогда, как и в случае с ограничением по времени сеанса, при компрометации злоумышленником параметров (или ключей) протокола, он сможет получить доступ лишь к ограниченной части сообщения. Подобного принципа придерживается [30] и ранее упомянутый протокол MTProto, используемый в мессенджере Telegram.

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

4.3. Выбор параметров для алгоритма Диффи-Хеллмана


Для выбора оптимальных параметров в алгоритме Диффи-Хеллмана необходимо учитывать ряд факторов, таких как:

1) Безопасность – параметры должны быть достаточно большими для защиты от простого перебора ключей;

2) Криптографические свойства – параметры должны обладать определенными криптографическими свойствами (например, простота и неприводимость чисел).



3) Эффективность – одновременно с обеспечением хороших криптографических свойств параметры не должны быть слишком большими, чтобы обмен ключами мог происходить быстро и эффективно;

4) Совместимость – параметры должны быть согласованы между двумя сторонами, обменивающимися ключами;

Для выбора параметров можно использовать готовые рекомендации из таких стандартов, как NIST SP 800-56A или RFC 3526.

Также можно использовать специальные программы, которые генерируют гарантированно безопасные параметры. В качестве примера таких программ можно выделить, например, OpenSSL [31] или Bouncy Castle.

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

На практике в качестве значений для параметров алгоритма рекомендуется использовать следующие значения: для a и b используются числа порядка 10100, для p – порядка 10300. Число g не обязано быть большим и обычно имеет значение в пределах первого десятка.

4.4. Выбор параметров для генератора псевдослучайных чисел


Как было описано в проведенном во второй главе сравнительном анализе генераторов, одной из самых эффективных реализаций генератора вихрь Мерсенна является версия MT19937, чей период равен 219937-1 (приблизительно 4,3*106001).

Для данной версии уже определны оптимальные значения для параметров. Параметры и соответствующие им значения представлены в таблице 4.1.

Таблица 4.1

Оптимальные значения параметров для ГПСЧ Вихрь Мерсенна

Параметр

Значение

w

32

n

624

m

397

r

31

u

11

s

7

t

15

l

18

a

9908B0DF16

b

9D2C568016

c

EFC6000016

4.5. Выводы


В данной главе было исследовано влияние параметров на эффективность разработанного алгоритма и обеспечение данным алгоритмом заданных требований безопасности и производительности. Такими параметрами являются время сеанса и объем информации, передаваемой за один сеанс, а также параметры для алгоритма Диффи-Хеллмана и ГПСЧ Вихрь Мерсенна.

Также были определены возможные ограничения протокола по объему передаваемой информации и времени жизни сеанса. Были предложены варианты решения проблем, связанных с обнаруженными ограничениями.

ЗАКЛЮЧЕНИЕ


Рассмотренные главы выпускной квалификационной работы охватывают одно из направлений информационной безопасности – защищенная передача данных.

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


1) проведен анализ предметной области разработки протокола защищенного обмена сообщениями для мессенджеров;

2) осуществен компьютерный анализ генераторов псевдослучайных чисел;

3) произведено математическое описание последовательности действий разработанного алгоритма;

4) описан выбор оптимальных значений для параметров алгоритма.

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

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

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

1) протокол аутентификации пользователей;

2) генератор псевдослучайных чисел Вихрь Мерсенна;

3) таблица замен символов;

4) алгоритм шифрования сообщений;

5) алгоритм дешифрования сообщений.

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

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

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

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

Conclusion


The considered chapters of the final qualifying work cover one of the areas of information security – secure data transmission.