13527

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

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

Информатика, кибернетика и программирование

Моделирование криптосистем с помощью программы Multisim 1. Подготовка к работе По указанной литературе и Приложению к данным методическим указаниям изучить работу пакета Electronics Wokbench Multisim принцип гаммирования ответить на контрольные вопросы. 2. Контрольные воп...

Русский

2013-05-11

554.5 KB

37 чел.

Моделирование криптосистем с помощью

программы Multisim

1. Подготовка к работе

По указанной литературе и Приложению к данным методическим указаниям изучить работу пакета Electronics Wokbench (Multisim), принцип гаммирования, ответить на контрольные вопросы.

2. Контрольные вопросы

2.1. В чем состоит основная идея криптографии?

2.2. Дайте определение последовательностных цифровых устройств

2.3. Запишите закон де Моргана.

2.4. Перечислите возможности прибора Logic ConverterXLC1.

2.5. Составьте таблицу истинности логического элемента ИЛИ-НЕ

2.6. Составьте таблицу истинности логического элемента И-НЕ.

2.7. Запишите тождества алгебры логики.

2.8. Как записывается логическая функция в совершенной дизъюнктивной нормальной форме (СДНФ)?

2.9. Как записывается логическая функция в совершенной конъюнктивной нормальной форме (СКНФ)?

2.10. Дайте определение комбинационного цифрового устройства.

2.11. Запишите законы алгебры логики.

2.12. Опишите методику синтеза ПК с помощью диаграмм Вейча.

2.13. Как представить отрицательное число в дополнительном коде?

2.14. Чем отличаются логические и арифметические операции?

2.15. Для чего используются в АЛУ выводы M и CN?

2.16. Чем отличаются комбинационные цифровые устройства от последовательностных цифровых устройств?

2.17. Охарактеризуйте различные версии программы Electronics Workbench.


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

3.1.1. Задание 1. Синтез преобразователя кода

Используя таблицу 3.1.1, разработать преобразователь кода (ПК), для чего предварительно требуется составить таблицу истинности для своего варианта. Преобразователи кодов нужно синтезировать с помощью блока Logic Converter (логический конвертор), который входит в систему моделирования радиоэлектронных устройств Multisim 8.2.12 Pro.

Таблица 3.1.1

Варианты

Значения гаммы G

1

0,5,6,7

1,3,11

2,8,12,15

4,9,10,13,14

2

2,3,7,11

8,12,14,15

0,1,5,9,13

4,6,10

3

0,1,4,5

2,3,12,14,15

6,8,10

7,9,11,13

4

0,13,14,15

4,6,8,10,12

1,3,5

2,7,9,11

5

1,5,9,13

3,7,11,15

2,6,10,14

0,4,8,13

6

0,5,10,15

3,6,9,12

4,8,7,11

1,2,13,14

7

0,4,8,12

1,5,9,13

2,6,10,14

3,7,11,15

8

2,6,10,14

0,4,8,12

3,7,11,15

1,5,9,13

9

3,7,11,15

2,6,10,14

1,5,9,13

0,4,8,12

10

4,5,8,9,

2,3,12,13

0,1,6,7

10,11,14,15

11

13,15,3,7

2,6,9,12

0,4,8,11

1,5,9,10,14

12

2,3,6,7

10,11,14,15

4,5,8,9

0,1,12,13

13

2,6,8,12

3,7,11,15

0,4,10,14

1,5,9,13

14

5,7,10,13

4,6,12,15

0,2,8,11

1,3,9,14

15

0,4,9,13

1,5,8,12

3,7,10,14

2,6,11,15

16

3,7,8,12

0,4,10,14

2,6,11,15

1,5,9,13

17

0,1,2,3

4,5,6,7

8,9,10,11

12,13,14,15

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

Например, для варианта 17, если гамма равна 0, то выполняемая операция будет . Если значение гаммы равно 11, то операция на передающей стороне будет .


3.1.2. Задание 2. Разработка принципиальной схемы криптографической системы

Исследуемое устройство будет работать с использованием четырех операций: Исключающее ИЛИ, равнозначность, сложение и вычитание. Эти операции должны сменять друг друга при изменении значений гаммы. Для реализации этого при составлении принципиальной схемы криптосистемы следует использовать разработанный преобразователь кода.

Пример составления схемы приведен в методических указаниях.

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

Значения операндов открытого текста в зависимости от значения гаммы и номера варианта выбрать из таблицы.

    Таблица 3.1.2

Гамма (G)

