Название RSA было создано из инициалов его соучредителей, Рона Ривеста, Ади Шамира и Леонарда Адлемана,
после чего также был назван алгоритм шифрования открытого ключа RSA.
Они разработали алгоритм шифрования RSA в 1977 году и основали RSA Data Security в 1982 году.
С тех пор компания прошла несколько рук, в том числе EMC и теперь принадлежит Dell Technologies .
Владельцы бизнеса требуют гибкости и масштабируемости в своих усилиях по укреплению доверия и защите интернет-сайтов
и транзакций от хакеров. Хакеры постоянно разработка более сложных методов для нарушения безопасности и нанесения
ущерба бизнесу или его клиентам.
Ответственные владельцы бизнеса давно знают, что защищают свое присутствие в Интернете с помощью SSL-сертификатов,
предоставленных доверенной сторонней сертификацией (ЦС). Использование SSL-сертификата позволяет аутентифицировать
веб-сервер, передавать конфиденциальную информацию и признанный и надежный знак безопасности для клиентов.
SSL-сертификаты традиционно полагались на шифрование с использованием открытых и закрытых ключей на основе алгоритма RSA.
Пока эти ключи остаются безопасные, растущие угрозы со стороны все более мощных компьютеров побудили
Национальный институт стандартов и технологий (NIST), среди прочего, призвать дополнительное усиление онлайн-шифрования.
Сейчас компании имеют возможность выбирать между сертификатами, которые обеспечивают защиту на основе алгоритма RSA,
по двум альтернативным алгоритмам, ECC и DSA или для создания сертификатов для всех трех, установленных на сервере.
Такая гибкость позволяет владельцам бизнеса предоставлять более широкий спектр вариантов шифрования для разных
обстоятельств, инфраструктуры и групп клиентов или партнеров.
Transport Layer Security (TLS) и его предшественники протоколов Secure Socket Layer (SSL) остаются отраслевым стандартом
для проверки подлинности веб-сайта и защиты информации в пути. Используемый веб-сайтами и браузерами, TLS позволяет
осуществлять аутентификацию, сжатие и шифрование данных между клиентом (конечным пользователем) и сервером,
гарантируя, что хакеры не могут получить доступ к данным во время их отправки.
Пользователи знают, что они обращаются к веб-сайту или странице, защищенной TLS, когда «http» в адресной
строке заменяется на «https», и в строке состояния появляется небольшой замок. Такие защищенные страницы требуют использования
SSL-сертификации для включения шифрования информации, которая передается на или с защищенного веб-сервера.
Подавляющее большинство сертификатов SSL сегодня полагаются на ключи, сгенерированные и подписанные с помощью алгоритма RSA.
Алгоритм RSA остается эффективным вариантом шифрования. Тем не менее, длина ключей будет продолжать расти экспоненциально.
Интернет-сообщества отметили способность хакеров использовать мощные компьютеры для потенциального взлома ключей,
приближающихся к 1024 бит. Поэтому NIST рекомендовал, чтобы к концу 2013 года сертификационные центры не выдавали никаких
новых сертификатов SSL / TLS с размерами открытого ключа RSA размером менее 2048 бит.
В то же время альтернативные алгоритмы шифрования и подписания были приняты федеральным правительством, которое выпустило
руководящие принципы, основанные на криптографии с эллиптической кривой (ECC) и алгоритмах цифровой подписи (DSA).
Уже имеющие обязательную силу федеральное правительство, новые руководящие принципы и рекомендации NIST Suite B
также обычно принимаются в качестве передового опыта коммерческими предприятиями.
Сертификаты, подписанные с алгоритмом RSA, широко используются в течение многих лет, но гибкость алгоритмов,
основанная на рекомендациях NIST, позволяет предприятиям выбирать сертификаты, подписанные тремя различными алгоритмами:
RSA, DSA и ECC. Конструкция TLS позволяет различным алгоритмам работать либо самостоятельно, либо бок о бок, поэтому
с гибкостью алгоритма владельцы бизнеса могут выбирать алгоритм открытого ключа или комбинацию алгоритмов, которые
лучше всего подходят для их присутствия в Интернете и инфраструктуры
Алгоритм шифрования представляет собой математическую процедуру или набор шагов для кодирования данных.
RSA является наиболее широко используемым алгоритмом шифрования сегодня. ECC - это новый алгоритм шифрования с
меньшими размерами клавиш для современных современных и мобильных приложений. DSA обычно используется
государственными подрядчиками и субподрядчиками.
Алгоритм шифрования с открытым ключом RSA назван в честь трех изобретателей - Рона Ривеста (Ron Rivest),
Ади Шамира (Adi Shamir) и Леонарда Эдлмана (Leonard Adleman).
RSA относится к так называемым асимметричным алгоритмам, у которых ключ шифрования не совпадает с ключом
дешифровки. Один из ключей доступен всем (так делается специально) и называется открытым ключом, другой
хранится только у его хозяина и неизвестен никому другому. С помощью одного ключа можно производить
операции только в одну сторону. Если сообщение зашифровано с помощью одного ключа, то расшифровать его
можно только с помощью другого. Имея один из ключей невозможно (очень сложно) найти другой ключ, если
разрядность ключа высока.
В основе RSA лежит задача факторизации произведения двух простых больших чисел. Для шифрования используется
простая операция возведения в степень по модулю N. Для расшифрования же необходимо вычислить функцию Эйлера от числа N,
для этого необходимо знать разложение числа n на простые множители (В этом и состоит задача факторизации).
В RSA открытый и закрытый ключ состоит из пары целых чисел. Закрытый ключ хранится в секрете, а открытый ключ сообщается
другому участнику, либо где-то публикуется.
Генерация производится по такой схеме
Выбираются два простых числа p и q (такие что p неравно q).
Вычисляется модуль N=p*q.
Вычисляется значение функции Эйлера от модуля N: F(N)=(p−1)(q−1).
Выбирается число e, называемое открытой экспонентой, число e должно лежать в интервале
1Вычисляется число d, называемое секретной экспонентой, такое, что d∗e=1(modF(N)),
то есть является мультипликативно обратное к числу e по модулю F(N).
Итого получаем:
Пара (e,N) - открытый ключ.
Пара (d,N) - закрытый ключ.