DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Лабораторна робота №5: Шифр Віженера

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

ВУЗ:
Івано Франківський національний технічний університет нафти і газу
Інститут:
ООП
Факультет:
Факультет інформаційних технологій та комп ютерної інженерії
Кафедра:
Не вказано

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

Рік:
2011
Тип роботи:
Лабораторна робота
Предмет:
Криптографія
Група:
КН
Коротко про документ

Про що ця робота

У роботі досліджено структуру алгоритму та методику практичної реалізації криптосистеми шифрування Віженера. Складено програми шифрування, дешифрування та криптоаналізу за допомогою C#.

У роботі розглядаються

  • Криптографія
  • Шифр Віженера
  • Програмування на C#
  • Захист інформації
  • Криптоаналіз
  • Алгоритми шифрування

Зміст і розділи

  1. Мета роботи
  2. Порядок виконання роботи
  3. Хід роботи
  4. Код програми шифратора
  5. Код програми дешифратора
  6. Результат виконання програм
  7. Висновок
Для кого:Студенти технічних спеціальностей та вищих навчальних закладів
Викладачі:Не вказано

Ключові поняття

шифр ВіженеракриптосистемакриптоаналізшифруваннядешифруванняалгоритмC#програмний кодключфайл

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

Міністерство освіти і науки України ІФНТУНГ Кафедра КСМ Лабораторна робота №5 ШИФР ВІЖЕНЕРА Мета роботи: дослідження структури алгоритма і методики практичної реалізації криптосистеми шифрування Віженера. ПОРЯДОК ВИКОНАННЯ РОБОТИ Скласти блок схему алгоритму шифрування-дешифрування тексту кодом Віженера. Написати відповідні програми. Написати програму криптоаналізу зашифрованого файлу, вважаючи, що ключ шифрування невідомий, але частково відомий вміст зашифрованого файлу. Порівняти знайдений програмою ключ із ключем, яким був зашифрований вихідний файл. Хід роботи: Код програми шифратора: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication40 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } class Shifr { char[] abetka = new char[33]; public string kod; public Shifr() { abetka[0] = 'a'; abetka[1] = 'b'; abetka[2] = 'c'; abetka[3] = 'd'; abetka[4] = 'e'; abetka[5] = 'f'; abetka[6] = 'g'; abetka[7] = 'h'; abetka[8] = 'i'; abetka[9] = 'j'; abetka[10] = 'k'; abetka[11] = 'l'; abetka[12] = 'm'; abetka[13] = 'n'; abetka[14] = 'o'; abetka[15] = 'p'; abetka[16] = 'q'; abetka[17] = 'r'; abetka[18] = 's'; abetka[19] = 't'; abetka[20] = 'u'; abetka[21] = 'v'; abetka[22] = 'w'; abetka[23] = 'x'; abetka[24] = 'y'; abetka[25] = 'z'; } public string Kod(string text, string k) { int key = 0; for (int i = 0; i < text.Length; i++) { if (text[i] == ' ') kod +=" " ; for (int j = 0; j < 26; j++) if (text[i] == abetka[j]) { if (key > k.Length - 1) key = 0; int a = (text[i] + k[key]) % 97; if (a < 26) kod += abetka[a]; else kod += abetka[a%26]; key++; } } return kod; } } private void button1_Click(object sender, EventArgs e) { string text = richTextBox1.Text.ToLower(); Shifr koder = new Shifr(); richTextBox2.Text= koder.Kod(text, textBox1.Text); } } } Код програми дешифратора: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication40 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } class Shifr { char[] abetka = new char[33]; public string kod; public Shifr() { abetka[0] = 'a'; abetka[1] = 'b'; abetka[2] = 'c'; abetka[3] = 'd'; abetka[4] = 'e'; abetka[5] = 'f'; abetka[6] = 'g'; abetka[7] = 'h'; abetka[8] = 'i'; abetka[9] = 'j'; abetka[10] = 'k'; abetka[11] = 'l'; abetka[12] = 'm'; abetka[13] = 'n'; abetka[14] = 'o'; abetka[15] = 'p'; abetka[16] = 'q'; abetka[17] = 'r'; abetka[18] = 's'; abetka[19] = 't'; abetka[20] = 'u'; abetka[21] = 'v'; abetka[22] = 'w'; abetka[23] = 'x'; abetka[24] = 'y'; abetka[25] = 'z'; } public string Dekod(string text, string k) { int key = 0; for (int i = 0; i < text.Length; i++) { if (text[i] == ' ') i++; for (int j = 0; j < 26; j++) if (text[i] == abetka[j]) { if (k[key] == ' ' || k[key] == 32) key++; if (key > k.Length - 1) key = 0; int a = (text[i] - k[key]) % 97; if (a > -1) kod += abetka[a]; else kod += abetka[a + 26]; key++; } } return kod; } } private void button1_Click(object sender, EventArgs e) { string text = richTextBox2.Text.ToLower(); Shifr koder = new Shifr(); textBox1.Text= koder.Dekod(text, richTextBox1.Text); } } } Результат виконання програм:  Висновок: На даній лабораторній роботі я дослідив структуру алгоритма і методику практичної реалізації криптосистеми шифрування Віженера. .
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

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

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

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

Admin

26.02.2023 12:38

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