Viac na
Aký je rozdiel medzi protokolmi SSL, TLS a HTTPS?
Mám zmätok v pojmoch v tejto oblasti. Čo je to SSL, TLS a HTTPS? Aké sú medzi nimi rozdiely?
551
3
TLS je nový názov pre protokol SSL. Konkrétne, protokol SSL sa dostal do verzie 3.0; TLS 1.0 je "SSL 3.1". V súčasnosti definované verzie TLS zahŕňajú TLS 1.1 a 1.2. Každá nová verzia pridáva niekoľko funkcií a upravuje niektoré vnútorné detaily. Niekedy hovoríme "SSL/TLS".
HTTPS je HTTP v rámci SSL/TLS. SSL (TLS) vytvára zabezpečený obojsmerný tunel pre ľubovoľné binárne údaje medzi dvoma hostiteľmi. HTTP je protokol na odosielanie požiadaviek a prijímanie odpovedí, pričom každá požiadavka a odpoveď pozostáva z podrobných hlavičiek a (prípadne) určitého obsahu. Protokol HTTP je určený na prevádzku cez obojsmerný tunel pre ľubovoľné binárne údaje; ak je tento tunel spojením SSL/TLS, potom sa celok nazýva "HTTPS".
Na vysvetlenie skratiek:
Protokoly SSL a TLS sú protokoly, ktorých cieľom je zabezpečiť súkromie a integritu údajov medzi dvoma stranami (pozri RFC 2246) a ktoré sú navrhnuté na prevádzku cez spoľahlivý komunikačný protokol (zvyčajne TCP). Hoci špecifikácia TLS nehovorí o soketoch, návrh SSL/TLS bol urobený tak, aby ich aplikácie mohli používať takmer ako tradičné sokety TCP, napríklad
SSLSocket
v Jave rozširujeSocket
(sú tu však malé rozdiely z hľadiska použiteľnosti). HTTPS je HTTP cez SSL/TLS, kde sa najprv vytvorí spojenie SSL/TLS a potom sa cez toto spojenie SSL/TLS vymieňajú bežné údaje HTTP. To, či sa na tento účel použije protokol SSL alebo TLS, závisí od konfigurácie vášho prehliadača a servera (zvyčajne existuje možnosť povoliť protokoly SSLv2, SSLv3 alebo TLS 1.x). Podrobnosti o tom, ako protokoly HTTP a SSL/TLS tvoria protokol HTTPS, nájdete v dokumente RFC 2818. Pokiaľ ide o rozdiel medzi SSL a TLS, možno vás zaujmú tieto dve odpovede, ktoré som napísal na podobné otázky na StackOverflow a ServerFault:STARTTLS
v LDAP/SMTP). Je to opísané v RFC 2817. Pokiaľ viem, takmer nikdy sa nepoužíva (a nepoužíva sa anihttps://
v prehliadačoch). Hlavnou relevantnou časťou tohto RFC je časť oCONNECT
pre HTTP proxy servery (používajú ju HTTP proxy servery na sprostredkovanie HTTPS spojení).SSL VS TLS
Pojmy SSL a TLS sa často používajú zameniteľne alebo v spojení (TLS/SSL), ale v skutočnosti je jeden predchodcom druhého - SSL 3.0 slúžil ako základ pre TLS 1.0, ktorý sa preto niekedy označuje ako SSL 3.1.
Čo je bezpečnejšie SSL alebo TLS
Z hľadiska bezpečnosti sa oba považujú za rovnako zabezpečené
Hlavný rozdiel spočíva v tom, že zatiaľ čo spojenia SSL sa začínajú zabezpečením a priamo prechádzajú na zabezpečenú komunikáciu, spojenia TLS sa najprv začínajú nezabezpečeným "hello" na server a na zabezpečenú komunikáciu sa prejde až po úspešnom handshake medzi klientom a serverom. Ak sa z akéhokoľvek dôvodu nepodarí uskutočniť TLS handshake, spojenie sa nikdy nevytvorí.
(SSL a TLS verzus HTTP)
Protokol HTTP sa používa na vyžiadanie a prijímanie údajov a protokol https, v ktorom 's' nie je nič iné ako zabezpečený protokol SSL, vďaka ktorému je činnosť vyžiadania a prijímania protokolu http šifrovaná, takže žiadny útočník sprostredkovateľ nemôže ľahko získať údaje.
Ak sa pri protokole HTTP nepoužíva protokol SSL ani TLS
potom je vaše spojenie s webovým serverom nešifrované, všetky údaje budú odoslané v otvorenom texte, ktorýkoľvek útočník môže tieto údaje získať a zobraziť.
takže by ste mali použiť protokol SSL alebo TLS
obidve sú rovnaké, ale TLS je rozšíriteľnejšie a dúfam, že v budúcnosti bude mať väčšiu podporu a TLS je spätne kompatibilné.