Re: FYI: Oblivious HTTP

Toerless Eckert <tte@cs.fau.de> Thu, 28 January 2021 18:01 UTC

Return-Path: <ietf-http-wg-request+bounce-httpbisa-archive-bis2juki=lists.ie@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 52FE53A0C2A for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 28 Jan 2021 10:01:43 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.671
X-Spam-Level:
X-Spam-Status: No, score=-2.671 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, MAILING_LIST_MULTI=-1, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gIsigZGoHcOA for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 28 Jan 2021 10:01:40 -0800 (PST)
Received: from lyra.w3.org (lyra.w3.org [128.30.52.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8F3343A0C32 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Thu, 28 Jan 2021 10:01:40 -0800 (PST)
Received: from lists by lyra.w3.org with local (Exim 4.92) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1l5BZN-0007v6-7m for ietf-http-wg-dist@listhub.w3.org; Thu, 28 Jan 2021 17:59:01 +0000
Resent-Date: Thu, 28 Jan 2021 17:59:01 +0000
Resent-Message-Id: <E1l5BZN-0007v6-7m@lyra.w3.org>
Received: from www-data by lyra.w3.org with local (Exim 4.92) (envelope-from <eckert@i4.informatik.uni-erlangen.de>) id 1l5BZL-0007uH-Os for ietf-http-wg@listhub.w3.org; Thu, 28 Jan 2021 17:58:59 +0000
Received: from mimas.w3.org ([128.30.52.79]) by lyra.w3.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <eckert@i4.informatik.uni-erlangen.de>) id 1l5BVg-0007iY-Q6 for ietf-http-wg@listhub.w3.org; Thu, 28 Jan 2021 17:55:12 +0000
Received: from faui40.informatik.uni-erlangen.de ([131.188.34.40]) by mimas.w3.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from <eckert@i4.informatik.uni-erlangen.de>) id 1l5BVe-0001g1-DI for ietf-http-wg@w3.org; Thu, 28 Jan 2021 17:55:12 +0000
Received: from faui48f.informatik.uni-erlangen.de (faui48f.informatik.uni-erlangen.de [131.188.34.52]) by faui40.informatik.uni-erlangen.de (Postfix) with ESMTP id 9AFDB548027; Thu, 28 Jan 2021 18:54:53 +0100 (CET)
Received: by faui48f.informatik.uni-erlangen.de (Postfix, from userid 10463) id 9483E440163; Thu, 28 Jan 2021 18:54:53 +0100 (CET)
Date: Thu, 28 Jan 2021 18:54:53 +0100
From: Toerless Eckert <tte@cs.fau.de>
To: Martin Thomson <mt@lowentropy.net>
Cc: ietf-http-wg@w3.org
Message-ID: <20210128175453.GF35983@faui48f.informatik.uni-erlangen.de>
References: <ef91fafb-1586-4076-baa9-033326162eb1@www.fastmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <ef91fafb-1586-4076-baa9-033326162eb1@www.fastmail.com>
User-Agent: Mutt/1.10.1 (2018-07-13)
Received-SPF: pass client-ip=131.188.34.40; envelope-from=eckert@i4.informatik.uni-erlangen.de; helo=faui40.informatik.uni-erlangen.de
X-W3C-Hub-Spam-Status: No, score=-6.0
X-W3C-Hub-Spam-Report: BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.25, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, W3C_AA=-1, W3C_WL=-1
X-W3C-Scan-Sig: mimas.w3.org 1l5BVe-0001g1-DI 516e6df2c4ce529b8a7cd603ac430aae
X-caa-id: 566fec551f
X-Original-To: ietf-http-wg@w3.org
Subject: Re: FYI: Oblivious HTTP
Archived-At: <https://www.w3.org/mid/20210128175453.GF35983@faui48f.informatik.uni-erlangen.de>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/38411
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <https://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

Hi Martin

Thanks for the work. Very interesting.

Some questions/concerns/suggestions:

a) "oblivious" (non-technical comment)

a.1) I can not find text in the document that motivates the choice of the
name 'oblivious' for this mechanism.

Who/what is exactly oblivious of what in this solution ? I guess that
the network to the right of the proxy resource (in figure 1), including
the target resource is "forced to be 'oblivious' of the client network layer identity" ?

Aka: add explicit text explaining the exact semantic of 'oblivious' in the
context of this doc.

a.2)  I fear the word oblivious does not even well characterize the
core value proposition of this mechanism:

Any existing (thor,...) solution would be quite similarily providing
"obliviousness" in this sense, so 'oblivious' is not rally the unique
new value proposition. And every existing network/http-server that
does not examine the client network-layer identity is already oblivious
of it as well. 

Secure and initiator-identity opaque (HTTP) transaction routing  ? 

Yeah, "oblivious" sounds a lot cooler, just not logical...

b) Performance (non-technical comment)

The real value proposition seems to be performance of what i would describe
as HTTP transaction routing in this solution vs. single-transaction
connection setup through proxies. Correct ?

It would be great to have a persuasive example quantified comparison in the
text in terms of likely difference in performance. For example number of
messages/roundtrips crypto oprations, amount of state in proxy, etc. pp.
(this mechanism vs. a TLS setup).

Also of course and i think quite importantly: How big would the difference
still be if HTTPs (with TLS) was replaced by QUIC - which i think values itself
for minimizing rtts/messages.

c) Figure 1 (minor):

Is it possible to have two or more proxy resources ? I assume
it is, but it would be very good to make this explicit in the picture
by visualizing e.g.: 2 of them and saying "one or more" in the text.

d) Generationalization (technical comment)

It seems to me as if the mechanism at its core is really a new brand
of transaction routing based on URL for rquest and HPKE context for reply
if i understand right. I wonder why this is being defined only for HTTP.

Would it not be more easily reuseable across a lot of different transaction
protocols if it came with its own message type header and a demux for the
transaction protocol ? Might be possible then to support HTTP, CoAP, MQTT
and what else theree might be flying around (especially in the IoT world)
with a single mechanism, and avoiding a lot of duplicate specs. Or even if 
starting with HTTP maybe at least look for easy extension points and avoiding 
any unnecessary HTTP overhead/complexities if the messages routed are not
HTTP but from an extension point...

In fact (IMHO), the value of this mechanism is likely going to be higher for
higher layer transaction systems built from the ground up and not
encumbered in all the entrenched tracking mechanisms we have in HTML/"Web-Apps"
these days, so offering extension points to leverage the infrastructure
for new, less intrusive higher layers might be quite beneficial to the success
of this mechanism.

Cheers
    Toerless

On Thu, Jan 28, 2021 at 12:27:38PM +1100, Martin Thomson wrote:
> Just an announcement for a new draft that proposes a use of HTTP that this group might be interested in.  I've started a discussion on the SECDISPATCH list about it [1].  Please, if you are interested in this topic, join that conversation.
> 
> The draft:
> 
> https://www.ietf.org/archive/id/draft-thomson-http-oblivious-00.html
> 
> What this group might be more interested in is whether the ecosystem is well-served by a binary message format.  That work currently has a dependency on another proposal:
> 
> https://www.ietf.org/archive/id/draft-thomson-http-binary-message-00.html
> 
> It doesn't strictly need to take this dependency, as message/http is in some ways adequate.  However, I think that it might be beneficial to have a discussion about this idea here.
> 
> Cheers,
> Martin
> 
> [1] https://mailarchive.ietf.org/arch/msg/secdispatch/VmFQCZGKlukgfnmgPh8ufQt_5Fo/

-- 
---
tte@cs.fau.de