- •1. Вступ. Задачі криптографії
- •2. Основні поняття і положення комп’ютерної криптографії
- •3. Принципи криптографічного захисту інформації
- •4. Криптоаналітичні атаки. Їх види.
- •Шифр Скитала. Шифруючі таблиці.
- •Шифр магічних квадратів
- •Полібіанський квадрат
- •Шифр Цезаря. Шифр Цезаря з ключовим словом
- •9. Шифруючі таблиці Трисемуса
- •Біграмний шифр Плейфейра
- •11. Подвійний квадрат Уінстона
- •14. Шифр Гронсфельда. Шифр Гронсфельда з ключовим словом.
- •15. Шифр Віженера. Шифр Віженера з відкритим ключем.
- •16. Роторні шифрувальні машини
- •17. Шифр одноразового блокноту
- •18. Структура алгоритму des. Його переваги та недоліки.
- •19. Операції алгоритму des
- •20. Функція шифрування алгоритму des
- •Режим "Електронна кодова книга"
- •Режим "Зчеплення блоків шифру"
- •Режим "Обратная связь по шифру"
- •Режим "Зворотний зв'язок по виходу"
- •29 Структура алгоритму idea. Його переваги та недоліки.
- •30 Операції алгоритму idea. Генерація підключів флгортму idea.
- •31 Загальна структура алгоритму гост28147-89. Його переваги та недоліки. Операції алгоритму гост28147-89. Генерація підключів алгоритму idea.
- •32 Режими роботи алгоритму гост 28147-89: проста заміна, гамування, гамування з зворотнім звязком, вироблення імітовставки
- •34 Основні поняття та арифметика асиметричних криптосистем.
- •35 Алгоритм Евкліда, його наслідок, пошук оберненого елемента, китайська теорема про остачі.
- •Опис криптосистеми rsa
- •38. Генерування ключів в криптосистемы rsa
- •39. Шифрування і Дешифрування в криптосистемы rsa
- •44. Генерування ключів в криптосистемі Рабіна
- •46. Криптосистема Ель-Гамаля
- •47. Шифрування і Дешифрування Криптосистеми Ель-Гамаля
- •49. Електронний цифровий підпис
- •50. Електронний цифровий підпис в системах rsa і Ель-Гамаля
- •51. Алгоритм dsa
- •54. Криптографічний протокол
- •55. Криптоаналіз та частотний аналіз
35 Алгоритм Евкліда, його наслідок, пошук оберненого елемента, китайська теорема про остачі.
Опис криптосистеми rsa
Відомим прикладом криптосистеми з відкритим ключом (асиметричної криптосистеми) є криптосистема RSA, розроблена в 1977 році і отримала назву в честь її творців: Рівеста, Шаміра й Ейдельмана [62].
RSA став першим алгоритмом придатним і для шифрування і для цифрового підпису. Безпека алгоритму RSA побудована на принципі складності
факторизації [42]. Алгоритм використовує два ключі — відкритий (public) і секретний (private), разом відкритий і відповідний йому секретний ключі утворюють пари ключів (keypair). Відкритий ключ не потрібно зберігати в таємниці, він використовується для шифрування даних. Якщо повідомлення було зашифровано відкритим ключом, то розшифрувати його можна тільки відповідним секретним ключом.
Для того, щоб згенерувати пари ключів виконуються такі дії:
1. Вибираються два великих простих числа p і q .
Для знаходження двох великих простих чисел p і q , при генерації ключа, звичайно використовуються імовірнісні тести чисел на простоту, які дозволяють швидко виявити й відкинути складні числа.
Для генерації p і q необхідно використовувати криптографічно надійний генератор випадкових чисел. У порушника не має бути можливості одержати будь-яку інформацію про значення цих чисел. p і q не повинні бути занадто близькими одне до одного, інакше можна буде знайти їх використовуючи метод факторизації Ферма [52]. Крім того, необхідно вибирати «сильні» прості числа, щоб не можна було скористатися p-1 алгоритмом Поларда.
2. Обчислюється їх добуток n . pq .
Число n повинно мати розмір не менше 512 біт. З 2007 року система шифрування на основі RSA вважається надійною, починаючи з величини n в 1024 біта.
3. Обчислюється Функція Ейлера.(n) . ( p .1)(q .1) .
4. Вибирається ціле e таке, що 1. e ..(n) та взаємно просте з .(n) .
5. За допомогою розширеного алгоритму Евкліда знаходиться число d таке, що ed .1(mod.(n)) .
Число n називається модулем, а числа e і d — відкритою й секретною експонентами, відповідно. Пари чисел (n,e) є відкритою частиною ключа, а (n,d) — секретною. Числа p і q після енерації пари ключів можуть бути знищені, але в жодному разі не повинні бути розкриті [10].
38. Генерування ключів в криптосистемы rsa
Алгоритм шифрування RSA. Алгоритм шифрування RSA відноситься до криптографічних систем із відкритим ключем. Криптосистеми з відкритим ключем (асиметричні криптосистеми) були розроблені в другій половині семидесятих років. В асиметричних криптосистемах процедури прямого і зворотнього криптоперетво-рення виконуються на різних ключах і не мають між собою очевидних і легковідсліджуваних зв 'язків, що дозволяють за одним ключем визначити інший. В такій схемі знання тільки ключа зашифрування не дозволяє розшифрувати повідомлення, тому він не є секретним елементом шифру і зазвичай публікується учасником обміну для того, щоб будь-хто бажаючий міг послати йому зашифроване повідомлення.
Алгоритм RSA складається з трьох частин: генерування ключів, шифрування і дешифрування.
Генерування ключів. Оберемо два великих різних простих числа p і q (Натуральне число називається простим, якщо воно ділиться тільки на себе і на 1. Додаток В.) та знайдемо їх добуток
Обчислимо функцію Ейлера за формулою:
Таємний ключ добираємо з умов: і в заємно просте з
тобто d\j(n) не мають спільних дільників. Відкритий ключ є обираємо з умов:
Остання умова означає, що різниця де - 1 повинна ділитись на j(n) без залишку. Для визначення числа є слід підібрати таке число к, що:
В алгоритмі RSA (є, п)- відкритий ключ, (d,n)-секретний ключ.