Тестирование подписей RSA
Что такое шифрование RSA?
RSA была предложена в 1977 году Рональдом Ривестом, Ади Шамиром и Леонардом Адлеманом.В то время все трое работали в Массачусетском технологическом институте. RSA состоит из первых букв их фамилий, соединенных вместе.Алгоритм RSA является асимметричным алгоритмом шифрования, в отличие от симметричного алгоритма шифрования, RSA имеет два разных ключа, один из которых является публичным, а другой - закрытым.Криптосистема с открытым ключом RSA - это криптосистема, которая использует различные ключи шифрования и дешифрования, и «вывод ключа дешифрования из известного ключа шифрования вычислительно невозможен».В криптосистеме с открытым ключом ключ шифрования (т. е. открытый ключ) PK является общедоступной информацией, а ключ дешифрования (т. е. секретный ключ) SK должен быть конфиденциальным.Алгоритм шифрования E и алгоритм дешифровки D также являются открытыми.Хотя ключ дешифровки SK определяется открытым ключом PK, он не может быть вычислен на основе PK.Именно на основе этой теории в 1978 году появился известный алгоритм RSA, который обычно генерирует пару ключей RSA, один из которых является конфиденциальным ключом, который хранится пользователем, а другой - открытым ключом, который может быть открыт для всех и даже зарегистрирован на веб-сервере.Для повышения степени конфиденциальности ключи RSA должны иметь длину не менее 500 бит.Это делает шифрование очень сложным.Для сокращения вычислительной нагрузки передача информации часто осуществляется в сочетании с традиционными методами шифрования и методами шифрования с открытым ключом, т. е. информация шифруется с помощью улучшенного ключа диалога DES или IDEA, а затем ключ диалога и резюме сообщения шифруются с помощью ключа RSA.После получения сообщения другая сторона расшифровывает его с помощью различных ключей и может проверить резюме сообщения. RSA является наиболее широко изученным алгоритмом открытого ключа, который прошел испытания различных атак с момента его предложения, постепенно был принят людьми и широко признан одним из лучших в настоящее время программ открытого ключа.В 1983 году Массачусетский технологический институт (MIT) запатентовал в США алгоритм RSA. RSA позволяет выбирать размер открытого ключа. 512-битовые ключи считаются небезопасными; 768-битовые ключи не могут быть подвергнуты опасности со стороны ничего, кроме Агентства национальной безопасности (NSA); RSA встроен в некоторые основные продукты, такие как Windows, Netscape Navigator, Quicken и Lotus Notes.Из-за серьезных угроз безопасности 1024-битных ключей алгоритма RSA, для обеспечения безопасного применения услуг электронной сертификации, 5 декабря 2016 года Шанхайское управление по шифрованию опубликовало на своем официальном сайте объявление, что с 1 января 2017 года прекратит предоставление услуг 1024-битных ключей алгоритма RSA, и сотрудничает с учреждениями служб электронной сертификации и организациями-пользователями для принятия ответных мер, чтобы обеспечить плавный переход.
Безопасность алгоритма шифрования RSA
Безопасность RSA зависит от декомпозиции больших чисел, но теоретически не было доказано, что RSA эквивалентен декомпозиции больших чисел, а также теоретически не было доказано расшифровку.Сложность RSA эквивалентна сложности декомпозиции больших чисел.Поскольку нет доказательств, что для взлома RSA обязательно необходимо большое расчленение.Предположим, что существует алгоритм, который не требует дезинтеграции больших чисел, то он, безусловно, может быть модифицирован в алгоритм дезинтеграции больших чисел, т. е. главный недостаток RSA заключается в невозможности теоретически определить, насколько безопасна она, и большинство криптологов предпочитают дезинтеграцию, а не проблему NPC.В настоящее время некоторые варианты алгоритмов RSA были доказаны эквивалентными декомпозиции больших чисел.В любом случае, расчленение n является наиболее очевидным методом атакиВ настоящее время удается разбить большие простые числа с более чем 140 десятичными знаками.Таким образом, модуль n должен быть выбран более высоким в зависимости от конкретного применения.Прочность конфиденциальности алгоритма RSA возрастает по мере увеличения длины ключа.Однако чем длиннее ключ, тем больше времени требуется для его шифрования и дешифрования.Таким образом, необходимо сочетать степень конфиденциальности защищаемой информации с ценой взлома злоумышленником и требуемым временем отклика системы, особенно в области коммерческой информации.