91626

Алгоритм RSA

Доклад

Информатика, кибернетика и программирование

Они воспользовались тем фактом, что нахождение больших простых чисел в вычислительном отношении осуществляется легко, но разложение на множители произведения двух таких чисел практически невыполнимо. Доказано (теорема Рабина), что раскрытие шифра RSA эквивалентно такому разложению.

Русский

2015-07-21

43.06 KB

0 чел.

Алгоритм RSA

Несмотря на довольно большое число различных СОК, наиболее популярна - криптосистема RSA, разработанная в 1977 году и получившая название в честь ее создателей: Рона Ривеста, Ади Шамира и Леонарда Эйдельмана.

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

Возможность гарантированно оценить защищенность алгоритма RSA стала одной из причин популярности этой СОК на фоне десятков других схем. Поэтому алгоритм RSA используется в банковских компьютерных сетях, особенно для работы с удаленными клиентами (обслуживание кредитных карточек).

В настоящее время алгоритм RSA используется во многих стандартах, среди которых SSL, S-HHTР, S-MIME, S/WAN, STT и РCT.

Рассмотрим математические результаты, положенные в основу этого алгоритма.

Теорема 1. (Малая теорема Ферма.)

Если р - простое число, то

xр-1 = 1 (mod р) (1)

для любого х, простого относительно р, и

xр = х (mod р) (2)

для любого х.

Доказательство. Достаточно доказать справедливость уравнений (1) и (2) для хZр. Проведем доказательство методом индукции.

Очевидно, что уравнение (8.2.2) выполняется при х=0 и 1. Далее

xр=(x-1+1)р= C(р,j)(x-1)j=(x-1)р+1 (mod р),

0jр

так как C(р,j)=0(mod р) при 0<j<р. С учетом этого неравенства и предложений метода доказательства по индукции теорема доказана.

Определение. Функцией Эйлера (n) называется число положительных целых, меньших n и простых относительно n.

n

2

3

4

5

6

7

8

9

10

11

12

(n)

1

2

2

3

2

6

4

6

4

10

4

Теорема 2. Если n=рq, (р и q - отличные друг от друга простые числа), то

(n)=(р-1)(q-1).

Теорема 3. Если n=рq, (р и q - отличные друг от друга простые числа) и х - простое относительно р и q, то

x(n) = 1 (mod n).

Следствие . Если n=рq, (р и q - отличные друг от друга простые числа) и е простое относительно (n), то отображение

Еe,n: xxe (mod n)

является взаимно однозначным на Zn.

Очевиден и тот факт, что если е - простое относительно (n), то существует целое d, такое, что

ed = 1 (mod (n)) (3)

На этих математических фактах и основан популярный алгоритм RSA.

Пусть n=рq, где р и q - различные простые числа. Если e и d удовлетворяют уравнению (8.2.3), то отображения Еe,n и Еd,n являются инверсиями на Zn. Как Еe,n, так и Еd,n легко рассчитываются, когда известны e, d, р, q. Если известны e и n, но р и q неизвестны, то Еe,n представляет собой одностороннюю функцию; нахождение Еd,n по заданному n равносильно разложению n. Если р и q - достаточно большие простые, то разложение n практически не осуществимо. Это и заложено в основу системы шифрования RSA.

Пользователь i выбирает пару различных простых рi и qi и рассчитывает пару целых (ei, di), которые являются простыми относительно (ni), где ni=рi qi . Справочная таблица содержит публичные ключи {(ei ,ni)}.

Предположим, что исходный текст

x =(x0, x1, ..., xn-1), xZn , 0 i < n,

сначала представлен по основанию ni :

N = c0+ci ni+....

Пользователь i зашифровывает текст при передаче его пользователю j, применяя к n отображение Edi,ni :

N Edi,ni n = n'.

Пользователь j производит дешифрование n', применяя Eei,ni :

N' Eei,ni n'= Eei,ni Edi,ni n = n .

Очевидно, для того чтобы найти инверсию Edi,ni по отношению к Eei,ni, требуется знание множителей n=рi qi. Время выполнения наилучших из известных алгоритмов разложения при n=10100 на сегодняшний день выходит за пределы современных технологических возможностей.

Рассмотрим небольшой пример, иллюстрирующий применение алгоритма RSA.

Пример Зашифруем сообщение "САВ". Для простоты будем использовать маленькие числа (на практике применяются гораздо большие).

  1. Выберем р=3 и q=11.
  2. Определим n=3*11=33.
  3. Найдем (р-1)(q-1)=20. Следовательно, в качестве d, взаимно простое с 20, например, d=3.
  4. Выберем число е. В качестве такого числа может быть взято любое число, для которого удовлетворяется соотношение (е*3) (mod 20) = 1, например 7.
  5. Представим шифруемое сообщение как последовательность целых чисел с помощью отображения: А1, В2, С3. Тогда сообщение принимает вид (3,1,2). Зашифруем сообщение с помощью ключа {7,33}.

ШТ1 = (37) (mod 33) = 2187 (mod 33) = 9,

ШТ2 = (17) (mod 33) = 1 (mod 33) = 1,

