Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задание на контрольную работу ИБиЗИ.doc
Скачиваний:
1
Добавлен:
25.09.2019
Размер:
974.85 Кб
Скачать

Методика шифрования с помощью открытого ключа. Разъяснения алгоритма шифрования rsa

В 1976 году американцы Уитфилд Диффи и Мартин Хеллман (Diffi W., Hellman М.) – два инженера-электрика из Станфордского университета, а также Рольф Меркль, бывшие в то время студенты Калифорнийского университета, совершили замечательный прорыв в построении криптосистем. Их работа частично финансировалась Национальным научным фондом, и ее результаты были опубликованы Диффи и Хеллманом в статье «Новые направления в криптографии». В этой статье был предложен новый принцип и строения криптосистем, не требующий не только передачи ключа, принимающему сообщение, но даже сохранения в тайне метода шифрования. Эти шифры позволяют легко зашифровывать и дешифровать текст и их можно использовать многократно.

Описание криптосистемы с открытым ключом, на примере алгоритма, используемого в системе rsa

Пусть абоненты А и В решили наладить между собой секретную переписку с открытым ключом. Тогда каждый из них, независимо от другого, выбирает два больших простых числа и , находит их произведение , которое для заданного алфавита должно удовлетворять условию (M – количество используемых знаков алфавита), функцию Эйлера от этого произведения и выбирает случайное число меньшее этого вычисленного значения функции Эйлера и взаимно простое с ним. Взаимно простыми числами называются такие числа, у которых общий делитель равен «1», математическая запись, означающая, что числах а и b взаимно простые записывается: , пример взаимно простых чисел: , .

Таким образом:

;

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

З атем печатается телефонная книга, доступная всем желающим, которая имеет вид (табл. 2). В данной книге – произведение двух простых чисел, известных только корреспонденту А, а - открытый ключ, доступный каждому, кто хочет передать секретное сообщение абоненту А, - произведение двух простых чисел, известных только абоненту В, b - открытый ключ, доступный каждому, кто хочет передать сообщение абоненту B.

Каждый из абонентов находит свой секретный ключ из сравнений:

и ,

при этом значения этих ключей и должны удовлетворять условиям:

и .

Сравнение: означает, что произведение чисел должно делиться на по с остатком, равным «1». Например: , , путем перебора произведений при различных значениях и т.д. находим, что при отношение делится с остатком равным «1»: . Таких чисел может быть бесконечное множество и их можно вычислить, пользуясь выражением , для тех значений , при которых данное отношение делится без остатка по . В приятой математической символике это можно записать: .

Таким образом формируется полный комплект открытых и закрытых ключей для корреспондентов А и В (табл. 3):

Таблица 3

Абонент

Открытый ключ

Закрытый ключ

А

В

Процесс шифрования и расшифровывания передаваемых сообщений

Пусть абонент B решает послать сообщение m абоненту A:

при этом для передачи сообщения требуется, чтобы .

Абонент B шифрует сообщение т открытым ключом абонента А, который есть в телефонной книге, и находит

, .

Абонент А расшифровывает это сообщение своим секретным ключом:

, и получает .

Доказательство:

и так как , следовательно, . Но так как и , то .

Пример. Пусть и простые числа выбранные абонентом A (пример простых чисел показан в табл. П.4, приложения); и простые числа абонента В; и – произведения этих чисел соответственно, , , выберем значения открытого ключа из условий: , : а = 7 и , : b = 9 – случайные числа для абонентов А и В соответственно, и наконец, пусть телефонная книга, доступная всем желающим, имеет вид:

  1. А: 161, 7.

  2. В: 187, 9.

В этой книге первое число – произведение двух простых, известных только одному абоненту, второе число – открытый ключ, доступный каждому, кто хочет передать секретное сообщение этому абоненту. Каждый из абонентов находит свой секретный ключ из сравнений:

, ;

, .

Таким образом, они находят собственные секретные ключи и соответственно. Пусть теперь абонент B решает послать секретное сообщение: «МИР» абоненту А. По таблице соответствия букв русского алфавита (см. табл. П.1, приложения) преобразуем сообщение в цифровой код: .

Стоит задача передать это сообщение абоненту А, .

Тогда абонент B шифрует это сообщение (числа соответствующих букв) открытым ключом абонента A :

; ; .

Таким образом, . Получив зашифрованное сообщение абонент А расшифровывает это сообщение своим секретным ключом – : ; ; , следовательно, , после чего по таблице соответствия букв русского алфавита (см. табл. П.2) получим переданный открытый текст: «МИР».

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

Рассмотрим пример: . Пусть , и . Возведем , далее разделим полученное число на 60: , следовательно, . Применение такого метода вычисления возможно при малых значениях и . В случае больших чисел, даже двухзначных, обычное возведение в степень затруднено в силу ограниченности вычислительных возможностей калькуляторов или персональных компьютеров. В этих ситуациях следует производить вычисление поэтапно как показано ниже, например: можно вычислить: ; ; , , откуда окончательно получим .