Re: [expect-ct] Is expect-ct policy intended for long-term use? (plus: no user recourse)

Tom Ritter <> Sat, 26 November 2016 03:43 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 6770D129415 for <>; Fri, 25 Nov 2016 19:43:20 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -7.998
X-Spam-Status: No, score=-7.998 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_SORBS_SPAM=0.5, RP_MATCHES_RCVD=-1.497, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id bE9D6O-XBIAd for <>; Fri, 25 Nov 2016 19:43:18 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 0370E129479 for <>; Fri, 25 Nov 2016 19:43:17 -0800 (PST)
Received: from lists by with local (Exim 4.80) (envelope-from <>) id 1cATpj-000294-1C for; Sat, 26 Nov 2016 03:39:23 +0000
Resent-Date: Sat, 26 Nov 2016 03:39:23 +0000
Resent-Message-Id: <>
Received: from ([]) by with esmtps (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <>) id 1cATpW-00026N-NV for; Sat, 26 Nov 2016 03:39:10 +0000
Received: from ([]) by with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from <>) id 1cATpQ-0000L6-He for; Sat, 26 Nov 2016 03:39:05 +0000
Received: by with SMTP id 12so93755286uas.2 for <>; Fri, 25 Nov 2016 19:38:43 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=vg; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=ftLSOEi7zpFoMWxtGb4JNsCZksPmsqAetHeqezoQWVM=; b=Y2KR/xW4MG3VIfTbkf8wzM44mZqhs+PWi7EUs5ptwTbfjLGYBzl1W9U78ijW/lwNoj NsUIaf3w/cFQ/GhNZx0YQqkjzpsOBKUdLB5nwH1HUndcUfEHy9PAssTaGc751BxS6/7Q +Nq2arCvgwrjEq2kuIV9NMV4VcJpBv7ydskF8=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=ftLSOEi7zpFoMWxtGb4JNsCZksPmsqAetHeqezoQWVM=; b=XI+W3PUyK+tXJgsiUbdcI/Rl0CAsigiuwdtoiYKqdiBG1u+HqrMjYm/ksxBA5YYYRc gsKpDyywrc8eihsjybwYP52DX/jkews91y9j7QJuJ1rUsnBMKvm15kBabZoB2XfiX9BL FSRJpv5bID3ltdchhXLB+sanZ7rmQA0TuHmD92nqMZPPoCIqnqYeJTq7z64EhWiDaUXx gBE3kAWZrsAJRijsa18AJ3PBgZvRCfgoC91GK4+/pF6bxAORbiNC8TqrX6KQ+4BZPZi8 v1G+MKt47hWqu9sFsur6oN6m5l0cr3RiyE261K0pMlDGBUzBH65bDC7t8a5n9eI3Sxtc BRag==
X-Gm-Message-State: AKaTC0054eNcsVjUOXdDGjVyg6cWwJVa3YJSsAiszzDF74odQs0p0VEYLBkGFFhhdxsDRqfZihyZgNM3/d0gpEV6
X-Received: by with SMTP id t33mr8268717uat.142.1480131517971; Fri, 25 Nov 2016 19:38:37 -0800 (PST)
MIME-Version: 1.0
Received: by with HTTP; Fri, 25 Nov 2016 19:38:17 -0800 (PST)
In-Reply-To: <>
References: <>
From: Tom Ritter <>
Date: Fri, 25 Nov 2016 21:38:17 -0600
Message-ID: <>
To: =JeffH <>
Cc: Emily Stark <>, IETF HTTP WG <>
Content-Type: text/plain; charset="UTF-8"
Received-SPF: pass client-ip=;;
X-W3C-Hub-Spam-Status: No, score=-4.9
X-W3C-Hub-Spam-Report: AWL=-0.339, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RCVD_IN_SORBS_SPAM=0.5, SPF_PASS=-0.001, W3C_AA=-1, W3C_IRA=-1, W3C_WL=-1
X-W3C-Scan-Sig: 1cATpQ-0000L6-He ebc8931b1e9869b0a307432083d8204a
Subject: Re: [expect-ct] Is expect-ct policy intended for long-term use? (plus: no user recourse)
Archived-At: <>
X-Mailing-List: <> archive/latest/33018
Precedence: list
List-Id: <>
List-Help: <>
List-Post: <>
List-Unsubscribe: <>

