<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.6.21 (Ruby 3.0.2) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

<!ENTITY RFC4033 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4033.xml">
<!ENTITY RFC4035 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4035.xml">
<!ENTITY RFC7646 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7646.xml">
<!ENTITY RFC2119 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC8174 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
<!ENTITY RFC5011 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5011.xml">
<!ENTITY RFC8145 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8145.xml">
<!ENTITY RFC7583 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7583.xml">
<!ENTITY RFC6781 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6781.xml">
<!ENTITY I-D.ietf-dnsop-ns-revalidation SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-dnsop-ns-revalidation.xml">
<!ENTITY RFC8247 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8247.xml">
<!ENTITY RFC8221 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8221.xml">
<!ENTITY RFC8624 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8624.xml">
<!ENTITY RFC8914 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8914.xml">
<!ENTITY RFC6975 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6975.xml">
<!ENTITY RFC7958 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7958.xml">
<!ENTITY RFC7598 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7598.xml">
<!ENTITY I-D.ietf-dnsop-rfc5011-security-considerations SYSTEM "https://bib.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-dnsop-rfc5011-security-considerations.xml">
]>

<?rfc rfcedstyle="yes"?>
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<?rfc docmapping="yes"?>

<rfc ipr="trust200902" docName="draft-ietf-dnsop-dnssec-validator-requirements-02" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="DRO Recommendations">Recommendations for DNSSEC Resolvers Operators</title>

    <author initials="D." surname="Migault" fullname="Daniel Migault">
      <organization>Ericsson</organization>
      <address>
        <postal>
          <street>8275 Trans Canada Route</street>
          <city>Saint Laurent, QC</city>
          <code>4S 0B6</code>
          <country>Canada</country>
        </postal>
        <email>daniel.migault@ericsson.com</email>
      </address>
    </author>
    <author initials="D." surname="York" fullname="Dan York">
      <organization>ISOC</organization>
      <address>
        <postal>
          <street></street>
          <city></city>
          <code></code>
          <country></country>
        </postal>
        <email>york@isoc.org</email>
      </address>
    </author>

    <date year="2023" month="January" day="24"/>

    <area>operational</area>
    <workgroup>dnsop</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>The DNS Security Extensions (DNSSEC) define a process for validating received
data and assert them authentic and complete as opposed to
forged.</t>

<t>This document clarifies the scope and responsibilities of
DNSSEC Resolver Operators (DRO) as well as operational recommendations
that DNSSEC validators operators SHOULD put in place in order to
implement sufficient trust that makes DNSSEC validation output accurate.
The recommendations described in this document include, provisioning
mechanisms as well as monitoring and management mechanisms.</t>



    </abstract>



  </front>

  <middle>


<section anchor="sec-intro"><name>Introduction</name>

<t>The purpose of a DNSSEC Resolver Operator (DRO) is to provide DNSSEC validation in to their users.</t>

<t>By validating with DNSSEC a received Resource Record Set (RRset), the resolver provides a high level of certainty that the information carried by the RRset is effectively as published by the legitimate owner of the RRset. 
The act of DNSSEC validation <xref target="RFC4033"/><xref target="RFC4035"/> can be broken into two part: A <em>Signature Validation</em> which binds the RRset to a private key as well as <em>Trust</em> in the owner of the private being the legitimate owner.</t>

<t>Signature Validation consists in checking the cryptographic signature of a RRset and involves among other parameters a DNSKEY Resource Record (RR) and RRSIG RR and the RRset itself. 
The signature validation process results in designating the owner of the RRset as the owner of the corresponding private part of the public key contained in the DNSKEY RR. 
Cryptography provides a high level of confidence in the binding to the private key. 
In that sense, a rogue RRset likely results from the private key being exposed or guessed -- as opposed to signature or key collisions for example.
As such differ the confidence into the Trust to designate which DNSKEY RR is legitimate.</t>

<t>Trust implicitly assumes the private keys used to sign are not shared and as such can be associated their respective owners.
The purpose of Trust is to put significant confidence into designating the legitimate DNSKEY RR - which also characterizes the corresponding private key. 
Such trust is provided by a Trust Anchor (TA), and the chain of trust established between the TA and the DNSKEY RR. 
The chain of trust is obtained by recursively validating the DNSKEY RRs.</t>

<t>As a result, such trust results from the trust placed in the TA as well as the delegation mechanism provided by DNSSEC and the Signature Validation. 
As TAs need to be managed over time, the trust also concerns the management procedure of the TA. 
This is the main concern of this document.</t>

<t>Data's authenticity and integrity is tied to the operator of the key that generates the signature.<br />
It is conceivable that a validator could "know" the keys of each data source, but this is not practical at large scale.
To counter this, DNSSEC relied on securely chaining keys in a manner isomorphic to the way names are delegated.<br />
Keys for a name will "vouch for" keys at a name delegated via the signing of a DS resource record set.</t>

<t>Using keys to vouch for keys, recursively, works when a manageable set of key to name associations are determined to be "trusted" - and are called trust anchors. 
In DNSSEC, a validator needs one or more Trust Anchors from which to grow chains of verified keys.</t>

<t>With operational experience, a twist has emerged.
More often, to date, failed validation is due to operator error or software bug <xref target="ENT"/> and not an attempt to forge data.
In general badly signed RRsets or zone badly delegated are out of scope of the DRO's responsibility. 
However, the DRO may reflect this operational error with a temporary solution designated as Negative Trust Anchors (NTA) <xref target="RFC7646"/>. 
A NTA instructs a validator to ignore the presence of keys for a name, reacting as if the name is unsigned.</t>

<t>Once accurately validated the RRset is assumed to be accurately validated and trusted during the time indicated by its TTL.</t>

<t>The responsibilities of a DRO are limited to the management of TAs as well as providing the necessary infrastructure to perform the signature validation, e.g. appropriated libraries and time. 
More specifically, badly signed zones or insertion of malicious DNSKEY fall out of the DRO's responsibilities. 
Even though these threats fall out of these responsibilities, a DRO may collaborate with authoritative servers to limit the damage of their operational errors.</t>

<t>This document is focused on operational recommendations that a DRO SHOULD put in place in order to implement sufficient trust that makes DNSSEC validation output accurate. 
The recommendations described in this document include provisioning mechanisms as well as monitoring and management mechanisms.</t>

