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

Лабораторна робота №2

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

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

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

Рік:
2024
Тип роботи:
Лабораторна робота
Предмет:
Проектування систем захисту інформації

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

Міністерство освіти і науки Національний університет „Львівська політехніка” Кафедра ЕОМ  Лабораторна робота №2 з дисципліни: “Проектування засобів захисту інформації в комп'ютерних системах та мережах” на тему: “Формування цифрового підпису згідно стандарту DSS” Львів 2017 Мета: Реалізувати програму формування цифрового підпису вхідного повідомлення згідно стандарту DSS. Теоретичні відомості Вимоги до цифрового підпису Аутентифікація захищає двох учасників, які обмінюються повідомленнями від втручання деякої третьої сторони. Зазвичай проста аутентифікація не захищає учасників один від одного, оскільки між самими учасниками можуть виникати певного роду спори. Наприклад, припустимо, що Роман посилає Андрію аутентифіковане повідомлення, аутентифікація здійснюється на основі спільного секретного ключа. Розглянемо можливі непорозуміння, які можуть при цьому виникати: 1. Андрій може підробити повідомлення і стверджувати, що воно прийшло від Романа. Для цього достатньо просто створити повідомлення і приєднати код аутентифікації, використовуючи спільний ключ. 2. Роман може відправити повідомлення Андрію, а потім спокійно заперечувати факт передачі цього повідомлення. Оскільки Андрій може підробити повідомлення, то він не зможе довести, що Роман дійсно відправляв повідомлення. У випадку, коли обидві сторони не довіряють один одному, необхідно дещо більше, ніж аутентифікація на основі спільного секрету. Можливим вирішенням подібної проблеми є використання цифрового підпису. Цифровий підпис має наступні властивості: 1. Забезпечує можливість перевірки автора, дати та часу формування підпису. 2. Забезпечує можливість аутентифікації вмісту повідомлення під час формування підпису. 3. Підпис перевіряється третьою стороною для розв’язання спорів. Таким чином, функція цифрового підпису включає функцію аутентифікації. На основі цих властивостей можна сформулювати наступні вимоги до цифрового підпису: 1. Підпис повинен бути бітовим об'єктом, що залежить від підписаного повідомлення. 2. Підпис повинен містити деяку унікальну інформацію відправника для запобігання підробки або відмови. 3. Алгоритм формування цифрового підпису має бути достатньо простим. 4. Підпис повинен легко перевірятися. 5. Підробка цифрового підпису шляхом створення нового повідомлення для існуючого цифрового підпису або створення фальшивого цифрового підпису для деякого повідомлення має бути неможливою. 6. Цифровий підпис повинен бути достатньо компактним і не займати багато пам’яті. Для реалізації систем цифрового підпису використовують поєднання сильних хеш-функцій та асиметричних криптосистем. Завдання: в ході роботи необхідно засвоїти основні принципи побудови алгоритмів формування цифрових підписів повідомлень, розробити демонстраційну програму формування цифрового підпису вхідного повідомлення згідно стандарту DSS. Текст програми: import java.awt.Color; import java.awt.Container; import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.nio.ByteBuffer; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JTextArea; import javax.swing.SwingConstants; @SuppressWarnings("serial") public class DSA extends JFrame implements ActionListener { JButton jButtonCalc = new JButton("Calculate"); JButton jButtonEnter = new JButton("Form"); JButton jButtonClear = new JButton("Reset"); JButton jButtonCheck = new JButton("Verify"); JLabel jLabel1, jLabel2, jLabel3, jLabel4, jLabel5, jLabel6, jLabel7; JTextArea jTextMessage, jTextOutput, jTextSecretKey; long q = 0, P = 0, G = 0, k = 0, X = 0, Y = 0, r = 0, s = 0, m = 0, u1 = 0, u2 = 0, v = 0, w = 0; byte[] mHex; int j, temp; int A, B, C, D, E; int[] H = { 0x67452301, 0xEFCDAB89, 0x98BADCFE, 0x10325476, 0xC3D2E1F0 }; int F; @SuppressWarnings("deprecation") public DSA() { super("DSA"...
Антиботан аватар за замовчуванням

15.02.2018 20:02

Коментарі

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

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

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

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

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

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

Admin

26.02.2019 12:38

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

Новини