Математичне моделювання в машинобудуванні
Практичні розрахунки в шифруваннях Rsa: ключове покоління та шифрування повідомлень
Table of Contents
RSA шифрування є широко використовуваним методом забезпечення цифрового зв'язку. Він передбачає створення пари ключів і використання їх для шифрування та розшифрування повідомлень. Розуміння практичних обчислень за допомогою RSA допомагає в грасуванні, як підтримується безпека даних.
Процес генерації ключів
Перший крок у РДА вибирає дві великі цифри, як правило, не позначені як р і q. Ці прем'єри використовуються для обчислення модуля n, що входить до складу публічних і приватних ключів.
Розрахунок n шляхом розмноження p і q: n = p × q. Потім, обчислити функцію тотенсива Euler, φ(n) = (p - 1) × (q - 1). Вибір шифрування exponent e, який є співпримом з φ(n) є важливим. Загальні вибірки для e включають 3 або 65537.
Приватний ключ, що розширюється, як модульний інверс е модуло φ(n). Це означає рішення для d в рівняння: d × e ≡ 1 (mod φ(n)).
Шифрування повідомлень та розшифрування
Щоб зашифрувати повідомлення, перетворюйте його в числовий формат м, де 0 ≤ m < n. Тефертекст c потім комп'ютерно за допомогою публічного ключа (n, e): c = m^e мод n.
Дешифрування передбачає використання приватного ключа, щоб відновити оригінальне повідомлення: m = c^d мод n. Цей процес забезпечує, що тільки хтось з приватним ключем може розшифрувати повідомлення.
Приклад практичного розрахунку
Насадка p = 61 і q = 53. Розрахунок n = 61 × 53 = 3233. Потім φ(n) = (61 - 1) × (53 - 1) = 60 × 52 = 3120. Виберіть e = 17, який є співприємністю з 3120.
Знайдіть д-подібний, що d × 17 ≡ 1 (mod 3120). Значення d є 2753. Публічний ключ (n=3233, e=17), а приватний ключ (n=3233, d=2753).
Для шифрування повідомлення m = 65, компute c = 65^17 мод 3233, що призводить до c = 2790. Для розшифрування, компрамент m = 2790^2753 мод 3233, що дає оригінальне повідомлення 65.