<t>The mechanisms provided are designed in accordance of the DNSSEC trust model as to meet the current operations of DNSSEC. 
Such trust model is briefly recapped in <xref target="sec-dnssec-val-desc"/> so operators understand the limits and motivations for such mechanisms.</t>

</section>
<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.</t>

</section>
<section anchor="terminology"><name>Terminology</name>

<t>This document uses the following terminology:</t>

<dl>
  <dt>DNSSEC validator:</dt>
  <dd>
    <t>the entity that performs DNS resolution and performs signature
validation.</t>
  </dd>
  <dt>Accurate validation:</dt>
  <dd>
    <t>validation that avoids false positives and catches true negatives.</t>
  </dd>
  <dt>Trust Anchor Data Store:</dt>
  <dd>
    <t>a module (of code) implementing functions related to the trust anchors
used by the validator.  This is essentially a database allowing access,
monitoring of, and changes to trust anchors.</t>
  </dd>
  <dt>DNSSEC Resolver Operator (DRO):</dt>
  <dd>
    <t>The operator providing DNSSEC validation service and managing DNSSEC
validators</t>
  </dd>
</dl>

</section>
<section anchor="sec-dnssec-val-desc"><name>DNSSEC Validator Description</name>

<t>This is a conceptual block diagram of the elements involved with DNSSEC validation. 
This is not meant to be an architecture for code, this is meant to be a framework for discussion and explanation.</t>

<figure title="DNSSEC Validator Description"><sourcecode type="aaasvg"><![CDATA[
    +-------------+  +---------------+
    |             |  |               |
    | Time Source |  | Cryptographic |
    |             |  |   Libraries   |
    |             |  |               |
    +-------------+  +---------------+
           |                 |
           v                 v
    +--------------------------------+   +--------------+
    |                                |   |              |
    |                                |<--| Trust Anchor |
    |    DNSSEC Validation Engine    |   |   Manager &  |
    |                                |-->|   Storage    |
    |                                |   |              |
    +--------------------------------+   +--------------+
          ^ |               ^                   |
          | v               |                   |
    +-------------+  +---------------+          |
    |             |  |               |          |
    | DNS Caches  |  | DNS Messages  |<---------+
    |             |  |               |
    +-------------+  +---------------+
]]></sourcecode></figure>

<dl>
  <dt>Time Source:</dt>
  <dd>
    <t>The wall clock time provides the DNSSEC Validation Engine the current time. 
Time is one input used to validate the RRSIG Signature and Inception Fields to provide some protection against replay attacks.</t>
  </dd>
  <dt>Cryptograhic Libraries:</dt>
  <dd>
    <t>The code performing the cryptographic functions providing the DNSSEC Validation Engine the ability to check the Signature Field that contains the cryptographic signature covering the RRSIG RDATA.</t>
  </dd>
  <dt>DNS Message:</dt>
  <dd>
    <t>DNS responses are used to carry the information from the DNS system.
The receiver of the DNS message can be any kind of application including DNS-related application such as in the case of automated Trust Anchor update performed by the Trust Anchor Manager &amp; Storage. 
The DNSSEC Validator Engine accurately validates the DNS responses before caching them in the DNS Cache and forwarding them to the DNS receiver. 
In case of validation failure, an error is returned and the information may be negatively cached.</t>
  </dd>
  <dt>DNS Caches:</dt>
  <dd>
    <t>Include positive and negative caches. 
The DNSSEC Validation Engine fills DNS Caches with validated DNS RRsets.
The DNSSEC trust model considers that once a RRset has been accurately validated by the DNSSEC Validator Engine, the RRset is considered trusted (or untrusted) for its associated TTL. 
DNS Caches contain RRsets that may contain information requested by the application (RRset of type AAAA for example) as well as RRset necessary to accurately validate the RRsets (RRsets of type DNSKEY or RRSIG for example). 
This can also include RRsets that were not DNSSEC signed at validation time.</t>
  </dd>
  <dt>Trust Anchor Manager:</dt>
  <dd>
    <t>The database of trust anchors associated to database management processes. 
This function provides the DNSSEC Validation Engine Trust Anchor information when needed. 
When a TA needs to be updated, the Trust Anchor Manager is also responsible for handling the update procedure.
This includes sending DNS Messages as well as treating appropriately the DNS responses that have been accurately validated by the DNSSEC Validator Engine.<br />
This will require the DNSSEC Validator to update Trust Anchor information, whether via methods like Automated Updates of DNSSEC Trust Anchors <xref target="RFC5011"/>, management of Negative Trust Anchors, or other, possibly not yet defined, means.</t>
  </dd>
  <dt>DNSSEC Validation Engine:</dt>
  <dd>
    <t>This follows local policy to approve data. The approved data is returned to the requesting application as well as to the DNS Caches. 
While the cryptographic computation of the RRSIG signature may be the most visible step, the RRSIG record also contains other information intended to help the validator perform its work, in some cases sanity checks are performed.
For instance, the original TTL (needed to prepare the RR set for validation) ought to be equal to or higher than the received TTL.</t>
  </dd>
</dl>

<t>Not shown - Name Server Process Management interfaces to elements, handling of Checking Disabled request, responses, as well as all API requests made of the name server.</t>

</section>
<section anchor="recommendations-categories"><name>Recommendations Categories</name>

<t>A DRO needs to be able to enable DNSSEC validation with sufficient confidence they will not be held responsible in case their resolver does not validate the DNSSEC response. 
The minimization of these risks is provided by setting automated procedures, when a resolver is started or while it is operating, as well as some on-demand operations that enable the DRO to perform a specific operation. 
The recommendations do not come with the same level of recommendations and some are likely to be required.
Others are optional and may be followed by more advanced DROs.
It is up to the DRO to determine their applicability.</t>

<t>Regarding recommendations on the behavior of the resolver, some recommendations may already be applied by default by the operated resolver software, in which case the DRO does not have to perform any action. 
Some recommendations may require to be activated via configuration by the DRO. <br />
Some recommendations may simply not be provided by the operated software, in which case we recommend the DRO to contact the software vendor for further discussion.</t>

<t>The recommendations are voluntary restrictive to prevent side effects of interventions that will be hard to predict, debug and understand.</t>

