HTTP

HTTP (HyperText Transfer Protocol) jest zbiorem reguł, których serwer musi przestrzegać przy przesyłaniu plików (obrazów, filmów, audio i innych form plików) przez sieć WWW. Gdy użytkownik otwiera przeglądarkę, korzysta już z protokołu HTTP. Zasadniczo jest to protokół aplikacji, który przechodzi przez górną część pakietu protokołów TCP/IP.[1]

Funkcjonalność

Mechanika i koncepcja HTTP obejmuje to, że pliki są powiązane z innymi plikami poprzez serię odniesień. Wybór ten spowoduje pojawienie się dodatkowych wniosków o przekazanie danych. Każde urządzenie serwera WWW zawiera program, który jest nazywany demonem HTTP, który jest zaprojektowany, aby przewidywać żądania HTTP i obsługiwać je po ich przybyciu. Typowa przeglądarka internetowa to klient HTTP, który stale wysyła żądania do urządzeń serwerowych. Użytkownik wprowadza żądanie pliku przechodząc przez plik sieciowy, który w tym przypadku jest zazwyczaj adresem URL, lub klikając na link; przeglądarka tworzy żądanie HTTP, a następnie wysyła je na adres IP wskazany przez adres URL.

HTTP śledzi dany cykl za każdym razem, gdy wysyła żądanie:[2]

  1. Przeglądarka zażąda strony HTML. Serwer zwróci wtedy plik HTML z hosta.1.
  2. Przeglądarka zażąda arkusza stylów. Następnie serwer zwraca plik CSS.
  3. Przeglądarka żąda zdjęcia w formacie JPG. Serwer zwraca plik JPG.
  4. Przeglądarka zażądałaby kodu JavaScript (język programowania). Serwer zwróci wtedy plik JS.
  5. Przeglądarka żąda różnych form danych. Serwer zwraca dane w postaci plików XML lub JSON.

Różnica między HTTP i HTTPS

Większość osób nie zdaje sobie sprawy z różnic między http:// i https://, ponieważ obie są prawie wizualnie podobne. Znajomość różnic między nimi ma zasadnicze znaczenie dla utrzymania bezpiecznej i wydajnej strony internetowej, która może chronić informacje i dane. Przeglądarki zostały zaprojektowane tak, aby pasek adresu URL podświetlał literę S w HTTPS innym kolorem, tak aby użytkownicy mogli to zauważyć. [1:1]

Oto kilka wyraźnych różnic pomiędzy nimi:

  1. HTTP - Nie jest wdrażane żadne szyfrowanie danych.
    1. Każdy link URL wykorzystuje HTTP jako najbardziej podstawowy typ protokołu Hypertext Transfer Protocol. Mając to na uwadze, HTTP przypomina system, który nie należy do żadnego stanu. Pozwala to na włączenie dowolnego połączenia na żądanie.
    2. Protokół ten jest zasadniczo protokołem warstwy aplikacji. Oznacza to, że skupia się on bardziej na informacjach, które są przedstawiane użytkownikowi, ale nie koncentruje się na tym, w jaki sposób dane są przekazywane z hosta źródłowego do odbiorcy. Może to być szkodliwe, ponieważ ten sposób dostawy może być łatwo przechwytywany i śledzony przez złośliwych użytkowników z zewnątrz (zazwyczaj znanych jako hakerzy).
  2. HTTPS - dane są szyfrowane.
    1. W porównaniu z HTTP, dane użytkownika, takie jak numery kart kredytowych i inne formy ważnych danych osobowych, są szyfrowane. Uniemożliwia to dostęp do tych form poufnych danych jakiejkolwiek formie złośliwych użytkowników będących osobami trzecimi.
    2. Dzięki bezpieczniejszej sieci użytkownicy będą mieli większą pewność siebie podczas korzystania z witryny, ponieważ ich dane są szyfrowane, a użytkownicy o złośliwym zamiarze będą mieli trudności z włamaniem się do ich danych.[3]
  3. Statystyki pokazują, że 84% kupujących rezygnuje ze stron internetowych, gdy tylko dowiedzą się, że strona przenosi dane poprzez niepewny kanał.
  4. 29% użytkowników zdaje sobie sprawę z różnicy między HTTP a HTTPS i aktywnie poszukuje tej różnicy na pasku adresu.
    1. Będąc nową formą technologii, HTTPS nadal posiada kilka cech, które są nadal uważane za eksperymentalne. W związku z tym, starsze typy przeglądarek będą miały trudności z dostosowaniem się do tych stron internetowych.
    2. W porównaniu z tworzeniem strony internetowej z protokołem HTTP, przejście na protokół HTTPS wymaga przejścia przez kilka procesów prawnych w celu uzyskania certyfikatu SSL. Oznacza to, że właściciele stron i witryn muszą wydawać pieniądze. Uzyskanie certyfikatu SSL jest usługą płatną, świadczoną przez Urząd Certyfikacji.
    3. Ze względu na proces kodowania, serwer kieruje moc i czas przetwarzania w kierunku kodowania informacji przed ich przesłaniem.

Podsumowanie różnic technicznych pomiędzy HTTP i HTTPS:

  • HTTP jest niepewny, podczas gdy HTTPS jest bezpiecznym protokołem.
  • HTTP wykorzystuje port TCP 80, podczas gdy HTTPS wykorzystuje port TCP 4433.
  • HTTP działa w warstwie aplikacji, a HTTPS w warstwie transportowej (TLS).
  • Nie ma certyfikatu SSL, który jest wymagany dla HTTP, ale HTTPS wymaga podpisania i wdrożenia certyfikatu SSL przez urząd certyfikacji (CA).
  • HTTP niekoniecznie wymaga walidacji domeny, podczas gdy HTTPS obowiązkowo wymaga walidacji domeny i niektórych certyfikatów, które wymagają procedury prawnej.
  • W protokole HTTP nie ma szyfrowania danych, podczas gdy dane są szyfrowane bezpośrednio przed ich przesłaniem do protokołu HTTPS.
  • HTTPS jest rozszerzeniem HTTP. W tym przypadku współpracuje on wspólnie z innym protokołem, mianowicie Secure Sockets Layer (SSL) w celu bezpiecznego przesyłania danych.
  • Zarówno HTTP, jak i HTTPS nie odnoszą się do danych, które zostaną przesłane do miejsca docelowego. Odwrotnie, SSL nie posiada żadnych funkcji związanych z wyglądem danych.

Użytkownicy często błędnie uważają, że HTTPS i SSL to te same protokoły. HTTPS jest bezpieczny, ponieważ wykorzystuje protokół SSL do przesyłania danych. Obecnie SSL jest powoli wycofywany przez TSL, ponieważ jest to jeszcze bezpieczniejsza metoda szyfrowania danych, która będzie wysyłana. [4]


  1. https://www.w3schools.com/whatis/whatis_http.asp ↩︎ ↩︎

  2. https://www.globalsign.com/en/blog/the-difference-between-http-and-https/ ↩︎

  3. https://www.howtogeek.com/181767/htg-explains-what-is-https-and-why-should-i-care/ ↩︎

  4. https://www.instantssl.com/https-tutorials-ssl-certificates ↩︎