Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Zashita_informatsii_konspekt_lektsy_dlya_IT_UIS...doc
Скачиваний:
3
Добавлен:
14.09.2019
Размер:
583.68 Кб
Скачать

5 Преобразование секретной информации (криптография)

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

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

Введем несколько понятий.

Криптография – наука о том, как обеспечить секретность сообщения.

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

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

Основной схемой классификации всех криптоалгоритмов является следующая схема.

Тайнопись – отправитель и получатель производят над сообщением преобразование, известное только им двоим. Сторонним лицам неизвестен сам алгоритм шифрования.

Криптография с ключом – алгоритм воздействия на передаваемые данные известен всем сторонним лицам, но он зависит от некоторого параметра – “ключа”, которым обладают только отправитель и получатель.

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

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

Симметричные криптосистемы

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

Все многообразие симметричных систем основывается на следующих базовых классах:

- моно- и многоалфавитные подстановки;

- перестановки;

- блочные шифры;

- гаммирование.

Рис. 5.1

Подстановки

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

c ≡ (a*e +s) mod K , (5.1)

где a – десятичный коэффициент; s – коэффициент сдвига; e – код буквы исходного текста; c – код зашифрованной буквы; K – длина алфавита; mod – операция вычисления остатка от деления выражения в скобках на модуль К.

Пример. Шифр Цезаря

Рассмотрим шифрование на алфавите, состоящим и 26 латинских букв и знака пробела (пробел будем изображать знаком #). Знаку # присвоим код 0, букве A – код 1, B – код 2,… букве Z – код 26.

Исходное сообщение: WE#NEED#SNOW

Возьмем следующие параметры: a = 1 s = 2 K = 27

Формула для шифрования примет вид

c ≡ (e + 2) mod 27 (5.2)

Входной алфавит:

# A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Выходной алфавит

B C D E F G H I J K L M N O P Q R S T U V W X Y Z # A

(Буквы сдвигаются на две позиции: A-C B-D и т.д.)

Тогда исходное сообщение в зашифрованном виде будет выглядеть так:

YGBPGGFBUPQY

Для расшифровки (для случая, когда a=1) используется следующая формула

e ≡ (K+ c - s) mod K (5.3)

Простая многоалфавитная подстановка последовательно и циклически меняет используемые алфавиты (в предыдущем случае для шифрования использовался один алфавит). При m-алфавитной подстановке знак a1 из исходного сообщения заменяется знаком из алфавита B1, знак a2 - знаком из алфавита B2, … знак am - знаком из алфавита Bm, знак am+1 - знаком из алфавита B1 и т.д. Эффект использования многоалфавитной подстановки состоит в том, что обеспечивается маскировка частотной статистики исходного языка, так как конкретный знак из алфавита А преобразуется в несколько различных знаков шифровального алфавита В.

Пример

Исходное сообщение: WE#NEED#SNOW

Ключ: SECURITYSECU

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

И сходный ключ Шифр

Т екст

(W + S) mod 27 = (23 + 19) mod 27 = 15→O

(E + E) mod 27 = (5 + 5) mod 27 = 10 → J

(# + C) mod 27 = (0 + 3) mod 27 = 3 → C

Задание

Предлагаем в качестве упражнения составить шифровку до конца.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]