DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

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

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

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

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

Рік:
2013
Тип роботи:
Лабораторна робота
Предмет:
Інші

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

Міністерство освіти і науки, молоді та спорту України ІФНТУНГ Кафедра КСМ Лабораторна робота №7 ДОСЛІДЖЕННЯ КРИПТОАЛГОРИТМУ ШИФРУВАННЯ RSA 2011 р. Мета роботи: дослідження структури алгоритму і методики практичної реалізації криптосистеми шифрування RSA ПОРЯДОК ВИКОНАННЯ РОБОТИ 1 Розробити алгоритм для кодування та написати програму кодування з ключем k[0]-k[3] (використання 4-х ключів обумовлено тим, що для кодування другої половини даних (Z) використовуються ключі k[2] та k[3] для підвищення стійкості криптоалгоритму кодування), для даних, що знаходяться в z, y. Параметри: Довжина ключа - 128 біт Кількість ітерацій – 16 (кожна ітерація включає в себе 2 раунди). 2 На основі алгоритму кодування розробити алгоритм для декодування та написати програму декодування даних на будь-якій із мов програмування. Порядок виконання роботи відповідає наведеній нижче криптосистемі шифрування даних за схемою RSA. Код програми: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Numerics; using System.Windows.Forms; namespace WindowsFormsApplication45 { public partial class Form1 : Form { private string kod; public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Random rnd = new Random(); BigInteger p = new BigInteger(61); Console.WriteLine("p = " + p); BigInteger q = new BigInteger(53); Console.WriteLine("q = " + q); BigInteger n = p * q; BigInteger fi = (p - 1) * (q - 1); BigInteger e1 = new BigInteger(17); Console.WriteLine("e = " + e); BigInteger d = e1.modInverse(fi); Console.WriteLine("d = " + d); List<BigInteger> original = new List<BigInteger>(); List<BigInteger> encripted = new List<BigInteger>(); List<BigInteger> decripted = new List<BigInteger>(); foreach (char c in richTextBox1.Text) original.Add(new BigInteger((int)c)); Console.WriteLine("Шифр:"); for (int ii = 0; ii < original.Count; ii++) { encripted.Add(original[ii].modPow(e1, n)); richTextBox2.AppendText(encripted[ii].ToString()); } for (int ii = 0; ii < original.Count; ii++) { decripted.Add(encripted[ii].modPow(d, n));} int ll; StringBuilder decripted_text = new StringBuilder(); foreach (BigInteger x in decripted) { ll = Convert.ToInt32(x.ToString()); decripted_text.Append((char)ll); } richTextBox3.AppendText(decripted_text.ToString()); } } private void button2_Click(object sender, EventArgs e) { richTextBox1.Text = Decrypt(kod, textBox1.Text); } } } Результат:  Висновок: На даній лабораторній роботі я дослідила дослідити роботу криптоалгоритму шифрування RSA. .
Антиботан аватар за замовчуванням

08.04.2013 00:35

Коментарі

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

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

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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