Кожен учасник інформаційного обміну генерує пару ключів (відкритий і секретний) відповідно до таких правил:
1. Вибираються два великих простих цілих числа р і q приблизно однакового розміру. Вибір чисел р і q визначається такими міркуваннями:
- Збільшення порядку чисел веде до уповільнення операції зашифрування / розшифрування;
- Збільшення порядку чисел р і q веде до збільшення стійкості алгоритму, тому при виборі чисел слід керуватися практичною необхідністю. Так, наприклад, при реалізації RSA в інтелектуальних картках з точки зору швидкісних параметрів системи не слід вибирати дуже великі р і q у зв'язку з обмеженими обчислювальними можливостями, закладеними в цих пристроях. На практиці зазвичай рекомендується вибирати числа, що містять близько 150-200 десяткових знаків.
2. Обчислюється модуль системи n = pq і ф (п) = (р-l) (q - 1) - функція Ейлера.
3. Вибирається достатньо велике число е, що задовольняє умові 1 <е <ф (п), і взаємно просте з (р (п).
4. Використовуючи розширений алгоритм Евкліда, обчислюється велике ціле число d, що відповідає умові:
ed = 1 (mod
Таким чином, секретним ключем є пара чисел (n, d), а відкритим - пара чисел (п, е). Відкритий ключ міститься в загальнодоступний довідник (детально цей процес буде описано нижче). Відповідно до PKCS # +1 формат представлення ключів має такий вигляд:
criptogrof.ru Криптография: защита информации и информационная безопасность Карты сайта: 1 2 3 4
