Re: [Acme] I-D Action: draft-ietf-acme-star-00.txt

"Fossati, Thomas (Nokia - GB/Cambridge, UK)" <thomas.fossati@nokia.com> Thu, 22 June 2017 16:09 UTC

Return-Path: <thomas.fossati@nokia.com>
X-Original-To: acme@ietfa.amsl.com
Delivered-To: acme@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 55FB412700F for <acme@ietfa.amsl.com>; Thu, 22 Jun 2017 09:09:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.702
X-Spam-Level:
X-Spam-Status: No, score=-4.702 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-2.8, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=nokia.onmicrosoft.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 jykzEYxIKlKv for <acme@ietfa.amsl.com>; Thu, 22 Jun 2017 09:09:30 -0700 (PDT)
Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01on0108.outbound.protection.outlook.com [104.47.2.108]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B1CF8126BF0 for <acme@ietf.org>; Thu, 22 Jun 2017 09:09:29 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.onmicrosoft.com; s=selector1-nokia-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=YAvpy53zMH/dtQAL25P2/eIs3VsjdtX321e3FxUuZqg=; b=ePAQqZZW7dDfy2IoGg0XCOAXkkP8HzJtDJ82yZ0s3VsTOsL+USNJskujWdWO/cGiIjKNpiwu0uSTMdnFFymlpjbnhMNxzl/DQMaC1Qs/TxkIWYqkeYZVF5mgOlMNR7UHaMU3soLrzKwVEIbCfz3mOe8XBJ2pXeemAyIL5tC2oOg=
Received: from VI1PR07MB1102.eurprd07.prod.outlook.com (10.163.168.26) by VI1PR07MB0800.eurprd07.prod.outlook.com (10.161.107.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1199.6; Thu, 22 Jun 2017 16:09:27 +0000
Received: from VI1PR07MB1102.eurprd07.prod.outlook.com ([fe80::3041:3f90:1f98:286]) by VI1PR07MB1102.eurprd07.prod.outlook.com ([fe80::3041:3f90:1f98:286%13]) with mapi id 15.01.1199.012; Thu, 22 Jun 2017 16:09:26 +0000
From: "Fossati, Thomas (Nokia - GB/Cambridge, UK)" <thomas.fossati@nokia.com>
To: Martin Thomson <martin.thomson@gmail.com>, "acme@ietf.org" <acme@ietf.org>
CC: "Fossati, Thomas (Nokia - GB/Cambridge, UK)" <thomas.fossati@nokia.com>
Thread-Topic: [Acme] I-D Action: draft-ietf-acme-star-00.txt
Thread-Index: AQHS5prmrwORxiIJo02oe8sPKmjEO6IrUxWAgAF4G4CABFw0AA==
Date: Thu, 22 Jun 2017 16:09:26 +0000
Message-ID: <BD1D6C9B-41D2-47BE-AB6A-830F4B77AB19@nokia.com>
References: <149761557766.24143.14359431560325982499@ietfa.amsl.com> <CABkgnnWY_2U4uxWDhEU21_UBQr2LJsm1+8gwU2UcP5OfBMrpbw@mail.gmail.com> <CABkgnnXjD8KpFKVK6vDbDKrobo1P3gsjjZcdg20ALXP6XKSgYQ@mail.gmail.com>
In-Reply-To: <CABkgnnXjD8KpFKVK6vDbDKrobo1P3gsjjZcdg20ALXP6XKSgYQ@mail.gmail.com>
Accept-Language: en-GB, en-US
Content-Language: en-GB
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/f.20.0.170309
authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=nokia.com;
x-originating-ip: [81.134.152.4]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; VI1PR07MB0800; 7:hArcP64pFfxdJ6ecxoA9BZDUnOvuGkWoBqBoGkAPaZiIX8Ky9G+hZq6Zaz6AmjSDsuQmfrhvkB+CjHGQ1aleQSw02UaDQ6Ei7NS2V762lJjvaDboSJ6ZFTyfNisNmhBSi1M79f1SCHDnOw9yzQo4U91O77u6atnty11O/ZFEfeLTRwP0xw6jJ5n/2XQ0R7dVdro8/dOAkSYj/6R6QvvxAWrcHQiETVVVRcbagRDgjyOtcN5y/DRdT6XYH3ukwZzE1H02RaXYQMNUtSzx/pIq0I1T7hz08MtCWE3VMVLSbz89Z2CedLfjYBN+7Tvs168hSJdVp7SlmfNz/1oi3ku+kO3HGnjFqWfYF5CeneUatSFvZ43+a1BWuoBRjA+Ze4hGxU5nORdzcDKm82Xf5htH/gjXSIf9PsvmKSjl9IklQV5134yB1OAuhBC1fQS2p0fgQeODYlk4KWcSPbGZrWy3pavupqCPGo5Ov3fgQ5D2BH73hCd7DN4jnt5kF2D2OiO4GpmvNXhlQhWbyar0IKFQqdVzqsd2xp6zgIhjuAvX7zWDG/HoSTOc8LqNh1/dCqjCuQgAKsKT/iq9qfSa5XkYROtv82NDIhXUOpX+A5T3kWu+HJMRyP3FEeRQCTgc9TnKeJ7N/WA/hxlTqPoa3E3a/NlDSddfolOF53SD6SyEeQ8d/gOSsPlx+miGMkZfoRfzoctIv7dnu846/DO6RzbBC5IziYwfe45FJGiy170GUTcy8jA5TiSynQqnp19Qh2ims7DZjsQ+Gf2GEldHnscQd2qg4makLGVpQkj0tX22rvg=
x-forefront-antispam-report: SFV:SKI; SCL:-1SFV:NSPM; SFS:(10019020)(6009001)(39410400002)(39450400003)(39840400002)(39850400002)(39860400002)(39400400002)(51444003)(24454002)(82746002)(25786009)(2501003)(5890100001)(14454004)(5250100002)(189998001)(36756003)(66066001)(3660700001)(3280700002)(478600001)(2906002)(8936002)(33656002)(2900100001)(102836003)(2950100002)(5660300001)(305945005)(86362001)(6116002)(3846002)(81166006)(7736002)(8676002)(6512007)(229853002)(4326008)(6486002)(83716003)(4001350100001)(6436002)(6506006)(6246003)(99286003)(107886003)(83506001)(230783001)(50986999)(76176999)(53936002)(54356999)(53546010)(38730400002)(39060400002); DIR:OUT; SFP:1102; SCL:1; SRVR:VI1PR07MB0800; H:VI1PR07MB1102.eurprd07.prod.outlook.com; FPR:; SPF:None; MLV:ovrnspm; PTR:InfoNoRecords; LANG:en;
x-ms-office365-filtering-correlation-id: df9c1371-afc4-4892-a21b-08d4b9890df3
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(2017030254075)(48565401081)(201703131423075)(201703031133081)(201702281549075); SRVR:VI1PR07MB0800;
x-ms-traffictypediagnostic: VI1PR07MB0800:
x-microsoft-antispam-prvs: <VI1PR07MB080090708B1A9EC5E57684DC80DB0@VI1PR07MB0800.eurprd07.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:(158342451672863)(131327999870524);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(10201501046)(100000703101)(100105400095)(3002001)(93006095)(93001095)(6055026)(6041248)(20161123562025)(20161123564025)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123558100)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:VI1PR07MB0800; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:VI1PR07MB0800;
x-forefront-prvs: 03468CBA43
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="utf-8"
Content-ID: <6E380CA0C496564EB54C97AE08ACBFD5@eurprd07.prod.outlook.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-OriginatorOrg: nokia.com
X-MS-Exchange-CrossTenant-originalarrivaltime: 22 Jun 2017 16:09:26.0550 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR07MB0800
Archived-At: <https://mailarchive.ietf.org/arch/msg/acme/cApmtHtnwndAQop52fgax29AA_c>
Subject: Re: [Acme] I-D Action: draft-ietf-acme-star-00.txt
X-BeenThere: acme@ietf.org
X-Mailman-Version: 2.1.22
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: Thu, 22 Jun 2017 16:09:32 -0000

