Webサイトにメールアドレスを公開する場合のスパム対策

このエントリーをはてなブックマークに追加

Webサイトやブログに運営者の情報として、メールアドレスなどの連絡先を記述したい場合があるかと思います。ただ、メルアドをそのまま記述してしまうと、メルアドの自動収集ロボットに拾われてしまい、スパムメールが大量に送りつけられるというリスクがあります。

CGIを使ったメールフォームを利用すれば、安全確実なのですが、レンタルサーバによってはCGIを設置できないケースもありますし、手間もかかります。

(かなり今さら感もありますが)ここでは、何らからの理由で、CGIを設置できない環境において、手軽にメルアドを公開したい場合のスパム対策について5つの方法を紹介します。


なお、ここではサンプルとして以下のメールアドレスを用いますが、下記アドレスは架空のものです。
deadbeef@exsample.com

1.メールアドレスを画像化する

比較的手軽に出来る上にスパム対策の効果も高い手法です。現在のところ画像の文字をロボットが認識出来ることは、ほぼないと考えていいでしょう。

ただ、ユーザーがメールを送信しようとした場合、画像を見ながらメルアドを手打ちする必要があり、ユーザビリティの観点からはマイナスです。入力する手間と共に、”l”と”1”、”o”と”0”のように画像では判別しにくい文字もあります。

なお、稀に画像のalt属性にメルアドを記述してしまう人がいるようですが、画像化した意味がまったくないので注意しましょう。

2.”@”を別の記号に置き換える

収集ロボットはHTMLファイル上の”@(半角アットマーク)”を目印にして、メルアドを探しています。この”@”を別の記号に置き換えることで、収集されにくくすることが出来ます。

置き換える記号には、@(全角アットマーク)、★、◎などがよく用いられるのを見かけます。

deadbeef@exsample.com
deadbeef★exsample.com
deadbeef◎exsample.com

@を置きかえるだけなので、非常に手軽に実行することが出来るのですが、スパム対策の効果はそれほど高いものではありません。というのも、収集するロボット側で、”@”だけでなく”◎”や”★”なども目印にして収集を始めれば簡単にメルアドを拾われてしまうからです。

また、ユーザビリティの観点からも好ましくありません。特にWebリテラシーの高くないユーザーの場合は、記号が置き換わっていてもそれに気付かずメールが送信出来ないという事態に陥りやすくなります。注意書きがあったとしても、やはり気づかないユーザーは大勢いるでしょう。

3.メールアドレスを全て全角で記載

「2」では、”@”だけを置き換えましたが、メルアド全てを全角で入力することで、さらにロボットに収集される危険性を減らすことが出来ます。

ただ、ユーザー側で全てのアドレスを打ち直す必要があるため画像化同様にユーザービリティの観点からは大きなマイナスです。

4.メールアドレスを数値文字参照で記載

いわゆるエンティティ化と呼ばれる対策です。HTMLでは文字や記号を、数値を使って表現することが出来るので、それを利用してメールアドレスを変換します。

例えば、「@」は「@」に変換することが出来ます。HTMLファイル上で、「@」と記載したものはブラウザ上では「@」に見えるわけです。

deadbeef@exsample.comを数値文字参照によって変換した場合には以下のようになります。

見た目は安全そうに見えるのですが、スパム対策の有効性の面で見ると、2の記号の置き換えと大きな違いはありません。今度は”@”を目印にしてメルアドを収集すればよいためです。

ただ、HTMLファイル上では数値に置き換わっているだけでユーザーがブラウザを通してみると、通常のメルアドに見えます。そのためユーザビリティの面ではまったく問題ありません。

変換自体は、手動でやると大変ですが、一括変換してくれるツールも公開されていますので、そういったものを利用すると便利です。

5.JavaScriptを使って暗号化

JavaScriptを使ってメルアドを暗号化する方法です。CGIフォームを使わない方法の中では、画像化と並んで最も安全といってもよいのではないかと思います。

原理的には「4」に近いのですが、JavaScriptの暗号化のプログラムを工夫することにより、ロボットに収集される危険性を限りなくOに近づけることが出来ます。

JavaScriptによる変換プログラムについては、公開しているWebサイトもあるのでそちらを利用しましょう。

なお、ユーザビリティの観点から見れば、JavaScriptをOFFにしているユーザーに別途案内が必要になるという欠点があります。

まとめ

メールフォームを用いない場合のメルアドの公開方法は、それぞれに一長一短あります。スパム対策の面では、画像化やJavaScriptによる暗号化が安全ですが、ユーザビリティの面で問題があります。一方、ユーザービリティに優れたエンティティ化の場合は、スパム対策の面で不安が残ります。

やはり万全を期するのであればメールフォームを利用するべきです。ここで紹介した方法によってメルアドを公開する場合には、デメリットもあるという点を頭に入れておきましょう。

記事の内容はいかがでしたか?よろしければ下記のボタンから共有してみて下さい。
このエントリーをはてなブックマークに追加

2010 年 5 月 24 日 |

カテゴリー:ウェブ全般

このページの先頭へ