5Internet Engineering Task Force (IETF)                      S. Kitterman
 
6Request for Comments: 9091                        fTLD Registry Services
 
7Category: Experimental                                  T. Wicinski, Ed.
 
8ISSN: 2070-1721                                                July 2021
 
11    Experimental Domain-Based Message Authentication, Reporting, and
 
12        Conformance (DMARC) Extension for Public Suffix Domains
 
16   Domain-based Message Authentication, Reporting, and Conformance
 
17   (DMARC), defined in RFC 7489, permits a domain-controlling
 
18   organization to express domain-level policies and preferences for
 
19   message validation, disposition, and reporting, which a mail-
 
20   receiving organization can use to improve mail handling.
 
22   DMARC distinguishes the portion of a name that is a Public Suffix
 
23   Domain (PSD), below which Organizational Domain names are created.
 
24   The basic DMARC capability allows Organizational Domains to specify
 
25   policies that apply to their subdomains, but it does not give that
 
26   capability to PSDs.  This document describes an extension to DMARC to
 
27   fully enable DMARC functionality for PSDs.
 
29   Some implementations of DMARC consider a PSD to be ineligible for
 
30   DMARC enforcement.  This specification addresses that case.
 
34   This document is not an Internet Standards Track specification; it is
 
35   published for examination, experimental implementation, and
 
38   This document defines an Experimental Protocol for the Internet
 
39   community.  This document is a product of the Internet Engineering
 
40   Task Force (IETF).  It represents the consensus of the IETF
 
41   community.  It has received public review and has been approved for
 
42   publication by the Internet Engineering Steering Group (IESG).  Not
 
43   all documents approved by the IESG are candidates for any level of
 
44   Internet Standard; see Section 2 of RFC 7841.
 
46   Information about the current status of this document, any errata,
 
47   and how to provide feedback on it may be obtained at
 
48   https://www.rfc-editor.org/info/rfc9091.
 
52   Copyright (c) 2021 IETF Trust and the persons identified as the
 
53   document authors.  All rights reserved.
 
55   This document is subject to BCP 78 and the IETF Trust's Legal
 
56   Provisions Relating to IETF Documents
 
