Скачиваний:
34
Добавлен:
01.05.2014
Размер:
293.38 Кб
Скачать

Санкт-Петербургский

государственный электротехнический университет

ЛЭТИ”

______________________________________________________________________

кафедра МОЭВМ

МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ КОМПЬЮТЕРНОЙ ИНФОРМАЦИИ

Лабораторная работа N3 Алгоритмы асимметричного шифрования

Вариант 1

Выполнили: ст. гр. 3341 Постникова О. Е.

Злобин А.Н.

Проверил: Горячев Г.А.

Санкт-Петербург

2008

Лабораторная работа N3 Алгоритмы асимметричного шифрования

Цель работы:Ознакомление с алгоритмы асимметричного шифрования на основе алгоритмаRSA

1. Содержательная постановка задачи:

Разработать программу реализации алгоритма шифрования RSA.

2. Основные положения криптосистемы с открытым ключом

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

,

,

Затем печатается телефонная книга, доступная всем желающим, которая имеет вид:

- произведение двух простых чисел, известных толькоА,a- открытый ключ, доступный каждому, кто хочет передать секретное сообщениеА,- произведение двух простых чисел, известное толькоВ,b- открытый ключ, доступный каждому, кто хочет передать секретное сообщениеВ.

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

,,,

Пусть абонент Aрешает послать сообщениеmабонентуB, пусть, иначе сообщение разбивается на части длиной.

Сначала Aзашифровывает сообщение открытым ключом абонентаВ, который есть в телефонной книге, и находит:

,

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

,

и получает

В самом деле: ,, следовательно, и так как,, то

Надежность системы с открытым ключом

В рассмотренной криптосистеме с открытым ключом для перехвата сообщения mнеобходимо найти секретный ключ. Это возможно в двух случаях:

1) если известно разложение на простые множители

2) если известен модуль сравнения

Но так как , тои

Следовательно имеет два равенства:

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

В теории чисел эффективный алгоритм разложения натуральных чисел на множители не найден. Конечно, можно, перебирая все простые числа до , и деля на них, найти требуемое разложение. Но учитывая, что количество простых чисел в этом промежутке асимптотически равно, находим, что при, записываемом 100 десятичными цифрами, найдется не менеепростых чисел, на которые придется делитьпри разложении его на множители.

Соседние файлы в папке Лабораторная работа 31
  • #
    01.05.2014671 б22Application1$1.class
  • #
    01.05.20141.19 Кб23Application1.class
  • #
    01.05.20141.89 Кб24Application1.java
  • #
    01.05.201459 б22Compile.bat
  • #
    01.05.2014293.38 Кб34Lab3.doc
  • #
    01.05.20146.65 Кб23MainFrame.class
  • #
    01.05.20149.02 Кб23MainFrame.java
  • #
    01.05.2014455 б22MainFrame_decryptButton_mouseAdapter.class
  • #
    01.05.2014455 б22MainFrame_encryptButton_mouseAdapter.class
  • #
    01.05.2014491 б22MainFrame_regenerateKeys_actionAdapter.class