TLS 1.3 Jest tutaj, aby zostać

Świat się przenosi TLS 1.3, co jest bardzo dobrą rzeczą! Ten artykuł zawiera ogólne omówienie TLS 1.3 i omówienie skuteczności nowych funkcji.

Transport Layer Security

Transport Layer Security lub TLS, to protokół kryptograficzny, który chroni dane wymieniane w sieci komputerowej. TLS stał się sławny jako S in HTTPS. Dokładniej, TLS służy do ochrony danych użytkowników sieci przed atakami sieciowymi.

TLS został zaprojektowany jako bezpieczniejsza alternatywa dla swojego poprzednika Secure Sockets Layer (SSL). Przez lata badacze bezpieczeństwa odkryli mnóstwo luk w zabezpieczeniach SSL, które zmotywowały IETF do projektowania TLS w celu ich złagodzenia.

Jak na ironię, wcześniejsze wersje TLS zostały również dotknięte niebezpiecznymi lukami, które ostatecznie doprowadziły do TLS 1.2 (tj. Domyślna wersja zalecana przez profesjonalistów z branży).

Większość znanych luk w zabezpieczeniach protokołów została złagodzona w programie TLS 1.2, ale ten poziom bezpieczeństwa wciąż był wynikiem serii poprawek na wadliwej konstrukcji.

W odpowiedzi TLS 1.3 został opracowany od podstaw w celu przejrzystego zaprojektowania nowoczesnego i bezpiecznego TLS protokół. Pięć lat później testów został on ostatecznie zatwierdzony i jest bliski standardu domyślnego bezpieczeństwa w Internecie.

TLS wersje i odpowiadające im dokumenty RFC można znaleźć na poniższej liście:

  • TLS 1.0 został opublikowany jako RFC 2246 w 1996
  • TLS 1.1 został opublikowany jako RFC 4346 w 2006
  • TLS 1.2 został opublikowany jako RFC 5246 w 2008
  • TLS 1.3 został opublikowany jako proponowany standard w RFC 8446 w 2018 roku.

Jak starsze TLS wersje działają?

Aby skutecznie omówić korzyści płynące z TLS 1.3, musimy najpierw porozmawiać o tym, jak jest starszy TLS wersje działają (i jak nie działają).

TLS jest hybrydowy kryptosystem, co oznacza, że ​​używa obu asymetryczny (klucz publiczny) i symetryczny szyfrowanie (oparte na haśle / frazie). Jest to spowodowane kryptografia asymetryczna jest o rząd wielkości wolniejszy niż jego symetryczne odpowiedniki.

W związku z tym, TLS używa tylko kluczy publicznych, aby klienci i serwery mogli bezpiecznie wymieniać klucz symetryczny. Ten klucz może być następnie używany do szyfrowania całej kolejnej komunikacji, unikając narzutu wydajności narzucanego przez szyfrowanie asymetryczne.

TLS 1.2 obsługuje wiele algorytmów wymiany kluczy (np. RSA, DH itp.) Wraz z kilkoma algorytmami (znanymi również jako szyfry) służy do szyfrowania i odszyfrowywania wiadomości. Ta duża liczba alternatywnych opcji wymaga od klientów i serwerów negocjacji, aby wszystkie strony korzystały z tego samego TLS parametry.

Negocjacje są znormalizowane w protokole o nazwie uścisk ręki. Jeśli nie znasz go, zapoznaj się z ten artykuł po więcej informacji.

Więc co jest nie tak z TLS 1.2?

Chociaż TLS W większości przypadków udowodniono, że wersja 1.2 działa dobrze, istnieją obawy co do ogólnego poziomu bezpieczeństwa i prywatności, jakie zapewnia po latach aktualizacji i poprawek.

Jednak oprócz względów bezpieczeństwa TLS 1.2 narzuca również niepotrzebną wydajność i obciążenie sieci.

TLS 1.2 kwestie bezpieczeństwa

Przez lata badacze (i napastnicy) odkryli mnóstwo luk w wielu TLS 1.2 komponenty, w tym algorytmy wymiany kluczy, szyfry i podpisy cyfrowe. Niektóre z nich to błędy implementacji, o których być może słyszałeś, takie jak heartbleed or BERserk. Jednak niektóre były lukami w protokołach - to znaczy, że wcześniej wykorzystywały złe decyzje projektowe TLS wersje (tj. przed TLS 1.2).

Chociaż większość implementacji i innych błędów została naprawiona w TLS 1.2, niestety, luk w zabezpieczeniach projektu protokołu nie można usunąć za pomocą zwykłej poprawki oprogramowania. Jak się okazuje, aby to zrobić, IETF musiał całkowicie przeprojektować protokół uzgadniania w TLS 1.3.

