[DNSOP] Persistence of DCV, including for Delegated DCV (for draft-ietf-dnsop-domain-verification-techniques)
Erik Nygren <erik+ietf@nygren.org> Tue, 06 May 2025 15:57 UTC
Return-Path: <nygren@gmail.com>
X-Original-To: dnsop@mail2.ietf.org
Delivered-To: dnsop@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 6B3FB257DA4E for <dnsop@mail2.ietf.org>; Tue, 6 May 2025 08:57:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -1.893
X-Spam-Level:
X-Spam-Status: No, score=-1.893 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FREEMAIL_FORGED_FROMDOMAIN=0.001, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id x49Uipzz9Ql4 for <dnsop@mail2.ietf.org>; Tue, 6 May 2025 08:57:12 -0700 (PDT)
Received: from mail-lf1-f52.google.com (mail-lf1-f52.google.com [209.85.167.52]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id ED076257DA47 for <dnsop@ietf.org>; Tue, 6 May 2025 08:57:12 -0700 (PDT)
Received: by mail-lf1-f52.google.com with SMTP id 2adb3069b0e04-54d3ee30af1so6243920e87.0 for <dnsop@ietf.org>; Tue, 06 May 2025 08:57:12 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746547031; x=1747151831; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=H3zqN7KDjGFmRmEKonA8hPiBlWzkSdnJmmJg1fIUs7E=; b=Y+QRssciMNsreMErBD8KBfpNrd1Ai0CZP+AcBKBLZE9WTLW+GVMLu1lKTPWQbv/HDY P2exrZ4sk/fk6yUepYLKfHu5uGVZj1S9d1NO8z1dJn7pmN9osLRddy2B7aYHX7UbiX+u gdN2JhQb19j2fUy+7LSc2CInlnl8ojN02bMoNIOKdO8kuliHd3Uu5vucK68D0R+3Hdla VTg9eFD0kF2wkSPf6qNZlG2vIn/p+hE+DcmbBFFqZxtLY0UQNP/Hbh79FpCIc23OV+XZ F8/tYdSzrN0AHj1Wr9v0cK4IsrIE5nEklWkywJR3DSdRzdf6v43NJixxMsBen5rejPxp vRJg==
X-Gm-Message-State: AOJu0YyoNbF36Noj2vsz6DTQ4rmKCqPto1Gix5cMCLyhDMDjopMznPst 46fTzJbf6KrWveNV4hXRZym2F6mnljt3uOb9zBkjZmv+IDrhvMlJwZQXhf3GtX0dCD9toe9vv8V dOrFgCDrFhXqHIgd9wd8vMpgoGTOHq0Si
X-Gm-Gg: ASbGncuHBKIwjnyedrtc4Ag7iuOoYnuTIvzhKkyjhzJ/uBHN8VYjlWe2itDxFbzZBka XIhdteDdwnUJdA0LwfvZLdhCV3dmGj+NVreO8OqCm4p+v4Q2Jq38QVe2M4nulfu7wqaxDwJjEim wGDWobiOETyttVdaNgS8TpsWeR13+hziOwK1zQkAZurIAwdQFVWEBe5dQ=
X-Google-Smtp-Source: AGHT+IFhKRQAKj9TIKikgRatNJV/LDncnnQTLuDSpO9HuDWRJxRK9Eqf1xliwEM92DuzW0CpI4FFwIcmwrsRK5SjgP0=
X-Received: by 2002:a05:6512:239f:b0:54c:a7c:cbd4 with SMTP id 2adb3069b0e04-54fb926b85fmr7309e87.24.1746547030437; Tue, 06 May 2025 08:57:10 -0700 (PDT)
MIME-Version: 1.0
From: Erik Nygren <erik+ietf@nygren.org>
Date: Tue, 06 May 2025 11:56:58 -0400
X-Gm-Features: ATxdqUHZkHo3wP46DN-a45SA23b5OSORuGXqiFKGu2rWAZ4vTG7pCg25BiwVBik
Message-ID: <CAKC-DJiQXWqT+kitGO_bjdwAzN8u11WrGfSpE99HGtoVbg9OHw@mail.gmail.com>
To: dnsop WG <dnsop@ietf.org>, Ben Schwartz <ietf@bemasc.net>
Content-Type: multipart/alternative; boundary="0000000000005533c0063479abd3"
Message-ID-Hash: JT6LPZKLSFJMDOZVLHBPECP2E2HF7FPH
X-Message-ID-Hash: JT6LPZKLSFJMDOZVLHBPECP2E2HF7FPH
X-MailFrom: nygren@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-dnsop.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [DNSOP] Persistence of DCV, including for Delegated DCV (for draft-ietf-dnsop-domain-verification-techniques)
List-Id: IETF DNSOP WG mailing list <dnsop.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/dnsop/WB6amU-Sk1ZQRwMtJDt9Ie9I0rA>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dnsop>
List-Help: <mailto:dnsop-request@ietf.org?subject=help>
List-Owner: <mailto:dnsop-owner@ietf.org>
List-Post: <mailto:dnsop@ietf.org>
List-Subscribe: <mailto:dnsop-join@ietf.org>
List-Unsubscribe: <mailto:dnsop-leave@ietf.org>
There's an extensive discussion in https://github.com/ietf-wg-dnsop/draft-ietf-dnsop-domain-verification-techniques/pull/160 on the purpose and nature of DCV which seems more appropriate to bring to the list rather than keep in github. A few fundamental parts of this seem to be: 1) Is DCV just point-in-time validation of control or does the continued presence of a DCV record an ongoing assertion of validation intent? 2) How does Delegated DCV fit in here, where by definition of the use-case its continued presence is an ongoing assertion of validation intent to allow an intermediary to perform recurring but more time-limited revalidations? 3) When there is an ongoing validation of control (whether for direct DCV or Delegated DCV), how do we make it robust against risks such as dangling CNAMEs? 4) How do we balance some conflicting considerations? 4a) For persistent records, allowing the domain owner to know when they are safe to remove (and when they are still being relied on)? 4b) How do make persistent records safe to be persistent (eg, not derived from any secret that needs rotation)? 4c) How do we avoid putting sensitive information (or anything derived from sensitive information) into the DNS, such as account names or account identifiers? 4d) How do we avoid domain takeover risks from dangling CNAMEs which require that the target of a DCV or Delegated DCV be bound to either a validation instance or to an account/entity requesting validation? 5) How do constraining records (eg, CAA is the one defined) interact? We should certainly call these out in a way that is consumable, but also provide recommendations. I disagree with the Ben's PR that just saying "DCV is point-in-time" is a solution. Using high-entropy tokens (as in the current draft) with no confidentiality requirements or semantic meaning seems like the safest approach for cases where the continued presence of a DCV record is an ongoing assertion of validation intent. The only one of these they don't address is 4a (ie, providing context to a domain operator for operational reasons). Unfortunately that context is inherently sensitive so conflicts with 4c. Keeping it in a comment in the zone file might be one recommendation but isn't really standard. (If we had a way to keep non-public comment metadata in zone files that couldn't be queried that would be great, but outside the scope of this draft to solve.) For constraining records (eg, CAA) we had decided previously to keep them separate and out of this draft. My proposal/recommendation would be to not incorporate Ben's PR ( https://github.com/ietf-wg-dnsop/draft-ietf-dnsop-domain-verification-techniques/pull/160) but instead to make sure we cover the whys for this. As part of this we would *NOT* specify that DCV is only a point-in-time protocol, but to clarify what is needed for it to safely be used as a persistent validation (which is something that the ecosystem is likely relying on, as re-validation doesn't scale in all cases and will just regrade to validation not happening). Best, Erik
- [DNSOP] Persistence of DCV, including for Delegat… Erik Nygren
- [DNSOP] Re: Persistence of DCV, including for Del… Ben Schwartz
- [DNSOP] Re: Persistence of DCV, including for Del… Paul Wouters
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Paul Hoffman
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Paul Wouters
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Erik Nygren
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Ben Schwartz
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Paul Wouters
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Ben Schwartz
- [DNSOP] Re: [Ext] Persistence of DCV, including f… John Levine
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Watson Ladd
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Erik Nygren
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Paul Hoffman
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Ben Schwartz
- [DNSOP] Re: [Ext] Persistence of DCV, including f… John Levine
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Paul Hoffman
- [DNSOP] Re: [Ext] Persistence of DCV, including f… John Levine
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Paul Hoffman
- [DNSOP] Re: [Ext] Persistence of DCV, including f… John R Levine
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Joe Abley
- [DNSOP] Re: [Ext] Persistence of DCV, including f… John R Levine
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Paul Wouters
- [DNSOP] Re: [Ext] Persistence of DCV, including f… John R Levine
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Erik Nygren
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Paul Wouters
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Paul Hoffman
- [DNSOP] Re: [Ext] Persistence of DCV, including f… John R Levine
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Erik Nygren
- [DNSOP] Re: [Ext] Persistence of DCV, including f… John R Levine
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Ben Schwartz
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Erik Nygren
- [DNSOP] Re: [Ext] Persistence of DCV, including f… Ben Schwartz
- [DNSOP] Re: everything bagels, Persistence of DCV… John Levine
- [DNSOP] Re: everything bagels, Persistence of DCV… Ben Schwartz
- [DNSOP] Re: everything bagels, Persistence of DCV… Erik Nygren
- [DNSOP] Re: everything bagels, Persistence of DCV… John R Levine
- [DNSOP] Re: everything bagels, Persistence of DCV… Paul Wouters