<t>The RECOMMENDATIONS in this document are subdivided into the following
categories:</t>

<dl>
  <dt>Start-up recommendations (STARTUP):</dt>
  <dd>
    <t>which describes RECOMMENDED operations the DRO is expected to perform when the resolver is started. 
These operations typically include health checks of the infrastructure the resolver is instantiated on as well as configuration check.</t>
  </dd>
  <dt>Run time recommendations (RUNTIME):</dt>
  <dd>
    <t>which describes RECOMMENDED operations the DRO is expected to perform on its running resolvers.
These operations typically include health checks of the infrastructure as well as the resolvers.</t>
  </dd>
  <dt>On demand recommendations (ONDEMAND):</dt>
  <dd>
    <t>which describes the RECOMMENDED operations a DRO may perform. 
This includes the ability to operate health checks at a given time as well as specific operations such as flushing the cache. 
The reason this document mentions these recommendations is to enable DROs to have the appropriates tools as well as to restrict their potential interventions.</t>
  </dd>
</dl>

</section>
<section anchor="time-deviation-and-absence-of-real-time-clock-recommendations"><name>Time deviation and absence of Real Time Clock Recommendations</name>

<t>With M2M communication some devices are not expected to embed Real Time Clock (Raspberry Pi is one example of such devices). 
With Raspberry Pi for example, when these devices are re-plugged their time is reset to some initial values like (January 1, 1970 for example) until they get re synchronized  via NTP.
Other devices that have clocks  may suffer from time deviation.
These devices cannot rely on their time estimation to perform DNSSEC validation.</t>

<t>Time synchronization may be performed manually, but for the sake of operations it is strongly RECOMMENDED to automate the time synchronization on each resolver.</t>

<t>STARTUP:</t>

<t><list style="symbols">
  <t>A DRO MUST provide a mean to update the time without relying on DNSSEC when the DNSSEC validator is started. 
The resolver MUST NOT start if the time synchronization does not succeed at start time.</t>
</list></t>

<t>Note that updating time in order to be able to perform DNSSEC validation may become a form of a chicken and egg problem when the NTP server is designated by its FQDN.
The update mechanism must consider the DNSSEC validator may not able to validate the DNSSEC queries.<br />
In other words, the mechanisms may have to update the time over an unsecure DNSSEC resolution.</t>

<t>RUNTIME:</t>

<t><list style="symbols">
  <t>While operating, a DRO MUST closely monitor time derivations of the resolvers and maintain the time synchronized.</t>
</list></t>

<t>ONDEMAND:</t>

<t><list style="symbols">
  <t>A DRO SHOULD be able to check and synchronize, on demand, the time of the system of its resolver.</t>
</list></t>

<t>Note that time synchronization is a sensible operation. A DRO MUST update time over an authenticated and secure channel.</t>

<t>For all recommendations, it is strongly RECOMMENDED that recommendations are supported by automated processes.</t>

</section>
<section anchor="ta"><name>Trust Anchor Related Recommendations</name>

<t>A TA store maintains associations between domain names and keys (whether stored as in a DNSKEY resource record or a DS resource record) and domain names whose key are to be ignored (negative trust anchors).
The TA store is essentially a database, storing the (positive) trust anchors.
Management of the TA can be done manually or in an automated way.
Automatic management of the TA is RECOMMENDED and can be subdivided into the following sub-categories:</t>

<t><list style="numbers">
  <t>    <dl>
      <dt>Initial TA provisioning:</dt>
      <dd>
        <t>that is the ability, for a DRO, to ensure a starting resolver is automatically provisioned with an up-to-date configuration.
This includes defining a trust model and ensuring the associated TAs values are valid at the time the resolver is started. 
# This includes the TA associated to the trust model established by the DRO.</t>
      </dd>
    </dl>
  </t>
  <t>    <dl>
      <dt>TA update over time:</dt>
      <dd>
        <t>while the trust model may not evolve, the cryptographic keys associated to the security entry points are subject to change and thus a TA needs to be updated dynamically over time by a resolver.
In this case, the DRO needs to check that the resolver has properly updated the TAs.</t>
      </dd>
    </dl>
  </t>
  <t>    <dl>
      <dt>TA reporting:</dt>
      <dd>
        <t>The reporting of the TA used by the resolver is made to the DRO as well as the authoritative servers which are hold responsible for making their zone validated by DNSSEC resolvers.</t>
      </dd>
    </dl>
  </t>
</list></t>

<t>Note that TA update and TA reporting only concerns running resolvers.
This section is only considering TA and not NTA. The handling of NTA is detailed in <xref target="nta"/>.</t>

<section anchor="boot"><name>Trust Anchor Configuration</name>

<t>When a DRO starts a DNSSEC resolver, the DNSSEC resolver is provisioned with the TAs as part of its configuration.
As these TAs change over time, the DRO MUST ensure the resolvers are always provisioned with up-to-date TAs and detect deprecated configuration.</t>

<t>To do so, the TA configuration is considered as a trusted model instantiated as follows:</t>

<t><list style="numbers">
  <t>    <dl>
      <dt>Trust model definition:</dt>
      <dd>
        <t>The DRO defines the domain names that constitutes security entry point (TA) -- see <xref target="trust-model-def"/> for more details.</t>
      </dd>
    </dl>
  </t>
  <t>    <dl>
      <dt>Trust model bootstrapping:</dt>
      <dd>
        <t>A bootstrapping procedure is applied to each TA to retrieve their TA values - that is the corresponding value of the key - in a trusted way. 
Such TA MAY have a specific format not understood by the resolver -- see <xref target="trust-model-boot"/> for more details.</t>
      </dd>
    </dl>
  </t>
  <t>    <dl>
      <dt>DNSSEC resolver configuration generation:</dt>
      <dd>
        <t>The TA with associated values are formatted appropriately for the DNSSEC resolver that will be instantiated. In many cases the appropriated format is the DNS RRset format - see <xref target="conf"/> for more details.</t>
      </dd>
    </dl>
  </t>
  <t>    <dl>
      <dt>DNSSEC resolver instantiation:</dt>
      <dd>
        <t>The DNSSEC resolver is started, performs some checks before becoming operational, that is checking compability between provisioned TAs and those found online. 
