IETF IDN Working Group Sung Jae Shim Internet Draft DualName, Inc. Document: draft-ietf-idn-vidn-01.txt 2 March 2001 Expires: 2 September 2001 Virtually Internationalized Domain Names (VIDN) Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. 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. 1. Abstract This document proposes a method that enables domain names to be used in both local and English scripts, as a directory-search solution at an upper layer above the DNS. The method first converts virtual domain names typed in local scripts into the corresponding domain names in English scripts that comply with the DNS, using the knowledge of transliteration between local and English scripts. Then, the method searches for and displays domain names in English scripts that are active on the Internet so that the user can choose any of them. The conversion takes place automatically and transparently in the user's applications before DNS queries are sent, and so, the method does not make any change to the DNS nor require separate name servers. 2. Conventions and definitions used in this document The key words "REQUIRED" and "MAY" in this document are to be interpreted as described in RFC-2119 [1]. A "host" is a computer or device attached to the Internet. A "user host" is a computer or device with which a user is connected to the Internet, and a "user" is a person who uses a user host. A "server host" is a computer or device that provides services to user hosts. An "entity" is an organization or individual that has a domain name registered with the DNS. A "local language" is a language other than English language that a user prefers to use in a local context. "Local scripts" are scripts of a local language and "English scripts" are scripts of English language. A "virtual domain name" is a domain name in local scripts, and it is not registered with the DNS but used for the convenience of users. An "English domain name" is a domain name in English scripts. A "domain name" refers to an English domain name that complies with the DNS, unless specified otherwise. A "coded portion" is a pre-coded portion of a domain name (e.g., generic codes including 'com', 'edu', 'gov', 'int', 'mil', 'net', 'org', and country codes such as 'kr', 'jp', 'cn', and so on). An "entity-defined portion" is a portion of a domain name, which is defined by the entity that holds the domain name (e.g., host name, organization name, server name, and so on). The method proposed in this document is called "virtually internationalized domain names (VIDN)," as it enables domain names in English scripts to be used virtually in local scripts. A number of Korean-language characters are used in the original of this document for examples, which is available from the author upon request. The software used for Internet-Drafts does not allow using multilingual characters other than ASCII characters. Thus, this document may not display Korean-language characters properly, although it may be comprehensible without the examples using Korean- language characters. Also, when you open the original of this document, please select your view encoding type to Korean for Korean-language characters to be displayed properly. 3. Introduction Domain names are valuable to Internet users as a main identifier of entities and resources on the Internet. The DNS allows using only English scripts in naming hosts or clusters of hosts on the Internet. More specifically, the DNS uses only the basic Latin alphabets (case-insensitive), the decimal digits (0-9) and the hyphen (-) in domain names. But there is a growing need for internationalized domain names in local scripts. Recognizing this need, various methods have been proposed to use local scripts in domain names. But to date, no method appears to meet all the requirements of internationalized domain names as described in Wenzel and Seng [2]. A group of earlier methods tries to put internationalized domain names in local scripts inside some parts of the overall DNS, using special encoding schemes of Universal Character Set (UCS). But these methods put too much of a burden on the DNS, requiring a great deal of work for transition and update of the DNS components and the applications working with the DNS. Another group of earlier methods tries to build separate directory services for internationalized domain names or keywords in local scripts. But these methods also require complex implementation efforts, duplicating much of the work already done for the DNS. Both the groups of earlier methods require creating internationalized domain names or keywords in local scripts from scratch, which is a costly and lengthy process on the parts of the DNS and Internet users. Further, domain names or keywords created in local scripts are usable only by those who know the local scripts, and so, they may segregate the Internet into many groups of different sets of local scripts that are less universal than English scripts. VIDN intends to provide a more immediate and less costly solution to internationalized domain names than earlier methods. VIDN does not make any change to the DNS nor require creating additional domain names in local scripts. VIDN takes notice of the fact that many domain names currently used in regions where English scripts are not widely used have their entity-defined portions consisting of English scripts as transliterated from the respective local scripts. Using this knowledge of transliteration between local and English scripts, VIDN converts virtual domain names typed in local scripts into the corresponding domain names in English scripts that comply with the DNS. In this way, VIDN enables the same domain names to be used not only in English scripts as usual but also in local scripts, without creating additional domain names in local scripts. 4. VIDN method 4.1. Objectives Earlier methods of internationalized domain names try to create domain names or keywords in local scripts one way or another in addition to existing domain names in English scripts, and put them inside or outside the DNS, using special encoding schemes or lookup services. These methods require a lengthy and costly process of creating domain names in local scripts and updating the DNS components and applications. Even when they are successfully implemented, these methods have a risk of localizing the Internet by segregating it into groups of different sets of local scripts that are less universal than English scripts and so diminishing the international scope of the Internet. Further, these methods may cause more problems and disputes on copyrights, trademarks, and so on, in local contexts than those that we experience with current domain names in English scripts. VIDN intends to provide a solution to the problems of earlier methods of internationalized domain names. VIDN enables the same domain names to be used in both English scripts as usual and local scripts, and so, there is no need to create domain names in local scripts in addition to domain names in English scripts. VIDN works automatically and transparently in applications at user hosts before DNS requests are sent, and so, there is no need to make any change to the DNS or to have additional name servers. For these reasons as well as others, VIDN can be implemented more immediately with less cost than other methods of internationalized domain names. 4.2. Description It is important to note that most domain names used in regions where English scripts are not widely used have their entity-defined portions consisting of English scripts as transliterated from local scripts. Of course, there are many domain names in those regions that do not follow this kind of transliteration between local and English scripts. In such case, new domain names in English scripts need to be created following this transliteration, but the number would be minimal, compared to the number of internationalized domain names in local scripts to be created and registered under other methods. The English scripts transliterated from local scripts do not have any meanings in English language, but their originals in local scripts before the transliteration have some meanings in the respective local language, usually indicating organization names, brand names, trademarks, and so on. VIDN enables to use these original local scripts as the entity-defined portions of virtual domain names in local scripts, by transliterating them into the corresponding entity-defined portions of actual domain names in English scripts. In this way, VIDN enables the same domain names in English scripts to be used virtually in local scripts without actually creating domain names in local scripts. As domain names in English scripts overlay IP addresses, so virtual domain names in local scripts do actual domain names in English scripts. The relationship between virtual domain names in local scripts and actual domain names in English scripts can be depicted as: +---------------------------------+ | User | +---------------------------------+ | | +----------------|-----------------------|------------------+ | v (Transliteration) v | | +---------------------+ | +-----------------------+ | | | Virtual domain name | | | Actual domain name | | | | in local scripts |--+->| in English scripts | | | +---------------------+ +-----------------------+ | | User application | | +----------------------------------------|------------------+ v DNS requests VIDN uses the phonemes of local and English scripts as a medium in transliterating the entity-defined portions of virtual domain names in local scripts into those of actual domain names in English scripts. This process of transliteration can be depicted as: Local scripts English scripts +----------------------------+ +-----------------------------+ | Characters ----> Phonemes -----------> Phonemes ----> Characters | | | | | | | | | | | | | | | | (Inverse of transcription) | Match | (Transcription) | +----------------------------+ +-----------------------------+ | ^ | (Transliteration) | +------------------------------------+ First, each entity-defined portion of a virtual domain name typed in local scripts is decomposed into individual characters or sets of characters so that each individual character or set of characters can represent an individual phoneme of the local language. This is the inverse of transcription of phonemes into characters. Second, each individual phoneme of the local language is matched with an equivalent phoneme of English language that has the same or most proximate sound. Third, each phoneme of English language is transcribed into the corresponding character or set of characters in English language. Finally, all the characters or sets of characters converted into English scripts are united to compose the corresponding entity-defined portion of an actual domain name in English scripts. For example, a word in Korean language, '