57   (https://trustee.ietf.org/license-info) in effect on the date of
 
58   publication of this document.  Please review these documents
 
59   carefully, as they describe your rights and restrictions with respect
 
60   to this document.  Code Components extracted from this document must
 
61   include Simplified BSD License text as described in Section 4.e of
 
62   the Trust Legal Provisions and are provided without warranty as
 
63   described in the Simplified BSD License.
 
70   2.  Terminology and Definitions
 
71     2.1.  Conventions Used in This Document
 
72     2.2.  Public Suffix Domain (PSD)
 
73     2.3.  Organizational Domain
 
75     2.5.  Public Suffix Operator (PSO)
 
76     2.6.  PSO-Controlled Domain Names
 
77     2.7.  Non-existent Domains
 
78   3.  PSD DMARC Updates to DMARC Requirements
 
80     3.2.  Changes in Section 6.3 ("General Record Format")
 
81     3.3.  Changes in Section 6.4 ("Formal Definition")
 
82     3.4.  Changes in Section 6.5 ("Domain Owner Actions")
 
83     3.5.  Changes in Section 6.6.1 ("Extract Author Domain")
 
84     3.6.  Changes in Section 6.6.3 ("Policy Discovery")
 
85     3.7.  Changes in Section 7 ("DMARC Feedback")
 
86   4.  Privacy Considerations
 
87   5.  Security Considerations
 
88   6.  IANA Considerations
 
90     7.1.  Normative References
 
91     7.2.  Informative References
 
92   Appendix A.  PSD DMARC Privacy Concern Mitigation Experiment
 
93   Appendix B.  DMARC PSD Registry Examples
 
94     B.1.  DMARC PSD DNS Query Service
 
95     B.2.  DMARC PSD Registry
 
96     B.3.  DMARC PSD PSL Extension
 
97   Appendix C.  Implementations
 
98     C.1.  Authheaders Module
 
99     C.2.  Zdkimfilter Module
 
105   DMARC [RFC7489] provides a mechanism for publishing organizational
 
106   policy information to email receivers.  DMARC allows policy to be
 
107   specified for both individual domains and for Organizational Domains
 
108   and their subdomains within a single organization.
 
110   To determine the Organizational Domain for a message under
 
111   evaluation, and thus where to look for a policy statement, DMARC
 
112   makes use of a public suffix list.  The process for doing this can be
 
113   found in Section 3.2 of the DMARC specification [RFC7489].
 
114   Currently, the most common public suffix list being used is the one
 
115   maintained by the Mozilla Foundation and made public at
 
116   <https://publicsuffix.org>.
 
118   In the basic DMARC model, Public Suffix Domains (PSDs) are not
 
119   Organizational Domains and are thus not subject to DMARC processing.
 
120   In DMARC, domains fall into one of three categories: Organizational
 
121   Domains, subdomains of Organizational Domains, or PSDs.  A PSD can
 
122   only publish DMARC policy for itself and not for any subdomains under
 
123   it.  In some cases, this limitation allows for the abuse of non-
 
124   existent organizational-level domains and hampers identification of
 
125   domain abuse in email.
 
127   This document specifies experimental updates to the DMARC
 
128   specification [RFC7489] in an attempt to mitigate this abuse.
 
132   As an example, imagine a Top-Level Domain (TLD), ".example", that has
 
133   public subdomains for government and commercial use (".gov.example"
 
134   and ".com.example").  The maintainer of a list of such a PSD
 
135   structure would include entries for both of these subdomains, thereby
 
136   indicating that they are PSDs, below which Organizational Domains can
 
137   be registered.  Suppose further that there exists a legitimate domain
 
138   called "tax.gov.example", registered within ".gov.example".
 
140   By exploiting the typically unauthenticated nature of email, there
 
141   are regular malicious campaigns to impersonate this organization that
 
142   use similar-looking ("cousin") domains such as "t4x.gov.example".
 
143   Such domains are not registered.
 
145   Within the ".gov.example" public suffix, use of DMARC has been
 
146   mandated, so "gov.example" publishes the following DMARC DNS record:
 
148   _dmarc.gov.example. IN TXT ( "v=DMARC1; p=reject;"
 
149                                "rua=mailto:dmc@dmarc.svc.gov.example" )
 
151   This DMARC record provides policy and a reporting destination for
 
152   mail sent from @gov.example.  Similarly, "tax.gov.example" will have
 
153   a DMARC record that specifies policy for mail sent from addresses
 
154   @tax.gov.example.  However, due to DMARC's current method of
 
155   discovering and applying policy at the Organizational Domain level,
 
156   the non-existent Organizational Domain of @t4x.gov.example does not
 
157   and cannot fall under a DMARC policy.
 
159   Defensively registering all variants of "tax" is not a scalable
 
160   strategy.  The intent of this specification, therefore, is to enhance
 
161   the DMARC discovery method by enabling an agent receiving such a
 
162   message to be able to determine that a relevant policy is present at
 
163   "gov.example", which is precluded by the current DMARC specification.
 
167   This document provides a simple extension to [RFC7489] to allow
 
168   operators of Public Suffix Domains (PSDs) to:
 
170   *  Express policy at the level of the PSD that covers all
 
171      Organizational Domains that do not explicitly publish DMARC
 
174   *  Extend the DMARC policy query functionality to detect and process
 
177   *  Describe receiver feedback for such policies
 
179   *  Provide controls to mitigate potential privacy considerations
 
180      associated with this extension
 
182   This document also provides a new DMARC tag to indicate requested
 
183   handling policy for non-existent subdomains.  This is provided
 
184   specifically to support phased deployment of PSD DMARC but is
 
185   expected to be useful more generally.  Undesired rejection risks for
 
186   mail purporting to be from domains that do not exist are
 
187   substantially lower than for those that do, so the operational risk
 
188   of requesting harsh policy treatment (e.g., reject) is lower.
 
190   As an additional benefit, the PSD DMARC extension clarifies existing
 
191   requirements.  Based on the requirements of [RFC7489], DMARC should
 
192   function above the organizational level for exact domain matches
 
193   (i.e., if a DMARC record were published for "example", then mail from
 
194   example@example should be subject to DMARC processing).  Testing has
 
195   revealed that this is not consistently applied in different
 
198   There are two types of Public Suffix Operators (PSOs) for which this
 
199   extension would be useful and appropriate:
 
201   Branded PSDs (e.g., ".google"):
 
202      These domains are effectively Organizational Domains as discussed
 
203      in [RFC7489].  They control all subdomains of the tree.  These are
 
204      effectively private domains but listed in the current public
 
205      suffix list.  They are treated as public for DMARC purposes.  They
 
206      require the same protections as DMARC Organizational Domains but
 
207      are currently unable to benefit from DMARC.
 
209   Multi-organization PSDs that require DMARC usage (e.g., ".bank"):
 
210      Because existing Organizational Domains using this PSD have their
 
211      own DMARC policy, the applicability of this extension is for non-
 
212      existent domains.  The extension allows the brand protection
 
213      benefits of DMARC to extend to the entire PSD, including cousin
 
214      domains of registered organizations.
 
216   Due to the design of DMARC and the nature of the Internet email
 
217   architecture [RFC5598], there are interoperability issues associated
 
218   with DMARC deployment.  These are discussed in "Interoperability
 
219   Issues between Domain-based Message Authentication, Reporting, and
 
220   Conformance (DMARC) and Indirect Email Flows" [RFC7960].  These
 
221   issues are not typically applicable to PSDs since they (e.g., the
 
222   ".gov.example" used above) do not typically send mail.
 
2242.  Terminology and Definitions
 
226   This section defines terms used in the rest of the document.
 
2282.1.  Conventions Used in This Document
 
230   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
 
231   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
 
232   "OPTIONAL" in this document are to be interpreted as described in
 
233   BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
 
234   capitals, as shown here.
 
2362.2.  Public Suffix Domain (PSD)
 
238   The global Internet Domain Name System (DNS) is documented in
 
239   numerous RFCs.  It defines a tree of names starting with root, ".",
 
240   immediately below which are Top-Level Domain names such as ".com" and
 
241   ".us".  The domain name structure consists of a tree of names, each
 
242   of which is made of a sequence of words ("labels") separated by
 
243   period characters.  The root of the tree is simply called ".".  The
 
244   Internet community at large, through processes and policies external
 
245   to this work, selects points in this tree at which to register domain
 
246   names "owned" by independent organizations.  Real-world examples are
 
247   ".com", ".org", ".us", and ".gov.uk".  Names at which such
 
248   registrations occur are called "Public Suffix Domains (PSDs)", and a
 
249   registration consists of a label selected by the registrant to which
 
250   a desirable PSD is appended.  For example, "ietf.org" is a registered
 
251   domain name, and ".org" is its PSD.
 
2532.3.  Organizational Domain
 
255   The term "Organizational Domain" is defined in Section 3.2 of
 
260   The longest PSD is the Organizational Domain with one label removed.
 
261   It names the immediate parent node of the Organizational Domain in
 
262   the DNS namespace tree.
 
2642.5.  Public Suffix Operator (PSO)
 
266   A Public Suffix Operator is an organization that manages operations
 
267   within a PSD, particularly the DNS records published for names at and
 
268   under that domain name.
 
2702.6.  PSO-Controlled Domain Names
 
272   PSO-Controlled Domain Names are names in the DNS that are managed by
 
273   a PSO and are not available for use as Organizational Domains.  PSO-
 
274   Controlled Domain Names may have one (e.g., ".com") or more (e.g.,
 
275   ".co.uk") name components, depending on PSD policy.
 
2772.7.  Non-existent Domains
 
279   For DMARC purposes, a non-existent domain is a domain for which there
 
280   is an NXDOMAIN or NODATA response for A, AAAA, and MX records.  This
 
281   is a broader definition than that in [RFC8020].
 
2833.  PSD DMARC Updates to DMARC Requirements
 
285   To participate in this experiment, implementations should interpret
 
286   [RFC7489] as described in the following subsections.
 
290   References to "Domain Owners" also apply to PSOs.
 
2923.2.  Changes in Section 6.3 ("General Record Format")
 
294   The following paragraph is added to this section.  A new tag is added
 
297   |  np:  Requested Mail Receiver policy for non-existent subdomains
 
298   |     (plain-text; OPTIONAL).  Indicates the policy to be enacted by
 
299   |     the Receiver at the request of the Domain Owner.  It applies
 
300   |     only to non-existent subdomains of the domain queried and not
 
301   |     to either existing subdomains or the domain itself.  Its syntax
 
302   |     is identical to that of the "p" tag defined below.  If the "np"
 
303   |     tag is absent, the policy specified by the "sp" tag (if the
 
304   |     "sp" tag is present) or the policy specified by the "p" tag (if
 
305   |     the "sp" tag is absent) MUST be applied for non-existent
 
306   |     subdomains.  Note that "np" will be ignored for DMARC records
 
307   |     published on subdomains of Organizational Domains and PSDs due
 
308   |     to the effect of the DMARC policy discovery mechanism described
 
309   |     in Section 6.6.3 of [RFC7489].
 
311   The following tag definitions from DMARC are updated:
 
313   p:  The sentence 'Policy applies to the domain queried and to
 
314      subdomains, unless subdomain policy is explicitly described using
 
315      the "sp" tag' is updated to read 'Policy applies to the domain
 
316      queried and to subdomains, unless subdomain policy is explicitly
 
317      described using the "sp" or "np" tags.'
 
319   sp:  The sentence 'If absent, the policy specified by the "p" tag
 
320      MUST be applied for subdomains' is updated to read 'If both the
 
321      "sp" tag is absent and the "np" tag is either absent or not
 
322      applicable, the policy specified by the "p" tag MUST be applied
 
3253.3.  Changes in Section 6.4 ("Formal Definition")
 
327   The ABNF [RFC5234] for DMARC is updated to include a new definition,
 
330               dmarc-nprequest =  "np" *WSP "=" *WSP
 
331                   ( "none" / "quarantine" / "reject" )
 
333   The "dmarc-record" definition is also updated to include the
 
336   dmarc-record    = dmarc-version dmarc-sep
 
338                 [dmarc-sep dmarc-srequest]
 
339                 [dmarc-sep dmarc-auri]
 
340                 [dmarc-sep dmarc-furi]
 
341                 [dmarc-sep dmarc-adkim]
 
342                 [dmarc-sep dmarc-aspf]
 
343                 [dmarc-sep dmarc-ainterval]
 
345                 [dmarc-sep dmarc-rfmt]
 
346                 [dmarc-sep dmarc-percent]
 
348                 [dmarc-sep dmarc-nprequest]
 
349                 ; components other than dmarc-version and
 
350                 ; dmarc-request may appear in any order
 
3523.4.  Changes in Section 6.5 ("Domain Owner Actions")
 
354   In addition to the DMARC Domain Owner actions, PSOs that require use
 
355   of DMARC and participate in PSD DMARC ought to make that information
 
356   available to receivers.  This document is an experimental mechanism
 
357   for doing so; see the description in Appendix B.
 
3593.5.  Changes in Section 6.6.1 ("Extract Author Domain")
 
361   Experience with DMARC has shown that some implementations short-
 
362   circuit messages, bypassing DMARC policy application, when the domain
 
363   name extracted by the receiver (from the RFC5322.From domain) is on
 
364   the public suffix list used by the receiver.  This negates the
 
365   capability being created by this specification.  Therefore, the
 
366   following paragraph is appended to Section 6.6.1 of the DMARC
 
367   specification [RFC7489]:
 
369   |  Note that domain names that appear on a public suffix list are not
 
370   |  exempt from DMARC policy application and reporting.
 
3723.6.  Changes in Section 6.6.3 ("Policy Discovery")
 
374   A new step is added between steps 3 and 4:
 
376   |  3A.  If the set is now empty and the longest PSD ([RFC9091],
 
377   |     Section 2.4) of the Organizational Domain is one that the
 
378   |     receiver has determined is acceptable for PSD DMARC (based on
 
379   |     the data in one of the DMARC PSD Registry Examples described in
 
380   |     Appendix B of [RFC9091]), the Mail Receiver MUST query the DNS
 
381   |     for a DMARC TXT record at the DNS domain matching the longest
 
382   |     PSD in place of the RFC5322.From domain in the message (if
 
383   |     different).  A possibly empty set of records is returned.
 
385   As an example, for a message with the Organizational Domain of
 
386   "example.compute.cloudcompany.com.example", the query for PSD DMARC
 
387   would use "compute.cloudcompany.com.example" as the longest PSD.  The
 
388   receiver would check to see if that PSD is listed in the DMARC PSD
 
389   Registry, and if so, perform the policy lookup at
 
390   "_dmarc.compute.cloudcompany.com.example".
 
392      Note: Because the PSD policy query comes after the Organizational
 
393      Domain policy query, PSD policy is not used for Organizational
 
394      Domains that have published a DMARC policy.  Specifically, this is
 
395      not a mechanism to provide feedback addresses (RUA/RUF) when an
 
396      Organizational Domain has declined to do so.
 
3983.7.  Changes in Section 7 ("DMARC Feedback")
 
400   The following paragraph is added to this section:
 
402   |  Operational note for PSD DMARC: For PSOs, feedback for non-
 
403   |  existent domains is desirable and useful, just as it is for org-
 
404   |  level DMARC operators.  See Section 4 of [RFC9091] for discussion
 
405   |  of privacy considerations for PSD DMARC.
 
4074.  Privacy Considerations
 
409   These privacy considerations are developed based on the requirements
 
410   of [RFC6973].  Additionally, the privacy considerations of [RFC7489]
 
411   apply to the mechanisms described by this document.  To participate
 
412   in this experiment, implementations should be aware of the privacy
 
413   considerations described in this section.  If this experiment is
 
414   successful, this section should be incorporated into the "Privacy
 
415   Considerations" section as "Feedback Leakage".
 
417   Providing feedback reporting to PSOs can, in some cases, cause
 
418   information to leak out of an organization to the PSO.  This leakage
 
419   could potentially be utilized as part of a program of pervasive
 
420   surveillance (see [RFC7624]).  There are roughly three cases to
 
423   Single Organization PSDs (e.g., ".google"):
 
424      RUA and RUF reports based on PSD DMARC have the potential to
 
425      contain information about emails related to entities managed by
 
426      the organization.  Since both the PSO and the Organizational
 
427      Domain Owners are common, there is no additional privacy risk for
 
428      either normal or non-existent domain reporting due to PSD DMARC.
 
430   Multi-organization PSDs that require DMARC usage (e.g., ".bank"):
 
431      Reports based on PSD DMARC will only be generated for domains that
 
432      do not publish a DMARC policy at the organizational or host level.
 
433      For domains that do publish the required DMARC policy records, the
 
434      feedback reporting addresses (RUA and RUF) of the organization (or
 
435      hosts) will be used.  The only direct risk of feedback leakage for
 
436      these PSDs are for Organizational Domains that are out of
 
437      compliance with PSD policy.  Data on non-existent cousin domains
 
438      would be sent to the PSO.
 
440   Multi-organization PSDs (e.g., ".com") that do not mandate DMARC
 
442      Privacy risks for Organizational Domains that have not deployed
 
443      DMARC within such PSDs are significant.  For non-DMARC
 
444      Organizational Domains, all DMARC feedback will be directed to the
 
445      PSO.  PSD DMARC is opt out (by publishing a DMARC record at the
 
446      Organizational Domain level) instead of opt in, which would be the
 
447      more desirable characteristic.  This means that any non-DMARC
 
448      Organizational Domain would have its Feedback Reports redirected
 
449      to the PSO.  The content of such reports, particularly for
 
450      existing domains, is privacy sensitive.
 
452   PSOs will receive feedback on non-existent domains, which may be
 
453   similar to existing Organizational Domains.  Feedback related to such
 
454   cousin domains have a small risk of carrying information related to
 
455   an actual Organizational Domain.  To minimize this potential concern,
 
456   PSD DMARC feedback MUST be limited to Aggregate Reports.  Feedback
 
457   Reports carry more detailed information and present a greater risk.
 
459   Due to the inherent privacy and security risks associated with PSD
 
460   DMARC for Organizational Domains in multi-organization PSDs that do
 
461   not participate in DMARC, any feedback reporting related to multi-
 
462   organizational PSDs MUST be limited to non-existent domains except in
 
463   cases where the reporter knows that PSO requires use of DMARC (by
 
464   checking the DMARC PSD Registry).
 
4665.  Security Considerations
 
468   This document does not change the security considerations of
 
469   [RFC7489] and [RFC7960].
 
471   The risks of the issues identified in Section 12.3 of [RFC7489] ("DNS
 
472   Security") are amplified by PSD DMARC.  In particular, consequences
 
473   of DNS cache poisoning (or name chaining) are increased because a
 
474   successful attack would potentially have a much wider scope (see
 
475   [RFC3833] for details).
 
477   The risks of the issues identified in Section 12.5 of [RFC7489]
 
478   ("External Reporting Addresses") are amplified by PSD DMARC.  By
 
479   design, PSD DMARC causes unrequested reporting of feedback to
 
480   entities external to the Organizational Domain.  This is discussed in
 
481   more detail in Section 4.
 
4836.  IANA Considerations
 
485   IANA has added a new tag to the "DMARC Tag Registry" in the "Domain-
 
486   based Message Authentication, Reporting, and Conformance (DMARC)
 
487   Parameters" registry.  The "Status" column is defined in Section 11.4
 
490   The new entry is as follows:
 
492     +==========+===========+=========+=============================+
 
493     | Tag Name | Reference | Status  | Description                 |
 
494     +==========+===========+=========+=============================+
 
495     | np       | RFC 9091  | current | Requested handling policy   |
 
496     |          |           |         | for non-existent subdomains |
 
497     +----------+-----------+---------+-----------------------------+
 
5047.1.  Normative References
 
506   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
 
507              Requirement Levels", BCP 14, RFC 2119,
 
508              DOI 10.17487/RFC2119, March 1997,
 
509              <https://www.rfc-editor.org/info/rfc2119>.
 
511   [RFC5234]  Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax
 
512              Specifications: ABNF", STD 68, RFC 5234,
 
513              DOI 10.17487/RFC5234, January 2008,
 
514              <https://www.rfc-editor.org/info/rfc5234>.
 
516   [RFC7489]  Kucherawy, M., Ed. and E. Zwicky, Ed., "Domain-based
 
517              Message Authentication, Reporting, and Conformance
 
518              (DMARC)", RFC 7489, DOI 10.17487/RFC7489, March 2015,
 
519              <https://www.rfc-editor.org/info/rfc7489>.
 
521   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
 
522              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
 
523              May 2017, <https://www.rfc-editor.org/info/rfc8174>.
 
5257.2.  Informative References
 
528              "Public Suffix Domain DMARC", <https://psddmarc.org/>.
 
530   [RFC3833]  Atkins, D. and R. Austein, "Threat Analysis of the Domain
 
531              Name System (DNS)", RFC 3833, DOI 10.17487/RFC3833, August
 
532              2004, <https://www.rfc-editor.org/info/rfc3833>.
 
534   [RFC5598]  Crocker, D., "Internet Mail Architecture", RFC 5598,
 
535              DOI 10.17487/RFC5598, July 2009,
 
536              <https://www.rfc-editor.org/info/rfc5598>.
 
538   [RFC6973]  Cooper, A., Tschofenig, H., Aboba, B., Peterson, J.,
 
539              Morris, J., Hansen, M., and R. Smith, "Privacy
 
540              Considerations for Internet Protocols", RFC 6973,
 
541              DOI 10.17487/RFC6973, July 2013,
 
542              <https://www.rfc-editor.org/info/rfc6973>.
 
544   [RFC7624]  Barnes, R., Schneier, B., Jennings, C., Hardie, T.,
 
545              Trammell, B., Huitema, C., and D. Borkmann,
 
546              "Confidentiality in the Face of Pervasive Surveillance: A
 
547              Threat Model and Problem Statement", RFC 7624,
 
548              DOI 10.17487/RFC7624, August 2015,
 
549              <https://www.rfc-editor.org/info/rfc7624>.
 
551   [RFC7960]  Martin, F., Ed., Lear, E., Ed., Draegen, T., Ed., Zwicky,
 
552              E., Ed., and K. Andersen, Ed., "Interoperability Issues
 
553              between Domain-based Message Authentication, Reporting,
 
554              and Conformance (DMARC) and Indirect Email Flows",
 
555              RFC 7960, DOI 10.17487/RFC7960, September 2016,
 
556              <https://www.rfc-editor.org/info/rfc7960>.
 
558   [RFC8020]  Bortzmeyer, S. and S. Huque, "NXDOMAIN: There Really Is
 
559              Nothing Underneath", RFC 8020, DOI 10.17487/RFC8020,
 
560              November 2016, <https://www.rfc-editor.org/info/rfc8020>.
 
562   [RFC8126]  Cotton, M., Leiba, B., and T. Narten, "Guidelines for
 
563              Writing an IANA Considerations Section in RFCs", BCP 26,
 
564              RFC 8126, DOI 10.17487/RFC8126, June 2017,
 
565              <https://www.rfc-editor.org/info/rfc8126>.
 
567Appendix A.  PSD DMARC Privacy Concern Mitigation Experiment
 
569   The experiment being performed has three different questions that are
 
570   looking to be addressed in this document.
 
572   *  Section 3.2 modifies policy discovery to add an additional DNS
 
573      lookup.  To determine if this lookup is useful, PSDs will add
 
574      additional DMARC records in place and will analyze the DMARC
 
575      reports.  Success will be determined if a consensus of PSDs that
 
576      publish DMARC records are able to collect useful data.
 
578   *  Section 3.2 adds the "np" tag for non-existent subdomains (DNS
 
579      NXDOMAIN).  PSOs wishing to test this will add this flag to their
 
580      DMARC record and will analyze DMARC reports for deployment.
 
581      Success will be determined if organizations find explicitly
 
582      blocking non-existent subdomains desirable and that doing so
 
583      provides added value.
 
585   *  Section 4 discusses three cases where providing feedback could
 
586      cause information to leak out of an organization.  This experiment
 
587      will analyze the Feedback Reports generated for each case to
 
588      determine if there is information leakage.
 
590Appendix B.  DMARC PSD Registry Examples
 
592   To facilitate experimentation around mitigation of data leakage,
 
593   samples of the DNS-based and IANA-like registries are available at
 
596B.1.  DMARC PSD DNS Query Service
 
598   A sample stand-alone DNS query service is available at [PSD-DMARC].
 
599   It was developed based on the contents suggested for an IANA registry
 
600   in an earlier draft version of this document.  Usage of the service
 
601   is described at [PSD-DMARC].
 
603B.2.  DMARC PSD Registry
 
605   [PSD-DMARC] provides an IANA-like DMARC Public Suffix Domain (PSD)
 
606   Registry as a stand-alone DNS query service.  It follows the contents
 
607   and structure described below.  There is a Comma-Separated Value
 
608   (CSV) version of the listed PSDs that is suitable for use in build
 
609   updates for PSD DMARC-capable software.
 
611   PSDs that are deploying DMARC and are participating in PSD DMARC must
 
612   register their public suffix domain in this new registry.  The
 
613   requirement has to be documented in a manner that satisfies the terms
 
614   of Expert Review, per [RFC8126].  The Designated Expert needs to
 
615   confirm that provided documentation adequately describes PSD policy
 
616   to require Domain Owners to use DMARC or that all Domain Owners are
 
617   part of a single organization with the PSO.
 
619   The authoritative registry can be found here: <https://psddmarc.org>
 
621B.3.  DMARC PSD PSL Extension
 
623   [PSD-DMARC] provides a file formatted like the Public Suffix List
 
624   (PSL) in order to facilitate identification of PSD DMARC
 
625   participants.  Contents are functionally identical to the IANA-like
 
626   registry but presented in a different format.
 
628   When using this approach, the input domain of the extension lookup is
 
629   supposed to be the output domain of the regular PSL lookup, i.e., the
 
630   Organizational Domain.  This alternative data approach is potentially
 
631   useful since DMARC implementations already need to be able to parse
 
632   the data format, so it should be easier to implement.
 
634Appendix C.  Implementations
 
636   There are two known implementations of PSD DMARC available for
 
639C.1.  Authheaders Module
 
641   The authheaders Python module and command line tool is available for
 
642   download or installation from Pypi (Python Packaging Index).
 
644   It supports both use of the DNS-based query service and download of
 
645   the CSV registry file from [PSD-DMARC].
 
647C.2.  Zdkimfilter Module
 
649   The zdkimfilter module is a separately available add-on to Courier-
 
652   Mostly used for DomainKeys Identified Mail (DKIM) signing, it can be
 
653   configured to also verify, apply DMARC policies, and send Aggregate
 
654   Reports.  For PSD DMARC, it uses the PSL extension list approach,
 
655   which is available from [PSD-DMARC].
 
659   Thanks to the following individuals for their contributions (both
 
660   public and private) to improving this document: Kurt Andersen, Seth
 
661   Blank, Dave Crocker, Heather Diaz, Tim Draegen, Zeke Hendrickson,
 
662   Andrew Kennedy, John Levine, Dr. Ian Levy, Craig Schwartz, Alessandro
 
663   Vesely, and Tim Wicinski.
 
665   A special mention to Dave Crocker for coming up with the name.
 
670   fTLD Registry Services
 
674   United States of America
 
676   Phone: +1 301 325-5475
 
677   Email: scott@kitterman.com
 
680   Tim Wicinski (editor)
 
682   United States of America
 
684   Email: tjw.ietf@gmail.com