Передача аутентичного информационного сообщения по каналу связи

Автор работы: Пользователь скрыл имя, 06 Марта 2013 в 23:26, курсовая работа

Описание работы

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

Содержание работы

Введение…………………………………………………………………………………………….4

1. Передача информации с использованием криптографии с открытыми ключами...………..5
1.1. Основные требования к алгоритмам асимметричного шифрования……………………6
1.2. Криптоанализ алгоритмов с открытым ключом………………………………………….8
1.3. Основные способы использования алгоритмов с открытым ключом…………………..9
1.4. Схема идентификации FIAT-SHAMIR.……………………………………………….....11

2. Электронная цифровая подпись………………………………………………………………15
2.1. Общая схема цифровой подписи…………………………………………………………15
2.2. Алгоритм цифровой подписи ГОСТ……………………………………………………..16

3. Контроль целостности передаваемых сообщений ГОСТ……………………………..……17
3.1. Общая концепция алгоритма ………………………………………………………….…17
3.2. Режим выработки имитоприставки………………………………………………………21

4. Разработка протокола установления связи с абонентом…………………………………….23
4.1. Протокол установления связи с абонентом……………………………………………..23
4.2. Программная реализация протокола……………………………………………………..25

Заключение……...………………………………………………………………………….………31

Приложение………………………………………………………………………………………..32

Список использованной литературы………………………………………………………..……33

Файлы: 1 файл

Методы и средства защиты информации.doc

— 803.50 Кб (Скачать файл)

 

ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ

МИНИСТЕРСТВО  ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО  ОБРАЗОВАНИЯ

«ЧУВАШСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»

им. И. Н. УЛЬЯНОВА

 

 

Технический институт

 

Факультет  дизайна и компьютерных технологий

 

Кафедра компьютерных технологий

 

 

 

 

КУРСОВОЙ   ПРОЕКТ

 

Дисциплина: Методы и средства защиты информации

Тема: Передача аутентичного информационного сообщения по каналу связи

 

 

 

 

 

 

Выполнил студент 

                                                                                              

 

 Принял   доцент                    

 

___________2011 г.

 

 

 

 

 


 

Задание

 

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

•  Аутентификация с помощью алгоритма FEIGE-FIAT-SHAMIR;

•  Электронная цифровая подпись ГОСТ;

•  Контроль целостности передаваемых сообщений ГОСТ.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

СОДЕРЖАНИЕ

 

 

Введение…………………………………………………………………………………………….4

 

1.  Передача информации с использованием криптографии с открытыми ключами...………..5

     1.1. Основные требования к алгоритмам асимметричного шифрования……………………6

    1.2. Криптоанализ алгоритмов с открытым ключом………………………………………….8

     1.3. Основные способы использования алгоритмов с открытым ключом…………………..9

     1.4. Схема идентификации FIAT-SHAMIR.……………………………………………….....11

 

2. Электронная цифровая подпись………………………………………………………………15

     2.1. Общая схема цифровой подписи…………………………………………………………15

     2.2. Алгоритм цифровой подписи ГОСТ……………………………………………………..16

 

 3. Контроль целостности передаваемых сообщений ГОСТ……………………………..……17

     3.1. Общая концепция алгоритма ………………………………………………………….…17

     3.2. Режим выработки имитоприставки………………………………………………………21

 

4. Разработка протокола установления связи с абонентом…………………………………….23

    4.1. Протокол  установления связи с абонентом……………………………………………..23

    4.2. Программная реализация протокола……………………………………………………..25

 

Заключение……...………………………………………………………………………….………31

 

Приложение………………………………………………………………………………………..32

 

Список использованной литературы………………………………………………………..……33

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Введение

 

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

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

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

Протокол - это порядок действий, предпринимаемых двумя или более сторонами, предназначенный для решения определенной задачи. Это важное определение. "Порядок действий" означает, протокол выполняется в определенной последовательности, с начала до конца. Каждое действие должно выполняться в свою очередь и только после окончания предыдущего. "Предпринимаемых двумя или более сторонами" означает, что для реализации протокола требуется по крайней мере два человека, один человек не сможет реализовать протокол. Наконец, "предназначенный для решения определенной задачи" означает, что протокол должен приводить к какому-то результату. Что-то, похожее на протокол, но не решающее никакой задачи - это не протокол, это потеря времени. У протоколов есть также и другие характеристики:

—  Каждый участник протокола  должен знать протокол и последовательность составляющих его действий.

—  Каждый участник протокола  должен согласиться следовать протоколу.

—  Протокол должен быть непротиворечивым, каждое действие должно быть определено так, чтобы не было возможности непонимания.

—  Протокол должен быть полным, каждой возможной ситуации должно соответствовать определенное действие.

Криптографический протокол - это протокол, использующий криптографию. Стороны могут быть друзьями и слепо доверять друг другу или врагами и не верить друг другу даже при сообщении времени суток. Криптографический протокол включает некоторый криптографический алгоритм, но, вообще говоря, предназначение протокола выходит за рамки простой безопасности. Участники протокола могут захотеть поделиться секретом друг с другом, совместно генерировать случайную последовательность, подтвердить друг другу свою подлинность или подписать контракт в один и тот же момент времени. Смысл использования криптографии в протоколе - в предотвращении или обнаружении вредительства и мошенничества. Общее правило можно сформулировать следующим образом: «Невозможно сделать или узнать больше, чем определено в протоколе.»

 

 

 

 

 

 

 

 

 


1.  Передача информации с использованием криптографии с     открытыми ключами

 

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

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

Математической основой  процесса являются однонаправленные хэш-функции  с люком. Шифрование выполняется  в прямом направлении. Указания по шифрованию открыты, каждый может зашифровать сообщение. Дешифрирование выполняется в обратном направлении. Оно настолько трудоемко, что, не зная секрета, даже на компьютерах Cray за тысячи (и миллионы) лет невозможно расшифровать сообщение. Секретом, или люком, и служит закрытый ключ, он делает дешифрирование таким же простым, как и шифрование. Вот как, используя криптографию с открытыми ключами, Алиса может послать сообщение Бобу :

(1) Алиса и Боб согласовывают  криптосистему с открытыми ключами.

(2) Боб посылает Алисе свой открытый ключ.

(3) Алиса шифрует свое  сообщение и отправляет его  Бобу.

(4) Боб расшифровывает  сообщение Алисы с помощью  своего закрытого ключа.

Обратите внимание, что  криптография с открытыми ключами  устраняет проблему распределения  ключей, присущую симметричным криптосистемам. Раньше Алиса и Боб должны были тайно договориться о ключе. Алиса могла выбрать любой ключ, но ей нужно было передать его Бобу. Она могла сделать это заранее, но это требует от нее определенной предусмотрительности. Она могла бы послать ключ с секретным курьером, но для этого нужно время. Криптография с открытыми ключами все упрощает. Алиса может отправить Бобу секретное сообщение без каких-либо предварительных действий. У Евы, подслушивающей абсолютно все, есть открытый ключ Боба и сообщение, зашифрованное этим ключом, но она не сможет получить ни закрытый ключ Боба, ни текст сообщения.

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

(1) Алиса извлекает  открытый ключ Боба из базы  данных.

(2) Алиса шифрует свое  сообщение с помощью открытого  ключа Боба и посылает его  Бобу.

(3) Боб расшифровывает  сообщение Алисы с помощью своего закрытого ключа.

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

 

1.1. Основные требования к алгоритмам асимметричного шифрования

 

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

     Кроме того, некоторые алгоритмы, например RSA, имеют следующую характеристику: каждый из двух ключей может использоваться как для шифрования, так и для дешифрования.

Сначала рассмотрим алгоритмы, обладающие обеими характеристиками, а затем перейдем к алгоритмам открытого ключа, которые не обладают вторым свойством.

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

     Будем предполагать, что все участники имеют доступ к открытым ключам друг друга, а закрытые ключи создаются локально каждым участником и, следовательно, распределяться не должны.

     В любое время участник может изменить свой закрытый ключ и опубликовать составляющий пару открытый ключ, заменив им старый открытый ключ.

     Диффи и Хеллман описывают требования, которым должен удовлетворять алгоритм шифрования с открытым ключом.

1.  Вычислительно легко создавать пару (открытый ключ , закрытый ключ ).

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

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

4.  Вычислительно невозможно, зная открытый ключ , определить закрытый ключ .

5. Вычислительно невозможно, зная открытый ключ и зашифрованное сообщение , восстановить исходное сообщение .

Можно добавить шестое требование, хотя оно не выполняется для всех алгоритмов с открытым ключом:

6.  Шифрующие и дешифрующие функции могут применяться в любом порядке:

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

  - легко

  - трудно

Обычно "легко" означает, что проблема может быть решена за полиномиальное время от длины входа. Таким образом, если длина входа имеет битов, то время вычисления функции пропорционально , где - фиксированная константа. Таким образом, говорят, что алгоритм

Информация о работе Передача аутентичного информационного сообщения по каналу связи