instruction: Az SSL működésének magyarázata
output: Az SSL (Secure Socket Layer) egy olyan biztonsági protokoll, amely biztonságos és titkosított kapcsolatot hoz létre egy kiszolgáló és egy ügyfél között, jellemzően egy weboldal és egy webböngésző között. Ma már egy korszerűbb változat, a TLS (Transport Layer Security) váltotta fel, de az SSL-t még mindig gyakran használják a TLS-re utalva. Ha egy weboldal SSL-t használ, akkor az URL címe "https://"-val kezdődik a "http://" helyett.
  
  Az SSL-kapcsolat létrehozásának folyamata az SSL-kézfogáson keresztül történik, amely a háttérben zajlik, és a következő lépéseken megy keresztül:
  
  1. Az ügyfél (pl. egy webböngésző) "ügyfél üdvözlő" üzenetet küld a kiszolgálónak, jelezve, hogy SSL-kapcsolatot szeretne indítani, és információt tartalmaz az SSL/TLS verzióról és a rendelkezésre álló kriptográfiai algoritmusokról.
   
  2. A kiszolgáló egy "szerver hello" üzenettel válaszol, amely tartalmazza a kiválasztott SSL/TLS verzióra és a kiválasztott kriptográfiai algoritmusokra vonatkozó információkat, valamint elküldi digitális SSL-tanúsítványát az ügyfélnek. Ez a tanúsítvány tartalmazza a titkosításhoz használt nyilvános kulcsot.
  
  3. Az ügyfél ellenőrzi a kiszolgáló digitális tanúsítványát egy tanúsítványkiadóval (CA), hogy megbizonyosodjon a kiszolgáló hitelességéről. Ha az ellenőrzés sikeres, az ügyfél létrehoz egy titkos szimmetrikus kulcsot, titkosítja azt a kiszolgáló nyilvános kulcsával, és elküldi a kiszolgálónak.
  
  4. A szerver a szimmetrikus kulcsot a saját privát kulcsával visszafejti, és a titkosított kommunikáció megkezdéséről visszaigazolást küld az ügyfélnek.
  
  5. Az ügyfél és a kiszolgáló most már a megosztott szimmetrikus kulccsal titkosított adatokat küldhet, így biztosítva a biztonságos kapcsolatot.
  
  A kezdeti SSL kézfogás után az ügyfél és a kiszolgáló között kicserélt összes adat titkosított és biztonságos. Az SSL protokoll nemcsak titkosítja az adatokat, hanem biztosítja az adatok sértetlenségét és a kiszolgáló hitelességét is.