
- •Національний університет "львівська політехніка"
- •Лабораторна робота № 1
- •Лабораторна робота № 2
- •Лабораторна робота № з
- •Лабораторна робота № 4
- •Лабораторна робота № 5
- •Лабораторна робота № 6
- •Закриптувати тексти:
- •Лабораторна робота № 7
- •Лабораторна робота № 8
- •Лабораторна робота № 9
- •Лабораторна робота № 10
- •Лабораторна робота № 11
- •Лабораторна робота № 12
- •Лабораторна робота № 13
- •Лабораторна робота № 14
- •Лабораторна робота № 15
- •Лабораторна робота № 16
- •Лабораторна робота № 17
- •Лабораторна робота № 18
Лабораторна робота № 15
Тема: Матричний шифр обходу. Криптоаналіз.
Мета: Отримати навички криптоаналізу матричного шифру обходу.
Теоретичні відомості.
Криптоаналіз матричного шифру обходу за відомим ключем можна провести в зворотному до процедури шифрування порядку.
Завдання.
Програмно реалізувати дешифрування у матричному шифрі обходу.
Провести криптоаналіз тексту з ключем результат:
"иицлцзюнякнааготмгртанраосікхьмеіпізмашмлдемуклчтнтомоьнузеонролиіоахлвоаиинмііііпапоеуяобасптіхорнри.ссаанаюлобьямеакнаонтямжоюоаитдааниуатяептощеиогябселгвлоеьатнзцосірваиіаядуедрцажповпннновьхсдрнлтхйпяуацрррнчвтїдхіруєнлонеіткл".
Лабораторна робота № 16
Тема: Шифр Кардано.
Мета: Отримати відомості по реалізації шифру Кардано.
Теоретичні відомості.
Шифр Кардано, як і матричний шифр обходу, належить до шифрів перестановки. В сучасності він, як і більшість класичних шифрів, через ненадійність та незручність реалізації не використовується.
Шифр
Кардано - це блоковий шифр з періодом
l=к2,
де
к
- парне
число.
Ключем є квадрат розміру к
на
к,
який
вирізали з паперу. Четверту частину
клітинок
в ньому вирізають. Нехай потрібно
зашифрувати повідомлення у
якому
к2
літер.
Процедура шифрування займає 4 кроки. На
першому кроці на аркуш,
на якому буде писатись криптотекст,
накладають ключ і вписують перші
літер повідомлення у прорізані клітинки,
починаючи з верхнього рядка.
На
другому кроці ключ повертають на 90
градусів за годинниковою стрілкою
відносно
центру квадрату і у прорізані клітинки
вписують наступні
літер повідомлення.
Подібним чином виконують третій і
четвертий кроки. Ключ
повенин
бути виготовлений так. щоб при повороті
прорізані у ключі клітинки попали
на вільні клітинки аркуша і в жодному
разі не наклалися на клітинки,
заповнені на попередніх
кроках В результаті після четвертого
кроку всі к2
літер
блоку будуть розміщені в деякому порядку
у квадраті к
на
k.
Зчитавши
їх рядками, отримують криптотекст.
Завдання.
Програмно реалізувати шифр Кардано для різних алфавітів.
Закриптувати текст з ключем секрет:
"Асоціативна машина має розвинуті ресурси для паралельного опрацювання масивів даних"
Лабораторна робота № 17
Тема: Шифр одноразового блокноту. Шифрування.
Мета: Отримати навички реалізації шифру одноразового блокноту.
Теоретичні відомості.
При передачі інформації сучасними засобами зв'язку зручніше подавати її у цифровій формі. Для цього кожен символ тексту замінюється його номером у алфавіті (нумерація починається з 0). Зокрема, слово номер буде подано як 17 18 16 06 20 . Номери букв можна записати в двійковій формі: слово номер перетвориться у 010001 010010 010000 000110 010100 - кожен блок із шести цифр є номером відповідної букви. Така форма подання тексту називається двійковою.
Шифр одноразового блокноту був запропонований у 1917 році Гілбертом Вернамом. Він використовує операцію додавання бітів за модулем 2, яка задається так:
0
0
= 0;0
1
= 1;1
0=1;
1
1 =0
Цю операцію поширимо на
двійкові слова однакової довжини. Для
двійкових
слів X
та
Y
результат
їх побітового додавання позначатимемо
як
.
Легко
перевірити, що для двійкових слів X,
Y,Z
однакової
довжини справджуються
рівності X
Y=Y
X
та
(X
Y)
Z=X
(Y
Z).
Також
очевидно, що для будь-якого
двійкового слова
X
виконуються
рівності А
0=А,
Х
Х=0.
Перед шифруванням повідомлення М записують у двійковій формі. Ключем К служить довільне двійкове слово однакової з М довжини. Криптотекст С отримують побітовим додаванням повідомлення і ключа, тобто С=М К.
Перед шифруванням потрібно вилучити з тексту розділові знаки та перевести букви з верхнього регістру в нижній.
Завдання.
1. Програмно реалізувати шифр одноразового блокноту для різних алфавітів.
2. Закриптувати текст з ключем алгоритм:
"Поняття алгоритму в математиці таке ж давнє і фундаментальне, як, скажімо, поняття числа. Наприклад, алгоритмові Евкліда не менш як двадцять дві сотні років''.