Było wiele obaw TLS bezpieczeństwo, ale jednym z najbardziej wpływowych było uświadomienie sobie tego TLS 1.2 (i wszystkie wcześniejsze wersje, w tym SSL) są podatne na ataki na starszą wersję z powodu błędu w projekcie protokołu uzgadniania. Dokładniej, TLS 1.2 nie używa podpisów cyfrowych do ochrony integralności uzgadniania. Podpisy chronią część uzgadniania, dopiero po negocjacjach zestawu szyfrów.

W rezultacie osoby atakujące mogą manipulować wszelkimi negocjacjami dotyczącymi pakietu szyfrów stron trzecich, które mają miejsce w tej samej sieci komputerowej (np. Wi-Fi na lotnisku), i wymuszać użycie niepewnego szyfru. Następnie mogą złamać ten wrażliwy szyfr i uzyskać nieuzasadniony dostęp do całej rozmowy.

TLS 1.2 problemy z wydajnością

Oprócz tych względów bezpieczeństwa, TLS 1.2 Potrzeba wielu negocjacji TLS parametry mogą narzucać narzut wydajności na HTTPS (lub inne TLS chronione) komunikacji.

TLS 1.2-etapowe uzgadnianie protokołu 4 wymaga dwóch wymian w obie strony, najpierw w celu wybrania zestawu szyfrów, a następnie wymiany certyfikatów i kluczy symetrycznych (lub udziałów kluczy).

Oznacza to, że dla każdego TLS połączenie do ustanowienia, dwie dodatkowe transakcje z serwerem są wymagane. W rezultacie, TLS połączenia wymagają większej przepustowości i mocy niż (nieszyfrowany) protokół HTTP, co może być szczególnie kosztowne dla aplikacji Internetu rzeczy (IoT), w których niskie zużycie energii i przepustowość są twardymi ograniczeniami.

TLS 1.2 kwestie prywatności

Wreszcie TLS 1.2 był krytykowany za naruszanie prywatności użytkowników sieci.

Dokładniej, TLS oferuje rozszerzenie znane jako Wskazanie nazwy serwera lub SNI. SNI pozwala na włączenie nazwy hosta serwera do początkowego uzgadniania SSL. To rozszerzenie jest używane do wirtualnego hostingu, gdzie serwery mogą obsługiwać wiele domen na tym samym adresie IP i porcie, jednocześnie prezentując inny certyfikat dla każdej domeny.

In TLS 1.2, wysyłane są SNI niezaszyfrowane, więc pomimo użycia HTTPS osoba atakująca sieć może wyciec te informacje i śledzić strony internetowe odwiedzane przez użytkownika.

Jak działa TLS 1.3 to wszystko naprawić?

TLS 1.2 (i wcześniejsze wersje) skupiały się na zachowaniu kompatybilności wstecznej. Każda wersja opierała się na poprzednich, z niewielkimi poprawkami próbującymi wyeliminować luki opublikowane między TLS wersje.

Niestety oznaczało to również, że złe decyzje dotyczące projektu protokołu (np. Niezabezpieczony uścisk dłoni) zostały również odziedziczone w nowszych wersjach.

TLS 1.3 rezygnuje ze wstecznej kompatybilności na rzecz właściwego projektu bezpieczeństwa. Został zaprojektowany od podstaw, aby zapewnić funkcjonalność podobną (ale niekompatybilną) do TLS 1.2, ale ze znacznie poprawioną wydajnością, prywatnością i bezpieczeństwem.

TLS Bezpieczeństwo 1.3

Podstawowa zasada TLS 1.3 to prostota. W nowej wersji wszystkie algorytmy wymiany kluczy, z wyjątkiem Difie-Hellman (DH) wymiana kluczy, zostały usunięte. TLS 1.3 zdefiniował również zestaw wypróbowanych i przetestowanych parametrów DH, eliminując potrzebę negocjowania parametrów z serwerem.

Co więcej, TLS 1.3 nie obsługuje już niepotrzebnych lub podatnych na ataki szyfrów, takich jak tryb CBC i szyfr RC4. Wiadomo, że te szyfry są podatne na ataki, ale w większości nadal były obsługiwane TLS implementacje zapewniające zgodność ze starszymi wersjami. Na szczęście niedawna fala ataków na starszą wersję dotyczyła wczesnych wersji TLS wersje zmotywowały IETF do całkowitego usunięcia takich szyfrów z TLS 1.3.

