Čo je SSL a ako sa používa na zabezpečenie údajov v sieti?
sobes.tech AI
Odpoveď od AI
SSL (Secure Sockets Layer) — je kryptografický protokol, ktorý zabezpečuje bezpečný prenos dát medzi klientom (napríklad webovým prehliadačom) a serverom (napríklad webovou stránkou). Používa asymetrické šifrovanie na vytvorenie zabezpečeného komunikačného kanála a následne symetrické šifrovanie na prenos dát.
Hlavné kroky používania SSL:
-
Handshake (Rukovanie):
- Klient odosiela serveru správu "ClientHello" obsahujúcu zoznam podporovaných verzií SSL a súborov šifier.
- Server odpovedá "ServerHello", vyberajúc optimálnu verziu SSL a súbor šifier, a tiež odosiela svoj certifikát.
- Klient overuje pravosť certifikátu servera pomocou zoznamu dôveryhodných koreňových certifikačných autorít.
- Klient generuje tajný relančný kľúč a šifruje ho pomocou verejného kľúča z certifikátu servera.
- Klient odosiela zašifrovaný relančný kľúč serveru.
- Server dešifruje relančný kľúč pomocou svojho súkromného kľúča.
- Obe strany generujú potrebné kľúče (na šifrovanie a autentifikáciu) pre symetrický algoritmus pomocou relančného kľúča.
- Klient a server odosielajú správy "Finished", zašifrované použitím dohodnutých kľúčov, aby potvrdili úspešné nadviazanie zabezpečeného spojenia.
-
Šifrovanie dát: Po úspešnom handshake sa všetky dáta prenášané medzi klientom a serverom šifrujú pomocou dohodnutého symetrického algoritmu a kľúčov.
Príklad časti SSL certifikátu:
// Identifikátor certifikátu
Serial Number: ...
// Algoritmus podpisu certifikátu
Signature Algorithm: sha256WithRSAEncryption
// Vydavateľ certifikátu (Certificate Authority)
Issuer: C = US, O = Google Trust Services LLC, CN = GTS CA 1C3
// Platnosť
Validity
Not Before: ...
Not After : ...
// Subjekt certifikátu (doménové meno stránky)
Subject: CN = www.example.com
// Verejný kľúč subjektu
Subject Public Key Info
Public Key Algorithm: rsaEncryption
Public-Key: (2048 bit)
SSL, alebo presnejšie jeho modernejšia verzia TLS (Transport Layer Security), zabezpečuje:
- Dôvernosť: Zabráňuje zachyteniu a čítaniu dát útočníkmi.
- Integrita dát: Zaručuje, že dáta neboli počas prenosu zmenené.
- Autentifikácia: Potvrdzuje pravosť servera (a voliteľne aj klienta) pomocou certifikátov.
Použitie SSL/TLS je široko rozšírené v webových prehliadačoch (protokol HTTPS), elektronickej pošte (STARTTLS), VPN a ďalších aplikáciách, ktoré vyžadujú bezpečný prenos dát.