Hi Martin,

Thanks for your review.

On 19/06/2017, 23:34, "Acme on behalf of Martin Thomson" <acme-bounces@ietf.org on behalf of martin.thomson@gmail.com> wrote:
> 
> A few brief comments on this draft.
> 
> On 16 June 2017 at 22:19,  <internet-drafts@ietf.org> wrote:
>     This memo proposes an ACME extension to enable the issuance of short-
>     term and automatically renewed certificates.  This allows a domain
>     name owner to delegate the use of certificates to another party,
>     while retaining the capability to cancel this delegation at any time
>     with no need to rely on certificate revocation mechanisms.
> 
> I found the introduction overly specific.  The generic use case is to
> simplify the deployment of certificates to unprivileged nodes.  The
> unprivileged nodes then only need to be configured with a URL for
> their certificates.
> 
> That requires a couple of paragraphs of exposition at most.  This
> extends to Section 2, which describes a system architecture that
> implies the existence of protocol elements that are simply not defined
> in this document.
> 
> Sections 1 and 2 could much more clearly describe what *this* document
> provides.  It provides an extension to ACME that allows for the
> creation of a certificate that automatically renews.
> 
> The focus on the CDN case affects the entire document.  The point is
> that the authorized entity is delegating the ability to use a
> certificate for its name to an unprivileged node.  Don't use "CDN",
> "content owner" or any of these highly specific terms.  Use generic
> terms; make new terms if necessary.  FWIW, while NDC is a cute
> reversal, "consumer" really isn't accurate.

