<?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.39 (Ruby 3.4.9) -->
<?rfc tocindent="yes"?>
<?rfc strict="yes"?>
<?rfc compact="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-dnsop-filtering-transparency-00" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title>DNS Filtering Transparency</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-dnsop-filtering-transparency-00"/>
    <author initials="M." surname="Nottingham" fullname="Mark Nottingham">
      <organization>Cloudflare</organization>
      <address>
        <postal>
          <postalLine>Melbourne</postalLine>
          <postalLine>Australia</postalLine>
        </postal>
        <email>mnot@mnot.net</email>
        <uri>https://mnot.net/</uri>
      </address>
    </author>
    <author initials="D." surname="Adrian" fullname="David Adrian">
      <organization>Google</organization>
      <address>
        <postal>
          <country>USA</country>
        </postal>
        <email>davidcadrian@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="August" day="01"/>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 37?>

<t><xref target="I-D.ietf-dnsop-structured-dns-error"/> introduces structured error data for DNS responses that have been filtered. This specification allows more specific details of filtering incidents to be conveyed.</t>
    </abstract>
    <note removeInRFC="true">
      <name>Discussion Venues</name>
      <t>Source for this draft and an issue tracker can be found at
    <eref target="https://github.com/mnot/public-resolver-errors"/>.</t>
    </note>
  </front>
  <middle>
    <?line 41?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Internet DNS resolvers are increasingly subject to legal orders that require blocking or filtering of specific names. Because such filtering happens during DNS resolution, there is not an effective way to communicate what is happening to end users, often resulting in misattribution of the issue as a technical problem, rather than a policy intervention.</t>
      <t>Some organizations such as Lumen <xref target="lumen"/> monitor legally-mandated filtering as a public service, tracking specific filtering incidents in publicly accessible databases. Other parties may also choose to track filtering requests over time and make them available.</t>
      <t>This draft defines a mechanism for DNS resolvers to convey identifiers for entries in such databases, based upon the structured error data for DNS responses introduced by <xref target="I-D.ietf-dnsop-structured-dns-error"/>.</t>
      <t>A consuming party (e.g., a Web browser) can use this information to construct a link to the specific entry in one or more databases of filtering incidents. This enables user agents to direct users to additional context about the filtering incident they encountered.</t>
      <t>The information conveyed is a DNS Filtering Database Entry, specified in <xref target="entry-id"/>. This abstraction is necessary because allowing DNS resolvers to inject links or user-visible messages would bring unique challenges. DNS resolvers are often automatically configured by unknown networks and DNS responses are unauthenticated, so these messages can come from untrusted parties -- including attackers (e.g., the so-called "coffee shop" attack) that leverage many users' lack of a nuanced model of the trust relationships between all of the parties that are involved in the service they are using.</t>
      <t>This specification attempts to mitigate these risks by minimising the information carried in the DNS response to abstract, publicly registered identifiers associated with databases of filtering incidents -- the DNS Filtering Database Entry -- rather than arbitrary URLs. An application can choose which database identifiers they support and are willing to direct their users to, without enabling every DNS server to surface arbitrary links and text, and without requiring the consuming party to independently track which URLs are in use.</t>
      <section anchor="example">
        <name>Example</name>
        <t>In typical use, a DNS query that is filtered might contain an Extended DNS Error Code 17 (see <xref target="RFC8914"/>) and an EXTRA-TEXT field "fdbs", which is an array of references to filtering database entries:</t>
        <sourcecode type="json"><![CDATA[
{
  "fdbs": [
    {"db": "example",
    "id": "abc123"},
    {"db": "lumen",
    "id": "def456"}
  ]
}
]]></sourcecode>
        <t>This indicates that the filtering incident can be accessed in two different databases, along with the ID associated with each database. In this example, the data is available in the "example" database at identifier "abc123", and in the "lumen" database at identifier "def456".</t>
        <t>An application that decides to present the "example" entry to its users would look up "example" in a local copy of the DNS Filtering Database Registry (see <xref target="registry"/>) and obtain the corresponding URI template (see <xref target="template"/>). For purposes of this example, assume that the registry entry for that value contains:</t>
        <artwork><![CDATA[
https://example.com/filtering-incidents/{id}
]]></artwork>
        <t>That URI template can be expanded using the value of "id" to:</t>
        <artwork><![CDATA[
https://example.com/filtering-incidents/abc123
]]></artwork>
        <t>The application could (but might not) then decide to convey some or all of this information to its user; for example:</t>
        <ul empty="true">
          <li>
            <t>The webpage at www.example.net was blocked by your DNS resolver due to a
