GNU/Linux >> Znalost Linux >  >> Linux

HTTP vs. HTTPS :Jaký je rozdíl?

Cílové publikum

Tento článek je určen pro běžného čtenáře, který má základní znalosti o tom, jak funguje internet.

Úvod

Když surfujete na internetu, většina webových stránek je do vašeho počítače doručena pomocí komunikačního protokolu zvaného HTTP, který obsluhuje převážnou většinu webových stránek na World Wide Web. Může se však jednat o zranitelné komunikační schéma, což je místo, kde do hry vstupuje HTTPS.

HTTP

Když uživatel zadá webovou adresu do adresního řádku prohlížeče a stiskne klávesu „Enter“, v zákulisí se mnoho děje, než se webová stránka zobrazí v okně prohlížeče. Klientský počítač se nejprve dotáže serveru DNS (Domain Name System) na skutečnou číselnou IP adresu webového serveru přidruženého k webové adrese. Jakmile klientský počítač zná IP adresu, požádá webový server o požadovaný zdroj. Server poté odpoví a webová stránka je doručena do počítače uživatele. To vše se obvykle děje během milisekund a používá protokol zvaný HTTP.

HTTP (HyperText Transfer Protocol) je mechanismus, kterým je naprostá většina webových stránek doručována přes World Wide Web. Jedná se o protokol server/client request, ve kterém klient (obvykle počítač uživatele) požaduje datový balíček (obvykle webovou stránku) ze serveru. Například, když virtuální privátní server uslyší požadavek, odpoví stavovou odpovědí, obvykle „HTTP/1.1 200 OK“. Poté následuje s požadovanými údaji. Takže požadavek/odpověď od klienta na server může vypadat nějak takto:

CLIENT:
GET /index.html HTTP/1.1
Host: www.example.com
User-agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:42.0) Gecko/20100101 Firefox/42.0

SERVER:
HTTP/1.1 200 OK
Date: Wed, 16 Sept 2015 23:59:59 GMT
Server: Apache 1.3.3.3 (Unix)
Content-Type: text/html
Content-Length: 1922
<html>
<head>
<title>Welcome to my site!</title>
</head>
<body>
This is a very simple web page, written in HTML.
</body>
</html>

.
Protokol se používá od roku 1991 a je uznávaným, platným a užitečným komunikačním protokolem. Nikdy však nebyl navržen s ohledem na bezpečnost. Výměna je nešifrovaná, což znamená, že pokud je zachycena, kdokoli si může přečíst obsah požadavku i odpovědi. Je zvláště zranitelný vůči útoku „man-in-the-middle“, při kterém neautorizovaný počítač funguje jako prostředník mezi počítačem uživatele a internetem, čte a zaznamenává všechny odeslané a přijaté zprávy.

Zabezpečení webu pomocí HTTPS

Existuje však další protokol, který funguje podobně jako HTTP, ale je výrazně bezpečnější:HTTPS, což je zkratka pro HyperText Transfer Protocol Secure. HTTPS používá TLS (Transport Layer Security) k šifrování komunikace mezi klientským počítačem a serverem, díky čemuž jsou data nepoužitelná a nečitelná, pokud jsou zachycena. Můžete také slyšet TLS nazývané SSL (Secure Socket Layer). SSL bylo předchůdcem TLS a mnozí stále používají tento termín, když mluví o technologii, která pomáhá zabezpečit HTTPS.

TLS funguje prostřednictvím digitálních certifikátů. Certifikační autorita (CA) na žádost vydá serveru certifikát, který slouží k ověření tohoto serveru pro všechny připojené klienty. V transakci HTTPS klient kontaktuje server s povoleným TLS a požaduje šifrovanou relaci. Server poté odpoví kopií svého digitálního certifikátu. Tento certifikát obsahuje důvěryhodnou CA, která jej vydala, a veřejný klíč serveru pro šifrování.