Agree, there is still a bit of LURK baggage attached (especially here,
but also in a few other points).

We will do an editorial pass to streamline the document before -01
and take in the suggestions above.

> draft-iab-web-pki-problems has been abandoned.  It's not a great idea
> to cite it.

OK, will drop the reference -- too bad, though.

> In Section 3.1.1, I think that the resolution of these fields, being
> in days, is not conducive to reducing granularity.  (Or will you
> permit 5.7e-3 as a value?)

Seconds granularity then?  32 bit should be enough for >100 years while
allowing baryon-like lifetimes on the other end of the scale :-)

(Personally, I'd avoid any string representation, but that's my taste.)

> Section 3.1.1 needs to clearly articulate how
> "recurrent-certificate-validity" (could this be any more verbose and
> hard to type?) relates to "expires".

OK

> Please include a definition for the new attributes, rather than just
> providing an example and commenting the JSON.

OK

> In Section 3.1.2, you REALLY, REALLY need to authenticate this
> request.  

Sure.  Every non-RO operation needs to be authenticated.  We forgot to
be explicit about that; thanks for spotting it.

> My suggestion is to change this to a POST request with {
> "recurrent": false }.  (I'd have suggested PUT or PATCH, but ACME's
> reliance on JWS perverts that in ways that is incompatible with those
> methods.)

I have no strong opinion about the syntax of the order termination.
DELETE just seemed the most natural to me (certainly more
straightforward than POSTing '{ "recurrent": false }'), but I'm probably
missing something?

> In Section 3.2, the discussion about a Proxy is misleading.  The only
> relevant actor in this is an ACME client.  This section could be
> reduced to:
> 
> An ACME client discovers whether a server supports this extension by
> examining a newly created order.  The "recurrent" member will exist if
> the server supports automatic recurring certificate issuance; the
> "recurrent" member will be true if the server accepts the request.

Yes, agreed.  This is another example of the LURK clean-out that we need
to finish off.

> Can the server specify a shorter value for "recurrent-total-lifetime"?

Yes.  And if the client is not happy with the chosen value I guess it
will just abandon the order and let it expire (as suggested in 3.2).

> I don't understand Section 3.3 at all.  I'd recommend removing this
> section.  The DNO will decide what authorizations it requests amply
> without this level of proscription in standards.

Yaron: thoughts on this?

> In Section 3.4, the use of the Expires header field is a common
> mistake.  This is an HTTP caching directive.  It should probably be
> shorter than the expiration time of the certificate (half in fact),
> but not for the reasons that you might think.  The purpose of a
> recommendation on Expires is to ensure that the certificate is not
> cached beyond the point where a newer certificate will be issued.  You
> should remove this text.

OK

> Section 5.1 should be promoted to Section 5

OK

> Don't mention time-sensitive policy actions by the CA/B Forum.

Makes sense.

> Can't you simply ensure that the CDN can't modify the CAA record?

This is the minimum we could say.  At this point, I think we are trying
to explore a bit what other mitigations can be put in place.

> One further thought. ACME uses an absolute time for expiration. This
> uses a relative time. I think that I prefer the former. I realize that
> consistency might be impossible in this case, since the recurrent
> duration is necessarily relative, but I though it worth raising.

This is a good observation.  Maybe instead of mirroring
"recurrent-total-lifetime", server could come back with the absolute
time when the renewal ends on its side (e.g., "recurrent-expiration").

Cheers, thanks