Re: Authentication in draft-kuhn-quic-bdpframe-extension

Christian Huitema <huitema@huitema.net> Sun, 05 November 2023 16:47 UTC

Return-Path: <huitema@huitema.net>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2729FC258134 for <quic@ietfa.amsl.com>; Sun, 5 Nov 2023 08:47:38 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.907
X-Spam-Level:
X-Spam-Status: No, score=-6.907 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ptW9_zSoFgpX for <quic@ietfa.amsl.com>; Sun, 5 Nov 2023 08:47:33 -0800 (PST)
Received: from out16-27.antispamcloud.com (out16-27.antispamcloud.com [185.201.18.27]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AB3BDC258109 for <quic@ietf.org>; Sun, 5 Nov 2023 08:47:32 -0800 (PST)
Received: from xse167.mail2web.com ([66.113.196.167] helo=xse.mail2web.com) by mx204.antispamcloud.com with esmtp (Exim 4.92) (envelope-from <huitema@huitema.net>) id 1qzgHY-009tF0-SS for quic@ietf.org; Sun, 05 Nov 2023 17:47:32 +0100
Received: from xsmtp21.mail2web.com (unknown [10.100.68.60]) by xse.mail2web.com (Postfix) with ESMTPS id 4SNgPn5Hhsz2wb for <quic@ietf.org>; Sun, 5 Nov 2023 08:47:25 -0800 (PST)
Received: from [10.5.2.13] (helo=xmail03.myhosting.com) by xsmtp21.mail2web.com with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.92) (envelope-from <huitema@huitema.net>) id 1qzgHV-0002nd-If for quic@ietf.org; Sun, 05 Nov 2023 08:47:25 -0800
Received: (qmail 9833 invoked from network); 5 Nov 2023 16:47:25 -0000
Received: from unknown (HELO [192.168.1.100]) (Authenticated-user:_huitema@huitema.net@[172.56.169.253]) (envelope-sender <huitema@huitema.net>) by xmail03.myhosting.com (qmail-ldap-1.03) with ESMTPA for <kazuhooku@gmail.com>; 5 Nov 2023 16:47:24 -0000
Message-ID: <b41d2cf9-ce02-463a-878f-df6db2758d16@huitema.net>
Date: Sun, 05 Nov 2023 08:47:23 -0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: Authentication in draft-kuhn-quic-bdpframe-extension
Content-Language: en-US
To: Kazuho Oku <kazuhooku@gmail.com>, Marten Seemann <martenseemann@gmail.com>
Cc: Gorry Fairhurst <gorry@erg.abdn.ac.uk>, emile.stephan@orange.com, Nicolas Kuhn <nicolas.kuhn.ietf@gmail.com>, "quic@ietf.org" <quic@ietf.org>
References: <CAMEWqGsGCEhC97Yt-r9YBwGCPxH6+OGj7GfTmomMDJBD6S_ZBQ@mail.gmail.com> <a7d79746-59b3-4dd5-ad74-2810ac685ec5@erg.abdn.ac.uk> <CALGR9oZRReig2_dEsbtx+ODKoaZTkKp6C5gcQZVPd_gnnWbX1Q@mail.gmail.com> <edb12370-dcba-49d7-9b2a-72660e059513@gmail.com> <18cef84568cc444f95bd8c2bc13e81b1@orange.com> <1ed18563-6de2-4d62-b6f7-b525ef6c1360@erg.abdn.ac.uk> <4f02fdee6cbf4c7aae472f2f0c177cc0@orange.com> <CANatvzzU_8OZuG7MS8dQAcyv0DSj9YegOsG3a6LifjqRncdHbQ@mail.gmail.com> <CAOYVs2o6emJ2FwtsDd83oi2L3T5rK2nB=3MUe82sFPOrtkcE_Q@mail.gmail.com> <b9229510-6c05-4f21-8b07-ea9036dea30a@erg.abdn.ac.uk> <CAOYVs2os7=AVXwp2X2dW43zJzMh8JZ9Wy6WHZWBFi3uUFEZF6g@mail.gmail.com> <CANatvzyVhMO3Zn9pt5sWGOFBbevRSSp1+8QiK+Uvs061trbuaw@mail.gmail.com>
From: Christian Huitema <huitema@huitema.net>
Autocrypt: addr=huitema@huitema.net; keydata= xjMEXtavGxYJKwYBBAHaRw8BAQdA1ou9A5MHTP9N3jfsWzlDZ+jPnQkusmc7sfLmWVz1RmvN J0NocmlzdGlhbiBIdWl0ZW1hIDxodWl0ZW1hQGh1aXRlbWEubmV0PsKWBBMWCAA+FiEEw3G4 Nwi4QEpAAXUUELAmqKBYtJQFAl7WrxsCGwMFCQlmAYAFCwkIBwIGFQoJCAsCBBYCAwECHgEC F4AACgkQELAmqKBYtJQbMwD/ebj/qnSbthC/5kD5DxZ/Ip0CGJw5QBz/+fJp3R8iAlsBAMjK r2tmyWyJz0CUkVG24WaR5EAJDvgwDv8h22U6QVkAzjgEXtavGxIKKwYBBAGXVQEFAQEHQJoM 6MUAIqpoqdCIiACiEynZf7nlJg2Eu0pXIhbUGONdAwEIB8J+BBgWCAAmFiEEw3G4Nwi4QEpA AXUUELAmqKBYtJQFAl7WrxsCGwwFCQlmAYAACgkQELAmqKBYtJRm2wD7BzeK5gEXSmBcBf0j BYdSaJcXNzx4yPLbP4GnUMAyl2cBAJzcsR4RkwO4dCRqM9CHpVJCwHtbUDJaa55//E0kp+gH
In-Reply-To: <CANatvzyVhMO3Zn9pt5sWGOFBbevRSSp1+8QiK+Uvs061trbuaw@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
X-Originating-IP: 66.113.196.167
X-Spampanel-Domain: xsmtpout.mail2web.com
X-Spampanel-Username: 66.113.196.0/24
Authentication-Results: antispamcloud.com; auth=pass smtp.auth=66.113.196.0/24@xsmtpout.mail2web.com
X-Spampanel-Outgoing-Class: ham
X-Spampanel-Outgoing-Evidence: SB/global_tokens (0.00669656129938)
X-Recommended-Action: accept
X-Filter-ID: Pt3MvcO5N4iKaDQ5O6lkdGlMVN6RH8bjRMzItlySaT99Dc4qPyPLLKgz96/caf6IPUtbdvnXkggZ 3YnVId/Y5jcf0yeVQAvfjHznO7+bT5x6h2yQpzTslcOqazQkKtAFKj/EwzSHE5FGYwwjsNRPCJ69 T3AUNmEgVTTSftAPXsnmD6wdmZPcItWbGe10hXJtXL4FsauCVkDjmcYJdU3yWp7KuHNaaKdg7iBE ZefdsNUFWKwa/wzJUjmazeC7ImcaG8Ul/Shl+CFsEadmDdisuRQ6V51u76v35b1wNe/MvdJJZXxg BwhGe67VxX+oyi9M2+J9PgaoF8SQHto3le4zsAApCVB1N/BtJyJqv7YkIyyKggeTQ85o+W6+jEZD z+LhiyQEs+dlGXUJLWZ+Gc08Nmllke3azHdKmySKNUVQl4ntlVxnbS8qIO7oudHyb2T1VQ58xe/l rqiRGalI3YPsxEHvm3Pq/TMVhLiLVSlbDnIVuj2FO72X/YaQIn7n+Yis31/E3ahF5MMcDI7KdpjQ KUnh3QF2Y0MpRP8lNdFAmSaZ3JKVmi72ocgY5kMQSjs7oT+6/6ngnC3zT5MJtpTZ7L69ywUfK1GF yeI4etqXx2iqrJJ80NVlREkpW4CenvdvASJFC/49WOPBr5nlEUI4xOVgx2p2JaArHjxi4I7D+btY iQT0EGcerjNGO70AL42fTmW+3roJrtSyrUGyAlr9hxxdvY/HAPlcZq3Vdtb+/TBn+ieS4g2QICUM uFgBmjCyKjOelVZXLMA29DfEruL6DYsEMysPur9wmiDBurOy6iQztLJ10VCzrhJ1VPZVwuVRqdLK whoakFS5t2LmWLKL063dDtoDmCkdKvrH7x5KGt0qN+A0YscPg7KdN0aPXNTp+XfTKZ8tjKpa13DE MjbVfz2Lnppr/6KJNNOUS7EXpevDqcigOvSxdRnthmhn8Zn6ycoaE8mIwQLICfXz7tQta5MCEk3S lxx8pdWDYgf1IsewmMLQUkMTudtuP9IAptb98t3Xj/LzZ5s/OJg1L2asZ6HO21dPpxPhMFfON8bp bNfcgK4Mc6Gvij4OIgWbbyK+n5sIo9SQdgvkHTtzhv8IWw==
X-Report-Abuse-To: spam@quarantine14.antispamcloud.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/oxJjk0_6bDQ6wOVyYTFTm6AdeGc>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <quic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic>, <mailto:quic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic/>
List-Post: <mailto:quic@ietf.org>
List-Help: <mailto:quic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic>, <mailto:quic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 05 Nov 2023 16:47:38 -0000

