Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
информатика.docx
Скачиваний:
152
Добавлен:
20.02.2016
Размер:
54.52 Кб
Скачать

Пример оформления отчета по лабораторной работе

ЛАБОРАТОРНАЯ РАБОТА №

НАЗВАНИЕ ЛАБОРАТОРНОЙ РАБОТЫ

ВЫПОЛНИЛИ: ст. гр. ….. ФИО

ВАРИАНТ № …

ЦЕЛЬ ЛАБОРАТОРНОЙ РАБОТЫ

P=…

V=…

T=…

S*= (привести вычисления) = ….

В качестве алфавита символов, используемых при генерации пароля, были использованы следующие наборы _______________. Мощность данного набора A=_____.

При минимальном значении L=… выполняется условие S*S=AL.

Примеры паролей, сгенерированных программой Simple Passwords:

1) …

2) …

3) …

5) …

Лабораторная работа № 2. Методы криптографической защиты информации. Простейшие алгоритмы шифрования

Цель работы – изучение простейших традиционных алгоритмов криптографической защиты информации и особенностей их практической реализации.

Теоретический материал

Криптография

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

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

Рис. 1. Функциональная схема симметричной криптосистемы

Отправитель генерирует открытый текст исходного сообщения М, которое должно быть передано законному получателю по незащищенному каналу. За каналом следит перехватчик с целью перехватить и раскрыть передаваемое сообщение. Для того, чтобы перехватчик не смог узнать содержание сообщения М, отправитель шифрует его с помощью обратимого преобразования Ek и получаетшифротекст С=Ek(M), который отправляет получателю.

Законный получатель приняв шифротекст С, расшифровывает его с помощью обратного преобразования Dk= и получает исходное сообщение в виде открытого текста М.

Преобразование Ek называется криптоалгоритмом.

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

Наряду с вычислительной простотой и интуитивной понятностью симметричных криптосистем, они обладают рядом серьезных недостатков. К основным недостаткам симметричных криптосистем относят проблему распространения симметричных ключей и проблему их хранения [13].

При использовании симметричных криптосистем для шифрования информации между пользователями криптографической сети необходимо обеспечить безопасную передачу ключей шифрования между всеми доверенными пользователями (участниками криптографического обмена). При этом передача ключа шифрования обязательно должна осуществляться по закрытому каналу, так как перехват злоумышленником данного ключа ведет к компрометации всей криптографической сети, и дальнейшее шифрование информации теряет смысл. Однако наличие закрытого канала связи позволяет передавать и сам открытый текст по данному каналу. Таким образом, необходимость шифрования как бы отпадает. Аргументы вида «ключ шифрования необходимо передавать достаточно редко по сравнению с передачей закрытых сообщений» хотя и приемлемы, но оставляют данную проблему нерешенной.

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

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

Ключи в асимметричных криптосистемах всегда генерируются парами и состоят из двух частей – открытого ключа (ОК) и секретного ключа (СК).

Ключевая пара

СК

ОК

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

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

Функциональная схема взаимодействия участников асимметричного криптографического обмена представлена на рис. 2.

В данной схеме участвует получатель секретного сообщения А и отправитель секретного сообщения B. ОКА – открытый ключ пользователя А, СКА – секретный ключ пользователя А. Ключевая пара (ОКА, СКА) сгенерирована на стороне получателя А, после чего открытый ключ данной пары ОКА отправляется по открытому каналу пользователю B. Предполагается, что злоумышленнику также известен открытый ключ ОКА.

Рис. 2. Функциональная схема асимметричной криптосистемы

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

Рис 2 отражает только одностороннюю схему взаимодействия в рамках асимметричных криптосистем. Для реализации двустороннего обмена необходима реализация следующих шагов:

1. Пользователь A генерирует ключевую пару (ОКА,СКА).

2. Пользователь B генерирует ключевую пару (ОКB,СКB).

3. Пользователи A и B должны обменяться своими открытыми ключами. Пользователь А передает свой открытый ключ ОКА пользователю B, пользователь B передает свой открытый ключ ОКB пользователю A.