ШТ3 = (27) (mod 33) = 128 (mod 33) = 29.

  1. Расшифруем полученное зашифрованное сообщение (9,1,29) на основе закрытого ключа {3,33}:

ИТ1 = (93) (mod 33) = 729 (mod 33) = 3,

ИТ2= (13) (mod 33) = 1 (mod 33) = 1,

ИТ3 = (293) (mod 33) = 24389 (mod 33) = 2.

Итак, в реальных системах алгоритм RSA реализуется следующим образом: каждый пользователь выбирает два больших простых числа, и в соответствии с описанным выше алгоритмом выбирает два простых числа e и d. Как результат умножения первых двух чисел (р и q) устанавливается n.

{e,n} образует открытый ключ, а {d,n} - закрытый (хотя можно взять и наоборот).

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


 

А также другие работы, которые могут Вас заинтересовать

30144. ТЕОРИЯ УЧЕТА ОПЕРАЦИЙ ПО РАСЧЕТНОМУ СЧЕТУ 138.08 KB
  Директор общества распоряжается средствами общества на основе законодательства Российской Федерации и в порядке установленном контрактом трудовым договором. Чтобы выжить в условиях рыночной экономики и не допустить банкротства предприятия нужно хорошо знать как управлять финансами какой должна быть структура капитала по составу и источникам образования какую должны занимать собственные средства а какую заемные. Сведения которые находятся в пассиве баланса позволяют определить – какие изменения произошли в структуре собственного...
30145. Развитие выносливости у детей старшего дошкольного возраста посредством подвижных игр 65.08 KB
  Теоретические основы развития выносливости у детей старшего дошкольного возраста по средствам подвижных игр. Проблема развития выносливости в исследованиях педагогов и психологов. Виды выносливости. Факторы влияющие на проявление выносливости.
30147. Введение изучается значение станций технического обслуживания необходимость их планирования приводится. 2.31 MB
  Она будет представлена деревьями и кустарниками как лиственных пород так и хвойных пород. Еще в течение года специалисты ООО РесурсАудит выезжают на АЗС чтобы удостовериться что работа станции соответствует нормативам. Эти устройства могут принести немалую пользу автомобилистам.час; численность рабочих – 84 чел; число постов – 70 ; количество автомобиле мест ожидания и хранения – 51; площадь территории – 1929 м2; Генеральный план СТО и технологическая планировка участка представлены в графической части на листах формата А1...
30148. АУ «ТЕХНОПАРК – МОРДОВИЯ»: КОНЦЕПЦИЯ, ИНТЕГРАЦИЯ ИДЕЙ И РАЗРАБОТОК, ИХ КОММЕРЦИАЛИЗАЦИЯ. АНАЛИЗ ИННОВАЦИОННОЙ ДЕЯТЕЛЬНОСТИ 204.23 KB
  Приоритетные цели реализации проекта развития ТехнопаркаМордовия: развитие инфраструктуры в интересах реализации инновационного потенциала Республики Мордовия создание условий для работы и ускоренного взаимодействия высокотехнологичных компаний научных организаций высших учебных заведений инвесторов заказчиков. ускорение коммерциализации рыночно ориентированных проектов активное продвижение продуктов компаний технопарка помощь в поиске партнеров и в выходе на рынок стимулирование...
30149. Анализ предприятия ДОАО “Механизированная колонна-№88” 704.8 KB
  Предприятие включает в себя автомобильную колонну 88 автомобилей и 27 прицепа ремонтномеханические мастерские зону ТО и ТР автозаправочный пункт вспомогательные службы и органы управления. Состояние дорог в городской и пригородной зоне Архангельска неудовлетворительное что негативно сказывается на состояние автомобилей .1 представлен генеральный план ДОАО €œМеханизированная колонна№88€ 1 контора 2 – зона ТО и Р 3 – мойка 4 – стоянка автомобилей 5 – ремонтные мастерские 6 – теплый бокс 7 – эстакада 8 – ОТК 9 –...
30150. Расчёт количества ТО и текущих ремонтов для парка машин и тракторов 64.19 KB
  Установив число ремонтов и ТО по каждой группе машин одной марки рассчитываем их годовую трудоёмкость по формуле: чел.16 где Тто суммарная трудоёмкость ТО и устранение неисправностей чел. Ттр...
30151. Описание технологического процесса приготовления салата фирменного «Пикантный», стейка из свинины 227.67 KB
  Правильно организованный, подготовленный и проведённый на научной основе технологический процесс приготовления блюд и кулинарных изделий позволит полностью исключить присутствие в готовых блюдах вредных веществ и соединений, сохранить в них полезные для человека вещества.
30152. Направления повышения финансовой устойчивости и платежеспособности ОАО Дека 222.19 KB
  1 Теоретические и методологические основы анализа финансовой устойчивости и платежеспособности предприятия 1.1 Понятие и сущность финансовой устойчивости предприятия.3 Методологические основы анализа финансовой устойчивости и платежеспособности 2 Анализ финансовой устойчивости и платежеспособности предприятия на примере ОАО Дека . При этом увеличение значимости финансов и выдвижение роли финансовых аспектов деятельности предприятия на первый план в современном обществе – это...