Klient obdrží informace o certifikátu serveru a může ověřit od vydávajícího úřadu, že certifikát je platný. Jakmile se klient přesvědčí, že server je autentický, vygeneruje náhodné číslo. Toto náhodné číslo pak použije ke generování klíče relace. Klient poté zašifruje náhodné číslo pomocí veřejného klíče serveru a odešle jej na server. Protože je zašifrována pomocí veřejného klíče serveru, server je jediný, kdo dokáže dešifrovat zprávu pomocí svého soukromého klíče. Jakmile server dešifruje zprávu klienta, má stejné náhodné číslo pro vygenerování stejného klíče relace vygenerovaného klientem. Od tohoto okamžiku je veškerá komunikace mezi serverem a klientem šifrována a dešifrována pomocí tohoto klíče relace. Informace, které jsou přenášeny, jsou stejné jako HTTP provoz, jen jsou nyní před odesláním zašifrovány, takže pokud by náhodou došlo k jejich zachycení, zachycující entita by nebyla schopna informace dešifrovat. Porovnejte, jak vypadá níže uvedený provoz HTTPS s předchozím příkladem provozu HTTP:

...........s.....*...."..*.....r.].di.s0.$. .<...v.b..'.....O..Z|.~$..!N...X...+./.
.......3.9./.5.
.............www.atlantic.net......
.................#..zS...$z.W..0.......c...#.;qu..*...3...... -.E;[email protected]/P.rU..0.....5P......#X...n.b.......C.&...tRgW.a.....{v.......)...-1..J9S.V..G.In......|..u..O0.....mU...|..q..Ja.O.n..G..E.W}8E.Q...0..k3t.........h2.spdy/3.1.http/1.1..........
...........................c...................................................................................................
....Q...M..V.Q$._...9.&ye.L.i..T'.l.y..3`]| .<...v.b..'.....O..Z|.~$..!N...X./..................([email protected]#8....u
..........(...........[[email protected]
.............g.m4..a..V&!B..d....bv.......3......&...c......
.....G...z..x.....SzV...H.P...L`...T.....s.{...ip....PY..)Z.[.<N.f}WOv$.>........../.....^.....hc ..e.\..`.L.!.c.m.=`...[....An...c2.N..?......$.|....M.?WA.x......NCIk.....j+VUZ..p...\ZM....=.<....Ra..S..% .o...{....\ nc..~c=.......'.]...D.t..p0.-b.8*g$Yo....!c...y.#......d..H9.o.+..'..xn\.... q.....H}-....Q>..D!...~.yV..v..
\Vi.P.....K.FV-........W.>]y....M...A\....>....i/o.+..b.P.."..H..xP..:......'...VX.......j.........0D...J..Zw....b.;b.
.....*.(..h.V.F.K..8..L.M.s...rwdc.{F%o.j....=.C...w.<.|..).3.. =32..g..>...h8(..;\}.h<....yP\6r.y..3.......592.W...r..pT.*.-D....e.]..).....
.....<.i..o`[email protected]_d"....m..!L .G.{........U.....[..r..S....a)?.SY...%....>...jl.....
.W.4.....X.Nd.....Z...%...a.;...om..mH..B.._...*......H..}(fi...,0..8..,}.[Z8.N..H...F....yj.N..b.^...].S.'......u..Z.j....spS.p.C.vhk...O..!..Y".|.w)El....t........R..h.....L.0i.M.)...E..V.C.....U........u..i.w......H..;.F.......u..
2Op.%........Z.>2.N2),.o..M..
...f.Z........7r9
.....

.

Získání certifikátu TLS od certifikační autority

Certifikační autority nabízejí širokou škálu certifikátů TLS. Ceny se liší v závislosti na požadovaném rozsahu autentizace. Velmi základní certifikát (možná používaný například k ověření uživatelů v rámci organizace) je zdarma. Tři nejběžnější úrovně ověření jsou DV neboli Ověření domény , OV nebo Ověření organizace a EV nebo Extended Validation . Certifikáty DV jsou nejběžnější a obvykle se ověřují zasláním e-mailu řadiči názvu domény. Certifikáty OV nabízejí o něco větší důvěru; CA ověřuje nejen kontrolu nad doménou, ale také, že podnik tuto doménu používá. Certifikáty EV jsou nejdůvěryhodnější a vyžadují významnou dokumentaci od organizace, která prokáže, že jsou legitimní. Tyto certifikáty často používají organizace, které chtějí prezentovat bezpečný web, zejména pokud mají finanční vztah se svými návštěvníky.

I když je proces šifrování silný, díky čemuž jsou zprávy HTTPS obzvláště bezpečné ve srovnání s nezabezpečenými transakcemi HTTP, existuje jeden slabý článek v řetězci:Certifikační autority fungují na základě důvěryhodnosti. Pokud by byla například CA unesena, mohla by vydat důvěryhodný certifikát pro libovolnou doménu, který by byl akceptován jako platný a důvěryhodný všemi prohlížeči. Útočník s takovým certifikátem by pak mohl vytvořit podvodnou kopii této domény, která by vypadala jako důvěryhodná, s úmyslem zachytit provoz do této domény. K takové události došlo v roce 2011, kdy byla íránskou vládou kompromitována nizozemská CA, která byla použita k zachycení relací procházení íránských občanů. Není to běžný jev, ale uživatelé, kteří si dbají na bezpečnost, by si toho měli být rozhodně vědomi.
.

Identifikace připojení HTTPS

Nejjednodušší způsob, jak ověřit, zda je vaše připojení HTTPS bezpečné, je podívat se do adresního řádku vašeho prohlížeče. Většina prohlížečů identifikuje připojení HTTPS ikonou visacího zámku někde poblíž webové adresy, zatímco nešifrovaná připojení HTTP žádnou takovou ikonu nemají. Níže je uveden příklad běžného připojení HTTP ve Firefoxu, následovaný příkladem připojení HTTPS ve Firefoxu a Google Chrome.

HTTP připojení ve Firefoxu

Indikátor HTTPS ve Firefoxu

Indikátor HTTPS v Chrome

Můžete také vidět zelenou ikonu zámku, která obsahuje název organizace nebo webu. Tato nápadnější ikona ukazuje, že organizace získala certifikát EV, jak je uvedeno níže.

Indikátor HTTPS (s certifikátem EV TLS) ve Firefoxu

.

Závěr

HTTPS splňuje potřebu, kterou HTTP nechává otevřenou – potřebu zabezpečení. Výměny a použitý protokol jsou stejné; pouze HTTPS přidává další krok šifrování, který pomáhá chránit informace předávané přes internet. I když nic není absolutně bezpečné, před odesláním citlivých informací, jako jsou hesla nebo čísla kreditních karet/bankovních účtů, se vyplatí zkontrolovat, zda web používá šifrování HTTPS.

Atlantic.Net

Od roku 1995 poskytuje Atlantic.Net zákazníkům internetové služby, včetně spravovaného, ​​cloudového a dedikovaného hostingu. Za více než 20 let služby se naše řešení zaměřují na poskytování těch nejlepších webových řešení našim váženým zákazníkům!


Linux
  1. Jaký je rozdíl mezi InnoDB a MyISAM?

  2. Co je webový server a jak webový server funguje?

  3. Jaký je rozdíl mezi cPanelem a WHM?

  1. Jaké jsou výhody CloudLinuxu?

  2. Jaký je rozdíl mezi ls a l?

  3. Jaký je rozdíl mezi unlink a rm?

  1. Linux vs. Unix:Jaký je rozdíl?

  2. Ubuntu Server a Desktop:Jaký je rozdíl?

  3. Jak nainstalovat webový server Apache na Ubuntu