Порядок выполнения лабораторной работы

Моделирование работы шифра гаммирования

 

  1. Цель работы

Освоить порядок моделирования криптосистемы с помощью программы Multisim 11.0.2.

 

  1. Общие сведения

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

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

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

Рассмотрим детальнее процедуру шифрования методом гаммирования. При формировании гаммы генератор формирует псевдослучайную последовательность битов: g1, g2, g3,…, gn. Этот поток битов и поток битов открытого текста p1, p2, p3,…, pn подвергаются поразрядно логической операции Исключающее ИЛИ. В результате получается поток битов криптограммы:

ci = pi Å gi.

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

pi = ci Å gi.

Благодаря особенностям логической операции Исключающее ИЛИ на приёмной стороне операция вычитания заменяется логической операцией Исключающее ИЛИ. Сказанное иллюстрируем примером.

Предположим, что открытый текст Р = 10011001, а гамма G = 11001110. В результате шифрования на передающей стороне криптограмма С будет иметь следующий вид:

 

 

Р
G
C

 

На приёмной стороне над криптограммой и гаммой повторно выполняется логическая операция Исключающее ИЛИ:

 

C
G
Р`

 

Из этих таблиц видно, что переданный и принятый байты одинаковые.

В ЭВМ преобразование открытого текста в числа происходит естественным путём, так как каждый символ при вводе с клавиатуры кодируется двоичным числом. Для определённости будем считать, что сообщение в ЭВМ кодируется с помощью кодовой таблицы CP-1251. Результаты всех преобразований поместим в таблицу.

 

Открытый текст Г Д Е А Б Б А
Десятичное число
Двоичное число
Гамма (десятич.)
Гамма (двоич.)
Криптогр. (двоич.)
Криптогр. (десят.)
Криптограмма г Ц б Л ь Ц Г

 

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

Следует запомнить.

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


Задания на выполнение лабораторной работы

 

Задание 1. Исследование шифра гаммирования

Выполнить моделирование криптосистемы, которая базируется на шифре гаммирования. Принципиальная схема криптосистемы показана на рисунке. Значения открытого текста и гаммы нужно записать в Word Generator. Содержимое Генератора слов (Word Generator XWG1), показанное на рисунке, соответствует варианту 17.

 

 

Исходные данные в шестнадцатеричной СС для моделирования и расчётов приведены в таблице.

Таблица 3.1.1

Вар. Открытый текст Гамма Вар. Открытый текст Гамма
CAFÉ1945 1bA617E7 0dA2bAC9 914FbAC9
AbbA1812 29FE18db C0d3dACA 10A5AA09
bAbA3141 3Cd419EA 6АС4E2E4 11FdAA48
dEdAC0d4 41F920A3 EdA5CAdA 12CdAdA5
bEdAC0d5 579A21Fd AbCdA137 13F4dAdA
6А6АC0d6 6dbA22dA AdE52008 14AdbdAC
С00С2009 78bdAb38 EA431917 15FAEAE7
600С2012 8AEF10bd dAEE16b9
      C0d7 23b6

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

Кроме моделирования криптосистемы в программе Multisim в этом задании нужно выполнить ручной расчёт, используя те же исходные данные.

Задание 2. Оценка влияния состава гаммы на криптограмму

Повторить исследования, описанные в предыдущем задании, взяв одинаковые для всех вариантов значения гаммы 0000FFFF. Открытый текст берётся из таблицы 3.1.1. Провести анализ сформированной криптограммы, дать комментарии. Обратить внимание на имеющиеся закономерности, просматривающиеся при сравнении открытого текста и криптограммы.

 

Задание 3. Оценка влияния длины гаммы на криптостойкость

Выполнить моделирование криптосистемы, взяв одинаковые для всех вариантов значения гаммы 7A7A7A7A. Открытый текст должен состоять из восьми символов, равных номеру варианта (шестнадцатеричная система счисления). Провести анализ полученных результатов, дать комментарии.

Обратить внимание на имеющиеся закономерности, проявляющиеся при сравнении открытого текста и криптограммы.

 

Задание 4. Расшифрование криптограммы

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

Таблица 3.4.1

Вар Крипто- грамма Гамма Вар Крипто- грамма Гамма
D748E615 1BA617E7 D720C8AD 914FBAC9
6F976ABE 29FE18DB 52C9DF6C 10A5AA09
8E24F707 3CD419EA A11840A8 11FDAA48
8A11D151 41F920A3 55A8C1C7 12CDADA5
9072CD1D 579A21FD D8112834 13F4DADA
25DB57A9 6DBA22DA 43C8D4C2 14ADBDAC
BB4D45D4 78BDAB38 15FAEAE7
CE9D75D4 8AEF10BD 1500FD5C DAEE16B9
      ADDD9524 1D2E78CA

 

 

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

Криптосистема содержит два АЛУ, которые позволяют расшифровать (или зашифровать) восьмиразрядные символы. Младшие четыре бита открытого текста (или криптограммы) отображаются на индикаторе U3, а старшая тетрада индицируется на U4. Криптограмма (или открытый текст) и гамма размещаются в Генераторе Слов. Криптограмма (или открытый текст) подаётся на шины А, гамма - на шины В арифметико-логических устройств.

Полученные после расшифрования шестнадцатеричные значения открытого текста нужно заменить четырьмя буквами. Для этого следует использовать таблицу CP-1251 (см. Приложение 2).

 


Порядок выполнения лабораторной работы