- •Введение
- •Угрозы безопасности информационных систем
- •Классификация угроз безопасности
- •Общая характеристика уязвимостей информационной системы персональных данных
- •Общая характеристика уязвимостей прикладного программного обеспечения
- •Общая характеристика угроз непосредственного доступа в операционную среду информационной системы
- •Общая характеристика угроз безопасности, реализуемых с использованием протоколов межсетевого взаимодействия
- •Криптография
- •Общие сведения
- •Подстановки
- •Метод перестановки
- •Одноразовые блокноты
- •Основные принципы криптографии
- •Алгоритмы с симметричным криптографическим ключом
- •Тройное шифрование с помощью des
- •Улучшенный стандарт шифрования aes
- •Режим шифрованной обратной связи
- •Режим группового шифра
- •Режим счетчика
- •Криптоанализ
- •Алгоритмы с открытым ключом
- •2.15. Алгоритм rsa
- •2.16. Криптоанализ алгоритма rsa
- •2.17. Другие алгоритмы с открытым ключом
- •2.18. Цифровые подписи.
- •2.19. Подписи с открытым ключом
- •2.20. Профили сообщений
- •2.23. Управление открытыми ключами
- •2.24. Сертификаты
- •2.26. Инфраструктуры систем с открытыми ключами
- •2.27. Каталоги
- •2.28. Аннулирование
- •2.31. Брандмауэры
- •2.32. Виртуальные частные сети
- •2.33. Безопасность в беспроводных сетях
- •2.34. Безопасность в сетях 802.11
- •2.35. Безопасность в системах Bluetooth
- •2.36. Протоколы аутентификации
- •Заключение
- •Библиографический список
- •Оглавление
- •3 94026 Воронеж, Московский просп., 14
Алгоритмы с открытым ключом
Исторически процесс передачи ключа всегда был слабым звеном почти по всех системах шифрования. Независимо от того, насколько прочна была сама криптосистема, если нарушитель мог украсть ключ, система становилась бесполезной. До 1976 года все криптологи исходили из предпосылки, что ключ дешифрации должен быть идентичен ключу шифрования (или один может легко получиться из другого). В то же время, ключи должны были быть у всех пользователей системы. Таким образом, казалось, что эта проблема неустранима: ключи должны быть защищены от кражи, и в то же время их нужно распространять среди пользователей, поэтому их нельзя просто хранить в банковском сейфе.
В 1976 году два исследователя из Стэнфордского университета, Диффи и Хеллман, предложили радикально новую криптосистему, в которой ключ шифрования и ключ дешифрации были различными, кроме того, ключ дешифрации нельзя было получить из ключа шифрования. Предложенные ими алгоритм шифрования Е и алгоритм дешифрации D (оба параметризованные ключом) должны были удовлетворять следующим трем требованиям:
1. D(E(P)) = Р.
2. Крайне сложно вывести D из Е.
3. Е нельзя взломать при помощи произвольного открытого текста.
Первое требование состоит в том, что если применить алгоритм дешифрации D к зашифрованному сообщению Е(Р), то мы опять получим открытый текст Р. Без этого авторизованный получатель просто не сможет расшифровать сообщение. Второе требование говорит само за себя. Третье требование необходимо, потому что, как мы скоро увидим, злоумышленники могут экспериментировать с алгоритмом столько, сколько пожелают. При таких условиях нет никаких причин, по которым ключ шифрования нельзя было бы сделать общедоступным.
Этот метод работает следующим образом. Некто, например Алиса, желая получать секретные сообщения, сначала формирует два алгоритма, удовлетворяющие перечисленным выше требованиям. Затем алгоритм шифрования и его ключ открыто объявляются, отсюда название — шифрование с открытым ключом. Это можно сделать, разместив открытый ключ, например, на домашней страничке Алисы. Для обозначения алгоритма шифрования, параметризованного открытым ключом Алисы, мы будем использовать запись ЕА. По аналогии (секретный) алгоритм дешифрации, параметризованный персональным ключом Алисы, мы будем обозначать DА. Боб делает то же самое, открыто объявляя Ев, но храня в тайне Dв.
Теперь посмотрим, сможем ли мы решить проблему установки надежного канала между Алисой и Бобом, которые ранее никогда не встречались. Оба ключа шифрования Алисы и Боба, ЕА и Ев, являются открытыми. (Вообще, все пользователи сети могут, становясь пользователями, опубликовать свои ключи шифрования.) Теперь Алиса берет свое первое сообщение Р, вычисляет Ев (Р) и посылает его Бобу. Боб расшифровывает его с помощью своего секретного ключа Dв, то есть вычисляет Dв (Eв (P)) = Р. Больше никто не может прочитать это зашифрованное сообщение Ев (Р), так как предполагается, что система шифрования достаточно надежна, а получить ключ Dв на основании известного ключа Ев очень трудно. Посылая ответ, Боб передает EА (R). Таким образом, Алиса и Боб получают надежный секретный канал связи.
Обратите внимание на используемую здесь терминологию. Шифрование с открытым ключом предполагает у каждого пользователя наличие двух ключей - открытого ключа, используемого всеми для шифрования сообщений, посылаемых этому пользователю, и закрытого ключа, требующегося пользователю для дешифрации приходящих к нему сообщений. Мы будем и далее называть эти ключи открытым и закрытым, чтобы отличать их от секретных ключей, используемых для шифрования и дешифрации в обычной криптографии с симметричным ключом.