draft-ietf-dnsop-delegation-trust-maintainance-03.txt   draft-ietf-dnsop-delegation-trust-maintainance-04.txt 
dnsop W. Kumari dnsop W. Kumari
Internet-Draft Google Internet-Draft Google
Intended status: Informational O. Gudmundsson Intended status: Informational O. Gudmundsson
Expires: August 12, 2014 Shinkuro Inc. Expires: October 12, 2014 Shinkuro Inc.
G. Barwood G. Barwood
February 8, 2014 April 10, 2014
Automating DNSSEC delegation trust maintenance Automating DNSSEC delegation trust maintenance
draft-ietf-dnsop-delegation-trust-maintainance-03 draft-ietf-dnsop-delegation-trust-maintainance-04
Abstract Abstract
This document describes a method to allow DNS operators to more This document describes a method to allow DNS operators to more
easily update DNSSEC Key Signing Keys using DNS as communication easily update DNSSEC Key Signing Keys using the DNS as communication
channel. This document does not address the initial configuration of channel. This document does not address the initial configuration of
trust anchors for a domain. The technique described is aimed at trust anchors for a domain. The technique described is aimed at
delegations in which it is currently hard to move information from delegations in which it is currently hard to move information from
the child to parent. the child to parent.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on August 12, 2014. This Internet-Draft will expire on October 12, 2014.
Copyright Notice Copyright Notice
Copyright (c) 2014 IETF Trust and the persons identified as the Copyright (c) 2014 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 25 skipping to change at page 2, line 25
2.1. DNS delegations . . . . . . . . . . . . . . . . . . . . . 4 2.1. DNS delegations . . . . . . . . . . . . . . . . . . . . . 4
2.2. Relationship between Parent and Child DNS operator . . . 5 2.2. Relationship between Parent and Child DNS operator . . . 5
2.2.1. Solution Space . . . . . . . . . . . . . . . . . . . 6 2.2.1. Solution Space . . . . . . . . . . . . . . . . . . . 6
2.2.2. DNSSEC key change process . . . . . . . . . . . . . . 7 2.2.2. DNSSEC key change process . . . . . . . . . . . . . . 7
3. CDS / CDNSKEY (Child DS/ Child DNSKEY) record definitions . . 7 3. CDS / CDNSKEY (Child DS/ Child DNSKEY) record definitions . . 7
3.1. CDS Resource Record Format . . . . . . . . . . . . . . . 8 3.1. CDS Resource Record Format . . . . . . . . . . . . . . . 8
3.2. CDNSKEY Resource Record Format . . . . . . . . . . . . . 8 3.2. CDNSKEY Resource Record Format . . . . . . . . . . . . . 8
4. Automating DS maintainance with CDS/CDNSKEY records . . . . . 8 4. Automating DS maintainance with CDS/CDNSKEY records . . . . . 8
4.1. CDS / CDNSKEY processing rules . . . . . . . . . . . . . 9 4.1. CDS / CDNSKEY processing rules . . . . . . . . . . . . . 9
5. Child's CDS / CDNSKEY Publication . . . . . . . . . . . . . . 9 5. Child's CDS / CDNSKEY Publication . . . . . . . . . . . . . . 9
6. Parent side CDS / CDNSKEY Consumption . . . . . . . . . . . . 9 6. Parent side CDS / CDNSKEY Consumption . . . . . . . . . . . . 10
6.1. Detecting a changed CDS / CDNSKEY . . . . . . . . . . . . 10 6.1. Detecting a changed CDS / CDNSKEY . . . . . . . . . . . . 10
6.1.1. CDS / CDNSKEY Polling . . . . . . . . . . . . . . . . 10 6.1.1. CDS / CDNSKEY Polling . . . . . . . . . . . . . . . . 10
6.1.2. Other mechanisms . . . . . . . . . . . . . . . . . . 10 6.1.2. Other mechanisms . . . . . . . . . . . . . . . . . . 11
6.2. Using the new CDS / CDNSKEY records . . . . . . . . . . . 11 6.2. Using the new CDS / CDNSKEY records . . . . . . . . . . . 11
6.2.1. Parent calculates DS . . . . . . . . . . . . . . . . 11 6.2.1. Parent calculates DS . . . . . . . . . . . . . . . . 12
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12
8. Privacy Considerations . . . . . . . . . . . . . . . . . . . 12 8. Privacy Considerations . . . . . . . . . . . . . . . . . . . 12
9. Security Considerations . . . . . . . . . . . . . . . . . . . 12 9. Security Considerations . . . . . . . . . . . . . . . . . . . 12
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 13 10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 14
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 14 11. References . . . . . . . . . . . . . . . . . . . . . . . . . 14
11.1. Normative References . . . . . . . . . . . . . . . . . . 14 11.1. Normative References . . . . . . . . . . . . . . . . . . 14
11.2. Informative References . . . . . . . . . . . . . . . . . 14 11.2. Informative References . . . . . . . . . . . . . . . . . 15
Appendix A. RRR background . . . . . . . . . . . . . . . . . . . 15 Appendix A. RRR background . . . . . . . . . . . . . . . . . . . 15
Appendix B. Changes / Author Notes. . . . . . . . . . . . . . . 16 Appendix B. Changes / Author Notes. . . . . . . . . . . . . . . 16
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 18 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 18
1. Introduction 1. Introduction
When a DNS operator first signs their zone, they need to communicate When a DNS operator first signs their zone, they need to communicate
their DS record(s) (or DNSKEY(s)) to their parent through some out- their DS record(s) (or DNSKEY(s)) to their parent through some out-
of-band method to complete the chain of trust. of-band method to complete the chain of trust.
skipping to change at page 3, line 51 skipping to change at page 3, line 51
[I-D.csync], can be used to maintain other important delegation [I-D.csync], can be used to maintain other important delegation
information, such as NS and glue. These two protocols have been kept information, such as NS and glue. These two protocols have been kept
as separate solutions because the problems are fundamentally as separate solutions because the problems are fundamentally
different, and a combined solution is overly complex. different, and a combined solution is overly complex.
This document describes a method for automating maintanance of the This document describes a method for automating maintanance of the
delegation trust information, and proposes a polled / periodic delegation trust information, and proposes a polled / periodic
trigger for simplicity. Some users may prefer a different trigger, trigger for simplicity. Some users may prefer a different trigger,
such as a button on a webpage, a REST interface, DNS NOTIFY, etc. such as a button on a webpage, a REST interface, DNS NOTIFY, etc.
These alternate / additional triggers are not discussed in this These alternate / additional triggers are not discussed in this
document. document. This proposal does not include all operations needed for
the maintenance of DNSSEC key material, specifically the introduction
or complete removal of all keys. Because of this, alternate
communications mechanisms must always exist, potentially introducing
more complexity.
1.1. Terminology 1.1. Terminology
The terminology we use is defined in this section The terminology we use is defined in this section
Highlighted roles Highlighted roles
o Child: "The entity on record that has the delegation of the domain o Child: "The entity on record that has the delegation of the domain
from the parent" from the parent"
o Parent: "The domain in which the child is registered" o Parent: "The domain in which the child is registered"
o Child DNS operator: "The entity that maintains and publishes the o Child DNS Operator: "The entity that maintains and publishes the
zone information for the child DNS" zone information for the child DNS"
o Parent DNS operator: "The entity that maintains and publishes the o Parent DNS Operator: "The entity that maintains and publishes the
zone information for the parent DNS" zone information for the parent DNS"
o Parental Agent: "The entity that the child has relationship with, o Parental Agent: "The entity that the child has relationship with,
to change its delegation information" to change its delegation information"
o Provisioning system: "A system that the operator of the master DNS o Provisioning system: "A system that the operator of the master DNS
server operates to maintain the information published in the DNS. server operates to maintain the information published in the DNS.
This includes the systems that sign the DNS data" This includes the systems that sign the DNS data"
RRR is our shorthand for Registry/Registrar/Registrant model of RRR is our shorthand for Registry/Registrar/Registrant model of
skipping to change at page 6, line 31 skipping to change at page 6, line 34
some corporate mechanism; this can range from email to fully- some corporate mechanism; this can range from email to fully-
automated operation. The word enterprise above covers all automated operation. The word enterprise above covers all
organizations in which the domains are not sold on the open market organizations in which the domains are not sold on the open market
and there is some relationship between the entities. and there is some relationship between the entities.
2.2.1. Solution Space 2.2.1. Solution Space
This document is aimed at the cases in which there is an This document is aimed at the cases in which there is an
organizational separation of the child and parent. organizational separation of the child and parent.
A further complication is when the Child DNS operator is not the A further complication is when the Child DNS Operator is not the
Child. There are two common cases of this, Child. There are two common cases of this,
a) The Parental Agent (e.g. registrar) handles the DNS operation a) The Parental Agent (e.g. registrar) handles the DNS operation
b) A third party takes care of the DNS operation. b) A third party takes care of the DNS operation.
If the Parental Agent is the DNS operator, life is much easier; the If the Parental Agent is the DNS operator, life is much easier; the
Parental Agent can inject any delegation changes directly into the Parental Agent can inject any delegation changes directly into the
Parent's Provisioning system. The techniques described below are not Parent's Provisioning system. The techniques described below are not
needed in the case when Parental Agent is the DNS operator. needed in the case when Parental Agent is the DNS operator.
skipping to change at page 7, line 9 skipping to change at page 7, line 10
Some parents want the child to express their DNSKEYS in the form of Some parents want the child to express their DNSKEYS in the form of
DS records, while others want to receive the DNSKEY records and DS records, while others want to receive the DNSKEY records and
calculate the DS records themselves. There is no consensus on which calculate the DS records themselves. There is no consensus on which
method is better; both have good reasons to exist. The proposal method is better; both have good reasons to exist. The proposal
below can operate with both models, but the child needs to be aware below can operate with both models, but the child needs to be aware
of the parental policies. of the parental policies.
2.2.2. DNSSEC key change process 2.2.2. DNSSEC key change process
After a Child DNS operator first signs the zone, there is a need to After a Child DNS Operator first signs the zone, there is a need to
interact with the Parent, for example via the delegation account interact with the Parent, for example via the delegation account
interface, to "upload / paste-in the zone's DS information". The interface, to "upload / paste-in the zone's DS information". The
action of logging in through the delegation account user interface action of logging in through the delegation account user interface
authenticates that the user is authorized to change delegation authenticates that the user is authorized to change delegation
information for the child published in the parent zone. In the case information for the child published in the parent zone. In the case
where the "Child DNS Operator" does not have access to the where the "Child DNS Operator" does not have access to the
registration account, the Child needs to perform the action. registration account, the Child needs to perform the action.
At a later date, the Child DNS Operator may want to publish a new DS At a later date, the Child DNS Operator may want to publish a new DS
record in the parent, either because they are rolling keys, or record in the parent, either because they are rolling keys, or
because they want to publish a stand-by key. This involves because they want to publish a stand-by key. This involves
performing the same process as before. Furthermore when this is a performing the same process as before. Furthermore when this is a
manual process with cut and paste, operational mistakes will happen manual process with cut and paste, operational mistakes will happen
-- or worse, the update action is not performed at all. -- or worse, the update action is not performed at all.
The Child DNS Operator may also introduce new keys, and can do so
when old keys exist and can be used. The Child may also remove old
keys, but we do not support removing all keys. This is to avoid
making signed zones unsigned.
The Child may not introduce a new key when no old keys can be used,
and nor may it remove the last key from the RRSet of the zone apex.
The Child may not enroll the initial key or introduce a new key when
there are no old keys that can be used, because there is no way to
validate the information. [TODO ADD TEXT RE REMOVAL)
3. CDS / CDNSKEY (Child DS/ Child DNSKEY) record definitions 3. CDS / CDNSKEY (Child DS/ Child DNSKEY) record definitions
This document specifies two new DNS RRtypes (CDS and CDNSKEY) that This document specifies two new resource records, CDS and CDNSKEY.
indicates what the Child wants the parent's DS RRset to contain. It These records are used to convey, from one zone to it's parent, the
allows the Child to present DS records and / or DNSKEY records (for desired contents of the zone's DS resource record set residing in the
those parents who would rather generate the DS records for their parent zone.
children).
The CDS / CDNSKEY records are published in the child zone and gives The CDS / CDNSKEY records are published in the child zone and gives
the child control of what is published for it in the parental zone. the child control of what is published for it in the parental zone.
The CDS / CDNSKEY RRset expresses what the child would like the DS The CDS / CDNSKEY RRset expresses what the child would like the DS
RRset to look like after the change; it is a "replace" operation, and RRset to look like after the change; it is a "replace" operation, and
it is up to the consumer of the records to translate that into the it is up to the consumer of the records to translate that into the
appropriate add/delete operations in the registration systems (and in appropriate add/delete operations in the registration systems (and in
the case of CDNSKEY, to generate the DS from the DNSKEY). If no CDS the case of CDNSKEY, to generate the DS from the DNSKEY). If no CDS
/ CDNSKEY RRset is present in child, this means that no change is / CDNSKEY RRset is present in child, this means that no change is
needed. needed.
skipping to change at page 8, line 40 skipping to change at page 8, line 49
Some parents prefer to accept DNSSEC key information in DS format, Some parents prefer to accept DNSSEC key information in DS format,
some parents prefer to accept it in DNSKEY format, and calculate the some parents prefer to accept it in DNSKEY format, and calculate the
DS record on the child's behalf. Each method has pros and cons, both DS record on the child's behalf. Each method has pros and cons, both
technical and policy. This solution is DS vs DNSKEY agnostic, and technical and policy. This solution is DS vs DNSKEY agnostic, and
allows operation with either. allows operation with either.
If the child knows what the parent prefers, they can publish the If the child knows what the parent prefers, they can publish the
parent's preferred record type. If the child does not know (or parent's preferred record type. If the child does not know (or
simply chooses to), they can publish both CDS and CDNSKEY. If the simply chooses to), they can publish both CDS and CDNSKEY. If the
child publishes both, the two RRsets they SHOULD match in content. child publishes both, the two RRsets they MUST match in content. The
The parent should use whichever one they choose, but SHOULD NOT query parent should use whichever one they choose, but SHOULD NOT query for
for both and perform consistency checks between the CDS and CDNSKEY both and perform consistency checks between the CDS and CDNSKEY
records. records.
[Editor note: It is not an error for a child to have published CDS [Editor note: It is not an error for a child to have published CDS
records and not have CDNSKEYs that hash to those records, nor for records and not have CDNSKEYs that hash to those records, nor for
there to be CDNSKEY records without matching DS records. This is there to be CDNSKEY records without matching DS records. This is
because a child might have been publishing CDS records and then the because a child might have been publishing CDS records and then the
parent's policy changes to require CDNSKEY records. The child might parent's policy changes to require CDNSKEY records. The child might
forget to remove the CDS, etc. This avoids all sorts of error forget to remove the CDS, etc. This avoids all sorts of error
conditions / complexity, etc.] conditions / complexity, etc.]
4.1. CDS / CDNSKEY processing rules 4.1. CDS / CDNSKEY processing rules
If there are no CDS / CDNSKEY resource records in the child, this If there are no CDS / CDNSKEY resource records in the child, this
signals that no change should be made to the current DS set. This signals that no change should be made to the current DS set. This
means that, once the child and parent are in sync, the child DNS means that, once the child and parent are in sync, the child DNS
operator MAY remove all CDS records from the zone. operator SHOULD remove all CDS records from the zone.
Following acceptance rules are placed on the CDS / CDNSKEY records as Following acceptance rules are placed on the CDS / CDNSKEY records as
follows: follows:
o Location: "the CDS / CDNSKEY record MUST be at the child zone o Location: "the CDS / CDNSKEY record MUST be at the child zone
apex". apex".
o Signer: "MUST be signed with a key that is represented in both the o Signer: "MUST be signed with a key that is represented in both the
current DNSKEY and DS RRset's." current DNSKEY and DS RRset's."
o Continuity: "SHOULD NOT break the current delegation if applied to o Continuity: "MUST NOT break the current delegation if applied to
DS RRset" DS RRset"
If any these conditions fail the CDS / CDNSKEY record MUST be If any these conditions fail the CDS / CDNSKEY record MUST be
ignored. ignored.
5. Child's CDS / CDNSKEY Publication 5. Child's CDS / CDNSKEY Publication
Child DNS Operator SHOULD only publish a CDS or CDNSKEY RRset when it Child DNS Operator SHOULD only publish a CDS or CDNSKEY RRset when it
wants to make a change to the DS RRset in the Parent. The CDS / wants to make a change to the DS RRset in the Parent. In order to be
CDNSKEY RRset SHOULD be compliant with the rules in Section 4.1. valid, the CDS / CDNSKEY RRset MUST be compliant with the rules in
When the Parent DS is "in-sync" with the CDS / CDNSKEY, the Child DNS Section 4.1. When the Parent DS is "in-sync" with the CDS / CDNSKEY,
Operator MAY delete the CDS / CDNSKEY RRset(s). Note that if the the Child DNS Operator SHOULD delete the CDS / CDNSKEY RRset(s).
child has published a DNSKEY RR in the CDS, it will have to calculate Note that if the child has published a CDNSKEY RR, the Parent will
the DS (using the requested digest algorithm) to do the comparison. have to calculate the DS (using the requested digest algorithm) to do
the comparison.
A child MAY publish both CDS and CDNSKEY. If a child chooses to A child MAY publish both CDS and CDNSKEY. If a child chooses to
publish both, it SHOULD attempt to maintain consistency (a matching publish both, it MUST attempt to maintain consistency (a matching CDS
CDS for each CDNSKEY) for each CDNSKEY).
6. Parent side CDS / CDNSKEY Consumption 6. Parent side CDS / CDNSKEY Consumption
The CDS / CDNSKEY RRset MAY be used by the Parental Agent to update The CDS / CDNSKEY RRset SHOULD be used by the Parental Agent to
the DS RRset in the parent zone. The Parental Agent for this uses a update the DS RRset in the parent zone. The Parental Agent for this
tool that understands the CDS / CDNSKEY signing rules from uses a tool that understands the CDS / CDNSKEY signing rules from
Section 4.1 so it may not be able to use a standard validator. Section 4.1 so it may not be able to use a standard validator.
Parent SHOULD treat the Continuity rule as "MUST".
The parent MUST choose to accept either CDS or CDNSKEY records, and The parent MUST choose to accept either CDS or CDNSKEY records, and
MUST NOT expect there to be both. A parent SHOULD NOT perform a MUST NOT expect there to be both. A parent SHOULD NOT perform a
consistency check between CDS and CDNSKEY (other than for consistency check between CDS and CDNSKEY (other than for
informational / debugging use). informational / debugging use).
6.1. Detecting a changed CDS / CDNSKEY 6.1. Detecting a changed CDS / CDNSKEY
How the Parental Agent gets the CDS / CDNSKEY record may differ, How the Parental Agent gets the CDS / CDNSKEY record may differ,
below are two examples as how this can take place. below are two examples as how this can take place.
skipping to change at page 11, line 24 skipping to change at page 11, line 39
The Parental Agent MUST ensure that old versions of the CDS / CDNSKEY The Parental Agent MUST ensure that old versions of the CDS / CDNSKEY
RRset do not overwrite newer versions. This MAY be accomplished by RRset do not overwrite newer versions. This MAY be accomplished by
checking that the signature inception in the RRSIG for CDS / CDNSKEY checking that the signature inception in the RRSIG for CDS / CDNSKEY
is newer and/or the serial number on the child's SOA is greater. is newer and/or the serial number on the child's SOA is greater.
This may require the Parental Agent to maintain some state This may require the Parental Agent to maintain some state
information. information.
The Parental Agent MAY take extra security measures. For example, to The Parental Agent MAY take extra security measures. For example, to
mitigate the possibility that a Child's key signing key has been mitigate the possibility that a Child's key signing key has been
compromised, the Parental Agent may, for example, inform (by email or compromised, the Parental Agent may, for example, inform (by email or
other methods ) the Child DNS operator of the change. However the other methods ) the Child DNS Operator of the change. However the
precise out-of-band measures that a parent zone SHOULD take are precise out-of-band measures that a parent zone SHOULD take are
outside the scope of this document. outside the scope of this document.
Once the Parental Agent has obtained a valid CDS / CDNSKEY it MAY Once the Parental Agent has obtained a valid CDS / CDNSKEY it MUST
double check the publication rules from section 4.1. In particular double check the publication rules from section 4.1. In particular
the Parental Agent MUST double check the Continuity rule and do its the Parental Agent MUST double check the Continuity rule and do its
best not to invalidate the Child zone. Once checked and if the CDS / best not to invalidate the Child zone. Once checked and if the CDS /
CDNSKEY and DS "differ" it may apply the changes to the parent zone. CDNSKEY and DS "differ" it may apply the changes to the parent zone.
If the parent consumes CDNSKEY, the parent should calculate the DS If the parent consumes CDNSKEY, the parent should calculate the DS
before doing this comparison. before doing this comparison.
6.2.1. Parent calculates DS 6.2.1. Parent calculates DS
There are cases where the Parent wants to calculate the DS record due There are cases where the Parent wants to calculate the DS record due
to policy reasons. In this case, the Child publishes CDNSKEY records to policy reasons. In this case, the Child publishes CDNSKEY records
containing DNSKEYs. and the parent calculates the DS records on behalf of the children.
The parent calculates the DS records on behalf of the children. The
DNS Parent needs to publish guidelines for the children as to what
digest algorithms are acceptable in the CDS record.
When a Parent operates in "calculate DS" mode it can operate in one When a Parent operates in "calculate DS" mode it can operate in one
of two sub-modes of two sub-modes
full i.e. it only publishes DS records it calculates from DNSKEY full i.e. it only publishes DS records it calculates from DNSKEY
records, records,
augment i.e. it will make sure there are DS records for the digest augment i.e. it will make sure there are DS records for the digest
algorithm(s) it requires(s). algorithm(s) it requires(s).
Implications on Parental Agent are that the CDNSKEY and DS are not IIn the case the parent fetch the CDNSKEY and calculate the DS it MAY
exactly the same after update thus it needs to take that into be the case that the DS published in the parent zone is not identical
consideration when checking CDNSKEY records. Same goes for the Child with the data in the CDS record made available by the child.
DNS Operator, it needs to be able to detect that the new DS RRset is
"equivalent" to the current CDNSKEY RRset, thus it can remove the
CDNSKEY RRset.
7. IANA Considerations 7. IANA Considerations
IANA has assigned RR Type code 59 for CDS. This was done for an IANA has assigned RR Type code 59 for CDS. This was done for an
earlier version of this document[I-D.ds-publish] This document is to earlier version of this document[I-D.ds-publish] This document is to
become the reference for CDS RRtype. become the reference for CDS RRtype.
IANA is requested to assign another RR Type for the CDNSKEY. IANA is requested to assign another RR Type for the CDNSKEY.
8. Privacy Considerations 8. Privacy Considerations
skipping to change at page 13, line 15 skipping to change at page 13, line 24
keys like hold down times, challenge data inclusion etc., ought to be keys like hold down times, challenge data inclusion etc., ought to be
used, along with some kind of challenge mechanism. A child cannot used, along with some kind of challenge mechanism. A child cannot
use this mechanism to go from signed to unsigned (publishing an empty use this mechanism to go from signed to unsigned (publishing an empty
CDS / CDNSKEY RRset means no-change should be made in the parent). CDS / CDNSKEY RRset means no-change should be made in the parent).
The CDS RR type should allow for enhanced security by simplifying The CDS RR type should allow for enhanced security by simplifying
process. Since rollover is automated, updating a DS RRset by other process. Since rollover is automated, updating a DS RRset by other
means may be regarded as unusual and subject to extra security means may be regarded as unusual and subject to extra security
checks. checks.
As this introduces a new mechanism to update information in the
parent it MUST be clear who is fetching the records and creating the
appropriate records in the parent zone. Specifically some operations
may use other mechanisms than what is described here. For example, a
registrar may assume that it is maintaining the DNSSEC key
information in the registry, and may have this cached. If the
registry is fetching the CDS / CDNSKEY then the registry and
registrar may have different views of the DNSSEC key material and the
result of such a situation is unclear. Because of this, this
mechanism SHOULD NOT be use to bypass intermediaries that might cache
information and because of that get the wrong state.
If there is a failure in applying changes in child zone to all DNS If there is a failure in applying changes in child zone to all DNS
servers listed in either parent or child NS set it is possible that servers listed in either parent or child NS set it is possible that
the Parental agent may get confused either not perform action because the Parental agent may get confused either not perform action because
it gets different answers on different checks or CDS validation it gets different answers on different checks or CDS validation
fails. In the worst case, Parental Agent performs an action fails. In the worst case, Parental Agent performs an action
reversing a prior action but after the child signing system decides reversing a prior action but after the child signing system decides
to take the next step in rollover, resulting in a broken delegation. to take the next step in rollover, resulting in a broken delegation.
DNS is a loosely coherent distributed database with local caching; DNS is a loosely coherent distributed database with local caching;
therefore, it is important to allow old information to expire from therefore, it is important to allow old information to expire from
skipping to change at page 13, line 46 skipping to change at page 14, line 19
security. security.
By automating the maintenance of the DNSSEC key information (and By automating the maintenance of the DNSSEC key information (and
removing humans from the process) we expect to decrease the number of removing humans from the process) we expect to decrease the number of
DNSSEC related outages, which should increase DNSSEC deployment. DNSSEC related outages, which should increase DNSSEC deployment.
10. Acknowledgements 10. Acknowledgements
We would like to thank a large number of folk, including: Mark We would like to thank a large number of folk, including: Mark
Andrews, Joe Abley, Jaap Akkerhuis, Roy Arends, Doug Barton, Brian Andrews, Joe Abley, Jaap Akkerhuis, Roy Arends, Doug Barton, Brian
Dickinson, Paul Ebersman, Tony Finch, Patrik Faltsrom, Jim Galvin, Dickinson, Paul Ebersman, Tony Finch, Patrik Faltstrom, Jim Galvin,
Paul Hoffman, Samir Hussain, Tatuya Jinmei, Olaf Kolkman, Cricket Paul Hoffman, Samir Hussain, Tatuya Jinmei, Olaf Kolkman, Cricket
Liu, Stephan Lagerholm, Matt Larson, Marco Sanz, Antoin Verschuren, Liu, Stephan Lagerholm, Matt Larson, Marco Sanz, Antoin Verschuren,
Suzanne Woolf, Paul Wouters, Matthijs Meeking, John Dickinson, Suzanne Woolf, Paul Wouters, Matthijs Meeking, John Dickinson,
Timothe Litt and Edward Lewis. Timothe Litt and Edward Lewis.
Special thanks to Wes Hardaker for contributing significant text and Special thanks to Wes Hardaker for contributing significant text and
creating the complementary (CSYNC) solution, and to Paul Hoffman and creating the complementary (CSYNC) solution, and to Paul Hoffman and
Mukund Sivaraman for text and review. Mukund Sivaraman for text and review.
There were a number of other folk with whom we discussed this, There were a number of other folk with whom we discussed this,
skipping to change at page 16, line 9 skipping to change at page 16, line 29
In many RRR cases the Registrar and Registry communicate via In many RRR cases the Registrar and Registry communicate via
EPP[RFC5730] and use the EPP DNSSEC extension [RFC5910]. In a number EPP[RFC5730] and use the EPP DNSSEC extension [RFC5910]. In a number
of ccTLDs there are other mechanisms in use as well as EPP, but in of ccTLDs there are other mechanisms in use as well as EPP, but in
general there seems to be a movement towards EPP usage when DNSSEC is general there seems to be a movement towards EPP usage when DNSSEC is
enabled in the TLD. enabled in the TLD.
Appendix B. Changes / Author Notes. Appendix B. Changes / Author Notes.
[RFC Editor: Please remove this section before publication ] [RFC Editor: Please remove this section before publication ]
WG-03 to WG-04
o Large number of comments and changes from Patrik.
WG-02 to WG-03 WG-02 to WG-03
o Fixed some references to RFC 5011 - from Samir Hussain. o Fixed some references to RFC 5011 - from Samir Hussain.
o Fixed some spelling / typos - from Samir Hussain. o Fixed some spelling / typos - from Samir Hussain.
o A number of clarifiations on the meaning on an empty / non- o A number of clarifiations on the meaning on an empty / non-
existant CDS RRset - thanks to JINMEI, Tatuya existant CDS RRset - thanks to JINMEI, Tatuya
o Be consistent in mentioning both CDS and CDNSKEY throughout the o Be consistent in mentioning both CDS and CDNSKEY throughout the
 End of changes. 31 change blocks. 
51 lines changed or deleted 74 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/