雑文発散

«前の日記(2013-01-23) 最新 次の日記(2013-01-25)» 編集
過去の日記

2013-01-24 [長年日記]

[] メールアドレスのバリデーション崩壊のお知らせ、もしくは、全てが UTF-8 になる

JANOG31 のページをつらつら見てたら気になるセッションがあった。

メールアドレスの国際化(JANOG25からの変更点)」というものだ。(多用されているかはともかく)Web で使われるドメイン名では国際化が進んでいたけど、メールアドレスに関してはほとんど進んでいなかった印象だったのに、どうも RFC での標準化がほぼ完了したらしい。

セッションページからダウンロードできる「IETF 85 報告 DNS, 国際化関連」という資料を見てみたら、次のような記述があった。

ほとんどすべてのメールヘッダにUTF-8を許可
– メールアドレス部 <ローカルパート@ドメイン名>
– Display-name, (コメント), SubjectヘッダにもUTF-8 (従来はMIME)

資料には具体例も記載されていた。引用させて貰いつつ、メールアドレスとか名前とかに入っていた固有名刺を書き換えると、要するに次のような形式になるらしい。

From: UTF-8を直接 <ユーザ@日本語.example.jp>
To: (コメントもUTF-8で) <ユーザ@example.com>
Cc: <テスト@日本語.dnslab.jp>
Subject: ここもUTF-8
Message-ID: <UTF-8_ID_XX@日本語.example.jp>

本文もUTF-8

添付ファイルのファイル名もUTF-8

個人的にはここ数年「メール本文に ISO-2022-JP を使うのはやめて UTF-8 でいいだろ、もう?」と思っていたので、本文が UTF-8 になるのは良い方向だと思う。

ヘッダ部分での MIME 化をやめちゃうのは混乱を生みそうだなぁと脊髄反射的に思ったけど、まぁ、確かに全てが UTF-8 で統一されていたほうが美しくはあるなぁ。

ただ、これでメールアドレスのバリデーションというものは存在しなくなっちゃうねぇ。できるとしたら「@の前後にUTF-8文字列があるもの」くらいか。がんばって「世の中にあるトップレベルTLDが文字列末尾にある」を追加しても良いけど、トップレベルTLDでさえ、いつの間にか増えていく世の中では、ずっとバリデーションのメンテが必要になってしまいそう。

後は「テキスト文中からメールアドレス部分を抜き出す」みたいな処理は限りなく難しくなってしまいそうな予感。今後はテキスト文中でメールアドレスを記載する場合、「<ユーザ@example.com>」みたいな表記をするのが流行ったりしてね。

その他、SMTP レベルでの通信も UTF-8 化をするという規格のようなので、これが普及するのは、かなーりかなーーーーり先のような気はするんだけど、どうだろうねぇ。

該当する RFC は、RFC6530, RFC6531, RFC6532, RFC6533 とのことなので、時間のあるときに見ておこうかなぁ(くじけそう)。

[] 「エンジニアのためのイベント映像活用方法」の第2回が gihyo.jp に掲載されました

連載「エンジニアのためのイベント映像活用方法」の「第2回 WebカメラとCamTwistを使ってUstream配信をする」が gihyo.jp へ掲載されました。

ハッシュタグ「#eventstreaming」を設定したものの、まだオレと見ず知らずの外国の方しかつぶやいていないので、何かあればツイートして頂けるとありがたいです!

本日のツッコミ(全12件) [ツッコミを入れる]
ただただし (2013-01-24 09:41)

似た文字を使ったフィッシングも増えそうね……

zaki (2013-01-24 10:30)

> 似た文字を使ったフィッシングも増えそうね……<br><br>その理由が知りたいです

すずき (2013-01-24 11:16)

正: サポート@日本.jp<br>誤: サポート@目本.jp<br><br>みたいなイメージじゃないですかねー。(本当はこういうドメインを例示してはダメ。example.jp とかを使うべき…)<br><br>UTF-8 化によって「パッと見で似ている文字」が増えて、悪意ある人が似たような文字で攻撃してくるシチュエーションは考えられます。

soda (2013-01-24 11:32)

これ結構困ります。<br>某海外フリーOSサイトのspamフィルタでは、ヘッダにMSBが立ってる文字はspamとしてはじいてたので。<br>東アジアからのspam(日本語のものを含む)が、これでたいぶ防げてました。

あらま (2013-01-24 11:33)

正:サポート@イーネット.jp(長音符)<br>謝:サポート@イ-ネット.jp(emダッシュ)<br><br>ふむ・・・フォントによってさっぱり分かんないなぁ

お約束 (2013-01-24 14:21)

正:サポート@カタカナ.jp<br>謝:サポート@力夕力ナ.jp

ツッコミ初心者 (2013-01-24 15:15)

なんでコメント欄は今頃IDNの話してるの?<br>本文にも「ドメイン名では国際化が進んでいたけど」って書いてあって<br>今回はわざわざ exampleドメインを使っているのに。<br>今までは xn-- みたいなのの有無で見分けてたとか、そういう話?<br>でもなさそうだし……。

Tomo (2013-01-24 15:23)

<br>出会い系絡みの迷惑メールは何とかならんのかな?<br><br>サイトがすぐ違うドメインで迷惑メール送ってくるから、受信拒否を掛けてもほとんど意味なくなってきてるし…><<br><br>どうしたもんかね?

__ (2013-01-24 15:45)

「誤」のことを「謝」と書くのって流行ってるの?

ytera (2013-01-24 21:46)

バリデーション崩壊って言っても、今だって実際に送って見ないでわかるのはドメインが存在するかどうかだけだし。

鈴木 (2013-01-25 00:49)

憂いでいる人のうちいったい何人がRFC 5321/5322に合致するメールアドレスに対して一切のfalse positiveもfalse negativeも起こさないバリデーションコードを書けていたのかは気になる所

ガジェット通信編集部 (2013-01-25 19:10)

はじめまして、ガジェット通信編集部申します。<br><br>私どもは、『ガジェット通信』というウェブ媒体を運営しております。<br>http://getnews.jp/<br>こちらのブログ記事を、興味深く読ませていただきました。<br><br>この記事を、『ガジェット通信』に寄稿という形で掲載させて<br>いただきたいのですがいかがでしょうか。<br><br>尚、掲載の際には、元記事へのリンクも貼らせていただきます。<br>ご検討いただき、下記アドレスへお返事をいただけるとありがたいです。<br><br>post2012@razil.jp<br>以上、よろしくお願いいたします