Криптографічні системи та протоколи

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

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

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

Рік:
2013
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Інформаційні технології

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

Міністерство освіти і науки України Національний університет «Львівська Політехніка» Інститут комп’ютерних технологій автоматики та метрології Кафедра Безпеки Інформаційних Технологій  Звіт Про виконання лабораторної роботи № 2 “Криптографічні системи та протоколи” Львів 2012 Мета роботи: Навчитися розробляти програмне забезпечення для реалізації шифрів перестановки. Завдання: 1) Вивчити математичний апарат, який використовується в шифрах перестановки, а також принципи побудови матричного шифру обходу та шифру Кардано. 2) Скласти блок-схеми алгоритмів та програму для реалізації зашифрування та розшифрування відкритого тексту за допомогою шифру Кардано з періодом l=36, забезпечити зашифрування та розшифрування тексту(враховуючи усі розділові знаки). Блок-схема: Остаточна версія програми: private void runButtonActionPerformed(java.awt.event.ActionEvent evt) { if (codeRadio.isSelected()==true) { String inpt=this.inText.getText(); int len=inpt.length(); int lenn=len; if (len<36) lenn+=36-len; else if (len%36!= 0) lenn+=len%36; char [] inpn=inpt.toCharArray(); char [] inp= new char [lenn]; for(int i=0;i<36;i++) { if(i>len-1) inp[i]='a'; else inp[i]=inpn[i]; } char [] kod = new char[lenn]; kod[0]=inp[18]; kod[1]=inp[0]; kod[2]=inp[9]; kod[3]=inp[19]; kod[4]=inp[10]; kod[5]=inp[11]; kod[6]=inp[20]; kod[7]=inp[12]; kod[8]=inp[21]; kod[9]=inp[22]; kod[10]=inp[1]; kod[11]=inp[27]; kod[12]=inp[28]; kod[13]=inp[29]; kod[14]=inp[13]; kod[15]=inp[2]; kod[16]=inp[14]; kod[17]=inp[3]; kod[18]=inp[23]; kod[19]=inp[30]; kod[20]=inp[24]; kod[21]=inp[31]; kod[22]=inp[15]; kod[23]=inp[16]; kod[24]=inp[17]; kod[25]=inp[25]; kod[26]=inp[4]; kod[27]=inp[5]; kod[28]=inp[32]; kod[29]=inp[6]; kod[30]=inp[33]; kod[31]=inp[34]; kod[32]=inp[7]; kod[33]=inp[35]; kod[34]=inp[26]; kod[35]=inp[8]; String kodd = new String(kod); this.outText.setText(kodd); } else if (decodeRadio.isSelected()==true) { String inpt=this.inText.getText(); int len=inpt.length(); int lenn=len; if (len<36) lenn+=36-len; else if (len%36!= 0) lenn+=len%36; char [] inpn=inpt.toCharArray(); char [] inp= new char [lenn]; for(int i=0;i<36;i++) { if(i>len-1) inp[i]='a'; else inp[i]=inpn[i]; } char [] kod = new char[lenn]; kod[18]=inp[0]; kod[0]=inp[1]; kod[9]=inp[2]; kod[19]=inp[3]; kod[10]=inp[4]; kod[11]=inp[5]; kod[20]=inp[6]; kod[12]=inp[7]; kod[21]=inp[8]; kod[22]=inp[9]; kod[1]=inp[10]; kod[27]=inp[11]; kod[28]=inp[12]; kod[29]=inp[13]; kod[13]=inp[14]; kod[2]=inp[15]; kod[14]=inp[16]; kod[3]=inp[17]; kod[23]=inp[18]; kod[30]=inp[19]; kod[24]=inp[20]; kod[31]=inp[21]; kod[15]=inp[22]; kod[16]=inp[23]; kod[17]=inp[24]; kod[25]=inp[25]; kod[4]=inp[26]; kod[5]=inp[27]; kod[32]=inp[28]; kod[6]=inp[29]; kod[33]=inp[30]; kod[34]=inp[31]; kod[7]=inp[32]; kod[35]=inp[33]; kod[26]=inp[34]; kod[8]=inp[35]; String kodd = new String(kod); this.outText.setText(kodd); } // TODO add your handling code here: } Результати роботи програми:  Висновок: На даній лабораторній роботі я вивчив математичний апарат, який використовується в шифрах перестановки, а також принципи побудови матричного шифру обходу та шифру Кардано. Написав програму для за шифрування та розшифрування тексту методом Кардано.
Антиботан аватар за замовчуванням

21.01.2013 23:42

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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