
Санкт-Петербургский
государственный электротехнический университет
“ЛЭТИ”
______________________________________________________________________
кафедра МОЭВМ
МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ КОМПЬЮТЕРНОЙ ИНФОРМАЦИИ
Лабораторная работа N3 Алгоритмы асимметричного шифрования
Вариант 1
Выполнили: ст. гр. 3341 Постникова О. Е.
Злобин А.Н.
Проверил: Горячев Г.А.
Санкт-Петербург
2008
Лабораторная работа N3 Алгоритмы асимметричного шифрования
Цель работы:Ознакомление с алгоритмы асимметричного шифрования на основе алгоритмаRSA
1. Содержательная постановка задачи:
Разработать программу реализации алгоритма шифрования RSA.
2. Основные положения криптосистемы с открытым ключом
Пусть абоненты АиВусловились организовать секретную переписку между собой с открытым ключом. Тогда каждый из них, независимо от другого, выбирает два достаточно больших простых числа, находит их произведение, функцию Эйлера от этого произведения и выбирает случайное число, меньшее этого вычисленного значения функции Эйлера и взаимно простое с ним. Итак,
,
,
Затем печатается телефонная книга, доступная всем желающим, которая имеет вид:
- произведение двух простых чисел,
известных толькоА,a- открытый ключ, доступный каждому, кто
хочет передать секретное сообщениеА,
- произведение двух простых чисел,
известное толькоВ,b- открытый ключ, доступный каждому, кто
хочет передать секретное сообщениеВ.
Каждый из абонентов находит свой секретный ключ из сравнений
,
,
,
Пусть абонент Aрешает послать сообщениеmабонентуB, пусть,
иначе сообщение разбивается на части
длиной
.
Сначала Aзашифровывает сообщение открытым ключом абонентаВ, который есть в телефонной книге, и находит:
,
и отправляет абоненту В. АбонентВрасшифровывает это сообщение секретным ключом:
,
и получает
В самом деле:
,
,
следовательно
,
и так как
,
,
то
Надежность системы с открытым ключом
В рассмотренной криптосистеме с открытым
ключом для перехвата сообщения mнеобходимо найти секретный ключ.
Это возможно в двух случаях:
1) если известно разложение
на простые множители
2) если известен модуль
сравнения
Но так как
,
то
и
Следовательно имеет два равенства:
а значит, зная
,
можно решить эту систему и найти
и
,
а зная
и
,
легко вычислить
.
Таким образом, оба подхода определения
ключа
эквиваленты, т.е. задачи одной сложности.
В теории чисел эффективный алгоритм
разложения натуральных чисел на множители
не найден. Конечно, можно, перебирая все
простые числа до
,
и деля на них
,
найти требуемое разложение. Но учитывая,
что количество простых чисел в этом
промежутке асимптотически равно
,
находим, что при
,
записываемом 100 десятичными цифрами,
найдется не менее
простых чисел, на которые придется
делить
при разложении его на множители.