These checks are implemented by the resolver and not really in scope of the DRO -- see <xref target="instantiation"/> for more details.</t>
      </dd>
    </dl>
  </t>
</list></t>

<t>While these steps may require some specific development for complex trust models, no additional deployment is required when using the default model where the root zone is defined as the only secure entry point. 
In such cases, the trusted model bootstrapping is performed by software-update that relies on the code signing key of the software provider. 
The software provider also provides the configuration to the appropriated format and the checks at instantiation -- see <xref target="iana-boot"/>.</t>

<section anchor="trust-model-def"><name>Definition of the Trust model</name>

<t>The DRO defines its trust model by explicitly mentioning the domain name that constitutes security entry point as well as domain name that are known to be unsecured.</t>

<t>This document does not provide recommendations regarding the number of TAs a DRO needs to configure its DNSSEC resolver with.
There are many reasons a DRO may be willing to consider multiple TAs as opposed to a single Root Zone Trust Anchor.
In fact it is not always possible to build a trusted delegation between the Root Zone and a sub zone.
This may happen, for example, if one of the upper zones does not handle the secure delegation or improperly implements it.
Typically, a DS RRset may not be properly filled or its associated signature cannot be validated.
As the chain of trust between a zone and the root zone may not be validated, the DNSSEC validation for the zone requires a TA.
Such DNS(SEC) resolutions may be critical for infrastructure management.
A company may, for example, address all its devices under the domain example.com and may not want disruption to happen if the .com delegation cannot be validated for any reason.
Such companies may operate DNSSEC with a TA for the zone example.com in addition to the regular DNSSEC delegation.
Similarly some domains may present different views such as a "private" view and a "public view".
These zones may have some different content, and may use a different KSK for each view.</t>

<t>The domain name chosen as the TA security entry point may be a child zone from another TA security entry point.
For example, the DRO may use seperate TAs for example.com, .com, and the root zone.
The TA associated with a domain name is determined by the longest match.
However, the trust model MUST at least ensure that any domain name in the DNS be covered by at least one TA.
As the number of top level domains is evolving overtime, it remains safe to keep the root zone as a security entry point in order to cover the full domain name space.</t>

<t>The default trust model remains rooted in the root zone as a security entry point, and no zones being considered as unsecured.
By default, the instantiation of this trusted model is delegated by the DRO to the software vendor that is responsible to update the the default trust model with the up-to-date value of the TA. 
In such cases, the trusted model is implemented by software-update that relies on the code signing key of the software provider.</t>

<t>The use of a different trust model must be carefully considered and NOT RECOMMENDED for DRO without a strong DNSSEC expertise.<br />
A DRO implementing another trust model MUST be able to ensure that the trust model is properly implemented - that is with up-to-date TAs.
The DRO MUST carefully balance the implications, the risks, the necessary involved mechanisms to achieve this goal with the potential benfits. 
More specifically, it is expected updating the trust model's instantiation is performed in an automated way with strong validation validation and checks being put in place. 
It is also likely that the DRO and the owner of the TA will have a specific relationship and TA update will be provided via a specific out-of-band channel. 
More specifically, <xref target="RFC5011"/> that we recommend to update TA by a running instance of resolver, is likely not to be sufficent, as it is completly automated and relies on in band signaling which comes with risks detailled in <xref section="8" sectionFormat="comma" target="RFC5011"/>.
A DRO need to understand these risks. 
Note also that even when <xref target="RFC5011"/> the owner of the TA needs to respect the <xref target="RFC5011"/> timings -- see <xref target="automated-update-ta"/>.</t>

</section>
<section anchor="trust-model-boot"><name>Trust Model Bootstrapping</name>

<t>The purpose of the boostrapping step is clearly to securely retrieve DNSKEY as well as DS RRsets with a valid and authentic RDATA to implement the trust model (see <xref target="trust-model-def"/>).
Authentic data includes data that are up-to-date at the time these are requested, provided with securely and verified.
In particular the TA MUST NOT be retrieved from a local source that is not known to be up to date.
This typically includes software or any local store of data for which there is not a dedicated and automated updating system.
Similarly, TA MUST NOT be retrieved from untrusted communication such as a DNS resolution that cannot be verified or validated.</t>

<t>The authenticity of the RDATA is usually based on the authentication of the source which can take multiple forms, but the principle is that a chain of signature ends up being validated by a trusted key.
For TA that are not the root zone KSK, DNSSEC may be used to retrieve and validate the TA.
Note that such means to validate the authenticity, the TA as a subdomain mostly prevents potential disruptions of the parent domains.
In many cases, an alternative trusted source will be preferred such as TLS which is likely to rely on the Web PKI, or the signature of a file.</t>

<t>Although some bootstrapping mechanisms to securely retrieve publish <xref target="RFC7958"/> and retrieve <xref target="UNBOUND-ANCHOR"/> the Root Zone Trust Anchor have been defined, it is believed these mechanisms should be extended to other KSKs or Trust Anchors.
Such bootstrapping process enables a DRO to start a DNSSEC resolver from a configuration file, that reflects the trust model of the DRO.</t>

<t>STARTUP:</t>

<t><list style="symbols">
  <t>DRO SHOULD only rely on TA associated with a bootstrapping mechanism.</t>
</list></t>

<section anchor="iana-boot"><name>IANA Trust Anchor Bootstrapping</name>

<t>For validators that may be used on the global public Internet (with "may be" referring to general purpose, general release code), handling the IANA managed root zone KSK trust anchor is a consideration.</t>

<t>The IANA managed root zone KSK is an operationally significant trust point in the global public Internet.
Attention to the trust anchor for this point is paramount.
Trust anchor management ought to recognize that the majority of operators deploying DNSSEC validators will need to explicitly or implicitly rely on this trust anchor.
Trust anchor management needs to recognize that there may be other trust anchors of interest to operators.
Besides deployments in networks other than the global public Internet (hence a different root), operators may want to configure other trust points.</t>

<t>The IANA managed root zone KSK is managed and published as described in "DNSSEC Trust Anchor Publication for the Root Zone" <xref target="RFC7598"/>.
That document is written as specific to that trust point.
Other trust points may adopt the technique describe (or may use other approaches).</t>

<t>This represents a consideration for implementations.
On one hand, operators will place special emphasis on how the root zone DNSSEC KSK is managed.
On the other hand, implementations  ought to accommodate trust anchors in a general manner, despite the odds that other trust anchors will not be configured in a specific deployment.</t>

<t>Because of this, it is RECOMMENDED that implementations make the root zone trust anchor obvious to the operator while still enabling configuration of general trust points.</t>

</section>
</section>
<section anchor="conf"><name>Configuration Generation</name>

<t>The generation of a configuration file associated to the TA is expected to be implementation independent.
The necessity of tweaking the data depending of the software implementer or eventually the software version introduces a vector for configuration errors.</t>

</section>
<section anchor="instantiation"><name>DNSSEC Resolver Instantiation</name>

<t>STARTUP:</t>

<t><list style="symbols">
  <t>DNS resolver MUST validate the TA before starting the DNSSEC resolver, and a failure of TA validity check MUST prevent the DNSSEC resolver to be started. Validation of the TA includes coherence between out-out band values, values stored in the DNS as well as corresponding DS RRsets.</t>
</list></t>

</section>
</section>
<section anchor="trust-anchor-update"><name>Trust Anchor Update</name>

<t>Updating the TA reflects the evolution of the trust.
It is important to understand that this section does not consider the trust model to be updated by the DRO.
This has been defined in section <xref target="boot"/>.
Instead, it considers the evolution over time of the instantiation of the trust model, that is the update of the values associated to the TA, by a running instance of resolver.
Such updates need to be operated in a reliable and trusted way.
Note that you may not need to proceed to such TA update if the DRO can guarantee that any instance has been instantiated with a configuration the reflects the current value of the TAs. 
Given that the roll-over phases for a TA update are relatively long, for DRO that can ensure a fast deployment of the latest release of resolver, with the defult trust model being implemented by the software vendor, TA update is likely to be achieved via software updates.</t>

<t>The remaining of this section is left to DRO willing to ensure their instance have the capacity to update their TAs while running.
This may be a specific feature or a complementary feature to software update. 
The value associated to the TA may be updated over time which is part of the maintenance of the configuration and needs to be performed by the DNSSEC resolver without any intervention of the DRO. This is the purpose of this section.</t>

