Методические указания к выполнению работы
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

В лабораторной работе используется метод посимвольного шифрования открытого буквенно-цифрового текста произвольной длины. Этот текст представляется в коде 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)

 

Искусственно (программно) сдвигая область этих кодов в сторону малых значений (до зашифрования) и восстанавливая истинное значение после расшифрования, а также при выводе на экран шифрованных значений, можно использовать более широкий диапазон значений для n. В этом случае n может принимать любое значение от 225 до 256, причем n – это произведение двух простых чисел.

Однако, такое решение приводит к некоторой потере информативности. Каждый раз, когда символы шифрованного текста принимают значения в диапазоне от 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 с битами псевдослучайной последовательности. К достоинствам поточных шифров относятся высокая скорость шифрования, относительная простота реализации и отсутствие размножения ошибок. Недостатком является необходимость передачи информации синхронизации перед заголовком сообщения, которая должна быть принята до расшифрования любого сообщения. Это обусловлено тем, что если два различных сообщения шифруются на одном и том же ключе, то для расшифрования этих сообщений требуется одна и та же псевдослучайная последовательность. Такое положение может создать угрозу криптостойкости системы. Поэтому часто используют дополнительный, случайно выбираемый ключ сообщения, который передается в начале сообщения и применяется для модификации ключа шифрования. В результате разные сообщения будут шифроваться с помощью различных последовательностей.

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

При блочном шифровании открытый текст сначала разбивается на равные по длине блоки, затем применяется зависящая от ключа функция шифрования для преобразования блока открытого текста длиной m бит в блок шифртекста такой же длины. Достоинством блочного шифрования является то, что каждый бит блока шифртекста зависит от значений всех битов соответствующего блока открытого текста, и никакие два блока открытого текста не могут быть представлены одним и тем же блоком шифртекста. Алгоритм блочного шифрования может использоваться в различных режимах. Четыре режима шифрования алгоритма DES фактически применимы к любому блочному шифру: режим прямого шифрования или шифрования с использованием электронной книги кодов ЕСВ (Electronic code Book), шифрование со сцеплением блоков шифртекста СВС (Cipher block chaining), шифрование с обратной связью по шифртексту CFB (Cipher feedback) и шифрование с обратной связью по выходу OFB (Output feedback).

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

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

Криптосистема с открытым ключом также является системой блочного шифрования и должна оперировать блоками довольно большой длины. Это обусловлено тем, что криптоаналитик знает открытый ключ шифрования и мог бы заранее вычислить и составить таблицу соответствия блоков открытого текста и шифртекста. Если длина блоков мала, например 30 бит, то число возможных блоков не слишком большое (при длине 30 бит это 230 = ~109), и может быть составлена полная таблица, позволяющая моментально расшифровать любое сообщение с использованием известного открытого ключа. Асимметричные криптосистемы с открытым ключом подробно разбираются в следующей главе.

Наиболее часто блочные шифры применяются в системах шифрования с обратной связью. Системы шифрования с обратной связью встречаются в различных практических вариантах. Как и при блочном шифровании, сообщения разбивают на ряд блоков, состоящих из 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.