Тематический план

  • Методические материалы


  • Вопросы для контрольных опросов

    Раздел 1. Протоколы обмена ключами (5 баллов)

    1.     Понятие протокола. Назначение протоколов. Участники. Протоколы с посредником. Протоколы с арбитром.

    2.     Классификация протоколов.

    3.     Криптографические примитивы, используемые в протоколах.

    4.     Обмен ключами средствами симметричной криптографии.

    5.     Обмен ключами средствами криптографии с открытым ключом.

    6.     Свойства безопасности протоколов.

    7.     Основные атаки на протоколы.

    8.     Алгоритм Диффи-Хэлмана.

    9.     Трехпроходный протокол Шамира.

    10.  Реализация протокола EKE с помощью RSA.

    11.  Реализация протокола EKE с помощью Эль-Гамаля.

    12.  Реализация протокола EKE  с помощью Диффи-Хэллмана.

    13.  Использование цифровых подписей при обмене ключами.

    14.  Одновременная передача ключей и сообщений.

    15.  Широковещательная рассылка ключей и сообщений.

    16.  Генерация ключа в зашумленной среде.

    17.  Кодовое зашумление. Алгоритмы кодирования и декодирования.

    18.  Протоколы предварительной передачи ключевого материала.

     

    Раздел 2. Протоколы идентификации/аутентификации (5 баллов)

    1.     Отличия слабой и сильной аутентификации.

    2.     Аутентификация с помощью однонаправленных функций.

    3.     Атака по словарю и привязка.

    4.     Аутентификация средствами криптографии с открытым ключом.

    5.     Протоколы SKID.

    6.     Подтверждение подлинности сообщений.

    7.     Протокол Wide-Mouth Frog.

    8.     Протокол Yahalom.

    9.     Протокол Нидхема-Шредера.

    10.  Протокол Отвея-Рииса.

    11.  Протокол Kerberos.

    12.  Протокол Ньюмана-Стабблбайна.

    13.  Протокол DASS.

    14.  Протокол Деннинга-Сакко.

    15.  Протокол Ву-Лама.

    16.  Схемы идентификации Фейге-Фиата-Шамира.

    17.  Упрощенная схема идентификации Фейге-Фиата-Шамира.

    18.  Схема идентификации Охта-Окамото.

    19.  Схема Гиллу-Кискате.

    20.  Схема Шнорра.

    21.  Схема вручения обязательства. Свойства связности и скрытности

    22.  Схема вручения нечеткого обязательства Джуелса-Воттенберга. Биометрическая аутентификация.

     

    Раздел 3. Протоколы многосторонних вычислений (5 баллов)

    1.     Пороговые, совершенные, идеальные схемы разделения секрета

    2.     Разделение секрета без помощи Трента.

    3.     Разделение секрета без раскрытия долей.

    4.     Проверяемые схемы разделения секрета.

    5.     Визуальная криптография.

    6.     Схемы разделения секрета на основе помехоустойчивых кодов (минимальные коды).

    7.     Тайное голосование.

    8.     Протокол установления соответствия.

    9.     Схема протокола вычисления арифметических выражений

    10.  Схема забывчивой передачи.

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

     

    2. Критерии оценки

     

    Студент случайно выбирает 2 вопроса по теме, в рамках которой проводится устный контрольный опрос. Правильный ответ оценивается в 2 балла. Правильный ответ на дополнительный вопрос по теме выбранных вопросов оценивается в один балл.


  • Методические материалы для подготовки к опросам

  • Темы докладов для индивидуальных заданий

    Раздел 1. Протоколы обмена ключами (5 баллов)

    1.     Атаки на протоколы обмена ключами.

    2.     Парадокс дней рождений.

    3.     Конструкции криптографических хэш-функций.

    4.     Атаки на хэш-функции.

    5.     Схема NMAC/HMAC.

    6.     Обоснование стойкости HMAC.

    7.     Схема получения ключа HKDF (extract-and-expand).

    8.     Выработка ключей в протоколах блокчейн.

                                                                           i.      

    Раздел 2. Протоколы идентификации/аутентификации (5 баллов)

    1.     Атаки на протоколы аутентификации.

    2.     Атаки на протокол Нидхема-Шредера.

    3.     Атаки на протокол Отвея-Рииса.

    4.     Аутентификация участников и данных в протоколах блокчейн.

    5.     Протокол SSL.

     

    Раздел 3. Протоколы многосторонних вычислений (5 баллов)

    1.     Протоколы поиска данных в зашифрованных данных, SSE (Searchable Symmetric Encryption).

    2.     Поиск в зашифрованных данных по ключевым словам, PEKS (Public Key Encryption with Keyword Search).

     

    2. Критерии оценки

    Доклад оценивается по пятибалльной шкале:

    5 баллов – студент приводит примеры, отвечает на вопросы по теме

    4 балла – студент отвечает на вопросы по теме, но затрудняется привести пример

    3 балла – студент затрудняется привести примеры, не уверенно отвечает на вопросы

    2 балла – студент затрудняется привести примеры, не может ответить на дополнительные вопросы

    1 балл – студент не разобрался в теме вопроса, студент затрудняется привести примеры, не уверенно отвечает на вопросы

    0 – отсутствие доклада.


  • Ресурсы по темам докладов

  • Лабораторные работы

    Лабораторная работа №1 (раздел 1, 10 баллов)

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

    Перечень хэш-функций: Blake2b, Blake2s, DSTU7564, GOST3411, GOST3411_2012, GOST3411_2012_256, GOST3411_2012_512, Keccak, MD2, MD4, MD5, RipeMD128, RipeMD160, RipeMD256, RipeMD320, Sha1, Sha224, Sha256, Sha384, SHA3, Sha512, Sha512t, Shake, Skein, SM3, Tiger, Whirlpool.

    Перечень симметричных криптографических алгоритмов: AES, Blowfish, 3DES, GOST28147, IDEA, ISAAK, RC4, RC6, Salsa20, DSTU7624, ChaCha

    Перечень асимметричных криптографических алгоритмов: RSA, Эль-Гамаль, Мак-Элис.

     

    Лабораторная работа №2 (раздел 2, 10 баллов)

    Реализация протокола Штерна. Матрица H размера (не менее 100 строк и 200 столбцов) каждым студентом выбирается самостоятельно (случайно), односторонняя функция выбирается из числа хэш-функций из первой лабораторной работы, секрет должен формироваться на основе Фамилии, Имени и Отчества студента по следующему правилу: s=h(Фамилия||Имя||Отчество), где h – криптографическая хэш-функция из первой лабораторной работы.

     

    Лабораторная работа №3 (раздел 3, 10 баллов)

    Реализация протокола многостороннего вычисления арифметических выражений для четырех участников. Арифметическое выражение для каждого студента задается индивидуально. Примеры арифметических выражений:

            i.     x1+x3-x2*x4

          ii.     x1*x2-x4

        iii.     x1*x2+x3*x4

  • Методические указания к лабораторным работам

    Для реализации криптографических примитивов из первой и второй лабораторных работ рекомендуется использовать свободно-распространяемый пакет криптографических алгоритмов BouncyCastle (https://www.bouncycastle.org/csharp/index.html) для языка программирования C#.

    При реализации протокола многостороннего вычисления арифметических выражений в третьей лабораторной работе рекомендуется использовать свободно-распространяемую библиотеку арифметического процессора NTL (https://www.shoup.net/ntl/download.html).

     

    Критерии оценки

    Каждая выполненная лабораторная работа оценивается по десятибалльной шкале.