Очевидно, что алгоритм шифрования в Web предусматривает гораздо более сложные операции, нежели увеличение или уменьшение позиций букв. Тем не
Глава 12. Безопасность и производительность 62 1
менее, процесс, используемый программами для выбора алгоритма и ключа
шифрования, аналогичен описанному выше. Когда Web-сервер инициирует защи — щенное соединение с Web-сервером, сначала браузер передает список доступных алгоритмов шифрования. Web-сервер изучает список и выбирает алгоритм, под — держиваемый как сервером, так и браузером, и передает браузеру сообщение, указывающее на выбранный алгоритм. Тем не менее, перед тем, как две програм — мы смогут обмениваться зашифрованными сообщениями, они должны выбрать ключ шифрования.
Предположим, например, что сервер при отправке сообщения с выбором ал — горитма шифрования включает в него ключ, которым будут пользоваться сервер
и браузер для шифрования и дешифрации сообщений. Поскольку сервер не мо — жет начать шифрование сообщений до получения ключа шифрования, сообще- ния передаются в открытом, т. е. незашифрованном, виде. Если хакер перехватит это сообщение (с выбранным алгоритмом и ключом шифрования), он будет знать и алгоритм шифрования, и ключ шифрования, т. е. хакер сможет перехва — тывать сообщения и расшифровывать их содержимое. Чтобы исключить возмож- ность перехвата хакером алгоритма шифрования и ключа шифрования, сервер для шифрования значения ключа, который будет использоваться браузером и сервером для шифрования обмена сообщениями, использует специальный ключ шифрования — открытый ключ сервера. Это означает, что перед началом защи — щенного сеанса между клиентом и сервером Web-сервер должен иметь открытый ключ (рассматриваемый в следующем разделе), который сервер должен передать Web-браузеру.
Шифрование с открытым ключом
Сегодня для передачи зашифрованных сообщений по электронной почте или установки защищенного Web-соединения пользователи широко применяют шиф — рование с открытым ключом (public key encryption). Для получения зашифрован- ных сообщений пользователь получает два специальных ключа: закрытый ключ,