Вычислить m’=c d mod n.
Убедиться, что m’=m.
· Тестирование реального примера
Взять открытый текст, например,
m=1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890.
Разбить текст m на блоки длины, допускающей зашифрование полученной криптосистемой и произвести поблочное зашифрование.
Затем произвести поблочное расшифрование.
Убедиться, что m’= m.
· Описать, как вычислить разложение n=pq и секретный ключ d, при известном j(n).
Допустим, что криптоаналитик завладел значением phi функции Эйлера от n. Описать, как вычислить разложение n=pq и секретный ключ d.
· Указания.
Из системы уравнений
n=p*q.
j(n) = (p-1)*(q-1).
можно получить квадратное уравнение для p:
p2 + (j(n) - n - 1)*p +n =0, или p2 + t*p + n = 0, где t = j(n) - n - 1.
Откуда находим p и q как квадратные корни p,q = .
Секретный ключ d вычисляется как d = e-1 mod j(n).
3.2. Криптосистема Рабина.
3.2.1. Описание системы.
Генерация ключей:
Абонент A:
· Генерирует два простых числа p и q примерно одинакового размера.
· Вычисляет n=pq.
· Открытым ключом объявляет число n, в качестве секретного ключа хранит пару чисел (p,q).
Шифрование:
Абонент B:
· Получает копию открытого ключа n абонента А.
· Представляет сообщение как число m из интервала [0, n-1] (в необходимых случаях разбивает его на блоки, являющиеся числами в этом интервале).
· Вычисляет c=m2 mod n.
· Посылает шифртекст c абоненту А.
Расшифрование:
Абонент A:
· Используя секретный ключ (p,q) вычисляет четыре квадратных корня m1, m2, m3, m4 из числа c по модулю n.
· Используя избыточность, распознает, какой корень mi представляет сообщение m.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.