Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы по курсу криптографии.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
42.46 Кб
Скачать

Билет №13

До сих пор мы рассматривали симметричные системы шифрования: в них шифрование и расшифрование происходило с помощью одного и того же секретного ключа 𝑘.

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

Шифрсистема RSA:

Система RSA(Rivest, Shamir, Adleman) была предложена в 1978г. и в настоящее время является наиболее широко распространённой системой шифрования с открытым ключом.

Пусть 𝑛 = 𝑝 · 𝑞, 𝑛, 𝑝, 𝑞 ∈ Z — целое число, представимое в виде произведения двух простых чисел 𝑝, 𝑞.

Отображение 𝜙: N → N, сопоставляющее каждому числу 𝑚 ∈ N число 𝜙(𝑚), равное количеству натуральных чисел 𝑎 6 𝑚, взаимнопростых с 𝑚, называется функцией Эйлера.

Утверждение: Если число 𝑛 ∈ N представимо в виде произведения простых множителей 𝑛 = 𝑝1 · . . . · 𝑝𝑛, то 𝜙(𝑛) = (𝑝1 − 1) · . . . · (𝑝𝑛 − 1)

Выберем два числа 𝑒, 𝑑 из условия𝑒 · 𝑑 = 1 (mod 𝜙(𝑛)).

Причём из утверждения следует, что 𝜙(𝑛) = (𝑝 − 1) · (𝑞 − 1).

Открытым ключом положим пару 𝑘𝑒 = (𝑛, 𝑒). Секретным ключом будет 𝑘𝑑 = (𝑛, 𝑝, 𝑞, 𝑑).

Тогда правила зашифрования и расшифрования определяются формулами:

𝑌 = 𝐸𝑘𝑒(𝑋) = 𝑋𝑒 (mod 𝑛)

𝑋 = 𝐷𝑘𝑑(𝑌 ) = 𝑌 𝑑 (mod 𝑛)

Отметим, что в данном случае в качестве 𝑋 и 𝑌 обычно выступают блоки открытого и шифрованного текстов.

Билет №14

Основной проблемой при криптоанализе является разложение числа 𝑛 на множители. Если это сделано, то можно без труда восстановить экспоненту расшифрования 𝑑

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

Как уже было отмечено, стойкость шифрсистемы RSA обусловлена сложностью проблемы факторизации больших чисел. Если модуль системы 𝑛 удалось разложить на множители, то дальнейший криптоанализ представляет собой чисто вычислительный процесс.

Отображение 𝜙: N → N, сопоставляющее каждому числу 𝑚 ∈ N число 𝜙(𝑚), равное количеству натуральных чисел 𝑎 6 𝑚,взаимнопростых с 𝑚, называется функцией Эйлера.

Пусть было получено, что 𝑛 = 𝑝 · 𝑞. Тогда алгоритм дальнейшего криптоанализа содержит в себе следующие шаги:

(1) нахождение значения 𝜙(𝑛) = (𝑝 − 1) · (𝑞 − 1);

(2) нахождения по расширенному алгоритму Евклида экспоненты расшифрования 𝑑;

(3) вычисление значений открытого текста.

Алгоритм Евклида.

Алгоритм Евклида для целых чисел 𝑎, 𝑏 приусловии 𝑏 ̸= 0 заключается в следующем. Сначала делим с остатком 𝑎 на 𝑏:

𝑎 = 𝑏𝑞1 + 𝑟1, 0 6 𝑟1 < |𝑏|.

Если 𝑟1 = 0, то алгоритм окончен.

В этом случае 𝑏 делит 𝑎 и, очевидно,𝑏 = НОД(𝑎, 𝑏).

Если же 𝑟1 ̸= 0, то делим с остатком 𝑏 на 𝑟1:

𝑏 = 𝑟1𝑞2 + 𝑟2, 0 6 𝑟2 < 𝑟1.

Если 𝑟2 = 0, то алгоритм окончен, в противном случае делим с остатком 𝑟1 на 𝑟2 и т.д. до тех пор, пока не получим остаток, равный нулю.

Такой момент обязательно наступит, поскольку получающиеся остатки являются

целыми неотрицательными числами и образуют строго убывающую цепочку

𝑟1 > 𝑟2 > . . .

В итоге имеем следующую последовательность:

𝑎 = 𝑏𝑞1 + 𝑟1, 0 < 𝑟1 < |𝑏|,

𝑏 = 𝑟1𝑞2 + 𝑟2, 0 < 𝑟2 < |𝑟1|,

𝑟1 = 𝑟2𝑞3 + 𝑟3, 0 < 3 < |r2|,

𝑟𝑛−2 = 𝑟𝑛−1𝑞𝑛 + 𝑟𝑛, 0 < 𝑟𝑛 < |𝑟𝑛−1|,

𝑟𝑛−1 = 𝑟𝑛𝑞𝑛+1

Прослеживая эту систему равенств снизу вверх, нетрудно заметить,

что 𝑟𝑛 делит числа 𝑟𝑛−1, 𝑟𝑛−2, . . . , 𝑟1, 𝑏, 𝑎. Следовательно, 𝑟𝑛 = НОД(𝑎, 𝑏).

Теорема.

Если для 𝑟1, . . . , 𝑟𝑛, 𝑞1, . . . , 𝑞𝑛 — последовательности остатков и неполных частных в алгоритме Евклида для чисел 𝑎, 𝑏, то выполняется:

𝑟𝑘 = 𝑎𝑢𝑘 + 𝑏𝑣𝑘, 𝑘 ∈ 1, 𝑛, где

𝑢𝑘 = 𝑢𝑘−2 − 𝑢𝑘−1𝑞𝑘, 𝑣𝑘 = 𝑣𝑘−2 − 𝑣𝑘−1𝑞𝑘,

𝑢0 = 0, 𝑢1 = 1, 𝑣0 = 1, 𝑣1 = −𝑞1.

На теореме основан расширенный алгоритм Евклида, который служит для нахождения для целых чисел 𝑎, 𝑏 ∈ Z таких целых чисел 𝑢, 𝑣 ∈ Z:

𝑎 · 𝑢 + 𝑏 · 𝑣 = НОД(𝑎, 𝑏)