Перестановочний алгоритм

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
О
Факультет:
КН
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2024
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Захист інформації в комп’ютерних системах

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки Національний університет «Львівська політехніка» Кафедра ЕОМ Звіт до лабораторної роботи № 2 з дисципліни: “ Захист інформації в комп’ютерних системах ” на тему: Перестановочний алгоритм ПЕРЕСТАНОВОЧНИЙ АЛГОРИТМ Мета: ознайомитись з основами класичної техніки шифрування – перестановочними шифрами. ТЕОРИТИЧНІ ВІДОМОСТІ: Алгоритм перестановки ґрунтувався на заміщенні символів відкритого тексту різними символами шифрованого тексту. Принципово інший клас перетворень будується на використанні перестановок букв відкритого тексту. Шифри, створені за допомогою перестановок, називають перестановочними шифрами. Більш складна схема припускає запис тексту повідомлення в горизонтальні рядки однакової довжини та наступне зчитування тексту стовпець за стовпцем, але не один за одним, а відповідно до деякої перестановки стовпців. Порядок зчитування стовпців при цьому стає ключем алгоритму. Простий перестановочний шрифт дуже легко розпізнати, тому що букви в ньому зустрічаються з тією же частотою, що й у відкритому тексті. Наприклад, для тільки що розглянутого способу шифрування з перестановкою стовпців аналіз шифру виконати досить просто - необхідно записати шифрований текст у вигляді матриці й перебрати можливі варіанти перестановок для стовпців. Можна використати також таблиці значень частоти біграм та триграм. Перестановочний шифр можна зробити більше захищеним, виконавши шифрування з використанням перестановок кілька разів. Виявляється, що в цьому випадку застосовану для шифрування перестановку відтворити вже не так просто. ЗАВДАННЯ Створити програму, що реалізує довільний перестановочний шифр. Початковий текст: Глова Юрій Іванович 2431 - ключ Закодований текст: ПгщАн Сфхг Пйнсогмс КОД ВИКОНАВЧОЇ ПРОГРАМИ: Файл(CesarCrypt.cs) namespace lab2 { class PermutationCrypt { string result = ""; // algorithm for encrypt public string Encrypt(string data, string key) { int lenght = key.Length; int height = data.Length / lenght; if (data.Length % lenght != 0) height++; char[,] mas = new char[lenght, height]; int pos = 0; // створення матриці for (int h = 0; h < height; h++) { for (int l = 0; l < lenght; l++) { if (data.Length > pos) mas[l, h] = data[pos++]; else mas[l, h] = ' '; } } // виконання перестановок for (int l = 0; l < lenght; l++) { for (int h = 0; h < height; h++) { result += mas[(key[l] - 0x0031), h]; } } return result; } // algorithm for decrypt public string Decrypt(string data, string key) { int lenght = key.Length; int height = data.Length / lenght; char[] result = new char[lenght * height]; // дешифрування for (int l = 0; l < lenght; l++) { for (int h = 0; h < height; h++) { result[(lenght * h) + (key[l] - 0x0031)] = data[height * l + h]; } } return new string(result); } } } ВИСНОВОК: На даній лабораторній роботі я оволодів навиками створення алгоритму шифрування – алгоритму перестановки. Даний алгоритм створено на мові C#.
Антиботан аватар за замовчуванням

22.03.2018 19:03-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!