Passa al contenuto principale

Appendice A. Discussione delle modifiche a RFC 4507

RFC 4507 [RFC4507] definisce un meccanismo per ripristinare una sessione TLS senza mantenere lo stato lato server specificando un ticket crittografato che viene mantenuto sul client. Il client presenta questo ticket al server in un'estensione hello SessionTicket. La codifica in RFC 4507 utilizzava la codifica in stile XDR specificata in TLS [RFC4346].

Un errore nella codifica ha causato la differenza della specifica dalle implementazioni distribuite. Al momento della stesura non sono note implementazioni che seguono la codifica specificata in RFC 4507. Questo aggiornamento a RFC 4507 allinea il documento con queste implementazioni attualmente distribuite.

La codifica errata in RFC 4507 ha comportato due campi di lunghezza; uno per il contenuto dell'estensione e uno per il ticket stesso. Quindi, per un ticket lungo 256 byte e che inizia con il valore esadecimale FF FF, la codifica dell'estensione sarebbe come segue secondo RFC 4507:

00 23          Tipo di estensione ticket 35
01 02 Lunghezza del contenuto dell'estensione
01 00 Lunghezza del ticket
FF FF .. .. Ticket effettivo

L'aggiornamento proposto in questo documento riflette ciò che le implementazioni effettivamente codificano, cioè rimuove il campo di lunghezza ridondante. Quindi, per un ticket lungo 256 byte e che inizia con il valore esadecimale FF FF, la codifica dell'estensione sarebbe come segue secondo questo aggiornamento:

00 23          Tipo di estensione 35
01 00 Lunghezza del contenuto dell'estensione (ticket)
FF FF .. .. Ticket effettivo

Questo documento apporta alcune modifiche aggiuntive a RFC 4507 elencate di seguito:

  • Chiarimento che il server può consentire il ripristino della sessione utilizzando un ticket senza emettere un nuovo ticket (Sezione 3.1).
  • Chiarimento che la durata è relativa a quando viene ricevuto il ticket (Sezione 3.3).
  • Raccomandazione dell'uso di SHA-256 per la protezione dell'integrità del ticket (Sezione 4).