4. Пользователь А шифрует информацию для пользователя B на ключе ОКB, пользователь B шифрует информацию для пользователя A на ключе ОКA.

5. Пользователь А дешифрует информацию, присланную ему от пользователя B, на ключе СКА, пользователь B дешифрует информацию, присланную ему от пользователя A, на ключе СКB.

Криптоанализ

Любая попытка со стороны перехватчика расшифровать шифротекст C для получения открытого текста M или зашифровать свой собственный текст M` для получения правдоподобного шифротекста C`, не имея подлинного ключа, называется криптоаналитической атакой.

Если предпринятые криптоаналитические атаки не достигают поставленной цели и криптоаналитик не может, не имея подлинного ключа, вывести M из C или C` из M`, то систему называют криптостойкой.

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

Традиционные симметричные алгоритмы шифрования

Традиционные симметричные криптосистемы можно разделить на следующие основные виды.

1. Шифры замены.

2. Шифры перестановки.

3. Шифры гаммирования.

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

Многоалфавитные шифры замены предложил и ввел в практику криптографии Леон Батист Альберти

Примерами шифров замены являются моноалфавитная замена, многоалфавитная замена, шифр Цезаря, шифр Гросфельда, шифр Вижинера. (более подробно изучить в TEOR.HLP).

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

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

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

Пример шифровании методом простой перестановки

Зашифруем открытый текст «ПРИЕЗЖАЮДНЕМ» методом перестановки с ключом К=3142.

П

Р

И

Е

З

Ж

А

Ю

Д

Н

Е

М

3

1

4

2

3

1

4

2

3

1

4

2

И

П

К

Р

А

З

Ю

Ж

Е

Д

М

Н

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

Шифрование методом гаммирования. Под гаммированием понимают наложение на открытые данные по определенному закону гаммы шифра.

Гамма шифра – псевдослучайная последовательность, вырабатываемая по определенному алгоритму, используемая для зашифровки открытых данных и дешифровки шифротекста.

Общая схема шифрования методом гаммирования представлена на рис. 3

Рис. 3. Схема шифрования методом гаммирования

Принцип шифрования заключается в формировании генератором псевдослучайных чисел (ГПСЧ) гаммы шифра и наложении этой гаммы на открытые данные обратимым образом, например путем сложения по модулю два. Процесс дешифрования данных сводится к повторной генерации гаммы шифра и наложении гаммы на зашифрованные данные. Ключом шифрования в данном случае является начальное состояние генератора псевдослучайных чисел. При одном и том же начальном состоянии ГПСЧ будет формировать одни и те же псевдослучайные последовательности.

Пример система шифрования Цезаря

Шифр Цезаря является частным случаем шифра простой замены. Свое название этот шифр получил по имени римского императора Гая Юлия Цезаря, который использовал этот шифр при переписке с Цицероном (около 50 г. до н.э.).

При шифровании исходного текста методом Цезаря, каждая буква открытого текста заменяется на букву того же алфавита по следующему правилу. Заменяющая буква определяется путем смещения по алфавиту от исходной буквы на K букв (позиций). При достижении конца алфавита выполняется циклический переход к его началу. Смещение K в данном случае определяет ключ шифрования. Совокупность возможных подстановок для больших букв английского алфавита и K=3 представлена в таблице 1.

Таблица 1. Таблица подстановок

A

D

H

K

O

R

V

Y

B

E

I

L

P

S

W

Z

C

F

J

M

Q

T

X

A

D

G

K

N

R

U

Y

B

E

H

L

O

S

V

Z

C

F

I

M

P

T

W

G

J

N

Q

U

X

Математическая модель шифра Цезаря записывается в виде (1)

С=(P+K) mod M (1)

где C – код символа шифротекста, P – код символа открытого текста, К – коэффициент сдвига, M – размер алфавита, mod – операция нахождения остатка от деления на М.

Например, результатом шифрования открытого текста RED APPLE по методу Цезаря с ключом К=3 будет являться последовательность UHG ASSOH.