On Thursday, 14 November 2019 18:18:52 CET, Daniel Migault wrote:
Hi Hubert,

The reason I would prefer the client to enforce the count is that if a
client has constraints - memory / bandwidth, he wants to make sure its
preference is respected, and this independently of the evolution of how the
hint will be interpreted in the future or depending on different
implementations.

bandwidth I sort of understand, but then if client asks for 0 tickets, it's explicitly stated in the draft that server should understand it as "will not use, don't bother" – I really don't see how in the future that can be reinterpreted as "nah, send tickets anyway" – also, please remember that the size of the ticket is very variable, so just accepting one ticket may be a significant size anyway

as for memory – just because server sends them, doesn't mean client has to remember them

finally: ok, so the server misbehaves and sends 4 tickest instead of three, what the client should do? close the connection?

I understand the reasons for SHOULD. At least this should be documented. To
address your first point, of course the specification applies to the server
that support the extension.

Your second concern is solved by limiting the
NTS of KEX.

by "KEX" you mean handshake? but New Session Ticket messages are not sent during handshake, they are sent after handshake is finished

so how exactly you want to decide when server stopped sending NSTs after handshake finished?

The third point is addressed by the minimum of the (count,
server_nbr). Note that I see count as a maximum. Overall I do not think
this would add much complexity.  The only complexity I see is when a server
sends NTS at different time in the KEX.

again, and what if the server misbehaves?

Yours,
Daniel

On Thu, Nov 14, 2019 at 11:59 AM Hubert Kario <hka...@redhat.com> wrote:

On Thursday, 14 November 2019 17:19:55 CET, Daniel Migault wrote:
Hi Chris,

Thanks for the responses, please see my comments inline.

Yours,
Daniel

On Thu, Nov 14, 2019 at 11:02 AM Christopher Wood ...

we discussed it on the list, and the reason for such phrasing is
multi-fold:
- the server doesn't have to implement this extension, as such, as per the basic TLS 1.3 RFC, it can send arbitrary number of extensions to client,
   so clients, to be RFC compliant, need to be able to process abritrary
number
   tickets at arbitrary time after handshake finish
- making value in extension the exact number requested by client makes the
   implementation much more complex: is that number per connection? per
   session? what about post-handshake authentication? what about Session
Ticket
   Encryption Key rollover? do we really want the client to abort the
connection
   if server misbehaves and sends too many or too few tickets?
 - while the client may think that it knows how many tickets it requires,
that
   information may be out of date. If an HTTP server has been brought
down,
a
connection to a given SNI may lead to a redirection page - in such cases
   there is no point in server sending tickets.

so please, tell: what issue would be solved by making the count requested
by
client mandatory?
Because I see it only increasing complexity of implementation for no
benefit.
--
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