legal request. More information is available here:</t>
            <t>https://example.com/filtering-incidents/abc123</t>
          </li>
        </ul>
        <t>Note that there is no requirement for the resolver to convey any particular information here. The resolver both chooses which database providers it supports, and can evaluate whatever mechanisms it chooses to determine if and when to provide a link to the database entry.</t>
      </section>
      <section anchor="notational-conventions">
        <name>Notational Conventions</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" 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>
        <?line -18?>

</section>
    </section>
    <section anchor="data-types">
      <name>Data Types</name>
      <t>This section defines the data types used to look up the details of a filtering incident from a DNS error response. Note that these identifiers are not suitable for presentation to end users.</t>
      <section anchor="entry-id">
        <name>DNS Filtering Database Entry</name>
        <t>A Filtering Database Operator ID is a string identifier for the operator of a database of filtering incidents. It uses the key "db".</t>
        <t>A Filtering Incident ID is a string identifier for a particular filtering incident. It might be specific to a particular request, but need not be. It uses the key "id".</t>
        <t>An object containing both a Filtering Database Operator ID and a Filtering Incident ID is a Filtering Database Entry.</t>
        <sourcecode type="json"><![CDATA[
{
  "db": "example",
  "id": "abc123"
}
]]></sourcecode>
      </section>
      <section anchor="entry-list">
        <name>DNS Filtering Database Entry List</name>
        <t>A DNS Filtering Database Entries list is an array of Filtering Database Entry objects. Each entry <bcp14>MUST</bcp14> be related to the same underlying incident.</t>
        <t>It is carried in the EXTRA-TEXT field of the Extended DNS Error with the JSON field name "fdbs". For example:</t>
        <sourcecode type="json"><![CDATA[
{
  "fdbs": [ { ... }, { ... }, ... ]
}
]]></sourcecode>
        <t>Different applications will implement support for a varying set of database operators. Resolvers provide a list of entries (rather than a single entry) so that they can support as many databases as possible.</t>
      </section>
    </section>
    <section anchor="template">
      <name>Database Entry Resolution Templates</name>
      <t>A Database Entry Resolution Template is a URI Template <xref target="RFC6570"/> contained in the DNS Filtering Database Registry (<xref target="registry"/>) that, on expansion, provides a URI that can be dereferenced to obtain details about the filtering incident.</t>
      <t>It <bcp14>MUST</bcp14> be a Level 1 or Level 2 template (see <xref section="1.2" sectionFormat="of" target="RFC6570"/>). It has the following variables from the Filtering Database Entry (see <xref target="entry-id"/>) available to it:</t>
      <dl>
        <dt>db:</dt>
        <dd>
          <t>the Filtering Database Operator ID</t>
        </dd>
        <dt>id:</dt>
        <dd>
          <t>the Filtering Incident ID</t>
        </dd>
      </dl>
      <t>For example:</t>
      <artwork><![CDATA[
https://resolver.example.com/filtering-incidents/{id}
]]></artwork>
      <t>Applications <bcp14>MUST</bcp14> store a local copy of the DNS Filtering Database Registry (<xref target="registry"/>) for purposes of template lookup; they <bcp14>MUST NOT</bcp14> query the IANA registry upon each use. The registry is keyed by the Filtering Database Operator ID.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="extra-text-json-names">
        <name>EXTRA-TEXT JSON Names</name>
        <t>IANA will register the following fields in the "EXTRA-TEXT JSON Names" sub-registry established by <xref target="I-D.ietf-dnsop-structured-dns-error"/>:</t>
        <dl spacing="compact">
          <dt>JSON Name:</dt>
          <dd>
            <t>"fdbs"</t>
          </dd>
          <dt>Field Meaning:</dt>
          <dd>
            <t>Filtering Databases</t>
          </dd>
          <dt>Short Description:</dt>
          <dd>
            <t>an array of filtering database entries</t>
          </dd>
          <dt>Mandatory:</dt>
          <dd>
            <t>no</t>
          </dd>
          <dt>Specification:</dt>
          <dd>
            <t>this document</t>
          </dd>
        </dl>
      </section>
      <section anchor="registry">
        <name>The DNS Filtering Database Registry</name>
        <t>IANA will establish a new registry, the "DNS Filtering Database Registry." Its registration policy is first-come, first-served (FCFS), although IANA may refuse registrations that it deems to be deceptive or spurious.</t>
        <t>It contains the following fields:</t>
        <dl>
          <dt>Name:</dt>
          <dd>
            <t>The name of the DNS Filtering Database</t>
          </dd>
          <dt>Contact:</dt>
          <dd>
            <t>an e-mail address or other appropriate contact mechanism</t>
          </dd>
          <dt>Filtering Database Operator ID:</dt>
          <dd>
            <t>see <xref target="entry-id"/></t>
          </dd>
          <dt>Database Entry Resolution Template:</dt>
          <dd>
            <t>see <xref target="template"/></t>
          </dd>
        </dl>
        <t>The Database Entry Resolution Template can be updated by the contact at any time. However, operators <bcp14>SHOULD</bcp14> accommodate potentially long lag times for applications to update their copies of the registry.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This specification does not provide a way to authenticate that a particular filtering incident as experienced by an application was actually associated with the information presented. This means that an attacker (for example, one controlling a DNS resolver) can claim that a particular filtering incident is occurring when in fact it is not. However, a successful attack would need to reuse an existing DNS Filtering Database Operator ID and Filtering Incident ID that combine to expand to a URL that can be successfully dereferenced. Doing so is not currently thought to be particularly advantageous to an attacker to do so. Future iterations of this specification may introduce more robust protections.</t>
      <t>The details of DNS responses are not available to all applications, depending on how they are architected and the information made available to them by their host. As a result, this mechanism is not reliable; some applications will not be able to display this error information.</t>
      <t>Because the registry is first-come first-served, applications (such as Web browsers) will need to exercise judgement regarding which database operators' error messages they display to users. This decision might be influenced by the identity of the resolver producing the error message, the database operator, or local configuration.</t>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>An application dereferencing an incident URL may reveal the IP address of the
