TLS (SSL) -kättely

Yksinkertaistettuna TLS kättely tapahtuu seuraavasti.

1) Neuvotteluvaihe

  • C --> S: "ClientHello": millaisia algoritmeja C:llä on käytettävissä.
  • S --> C: "ServerHello": minkä symmetrisen salausalgoritmin, moodin, hash-funktion ja kompressioalgoritmin S on valinnut - tai ilmoittaa kättelyn epäonnistumisesta.
  • S --> C: "Certificate message" S:n julkisen avaimen sertifikaatti (kaikki sertifikaatit juurivarmentajan myöntämään asti)
  • S --> C: "ServerHelloDone", ilmaisee että nyt on kättely serverin kannalta finito
  • C --> S: "ClientKeyExchange" riippuen valitusta salauksesta saattaa sisältää alustavan avaimen k
  • C & S: Laskevat symmetrisen salausavaimen k:sta lasketulla istuntoavaimella (avaimen laskennassa on mukana myös "Hello"-viesteissä esiintyneitä satunnaislukuja)
2) Client aloittaa salauksen
  • C --> S: "ChangeCipherSpec" Ilmoittaa, että tästä lähtien client salaa yhteyden
  • C --> S: "Finished" sanoma salattuna + tiiviste edellisistä sanomista, server tarkistaa salauksen
2) Server aloittaa salauksen
  • S --> C: "ChangeCipherSpec" Ilmoittaa, että tästä lähtien server salaa yhteyden
  • S --> C: "Finished" sanoma salattuna + tiiviste edellisistä sanomista, client tarkistaa salauksen

Tämän jälkeen alkaa varsinaisen sovelluksen viestien vaihto. Kättely on lyhyempi, kun saman istunnon aikana käydään useita yhteyksiä ("Hello"-viesteissä on tunnisteet tätä varten). On myös mahdollista, että palvelintakaan ei autentikoida. Tällöin yhteys on anonyymi ja avaimia vaihdetaan RSA:n sijasta Diffie-Hellman-protokollalla. Tästä vaihtoehdosta SSLv3-määritys toteaa "strongly discouraged".

Verkkopalvelun suunnittelussa on mietittävä, minkä asiakkaan 'client autentication' oikeastaan todentaa. Yllättävistä ongelmista ovat kirjoittaneet Marchesini ym (2004).

-- JukkaKoskinen?

SivuTiedotLaajennettu edit

Vaativuus Perus
Valmius Valmisteilla
Tyyppi Ydin
Luokitus Uhkat
Mitä Luottamuksellisuus
Miltä Ihmisetön uhka
Missä Organisaatio
Kuka Tite-ammattilainen
Milloin Ennakolta
Miksi Hyvä tapa
Print version |  PDF  | History: r3 < r2 < r1 | 
Topic revision: r3 - 18 Nov 2010 - 00:52:03 - MikkoKoivisto?
 

TUTWiki

Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TUTWiki? Send feedback