Expect-CT has usefulness long-term if a browser chooses not to require
CT for all certs, but implements the spec anyway. A browser could
implement Expect-CT by making a minimal policy (perhaps by choosing to
select an intersection of logs trusted by other browsers), and simply
verifying SCT signatures.


On 24 November 2016 at 20:00, =JeffH <> wrote:
> Emily wrote:
>> I anticipate Expect-CT to be useful more than a year and less than 5
>> years. Within 1-2 years, I expect/hope several browsers will be
>> requiring CT for all new certificates. They can still implement
>> Expect-CT to protect sites against backdating and against
>> certificates that were issued before the date that they started
>> requiring CT for all new certs.
> ok, by "they" you mean UAs, yes?
>> Once a browser is requiring CT for *all* certificates (e.g. because
>> the maximum validity period has elapsed beyond the date that the
>> browser began requiring CT for all new certs), then I don't think
>> Expect-CT is useful for that browser anymore.
> by implication you mean "useful" for a server (aka "relying party" (RP)) and
> user, yes?
> because what we are protecting here is not so much the browser (vendor) but
> the RP and user, yes?
> I could see Expect-CT to be useful for the longer term if it were to signal
> additional RP-desired selective UA behavior such as "no user recourse", *if*
> the browsers were not going to implement such behavior, e.g., as a a matter
> of course in the case of errors during secure connection establishment.
> =JeffH
>> On Wed, Nov 23, 2016 at 4:47 PM, =JeffH
>> <> wrote:
>> WRT "Expect-CT"
>> <>
>> (aka "the I-D" in the below)...
>> Is the expect-ct policy intended to be used long-term by servers?
>> I.e., is this server-declared expect-ct policy only a stop-gap until
>> all browsers natively enforce their vendors' "ct policies"?
>> At first glance, it seems the answer is "yes, expect-ct has long-term
>> usefulness" given the language in
>> <>,
>> i.e., a host's declaration of expect-ct policy is stating that the UA
>> must terminate any connection to that host (and port?) that does not
>> satisfy the UA's ct policy.
>> However, given this..
>> On Sunday, November 13, 2016 at 4:47 AM, Emily Stark wrote:
>>> That is, eventually, when browsers require CT for all
>>> certificates, [...] I see Expect-CT as a way that individual sites
>>> can opt in to the future early ("the future" being when browsers
>>> require CT for all certificates)
>> sounds like the browsers intend to do that in any case, and if
>> so, on what timescale?
>> I.e., is it worthwhile to go through all the work to formally define
>> Expect-CT in an RFC?
>> I'm not sure. This is part of the reason why I uploaded this as an
>> experimental draft. I'm not 100% sure what's the right process or
>> venue is for a mechanism that is not meant to stick around forever.
>> Though, if there is some functionality that a server-declared
>> expect-ct policy stipulates that is not intended to be implemented by
>> default in near- to intermediate-term, then formally specifying
>> Expect-CT perhaps has a reasonable cost-benefit regardless. Or also
>> if explicit server-declared "expect-ct" policy would be useful to the
>> long-tail of HTTPS clients other than the dominant browsers.
>> Perhaps one should consider having the expect-ct policy additionally
>> mean that there is "no user recourse" to connection termination as a
>> result of CT-policy violation. I note the I-D does not presently
>> state that.
>> See <> for how this
>> is discussed in HSTS. You might consider adding "no user recourse" to
>> a "UA implementation advice" section.
>> That seems reasonable to include, though I don't think "no user
>> recourse" is enough benefit to justify keeping Expect-CT around after
>> it has otherwise exhausted its usefulness.
>> Though, like any of this (including HSTS), the browsers could in the
>> future decide that they will have a "no user recourse" policy by
>> default for all secure transport establishment failures. It's a
>> question of how far in the future might that occur (in order to
>> justify present-to-intermediate-term work).
>> HTH,
>> =JeffH