国際化ドメイン名
From Wikipedia, the free encyclopedia
国際化ドメイン名(こくさいかドメインめい)、IDN (Internationalized Domain Name)、多言語ドメインは、インターネットで使われるドメイン名にアルファベットや数字以外に漢字、アラビア文字、キリル文字、ギリシア文字なども使えるようにする仕組み。日本語であれば日本語ドメイン名とも呼ばれる。
1998年頃から検討がされていたが、2003年になり、関連する全ての規格が標準化されたため、ようやく利用できるようになった。 当初試験運用では変換方法(プロトコル)として RACE が主に用いられていたが、Punycode が標準化され、各種ドメインはPunycodeへの対応に切り替えている。
関係あるドキュメント
- RFC 5890 IDNA アーキテクチャ
- RFC 5891 Nameprepは、類似した文字を同一文字として扱う正規化方式。Unicodeの正規化Stringprepとの関係を示している
- RFC 3492 Punycodeは、Unicodeの文字をDNSで使える文字を使ってエンコードする符号化方式。RFC 5891はRFC 3492を更新したが、規定されたアルゴリズムに変更はない[1]
- RFC 2825 IDNを含むDNSの拡張に向けて、IAB (Internet Architecture Board) の出した要件
- RFC 2826 IDNの実現に向けて、IAB (Internet Architecture Board) の出した要件
対応しているブラウザ等
- Internet Explorer (現在のMicrosoft Edge)(Windows)[2]
- IEコンポーネントブラウザ(一部)[3]
- jigブラウザ(携帯電話用)
- Netscapeシリーズ
- Opera[4]
- Safari
- Google Chrome
一部のブラウザでは偽キリル文字などでURLを偽装するフィッシング詐欺対策として、下記のような場合は国際化表記をせず、Punycode(「xn--」で始まる英数字とハイフン)で表記するようになっている。
- IE
- 利用言語以外の文字を含む場合、複数の文字体系が混在する場合は国際化表記しない[5]。IEでは言語に属さない記号などを含む場合にも国際化表記しない。
- Microsoft Edge
- Google Chrome
- 利用言語以外の文字を含む場合、複数の文字体系が混在する場合は国際化表記しない[6]。Google Chromeでは内蔵のブラックリスト内の文字を含む場合にも国際化表記しない。
- 文字種が混在しない場合のホモグラフ攻撃が指摘され、Chrome 58で修正予定。[7]
- Mozilla Firefox
- 内蔵のブラックリスト内の文字を含む場合は国際化表記しない[8]。
- "about:config" から "network.IDN_show_punycode" を true にすると国際化表記を強制停止できる。
- Opera
- 内蔵のホワイトリスト外のトップレベルドメインでは国際化表記しない[9][10]。
- Safari
- 内蔵のホワイトリスト外の文字体系を含む場合は国際化表記しない[11]。標準ではラテン文字と誤認しやすい文字を含むキリル文字、ギリシア文字、チェロキー文字がリストから除外されている。