| pl.comp.www FAQ | ||||
|---|---|---|---|---|
| Poprzedni | Poprzedni rozdział | Rozdział 2. Definicje | Następny rozdział | Następny |
Co to jest SSL?
SSL --- --- protokół bezpiecznej komunikacji między klientem a serwerem, stworzony przez Netscape. SSL w założeniu jest podkładką pod istniejące protokoły, takie jak HTTP, FTP, SMTP, NNTP i telnet. Powszechnie jest używane głównie HTTPS (HTTP na SSL). SSL zapewnia trzy rzeczy:
prywatność --- połączenie jest szyfrowane
autoryzację --- klient i serwer określa swoją tożsamość
integralność przesyłanych danych --- przez sumy kontrolne
Ze względu na sposób dokonywania autoryzacji SSL jest protokołem scentralizowanym, inaczej niż np. PGP. Jest on oparty o grupę instytucji certyfikujących --- Certyfing Authorities, w skrócie CA, które opatrują swoim podpisem certyfikaty poszczególnych serwerów. CA z założenia są godni zaufania, a uzyskanie podpisu wymaga przedstawienia szeregu dowodów tożsamości. W ten sposób wchodząc na serwer legitymujący się certyfikatem jednego ze znanych CA mamy pewność że serwer rzeczywiście jest tym za który się podaje.
SSL przewiduje użycie trzech rodzajów certyfikatów:
certyfikat CA Zbiór informacji reprezentujących tożsamość danej instytucji certyfikującej. Obecność podpisu danego CA na certyfikacie serwera oznacza, że CA zaakceptował dowody przedstawione przez firmę występującą o podpis i swoim certyfikatem poświadcza autentyczność serwera.
certyfikat serwera Zbiór informacji reprezentujących tożsamość danego serwera. Certyfikat serwera musi być opatrzony podpisem CA.
certyfikat osobisty Znacznie mniej rozpowszechnione są certyfikaty klienta --- firmy promujące używanie tego certyfikatu nazywają go "cyfrowym paszportem". Wraz z podpisem odpowiedniego CA pozwala potwierdzić Twoją tożsamość jako klienta. Więcej informacji można znaleźć na stronach:
certyfikat atrybutu Zaproponowany przez Netscape jako rozszerzenie istniejących certyfikatów. Sam w sobie nie stanowi dowodu tożsamości. Wśród głównych zastosowań wymienia się np. przyznawanie tymczasowych praw podpisywania certyfikatów. Więcej informacji można znaleźć na liście IETF-TLS.
W tej chwili istnieją dwie specyfikacje SSL:
Wersja 3.0 ma poprawione wiele słabości SSL 2.0 oraz umożliwia kompresję danych. SSL 3.0 jest wstecznie kompatybilne z 2.0.
Jak nawiązuje się połączenie SSL?
Podając w URLu protokół https. Na przykład: https://www.verisign.com/ Oczywiście, nie z każdym serwerem WWW można się połączyć przez SSL. Jednak praktycznie wszystkie serwery mające coś wspólnego z zakupami przez Internet na to pozwalają. W Netscape i MSIE bezpieczne połączenie jest oznaczane przez złączenie złamanego kluczyka w lewym dolnym rogu ekranu.
Adresy portów zarezerwowane dla protokołów działających w oparciu o TLS i SSL można znaleźć pod adresem: http://www.isi.edu/in-notes/iana/assignments/port-numbers
Które przeglądarki obsługują SSL?
Z najpopularniejszych: Netscape, MSIE i Lynx.
Niestety amerykańskie prawo nakłada ograniczenia (ITAR) na eksport programów zawierających zaawansowane algorytmy kryptograficzne, wobec czego Netscape i MSIE są rozpowszechniane w dwóch wersjach: eksportowej (klucz 40-to bitowy) i amerykańskiej (128-mio bitowy). Ostatnimi czasy klucze 40-bitowe kilkukrotnie łamano dla wykazania niesłuszności ITAR i nie można ich uznać za bezpieczne.
Amerykańskie prawo przewiduje jeden wyjątek dla wielkości klucza używanego podczas połączenia SSL: połączenie z serwerem posiadającym specjalny certyfikat do wystawiania którego jest obecnie uprawniona jedynie firma VeriSign i jest on wydawany głównie bankom. Konsekwencją tego kroku jest fakt, że przeglądarki fizycznie zawierają kod umożliwiający używanie kluczy o pełnej długości, jest on jedynie zablokowany. W przypadku Netscape istnieje darmowy program Fortify umożliwiający odblokowanie wspomnianych procedur. Po uruchomieniu Fortify przeglądarka może używać kluczy o pełnej długości bez żadnych ograniczeń.
Oficjalnie wersji 128-mio bitowych nie wolno eksportować ze Stanów, ale oczywiście już dawno zostało to zrobione i można je sobie ściągnąć z Europy. Inne rozwiązanie to użycie programu SafePassage, który działa jako serwer proxy i pozwala korzystać z 128-bitowego SSL nawet eksportowym wersjom przeglądarek.
Lynx-SSL (oparty o wersje 2.7 i 2.8) używa kluczy 128-mio bitowych. Obsługa SSL w Lynxie jest w tej chwili bardzo ograniczona (brak zarządzania certyfikatami lub jakiejkolwiek konfiguracji SSL), ale działa poprawnie.
Jest jeszcze jeden program z kluczem 128-mio bitowym --- WorkHorse (pod MS Windows), przeznaczony z założenia do home-bankingu. Z tego powodu ma słabo rozbudowane wodotryski i obsługę HTMLa, za to bardzo bogate funkcje zabezpieczania transakcji (PGP, PEM, ECheque, SSL) i inne, równie interesujące.
Wszystkie wymienione programy można ściągnąć z ftp://ftp.replay.com/pub/replay/pub/browsers/ (Holandia) lub z polskiego mirrora ftp://ftp.icm.edu.pl/pub/security/replay/browsers/
| Poprzedni | Spis treści | Następny |
| Cookie | Początek rozdziału | ONE i plug-in |