Network Working Group                                          R. Arends
Internet-Draft                                                   Nominum
Expires: January 21, 2003                                      M. Larson
                                                                VeriSign
                                                               D. Massey
                                                                 USC/ISI
                                                                 S. Rose
                                                                    NIST
                                                           July 23, 2002


               DNS Security Introduction and Requirements
                   draft-ietf-dnsext-dnssec-intro-02

Status of this Memo

   This document is an Internet-Draft and is in full conformance with
   all provisions of Section 10 of RFC2026.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at http://
   www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on January 21, 2003.

Copyright Notice

   Copyright (C) The Internet Society (2002).  All Rights Reserved.

Abstract

   The Domain Name System Security Extensions (DNSSEC) provide data
   origin authentication and data integrity.  This document introduces
   these extensions and describes their capabilities and limitations.
   The services that the security extensions provide and do not provide
   are discussed.  Lastly, the group of documents that describe the DNS
   security extensions and their interrelationships is discussed.



Arends, et al.          Expires January 21, 2003                [Page 1]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [1].

Table of Contents

   1.    Introduction . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.    Definitions of Important DNSSEC Terms  . . . . . . . . . . .  4
   3.    Services Provided by DNS Security  . . . . . . . . . . . . .  5
   3.1   Data Origin Authentication and Data Integrity  . . . . . . .  5
   3.1.1 Authenticating Name and Type Non-Existence . . . . . . . . .  6
   3.2   Key Distribution . . . . . . . . . . . . . . . . . . . . . .  6
   3.3   Transaction Security . . . . . . . . . . . . . . . . . . . .  7
   4.    Services Not Provided by DNS Security  . . . . . . . . . . .  8
   5.    Resolver Considerations  . . . . . . . . . . . . . . . . . .  9
   6.    Zone Considerations  . . . . . . . . . . . . . . . . . . . . 10
   7.    Server Considerations  . . . . . . . . . . . . . . . . . . . 11
   8.    DNS Security Document Family . . . . . . . . . . . . . . . . 12
   8.1   DNS Security Document Roadmap  . . . . . . . . . . . . . . . 12
   8.2   Categories of DNS Security Documents . . . . . . . . . . . . 12
   9.    IANA Considerations  . . . . . . . . . . . . . . . . . . . . 14
   10.   Security Considerations  . . . . . . . . . . . . . . . . . . 15
   11.   Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 16
         Normative References . . . . . . . . . . . . . . . . . . . . 17
         Informative References . . . . . . . . . . . . . . . . . . . 18
         Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 18
         Full Copyright Statement . . . . . . . . . . . . . . . . . . 19
























Arends, et al.          Expires January 21, 2003                [Page 2]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


1. Introduction

   This document introduces the Domain Name System Security Extensions
   (DNSSEC).  This document and a collection of related documents update
   RFC 2535 [2] and its related documents to further clarify and refine
   the security extensions defined in RFC 2535.  These security
   extensions consist of a set of new resource record types and
   modifications to the existing DNS protocol [3].  The new records and
   protocol modifications are not fully described in this document, but
   in a family of documents outlined in Section 8.  The capabilities and
   limitations of the security extensions are described in greater
   detail in Section 3 and Section 4, respectively.  Lastly, the effect
   that these security extensions will have on resolvers, zones and
   servers is discussed in Section 5, Section 6 and Section 7,
   respectively.

   The DNS security extensions provide data origin authentication and
   data integrity protection as well as a means of public key
   distribution.  The security extensions do not provide protection
   against other types of attack, nor do they provide confidentiality.































Arends, et al.          Expires January 21, 2003                [Page 3]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


