Лабораторна робота №3
Побудова несиметричних систем шифрування і дослідження особливостей геш-функцій
1 Мета роботи.
Вивчити особливості сучасних блокових несиметричних шифрів. Вивчити режими застосування несиметричних шифрів для забезпечення конфіденційності даних. Одержати практичні навики по побудові систем забезпечення конфіденційності даних та геш-функцій.
2 Методичні вказівки для самостійної роботи.
При підготовці до лабораторної роботи необхідно:
- повторити вимоги до несиметричних блочних шифрів;
- повторити алгоритми зашифрування, розшифрування та розгортання ключів, що реалізовані в стандарті RSA та Ель-Гамаля;
- вивчити особливості сучасних блокових несиметричних шифрів;
- вивчити особливості сучасних геш-функцій.
3. Порядок виконання роботи
3.1. Несиметрична система шифрування RSA
Програма RSA проводить шифрування довільного відкритого тексту за допомогою алгоритму RSA.
Програма проводить шифрування за відкритим ключем, а розшифрування за секретним ключем. Шифрується послідовність чисел, які відокремлюються знаком „;”, при цьому можливе завантаження звичайного тексту з файлу з наступною конвертацією у послідовність чисел (при конвертації використовується таблиця ASCII).
Вікно програми складається з наступних частин:
-поле параметрів закритого та відкритого ключів;
-поле введення тексту для шифрування (може містити будь-який текст, для заповнення не обов’язкове);
-поле початкової числової послідовності („Числовая последовательность”);
-поле кінцевої числової послідовності („Числовая последовательность”);
1. Згідно з варіантом завдання розрахувати секретний ключ алгоритму RSA.
2. Генерувати ключову пару за допомогою програми RSA. Для цього необхідно виконати наступні дії:
- Ввести два випадкових простих числа (поля „p” та „q”);
- Вибрати число Е зі списку;
3. Порівняти розраховані та отримані ключі. Зробити висновки.
3.2. Несиметрична система шифрування Ель-Гамаля
Програма ElGamal проводить шифрування довільного відкритого тексту за допомогою алгоритму Ель-Гамаля.
Програма проводить шифрування за відкритим ключем, а розшифрування за секретним ключем. Шифрується послідовність чисел, які відокремлюються знаком „;”, при цьому можливе завантаження звичайного тексту з файлу з наступною конвертацією у послідовність чисел (при конвертації використовується таблиця ASCII).
Вікно програми складається з наступних частин:
- поле параметрів закритого та відкритого ключів;
- поле введення тексту для шифрування (може містити будь-який текст, для заповнення не обов’язкове);
- поле початкової числової послідовності („Числовая последовательность”);
- поле кінцевої числової послідовності („Числовая последовательность”);
1. Згідно з варіантом завдання розрахувати секретний ключ алгоритму Ель-Гамаля.
2. Генерувати ключову пару за допомогою програми ElGamal. Для цього необхідно виконати наступні дії:
- Ввести випадкове просте число (поле „p”);
- Ввести числа g та x;
3. Порівняти розраховані та отримані ключі.
4. Провести шифрування та розшифрування заданого тексту.
Для конвертації тексту у числа:
- Ввести текст у поле „Открытый текст”;
- Натиснути кнопку „Перевести в числа”;
Для шифрування необхідно виконати наступні дії:
- Ввести числову послідовність, або отримати її з тексту;
- Генерувати ключову пару;
- Натиснути кнопку „Зашифровать”;
Для розшифрування необхідно виконати наступні дії:
- Ввести числову послідовність, отриману при шифруванні;
- Генерувати ключову пару, яка використовувалася при шифруванні;
- Натиснути кнопку „Расшифровать”;
- Якщо відкритий текст був отриманий при конвертації звичайного тексту у числову послідовність, натиснути на кнопку „Перевести в текст”.
5. Зробити висновки.
3.3. Геш-функція
Програма Hash обчислює геш-функцію повідомлення.
Вікно програми складається з наступних частин:
- поле початкового значення геш-функції;
- поле секретних параметрів;
- поле, у якому відображається алфавіт;
- поле для введення тексту повідомлення;
- таблиця, у якій відображуються всі ітерації алгоритму гешування;
- поле, у якому відображається значення геш-функції;
1. Згідно з варіантом завдання розрахувати геш-функцію.
2. Обчислити геш-функцію за допомогою програми Hash.
Для обчислення геш-функції необхідно виконати наступні дії:
- Ввести початкові параметри геш-функції;
- Обрати алфавіт, чи ввести новий;
- Ввести повідомлення або завантажити його з файлу;
- Натиснути кнопку „Вычислить хэш” для обчислення геш-функції;
3. Порівняти розраховані та отримані геш-функції. Зробити висновки.
4. Зміст звіту.
Звіт повинен містити:
– мету досліджень і програму роботи;
– розрахунки згідно програми роботи;
– процедури, що реалізовують зашифрування-розшифрування та обчислення геш-функції.
– висновки.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.