RE: [TLS] TLS state machine
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [TLS] TLS state machine
The state machine is (sort of implicitly) described in these two
figures, copied from RFC 4346:
ClientHello -------->
ServerHello
Certificate*
ServerKeyExchange*
CertificateRequest*
<-------- ServerHelloDone
Certificate*
ClientKeyExchange
CertificateVerify*
[ChangeCipherSpec]
Finished -------->
[ChangeCipherSpec]
<-------- Finished
Application Data <-------> Application Data
And the session resumption case:
ClientHello -------->
ServerHello
[ChangeCipherSpec]
<-------- Finished
[ChangeCipherSpec]
Finished -------->
Application Data <-------> Application Data
I'm not sure if using a state machine description language would
actually help understanding, but it could look something like this
(server's initial state):
State: WAITING_FOR_CLIENT_HELLO
Event: ClientHello received
process the client hello
if (didn't work out)
send alert
next state: FAILED
else if (session being resumed)
send ServerHello, ChangeCipherSpec, Finished
next state: WAITING_FOR_CCS
else
send ServerHello [Certificate] [ServerKeyExchange]
[CertificateRequest] ServerHelloDone
next state: WAITING_FOR_CERT_OR_CLIENT_KEY_EXCHANGE
Event: anything else
maybe send alert
go to state FAILED
(The TLS implementations I've taken a look at actually have code
that resembles this.)
Best regards,
Pasi
> -----Original Message-----
> From: ext Stefan Santesson [mailto:stefans at microsoft.com]
> Sent: 21 March, 2007 16:37
> To: tls at ietf.org
> Subject: [TLS] TLS state machine
>
> We have had lots of discussions around GSS-TLS ending in
> arguments that this would do too many changes to the TLS
> state machine.
>
> It would be a lot easier to hold that discussion
> constructively if the TLS state machine was clearly
> described. A search for the term "state machine" in current
> TLS 1.2 returns empty. I can't find any other text that would
> clearly resemble such description.
>
> Would it be possible to add an annex in TLS 1.2 describing
> the TLS state machine?
>
> It would then be a lot easier to analyze and discuss the
> impact of any changes caused by various usages of the TLS
> extensibility mechanisms.
>
>
> Stefan Santesson
> Senior Program Manager
> Windows Security, Standards
_______________________________________________
TLS mailing list
TLS at lists.ietf.org
https://www1.ietf.org/mailman/listinfo/tls
Note: Messages sent to this list are the opinions of the senders and do not imply endorsement by the IETF.