Меню
Главная
Авторизация/Регистрация
 
Главная arrow Информатика arrow Информатика 2015

10. Защита информации

10.1. Основные понятия криптографии

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

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

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

Одним из первых шифровальных приспособлений была скитала, которая применялась во время войны Спарты против Афин (Пелопоннесская война, 431—404 до н. э.). Скитала — это цилиндр, на который виток к витку наматывалась узкая папирусная лента (без пробелов и нахлёстов). Затем на этой ленте вдоль оси цилиндра (столбцами) записывался необходимый для передачи текст. Лента сматывалась с цилиндра и отправлялась получателю. Получатель наматывал присланную ему ленту на цилиндр такого же диаметра, как и диаметр скиталы отправителя. В результате можно было прочитать зашифрованное сообщение.

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

Некоторые священные иудейские рукописи шифровались методом замены. Вместо первой буквы алфавита записывалась последняя буква, вместо второй — предпоследняя и т. д. Этот древний шифр назывался агбаш. Известен факт шифрования переписки Юлии Цезаря (100—44 до н. э.) с Цицероном (106—

43 до н. э.).

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

В Древней Греции (II в. до н.э.) был известен шифр, который создавался с помощью квадрата Полибия. Таблица для шифрования представляла собой квадрат с пятью столбцами и пятью строками, которые нумеровались цифрами от 1 до 5. В каждую клетку такой таблицы записывалась одна буква. В результате каждой букве соответствовала пара цифр (номера строк и столбцов), и шифрование сводилось к замене буквы парой цифр.

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

1

2

3

4

5

6

1

А

Б

в

Г

Д

Е

2

Ё

Ж

3

и

й

К

3

Л

М

н

о

п

Р

4

С

т

У

ф

X

ц

5

ч

ш

щ

ъ

ы

ь

6

э

ю

я

/

-

Зашифруем с помощью квадрата Полибия слово КРИПТОГРАФИЯ:

26 3624 3542 3414 361144 2463

Из примера видно, что в шифрограмме первым указывается номер строки, а вторым — номер столбца. В квадрате Полибия столбцы и строки можно маркировать не только цифрами, но и буквами.

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

Криптография (от др.-греч. крипто*; — скрытый и урс'кро) — пишу) — наука о методах обеспечения конфиденциальности (невозможности прочтения информации посторонним) и аутентичности (целостности и подлинности авторства, а также невозможности отказа от авторства) информации.

Сфера интересов криптоанализа противоположная — разработка и исследование методов дешифрования (взлома) криптограммы без знания секретного ключа.

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

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

Расшифрование — обратный шифрованию процесс. При расшифровании зашифрованный текст (шифрограмма, шифровка) преобразуется в исходный открытый текст.

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

Существует несколько классификаций шифров.

По характеру использования ключа алгоритмы шифрования делятся на два типа: симметричные (с одним ключом, по-другому — с секретным ключом) и несимметричные (с двумя ключами или с открытым ключом). Несимметричные алгоритмы шифрования и дешифрования порой называют асимметричными.

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

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

При оценке эффективности шифра обычно руководствуются правилом голландца Огюста Керкгоффса (1835—1903 г .г.), согласно которому стойкость шифра определяется только секретностью ключа, т. е. криптоаналитику известны все детали алгоритмов шифрования и дешифрования, но неизвестно, какой ключ использован для шифрования данного текста.

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

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

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

Буква

Частота

Буква

Частота

Буква

Частота

Буква

Частота

О

0.09

В

0.038

3

0.016

Ж

0.007

е,ё

0.072

л

0.035

ы

0.016

ш

0.006

а

0.062

к

0.028

б

0.014

ю

0.006

и

0.062

м

0.026

ь/ь

0.014

ц

0.004

н

0.053

д

0.025

г

0.013

ш

0.003

т

0.053

11

0.023

ч

0.012

Э

0.003

с

0.045

У

0.021

й

0.01

Ф

0.002

р

0.04

Я

0.018

X

0.009

Относительная частота появления пробела или знака препинания в русском языке составляет 0,174. Приведенные цифры означают следующее: среди 1000 букв текста в среднем будет 174 пробелов и знаков препинания, 90 букв «о», 72 буквы «е» и т. д.

При проведении криптоанализа требуется по небольшому отрезку текста решить, что собой представляет дешифрованный текст: осмысленное сообщение или набор случайных символов. Часто криптоаналитики вскрывают шифры на ЭВМ методом перебора ключей. Вручную выполнить анализ множества фрагментов дешифрированных текстов невозможно. Поэтому задачу выделения осмысленного текста (т. е. обнаружение правильно дешифрированного текста) решают с помощью ЭВМ. В этом случае используют теоретические положения, разработанные в конце ХГХ в. петербургским математиком АЛ. Марковым, так называемые цени Маркова.

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

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

Рассмотрим еще одну классификацию шифров.

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

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

Следующая простейшая «шифровка» получена методом перестановки двух соседних букв РКПИОТРГФАЯИ.

В этом «секретном» сообщении легко узнать слово КРИПТОГРАФИЯ.

Более сложный алгоритм перестановок сводится к разбиению сообщения на группы но три буквы. В каждой группе первую букву ставят на третье место, а вторую и третью буквы смещают на одну позицию влево. В результате получится криптограмма: РИКТОПРАГИЯФ.

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

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

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

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

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

Например, используя расположение символов на стандартной клавиатуре, зашифруем слов КРИПТОГРАФИЯ методом замены:

RHBGNJUHFABZ

Затем поменяем местами каждые пары букв:

HRGBJ NHUAFZB

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ ОРИГИНАЛ   След >
 

Популярные страницы