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 -----