- •Содержание
- •Аннотация
- •Лабораторная работа №1
- •Теоретическое введение
- •Задание на лабораторную работу
- •Порядок выполнения работы
- •Аффинная система подстановок Цезаря.
- •Задание на лабораторную работу
- •Порядок выполнения работы
- •Датчики псч
- •А) Конгруэнтные датчики
- •Б) Датчики м-последовательностей
- •Задание на лабораторную работу
- •Порядок выполнения работы
- •Задание на лабораторную работу
- •Порядок выполнения работы
- •Задание на лабораторную работу
- •Порядок выполнения работы
- •Задание на лабораторную работу
- •Список литературы
- •210200 – «Автоматизация технологических процессов и производств»
- •071900 – «Информационные системы и технологии»
- •220400 – «Программное обеспечение вычислительной техники
Лабораторная работа №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 |
М |
В |
_ |
И |
С |
_ |
Л |
|
В |
Л |
С |
И |
М |
_ |
_ |
О |
С |
И |
Т |
Т |
И |
А |
|
С |
А |
Т |
Т |
О |
И |
И |
С |
К |
Н |
У |
А |
_ |
В |
|
К |
В |
А |
У |
С |
_ |
Н |
К |
И |
С |
Т |
Л |
С |
О |
|
И |
О |
Л |
Т |
К |
С |
С |
О |
Й |
Т |
_ |
И |
П |
В |
|
Й |
В |
И |
_ |
О |
П |
Т |
В верхней строке левой таблицы записан ключ, а номера под буквами ключа определены в соответствии с естественным порядком соответствующих букв ключа в алфавите. Так как в ключе встретились две одинаковые буквы то они были пронумерованы слева направо. В правой таблице столбцы переставлены в соответствии с упорядоченными номерами букв ключа.
При считывании содержимого правой таблицы по строкам получаем шифрованное сообщение:
ВЛСИМ_ _САТТОИИКВАУС_НИОЛТКССЙВИ_ОПТ
При расшифровании порядок перестановок должен быть обратным.
Для обеспечения дополнительной скрытности можно повторно зашифровать сообщение, которое уже прошло шифрование. Такой метод шифрования называется двойной перестановкой.