Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MISZKI_Lektsii.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.88 Mб
Скачать

Иностранные патенты на алгоритм рюкзака Меркла-Хеллмана

Страна

Номер

Дата получения

Бельгия

871039

5 апреля 1979 года

Нидерланды

7810063

10 апреля 1979 года

Великобритания

2006580

2 мая 1979 года

Германия

2843583

10 мая 1979 года

Швеция

7810478

14 мая 1979 года

Франция

2405532

8 июня 1979 года

Германия

2843583

3 января 1982 года

Германия

2857905

15 июля 1982 года

Канада

1128159

20 июля 1982 года

Великобритания

2.006580

18 августа 1982 года

Швейцария

63416114

14 января 1983 года

Италия

1099780

28 сентября 1985 года

    1. RSA

Вскоре после алгоритма рюкзака Меркла появился первый полноценный алгоритм с открытым ключом, ко­торый можно использовать для шифрования и цифровых подписей: RSA [1328, 1329]. Из всех предложенных за эти годы алгоритмов с открытыми ключами RSA проще всего понять и реализовать. (Мартин Гарднер (Martin Gardner) опубликовал раннее описание алгоритма в своей колонке "Математические игры" в Scientific American [599].) Он также является самым популярным. Названный в честь трех изобретателей - Рона Ривеста (Ron Rivest), Ади Шамира (Adi Shamir) и Леонарда Эдлмана (Leonard Adleman) - этот алгоритм многие годы проти­востоит интенсивному криптоанализу. Хотя криптоанализ ни доказал, ни опроверг безопасность RSA, он, по сути, обосновывает уровень доверия к алгоритму.

Безопасность RSA основана на трудности разложения на множители больших чисел. Открытый и закрытый ключи являются функциями двух больших (100 - 200 разрядов или даже больше) простых чисел. Предполагает­ся, что восстановление открытого текста по шифротексту и открытому ключу эквивалентно разложению на множители двух больших чисел.

Для генерации двух ключей используются два больших случайных простых числа, р и д. Для максимальной безопасности выбирайте р и q равной длины. Рассчитывается произведение:

n=pq

Затем случайным образом выбирается ключ шифрования е, такой что е и (p-1)(q-1) являются взаимно про­стыми числами. Наконец расширенный алгоритм Эвклида используется для вычисления ключа дешифриров а-ния d, такого что

ed=l(mod(p-1)(q-1))

Другими словами

d=e-lmod((p-1)(q-1))

Заметим, что d и п также взаимно простые числа. Числа е и п - это открытый ключ, а число d - закрытый. Два простых числа p и q больше не нужны. Они должны быть отброшены, но не должны быть раскрыты.

Для шифрования сообщения т оно сначала разбивается на цифровые блоки, меньшие п (для двоичных дан­ных выбирается самая большая степень числа 2, меньшая и). То есть, если p и q - 100-разрядные простые числа, то п будет содержать около 200 разрядов, и каждый блок сообщения w, должен быть около 200 разрядов в длину. (Если нужно зашифровать фиксированное число блоков, их можно дополнить несколькими нулями cлева, чтобы гарантировать, что блоки всегда будут меньше п. Зашифрованное сообщение с будет состоять из бло­ков с, той же самой длины. Формула шифрования выглядит так

с, = mie mod n

Для расшифровки сообщения возьмите каждый зашифрованный блок сi и вычислите

mi = сid mod n

Так как

сid = (mie )d = mied = тiK(p-1)(q-1)+1 = mi m i K(p-1)(q-1)= т,*1 = тi; все (mod п)

формула восстанавливает сообщение. Это сведено в 17-й.

Табл. 19-2.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]