Czym jest SSL?
sobes.tech AI
Odpowiedź od AI
SSL (Secure Sockets Layer) — to kryptograficzny protokół zapewniający bezpieczną transmisję danych między klientem (przeglądarką) a serwerem.
Jego główne funkcje:
- Szyfrowanie: Ochrona przesyłanych informacji przed przechwyceniem i odczytaniem przez osoby trzecie.
- Uwierzytelnianie: Weryfikacja autentyczności serwera dla klienta.
- Integralność danych: Gwarancja, że dane nie zostały zmienione podczas transmisji.
Działanie SSL opiera się na użyciu par kluczy (publicznego i prywatnego) oraz certyfikatów cyfrowych wydawanych przez centra certyfikacji (Certificate Authorities, CA).
Etapy ustanawiania połączenia SSL (TLS Handshake):
- Client Hello: Klient wysyła do serwera obsługiwane wersje protokołu SSL/TLS, zestawy szyfrów i losową liczbę.
- Server Hello: Serwer wybiera najbardziej odpowiednie parametry spośród zaproponowanych przez klienta, wysyła swoją losową liczbę i certyfikat SSL.
- Certyfikat serwera: Klient sprawdza autentyczność certyfikatu serwera (ważność, zaufanie CA itp.).
- Client Key Exchange: Klient generuje klucz symetryczny dla sesji, szyfruje go kluczem publicznym serwera i wysyła na serwer.
- Change Cipher Spec: Klient i serwer informują się nawzajem, że zaczną używać ustalonego klucza symetrycznego do szyfrowania dalszego ruchu.
- Finished: Strony wysyłają zaszyfrowane wiadomości potwierdzające zakończenie ustanawiania połączenia.
Po pomyślnym handshake cały ruch między klientem a serwerem jest szyfrowany za pomocą ustalonego klucza symetrycznego, zapewniając poufność i integralność przesyłanych informacji.
Nowoczesnym standardem jest TLS (Transport Layer Security), który jest następcą SSL. Chociaż termin "SSL" jest często używany z przyzwyczajenia, obecnie stosuje się wersje TLS (1.0, 1.1, 1.2, 1.3).