Какво е SSL?
sobes.tech AI
Отговор от AI
SSL (Secure Sockets Layer) е криптографски протокол, който осигурява сигурна трансфер на данни между клиента (браузъра) и сървъра.
Основните му функции:
- Шифроване: Защита на предаваната информация от прихващане и четене от трети лица.
- Автентикация: Проверка на автентичността на сървъра за клиента.
- Цялост на данните: Гаранция, че данните не са били променени по време на предаването.
Работата на SSL се базира на използването на двойки ключове (публичен и частен) и цифрови сертификати, издавани от удостоверяващи центрове (Certificate Authorities, CA).
Етапи на установяване на SSL връзка (TLS Handshake):
- Client Hello: Клиентът изпраща на сървъра поддържаните версии на протокола SSL/TLS, набори от шифри и произволно число.
- Server Hello: Сървърът избира най-подходящите параметри от предложените от клиента, изпраща своето произволно число и SSL сертификат.
- Сертификат на сървъра: Клиентът проверява автентичността на сертификата на сървъра (валидност, доверие в CA и др.).
- Client Key Exchange: Клиентът генерира симетричен ключ за сесията, криптира го с публичния ключ на сървъра и го изпраща.
- Change Cipher Spec: Клиентът и сървърът съобщават, че ще започнат да използват установения симетричен ключ за криптиране на трафика.
- Finished: Страните изпращат криптирани съобщения, които потвърждават завършването на установяването на връзката.
След успешен handshake целият трафик между клиента и сървъра се криптира с установения симетричен ключ, осигурявайки конфиденциалност и цялост на предаваната информация.
Модерният стандарт е TLS (Transport Layer Security), който е наследник на SSL. Въпреки че терминът "SSL" често се използва по навик, в момента се използват версии на TLS (1.0, 1.1, 1.2, 1.3).