On Tue, Mar 7, 2017 at 12:49 PM Eric Rescorla <e...@rtfm.com> wrote:

> On Tue, Mar 7, 2017 at 9:44 AM, Roelof Du Toit <roelof_dut...@symantec.com
> > wrote:
>
> All,
>
>
>
> The current language in
> https://tlswg.github.io/tls13-spec/#rfc.section.4.1.4 states:
>
> As with ServerHello, a HelloRetryRequest MUST NOT contain any extensions
> that were not first offered by the client in its ClientHello, with the
> exception of optionally the “cookie” (see Section 4.2.2
> <https://tlswg.github.io/tls13-spec/#cookie>) extension.
>
>
>
> I am analyzing the following message flow:
>
> ClientHello
>
> + early_data
>
> + psk_key_exchange_modes = psk_ke
>
> + pre_shared_key --------->
>
> (Early Data) ---------> *reject*
>
> <--------- HelloRetryRequest (not allowed to add key_share)
>
> ClientHello
>
> + supported_groups
>
> + key_share ---------> *not supported*
>
>
>
> At that point in the flow the server is not allowed to send another
> HelloRetryRequest.  To avoid that the client would need some hints in the
> HelloRetryRequest.
>
> Would it be possible to allow an exception to send key_share and/or
> supported_groups in a HelloRetryRequest if not offered in ClientHello?
>
>
> I would prefer not. If the client is willing to do DH, it should offer
> KeyShare in its initial ClientHello.
>

 In particular, per 4.2.5:

"Clients MAY send an empty client_shares vector in order to request group
selection from the server at the cost of an additional round trip."

David
_______________________________________________
TLS mailing list
TLS@ietf.org
https://www.ietf.org/mailman/listinfo/tls

Reply via email to