user to the filtering database operator, along with the fact that the user
attempted to resolve a specific domain whose resolution was filtered or
censored. In some jurisdictions this exposure may carry meaningful risk to the
user. While allowing users the choice to trust only specific filtering databases
may mitigate the risk from a filtering database operator, on-path network
observers may still infer that the user encountered a filtering incident for a
sensitive domain based on a connection to the filtering database.</t>
      <t>To mitigate this risk, applications can choose to route
incident URL fetches through a privacy-preserving
mechanism like a proxy. In
absence of such a proxy, applications <bcp14>MUST NOT</bcp14> automatically fetch incident URLs
without explicit user action.</t>
      <t>Applications and users should be aware that a resolver and filtering database
operator acting in collusion, or a single party operating in both roles, could
use unique Filtering Incident IDs to correlate user activity across requests.
As such, applications should get explicit input from users on which filtering
database operators they trust, and consequently disregard any entries from
operators the user does not explicitly trust.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="I-D.ietf-dnsop-structured-dns-error">
          <front>
            <title>Structured Error Data for Filtered DNS</title>
            <author fullname="Dan Wing" initials="D." surname="Wing">
              <organization>Citrix Systems, Inc.</organization>
            </author>
            <author fullname="Tirumaleswar Reddy.K" initials="T." surname="Reddy.K">
              <organization>Nokia</organization>
            </author>
            <author fullname="Neil Cook" initials="N." surname="Cook">
              <organization>Open-Xchange</organization>
            </author>
            <author fullname="Mohamed Boucadair" initials="M." surname="Boucadair">
              <organization>Orange</organization>
            </author>
            <date day="29" month="July" year="2026"/>
            <abstract>
              <t>   DNS filtering is widely deployed for various reasons, including
   network security and policy enforcement.  However, filtered DNS
   responses lack structured information for end users to understand the
   reason for the filtering.  Existing mechanisms to provide explanatory
   details to end users cause harm especially if the blocked DNS
   response is for HTTPS resources.

   This document updates RFC 8914 by signaling client support for
   structuring the EXTRA-TEXT field of the Extended DNS Error to provide
   details on the DNS filtering.  Such details can be parsed by the
   client and displayed, logged, or used for other purposes.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-dnsop-structured-dns-error-27"/>
        </reference>
        <reference anchor="RFC8914">
          <front>
            <title>Extended DNS Errors</title>
            <author fullname="W. Kumari" initials="W." surname="Kumari"/>
            <author fullname="E. Hunt" initials="E." surname="Hunt"/>
            <author fullname="R. Arends" initials="R." surname="Arends"/>
            <author fullname="W. Hardaker" initials="W." surname="Hardaker"/>
            <author fullname="D. Lawrence" initials="D." surname="Lawrence"/>
            <date month="October" year="2020"/>
            <abstract>
              <t>This document defines an extensible method to return additional information about the cause of DNS errors. Though created primarily to extend SERVFAIL to provide additional information about the cause of DNS and DNSSEC failures, the Extended DNS Errors option defined in this document allows all response types to contain extended error information. Extended DNS Error information does not change the processing of RCODEs.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8914"/>
          <seriesInfo name="DOI" value="10.17487/RFC8914"/>
        </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="RFC6570">
          <front>
            <title>URI Template</title>
            <author fullname="J. Gregorio" initials="J." surname="Gregorio"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="M. Hadley" initials="M." surname="Hadley"/>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
            <author fullname="D. Orchard" initials="D." surname="Orchard"/>
            <date month="March" year="2012"/>
            <abstract>
              <t>A URI Template is a compact sequence of characters for describing a range of Uniform Resource Identifiers through variable expansion. This specification defines the URI Template syntax and the process for expanding a URI Template into a URI reference, along with guidelines for the use of URI Templates on the Internet. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6570"/>
          <seriesInfo name="DOI" value="10.17487/RFC6570"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="lumen" target="https://lumendatabase.org/">
          <front>
            <title>Lumen</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
      </references>
    </references>
    <?line 249?>

