実際,日本レジストリサービス(JPRS)は2月9日,「今回報告されたURL偽装は,ブラウザではなく,レジストリが原因」とアナウンスした(関連記事)。「ブラウザはIDNの仕様に従って動作しているだけ。問題は,紛らわしいドメイン名の登録を許したレジストリ」だという。上記の例では,「http://www.paypаl.com」とアドレス・バーに表示するFirefoxが悪いのではなく,「paypаl.com」というドメイン名の登録を許したCOMドメインのレジストリが悪いとする。
さらにJPRSによれば,IDNを導入した時点で今回のような事態は十分予想されていて,防ぐためのガイドライン――「JETガイドライン(RFC3743)」や「ICANNガイドライン」――を用意しているという。これらに基づいて,IDN登録を運用すれば,多くの場合,今回のような事態は避けられる。
例えば,前述の「paypаl.com」については,キリル文字「а」をASCII文字「a」のvariant(同一とみなすべき文字)として定義して,上記のガイドラインに従って「variantを含むドメイン名は受け付けない」という運用をしていれば,URL偽装を防げるという。
実際,JPRSではガイドラインに従った運用をしているので,「example.jp」(すべてASCII)は登録できるが,「exаmple.jp」(ASCIIにキリル文字аが混入)は登録できない。
FirefoxはデフォルトでIDNを無効に
![]() |
写真3●Firefox 1.0.1でデモ・サイト「paypаl.com」にアクセスした結果 |
なお,ここで注意してほしいのは,「IDNが無効」といっても,IDNが表示されないだけで,そのサイトへはアクセスできるということ。例えば,Firefox 1.0.1のアドレス・バーに「http://paypаl.com」と入力すれば,Firefox 1.0のときと同じように,Secuniaのデモ・サイトへアクセスできる。ただ,アドレス・バーにはPunycodeに変換された「http://www.xn--paypl-7ve.com」という文字列が表示される。
もう一点,Mozilla Foundationのアナウンスでは,今回の対処を「Mozilla Foundation's short-term response」としていることにも注意したい。IDNを無効にするという対処は,あくまでも短期的なもので,レジストリのほとんどがガイドラインに従うようになれば,また有効に戻すつもりなのではないだろうか。
このMozilla Foundationのアナウンスに対して,CENTR(The Council of European National TLD Registries)は2月22日,批判の声を上げた(JPRSによる参考訳)。CENTRとは,TLDレジストリで構成される協会。CENTRの声明では,「ブラウザがIDNをデフォルトで無効にすると,多くのユーザーは有効にしないので,インターネットの国際化を妨げる」「以前から知られている問題。今さら慌てる必要はない」などとしている。
だが,Mozilla Foundationは予定通り,デフォルトではIDNを無効にしたFirefox 1.0.1を2月24日にリリースした(関連記事)。編集部で試したところ,前述のように,アドレス・バーには,IDNがPunycodeで表示されるようになった。
OperaはTLDによって表示を変更
![]() |
写真4●Opera新版ベータ2でデモ・サイト「paypаl.com」にアクセスした結果 |
ところが,ガイドラインに従って運用していることが確認できているレジストリが管理するTLD(例えば,jpやkr)のURLについては,従来通り,IDNをそのまま表示する(写真5[拡大表示])。
![]() |
写真5●Opera新版ベータ2で「日本語.jp」にアクセスした結果 |
FirefoxとOpera。どちらの対応が好ましいかは判断が分かれるところだろう。そもそも,「IDNは必要ない」と思っている方も少なくないだろう。また一方で,必要性を感じている人も多いだろう。ただ,いずれの場合でも,今回の「URL偽装問題」が改めてIDNに関心を集めたことは確かだ。せっかくの機会なので,IDNの有用性について改めて考えてみてはいかがだろうか。
(勝村 幸博=IT Pro)