<?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.30 (Ruby 3.4.8) -->
<?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-nottingham-dnsop-censorship-transparency-00" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title>DNS Censorship Transparency</title>
    <seriesInfo name="Internet-Draft" value="draft-nottingham-dnsop-censorship-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://www.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="February" day="19"/>
    <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 Incident 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>An Database Entry Resolution Template is a URI Template <xref target="RFC6570"/> contained in the DNS Filtering Database Registry (<xref target="registry"/>) that, upon 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>Short Description:</dt>
          <dd>
            <t>a 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="1" month="February" year="2026"/>
            <abstract>
              <t>   DNS filtering is widely deployed for various reasons, including
   network security.  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-16"/>
        </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 246?>

<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:
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
HmsbLcFes580TLN/AW+ATbHJLAAA

-->

</rfc>
