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

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

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

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

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

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

МІНІСТЕРСТВО ОСВІТИ ТА НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» / ЗВІТ до лабораторної роботи №2 з курсу: «Криптографія і стеганографія» Мета роботи: дослідити метод матричного обходу,виявити його переваги і недоліки і написати програму для за шифрування і розшифрування повідомлень даним методом Короткі теоретичні відомості Лінійний шифр третього порядку Ключ: а таке, що 0 < а < п і НСД (а, п) = 1. Шифрування. У повідомленні кожна буква х заміщується буквою Е{х) = (ах) mod n. Дешифрування. У криптотексті кожна буква х' заміщується буквою D(x') = (a'x') mod п, де а' — a-1 mod n — дешифруючий ключ. Ключовий простір для лінійного шифру k-го порядку збігається з безліччю оборотних матриць k-го порядку над Z. Ця кількість оцінюється значенням узагальненої функції Ейлера: , де  Блок – схема    Код програми using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; namespace WindowsFormsApplication4 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } int[, ,] statM = new int[3, 3, 3]; int[, ,] MatrixMul; int[, ,] bla; int global_size2; int global_size; bool global_bool; private void Form1_Load(object sender, EventArgs e) { } private void button1_Click(object sender, EventArgs e) { int size = textBox5.Text.Length; global_size2 = size; char[] line = textBox5.Text.ToCharArray(); int num_rows; bool divide = false; if (size % 2 == 0) num_rows = size / 2; else { num_rows = size / 2 + 1; divide = true; } bla = new int[3, 3, num_rows]; int [, ,] text = new int[3, 3, num_rows]; global_size = num_rows; global_bool = divide; //To matrix int k = 0; for (int j = 0; j < num_rows; j++) { for (int i = 0; i < 3; i++) { for (int l = 0; l < 3; l++) { if (divide == true && k == size) break; text[l, i, j] = Convert.ToInt32(line[k]) - 1039; k++; } } } //multiplie statM[0, 0, 0] = Convert.ToInt32(textBox1.Text); statM[0, 0, 1] = Convert.ToInt32(textBox2.Text); statM[0, 1, 0] = Convert.ToInt32(textBox3.Text); statM[0, 1, 1] = Convert.ToInt32(textBox4.Text); statM[1, 0, 0] = Convert.ToInt32(textBox6.Text); statM[1, 0, 1] = Convert.ToInt32(textBox7.Text); statM[1, 1, 0] = Convert.ToInt32(textBox8.Text); statM[1, 1, 1] = Convert.ToInt32(textBox9.Text); statM[0, 0, 2] = Convert.ToInt32(textBox10.Text); MatrixMul = mulMatrix(statM, text); //to text; k = 0; for (int j = 0; j < num_rows; j++) { for (int i = 0; i < 3; i++) { for (int l = 0; l < 3; l++) { ...
Антиботан аватар за замовчуванням

18.09.2013 12:09

Коментарі

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

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

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

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

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

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

Admin

26.02.2019 12:38

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

Новини