
- •Тема 39н_работа№_Щукавицкий
- •2.2. Первая система с открытым ключом — система Диффи—Хеллмана
- •Изучение криптографии на уроках информатики
- •Аффинные криптосистемы.
- •Система Хилла.
- •Криптографическая система с открытым ключом.
- •Электронная подпись.
- •Задания для дешифровки текстов, зашифрованных методами перестановки
Криптографическая система с открытым ключом.
Рассматриваемый метод шифрования разработали в 1976 г. американцы Уит-филд Диффи и Мартин Хеллман.
Опишем пример использования такой системы.
Пусть абонент А (например, банкир) и абонент В (например, вкладчик) решили установить между собой секретную передачу шифрованной информации с открытым ключом.
Независимо друг от друга они создают ключи так, как это показано в таблице. (Для наглядности выбраны небольшие числа р и q. На практике же эти числа являются 100-разрядными десятичными числами.)
Операцию получения остатка от целочисленного деления легко выполнить с помощью стандартного калькулятора, входящего в состав операционной системы MS Windows.
Функция.Эйлера
— арифметическая функция
значение
которой равно количеству положительных
чисел, не превосходящих г и взаимно
простых с г.
Предположим, что абонент А решил послать сообщение абоненту В. Вначале методом замены каждый символ сообщения заменяется (шифруется) числом. Допустим, что требуется переслать первую букву сообщения, которая зашифрована методом замены числом 2.
Абонент А шифрует число 2 открытым (опубликованным) ключом абонента В. Для шифрования число 2 возводится в степень s - 31:
Затем находят остаток от деления числа т на величину г = 253, в результате которого получается число 167:
Напомним, что числа s и г являются открытым ключом абонента В.
В линию передается число 167, которое является шифром исходного числа 2.
Получив
шифрограмму, абонент В использует свой
секретный ключ t
=
71. Для дешифрации он возводит полученное
число 167 в степень 71 и находит остаток
от деления полученного результата
на
число 253. Математически это записывается
так:
В данном случае остаток от деления равен 2, значит, шифрование и дешифрирование произошли правильно. Было передано число 2, и это же число было принято после всех преобразований. -
Мы рассмотрели порядок передачи одного символа. Понятно, что таким образом последовательно передается целое сообщение, но преобразование каждого символа происходит по рассмотренной схеме. Заметим, что для использования этого метода необходимо сообщение предварительно преобразовать в набор чисел, например, с помощью кодовой таблицы.
Абонент В посылает свое сообщение аналогично.
Электронная подпись.
Достоинством шифрования с открытым ключом является исключение необходимости передачи секретного ключа по закрытым каналам связи, например с помощью курьера.
Однако у этого метода есть существенный недостаток. Используя опубликованный ключ, сообщение может прислать любой абонент, выдавая себя за другого абонента.
В подобных случаях требуется аутентификация — подтверждение авторства присланного документа. Для этих целей разработан способ шифрования, который называется электронной подписью.
Суть этого метода шифрования заключается в том, что сообщение шифруется не только опубликованным открытым ключом, но и собственным секретным ключом абонента, отправляющего сообщение.
Рассмотрим пример.
Предположим,
что абонент В
(вкладчик)
решил послать сообщение, представляющее
собой число 41, абоненту А
(банкиру).
Вначале вкладчик шифрует сообщение
открытым ключом банкира:
В результате шифрования получается число 6.
Дальше вкладчик повторно шифрует это сообщение своим секретным ключом 71:
Шифрограмма
94 отправляется банкиру. Банкир, получив
секретное сообщение,
использует
вначале открытый ключ вкладчика! Затем
банкир исщользует свой
секретный
ключ:
В результате абонент А (банкир) получает сообщение, состоящее из числа 41.
При использовании электронной подписи никто другой не сможет прислать банкиру сообщение (например, поручение перевести деньги) от имени абонента В, так как на передаче нужно обязательно использовать секретный ключ вкладчика, который известен только абоненту В.
Цифровая подпись используется не только для заверейия текстовых или финансовых документов. Эта же информационная технология применяется для указания авторства разработанной программы. Активные элементы ActiveX, оживляющие web-страницы, заверяются цифровой подписью. Этим повышается безопасность использования новых программных продуктов (уменьшается вероятность несанкционированной установки «троянских коней»).
Заключение
Разработка криптографических методов передачи информации _ одно из бурно развивающихся направлений информатики, Зимой 2003 г. в России был принят закон о цифровой подписи, что должно ускорить дальнейшее распространение безопасных способов передачи информации. Безусловно, в настбящее время важно познакомить с этими методами учащихся школ, колледжей, лицеев и студентов высших учебных заведений.
Преподаватель может составить серию практических заданий на дешифрование сообщений, зашифрованных приведенными в статье методами. Такие задания можно использовать на аудиторных занятиях, выдавать в качестве домашних заданий. Эти задания с целью изучения алгоритмов шифрования целесообразно выполнять вручную.
Рассмотренные в статье алгоритмы шифрования могут быть использованы не только при изучении основ криптографии. Сами по себе они являются удобным материалом при изучении основ программирования.
Разработка программ шифрования и дешифрования с помощью одного из рассмотренных методов вызывает живой интерес у обучаемых. Очевидно, что для составления программ можно использовать практически любой алгоритмический язык программирования, высокого уровня. Проверить работоспособность таких программ достаточно легко. Текст шифруется, с помощью трудной программы» а дешифрируется с помощью другой. В результате работы этих двух программ открытый текст, поступивший на вход программы шифрования, должен появиться без искажений на выходе программы дешифрования.
При изучении системы шифрования с открытым ключом учащихся (студентов) можно разделить на две группы (команды), каждая из которых должна будет разработать собственные открытый и закрытый ключи. Затем нужно произвести обмен открытыми ключами и засекреченными сообщениями. Введение в занятие соревновательного элемента между двумя группами учащихся делает занятие нестандартным, эмоциональным.
Литература
1. Алексеев А. П. Информатика 2002. : СОЛОН-Р, 2001.
2. Нечаев В. Г. Элементы криптографии. (Основы теории защиты информации): Учеб. пособие для ун-тов и пед. вузов/Под, ред. В. А. Садовничего. Щ.: Высшая школа, 1999.
3. Онегов В. А. Элементы теории шифрования//Информатика и образование. 2001. № 9.
4. Саломаа А. Криптография с открытым ключом/Пер, с англ. И. А. Вихлянцева; под ред. А. Е. Андреева и А. А. Болотова. М.: Мир, 1995.
Вопросы к главе 3
1. Что такое криптология?
2. Что такое ключ?
3. Определите понятие «криптологический алгоритм».
4. Какие функции выполняет криптологический протокол?
5. Что собой представляет криптосистема?
6. Дайте определение стойкости криптосистемы.
7. Какие основные типы криптосистем вы знаете?
8. Дайте общее определение цифровой подписи.
9. Объясните суть преобразований — перестановка и замена.
10. Приведите пример табличной перестановки с использованием ключевого слова.
11. Что собой представляет система шифрования с использованием таблицы Вижинера?
12. Что такое система шифрования Вернама? Укажите ее особенности.
13. Что такое симметричная криптографическая система?
14. Что такое блочная симметричная криптографическая система?
15. Объясните, что такое композиционный блочный шифр и итерационный блочный шифр.
16. Объясните суть алгоритма DES и укажите его особенности.
17. В каких режимах может работать алгоритм DES?
18. Дайте описание отечественного алгоритма криптографического преобразования данных (ГОСТ 28147—90) и его отличительных особенностей.
19. Какие режимы имеет отечественный алгоритм криптографического преобразования данных (ГОСТ 28147—90)?
20. Чем отличаются поточные симметричные криптографические системы?
21. Какими характеристиками оценивается стойкость криптографических систем?
22. Что подразумевается под понятием «вычислительная сложность алгоритма»?
23. Для каких целей применяются случайные последовательности и простые числа в криптографии?
24. Чем характеризуются односторонние функции с секретом?
25. Чем отличается криптографическая система с открытым ключом?
26. В чем заключается суть электронной цифровой подписи?
27. Как проверяется целостность сообщения?