On 11/5/2023 7:49 AM, Kazuho Oku wrote:
> 2023年11月5日(日) 16:41 Marten Seemann <martenseemann@gmail.com>:
> 
>>> On different CC's: the set of parameters exchanged are fairly generic,
>> and I think it's very likely a client will use the same CC to talk to the
>> same server when it next resumes a session, so I am unsure i share the
>> concern about different CCs.
>>
>> Gorry, I might be misreading the draft, but in my understanding the
>> BDP_FRAME frame is used by servers to offload state to the client, not the
>> other way around, so your argument should be that the server will use the
>> same CC on the original and the resumed connection. The client might also
>> remember CC parameters, but they wouldn't be sent on the wire.
>> My argument here is twofold: If this frame is supposed to be read and
>> acted upon by the client, you now have to deal with the situation where
>> client and server use different CCs, which will lead to problems if server
>> and client don't use the same CC. On the other hand, if the frame is not
>> supposed to be acted upon by the client, there's no reason to use a frame
>> in the first place, as servers can just unilaterally decide to put the
>> information into the token.
>>
> 
> FWIW, in case of quicly I'm not sure we'd want to use CWND and current RTT
> to calculate the jump CWND.
> 
> That is because quicly has a delivery rate estimate based on ACK clock that
> gives us a better estimation of the available bandwidth; we'd prefer using
> that and the min RTT.
> 
> As such, I'm not sure if having a standard definition of a BDP frame would
> help server implementers.
> 
> To paraphrase, I think the question is if there is an appetite for the WG
> to define a frame solely for communicating the estimate of the unvalidated
> phase *to the client,* and if sending that at the end of the previous
> connection is the best way to do so.

