Другой способ взломать RSA состоит в том, чтобы найти метод вычисления корня степени e из mod n. Поскольку С = Me х mod n, то корнем степени e из mod n является сообщение M. Вычислив корень, можно вскрыть зашифрованные сообщения и подделать подписи, даже не зная секретный ключ. Такая атака не эквивалентна факторингу, но в настоящее время неизвестны методы, которые позволяют взломать RSA таким образом. Однако в особых случаях, когда на основе одного и того же показателя относительно небольшой величины шифруется достаточно много связанных сообщений, есть возможность вскрыть сообщения. Упомянутые атаки – единственные способы расшифровать все сообщения, зашифрованные данным ключом RSA.
Существуют и другие типы атак, позволяющие, однако, расшифровать только одно сообщение и не позволяющие нападающему вскрыть прочие сообщения, зашифрованные тем же ключом. Кроме того, изучалась возможность расшифровывания части зашифрованного сообщения.
Самое простое нападение на отдельное сообщение – атака по предполагаемому открытому тексту. Нападающий, имея зашифрованный текст, предполагает, что сообщение содержит какой-то определенный текст (например, "Штирлиц – Плей-шнеру"). Затем шифрует предполагаемый текст открытым ключом получателя и сравнивает полученный текст с имеющимся зашифрованным текстом. Такую атаку можно предотвратить, добавив в конец сообщения несколько случайных битов. Другая атака на единственное сообщение применяется в том случае, если отправитель посылает одно и то же сообщение M трем корреспондентам, каждый из которых использует общий показатель e = 3. Зная это, нападающий может перехватить эти сообщения и расшифровать сообщение M.
Такую атаку также можно предотвратить, вводя перед каждым шифрованием в сообщение несколько случайных битов. Кроме того, существуют несколько видов атак по зашифрованному тексту (или атаки отдельных сообщений с целью подделки подписи), при которых нападающий создает некоторый зашифрованный текст и получает соответствующий открытый текст, например, заставляя обманным путем зарегистрированного пользователя расшифровать поддельное сообщение. Разумеется, существуют и атаки, нацеленные не на криптосистему непосредственно, а на уязвимые места всей системы коммуникаций в целом. Такие атаки не могут рассматриваться как взлом RSA, так как говорят не о слабости алгоритма, а скорее об уязвимости конкретной реализации. Например, нападающий может завладеть секретным ключом, если тот хранится без должной предосторожности. Необходимо подчеркнуть, что для полной защиты недостаточно защитить выполнение алгоритма RSA и принять меры математической безопасности, то есть использовать ключ достаточной длины, так как на практике наибольший успех имеют атаки на незащищенные этапы управления ключами системы RSA.
2.3. Современные технологии аутентификации. Смарт-карты
Смарт-карты, подобно Memory-картам, представляют собой пластиковые карты со встроенной микросхемой (ICC, integrated circuit card – карта с интегрированными электронными схемами). Однако смарт-карты представляют собой более сложное устройство, содержащее микропроцессор и операционную систему, контролирующую устройство и доступ к объектам в его памяти. Кроме того, смарт-карты, как правило, обладают возможностью проводить криптографические вычисления.
Назначение смарт-карт – одно-и двухфакторная аутентификация пользователя, хранение информации и проведение криптографических операций в доверенной среде.
Напомню нашим читателям, что двухфакторная аутентификация подразумевает под собой использование двух атрибутов, удостоверяющих личность, например: пароль и отпечаток пальцев, смарт-карта и сетчатка глаза и т. д.
Смарт-карты находят все более широкое применение в различных областях – от систем накопительных скидок до кредитных и дебетовых карт, студенческих билетов и телефонов стандарта GSM.
В зависимости от встроенной микросхемы все смарт-карты делятся на несколько основных типов, кардинально различающихся по выполняемым функциям:
карты памяти;
микропроцессорные карты;
карты с криптографической логикой.
Карты памяти предназначены для хранения информации. Память на таких типах карт может быть свободной для доступа или содержать логику контроля доступа к памяти карты для ограничения операций чтения и записи данных.
Микропроцессорные карты предназначены и для хранения информации, но, в отличие от обычных, они содержат специальную программу или небольшую операционную систему, позволяющую преобразовывать данные по определенному алгоритму, защищать информацию, хранящуюся на карте, при передаче, чтении и записи.
Карты с криптографической логикой используются в системах защиты информации для принятия непосредственного участия в процессе шифрования данных или выработки криптографических ключей, электронных цифровых подписей и другой необходимой информации для работы системы.
Считыватели для смарт-карт