- •Инфа взята из книги, так что не факт, что это то, что надо (можете поискать ответы в лекциях).
- •1. Квадратичный вычет (невычет). Символ Лежандра.
- •2. Китайская теорема об остатках (кто).
- •3. Генерирование простых чисел. Тест Ферма.
- •4. Тест квадратного корня. Тест Миллера-Рабина.
- •5. Метод конструирования простых чисел (теорема Демитко).
- •9. Криптосистема Эль-Гамаля. Атаки. Условия стойкости.
- •10. Криптосистема rsa. Атаки при малом открытом ключе и малом числе сообщений.
- •11. Rsa. Атака Винера. Мультипликативное свойство.
- •12. Rsa. Общий модуль. Циклическая атака.
- •13. Rsa. Анализ времени выполнения. Атака внешним воздействием.
- •14. Криптосистема Рабина. Доказуемая стойкость.
- •15. Квантовые вычисления. Факторизация через нахождение периода.
- •16. Алгоритм Шора. Основные этапы факторизации.
- •17. Алгоритм Шора. Постквантовая обработка. Цепные дроби.
- •18. Алгоритм Шора для дискретного логарифма.
- •19. Криптосистема Мак-Элиса. Генерация ключей, шифрование, дешифрование.
- •21. Гомоморфное шифрование. Виды.
- •22. Гомоморфизм системы Эль-Гамаля.
- •23. Гомоморфная кс Пэйе. Генерация ключей, шифрование, дешифрование.
- •25. Протокол разделения секрета Шамира (n,m).
- •26. Проверяемое разделение секрета. Схема Фельдмана.
- •27. Доказательство с нулевым разглашением (zkp).
- •28. Zkp для закрытого ключа Эль-Гамаля.
- •29. Протокол: поручительство информации (обязательство/commitment).
- •30. Протоколы скрытного поиска точек интереса (pir/psi).
- •31. Электронное голосование. Mix-сети.
- •32. Электронное голосование. Слепая подпись.
- •33. Электронное голосование. Гомоморфное шифрование.
- •34. Распределение симметричных ключей. Жизненный цикл.
- •35. Ключевые структуры. Базовый набор.
- •36. Распределение ключей с использованием црк.
- •37. Распределение ключей без црк. Диффи-Хеллман.
- •38. Распределение открытых ключей. Аутентификация.
- •39. Инфраструктура открытых ключей (pki).
- •40. Сертификат открытого ключа X.509. Жизненный цикл.
- •41. Протокол ike в ipSec.
- •42. Требования к безопасности в протоколе sigma.
- •43. Криптографическая защита в tls 1.3. Протокол квитирования.
- •44. Формирование ключей в tls 1.3. Perfect Forward Secrecy.
- •45. Задача: Система электронного голосования на основе Пэйе.
- •5 Избирателей голосуют:
- •55. Задача: Тест Ферма. Проверить простоту числа a.
- •57. Задача: Решить систему уравнений по кто.
- •59. Задача: Схема разделения секрета Шамира (4,m). Восстановление по долям 1 и 4.
- •61. Задача: Эллиптическая кривая e(a,b) над gf(17). Операции с точками.
- •62. Задача: Демонстрация протокола скрытного поиска точки интереса (лр 8).
28. Zkp для закрытого ключа Эль-Гамаля.
Вопрос: Интерактивный протокол доказательства знания закрытого ключа в КС Эль-Гамаля.
Источник: Яковлев, Коржик. Гл. 5, §5.5.
Публичные параметры: p, g, y=g^x mod p. P знает x (закрытый ключ).
Протокол (протокол Шнорра):
1) P выбирает случайное r∈[1,p-2], вычисляет и отправляет R=g^r mod p.
2) V выбирает случайный вызов c∈[1,p-2], отправляет c.
3) P вычисляет z = r + c·x mod (p-1), отправляет z.
4) V проверяет: g^z ≡ R·y^c (mod p).
Проверка: g^z = g^{r+cx} = g^r · g^{cx} = R · (g^x)^c = R · y^c. ✓
Нулевое разглашение:
Если c и r независимы — z случайна и не раскрывает x. Симулятор: выбрать z,c случайно, вычислить R=g^z·y^{-c} — неотличимо от реального протокола.
29. Протокол: поручительство информации (обязательство/commitment).
Вопрос: Протокол поручительства информации (commitment scheme).
Источник: Яковлев, Коржик. Гл. 5, §5.6.
Цель: A берёт «обязательство» на значение m, не раскрывая его. Позже A раскрывает m, и B проверяет, что m не изменилось.
Два свойства:
1. Скрытность (Hiding): B не узнаёт m до раскрытия.
2. Привязка (Binding): A не может изменить m после публикации обязательства.
Схема на основе хэш-функции:
1) A выбирает случайный r, вычисляет c = H(m || r), отправляет c.
2) Позже A раскрывает (m, r). B проверяет H(m||r)=c.
Схема Педерсена (информационно-теоретически скрытная):
c = g^m · h^r mod p, где h=g^a (a неизвестно). Скрытность: информационно-теоретическая. Привязка: основана на DLP.
Применения: аукционы (ставки скрыты), монетные флипы, ZKP-протоколы, e-голосование.
30. Протоколы скрытного поиска точек интереса (pir/psi).
Вопрос: Протоколы скрытного поиска точек интереса. Постановка, этапы, гомоморфизм.
Источник: Яковлев, Коржик. Гл. 5, §5.7.
Постановка задачи (Private Information Retrieval, PIR):
Клиент хочет получить элемент базы данных с индексом i, не раскрывая i серверу. Сервер не узнаёт, какой элемент запросил клиент.
Основные этапы протокола на основе гомоморфного шифрования:
1) Клиент шифрует запрос: вектор e-вопросов = (E(0), E(0), …, E(1), …, E(0)) — единица стоит на i-й позиции.
2) Сервер вычисляет: ответ = Σⱼ dⱼ · E(eⱼ) = E(Σⱼ dⱼ·eⱼ) = E(dᵢ) — используя аддитивный гомоморфизм.
3) Клиент дешифрует ответ и получает dᵢ.
Сервер видит только зашифрованный запрос, клиент — только результат.
Пример (ЛР 8): база данных объектов [lat, lon]. Клиент ищет ближайший к нему. Запрос шифруется вектором координат. Сервер вычисляет гомоморфно расстояния и возвращает зашифрованный результат.
31. Электронное голосование. Mix-сети.
Вопрос: Требования к системе электронного голосования. Система на основе MIX-сетей.
Источник: Яковлев, Коржик. Гл. 5, §5.8.
Требования к системе e-голосования:
1. Тайна голоса: никто не знает, как проголосовал конкретный избиратель.
2. Однократность: каждый голосует один раз.
3. Верифицируемость: каждый избиратель может проверить, что его голос учтён.
4. Открытость подсчёта: результат может проверить любой.
5. Робастность: выход из строя части компонентов не срывает голосование.
Система на основе MIX-сетей:
1) Каждый избиратель шифрует голос v открытым ключом каждого MIX-узла (луковая шифрация): E₁(E₂(…(Eₖ(v))…)).
2) MIX-узел 1 получает список шифртекстов, дешифрует свой слой, перемешивает (permutation) и передаёт MIX-узлу 2.
3) Последний MIX-узел раскрывает голоса (в уже перемешанном порядке).
4) Результат — список голосов без привязки к избирателю.
Доказательства перестановки (shuffle proofs) — каждый MIX-узел доказывает корректность своей работы через ZKP.
