Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Критосистема RSA

Для шифрования выбирают целое число N = p q, где p и q два больших простых числа. Сообщение M представляется одним из чисел

 

M Î {1, 2, ¼, N –1}.

 

Формулы, описывающие шифрование/дешифрование, имеют следующий вид:

 

, ,

 

где K – открытый ключ шифрования, k – секретый ключ дешифрования.

Покажем, что возведение в степень

 

Ek =(MK) k = MKk mod N,

 

выполняемое при дешифровании, действительно восстанавливает сообщение M.

В RSA пара ключей формируется по правилу

 

kK = 1 mod j(N), (*)

что эквивалентно

kK = 1 + l j(N),

 

где l – целое число, а j(N) – функция Эйлера, которая определяет число целых чисел меньших N и взаимно простых с ним.

По теореме Эйлера, если M и N – взаимно простые числа,

 

M j (N) = 1 mod N.

Отсюда

M kK = M 1+ l j (N) = M (M j (N)) l = M ×1 l = M mod N, (**)

 

т.е. происходит дешифрование сообщения.

В то же время можно доказать, что специальный выбор модуля N в виде произведения N = pq двух простых чисел p и q обеспечивает выполнение равенства (**), т.е. дешифрование, вообще при любых M, не обязательно взаимно простых с N. Отметим также, что степень M K не должна быть меньше N. При невыполнении данного условия криптограмма принимает вид

 

,

 

и легко вскрывается без вычислений по модулю, т.к. открытый ключ K известен.

Рассмотренные соотношения указывают путь формирования ключей. Вначале выбирают очень большие случайные простые числа p и q, отличающиеся друг от друга на несколько десятичных разрядов, так чтобы произведение N = pq имело длину не менее 768 бит (по данным 2001 года). Вычисляют функцию Эйлера

j(N) = (p – 1)(q – 1).

Из равенства (*)

K k = 1 mod j(N),

 

откуда следует, что оба ключа взаимно обратные числа по модулю j(N).

Открытый ключ K выбирают среди чисел меньших и взаимно простых с j(N). Закрытый ключ k вычисляют

k = K 1 mod j(N)

 

с помощью алгоритма Евклида, что не является сложной задачей. Завершив подготовительные операции, открытый ключ K и модуль N помещают в открытый справочник, приняв меры, гарантирующие невозможность подмены. Числа k, p и q хранят в секрете.

Таким образом, оба ключа RSA задаются парами целых чисел: (K, N) и (k, N), причем числа K и k равноправны, т.е. ключи можно поменять местами, и использовать k как открытый ключ шифрования, а K как закрытый ключ дешифрования

Когда авторы R. Rivest, A. Shamir, L. Adleman (Ривест, Шамир, Адлеман) в 1977 году предложили криптосистему RSA, они зашифровали фразу “Its all Greek to me”, представленную в цифровой форме M. Были опубликованы значения E, K, N с указанием, что 129 десятичных разрядов N получены при умножении 64- и 65-разрядных чисел p и q. Факторизация N и вскрытие криптограммы были выполнены примерно за 220 дней лишь в 1994 году после предварительной теоретической подготовки. В работе принимало участие 600 добровольцев и 1600 компьютеров, объединенных в сеть с помощью Интернет.

 


Дата добавления: 2015-10-26; просмотров: 70 | Нарушение авторских прав


Читайте в этой же книге: Блоковые и потоковые шифры | Маскираторы аналоговых сообщений | Симметричные блоковые шифры | Многократное шифрование блоков | Модифицированные алгоритмы блоковых шифров | Государственный стандарт шифрования Российской Федерации | Аддитивные потоковые шифры | Применение линейных рекуррентных регистров для потокового шифрования | Особенности асимметричных криптосистем | Вычисление наибольшего общего делителя |
<== предыдущая страница | следующая страница ==>
Основы построения асимметричных систем| Цифровая подпись в системах шифрования с открытым ключом

mybiblioteka.su - 2015-2024 год. (0.008 сек.)