Skip to content

Commit

Permalink
Merge pull request #3868 from quicwg/1rtt-before-complete
Browse files Browse the repository at this point in the history
Prohibit reading 1-RTT before handshake complete
  • Loading branch information
janaiyengar committed Jul 31, 2020
2 parents c8e6cf3 + c92c892 commit 48b710d
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions draft-ietf-quic-tls.md
Expand Up @@ -1298,8 +1298,8 @@ handshake messages from a client, it is missing assurances on the client state:
- Any received 0-RTT data that the server responds to might be due to a replay
attack.

Therefore, the server's use of 1-RTT keys MUST be limited to sending data before
the handshake is complete. A server MUST NOT process incoming 1-RTT protected
Therefore, the server's use of 1-RTT keys before the handshake is complete is
limited to sending data. A server MUST NOT process incoming 1-RTT protected
packets before the TLS handshake is complete. Because sending acknowledgments
indicates that all frames in a packet have been processed, a server cannot send
acknowledgments for 1-RTT packets until the TLS handshake is complete. Received
Expand All @@ -1323,6 +1323,10 @@ A server could receive packets protected with 0-RTT keys prior to receiving a
TLS ClientHello. The server MAY retain these packets for later decryption in
anticipation of receiving a ClientHello.

A client generally receives 1-RTT keys at the same time as the handshake
completes. Even if it has 1-RTT secrets, a client MUST NOT process
incoming 1-RTT protected packets before the TLS handshake is complete.


## Retry Packet Integrity {#retry-integrity}

Expand Down

0 comments on commit 48b710d

Please sign in to comment.