Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

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

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

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

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

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ ТА НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» / ЗВІТ до лабораторної роботи №1 з курсу: «Криптографія і стеганографія» Мета роботи: дослідити метод матричного обходу,виявити його переваги і недоліки і написати програму для за шифрування і розшифрування повідомлень даним методом Короткі теоретичні відомості Матричний шифр обходу. Повідомлення записується рядками у вигляді прямокутної матриці. Криптотекст формується зчитуванням букв із матриці у зміненому порядку, а саме, стовпчиками. При цьому послідовність, у якій зчитуються стовпчики, визначається ключем. Було поширеним задання ключа у вигляді ключового слова, що легко запам’ятовувалось. Порядок зчитування стовпчиків збігався з алфавітним порядком букв ключового слова. «FXADFAXGVAGXXGGFXGADAVAVXGGFFFFFXGADDAADVXVXADFD». Нехай ключове слово є «GARDEN». Тепер застосуємо до отриманого текстуматричний шифр обходу: 4 1 6 2 3 5 G A R D E N F X A D F A X G V A G X X G G F X G A D A V A V X G G F F F F F X G A D D A A D V X V X A D F D Тепер, зчитуючи стовпці отриманої матриці відповідно зі старшинством букв ключового слова і розбиваючи текст на блоки, отримуємо остаточно шифротекст: «XGGDG FAXDA FVFGD DFGXA FAVFF XXAXF DVAXG VFDXD AVGAG XAA». Алгоритм методу    Код програми using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; namespace Lab1__AutoKey_ { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void openToolStripMenuItem_Click(object sender, EventArgs e) { try { FileStream fs = null; OpenFileDialog ofd = new OpenFileDialog(); ofd.InitialDirectory = "c:\\"; ofd.Filter = "txt (*.txt)|*.txt|All files (*.*)|*.*"; ofd.FilterIndex = 1; ofd.RestoreDirectory = true; if (ofd.ShowDialog() == DialogResult.OK) { try { fs = new FileStream(ofd.FileName, FileMode.Open); } catch (FileNotFoundException ex) { MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } fs.Close(); textBox_input.Text = File.ReadAllText(ofd.FileName, Encoding.ASCII); } } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void exitToolStripMenuItem_Click(object sender, EventArgs e) { Application.Exit(); } private void encryptToolStripMenuItem_Click(object sender, EventArgs e) { int row, column; string text = textBox_input.Text; string open_txt = text.Replace(" ", ""); char[] open_txt_chars = open_txt.ToCharArray(); text = textBox_key.Text; char[] key = text.ToCharArray(); char[] sorted_key = new char[key.Length]; Array.Copy(key, sorted_key, key.Length); Array.Sort(sorted_key); ...
Антиботан аватар за замовчуванням

18.09.2013 12:09

Коментарі

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

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

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

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

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини