<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.3.6) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-shetho-dnsop-ds-automation-00" category="bcp" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.1 -->
  <front>
    <title abbrev="DS Automation">Best Practice Recommendations for DS Automation</title>
    <seriesInfo name="Internet-Draft" value="draft-shetho-dnsop-ds-automation-00"/>
    <author initials="S." surname="Sheng" fullname="Steve Sheng">
      <organization/>
      <address>
        <email>steve.sheng@gmail.com</email>
      </address>
    </author>
    <author initials="P." surname="Thomassen" fullname="Peter Thomassen">
      <organization>deSEC</organization>
      <address>
        <email>peter@desec.io</email>
      </address>
    </author>
    <date/>
    <area>Internet</area>
    <workgroup>DNSOP Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 68?>

<t>Enabling support for automatic acceptance of DS parameters from the Child DNS operator (via RFCs 7344, 8078, 9615) requires the parent operator, often a registry or registrar, to make a number of technical decisions. This document describes recommendations for new deployments of such DS automation.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Discussion of this document takes place on the
    Domain Name System Operations Working Group mailing list (dnsop@ietf.org),
    which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/dnsop/"/>.</t>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/peterthomassen/draft-shetho-dnsop-ds-automation"/>.</t>
    </note>
  </front>
  <middle>
    <?line 72?>

<section anchor="introduction">
      <name>Introduction</name>
      <t><xref target="RFC7344"/>, <xref target="RFC8078"/>, <xref target="RFC9615"/> automate DNSSEC delegation trust maintenance by having the child publish CDS and/or CDNSKEY records which indicate the delegation's desired DNSSEC parameters ("DS automation").</t>
      <t>Parental Agents using these protocols have to make a number of technical decisions relating to issues of validity checks, timing, error reporting, locks, etc. Additionally, when using the RRR model (as is common amongst top-level domains), both the registrar and the registry can effect parent-side changes to the delegation. In such a situation, additional questions arise.</t>
      <t>Not all existing DS automation deployments have made the same choices with respect to these questions, leading to somewhat inconsistent behavior. From the perspective of a domain owner with domain names under various TLDs, this may be unexpected and confusing.</t>
      <t>New deployments of DS automation therefore SHOULD follow the recommendations set out in this document, to achieve a more uniform treatment across suffixes and to minimize user surprise.</t>
      <t>In <xref target="overview"/>, operational questions are first raised and directly answered with the corresponding recommendations. After this overview, <xref target="analysis"/> follows with analysis and related considerations.</t>
      <t>Readers are expected to be familiar with DNSSEC <xref target="RFC9364"/><xref target="RFC9615"/><xref target="I-D.ietf-dnsop-generalized-notify"/>. For terminology, see <xref target="terminology"/>.</t>
      <section anchor="requirements-notation">
        <name>Requirements Notation</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.
<?line -6?>
        </t>
      </section>
    </section>
    <section anchor="overview">
      <name>Overview of Recommendations</name>
      <section anchor="validity">
        <name>Validity Checks and Safety Measures</name>
        <t>This section provides recommendations to address the following questions:</t>
        <ul spacing="normal">
          <li>
            <t>What kind of validity checks should be performed on DS parameters?</t>
          </li>
          <li>
            <t>Should these checks be performed upon acceptance, or also continually when in place?</t>
          </li>
          <li>
            <t>How do TTLs and caching impact DS provisioning? How important is timing in a child key change?</t>
          </li>
        </ul>
        <t>For the rationale informing the below recommendations, see the analysis in <xref target="analysis_validity"/>.</t>
        <section toc="exclude" numbered="false" anchor="recommendations">
          <name>Recommendations</name>
          <ol spacing="normal" type="1"><li>
              <t>Entities performing automated DS maintenance SHOULD verify  </t>
              <ol spacing="normal" type="a"><li>
                  <t>the consistency of DS update requests across all authoritative nameservers in the delegation (one query per type and hostname), and</t>
                </li>
                <li>
                  <t>that the resulting DS record set would not break DNSSEC validation if deployed,</t>
                </li>
              </ol>
              <t>
