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

Лабораторная работа №1

Шифрование данных одиночной перестановкой по ключу

в симметричных криптосистемах

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

Теоретическое введение

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

= {a0, a1, a2, …, am-1}.

Объединяя по определенному правилу буквы из алфавита можно создавать новые алфавиты:

алфавит 2, содержащий m2 биграмм a0a0, a0a1,…, am-1am-1;

алфавит 3, содержащий m3 триграмм a0a0a0, a0a0a1,…, am-1am-1am-1.

В общем случае, объединяя по n букв, получаем алфавит n, содержащий mn n-грамм.

Например, английский алфавит

= {A,B,C,D,E,F, …,Y,Z}

объемом m=26 букв позволяет сгенерировать посредством операции конкатенации алфавит из 262 = 676 биграмм, алфавит из 263 = 17576 триграмм.

При выполнении криптографических преобразований полезно заменить буквы алфавита целыми числами 0,1,2,3,… . Это позволяет упростить выполнение необходимых алгебраических манипуляций. Например, можно установить взаимно однозначное соответствие между русским алфавитом

рус. = {А,Б,В,Г,Д,Е, …, Ю,Я}

и множеством целых чисел

между английским алфавитом

англ. = {A,B,C,D,E,F, …,Y,Z}

и множеством целых чисел

Z26 = {0,1,2,3, …,25}.

В дальнейшем будет использоваться алфавит

Zm = {0,1,2,3, …,m-1},

содержащий m символов (в виде чисел).

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

Например, сообщение

МОСКОВСКИЙ_ИНСТИТУТ_СТАЛИ_И_СПЛАВОВ

записывается в таблицу поочередно по столбцам. Результат заполнения таблицы из 5 строк и 7 столбцов следующий:

М

В

_

И

С

_

Л

О

С

И

Т

Т

И

А

С

К

Н

У

А

_

В

К

И

С

Т

Л

С

О

О

Й

Т

_

И

П

В

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

МВ_ИС_ЛОСИТТИАСКНУА_ВКИСТЛСООЙТ_ИПВ

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

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

Применим в качестве ключа, например, слово

КАФЕДРА,

а текст сообщения возьмем из предыдущего примера. Ниже приведены две таблицы, заполненные текстом сообщения и ключевым словом, при этом левая таблица соответствует заполнению до перестановки, а правая таблица – заполнению после перестановки.

К

А

Ф

Е

Д

Р

А

А

А

Д

Е

К

Р

Ф

5

1

7

4

3

6

2

1

2

3

4

5

6

7

М

В

_

И

С

_

Л

В

Л

С

И

М

_

_

О

С

И

Т

Т

И

А

С

А

Т

Т

О

И

И

С

К

Н

У

А

_

В

К

В

А

У

С

_

Н

К

И

С

Т

Л

С

О

И

О

Л

Т

К

С

С

О

Й

Т

_

И

П

В

Й

В

И

_

О

П

Т

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

При считывании содержимого правой таблицы по строкам получаем шифрованное сообщение:

ВЛСИМ_ _САТТОИИКВАУС_НИОЛТКССЙВИ_ОПТ

При расшифровании порядок перестановок должен быть обратным.

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