On Wed, Feb 13, 2019 at 4:12 AM Hubert Kario <hka...@redhat.com> wrote:

> On Wednesday, 13 February 2019 01:31:41 CET Eric Rescorla wrote:
> > I concur with what I take to be MT's position here:
> >
> > 1. The client is clearly prohibited from changing most elements of the CH
> > (except for listed exceptions).
> > 2. It's reasonable to check for and fail the handshake on any spec
> > violation except those where checking is explicitly forbidden (e.g., Must
> > Be Zero but Must be Ignored)
> > 3. Nothing in the spec requires the server to check for this condition.
>
> and what about values that technically can't change (as you noted
> yourself)
> but they do change and the server does use them?
>
> you are not suggesting that which value will be used (from first or second
> CH), or if the connection will be aborted, to be implementation dependant
> *by design* , do you?
>

I'n not sure I understand your question, but I'll try to answer what I
think it says.

1. I do think that whether you continue the connection or abort it is an
implementation decision and I think that the way the spec is written says
that.
2. I think the spec leaves open whether you should use the first or second
values, but I think implementations should use the second value. It's not
clear why one would want to use the first.

To my knowledge, there was never a WG discussion about this exact question,
so we only have the spec to guide us. Were we pre-publication I would have
advocated for (a) leaving open whether to abort and (b) requiring you to
use the second value.

-Ekr






> > -Ekr
> >
> > On Tue, Feb 12, 2019 at 4:53 AM Hubert Kario <hka...@redhat.com> wrote:
> > > On Monday, 11 February 2019 00:43:39 CET Martin Thomson wrote:
> > > > On Fri, Feb 8, 2019, at 23:53, Hubert Kario wrote:
> > > > > the cookie can be up to 2^16 bytes long, even if client sends all
> 50
> > > > > extensions and spaces them with unknown extensions between, that's
> at
> > >
> > > most
> > >
> > > > > 20 bytes per extension = 1000 bytes total extra space needed in
> cookie
> > > > > (32 bytes and 1600 bytes if you want to be very conservative)
> > > >
> > > > Yeah, that's ridiculously large.  With quite a few extensions
> supported,
> > >
> > > and
> > >
> > > > many more unknown to us, the only way we might realistically ensure
> that
> > > > the ClientHello doesn't change is to save a hash snapshot at every
> > >
> > > boundary
> > >
> > > > where the cookie extension might be inserted or where an extension
> might
> > >
> > > be
> > >
> > > > changed.  SHA-2 has a fairly small state to capture, but that's still
> > > > nearly unbounded state.  With an amplification factor of up to 8,
> > > > meaning
> > > > that it could be more efficient to send the client its entire
> > > > ClientHello
> > > > in the cookie.
> > >
> > > I definitely won't claim that it is easy or straight-forward to do, I
> do
> > > claim
> > > that it is possible. Yes, sometimes it may mean that sending the
> literal
> > > CH in
> > > cookie may be more bandwidth efficient.
> > >
> > > And regarding the specific extension in question, to verify that it
> didn't
> > > change between Hello's it is only 2 bytes extra in cookie. If that is
> too
> > > much
> > > already, I don't think that stateless HRR is something we will see in
> > > implementations for years to come.
> > >
> > > --
> > > Regards,
> > > Hubert Kario
> > > Senior Quality Engineer, QE BaseOS Security team
> > > Web: www.cz.redhat.com
> > > Red Hat Czech s.r.o., Purkyňova 115, 612 00  Brno, Czech
> > > Republic_______________________________________________
> > > TLS mailing list
> > > TLS@ietf.org
> > > https://www.ietf.org/mailman/listinfo/tls
>
>
> --
> Regards,
> Hubert Kario
> Senior Quality Engineer, QE BaseOS Security team
> Web: www.cz.redhat.com
> Red Hat Czech s.r.o., Purkyňova 115, 612 00  Brno, Czech Republic
_______________________________________________
TLS mailing list
TLS@ietf.org
https://www.ietf.org/mailman/listinfo/tls

Reply via email to