[{"author": "Eric Rescorla", "text": "<p>For a second there I thought we had a chicken</p>", "time": "2024-03-18T23:32:56Z"}, {"author": "Deirdre Connolly", "text": "<p>I originally thought this was 2 hours earlier (;\u00b4\u0f0e\u0eb6\u0414\u0f0e\u0eb6`)</p>", "time": "2024-03-18T23:32:59Z"}, {"author": "Eric Rescorla", "text": "<p>as chair</p>", "time": "2024-03-18T23:32:59Z"}, {"author": "Deirdre Connolly", "text": "<blockquote>\n<p>i can eat it<br>\n<span aria-label=\"sunglasses\" class=\"emoji emoji-1f60e\" role=\"img\" title=\"sunglasses\">:sunglasses:</span></p>\n</blockquote>", "time": "2024-03-18T23:33:18Z"}, {"author": "Eric Rescorla", "text": "<p>Select all. Mark closed</p>", "time": "2024-03-18T23:33:37Z"}, {"author": "Deirdre Connolly", "text": "<p>I wish I could reactji in MeetEcho</p>", "time": "2024-03-18T23:34:11Z"}, {"author": "Richard Barnes", "text": "<p><span aria-label=\"sunglasses\" class=\"emoji emoji-1f60e\" role=\"img\" title=\"sunglasses\">:sunglasses:</span></p>", "time": "2024-03-18T23:34:49Z"}, {"author": "Richard Barnes", "text": "<p>I wish emoji worked at all in MeetEcho</p>", "time": "2024-03-18T23:35:05Z"}, {"author": "Martin Thomson", "text": "<p>what ekr said</p>", "time": "2024-03-18T23:38:40Z"}, {"author": "Stephen Farrell", "text": "<p>boring is good</p>", "time": "2024-03-18T23:41:22Z"}, {"author": "Deirdre Connolly", "text": "<p>traditional <span aria-label=\"handshake\" class=\"emoji emoji-1f91d\" role=\"img\" title=\"handshake\">:handshake:</span> PQ</p>", "time": "2024-03-18T23:41:41Z"}, {"author": "Sean Turner", "text": "<p>:)</p>", "time": "2024-03-18T23:41:48Z"}, {"author": "Christopher Patton", "text": "<p>Keep it simple for TLS!</p>", "time": "2024-03-18T23:44:27Z"}, {"author": "Deirdre Connolly", "text": "<p>100 we can just ship</p>", "time": "2024-03-18T23:44:35Z"}, {"author": "Stephen Farrell", "text": "<p>+1 to martin, if simple works, do simple</p>", "time": "2024-03-18T23:44:38Z"}, {"author": "Deirdre Connolly", "text": "<p>The joys of TLS 1.3 doing things right in the key schedule</p>", "time": "2024-03-18T23:44:54Z"}, {"author": "Deirdre Connolly", "text": "<p>yeah that</p>", "time": "2024-03-18T23:45:37Z"}, {"author": "Deirdre Connolly", "text": "<p>Today?? Link please?</p>", "time": "2024-03-18T23:45:56Z"}, {"author": "Deirdre Connolly", "text": "<p>on the chrome announcement</p>", "time": "2024-03-18T23:46:05Z"}, {"author": "Dennis Jackson", "text": "<p><a href=\"https://chromestatus.com/feature/5257822742249472\">https://chromestatus.com/feature/5257822742249472</a></p>", "time": "2024-03-18T23:46:25Z"}, {"author": "Dennis Jackson", "text": "<p>9 hours ago: <a href=\"https://groups.google.com/a/chromium.org/g/blink-dev/c/6xfaov3Z4yo\">https://groups.google.com/a/chromium.org/g/blink-dev/c/6xfaov3Z4yo</a></p>", "time": "2024-03-18T23:46:51Z"}, {"author": "Martin Thomson", "text": "<p>Note that we are using Kyber, which is the draft from Bas.</p>", "time": "2024-03-18T23:46:53Z"}, {"author": "Deirdre Connolly", "text": "<p>Baller, thanks Dennis</p>", "time": "2024-03-18T23:47:10Z"}, {"author": "Martin Thomson", "text": "<p>Is that static ECDH?</p>", "time": "2024-03-18T23:47:33Z"}, {"author": "Eric Rescorla", "text": "<p>I hope!</p>", "time": "2024-03-18T23:47:39Z"}, {"author": "Deirdre Connolly", "text": "<p>Yeah uh, the number will have to change between Kyber and ML-KEM, the shared secret will change with with same inputs</p>", "time": "2024-03-18T23:47:42Z"}, {"author": "Dennis Jackson", "text": "<p>Firefox - We've been shipping it in Nightly for a while, release experiment is on the way.</p>", "time": "2024-03-18T23:47:47Z"}, {"author": "Eric Rescorla", "text": "<p>I think that's what the N/A means</p>", "time": "2024-03-18T23:47:48Z"}, {"author": "Martin Thomson", "text": "<p>Because ECDH should be discouraged</p>", "time": "2024-03-18T23:47:51Z"}, {"author": "Eric Rescorla", "text": "<p>For a moment I thought it was ECDHE</p>", "time": "2024-03-18T23:48:08Z"}, {"author": "Deirdre Connolly", "text": "<p>On this point, X-Wing intends to hold off on asking for a number until ML-KEM / FIPS 203 is final</p>", "time": "2024-03-18T23:48:30Z"}, {"author": "Martin Thomson", "text": "<p>FFDHE is N, ECDH is D</p>", "time": "2024-03-18T23:48:31Z"}, {"author": "Eric Rescorla", "text": "<p>yeah, I just thought for a second we were discouraging ephemeral ECDH!</p>", "time": "2024-03-18T23:48:51Z"}, {"author": "Eric Rescorla", "text": "<p>I think D is reasonable</p>", "time": "2024-03-18T23:49:18Z"}, {"author": "Eric Rescorla", "text": "<p>for ECDH</p>", "time": "2024-03-18T23:49:25Z"}, {"author": "Martin Thomson", "text": "<p>I'm OK with D for FFDHE, but it's not what we say in TLS</p>", "time": "2024-03-18T23:49:42Z"}, {"author": "Martin Thomson", "text": "<p>FFDHE in TLS 1.2 is D</p>", "time": "2024-03-18T23:50:20Z"}, {"author": "Martin Thomson", "text": "<p>because interoperability is challenged</p>", "time": "2024-03-18T23:50:30Z"}, {"author": "David Benjamin", "text": "<p>Also shared secret is broken. <a href=\"https://raccoon-attack.com/\">https://raccoon-attack.com/</a></p>", "time": "2024-03-18T23:50:55Z"}, {"author": "Eric Rescorla", "text": "<p>Didn't we have consensus for FFDHE == D</p>", "time": "2024-03-18T23:51:09Z"}, {"author": "Christopher Patton", "text": "<p>The question about whether to discourage FFDHE is not about group size: it's about asking whether there is a use case for which ECC is not sufficient. Probably not?</p>", "time": "2024-03-18T23:51:31Z"}, {"author": "Martin Thomson", "text": "<p>To recap David's comment: FFDHE Groups can be N, DHE Cipher Suites can be D</p>", "time": "2024-03-18T23:53:31Z"}, {"author": "Martin Thomson", "text": "<p>FFDHE 8192 is awesome</p>", "time": "2024-03-18T23:53:54Z"}, {"author": "Martin Thomson", "text": "<p>discourage fixed key DH variants in all forms</p>", "time": "2024-03-18T23:54:16Z"}, {"author": "Dennis Jackson", "text": "<p>The devil makes side channels for static key exchange :-)</p>", "time": "2024-03-18T23:55:31Z"}, {"author": "David Benjamin", "text": "<p><span class=\"user-mention silent\" data-user-id=\"26\">Martin Thomson</span> <a href=\"#narrow/stream/140-tls/topic/ietf-119/near/109068\">said</a>:</p>\n<blockquote>\n<p>FFDHE 8192 is awesome</p>\n</blockquote>\n<p>Why worry about DoS attacks when you can just deploy incredibly slow crypto and DoS yourself!</p>", "time": "2024-03-18T23:55:49Z"}, {"author": "Stephen Farrell", "text": "<p>any kind of formally blocked, depending on someone's students seems odd</p>", "time": "2024-03-19T00:03:09Z"}, {"author": "Eric Rescorla", "text": "<p>well, advancing things that haven't been properly reviewed seems even more odd</p>", "time": "2024-03-19T00:03:40Z"}, {"author": "Jonathan Hoyland", "text": "<p>I disagree strongly with Scott, it does break current proofs</p>", "time": "2024-03-19T00:05:31Z"}, {"author": "John Gray", "text": "<p>This idea sounds great, but isn't it what CFRG does?  So this Triage panel would be part of the TLS working group?  Seems like other working groups would also benefit from such a panel.</p>", "time": "2024-03-19T00:07:43Z"}, {"author": "Eric Rescorla", "text": "<p>CFRG doesn't do this for protocols</p>", "time": "2024-03-19T00:07:54Z"}, {"author": "Dennis Jackson", "text": "<p>Not really John. CFRG is more primitives.</p>", "time": "2024-03-19T00:08:04Z"}, {"author": "John Gray", "text": "<p>So shouldn't there be a working group that does what CFRG does for protocols?   Maybe this panel should be isn't own group then that gives inputs to working groups?</p>", "time": "2024-03-19T00:09:33Z"}, {"author": "Eric Rescorla", "text": "<p>I think it would be great to have something more generally, but I  really want it for TLS, and don't want to wait for others</p>", "time": "2024-03-19T00:09:35Z"}, {"author": "Thom Wiggers", "text": "<p>deidre's computer decided to do FFDHE</p>", "time": "2024-03-19T00:10:06Z"}, {"author": "Dennis Jackson", "text": "<p>This kind of work is also quite domain specific. I'm doubtful a general group would work. Better to have independent panels if things go that way</p>", "time": "2024-03-19T00:10:51Z"}, {"author": "Quynh Dang", "text": "<p>FFDHE 8192 to be precise.</p>", "time": "2024-03-19T00:11:02Z"}, {"author": "John Gray", "text": "<p>So independent panels for each working group that needs it?   I can imagine this model could work for LAMPS as well.  For example, we are begging for people to look over our CMPv3 spec, so a similar model for that group would be most helpful.   I guess this model could start here, and if it grows to work with other groups then great!</p>", "time": "2024-03-19T00:13:29Z"}, {"author": "Eric Rescorla", "text": "<p>I actually <em>do</em> want the work to stop in that case.,</p>", "time": "2024-03-19T00:14:52Z"}, {"author": "Jonathan Hoyland", "text": "<p>I do think we could leverage UFMRG to maybe coordinate this kind of activity</p>", "time": "2024-03-19T00:15:13Z"}, {"author": "Jonathan Hoyland", "text": "<p>Also, thinking on it, if the IETF is formally blocked on the analysis (even if it doesn't find anything) then maybe you could leverage that to get published, i.e. the impact of the paper that it allows a protocol to advance.</p>", "time": "2024-03-19T00:16:10Z"}, {"author": "David Schinazi", "text": "<p>+1 to what Stephen is saying. If the WG has consensus to require analysis for a specific doc that's fine. But we shouldn't have a blanket requirement</p>", "time": "2024-03-19T00:18:36Z"}, {"author": "David Schinazi", "text": "<p>But it sounds like that matches what Deirdre is proposing</p>", "time": "2024-03-19T00:18:59Z"}, {"author": "Jonathan Hoyland", "text": "<p>The WG or the chairs specifically?</p>", "time": "2024-03-19T00:19:01Z"}, {"author": "Jonathan Hoyland", "text": "<p>I think the decision should be on the chairs taking input from the WG.</p>", "time": "2024-03-19T00:19:46Z"}, {"author": "David Schinazi", "text": "<p>Oh absolutely not, that would be overreach by the chairs</p>", "time": "2024-03-19T00:20:01Z"}, {"author": "Dennis Jackson", "text": "<p>Chairs shouldn't take decisions, just handle process.</p>", "time": "2024-03-19T00:20:05Z"}, {"author": "Eric Rescorla", "text": "<p>Yah it has to be a WG decision. But the WG should decide to require analysis :)</p>", "time": "2024-03-19T00:20:20Z"}, {"author": "David Schinazi", "text": "<p>If the WG reaches consensus then everything is possible :-)</p>", "time": "2024-03-19T00:20:43Z"}, {"author": "Eric Rescorla", "text": "<p>getting a lot of noise from Patton</p>", "time": "2024-03-19T00:22:17Z"}, {"author": "Sean Turner", "text": "<p>we are too</p>", "time": "2024-03-19T00:22:27Z"}, {"author": "Martin Thomson", "text": "<p>MIC HOT</p>", "time": "2024-03-19T00:22:32Z"}, {"author": "Martin Thomson", "text": "<p>SURFACE OF THE SUN</p>", "time": "2024-03-19T00:22:47Z"}, {"author": "Christopher Patton", "text": "<p>Sorry, gang!</p>", "time": "2024-03-19T00:23:33Z"}, {"author": "Martin Thomson", "text": "<p>Why not define a record size scaling extension?</p>", "time": "2024-03-19T00:25:05Z"}, {"author": "Martin Thomson", "text": "<p>There could be a number, x, which is applied by shifting the record size left by x.</p>", "time": "2024-03-19T00:25:50Z"}, {"author": "Eric Rescorla", "text": "<p>Well, we should decide if it's a good idea and then how to spell it.</p>", "time": "2024-03-19T00:26:07Z"}, {"author": "Martin Thomson", "text": "<p>Then, you can have 2^32 bytes in each record.</p>", "time": "2024-03-19T00:26:14Z"}, {"author": "Michael T\u00fcxen", "text": "<p>Is that OK from a crypto persepctive?</p>", "time": "2024-03-19T00:26:33Z"}, {"author": "Martin Thomson", "text": "<p>Agreement?  Evidence?</p>", "time": "2024-03-19T00:26:37Z"}, {"author": "Michael T\u00fcxen", "text": "<p>Agreement</p>", "time": "2024-03-19T00:27:03Z"}, {"author": "Martin Thomson", "text": "<p>Michael, you have to change usage limits, but I believe that most AEADs we use can have 2^36 bytes.</p>", "time": "2024-03-19T00:27:11Z"}, {"author": "Christopher Patton", "text": "<p>What are the use cases?</p>", "time": "2024-03-19T00:27:18Z"}, {"author": "Martin Thomson", "text": "<p>Agreement is no where near as good as evidence.</p>", "time": "2024-03-19T00:27:27Z"}, {"author": "Michael T\u00fcxen", "text": "<p>One of the use cases would be signalling traffic based on a request from 3GPP.</p>", "time": "2024-03-19T00:27:48Z"}, {"author": "Michael T\u00fcxen", "text": "<p>Using, for example, DTLS over SCTP.</p>", "time": "2024-03-19T00:28:05Z"}, {"author": "Michael T\u00fcxen", "text": "<p>SCTP can handle such large messages.</p>", "time": "2024-03-19T00:28:13Z"}, {"author": "Martin Thomson", "text": "<p>So... throughput over latency.</p>", "time": "2024-03-19T00:28:22Z"}, {"author": "Yoav Nir", "text": "<p>Why staple an OCSP response when you can staple a multi-MB CRL</p>", "time": "2024-03-19T00:28:31Z"}, {"author": "David Benjamin", "text": "<p><span class=\"user-mention silent\" data-user-id=\"26\">Martin Thomson</span> <a href=\"#narrow/stream/140-tls/topic/ietf-119/near/109308\">said</a>:</p>\n<blockquote>\n<p>Michael, you have to change usage limits, but I believe that most AEADs we use can have 2^36 bytes.</p>\n</blockquote>\n<p>Realistically, since you have to buffer up the whole record before decrypting it (do not release unauthenticated plaintext to the application!), the record sizes will become impractical well before we get close to that.</p>", "time": "2024-03-19T00:29:26Z"}, {"author": "Stephen Farrell", "text": "<p>wondering could this have any effect on traffic analysis?</p>", "time": "2024-03-19T00:30:00Z"}, {"author": "Martin Thomson", "text": "<p>traffic analysis might be harder if things are more coalesced</p>", "time": "2024-03-19T00:30:58Z"}, {"author": "Martin Thomson", "text": "<p>but only <em>might</em></p>", "time": "2024-03-19T00:31:08Z"}, {"author": "Stephen Farrell", "text": "<p>or easier if the sizes are more tied to application layer</p>", "time": "2024-03-19T00:31:19Z"}, {"author": "Dennis Jackson", "text": "<p>There are good-ish solutions for traffic analysis, we should standardise one sometime :-)</p>", "time": "2024-03-19T00:31:35Z"}, {"author": "Stephen Farrell", "text": "<p>@dennis yeah that'd be good, who's interested?</p>", "time": "2024-03-19T00:33:34Z"}, {"author": "David Benjamin", "text": "<p>Concretely, the overhead of one TLS 1.3 AES-GCM record is 5 + 16 + 1 = 22 bytes. 22 / 16K is 0.14% overhead. We get to divide that by 4, but it's already pretty small.</p>", "time": "2024-03-19T00:34:36Z"}, {"author": "Martin Thomson", "text": "<p>I doubt that the limiting factor is the tag overhead</p>", "time": "2024-03-19T00:36:07Z"}, {"author": "Rich Salz", "text": "<p>Scaling the record size is definitely a neat hack, with emphasis on both words.</p>", "time": "2024-03-19T00:36:31Z"}, {"author": "Eric Rescorla", "text": "<p>+1</p>", "time": "2024-03-19T00:36:45Z"}, {"author": "Eric Rescorla", "text": "<p>Shall we send this draft to the triage panel?</p>", "time": "2024-03-19T00:37:19Z"}, {"author": "Eric Rescorla", "text": "<p>Mattsson's</p>", "time": "2024-03-19T00:37:30Z"}, {"author": "Martin Thomson", "text": "<p>Mattsson's should go to triage.  There are some non-obvious gotchas.</p>", "time": "2024-03-19T00:37:57Z"}, {"author": "Martin Thomson", "text": "<p>But we should try to get a little more concrete on the solution part first.</p>", "time": "2024-03-19T00:38:08Z"}, {"author": "Deirdre Connolly", "text": "<p>:gopher: \u27f0</p>", "time": "2024-03-19T00:39:20Z"}, {"author": "Christopher Patton", "text": "<p>I am an enthusiastic supporter of this draft, but slightly biased (I work with Jonathan)</p>", "time": "2024-03-19T00:41:14Z"}, {"author": "Dennis Jackson", "text": "<p><span class=\"user-mention silent\" data-user-id=\"55\">Stephen Farrell</span> <a href=\"#narrow/stream/140-tls/topic/ietf-119/near/109353\">said</a>:</p>\n<blockquote>\n<p>@dennis yeah that'd be good, who's interested?</p>\n</blockquote>\n<p>I think its a logical next step once ECH is thriving in the wild. Probably need to think a bit about the layer though. Likely going to need some work at both the HTTP and TLS layers.</p>", "time": "2024-03-19T00:41:17Z"}, {"author": "David Schinazi", "text": "<p>Is there a formal proof for this one?</p>", "time": "2024-03-19T00:41:20Z"}, {"author": "Jonathan Hoyland", "text": "<p>The code is available at <a href=\"https://github.com/jhoyla/tlsflags\">https://github.com/jhoyla/tlsflags</a></p>", "time": "2024-03-19T00:41:44Z"}, {"author": "Jonathan Hoyland", "text": "<p>So because it's a hint, I assert it doesn't need a formal proof, and there's no triage panel to gainsay me <span aria-label=\"joy\" class=\"emoji emoji-1f602\" role=\"img\" title=\"joy\">:joy:</span></p>", "time": "2024-03-19T00:42:23Z"}, {"author": "David Benjamin", "text": "<p>An exported-authenticator-like design seems kind of overkill here.</p>", "time": "2024-03-19T00:44:38Z"}, {"author": "Jonathan Hoyland", "text": "<p>Technically the payload can be exchanged over _any_ channel, even publicly, without compromising the _auth_ guarantees.</p>", "time": "2024-03-19T00:46:13Z"}, {"author": "Eric Rescorla", "text": "<p>Not with that attitude</p>", "time": "2024-03-19T00:47:09Z"}, {"author": "Jonathan Hoyland", "text": "<p>The more awkward case is what happens when a new session ticket and key update cross in mid-flight</p>", "time": "2024-03-19T00:48:41Z"}, {"author": "David Benjamin", "text": "<p>I don't believe this impacts the resumption secret.</p>", "time": "2024-03-19T00:49:06Z"}, {"author": "Martin Thomson", "text": "<p>My understanding is that this does not interact with resumption</p>", "time": "2024-03-19T00:49:17Z"}, {"author": "Jonathan Hoyland", "text": "<p>It doesn't that's my point.</p>", "time": "2024-03-19T00:49:19Z"}, {"author": "Sean Turner", "text": "<p>going to close the queue in a couple of minutes.</p>", "time": "2024-03-19T00:49:33Z"}, {"author": "Martin Thomson", "text": "<p>So that brings the whole thing into question.</p>", "time": "2024-03-19T00:49:35Z"}, {"author": "Jonathan Hoyland", "text": "<p>So the state of the TLS session is ambiguous to the server</p>", "time": "2024-03-19T00:49:37Z"}, {"author": "David Benjamin", "text": "<p>But yes there are a lot of things crossing mid-flight issues with the original draft. But the solution is worse than the problem. We should have just fixed the problem. :-)</p>", "time": "2024-03-19T00:49:44Z"}, {"author": "David Benjamin", "text": "<p><span class=\"user-mention silent\" data-user-id=\"453\">Jonathan Hoyland</span> <a href=\"#narrow/stream/140-tls/topic/ietf-119/near/109479\">said</a>:</p>\n<blockquote>\n<p>So the state of the TLS session is ambiguous to the server</p>\n</blockquote>\n<p>It's not ambiguous because it doesn't impact the resumption secret. The ticket state is unambiguously the original resumption secret.</p>", "time": "2024-03-19T00:50:20Z"}, {"author": "David Benjamin", "text": "<p>I think there's a pretty straightforward design with three messages instead of two, that avoids all these problems.</p>", "time": "2024-03-19T00:51:05Z"}, {"author": "Jonathan Hoyland", "text": "<p><span class=\"user-mention silent\" data-user-id=\"829\">David Benjamin</span> <a href=\"#narrow/stream/140-tls/topic/ietf-119/near/109485\">said</a>:</p>\n<blockquote>\n<p><span class=\"user-mention silent\" data-user-id=\"453\">Jonathan Hoyland</span> <a href=\"#narrow/stream/140-tls/topic/ietf-119/near/109479\">said</a>:</p>\n<blockquote>\n<p>So the state of the TLS session is ambiguous to the server</p>\n</blockquote>\n<p>It's not ambiguous because it doesn't impact the resumption secret. The ticket state is unambiguously the original resumption secret.</p>\n</blockquote>\n<p>So the DH-KEM is (effectively) an authentication protocol, and in effect the server doesn't know whether the client has successfully authed or not when the resumption happens.</p>", "time": "2024-03-19T00:51:37Z"}, {"author": "Martin Thomson", "text": "<p>The three message option described by Ilari is an example that works..</p>", "time": "2024-03-19T00:52:41Z"}, {"author": "Martin Thomson", "text": "<p>It's not ideal, but I think that it managed glare well enough.</p>", "time": "2024-03-19T00:52:57Z"}, {"author": "Sean Turner", "text": "<p>we have locked the queu</p>", "time": "2024-03-19T00:53:16Z"}, {"author": "David Benjamin", "text": "<p>It only matters as an authentication protocol if you actually use it as one. If you're just generating an ephemeral key to swizzle into the traffic secret, it doesn't impact the resumption state.</p>", "time": "2024-03-19T00:57:17Z"}, {"author": "Dennis Jackson", "text": "<p>This is the current draft text: </p>\n<p>To perform public key encryption the sender needs to have access to the public key of the recipient. This document makes the assumption that the public key in the exchanged end-entity certificate can be used with the HPKE KEM. The use of HPKE, and the recipients long-term public key, in the ephemeral-static Diffie-Hellman exchange provides perfect forward secrecy of the ongoing connection and demonstrates possession of the long-term secret key.</p>", "time": "2024-03-19T00:57:35Z"}, {"author": "David Benjamin", "text": "<p>Wait, I'm confused... it's using the signing key in the certificate as a KEM key?</p>", "time": "2024-03-19T00:58:07Z"}, {"author": "Martin Thomson", "text": "<p>wat</p>", "time": "2024-03-19T00:58:16Z"}, {"author": "Dennis Jackson", "text": "<p>That's what the draft says, but that's not what Hannes is saying as I understand them</p>", "time": "2024-03-19T00:58:22Z"}, {"author": "John Preu\u00df Mattsson", "text": "<p>I think updating the exporter secret is a requirement</p>", "time": "2024-03-19T01:00:52Z"}, {"author": "David Benjamin", "text": "<p>We cannot have both. Either we leave exporter secret alone and have transparent rekeying (i.e. application protocol is not aware of when this happens), or we sacrifice transparent rekeying and update the exporter secret.</p>", "time": "2024-03-19T01:01:56Z"}, {"author": "John Preu\u00df Mattsson", "text": "<p>I don't think it need to be transparant to the application layer. The application layer can trigger a key update at the TLS layer</p>", "time": "2024-03-19T01:04:21Z"}, {"author": "Deirdre Connolly", "text": "<p>tlswg <span aria-label=\"point right\" class=\"emoji emoji-1f449\" role=\"img\" title=\"point right\">:point_right:</span> <span aria-label=\"point left\" class=\"emoji emoji-1f448\" role=\"img\" title=\"point left\">:point_left:</span> tlswg</p>\n<div class=\"message_inline_image\"><a href=\"https://cdn.vox-cdn.com/thumbor/mFiywP9BUHDC8AIRBDYJvXdfQiA=/1400x1050/filters:format(jpeg)/cdn.vox-cdn.com/uploads/chorus_asset/file/23265504/Spider_Man_meme.jpg\"><img src=\"/external_content/b7b65302bb4440d693bede9d161b6263d5dbeab9/68747470733a2f2f63646e2e766f782d63646e2e636f6d2f7468756d626f722f6d4669797750394255484443384149524244594a765864665169413d2f3134303078313035302f66696c746572733a666f726d6174286a706567292f63646e2e766f782d63646e2e636f6d2f75706c6f6164732f63686f7275735f61737365742f66696c652f32333236353530342f5370696465725f4d616e5f6d656d652e6a7067\"></a></div>", "time": "2024-03-19T01:04:40Z"}, {"author": "Dennis Jackson", "text": "<p>Damm TLS WG, they ruined TLS.</p>", "time": "2024-03-19T01:04:56Z"}, {"author": "Eric Rescorla", "text": "<p>are we just doing memes now?</p>", "time": "2024-03-19T01:05:09Z"}, {"author": "Deirdre Connolly", "text": "<p>/i'm/ just doing memes now</p>", "time": "2024-03-19T01:05:32Z"}, {"author": "Deirdre Connolly", "text": "<p>I can't reactji in MeetEcho <span aria-label=\"sob\" class=\"emoji emoji-1f62d\" role=\"img\" title=\"sob\">:sob:</span></p>", "time": "2024-03-19T01:05:49Z"}, {"author": "Jonathan Hoyland", "text": "<p>That's one reason why EAs can work here. Because they can be transmitted + negotiated out of bound, so if you can inject the agreed secrets into the master secret you don't need the application (per se) to be in the loop.</p>", "time": "2024-03-19T01:06:03Z"}, {"author": "John Preu\u00df Mattsson", "text": "<p>Yes please, more memes :)</p>", "time": "2024-03-19T01:06:15Z"}, {"author": "Eric Rescorla", "text": "<p>Argh. do I have to use zulip to send memes? The Meetecho client doesn't seem to know how</p>", "time": "2024-03-19T01:06:36Z"}, {"author": "Dennis Jackson", "text": "<p>Yes</p>", "time": "2024-03-19T01:06:45Z"}, {"author": "Deirdre Connolly", "text": "<p>I just posted a link to an image</p>", "time": "2024-03-19T01:06:50Z"}, {"author": "Deirdre Connolly", "text": "<p>oh man MeetEcho doesn't load those? alas</p>", "time": "2024-03-19T01:07:02Z"}, {"author": "Eric Rescorla", "text": "<p><a href=\"https://imgflip.com/i/8jpkdn\">https://imgflip.com/i/8jpkdn</a></p>", "time": "2024-03-19T01:07:08Z"}, {"author": "John Preu\u00df Mattsson", "text": "<p>EKR wrote:</p>\n<blockquote>\n<p>The Meetecho client doesn't seem to know how</p>\n</blockquote>\n<p>File an issue, this is a serious problem</p>", "time": "2024-03-19T01:07:22Z"}, {"author": "Christopher Patton", "text": "<p>AND MY AXE</p>", "time": "2024-03-19T01:07:31Z"}, {"author": "Eric Rescorla", "text": "<p><a href=\"https://imgflip.com/i/8jpkdn\">https://imgflip.com/i/8jpkdn</a></p>", "time": "2024-03-19T01:08:01Z"}, {"author": "Eric Rescorla", "text": "<p>argh. even so</p>", "time": "2024-03-19T01:08:14Z"}, {"author": "Deirdre Connolly", "text": "<p>oooooo <span aria-label=\"fire\" class=\"emoji emoji-1f525\" role=\"img\" title=\"fire\">:fire:</span></p>", "time": "2024-03-19T01:08:17Z"}, {"author": "Eric Rescorla", "text": "<p><a href=\"/user_uploads/2/1a/Jp2ao-fy8yC_NbJkYJncooef/image.png\">image.png</a></p>\n<div class=\"message_inline_image\"><a href=\"/user_uploads/2/1a/Jp2ao-fy8yC_NbJkYJncooef/image.png\" title=\"image.png\"><img src=\"/user_uploads/2/1a/Jp2ao-fy8yC_NbJkYJncooef/image.png\"></a></div>", "time": "2024-03-19T01:08:23Z"}, {"author": "Eric Rescorla", "text": "<p>FINALY</p>", "time": "2024-03-19T01:08:35Z"}, {"author": "David Benjamin", "text": "<p>3-message design:</p>\n<ol>\n<li>Initiator sends ExtKeyUpdateRequest with a key_share. No traffic secrets are changed yet.</li>\n<li>Acceptor sends ExtKeyUpdateResponse with a key_share. Acceptor's write secret is updated, but <em>not</em> the initiator's write secret</li>\n<li>Initiator sends ExtKeyUpdateFinished (empty). Initiator's write secret is updated.</li>\n<li>Initiator may only have one ExtKeyUpdateRequest in flight at once. I.e. don't send a new one until the previous one got to ExtKeyUpdateFinished.</li>\n</ol>", "time": "2024-03-19T01:10:02Z"}, {"author": "Martin Thomson", "text": "<p>Maybe the right answer here is \"sure, you can have a codepoint, but not an RFC\"</p>", "time": "2024-03-19T01:10:07Z"}, {"author": "Eric Rescorla", "text": "<p>That's my proposal</p>", "time": "2024-03-19T01:10:16Z"}, {"author": "Stephen Farrell", "text": "<p>wouldn't the world be better without even the codepoint though?</p>", "time": "2024-03-19T01:10:32Z"}, {"author": "David Benjamin", "text": "<p>At any point in this process, app data can freely flow. If both sides act as initiator at the same time, you just have two of those flows happen independently and concurrently without any fuss.</p>", "time": "2024-03-19T01:10:39Z"}, {"author": "Christian Huitema", "text": "<p>decades of Internet, and yet these damn connections are breaking...</p>", "time": "2024-03-19T01:10:44Z"}, {"author": "Eric Rescorla", "text": "<p>Well our policies just allow the code point</p>", "time": "2024-03-19T01:10:45Z"}, {"author": "Martin Thomson", "text": "<p>David's EKU design seems reasonable on the face of it.</p>", "time": "2024-03-19T01:10:45Z"}, {"author": "Dennis Jackson", "text": "<p>Fairly similar to 00 of the draft</p>", "time": "2024-03-19T01:10:57Z"}, {"author": "Stephen Farrell", "text": "<p>our policies do allow the codepoint sure, but that doesn't make it a good idea</p>", "time": "2024-03-19T01:11:09Z"}, {"author": "Martin Thomson", "text": "<p>The TLS working group should not publish this document (or anything like it) at this time.</p>", "time": "2024-03-19T01:11:14Z"}, {"author": "Jonathan Hoyland", "text": "<p>Ok, so can I propose something that's total madness, but just to demonstrate the shape.<br>\nImagine you have a piece of code _adjacent_ to the TLS stack (in the TLS library) that negotiates an EA style thing (which is kosher because the EA style things _can be negotiated out-of-band) and inject that into the master secret. It's totally independent of the application layer, but it doesn't change the TLS state machine and it doesn't invalidate the proofs.</p>", "time": "2024-03-19T01:11:15Z"}, {"author": "David Benjamin", "text": "<p><span class=\"user-mention silent\" data-user-id=\"2103\">Dennis Jackson</span> <a href=\"#narrow/stream/140-tls/topic/ietf-119/near/109667\">said</a>:</p>\n<blockquote>\n<p>Fairly similar to 00 of the draft</p>\n</blockquote>\n<p>00 didn't have the third message and updated the initiator's write secret at step 2. That has a synchronization problem, but easily fixed with the third message.</p>", "time": "2024-03-19T01:11:33Z"}, {"author": "Jonathan Hoyland", "text": "<p>It operates by sending messages to Twitter.</p>", "time": "2024-03-19T01:11:53Z"}, {"author": "Martin Thomson", "text": "<p>the 00 draft also had unidirectional updates, whereas david is suggesting both directions update</p>", "time": "2024-03-19T01:12:02Z"}, {"author": "Jonathan Hoyland", "text": "<p>Once the Twitter-negotiation protocol is complete, you can update the keys.</p>", "time": "2024-03-19T01:12:28Z"}, {"author": "Martin Thomson", "text": "<p>code point suggestion: 0xbad1</p>", "time": "2024-03-19T01:12:44Z"}, {"author": "David Benjamin", "text": "<p>(Synchronization problem = if you update your write secret on <em>receipt</em> of something, the other side has no idea where in the stream you received their message. And so you have shut off app data and lock things up. Once you do that, it cannot be a transparent mechanism anymore.)</p>", "time": "2024-03-19T01:12:59Z"}, {"author": "Martin Thomson", "text": "<p>or the classic: 0xc0de</p>", "time": "2024-03-19T01:13:10Z"}, {"author": "Thom Wiggers", "text": "<p><span class=\"user-mention\" data-user-id=\"453\">@Jonathan Hoyland</span> <span aria-label=\"cross mark\" class=\"emoji emoji-274c\" role=\"img\" title=\"cross mark\">:cross_mark:</span></p>", "time": "2024-03-19T01:13:20Z"}, {"author": "Thom Wiggers", "text": "<p>(see what I did there)</p>", "time": "2024-03-19T01:13:26Z"}, {"author": "Richard Barnes", "text": "<p><span aria-label=\"sun face\" class=\"emoji emoji-1f31e\" role=\"img\" title=\"sun face\">:sun_face:</span><span aria-label=\"rainbow\" class=\"emoji emoji-1f308\" role=\"img\" title=\"rainbow\">:rainbow:</span><span aria-label=\"unicorn\" class=\"emoji emoji-1f984\" role=\"img\" title=\"unicorn\">:unicorn:</span></p>", "time": "2024-03-19T01:14:31Z"}, {"author": "Martin Thomson", "text": "<p>David in TLS, you need a message.  In DTLS, you don't.</p>", "time": "2024-03-19T01:14:37Z"}, {"author": "Jonathan Hoyland", "text": "<p><span class=\"user-mention\" data-user-id=\"86\">@Thom Wiggers</span> Do you disagree with my security analysis, or is the protocol just too gruesome <span aria-label=\"joy\" class=\"emoji emoji-1f602\" role=\"img\" title=\"joy\">:joy:</span> ?</p>", "time": "2024-03-19T01:14:45Z"}, {"author": "David Benjamin", "text": "<p><span class=\"user-mention silent\" data-user-id=\"26\">Martin Thomson</span> <a href=\"#narrow/stream/140-tls/topic/ietf-119/near/109713\">said</a>:</p>\n<blockquote>\n<p>David in TLS, you need a message.  In DTLS, you don't.</p>\n</blockquote>\n<p>Hehe, I could believe that. Haven't paged in KeyUpdate in DTLS 1.3. :-)</p>", "time": "2024-03-19T01:15:19Z"}, {"author": "Thom Wiggers", "text": "<p>I mainly disagree that they changed the name of twitter to X</p>", "time": "2024-03-19T01:15:31Z"}, {"author": "Martin Thomson", "text": "<p>It's Xitter</p>", "time": "2024-03-19T01:15:45Z"}, {"author": "Eric Rescorla", "text": "<p><a href=\"/user_uploads/2/6e/TWC8wElDYf95xEorJdFanKfG/image.png\">image.png</a></p>\n<div class=\"message_inline_image\"><a href=\"/user_uploads/2/6e/TWC8wElDYf95xEorJdFanKfG/image.png\" title=\"image.png\"><img src=\"/user_uploads/2/6e/TWC8wElDYf95xEorJdFanKfG/image.png\"></a></div>", "time": "2024-03-19T01:15:45Z"}, {"author": "Jonathan Hoyland", "text": "<p><span aria-label=\"poop\" class=\"emoji emoji-1f4a9\" role=\"img\" title=\"poop\">:poop:</span></p>", "time": "2024-03-19T01:15:46Z"}, {"author": "Martin Thomson", "text": "<p>The X is pronounced \"SH\"</p>", "time": "2024-03-19T01:16:06Z"}, {"author": "John Gray", "text": "<p>+1 Eric  :)</p>", "time": "2024-03-19T01:16:22Z"}, {"author": "Jonathan Hoyland", "text": "<p>lol, those timescales hurt me</p>", "time": "2024-03-19T01:17:02Z"}, {"author": "Ira McDonald", "text": "<p>German BSI has published an updated version of Technical Guideline TR-02102-1 \"Cryptographic Algorithms and Key Lengths\" (14 March 2024)  <a href=\"https://www.bsi.bund.de/EN/Themen/Unternehmen-und-Organisationen/Standards-und-Zertifizierung/Technische-Richtlinien/TR-nach-Thema-sortiert/tr02102/tr02102_node.html\">https://www.bsi.bund.de/EN/Themen/Unternehmen-und-Organisationen/Standards-und-Zertifizierung/Technische-Richtlinien/TR-nach-Thema-sortiert/tr02102/tr02102_node.html</a> - which still calls for only Hybrid Classical/PQ algorithms</p>", "time": "2024-03-19T01:18:04Z"}, {"author": "Eric Rescorla", "text": "<p>LAMPS is doing pure PQ</p>", "time": "2024-03-19T01:18:49Z"}, {"author": "Stephen Farrell", "text": "<p>there's a lamps proposal for everything isn't there?</p>", "time": "2024-03-19T01:19:03Z"}, {"author": "Martin Thomson", "text": "<p>pure PQ for signatures is probably fine</p>", "time": "2024-03-19T01:19:06Z"}, {"author": "Dennis Jackson", "text": "<blockquote>\n<p>Even though hybrid solutions may be allowed or required due to protocol standards, product availability, or interoperability requirements, CNSA 2.0 algorithms will become mandatory to select at the given date, and selecting CNSA 1.0 algorithms alone will no longer be approved</p>\n</blockquote>", "time": "2024-03-19T01:19:15Z"}, {"author": "Eric Rescorla", "text": "<p>Pure hashes.</p>", "time": "2024-03-19T01:19:16Z"}, {"author": "Eric Rescorla", "text": "<p>Intergalactic kerberos</p>", "time": "2024-03-19T01:19:29Z"}, {"author": "Dennis Jackson", "text": "<p>This was also in the CNSA Announcement, hybrid forever?</p>", "time": "2024-03-19T01:19:40Z"}, {"author": "Eric Rescorla", "text": "<p>I actually don't understand what that says</p>", "time": "2024-03-19T01:20:04Z"}, {"author": "Dennis Jackson", "text": "<p>Me neither, but I'm claiming it can be read however you like</p>", "time": "2024-03-19T01:20:20Z"}, {"author": "Stephen Farrell", "text": "<p>let the market decide and end up with hundreds of suites, that worked well for tls1.2</p>", "time": "2024-03-19T01:20:29Z"}, {"author": "Martin Thomson", "text": "<p>It's a pretty good chimera</p>", "time": "2024-03-19T01:20:36Z"}, {"author": "David Benjamin", "text": "<p>I read that to mean that they don't particular care between hybrid vs non-hybrid. They just want to make sure their thing is among the inputs to the protocol.</p>", "time": "2024-03-19T01:21:34Z"}, {"author": "Martin Thomson", "text": "<p>Less reasonable people will reach less reasonable conclusions, David</p>", "time": "2024-03-19T01:22:51Z"}, {"author": "Dennis Jackson", "text": "<p>Its worth noting that CNSA also requires their solutions to have two independent layers.</p>", "time": "2024-03-19T01:23:54Z"}, {"author": "Thom Wiggers", "text": "<p>would these non-hybrid code points not just get registered anyway?</p>", "time": "2024-03-19T01:24:06Z"}, {"author": "Thom Wiggers", "text": "<p>I mean brainpool is also registered</p>", "time": "2024-03-19T01:24:18Z"}, {"author": "Deirdre Connolly", "text": "<p><a href=\"/user_uploads/2/1f/MldIQmGP26Pl7r1H9D3fNfpf/image.png\">image.png</a><br>\nfrom <a href=\"https://media.defense.gov/2022/Sep/07/2003071836/-1/-1/0/CSI_CNSA_2.0_FAQ_.PDF\">https://media.defense.gov/2022/Sep/07/2003071836/-1/-1/0/CSI_CNSA_2.0_FAQ_.PDF</a></p>\n<div class=\"message_inline_image\"><a href=\"/user_uploads/2/1f/MldIQmGP26Pl7r1H9D3fNfpf/image.png\" title=\"image.png\"><img src=\"/user_uploads/2/1f/MldIQmGP26Pl7r1H9D3fNfpf/image.png\"></a></div>", "time": "2024-03-19T01:24:40Z"}, {"author": "Stephen Farrell", "text": "<p>so we should define rot13 codepoints as well?</p>", "time": "2024-03-19T01:25:57Z"}, {"author": "Eric Rescorla", "text": "<p>rot-39</p>", "time": "2024-03-19T01:26:06Z"}, {"author": "Jonathan Hoyland", "text": "<p>Isn't this what \"experimental\" status is designed to be?</p>", "time": "2024-03-19T01:26:24Z"}, {"author": "Rich Salz", "text": "<p>Would \"just get a codepoint\" work, since it requires more than just a codepoint based on the slide that injects new things?</p>", "time": "2024-03-19T01:26:27Z"}, {"author": "Yoav Nir", "text": "<p>3-rot13</p>", "time": "2024-03-19T01:26:35Z"}, {"author": "Christopher Patton", "text": "<p>\"The clock doesn't start when the RFC is published: the clock starts when people start caring.\" David Schinazi, Enthusiast</p>", "time": "2024-03-19T01:27:27Z"}, {"author": "Christopher Patton", "text": "<p>Wisdom.</p>", "time": "2024-03-19T01:27:41Z"}, {"author": "Dan Harkins", "text": "<p>I profoundly disagree with Stephen and Martin. This is clean and good. It's noore risk than using a curve that someone in the future might find weak.</p>", "time": "2024-03-19T01:27:44Z"}]