Subject: Shared Dictionaries (SDCH and friends)

From: [email-masked]
Date: Fri, 20 Jan 2017 04:48:57 +0100

Hi,

re-(re-)starting discussion…

Yandex sees real value from shared dictionary compression, and others have also reported this is the case.

Although there are a couple of proposals, we're not very happy with either, so we're planning to make a third one, based partially on our implementation experience and partially on work we are prototyping now.

We've heard there are security concerns. One concern seems to be that bundling "secrets" with known content such as a style sheet helps attackers decrypt the secrets. Although valuable secret content in a shared dictionary seems like a bad idea anyway, our proposal includes the ability to use multiple dictionaries, and has separating metadata from the "blob payload" as a goal. It seems to me (although I'm not the sharpest knife in the security drawer) this should provide a simple approach to mitigating this issue. Additionally, since this is a new powerful feature, there is no reason not to restrict it to secure connections. 

I'm not at all sure that I understand all the security concerns that people have raised, let alone have a solution ready, so I'd be grateful for any pointers (or kicks) in the right direction. 

We also expect to provide more solid information on what sort of improvements we see in what sort of situations based on actual deployment. We'd be grateful if others with relevant experience could do likewise, to help justify asking people to spend the time to review.

cheers

Chaals

-- 
Charles McCathie Nevile - standards - Yandex
[email-masked] - - - Find more at http://yandex.com

---

From: Martin Thomson <[email-masked]>
Date: Fri, 20 Jan 2017 17:08:49 +1300

Hey Chaals,

In case you missed the suggestion at the last meeting from Vlad, he
suggested that this only be offered for use with fetches with a
credentials-mode (See
https://fetch.spec.whatwg.org/#concept-request-credentials-mode) of
"omit".  That is, don't make it possible for the server to use ambient
authority (including cookies) to customize the request.  I don't think
that completely removes the concern, but it helps.

I don't think that having tools for separating "possibly under
attacker influence" and "secret" is going to solve the issue.  That's
already possible with existing compression techniques; the concern is
over the usability of those tools and the ability to correctly
identify data as belonging to each category.

On 20 January 2017 at 16:48,  <[email-masked]> wrote:
> Additionally, since this is a new powerful feature, there is no reason not to restrict it to secure connections.

FWIW, the security concerns ONLY apply to secure connections, so you
needn't worry about this bit.  If you are going to spray your secrets
all over the internet, traffic analysis isn't really your most
pressing concern.