<section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>Thanks to Lars Eggert, Tommy Pauly, Emily Stark, and Martin Thomson for their input to this specification.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA51a7XIbubH9P0+B0D9i3yJpy9lks9xkE60l31VKkh1JriSV
2kqBMyCJ1XAwATCkGZX2We6z3CfL6QYwH6QkK9kfa2o+gO7G6dNfM5lMMq99
qWbi5PJavNelV1ZXS3FjZeVqaVWV7zI5n1u1mWWFySu5xrOFlQs/0covJkXl
TD1ZpBcnvvfi5M2brJBezbIc/18au5sJ54ss07WdCW8b59++efPNm7fZrdpt
jS1m4qzCOpXykxPaIsucl1XxD1maCtvulMvcWlr/j382xis3E5XJaj0Tf/cm
Hwv8T1eFqvxYOGO9VQuHX7t1/OGtznErN+taxh9rPIxbuip1pX7MMtn4lbGz
TEwygf90hS0upuLSeA/dVnLNl4MNLqS93b9j7FJW+l/Sa1PNxLvSNMWihC34
Zm2gTDnj30JMxIUq56aBsnwlN03lyUDHsIqVpZZ8Wa2lLmdiXRn/R/rfFLbh
G42F3ivvazd7/TrdeT2Q/GQqjgurZdWT+kRudNG/PBT5f41ZlnsCfbo+7otS
0Aq55BX+uKRrU1gSZ1otjF1jnY0iHcsGxg3KemmXynfS8i3gQs6lU1MI8Do8
FnB4TnezbDKZCDknU+SAwd3dL84mJ9Me4nCnyX1jVUEXJspaY+/vobi3pmhy
5UT3hOC7grYUEJKhbpWrTeXwnF9JL1Zyo8RcqUoEKKtiKm5WGqvUKtcLnbOB
hCxLs3Vibaxq74hCeVjBCbMQrR9AkFwTFrG+wcIwZ7VROywbVFvrooChs+wF
QZ5Fpg2yLDlAEtKUG2WdAIhoSaukw+rlTrhm/pPKPa1eqqUscZAFPcjaWPXP
RuONeWnyW5IGSneiQc5WdkKFm4rvVS4bB52afNV7ciXrWlVOFA3/2YrUkKxw
uJUisRzc0AtZCbVYQCQAQGzljiQjF2sqMh4ukWB4NqxJy+EB4EBgXwsnNAsP
62P5pvTBgDCSkx5uO+f9SG7siDVco4SETYRX+YqWL0VtzbxU67GwkqQiM+C0
4HOlzneECmU3OA0sgwO4Nms1AL4LimNNRp+4u2OMAk9rU2kP67GNy91kLQm5
gFRnJJakbubYSUCVjc4VTAPcsuVbSz8EDegYXsSByhygdRpaiOQbOJgPrA34
1GtAdQ2zytLBsCtjcFywIG/UW5yOXjmsbTZkBg1NITLevFVkvbWQG4BVYhsY
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
Cfaa/aRhmv0bj7raGtgsAAA=

-->

</rfc>
