Re: [TLS] Certificate compression draft
Victor Vasiliev <vasilvv@google.com> Tue, 07 March 2017 00:15 UTC
Return-Path: <vasilvv@google.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 46BB6129556 for <tls@ietfa.amsl.com>; Mon, 6 Mar 2017 16:15:41 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.701
X-Spam-Level:
X-Spam-Status: No, score=-2.701 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=google.com
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 zFhveog49lfF for <tls@ietfa.amsl.com>; Mon, 6 Mar 2017 16:15:39 -0800 (PST)
Received: from mail-qk0-x235.google.com (mail-qk0-x235.google.com [IPv6:2607:f8b0:400d:c09::235]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 800D412941C for <TLS@ietf.org>; Mon, 6 Mar 2017 16:15:39 -0800 (PST)
Received: by mail-qk0-x235.google.com with SMTP id y76so51575373qkb.0 for <TLS@ietf.org>; Mon, 06 Mar 2017 16:15:39 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=6WEsx1z4hYaUmwBF9UfuHDQphh8/HuJK8XD+KOm6dvE=; b=XxJuXAza/x3cxA1Z1XY0Tm9r2/r+gX8P5cWX4/+RAErxQuRC5cJWAmx3lY3W1y06tJ 4OfvaqOWOzAdV3SytQ3fQnyi3AxN02CGNISWwxGgFGRHWd83rOAxD/CNSDYXG44kKwrW gDN5x328xsKaICYx/m8yV2nmPi/Vr71WVBaKyp3w06AqVmQC+6E450NVdRAvhCsLD9IV PF//yVQs7hM4Vgl9Zd4iby4aQk+DHFiAr9wHnkkY7pLy/xirXzsRdnQqLxGjJ/ZVRDrS 1GCOti72HN6Ch88s22y00yDbqaw3ViFunvzP0EySXtSIPE6EzCyZUH90SSTxBCK/ay52 KyRA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=6WEsx1z4hYaUmwBF9UfuHDQphh8/HuJK8XD+KOm6dvE=; b=q5+T4o8EPCkWaM6Wo7Gqr1OS5wCRD/f+M3ppbaKaUjwebPxVoexEareJfIlsJ7dH/z uNLu0G9rgNHsjT2zKU5Po/ytUhmQCppBBlGwy8bl/MA12UNvLRNcqlXNbP5YGI2+WjbY yk702y1TrPI+hGX88gAkadJStHXPimjViRp5nw5RtpUO0ASdmM0UIf5ZY3uAXVii/Vwj IwNH682wIdNUkfOdSrwuAkZvUDn0oI1EbXA15WH8jgoO+JQ/yloPTs3e8OeGWkZm794a 0AO67o0Alsi9Dg6CjKBzlQ4Zk1SrxaChAHaSHxnYj1Q0ONqTZIMOr+PXZZtMLon/nKVm 7POw==
X-Gm-Message-State: AMke39ngEG88+kVeXZI8rN77AJNEV5ieKbNU5dwQqvVi3AWIJlHN5OS/IPGtncnXgDGk2UunzOj/9Xh0k0xUz+yD
X-Received: by 10.200.50.147 with SMTP id z19mr18430322qta.256.1488845738523; Mon, 06 Mar 2017 16:15:38 -0800 (PST)
MIME-Version: 1.0
Received: by 10.55.47.4 with HTTP; Mon, 6 Mar 2017 16:15:38 -0800 (PST)
In-Reply-To: <DDF306CD-EFC5-4E24-8ADE-64C432CEEAE4@cloudflare.com>
References: <CAAZdMacAcSUL4sqLPA1E9-z_VaUSd1P5PpPryO+XQso0eUtThw@mail.gmail.com> <CABkgnnU54SeYDBL=YBRQn0ZThk=C59Rztvr2zkUCLSSv2cKTDg@mail.gmail.com> <CAAZdMaf9n_37soxdJ9ACFFke=iXyux82QEVnr5XgmS2bs2FTYA@mail.gmail.com> <DDF306CD-EFC5-4E24-8ADE-64C432CEEAE4@cloudflare.com>
From: Victor Vasiliev <vasilvv@google.com>
Date: Mon, 06 Mar 2017 19:15:38 -0500
Message-ID: <CAAZdMaeXxA=UC5afPfi-U_zzJYtVVLZtkPvP2hAZmqpqzj5DTw@mail.gmail.com>
To: Vlad Krasnov <vlad@cloudflare.com>
Content-Type: multipart/alternative; boundary="001a113a1be65f0b11054a18e95d"
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/g6iGnHp4Tx6W0nJhRIDDu49-UoE>
Cc: "tls@ietf.org" <TLS@ietf.org>
Subject: Re: [TLS] Certificate compression draft
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <tls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tls>, <mailto:tls-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tls/>
List-Post: <mailto:tls@ietf.org>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tls>, <mailto:tls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 07 Mar 2017 00:15:41 -0000
Hi Vlad, This is still an open issue: https://github.com/ghedo/tls-certificate-compression/issues/2 The problem here is creating a dictionary that is both neutral with respect to the certificate's issuing authority, and actually has a noticeable effect. So far my personal attempts at making such a dictionary have not been very successful, but this might change. Even if we get a dictionary, I do not expect the effect to be large compared to the effect of just compressing the chain in the first place. -- Victor. On Mon, Mar 6, 2017 at 6:32 PM, Vlad Krasnov <vlad@cloudflare.com> wrote: > Hi Victor, > > Have you considered creating a common dictionary, similarly to what SPDY > did for header compression? > > Cheers, > Vlad > > > On Mar 6, 2017, at 3:23 PM, Victor Vasiliev <vasilvv@google.com> wrote: > > Hi Martin, > > I've measured the effect of compression on a corpus of popular website > certificate chains I had lying around (Alexa Top 100k from a few years > ago), > and the effect seems to be about -30% of size at the median and -48% at > 95th > percentile (with Brotli, subtract 3-5% for zlib). > > I think the most dramatic effect from the compression is observed for the > certificates with a lot of SNI values, which is not uncommon. > > -- Victor. > > On Mon, Mar 6, 2017 at 6:06 PM, Martin Thomson <martin.thomson@gmail.com> > wrote: > >> Hi Victor, >> >> Do you have any evidence to suggest that this reduces size in any >> meaningful way? Certificates tend to include both repetitious values >> (OIDs), and non-repetitious values (keys). >> >> On 7 March 2017 at 09:58, Victor Vasiliev <vasilvv@google.com> wrote: >> > Certificate compression has been discussed on this list briefly before, >> and >> > there was some interest in at least considering a draft for it. The >> draft >> > now >> > exists (co-authored by Alessandro and myself), and it can be found at: >> > >> > https://datatracker.ietf.org/doc/draft-ghedini-tls-certifica >> te-compression/ >> > [ GitHub repo: https://github.com/ghedo/tls-certificate-compression ] >> > >> > The proposed scheme allows a client and a server to negotiate a >> compression >> > algorithm for the server certificate message. The scheme is purely >> opt-in >> > on >> > both sides. The current version of the draft defines zlib and Brotli >> > compression, both of which are well-specified formats with an existing >> > deployment experience. >> > >> > There are multiple motivations to compress certificates. The first one >> is >> > that >> > the smaller they are, the faster they arrive (both due to the transfer >> time >> > and >> > a decreased chance of packet loss). >> > >> > The second, and more interesting one, is that having small certificates >> is >> > important for QUIC in order to achieve 1-RTT handshakes while limiting >> the >> > opportunities for amplification attacks. Currently, TLS 1.3 over TCP >> > without >> > client auth looks like this: >> > >> > Round trip 1: client sends SYN, server sends SYN ACK >> > Here, the server provides its own random value which client will >> > have to echo in the future. >> > Round trip 2: client sends ACK, ClientHello, server sends >> > ServerHello...Finished >> > Here, ACK confirms to server that the client can receive packets >> and is >> > not >> > just spoofing its source address. Server can send the entire >> > ServerHello to >> > Finished flight. >> > >> > In QUIC, we are trying to merge those two rounds into one. The problem, >> > however, is that the ClientHello is one packet, and >> ServerHello...Finished >> > can >> > span multiple packets, meaning that this could be used as an >> amplification >> > attack vector since the client's address is not yet authenticated at >> this >> > point. >> > In order to address this, the server has to limit the number of packets >> it >> > sends >> > during the first flight (i.e. ServerHello...Finished flight). Since >> > certificates make up the majority of data in that flight, making them >> > smaller >> > can push them under the limit and save a round-trip. >> > >> > Cheers, >> > Victor. >> > >> > _______________________________________________ >> > TLS mailing list >> > TLS@ietf.org >> > https://www.ietf.org/mailman/listinfo/tls >> > >> > > _______________________________________________ > TLS mailing list > TLS@ietf.org > https://www.ietf.org/mailman/listinfo/tls > > >
- [TLS] Certificate compression draft Victor Vasiliev
- Re: [TLS] Certificate compression draft Martin Thomson
- Re: [TLS] Certificate compression draft Victor Vasiliev
- Re: [TLS] Certificate compression draft Viktor Dukhovni
- Re: [TLS] Certificate compression draft Vlad Krasnov
- Re: [TLS] Certificate compression draft Victor Vasiliev
- Re: [TLS] Certificate compression draft Victor Vasiliev
- Re: [TLS] Certificate compression draft Martin Thomson
- Re: [TLS] Certificate compression draft Vlad Krasnov
- Re: [TLS] Certificate compression draft Ryan Sleevi
- Re: [TLS] Certificate compression draft Viktor Dukhovni
- Re: [TLS] Certificate compression draft Martin Thomson
- Re: [TLS] Certificate compression draft Hannes Tschofenig
- Re: [TLS] Certificate compression draft Rob Stradling
- Re: [TLS] Certificate compression draft Eric Rescorla
- Re: [TLS] Certificate compression draft Victor Vasiliev
- Re: [TLS] Certificate compression draft Sankalp Bagaria
- Re: [TLS] Certificate compression draft Ryan Sleevi
- Re: [TLS] Certificate compression draft Eric Rescorla
- Re: [TLS] Certificate compression draft Benjamin Kaduk
- Re: [TLS] Certificate compression draft David Benjamin
- Re: [TLS] Certificate compression draft Eric Rescorla
- Re: [TLS] Certificate compression draft Eric Rescorla
- Re: [TLS] Certificate compression draft Sankalp Bagaria