There are at least three ways to remember past connections:

1) At the endpoint. The endpoint keeps track of the characteristics of 
past connections to a specific peer. QUIC clients are expected to do 
some of that, remembering tickets and tokens, and also remembering 
transport parameters negotiation for use in 0RTT. QUIC clients can 
easily add RTT and data rate to the set of data that they remember. QUIC 
servers could do that too, but that may not be practical in big server 
farms, and it does not scale well if the server serves a vast population 
of clients.

2) At the peer, exported in tickets or tokens. The server would include 
indications of RTT and data rate in the encrypted data. The client does 
not need any special code, it just remembers ticket or token and sends 
them. As Kazuho points out, using the tokens for this purpose is much 
more natural than using tickets.

3) At the peer, using the BDP frame. Similar to the token, with perhaps 
the advantage that the client can see the data, but with the downside 
that it requires standardization and new code in clients. 
Standardization has pitfalls, because we don't know well today what 
servers will need tomorrow. What about remembering jitter? Or the 
specific characteristics of LEO paths?

What about moving from "specifying the BDP frame" to "drafting an 
informational RFC explaining how the data can be embedded in QUIC tokens"?

-- Christian Huitema



> 
> 
>>
>> On Sun, 5 Nov 2023 at 15:32, Gorry Fairhurst <gorry@erg.abdn.ac.uk> wrote:
>>
>>> On 05/11/2023 10:04, Marten Seemann wrote:
>>>
>>> In the design of RFC 9000, frames are used to communicate information
>>> between two endpoints. This is not what the BDP_FRAME frame does: It's only
>>> saved by the client and echoed back to the server on a later connection. It
>>> is questionable to me if the client’s ability to inspect (but not modify)
>>> the contents of the frame provides a lot of value: Congestion controllers
>>> are inherently endpoint-specific, and (for example) reusing the parameters
>>> of an L4S CC with a Cubic CC, and vice versa, doesn't sound like a good
>>> idea.
>>>
>>> That's not what the ID says.
>>>
>>> On different CC's: the set of parameters exchanged are fairly generic,
>>> and I think it's very likely a client will use the same CC to talk to the
>>> same server when it next resumes a session, so I am unsure i share the
>>> concern about different CCs.
>>>
>>> Section 1.2 of the ID speaks about the possibility to share the
>>> infromation with the application... which might be important to tuning the
>>> use of the token (choosing which connection ought to use the
>>> Careful-Resume), and ensuring appropriate polices are used for flow-credit,
>>> choosing content encoding appropriate to rate, etc.
>>>
>>>
>>> As Kazuho pointed out, RFC 9000 already contains the concept of a
>>> resumption token.
>>>
>>> I'd like to understand more what that is.
>>>
>>> Tokens are opaque, so servers can encode whatever information they want
>>> into the token. Resumption tokens are used to validate the client’s IP
>>> address, so they’re inherently bound to the path. This is pretty much
>>> exactly the property that you’d want for resuming CC parameters. Apart from
>>> that, using tokens has multiple other advantages as well:
>>> 1. We don’t need interoperability between implementations here. The
>>> client is resuming the connection with the same server (or a different
>>> server in the same deployment), so it doesn’t matter how the information is
>>> encoded.
>>>
>>> I like that.
>>>
>>> 2. Depending on their CC, servers might want to encode a different set of
>>> parameters. This is possible when using a token, whereas the BDP_FRAME
>>> frame limits us to the few fields defined in the draft.
>>>
>>> Good - but I do expect that a BDP_FRAME could be made extensible.
>>>
>>> 3. The BDP_FRAME frame can only be sent in 0-RTT packets (if I understand
>>> correctly, I'm very confused by the phrasing of section 4), so it can’t be
>>> used for non-0-RTT session resumption.
>>>
>>> I think that depends a little on how we decide to finally transport the
>>> parms - we're open to changing this.
>>>
>>> 4. Obviously, using the token doesn’t require clients to be aware that
>>> this is going on, so it will work with every QUIC stack without any
>>> modification.
>>>
>>> Yes, that's nice also.
>>>
>>> Best wishes,
>>>
>>> Gorry
>>>
>>>
>>>
>>> On Sun, 5 Nov 2023 at 11:14, Kazuho Oku <kazuhooku@gmail.com> wrote:
>>>
>>>>
>>>>
>>>> 2023年11月4日(土) 15:44 <emile.stephan@orange.com>:
>>>>
>>>>> BDP frame is about QUIC transport (RFC9000) resumption. IMO, it does
>>>>> not have dependencies on RFC9001.
>>>>>
>>>>
>>>> I think I tend to agree with Lucas modulo the point that it would make
>>>> more sense to store BDP information in tokens issued by the QUIC servers[1]
>>>> than the TLS session ticket.
>>>>
>>>> Tokens are defined in RFC 9000. The only use case being mandated at the
>>>> moment is address validation but it is designed so that it can hold
>>>> arbitrary data. Tokens can hold BDP information as well.
>>>>
>>>> 1: https://datatracker.ietf.org/doc/html/rfc9000#frame-new-token
>>>>
>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Orange Restricted
>>>>>
>>>>> *De :* Gorry Fairhurst <gorry@erg.abdn.ac.uk>
>>>>> *Envoyé :* samedi 4 novembre 2023 14:45
>>>>> *À :* STEPHAN Emile INNOV/NET <emile.stephan@orange.com>; Nicolas Kuhn
>>>>> <nicolas.kuhn.ietf@gmail.com>; quic@ietf.org
>>>>> *Objet :* Re: Authentication in draft-kuhn-quic-bdpframe-extension
>>>>>
>>>>>
>>>>>
>>>>> On 04/11/2023 13:28, emile.stephan@orange.com wrote:
>>>>>
>>>>> Hi
>>>>>
>>>>>
>>>>>
>>>>> IMO, we are speaking of QUIC resumption not TLS.
>>>>>
>>>>>
>>>>>
>>>>> Regards
>>>>>
>>>>> Emile
>>>>>
>>>>>
>>>>>
>>>>> I think QUIC CC resumption could be a part of TLS resumption. Are there
>>>>> also cases where these could be different things?
>>>>>
>>>>> Gorry
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> *De :* QUIC <quic-bounces@ietf.org> <quic-bounces@ietf.org> *De la
>>>>> part de* Nicolas Kuhn
>>>>> *Envoyé :* samedi 4 novembre 2023 12:43
>>>>> *À :* quic@ietf.org
>>>>> *Objet :* Re: Authentication in draft-kuhn-quic-bdpframe-extension
>>>>>
>>>>>
>>>>>
>>>>> Dear all,
>>>>>
>>>>> Thank you for your interest in this work !
>>>>>
>>>>> I would tend to agree with Lucas and think we should consider scenarios
>>>>> where BDP frames would be used with TLS resumption and I do not see the
>>>>> need for proposing another trust mechanism; But there may be scenarios I do
>>>>> not see ?
>>>>>
>>>>> More comments inline.
>>>>>
>>>>> Kind regards,
>>>>>
>>>>> Nico
>>>>>
>>>>> On 11/3/23 16:44, Lucas Pardue wrote:
>>>>>
>>>>> Hi folks,
>>>>>
>>>>>
>>>>>
>>>>> I'm still trying to come up to speed on this spec. But when I've
>>>>> thought about it a little, its seemed very natural to associate the BDP
>>>>> frame (contents) with the TLS session. We already have a lot of text about
>>>>> TLS session resumption in QUIC. It feels like there is already a template
>>>>> design with HTTP/3 - a server sends SETTINGS to tell a client something
>>>>> unique about the active QUIC connection. RFC 9114 section 7.2.4.2 [1]states
>>>>>
>>>>>
>>>>>
>>>>>> When a 0-RTT QUIC connection is being used, the initial value of
>>>>> each server setting is the value used in the previous session. Clients
>>>>> *SHOULD* store the settings the server provided in the HTTP/3
>>>>> connection where resumption information was provided, but they *MAY* opt
>>>>> not to store settings in certain cases (e.g., if the session ticket is
>>>>> received before the SETTINGS frame). A client *MUST* comply with
>>>>> stored settings -- or default values if no values are stored -- when
>>>>> attempting 0-RTT. Once a server has provided new settings, clients
>>>>> *MUST* comply with those values.¶
>>>>> <https://www.rfc-editor.org/rfc/rfc9114.html#section-7.2.4.2-6>
>>>>>
>>>>> So with a bit of massaging, if we can link BDP frame to session
>>>>> resumption. we know that it is based on a previous trust relationship.
>>>>>
>>>>> Is there any scenario where BDP frame would want to be used without TLS
>>>>> resumption?
>>>>>
>>>>> [NK] I agree.
>>>>>
>>>>>
>>>>>
>>>>> Cheers
>>>>>
>>>>> Lucas
>>>>>
>>>>>
>>>>> [1] - https://www.rfc-editor.org/rfc/rfc9114.html#section-7.2.4.2-6
>>>>>
>>>>>
>>>>>
>>>>> On Thu, Nov 2, 2023 at 6:17 PM Gorry Fairhurst <gorry@erg.abdn.ac.uk>
>>>>> wrote:
>>>>>
>>>>> On 02/11/2023 16:43, Q Misell wrote:
>>>>>
>>>>> Hi all,
>>>>>
>>>>>
>>>>>
>>>>> I've been working with Gorry (and others) on actually implementing the
>>>>> BDP frame extension, and further refining the draft based on experience
>>>>> from implementation.
>>>>>
>>>>> Q, I think I can help a little, see below, but I think there are good
>>>>> questions here.
>>>>>
>>>>> [NK] If the draft is not clear enough on these relevant questions, we
>>>>> ought to make things clearer.
>>>>>
>>>>>
>>>>>
>>>>> One thing that came up that I'd like to ask the WG's opinion on is that
>>>>> of authentication of the BDP frame, and when it should be sent in the
>>>>> exchange. I've had a few thoughts on this, it'd be great to hear what
>>>>> others think of them, or what other suggestions people might have.
>>>>>
>>>>>
>>>>>
>>>>> First, my thoughts on authentication. Do the CC parameters need to be
>>>>> authenticated at all? I would say "yes" as a client sending some
>>>>> unauthenticated CC parameters could cause a DoS of the server (or any other
>>>>> node along the path) by trying to send far too much data at once.
>>>>>
>>>>> The reason for the secure hash around the contents of the BDP Frame is
>>>>> to allow a server to know the CC params had not been modified. Of course
>>>>> you caould ask what sort of information contributes to that hash, to make
>>>>> the server confident that it can accept CC params from the client and
>>>>> believe that these have not been modifed? That could be important?
>>>>>
>>>>> [NK] The client should not be able to transmit unauthenticated CC
>>>>> parameters that are not checked / known by the server. In the current spec,
>>>>> the client can only send data previously received by the server. Malicious
>>>>> clients could try to cause a DoS on the server but that would not be
>>>>> specific to BDP Frame but to 0-RTT in general.
>>>>>
>>>>> Should the CC parameters be encrypted? Probably not, as a client which
>>>>> is aware of a major decrease in available capacity could compare the new
>>>>> link capacity to its stored CC parameters and decide not to send them. If
>>>>> they're encrypted the client can't inspect what CC parameters the server
>>>>> thinks the link will have.
>>>>>
>>>>> Perhaps the ID ought to be clearer. The QUIC Session is of course
>>>>> encrypted and authenticated, so, in this respect, the BDP Frame is
>>>>> protected in transit along the path using TLS.
>>>>>
>>>>> The current proposal is not to additionally encrypt the CC params
>>>>> *within* the BDP, so that a client could read these and utlise as it sees
>>>>> fit. This still needs to authenticate the entire set of params, so that the
>>>>> server could trust them.
>>>>>
>>>>> The params include an endpoint token used by a server  to represent the
>>>>> remote endpoint - we could have used the client IP source address for this
>>>>> if the client had an invariant public IP  source address. That's not so
>>>>> common with IPv6 or the use of IPv4 NAPT - so the server has to find a way
>>>>> to represent it's view of the client as the endpoint token. There could be
>>>>> possibilities to do this quite differently.
>>>>>
>>>>>
>>>>>
>>>>> How should they be authenticated? There are a few options I can see
>>>>> here, and I'm unsure which is best:
>>>>>
>>>>> (1) Authenticated with the TLS certificate
>>>>>
>>>>> (2) Authenticated with some other asymmetric key
>>>>>
>>>>> (3) Authenticated using some symmetric key known only to the server
>>>>>
>>>>> (4) Same as 3 but with a key identifier
>>>>>
>>>>>
>>>>>
>>>>> Options 1 and 2 allow the client to verify the authentication over the
>>>>> CC parameters, but this doesn't seem to be of much use to me. Option 1
>>>>> additionally sets a time limit on use of stored CC parameters, as the TLS
>>>>> certificate will eventually expire. This doesn't seem to me to be much of
>>>>> an issue. A new connection far into the future (say 1-2 months) would
>>>>> almost certainly have different CC parameters anyway.
>>>>>
>>>>>
>>>>>
>>>>> Option 3 seems the best to me. It would allow one key to be shared
>>>>> across an array of anycast servers, without sharing other keying material
>>>>> that might be used to protect more sensitive parts of the connection.
>>>>> Option 4 additionally expands on this by allowing key rotation without
>>>>> immediately invalidating all current stored CC parameters.
>>>>>
>>>>> So, if this is about how to construct the secure hash, irt seems like
>>>>> an interesting topic to find out more, I'd agree.
>>>>>
>>>>> [NK] We may not specify how to compute the secure hash but that could
>>>>> be interesting discussions if you think the draft needs to be more specific
>>>>> on this. IMHO the client does not need to know how the secure hash is
>>>>> compute and thus not sure we need interoperability.
>>>>>
>>>>>
>>>>>
>>>>> When should the BDP frame be sent? There are two places I can see BDP
>>>>> frames being useful to send:
>>>>>
>>>>> (1) After initial frames but before crypto frames
>>>>>
>>>>> (2) After crypto frames and before application data
>>>>>
>>>>>
>>>>>
>>>>> Option 1 allows for the previously calculated CC parameters to be used
>>>>> for the sometimes quite large TLS handshake, but also precludes options 1
>>>>> and 2 for authentication. Option 2 allows for greater flexibility in
>>>>> authentication, and also makes the BDP frame encrypted in transit. I'm
>>>>> unsure what the privacy implications of an unencrypted BDP frame are, so if
>>>>> anyone can come up with a reason CC data shouldn't be observable to an
>>>>> intermediary that would be greatly appreciated.
>>>>>
>>>>> :-)
>>>>>
>>>>> [NK] Do we need to specify this in the draft or should this be let to
>>>>> implementers to define the most relevant approach (w.r.t. frame scheduling
>>>>> to format QUIC packets).
>>>>>
>>>>>
>>>>>
>>>>> Looking forward to hearing your thoughts.
>>>>>
>>>>> [NK] Thank you for your comments !
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Q Misell
>>>>>
>>>>> Gorry
>>>>>
>>>>> ------------------------------
>>>>>
>>>>> Any statements contained in this email are personal to the author and
>>>>> are not necessarily the statements of the company unless specifically
>>>>> stated. AS207960 Cyfyngedig, having a registered office at 13 Pen-y-lan
>>>>> Terrace, Caerdydd, Cymru, CF23 9EU, trading as Glauca Digital, is a company
>>>>> registered in Wales under № 12417574
>>>>> <https://find-and-update.company-information.service.gov.uk/company/12417574>,
>>>>> LEI 875500FXNCJPAPF3PD10. ICO register №: ZA782876
>>>>> <https://ico.org.uk/ESDWebPages/Entry/ZA782876>. UK VAT №:
>>>>> GB378323867. EU VAT №: EU372013983. Turkish VAT №: 0861333524. South Korean
>>>>> VAT №: 522-80-03080. AS207960 Ewrop OÜ, having a registered office at
>>>>> Lääne-Viru maakond, Tapa vald, Porkuni küla, Lossi tn 1, 46001, trading as
>>>>> Glauca Digital, is a company registered in Estonia under № 16755226.
>>>>> Estonian VAT №: EE102625532. Glauca Digital and the Glauca logo are
>>>>> registered trademarks in the UK, under № UK00003718474 and № UK00003718468,
>>>>> respectively.
>>>>>
>>>>>
>>>>>
>>>>> ____________________________________________________________________________________________________________
>>>>>
>>>>> Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc
>>>>>
>>>>> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler
>>>>>
>>>>> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,
>>>>>
>>>>> Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.
>>>>>
>>>>>
>>>>>
>>>>> This message and its attachments may contain confidential or privileged information that may be protected by law;
>>>>>
>>>>> they should not be distributed, used or copied without authorisation.
>>>>>
>>>>> If you have received this email in error, please notify the sender and delete this message and its attachments.
>>>>>
>>>>> As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
>>>>>
>>>>> Thank you.
>>>>>
>>>>>
>>>>>
>>>>> ____________________________________________________________________________________________________________
>>>>> Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc
>>>>> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler
>>>>> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,
>>>>> Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.
>>>>>
>>>>> This message and its attachments may contain confidential or privileged information that may be protected by law;
>>>>> they should not be distributed, used or copied without authorisation.
>>>>> If you have received this email in error, please notify the sender and delete this message and its attachments.
>>>>> As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
>>>>> Thank you.
>>>>>
>>>>>
>>>>
>>>> --
>>>> Kazuho Oku
>>>>
>>>
>>>
>