Transport Layer Security (TLS) to najnowsza wersja protokołu Secure Socket Layer (SSL). Oba protokoły zapewniają prywatność i autentyczność danych w Internecie. Te powszechnie używane protokoły zapewniają pełne bezpieczeństwo dzięki zastosowaniu szyfrowania do komunikacji internetowej. Jednak pomimo podobieństw TLS i SSL, mają one również znaczące różnice.
W tym artykule wyjaśniono, jak działają protokoły szyfrowania TLS i SSL, ich znaczenie, czym się różnią i dlaczego nadszedł właściwy czas, aby przejść na protokół TLS.
Tło historyczne TLS i SSL
Opublikowano Internet Engineering Task Force (IETF), organizację odpowiedzialną za opracowywanie standardów internetowych Prośba o komentarze (RFC-1984), uznając znaczenie ochrony danych osobowych w rozwijającym się Internecie. Firma Netscape Communication Corporation wprowadziła SSL do bezpiecznej komunikacji internetowej, która przeszła wiele aktualizacji.
Wersja SSL 1.0 nigdy nie została wydana z powodu luk w zabezpieczeniach, a SSL 2.0 był pierwszym publicznym wydaniem Netscape w 1995 roku. Jednak ze względu na luki w zabezpieczeniach i wady, w listopadzie 1996 r. został on zastąpiony inną wersją SSL 3.0. Najnowsza wersja SSL również nie jest używana ze względu na jej niepewność przed
Atak POODLE w październiku 2014 r. i został oficjalnie wycofany w czerwcu 2015 r.TLS został wydany w 1999 roku jako protokół niezależny od aplikacji: aktualizacja do wersji SSL 3.0 dokonana przez Internet Engineering Task Force (IETF). Pomysł polegał na zaimplementowaniu TLS przez TCP w celu szyfrowania aplikacji przy użyciu protokołów FTP, IMAP, SMTP i HTTP. Na przykład, HTTPS to bezpieczna wersja HTTP ponieważ wdraża TLS w celu zapewnienia bezpiecznego dostarczania danych poprzez unikanie zmian treści i podsłuchiwania.
Podstawowe działanie protokołów TLS/SSL
Komunikacja między stronami (np. przeglądarką komputera i witryną) inicjuje się poprzez określenie, czy: będzie zawierać protokół TLS/SSL lub nie, tak aby klient mógł określić użycie szyfrowania TLS przez:
- Określanie portu obsługującego szyfrowanie komunikacji SSL lub
- Wysyłając żądania specyficzne dla protokołu TLS
W międzyczasie, strona internetowa wymaga certyfikatu TLS/SSL zainstalowane na swoim serwerze hostingowym, aby korzystać z protokołu. Zaufana strona trzecia wydaje certyfikat wiążący klucz publiczny z domeną, która jest właścicielem klucza prywatnego i umożliwia szyfrowanie/odszyfrowywanie komunikacji.
Po wyrażeniu zgody na użycie TLS/SSL do komunikacji klient-serwer przystępuje do wykonania uzgadniania. Uzgadnianie określa specyfikacje wymagane do wymiany wiadomości. Poniższa sekcja podsumowuje serię wymian informacji w celu umożliwienia połączenia TLS/SSL:
- Strony uzgadniają wersję protokołu, z której będą korzystać, a następnie
- Decyduje o tym, jakie algorytmy kryptograficzne lub zestaw szyfrów mają zostać użyte,
- Uwierzytelnia strony komunikujące się ich kluczem publicznym i podpisami cyfrowymi wystawiającego urzędu certyfikacji, a następnie
- Wymienia klucze sesji do użycia podczas komunikacji. Zarówno protokoły TLS, jak i SSL wykorzystują kryptografię asymetryczną do generowania kluczy współdzielonych (publicznych) i prywatnych.
Jeśli przeglądarka nie może zweryfikować certyfikatu TLS/SSL, zwraca błąd „Połączenie nie jest prywatne”.
Po ustaleniu metody deszyfrowania podczas uzgadniania protokół nagrywania używa szyfrowania symetrycznego do komunikacji przez całą sesję. Poza tym protokół zapisu dołącza również wiadomość z HMAC dla TLS i MAC dla SSL, aby zapewnić integralność danych.
W związku z tym protokoły realizują trzy podstawowe cele bezpieczeństwa:
- Poufność: Szyfruje dane, aby ukryć je przed osobami trzecimi, tak aby tylko zamierzony odbiorca mógł przeglądać zawartość.
- Integralność: Stosuje kod uwierzytelniania wiadomości w celu weryfikacji zaszyfrowanej treści wiadomości.
- Uwierzytelnianie: Uwierzytelnia tożsamość witryny/klienta/serwera za pomocą certyfikatu, aby zapewnić, że strony wymieniające informacje nie mogą wycofać się ze swojej tożsamości.
Jaka jest różnica między TLS a SSL?
Jak wspomniano wcześniej, główną różnicą między obydwoma protokołami jest sposób nawiązywania połączeń. Uzgadnianie TLS wykorzystuje niejawny sposób nawiązywania połączenia za pośrednictwem protokołu, podczas gdy SSL tworzy jawne połączenia z portem.
Niezależnie od wszystkich innych różnic, podstawową cechą, która odróżnia oba połączenia TLS/SSL, jest użycie zestawu szyfrów, który decyduje o ogólnym bezpieczeństwie połączenia.
Istotną częścią połączenia TLS/SSL jest uzgodnienie zestawu szyfrów, który definiuje zestaw algorytmów wymiany kluczy, uwierzytelnianie, szyfrowanie zbiorcze oraz algorytm uwierzytelniania wiadomości oparty na hashowaniu (HMAC) lub algorytmy kodu uwierzytelniania wiadomości, itp. na konkretną sesję. Każda wersja TLS/SSL obsługuje inny zestaw zestawów szyfrów dla sesji komunikacyjnej. Dlatego każdy zestaw szyfrów obsługuje własny zestaw algorytmów, które poprawiają bezpieczeństwo i ogólną wydajność połączenia.
SSL | TLS |
---|---|
SSL to złożony protokół do wdrożenia. | TLS to prostszy protokół. |
SSL ma trzy wersje, z których najnowszą jest SSL 3.0. | TLS ma cztery wersje, z których najnowsza jest wersja TLS 1.3 |
Wszystkie wersje protokołu SSL są podatne na ataki. | Protokół TLS zapewnia wysokie bezpieczeństwo. |
SSL używa kodu uwierzytelnienia wiadomości (MAC) po szyfrowaniu wiadomości w celu zapewnienia integralności danych | TLS używa kodu uwierzytelniania wiadomości opartego na mieszaniu w swoim protokole rekordów. |
SSL używa skrótu wiadomości, aby utworzyć klucz tajny. | TLS wykorzystuje funkcję pseudolosową do tworzenia sekretu głównego. |
Dlaczego TLS zastąpiło SSL?
Szyfrowanie TLS jest obecnie standardową praktyką zabezpieczania aplikacji internetowych lub przesyłanych danych przed podsłuchiwaniem i manipulacją. Nierealistyczne jest zakładanie TLS jako najbezpieczniejszego protokołu, ponieważ jest on podatny na naruszenia, takie jak przestępczość i Heartbleed w 2012 i 2014 roku, ale wykazała wiele ulepszeń pod względem wydajności i bezpieczeństwo.
TLS zastępuje SSL, a prawie wszystkie wersje SSL są teraz przestarzałe ze względu na znane luki w zabezpieczeniach. Google Chrome jest jednym z takich przykładów, które przestały używać wersji SSL 3.0 w 2014 roku, a większość nowoczesnych przeglądarek internetowych w ogóle nie obsługuje SSL.
Użyj TLS do komunikacji szyfrowanej
TLS pomaga zabezpieczyć poufne informacje podczas transportu, takie jak dane karty kredytowej, wiadomości e-mail, transmisja głosu przez IP (VOIP), przesyłanie plików i hasła. Mimo że oba certyfikaty wykonują zadanie szyfrowania danych w trakcie przesyłania, różnią się funkcjonalnością i nie są ze sobą współdziałające.
Należy zauważyć, że TLS jest określany jako SSL tylko dlatego, że SSL jest najczęściej używaną terminologią, a obecność certyfikatu nie gwarantuje użycia protokołu TLS. Poza tym nie musisz się martwić o zmianę certyfikatów SSL na TLS, ponieważ wszystko, co musisz zrobić, to zainstalować certyfikat na serwerze, ponieważ obsługuje on oba protokoły i decyduje, którego użyć.
Nie ma znaczenia, czy tworzysz skromny blog, czy pełną witrynę eCommerce: potrzebujesz certyfikatu SSL. Oto kilka praktycznych powodów.
Czytaj dalej
- Wyjaśnienie technologii
- Bezpieczeństwo
- SSL
- OpenSSL
- Bezpieczeństwo w Internecie
- Bezpieczeństwo przeglądarki
- Ochrona danych
Rumaisa jest niezależnym pisarzem w MUO. Nosiła wiele kapeluszy, od matematyka po entuzjastę bezpieczeństwa informacji, a teraz pracuje jako analityk SOC. Jej zainteresowania obejmują czytanie i pisanie o nowych technologiach, dystrybucjach Linuksa i wszystkim, co dotyczy bezpieczeństwa informacji.
Zapisz się do naszego newslettera
Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Kliknij tutaj, aby zasubskrybować