Re: Submitted new I-D: Cache Digests for HTTP/2

Kazuho Oku <kazuhooku@gmail.com> Wed, 13 January 2016 02:35 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 (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 734241B2C17 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 12 Jan 2016 18:35:25 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.003
X-Spam-Level:
X-Spam-Status: No, score=-7.003 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham
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 bi8dMEezTR3t for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 12 Jan 2016 18:35:19 -0800 (PST)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 7C7491ACD0E for <httpbisa-archive-bis2Juki@lists.ietf.org>; Tue, 12 Jan 2016 18:35:19 -0800 (PST)
Received: from lists by frink.w3.org with local (Exim 4.80) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1aJBDa-0000HN-LH for ietf-http-wg-dist@listhub.w3.org; Wed, 13 Jan 2016 02:31:26 +0000
Resent-Date: Wed, 13 Jan 2016 02:31:26 +0000
Resent-Message-Id: <E1aJBDa-0000HN-LH@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <kazuhooku@gmail.com>) id 1aJBDW-0000Gg-Cc for ietf-http-wg@listhub.w3.org; Wed, 13 Jan 2016 02:31:22 +0000
Received: from mail-wm0-f42.google.com ([74.125.82.42]) by lisa.w3.org with esmtps (TLS1.2:RSA_ARCFOUR_SHA1:128) (Exim 4.80) (envelope-from <kazuhooku@gmail.com>) id 1aJBDU-0006L2-Ss for ietf-http-wg@w3.org; Wed, 13 Jan 2016 02:31:21 +0000
Received: by mail-wm0-f42.google.com with SMTP id f206so276159615wmf.0 for <ietf-http-wg@w3.org>; Tue, 12 Jan 2016 18:31:00 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=7fETqsIzriovO6hDK9q8cMtt403zaVW1zKzzcrG+KBY=; b=KfKeIJ7r4A+IjoXBdDUNy/A2vM5HMm7AcktYsbwuec1sVGbKdqyDLzRnvneb+Rg3sv rj4sKXgmC9cWNiMXxsVucZyaN6WZhTaFcaDawFgHHluWnkhcp0uMcb+zjmVbBL6wSEFd 5wMgfQzmOGxK4H8/bLDcGTMe1nldi7nhu6GNSJfpzPp/ToZ5p3s/WyULTRbK9niMtKAk 5ux+5LjQnbCt9yUgchGSw9P6wbbnEtPH0p+OvLKmuW1AecEbEmc7eMeL/bAZmDiMorlS CKAWMAXWZ1eiNGkpXwcPXbcqxD6Kg38rU7GPjafsepjThAHUoy6eUicLMTMTRRTT1QzN HSQA==
MIME-Version: 1.0
X-Received: by 10.194.91.180 with SMTP id cf20mr80020351wjb.121.1452652254553; Tue, 12 Jan 2016 18:30:54 -0800 (PST)
Received: by 10.194.235.163 with HTTP; Tue, 12 Jan 2016 18:30:54 -0800 (PST)
In-Reply-To: <CABCZv0piAoDnA1J+2pJ3HyF_iRwj9AaFGfonFjdKGfYr=cGZgQ@mail.gmail.com>
References: <CAAMqGzYUoCMxBxUEY9wfLOHZp7nrO4d1q5JZo=96pfEbVS1-ew@mail.gmail.com> <652C3E3A-3DA6-40BB-82FF-01A7D65FF65C@lukasa.co.uk> <CABCZv0piAoDnA1J+2pJ3HyF_iRwj9AaFGfonFjdKGfYr=cGZgQ@mail.gmail.com>
Date: Wed, 13 Jan 2016 11:30:54 +0900
Message-ID: <CANatvzx5_cLsHjPSD5gcdRmTW29LUAXXHAm3E=8C-9Q_g-PAMw@mail.gmail.com>
From: Kazuho Oku <kazuhooku@gmail.com>
To: Chris Bentzel <chris@bentzel.net>
Cc: Cory Benfield <cory@lukasa.co.uk>, Alcides Viamontes E <alcidesv@zunzun.se>, "ietf-http-wg@w3.org" <ietf-http-wg@w3.org>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Received-SPF: pass client-ip=74.125.82.42; envelope-from=kazuhooku@gmail.com; helo=mail-wm0-f42.google.com
X-W3C-Hub-Spam-Status: No, score=-5.5
X-W3C-Hub-Spam-Report: AWL=-0.817, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001, W3C_AA=-1, W3C_WL=-1
X-W3C-Scan-Sig: lisa.w3.org 1aJBDU-0006L2-Ss 6f1682df3347911e69ee94fb656ae8cd
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Submitted new I-D: Cache Digests for HTTP/2
Archived-At: <http://www.w3.org/mid/CANatvzx5_cLsHjPSD5gcdRmTW29LUAXXHAm3E=8C-9Q_g-PAMw@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/30910
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: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

2016-01-11 19:42 GMT+09:00 Chris Bentzel <chris@bentzel.net>:
> The draft does cover some privacy concerns (such as clearing the digest when
> cookies are cleared).
>
> One concern not covered is how to deal with cases where a client may have
> cached content from an origin with a mix of cookies. For example, if a user
> has enabled third-party cookie blocking in a browser and has visited an
> origin in both a first-party and third-party context there may be a mix of
> cached content with a session identifier cookie and no cookie.
>
> If the user re-visits that origin in a first-party context, the digest may
> reveal content retrieved in a third-party context.

Thank you for raising the concern.

My understanding is that it is already possible to track users that
reject third-party cookies using cache-based fingerprint.  The change
in this draft that such tracking becomes passive.

> One option is to treat cached content as if there is an implicit Vary:
> Cookie header and only include in the digest if it matches. The draft
> already requires only including fresh cached entries in the digest so a
> selection process for cached entries already will need to exist.

Interesting.

IMO, web browsers configured to reject third-party cookies should
ideally set implicit `Vary: host` for every entry it caches.  Doing so
not only solves passive fingerprinting (which becomes possible with
this draft), but also will prevent active fingerprinting as well
(which is already possible).

If such change cannot be made within the web browsers, then we should
look for a workaround...

> On Mon, Jan 11, 2016 at 3:16 AM, Cory Benfield <cory@lukasa.co.uk> wrote:
>>
>>
>> > On 10 Jan 2016, at 17:11, Alcides Viamontes E <alcidesv@zunzun.se>
>> > wrote:
>> >
>> > Can we embed the cache digest in a header?
>> > ——————————————————————————————
>> >
>>
>> On a personal level I am extremely nervous about shoving 24kB of data into
>> a header value. The practice of doing this for Kerberos tokens already
>> caused us to require the CONTINUATION frame unpleasantness in RFC 7540.
>> Generally speaking it seems like smuggling long strings in HTTP headers is a
>> bit of an anti-pattern, and given that HTTP/2 gives us much nicer methods of
>> transporting this kind of data it seems a shame not to use them.
>>
>> Cory
>>
>



-- 
Kazuho Oku