Domainkeys Identified Mail (DKIM) Signatures

Total Page:16

File Type:pdf, Size:1020Kb

Domainkeys Identified Mail (DKIM) Signatures Network Working Group E. Allman Request for Comments: 4871 Sendmail, Inc. Obsoletes: 4870 J. Callas Category: Standards Track PGP Corporation M. Delany M. Libbey Yahoo! Inc J. Fenton M. Thomas Cisco Systems, Inc. May 2007 DomainKeys Identified Mail (DKIM) Signatures Status of this Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the “Internet Official Protocol Standards” (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited. Copyright Notice Copyright © The IETF Trust (2007). All Rights Reserved. Abstract DomainKeys Identified Mail (DKIM) defines a domain-level authentication framework for email using public-key cryptography and key server technology to permit verification of the source and contents of messages by either Mail Transfer Agents (MTAs) or Mail User Agents (MUAs). The ultimate goal of this framework is to permit a signing domain to assert responsibility for a message, thus protecting message signer identity and the integrity of the messages they convey while retaining the functionality of Internet email as it is known today. Protection of email identity may assist in the global control of "spam" and "phishing". Allman, et al. Standards Track [Page 1] RFC 4871 DKIM Signatures May 2007 Table of Contents 1 Introduction..............................................................................................................................................5 1.1 Signing Identity.................................................................................................................................... 5 1.2 Scalability..............................................................................................................................................5 1.3 Simple Key Management..................................................................................................................... 6 2 Terminology and Definitions..................................................................................................................7 2.1 Signers...................................................................................................................................................7 2.2 Verifiers................................................................................................................................................ 7 2.3 Whitespace............................................................................................................................................ 7 2.4 Common ABNF Tokens.......................................................................................................................7 2.5 Imported ABNF Tokens.......................................................................................................................8 2.6 DKIM-Quoted-Printable....................................................................................................................... 8 3 Protocol Elements.................................................................................................................................. 10 3.1 Selectors..............................................................................................................................................10 3.2 Tag=Value Lists................................................................................................................................. 11 3.3 Signing and Verification Algorithms................................................................................................. 12 3.4 Canonicalization..................................................................................................................................13 3.5 The DKIM-Signature Header Field................................................................................................... 16 3.6 Key Management and Representation................................................................................................21 3.7 Computing the Message Hashes........................................................................................................ 24 3.8 Signing by Parent Domains................................................................................................................26 4 Semantics of Multiple Signatures........................................................................................................ 27 4.1 Example Scenarios..............................................................................................................................27 4.2 Interpretation.......................................................................................................................................27 5 Signer Actions........................................................................................................................................ 29 5.1 Determine Whether the Email Should Be Signed and by Whom......................................................29 5.2 Select a Private Key and Corresponding Selector Information......................................................... 29 5.3 Normalize the Message to Prevent Transport Conversions...............................................................29 5.4 Determine the Header Fields to Sign.................................................................................................30 5.5 Recommended Signature Content...................................................................................................... 31 5.6 Compute the Message Hash and Signature........................................................................................32 5.7 Insert the DKIM-Signature Header Field...........................................................................................32 6 Verifier Actions......................................................................................................................................34 6.1 Extract Signatures from the Message................................................................................................ 34 6.2 Communicate Verification Results.....................................................................................................38 6.3 Interpret Results/Apply Local Policy.................................................................................................38 Allman, et al. Standards Track [Page 2] RFC 4871 DKIM Signatures May 2007 7 IANA Considerations............................................................................................................................ 40 7.1 DKIM-Signature Tag Specifications..................................................................................................40 7.2 DKIM-Signature Query Method Registry..........................................................................................40 7.3 DKIM-Signature Canonicalization Registry...................................................................................... 40 7.4 _domainkey DNS TXT Record Tag Specifications...........................................................................41 7.5 DKIM Key Type Registry..................................................................................................................41 7.6 DKIM Hash Algorithms Registry...................................................................................................... 42 7.7 DKIM Service Types Registry...........................................................................................................42 7.8 DKIM Selector Flags Registry...........................................................................................................42 7.9 DKIM-Signature Header Field...........................................................................................................42 8 Security Considerations........................................................................................................................ 43 8.1 Misuse of Body Length Limits ("l=" Tag)........................................................................................ 43 8.2 Misappropriated Private Key..............................................................................................................43 8.3 Key Server Denial-of-Service Attacks...............................................................................................44 8.4 Attacks Against the DNS................................................................................................................... 44 8.5 Replay Attacks....................................................................................................................................44 8.6 Limits on Revoking Keys.................................................................................................................. 45 8.7 Intentionally Malformed Key Records...............................................................................................45 8.8 Intentionally Malformed DKIM-Signature Header Fields.................................................................45 8.9 Information Leakage...........................................................................................................................45 8.10 Remote Timing Attacks....................................................................................................................45 8.11 Reordered Header Fields.................................................................................................................
Recommended publications
  • XEP-0347: Internet of Things - Discovery
    XEP-0347: Internet of Things - Discovery Peter Waher mailto:peterwaher@hotmail:com xmpp:peter:waher@jabber:org http://www:linkedin:com/in/peterwaher Ronny Klauck mailto:rklauck@informatik:tu-cottbus:de xmpp:TBD http://www-rnks:informatik:tu-cottbus:de/~rklauck 2018-11-03 Version 0.5.1 Status Type Short Name Deferred Standards Track iot-discovery This specification describes an architecture based on the XMPP protocol whereby Things can be in- stalled and safely discovered by their owners and connected into networks of Things. Legal Copyright This XMPP Extension Protocol is copyright © 1999 – 2020 by the XMPP Standards Foundation (XSF). Permissions Permission is hereby granted, free of charge, to any person obtaining a copy of this specification (the ”Specification”), to make use of the Specification without restriction, including without limitation the rights to implement the Specification in a software program, deploy the Specification in a network service, and copy, modify, merge, publish, translate, distribute, sublicense, or sell copies of the Specifi- cation, and to permit persons to whom the Specification is furnished to do so, subject to the condition that the foregoing copyright notice and this permission notice shall be included in all copies or sub- stantial portions of the Specification. Unless separate permission is granted, modified works that are redistributed shall not contain misleading information regarding the authors, title, number, or pub- lisher of the Specification, and shall not claim endorsement of the modified works by the authors, any organization or project to which the authors belong, or the XMPP Standards Foundation. Warranty ## NOTE WELL: This Specification is provided on an ”AS IS” BASIS, WITHOUT WARRANTIES OR CONDI- TIONS OF ANY KIND, express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE.
    [Show full text]
  • A Survey of DNSSEC Deployment in the US R&E Community
    A survey of DNSSEC deployment in the U.S. R&E community Shumon Huque; University of Pennsylvania Bill Owens; NySERNET Joint Techs Conference, Stanford University, July 16th 2012 http://events.internet2.edu/2012/jt-stanford/ 1 Abstract: DNSSEC (DNS Security Extensions) is a system to verify the authenticity of DNS data using public key signatures. Although a small number of institutions in the R&E community have been at the forefront of DNSSEC deployment, the adoption rate in the larger community is still quite low. This talk will present some results of an ongoing project to survey the status of DNSSEC deployment in the US Research & Education and a few other communities. It also surveys the status of several other DNS capabilities, such as availability of the service over IPv6 transport, TCP transport, EDNS0 support, etc. [Joint Techs, Stanford University, Jul 2012] 2 Agenda • DNSSEC deployment monitoring project overview • Live demo of the website • New uses of DNSSEC by applications (DANE/TLSA etc) • (time permitting) [Joint Techs, Stanford University, Jul 2012] 3 DNSSEC at a glance • “DNS Security Extensions” • A system to verify the authenticity of DNS “data” using public key signatures • Specs: RFC 4033, 4034, 4035, 5155 (and more) • Helps detect DNS spoofing, misdirection, cache poisoning .. • Additional benefits: • Ability to store and use cryptographic keying material in the DNS, eg. SSHFP, IPSECKEY, CERT, DKIM, TLSA, etc .. [Joint Techs, Stanford University, Jul 2012] 4 Other surveys • SecSpider • http://secspider.cs.ucla.edu/
    [Show full text]
  • XEP-0156: Discovering Alternative XMPP Connection Methods
    XEP-0156: Discovering Alternative XMPP Connection Methods Joe Hildebrand Peter Saint-Andre Lance Stout mailto:jhildebr@cisco:com mailto:xsf@stpeter:im mailto:lance@andyet:com xmpp:hildjj@jabber:org xmpp:peter@jabber:org xmpp:lance@lance:im http://stpeter:im/ 2020-07-07 Version 1.3.1 Status Type Short Name Draft Standards Track alt-connections This document defines an XMPP Extension Protocol for discovering alternative methods of connecting to an XMPP server using two ways: (1) DNS TXT Resource Record format; and (2) Web Host Metadata Link format. Legal Copyright This XMPP Extension Protocol is copyright © 1999 – 2020 by the XMPP Standards Foundation (XSF). Permissions Permission is hereby granted, free of charge, to any person obtaining a copy of this specification (the ”Specification”), to make use of the Specification without restriction, including without limitation the rights to implement the Specification in a software program, deploy the Specification in a network service, and copy, modify, merge, publish, translate, distribute, sublicense, or sell copies of the Specifi- cation, and to permit persons to whom the Specification is furnished to do so, subject to the condition that the foregoing copyright notice and this permission notice shall be included in all copies or sub- stantial portions of the Specification. Unless separate permission is granted, modified works that are redistributed shall not contain misleading information regarding the authors, title, number, or pub- lisher of the Specification, and shall not claim endorsement of the modified works by the authors, any organization or project to which the authors belong, or the XMPP Standards Foundation. Warranty ## NOTE WELL: This Specification is provided on an ”AS IS” BASIS, WITHOUT WARRANTIES OR CONDI- TIONS OF ANY KIND, express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE.
    [Show full text]
  • 1912 the Pennsylvania State University Obsoletes: 1537 February 1996 Category: Informational
    Network Working Group D. Barr Request for Comments: 1912 The Pennsylvania State University Obsoletes: 1537 February 1996 Category: Informational Common DNS Operational and Configuration Errors Status of this Memo This memo provides information for the Internet community. This memo does not specify an Internet standard of any kind. Distribution of this memo is unlimited. Abstract This memo describes errors often found in both the operation of Domain Name System (DNS) servers, and in the data that these DNS servers contain. This memo tries to summarize current Internet requirements as well as common practice in the operation and configuration of the DNS. This memo also tries to summarize or expand upon issues raised in [RFC 1537]. 1. Introduction Running a nameserver is not a trivial task. There are many things that can go wrong, and many decisions have to be made about what data to put in the DNS and how to set up servers. This memo attempts to address many of the common mistakes and pitfalls that are made in DNS data as well as in the operation of nameservers. Discussions are also made regarding some other relevant issues such as server or resolver bugs, and a few political issues with respect to the operation of DNS on the Internet. 2. DNS Data This section discusses problems people typically have with the DNS data in their nameserver, as found in the zone data files that the nameserver loads into memory. 2.1 Inconsistent, Missing, or Bad Data Every Internet-reachable host should have a name. The consequences of this are becoming more and more obvious.
    [Show full text]
  • Dns Applications and Resource Records
    10 DNS APPLICATIONS AND RESOURCE RECORDS 10.1 INTRODUCTION DNS inherently lends itself well to “translating” a given piece of information into another related piece of information. This resolution process is the very reason for DNS’s invention, and it has been extended beyond resolving hostnames into IP addresses and vice versa to support a broad variety of applications. Virtually any service or application that requires translation of one form of information into another can leverage DNS. Each resource record configured in DNS enables this lookup function, returning a resolution answer for a given query. The DNS server parses the query from the Question section of the DNS message,* seeking a match within the corresponding domain’s zone file for the query’s QNAME, QCLASS, and QTYPE. Each resource record has a Name (aka Owner) field, Class (Internet class is assumed if not specified), and Type field. The RData field contains the corresponding answer to the query. The resource record type defines the type and format of the question (owner/name field) and corresponding answer (RData field). In some instances, multiple resource records may match the queried name, type, and class. In such cases, all matching records, called a Resource Record Set (RRSet), are returned in the Answer section of the response message. * Refer to Figure 9.12. IP Address Management: Principles and Practice, by Timothy Rooney Copyright Ó 2011 the Institute of Electrical and Electronics Engineers, Inc. 10.1 INTRODUCTION 177 Most, but not all, new applications require new resource record types to enable definition of application-specific information, and these new resource record types are standardized via the IETF RFC process.
    [Show full text]
  • 2554 Netscape Communications Category: Standards Track March 1999
    Network Working Group J. Myers Request for Comments: 2554 Netscape Communications Category: Standards Track March 1999 SMTP Service Extension for Authentication Status of this Memo This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (1999). All Rights Reserved. 1. Introduction This document defines an SMTP service extension [ESMTP] whereby an SMTP client may indicate an authentication mechanism to the server, perform an authentication protocol exchange, and optionally negotiate a security layer for subsequent protocol interactions. This extension is a profile of the Simple Authentication and Security Layer [SASL]. 2. Conventions Used in this Document In examples, "C:" and "S:" indicate lines sent by the client and server respectively. The key words "MUST", "MUST NOT", "SHOULD", "SHOULD NOT", and "MAY" in this document are to be interpreted as defined in "Key words for use in RFCs to Indicate Requirement Levels" [KEYWORDS]. 3. The Authentication service extension (1) the name of the SMTP service extension is "Authentication" (2) the EHLO keyword value associated with this extension is "AUTH" Myers Standards Track [Page 1] RFC 2554 SMTP Authentication March 1999 (3) The AUTH EHLO keyword contains as a parameter a space separated list of the names of supported SASL mechanisms. (4) a new SMTP verb "AUTH" is defined (5) an optional parameter using the keyword "AUTH" is added to the MAIL FROM command, and extends the maximum line length of the MAIL FROM command by 500 characters.
    [Show full text]
  • 4322 SSW Category: Informational D.H
    Network Working Group M. Richardson Request for Comments: 4322 SSW Category: Informational D.H. Redelmeier Mimosa December 2005 Opportunistic Encryption using the Internet Key Exchange (IKE) Status of This Memo This memo provides information for the Internet community. It does not specify an Internet standard of any kind. Distribution of this memo is unlimited. Copyright Notice Copyright (C) The Internet Society (2005). Abstract This document describes opportunistic encryption (OE) as designed and implemented by the Linux FreeS/WAN project. OE uses the Internet Key Exchange (IKE) and IPsec protocols. The objective is to allow encryption for secure communication without any pre-arrangement specific to the pair of systems involved. DNS is used to distribute the public keys of each system involved. This is resistant to passive attacks. The use of DNS Security (DNSSEC) secures this system against active attackers as well. As a result, the administrative overhead is reduced from the square of the number of systems to a linear dependence, and it becomes possible to make secure communication the default even when the partner is not known in advance. Table of Contents 1. Introduction ....................................................3 1.1. Motivation .................................................3 1.2. Encryption Regimes .........................................4 1.3. Peer Authentication in Opportunistic Encryption ............4 1.4. Use of RFC 2119 Terms ......................................5 2. Overview ........................................................6
    [Show full text]
  • Baseline Requirements for the Issuance and Management of Publicly-Trusted Certificates Version 1.7.2
    Baseline Requirements for the Issuance and Management of Publicly-Trusted Certificates Version 1.7.2 CA/Browser Forum 22 September, 2020 Copyright 2020 CA/Browser Forum This work is licensed under the Creative Commons Attribution 4.0 International license. Table of Contents 1. INTRODUCTION ................................................................................................................................................ 11 1.1 Overview ....................................................................................................................................................... 11 1.2 Document name and identification ................................................................................................... 11 1.2.1 Revisions .............................................................................................................................................. 12 1.2.2. Relevant Dates .................................................................................................................................. 15 1.3 PKI Participants ......................................................................................................................................... 17 1.3.1 Certification Authorities ................................................................................................................ 17 1.3.2 Registration Authorities ................................................................................................................ 17 1.3.3 Subscribers .........................................................................................................................................
    [Show full text]
  • Auditing an Email Server Patrick Mattson May 2019
    Auditing an Email server Patrick Mattson May 2019 [email protected] Page 1 of 34 Table of Contents Proposal notes ........................................................................................................................................ 4 Learning objective 1 ................................................................................................................................ 6 Learning objective 2 ................................................................................................................................ 6 Learning objective 3 ................................................................................................................................ 6 Learning objective 4 ................................................................................................................................ 6 What are the components of an email server. ......................................................................................... 6 Microsoft Exchange Components ........................................................................................................ 7 Edge Transport - Mail Transfer Agent (MTA) ................................................................................... 7 Other components: ............................................................................................................................. 7 DNS Settings .................................................................................................................................... 7
    [Show full text]
  • SPF Configuration and Best Practices
    SPF Configuration and Best Practices Contents Introduction Prerequisites What is SPF? Will there be much performance impact on the ESAs? How do you enable the SPF? What does "Helo Test" on and off mean? What will happen if the Helo test fails from a certain domain? Valid SPF Records What is the best way to enable it for only one external domain? Can you enable an SPF check for suspected Spam? Related Information Introduction This document describes different scenarios with Sender Policy Framework (SPF) on the Cisco Email Security Appliance (ESA). Prerequisites Cisco recommends that you know these topics: ● Cisco ESA ● All versions of AsyncOS What is SPF? Sender Policy Framework (SPF) is a simple email validation system designed to detect email spoofing by providing a mechanism to allow receiving mail exchangers to check that incoming mail from a domain is being sent from a host authorized by that domain's administrators. The list of authorized sending hosts for a domain is published in the Domain Name System (DNS) records for that domain in the form of a specially formatted TXT record. Email spam and phishing often use forged sender addresses, so publishing and checking SPF records can be considered anti- spam techniques. Will there be much performance impact on the ESAs? From the CPU prospect, there will not be a huge performance impact. However, enabling SPF verification will increase the number of DNS queries and DNS traffic. For every message, the ESA might have to initiate 1-3 SPF DNS queries and this will result in expiring DNS cache earlier than before.
    [Show full text]
  • E-Mail Security (Emailsec - Jan'09)
    E-mail security (emailsec - jan'09) Electronic mail security Antonio Lioy < lioy @ polito.it> Politecnico di Torino Dip. Automatica e Informatica MHS (Message Handling System) MTA MTA MTA chain MSA MSA MS MS MUA MUA MUA (Message User Agent) MSA (Message Submission Agent) MTA (Message Transfer Agent) MS (Message Store) E-mail on multi-user systems Mail Mail editor User User Agent RFC-822 Agent MSA Mail (MTA ) Transfer Agent SMTP SMTP SMTP SMTP MTA MTA MTA © Antonio Lioy - Politecnico di Torino (1995-2009) 1 E-mail security (emailsec - jan'09) E-mail in client-server mode SMTP Mailserver SMTP MTA ... ( MSA ) MilMail User Agent Post Office ... MTA POP, IMAP ( MS ) SMTP Webmail Mailserver SMTP MTA ... ( MSA ) SMTP HTTP web server HTML HTTP virtual engine MUA web browser POP / IMAP Post Office ... MTA ( MS ) SMTP Protocols and ports SMTP (Simple Mail Transfer Protocol) 25/tcp (MTA) 587/tcp (MSA) POP (Post Office Protocol) 110/tcp IMAP (Internet Message Access Protocol) 143/tcp © Antonio Lioy - Politecnico di Torino (1995-2009) 2 E-mail security (emailsec - jan'09) RFC-822 messages only US-ASCII characters on 7 bits lines terminated by <CR> <LF> messages composed by header + body header keywor ds a ttht the beg inn ing o fthf the line continuation lines start with a space body separated from the header by an empty line contains the message Header RFC-822 From: sender (logical) Sender: sender (operational) Organization: organization of the sender To: destination SbjtSubject: subjec t Date: date and hour of sending Received: intermediate steps Message-Id: sending ID CC: copy to Bcc: copy (hidden) to Return-Receipt-To: return receipt to An SMTP / RFC-822 example telnet duke.colorado.edu 25 Trying ....
    [Show full text]
  • Administering Avaya Communicator for Android, Ipad, and Windows
    Administering Avaya Communicator for Android, iPad, and Windows Release 2.0 18-604079 Issue 4 August 2014 © 2014 Avaya Inc. applicable number of licenses and units of capacity for which the license is granted will be one (1), unless a different number of All Rights Reserved. licenses or units of capacity is specified in the documentation or other Notice materials available to you. “Software” means Avaya’s computer programs in object code, provided by Avaya or an Avaya Channel While reasonable efforts have been made to ensure that the Partner, whether as stand-alone products, pre-installed , or remotely information in this document is complete and accurate at the time of accessed on hardware products, and any upgrades, updates, bug printing, Avaya assumes no liability for any errors. Avaya reserves fixes, or modified versions thereto. “Designated Processor” means a the right to make changes and corrections to the information in this single stand-alone computing device. “Server” means a Designated document without the obligation to notify any person or organization Processor that hosts a software application to be accessed by of such changes. multiple users. “Instance” means a single copy of the Software Documentation disclaimer executing at a particular time: (i) on one physical machine; or (ii) on one deployed software virtual machine (“VM”) or similar deployment. “Documentation” means information published by Avaya in varying mediums which may include product information, operating License types instructions and performance specifications that Avaya may generally Designated System(s) License (DS). End User may install and use make available to users of its products and Hosted Services.
    [Show full text]