302
правки
Изменения
RSA
,Нет описания правки
==Применение==
Система RSA используется для защиты программного обеспечения и в схемах цифровой подписи. Также она используется в открытой системе шифрования PGP и иных системах шифрования (к примеру, DarkCryptTC и формат xdc) в сочетании с симметричными алгоритмами. Наиболее используемым в настоящее время является смешанный алгоритм шифрования, в котором сначала шифруется сеансовый ключ, а потом уже с его помощью участники шифруют свои сообщения симметричными системами. После завершения сеанса сеансовый ключ, как правило, уничтожается. Алгоритм шифрования сеансового ключа выглядит следующим образом: [[Файл:Gg1.png|800px|center]] ===Шифрование===Алгоритм:* Взять ''открытый ключ'' <tex>(e,n)</tex> Алисы* Создать случайный ''сеансовый ключ'' <tex>m</tex>* Зашифровать сеансовый ключ с использованием открытого ключа Алисы:*: <tex>c = E(m) = m^e \mod n</tex>* Расшифровать сообщение <tex>C</tex> с помощью сеансового ключа симметричным алгоритмом:*:<tex>M_A = D_m(C)</tex> ===Расшифрование===Алгоритм:* Принять зашифрованный сеансовый ключ Боба <tex>c</tex>* Взять свой ''закрытый ключ'' <tex>(d,n)</tex>* Применить закрытый ключ для расшифровывания сеансового ключа:*: <tex>m = D(c) = c^d \mod n</tex>* Зашифровать сообщение <tex>M_A</tex> с помощью сеансового ключа симметричным алгоритмом:*:<tex>C = E_m(M_A)</tex> ==Плюсыи минусы==Алгоритм RSA намного медленнее, чем AES и другие алгоритмы, использующие симметричные блочные шифры. При неправильной или неоптимальной реализации или использовании алгоритма возможны специальные криптографические атаки, такие как атаки на схемы с малой секретной экспонентой или на схемы с общим выбранным значением модуля Из-за низкой скорости шифрования (около 30 кбит/с при 512 битном ключе на процессоре 2 ГГц), сообщения обычно шифруют с помощью более производительных симметричных алгоритмов со случайным сеансовым ключом (например, AES, IDEA, Serpent, Twofish), а с помощью RSA шифруют лишь этот ключ, таким образом реализуется гибридная криптосистема. ==См. также==Минусы* [[Классы_чисел]] ==Источники информации == * [https://en.wikipedia.org/wiki/RSA_(cryptosystem) RSA (cryptosystem)]* [https://ru.wikipedia.org/wiki/RSA RSA] [[Категория: Алгоритмы и структуры данных]][[Категория: Криптографические алгоритмы]]