Скачиваний:
46
Добавлен:
10.04.2023
Размер:
468.52 Кб
Скачать

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,

СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»

(СПбГУТ)

Факультет Инфокоммуникационных сетей и систем

Кафедра Защищенных систем связи

Дисциплина Криптографические методы защиты информации

ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №11

Исследование безусловно стойкой аутентификации сообщений на основе

строго-универсальных хэш-функций

(тема отчета)

Направление/специальность подготовки

10.03.01 Информационная безопасность

(код и наименование направления/специальности)

Студент:

(Ф.И.О., № группы) (подпись)

Преподаватель:

Яковлев В.А.

(Ф.И.О) (подпись)

  1. Цель лабораторной работы

Закрепить знания, полученные в лекционном курсе, по разделу «Аутентификация сообщений».

  1. Используемое программное обеспечение

Для работы используется программа Project2.exe

  1. Порядок выполнения работы

  1. Моделирование способа формирования аутентификатора на основе строго универсальных хэш-функций.

Сообщение: M = (27 + 11) mod 31 = 7 = 00111, берем младшие 4 бита

K0 = 0101, K1 = 0011, b = 4

Неприводимый многочлен h(x) = x4 + x + 1

Сформируем аутентификатор для двоичного сообщения M на основе строго универсальных хэш-функций по алгоритму ES = [M*K0 + K1]b :

  1. M*K0 = (x2 + x + 1) * (x2 + 1) = x4 + x3 + x + 1

  2. M*K0 + K1 = (x4 + x3 + x + 1) + (x + 1) = x4 + x3

  3. (M*K0 + K1) mod (x4 + x + 1) = (x4 + x3) mod (x4 + x + 1) = x3 + x + 1

  4. [M*K0 + K1]b = [1011]4 = 1011

ES = 1011

Общее количество хэш-функций в классе

Найдем количество хэш-функций, отображающих M в ES :

Найдем количество хэш-функций, отображающих M в ES и M’ в E’S, где :

Таким образом, вероятность успешного выполнения оптимальной атаки подстановки равна:

Данный класс хэш-функций строго универсален.

При b = 3:

  1. Исследование безусловно стойкой системы аутентификации на основе строго универсальных хэш-функций.

Выбираем в программе режим однократная передача и зададим произвольное двоичное сообщение M длины 8 бит и ключ аутентификации K0, K1 общей длины 16 бит.

M = 10010110

K0 = 10100101, K1 = 11000011

По алгоритму ES = [M * K0 + K1]b,

где * и + означают, соответственно, умножение и сложение в конечном поле GF(2n), а [x]b – операцию удержания b младших бит x.

В программе произведем вычисление аутентификатора

ES = 11011100

и найдем множество всех ключей K = [M, ES], которые переводят заданное сообщение M в полученный аутентификатор (вся информация, которая известна злоумышленнику при атаке подстановкой):

Далее, случайным образом выберем ключ из множества K = [M, ES] и для произвольно выбранного ложного сообщения M’ вычислим фальшивый аутентификатор E’S. Используя панель Верификация, проверим, будет ли подделка обнаружена для этого ложного сообщения и ложного аутентификатора на ключе законного представителя:

K = 1110111101011000, M’ = 01101001

Как видим, для вычисленного фальшивого аутентификатора E’S = = 01110101 и для ложного сообщения M’, на ключе законного представителя верификация не удалась.

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

Теоретический расчет вероятности необнаруженной подделки выполнен верно:

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

Верификация действительно прошла успешно.

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

Статическая вероятность зависит от конкретных попыток угадывания ключа – при многократном нажатии кнопки «Показать статистику» вероятность, соответственно, меняется, в зависимости от того, сколько раз был угадан ключ, в эти конкретные попытки.

Повторим попытку атаки при длине аутентификатора b = 7

Теоретический расчет вероятности необнаруженной подделки:

Попытка атаки при выборе случайного ключа:

Атака не удалась.

Попытка атаки при выборе ключа для атаки:

Атака прошла успешно.

Получим также статистическую вероятность необнаруженной подделки при моделировании всей системы:

Далее, выберем в программе режим Многократная передача. При длине аутентификатора b = 6 и при случайной генерации сообщений и произвольно выбранном ключе, найдем минимальное число передач, при котором злоумышленник выполнит подделку любого выбранного сообщения с вероятностью 1:

При числе передач равном 2 и b = 6, вероятность составляет 0,25:

При числе передач равном 3 и b = 6, вероятность составляет 1:

Проведем атаку:

Действительно, при числе передач равном 3, любой из множества ключей K = [Mi, ESi, M’, E’S] дает правильную верификацию.

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

Санкт-Петербург

2022

Соседние файлы в предмете Криптографические методы защиты информации