Варианты

Открытый текст (М)

0

1

2

3

4

5

6

7

1

1

2

3

4

5

6

7

8

2

2

3

4

5

6

7

8

9

3

3

4

5

6

7

8

9

10

4

4

5

6

7

8

9

10

11

5

5

6

7

8

9

10

11

12

6

6

7

8

9

10

11

12

13

7

7

8

9

10

11

12

13

14

8

8

9

10

11

12

13

14

15

9

9

10

11

12

13

14

15

0

10

10

11

12

13

14

15

0

1

11

11

12

13

14

15

0

1

2

12

12

13

14

15

0

1

2

3

13

13

14

15

0

1

2

3

4

14

14

15

0

1

2

3

4

5

15

15

0

1

2

3

4

5

6

16

0

1

2

3

4

5

6

7

17

3

0

1

2

6

7

4

5

      


Продолжение таблицы 3.1.2

Гамма (G)

Варианты

Открытый текст (М)

8

9

10

11

12

13

14

15

1

9

10

11

12

13

14

15

0

2

10

11

12

13

14

15

0

1

3

11

12

13

14

15

0

1

2

4

12

13

14

15

0

1

2

3

5

13

14

15

0

1

2

3

4

6

14

15

0

1

2

3

4

5

7

15

0

1

2

3

4

5

6

8

0

1

2

3

4

5

6

7

9

1

2

3

4

5

6

7

8

10

2

3

4

5

6

7

8

9

11

3

4

5

6

7

8

9

10

12

4

5

6

7

8

9

10

11

13

5

6

7

8

9

10

11

12

14

6

7

8

9

10

11

12

13

15

7

8

9

10

11

12

13

14

16

8

9

10

11

12

13

14

15

17

10

11

8

9

14

15

12

13

Таблицу 3.1.2 нужно понимать так. Значения гаммы G для всех вариантов одинаковые 0…15 (верхняя строка чисел). Открытый текст М имитируется числами (для каждого варианта своя последовательность).  Например, для варианта 17 эта последовательность такова 3- 0 - 1-…12 - 13.

Результаты моделирования следует сопоставить с результатами ручных расчетов и занести в таблицу. Ниже приведена форма этой таблицы.

       Таблица 3.1.3

№ п/п

Значение гаммы (G)

Значение открытого текста (М).

Вариант 17

Значение криптограммы (К). Результаты моделирования

Значение криптограммы (К). Результаты ручного расчета

1

0

3

2

1

0

16

15

13


4. Методические указания

Моделирование данной криптосистемы производится с помощью программы Multisim 8.2.12 Professional. Открытый текст, гамма, криптограмма представлены четырехразрядными двоичными операндами, а управляющие сигналы формируются  с помощью пяти битов. Структурная схема приведена на рисунке 1.

Рис. 1. Структурная схема криптографической системы

Передающая и приемная стороны имитируются с помощью двух четырехразрядных арифметико-логических устройств (АЛУ). На передающей стороне вход M используется для подачи открытого текста, вход G - для подачи гаммы. На приемной стороне вход K используется для приема криптограммы, вход G – для подключения гаммы. Потоки открытого текста и гаммы формируются с помощью шестнадцатиразрядного генератора двоичных слов. Для контроля результатов преобразований (открытого текста на приемной и передающей сторонах, гаммы и криптограммы) используют четыре шестнадцатеричных индикатора.

Изменение вида выполняемой операции осуществляется с помощью преобразователя кода (ПК 1 и ПК 2), на вход которого подается гамма (4 бита), а выход которого подключается к управляющим входам АЛУ (5 битов). Сигналы на управляющих входах АЛУ определяют вид выполняемой операции. Изменение гаммы приводит к изменению сигналов на выходе преобразователя кода, а, значит, и к изменению управляющих сигналов на передающей и приемной сторонах.

Для начала требуется произвести синтез преобразователей кода, которые будут подключены к арифметико-логическим устройствам и определять вид выполняемой операции. Используя таблицу 3.1.1, составим таблицу истинности для варианта 17

Таблица 2

№ п/п

Гамма

(BCDE)

Операция

Управляющие сигналы

Мod

CN

0

0  0  0  0

0  1  1  0

1

x

1

0  0  0  1

0  1  1  0

2

0  0  1  0

0  1  1  0

3

0  0  1  1

0  1  1  0

4

0  1  0  0

1  0  0  1

1

x

5

0  1  0  1

1  0  0  1

6

0  1  1  0

