Рефераты Протокол SSL

Вернуться в Кибернетика

Протокол SSL
Протокол SSL





Протокол SSL Handshake (Secure Sockets Layer — защищенный протокол) разработан
корпорацией Netscape Communications для обеспечения безопасности и секретности
интернет-соединений. Протокол поддерживает аутентификацию (установление подлинности)
клиента и сервера, не зависит от приложений и прозрачен для протоколов HTTP,
FTP и Telnet. Однако, SSL оптимизирован для протокола HTTP, а для FTP более
предпочтителен IPSec (см. подп. 5.1.4).


SSL способен передавать ключи шифрования, а также устанавливать подлинность
сервера еще до обмена данных с приложением более высокого уровня. Протокол SSL
обеспечивает защищенность и целостность канала передачи с помощью шифрования,
установление подлинности и кодов МАС.


Протокол SSL Handshake состоит из двух этапов: установление подлинности сервера
и необязательное установление подлинности клиента. На первом этапе сервер в
ответ на запрос клиента посылает свой сертификат и параметры шифрования. Затем
клиент генерирует мастер-ключ, зашифровывает его открытым ключом сервера и отсылает
серверу. Сервер расшифровывает мастер-ключ своим частным ключом и подтверждает
свою подлинность клиенту, возвращая ему сообщение, заверенное мастером-ключом
клиента.


Последующие данные шифруются и заверяются ключами, полученными на основе
этого мастера-ключа. На втором этапе, который не является обязательным, сервер
посылает запрос клиенту, а клиент подтверждает серверу свою подлинность, возвращая
запрос с собственной цифровой подписью и сертификат открытого ключа.


SSL поддерживает разнообразные криптографические алгоритмы. В ходе установления
связи используется криптосистема открытого ключа RSA. После обмена ключами используется
много разных шифров: RC2, RC4, IDEA, DES и TripleDES. Также используется MD5
— алгоритм создания дайджеста сообщений (см. подп. 3.6.7). Синтаксис сертификатов
открытого ключа описан в X.509 (см. подп. 1.5.3).


TLS — протокол, который основан и очень похож на SSL 3.0. Дополнительная
информация о TLS 1.0 приведена в RFC 2246.


Следует также упомянуть WTLS (Wireless Transport Layer Security — беспроводной
TLS), который определяет протокол для слоя безопасности в WAP (Wireless Access
Protocol — протокол ббеспроводного доступа). WAP — фактический стандарт передачи
и представления информации для беспроводных устройств типа мобильных телефонов
и пейджеров. WTLS очень похож на TLS, но оптимизирован для узкополосных сетей.


Основы работы с OpenSSL


OpenSSL — это система защиты и сертификации данных, название SSL
переводится, как система безопасных сокетов (secure socket layer). OpenSSL
используется практически всеми сетевыми серверами для защиты передаваемой
информацией. Существует программное API SSL (SSLEAY), позволяющее создавать
безопасные сокеты с шифрацией передаваемых данных в собственных разработках.
Но в данной статье я бы хотел рассказать о самой системе OpenSSL, вызываемой
через командную строку.


Т.к. OpenSSL поддерживает очень много различных стандартов сертификации,
шифрования, хеширования, то использование данной команды достаточно
сложно. Внутри OpenSSL существуют отдельные компоненты, отвечающие за
то или иное действие, для получения списка доступных компонентов можно
вызвать openssl с параметрами list-standart-commands. Можно также получить
список доступных алгоритмов хеширования (list-message-digest-commands)
и алгоритмов шифрования (list-cipher-commands).


OpenSSL может использоваться во множестве случаев и умеет выполнять
следующие задачи:


Создавать и управлять ключами RSA и DSA — команды rsa, dsa, dsaparam.


Создавать сертификаты формата x509, запросы на сертификацию, восстановление
— команды x509, req, verify, ca, crl, pks12, pks7.


Зашифровывать данные с помощью симметрического или асимметрического
шифрования — команды enc, rsautl

10 11 12 13 14 15 16 17 
Добавить в Одноклассники    

 

Rambler's Top100