and cancel the update if the verifications do not succeed.</t>
            </li>
            <li>
              <t>Parent operators (such as registries) SHOULD reduce a DS record set's TTL to a value between 5–15 minutes when it is updated, and restore the normal TTL value at a later occasion (but not before the old DS RRset's TTL has expired).</t>
            </li>
          </ol>
        </section>
      </section>
      <section anchor="reporting">
        <name>Reporting</name>
        <t>This section provides recommendations to address the following question:</t>
        <ul spacing="normal">
          <li>
            <t>Should a failed (or even successful) DS update trigger a notification to anyone?</t>
          </li>
        </ul>
        <t>For the rationale informing the below recommendations, see the analysis in <xref target="analysis_reporting"/>.</t>
        <section toc="exclude" numbered="false" anchor="recommendations-1">
          <name>Recommendations</name>
          <ol spacing="normal" type="1"><li>
              <t>For certain DS updates (see <xref target="analysis_reporting">analysis</xref>) and for DS deactivation, both the domain's technical contact and the registrant SHOULD be notified.</t>
            </li>
            <li>
              <t>For error conditions, the domain's technical contact and the DNS operator serving the affected Child zone SHOULD be first notified. The registrant SHOULD NOT be notified unless the problem persists for a prolonged amount of time (e.g., three days).</t>
            </li>
            <li>
              <t>Notifications to humans SHOULD be done via email. Child DNS operators SHOULD be notified using a report query <xref target="RFC9567"/> to the agent domain as described in (<xref section="4" sectionFormat="comma" target="I-D.ietf-dnsop-generalized-notify"/>). The same condition should not be reported unnecessarily frequently to the same recipient.</t>
            </li>
            <li>
              <t>In the RRR model, if the registry performs DS automation, the registry SHOULD inform the registrar of any DS record changes via the EPP Change Poll Extension <xref target="RFC8590"/> or a similar channel.</t>
            </li>
            <li>
              <t>The currently active DS configuration as well as the history of DS updates SHOULD be made accessible to the registrant (or their designated party) through the customer portal available for domain management.</t>
            </li>
          </ol>
        </section>
      </section>
      <section anchor="locks">
        <name>Registration Locks</name>
        <t>This section provides recommendations to address the following question:</t>
        <ul spacing="normal">
          <li>
            <t>How does DS automation interact with other registration state parameters, such as EPP locks?</t>
          </li>
        </ul>
        <t>For the rationale informing the below recommendations, see the analysis in <xref target="analysis_locks"/>.</t>
        <section toc="exclude" numbered="false" anchor="recommendations-2">
          <name>Recommendations</name>
          <ol spacing="normal" type="1"><li>
              <t>Automated DS maintenance SHOULD be suspended when a registry lock is set (in particular, EPP lock serverUpdateProhibited).</t>
            </li>
            <li>
              <t>To secure ongoing operations, automated DS maintenance SHOULD NOT be suspended based on a registrar lock alone (in particular, EPP lock clientUpdateProhibited).</t>
            </li>
          </ol>
        </section>
      </section>
      <section anchor="multiple">
        <name>Multiple Submitting Parties</name>
        <t>This section provides recommendations to address the following questions:</t>
        <ul spacing="normal">
          <li>
            <t>How are conflicts resolved when DS parameters are accepted through multiple channels (e.g. via a conventional channel and via automation)?</t>
          </li>
          <li>
            <t>In case both the registry and the registrar are automating DS updates, how to resolve potential collisions?</t>
          </li>
        </ul>
        <t>For the rationale informing the below recommendations, see the analysis in <xref target="analysis_multiple"/>.</t>
        <section toc="exclude" numbered="false" anchor="recommendations-3">
          <name>Recommendations</name>
          <ol spacing="normal" type="1"><li>
              <t>Registries and (outside the RRR model) registrars SHOULD provide a channel for manual DS maintenance in order to enable recovery when the Child has lost access to its signing key(s). This manual channel is also needed when a DNS operator does not support DS automation or refuses to cooperate.</t>
            </li>
            <li>
              <t>When DS updates are received through a manual or EPP interface, they SHOULD be executed immediately.</t>
            </li>
            <li>
              <t>Only when the entire DS record set has been removed through a manual or EPP submission SHOULD DS automation be suspended, in order to prevent accidental re-initialization of the DS record set when the registrant intended to disable DNSSEC.</t>
            </li>
            <li>
              <t>In all other cases where a non-empty DS record set is provisioned manually or via EPP (including after an earlier removal), DS automation SHOULD NOT (or no longer) be suspended.</t>
            </li>
            <li>
              <t>In the RRR model, if the registry performs DS automation, the registry SHOULD notify the registrar of all DS updates (see also Recommendation 4 under <xref target="reporting"/>).</t>
            </li>
            <li>
              <t>In the RRR model, registries SHOULD NOT perform automated DS maintenance if it is known that the registrar does not support DNSSEC.</t>
            </li>
          </ol>
        </section>
      </section>
      <section anchor="cds-vs-cdnskey">
        <name>CDS vs. CDNSKEY</name>
        <t>This section provides recommendations to address the following question:</t>
        <ul spacing="normal">
          <li>
            <t>Are parameters for DS automation best conveyed as CDNSKEY or CDS records, or both?</t>
          </li>
        </ul>
        <t>For the rationale informing the below recommendations, see the analysis in <xref target="analysis_dichotomy"/>.</t>
        <section toc="exclude" numbered="false" anchor="recommendations-4">
          <name>Recommendations</name>
          <ol spacing="normal" type="1"><li>
              <t>DNS operators SHOULD publish both CDNSKEY records as well as CDS records, and follow best practice for the choice of hash digest type <xref target="DS-IANA"/>.</t>
            </li>
            <li>
              <t>Parents, independently of their preference for CDS or CDNSKEY, SHOULD require publication of both RRsets, and SHOULD NOT proceed with updating the DS RRset if one is found missing or inconsistent with the other.</t>
            </li>
            <li>
              <t>Registries (or registrars) scanning for CDS/CDNSKEY records SHOULD verify that any published CDS and CDNSKEY records are consistent with each other, and otherwise cancel the update <xref target="I-D.ietf-dnsop-cds-consistency"/>.</t>
            </li>
          </ol>
        </section>
      </section>
    </section>
    <section anchor="analysis">
      <name>Analysis</name>
      <section anchor="analysis_validity">
        <name>Validity Checks and Safety Measures</name>
        <section anchor="continuity-of-resolution">
          <name>Continuity of Resolution</name>
          <t>To maintain the basic resolution function, it is important to avoid the deployment of flawed DS record sets in the parent zone. It is therefore desirable for the Parent to verify that the DS record set resulting from an automated (or even manual) update does not break DNSSEC validation if deployed, and otherwise cancel the update.</t>
          <t>This is best done by</t>
          <ol spacing="normal" type="1"><li>
              <t>verifying that consistent CDS/CDNSKEY responses are served by all of the delegation's nameservers <xref target="I-D.ietf-dnsop-cds-consistency"/>;</t>
            </li>
            <li>
              <t>verifying that the resulting DS RRset does not break the delegation if applied (<xref section="4.1" sectionFormat="comma" target="RFC7344"/>), i.e., that it provides at least one valid path for validators to use (<xref section="5.11" sectionFormat="comma" target="RFC6840"/>). This is the case if there is at least one DS record referencing a key that actually signs the child's DNSKEY RRset, where the digest type and signing algorithm are listed as mandatory ("MUST") in the "Implement for DNSSEC Validation" columns of the relevant IANA registries <xref target="DS-IANA"/> and <xref target="DNSKEY-IANA"/>.</t>
            </li>
          </ol>
          <t>TODO Should checks be done continually? (Why is that the parent's task?) Or on demand, e.g., on a no-op NOTIFY?
Even when no update was requested, it may be worthwhile to occasionally check whether the current DS contents would be accepted today (see Appendix B.1), and communicate any failures without changing the published DS record set.</t>
        </section>
        <section anchor="ttls-and-caching">
          <name>TTLs and Caching</name>
          <t>To further reduce the impact of any misconfigured DS record set — be it from automated or from manual provisioning — the option to quickly roll back the delegation's DNSSEC parameters is of great importance. This is achieved by setting a comparatively low TTL on the DS record set in the parent domain, at the cost of reduced resiliency against nameserver unreachability due to the earlier expiration of cached records. The availability risk can be mitigated by limiting such TTLs to a brief time period after a change to the DS configuration, during which rollbacks are most likely to occur.</t>
          <t>Registries therefore should significantly lower the DS RRset's TTL for some time following an update. Pragmatic values for the reduced TTL value range between 5–15 minutes.  Such low TTLs might be expected to cause increased load on the corresponding authoritative nameservers; however, recent research has demonstrated them to have negligible impact on the overall load of a registry's authoritative nameserver infrastructure <xref target="LowTTL"/>.</t>
          <t>The reduction should be in effect at least until the previous DS record set has expired from caches, that is, the period during which the low-TTL is applied should exceed the normal TTL value. The routine re-signing of the DS RRset (usually after a few days) provides a convenient opportunity for resetting the TTL. When using EPP, the server MAY advertise its TTL policy via the domain <tt>&lt;info&gt;</tt> command described in <xref section="2.1.1.2" sectionFormat="comma" target="I-D.ietf-regext-epp-ttl"/>.</t>
        </section>
      </section>
      <section anchor="analysis_reporting">
        <name>Reporting</name>
        <t>When accepting or rejecting a DS update, it cannot be assumed that relevant parties are aware of what's happening. For example, a registrar may not know when an automatic DS update is performed by the registry. Similarly, a Child DNS operator may not be aware when their CDS/CDNSKEY RRsets are out of sync across nameservers, thus being ignored. Early reporting of such conditions helps involved parties to act appropriately and in a timely manner.</t>
        <t>A delegation can break even without an update request to the DS record set. This may occur during key rollovers (<xref section="4.1" sectionFormat="comma" target="RFC6781"/>) when the Child DNS operator proceeds to the next step early, without verifying that the delegation's DS RRset is in the expected state. For example, when an algorithm rollover is performed and the old signing algorithm is removed from the Child zone before the new DS record is added, validation errors may result.</t>
        <t>Entities performing automated DS maintenance should report on conditions they encounter. The following success situations may be of particular interest:</t>
        <ol spacing="normal" type="1"><li anchor="reporting-1">
            <t>A DS RRset has been provisioned  </t>
            <ol spacing="normal" type="a"><li anchor="reporting-1a">
                <t>manually;</t>
              </li>
              <li anchor="reporting-1b">
                <t>due to commencing DS automation (either via DNSSEC bootstrapping, or for the first time after a manual change; see <xref target="multiple"/>);</t>
              </li>
              <li anchor="reporting-1c">
                <t>automatically, as an update to an existing DS RRset that had itself been automatically provisioned.</t>
              </li>
            </ol>
          </li>
          <li anchor="reporting-2">
            <t>The DS RRset has been removed  </t>
            <ol spacing="normal" type="a"><li>
                <t>manually;</t>
              </li>
              <li>
                <t>automatically, using a delete signal (<xref section="4" sectionFormat="comma" target="RFC8078"/>).</t>
              </li>
            </ol>
          </li>
        </ol>
        <t>In addition, there are error conditions worthy of being reported:</t>
        <ol spacing="normal" type="1" start="3"><li anchor="reporting-3">
            <t>A pending DS update cannot be applied due to an error condition. There are various scenarios where an automated DS update might have been requested, but can't be fulfilled. These include:  </t>
            <ol spacing="normal" type="a"><li>
                <t>The new DS record set would break validation/resolution or is not acceptable to the Parent for some other reason (see <xref target="validity"/>).</t>
              </li>
              <li>
                <t>A lock prevents DS automation (see <xref target="locks"/>).</t>
              </li>
            </ol>
          </li>
          <li anchor="reporting-4">
            <t>No DS update is due, but it was determined that the Child zone is no longer compatible with the existing DS record set (e.g., DS RRset only references non-existing keys).</t>
          </li>
        </ol>
        <t>For these reportworthy cases, the entity performing DS automation would be justified to attempt communicating the situation. Potential recipients are:</t>
        <ul spacing="normal">
          <li>
            <t>Child DNS operator, preferably by making a report query <xref target="RFC9567"/> to the agent domain listed in the EDNS0 Report-Channel option of the DS update notification that triggered the DS update (<xref section="4" sectionFormat="comma" target="I-D.ietf-dnsop-generalized-notify"/>), or alternatively via email to the address contained in the child zone's SOA RNAME field (see Sections <xref target="RFC1035" section="3.3.13" sectionFormat="bare"/> and <xref target="RFC1035" section="8" sectionFormat="bare"/> of <xref target="RFC1035"/>);</t>
          </li>
          <li>
            <t>Registrar (if DS automation is performed by the registry), via EPP (or similar channel);</t>
          </li>
          <li>
            <t>Registrant (domain owner, in non-technical language, such as "DNSSEC security for your domain has been enabled and will be maintained automatically") or technical contact, via email.</t>
          </li>
        </ul>
        <t>For manual updates (<xref target="reporting-1a" format="none">case 1a</xref>), commencing DS automation (<xref target="reporting-1b" format="none">case 1b</xref>), and deactivating DNSSEC (<xref target="reporting-2" format="none">case 2</xref>), it seems worthwhile to notify both the domain's technical contact and the registrant. This will typically lead to one notification during normal operation of a domain. (<xref target="reporting-1c" format="none">Case 1c</xref>, the regular operation of automation, is not an interesting condition to report to a human.)</t>
        <t>For error conditions (cases <xref target="reporting-3" format="none">3</xref> and <xref target="reporting-4" format="none">4</xref>), the registrant need not always be involved. It seems advisable to first notify the domain's technical contact and the DNS operator serving the affected Child zone, and only if the problem persists for a prolonged amount of time (e.g., three days), notify the registrant.</t>
        <t>When the RRR model is used and the registry performs DS automation, the registrar should always stay informed of any DS record changes, e.g., via the EPP Change Poll Extension <xref target="RFC8590"/>.</t>
        <t>The same condition should not be reported unnecessarily frequently to the same recipient (e.g., no more than twice in a row). For example, when CDS and CDNSKEY records are inconsistent and prevent DS initialization, the registrant may be notified twice. Additional notifications may be sent with some back-off mechanism (in increasing intervals).</t>
        <t>The history of DS updates should be kept and, together with the currently active configuration, be made accessible to the registrant (or their designated party) through the customer portal available for domain management.</t>
      </section>
      <section anchor="analysis_locks">
        <name>Registration Locks</name>
        <t>Registries and registrars can set various types of locks for domain registrations, usually upon the registrant's request. An overview of standardized locks is given in <xref section="2.3" sectionFormat="of" target="RFC5731"/>. Some registries may offer additional types of locks whose meaning and set/unset mechanisms are defined according to a proprietary policy.</t>
        <t>While some locks clearly should have no impact on DS automation (such as clientDeleteProhibited / serverDeleteProhibited), other types of locks, in particular "update locks", may be recognized as having an impact on DS automation.</t>
        <section anchor="registry-vs-registrar-lock">
          <name>Registry vs. Registrar Lock</name>
          <t>When a serverUpdateProhibited lock ("registry lock") is in place, there exists an expectation that this lock renders all otherwise updateable registration data immutable. It seems logical to extend this lock to DS updates as well.</t>
          <t>The situation is different when a clientUpdateProhibited lock ("registrar lock") is in place. While protecting against various types of accidental or malicious change (such as unintended changes through the registrar's customer portal), this lock is much weaker than the registry lock, as its security model does not prevent the registrar's (nor the registry's) actions. This is because the clientUpdateProhibited lock can be removed by the registrar without an out-of-band interaction.</t>
          <t>Under such a security model, no tangible security benefit is gained by preventing automated DS maintenance based on a clientUpdateProhibited lock alone, while preventing it would make maintenance needlessly difficult. It therefore seems reasonable not to suspend automation when such a lock is present.</t>
        </section>
        <section anchor="detailed-rationale">
          <name>Detailed Rationale</name>
          <t>Pre-DNSSEC, it was possible for a registration to be set up once, then locked and left alone (no maintenance required). With DNSSEC comes a change to this operational model: the DNSSEC configuration may have to be maintained in order to remain secure and operational. For example, the Child DNS operator may switch to another signing algorithm if the previous one is no longer deemed appropriate, or roll its SEP key for other reasons. Such changes entail updating the delegation's DS records. If authenticated, these operations do not qualify as accidental or malicious change, but as normal and appropriate activity for securing ongoing operation.</t>
          <t>To accommodate key or algorithm rollovers performed by the Child DNS operator, a means for maintaining DS records is needed. It is worth recalling that any properly authenticated DS update request constitutes a legitimate request in the name of the registrant. Further, the resulting DS update is subject to the parent's acceptance checks, and not applied when incompatible with the DNSSEC keys published in the child zone (see <xref target="validity"/>).</t>
          <t>Given that a clientUpdateProhibited lock protects against unintended changes (such as through the customer portal) while not preventing actions done by the registrar (or the registry) themself, the lock is not suitable for defending against actions performed illegitimately by the registrar or registry (e.g., due to compromise). Any attack on the registration data that is feasible in the presence of a registrar lock is also feasible regardless of whether DS maintenance is done automatically; in other words, DS automation is orthogonal to the attack vector that a registrar lock protects against. Considering that automated DS updates are required to be authenticated and validated for correctness, it thus appears that honoring such requests, while in the registrant's interest, comes with no additional associated risk. (Automated DS maintenance may be disabled by requesting a registry lock, if so desired.)</t>
          <t>Suspending automated DS maintenance therefore does not seem justified unless the registration data is locked at the registry level (e.g. when the registrant has explicitly requested a serverUpdateProhibited lock to be set). A registrar lock alone provides insufficient grounds for suspending DS maintenance.</t>
          <t>Following this line of thought, some registries (e.g., .ch/.cz/.li) today perform automated DS maintenance even when an "update lock" is in place. Registries offering proprietary locks should carefully consider for each lock whether its scope warrants suspension.</t>
          <t>In case of a domain not yet secured with DNSSEC, automatic DS initialization is not required to maintain ongoing operation; it might, however, request DNSSEC bootstrapping. In the absence of a registry lock, it is then in the interest of security to enable DNSSEC as requested. The fact that a Child is requesting DS initialization through an authenticated, automated method <xref target="RFC9615"/> expresses the registrant's intent to have the delegation secured. There would be little reason for the registrant to have the corresponding CDS/CDNSKEY records published if not for their request to be acted upon.</t>
          <t>Further, some domains are put into clientUpdateProhibited lock by default. In such cases, not honoring authenticated DS initialization requests imposes an additional burden on the registrant, who has to unlock and relock the domain in order to facilitate DS provisioning after registration. This is a needless cost especially for large domain portfolios. It is also unexpected, given that the registrant already has expressed their intent to have the domain secured to their DNS operator who in turn has published CDS/CDNSKEY records. It therefore appears that DS initialization and rollovers should be treated the same way with respect to locks, and only be suspended while in serverUpdateProhibited lock status.</t>
        </section>
      </section>
      <section anchor="analysis_multiple">
        <name>Multiple Submitting Parties</name>
        <t>In the RRR model, there are multiple channels through which DS parameters can be accepted:</t>
        <ul spacing="normal">
          <li>
            <t>The registry can receive information about an intended DS update automatically from the Child DNS Operator and appply the update directly;</t>
          </li>
          <li>
            <t>The registrar can receive the same and relay it to the registry;</t>
          </li>
          <li>
            <t>Registrars or (less commonly) registries can obtain the information from the registrant via webform submission or other means and relay it to the registry.</t>
          </li>
        </ul>
        <t>There are several considerations in this context, as follows.</t>
        <section anchor="necessity-of-manual-updates">
          <name>Necessity of Manual Updates</name>
          <t>Under special circumstances, it may be necessary to perform a manual DS update. One important example is when the key used by for authentication of DS updates is destroyed: in this case, an automatic key rollover is impossible as the Child DNS operator can no longer authenticate the associated information. Another example is when several providers are involved, but one no longer cooperates (e.g., when removing a provider from a multi-provider setup). Disabling manual DS management interfaces is therefore strongly discouraged.</t>
          <t>Similarly, when the registrar is known to not support DNSSEC (or lack a manual interface), it seems adequate for registries to not perform automated DS maintenance, in order to prevent situations in which a misconfigured delegation cannot be manually recovered by the registrant.</t>
        </section>
        <section anchor="impact-of-manual-updates">
          <name>Impact of Manual Updates</name>
          <t>When a manual DS update is performed in the presence of CDS/CDNSKEY records referencing the previous DS RRset's keys, the delegation's DS records may be reset to their previous state at the next run of the automation process.</t>
          <t>In the past, it has been proposed to suspend DS automation after a manual DS update until some resumption signal is observed, e.g., until after the Child's SOA serial is found to be updated. However, as any arbitrary modification of zone contents — including the regular updating of DNSSEC signature validity timestamps  — typically causes a change in SOA serial, resumption of DS automation after a serial change comes with a high risk of surprise. Additional issues arise if nameservers have different serial offsets (e.g., in a multi-provider setup). It is therefore advised to not follow this practice.</t>
          <t>Note also that "automatic rollback" due to old CDS/CDNSKEY RRsets can only occur if they are signed with a key authorized by one of new DS records. Validity checks described in <xref target="validity"/> further ensure that updates do not break validation.</t>
          <t>All in all, it appears advisable to generally not suspend DS automation when a manual DS update has occurred. An exception from this rule is when the entire DS record set was removed, in which case the registrant likely wants to disable DNSSEC for the domain. DS automation should then be suspended so that automatic re-initialization (bootstrapping) does not occur.</t>
          <t>In all other cases, any properly authenticated DS updates received, including through an automated method, should be considered as the current intent of the domain owner.</t>
        </section>
        <section anchor="concurrent-automatic-updates">
          <name>Concurrent Automatic Updates</name>
          <t>When the RRR model is used, there is a potential for collision if both the registry and the registrar are automating DS provisioning by scanning the child for CDS/CDNSKEY records. No disruptive consequences are expected if both parties perform DS automation. An exception is when during a key rollover, registry and registrar see different versions of the Child's DS update requests, such as when CDS/CDNSKEY records are retrieved from different vantage points. Although unlikely due to Recommendation 1a of <xref target="validity"/>, this may lead to flapping of DS updates; however, it is not expected to be harmful as either DS RRset will allow for the validation function to continue to work, as ensured by Recommendation 1b of <xref target="validity"/>. The effect subsides as the Child's state eventually becomes consistent (roughly, within the child's replication delay); any flapping until then will be a minor nuisance only.</t>
          <t>The issue disappears entirely when scanning is replaced by notifications that trigger DS maintenance through one party's designated endpoint <xref target="I-D.ietf-dnsop-generalized-notify"/>, and can otherwise be mitigated if the registry and registrar agree that only one of them will perform scanning.</t>
          <t>As a standard aspect of key rollovers (RFC 6781), the Child DNS operator is expected to monitor propagation of Child zone updates to all authoritative nameserver instances, and only proceed to the next step once replication has succeeded everywhere and the DS record set was subsequently updated (and in no case before the DS RRset's TTL has passed). Any breakage resulting from improper timing on the Child side is outside of the Parent's sphere of influence, and thus out of scope of DS automation considerations.</t>
        </section>
      </section>
      <section anchor="analysis_dichotomy">
        <name>CDS vs. CDNSKEY</name>
        <t>DS records can be generated from information provided either in DS format (CDS) or in DNSKEY format (CDNSKEY). While the format of CDS records is identical to that of DS records (so the record data be taken verbatim), generation of a DS record from CDNSKEY information involves computing a hash.</t>
        <t>Whether a Parent processes CDS or CDNSKEY records depends on their preference:</t>
        <ul spacing="normal">
          <li>
            <t>Conveying (and storing) CDNSKEY information allows the Parent to control the choice of hash algorithms. The Parent may then unilaterally regenerate DS records with a different choice of hash algorithm(s) whenever deemed appropriate.</t>
          </li>
          <li>
            <t>Conveying CDS information allows the Child DNS operator to control the hash digest type used in DS records, enabling the Child DNS operator to deploy (for example) experimental hash digests and removing the need for registry-side changes when new digest types become available.</t>
          </li>
        </ul>
        <t>The need to make a choice in the face of this dichotomy is not specific to DS automation: even when DNSSEC parameters are relayed to the Parent through conventional channels, the Parent has to make some choice about which format(s) to accept.</t>
        <t>Some registries have chosen to prefer DNSKEY-style input which seemingly comes with greater influence on the delegation's security properties (in particular, the DS hash digest type). It is noted that regardless of the choice of input format, the Parent cannot prevent the Child from following insecure cryptographic practices (such as insecure key storage, or using a key with insufficient entropy). Besides, as the DS format contains a field indicating the hash digest type, objectionable ones (such as those outlawed by <xref target="DS-IANA"/>) can still be rejected even when ingesting CDS records, by inspecting that field.</t>
        <t>The fact that more than one input type needs to be considered burdens both Child DNS operators and Parents with the need to consider how to handle this dichotomy. Until this is addressed in an industry-wide manner and one of these mechanisms is deprecated in favor of the other, both Child DNS operators and Parents implementing automated DS maintenance should act as to maximize interoperability:</t>
        <ul spacing="normal">
          <li>
            <t>As there exists no protocol for Child DNS Operators to discover a Parent's input format preference, it seems best to publish both CDNSKEY as well as CDS records, in line with <xref section="5" sectionFormat="comma" target="RFC7344"/>. The choice of hash digest type should follow current best practice <xref target="DS-IANA"/>.</t>
          </li>
          <li>
            <t>Parents, independently of their input format preference, are advised to require publication of both CDS and CDNSKEY records, and to enforce consistency between them, as determined by matching CDS and CDNSKEY records using hash digest algorithms whose support is mandatory <xref target="DS-IANA"/>. (Consistency of CDS records with optional or unsupported hash digest types is not required.)</t>
          </li>
        </ul>
        <t>Publishing the same information in two different formats is not ideal. Still, it is much less complex and costly than burdening the Child DNS operator with discovering each Parent's policy; also, it is very easily automated. Operators should ensure that published RRsets are consistent with each other.</t>
        <t>By rejecting the DS update if either RRset is found missing or inconsistent with the other, Child DNS operators are held responsible when publishing contradictory information. At the same time, Parents can retain whatever benefit their policy choice carries for them, while facilitating a later revision of that choice. This approach also simplifies possible future deprecation of one of the two formats, as no coordination or implementation changes would be needed on the child side.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This document considers security aspects throughout, and has not separate considerations.</t>
    </section>
    <section anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors would like to thank the SSAC members who wrote the <xref target="SAC126"/> report on which this document is based.</t>
      <t>In order of first contribution or review: Barbara Jantzen</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="DNSKEY-IANA" target="https://www.iana.org/assignments/dns-sec-alg-numbers/dns-sec-alg-numbers.xml#dns-sec-alg-numbers-1">
          <front>
            <title>DNS Security Algorithm Numbers</title>
            <author initials="" surname="IANA" fullname="IANA">
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="DS-IANA" target="http://www.iana.org/assignments/ds-rr-types">
          <front>
            <title>Delegation Signer (DS) Resource Record (RR) Type Digest Algorithms</title>
            <author initials="" surname="IANA" fullname="IANA">
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="RFC7344">
          <front>
            <title>Automating DNSSEC Delegation Trust Maintenance</title>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <author fullname="O. Gudmundsson" initials="O." surname="Gudmundsson"/>
            <author fullname="G. Barwood" initials="G." surname="Barwood"/>
            <date month="September" year="2014"/>
            <abstract>
              <t>This document describes a method to allow DNS Operators to more easily update DNSSEC Key Signing Keys using the DNS as a communication channel. The technique described is aimed at delegations in which it is currently hard to move information from the Child to Parent.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7344"/>
          <seriesInfo name="DOI" value="10.17487/RFC7344"/>
        </reference>
        <reference anchor="RFC8078">
          <front>
            <title>Managing DS Records from the Parent via CDS/CDNSKEY</title>
            <author fullname="O. Gudmundsson" initials="O." surname="Gudmundsson"/>
            <author fullname="P. Wouters" initials="P." surname="Wouters"/>
            <date month="March" year="2017"/>
            <abstract>
              <t>RFC 7344 specifies how DNS trust can be maintained across key rollovers in-band between parent and child. This document elevates RFC 7344 from Informational to Standards Track. It also adds a method for initial trust setup and removal of a secure entry point.</t>
              <t>Changing a domain's DNSSEC status can be a complicated matter involving multiple unrelated parties. Some of these parties, such as the DNS operator, might not even be known by all the organizations involved. The inability to disable DNSSEC via in-band signaling is seen as a problem or liability that prevents some DNSSEC adoption at a large scale. This document adds a method for in-band signaling of these DNSSEC status changes.</t>
              <t>This document describes reasonable policies to ease deployment of the initial acceptance of new secure entry points (DS records).</t>
              <t>It is preferable that operators collaborate on the transfer or move of a domain. The best method is to perform a Key Signing Key (KSK) plus Zone Signing Key (ZSK) rollover. If that is not possible, the method using an unsigned intermediate state described in this document can be used to move the domain between two parties. This leaves the domain temporarily unsigned and vulnerable to DNS spoofing, but that is preferred over the alternative of validation failures due to a mismatched DS and DNSKEY record.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8078"/>
          <seriesInfo name="DOI" value="10.17487/RFC8078"/>
        </reference>
        <reference anchor="RFC9615">
          <front>
            <title>Automatic DNSSEC Bootstrapping Using Authenticated Signals from the Zone's Operator</title>
            <author fullname="P. Thomassen" initials="P." surname="Thomassen"/>
            <author fullname="N. Wisiol" initials="N." surname="Wisiol"/>
            <date month="July" year="2024"/>
            <abstract>
              <t>This document introduces an in-band method for DNS operators to publish arbitrary information about the zones for which they are authoritative, in an authenticated fashion and on a per-zone basis. The mechanism allows managed DNS operators to securely announce DNSSEC key parameters for zones under their management, including for zones that are not currently securely delegated.</t>
              <t>Whenever DS records are absent for a zone's delegation, this signal enables the parent's registry or registrar to cryptographically validate the CDS/CDNSKEY records found at the child's apex. The parent can then provision DS records for the delegation without resorting to out-of-band validation or weaker types of cross-checks such as "Accept after Delay".</t>
              <t>This document establishes the DS enrollment method described in Section 4 of this document as the preferred method over those from Section 3 of RFC 8078. It also updates RFC 7344.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9615"/>
          <seriesInfo name="DOI" value="10.17487/RFC9615"/>
        </reference>
        <reference anchor="RFC9364">
          <front>
            <title>DNS Security Extensions (DNSSEC)</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="February" year="2023"/>
            <abstract>
              <t>This document describes the DNS Security Extensions (commonly called "DNSSEC") that are specified in RFCs 4033, 4034, and 4035, as well as a handful of others. One purpose is to introduce all of the RFCs in one place so that the reader can understand the many aspects of DNSSEC. This document does not update any of those RFCs. A second purpose is to state that using DNSSEC for origin authentication of DNS data is the best current practice. A third purpose is to provide a single reference for other documents that want to refer to DNSSEC.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="237"/>
          <seriesInfo name="RFC" value="9364"/>
          <seriesInfo name="DOI" value="10.17487/RFC9364"/>
        </reference>
        <reference anchor="I-D.ietf-dnsop-generalized-notify">
          <front>
            <title>Generalized DNS Notifications</title>
            <author fullname="Johan Stenstam" initials="J." surname="Stenstam">
              <organization>The Swedish Internet Foundation</organization>
            </author>
            <author fullname="Peter Thomassen" initials="P." surname="Thomassen">
              <organization>deSEC, Secure Systems Engineering</organization>
            </author>
            <author fullname="John R. Levine" initials="J. R." surname="Levine">
              <organization>Standcore LLC</organization>
            </author>
            <date day="19" month="March" year="2025"/>
            <abstract>
              <t>   This document generalizes and extends the use of DNS NOTIFY (RFC
   1996) beyond conventional zone transfer hints, to allow triggering
   other types of actions via the DNS that were previously lacking a
   trigger mechanism.  Notifications merely nudge the receiver to
   initiate a predefined action promptly (instead of on a schedule);
   they do not alter the action itself (including any security checks it
   might employ).

   To enable this functionality, a method for discovering the receiver
   endpoint for such notification messages is introduced, via the new
   DSYNC record type.  Notification types are recorded in a new
   registry, with initial support for parental NS and DS record updates
   including DNSSEC bootstrapping.

   TO BE REMOVED: This document is being collaborated on in Github at:
   https://github.com/peterthomassen/draft-ietf-dnsop-generalized-notify
   (https://github.com/peterthomassen/draft-ietf-dnsop-generalized-
   notify).  The most recent working version of the document, open
   issues, etc. should all be available there.  The authors (gratefully)
   accept pull requests.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-dnsop-generalized-notify-09"/>
        </reference>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC9567">
          <front>
            <title>DNS Error Reporting</title>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="M. Larson" initials="M." surname="Larson"/>
            <date month="April" year="2024"/>
            <abstract>
              <t>DNS error reporting is a lightweight reporting mechanism that provides the operator of an authoritative server with reports on DNS resource records that fail to resolve or validate. A domain owner or DNS hosting organization can use these reports to improve domain hosting. The reports are based on extended DNS errors as described in RFC 8914.</t>
              <t>When a domain name fails to resolve or validate due to a misconfiguration or an attack, the operator of the authoritative server may be unaware of this. To mitigate this lack of feedback, this document describes a method for a validating resolver to automatically signal an error to a monitoring agent specified by the authoritative server. The error is encoded in the QNAME; thus, the very act of sending the query is to report the error.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9567"/>
          <seriesInfo name="DOI" value="10.17487/RFC9567"/>
        </reference>
        <reference anchor="RFC8590">
          <front>
            <title>Change Poll Extension for the Extensible Provisioning Protocol (EPP)</title>
            <author fullname="J. Gould" initials="J." surname="Gould"/>
            <author fullname="K. Feher" initials="K." surname="Feher"/>
            <date month="May" year="2019"/>
            <abstract>
              <t>This document describes an Extensible Provisioning Protocol (EPP) extension for notifying clients of operations on client-sponsored objects that were not initiated by the client through EPP. These operations may include contractual or policy requirements including, but not limited to, regular batch processes, customer support actions, Uniform Domain-Name Dispute-Resolution Policy (UDRP) or Uniform Rapid Suspension (URS) actions, court-directed actions, and bulk updates based on customer requests. Since the client is not directly involved or knowledgable of these operations, the extension is used along with an EPP object mapping to provide the resulting state of the postoperation object, and optionally a preoperation object, with the operation metadata of what, when, who, and why.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8590"/>
          <seriesInfo name="DOI" value="10.17487/RFC8590"/>
        </reference>
        <reference anchor="I-D.ietf-dnsop-cds-consistency">
          <front>
            <title>Clarifications on CDS/CDNSKEY and CSYNC Consistency</title>
            <author fullname="Peter Thomassen" initials="P." surname="Thomassen">
              <organization>SSE - Secure Systems Engineering GmbH</organization>
            </author>
            <date day="9" month="April" year="2025"/>
            <abstract>
              <t>   Maintenance of DNS delegations requires occasional changes of the DS
   and NS record sets on the parent side of the delegation.  For the
   case of DS records, RFC 7344 provides automation by allowing the
   child to publish CDS and/or CDNSKEY records holding the prospective
   DS parameters which the parent can ingest.  Similarly, RFC 7477
   specifies CSYNC records to indicate a desired update of the
   delegation's NS (and glue) records.  Parent-side entities (e.g.
   Registries, Registrars) can query these records from the child and,
   after validation, use them to update the parent-side RRsets of the
   delegation.

   This document specifies that when performing such queries, parent-
   side entities MUST ensure that updates triggered via CDS/CDNSKEY and
   CSYNC records are consistent across the child's authoritative
   nameservers, before taking any action based on these records.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-dnsop-cds-consistency-06"/>
        </reference>
        <reference anchor="RFC1035">
          <front>
            <title>Domain names - implementation and specification</title>
            <author fullname="P. Mockapetris" initials="P." surname="Mockapetris"/>
            <date month="November" year="1987"/>
            <abstract>
              <t>This RFC is the revised specification of the protocol and format used in the implementation of the Domain Name System. It obsoletes RFC-883. This memo documents the details of the domain name client - server communication.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="13"/>
          <seriesInfo name="RFC" value="1035"/>
          <seriesInfo name="DOI" value="10.17487/RFC1035"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="LowTTL" target="https://indico.dns-oarc.net/event/47/contributions/1010/attachments/958/1811/DS%20and%20DNSKEY%20TTL%20experiment.pdf">
          <front>
            <title>DS and DNSKEY low TTL experiments</title>
            <author initials="P." surname="Špaček" fullname="Petr Špaček">
              <organization>ISC</organization>
            </author>
            <date year="2023" month="September" day="06"/>
          </front>
          <seriesInfo name="at" value="DNS OARC 41"/>
        </reference>
        <reference anchor="EPPstatuscodes" target="https://www.icann.org/resources/pages/epp-status-codes-2014-06-16-en">
          <front>
            <title>EPP Status Codes | What Do They Mean, and Why Should I Know?</title>
            <author initials="P." surname="Špaček" fullname="Petr Špaček">
              <organization>ISC</organization>
            </author>
            <date year="2023" month="September" day="06"/>
          </front>
        </reference>
        <reference anchor="SAC126" target="https://itp.cdn.icann.org/en/files/security-and-stability-advisory-committee-ssac-reports/sac-126-16-08-2024-en.pdf">
          <front>
            <title>SAC126: DNSSEC Delegation Signer (DS) Record Automation</title>
            <author initials="I. S. and S. A. C." surname="(SSAC)" fullname="ICANN Security and Stability Advisory Committee (SSAC)">
              <organization/>
            </author>
            <date year="2024" month="August" day="12"/>
          </front>
        </reference>
        <reference anchor="RFC6840">
          <front>
            <title>Clarifications and Implementation Notes for DNS Security (DNSSEC)</title>
            <author fullname="S. Weiler" initials="S." role="editor" surname="Weiler"/>
            <author fullname="D. Blacka" initials="D." role="editor" surname="Blacka"/>
            <date month="February" year="2013"/>
            <abstract>
              <t>This document is a collection of technical clarifications to the DNS Security (DNSSEC) document set. It is meant to serve as a resource to implementors as well as a collection of DNSSEC errata that existed at the time of writing.</t>
              <t>This document updates the core DNSSEC documents (RFC 4033, RFC 4034, and RFC 4035) as well as the NSEC3 specification (RFC 5155). It also defines NSEC3 and SHA-2 (RFC 4509 and RFC 5702) as core parts of the DNSSEC specification.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6840"/>
          <seriesInfo name="DOI" value="10.17487/RFC6840"/>
        </reference>
        <reference anchor="I-D.ietf-regext-epp-ttl">
          <front>
            <title>Extensible Provisioning Protocol (EPP) mapping for DNS Time-To-Live (TTL) values</title>
            <author fullname="Gavin Brown" initials="G." surname="Brown">
              <organization>ICANN</organization>
            </author>
            <date day="7" month="January" year="2025"/>
            <abstract>
              <t>   This document describes an extension to the Extensible Provisioning
   Protocol (EPP) that allows EPP clients to manage the Time-To-Live
   (TTL) value for domain name delegation records.

About this draft

   This note is to be removed before publishing as an RFC.

   The source for this draft, and an issue tracker, may can be found at
   https://github.com/gbxyz/epp-ttl-extension.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-regext-epp-ttl-18"/>
        </reference>
        <reference anchor="RFC6781">
          <front>
            <title>DNSSEC Operational Practices, Version 2</title>
            <author fullname="O. Kolkman" initials="O." surname="Kolkman"/>
            <author fullname="W. Mekking" initials="W." surname="Mekking"/>
            <author fullname="R. Gieben" initials="R." surname="Gieben"/>
            <date month="December" year="2012"/>
            <abstract>
              <t>This document describes a set of practices for operating the DNS with security extensions (DNSSEC). The target audience is zone administrators deploying DNSSEC.</t>
              <t>The document discusses operational aspects of using keys and signatures in the DNS. It discusses issues of key generation, key storage, signature generation, key rollover, and related policies.</t>
              <t>This document obsoletes RFC 4641, as it covers more operational ground and gives more up-to-date requirements with respect to key sizes and the DNSSEC operations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6781"/>
          <seriesInfo name="DOI" value="10.17487/RFC6781"/>
        </reference>
        <reference anchor="RFC5731">
          <front>
            <title>Extensible Provisioning Protocol (EPP) Domain Name Mapping</title>
            <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
            <date month="August" year="2009"/>
            <abstract>
              <t>This document describes an Extensible Provisioning Protocol (EPP) mapping for the provisioning and management of Internet domain names stored in a shared central repository. Specified in XML, the mapping defines EPP command syntax and semantics as applied to domain names. This document obsoletes RFC 4931. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="69"/>
          <seriesInfo name="RFC" value="5731"/>
          <seriesInfo name="DOI" value="10.17487/RFC5731"/>
        </reference>
        <reference anchor="RFC5730">
          <front>
            <title>Extensible Provisioning Protocol (EPP)</title>
            <author fullname="S. Hollenbeck" initials="S." surname="Hollenbeck"/>
            <date month="August" year="2009"/>
            <abstract>
              <t>This document describes an application-layer client-server protocol for the provisioning and management of objects stored in a shared central repository. Specified in XML, the protocol defines generic object management operations and an extensible framework that maps protocol operations to objects. This document includes a protocol specification, an object mapping template, and an XML media type registration. This document obsoletes RFC 4930. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="69"/>
          <seriesInfo name="RFC" value="5730"/>
          <seriesInfo name="DOI" value="10.17487/RFC5730"/>
        </reference>
      </references>
    </references>
    <?line 400?>

<section anchor="terminology">
      <name>Terminology</name>
      <t>Unless defined in this section, the terminology in this document is as defined in <xref target="RFC7344"/>.</t>
      <dl>
        <dt>Child zone:</dt>
        <dd>
          <t>DNS zone whose delegation is in the Parent zone.</t>
        </dd>
        <dt>Child (DNS operator):</dt>
        <dd>
          <t>DNS operator responsible for a Child zone.</t>
        </dd>
        <dt>DNS operator:</dt>
        <dd>
          <t>The entity holding the zone's primary copy before it is signed. Typically a DNS hosting provider in the domain owner's name, it controls the authoritative contents and delegations in the zone, and is thus operationally responsible for maintaining the "purposeful" records in the zone file (such as IP address, MX, or CDS/CDNSKEY records).
The parties involved in other functions for the zone, like signing and serving, are not relevant for this definition.</t>
        </dd>
        <dt>Parent zone:</dt>
        <dd>
          <t>DNS zone that holds a delegation for a Child zone.</t>
        </dd>
        <dt>Parent (DNS operator):</dt>
        <dd>
          <t>The DNS operator responsible for a Parent zone, and thus involved with the maintenance of the delegation's DNSSEC parameters (in particular, the acceptance of these parameters and the publication of corresponding DS records).</t>
        </dd>
        <dt>Registrant:</dt>
        <dd>
          <t>The entity responsible for records associated with a particular domain name in a domain name registry (typically under a TLD such as .com or an SLD such as co.uk). When the RRR model is used, the registrant maintains these records through a registrar who acts as an intermediary for both the registry and the registrant.</t>
        </dd>
        <dt>Registrar:</dt>
        <dd>
          <t>An entity through which registrants register domain names; the registrar performs this service by interacting directly with the registry in charge of the domain's suffix. A registrar may also provide other services such as DNS service or web hosting for the registrant. In some cases, the registry directly offers registration services to the public, that is, the registry may also perform the registrar function.</t>
        </dd>
        <dt>Registry:</dt>
        <dd>
          <t>The entity that controls the registry database and authoritative DNS service of domain names registered under a particular suffix, for example a top-level domain (TLD). A registry receives requests through an interface (usually EPP <xref target="RFC5730"/>) from registrars to read, add, delete, or modify domain name registrations, and then makes the requested changes in the registry database and associated DNS zone.</t>
        </dd>
        <dt>RRR Model:</dt>
        <dd>
          <t>The registrant-registrar-registry interaction framework, where registrants interact with a registrar to register and manage domain names, and registrars interact with the domain's registry for the provision and management of domain names on the registrant's behalf. This model is common amongst top-level domains.</t>
        </dd>
      </dl>
    </section>
    <section anchor="approaches-not-pursued">
      <name>Approaches not pursued</name>
      <section anchor="validity-checks-and-safety-measures">
        <name>Validity Checks and Safety Measures</name>
        <section anchor="ttls-and-caching-1">
          <name>TTLs and Caching</name>
          <t>It is not necessary to equally reduce the old DS RRset's TTL before applying a change. If this were done, the rollover itself would have to be delayed without any apparent benefit. With the goal of enabling timely withdrawal of a botched DS RRset, it is not equally important for the previous (functional) DS RRset to be abandoned very quickly. In fact, not reducing the old DS TTL has the advantage of providing some resiliency against a botched DS update, as clients would continue to use the previous DS RRset according to its normal TTL, and the broken RRset could be withdrawn without some of them ever seeing it. Wrong DS RRsets will then only gradually impact clients, minimizing impact overall.</t>
        </section>
      </section>
    </section>
    <section anchor="change-history-to-be-removed-before-publication">
      <name>Change History (to be removed before publication)</name>
      <ul spacing="normal">
        <li>
          <t>draft-shetho-dnsop-ds-automation-00</t>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <t>Initial public draft.</t>
        </li>
      </ul>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA8V965LbWJLefz4FXB2OLjpIVpUufSntjLa6pN7Rbksqq9TT
nnA4vCAAkhiBAAcHKIpdroh9Af+yH2CfxWG/yD6J88vMcwNZJXW7O7wb0VMi
CeCcPHnPLxPT6XTUlV1VnCffFaZLrto068qsSN4VWbNeF3WedmVTm2TRtMmL
6+Si75o1fzRK5/O2uDkffJo3WZ2u6XZ5my66qVkV3aqZ5rVpNtPcTFP3y+np
6YhuTr+8fXHx/uXdyHRtka7Pk1cv338/yuibZdPuzpN5thmNyk17nnRtb7pH
p6ffnj4apfRb+mndFW1ddKNt035Ytk2/oeW8uX57lfxEH5T1MvkHfDj6UOzo
F7m/YPoCqxuNaPmPR5vyPPnPXZNNEtO0tIiFob92a/zxX0YjWvGqac9HyXSU
0P+VtTlPrmfJ9aqol/yJbPe6K26K4NNinZbVeWLw8czg479f4qMZkTW619Us
eb8imhhT1MH9rgpa6eCbpl0SXYvrl5fhIzb45d/nhSmyWdmMRnXTgsI3Ba0Z
1Pinl3+Zvrp4c3HOF3Vpuyy68+Ro1XUbc35yst1uZ2VapzO6+wk9q1zWdOyd
OaEzm9I9p2m1nNb9el60Bz+bfVxXXxz4fHp2JA8U7qKFJNdF1rdlt0suKjrb
slutkzfyY/6lo3TiyYCFYxvX923hwR2YadtOu92mMPFaiqpYMhMm1/RjovPx
i+sxsbxp+lZ5v82T43fvxsl7ujp5US4hHG7Zn1jvqKwX4SH80Gzfv/8hXrwl
f1nnZdbMQMAmbbMZMecJsUzdnTz5+iRr6q4t5z2L4MnZ6dnpSdp1abaS/X37
9JuTs2/Ozk5eXP/7R6dpndN/5cDpD3oi/bf4uCnaEj+fbfJFSIQjklu6RDkk
qZptQpck/gKlWbzLqf5vwKZt8n/+dZP+7/9efHDfMaO+uhY2FSF/dPro8fT0
2+npV/yhoYcUBnSyd047YZK3F+8ukydn9OnLqyvTpV1vsoa4+zD5+OyztK75
8Fs9QXOySenETorNZiq3mPI9po9Oz57QEqZnX01Vpiw16GEkw/hpcomfJv8t
+WmVdsmLhoSw2CWvi7SeMMF+Wu1Izpu+ypNXyT/Vzfb570eo64vLs0df3cM5
3WaW5XWw/aI+WZQV7duooE1pvSDAvKz4X/lNSSpuN4VqL7uuKKbGpNm0LTak
+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

-->

</rfc>
