Re: [Acme] acme subdomains open items

Michael Richardson <mcr+ietf@sandelman.ca> Mon, 07 December 2020 13:31 UTC

Return-Path: <mcr+ietf@sandelman.ca>
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 1AF973A0D6D for <acme@ietfa.amsl.com>; Mon, 7 Dec 2020 05:31:04 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 FhoVd28mHJek for <acme@ietfa.amsl.com>; Mon, 7 Dec 2020 05:31:01 -0800 (PST)
Received: from tuna.sandelman.ca (tuna.sandelman.ca [209.87.249.19]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5E21B3A13A1 for <acme@ietf.org>; Mon, 7 Dec 2020 05:31:00 -0800 (PST)
Received: from localhost (localhost [127.0.0.1]) by tuna.sandelman.ca (Postfix) with ESMTP id CCDAA3899D; Mon, 7 Dec 2020 08:32:37 -0500 (EST)
Received: from tuna.sandelman.ca ([127.0.0.1]) by localhost (localhost [127.0.0.1]) (amavisd-new, port 10024) with LMTP id uDolaeAQ4zJF; Mon, 7 Dec 2020 08:32:34 -0500 (EST)
Received: from sandelman.ca (obiwan.sandelman.ca [IPv6:2607:f0b0:f:2::247]) by tuna.sandelman.ca (Postfix) with ESMTP id 02D603899A; Mon, 7 Dec 2020 08:32:34 -0500 (EST)
Received: from localhost (localhost [IPv6:::1]) by sandelman.ca (Postfix) with ESMTP id C673E48F; Mon, 7 Dec 2020 08:30:26 -0500 (EST)
From: Michael Richardson <mcr+ietf@sandelman.ca>
To: Ryan Sleevi <ryan-ietf@sleevi.com>, "Owen Friel (ofriel)" <ofriel@cisco.com>, "acme@ietf.org" <acme@ietf.org>, Felipe Gasper <felipe@felipegasper.com>
In-Reply-To: <CAErg=HHxbhbZQAdf2SRjFVUezmkGcg+OdeZL_ey0AwubxkSVSA@mail.gmail.com>
References: <CY4PR11MB168504F6D4CF495E8AE8F729DBF10@CY4PR11MB1685.namprd11.prod.outlook.com> <CA7603D9-DFDA-4FA6-A76C-D4E0E638A956@felipegasper.com> <CY4PR11MB16851AD65ACF736CE6FD55A8DBF10@CY4PR11MB1685.namprd11.prod.outlook.com> <CAErg=HEON6756+_3Lfbe=r=3rxV9gAundvG5mBEEOzsKqL8x3w@mail.gmail.com> <CY4PR11MB168593FCC8F11DF836FD12EADBCE0@CY4PR11MB1685.namprd11.prod.outlook.com> <CAErg=HHxbhbZQAdf2SRjFVUezmkGcg+OdeZL_ey0AwubxkSVSA@mail.gmail.com>
X-Mailer: MH-E 8.6+git; nmh 1.7+dev; GNU Emacs 26.1
X-Face: $\n1pF)h^`}$H>Hk{L"x@)JS7<%Az}5RyS@k9X%29-lHB$Ti.V>2bi.~ehC0; <'$9xN5Ub# z!G,p`nR&p7Fz@^UXIn156S8.~^@MJ*mMsD7=QFeq%AL4m<nPbLgmtKK-5dC@#:k
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha512"; protocol="application/pgp-signature"
Date: Mon, 07 Dec 2020 08:30:26 -0500
Message-ID: <16962.1607347826@localhost>
Archived-At: <https://mailarchive.ietf.org/arch/msg/acme/MDB_S2GU2y2ZByWHYuZzlsJNXzE>
Subject: Re: [Acme] acme subdomains open items
X-BeenThere: acme@ietf.org
X-Mailman-Version: 2.1.29
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: Mon, 07 Dec 2020 13:31:04 -0000

Ryan, I'm not really following this conversation.
Probably my mental model of dns-01 challenges is lacking.
The word "window" does not appear in RFC8555 or acme-subdomains, so that's
your word, I think.

Ryan Sleevi <ryan-ietf@sleevi.com> wrote:
    > Further, if we assume that say there are ten domain labels, but the server
    > is only willing to maintain state for five (as a window), then it’s not
    > clear how the client can request the server sends the first five rather
    > than the last five. Having the client advertise its capabilities let’s the
    > client choose the window, and if the server rejects all of them, the client
    > at least can try again with a different window (e.g. the last five
    > labels).

I don't really understand this at all.
I think that we are discussing so.me.comp.lex.example.

The client has control over lex.example, but and can prove it with dns-01 TXT
record placed at _acme-challenge.lex.example.  Why does it matter whether it
is so.me.comp.lex.example or ve.ry.so.me.comp.lex.example.
or an.other.comp.lex.example??

One thing that just occured to me is whether or not there is any value in the
dns-01 challenge remaining in the DNS after the authorization.
What I'm thinking is that the CA could offload some of it's state for the
client to store for it.

    > That’s why my slight preference was to have the client advertise.
    > Processing after validation seemed preferable to processing prior to
    > validation, and it also seemed useful to let the client advertise
    > capabilities directly to let the server reduce any stored state.

    > However, I
    > can equally imagine an asinine implementation of client-advertise that
    > requests a cert for “www.example.com” but let’s the client set the ADN as “
    > example.net” and, post-validation of example.net, fails to check that “
    > example.net” matches “example.com”. Or does something equally silly like
    > allowing “prefix.example” to authorize “not-actually-a-prefix.example”.

I can't see how any of these things are anything other than serious bugs.

--
Michael Richardson <mcr+IETF@sandelman.ca>   . o O ( IPv6 IøT consulting )
           Sandelman Software Works Inc, Ottawa and Worldwide