1 Network Working Group D. Blacka
2 Request for Comments: 4955 VeriSign, Inc.
3 Category: Standards Track July 2007
4
5
6 DNS Security (DNSSEC) Experiments
7
8 Status of This Memo
9
10 This document specifies an Internet standards track protocol for the
11 Internet community, and requests discussion and suggestions for
12 improvements. Please refer to the current edition of the "Internet
13 Official Protocol Standards" (STD 1) for the standardization state
14 and status of this protocol. Distribution of this memo is unlimited.
15
16 Copyright Notice
17
18 Copyright (C) The IETF Trust (2007).
19
20 Abstract
21
22 This document describes a methodology for deploying alternate, non-
23 backwards-compatible, DNS Security (DNSSEC) methodologies in an
24 experimental fashion without disrupting the deployment of standard
25 DNSSEC.
26
27 Table of Contents
28
29 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
30 2. Definitions and Terminology . . . . . . . . . . . . . . . . . . 2
31 3. Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . 2
32 4. Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
33 5. Defining an Experiment . . . . . . . . . . . . . . . . . . . . 4
34 6. Considerations . . . . . . . . . . . . . . . . . . . . . . . . 5
35 7. Use in Non-Experiments . . . . . . . . . . . . . . . . . . . . 5
36 8. Security Considerations . . . . . . . . . . . . . . . . . . . . 5
37 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6
38 9.1. Normative References . . . . . . . . . . . . . . . . . . . 6
39 9.2. Informative References . . . . . . . . . . . . . . . . . . 6
40
41
42
43
44
45
46
47
48
49
50
51
52 Blacka Standards Track [Page 1]
53 RFC 4955 DNS Security (DNSSEC) Experiments July 2007
54
55
56 1. Overview
57
58 Historically, experimentation with DNSSEC alternatives has been a
59 problematic endeavor. There has typically been a desire to both
60 introduce non-backwards-compatible changes to DNSSEC and to try these
61 changes on real zones in the public DNS. This creates a problem when
62 the change to DNSSEC would make all or part of the zone using those
63 changes appear bogus (bad) or otherwise broken to existing security-
64 aware resolvers.
65
66 This document describes a standard methodology for setting up DNSSEC
67 experiments. This methodology addresses the issue of coexistence
68 with standard DNSSEC and DNS by using unknown algorithm identifiers
69 to hide the experimental DNSSEC protocol modifications from standard
70 security-aware resolvers.
71
72 2. Definitions and Terminology
73
74 Throughout this document, familiarity with the DNS system (RFC 1035
75 [5]) and the DNS security extensions (RFC 4033 [2], RFC 4034 [3], and
76 RFC 4035 [4]) is assumed.
77
78 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
79 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
80 document are to be interpreted as described in RFC 2119 [1].
81
82 3. Experiments
83
84 When discussing DNSSEC experiments, it is necessary to classify these
85 experiments into two broad categories:
86
87 Backwards-Compatible: describes experimental changes that, while not
88 strictly adhering to the DNSSEC standard, are nonetheless
89 interoperable with clients and servers that do implement the
90 DNSSEC standard.
91
92 Non-Backwards-Compatible: describes experiments that would cause a
93 standard security-aware resolver to (incorrectly) determine that
94 all or part of a zone is bogus, or to otherwise not interoperate
95 with standard DNSSEC clients and servers.
96
97 Not included in these terms are experiments with the core DNS
98 protocol itself.
99
100 The methodology described in this document is not necessary for
101 backwards-compatible experiments, although it certainly may be used
102 if desired.
103
104
105
106
107 Blacka Standards Track [Page 2]
108 RFC 4955 DNS Security (DNSSEC) Experiments July 2007
109
110
111 4. Method
112
113 The core of the methodology is the use of strictly unknown algorithm
114 identifiers when signing the experimental zone, and more importantly,
115 having only unknown algorithm identifiers in the DS records for the
116 delegation to the zone at the parent.
117
118 This technique works because of the way DNSSEC-compliant validators
119 are expected to work in the presence of a DS set with only unknown
120 algorithm identifiers. From RFC 4035 [4], Section 5.2:
121
122 If the validator does not support any of the algorithms listed in
123 an authenticated DS RRset, then the resolver has no supported
124 authentication path leading from the parent to the child. The
125 resolver should treat this case as it would the case of an
126 authenticated NSEC RRset proving that no DS RRset exists, as
127 described above.
128
129 And further:
130
131 If the resolver does not support any of the algorithms listed in
132 an authenticated DS RRset, then the resolver will not be able to
133 verify the authentication path to the child zone. In this case,
134 the resolver SHOULD treat the child zone as if it were unsigned.
135
136 Although this behavior isn't strictly mandatory (as marked by MUST),
137 it is unlikely for a validator to implement a substantially different
138 behavior. Essentially, if the validator does not have a usable chain
139 of trust to a child zone, then it can only do one of two things:
140 treat responses from the zone as insecure (the recommended behavior),
141 or treat the responses as bogus. If the validator chooses the
142 latter, this will both violate the expectation of the zone owner and
143 defeat the purpose of the above rule. However, with local policy, it
144 is within the right of a validator to refuse to trust certain zones
145 based on any criteria, including the use of unknown signing
146 algorithms.
147
148 Because we are talking about experiments, it is RECOMMENDED that
149 private algorithm numbers be used (see RFC 4034 [3], Appendix A.1.1.
150 Note that secure handling of private algorithms requires special
151 handing by the validator logic. See "Clarifications and
152 Implementation Notes for DNSSECbis" [6] for further details.)
153 Normally, instead of actually inventing new signing algorithms, the
154 recommended path is to create alternate algorithm identifiers that
155 are aliases for the existing, known algorithms. While, strictly
156 speaking, it is only necessary to create an alternate identifier for
157 the mandatory algorithms, it is suggested that all optional defined
158 algorithms be aliased as well.
159
160
161
162 Blacka Standards Track [Page 3]
163 RFC 4955 DNS Security (DNSSEC) Experiments July 2007
164
165
166 It is RECOMMENDED that for a particular DNSSEC experiment, a
167 particular domain name base is chosen for all new algorithms, then
168 the algorithm number (or name) is prepended to it. For example, for
169 experiment A, the base name of "dnssec-experiment-a.example.com" is
170 chosen. Then, aliases for algorithms 3 (DSA) and 5 (RSASHA1) are
171 defined to be "3.dnssec-experiment-a.example.com" and
172 "5.dnssec-experiment-a.example.com". However, any unique identifier
173 will suffice.
174
175 Using this method, resolvers (or, more specifically, DNSSEC
176 validators) essentially indicate their ability to understand the
177 DNSSEC experiment's semantics by understanding what the new algorithm
178 identifiers signify.
179
180 This method creates two classes of security-aware servers and
181 resolvers: servers and resolvers that are aware of the experiment
182 (and thus recognize the experiment's algorithm identifiers and
183 experimental semantics), and servers and resolvers that are unaware
184 of the experiment.
185
186 This method also precludes any zone from being both in an experiment
187 and in a classic DNSSEC island of security. That is, a zone is
188 either in an experiment and only possible to validate experimentally,
189 or it is not.
190
191 5. Defining an Experiment
192
193 The DNSSEC experiment MUST define the particular set of (previously
194 unknown) algorithm identifiers that identify the experiment and
195 define what each unknown algorithm identifier means. Typically,
196 unless the experiment is actually experimenting with a new DNSSEC
197 algorithm, this will be a mapping of private algorithm identifiers to
198 existing, known algorithms.
199
200 Normally the experiment will choose a DNS name as the algorithm
201 identifier base. This DNS name SHOULD be under the control of the
202 authors of the experiment. Then the experiment will define a mapping
203 between known mandatory and optional algorithms into this private
204 algorithm identifier space. Alternately, the experiment MAY use the
205 Object Identifier (OID) private algorithm space instead (using
206 algorithm number 254), or MAY choose non-private algorithm numbers,
207 although this would require an IANA allocation.
208
209 For example, an experiment might specify in its description the DNS
210 name "dnssec-experiment-a.example.com" as the base name, and declare
211 that "3.dnssec-experiment-a.example.com" is an alias of DNSSEC
212 algorithm 3 (DSA), and that "5.dnssec-experiment-a.example.com" is an
213 alias of DNSSEC algorithm 5 (RSASHA1).
214
215
216
217 Blacka Standards Track [Page 4]
218 RFC 4955 DNS Security (DNSSEC) Experiments July 2007
219
220
221 Resolvers MUST only recognize the experiment's semantics when present
222 in a zone signed by one or more of these algorithm identifiers. This
223 is necessary to isolate the semantics of one experiment from any
224 others that the resolver might understand.
225
226 In general, resolvers involved in the experiment are expected to
227 understand both standard DNSSEC and the defined experimental DNSSEC
228 protocol, although this isn't required.
229
230 6. Considerations
231
232 There are a number of considerations with using this methodology.
233
234 1. If an unaware validator does not correctly follow the rules laid
235 out in RFC 4035 (e.g., the validator interprets a DNSSEC record
236 prior to validating it), or if the experiment is broader in scope
237 that just modifying the DNSSEC semantics, the experiment may not
238 be sufficiently masked by this technique. This may cause
239 unintended resolution failures.
240
241 2. It will not be possible for security-aware resolvers unaware of
242 the experiment to build a chain of trust through an experimental
243 zone.
244
245 7. Use in Non-Experiments
246
247 This general methodology MAY be used for non-backwards compatible
248 DNSSEC protocol changes that start out as or become standards. In
249 this case:
250
251 o The protocol change SHOULD use public IANA allocated algorithm
252 identifiers instead of private algorithm identifiers. This will
253 help identify the protocol change as a standard, rather than an
254 experiment.
255
256 o Resolvers MAY recognize the protocol change in zones not signed
257 (or not solely signed) using the new algorithm identifiers.
258
259 8. Security Considerations
260
261 Zones using this methodology will be considered insecure by all
262 resolvers except those aware of the experiment. It is not generally
263 possible to create a secure delegation from an experimental zone that
264 will be followed by resolvers unaware of the experiment.
265
266 Implementers should take into account any security issues that may
267 result from environments being configured to trust both experimental
268 and non-experimental zones. If the experimental zone is more
269
270
271
272 Blacka Standards Track [Page 5]
273 RFC 4955 DNS Security (DNSSEC) Experiments July 2007
274
275
276 vulnerable to attacks, it could, for example, be used to promote
277 trust in zones not part of the experiment, possibly under the control
278 of an attacker.
279
280 9. References
281
282 9.1. Normative References
283
284 [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement
285 Levels", BCP 14, RFC 2119, March 1997.
286
287 [2] Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose,
288 "DNS Security Introduction and Requirements", RFC 4033,
289 March 2005.
290
291 [3] Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose,
292 "Resource Records for the DNS Security Extensions", RFC 4034,
293 March 2005.
294
295 [4] Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose,
296 "Protocol Modifications for the DNS Security Extensions",
297 RFC 4035, March 2005.
298
299 9.2. Informative References
300
301 [5] Mockapetris, P., "Domain names - implementation and
302 specification", STD 13, RFC 1035, November 1987.
303
304 [6] Weiler, S. and R. Austein, "Clarifications and Implementation
305 Notes for DNSSECbis", Work in Progress, March 2007.
306
307 Author's Address
308
309 David Blacka
310 VeriSign, Inc.
311 21355 Ridgetop Circle
312 Dulles, VA 20166
313 US
314
315 Phone: +1 703 948 3200
316 EMail: davidb@verisign.com
317 URI: http://www.verisignlabs.com
318
319
320
321
322
323
324
325
326
327 Blacka Standards Track [Page 6]
328 RFC 4955 DNS Security (DNSSEC) Experiments July 2007
329
330
331 Full Copyright Statement
332
333 Copyright (C) The IETF Trust (2007).
334
335 This document is subject to the rights, licenses and restrictions
336 contained in BCP 78, and except as set forth therein, the authors
337 retain all their rights.
338
339 This document and the information contained herein are provided on an
340 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
341 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
342 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
343 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
344 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
345 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
346
347 Intellectual Property
348
349 The IETF takes no position regarding the validity or scope of any
350 Intellectual Property Rights or other rights that might be claimed to
351 pertain to the implementation or use of the technology described in
352 this document or the extent to which any license under such rights
353 might or might not be available; nor does it represent that it has
354 made any independent effort to identify any such rights. Information
355 on the procedures with respect to rights in RFC documents can be
356 found in BCP 78 and BCP 79.
357
358 Copies of IPR disclosures made to the IETF Secretariat and any
359 assurances of licenses to be made available, or the result of an
360 attempt made to obtain a general license or permission for the use of
361 such proprietary rights by implementers or users of this
362 specification can be obtained from the IETF on-line IPR repository at
363 http://www.ietf.org/ipr.
364
365 The IETF invites any interested party to bring to its attention any
366 copyrights, patents or patent applications, or other proprietary
367 rights that may cover technology that may be required to implement
368 this standard. Please address the information to the IETF at
369 ietf-ipr@ietf.org.
370
371 Acknowledgement
372
373 Funding for the RFC Editor function is currently provided by the
374 Internet Society.
375
376
377
378
379
380
381
382 Blacka Standards Track [Page 7]
383
The IETF is responsible for the creation and maintenance of the DNS RFCs. The ICANN DNS RFC annotation project provides a forum for collecting community annotations on these RFCs as an aid to understanding for implementers and any interested parties. The annotations displayed here are not the result of the IETF consensus process.
This RFC is included in the DNS RFCs annotation project whose home page is here.