Megosztás a következőn keresztül:


TLS kézfogási protokoll

A Transport Layer Security (TLS) kézfogási protokoll felelős a biztonságos munkamenetek létrehozásához vagy folytatásához szükséges hitelesítésért és kulcscseréért. Biztonságos munkamenetlétrehozásakor a kézfogási protokoll a következőket kezeli:

  • Titkosítási csomag egyeztetése
  • A kiszolgáló és opcionálisan az ügyfél hitelesítése
  • Munkamenetkulcs-információk cseréje.

Titkosítási csomag egyeztetése

Az ügyfél és a kiszolgáló kapcsolatba lép, és kiválasztja azt a titkosítási csomagot, amelyet az üzenetváltás során használni fog.

Hitelesítés

A TLS-ben a kiszolgáló igazolja az ügyfél identitását. Előfordulhat, hogy az ügyfélnek igazolnia kell az identitását a kiszolgálón. A PKI, a nyilvános/privát kulcspárokhasználata a hitelesítés alapja. A hitelesítéshez használt pontos módszert a titkosítócsomag határozza meg.

Kulcscsere

Az ügyfél és a kiszolgáló véletlenszerű számokat cserél, és egy speciális számot, az úgynevezett Pre-Master Secret-et. Ezek a számok olyan további adatokkal vannak kombinálva, amelyek lehetővé teszik az ügyfél és a kiszolgáló számára, hogy létrehozzák a megosztott titkos kódjukat, az úgynevezett mestertitkot. A mesterkulcsot az ügyfél és a kiszolgáló használja az írási MAC-titkos kód létrehozásához, amely a kivonatolásihasznált munkamenetkulcs, valamint az írási kulcs, amely a titkosításhoz használt munkamenetkulcs.

Biztonságos munkamenet létrehozása TLS használatával

A TLS kézfogási protokoll a következő lépéseket foglalja magában:

  1. Az ügyfél "Ügyfél hello" üzenetet küld a kiszolgálónak az ügyfél véletlenszerű értékével és a támogatott titkosítási csomagokkal együtt.
  2. A kiszolgáló úgy válaszol, hogy "Kiszolgálói hello" üzenetet küld az ügyfélnek a kiszolgáló véletlenszerű értékével együtt.
  3. A kiszolgáló elküldi a tanúsítványát az ügyfélnek hitelesítés céljából, és tanúsítványt kérhet az ügyféltől. A kiszolgáló elküldi a "Kiszolgáló hello kész" üzenetet.
  4. Ha a kiszolgáló tanúsítványt kért az ügyféltől, az ügyfél elküldi.
  5. Az ügyfél létrehoz egy véletlenszerű elő-master titkos kulcsot, és titkosítja azt a kiszolgáló tanúsítványából származó nyilvános kulccsal, és elküldi a titkosított előtitkot a kiszolgálónak.
  6. A kiszolgáló megkapja a főkulcs előtti titkos kódot. A kiszolgáló és az ügyfél mindegyike létrehozza a főkulcsot, és munkamenetkulcsokat a főkulcs előtti titkos kód alapján.
  7. Az ügyfél "Titkosítási specifikáció módosítása" értesítést küld a kiszolgálónak, amely jelzi, hogy az ügyfél elkezdi használni az új munkamenetkulcsokatkivonatolási és üzenetek titkosításához. Az ügyfél "Ügyfél befejezve" üzenetet is küld.
  8. A kiszolgáló megkapja a "Titkosítási specifikáció módosítása" lehetőséget, és a rekordréteg biztonsági állapotát a szimmetrikus titkosításia munkamenetkulcsokkal. A kiszolgáló "Kiszolgáló befejezve" üzenetet küld az ügyfélnek.
  9. Az ügyfél és a kiszolgáló mostantól az általuk létrehozott biztonságos csatornán keresztül cserélheti az alkalmazásadatokat. Az ügyfélről a kiszolgálóra és a kiszolgálóról az ügyfélre küldött összes üzenet titkosítva van a munkamenetkulcs használatával.

Biztonságos munkamenet folytatása TLS használatával

  1. Az ügyfél "Ügyfél hello" üzenetet küld a folytatni kívánt munkamenet munkamenet-azonosítójával.

  2. A kiszolgáló egyező munkamenet-azonosítót keres a munkamenet-gyorsítótárban. Ha talál egyezést, és a kiszolgáló folytatni tudja a munkamenetet, a munkamenet-azonosítóval ellátott "Kiszolgálói hello" üzenetet küld.

    Jegyzet

    Ha nem található munkamenet-azonosító egyezés, a kiszolgáló létrehoz egy új munkamenet-azonosítót, és a TLS-ügyfél és a kiszolgáló teljes kézfogást hajt végre.

     

  3. Az ügyfélnek és a kiszolgálónak meg kell cserélnie a "Titkosítási specifikáció módosítása" üzeneteket, és el kell küldenie az "Ügyfél befejezve" és a "Kiszolgáló befejeződött" üzeneteket.

  4. Az ügyfél és a kiszolgáló mostantól folytathatja az alkalmazásadatok cseréjét a biztonságos csatornán keresztül.