Dodatkowo, TLS 1.3 wymaga od serwerów kryptograficznego podpisywania całego uzgadniania, w tym negocjacji szyfrowania, co uniemożliwia atakującym modyfikację jakichkolwiek parametrów uzgadniania. To znaczy że TLS 1.3 jest architektonicznie odporny na ataki na obniżenie wersji, które miały miejsce wcześniej TLS wersje.

Wreszcie, same podpisy zostały również ulepszone poprzez wdrożenie nowego standardu o nazwie RSA-PSS. Podpisy RSA-PSS są odporne na ataki kryptograficzne wpływające na schematy podpisów stosowane wcześniej TLS wersje.

TLS Wydajność 1.3

Oprócz zwiększonego bezpieczeństwa, zmniejszonego zestawu parametrów i uproszczonego uzgadniania TLS 1.3 również przyczynia się do poprawy ogólnej wydajności. Ponieważ istnieje tylko jeden algorytm wymiany kluczy (z wprowadzonymi parametrami) i tylko kilka obsługiwanych szyfrów, bezwzględna przepustowość wymagana do skonfigurowania TLS 1.3 kanał jest znacznie mniejszy niż wcześniejsze wersje.

Ponadto, TLS 1.3 obsługuje teraz nowy protokół uzgadniania o nazwie Tryb 1-RTT. W trybie 1-RTT klient może wysyłać udziały klucza DH w pierwszym komunikacie uzgadniania, ponieważ może być całkiem pewien parametrów, których użyje serwer. W rzadkich przypadkach, gdy serwer ich nie obsługuje, może wygenerować błąd, dzięki czemu klient wyśle ​​inną konfigurację.

Zamiast najpierw negocjować parametry, a następnie wymieniać klucze lub udziały kluczy, TLS 1.3 umożliwia klientowi skonfigurowanie TLS kanał z tylko jedną transakcją w obie strony (zamiast dwóch, jak to było wcześniej). Może to mieć duży łączny wpływ na przetwarzanie, moc i zasoby sieciowe, które są wymagane, aby klient mógł komunikować się z serwerem przez TLS 1.3.

Optymalizacje wydajności nie kończą się jednak na tym, na innym TLS 1.3, zwana Tryb wznowienia 0-RTT. Kiedy przeglądarka odwiedza serwer po raz pierwszy i pomyślnie zakończy proces TLS handshake, zarówno klient, jak i serwer mogą lokalnie przechowywać wstępnie udostępniony klucz szyfrowania.

Jeśli przeglądarka ponownie odwiedzi serwer, może użyć tego klucza wznowienia, aby wysłać zaszyfrowane dane aplikacji w swojej pierwszej wiadomości do serwera. Ma to takie samo opóźnienie jak nieszyfrowany HTTP, ponieważ wstępne uzgadnianie nie jest wymagane.

Należy zauważyć, że było pewne bezpieczeństwo dotyczy o trybie 0-RTT w przeszłości.

TLS Prywatność 1.3

Uczenie się na błędach z przeszłości, TLS 1.3 oferuje teraz rozbudowa który szyfruje informacje SNI. Prawidłowo używane rozszerzenie zapobiega wyciekaniu nazwy domeny serwera zdalnego przez osoby atakujące, więc nie mają oni metody śledzenia historii użytkowników HTTPS. Ta funkcja zapewnia większą prywatność użytkownikom Internetu niż poprzednie wersje TLS.

Wnioski

Kompletujemy wszystkie dokumenty (wymagana jest kopia paszportu i XNUMX zdjęcia) potrzebne do TLS 1.2 służył honorowo przez te wszystkie lata, TLS 1.3 jest bardziej bezpieczne i wydajne. TLS 1.3 został dokładnie przetestowany w eksperymentalnych implementacjach przeglądarek i jest teraz gotowy do zastąpienia TLS 1.2 jako wybrany protokół bezpieczeństwa sieci. Wydawniczy TLS 1.3 to duży krok w kierunku szybszego i bezpieczniejszego internetu dla wszystkich.

Dziękujemy za wybranie SSL.com, gdzie naszym zdaniem bezpieczniej Internet to lepszy Internet.

Subskrybuj biuletyn SSL.com

Nie przegap nowych artykułów i aktualizacji z SSL.com

Bądź na bieżąco i bezpiecznie

SSL.com jest światowym liderem w dziedzinie cyberbezpieczeństwa, PKI i certyfikaty cyfrowe. Zarejestruj się, aby otrzymywać najnowsze wiadomości branżowe, wskazówki i ogłoszenia o produktach od SSL.com.

Będziemy wdzięczni za Twoją opinię

Weź udział w naszej ankiecie i daj nam znać, co myślisz o swoim ostatnim zakupie.