[要約] RFC 6122は、XMPPのアドレス形式に関する仕様であり、XMPPアドレスの構造と使用方法を定義しています。このRFCの目的は、XMPPネットワーク内での正確なアドレス指定とメッセージングの実現を可能にすることです。
Internet Engineering Task Force (IETF) P. Saint-Andre Request for Comments: 6122 Cisco Updates: 3920 March 2011 Category: Standards Track ISSN: 2070-1721
Extensible Messaging and Presence Protocol (XMPP): Address Format
拡張可能なメッセージとプレゼンスプロトコル(XMPP):アドレス形式
Abstract
概要
This document defines the format for addresses used in the Extensible Messaging and Presence Protocol (XMPP), including support for non-ASCII characters. This document updates RFC 3920.
このドキュメントでは、非ASCII文字のサポートを含む、拡張可能なメッセージングおよびプレゼンスプロトコル(XMPP)で使用されるアドレスの形式を定義します。このドキュメントは、RFC 3920を更新します。
Status of This Memo
本文書の位置付け
This is an Internet Standards Track document.
これは、インターネット標準トラックドキュメントです。
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741.
このドキュメントは、インターネットエンジニアリングタスクフォース(IETF)の製品です。IETFコミュニティのコンセンサスを表しています。公開レビューを受けており、インターネットエンジニアリングステアリンググループ(IESG)からの出版が承認されています。インターネット標準の詳細については、RFC 5741のセクション2で入手できます。
Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc6122.
このドキュメントの現在のステータス、任意のERRATA、およびそのフィードバックを提供する方法に関する情報は、http://www.rfc-editor.org/info/rfc6122で取得できます。
Copyright Notice
著作権表示
Copyright (c) 2011 IETF Trust and the persons identified as the document authors. All rights reserved.
Copyright(c)2011 IETF Trustおよび文書著者として特定された人。全著作権所有。
This document is subject to BCP 78 and the IETF Trust's Legal 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 Simplified BSD License.
このドキュメントは、BCP 78およびIETFドキュメント(http://trustee.ietf.org/license-info)に関連するIETF Trustの法的規定の対象となります。この文書に関するあなたの権利と制限を説明するので、これらの文書を注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、セクション4.Eで説明されている法的規定のセクション4.Eで説明されており、単純化されたBSDライセンスで説明されているように保証なしで提供される簡略化されたBSDライセンステキストを含める必要があります。
Table of Contents
目次
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 4 2. Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1. Fundamentals . . . . . . . . . . . . . . . . . . . . . . . 4 2.2. Domainpart . . . . . . . . . . . . . . . . . . . . . . . . 6 2.3. Localpart . . . . . . . . . . . . . . . . . . . . . . . . 7 2.4. Resourcepart . . . . . . . . . . . . . . . . . . . . . . . 8 3. Internationalization Considerations . . . . . . . . . . . . . 9 4. Security Considerations . . . . . . . . . . . . . . . . . . . 9 4.1. Reuse of Stringprep . . . . . . . . . . . . . . . . . . . 9 4.2. Reuse of Unicode . . . . . . . . . . . . . . . . . . . . . 9 4.3. Address Spoofing . . . . . . . . . . . . . . . . . . . . . 9 4.3.1. Address Forging . . . . . . . . . . . . . . . . . . . 10 4.3.2. Address Mimicking . . . . . . . . . . . . . . . . . . 10 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 5.1. Nodeprep Profile of Stringprep . . . . . . . . . . . . . . 13 5.2. Resourceprep Profile of Stringprep . . . . . . . . . . . . 14 6. Conformance Requirements . . . . . . . . . . . . . . . . . . . 14 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 16 7.1. Normative References . . . . . . . . . . . . . . . . . . . 16 7.2. Informative References . . . . . . . . . . . . . . . . . . 17 Appendix A. Nodeprep . . . . . . . . . . . . . . . . . . . . . . 19 A.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . 19 A.2. Character Repertoire . . . . . . . . . . . . . . . . . . . 19 A.3. Mapping . . . . . . . . . . . . . . . . . . . . . . . . . 19 A.4. Normalization . . . . . . . . . . . . . . . . . . . . . . 19 A.5. Prohibited Output . . . . . . . . . . . . . . . . . . . . 20 A.6. Bidirectional Characters . . . . . . . . . . . . . . . . . 20 A.7. Notes . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Appendix B. Resourceprep . . . . . . . . . . . . . . . . . . . . 21 B.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . 21 B.2. Character Repertoire . . . . . . . . . . . . . . . . . . . 22 B.3. Mapping . . . . . . . . . . . . . . . . . . . . . . . . . 22 B.4. Normalization . . . . . . . . . . . . . . . . . . . . . . 22 B.5. Prohibited Output . . . . . . . . . . . . . . . . . . . . 22 B.6. Bidirectional Characters . . . . . . . . . . . . . . . . . 22 Appendix C. Differences from RFC 3920 . . . . . . . . . . . . . . 22 Appendix D. Acknowledgements . . . . . . . . . . . . . . . . . . 23
The Extensible Messaging and Presence Protocol (XMPP) is an application profile of the Extensible Markup Language [XML] for streaming XML data in close to real time between any two or more network-aware entities. The address format for XMPP entities was originally developed in the Jabber open-source community in 1999, first described by [XEP-0029] in 2002, and defined canonically by [RFC3920] in 2004.
拡張可能なメッセージとプレゼンスプロトコル(XMPP)は、2つ以上のネットワーク認識エンティティ間でXMLデータをリアルタイムに近づけるための拡張可能なマークアップ言語[XML]のアプリケーションプロファイルです。XMPPエンティティのアドレス形式は、1999年にJabber Open-Sourceコミュニティで元々開発され、2002年に[XEP-0029]で最初に記述され、2004年に[RFC3920]によって正規で定義されました。
As specified in RFC 3920, the XMPP address format reuses the "stringprep" technology for preparation of non-ASCII characters [STRINGPREP], including the Nameprep profile for internationalized domain names as specified in [NAMEPREP] and [IDNA2003] along with two XMPP-specific profiles for the localpart and resourcepart.
RFC 3920で指定されているように、XMPPアドレス形式は、[NAMEPREP]および[IDNA2003]で指定された国際化ドメイン名のNAMEPREPプロファイルを含む非ASCII文字[StringPrep]の準備のための「StringPrep」テクノロジーを再利用します。LocalPartおよびResourcePartの特定のプロファイル。
Since the publication of RFC 3920, IDNA2003 has been superseded by IDNA2008 (see [IDNA-PROTO] and related documents), which is not based on stringprep. Following the lead of the IDNA community, other technology communities that use stringprep have begun discussions about migrating away from stringprep toward more "modern" approaches. The XMPP community is participating in those discussions (mostly within the PRECIS Working Group) in order to find a replacement for the Nodeprep and Resourceprep profiles of stringprep defined in RFC 3920. Because all other aspects of revised documentation for XMPP have been incorporated into [XMPP], the XMPP Working Group decided to temporarily split the XMPP address format into a separate document so as not to significantly delay publication of improved documentation for XMPP. It is expected that this document will be obsoleted as soon as work on a new approach to preparation and comparison of internationalized addresses has been completed.
RFC 3920の公開以来、IDNA2003はIDNA2008([IDNA-Proto]および関連ドキュメントを参照)に取って代わられており、StringPrepに基づいていません。IDNAコミュニティのリードに続いて、StringPrepを使用する他のテクノロジーコミュニティは、StringPrepからより「現代的な」アプローチへの移行についての議論を開始しました。XMPPコミュニティは、RFC 3920で定義されたStringPrepのnodeprepおよびResourcePrepプロファイルの代替品を見つけるために、これらの議論(主にPrecisワーキンググループ内)に参加しています。XMPPの改訂されたドキュメントの他のすべての側面が[XMPPに組み込まれているため]、XMPPワーキンググループは、XMPPの改良ドキュメントの公開を大幅に遅らせないように、XMPPアドレス形式を別のドキュメントに一時的に分割することを決定しました。国際化された住所の準備と比較への新しいアプローチの作業が完了するとすぐに、このドキュメントが廃止されることが予想されます。
Therefore, this specification provides corrected documentation of the XMPP address format using the internationalization technologies available in 2004 (when RFC 3920 was published). Although this document normatively references [IDNA2003] and [NAMEPREP], XMPP software implementations are encouraged to begin migrating to IDNA2008 (see [IDNA-PROTO] and related documents) because the specification that obsoletes this one will use IDNA2008 rather than IDNA2003.
したがって、この仕様は、2004年に利用可能な国際化テクノロジーを使用して、XMPPアドレス形式の修正されたドキュメントを提供します(RFC 3920が公開されたとき)。このドキュメントは、[IDNA2003]および[namePrep]を参照していますが、XMPPソフトウェアの実装は、IDNA2003ではなくIDNA2008を廃止する仕様であるため、IDNA2008([IDNA-Proto]および関連文書を参照)に移行し始めることが推奨されます。
This document updates RFC 3920.
このドキュメントは、RFC 3920を更新します。
Many important terms used in this document are defined in [IDNA2003], [STRINGPREP], [UNICODE], and [XMPP].
このドキュメントで使用される多くの重要な用語は、[IDNA2003]、[StringPrep]、[Unicode]、および[XMPP]で定義されています。
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [KEYWORDS].
キーワードは「必須」、「必要」、「必須」、「shall」、「shall "、" bood "、" low "not"、 "becommended"、 "bodement"、 ""、 "、" optional「このドキュメントでは、RFC 2119 [キーワード]で説明されているように解釈されます。
An XMPP entity is anything that is network-addressable and that can communicate using XMPP. For historical reasons, the native address of an XMPP entity is called a Jabber Identifier or JID. A valid JID is a string of [UNICODE] code points, encoded using [UTF-8], and structured as an ordered sequence of localpart, domainpart, and resourcepart (where the first two parts are demarcated by the '@' character used as a separator, and the last two parts are similarly demarcated by the '/' character).
XMPPエンティティは、ネットワークアドレス可能なものであり、XMPPを使用して通信できるものです。歴史的な理由から、XMPPエンティティのネイティブアドレスは、Jabber IdentifierまたはJIDと呼ばれます。有効なJIDは、[UTF-8]を使用してエンコードされた[Unicode]コードポイントの文字列であり、LocalPart、DomainPart、およびResourcePartの順序付けされたシーケンスとして構成されています(最初の2つの部分は、「@」文字によって使用される「@」文字によって境界が境界化されます。セパレーター、および最後の2つの部分は、「/」文字によって同様に区切られています)。
The syntax for a JID is defined as follows using the Augmented Backus-Naur Form as specified in [ABNF].
JIDの構文は、[ABNF]で指定されているように、拡張されたバックスノール形式を使用して次のように定義されます。
jid = [ localpart "@" ] domainpart [ "/" resourcepart ] localpart = 1*(nodepoint) ; ; a "nodepoint" is a UTF-8 encoded Unicode code ; point that satisfies the Nodeprep profile of ; stringprep ; domainpart = IP-literal / IPv4address / ifqdn ; ; the "IPv4address" and "IP-literal" rules are ; defined in RFC 3986, and the first-match-wins ; (a.k.a. "greedy") algorithm described in RFC ; 3986 applies to the matching process ; ; note well that reuse of the IP-literal rule ; from RFC 3986 implies that IPv6 addresses are ; enclosed in square brackets (i.e., beginning ; with '[' and ending with ']'), which was not ; the case in RFC 3920 ; ifqdn = 1*(namepoint) ; ; a "namepoint" is a UTF-8 encoded Unicode ; code point that satisfies the Nameprep ; profile of stringprep ; resourcepart = 1*(resourcepoint) ; ; a "resourcepoint" is a UTF-8 encoded Unicode ; code point that satisfies the Resourceprep ; profile of stringprep ;
All JIDs are based on the foregoing structure.
すべてのJIDは、前述の構造に基づいています。
Each allowable portion of a JID (localpart, domainpart, and resourcepart) MUST NOT be zero bytes in length and MUST NOT be more than 1023 bytes in length, resulting in a maximum total size (including the '@' and '/' separators) of 3071 bytes.
JID(LocalPart、DomainPart、およびResourcePart)の許容部分は、長さがゼロバイトではなく、長さが1023バイトを超えてはならず、最大合計サイズ(「@」および '/'セパレータを含む)になります。3071バイトの。
For the purpose of communication over an XMPP network (e.g., in the 'to' or 'from' address of an XMPP stanza), an entity's address MUST be represented as a JID, not as a Uniform Resource Identifier [URI] or Internationalized Resource Identifier [IRI]. An XMPP IRI [XMPP-URI] is in essence a JID prepended with 'xmpp:'; however, the native addressing format used in XMPP is that of a mere JID without a URI scheme. [XMPP-URI] is provided only for identification and interaction outside the context of XMPP itself, for example when linking to a JID from a web page. See [XMPP-URI] for a description of the process for securely extracting a JID from an XMPP URI or IRI.
XMPPネットワークを介した通信を目的として(例:XMPPスタンザの「To」または「From」)。エンティティのアドレスは、均一なリソース識別子[URI]または国際化されたリソースとしてではなく、JIDとして表されなければなりません識別子[IRI]。xmpp iri [xmpp-uri]は、本質的に「xmpp:」で準備されたJidです。ただし、XMPPで使用されるネイティブアドレス指定形式は、URIスキームのない単なるJIDの形式です。[xmpp-uri]は、たとえば、WebページからJIDにリンクする場合、XMPP自体のコンテキスト外の識別と相互作用のためにのみ提供されます。XMPP URIまたはIRIからJIDを安全に抽出するプロセスの説明については、[XMPP-URI]を参照してください。
Implementation Note: When dividing a JID into its component parts, an implementation needs to match the separator characters '@' and '/' before applying any transformation algorithms, which might decompose certain Unicode code points to the separator characters (e.g., U+FE6B SMALL COMMERCIAL AT might decompose into U+0040 COMMERCIAL AT).
実装注:JIDをコンポーネントパーツに分割する場合、実装は、特定のUnicodeコードポイントをセパレーター文字に分解する可能性のある変換アルゴリズムを適用する前に、セパレータ文字 '@'および '/'を一致させる必要があります(例:U FE6B SmallCommeract at Maighは、u 0040コマーシャルに分解します)。
The domainpart of a JID is that portion after the '@' character (if any) and before the '/' character (if any); it is the primary identifier and is the only REQUIRED element of a JID (a mere domainpart is a valid JID). Typically a domainpart identifies the "home" server to which clients connect for XML routing and data management functionality. However, it is not necessary for an XMPP domainpart to identify an entity that provides core XMPP server functionality (e.g., a domainpart can identify an entity such as a multi-user chat service, a publish-subscribe service, or a user directory).
JIDのドメインパートは、 '@'文字(もしあれば)および「/」文字(存在する場合)の前にその部分です。これは主要な識別子であり、JIDの唯一の要素です(単なるドメインパートは有効なJIDです)。通常、DomainPartは、クライアントがXMLルーティングとデータ管理機能に接続する「ホーム」サーバーを識別します。ただし、XMPP DomainPartがCore XMPPサーバー機能を提供するエンティティを識別する必要はありません(たとえば、DomainPartはマルチユーザーチャットサービス、パブリッシュサブスクライブサービス、ユーザーディレクトリなどのエンティティを識別できます)。
The domainpart for every XMPP service MUST be a fully qualified domain name (FQDN; see [DNS]), IPv4 address, IPv6 address, or unqualified hostname (i.e., a text label that is resolvable on a local network).
すべてのXMPPサービスのDomainPartは、完全に適格なドメイン名(FQDN; [DNS]を参照)、IPv4アドレス、IPv6アドレス、または資格のないホスト名(つまり、ローカルネットワークで解決できるテキストラベル)でなければなりません。
Interoperability Note: Domainparts that are IP addresses might not be accepted by other services for the sake of server-to-server communication, and domainparts that are unqualified hostnames cannot be used on public networks because they are resolvable only on a local network.
相互運用性注:IPアドレスであるドメインパートは、サーバー間通信のために他のサービスで受け入れられない場合があり、資格のないホスト名であるドメインパートは、ローカルネットワークでのみ解決できるため、パブリックネットワークでは使用できません。
If the domainpart includes a final character considered to be a label separator (dot) by [IDNA2003] or [DNS], this character MUST be stripped from the domainpart before the JID of which it is a part is used for the purpose of routing an XML stanza, comparing against another JID, or constructing an [XMPP-URI]. In particular, the character MUST be stripped before any other canonicalization steps are taken, such as application of the [NAMEPREP] profile of [STRINGPREP] or completion of the ToASCII operation as described in [IDNA2003].
DomainPartに[IDNA2003]または[DNS]によってラベルセパレーター(DOT)と見なされる最終文字が含まれている場合、この文字は、JIDがルーティングする目的で使用される前に、ドメインパートから剥がす必要があります。XML Stanza、別のJIDと比較するか、[XMPP-URI]を構築します。特に、[stringprep]の[nameprep]プロファイルの適用や[IDNA2003]に記載されているToascii操作の完了など、他の標準化手順が取られる前に、キャラクターを剥がす必要があります。
A domainpart consisting of a fully qualified domain name MUST be an "internationalized domain name" as defined in [IDNA2003]; that is, it MUST be "a domain name in which every label is an internationalized label" and MUST follow the rules for construction of internationalized domain names specified in [IDNA2003]. When preparing a text label (consisting of a sequence of UTF-8 encoded Unicode code points) for representation as an internationalized label in the process of constructing an XMPP domainpart or comparing two XMPP domainparts, an application MUST ensure that for each text label it is possible to apply without failing the ToASCII operation specified in [IDNA2003] with the UseSTD3ASCIIRules flag set (thus forbidding ASCII code points other than letters, digits, and hyphens). If the ToASCII operation can be applied without failing, then the label is an internationalized label. (Note: The ToASCII operation includes application of the [NAMEPREP] profile of [STRINGPREP] and encoding using the algorithm specified in [PUNYCODE]; for details, see [IDNA2003].) Although XMPP applications do not communicate the output of the ToASCII operation (called an "ACE label") over the wire, it MUST be possible to apply that operation without failing to each internationalized label. If an XMPP application receives as input an ACE label, it SHOULD convert that ACE label to an internationalized label using the ToUnicode operation (see [IDNA2003]) before including the label in an XMPP domainpart that will be communicated over the wire on an XMPP network (however, instead of converting the label, there are legitimate reasons why an application might instead refuse the input altogether and return an error to the entity that provided the offending data).
完全に適格なドメイン名で構成されるドメインパートは、[IDNA2003]で定義されている「国際化ドメイン名」でなければなりません。つまり、「すべてのラベルが国際化されたラベルであるドメイン名」であり、[IDNA2003]で指定された国際化されたドメイン名の構築に関する規則に従う必要があります。XMPPドメインパートを構築するプロセスまたは2つのXMPPドメインパートを比較するプロセスで、国際化ラベルとして表現するためのテキストラベル(UTF-8エンコードされたUnicodeコードポイントのシーケンスで構成される)を準備する場合、アプリケーションは各テキストラベルに対して、[IDNA2003]で指定されたToascii操作を失敗することなく適用できます。これは、UseStD3asciirulesフラグセット(したがって、文字、数字、ハイフン以外のASCIIコードポイントを禁止する)を使用します。TOASCII操作を失敗なく適用できる場合、ラベルは国際化されたラベルです。(注:Toascii操作には、[stringprep]の[nameprep]プロファイルの適用が含まれ、[Punycode]で指定されたアルゴリズムを使用してエンコードします。詳細については、[IDNA2003]を参照してください。)(「エースラベル」と呼ばれる)ワイヤー上で、各国際化されたラベルに必ずその操作を適用することができる必要があります。XMPPアプリケーションがACEラベルの入力として受信する場合、XMPPネットワーク上のワイヤー上で通信されるXMPPドメインパートにラベルを含める前に、そのエースラベル([IDNA2003]を参照[IDNA2003]を参照)を使用して([IDNA2003]を参照))する必要があります。(ただし、ラベルを変換する代わりに、アプリケーションが代わりに入力を完全に拒否し、問題を提供したエンティティにエラーを返す可能性がある正当な理由があります)。
A domainpart MUST NOT be zero bytes in length and MUST NOT be more than 1023 bytes in length. This rule is to be enforced after any mapping or normalization resulting from application of the Nameprep profile of stringprep (e.g., in Nameprep some characters can be mapped to nothing, which might result in a string of zero length). Naturally, the length limits of [DNS] apply, and nothing in this document is to be interpreted as overriding those more fundamental limits.
ドメインパートの長さはゼロバイトではなく、長さが1023バイトを超えてはなりません。このルールは、StringPrepのNAMEPREPプロファイルの適用に起因するマッピングまたは正規化の後に施行されることになっています(たとえば、NAMEPREPでは、一部の文字は何もマッピングできないため、長さはゼロになります)。当然のことながら、[DNS]の長さの制限が適用され、このドキュメントの何もこれらのより基本的な制限を無効にするものとして解釈されるものはありません。
In the terms of IDNA2008 [IDNA-DEFS], the domainpart of a JID is a "domain name slot".
IDNA2008 [IDNA-DEFS]の観点から、JIDのドメインパートは「ドメイン名スロット」です。
The localpart of a JID is an optional identifier placed before the domainpart and separated from the latter by the '@' character. Typically a localpart uniquely identifies the entity requesting and using network access provided by a server (i.e., a local account), although it can also represent other kinds of entities (e.g., a chat room associated with a multi-user chat service). The entity represented by an XMPP localpart is addressed within the context of a specific domain (i.e., <localpart@domainpart>).
JIDのローカルパートは、ドメインパートの前に配置され、後者から「@」文字によって分離されたオプションの識別子です。通常、LocalPartは、サーバー(つまり、ローカルアカウント)が提供するネットワークアクセスを要求および使用するエンティティを一意に識別しますが、他の種類のエンティティ(マルチユーザーチャットサービスに関連付けられたチャットルームなど)を表すこともできます。XMPP LocalPartで表されるエンティティは、特定のドメインのコンテキスト内でアドレス指定されます(つまり、<LocalPart@domainpart>)。
A localpart MUST be formatted such that the Nodeprep profile of [STRINGPREP] can be applied without failing (see Appendix A). Before comparing two localparts, an application MUST first ensure that the Nodeprep profile has been applied to each identifier (the profile need not be applied each time a comparison is made, as long as it has been applied before comparison).
[StringPrep]のnodePrepプロファイルを必ず適用できるように、ローカルパートをフォーマットする必要があります(付録Aを参照)。2つのローカルパートを比較する前に、アプリケーションは最初に各識別子にnodePrepプロファイルが適用されることを確認する必要があります(比較前に適用される限り、比較が行われるたびにプロファイルを適用する必要はありません)。
A localpart MUST NOT be zero bytes in length and MUST NOT be more than 1023 bytes in length. This rule is to be enforced after any mapping or normalization resulting from application of the Nodeprep profile of stringprep (e.g., in Nodeprep some characters can be mapped to nothing, which might result in a string of zero length).
LocalPartの長さはゼロバイトであってはならず、長さ1023バイトを超えてはなりません。このルールは、stringprepのnodeprepプロファイルの適用に起因するマッピングまたは正規化の後に施行されることになっています(たとえば、nodeprepでは、一部の文字は何もマッピングできないため、長さはゼロになります)。
The resourcepart of a JID is an optional identifier placed after the domainpart and separated from the latter by the '/' character. A resourcepart can modify either a <localpart@domainpart> address or a mere <domainpart> address. Typically a resourcepart uniquely identifies a specific connection (e.g., a device or location) or object (e.g., an occupant in a multi-user chat room) belonging to the entity associated with an XMPP localpart at a domain (i.e., <localpart@domainpart/resourcepart>).
JIDのリソースパートは、ドメインパートの後に配置され、後者から「/」文字によって分離されたオプションの識別子です。ResourcePartは、A <localPart@domainpart>アドレスまたは単なる<domainpart>アドレスのいずれかを変更できます。通常、ResourcePartは、ドメインのXMPP LocalPartに関連付けられているエンティティに属する特定の接続(例:デバイスまたは場所)またはオブジェクト(マルチユーザーチャットルームの居住者)を一意に識別します(つまり、<LocalPart@DomainPart/ResourcePart>)。
A resourcepart MUST be formatted such that the Resourceprep profile of [STRINGPREP] can be applied without failing (see Appendix B). Before comparing two resourceparts, an application MUST first ensure that the Resourceprep profile has been applied to each identifier (the profile need not be applied each time a comparison is made, as long as it has been applied before comparison).
[StringPrep]のリソースプレッププロファイルを失敗することなく適用できるように、ResourcePartをフォーマットする必要があります(付録Bを参照)。2つのリソースパートを比較する前に、アプリケーションは最初に各識別子にリソースプレッププロファイルが適用されることを確認する必要があります(比較前に適用される限り、比較が行われるたびにプロファイルを適用する必要はありません)。
A resourcepart MUST NOT be zero bytes in length and MUST NOT be more than 1023 bytes in length. This rule is to be enforced after any mapping or normalization resulting from application of the Resourceprep profile of stringprep (e.g., in Resourceprep some characters can be mapped to nothing, which might result in a string of zero length).
リソースパートの長さはゼロバイトであってはならず、長さ1023バイトを超えてはなりません。このルールは、StringPrepのResourcePrepプロファイルの適用に起因するマッピングまたは正規化の後に実施されます(たとえば、ResourcePrepでは、一部の文字を何もマッピングできないため、ゼロの長さの文字列になります)。
Informational Note: For historical reasons, the term "resource identifier" is often used in XMPP to refer to the optional portion of an XMPP address that follows the domainpart and the "/" separator character; to help prevent confusion between an XMPP "resource identifier" and the meanings of "resource" and "identifier" provided in Section 1.1 of [URI], this specification uses the term "resourcepart" instead of "resource identifier" (as in RFC 3920).
情報ノート:歴史的な理由から、「リソース識別子」という用語は、XMPPでしばしば使用され、ドメインパートと「/」セパレータ文字に続くXMPPアドレスのオプション部分を参照します。XMPPの「リソース識別子」と[uri]のセクション1.1に記載されている「リソース」と「識別子」の意味との間の混乱を防ぐために、この仕様は「リソース識別子」の代わりに「リソースパート」という用語を使用します(RFC 3920のように)。
XMPP entities SHOULD consider resourceparts to be opaque strings and SHOULD NOT impute meaning to any given resourcepart. In particular:
XMPPエンティティは、リソースパートを不透明な文字列であると考える必要があり、特定のResourcePartに意味を引き込むべきではありません。特に:
o Use of the '/' character as a separator between the domainpart and the resourcepart does not imply that XMPP addresses are hierarchical in the way that, say, HTTP addresses are hierarchical; thus for example an XMPP address of the form <localpart@domainpart/foo/bar> does not identify a resource "bar" that exists below a resource "foo" in a hierarchy of resources associated with the entity "localpart@domain".
o ドメインパートとリソースパートの間のセパレーターとしての「/」文字の使用は、XMPPアドレスが、たとえば、HTTPアドレスが階層的である方法で階層的であることを意味するものではありません。したがって、たとえば、フォームのxmppアドレス<localpart@domainpart/foo/bar>は、エンティティ「localpart@domain」に関連するリソースの階層に「foo」の下に存在するリソース「bar」を識別しません。
o The '@' character is allowed in the resourcepart and is often used in the "nick" shown in XMPP chatrooms. For example, the JID <room@chat.example.com/user@host> describes an entity who is an occupant of the room <room@chat.example.com> with an (asserted) nick of <user@host>. However, chatroom services do not necessarily check such an asserted nick against the occupant's real JID.
o 「@」文字はリソースパートで許可されており、XMPPチャットルームに表示されている「ニック」でよく使用されます。たとえば、jid <room@chat.example.com/user@host>は、部屋の居住者であるエンティティ<room@chat.example.com>(主張された)<use@host>のニックと説明しています。ただし、チャットルームサービスは、そのような主張されたニックを居住者の本当のJIDに対して必ずしもチェックしているわけではありません。
XMPP servers MUST, and XMPP clients SHOULD, support [IDNA2003] for domainparts (including the [NAMEPREP] profile of [STRINGPREP]), the Nodeprep (Appendix A) profile of [STRINGPREP] for localparts, and the Resourceprep (Appendix B) profile of [STRINGPREP] for resourceparts; this enables XMPP addresses to include a wide variety of characters outside the US-ASCII range. Rules for enforcement of the XMPP address format are provided in [XMPP].
XMPPサーバーは、XMPPクライアントが、[StringPrep]の[nameprep]プロファイルを含む[nameprep]プロファイルを含む)の[idna2003]、localparts for [stringprep]のnodeprep(付録A)プロファイル、およびリソースプレップ(付録B)プロファイルをサポートする必要があります。[stringprep] for resourceParts;これにより、XMPPアドレスは、米国ASCII範囲外のさまざまなキャラクターを含めることができます。XMPPアドレス形式の施行に関するルールは、[XMPP]で提供されています。
The security considerations described in [STRINGPREP] apply to the Nodeprep (Appendix A) and Resourceprep (Appendix B) profiles defined in this document for XMPP localparts and resourceparts. The security considerations described in [STRINGPREP] and [NAMEPREP] apply to the Nameprep profile that is reused here for XMPP domainparts.
[StringPrep]で説明されているセキュリティ上の考慮事項は、XMPP LocalPartsおよびResourcePartsのこのドキュメントで定義されているNodePrep(付録A)およびリソースプレップ(付録B)プロファイルに適用されます。[StringPrep]および[NamePrep]で説明されているセキュリティ上の考慮事項は、XMPPドメインパートのためにここで再利用されるNAMEPREPプロファイルに適用されます。
The security considerations described in [UNICODE-SEC] apply to the use of Unicode characters in XMPP addresses.
[unicode-sec]で説明されているセキュリティ上の考慮事項は、XMPPアドレスのUnicode文字の使用に適用されます。
There are two forms of address spoofing: forging and mimicking.
アドレススプーフィングには、鍛造と模倣の2つの形式があります。
In the context of XMPP technologies, address forging occurs when an entity is able to generate an XML stanza whose 'from' address does not correspond to the account credentials with which the entity authenticated onto the network (or an authorization identity provided during negotiation of SASL authentication [SASL] as described in [XMPP]). For example, address forging occurs if an entity that authenticated as "juliet@im.example.com" is able to send XML stanzas from "nurse@im.example.com" or "romeo@example.net".
XMPPテクノロジーのコンテキストでは、エンティティが「From」アドレスがネットワークに認証されたアカウント資格情報(またはSASLの交渉中に提供される許可ID)に対応していないXMLスタンザを生成できる場合、アドレス鍛造が発生します。[XMPP]で説明されているように、認証[SASL])。たとえば、「juliet@im.example.com」として認証されたエンティティが「nurs@im.example.com」または「romeo@example.net」からXMLスタンザを送信できる場合、アドレス鍛造が発生します。
Address forging is difficult in XMPP systems, given the requirement for sending servers to stamp 'from' addresses and for receiving servers to verify sending domains via server-to-server authentication (see [XMPP]). However, address forging is possible if:
XMPPシステムでは、「アドレスから「スタンプ」するサーバーを送信するための要件があり、サーバーからサーバーへの認証を介してドメインの送信を確認するためのサーバーを受信する必要があることを考えると、アドレス鍛造は困難です([XMPP]を参照)。ただし、以下の場合、アドレス鍛造が可能です。
o A poorly implemented server ignores the requirement for stamping the 'from' address. This would enable any entity that authenticated with the server to send stanzas from any localpart@domainpart as long as the domainpart matches the sending domain of the server.
o 実装されていないサーバーは、「From」アドレスをスタンプするための要件を無視します。これにより、サーバーで認証されたエンティティが、DomainPartがサーバーの送信ドメインと一致する限り、LocalPart@DomainPartからスタンザを送信できるようになります。
o An actively malicious server generates stanzas on behalf of any registered account.
o 積極的に悪意のあるサーバーは、登録されたアカウントに代わってスタンザを生成します。
Therefore, an entity outside the security perimeter of a particular server cannot reliably distinguish between JIDs of the form <localpart@domainpart> at that server and thus can authenticate only the domainpart of such JIDs with any level of assurance. This specification does not define methods for discovering or counteracting such poorly implemented or rogue servers. However, the end-to-end authentication or signing of XMPP stanzas could help to mitigate this risk, since it would require the rogue server to generate false credentials in addition to modifying 'from' addresses.
したがって、特定のサーバーのセキュリティ境界外のエンティティは、そのサーバーのフォーム<localpart@domainpart>のJidsを確実に区別することはできません。この仕様では、このような不十分に実装されていないまたは不正なサーバーを発見または打ち消す方法を定義するものではありません。ただし、XMPPスタンザのエンドツーエンドの認証または署名は、Rogue Serverが「From」アドレスの変更に加えて誤った資格情報を生成する必要があるため、このリスクを軽減するのに役立ちます。
Furthermore, it is possible for an attacker to forge JIDs at other domains by means of a DNS poisoning attack if DNS security extensions [DNSSEC] are not used.
さらに、DNSセキュリティ拡張[DNSSEC]が使用されない場合、攻撃者はDNS中毒攻撃によって他のドメインでJIDを鍛造することができます。
Address mimicking occurs when an entity provides legitimate authentication credentials for and sends XML stanzas from an account whose JID appears to a human user to be the same as another JID. For example, in some XMPP clients the address "ju1iet@example.org" (spelled with the number one as the third character of the localpart) might appear to be the same as "juliet@example.org (spelled with the lower-case version of the letter "L"), especially on casual visual inspection; this phenomenon is sometimes called "typejacking". A more sophisticated example of address mimicking might involve the use of characters from outside the familiar Latin extended-A block of Unicode code points, such as the characters U+13DA U+13A2 U+13B5 U+13AC U+13A2 U+13AC U+13D2 from the Cherokee block instead of the similar-looking US-ASCII characters "STPETER".
アドレスの模倣は、エンティティが正当な認証資格情報を提供し、XMLスタンザを人間のユーザーに別のJIDと同じと思われるアカウントから送信するときに発生します。たとえば、一部のXMPPクライアントでは、アドレス「ju1iet@example.org」(LocalPartの3番目の文字としてナンバーワンのスペル)は「juliet@example.org(低ケースで綴られています)と同じように見えるかもしれません。文字「L」のバージョン)、特にカジュアルな目視検査で;この現象は「タイプジャック」と呼ばれることもあります。アドレスのより洗練された例には、馴染みのあるラテン語の拡張型コードポイントの馴染みのあるラテン語の拡張ブロックの外部からのキャラクターの使用が含まれる場合があります。など、文字u 13da u 13a2 u 13b5 u 13ac u 13a2 u 13ac u 13d2、似たようなus-ascii文字「stpeter」の代わりにチェロキーブロックからのu 13d2。
In some examples of address mimicking, it is unlikely that the average user could tell the difference between the real JID and the fake JID. (Indeed, there is no programmatic way to distinguish with full certainty which is the fake JID and which is the real JID; in some communication contexts, the JID formed of Cherokee characters might be the real JID and the JID formed of US-ASCII characters might thus appear to be the fake JID.) Because JIDs can contain almost any properly encoded Unicode code point, it can be relatively easy to mimic some JIDs in XMPP systems. The possibility of address mimicking introduces security vulnerabilities of the kind that have also plagued the World Wide Web, specifically the phenomenon known as phishing.
アドレスの模倣のいくつかの例では、平均的なユーザーが実際のJIDと偽のJIDの違いを伝えることはほとんどありません。(実際、偽のJIDであり、実際のJIDである完全な確実性を区別するプログラム的な方法はありません。いくつかのコミュニケーションのコンテキストでは、チェロキーのキャラクターで形成されたJIDは本物のJIDであり、US-AsciiキャラクターのJIDが形成されたJIDかもしれません。したがって、Jidsにはほぼすべての適切にエンコードされたユニコードコードポイントが含まれている可能性があるため、XMPPシステムの一部のJIDを模倣するのは比較的簡単になります。住所の可能性は、World Wide Web、特にフィッシングとして知られる現象を悩ませている種類のセキュリティの脆弱性を導入します。
These problems arise because Unicode and ISO/IEC 10646 repertoires have many characters that look similar (so-called "confusable characters" or "confusables"). In many cases, XMPP users might perform visual matching, such as when comparing the JIDs of communication partners. Because it is impossible to map similar-looking characters without a great deal of context (such as knowing the fonts used), stringprep and stringprep-based technologies such as Nameprep, Nodeprep, and Resourceprep do nothing to map similar-looking characters together, nor do they prohibit some characters because they look like others. As a result, XMPP localparts and resourceparts could contain confusable characters, producing JIDs that appear to mimic other JIDs and thus leading to security vulnerabilities such as the following:
これらの問題は、UnicodeおよびISO/IEC 10646レパートリーに似ている多くのキャラクター(いわゆる「混乱しやすい文字」または「混乱したもの」)にあるために発生します。多くの場合、XMPPユーザーは、コミュニケーションパートナーのJIDを比較するときなど、視覚的なマッチングを実行する場合があります。多くのコンテキスト(使用されるフォントの知識など)なしで似たようなキャラクターをマッピングすることは不可能であるため、NAMEPREP、NODEPREP、RESOUNCEPREPなどのStringPrepおよびStringPrepベースのテクノロジーは、似たような文字をマッピングすることも何もしません。彼らは他のキャラクターのように見えるので、彼らはいくつかのキャラクターを禁止していますか?その結果、XMPP LocalPartsとResourcePartsには混乱しやすい文字が含まれている可能性があり、他のJIDを模倣するように見えるJIDを生成し、次のようなセキュリティの脆弱性につながる可能性があります。
o A localpart can be employed as one part of an entity's address in XMPP. One common usage is as the username of an instant messaging user; another is as the name of a multi-user chat room; and many other kinds of entities could use localparts as part of their addresses. The security of such services could be compromised based on different interpretations of the internationalized localpart; for example, a user entering a single internationalized localpart could access another user's account information, or a user could gain access to a hidden or otherwise restricted chat room or service.
o LocalPartは、XMPPのエンティティの住所の一部として採用できます。1つの一般的な使用法は、インスタントメッセージングユーザーのユーザー名です。もう1つは、マルチユーザーチャットルームの名前としてです。また、他の多くの種類のエンティティは、アドレスの一部としてLocalPartを使用できます。このようなサービスのセキュリティは、国際化されたローカルパートのさまざまな解釈に基づいて侵害される可能性があります。たとえば、単一の国際化されたLocalPartを入力するユーザーは、別のユーザーのアカウント情報にアクセスしたり、ユーザーが隠されたり制限されているチャットルームまたはサービスにアクセスすることができます。
o A resourcepart can be employed as one part of an entity's address in XMPP. One common usage is as the name for an instant messaging user's connected resource; another is as the nickname of a user in a multi-user chat room; and many other kinds of entities could use resourceparts as part of their addresses. The security of such services could be compromised based on different interpretations of the internationalized resourcepart; for example, two or more confusable resources could be bound at the same time to the same account (resulting in inconsistent authorization decisions in an XMPP application that uses full JIDs), or a user could send a message to someone other than the intended recipient in a multi-user chat room.
o ResourcePartは、XMPPのエンティティのアドレスの一部として使用できます。1つの一般的な使用法は、インスタントメッセージングユーザーの接続されたリソースの名前としてです。もう1つは、マルチユーザーチャットルームのユーザーのニックネームとしてです。また、他の多くの種類のエンティティは、アドレスの一部としてResourcePartsを使用できます。このようなサービスのセキュリティは、国際化されたリソースパートのさまざまな解釈に基づいて侵害される可能性があります。たとえば、2つ以上の紛らわしいリソースを同じアカウントに同時にバインドできます(完全なJIDを使用するXMPPアプリケーションで一貫性のない承認決定が行われます)。マルチユーザーチャットルーム。
Despite the fact that some specific suggestions about identification and handling of confusable characters appear in the Unicode Security Considerations [UNICODE-SEC], it is also true (as noted in [IDNA-DEFS]) that "there are no comprehensive technical solutions to the problems of confusable characters". Mimicked JIDs that involve characters from only one script, or from the script typically employed by a particular user or community of language users, are not easy to combat (e.g., the simple typejacking attack previously described, which relies on a surface similarity between the characters "1" and "l" in some presentations). However, mimicked addresses that involve characters from more than one script, or from a script not typically employed by a particular user or community of language users, can be mitigated somewhat through the application of appropriate registration policies at XMPP services and presentation policies in XMPP client software. Therefore, the following policies are encouraged:
紛らわしい文字の識別と取り扱いに関するいくつかの特定の提案がUnicodeセキュリティに関する考慮事項[Unicode-Sec]に表示されるという事実にもかかわらず、「[idna-defs]で述べられているように)「[idna-defs]に記載されているように)も当てはまります。紛らわしいキャラクターの問題」。1つのスクリプトのみ、または言語ユーザーの特定のユーザーまたはコミュニティが通常採用しているスクリプトからのキャラクターを含むJIDを模倣しましたが、戦闘は簡単ではありません(例えば、以前に説明された単純なタイプジャック攻撃で、文字間の表面の類似性に依存しています。いくつかのプレゼンテーションで「1」と「L」)。ただし、複数のスクリプト、または言語ユーザーの特定のユーザーまたはコミュニティが通常採用していないスクリプトからの文字を含む模倣アドレスは、XMPPサービスで適切な登録ポリシーとXMPPクライアントでのプレゼンテーションポリシーを適用することにより、多少軽減できます。ソフトウェア。したがって、次のポリシーが奨励されます。
1. Because an XMPP service that allows registration of XMPP user accounts (localparts) plays a role similar to that of a registry for DNS domain names, such a service SHOULD establish a policy about the scripts or blocks of characters it will allow in localparts at the service. Such a policy is likely to be informed by the languages and scripts that are used to write registered account names; in particular, to reduce confusion, the service MAY forbid registration of XMPP localparts that contain characters from more than one script and to restrict registrations to characters drawn from a very small number of scripts (e.g., scripts that are well-understood by the administrators of the service). Such policies are also appropriate for XMPP services that allow temporary or permanent registration of XMPP resourceparts, e.g., during resource binding [XMPP] or upon joining an XMPP-based chat room [XEP-0045]. For related considerations in the context of domain name registration, refer to Section 4.3 of [IDNA-PROTO] and Section 3.2 of [IDNA-RATIONALE]. Note well that methods for enforcing such restrictions are out of scope for this document.
1. XMPPユーザーアカウント(LocalParts)の登録を許可するXMPPサービスは、DNSドメイン名のレジストリと同様の役割を果たしているため、そのようなサービスは、サービスのローカルパートで許可される文字のスクリプトまたはブロックに関するポリシーを確立する必要があります。。このようなポリシーは、登録されたアカウント名を記述するために使用される言語とスクリプトによって通知される可能性があります。特に、混乱を減らすために、このサービスは、複数のスクリプトからの文字を含むXMPPローカルパートの登録を禁止し、非常に少数のスクリプト(例:管理者がよく理解しているスクリプトから描かれた文字に登録を制限することができます。サービス)。このようなポリシーは、XMPPリソースパートの一時的または恒久的な登録を可能にするXMPPサービス、例えばリソースバインディング[XMPP]またはXMPPベースのチャットルーム[XEP-0045]に参加するときにも適しています。ドメイン名登録のコンテキストでの関連する考慮事項については、[IDNA-Proto]のセクション4.3および[IDNA Rationale]のセクション3.2を参照してください。このような制限を実施する方法は、このドキュメントの範囲外であることに注意してください。
2. Because every human user of an XMPP client presumably has a preferred language (or, in some cases, a small set of preferred languages), an XMPP client SHOULD gather that information either explicitly from the user or implicitly via the operating system of the user's device. Furthermore, because most languages are typically represented by a single script (or a small set of scripts) and most scripts are typically contained in one or more blocks of characters, an XMPP client SHOULD warn the user when presenting a JID that mixes characters from more than one script or block, or that uses characters outside the normal range of the user's preferred language(s). This recommendation is not intended to discourage communication across different communities of language users; instead, it recognizes the existence of such communities and encourages due caution when presenting unfamiliar scripts or characters to human users.
2. XMPPクライアントのすべてのユーザーユーザーは、おそらく優先言語(または場合によっては小さな言語のセット)があるため、XMPPクライアントはユーザーから明示的にその情報を収集するか、ユーザーのデバイスのオペレーティングシステムを介して暗黙的に収集する必要があります。。さらに、ほとんどの言語は通常、単一のスクリプト(または小さなスクリプトのセット)で表され、ほとんどのスクリプトは通常1つ以上の文字ブロックに含まれているため、XMPPクライアントは、より多くのキャラクターをミックスするJIDを提示するときにユーザーに警告する必要があります。1つのスクリプトまたはブロック、またはユーザーの優先言語の通常の範囲外の文字を使用します。この推奨事項は、言語ユーザーのさまざまなコミュニティ間のコミュニケーションを思いとどまらせることではありません。代わりに、そのようなコミュニティの存在を認識し、人間のユーザーになじみのないスクリプトやキャラクターを提示する際には注意を促します。
The following sections update the registrations provided in [RFC3920].
次のセクションでは、[RFC3920]で提供される登録を更新します。
The Nodeprep profile of stringprep is defined under Nodeprep (Appendix A). The IANA has registered Nodeprep in the "Stringprep Profiles" registry.
StringPrepの節点プロファイルは、nodeprep(付録A)の下で定義されています。IANAは、「stringprepプロファイル」レジストリにnodeprepを登録しています。
Name of this profile:
このプロフィールの名前:
Nodeprep
nodeprep
RFC in which the profile is defined:
プロファイルが定義されているRFC:
RFC 6122
RFC 6122
Indicator whether or not this is the newest version of the profile:
これがプロファイルの最新バージョンであるかどうかをインジケーター:
This is the first version of Nodeprep
これはnodeprepの最初のバージョンです
The Resourceprep profile of stringprep is defined under Resourceprep (Appendix B). The IANA has registered Resourceprep in the "Stringprep Profiles" registry.
StringPrepのResourcePrepプロファイルは、ResourcePrep(付録B)で定義されています。IANAは、「stringprepプロファイル」レジストリにリソースプレップを登録しています。
Name of this profile:
このプロフィールの名前:
Resourceprep
ResourcePrep
RFC in which the profile is defined:
プロファイルが定義されているRFC:
RFC 6122
RFC 6122
Indicator whether or not this is the newest version of the profile:
これがプロファイルの最新バージョンであるかどうかをインジケーター:
This is the first version of Resourceprep
これは、ResourcePrepの最初のバージョンです
This section describes a protocol feature set that summarizes the conformance requirements of this specification. This feature set is appropriate for use in software certification, interoperability testing, and implementation reports. For each feature, this section provides the following information:
このセクションでは、この仕様の適合要件を要約するプロトコル機能セットについて説明します。この機能セットは、ソフトウェア認証、相互運用性テスト、および実装レポートでの使用に適しています。各機能について、このセクションは次の情報を提供します。
o A human-readable name
o 人間の読み取り可能な名前
o An informational description
o 情報説明
o A reference to the particular section of this document that normatively defines the feature
o このドキュメントの特定のセクションへの参照は、機能を規範的に定義しています
o Whether the feature applies to the Client role, the Server role, or both (where "N/A" signifies that the feature is not applicable to the specified role)
o 機能がクライアントの役割、サーバーの役割、またはその両方に適用されるかどうか(「n/a」は、機能が指定された役割に適用されないことを意味します)
o Whether the feature MUST or SHOULD be implemented, where the capitalized terms are to be understood as described in [KEYWORDS]
o 機能を実装する必要があるか、実装する必要があるか、[キーワード]で説明されているように、資本化された用語を理解する必要があるかどうか
The feature set specified here attempts to adhere to the concepts and formats proposed by Larry Masinter within the IETF's NEWTRK Working Group in 2005, as captured in [INTEROP]. Although this feature set is more detailed than called for by [REPORTS], it provides a suitable basis for the generation of implementation reports to be submitted in support of advancing this specification from Proposed Standard to Draft Standard in accordance with [PROCESS].
ここで指定されている機能セットは、[Interop]で捕獲されたように、2005年にIETFのNewTrkワーキンググループ内のLarry Masinterによって提案された概念と形式を遵守しようとします。この機能セットは[レポート]で求められているよりも詳細ですが、[プロセス]に従って提案された標準からドラフト標準へのこの仕様を進めることをサポートするために提出される実装レポートの生成に適した根拠を提供します。
Feature: address-domain-length Description: Ensure that the domainpart of an XMPP address is at least one byte in length and at most 1023 bytes in length, and conforms to the underlying length limits of the DNS. Section: Section 2.2 Roles: Both MUST.
機能:アドレスドメイン長の説明:XMPPアドレスのドメインパートの長さは少なくとも1つのバイトで、長さが最大1023バイトで、DNSの基礎となる長さの制限に準拠していることを確認してください。セクション:セクション2.2の役割:両方が必須です。
Feature: address-domain-prep Description: Ensure that the domainpart of an XMPP address conforms to the Nameprep profile of stringprep. Section: Section 2.2 Roles: Client SHOULD, Server MUST.
機能:アドレス-Domain-Prep説明:XMPPアドレスのドメインパートがStringPrepのNAMEPREPプロファイルに準拠していることを確認してください。セクション:セクション2.2の役割:クライアントは、サーバーが必要です。
Feature: address-localpart-length Description: Ensure that the localpart of an XMPP address is at least one byte in length and at most 1023 bytes in length. Section: Section 2.3 Roles: Both MUST.
機能:アドレス-LocalPart-Length説明:XMPPアドレスのローカルパートの長さが少なくとも1つのバイトで、長さが最大1023バイトであることを確認してください。セクション:セクション2.3の役割:両方が必須です。
Feature: address-localpart-prep Description: Ensure that the localpart of an XMPP address conforms to the Nodeprep profile of stringprep. Section: Section 2.3 Roles: Client SHOULD, Server MUST.
機能:Address-LocalPart-Prep説明:XMPPアドレスのLocalPartがStringPrepのnodeprepプロファイルに準拠していることを確認してください。セクション:セクション2.3の役割:クライアントは、サーバーが必要です。
Feature: address-resource-length Description: Ensure that the resourcepart of an XMPP address is at least one byte in length and at most 1023 bytes in length. Section: Section 2.4 Roles: Both MUST.
機能:アドレスリソースの長さの説明:XMPPアドレスのリソースパートの長さが少なくとも1つのバイトで、長さが最大で最大1023バイトであることを確認してください。セクション:セクション2.4の役割:両方が必須です。
Feature: address-resource-prep Description: Ensure that the resourcepart of an XMPP address conforms to the Resourceprep profile of stringprep. Section: Section 2.4 Roles: Client SHOULD, Server MUST.
機能:アドレスリソースプレップ説明:XMPPアドレスのリソースパートがStringPrepのResourcePrepプロファイルに準拠していることを確認してください。セクション:セクション2.4の役割:クライアントは、サーバーが必要です。
[ABNF] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, January 2008.
[ABNF] Crocker、D.、ed。およびP. Overell、「構文仕様のためのBNFの増強:ABNF」、STD 68、RFC 5234、2008年1月。
[DNS] Mockapetris, P., "Domain names - implementation and specification", STD 13, RFC 1035, November 1987.
[DNS] Mockapetris、P。、「ドメイン名 - 実装と仕様」、STD 13、RFC 1035、1987年11月。
[IDNA2003] Faltstrom, P., Hoffman, P., and A. Costello, "Internationalizing Domain Names in Applications (IDNA)", RFC 3490, March 2003.
[IDNA2003] Faltstrom、P.、Hoffman、P。、およびA. Costello、「アプリケーションの国際化ドメイン名(IDNA)」、RFC 3490、2003年3月。
See Section 1 for an explanation of why the normative reference to an obsoleted specification is needed.
廃止された仕様への規範的参照が必要な理由については、セクション1を参照してください。
[KEYWORDS] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[キーワード] Bradner、S。、「要件レベルを示すためにRFCで使用するためのキーワード」、BCP 14、RFC 2119、1997年3月。
[NAMEPREP] Hoffman, P. and M. Blanchet, "Nameprep: A Stringprep Profile for Internationalized Domain Names (IDN)", RFC 3491, March 2003.
[Nameprep] Hoffman、P。and M. Blanchet、「NamePrep:国際化ドメイン名のStringPrepプロファイル(IDN)」、RFC 3491、2003年3月。
See Section 1 for an explanation of why the normative reference to an obsoleted specification is needed.
廃止された仕様への規範的参照が必要な理由については、セクション1を参照してください。
[STRINGPREP] Hoffman, P. and M. Blanchet, "Preparation of Internationalized Strings ("stringprep")", RFC 3454, December 2002.
[StringPrep] Hoffman、P。and M. Blanchet、「国際化された文字列の準備(「StringPrep」)」、RFC 3454、2002年12月。
[UNICODE] The Unicode Consortium, "The Unicode Standard, Version 3.2.0", 2000. The Unicode Standard, Version 3.2.0 is defined by The Unicode Standard, Version 3.0 (Reading, MA, Addison-Wesley, 2000. ISBN 0-201-61633-5), as amended by the Unicode Standard Annex #27: Unicode 3.1 (http://www.unicode.org/reports/tr27/) and by the Unicode Standard Annex #28: Unicode 3.2 (http://www.unicode.org/reports/tr28/).
[Unicode] Unicode Consortium、「Unicode Standard、バージョン3.2.0」、2000。ユニコード標準バージョン3.2.0は、Unicode標準バージョン3.0(読書、MA、Addison-Wesley、2000。ISBN0で定義されています。-201-61633-5)、Unicode Standard Annex#27:Unicode 3.1(http://www.unicode.org/reports/tr27/)およびUnicode Standard Annex#28:Unicode 3.2(http:://www.unicode.org/reports/tr28/)。
[UNICODE-SEC] The Unicode Consortium, "Unicode Technical Report #36: Unicode Security Considerations", 2008, <http://www.unicode.org/reports/tr36/>.
[Unicode-sec] Unicode Consortium、「Unicodeテクニカルレポート#36:Unicodeセキュリティに関する考慮事項」、2008、<http://www.unicode.org/reports/tr36/>。
[UTF-8] Yergeau, F., "UTF-8, a transformation format of ISO 10646", STD 63, RFC 3629, November 2003.
[UTF-8] Yergeau、F。、「UTF-8、ISO 10646の変換形式」、STD 63、RFC 3629、2003年11月。
[XMPP] Saint-Andre, P., "Extensible Messaging and Presence Protocol (XMPP): Core", RFC 6120, March 2011.
[XMPP] Saint-Andre、P。、「拡張可能なメッセージと存在プロトコル(XMPP):Core」、RFC 6120、2011年3月。
[DNSSEC] Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "DNS Security Introduction and Requirements", RFC 4033, March 2005.
[DNSSEC] Arends、R.、Austein、R.、Larson、M.、Massey、D.、およびS. Rose、「DNSセキュリティの紹介と要件」、RFC 4033、2005年3月。
[IDNA-DEFS] Klensin, J., "Internationalized Domain Names for Applications (IDNA): Definitions and Document Framework", RFC 5890, August 2010.
[IDNA-DEFS] Klensin、J。、「アプリケーションの国際化ドメイン名(IDNA):定義とドキュメントフレームワーク」、RFC 5890、2010年8月。
[IDNA-PROTO] Klensin, J., "Internationalized Domain Names in Applications (IDNA): Protocol", RFC 5891, August 2010.
[IDNA-Proto] Klensin、J。、「アプリケーションの国際化ドメイン名(IDNA):プロトコル」、RFC 5891、2010年8月。
[IDNA-RATIONALE] Klensin, J., "Internationalized Domain Names for Applications (IDNA): Background, Explanation, and Rationale", RFC 5894, August 2010.
[IDNA-Rationale] Klensin、J。、「アプリケーションの国際化ドメイン名(IDNA):背景、説明、および根拠」、RFC 5894、2010年8月。
[INTEROP] Masinter, L., "Formalizing IETF Interoperability Reporting", Work in Progress, October 2005.
[Interop] Masinter、L。、「IETF相互運用性レポートの形式化」、2005年10月、進行中の作業。
[IRI] Duerst, M. and M. Suignard, "Internationalized Resource Identifiers (IRIs)", RFC 3987, January 2005.
[IRI] Duerst、M。およびM. Suignard、「国際化された資源識別子(IRIS)」、RFC 3987、2005年1月。
[PROCESS] Bradner, S., "The Internet Standards Process -- Revision 3", BCP 9, RFC 2026, October 1996.
[プロセス] Bradner、S。、「インターネット標準プロセス - 改訂3」、BCP 9、RFC 2026、1996年10月。
[PUNYCODE] Costello, A., "Punycode: A Bootstring encoding of Unicode for Internationalized Domain Names in Applications (IDNA)", RFC 3492, March 2003.
[Punycode] Costello、A。、「Punycode:Applications(IDNA)における国際化ドメイン名のUnicodeのブートストリングエンコード」、RFC 3492、2003年3月。
[REPORTS] Dusseault, L. and R. Sparks, "Guidance on Interoperation and Implementation Reports for Advancement to Draft Standard", BCP 9, RFC 5657, September 2009.
[レポート] Dusseault、L。およびR. Sparks、「標準のドラフトへの進歩のための相互操作および実装レポートに関するガイダンス」、BCP 9、RFC 5657、2009年9月。
[RFC3920] Saint-Andre, P., Ed., "Extensible Messaging and Presence Protocol (XMPP): Core", RFC 3920, October 2004.
[RFC3920] Saint-Andre、P.、ed。、「拡張可能なメッセージと存在プロトコル(XMPP):Core」、RFC 3920、2004年10月。
[RFC5952] Kawamura, S. and M. Kawashima, "A Recommendation for IPv6 Address Text Representation", RFC 5952, August 2010.
[RFC5952] Kawamura、S。およびM. Kawashima、「IPv6アドレステキスト表現の推奨」、RFC 5952、2010年8月。
[SASL] Melnikov, A., Ed. and K. Zeilenga, Ed., "Simple Authentication and Security Layer (SASL)", RFC 4422, June 2006.
[SASL] Melnikov、A.、ed。およびK. Zeilenga編、「Simple Authentication and Security Layer(SASL)」、RFC 4422、2006年6月。
[URI] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, January 2005.
[URI] Berners-Lee、T.、Fielding、R。、およびL. Masinter、「Uniform Resource Identifier(URI):Generic Syntax」、Std 66、RFC 3986、2005年1月。
[XEP-0029] Kaes, C., "Definition of Jabber Identifiers (JIDs)", XSF XEP 0029, October 2003.
[Xep-0029] Kaes、C。、「Jabber Identifiers(JIDS)の定義」、XSF XEP 0029、2003年10月。
[XEP-0030] Hildebrand, J., Millard, P., Eatmon, R., and P. Saint-Andre, "Service Discovery", XSF XEP 0030, June 2008.
[Xep-0030] Hildebrand、J.、Millard、P.、Eatmon、R。、およびP. Saint-Andre、 "Service Discovery"、XSF XEP 0030、2008年6月。
[XEP-0045] Saint-Andre, P., "Multi-User Chat", XSF XEP 0045, July 2008.
[XEP-0045] Saint-Andre、P。、「Multi-User Chat」、XSF XEP 0045、2008年7月。
[XEP-0060] Millard, P., Saint-Andre, P., and R. Meijer, "Publish-Subscribe", XSF XEP 0060, July 2010.
[Xep-0060] Millard、P.、Saint-Andre、P.、およびR. Meijer、「Publish-Subscribe」、XSF XEP 0060、2010年7月。
[XEP-0165] Saint-Andre, P., "Best Practices to Discourage JID Mimicking", XSF XEP 0045, December 2007.
[XEP-0165] Saint-Andre、P。、「Jid Mimickingを思いとどまらせるためのベストプラクティス」、XSF XEP 0045、2007年12月。
[XML] Paoli, J., Maler, E., Sperberg-McQueen, C., Yergeau, F., and T. Bray, "Extensible Markup Language (XML) 1.0 (Fourth Edition)", World Wide Web Consortium Recommendation REC-xml-20060816, August 2006, <http://www.w3.org/TR/2006/REC-xml-20060816>.
[XML] Paoli、J.、Maler、E.、Sperberg-Mcqueen、C.、Yergeau、F。、およびT. Bray、「拡張可能なマークアップ言語(XML)1.0(第4版)」、World Wide Web Consortiumの推奨REC-XML-20060816、2006年8月、<http://www.w3.org/tr/2006/rec-xml-20060816>。
[XMPP-URI] Saint-Andre, P., "Internationalized Resource Identifiers (IRIs) and Uniform Resource Identifiers (URIs) for the Extensible Messaging and Presence Protocol (XMPP)", RFC 5122, February 2008.
[XMPP-URI] Saint-Andre、P。、「拡張可能なメッセージと存在プロトコル(XMPP)の国際化されたリソース識別子(IRIS)および均一なリソース識別子(URI)」、RFC 5122、2008年2月。
This appendix defines the "Nodeprep" profile of stringprep. As such, it specifies processing rules that will enable users to enter internationalized localparts in the Extensible Messaging and Presence Protocol (XMPP) and have the highest chance of getting the content of the strings correct. (An XMPP localpart is the optional portion of an XMPP address that precedes an XMPP domainpart and the '@' separator; it is often but not exclusively associated with an instant messaging username.) These processing rules are intended only for XMPP localparts and are not intended for arbitrary text or any other aspect of an XMPP address.
この付録は、stringprepの「nodeprep」プロファイルを定義しています。そのため、ユーザーが拡張可能なメッセージとプレゼンスプロトコル(XMPP)で国際化されたローカルパートに入ることができる処理ルールを指定し、文字列のコンテンツを正しくする可能性が最も高くなります。(XMPP LocalPartは、XMPPドメインパートと「@'セパレーターの前にあるXMPPアドレスのオプションの部分です。多くの場合、インスタントメッセージングのユーザー名に排他的に関連付けられていません。)これらの処理ルールはXMPPローカルパートのみであり、そうではありません。任意のテキストまたはXMPPアドレスのその他の側面を対象としています。
This profile defines the following, as required by [STRINGPREP]:
このプロファイルは、[StringPrep]で要求されるように、以下を定義します。
o The intended applicability of the profile: internationalized localparts within XMPP
o プロファイルの意図された適用可能性:XMPP内の国際化されたローカルパート
o The character repertoire that is the input and output to stringprep: Unicode 3.2, specified in A.2
o stringprepへの入力と出力であるキャラクターレパートリー:unicode3.2、A.2で指定されています
o The mappings used: specified in A.3
o 使用されるマッピング:A.3で指定されています
o The Unicode normalization used: specified in A.4
o 使用されるユニコード正規化:A.4で指定
o The characters that are prohibited as output: specified in A.5
o 出力として禁止されている文字:A.5で指定
o Bidirectional character handling: specified in A.6
o 双方向の文字処理:A.6で指定
This profile uses Unicode 3.2 with the list of unassigned code points in Table A.1, both as defined in Appendix A of [STRINGPREP].
このプロファイルは、[StringPrep]の付録Aで定義されているように、表A.1の未割り当てコードポイントのリストを備えたUnicode 3.2を使用します。
This profile specifies mapping using the following tables from [STRINGPREP]:
このプロファイルは、[StringPrep]の次のテーブルを使用してマッピングを指定します。
Table B.1 Table B.2
表B.1表B.2
This profile specifies the use of Unicode Normalization Form KC, as described in [STRINGPREP].
このプロファイルは、[StringPrep]で説明されているように、Unicode正規化フォームKCの使用を指定します。
This profile specifies the prohibition of using the following tables from [STRINGPREP].
このプロファイルは、[StringPrep]から次のテーブルを使用することの禁止を指定します。
Table C.1.1 Table C.1.2 Table C.2.1 Table C.2.2 Table C.3 Table C.4 Table C.5 Table C.6 Table C.7 Table C.8 Table C.9
表C.1.1表C.1.2表C.2.1表C.2.2表C.3表C.3表C.4表C.6表C.7表C.7表C.8表C.9
In addition, the following additional Unicode characters are also prohibited:
さらに、次の追加のユニコード文字も禁止されています。
U+0022 (QUOTATION MARK), i.e., " U+0026 (AMPERSAND), i.e., & U+0027 (APOSTROPHE), i.e., ' U+002F (SOLIDUS), i.e., / U+003A (COLON), i.e., : U+003C (LESS-THAN SIGN), i.e., < U+003E (GREATER-THAN SIGN), i.e., > U+0040 (COMMERCIAL AT), i.e., @
This profile specifies checking bidirectional strings, as described in Section 6 of [STRINGPREP].
このプロファイルは、[StringPrep]のセクション6で説明されているように、双方向の文字列のチェックを指定します。
Because the additional characters prohibited by Nodeprep are prohibited after normalization, an implementation MUST NOT enable a human user to input any Unicode code point whose decomposition includes those characters; such code points include but are not necessarily limited to the following (refer to [UNICODE] for complete information): o U+2100 (ACCOUNT OF) o U+2101 (ADDRESSED TO THE SUBJECT) o U+2105 (CARE OF) o U+2106 (CADA UNA) o U+226E (NOT LESS-THAN) o U+226F (NOT GREATER-THAN) o U+2A74 (DOUBLE COLON EQUAL) o U+FE13 (PRESENTATION FORM FOR VERTICAL COLON) o U+FE60 (SMALL AMPERSAND) o U+FE64 (SMALL LESS-THAN SIGN) o U+FE65 (SMALL GREATER-THAN SIGN) o U+FE6B (SMALL COMMERCIAL AT) o U+FF02 (FULLWIDTH QUOTATION MARK) o U+FF06 (FULLWIDTH AMPERSAND) o U+FF07 (FULLWIDTH APOSTROPHE) o U+FF0F (FULLWIDTH SOLIDUS) o U+FF1A (FULLWIDTH COLON) o U+FF1C (FULLWIDTH LESS-THAN SIGN) o U+FF1E (FULLWIDTH GREATER-THAN SIGN) o U+FF20 (FULLWIDTH COMMERCIAL AT)
This appendix defines the "Resourceprep" profile of stringprep. As such, it specifies processing rules that will enable users to enter internationalized resourceparts in the Extensible Messaging and Presence Protocol (XMPP) and have the highest chance of getting the content of the strings correct. (An XMPP resourcepart is the optional portion of an XMPP address that follows an XMPP domainpart and the '/' separator.) These processing rules are intended only for XMPP resourceparts and are not intended for arbitrary text or any other aspect of an XMPP address.
この付録は、StringPrepの「リソースプレップ」プロファイルを定義しています。そのため、ユーザーが拡張可能なメッセージとプレゼンスプロトコル(XMPP)で国際化されたリソースパートを入力できるようにする処理ルールを指定し、文字列のコンテンツを正しくする可能性が最も高くなります。(XMPP ResourcePartは、XMPPドメインパートと '/'セパレーターに続くXMPPアドレスのオプション部分です。)これらの処理ルールは、XMPPリソースパートを対象としており、任意のテキストまたはXMPPアドレスのその他の側面を目的としていません。
This profile defines the following, as required by [STRINGPREP]:
このプロファイルは、[StringPrep]で要求されるように、以下を定義します。
o The intended applicability of the profile: internationalized resourceparts within XMPP
o プロファイルの意図された適用性:XMPP内の国際化されたリソースパート
o The character repertoire that is the input and output to stringprep: Unicode 3.2, specified in B.2
o stringprepの入力と出力であるキャラクターレパートリー:unicode3.2、b.2で指定
o The mappings used: specified in B.3
o 使用されるマッピング:B.3で指定されています
o The Unicode normalization used: specified in B.4
o 使用されるユニコード正規化:B.4で指定
o The characters that are prohibited as output: specified in B.5 o Bidirectional character handling: specified in B.6
o 出力として禁止されている文字:B.5 o双方向の文字処理で指定:b.6で指定
This profile uses Unicode 3.2 with the list of unassigned code points in Table A.1, both as defined in Appendix A of [STRINGPREP].
このプロファイルは、[StringPrep]の付録Aで定義されているように、表A.1の未割り当てコードポイントのリストを備えたUnicode 3.2を使用します。
This profile specifies mapping using the following tables from [STRINGPREP]:
このプロファイルは、[StringPrep]の次のテーブルを使用してマッピングを指定します。
Table B.1
表B.1
This profile specifies the use of Unicode Normalization Form KC, as described in [STRINGPREP].
このプロファイルは、[StringPrep]で説明されているように、Unicode正規化フォームKCの使用を指定します。
This profile specifies the prohibition of using the following tables from [STRINGPREP].
このプロファイルは、[StringPrep]から次のテーブルを使用することの禁止を指定します。
Table C.1.2 Table C.2.1 Table C.2.2 Table C.3 Table C.4 Table C.5 Table C.6 Table C.7 Table C.8 Table C.9
表C.1.2表C.2.1表C.2.2表C.3表C.3表C.5表C.6表C.7表C.7表C.8表C.9
This profile specifies checking bidirectional strings, as described in Section 6 of [STRINGPREP].
このプロファイルは、[StringPrep]のセクション6で説明されているように、双方向の文字列のチェックを指定します。
Based on consensus derived from implementation and deployment experience as well as formal interoperability testing, the following substantive modifications were made from RFC 3920.
実装と展開の経験、および正式な相互運用性テストから派生したコンセンサスに基づいて、RFC 3920から次の実質的な変更が行われました。
o Corrected the ABNF syntax to ensure consistency with [URI] and [IRI], including consistency with RFC 3986 and [RFC5952] with regard to IPv6 addresses (e.g., enclosing the IPv6 address in square brackets '[' and ']' -- see also Section 4.9.3.19 of [XMPP]).
o ABNF構文を修正して、IPv6アドレスに関してRFC 3986および[RFC5952]との一貫性を含む[URI]および[IRI]との一貫性を確保しました(例:正方形のブラケットのIPv6アドレスを囲む['および'] - また、[XMPP]のセクション4.9.3.19)。
o Corrected the ABNF syntax to prevent zero-length localparts, domainparts, and resourceparts (and also noted that the underlying length limits from the DNS apply to domainparts).
o ABNFの構文を修正して、ゼロの長さのローカルパート、ドメインパート、およびリソースパートを防止しました(また、DNSからの基礎となる長さの制限がドメインパートに適用されることにも注目しました)。
o To avoid confusion with the term "node" as used in [XEP-0030] and [XEP-0060], changed the term "node identifier" to "localpart" (but retained the name "Nodeprep" for backward compatibility).
o [XEP-0030]および[XEP-0060]で使用されている「ノード」という用語との混乱を避けるために、「ノード識別子」という用語を「LocalPart」に変更しました(ただし、後方互換性のために「NodePrep」という名前を保持しました)。
o To avoid confusion with the terms "resource" and "identifier" as used in [URI], changed the term "resource identifier" to "resourcepart".
o [uri]で使用されている「リソース」および「識別子」という用語との混乱を避けるために、「リソース識別子」という用語を「リソースパート」に変更しました。
o Corrected the Nameprep processing rules to require use of the UseSTD3ASCIIRules flag.
o NAMEPREP処理ルールを修正して、USESTD3ASCIIRULESフラグを使用する必要がありました。
Thanks to Ben Campbell, Waqas Hussain, Jehan Pages, and Florian Zeitz for their feedback. Thanks also to Richard Barnes and Elwyn Davies for their reviews on behalf of the Security Directorate and the General Area Review Team, respectively.
ベン・キャンベル、ワカス・フセイン、ジェハン・ページ、フロリアン・ジッツのフィードバックに感謝します。また、リチャード・バーンズとエルウィン・デイビスにも、セキュリティ局と一般的なレビューチームに代わってレビューしてくれてありがとう。
The Working Group chairs were Ben Campbell and Joe Hildebrand. The responsible Area Director was Gonzalo Camarillo.
ワーキンググループの椅子は、ベンキャンベルとジョーヒルデブランドでした。責任あるエリアディレクターはゴンザロカマリロでした。
Some text in this document was borrowed or adapted from [IDNA-DEFS], [IDNA-PROTO], [IDNA-RATIONALE], and [XEP-0165].
このドキュメントのいくつかのテキストは、[idna-defs]、[idna-proto]、[idna-rationale]、および[xep-0165]から借用または適応されました。
Author's Address
著者の連絡先
Peter Saint-Andre Cisco 1899 Wyknoop Street, Suite 600 Denver, CO 80202 USA
ピーターセントアンドレシスコ1899 Wyknoop Street、Suite 600 Denver、Co 80202 USA
Phone: +1-303-308-3282 EMail: psaintan@cisco.com