1  0  0  1

7

0  1  1  1

1  0  0  1

8

1  0  0  0

0  1  1  0

0

0

9

1  0  0  1

0  1  1  0

10

1  0  1  0

0  1  1  0

11

1  0  1  1

0  1  1  0

12

1  1  0  0

1  0  0  1

0

1

13

1  1  0  1

1  0  0  1

14

1  1  1  0

1  0  0  1

15

1  1  1  1

1  0  0  1

Первые два столбца таблицы будут одинаковыми для всех вариантов, столбец «Управляющие сигналы» составить следующим образом (на примере варианта № 17): для гаммы равной значениям «0», «1», «2», «3» выполняется операция , поэтому для пунктов 0-3 ставится в соответствие данная операция. Другие строки таблицы заполняются аналогично. Столбец «Операция» заполняется исходя из столбца «Управляющие сигналы». Столбец «Mod» определяет, какую операцию выполняет АЛУ: логическую (его значение равно 1) или арифметическую(значение равно 0). Значение CN означает перенос в разрядах: для логических операций безразлично, какое значение примет, поэтому обозначено символом «х», для арифметического вычитания равно «0», для арифметического сложения – «1». Соответствие управляющих сигналов и операций следующее:

«» – «0 1 1 0», «» – «1 0 0 1»,

«» – «0 1 1 0», «» – «1 0 0 1»

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

По данной таблице составляют логические выражения, используемые для синтеза преобразователей кода. Составить логические выражения легче всего с помощью Logic Converter (логический конвертор). Этот инструмент позволяет создавать преобразователи кодов с числом аргументов . Для получения математических выражений, описывающих работу ПК, достаточно в конвертор ввести таблицу истинности преобразователя кода.

Рис. 2. Изображение логического конвектора

Для этого нужно запустить Multisim. На панели справа найти нужный блок (он четвертый снизу), однократным щелчком мыши переместить его на рабочее поле. Далее нужно вызвать окно свойств двойным нажатием левой кнопки мыши и внести таблицу истинности в конвертор. Это действие следует произвести для каждого управляющего сигнала (S) в отдельности. Анализируя таблицу, можно заметить, что , . Это означает, что выражения для этих управляющих сигналов будут одинаковыми. Для сигналов Мod и CN  также нужно получить логические выражения аналогичным способом. Логические выражения по управляющим сигналам получить последовательным нажатием на вторую и третью кнопки в окне свойств логического конвертора в поле «Conversions». В качестве примера получим выражение для для варианта 17 (рис.3).

Рис. 3. Окно свойств логического конвектора

Как видно из рис. 3, результат синтеза – В. Учитывая последовательность ввода операндов и их соответствие операндам S, получаем выражение .

Для справки: символ А в данном окне соответствует разряду гаммы В3, символ В – В2, С – В1, D – В0.

Аналогично получаем следующее:

,, .

Эти выражения для преобразователя кода на передаче.

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


   Таблица 3

№ п/п

Гамма

(BCDE)

Операция

Управляющие сигналы

Мod

CN

0

0  0  0  0

0  1  1  0

1

x

1

0  0  0  1

0  1  1  0

2

0  0  1  0

0  1  1  0

3

0  0  1  1

0  1  1  0

4

0  1  0  0

1  0  0  1

1

x

5

0  1  0  1

1  0  0  1

6

0  1  1  0

1  0  0  1

7

0  1  1  1

1  0  0  1

8

1  0  0  0

1  0  0  1

0

1

9

1  0  0  1

1  0  0  1

10

1  0  1  0

1  0  0  1

11

1  0  1  1

1  0  0  1

12

1  1  0  0

0  1  1  0

0

0

13

1  1  0  1

0  1  1  0

14

1  1  1  0

0  1  1  0

15

1  1  1  1

0  1  1  0

Выражения на приеме примут вид , , , .

На основе этих выражений и «собираем» ПК на передаче и приеме, подключаемые к АЛУ. В итоге принципиальная схема примет вид (рис.4)

Рис. 4. Принципиальная схема криптосистемы

Четырехбитный открытый текст подается на вход А первого арифметико-логического устройства (АЛУ). Гамма подается на вход В. Вид выполняемой операции должен задаваться с помощью преобразователя кода ПК1. Криптограмма будет формироваться на выходе F первого АЛУ. Дешифрация криптограммы будет осуществляться на приемной стороне с помощью второго АЛУ. Вид выполняемой операции синхронно изменяется под управлением гаммы. Принятый открытый текст появлялся  на выходе F второго АЛУ.