2. Definitions of Important DNSSEC Terms

   trusted key: A public key, for a zone or a host, that a resolver
      trusts and that can therefore be used to verify data.  A key can
      become trusted in two ways.  First, it can be statically
      configured and declared as trusted in the resolver's
      configuration.  Second, if a new key is referenced by a DS record
      that is signed by an already trusted key, and the signature
      verifies, the new key becomes trusted.

   chain of trust: In DNSSEC, a key signs a DS record, which points to
      another key, which in turn signs another DS record, which points
      to yet another key, etc.  This alternating succession of KEY and
      DS records forms a chain of signed data, with each link in the
      chain vouching for the next.  A resolver starting at a piece of
      data in the chain signed by a trusted key can verify all
      subsequent signatures.  Thus all subsequent data in the chain is
      trusted.

   security-aware resolver: A resolver (defined in section 2.4 of [4])
      that understands the DNS security extensions.  In particular, a
      security-aware resolver uses trusted keys to verify signatures
      over RRsets and (optionally) DNS messages.

   security-aware server: A name server (also defined in section 2.4 of
      [4]) that understands the DNS security extensions.  In particular,
      it supports the KEY, SIG, DS and NXT record types, a larger DNS
      message size via EDNS0, and other protocol changes such as support
      for the OK bit.  Also called a "secure server".

   unsecure server: The proper term for the opposite of a security-aware
      server.

   unsigned zone: The proper term for the opposite of a secure zone.

   secure zone: A zone whose RRsets are signed and which contains
      properly constructed KEY, SIG, NXT and (optionally) DS records.














Arends, et al.          Expires January 21, 2003                [Page 4]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


3. Services Provided by DNS Security

   The Domain Name System (DNS) protocol security extensions provide
   three distinct services: Data origin authentication and data
   integrity, key distribution, and transaction security, as described
   below.

   These services protect against the threats to the Domain Name System
   described in [5].

3.1 Data Origin Authentication and Data Integrity

   Authentication is provided by cryptographically generated digital
   signatures associated with DNS RRsets.  These digital signatures are
   stored in a new resource record, the SIG record.  Typically, there
   will be a single private key that signs a zone's data, but multiple
   keys are possible; e.g., for different digital signature algorithms.
   If a security-aware resolver reliably learns a zone's public key, it
   can authenticate that zone's signed data.  An important DNSSEC
   concept is that the key that signs a zone's data is associated with
   the zone itself and not with the zone's authoritative servers
   (although hosts can also have key pairs in DNSSEC; see the reference
   to SIG(0) in Section 3.3 below).  Security-aware servers attempt to
   send the signature(s) needed to authenticate an RRset in the DNS
   reply message along with the RRset itself, provided there is space
   available in the message.

   A resolver could learn a zone's public key by having the key
   statically configured or by normal DNS resolution.  To allow the
   latter, public keys are stored in a new resource record, the KEY
   record (see Section 3.2 below).  (Note that the private keys used to
   sign zone data must be kept secure and best practices call for them
   to be stored offline.) To reliably discover a public key by DNS
   resolution, the key itself needs to be signed by another key that the
   resolver trusts.  Zone information is authenticated by forming a
   chain of trust from a newly learned public key back to a trusted
   public key (which is either statically configured or previously
   learned and verified).  Therefore, the resolver must be configured
   with at least one public key that authenticates one zone as a
   starting point.  To establish this chain of trust, security-aware
   servers attempt to send the signature(s) needed to authenticate a
   zone's public key in the DNS reply message along with the public key
   itself, provided there is space available in the message.

   The chain of trust specified in the original DNS security extensions
   proceeded from signed KEY record to signed KEY record, as necessary,
   and finally to the queried RRset.  A new record, the delegation
   signer (DS), has been added for additional flexibility.  The DS RRset



Arends, et al.          Expires January 21, 2003                [Page 5]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


   resides at a delegation point in a parent zone and specifies the keys
   used by the specified child zone to self-sign the KEY RRset at its
   apex.  The child, in turn, uses one of these keys to sign its zone
   data.  The chain of trust is therefore DS->KEY->[DS->KEY->...]-
   >RRset.

   Adding data origin authentication and data integrity requires minor
   changes to the on-the-wire DNS protocol.  Several new resource record
   types are required, including the aforementioned SIG, KEY and DS.
   EDNS0 support [6] for larger message sizes [7] is required, as is
   support for the OK bit [8].

3.1.1 Authenticating Name and Type Non-Existence

   The security mechanism referenced above in Section 3.1 only provides
   a way to sign existing RRsets in a zone.  The problem of providing
   negative responses with the same level of authentication and
   integrity requires the use of another new resource record, the non-
   existence (NXT) record.  The NXT record allows a negative reply
   (either for name or type non-existence) to be authenticated the same
   way as other DNS replies.  NXT records require a canonical
   representation and order for domain names in zones.  NXT records
   exist to cover the gaps, or "empty space", between domain names in a
   zone, as well as non-existent record types for existing names.  Each
   NXT record is signed and authenticated in the same way as any other
   RRset.

