Re: [Acme] Issuing certificates based on Simple HTTP challenges

Noah Kantrowitz <noah@coderanger.net> Tue, 15 December 2015 19:41 UTC

Return-Path: <noah@coderanger.net>
X-Original-To: acme@ietfa.amsl.com
Delivered-To: acme@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1392B1ACD1C for <acme@ietfa.amsl.com>; Tue, 15 Dec 2015 11:41:17 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.911
X-Spam-Level:
X-Spam-Status: No, score=-1.911 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] 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 nVvlHq6U7MXU for <acme@ietfa.amsl.com>; Tue, 15 Dec 2015 11:41:15 -0800 (PST)
Received: from mail.coderanger.net (coderanger.net [72.249.127.182]) by ietfa.amsl.com (Postfix) with ESMTP id EFE521ACD18 for <acme@ietf.org>; Tue, 15 Dec 2015 11:41:14 -0800 (PST)
Received: from [10.255.146.165] (63-158-29-241.dia.static.qwest.net [63.158.29.241]) by mail.coderanger.net (Postfix) with ESMTPSA id 09970A48006 for <acme@ietf.org>; Tue, 15 Dec 2015 14:41:13 -0500 (EST)
Content-Type: multipart/signed; boundary="Apple-Mail=_0133E5DA-F46B-47CB-A5C5-683C0A23C42E"; protocol="application/pgp-signature"; micalg="pgp-sha1"
Mime-Version: 1.0 (Mac OS X Mail 9.2 \(3112\))
X-Pgp-Agent: GPGMail 2.6b2
From: Noah Kantrowitz <noah@coderanger.net>
In-Reply-To: <CAMm+Lwhvf+nRVV38q1U1DKm1WStV1UJv4+EJ_zvq0G_Tb25S9w@mail.gmail.com>
Date: Tue, 15 Dec 2015 11:41:08 -0800
Message-Id: <2761E0B2-8DCC-4150-813F-8CAB756C0392@coderanger.net>
References: <CAF+SmEpOLoaREymVhi=qOUg2opz1vKzzNp6tGrDTZAjYSKFDkg@mail.gmail.com> <566F15DC.7090607@wyraz.de> <6B677A87-C6A0-485E-80DF-24960D585F46@coderanger.net> <566F2CB5.90402@wyraz.de> <89774336-0BA6-48FC-821D-1E8F3ED9AC14@coderanger.net> <566F4701.7050308@wyraz.de> <F3DA31B1-B27C-4C63-8ED4-6D27D46FF282@coderanger.net> <C2C239F2-E8A7-499B-BE52-3A48EA92B86D@dropmann.org> <BF7F8411-3E83-4A1F-B3A1-4C37DC8B4618@coderanger.net> <3CDE1749-3143-49EE-BD66-0AE4A8CC4175@dropmann.org> <566FDAB7.2030403@cs.tcd.ie> <56700F68.3040103@wyraz.de> <56701904.2070009@cs.tcd.ie> <56702EFA.1050008@wyraz.de> <13B5E9A8-E9CE-4018-8A9D-7856CBF06B4F@coderanger.net> <CAMm+Lwhvf+nRVV38q1U1DKm1WStV1UJv4+EJ_zvq0G_Tb25S9w@mail.gmail.com>
To: "acme@ietf.org" <acme@ietf.org>
X-Mailer: Apple Mail (2.3112)
Archived-At: <http://mailarchive.ietf.org/arch/msg/acme/nEGhRppe6tI_xYwClAJEXqZO6Gc>
Subject: Re: [Acme] Issuing certificates based on Simple HTTP challenges
X-BeenThere: acme@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Automated Certificate Management Environment <acme.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/acme>, <mailto:acme-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/acme/>
List-Post: <mailto:acme@ietf.org>
List-Help: <mailto:acme-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/acme>, <mailto:acme-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 15 Dec 2015 19:41:17 -0000

> On Dec 15, 2015, at 9:48 AM, Phillip Hallam-Baker <phill@hallambaker.com> wrote:
> 
> 
> 
> On Tue, Dec 15, 2015 at 12:25 PM, Noah Kantrowitz <noah@coderanger.net> wrote:
> 
> > On Dec 15, 2015, at 7:17 AM, Michael Wyraz <michael@wyraz.de> wrote:
> >
> > Stephen,
> >> Yes, I understand that and didn't actually refer to LE at all in my mail.
> > I'm sorry if I missunderstood you with that.
> >
> >> Basically, IMO only after we first get a "now" that works
> > We have a working HTTP-01 spec, implementation and CA. What's missing
> > for "a 'now' that works"?
> >
> >> Personally the optional thing in which I'm much more interested is a
> >> simple put-challenge-in-DNS one where the CA pays attention to DNSSEC,
> >> since that's the use-case I have and that would provide some better
> >> assurance to the certs acquired via acme. I can see that there might
> >> also be value for some (other) folks in SRV if it means no need to
> >> dynamically change DNS. But, if someone is saying "we must all do
> >> these more complex things for security reasons" then they are, in this
> >> context, wrong. And my mail was reacting to just such a statement.
> > Why not just placing a static public key to DNS that is allowed to sign
> > ACME requests for this domain? Simple, no need for dynamic updates (yes,
> > it's standardized for years but AFAIK not seen very often in real world
> > scenarios).
> 
> Anything that makes deployment _harder_ than the current LE client is a move in the wrong direction. UX matters, with security more than just about anything else. Unless you can propose a user flow to go with this change, no amount of hypothetical correctness is worth having a tool no one will use.
> 
> Harder for whom?
> 
> The current scheme isn't going to work for any geolocation based systems and is a terrible fit for enterprise.

I think this is a bit of a red herring on a few fronts. You can use http-01 or similar strategies on a widely-replicated system, it is just annoying because you need to push the challenge response file to a bunch of places. If the geo-distributed piece is a CDN, the system is already designed to smash caches effectively so that is handled. Still, that is gross and a lot of work, but fortunately there is already a DNS challenge in the works that will help for some cases. It requires centralized command and control systems to use effectively, but that matches the structure of a lot of these big, distributed setups. The case we haven't covered is where you have a complex distributed setup but want to run the challenge on the edges. I question how many people want to do that but I agree it is non-zero and an http-srv-01 challenge type would help cover that (or fold it in to http-02 as an optional thing). The objection from myself and some others is the suggestion that we mandate DNS changes to use http-01 or tls-sni-01 because of the risk of a rogue HTTP server validating certs unexpectedly. Making that level of interaction with DNS required is a major UX change and will drastically reduce the number of people that will use LE and similar services.

--Noah