HTTP

Ako funguje HTTPS? - Sprievodca pre začiatočníkov

Ako funguje HTTPS? - Sprievodca pre začiatočníkov
Certifikačné autority sú jedným z najdôležitejších základných kameňov pre bezpečnosť internetu. Certifikačná autorita je niekto, komu všetci dôverujú, na začiatku, keď nikto neverí nikomu inému. Potom je to práca tejto certifikačnej autority (a.k.a CA), aby sa zabezpečilo, že medzi servermi a klientmi sa vytvorí dôvera pred nadviazaním komunikácie cez internet.CA je dôležitá nielen pre HTTPS používané prehliadačmi a webovými aplikáciami, ale aj pre šifrované e-maily, podpísané aktualizácie softvéru, VPN a oveľa viac. Vezmeme si prototyp HTTPS a dozvieme sa o CA v tomto konkrétnom kontexte. Aj keď môžete výsledok extrapolovať na akýkoľvek iný softvérový balík.

Problémy s protokolom HTTP a obyčajným textom

Internet je nedôveryhodný komunikačný kanál. Keď odosielate alebo prijímate informácie zo starej stránky HTTP, http: //www.príklad.com v prehliadači sa môže stať veľa vecí v polovici cesty k vašim paketom.

  1. Zlý herec môže zachytiť komunikáciu, skopírovať si údaje sám a potom ich znova odoslať na kanál smerom k vám alebo na server, s ktorým ste hovorili. Bez vedomia ktorejkoľvek zo strán sú informácie ohrozené. Musíme zabezpečiť, aby komunikácia bola súkromné.
  2. Zlý herec môže informácie, ktoré sa odosielajú cez kanál, upraviť. Bob možno poslal správu "X" ale Alice by dostala „Y“ od Boba, pretože zlý herec zachytil správu a upravil ju. Inými slovami, bezúhonnosť správy je ohrozená.
  3. A nakoniec, a čo je najdôležitejšie, musíme zabezpečiť, aby osobou, s ktorou hovoríme, bol skutočne ten, za koho sa vydáva. Vraciame sa späť k príklad.com doména. Ako môžeme zaistiť, aby server, ktorý nám odpovedal, bol skutočne oprávneným držiteľom www.príklad.com? V ktoromkoľvek bode vašej siete môžete byť nesprávne presmerovaní na iný server. DNS niekde je zodpovedný za prevod názvu domény, napríklad www.príklad.com, na adresu IP na verejnom internete. Prehliadač však nemôže nijako overiť, či adresa IP preložená serverom DNS preložila.

Prvé dva problémy je možné vyriešiť šifrovaním správy pred jej odoslaním cez internet na server. Teda prechodom na HTTPS. Posledným problémom, problémom identity, je však miesto, kde prichádza do úvahy certifikačná autorita.

Iniciovanie šifrovaných relácií HTTP

Hlavným problémom šifrovanej komunikácie cez nezabezpečený kanál je „Ako to spustíme?“

Prvý krok by spočíval v tom, že si obe strany, váš prehliadač a server, vymenili šifrovacie kľúče, ktoré sa majú vymeniť cez nezabezpečený kanál. Ak vám termínové kľúče nie sú známe, predstavte si ich ako skutočne dlhé náhodne generované heslo, pomocou ktorého budú vaše údaje šifrované pred odoslaním cez nezabezpečený kanál.

Ak sa kľúče posielajú cez nezabezpečený kanál, ktokoľvek to môže počúvať a v budúcnosti by mohol narušiť zabezpečenie vašej relácie HTTPS. Okrem toho, ako môžeme uveriť, že kľúč odoslaný serverom, ktorý tvrdí, že je www.príklad.com je skutočne skutočným vlastníkom tohto názvu domény? Môžeme mať šifrovanú komunikáciu so škodlivou stranou, ktorá sa vydáva za legitímnu stránku, a nepoznáme rozdiel.