3.2 Key Distribution

   The KEY resource record is defined to associate public keys with DNS
   names.  This record permits the DNS to be used as a public key
   distribution mechanism in support of DNSSEC.  Security-aware
   resolvers can query for a zone's public key when establishing a chain
   of trust.

   The syntax of the KEY resource record (and the other additional
   resource records required for DNSSEC) is described in [9].  It
   includes identifiers for the algorithm the key is used for and
   information on the entity the key is associated with.

   The original DNSSEC specification allowed other protocols and
   applications to use the KEY record as a general-purpose mechanism to
   store public keys.  For reasons documented in [10], the KEY record is
   now restricted for use with DNSSEC only.  Work is in progress on
   storing public keys [14] and certificates [15] used by other
   protocols and applications in the DNS.  A secure DNS tree could then
   be used as a lightweight trust mechanism.  Some administrators and
   users may consider a validated DNSSEC signature to be sufficient to



Arends, et al.          Expires January 21, 2003                [Page 6]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


   trust a public key stored in the DNS.

3.3 Transaction Security

   The data origin authentication and data integrity service described
   above authenticates retrieved RRsets and the non-existence of RRsets,
   but provides no protection for complete DNS messages, e.g., when they
   occur in zone transfers and dynamic updates.

   A DNS message can be authenticated by including a special signature
   RR at the end of the message, either a transaction signature (TSIG)
   [11] or SIG record with a type covered field of zero (a "SIG(0)", see
   [12]).  Such a signature can be used to verify the integrity of the
   DNS message.  (The signature record in the additional section of a
   query may produce an error or simply be ignored by older DNS
   implementations that don't support transaction security.)  Unlike the
   mechanism described in Section 3.1, transaction security is specific
   to the individual hosts exchanging DNS messages.  The cryptographic
   keys used with transaction security are associated with individual
   hosts and not DNS zones.

   In addition to transaction signatures, there is also support for key
   agreement protocols to support transaction security using symmetric
   encryption keys.  This service uses the transaction key (TKEY) [13]
   resource record.  The use of the TKEY record in a key agreement
   transaction depends on the algorithm used, and each key agreement
   protocol is described in a separate document specific to each
   algorithm.























Arends, et al.          Expires January 21, 2003                [Page 7]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


4. Services Not Provided by DNS Security

   The DNS design philosophy calls for all DNS data to be public and
   uniform answers to all inquirers.  Accordingly, confidentiality for
   queries or responses is not provided, nor are any sort of access
   control lists or other means to differentiate inquirers.

   Denial of service is not protected against.

   Signed zone data and/or the use of transaction signatures will not
   protect against errors in DNS zone information or servers incorrectly
   interpreting and/or setting DNS message header fields.







































Arends, et al.          Expires January 21, 2003                [Page 8]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


5. Resolver Considerations

   A security-aware resolver needs to be able to perform necessary
   cryptographic functions to verify digital signatures using at least
   the mandatory-to-implement algorithms.  Also, security-aware
   resolvers must be capable of forming a chain of trust from a newly
   learned zone back to a trusted key.  This might require additional
   queries to intermediate DNS zones for necessary KEY, DS and SIG
   records.  It is assumed that a security-aware resolver will be
   configured with at least one trusted key to aid this process.

   The stub resolver found in many hosts may be augmented to provide a
   different set of security features instead of the full security
   awareness found in a complete resolver.  The use of transaction
   security could help secure the final message passing between a
   recursive DNS server and a stub resolver.  This a matter of local
   security policy.

   A security-aware resolver needs to communicate with only security-
   aware servers.  If an unsecure server or an unsigned/unsecure zone is
   part of the DNS resolution path, the resolver cannot ensure security.
   If a security-aware resolver must rely on an unsecure server (or
   unsigned zone), the resolver cannot verify DNS responses and should
   rely on local policy when trusting responses.



























Arends, et al.          Expires January 21, 2003                [Page 9]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


6. Zone Considerations

   A secure zone will have several differences from an unsigned zone.  A
   secure zone will contain additional security-related records (SIG,
   KEY, DS and NXT records).  SIG and NXT records may be generated by a
   signing process prior to serving the zone.  If SIG and NXT records
   are not present in the zone, an authoritative server needs to
   generate them before serving the zone.  Zone data is only valid and
   considered secure for a definable time period.  The SIG records that
   accompany zone data have defined inception and expiration times.
   These times establish a validity period for the signatures and the
   zone data the signatures cover.







































Arends, et al.          Expires January 21, 2003               [Page 10]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


7. Server Considerations

   A security-aware server must be capable of performing the following
   operations in addition to the normal operations of a DNS server
   described in [3]:

      A security-aware server should make all attempts to include
      necessary security-related records (SIG, KEY, DS and NXT) in
      responses as DNS message space permits.

      A security-aware caching server must also take a signature's
      validation period into consideration when determining the time to
      live (TTL) of cached data: signed data should not be cached beyond
      the signature validity period.

      A security-aware server should have a means of employing
      transaction security, such as transaction signatures (TSIG) or
      SIG(0).  Transaction security is primarily used when performing
      other DNS operations such as zone transfers and dynamic updates
      (if they are permitted according to the server's local policy).

      All other means of restricting query, zone transfer, dynamic
      update and administrative access to a security-aware server fall
      under the category of operational security and are not addressed
      by the DNS security extensions.


























Arends, et al.          Expires January 21, 2003               [Page 11]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


8. DNS Security Document Family

   The DNSSEC set of documents can be partitioned into five main groups
   as depicted in Figure 1.  All these documents are in turn under the
   larger umbrella of the DNS base protocol documents described in [16].

8.1 DNS Security Document Roadmap

   ---------------------------------------------------------------------


                    +--------------------------------+
                    |                                |
                    |    Base DNS Protocol Docs      |
                    |   [RFC1035, RFC2181, etc.]     |
                    |                                |
                    +--------------------------------+
                                    |
                                    |
                              +-----------+          +-------------+
                              |  DNSSEC   |          |  New        |
                              | Protocol  |<-------->|  Security   |
                              | Documents |          |  Uses       |
                              +-----------+          +-------------+
                                    |
                                    |
                     +------------------------------+
                     |                              |
                     |                              |
               +------------+               +---------------+
               |  Dig. Sig. |               |               |
               |  Algorithm |               |  Transaction  |
               |  Impl.     |               |  Impl.        |
               |            |               |               |
               +------------+               +---------------+

                   Figure 1: DNSSEC Document Roadmap

   ---------------------------------------------------------------------


8.2 Categories of DNS Security Documents

   The "DNSSEC protocol document set" refers to the three documents that
   form the core of the DNS security extensions:

   1.  DNS Security Introduction and Requirements (this document)




Arends, et al.          Expires January 21, 2003               [Page 12]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


   2.  Resource Records for DNS Security Extensions [9]

   3.  Protocol Modifications for the DNS Security Extensions (not yet
       published) [12]

   The "Dig.  Sig.  Algorithm Impl." document set refers to the group of
   documents that describe how a specific digital signature algorithm is
   implemented to fit the DNSSEC resource record format.  Each of these
   documents deals with a specific digital signature algorithm.

   The "Transaction Impl." document set refers to the group of documents
   that deal with DNS message transaction security, including secret key
   establishment and verification.

   The final document set, "New Security Uses", refers to documents that
   seek to use proposed DNS Security extensions for other security
   related purposes.  Documents that fall in this category include the
   use of DNS in the storage and distribution of certificates [15] and
   individual user public keys (PGP, e-mail, etc.) [14].
































Arends, et al.          Expires January 21, 2003               [Page 13]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


9. IANA Considerations

   This document introduces no new IANA considerations.
















































Arends, et al.          Expires January 21, 2003               [Page 14]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


10. Security Considerations

   This document introduces the DNS security extensions and describes
   the document set that contains the new security records and DNS
   protocol modifications.  The capabilities and limitations of these
   extensions are discussed.  The extensions provide data origin
   authentication and data integrity using digital signatures over
   resource records and (optionally) DNS messages.

   In order for a secure resolver to validate a DNS response, all the
   intermediate zones and servers must be capable of DNS security
   processing.  A security-aware resolver cannot verify responses sent
   by an non-security-aware server.

   The DNS security extensions do not protect against denial of service
   (DoS) attacks or provide confidentiality.



































Arends, et al.          Expires January 21, 2003               [Page 15]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


11. Acknowledgements

   This document was created from the input and ideas of several members
   of the DNS Extensions Working Group.  The authors would like to
   acknowledge (in alphabetical order) the following people for their
   contributions and comments on this document:

     Derek Atkins
     Rob Austein
     Donald Eastlake
     Miek Gieben
     Olafur Gudmundsson
     Olaf Kolkman
     Ed Lewis
     Ted Lindgreen
     Bill Manning
     Brian Wellington


































Arends, et al.          Expires January 21, 2003               [Page 16]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


Normative References

   [1]   Bradner, S., "Key words for use in RFCs to Indicate Requirement
         Levels", BCP 14, RFC 2119, March 1997.

   [2]   Eastlake, D., "Domain Name System Security Extensions", RFC
         2535, March 1999.

   [3]   Mockapetris, P., "Domain names - implementation and
         specification", STD 13, RFC 1035, November 1987.

   [4]   Mockapetris, P., "Domain names - concepts and facilities", STD
         13, RFC 1034, November 1987.

   [5]   Atkins, D. and R. Austein, "Threat Analysis Of The Domain Name
         System", draft-ietf-dnsext-dns-threats-01 (work in progress),
         February 2002.

   [6]   Vixie, P., "Extension Mechanisms for DNS (EDNS0)", RFC 2671,
         August 1999.

   [7]   Gudmundsson, O., "DNSSEC and IPv6 A6 aware server/resolver
         message size requirements", RFC 3226, December 2001.

   [8]   Conrad, D., "Indicating Resolver Support of DNSSEC", RFC 3225,
         December 2001.

   [9]   Arends, R., Larson, M., Massey, D. and S. Rose, "Resource
         Records for DNS Security Extensions", draft-ietf-dnsext-dnssec-
         records-00 (work in progress), March 2002.

   [10]  Massey, D. and S. Rose, "Limiting the Scope of the KEY Resource
         Record", draft-ietf-dnsext-restrict-key-for-dnssec-02 (work in
         progress), March 2002.

   [11]  Vixie, P., Gudmundsson, O., Eastlake, D. and B. Wellington,
         "Secret Key Transaction Authentication for DNS (TSIG)", RFC
         2845, May 2000.

   [12]  Arends, R., Larson, M., Massey, D. and S. Rose, "Protocol
         Modifications for the DNS Security Extensions (Not yet
         published)", draft-ietf-dnsext-dnssec-protocol-00 (work in
         progress), to be published in 2002.

   [13]  Eastlake, D., "Secret Key Establishment for DNS (TKEY RR)", RFC
         2930, September 2000.





