http vs https an depth comparison features
Poznaj dokładną różnicę między HTTP i HTTPS z przykładami:
Kiedy mówimy „HTTP a HTTPS”, najważniejszym wymaganiem jest zrozumienie podstawowego znaczenia każdego z tych dwóch terminów.
Kiedy już przyjrzymy się, co oznaczają HTTP i HTTPS, możemy przejść dalej, aby je porównać.
Czego się nauczysz:
- Co to jest HTTP?
- Co to jest HTTPS?
- Jak działa HTTPS?
- Dokładne różnice - HTTP vs HTTPS
- Wydajność HTTP vs HTTPS
- Wniosek
- rekomendowane lektury
Co to jest HTTP?
HTTP to akronim dla H. yper t wew T okup P. rotocol. W ramach pakietu protokołów internetowych HTTP jest protokołem warstwy aplikacji służącym do ustanawiania i ulepszania komunikacji klient-serwer między rozproszonymi, współdzielonymi i hipermedialnymi systemami informacyjnymi.
Komunikacja odbywa się poprzez wysyłanie żądań HTTP i otrzymywanie odpowiedzi HTTP przez www (sieć WWW).
Protokół HTTP został opracowany, aby umożliwić hipertekst i www. Działa jak protokół żądanie-odpowiedź w modelu obliczeniowym klient-serwer.
Klient (powiedzmy, przeglądarka internetowa) wysyła żądanie HTTP do serwera WWW (powiedzmy do komputera w chmurze). Serwer odbiera żądanie i wykonuje aplikację w celu przetworzenia żądania. Następnie zwraca dane wyjściowe wykonania aplikacji, tj. Odpowiedź HTTP do klienta. Klient otrzymuje odpowiedź.
(Wizerunek Źródło )
Część „Protokół” w nazwie HTTP wskazuje, że jest to zestaw reguł. HTTP jest jednym z protokołów w zestawie protokołów internetowych.
Część „Transfer” w nazwie HTTP wskazuje na przesyłanie plików przez www. Te pliki mogą zawierać tekst, grafikę, obrazy, audio, wideo lub inne multimedia.
Część „HyperText” w nazwie HTTP wskazuje, że dokumenty lub pliki mogą zawierać łącza do innych tekstów, do których czytelnik może uzyskać natychmiastowy dostęp poprzez kliknięcie myszą, naciśnięcie klawisza lub dotknięcie ekranu.
Tak więc hipertekst umożliwia rozległe odsyłacze, w których pliki mogą zawierać łącza do innych plików, których wybór spowoduje dodatkowe żądanie transferu.
Teraz, w prostych słowach, możesz zrozumieć, że HTTP to zestaw reguł dotyczących przesyłania plików hipertekstowych przez www.
Co to jest HTTPS?
HTTPS, opracowany przez firmę Netscape, jest akronimem dla H. ypertext T okup P. rotocol S ecure. Ograniczeniem protokołu HTTP jest to, że przepływ informacji między klientem a serwerem nie jest szyfrowany, a zatem każdy może je ukraść.
najlepszy prywatny serwer wow dla pvp
Hipertekst wymieniany za pomocą protokołu HTTP jest przesyłany jako zwykły tekst i każdy może go łatwo przeczytać lub wstrzyknąć własny kod, jeśli przechwyci komunikację dla własnych korzyści. Dlatego protokół HTTPS został opracowany w celu przezwyciężenia tego zabezpieczenia związanego z ograniczeniami protokołu HTTP.
„S” na końcu protokołu HTTPS jest znane jako „bezpieczny”. HTTPS to rozszerzenie protokołu HTTP umożliwiające bezpieczną komunikację w sieci komputerowej i jest szeroko stosowane w Internecie. HTTPS = HTTP + protokoły kryptograficzne. HTTPS należy również do warstwy aplikacji pakietu protokołów internetowych.
Czasami HTTPS jest również nazywany HTTP przez TLS lub HTTP przez SSL. Dzieje się tak, ponieważ wykorzystuje Transport Layer Security (TLS) lub Secure Socket Layer (SSL) jako podwarstwę do szyfrowania protokołu komunikacyjnego. Używa certyfikatu SSL do tworzenia bezpiecznego połączenia między przeglądarką a serwerem.
HTTPS zapewnia dwukierunkowe szyfrowanie między klientem a serwerem, tj. Szyfruje i odszyfrowuje żądania przeglądarki i odpowiedzi serwera, co z kolei zapewnia ochronę przed atakami typu man-in-the-middle, podsłuchiwaniem i fałszowaniem wiadomości.
Tak więc HTTPS zasadniczo zapewnia uwierzytelnianie odwiedzanej strony internetowej i chroni prywatność i integralność przesyłanych danych podczas komunikacji klient-serwer. Zapewnia bezpieczną komunikację.
(Wizerunek Źródło )
Musiałeś zauważyć ikonę kłódki, jak poniżej, po otwarciu przeglądarki internetowej, takiej jak Chrome, IE lub jakakolwiek inna.
Ta ikona kłódki informuje, że działa połączenie HTTPS.
HTTPS początkowo pojawił się w domenie finansowej, na przykład w transakcjach płatności online, takich jak bankowość internetowa i zakupy online.
Ale w ostatnim czasie jest szeroko stosowany w prawie wszystkich typach witryn internetowych, dzięki czemu autentyczność danych internetowych jest chroniona, konto użytkownika i informacje o przeglądaniu mogą być zabezpieczone i zachowane w tajemnicy.
Jak działa HTTPS?
Jak wspomniano powyżej, HTTPS używa SSL lub TLS do włączenia szyfrowania. Protokoły SSL i TLS opierają się na asymetrycznym algorytmie klucza, w którym mamy dwa klucze - klucz publiczny i klucz prywatny. Oba klawisze są sparowane i działają razem.
Klucze publiczne są przesyłane do klienta lub przeglądarek internetowych za pośrednictwem certyfikatów, a klucz prywatny jest przechowywany na serwerze sieciowym tej konkretnej witryny.
Protokół HTTPS szyfruje każdą wymianę danych, która ma miejsce między przeglądarką użytkownika a serwerem, dzięki czemu nikt nie może odczytać niczego podczas przesyłania między serwerem a przeglądarką.
domyślna brama jest niedostępna
Dane są szyfrowane po stronie nadawcy za pomocą unikalnego klucza szyfrowania (liczby losowe) i algorytmu szyfrowania. Te zaszyfrowane dane są również znane jako szyfr . Z drugiej strony, tj. Strony odbiorcy, ten zaszyfrowany tekst zostanie odszyfrowany przez odwrócenie procesu szyfrowania, a oryginalne dane zostaną przywrócone.
Teraz, jeśli oba końce (przeglądarka i serwer) używają tego samego klucza szyfrowania, jest to znane jako szyfrowanie symetryczne; Najlepszym tego przykładem jest WIFI używane w naszym domu, gdzie zarówno router, jak i laptop używają tego samego hasła.
Podczas gdy w szyfrowaniu asymetrycznym zarówno klucze szyfrujące, jak i deszyfrujące są różne, co jest używane w początkowym procesie uzgadniania między przeglądarką internetową a serwerem.
Strony internetowe korzystające z HTTPS mają unikalny certyfikat cyfrowy, który jest kupowany od niektórych firm z urzędów certyfikacji, takich jak GeoTrust, GoDaddy itp.
Cały proces działania HTTPS można podzielić na dwa główne etapy:
1) Po wprowadzeniu adresu URL, takiego jak www.Yahoo.com, serwer Yahoo przekazuje przeglądarce internetowej dwie rzeczy: 'Certyfikat' podpisany przez dowolny urząd certyfikacji (załóżmy, że jest to certyfikat podpisany przez VeriSign), a kolejną bardzo ważną rzeczą jest „ klucz publiczny' (niech to będzie dowolna liczba losowa).
Teraz przeglądarka internetowa zawiera listę kluczy publicznych dostarczonych przez główne zarejestrowane urzędy certyfikacji. Odszyfruje certyfikat za pomocą odpowiedniego dopasowanego klucza publicznego.
Jeśli klucz publiczny jest w stanie odszyfrować podpisany cyfrowo Certyfikat, to tylko on pozwoli na dalsze tworzenie bezpiecznego połączenia do wymiany danych poprzez pokazanie zielonej kłódki przed adresem URL.
W przeciwnym razie, jeśli klucz publiczny nie zostanie dopasowany, zatrzyma całe połączenie i wyświetli niezaufaną witrynę internetową z symbolem czerwonego krzyża na początku adresu URL. Cały ten proces jest znany jako proces uzgadniania.
(Wizerunek Źródło )
Podczas pracy w Internecie musieliście często widzieć te symbole powyżej zielonej kłódki i czerwonego krzyża https.
Pamiętaj, że klucz prywatny i klucze publiczne są używane razem do szyfrowania i odszyfrowywania danych. Jeśli do szyfrowania używany jest jeden klucz (publiczny lub prywatny), do odszyfrowania używany jest drugi klucz. Tak więc do tego kroku używana jest komunikacja asynchroniczna.
Przejdźmy do następnego kroku w tym procesie.
2) Jak wspomniano powyżej, po przejściu do www.Yahoo.com serwer Yahoo wyśle dane w postaci zaszyfrowanej za pomocą swojego klucza publicznego, który można odszyfrować tylko za pomocą odpowiedniego klucza prywatnego serwera Yahoo. Ten klucz prywatny nie jest udostępniany publicznie. Dlatego odszyfrowanie danych bez klucza prywatnego jest prawie niemożliwe.
Oprócz klucza publicznego i klucza prywatnego nasza przeglądarka internetowa utworzy trzeci klucz nazywany kluczem sesyjnym. Teraz ten klucz sesji zostaje zaszyfrowany kluczem publicznym odebranym z serwera, a ten zaszyfrowany klucz sesji jest współdzielony z serwerem Yahoo! Ten serwer uzyskuje klucz sesji, odszyfrowując go za pomocą klucza prywatnego.
jak zrobić tablicę obiektów w java
Teraz zarówno użytkownik, jak i serwer mają ten sam klucz sesji. Teraz, jeśli komputer użytkownika i serwer pozostaną w tej samej sesji, będą nadal używać szyfrowania symetrycznego, dopóki sesja nie zakończy się zamknięciem strony internetowej.
Dokładne różnice - HTTP vs HTTPS
HTTP | HTTPS |
---|---|
Odpowiada na potrzebę wymiany informacji przez Internet. | Odpowiada na potrzebę wymiany poufnych informacji przez niezabezpieczony internet. |
Adres URL HTTP zaczyna się od HTTP: // i używa portu 80 jako domyślnego portu. | Adres URL HTTPS zaczyna się od https: // i używa portu 443 jako domyślnego portu. |
Protokół HTTP nie jest zabezpieczony i jest podatny na ataki typu man-in-the-middle i podsłuchiwanie, co może prowadzić do wstrzyknięć wirusów i wycieku poufnych informacji do atakujących. | HTTPS jest szyfrowany i zabezpieczony. Jest odporny na takie ataki i zapewnia uwierzytelnianie, prywatność i bezpieczeństwo. |
Ten protokół został wymyślony przez Sir Timothy'ego Johna. | Protokół ten został wynaleziony przez firmę Netscape Corporation dla przeglądarki Navigator. |
Nie używa certyfikatu SSL do komunikacji. | Używa certyfikatu SSL do komunikacji. |
Nie używa szyfrowania danych. | Używa szyfrowania danych. |
Nadaje się do użytku w witrynach służących do konsumpcji informacji, takich jak blogi, fora, witryny edukacyjne, rozrywkowe i artykuły. | Jest to właściwe rozwiązanie dla witryn, które zbierają prywatne i wrażliwe informacje, takie jak dane finansowe lub inne poufne dane. Na przykład bramki płatności, witryny sklepów. |
Mówiąc o szybkości, jest szybszy niż HTTPS ze względu na swoją prostotę. Jest to protokół bezstanowy i nie przypomina niczego z poprzedniej sesji internetowej. | Mówiąc o szybkości, jest wolniejsza niż HTTP. Dzieje się tak, ponieważ ustanowienie bezpiecznej sesji zajmuje trochę czasu. |
Nie poprawia rankingu wyszukiwania. | Poprawia ranking wyszukiwania. W 2014 roku Google zaczął wykorzystywać HTTPS jako sygnał rankingowy. |
Nie zapisuje danych strony odsyłającej. Źródła odesłań pojawiają się tylko jako odwiedziny bezpośrednie. | Zachowuje dane strony odsyłającej. W ten sposób sprawia, że Google Analytics jest bardziej skuteczny i okazuje się dużą zaletą dla SEO. |
Mniejsze zaufanie do odwiedzających, ponieważ czują ryzyko naruszenia bezpieczeństwa, a ich poufne informacje mogą zostać ujawnione. | Buduje zaufanie wśród odwiedzających, ponieważ wiedzą, że ich poufne informacje, takie jak poświadczenia, historia przeglądania, dane konta itp., Nie są narażone na ujawnienie. |
Nie możemy używać AMP (przyspieszonych stron mobilnych) z HTTP. | HTTPS umożliwia korzystanie z AMP. Posiadanie HTTPS jest koniecznością, jeśli chcesz korzystać z Google AMP. |
Te dwa obrazy pomogą Ci zwizualizować główne różnice między HTTP i https:
(Wizerunek Źródło )
Wydajność HTTP vs HTTPS
Ogólnie protokół HTTP jest szybszy niż HTTPS ze względu na swoją prostotę. W HTTPS mamy dodatkowy krok uzgadniania SSL w przeciwieństwie do HTTP. Ten dodatkowy krok nieco opóźnia szybkość ładowania strony w witrynie.
Jednak to znowu zależy od pewnych rzeczy, takich jak długość sesji, stosunek zawartości statycznej do dynamicznej, zachowanie klienta w pamięci podręcznej, sprzęt, oprogramowanie serwera itp.
Na przykład Jeśli na serwerze znajduje się duża zawartość dynamiczna, HTTPS rzadziej blokuje ładowanie strony, ponieważ czas spędzony na uzgadnianiu SSL staje się nieistotny w stosunku do czasu poświęconego na generowanie treści. Jednak w przypadku dużej zawartości statycznej narzut jest wyższy.
Na bardzo krótkie sesje ma również wpływ czas uzgadniania SSL. Jednak w przypadku długich sesji koszt ten jest ponoszony na początku sesji, a późniejsze kolejne żądania będą szybsze.
Ale przede wszystkim korzyści w zakresie bezpieczeństwa zapewniane przez HTTPS całkowicie przeważają nad niewielkimi opóźnieniami w działaniu.
Istnieją również pewne dostępne sposoby na poprawę wydajności HTTPS.
To zawiera:
- HTTP / 2: Dzięki HTTP / 2 HTTPS staje się coraz szybszy, kompensując w ten sposób wszelkie narzuty wydajności. Główne zalety i funkcje protokołu HTTP / 2 obejmują multipleksowanie i współbieżność, kompresję nagłówków, zależności strumienia i wypychanie serwera.
- Kompresja Brotli: Jest to algorytm kompresji bezstratnej typu open source wprowadzony przez Google. Zmniejsza zużycie przepustowości i pomaga w szybszym ładowaniu treści.
- Kompresja HPACK: Jest to oparte na kodowaniu Huffmana i zmniejsza rozmiar nagłówka o około 30%. Kompresja HPACK jest odporna na ataki oparte na kompresji i ma możliwość kodowania dużych nagłówków.
- OCSP (Protokół statusu certyfikatu online) Zszywanie: Jest to metoda szybkiej weryfikacji certyfikatu SSL.
- CDN: CDN to sieci dostarczania treści. Korzystanie z CDN może znacznie skrócić czas podróży w obie strony i całkowity koszt uzgadniania TCP i TLS.
Istnieje witryna internetowa http://www.httpvshttps.com/, która przeprowadza testy HTTP VS HTTPS. Okazało się, że w przypadku tej samej strony wersja HTTP ładowała się 20,306 sekund, a wersja HTTPS - 7,630 sekundy. Próbowałem tego w przeglądarce Chrome.
Dostępne są również inne platformy testowe i wizualne narzędzia porównawcze, które pokazują porównanie czasów ładowania wersji stron HTTP i https.
Wniosek
Tak więc w tym artykule zrozumieliśmy podstawy HTTP i HTTPS, a także zobaczyliśmy różnice między nimi. Podczas gdy HTTP zapewnia bardzo podstawowy protokół przesyłania danych między klientem a serwerem, HTTPS dodaje warstwę bezpieczeństwa do HTTP, służąc jego trzem głównym celom - prywatności, integralności i uwierzytelnianiu.
W przeszłości połączenia HTTPS były używane tylko do transakcji finansowych online. Jednak w ostatnich latach prawie wszystkie typy witryn internetowych zaczęły używać połączenia HTTPS w celu zapewnienia bezpiecznej komunikacji.
Przecież prywatność i bezpieczeństwo związane z poufnymi informacjami użytkownika i historią przeglądania nie mogą zostać naruszone! Pod względem architektury HTTPS ma narzut związany z uzgadnianiem SSL i dlatego może być wolniejszy niż HTTP. Jednak korzyści w zakresie bezpieczeństwa, które oferuje, przewyższają te niewielkie opóźnienia w działaniu.
W rzeczywistości istnieje wiele sposobów na poprawę wydajności protokołu HTTPS, a obecnie HTTPS rośnie szybciej.
Mam nadzieję, że ten artykuł wzbogaciłby Twoją wiedzę na temat koncepcji HTTP i HTTPS!
rekomendowane lektury
- Rejestrator skryptów testowych JMeter HTTPS
- Różnica między LoadRunner a Performance Center
- Wydajność MongoDB: wydajność blokowania, błędy stron i profilowanie bazy danych
- Wprowadzenie do Appium Studio: kluczowe zalety i funkcje
- Georgia Tech standaryzuje testy wydajności w RadView WebLOAD
- Różnica między planem testów wydajnościowych a strategią testów wydajnościowych
- Jak przeprowadzić ręczne testy wydajności?
- Narzędzia i usługi do testowania wydajności witryny