Problém zabezpečenia identity je teda dôležitý, ak si želáme zabezpečiť bezpečnú výmenu kľúčov.

Certifikačné autority

Možno ste už počuli o LetsEncrypt, DigiCert, Comodo a niekoľkých ďalších službách, ktoré ponúkajú certifikáty TLS pre vaše doménové meno. Môžete si vybrať ten, ktorý vyhovuje vašim potrebám. Osoba / organizácia, ktorá vlastní doménu, musí teraz nejakým spôsobom dokázať svojej certifikačnej autorite, že nad doménou skutočne má kontrolu. To je možné urobiť tak, že vytvoríte záznam DNS s jedinečnou hodnotou, ako to požaduje certifikačná autorita, alebo môžete pridať súbor na svoj webový server s obsahom špecifikovaným certifikačnou autoritou, potom môže CA tento súbor prečítať a potvrďte, že ste platným vlastníkom domény.

Potom vyjednáte certifikát TLS s CA, výsledkom čoho bude súkromný kľúč a verejný certifikát TLS vydaný pre vašu doménu. Správy šifrované vašim súkromným kľúčom potom môžu byť dešifrované verejným certifikátom a naopak. Toto sa nazýva asymetrické šifrovanie

Prehliadače klientov, ako sú Firefox a Chrome (niekedy dokonca aj operačný systém), majú znalosti certifikačných autorít. Tieto informácie sa do prehliadača / zariadenia vkladajú od samého začiatku (to znamená, keď sú nainštalované), aby vedeli, že môžu dôverovať určitým CA. Teraz, keď sa pokúsia pripojiť na stránku www.príklad.com cez HTTPS a pozrieť si certifikát vydaný povedzme DigiCert, prehliadač môže skutočne overiť, že pomocou lokálne uložených kľúčov. V skutočnosti k tomu existuje ešte niekoľko ďalších krokov, ale je to dobrý zjednodušený prehľad o tom, čo sa deje.

Teraz, keď certifikát poskytnutý www.príklad.com je dôveryhodné, toto sa používa na vyjednanie jedinečného symetrického šifrovacieho kľúča, ktorý sa používa medzi klientom a serverom na zostávajúcu časť ich relácie. Pri symetrickom šifrovaní sa jeden kľúč používa na šifrovanie aj na dešifrovanie a je zvyčajne oveľa rýchlejší ako jeho asymetrický náprotivok.

Nuansy

Ak vás myšlienka TLS a internetovej bezpečnosti láka, môžete sa tejto téme venovať ďalej tak, že sa ponoríte do LetsEncrypt a ich bezplatných TLS CA. Celé toto rigmarole je oveľa podrobnejšie, ako je uvedené vyššie.

Ďalšie zdroje, ktoré môžem odporučiť na získanie ďalších informácií o TLS, sú Troy Hunt's Blog a práca vykonaná EFF ako HTTPS Everywhere a Certbot. Ku všetkým zdrojom je bezplatný prístup a ich implementácia je skutočne lacná (stačí zaplatiť za registráciu názvu domény a hodinové poplatky VPS) a získať praktické skúsenosti.

Ako zmeniť smer posúvania myši a touchpadu v systéme Windows 10
Myš a TouchpadNielenže uľahčujú výpočty, ale sú aj efektívnejšie a menej časovo náročné. Nemôžeme si predstaviť život bez týchto zariadení, ale je pra...
Ako zmeniť veľkosť, farbu a schému ukazovateľa myši a kurzora v systéme Windows 10
Ukazovateľ myši a kurzor vo Windows 10 sú veľmi dôležité aspekty operačného systému. Dá sa to povedať aj pre iné operačné systémy, takže v skutočnosti...
Hry Zadarmo a open source herné motory pre vývoj hier pre Linux
Zadarmo a open source herné motory pre vývoj hier pre Linux
Tento článok sa bude zaoberať zoznamom bezplatných a otvorených herných nástrojov, ktoré možno použiť na vývoj 2D a 3D hier v systéme Linux. Existuje ...