[{"author": "Eric Orth", "text": "<p>Oh! Hi, OHAI.</p>", "time": "2023-07-28T19:02:14Z"}, {"author": "Nick Doty", "text": "<p>nice 4sq blast from the past</p>", "time": "2023-07-28T19:02:37Z"}, {"author": "Martin Thomson", "text": "<p>Maybe we should stop calling them \"blue sheets\"</p>", "time": "2023-07-28T19:05:10Z"}, {"author": "Martin Thomson", "text": "<p>\"attendance\"</p>", "time": "2023-07-28T19:05:15Z"}, {"author": "Eric Orth", "text": "<p>They're still blue, are they not?</p>", "time": "2023-07-28T19:05:26Z"}, {"author": "Martin Thomson", "text": "<p>They printed the QR codes on blue paper, but you don't need to use those</p>", "time": "2023-07-28T19:05:44Z"}, {"author": "Alejandro Sede\u00f1o", "text": "<p>And yet they float around the room awkwardly.</p>", "time": "2023-07-28T19:07:16Z"}, {"author": "Richard Barnes", "text": "<p>fair point Eric</p>", "time": "2023-07-28T19:07:47Z"}, {"author": "Alex Chernyakhovsky", "text": "<p>Clearly we need DEFCON style eink badges that show QR codes</p>", "time": "2023-07-28T19:07:59Z"}, {"author": "Richard Barnes", "text": "<p>there were bluetooth badges at one IETF meeting.  in japan iirc</p>", "time": "2023-07-28T19:08:18Z"}, {"author": "Richard Barnes", "text": "<p>privacy concerns</p>", "time": "2023-07-28T19:08:34Z"}, {"author": "Jim Reid", "text": "<p>When the IETF adopts retinal scans and DNA sequencing for WG sessions, we'll still be calling that bluesheets.<span aria-label=\"grinning\" class=\"emoji emoji-1f600\" role=\"img\" title=\"grinning\">:grinning:</span></p>", "time": "2023-07-28T19:08:51Z"}, {"author": "Nick Doty", "text": "<p>blue NFC tokens?</p>", "time": "2023-07-28T19:09:13Z"}, {"author": "Richard Barnes", "text": "<p>BEEP over OHTTP</p>", "time": "2023-07-28T19:09:41Z"}, {"author": "David Oliver", "text": "<p>I was under the impression OHTTP was avoiding the browsing (interactive) scenario (\"that's what MASQUE is for\").  Did I miss something?</p>", "time": "2023-07-28T19:10:05Z"}, {"author": "Kyle Hogan", "text": "<p>is this going to be interactive?</p>", "time": "2023-07-28T19:10:24Z"}, {"author": "Shivan Sahib", "text": "<p><span class=\"user-mention\" data-user-id=\"977\">@David Oliver</span> this is still one request/response each way, just large messages</p>", "time": "2023-07-28T19:10:26Z"}, {"author": "Martin Thomson", "text": "<p><span class=\"user-mention\" data-user-id=\"977\">@David Oliver</span> this won't be interactive</p>", "time": "2023-07-28T19:10:35Z"}, {"author": "Richard Barnes", "text": "<p>David: I believe this is still at a single request/response pair level</p>", "time": "2023-07-28T19:10:43Z"}, {"author": "Martin Thomson", "text": "<p>However, streaming does create some very interesting stuff.</p>", "time": "2023-07-28T19:11:00Z"}, {"author": "Martin Thomson", "text": "<p>Traffic analysis, integration into existing systems.</p>", "time": "2023-07-28T19:11:31Z"}, {"author": "Kyle Hogan", "text": "<p><span class=\"user-mention silent\" data-user-id=\"26\">Martin Thomson</span> <a href=\"#narrow/stream/247-ohai/topic/ietf-117/near/87348\">said</a>:</p>\n<blockquote>\n<p>However, streaming does create some very interesting stuff.</p>\n</blockquote>\n<p>like tagging the stream? what kind of interesting stuff is the concern here?</p>", "time": "2023-07-28T19:11:33Z"}, {"author": "Nick Doty", "text": "<p>it would seem like requests would be less likely to be separable, non-identifiable and oblivious if they are large, chunked or interactive</p>", "time": "2023-07-28T19:11:40Z"}, {"author": "Martin Thomson", "text": "<p><span class=\"user-mention\" data-user-id=\"3173\">@Kyle Hogan</span> what do you mean by tagging the stream?</p>", "time": "2023-07-28T19:12:01Z"}, {"author": "Shivan Sahib", "text": "<p>I think we all had that moment of panic :D</p>", "time": "2023-07-28T19:13:19Z"}, {"author": "Kyle Hogan", "text": "<p><span class=\"user-mention silent\" data-user-id=\"26\">Martin Thomson</span> <a href=\"#narrow/stream/247-ohai/topic/ietf-117/near/87354\">said</a>:</p>\n<blockquote>\n<p><span class=\"user-mention silent\" data-user-id=\"3173\">Kyle Hogan</span> what do you mean by tagging the stream?</p>\n</blockquote>\n<p>one of the Tor attacks is to \"tag\" the stream where an on-path adversary can delay messages in a stream to create a traffic pattern where there was none. This pattern can persist across relays/proxies if not careful</p>", "time": "2023-07-28T19:13:29Z"}, {"author": "Richard Barnes", "text": "<p>\"Chunked OHTTP\"</p>", "time": "2023-07-28T19:14:04Z"}, {"author": "Martin Thomson", "text": "<p>Oh, that's a property we're good on.</p>", "time": "2023-07-28T19:14:06Z"}, {"author": "Shivan Sahib", "text": "<p>Chonky OHTTP</p>", "time": "2023-07-28T19:14:07Z"}, {"author": "Eric Orth", "text": "<p>+1 to this statement.</p>", "time": "2023-07-28T19:14:10Z"}, {"author": "Martin Thomson", "text": "<p>\"incremental processing\" or IOHTTP</p>", "time": "2023-07-28T19:14:16Z"}, {"author": "Alex Chernyakhovsky", "text": "<p>And now we're working with haskell</p>", "time": "2023-07-28T19:14:32Z"}, {"author": "Jonathan Hoyland", "text": "<p><span class=\"user-mention silent\" data-user-id=\"26\">Martin Thomson</span> <a href=\"#narrow/stream/247-ohai/topic/ietf-117/near/87363\">said</a>:</p>\n<blockquote>\n<p>Oh, that's a property we're good on.</p>\n</blockquote>\n<p>So that seems non-obvious to me.</p>", "time": "2023-07-28T19:15:38Z"}, {"author": "Ted Hardie", "text": "<p>Long, Oblivious Chunked HTTP (LOCH)</p>", "time": "2023-07-28T19:15:40Z"}, {"author": "Kyle Hogan", "text": "<p>is there a concern about total size of the stream here? I'm assuming that the individual messages were fixed size. Is the stream fixed size?</p>", "time": "2023-07-28T19:15:40Z"}, {"author": "Eric Orth", "text": "<p>Yes! I guessed correctly.</p>", "time": "2023-07-28T19:15:59Z"}, {"author": "Jonathan Hoyland", "text": "<p>David has favourite --children-- i-ds.</p>", "time": "2023-07-28T19:17:23Z"}, {"author": "Eric Orth", "text": "<p>Per-message, for a slightly broadening definition of \"message\".</p>", "time": "2023-07-28T19:17:41Z"}, {"author": "Nick Doty", "text": "<p>per message ... except that the message could have multiple chunks</p>", "time": "2023-07-28T19:17:44Z"}, {"author": "Martin Thomson", "text": "<p><span class=\"user-mention\" data-user-id=\"453\">@Jonathan Hoyland</span> my understanding is that tagging only works if you can modify something on one leg that is observable on another leg.  We encapsulate on one leg.</p>", "time": "2023-07-28T19:18:06Z"}, {"author": "Richard Barnes", "text": "<p>@Nick - yes that</p>", "time": "2023-07-28T19:18:11Z"}, {"author": "Kyle Hogan", "text": "<p><span class=\"user-mention silent\" data-user-id=\"26\">Martin Thomson</span> <a href=\"#narrow/stream/247-ohai/topic/ietf-117/near/87383\">said</a>:</p>\n<blockquote>\n<p><span class=\"user-mention silent\" data-user-id=\"453\">Jonathan Hoyland</span> my understanding is that tagging only works if you can modify something on one leg that is observable on another leg.  We encapsulate on one leg.</p>\n</blockquote>\n<p>okay now I have concerns again. what do you mean by encapsulate?</p>", "time": "2023-07-28T19:18:45Z"}, {"author": "Richard Barnes", "text": "<p>i remain disgruntled that we are doing HPKE in one direction and raw AEAD in the other</p>", "time": "2023-07-28T19:18:55Z"}, {"author": "Martin Thomson", "text": "<p>The encapsulated request is the payload to an HTTPS request.</p>", "time": "2023-07-28T19:19:15Z"}, {"author": "Eric Orth", "text": "<p>\"Could do this with MASQUE except with more TLS handshakes\" is true of any OHTTP.</p>", "time": "2023-07-28T19:19:22Z"}, {"author": "Martin Thomson", "text": "<p>That is, there are two layers of encapsulation.</p>", "time": "2023-07-28T19:19:29Z"}, {"author": "Jonathan Hoyland", "text": "<p><span class=\"user-mention silent\" data-user-id=\"26\">Martin Thomson</span> <a href=\"#narrow/stream/247-ohai/topic/ietf-117/near/87383\">said</a>:</p>\n<blockquote>\n<p><span class=\"user-mention silent\" data-user-id=\"453\">Jonathan Hoyland</span> my understanding is that tagging only works if you can modify something on one leg that is observable on another leg.  We encapsulate on one leg.</p>\n</blockquote>\n<p>So say the server sends 10 packets, I delay the first by one second the second by two seconds, etc. That pattern would continue in the encapsulated stream</p>", "time": "2023-07-28T19:19:50Z"}, {"author": "Kyle Hogan", "text": "<p><span class=\"user-mention silent\" data-user-id=\"26\">Martin Thomson</span> <a href=\"#narrow/stream/247-ohai/topic/ietf-117/near/87389\">said</a>:</p>\n<blockquote>\n<p>That is, there are two layers of encapsulation.</p>\n</blockquote>\n<p>the tagging is at the packet level here. I said \"message, but that wasn't the right term.</p>", "time": "2023-07-28T19:20:03Z"}, {"author": "Martin Thomson", "text": "<p>Ah, I see.  Timing as tagging.</p>", "time": "2023-07-28T19:20:11Z"}, {"author": "Kyle Hogan", "text": "<p>what <span class=\"user-mention\" data-user-id=\"453\">@Jonathan Hoyland</span> said</p>", "time": "2023-07-28T19:20:13Z"}, {"author": "Luca Niccolini", "text": "<p>my 2c. streaming (errr Chunking) will help in building proxies or OHAI support in existing proxies :) you don't really want a proxy that has to buffer a whole message in either direction. This has prevented us from building OHAI support into the edge proxy and instead delegate to a separate service. Also you don't have to enforce arbitrary limits on the size of the request/response to protect from running out of memory</p>", "time": "2023-07-28T19:21:29Z"}, {"author": "Martin Thomson", "text": "<p>we should also protect against chunks being inserted ...</p>", "time": "2023-07-28T19:21:40Z"}, {"author": "Shivan Sahib", "text": "<p><span class=\"user-mention\" data-user-id=\"621\">@Luca Niccolini</span> we'll ask for folks interested in implementing this at the end, that's valuable feedback</p>", "time": "2023-07-28T19:23:22Z"}, {"author": "Eric Orth", "text": "<p>Re insertion: Yes, should be a requirement, but we essentially get that for free from HPKE, right? Should be impossible for anybody without the keys to insert a valid message.</p>", "time": "2023-07-28T19:24:00Z"}, {"author": "Martin Thomson", "text": "<p><span class=\"user-mention\" data-user-id=\"621\">@Luca Niccolini</span> are you talking about a relay or a gateway?</p>", "time": "2023-07-28T19:24:07Z"}, {"author": "Martin Thomson", "text": "<p>(I'm assuming gateway)</p>", "time": "2023-07-28T19:24:21Z"}, {"author": "Kyle Hogan", "text": "<p><span class=\"user-mention silent\" data-user-id=\"525\">Eric Orth</span> <a href=\"#narrow/stream/247-ohai/topic/ietf-117/near/87405\">said</a>:</p>\n<blockquote>\n<p>Re insertion: Yes, should be a requirement, but we essentially get that for free from HPKE, right? Should be impossible for anybody without the keys to insert a valid message.</p>\n</blockquote>\n<p>it really depends on which parties can tell whether a message is \"valid\"</p>", "time": "2023-07-28T19:24:30Z"}, {"author": "Martin Thomson", "text": "<p>I have to duck out, but I'm very much in support of this being done here.</p>", "time": "2023-07-28T19:25:00Z"}, {"author": "Kyle Hogan", "text": "<p>I'm much more familiar with Tor, but \"invalid\" messages can make it pretty far through the network in many cases</p>", "time": "2023-07-28T19:25:11Z"}, {"author": "Luca Niccolini", "text": "<p><span class=\"user-mention silent\" data-user-id=\"26\">Martin Thomson</span> <a href=\"#narrow/stream/247-ohai/topic/ietf-117/near/87406\">said</a>:</p>\n<blockquote>\n<p><span class=\"user-mention silent\" data-user-id=\"621\">Luca Niccolini</span> are you talking about a relay or a gateway?</p>\n</blockquote>\n<p>yes a gateway</p>", "time": "2023-07-28T19:25:31Z"}, {"author": "Ted Hardie", "text": "<p>I was intending to reference the case where the client sent query 1 via OHAI service  1 and query 2 via OHAI service two</p>", "time": "2023-07-28T19:25:45Z"}, {"author": "Nick Doty", "text": "<p>what's going to stop this from being used for 2 request-response pairs?</p>", "time": "2023-07-28T19:26:07Z"}, {"author": "Kyle Hogan", "text": "<p><span class=\"user-mention silent\" data-user-id=\"550\">Nick Doty</span> <a href=\"#narrow/stream/247-ohai/topic/ietf-117/near/87415\">said</a>:</p>\n<blockquote>\n<p>what's going to stop this from being used for 2 request-response pairs?</p>\n</blockquote>\n<p>it would break the security analysis?</p>", "time": "2023-07-28T19:26:42Z"}, {"author": "Ted Hardie", "text": "<p>Here, one long message would chunk them it but send all chunks along the same path, because they are all the same message at the end of the day.</p>", "time": "2023-07-28T19:27:48Z"}, {"author": "Nick Doty", "text": "<p>if you need to download a giant file, then how much are you saving by the optimization of not setting up a MASQUE session</p>", "time": "2023-07-28T19:27:48Z"}, {"author": "David Benjamin", "text": "<p>Re the chunk boundary issue, is that not the same as TLS records and everything else? I think it's a general requirement that a streaming readers of byte streams must not be sensitive to read boundaries. No objections to saying as much in this draft, but ISTM this is pretty fundamental to streaming.</p>", "time": "2023-07-28T19:27:48Z"}, {"author": "David Schinazi", "text": "<p>EKR doesn't want us to have job security</p>", "time": "2023-07-28T19:28:17Z"}, {"author": "Nick Doty", "text": "<p>performance improvements for a huge file that will take a long long time to download doesn't seem as helpful?</p>", "time": "2023-07-28T19:29:01Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>For Ekr everything looks like TLS <span aria-label=\"wink\" class=\"emoji emoji-1f609\" role=\"img\" title=\"wink\">:wink:</span></p>", "time": "2023-07-28T19:30:18Z"}, {"author": "David Benjamin", "text": "<p>It's reinventing TLS, but saving a round trip, in exchange for sacrificing forward secrecy and replay protection. And replacing the auth story with \"I knew the server's key ahead of time\".</p>", "time": "2023-07-28T19:30:22Z"}, {"author": "Alex Chernyakhovsky", "text": "<p>I do feel like this proposal, while interesting, is definitely edging into marginal-returns territory where this sort of question is very justified.</p>", "time": "2023-07-28T19:30:40Z"}, {"author": "Jim Reid", "text": "<p>The autotranscriber is coping very well with ekr-speed speech.</p>", "time": "2023-07-28T19:31:16Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>It\u2019s a human</p>", "time": "2023-07-28T19:31:28Z"}, {"author": "Mirja K\u00fchlewind", "text": "<p>in this room</p>", "time": "2023-07-28T19:31:34Z"}, {"author": "Andrew Campling", "text": "<p>Much respect to the human in question!</p>", "time": "2023-07-28T19:32:43Z"}, {"author": "Jim Reid", "text": "<p>Even more impressive...</p>", "time": "2023-07-28T19:32:45Z"}, {"author": "Nick Doty", "text": "<p>(feeling very validated when my question gets asked in the mic q)</p>", "time": "2023-07-28T19:36:17Z"}, {"author": "Andrew Campling", "text": "<p>It\u2019s hard to support something without clarity on the use cases to justify the trade offs</p>", "time": "2023-07-28T19:36:39Z"}, {"author": "David Schinazi", "text": "<p>You can make backpressure work properly but it's easy to mess up</p>", "time": "2023-07-28T19:37:24Z"}, {"author": "David Benjamin", "text": "<p>I'm not quite following why the backpressure story would be any different if you had tunneled TLS over the proxy instead. They're both ultimately just piping encrypted records. The differences are more in the \"handshake\" half.</p>", "time": "2023-07-28T19:41:59Z"}, {"author": "Alex Chernyakhovsky", "text": "<p>Did I miss discussion of a specific use case where the response may be particularly large?</p>", "time": "2023-07-28T19:43:28Z"}, {"author": "Alex Chernyakhovsky", "text": "<p>I understood Tommy's discussion there of why that may be desirable, but I don't recall hearing an example such use</p>", "time": "2023-07-28T19:43:47Z"}, {"author": "Nick Doty", "text": "<p>maybe Safe Browsing or something, where you want to download an updated segment of a database, but maybe you don't want to reveal to the endpoint which segment of the database you are interested in</p>", "time": "2023-07-28T19:45:15Z"}, {"author": "Andrew Campling", "text": "<p>@Alex I believe the very limited info on use cases is the text on slide 3</p>", "time": "2023-07-28T19:45:43Z"}, {"author": "Alex Chernyakhovsky", "text": "<p>Yeah, I saw that, I find that a bit too generic to find this sufficiently motivating :(</p>", "time": "2023-07-28T19:49:21Z"}, {"author": "Mark Nottingham", "text": "<p>EVERYTHING OVER HTTP</p>", "time": "2023-07-28T19:50:34Z"}, {"author": "Eric Orth", "text": "<p>If you create a new key for every DNS request, those are user-specific keys and thus can be used to correlate together all the messages from the same DNS-querying user.</p>", "time": "2023-07-28T19:51:18Z"}, {"author": "Mark Nottingham", "text": "<p>For replay, see Idempotency-key header in HTTPAPI</p>", "time": "2023-07-28T19:51:34Z"}, {"author": "Mark Nottingham", "text": "<p>:)</p>", "time": "2023-07-28T19:51:40Z"}, {"author": "Ted Hardie", "text": "<p>After the formal end of the wg, can we play \"guess the use case\"?</p>", "time": "2023-07-28T19:53:14Z"}, {"author": "David Benjamin", "text": "<p><span class=\"user-mention silent\" data-user-id=\"231\">Mark Nottingham</span> <a href=\"#narrow/stream/247-ohai/topic/ietf-117/near/87510\">said</a>:</p>\n<blockquote>\n<p>For replay, see Idempotency-key header in HTTPAPI</p>\n</blockquote>\n<p>Yup, that's the \"solve replay with recipient state\" solution space. TLS 1.3 has some discussion of that too. :-) You don't need idempotency-key, just any bit of unique randomness in there.</p>", "time": "2023-07-28T19:53:24Z"}, {"author": "Mark Nottingham", "text": "<p>Why do we need TLS when we have HTTP? /me ducks</p>", "time": "2023-07-28T19:53:52Z"}]