Punycode
表示
Unicode |
---|
文字符号化スキーム |
UTF-7 |
UTF-8 |
CESU-8 |
UTF-16 |
UTF-32 |
UTF-EBCDIC |
SCSU |
Punycode (IDN/IDNA) |
GB 18030 |
その他 |
UCS |
マッピング |
書字方向 |
BOM |
漢字統合 |
UnicodeとHTML |
Unicodeと電子メール |
Unicodeフォント |
Punycode(ピュニコード)とは、国際化ドメイン名で使われる文字符号化方式で、RFC 3492で定義されている。Unicodeで書かれた文字列をDNS内の制限された文字コード空間でも使えるようにするための方式で、ユーザーエージェントの実装に依存する。
ドメイン名としてPunycodeを使用する際は、ドット(.
)で区切られたドメイン名の階層レベルごとにプレフィックスとして"xn--
"を使用し、エンコードされた文字列を続ける。大文字と小文字は区別されない。例えば「ドメイン名例.jp」の場合は"xn--eckwd4c7cu47r2wf.jp
"、「ウィキペディア.ドメイン名例.jp」の場合は"XN--CCKBAK0BYL6E.XN--ECKWD4C7CU47R2WF.JP
"、「例え.テスト」の場合は"xn--r8jz45g.xn--zckzah
"のようになる。
エンコーディング手順
ASCII文字の分離
最初に入力文字列中にあるすべての基本文字(ASCII)をそのままコピーします。基本文字以外の文字はスキップします(例:「日本Japan」→「Japan」)。基本文字以外の文字がある場合は、最後に区切り文字(ハイフン)を追加します(例:「日本Japan」→「Japan-」)。
コード番号を挿入して非ASCII文字をエンコード
コード番号をASCII文字列として再変換
関連項目
外部サイト
- RFC 3492
- Punycode encoding and decoding
- Punycode converter
- Online Punycode/IDN Decoder/Encoder
- GNU IDN Library—Libidn
- ICU IDNA Demonstration An online demonstration of how ICU performs IDN operations
- Punycode for Domains Convert Unicode to Punycode
- List of TLDs considered by the Mozilla developers to have an effective anti-spoofing policy for name registration
- IDN and Punycode in IE7
- Punycode converter for Korean