<t>TA update is expected to be transparent to the DRO (see <xref target="automated-update-ta"/>.
However, a DRO MAY wish to ensure its resolvers operate according to the provisioned configurations and are updated normally (see <xref target="automated-ta-check"/>.
This includes for a DRO the ability to check which TA are in used as well as to resolve in collaboration of authoritative servers and report the used TAs.</t>

<section anchor="automated-update-ta"><name>Automated Updates to DNSSEC Trust Anchors</name>

<t>Trust is inherently a matter of an operations policy.
As such, a DRO will need to be able to update the list of Trust Anchors.
TA updates are not expected to be handled manually.
This introduces a potentially huge vector for configuration errors, due to human intervention as well as potential misunderstanding of ongoing operations.
Instead DRO will rely on "Automated Updates to DNSSEC Trust Anchors" <xref target="RFC5011"/> when the TA signers is known to respect the  <xref target="RFC5011"/> timing.</t>

<t>STARTUP:</t>

<t><list style="symbols">
  <t>DRO SHOULD check TA signers commits to respect "Automated Updates to DNSSEC Trust Anchors" <xref target="RFC5011"/> timings.</t>
  <t>DRO SHOULD enable "Automated Updates to DNSSEC Trust Anchors" <xref target="RFC5011"/> <xref target="I-D.ietf-dnsop-rfc5011-security-considerations"/>.</t>
</list></t>

<t>Note that while automation prevents the risks associated to manual intervention, but managing TA on its own - that is via other means than software updates, does not come without any risks. 
A DRO need to understand these risks.</t>

</section>
<section anchor="automated-ta-check"><name>Automated Trust Anchor Check</name>

<t>A DRO SHOULD regularly check the trust anchor used by the DNSSEC resolver is up-to-date and that values used by the resolvers are conform to the ones in the configuration (see <xref target="boot"/>).
Such check is designated as TA health check.</t>

<t>Note that retrieving in an automated way the value of the TA removes old values from the configuration and ensures that resolvers are always started with up-to-date values.
In the case of a key roll over, the resolver is moving from an old value to an up-to date value.
This up-to-date value does not need to survive reboot, and there is no need to update the configuration file of the running instances - configuration is updated by a separate process.
To put it in other words, the updated value of the TA is only expected to be stored in the resolver's memory.
Avoiding the configuration file to be updated prevents old configuration file to survive to writing error on read-only file systems.</t>

<t>The TA used by a resolver may be part of a configuration parameter as well as part of an internal state of the resolver.
It is NOT RECOMMENDED a DRO accesses configuration or internal state of a resolver  as it may open the resolver to other vulnerabilities and provides privileged access to a potential attacker.</t>

<t>STARTUP:</t>

<t><list style="symbols">
  <t>DRO SHOULD enable "Signaling Trust Anchor Knowledge in DNS Security Extensions (DNSSEC)" <xref target="RFC8145"/> to provide visibility to the TA used by the resolver.
The TA can be queried using a DNSKEY query. The channel MAY be protected and restricted to the DRO.</t>
</list></t>

<t>Note also that <xref target="RFC8145"/> does not only concern Trust Anchor but is instead generic to DNSKEY RRsets.
As a result, unless for the root zone, it is not possible to determine if the KSK/ZSK or DS is a Trust Anchor or a KSK/ZSK obtained from regular DNSSEC resolutions.</t>

<t>TA health check includes validating DNSKEY RRsets and associated DS RRsets in the resolver, on the DNS authoritative servers  as well as those obtained out-of-band.
TA health check results MUST be logged.
The check SHOULD evaluate if the mismatch resulted from an ongoing normal roll over, a potential emergency key roll over, failed roll over or any other envisioned cases.
Conflicts are not inherently a problem as some keys may be withheld from distribution via the DNS.
A failed key roll over or any other abnormal situation  MUST trigger an alarm.</t>

<t>RUNTIME:</t>

<t><list style="symbols">
  <t>A DRO SHOULD regularly run TA health checks.</t>
</list></t>

<t>If the mismatch is due to a failed key roll-over, this SHOULD be considered as a bug by the DRO.
The DRO MUST restart the resolver with updated TA.</t>

<t>ONDEMAND:</t>

<t><list style="symbols">
  <t>A DRO SHOULD be able to check the status of a TA as defined in Section 3 of <xref target="RFC7583"/>.</t>
</list></t>

</section>
</section>
</section>
<section anchor="nta"><name>Negative Trust Anchors Related Recommendations</name>

<t>When the DNSSEC Resolver is not able to validate signatures because a key or DS has been published with an error, the DNSSEC Operator MAY temporarily disable the signature check for that key until the time the error is addressed.
This is performed using NTA<xref target="RFC7646"/>.
NTA represents the only permitted intervention in the resolving process for a DRO.</t>

<t>NTA are considered as temporary fix for a known unsecured domain, which is different from an TA that would not be trusted.
The designation of NTA might be misleading, but NTA are not expected to be part of the trust model.
This does not prevent a DRO to provision NTA as a configuration parameters NTA. 
The management of the configuration SHOULD be automated as described in <xref target="boot"/>.</t>

<t>Handling NTA is described in <xref target="RFC7646"/> and a DRO SHOULD follow these guidelines. The intent of this section is to position these guidelines toward the operational recommendations provided in this document.</t>

<t>STARTUP:</t>

<t><list style="symbols">
  <t>DRO SHOULD be able to automatically configure NTA when starting DNSSEC resolvers.</t>
</list></t>

<t>ONDEMAND:</t>

<t><list style="symbols">
  <t>DRO SHOULD set automated procedures to determine the NTA of DNSSEC resolvers.</t>
  <t>DRO SHOULD be able to handle NTA as defined in <xref target="RFC7646"/>.</t>
</list></t>

<t>Note that adding a Negative Trust Anchor only requires the domain name to be specified. 
Note also that NTA can disable any sort of DNSKEY and is not restricted to TA.</t>

<t>A failure in signaling validation is associated to a mismatch between the key and the signature.
DNSKEY/DS RRsets for TA have a higher level of trust then regular KSK/ZSK.
In addition, DRO are likely to have specific communication channel with TA maintainer which eases trouble shooting.</t>

<t>A signature validation failure is either an attack or a failure in the signing operation on the authoritative servers.
The DRO is expected to confirm this off line before introducing the NTA.
This is likely to happen via a human confirmation. As a result here are the
following recommendations:</t>

<t>RUNTIME:</t>

<t><list style="symbols">
  <t>DRO SHOULD monitor the number of signature failure associated to each DNSKEY. 
These number are only hints and MUST NOT trigger automated insertion of NTA.</t>
  <t>A DRO MAY collect additional information associated each DNSKEY RRSets.
This information may be useful to follow-up roll over when these happen and evaluate when a key roll over is not performed appropriately on the resolver side or on the authoritative server.
It would provide some means to the DRO to take action with full knowledge without necessary asking for a confirmation.
In other cases it could prevent invalidation to happen.
These check may be performed for a limited subset of domains or generalized.</t>
</list></t>

</section>
<section anchor="zsk-ksk-non-ta-related-recommendations"><name>ZSK / KSK (non TA) Related Recommendations</name>

<t>KSK / ZSK are not part of the DNSSEC validator configuration.
Their values in the DNS Caches may not reflect those published by the authoritative servers or may be incoherent with the RRset in the DNS Cache they are validating.
However, such incoherence primary results from error in the management of the authoritative servers.
As a result, it is not expected that the DNSSEC validator provides complex management facilities to address these issues as this will modify the DNS architecture and add complexity that is not proved to be beneficial.
As a result, recommendations always belong to the run time or on demand recommendations.
The main difference between TA and KSK/ZSK is that the DRO does not necessarily have an out of band mechanism to retrieve the RRsets.
As a result, the DRO has less information to determine and confirm what is happening. 
The default recommendation is to let things go.</t>

<t>A number of reasons may result in inconsistencies between the RRsets stored in the cache and those published by the authoritative server.</t>

<t>An emergency KSK / ZSK rollover may result in a new KSK / ZSK with associated new RRSIG published in the authoritative zone, while DNSSEC validator may still cache the old value of the ZSK / KSK.
For a RRset not cached, the DNSSEC validator performs a DNSSEC query to the authoritative server that returns the RRset signed with the new KSK / ZSK.
The DNSSEC validator may not be able to retrieve the new KSK / ZSK while being unable to validate the signature with the old KSK / ZSK.
This either results in a bogus resolution or in an invalid signature check.
Note that by comparing the Key Tag Fields, the DNSSEC validator is able to notice the new KSK / ZSK used for signing differs from the one used to generate the received generated signature.
However, the DNSSEC validator is not expected to retrieve the new ZSK / KSK, as such behavior could be used by an attacker.
Instead, ZSK / KSK key roll over procedures are expected to avoid such inconsistencies.</t>

<t>Similarly, a KSK / ZSK roll over may be performed normally, that is as described in <xref target="RFC6781"/> and <xref target="RFC7583"/>.
While the KSK / ZSK roll over is performed, there is no obligation to flush the RRsets in the cache that have been associated with the old key.
In fact, these RRsets may still be considered as trusted and be removed from the cache as their TTL timeout.
With very long TTL, these RRsets may remain in the cache while the ZSK / KSK with a shorter TTL is no longer published nor in the cache.
In such situations, the purpose of the KSK / ZSK used to validate the data is considered trusted at the time it enters the cache, and such trust may remain after the KSK / ZSK is being rolled over.
Note also that even though the data may not be associated to the KSK / ZSK that has been used to validate the data, the link between the KSK / ZSK and the data is still stored in the cache using the RRSIG.
Note also that inconsistencies between the ZSK / KSK stored in the cache and those published on the authoritative server, may lead to inconsistencies to downstream DNSSEC validators that rely on multiple cache over time.</t>

<t>Typically, a request for the KSK / ZSK may have been provided by a cache that is storing the new published value, while the data and associated signatures may be associated to the old KSK / ZSK.</t>

<t>Incoherence between RRsets and DNSKEYs is not the responsibility of the DRO. 
Instead, it is the responsibility of authoritative server publishing these data.
This includes insuring the coherence between TTLs and signature validation periods as well as small variations of the resolvers clocks.
Section 4.4.1 of <xref target="RFC6781"/> provides some recommendations that can be implemented by the authoritative server which puts the responsibility of failure of signature validation under the responsibility of the authoritative server.
A DRO MAY however limit the risks for these inconsistencies to happen by configuring the DNSSEC validator with generic rules that applies to the validation process.
Typically, the TTL associate to the DNSKEY is an engagement from the authoritative server that the DNSKEY will remain valid over this period.
As this engagement supersedes the validation of any RRSIG and by extension to any RRset in the zone, this TTL value may be used as the maximum value for the TTL associated to FQDNs in the zone.
Section 8.1 of <xref target="RFC4033"/> mention the ability by the resolver to set the upper bound of the TTL to the remaining signature validity period.
In addition, the DNSSEC validator should also be able to provide a maximum values for TTLs.
These values MAY also consider the small inaccuracy of the local clock.</t>

<t>RUNTIME:</t>

<t><list style="symbols">
  <t>To limit the risks of incoherent data in the cache, it is RECOMMENDED DRO enforce TTL policies of RRsets based on the TTL of the DS, KSK and ZSK.
RRsets TTL SHOULD NOT exceed the DS, KSK or ZSK initial TTL value, that TTL SHOULD trigger delegation revalidation as described in <xref target="I-D.ietf-dnsop-ns-revalidation"/>.
TTL SHOULD NOT exceed the signature validity.</t>
</list></t>

</section>
<section anchor="dnskey-related-recommendations"><name>DNSKEY Related Recommendations</name>

<t>This section considers the recommendations that are common to TA as well
as non TA DNSKEY RRsets.</t>

<section anchor="automated-reporting"><name>Automated Reporting</name>

<t>A DRO MAY regularly report the Trust Anchor used to the authoritative server.
This would at least provide insight to the authoritative server and provide some context before moving a key roll over further.</t>

<t>The purpose of reporting the currently used Trust Anchor for a domain name is to establish an informational channel between the resolver and the authoritative server.
This data may not directly be useful for the DNSSEC Resolver, but instead to the authoritative server.
In return it is likely the authoritative server will take the appropriate steps in operating the authoritative server and consider this information.
This results in the following recommendation:</t>

<t>RUNNING:</t>

<t><list style="symbols">
  <t>A DRO SHOULD enable TA reporting to the authoritative server as specified in "Signaling Trust Anchor Knowledge in DNS Security Extensions (DNSSEC)" <xref target="RFC8145"/></t>
</list></t>

</section>
<section anchor="interactions-with-the-cached-rrsets"><name>Interactions with the cached RRsets</name>

<t>The purpose of automated checks is to enable early detection of failed operations, which provides enough time to the DRO to react without any consequences. 
On the other hand, these checks MAY reveal as well that a rogue TA has been placed and that the resolver is corrupted.
Similarly, a DRO may be informed by other channel a rogue or unwilling DNSKEY has been emitted.</t>

<t>In such situation, the DRO SHOULD be able to remove the RRsets validated by the rogue DNSKEY.</t>

<t>ONDEMAND:</t>

<t><list style="symbols">
  <t>A DRO MUST be able to flush the cached data subtree associated to a DNSKEY</t>
</list></t>

</section>
</section>
<section anchor="cryptography-deprecation-recommendations"><name>Cryptography Deprecation Recommendations</name>

<t>As mentioned in <xref target="RFC8247"/> and <xref target="RFC8221"/> cryptography used one day is expected over the time to be replaced by new and more robust cryptographic mechanisms.
In the case of DNSSEC signature protocols are likely to be updated over time.
In order to anticipate the sunset of one of the signature scheme, a DNSSEC validator may be willing to estimate the impact of deprecating one signature scheme.</t>

<t>Currently, interoperability and security are enforced via cryptographic recommendations <xref target="RFC8624"/> that are followed by both resolvers and authoritative servers.
The implementation of such guidance is ensured by the software vendors and the compliance of their releases.</t>

<t>To safely deprecate one signature scheme, the DNSSEC validator operator is expected to follow the recommendation below:</t>

<t>STARTUP:
* DRO MUST ensure recent software releases that comply with the most recent cryptographic guidances are being used</t>

<t>RUNTIME:</t>

<t><list style="symbols">
  <t>A DRO SHOULD regularly request and monitor the signature scheme supported by  an authoritative server.</t>
  <t>A DRO SHOULD report a "Unsupported DNSKEY Algorithm" as defined in <xref target="RFC8914"/>  when a deprecated algorithm is used for validation.</t>
</list></t>

<t>One inconvenient to such strategy i sthat it does not let one DRO to take advantage of more recent cryptographic. 
While currently not being widely used, a DRO MAY share information with authoritative server in the hope that future deployment of authoritative servers will be able to leverage it.<br />
<xref target="RFC6975"/> provides the ability for a DNSSEC validator to announce an authoritative server the supported signature schemes.
However, a DNSSEC validator is not able to determine other than by requesting and monitoring DNSKEY RRsets as well as RRSIG.
These RRsets are received by enabling DNSSEC validation by default which is obviously the case for DNSSEC validator.</t>

</section>
<section anchor="invalid-reporting-recommendations"><name>Invalid Reporting Recommendations</name>

<t>A DNSSEC validator receiving a DNS response cannot make the difference between receiving an non-secure response versus an attack.
Dropping DNSSEC fields by a misconfigured middle boxes, such as DS, RRRSIG is considered as an attack.
A DNSSEC validator is expected to perform secure DNS resolution and as such protects its stub client.
An invalid response may be the result of an attack or a misconfiguration, and the DNSSEC validator may play an important role in sharing this information with the authoritative server or domain name owner.</t>

<t>RUNTIME:</t>

<t><list style="symbols">
  <t>DRO SHOULD monitor and report DNSSEC validation error.
Reporting may take various means but the DRO SHOULD implement <xref target="RFC8914"/> to inform the DNS client.</t>
</list></t>

</section>
<section anchor="transport-recommendations"><name>Transport Recommendations</name>

<t>DNSSEC validation requires that the validator is able to reliably obtain necessary records, especially DNSKEY records. This should be done at initial configuration, and tested periodically.</t>

<t>This means the validator MUST ensure it is configured so that the UDP and TCP transports, and DNS resolver components, are compatible with the network paths that the majority of DNS queries traverse - which includes compatibility between DNS and transport parameters with the Maximum Transmission Unit  (MTU).</t>

<t>In other words, make sure that:
1. DNS UDP bufsize (EDNS parameter) is set to a value compatible with network MTUs the queries and responses will encounter. If the validator advertises a bufsize &gt;&gt; MTU, responses with the IPv4  Don't Fragment (DF) bit set whose size R where MTU &lt; R &lt;= bufsize  exceeds the MTU will be dropped by the router with MTU &lt; R.</t>

<t><list style="numbers">
  <t>The validator's OS TCP configuration has its advertised Maximum Segment Size (MSS) set to a value compatible with network MTUs the queries and responses will encounter.
  * Having an advertised MSS set to a value &lt; MTU ensures that Path MTU Discovery is not required
  * If PMTUD fails for any reason, or if the server responding does not maintain or use PMTUD, and advertised MSS &gt; MTU at any point in the path, TCP may encounter problems caused by IP fragmentation and reassembly.
  * This is particularly relevant if there are any NAT type devices in the path, as those may not properly handle fragmentation and reassembly
  * If all TCP segments are smaller than the path MTU, TCP will work reliably.</t>
</list></t>

<t>The avoidance of fragmentation in order to address known fragmentation-related security issues with DNS (leading to cache poisoning, for example) has resulted in the need to set the DF bit on UDP.
Validators will need to ensure their local environment can reliably get any critical DNSSEC records (notably DNSKEY) over UDP, or reliably get responses with TC=1 if overly large responses cannot be sent over UDP due to answers not fitting within the advertised bufsize payload.
Validators also need to ensure TCP works if it is needed, for the same situations.</t>

<t>STARTUP:
* DRO MUST ensure UDP and TCP transport are enabled.
* DRO MUST ensure DNS and TCP parameters will not exceed the expected MTU</t>

<t>RUNTIME:
* DRO SHOULD regularly discover MTU and ensure the DNS and TCP parameters are aligned wit this value.
* DRO SHOULD closely monitor the absence of responses, or ICMP PTB message as a potential incompatibility between configured parameters and the MTU.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>There are no IANA consideration for this document.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>The recommendations listed in this document have two goals.
First ensuring the DNSSEC validator has appropriated information to appropriately perform DNSSEC validation.
Second, monitoring the necessary elements that would enable a DNSSEC validator operator to ease a potential analysis.
The recommendations provide very limited ability for a DNSSEC validator operator to alter or directly interfere on the validation process and the main purpose in providing the recommendations was to let the protocol run as much as possible. 
Providing inappropriate information can lead to misconfiguring the DNSSEC validator, and thus disrupting the DNSSEC resolution service.
As a result, enabling the setting of configuration parameters by a third party may open a wide surface of attacks. 
In addition, such changes may lead to unexpected corner cases that would result in making analysis and trouble shooting very hard.</t>

<t>As an appropriate time value is necessary to perform signature check, an attacker may provide rogue time value to prevent the DNSSEC validator to check signatures.</t>

<t>An attacker may also affect the resolution service by regularly asking the DNSSEC validator to flush the KSK/ZSK from its cache.<br />
All associated data will also be flushed. 
This generates additional DNSSEC resolution and additional validations, as RRSet that were cached require a DNSSEC resolution over the Internet. 
This affects the resolution service by slowing down responses, and increases the load on the DNSSEC validator.</t>

<t>An attacker may ask the DNSSEC validator to consider a rogue KSK/ZSK, thus hijacking the DNS zone. Similarly, an attacker may inform the DNSSEC validator not to trust a given KSK in order to prevent DNSSEC validation to be performed.</t>

<t>An attacker (cf.  Section 7) can advertise a "known insecure" KSK or ZSK is "back to secure" to prevent signature check to be performed correctly.</t>

<t>As a result, information considered by the DNSSEC validator should be from a trusted party.  This trust party should have been authenticated, and the channel used to exchange the information should also be protected and authenticated.</t>

<t>The software used for DNSSEC validator is not immune to bugs and may become vulnerable independently of how it is operated.
As a result a DRO SHOULD NOT depend on a single implementation or version of a given software and SHOULD instead run at least two independent pieces of software.</t>

</section>
<section anchor="contributors"><name>Contributors</name>

<t>We would like to thank very much Edward Lewis without who the document might probably not exist.</t>

</section>
<section anchor="acknowledgment"><name>Acknowledgment</name>

<t>The need to address DNSSEC issues on the resolver occured during multiple discussions   including among others Ted Lemon, Ralph Weber,
Normen Kowalewski, Mikael Abrahamsson, Jim Gettys, Paul Wouters, Joe Abley, Michael Richardson, Vladimír Čunát, James Gannon, Andrew McConachie, Peter Thomassen, Florian Obser and Brian Dickson.</t>

<t>We also appreciated the support of the DNSOP chairs Tim Wicinski, Suzanne Woolf and Benno Overeinder.</t>

</section>


  </middle>

  <back>


    <references title='Normative References'>

&RFC4033;
&RFC4035;
&RFC7646;
&RFC2119;
&RFC8174;
&RFC5011;
&RFC8145;
&RFC7583;
&RFC6781;
&I-D.ietf-dnsop-ns-revalidation;
&RFC8247;
&RFC8221;
&RFC8624;
&RFC8914;
&RFC6975;


    </references>

    <references title='Informative References'>

<reference anchor="UNBOUND-ANCHOR" target="https://nlnetlabs.nl/documentation/unbound/unbound-anchor/">
  <front>
    <title>unbound-anchor - Unbound anchor utility</title>
    <author >
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="ENT" target="https://indico.dns-oarc.net/event/25/contributions/403/attachments/378/647/AFNIC_OARC_Dallas.pdf">
  <front>
    <title>ENT was here !!!</title>
    <author initials="V." surname="Levigneron" fullname="Vincent Levigneron">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
&RFC7958;
&RFC7598;
&I-D.ietf-dnsop-rfc5011-security-considerations;


    </references>



  </back>

<!-- ##markdown-source:
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
RdHNd/8PuAh3DP/BAAA=

-->

</rfc>