Arends, et al.          Expires January 21, 2003               [Page 17]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


Informative References

   [14]  Schlyter, J., "Storing application public keys in the DNS",
         draft-schlyter-appkey-02 (work in progress), February 2002.

   [15]  Eastlake, D. and O. Gudmundsson, "Storing Certificates in the
         Domain Name System (DNS)", RFC 2538, March 1999.

   [16]  Rose, S., "DNS Security Document Roadmap", draft-ietf-dnsext-
         dnssec-roadmap-05 (work in progress), November 2001.


Authors' Addresses

   Roy Arends
   Nominum, Inc.
   2385 Bay Street
   Redwood City, CA  94063
   USA

   EMail: roy.arends@nominum.com


   Matt Larson
   VeriSign, Inc.
   21345 Ridgetop Circle
   Dulles, VA  20166-6503
   USA

   EMail: mlarson@verisign.com


   Dan Massey
   USC Information Sciences Institute
   3811 N. Fairfax Drive
   Arlington, VA  22203
   USA

   EMail: masseyd@isi.edu


   Scott Rose
   National Institute for Standards and Technology
   100 Bureau Drive
   Gaithersburg, MD  20899-3460
   USA

   EMail: scott.rose@nist.gov



Arends, et al.          Expires January 21, 2003               [Page 18]


Internet-Draft       DNSSEC Intro. and Requirements            July 2002


Full Copyright Statement

   Copyright (C) The Internet Society (2002).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.



















Arends, et al.          Expires January 21, 2003               [Page 19]