idnits 2.17.1
draft-ietf-krb-wg-utf8-profile-01.txt:
Checking boilerplate required by RFC 5378 and the IETF Trust (see
https://trustee.ietf.org/license-info):
----------------------------------------------------------------------------
** Looks like you're using RFC 2026 boilerplate. This must be updated to
follow RFC 3978/3979, as updated by RFC 4748.
Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt:
----------------------------------------------------------------------------
** Missing expiration date. The document expiration date should appear on
the first and last page.
** The document seems to lack a 1id_guidelines paragraph about the list of
current Internet-Drafts.
** The document seems to lack a 1id_guidelines paragraph about the list of
Shadow Directories.
** The document is more than 15 pages and seems to lack a Table of Contents.
== No 'Intended status' indicated for this document; assuming Proposed
Standard
== The page length should not exceed 58 lines per page, but there was 1
longer page, the longest (page 1) being 936 lines
Checking nits according to https://www.ietf.org/id-info/checklist :
----------------------------------------------------------------------------
** The document seems to lack an Authors' Addresses Section.
** The document seems to lack separate sections for Informative/Normative
References. All references will be assumed normative when checking for
downward references.
** There are 8 instances of too long lines in the document, the longest one
being 9 characters in excess of 72.
** The abstract seems to contain references ([RFC3454]), which it
shouldn't. Please replace those with straight textual mentions of the
documents in question.
Miscellaneous warnings:
----------------------------------------------------------------------------
== The document seems to lack the recommended RFC 2119 boilerplate, even if
it appears to use RFC 2119 keywords.
(The document does seem to have the reference to RFC 2119 which the
ID-Checklist requires).
-- The document seems to lack a disclaimer for pre-RFC5378 work, but may
have content which was first submitted before 10 November 2008. If you
have contacted all the original authors and they are all willing to grant
the BCP78 rights to the IETF Trust, then this is fine, and you can ignore
this comment. If not, you may need to add the pre-RFC5378 disclaimer.
(See the Legal Provisions document at
https://trustee.ietf.org/license-info for more information.)
-- The document date (February 24, 2003) is 7724 days in the past. Is this
intentional?
Checking references for intended status: Proposed Standard
----------------------------------------------------------------------------
(See RFCs 3967 and 4897 for information about using normative references
to lower-maturity documents in RFCs)
== Missing Reference: 'CONTROL CHARACTERS' is mentioned on line 509, but
not defined
== Missing Reference: 'PRIVATE USE' is mentioned on line 506, but not
defined
== Missing Reference: 'PLANE 0' is mentioned on line 502, but not defined
== Missing Reference: 'PLANE 15' is mentioned on line 506, but not defined
== Missing Reference: 'PLANE 16' is mentioned on line 461, but not defined
== Missing Reference: 'SURROGATE CODES' is mentioned on line 500, but not
defined
== Missing Reference: 'TAGGING CHARACTERS' is mentioned on line 504, but
not defined
== Unused Reference: 'CharModel' is defined on line 345, but no explicit
reference was found in the text
== Unused Reference: 'Glossary' is defined on line 348, but no explicit
reference was found in the text
== Unused Reference: 'UAX9' is defined on line 369, but no explicit
reference was found in the text
-- Possible downref: Non-RFC (?) normative reference: ref. 'CharModel'
-- Possible downref: Non-RFC (?) normative reference: ref. 'Glossary'
-- Possible downref: Non-RFC (?) normative reference: ref. 'ISO10646'
-- Possible downref: Non-RFC (?) normative reference: ref. 'UAX9'
-- Possible downref: Non-RFC (?) normative reference: ref. 'UAX15'
Summary: 9 errors (**), 0 flaws (~~), 13 warnings (==), 7 comments (--).
Run idnits with the --verbose option for more detailed information about
the items above.
--------------------------------------------------------------------------------
1 Internet Draft
2 draft-ietf-krb-wg-utf8-profile-01.txt
3 February 24, 2003
4 Expires in six months
6 Preparation of Internationalized Strings Profile for Kerberos UTF-8 Strings
7 J. Altman
9 Status of this memo
11 This document is an Internet-Draft and is in full conformance with all
12 provisions of Section 10 of RFC2026.
14 Internet-Drafts are working documents of the Internet Engineering Task
15 Force (IETF), its areas, and its working groups. Note that other groups
16 may also distribute working documents as Internet-Drafts.
18 Internet-Drafts are draft documents valid for a maximum of six months
19 and may be updated, replaced, or obsoleted by other documents at any
20 time. It is inappropriate to use Internet-Drafts as reference material
21 or to cite them other than as "work in progress."
23 To view the list Internet-Draft Shadow Directories, see
24 http://www.ietf.org/shadow.html.
26 Abstract
28 This document describes how to prepare UTF-8 strings for use with Kerberos
29 protocols in order to increase the likelihood that name input and name comparison
30 work in ways that make sense for typical users throughout the world. This
31 is a profile of "Preparation of Internationalized Strings" [RFC3454].
33 1. Introduction
35 This document specifies processing rules that will allow users to enter
36 Kerberos Principal Names and input to cryptographic String to Key functions.
37 It is a profile of stringprep [RFC3454].
39 This profile defines the following, as required by [RFC3454]
41 - The intended applicability of the profile: internationalized
42 host name parts
44 - The character repertoire that is the input and output to stringprep:
45 defined in Section 2
47 - The list of unassigned code points for the repertoire: defined
48 in Appendix D.
50 - The mappings used: defined in Section 3.
52 - The Unicode normalization used: defined in Section 4
54 - The characters that are prohibited as output: Defined in section 5
56 1.2 Terminology
58 The key words "MUST", "SHALL", "REQUIRED", "SHOULD", "RECOMMENDED", and
59 "MAY" in this document are to be interpreted as described in RFC 2119
60 [RFC2119].
62 Examples in this document use the notation for code points and names
63 from the Unicode Standard [Unicode3.1] and ISO/IEC 10646 [ISO10646]. For
64 example, the letter "a" may be represented as either "U+0061" or "LATIN
65 SMALL LETTER A". In the lists of prohibited characters, the "U+" is left
66 off to make the lists easier to read. The comments for character ranges
67 are shown in square brackets (such as "[SYMBOLS]") and do not come from
68 the standards.
70 2. Character Repertoire
72 Unicode 3.2 [Unicode3.2] is the repertoire used in this profile.
73 The reason Unicode 3.2 was chosen instead of a version of
74 ISO/IEC 10646 is that Unicode 3.2 is the basis for [RFC3454].
76 3. Mapping
78 This profile specifies stringprep mapping using the mapping table
79 in Appendix C. That table includes all the steps described in this
80 section.
82 Note that text in this section describe how Appendix C was formed. It is
83 there for people who want to understand more, but it should be ignored
84 by implementors. Implementations of this profile MUST map based on
85 Appendix C, not based on the descriptions in this section of how
86 Appendix C was created.
88 3.1 Mapped to nothing
90 The following characters are simply deleted from the input (that is,
91 they are mapped to nothing) because their presence or absence should not
92 make two strings different.
94 Some characters are only useful in line-based text, and are otherwise
95 invisible and ignored.
97 00AD; SOFT HYPHEN
98 1806; MONGOLIAN TODO SOFT HYPHEN
99 200B; ZERO WIDTH SPACE
100 2060; WORD JOINER
101 FEFF; ZERO WIDTH NO-BREAK SPACE
103 Variation selectors and cursive connectors select different glyphs, but
104 do not bear semantics.
106 034F; COMBINING GRAPHEME JOINER
107 180B; MONGOLIAN FREE VARIATION SELECTOR ONE
108 180C; MONGOLIAN FREE VARIATION SELECTOR TWO
109 180D; MONGOLIAN FREE VARIATION SELECTOR THREE
110 200C; ZERO WIDTH NON-JOINER
111 200D; ZERO WIDTH JOINER
112 FE00; VARIATION SELECTOR-1
113 FE01; VARIATION SELECTOR-2
114 FE02; VARIATION SELECTOR-3
115 FE03; VARIATION SELECTOR-4
116 FE04; VARIATION SELECTOR-5
117 FE05; VARIATION SELECTOR-6
118 FE06; VARIATION SELECTOR-7
119 FE07; VARIATION SELECTOR-8
120 FE08; VARIATION SELECTOR-9
121 FE09; VARIATION SELECTOR-10
122 FE0A; VARIATION SELECTOR-11
123 FE0B; VARIATION SELECTOR-12
124 FE0C; VARIATION SELECTOR-13
125 FE0D; VARIATION SELECTOR-14
126 FE0E; VARIATION SELECTOR-15
127 FE0F; VARIATION SELECTOR-16
129 3.2 Space Character Conversions
131 Space characters can make accurate visual transcription of names
132 nearly impossible and could lead to user entry errors in many
133 ways. The following Unicode spaces are to be mapped to 0020; SPACE:
135 0020; SPACE
136 00A0; NO-BREAK SPACE
137 1680; OGHAM SPACE MARK
138 2000; EN QUAD
139 2001; EM QUAD
140 2002; EN SPACE
141 2003; EM SPACE
142 2004; THREE-PER-EM SPACE
143 2005; FOUR-PER-EM SPACE
144 2006; SIX-PER-EM SPACE
145 2007; FIGURE SPACE
146 2008; PUNCTUATION SPACE
147 2009; THIN SPACE
148 200A; HAIR SPACE
149 202F; NARROW NO-BREAK SPACE
150 205F; MEDIUM MATHEMATICAL SPACE
151 3000; IDEOGRAPHIC SPACE
153 4. Normalization
155 This profile specifies using Unicode normalization form KC, as described
156 in [UAX15].
158 NOTE: There was some discussion on the mailing list that would suggest
159 that Unicode NFKC does not properly handle the composition of
160 normalized Hangul strings. Following the lead of the IDN working
161 group, the Kerberos working group will not attempt to second-guess the
162 the authors of Unicode 3.1 Annex 15 (formerly Technical Report 15)
163 [UAX15], which specifies the normalization methods, or the Ideographic
164 Rappaorteur Group (IRG), which is the formal subgroup of ISO/IEC
165 JTC1/SC2/WG2 charged with approving all CJKV elements of the Unicode
166 standards. Such issues are outside the working group's charter and
167 its area of expertise.
169 5. Prohibited Output
171 This profile specifies using the prohibition table in Appendix D.
173 Note that the subsections below describe how Appendix D was formed. They
174 are there for people who want to understand more, but they should be
175 ignored by implementors. Implementations of this profile MUST map based
176 on Appendix D, not based on the descriptions in this section of how
177 Appendix D was created.
179 The collected lists of prohibited code points can be found in Appendix D
180 of this document. The lists in Appendix D MUST be used by implementations
181 of this specification. If there are any discrepancies between the lists
182 in Appendix D and subsections below, the lists in Appendix D always takes
183 precedence.
185 Some code points listed in one section would also appear in other
186 sections. Each code point is only listed once in the tables in Appendix
187 D.
189 5.1 Control characters
191 Control characters (or characters with control function) cannot be seen
192 and can cause unpredictable results when displayed.
194 0000-001F; [CONTROL CHARACTERS]
195 007F; DELETE
196 0080-009F; [CONTROL CHARACTERS]
197 06DD; ARABIC END OF AYAH
198 070F; SYRIAC ABBREVIATION MARK
199 180E; MONGOLIAN VOWEL SEPARATOR
200 200C; ZERO WIDTH NON-JOINER
201 200D; ZERO WIDTH JOINER
202 2028; LINE SEPARATOR
203 2029; PARAGRAPH SEPARATOR
204 2060; WORD JOINER
205 2061; FUNCTION APPLICATION
206 2062; INVISIBLE TIMES
207 2063; INVISIBLE SEPARATOR
208 206A-206F; [CONTROL CHARACTERS]
209 FEFF; ZERO WIDTH NO-BREAK SPACE
210 FFF9-FFFC; [CONTROL CHARACTERS]
211 1D173-1D17A; [MUSICAL CONTROL CHARACTERS]
213 5.2 Private use and replacement characters
215 Because private-use characters do not have defined meanings, they are
216 prohibited. The private-use characters are:
218 E000-F8FF; [PRIVATE USE, PLANE 0]
219 F0000-FFFFD; [PRIVATE USE, PLANE 15]
220 100000-10FFFD; [PRIVATE USE, PLANE 16]
222 5.3 Non-character code points
224 Non-character code points are code points that have been allocated in
225 ISO/IEC 10646 but are not characters. Because they are already assigned,
226 they are guaranteed not to later change into characters.
228 FDD0-FDEF; [NONCHARACTER CODE POINTS]
229 FFFE-FFFF; [NONCHARACTER CODE POINTS]
230 1FFFE-1FFFF; [NONCHARACTER CODE POINTS]
231 2FFFE-2FFFF; [NONCHARACTER CODE POINTS]
232 3FFFE-3FFFF; [NONCHARACTER CODE POINTS]
233 4FFFE-4FFFF; [NONCHARACTER CODE POINTS]
234 5FFFE-5FFFF; [NONCHARACTER CODE POINTS]
235 6FFFE-6FFFF; [NONCHARACTER CODE POINTS]
236 7FFFE-7FFFF; [NONCHARACTER CODE POINTS]
237 8FFFE-8FFFF; [NONCHARACTER CODE POINTS]
238 9FFFE-9FFFF; [NONCHARACTER CODE POINTS]
239 AFFFE-AFFFF; [NONCHARACTER CODE POINTS]
240 BFFFE-BFFFF; [NONCHARACTER CODE POINTS]
241 CFFFE-CFFFF; [NONCHARACTER CODE POINTS]
242 DFFFE-DFFFF; [NONCHARACTER CODE POINTS]
243 EFFFE-EFFFF; [NONCHARACTER CODE POINTS]
244 FFFFE-FFFFF; [NONCHARACTER CODE POINTS]
245 10FFFE-10FFFF; [NONCHARACTER CODE POINTS]
247 The non-character code points are listed the PropList.txt file from the
248 Unicode database.
250 5.4 Surrogate codes
252 The following code points are permanently reserved for use as surrogate
253 code values in the UTF-16 encoding, will never be assigned to
254 characters, and are therefore prohibited:
256 D800-DFFF; [SURROGATE CODES]
258 5.5 Inappropriate for plain text
260 The following characters should not appear in regular text.
262 FFF9; INTERLINEAR ANNOTATION ANCHOR
263 FFFA; INTERLINEAR ANNOTATION SEPARATOR
264 FFFB; INTERLINEAR ANNOTATION TERMINATOR
265 FFFC; OBJECT REPLACEMENT CHARACTER
267 Although the replacement character (U+FFFD) might be used when a name is
268 displayed, it doesn't make sense for it to be part of the name itself.
269 It is often displayed by renderers to indicate "there would be
270 some character here, but it cannot be rendered". For example, on a
271 computer with no Asian fonts, a name with three ideographs might be
272 rendered with three replacement characters.
274 FFFD; REPLACEMENT CHARACTER
276 5.6 Inappropriate for canonical representation
278 The ideographic description characters allow different sequences of
279 characters to be rendered the same way, which makes them inappropriate
280 for host names that must have a single canonical representation.
282 2FF0-2FFB; [IDEOGRAPHIC DESCRIPTION CHARACTERS]
284 5.7 Change display properties
286 The following characters can cause changes in display or the order in
287 which characters appear when rendered, or are deprecated in Unicode.
289 0340; COMBINING GRAVE TONE MARK
290 0341; COMBINING ACUTE TONE MARK
291 200E; LEFT-TO-RIGHT MARK
292 200F; RIGHT-TO-LEFT MARK
293 202A; LEFT-TO-RIGHT EMBEDDING
294 202B; RIGHT-TO-LEFT EMBEDDING
295 202C; POP DIRECTIONAL FORMATTING
296 202D; LEFT-TO-RIGHT OVERRIDE
297 202E; RIGHT-TO-LEFT OVERRIDE
298 206A; INHIBIT SYMMETRIC SWAPPING
299 206B; ACTIVATE SYMMETRIC SWAPPING
300 206C; INHIBIT ARABIC FORM SHAPING
301 206D; ACTIVATE ARABIC FORM SHAPING
302 206E; NATIONAL DIGIT SHAPES
303 206F; NOMINAL DIGIT SHAPES
305 5.8 Tagging characters
307 The following characters are used for tagging text and are invisible.
309 E0001; LANGUAGE TAG
310 E0020-E007F; [TAGGING CHARACTERS]
312 6. Bidirectional Characters
314 This profile specifies checking bidirectional strings as described
315 in [RFC3454] section 6.
317 7. Unassigned Code Points
319 This profile lists the unassigned code points for Unicode 3.2 in
320 Appendix E. The list in Appendix E MUST be used by implementations of
321 this specification. If there are any discrepancies between the list in
322 Appendix E and the Unicode 3.2 specification, the list Appendix E always
323 takes precedence.
325 8. Security Considerations
327 ISO/IEC 10646 has many characters that look similar. In many cases,
328 users of security protocols might do visual matching, such as when
329 comparing the names of trusted third parties. This profile does nothing
330 to map similar-looking characters together.
332 Principal names and passwords are entered by users and used within the
333 Kerberos protocol. The
334 security of the Internet would be compromised if a user entering a
335 single internationalized string could be connected to different servers
336 or denied access based on different interpretations of
337 internationalized strings.
339 9. IANA Considerations
341 IANA is to register this profile as described in [RFC3454].
343 10. References
345 [CharModel] Unicode Technical Report;17, Character Encoding Model.
346 .
348 [Glossary] Unicode Glossary, .
350 [ISO10646] ISO/IEC 10646-1:2000. International Standard -- Information
351 technology -- Universal Multiple-Octet Coded Character Set (UCS) -- Part
352 1: Architecture and Basic Multilingual Plane.
354 [RFC2119] Scott Bradner, "Key words for use in RFCs to Indicate
355 Requirement Levels", March 1997, RFC 2119.
357 [RFC3454] Paul Hoffman and Marc Blanchet, "Preparation of
358 Internationalized Strings ("stringprep")", draft-hoffman-stringprep,
359 work in progress
361 [Unicode3.2] The Unicode Standard, Version 3.2.0: The Unicode
362 Consortium. The Unicode Standard, Version 3.0. Reading, MA,
363 Addison-Wesley Developers Press, 2000. ISBN 0-201-61633-5, as amended
364 by: Unicode Standard Annex #27: Unicode 3.1
365 ; and
366 by: Unicode Standard Annex #28: Unicode 3.2
367
369 [UAX9] The Unicode Consortium. Unicode Standard Annex #9, The
370 Bidirectional Algorithm, .
372 [UAX15] Mark Davis and Martin Duerst. Unicode Standard Annex #15:
373 Unicode Normalization Forms, Version 3.1.0.
374
376 A. Acknowledgements
378 This draft is based upon the work of the IETF IDN Working Group's
379 IDN Nameprep design team.
381 This profile is the work of the Kerberos Working Group. Significant
382 contributions were provided by Jeffrey Hutzelman, Sam Hartman, Tom Yu,
383 Ken Raeburn, and Jeffrey Altman.
385 B. Editor Contact Information
387 Jeffrey Altman
388 Internet Access Methods
389 200 W 72ND ST STE 48
390 NEW YORK NY 10024
391 +1 (212) 580-2700
392 e-mail: jaltman@iamx.com
394 C. Mapping Tables
396 The following is the mapping table from Section 3. The table has three
397 columns:
398 - the character that is mapped from
399 - the zero or more characters that it is mapped to
400 - the reason for the mapping
401 The columns are separated by semicolons. Note that the second column may
402 be empty, or it may have one character, or it may have more than one
403 character, with each character separated by a space.
405 ----- Start Mapping Table -----
406 00A0; 0020; NO-BREAK SPACE
407 00AD; ; Map to nothing
408 034F; ; Map to nothing
409 1680; 0020; OGHAM SPACE MARK
410 1806; ; Map to nothing
411 180B; ; Map to nothing
412 180C; ; Map to nothing
413 180D; ; Map to nothing
414 2000; 0020; EN QUAD
415 2001; 0020; EM QUAD
416 2002; 0020; EN SPACE
417 2003; 0020; EM SPACE
418 2004; 0020; THREE-PER-EM SPACE
419 2005; 0020; FOUR-PER-EM SPACE
420 2006; 0020; SIX-PER-EM SPACE
421 2007; 0020; FIGURE SPACE
422 2008; 0020; PUNCTUATION SPACE
423 2009; 0020; THIN SPACE
424 200A; 0020; HAIR SPACE
425 200B; ; Map to nothing
426 200C; ; Map to nothing
427 200D; ; Map to nothing
428 2060; ; Map to nothing
429 202F; 0020; NARROW NO-BREAK SPACE
430 205F; 0020; MEDIUM MATHEMATICAL SPACE
431 3000; 0020; IDEOGRAPHIC SPACE
432 FE00; ; Map to nothing
433 FE01; ; Map to nothing
434 FE02; ; Map to nothing
435 FE03; ; Map to nothing
436 FE04; ; Map to nothing
437 FE05; ; Map to nothing
438 FE06; ; Map to nothing
439 FE07; ; Map to nothing
440 FE08; ; Map to nothing
441 FE09; ; Map to nothing
442 FE0A; ; Map to nothing
443 FE0B; ; Map to nothing
444 FE0C; ; Map to nothing
445 FE0D; ; Map to nothing
446 FE0E; ; Map to nothing
447 FE0F; ; Map to nothing
448 FEFF; ; Map to nothing
449 ----- End Mapping Table -----
451 D. Prohibited Code Point List
453 ----- Start Prohibited Table -----
454 0000-001F; [CONTROL CHARACTERS]
455 007F; DELETE
456 0080-009F; [CONTROL CHARACTERS]
457 0340; COMBINING GRAVE TONE MARK
458 0341; COMBINING ACUTE TONE MARK
459 06DD; ARABIC END OF AYAH
460 070F; SYRIAC ABBREVIATION MARK
461 100000-10FFFD; [PRIVATE USE, PLANE 16]
462 10FFFE-10FFFF; [NONCHARACTER CODE POINTS]
463 180E; MONGOLIAN VOWEL SEPARATOR
464 1D173-1D17A; [MUSICAL CONTROL CHARACTERS]
465 1FFFE-1FFFF; [NONCHARACTER CODE POINTS]
466 200C; ZERO WIDTH NON-JOINER
467 200D; ZERO WIDTH JOINER
468 200E; LEFT-TO-RIGHT MARK
469 200F; RIGHT-TO-LEFT MARK
470 2028; LINE SEPARATOR
471 2029; PARAGRAPH SEPARATOR
472 202A; LEFT-TO-RIGHT EMBEDDING
473 202B; RIGHT-TO-LEFT EMBEDDING
474 202C; POP DIRECTIONAL FORMATTING
475 202D; LEFT-TO-RIGHT OVERRIDE
476 202E; RIGHT-TO-LEFT OVERRIDE
477 2060; WORD JOINER
478 2061; FUNCTION APPLICATION
479 2062; INVISIBLE TIMES
480 2063; INVISIBLE SEPARATOR
481 206A-206F; [CONTROL CHARACTERS]
482 206A; INHIBIT SYMMETRIC SWAPPING
483 206B; ACTIVATE SYMMETRIC SWAPPING
484 206C; INHIBIT ARABIC FORM SHAPING
485 206D; ACTIVATE ARABIC FORM SHAPING
486 206E; NATIONAL DIGIT SHAPES
487 206F; NOMINAL DIGIT SHAPES
488 2FF0-2FFB; [IDEOGRAPHIC DESCRIPTION CHARACTERS]
489 2FFFE-2FFFF; [NONCHARACTER CODE POINTS]
490 3FFFE-3FFFF; [NONCHARACTER CODE POINTS]
491 4FFFE-4FFFF; [NONCHARACTER CODE POINTS]
492 5FFFE-5FFFF; [NONCHARACTER CODE POINTS]
493 6FFFE-6FFFF; [NONCHARACTER CODE POINTS]
494 7FFFE-7FFFF; [NONCHARACTER CODE POINTS]
495 8FFFE-8FFFF; [NONCHARACTER CODE POINTS]
496 9FFFE-9FFFF; [NONCHARACTER CODE POINTS]
497 AFFFE-AFFFF; [NONCHARACTER CODE POINTS]
498 BFFFE-BFFFF; [NONCHARACTER CODE POINTS]
499 CFFFE-CFFFF; [NONCHARACTER CODE POINTS]
500 D800-DFFF; [SURROGATE CODES]
501 DFFFE-DFFFF; [NONCHARACTER CODE POINTS]
502 E000-F8FF; [PRIVATE USE, PLANE 0]
503 E0001; LANGUAGE TAG
504 E0020-E007F; [TAGGING CHARACTERS]
505 EFFFE-EFFFF; [NONCHARACTER CODE POINTS]
506 F0000-FFFFD; [PRIVATE USE, PLANE 15]
507 FDD0-FDEF; [NONCHARACTER CODE POINTS]
508 FEFF; ZERO WIDTH NO-BREAK SPACE
509 FFF9-FFFC; [CONTROL CHARACTERS]
510 FFF9; INTERLINEAR ANNOTATION ANCHOR
511 FFFA; INTERLINEAR ANNOTATION SEPARATOR
512 FFFB; INTERLINEAR ANNOTATION TERMINATOR
513 FFFC; OBJECT REPLACEMENT CHARACTER
514 FFFD; REPLACEMENT CHARACTER
515 FFFE-FFFF; [NONCHARACTER CODE POINTS]
516 FFFFE-FFFFF; [NONCHARACTER CODE POINTS]
517 ----- End Prohibited Table -----
519 NOTE WELL: Software that follows this specification that will be used to
520 check names before they are put in authoritative name servers MUST add
521 all unassigned code points to the list of characters that are prohibited.
522 See Section 6 of [RFC3454] for more details.
524 E. Unassigned Code Point List
526 ----- Start Unassigned Table -----
527 0221
528 0234-024F
529 02AE-02AF
530 02EF-02FF
531 0350-035F
532 0370-0373
533 0376-0379
534 037B-037D
535 037F-0383
536 038B
537 038D
538 03A2
539 03CF
540 03F7-03FF
541 0487
542 04CF
543 04F6-04F7
544 04FA-04FF
545 0510-0530
546 0557-0558
547 0560
548 0588
549 058B-0590
550 05A2
551 05BA
552 05C5-05CF
553 05EB-05EF
554 05F5-060B
555 060D-061A
556 061C-061E
557 0620
558 063B-063F
559 0656-065F
560 06EE-06EF
561 06FF
562 070E
563 072D-072F
564 074B-077F
565 07B2-0900
566 0904
567 093A-093B
568 094E-094F
569 0955-0957
570 0971-0980
571 0984
572 098D-098E
573 0991-0992
574 09A9
575 09B1
576 09B3-09B5
577 09BA-09BB
578 09BD
579 09C5-09C6
580 09C9-09CA
581 09CE-09D6
582 09D8-09DB
583 09DE
584 09E4-09E5
585 09FB-0A01
586 0A03-0A04
587 0A0B-0A0E
588 0A11-0A12
589 0A29
590 0A31
591 0A34
592 0A37
593 0A3A-0A3B
594 0A3D
595 0A43-0A46
596 0A49-0A4A
597 0A4E-0A58
598 0A5D
599 0A5F-0A65
600 0A75-0A80
601 0A84
602 0A8C
603 0A8E
604 0A92
605 0AA9
606 0AB1
607 0AB4
608 0ABA-0ABB
609 0AC6
610 0ACA
611 0ACE-0ACF
612 0AD1-0ADF
613 0AE1-0AE5
614 0AF0-0B00
615 0B04
616 0B0D-0B0E
617 0B11-0B12
618 0B29
619 0B31
620 0B34-0B35
621 0B3A-0B3B
622 0B44-0B46
623 0B49-0B4A
624 0B4E-0B55
625 0B58-0B5B
626 0B5E
627 0B62-0B65
628 0B71-0B81
629 0B84
630 0B8B-0B8D
631 0B91
632 0B96-0B98
633 0B9B
634 0B9D
635 0BA0-0BA2
636 0BA5-0BA7
637 0BAB-0BAD
638 0BB6
639 0BBA-0BBD
640 0BC3-0BC5
641 0BC9
642 0BCE-0BD6
643 0BD8-0BE6
644 0BF3-0C00
645 0C04
646 0C0D
647 0C11
648 0C29
649 0C34
650 0C3A-0C3D
651 0C45
652 0C49
653 0C4E-0C54
654 0C57-0C5F
655 0C62-0C65
656 0C70-0C81
657 0C84
658 0C8D
659 0C91
660 0CA9
661 0CB4
662 0CBA-0CBD
663 0CC5
664 0CC9
665 0CCE-0CD4
666 0CD7-0CDD
667 0CDF
668 0CE2-0CE5
669 0CF0-0D01
670 0D04
671 0D0D
672 0D11
673 0D29
674 0D3A-0D3D
675 0D44-0D45
676 0D49
677 0D4E-0D56
678 0D58-0D5F
679 0D62-0D65
680 0D70-0D81
681 0D84
682 0D97-0D99
683 0DB2
684 0DBC
685 0DBE-0DBF
686 0DC7-0DC9
687 0DCB-0DCE
688 0DD5
689 0DD7
690 0DE0-0DF1
691 0DF5-0E00
692 0E3B-0E3E
693 0E5C-0E80
694 0E83
695 0E85-0E86
696 0E89
697 0E8B-0E8C
698 0E8E-0E93
699 0E98
700 0EA0
701 0EA4
702 0EA6
703 0EA8-0EA9
704 0EAC
705 0EBA
706 0EBE-0EBF
707 0EC5
708 0EC7
709 0ECE-0ECF
710 0EDA-0EDB
711 0EDE-0EFF
712 0F48
713 0F6B-0F70
714 0F8C-0F8F
715 0F98
716 0FBD
717 0FCD-0FCE
718 0FD0-0FFF
719 1022
720 1028
721 102B
722 1033-1035
723 103A-103F
724 105A-109F
725 10C6-10CF
726 10F9-10FA
727 10FC-10FF
728 115A-115E
729 11A3-11A7
730 11FA-11FF
731 1207
732 1247
733 1249
734 124E-124F
735 1257
736 1259
737 125E-125F
738 1287
739 1289
740 128E-128F
741 12AF
742 12B1
743 12B6-12B7
744 12BF
745 12C1
746 12C6-12C7
747 12CF
748 12D7
749 12EF
750 130F
751 1311
752 1316-1317
753 131F
754 1347
755 135B-1360
756 137D-139F
757 13F5-1400
758 1677-167F
759 169D-169F
760 16F1-16FF
761 170D
762 1715-171F
763 1737-173F
764 1754-175F
765 176D
766 1771
767 1774-177F
768 17DD-17DF
769 17EA-17FF
770 180F
771 181A-181F
772 1878-187F
773 18AA-1DFF
774 1E9C-1E9F
775 1EFA-1EFF
776 1F16-1F17
777 1F1E-1F1F
778 1F46-1F47
779 1F4E-1F4F
780 1F58
781 1F5A
782 1F5C
783 1F5E
784 1F7E-1F7F
785 1FB5
786 1FC5
787 1FD4-1FD5
788 1FDC
789 1FF0-1FF1
790 1FF5
791 1FFF
792 2053-2056
793 2058-205E
794 2064-2069
795 2072-2073
796 208F-209F
797 20B2-20CF
798 20EB-20FF
799 213B-213C
800 214C-2152
801 2184-218F
802 23CF-23FF
803 2427-243F
804 244B-245F
805 24FF
806 2614-2615
807 2618
808 267E-267F
809 268A-2700
810 2705
811 270A-270B
812 2728
813 274C
814 274E
815 2753-2755
816 2757
817 275F-2760
818 2795-2797
819 27B0
820 27BF-27CF
821 27EC-27EF
822 2B00-2E7F
823 2E9A
824 2EF4-2EFF
825 2FD6-2FEF
826 2FFC-2FFF
827 3040
828 3097-3098
829 3100-3104
830 312D-3130
831 318F
832 31B8-31EF
833 321D-321F
834 3244-3250
835 327C-327E
836 32CC-32CF
837 32FF
838 3377-337A
839 33DE-33DF
840 33FF
841 4DB6-4DFF
842 9FA6-9FFF
843 A48D-A48F
844 A4C7-ABFF
845 D7A4-D7FF
846 FA2E-FA2F
847 FA6B-FAFF
848 FB07-FB12
849 FB18-FB1C
850 FB37
851 FB3D
852 FB3F
853 FB42
854 FB45
855 FBB2-FBD2
856 FD40-FD4F
857 FD90-FD91
858 FDC8-FDCF
859 FDFD-FDFF
860 FE10-FE1F
861 FE24-FE2F
862 FE47-FE48
863 FE53
864 FE67
865 FE6C-FE6F
866 FE75
867 FEFD-FEFE
868 FF00
869 FFBF-FFC1
870 FFC8-FFC9
871 FFD0-FFD1
872 FFD8-FFD9
873 FFDD-FFDF
874 FFE7
875 FFEF-FFF8
876 10000-102FF
877 1031F
878 10324-1032F
879 1034B-103FF
880 10426-10427
881 1044E-1CFFF
882 1D0F6-1D0FF
883 1D127-1D129
884 1D1DE-1D3FF
885 1D455
886 1D49D
887 1D4A0-1D4A1
888 1D4A3-1D4A4
889 1D4A7-1D4A8
890 1D4AD
891 1D4BA
892 1D4BC
893 1D4C1
894 1D4C4
895 1D506
896 1D50B-1D50C
897 1D515
898 1D51D
899 1D53A
900 1D53F
901 1D545
902 1D547-1D549
903 1D551
904 1D6A4-1D6A7
905 1D7CA-1D7CD
906 1D800-1FFFD
907 2A6D7-2F7FF
908 2FA1E-2FFFD
909 30000-3FFFD
910 40000-4FFFD
911 50000-5FFFD
912 60000-6FFFD
913 70000-7FFFD
914 80000-8FFFD
915 90000-9FFFD
916 A0000-AFFFD
917 B0000-BFFFD
918 C0000-CFFFD
919 D0000-DFFFD
920 E0000
921 E0002-E001F
922 E0080-EFFFD
923 ----- End Unassigned Table -----