Сигналів
Мета. Моделювання методів шифрування сигналів.
Теоретичні відомості
Із доповненням Arduino Ethernet Shield, можливо під'єднання плати Arduino Diecimila до локальної мережі. Тоді ця плата може слугувати як сервер — для прослуховування портів, або як клієнт — для підключення до вказаних портів.
Зазвичай перед тим, як завантажити дані у кадр, аналізуються послідовності даних користувача. Якщо зустрічається послідовність більше, наприклад, 6-ти одиниць, то після п'ятої одиниці вставляється нуль. Під час приймання виконується зворотна процедура.

Рис. 12. Використаня біт-стаффінга
Наприклад, необхідно передати число А (4A F8 37 E5 97) із спрацьовуванням біт-стаффінга після послідовності 5 одиниць.
У даному випадку до біт-стаффінга маємо:
А16=4A F8 37 E5 9716
А2=01001010 11111000 00110111 11100101 100101112
Після біт-стаффінга буде:
В2=01001010 11111 0 00 00011011 111 0 1001 01100101 000000 112
В16=4A F8 1B E9 65 0316
У вихідній послідовності з'явився п'ятий байт через те, що у початковому числі було знайдено дві послідовності одиниць і відповідно вставлено два нулі. Це призвело до того, що число зсунулося на два розряди. Відповідно з'явились два розряди, які перейшли у п'ятий байт, який ми доповнили у старших розрядах нулями, інакше прикладна програма не відомо як може сприйняти ті дві одиниці: як старші або як молодші розряди.
Хід роботи
1. Ознайомитися із теоретичними відомостями поняття біт-стаффінг.
2. Написати такий код, окремо для клієнта, окремо для сервера, який буде виконувати функцію біт-стаффінгу та зворотне перетворення. Для успішного виконання слід скористатися програмами із попередньої лабораторної роботи.
3. Зробити звіт та надати його викладачу.
Контрольні запитання
1. Пояснити принцип роботи алгоритму біт-стаффінга.
2. Які є основні типи алгоритмів шифрування?
3. Яким чином утворюються блоки під час шифрування інформації?
4. Порівняти швидкість шифрування за допомогою біт-стаффінга та блочного шифру.
5. Пояснити принцип утворення додаткових розрядів в результуючому коді.
Лабораторна робота № 4
Дослідження криптографічних алгоритмів шифрування
Сигналів
Мета. Моделювання методів кодування сигналів.
Теоретичні відомості
Для передавання будь-якого сигналу необхідно задати його рівні, які відповідають стандартам передання. Наприклад, якщо слід передавати число “4A F8 37 E5 97” із кодуванням “2B1Q”, то слід перетворити число у двійкове і відповідно до таблиці 1 подати кожен біт. 2B1Q використовує чотири рівні сигналів, такі: −450 мВ, −150 мВ, 150 мВ і 450 мВ, кожен (1Q) еквівалентний двом бітам (2B).
Таблиця 1 – Перетворення у двійковий код значення рівня напруги
| Цифровий сигнал | Рівень |
| +450 mV | |
| +150 mV | |
| −150 mV | |
| −450 mV |
Для прикладу, перші два байти числа будуть такі:
(2байта)16=4A F816
(2байта)2=01001010 111110002
Після кодування ми отримаємо такі значення, які для пояснення доцільно подати у вигляді осцилограми (рис. 13).

Рисунок 13 – Використання кодування 2B1Q.
Хід роботи
1. Ознайомитися із теоретичними відомостями щодо кодування рівнів сигналів.
2. Написати такий код, який:
2.1. Виконати над числом біт-стаффінг, відповідно до номера варіанта.
2.2. Встановлює необхідні значення електричного сигналу для передавання байтів числа A і поданий за допомогою цифрового кодування відповідно до номера варіанта. Виведення здійснювати на цифровий вихід № 13.
3. Зробити звіт та надати його викладачу.
Таблиця 2 – Список варіантів
| Варіант | Послідовність “1” для біт-стаффінга | Число | Цифрове кодування |
| F4 E9 03 C5 67 | 2B1Q | ||
| 3f 56 7E 7A 25 | AMI (1) | ||
| A5 EC F8 29 1F | NRZI (0) | ||
| 3F 6E 7E 9F 82 | Біполярний імпульсний | ||
| A5 EC FE 1F A0 | Манчестерський | ||
| A0 C9 DC 07 65 | 2B1Q | ||
| F4 67 E9 03 C5 | AMI (0) | ||
| 74 FE 78 FD 30 | NRZI (1) | ||
| E8 7F 92 A8 EC | Біполярний імпульсний | ||
| F5 E6 74 D8 A3 | Манчестерський | ||
| 4A F8 37 E5 97 | 2B1Q | ||
| F4 E9 03 C5 67 | AMI (1) | ||
| 74 78 FE FC 30 | NRZI (0) | ||
| 79 FE FD 78 3D | Біполярний імпульсний | ||
| 4E 9F 3E 9A FF | Манчестерський | ||
| A9 7E F8 9D AA | 2B1Q | ||
| 3F F5 E7 F5 AC | AMI (1) | ||
| 3C 7F 4A 93 E4 | NRZI (1) | ||
| A9 7C 95 F8 C6 | Біполярний імпульсний | ||
| 6B 0F E3 AB E2 | Манчестерський | ||
| 9A FE FF A5 7E | Манчестерський | ||
| AB 96 7E 7F 25 | 2B1Q | ||
| E5 AC 98 29 1A | AMI (1) |
Контрольні запитання
1. Що таке цифрове кодування?
2. Пояснити, яким чином цифрове кодування впливає на криптостійкість системи.
3. Який з методів цифрового кодування найшвидший? За рахунок чого?
4. Якщо методи цифрового кодування в назві відрізняються тільки значенням рівня, чи можна назвати ці методи інверсними один до одного?
5. Порівняти криптостійкість біт-стаффінга з методами цифрового кодування, які задані в варіантах завдань.
Лабораторна робота № 5






