В лабораторной работе используется метод посимвольного шифрования открытого буквенно-цифрового текста произвольной длины. Этот текст представляется в коде ASCII, который преобразуется в зашифрованный текст также в коде ASCII той же длины.
В кодовой таблице международного стандарта для кодирования текстовой информации ASCII (American Standard Code for Information Interchange) зарезервировано 128 7-ми разрядных кодов для кодирования символов латинского алфавита, цифр, знаков препинания. Для кодирования символов национальных алфавитов используются расширения кодовой таблицы ASCII в виде 8-ми разрядных кодов от 128 до 255. Отсутствие согласованных стандартов привело к появлению различных кодовых таблиц для кодирования русскоязычных текстов:
- альтернативная кодовая таблица СР-866;
- международный стандарт ISO 8859;
- кодовая таблица фирмы Microsoft CP-1251 (кодировка Windows);
- кодовая таблица, применяемая в ОС Unix KOI 8.
В табл.3-1 представлены кодировки по стандарту CP-1251 (Windows). Реализованная в настоящей работе программа использует эту таблицу.
Реализованная для данной работы программа, учитывает тот факт, что клавиши типовой русифицированной клавиатуры не используют начальную часть кода ASCII (от 0 до 31). За счет этого общее количество используемых кодов расширенной таблицы ASCII снижается с 256 до 224.
|
Таблица 3.1 – Кодовая таблица Windows (СР-1251)
|
Однако, такое решение приводит к некоторой потере информативности. Каждый раз, когда символы шифрованного текста принимают значения в диапазоне от 0 до 31-го, (они не предусмотрены в кодовых таблицах для клавиатуры и дисплея) в окне шифртекста появляются “жирные” вертикальные линии.
8. Лабораторное задание
1.Лабораторная работа выполняется в двух рабочих окнах. Сначала в окне, совмещенном с главным меню, определяются численные значения параметров криптосистемы RSA: модуля n, тайного d и открытогоe ключей. Полученные значения нужно записать или запомнить и перейти в окно RSA – ASCII.
2.В этом окне представлены три строки для исходного, зашифрованного и расшифрованного текстов и две кнопки «Расшифровать» и «Зашифровать».
3.В соответствии с номером варианта выберите из табл.3.2 /4/ текст и зашифруйте его для двух различных наборов n, dи e при n= 225 ÷255. Рекомендуемые параметры:
а) n=253, d=13;e=17, p=23, q=11
б) n=247,d=19, e=91, p=19, q=13.
4.Расшифруйте текст и сравните его с исходным.
5.Запишите строки открытого и шифрованного текстов, располагая буквы шифрованного текста под соответствующими буквами открытого текста.
|
Таблица 3.2-Открытые тексты для шифрования
Вариант | Открытый текст | ||
Бородатый человек много рассказывал про этот ключик, но я все забыла. Помню только, что нужно отворить им какую-то дверь и это принесет счастье… | |||
Пьеро вскочил, размахивая руками. Веди меня к ней… Если ты мне поможешь отыскать Мальвину, я тебе открою тайну золотого ключика… | |||
-Как! – закричал Буратино радостно.- Ты знаешь тайну золотого ключика? -Знаю, где ключик лежит, как его достать, знаю, что им нужно открыть одну дверцу… | |||
Черепаха позеленела от злости и сказала мне: -На дне пруда лежит волшебный ключик…Я знаю одного человека, - он готов сделать все на свете, чтобы получить этот ключик… | |||
-Ключик на дне озера…Мы никогда не увидим счастья…-А это ты видел?- крикнул ему в ухо Буратино. И, вытащив из кармана ключик, повертел имперед носом Пьеро.-Вот он! | |||
Буратино сказал: - Я все-таки хочу,во что бы то ни стало, узнать у Карабаса Барабаса, где эта дверца, которую открывает золотой ключик. За дверцей хранится что-нибудь замечательное, удивительное…И оно должно принести нам счастье. | |||
| |||
-Эта дверца и этот золотой ключик,- проговорил Карло, - сделаны очень давно каким-то искусным мастером. Посмотрим, что спрятано за дверцей. |
Общие сведения
Блочные и поточные шифры
Проектирование алгоритмов шифрования данных основано на рациональном выборе функций, преобразующих исходные (незашифрованные) сообщения в шифртекст. Идея непосредственного применения такой функции ко всему сообщению реализуется очень редко. Практически все применяемые криптографические методы связаны с разбиением сообщения на большое число фрагментов (или знаков) фиксированного размера, каждый из которых шифруется отдельно. Такой подход существенно упрощает задачу шифрования, так как сообщения обычно имеют различную длину.
Различают три основных способа шифрования: поточные шифры, блочные шифры и блочные шифры с обратной связью. Для классификации методов шифрования данных следует выбрать некоторое количество характерных признаков, которые можно применить для установления различий между этими методами. Будем полагать, что каждая часть или каждый знак сообщения шифруется отдельно в заданном порядке.
Можно выделить следующие характерные признаки методов шифрования данных.
·
|
· Зависимость или независимость функции шифрования от результатов шифрования предыдущих частей сообщения.
· Зависимость или независимость шифрования отдельных знаков от их положения в тексте. В некоторых методах знаки шифруются с использованием одной и той же функции независимо от их положения в сообщении, а в других методах, например при поточном шифровании, различные знаки сообщения шифруются с учетом их положения в сообщении. Это свойство называют позиционной зависимостью или независимостью шифра.
· Симметрия или асимметрия функции шифрования. Эта важная характеристика определяет существенное различие между обычными симметричными (одноключевыми) криптосистемами и асимметричными (двухключевыми) криптосистемами с открытым ключом. Основное различие между ними состоит в том, что в асимметричной криптосистеме знания ключа шифрования (или расшифрования) недостаточно для раскрытия соответствующего ключа расшифрования (или шифрования).
В табл.3.3 приведены типы криптосистем и их основные характеристики.
Таблица 3.3- Основные характеристики криптосистем
Тип крипто- системы | Операции с битами или блоками | Зависимость от предыдущих знаков | Пози-ционная зависи-мость | Наличие симметрии функции шифрования | ||
шифрования | Биты | Не зависит | Зависит | Симметричная | ||
Блочного шифрования | Блоки | Не зависит | Не зависит | Симметричная или несимметрич-ная | ||
С обратной связью по шифртексту | Биты или блоки | Зависит | Не зависит | Симметричная |
Поточное шифрование состоит в том, что биты открытого текста складываются по модулю 2 с битами псевдослучайной последовательности. К достоинствам поточных шифров относятся высокая скорость шифрования, относительная простота реализации и отсутствие размножения ошибок. Недостатком является необходимость передачи информации синхронизации перед заголовком сообщения, которая должна быть принята до расшифрования любого сообщения. Это обусловлено тем, что если два различных сообщения шифруются на одном и том же ключе, то для расшифрования этих сообщений требуется одна и та же псевдослучайная последовательность. Такое положение может создать угрозу криптостойкости системы. Поэтому часто используют дополнительный, случайно выбираемый ключ сообщения, который передается в начале сообщения и применяется для модификации ключа шифрования. В результате разные сообщения будут шифроваться с помощью различных последовательностей.
|
При блочном шифровании открытый текст сначала разбивается на равные по длине блоки, затем применяется зависящая от ключа функция шифрования для преобразования блока открытого текста длиной m бит в блок шифртекста такой же длины. Достоинством блочного шифрования является то, что каждый бит блока шифртекста зависит от значений всех битов соответствующего блока открытого текста, и никакие два блока открытого текста не могут быть представлены одним и тем же блоком шифртекста. Алгоритм блочного шифрования может использоваться в различных режимах. Четыре режима шифрования алгоритма DES фактически применимы к любому блочному шифру: режим прямого шифрования или шифрования с использованием электронной книги кодов ЕСВ (Electronic code Book), шифрование со сцеплением блоков шифртекста СВС (Cipher block chaining), шифрование с обратной связью по шифртексту CFB (Cipher feedback) и шифрование с обратной связью по выходу OFB (Output feedback).
|
Из-за отмеченных недостатков блочные шифры редко применяются в указанном режиме для шифрования длинных сообщений. Однако в финансовых учреждениях, где сообщения часто состоят из одного или двух блоков, блочные шифры широко используют в режиме прямого шифрования. Такое применение обычно связано с возможностью частой смены ключа шифрования, поэтому вероятность шифрования двух идентичных блоков открытого текста на одном и том же ключе очень мала.
|
Наиболее часто блочные шифры применяются в системах шифрования с обратной связью. Системы шифрования с обратной связью встречаются в различных практических вариантах. Как и при блочном шифровании, сообщения разбивают на ряд блоков, состоящих из m бит. Для преобразования этих блоков в блоки шифртекста, которые также состоят из m бит, используются специальные функции шифрования. Однако если в блочном шифре такая функция зависит только от ключа, то в блочных шифрах с обратной связью она зависит как от ключа, так и от одного или более предшествующих блоков шифртекста.
Практически важным шифром с обратной связью является шифр со сцеплением блоков шифртекста СВС. В этом случае m бит предыдущего шифртекста суммируются по модулю 2 со следующими m битами открытого текста, а затем применяется алгоритм блочного шифрования под управлением ключа для получения следующего блока шифртекста. Еще один вариант шифра с обратной связью получается из стандартного режима CFB алгоритма DES, т.е. режима с обратной связью по шифртексту.
|
На практике для шифрования длинных сообщений применяют поточные шифры или шифры с обратной связью. Выбор конкретного типа шифра зависит от назначения системы и предъявляемых к ней требований.
Лабораторная работа №4
ИЗУЧЕНИЕ АЛГОРИТМА ДИФФИ-ХЕЛЛМАНА ОТКРЫТОГО РАСПРЕДЕЛЕНИЯ КЛЮЧЕЙ
Цель работы
Изучить основные принципы и процедурные аспекты алгоритма Диффи-Хеллмана открытого распределения ключей.
Рекомендуемые источники
1.Романец Ю.В., Тимофеев П.А., Шаньгин В.Ф. Защита информации в компьютерных системах и сетях /Под ред. В.Ф. Шаньгина.- 2-е изд.. перераб. и доп..-М.: Радио и связь, 2001, с. 182-199.
2.Соколов А.В., Шаньгин В.Ф. Защита информации в распределенных корпоративных сетях и системах.- М.: ДМК Пресс, 2002, с. 269-286.
3.Б.Шнайер. Прикладная криптография.-М.: Триумф, 2002, с. 573-576.
Подготовка к работе
1.Ознакомиться с алгоритмом открытого распределения ключей по одному из рекомендованных источников/1-3/.
2.Ознакомиться с содержанием данной методической разработки.
3.Подготовить бланк отчета, который должен содержать:
- цель работы;
- основные математические соотношения для обоснования алгоритма.
- заготовку таблицы, в которую будет заноситься ключевая информация в процессе изучения алгоритма.
|
4. Контрольные вопросы
1.Сущность процедуры управления криптографическими ключами.
2.Назначение и особенности генерации ключей.
3.Назначение и особенности хранения ключей.
4.Концепция иерархии ключей.
5.Назначение и особенности распределения ключей.
6.Централизованное распределение ключей.
7.Протокол аутентификации и распределения ключей для симметричных криптосистем.
8.Протокол для асимметричных криптосистем с использованием сертификатов открытых ключей.
9.Алгоритм открытого распределения ключей Диффи-Хеллмана.
10. Схема реализации алгоритма Диффи-Хеллмана.
11. Приведите математическое доказательство возможности формирования у абонентов двух одинаковых ключей без передачи секретной информации.
Содержание работы
1.Ознакомиться с постановкой задачи управления криптографическими ключами.
2.Ознакомиться с математическими соотношениями, лежащими в основе алгоритма Диффи-Хеллмана.
3.Изучить основные этапы алгоритма.
4.Произвести установку открытых и закрытых ключей двух абонентов.
5.Наблюдать поведение алгоритма при изменении соответствующих параметров.
Содержание отчета
1.
|
2.Структурная схема алгоритма распределения ключей Диффи-Хеллмана.
3.Основные математические соотношения, предписываемые алгоритмом Диффи-Хеллмана.
4.Привести значения предварительно устанавливаемых параметров и значения, устанавливаемые и возникающие в процессе каждого сеанса.
Дата: 2016-10-02, просмотров: 355.