Исходный текст, принятый текст, гамма и криптограмма отображаются с помощью индикаторов U3…U6. Значения гаммы и передаваемый текст формируются с помощью генератора слов XWG1 (Word Generator).  

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

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

Кроме того, в реальной криптосистеме при формировании криптограммы возможно использование  не только целых, но и вещественных чисел.

На следующем этапе выполнения лабораторной работы следует проверить правильность работы схемы. Для этого в окне свойств генератора слов XWG1 нужно выставить значения гаммы и открытого текста, как показано на рисунке 5, и нажатием на клавишу Step, поочередно проверить все операции. Для удобства флажок таблицы исчисления должен стоять на «Hex», значащееся разряды крайние справа: например «0», «6», где «0» – это значение гаммы, а «6» – значение открытого текста. Нужно помнить – числу «10» соответствует буква «А», «11» – «В», «12» – «C», «13» – «D», «14» – «E», «15» – «D».

Рис. 5. Окно свойств генератора слов

Как видно из рисунка 5, выполняется 3-я по счету операция, в таблице 2 – это операция Исключающее-ИЛИ. Складываются по модулю 2 числа «2» и «1». Выполнив эту операцию с числами в двоичном коде, получим ответ «3», что и получили на выходе первого АЛУ (криптотекст), а на выходе второго АЛУ получили ответ «1», что соответствует значению открытого текста на входе первого АЛУ, следовательно, операция криптосистемой выполнена верно. Аналогично проверяются и другие строки таблицы.

Результаты проверки следует внести в таблицу 3.1.3.


 

А также другие работы, которые могут Вас заинтересовать

7974. Юридическая педагогика. Учебник 2.02 MB
  Книга является одним из первых учебников, в котором системно излагается курс Педагогика высшей школы для магистров, аспирантов и преподавателей юридических вузов с учетом специфики высшего юридического образования. Дается краткий очерк истории и с...
7975. Конспект лекцій з педагогіки 222 KB
  Своя назва педагогіка одержала від грецьких слів пайдос - дитя і аго- вести. У діловому перекладі пейдогос означає дітоводій. Педагогом у Древній Греції називали раба, що у буквальному значенні слова брало за руку дитини свого пана і супроводжував його в школу...
7976. Труд как основа развития общества и важный фактор производства 738.5 KB
  ТЕМА 1. Труд как основа развития общества и важный фактор производства Предмет и задачи дисциплины Понятие о труде и его социально-экономическая роль в обществе Содержание и характер труда Побудительные мотивы и стимулы к труду 1.Предмет и за...
7977. Что такое логика 311.5 KB
  Что такое логика? Дадим сначала рабочее определение логики. Логика является одной из наук, изучающих формы и приемы интеллектуальной познавательной деятельности (ср. со стандартным определением: логика - наука о законах (формально...
7978. Лекції з історії України 456 KB
  Тема І. УКРАЇНСЬКІ ЗЕМЛІ В НАЙДАВНІШІ ЧАСИ. давньоруська держава в ІХ-ХІіІ ст. 1. Київська Русь в контексті міжнародних відносин. 2. Феодальна роздробленість на Русі. Утворення Галицько-Волинського князівств...
7979. Внедрение технологий ремонта детали по заданным параметрам 4.25 MB
  Введение Роль автотранспорта в народном хозяйстве Автомобильный транспорт является одной из важнейших отраслей народного хозяйства. Практически нет ни одного предприятия промышленности, строительства, сельского хозяйства, которые не пользовали...
7980. БЖД. Ответы к экзамену 529 KB
  Безопасность, её анализ. Безопасность жизнедеятельности (БЖД), её цели и задачи. БЖД состоит из 2-х основных частей: - гражданская оборона (занимается защитой человека и его здоровья в условиях ЧС мирного и военного времени) - охрана труда (за...
7981. Определение поверхности теплопередачи выпарный аппаратов 344.5 KB
  Технологический расчёт. Определение поверхности теплопередачи выпарный аппаратов Поверхность теплопередачи каждого корпуса выпарной установки определяют по основному уравнению теплопередачи...
7982. Проблемы опустынивания: распространение, роль естественных и социально - экономических факторов 148.12 KB
  Проблемы опустынивания: распространение, роль естественных и социально - экономических факторов. Стратегии, международная конвенция по борьбе с опустыниванием Введение Опустынивание - деградация земель в аридных, полуаридных и засушливых област...