Hi Ben,

Thanks for the review. I've captured your comments as issues on the QUIC WG
GItHub repository. Links to each are provided as in-line responses.

On Tue, Jan 5, 2021 at 4:56 AM Benjamin Kaduk via Datatracker <
nore...@ietf.org> wrote:

> Benjamin Kaduk has entered the following ballot position for
> draft-ietf-quic-invariants-12: Yes
>
> When responding, please keep the subject line intact and reply to all
> email addresses included in the To and CC lines. (Feel free to cut this
> introductory paragraph, however.)
>
>
> Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.html
> for more information about IESG DISCUSS and COMMENT positions.
>
>
> The document, along with other ballot positions, can be found here:
> https://datatracker.ietf.org/doc/draft-ietf-quic-invariants/
>
>
>
> ----------------------------------------------------------------------
> COMMENT:
> ----------------------------------------------------------------------
>
> My PR at https://github.com/quicwg/base-drafts/pull/4473
> contains one editorial suggestion for this document.
>
> Section 5.2
>
> Should we call out that the short header admits a zero-length
> Destination Connection ID, implying that there will not always be a
> visible connection ID?
>

https://github.com/quicwg/base-drafts/issues/4508


> Section 5.3
>
> In the discussion of DTLS 1.2 connection IDs we had a fair bit of
> discussion about what "opaque" means, whether any internal structure
> (e.g., when variable-length CIDs are used) must be self-delineating,
> which endpoint(s) need to know the self-delineating format, etc..  This
> was largely in the context of what data is used as input to the MAC for
> non-AEAD cipher modes (in the document as sent to the IESG by the WG,
> the party that does not know the CID structure could be convinced to
> generate a MAC using a modified CID and create a MAC value that would be
> valid for a different plaintext, leading to a change in where the
> cid_length field is placed in the input), and I don't expect the topics
> we discussed to lead to any change in the text here.  The only possible
> thing I could think of is that the field is "opaque" at the protocol
> level but may have internal structure known to the endpoint that chooses
> it (but that's arguably self-evident).
>

https://github.com/quicwg/base-drafts/issues/4509


> Section 6
>
>    Only the most significant bit of the first byte of a Version
>    Negotiation packet has any defined value.  The remaining 7 bits,
>    labeled Unused, can be set to any value when sending and MUST be
>    ignored on receipt.
>
> What's the motivation behind leaving it totally free for the sender to
> pick values, as opposed to recommending or mandating that the bits be
> set to zero?
>
>    Version Negotiation packets do not use integrity or confidentiality
>    protection.  Specific QUIC versions might include protocol elements
>    that allow endpoints to detect modification or corruption in the set
>    of supported versions.
>
> Are these protocol elements expected to be in the version negotiation
> packet or elsewhere?
>
>    randomly selected by a client.  Echoing both connection IDs gives
>    clients some assurance that the server received the packet and that
>    the Version Negotiation packet was not generated by an off-path
>    attacker.
>
> (I agree with Martin D about the terminology question here and in
> Section 7, which is the location he remarked upon.)
>

https://github.com/quicwg/base-drafts/issues/4510


> Section 7
>
>    The Version Negotiation packet described in this document is not
>    integrity-protected; it only has modest protection against insertion
>    by off-path attackers.  An endpoint MUST authenticate the contents of
>    a Version Negotiation packet if it attempts a different QUIC version
>    as a result.
>
> Can we give some indication of how this authentication might be done?
>

https://github.com/quicwg/base-drafts/issues/4511


> Appendix A
>
>    *  The Version field in a QUIC long header is the same in both
>       directions
>
> (I note that this implicitly assumes there are only two directions.  We do
> explicitly assume there are only two parties involved, so perhaps this
> is acceptable.)
>
>
https://github.com/quicwg/base-drafts/issues/4512

Cheers,
Lucas
On behalf of QUIC WG Chairs

Reply via email to