Transport Layer Security
Transport Layer Security (TLS) a jeho predchodca Secure Sockets Layer (SSL) sú protokoly, ktoré slúžia na šifrovanie dát. Protokoly slúžia na bezpečnú komunikáciu cez internet, hlavne na prehliadanie webu, odosielanie e-mailov, výmenu správ (tzv. instant messaging), alebo iné prenosy dát. Medzi TLS a SSL sú drobné rozdiely, ale v podstate protokol ostal ten istý.
Protokol TLS umožňuje aplikáciám komunikovať cez sieť spôsobom akým bol navrhnutý, aby predchádzal odpočúvaniu, manipulácii, falšovaniu správ. TLS poskytuje koncobodovú autentifikáciu a súkromie v komunikácii cez internet používaním kryptografie. Typicky je autorizovaný len server (to znamená, že jeho identita je zaručená) zatiaľ čo klient ostáva neautorizovaný. To znamená, že koncový užívateľ, či už jednotlivec alebo aplikácia, si môže byť istý s kým komunikuje.
Ďalšia úroveň zabezpečenia, v ktorej obidve strany "konverzácie" si môžu byť isté s kým komunikujú, je známa ako obojstranná autorizácia. Obojstranná autorizácia vyžaduje infraštruktúru verejného kľúča (public key infrastructure - PKI).
Port : 6251
Obojstranná autorizácia
[upraviť | upraviť zdroj]TLS klient a server dohodnú spojenie používaním procedúry tzv. podanie rúk (angl. handshake). Počas podania rúk sa klient a server dohodnú na rôznych parametroch používaných na vytvorenie bezpečnosti spojenia.
- Podanie rúk začne vtedy, keď sa klient pripojí na server s povoleným TLS spojením a začne žiadať o bezpečné spojenie a poskytne zoznam podporovaných šifier a transformačných funkcií.
- Server vyberie zo zoznamu najsilnejšiu šifru a transformačnú funkciu, ktoré tiež podporuje a oznámi klientovi svoje rozhodnutie.
- Server pošle späť svoju identifikáciu z digitálneho certifikátu. Certifikát obyčajne obsahuje meno servera, dôveryhodnú certifikačnú autoritu a verejný šifrovací kľúč servera.
- Klient môže kontaktovať server, ktorý vydal certifikát (certifikačnú autoritu) a overiť si ešte predtým, ako začne proces, že certifikát je platný.
- V objednávke musí server vygenerovať kryptografický kľúč pre bezpečné spojenie. Klient zašifruje náhodné číslo pomocou verejného kľúča servera a pošle výsledok serveru. Dešifrovať ho dokáže iba server pomocou svojho súkromného kľúča. To zabezpečí, že kľúč ostane pre tretiu stranu utajený, lebo iba klient a server majú prístup k týmto dátam.
- Z náhodného čísla obe strany generujú materiál (kryptografické kľúče) na šifrovanie a dešifrovanie.
Posledný bod uzatvára podanie rúk a začína bezpečné spojenie, ktoré je šifrované a dešifrované vygenerovanými kryptografickými kľúčmi až pokiaľ sa spojenie neukončí.