ВИВЧЕННЯ ТА ДОСЛІДЖЕННЯ АЛГОРИТМІВ ШИФРУВАННЯ РЮКЗАКА

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

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

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

Рік:
2013
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Криптографічні системи та протоколи

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» ІКТА кафедра БІТ З В І Т до лабораторної роботи №4 з курсу: «КРИПТОГРАФІЧНІ СИСТЕМИ ТА ПРОТОКОЛИ» на тему: «ВИВЧЕННЯ ТА ДОСЛІДЖЕННЯ АЛГОРИТМІВ ШИФРУВАННЯ РЮКЗАКА» Мета роботи – навчитися практично використовувати алгоритми шифрування рюкзака і розробляти програмне забезпечення для реалізації цих алгоритмів. Завдання 1) Ввести в комп'ютер програми згідно із завданням. 2) Відлагодити програми. При необхідності скоригувати блок-схеми алгоритмів та програми у відповідності з виявленими логічними та синтаксичними помилками. 3) Остаточні версії блок-схем, програм та отримані результати оформити у звіті з лабораторної роботи. 4) Здати звіт з лабораторної роботи. Блок-схеми алгоритмів class Program void Main( ) class Knapsack () void Decipher () void Encipher () ні так Остаточна версія програми using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Lab_4_Kre { class Program { static void Main(string[] args) { Knapsack K = new Knapsack(); K.Encipher(); Console.ReadLine(); K.Decipher(); Console.ReadLine(); } } class Knapsack { public int i, h = 0, sum = 0, c = 11, k; public bool flag = true; int n = 23, m = 49; int n_inv = 2, bufr; public void Encipher() { string ptext = " Embrace life, always wear your seat belt"; int[] Key = new int[] { 1, 3, 7, 10, 13, 16, 19, 21, 26, 30, 34, 38 }; Console.WriteLine("------------------------------Knapsack cipher----------------------------\nENCODE\nEnter your plaintext : " + ptext); ptext.ToArray(); Console.Write("\nEnter your public key : "); for (int i = 0; i < Key.Length; i++) { Console.Write(Key[i] + " "); } for (int i = 0; i < Key.Length; i++) { Key[i] *= n; while (Key[i] - m > 0) { Key[i] -= m; } } Console.ReadLine(); Console.Write("\n\nYour private key : "); for (int i = 0; i < Key.Length; i++) { Console.Write(Key[i] + " "); } string[] Bin = new string[ptext.Length]; int[] Cipher = new int[ptext.Length]; for (i = 0; i < Bin.Length; i++) { Bin[i] = Convert.ToString(Convert.ToChar(ptext[i]) - 97, 2); } while (h < Bin.Length) { c = 11; for (int i = Bin[h].ToArray().Length - 1; i > -1; i--) { Cipher[h] += Convert.ToInt32(Convert.ToString(Bin[h].ToArray()[i])) * Key[c]; if (c > 1) { c--; }; } h++; } Console.ReadLine(); Console.Write("\nYour ciphertext : "); for (int y = 0; y < Cipher.Length; y++) { Console.Write(Cipher[y] + " "); } } public void Decipher() { while (n_inv != 1) { n_inv = n * n_inv; while (bufr - m > 0) { bufr -= m; } n_inv++; } Console.WriteLine("\n" + n_inv); } } } Результат роботи програми 
Антиботан аватар за замовчуванням

31.05.2014 14:05-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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