Re: [TLS] Certificate compression draft
Vlad Krasnov <vlad@cloudflare.com> Mon, 06 March 2017 23:32 UTC
Return-Path: <vlad@cloudflare.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 BB9E9129545 for <tls@ietfa.amsl.com>; Mon, 6 Mar 2017 15:32:44 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Level:
X-Spam-Status: No, score=-2 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_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cloudflare.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 jaBjba20dPzK for <tls@ietfa.amsl.com>; Mon, 6 Mar 2017 15:32:43 -0800 (PST)
Received: from mail-pg0-x236.google.com (mail-pg0-x236.google.com [IPv6:2607:f8b0:400e:c05::236]) (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 35A14129539 for <TLS@ietf.org>; Mon, 6 Mar 2017 15:32:43 -0800 (PST)
Received: by mail-pg0-x236.google.com with SMTP id 187so17637341pgb.3 for <TLS@ietf.org>; Mon, 06 Mar 2017 15:32:43 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloudflare.com; s=google; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=F21UYfzfInyH0mPGhilsPk8rCIRjndyvDWloOu/46Vo=; b=BsmPezPWWRoO5g8ESbgkqTgin4gaI1m8DgqqhpSi5f7MbR3LaNO90KUSq2Tp3g7cIp UVTT1wkTvRFPvxHYeK7QCAkQVy9xbeHjVu3h9MmQ2JXab098WalJUAGvsPC05nAwwhbj QLZTur+tgmrZTyZjIebYv8OIuFfY72p9SAVLg=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=F21UYfzfInyH0mPGhilsPk8rCIRjndyvDWloOu/46Vo=; b=ATIJcAYmJrP0gchNU7us06eUnURzSr1RliDI9isOSdEaadBZvM5/M8a+a8mVHt3Jcl Y2Z2cAWcbMSOQY2hCxncpMCmojLqSCV4QsdFWHuMve9awB3L+JRzbk5I0m3vX6bM7Por RcU4BIDolhZZ6Pv4DyiikmYDWpMkBYxLHpaZsRt5wRx1pjs1fKGBLTAn/Sao0oONd3rc 0/0UimPKX16R0033QK+rA4ZIL2acNg80zpZfOwhKRmITnqU93lyXMZ0g5YfKNC//vZ0w dD+6F3uujVIxA5e0c4umirSfSHk+KsJAjo9fT0TOpO2OKJQjIgOp8aJRD+iDqgcYfr6v SxKA==
X-Gm-Message-State: AMke39myuITuZl1iPbqqM6+e4GCAz9ShfSHgFiVsw1BV6OlazJNFDeLdrOuAMYX88b9sjopx
X-Received: by 10.99.253.5 with SMTP id d5mr23460022pgh.47.1488843162619; Mon, 06 Mar 2017 15:32:42 -0800 (PST)
Received: from ?IPv6:2606:4700:ff01:8210:65ea:98d2:4eca:88a7? ([2606:4700:ff01:8210:65ea:98d2:4eca:88a7]) by smtp.gmail.com with ESMTPSA id c195sm41564614pfb.60.2017.03.06.15.32.41 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 06 Mar 2017 15:32:42 -0800 (PST)
From: Vlad Krasnov <vlad@cloudflare.com>
Message-Id: <DDF306CD-EFC5-4E24-8ADE-64C432CEEAE4@cloudflare.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_FFC9EE75-DAE5-4B49-AA74-84E7939A89C9"
Mime-Version: 1.0 (Mac OS X Mail 10.2 \(3259\))
Date: Mon, 06 Mar 2017 15:32:41 -0800
In-Reply-To: <CAAZdMaf9n_37soxdJ9ACFFke=iXyux82QEVnr5XgmS2bs2FTYA@mail.gmail.com>
To: Victor Vasiliev <vasilvv@google.com>
References: <CAAZdMacAcSUL4sqLPA1E9-z_VaUSd1P5PpPryO+XQso0eUtThw@mail.gmail.com> <CABkgnnU54SeYDBL=YBRQn0ZThk=C59Rztvr2zkUCLSSv2cKTDg@mail.gmail.com> <CAAZdMaf9n_37soxdJ9ACFFke=iXyux82QEVnr5XgmS2bs2FTYA@mail.gmail.com>
X-Mailer: Apple Mail (2.3259)
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/Tasm_awM5TA0UDcAbOkSxY2uRwE>
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: Mon, 06 Mar 2017 23:32:45 -0000
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 <mailto: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 <mailto: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-certificate-compression/ <https://datatracker.ietf.org/doc/draft-ghedini-tls-certificate-compression/> > > [ GitHub repo: https://github.com/ghedo/tls-certificate-compression <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 <mailto:TLS@ietf.org> > > https://www.ietf.org/mailman/listinfo/tls <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