Internet DRAFT - draft-blanchet-newprep-problem-statement
draft-blanchet-newprep-problem-statement
Network Working Group M. Blanchet Ed.
Internet-Draft Viagenie
Intended status: Informational March 1, 2010
Expires: September 2, 2010
NewPrep Problem Statement
draft-blanchet-newprep-problem-statement-00.txt
Abstract
Using Unicode codepoints in protocol strings requires preparation of
the string. Internationalized Domain Names(idn) initial work defined
and used Stringprep and Nameprep. Other protocols have defined
Stringprep profiles. New approach different from Stringprep/Nameprep
is used for a revision of IDN. This document summarize the
characteristics of both approach and provides guidance to protocol
designers for handling internationalized strings.
Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on September 2, 2010.
Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Blanchet Ed. Expires September 2, 2010 [Page 1]
Internet-Draft NewPrep Problem Statement March 2010
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the BSD License.
This document may contain material from IETF Documents or IETF
Contributions published or made publicly available before November
10, 2008. The person(s) controlling the copyright in some of this
material may not have granted the IETF Trust the right to allow
modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other
than English.
Blanchet Ed. Expires September 2, 2010 [Page 2]
Internet-Draft NewPrep Problem Statement March 2010
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Key Characteristics of Stringprep . . . . . . . . . . . . . . . 4
3. Key Characteristics of IDNAbis . . . . . . . . . . . . . . . . 5
4. Protocols already using Stringprep . . . . . . . . . . . . . . 5
5. Protocols looking for preparing internationalized strings . . . 5
6. Generalizing IDNAbis for other protocols . . . . . . . . . . . 6
7. Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
8. Security Considerations . . . . . . . . . . . . . . . . . . . . 6
9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6
10. Discussion home for this draft . . . . . . . . . . . . . . . . 6
11. Informative References . . . . . . . . . . . . . . . . . . . . 6
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 7
Blanchet Ed. Expires September 2, 2010 [Page 3]
Internet-Draft NewPrep Problem Statement March 2010
1. Introduction
As part of the Internationalized Domain Names(idn) initial work
[RFC3490][RFC3491][RFC3492], the unicode-based strings needed to be
prepared and normalized to enable their use in the DNS with exact
match mechanism. The method, called Nameprep [RFC3491], was specific
to idn, but was generalized as Stringprep [RFC3454], to help other
protocols with similar needs, but with different constraints than
idn.
Strinprep defines a framework where protocols defines their
Stringprep profiles. Known IETF specifications using Strinprep are:
o The Nameprep profile[RFC3490] for use in Internationalized Domain
Names (IDNs)
o The iSCSI profile [RFC3722] for use in Internet Small Computer
Systems Interface (iSCSI) Names
o The Nodeprep and Resourceprep profiles [RFC3920] for use in the
Extensible Messaging and Presence Protocol (XMPP)
o The Policy MIB profile [RFC4011] for use in the Simple Network
Management Protocol (SNMP)
o The SASLprep profile [RFC4013] for use in the Simple
Authentication and Security Layer (SASL)
o The trace profile [RFC4505] for use with the SASL ANONYMOUS
mechanism
o The LDAP profile [RFC4518] for use with LDAP
Based on findings [RFC4690] on early deployments of idn, IDNs
specifications have been updated /* note to add ref to idnabis RFCs*/
and do not use stringprep/nameprep anymore. Instead, a complete
table of the supported Unicode codepoints is defined. This table is
based on some properties of the codepoints as defined by Unicode and
some specific exceptions. It also defines an algorithm to update the
table with new versions of the Unicode codepoints database.
Do other protocols, either current users of Stringprep or other
protocols, would benefit from the new approach for idns? The aim of
this document is to provide advice on the preparation of
internationalized strings to protocol designers of current stringprep
profiles as well as for new protocols.
2. Key Characteristics of Stringprep
Stringprep is used to prepare a string and output a string or an
error. The output string is normalized so that it could be compared
with others in a protocol. The functions and operations done by
Stringprep are: mapping, normalization, prohibition and bidirectional
string processing. Many functions use or may use Unicode
Blanchet Ed. Expires September 2, 2010 [Page 4]
Internet-Draft NewPrep Problem Statement March 2010
specifications such as the normalization rules /* note to add ref to
unicode normalization rules docs*/.
Functions provided by Stringprep are typically needed for many
network protocols that handles internationalized strings.
Stringprep has the following key characteristics:
o Based on Unicode 3.2
o Defines a list of codepoints that are specially processed, such as
removed
o Codepoints not specifically listed are only normalized by Unicode
normalization rules
3. Key Characteristics of IDNAbis
IDNAbis method has the following key characteristics:
o Based on Unicode 5.2
o Each Unicode codepoint is tagged
o Basic table is created algorithmatically using some properties of
the Unicode codepoint database.
o Some exceptions are specially handled
o An exception table(currently empty) is provisionned in case a
future version of Unicode introduces a new character or a change
in a character that creates a compatibility issue with previous
tables.
o IANA registers the whole codepoint table for each Unicode database
version.
When Unicode releases a new version of the codepoint database, the
table has to be regenerated and registered by IANA. Exceptions may
appear in the new table. In this case, an expert will have to
manually resolve the exceptions.
4. Protocols already using Stringprep
Possible options are:
o Leave it as is.
o Update Stringprep to new version of Unicode. Update protocol
profile to new version of Stringprep.
o Define a generalized version of IDNAbis for protocols. Update
protocol to use the new method.
5. Protocols looking for preparing internationalized strings
Possible options are:
Blanchet Ed. Expires September 2, 2010 [Page 5]
Internet-Draft NewPrep Problem Statement March 2010
o Use Stringprep as is. Define a profile for it
o Use IDNAbis.
o Define a generalized version of IDNAbis for protocols. Define
protocol to use the new method.
6. Generalizing IDNAbis for other protocols
A generalized version of IDNAbis to be used for other protocols might
be interesting to do. Similar to Stringprep but using the IDNAbis
approach.
7. Summary
When this document matures enough, then appropriate summary and
conclusions will be written...
8. Security Considerations
TBD
9. IANA Considerations
This document has no actions for IANA.
10. Discussion home for this draft
This document is intended to define the problem space discussed in
the newprep@ietf.org mailing list.
11. Informative References
[RFC3454] Hoffman, P. and M. Blanchet, "Preparation of
Internationalized Strings ("stringprep")", RFC 3454,
December 2002.
[RFC3490] Faltstrom, P., Hoffman, P., and A. Costello,
"Internationalizing Domain Names in Applications (IDNA)",
RFC 3490, March 2003.
[RFC3491] Hoffman, P. and M. Blanchet, "Nameprep: A Stringprep
Profile for Internationalized Domain Names (IDN)",
RFC 3491, March 2003.
Blanchet Ed. Expires September 2, 2010 [Page 6]
Internet-Draft NewPrep Problem Statement March 2010
[RFC3492] Costello, A., "Punycode: A Bootstring encoding of Unicode
for Internationalized Domain Names in Applications
(IDNA)", RFC 3492, March 2003.
[RFC3722] Bakke, M., "String Profile for Internet Small Computer
Systems Interface (iSCSI) Names", RFC 3722, April 2004.
[RFC3920] Saint-Andre, P., Ed., "Extensible Messaging and Presence
Protocol (XMPP): Core", RFC 3920, October 2004.
[RFC4011] Waldbusser, S., Saperia, J., and T. Hongal, "Policy Based
Management MIB", RFC 4011, March 2005.
[RFC4013] Zeilenga, K., "SASLprep: Stringprep Profile for User Names
and Passwords", RFC 4013, February 2005.
[RFC4505] Zeilenga, K., "Anonymous Simple Authentication and
Security Layer (SASL) Mechanism", RFC 4505, June 2006.
[RFC4518] Zeilenga, K., "Lightweight Directory Access Protocol
(LDAP): Internationalized String Preparation", RFC 4518,
June 2006.
[RFC4690] Klensin, J., Faltstrom, P., Karp, C., and IAB, "Review and
Recommendations for Internationalized Domain Names
(IDNs)", RFC 4690, September 2006.
Author's Address
Marc Blanchet
Viagenie
2600 boul. Laurier, suite 625
Quebec, QC G1V 4W1
Canada
Email: Marc.Blanchet@viagenie.ca
URI: http://www.viagenie.ca
Blanchet Ed. Expires September 2, 2010 [Page 7]