Изменения

Перейти к: навигация, поиск

Сетевая безопасность

8 байт добавлено, 01:34, 20 декабря 2016
Нет описания правки
RSA-ключи генерируются следующим образом:
# Выбираются два различных простых числа <tex>p</tex> и <tex>q</tex> заданного размера (например, 1024 бита каждое).
# Вычисляется их произведение <tex>n = p \dot cdot q</tex>, которое называется модулем.# Вычисляется значение функции Эйлера от числа <tex>n</tex>: <tex>\phi (n) = (p - 1) \dot cdot (q - 1)</tex>.
# Выбирается целое число <tex>e</tex> <tex>(1 < e < \phi (n))</tex>, взаимно простое со значением функции <tex>\phi (n)</tex>. Обычно в качестве <tex>e</tex> берут простые числа, содержащие небольшое количество единичных бит в двоичной записи, например, простые числа Ферма <tex>17</tex>, <tex>257</tex> или <tex>65537</tex>. Число <tex>e</tex> называется открытой экспонентой.
# Выбирается число <tex>d</tex>, мультипликативно обратное к числу <tex>e</tex> по модулю <tex>\phi (n)</tex>, то есть число, удовлетворяющее сравнению: <tex>d \dot cdot e \equiv 1 (mod \ \phi (n))</tex>. Число <tex>d</tex> называется секретной экспонентой.
# Пара <tex>\{e, n\}</tex> публикуется в качестве открытого ключа RSA.
# Пара <tex>\{d, n\}</tex> играет роль закрытого ключа RSA и держится в секрете.
Теперь, чтобы зашифровать сообщение <tex>m</tex>, нужно посчитать <tex>c = m^{e} \ mod \ n</tex>, а чтобы расшифровать - <tex>m = c^{d} \ mod \ n</tex>. Однако такая схема не используется на практике по причине того, что она не является практически надежной, так как односторонняя функция является детерминированной. Чтобы избежать такого, используют сеансовый ключ. С помощью RSA шифрования собеседники обмениваются симметричными ключами сессии, и дальше уже общаются с их помощью.
333
правки

Навигация