2009-04-08 15 views
5

はい、私はこの質問が尋ねられ、答えられたことを認識していますが、私はこのスレッドについてはっきりしていないと感じていて、別のスレッドのシャッフルでも迷子にならないように。電子メール難読化質問

以前のスレッドでは、Facebookのやり方と同じように画像に電子メールアドレスを表示すると、ビジネス/プロフェッショナル向けのWebサイトのユーザーの過度の経験が増えたと言われています。そして、一般的なコンセンサスは、HTMLエンティティを使用するJavaScript document.writeソリューションや、単純なボットで文字列を解読できない、あるいは文字列を読むことができないような方法を使用することです。私が構築しているアプリケーションには "mailto:"機能は必要なく、電子メールアドレスを表示するだけです。また、これはビジネスWebアプリケーションなので、できるだけプロフェッショナルとして見たり、行動したりする必要があります。ここに私の質問です:私はdocument.writeをルートを行くと、各文字のHTMLエンティティのバージョンを渡すと

  1. 、JavaScriptを実行し、とにかくレンダリングされたテキストを引くのに十分な洗練されたいかなるウェブクローラはありませんか?それとも、これがベストプラクティスと考えられ、完全に(またはほぼ完全に)スパマーであることが証明されていますか?

  2. イメージソリューションについては、プロとしては何がありますか? Facebookが世界で最も売れ行きの高いアプリケーションの1つであり、アマチュアによって運営されていないアプリケーションの場合、なぜこのテーマに関する別のスレッドでそのメソッドが完全に却下されるのでしょうか?

  3. あなたの回答(他のスレッドのように)がこの問題に悩まされず、ユーザーの迷惑メールフィルタにすべての作業をさせる場合は、なぜこのように感じるのか説明してください。私たちは、ユーザーの電子メールアドレスを表示しています。私ができる限り多くのユーザーを保護する責任があります。これが不必要であると感じたら、理由を説明してください。

ありがとう。

答えて

4
  1. それはスパマーの証明ではありません。誰かがあなたのサイトとDETのためのコードを見ている場合あなたの電子メールアドレスに使用しているパターンを確認し、特定のコードを書き込んで解読することができます。

  2. 私は専門家ではないとは言いませんが、コピーアンドペーストの機能はありません。これはかなり大変です。画像では、単にその機能を利用できません。比較的複雑な電子メールアドレスをOutlookのアドレス帳にコピーする場合はどうすればよいですか?エラーが発生する可能性のあるタイプを入力する必要があります。

  3. ユーザーの迷惑メールフィルタへの責任の移転は、実際には貧弱です。私は、ユーザーがスパムに対する防御に勤勉でなければならないと考えていますが、それは責任を問わずアドレスを公開することを免れるものではありません。

この目的のために、絶対に安全な方法でこれを行うことは、ほぼ不可能です。これを実行する唯一の方法は、コードがエンコードされた電子メールアドレスを解読するために使用する共有の秘密を持つことです。この問題は、JavaScriptがクライアント側で解釈されるため、スクレイパーから秘密を保持できることはありません。

ほとんどの電子メールボットハーベスターは、すべてのサイト専用のコーディングに関心を抱くことはないため、今日では一般的に電子メールアドレスのエンコーダーが機能します。彼らは最大限の結果を得る最小限のアルゴリズムを試してみようとしています。このため、単純なエンコーダはほとんどのボットを倒すでしょう。しかし、本当に誰かがあなたのサイトの電子メールを取得したいのであれば、それらのアドレスを書き込むコードは一般に公開されているので、おそらく簡単に使えます。

これをすべて考慮して、Facebookがイメージルートに行ったことは意味があります。彼らはイメージを変えてOCRを不可能にすることができるので、電子メールアドレスが収穫されないことを事実上保証することができます。彼らがおそらく世界で最大の電子メールアドレスリポジトリの1つであるとすれば、彼らは私たちよりも重い負担を負うと主張することができ、不都合なことに、そのルートを強制され、 。

+0

グレートポイント。このサイトはFBのようなものではないので、私は安全である必要はありません。私はOCRについて同意する、おそらくOCRをほぼ不可能にする毎回少しずつimgを変更する。おそらく両方のエンティティと、各リクエストごとに固有の自動生成された暗号を使用するJSソリューションを実行します。 – Rich

4

Javascriptは現在のところ(風景が進化するにつれて変化する可能性がある)良い解決策です。

  • JavaScriptの難読化は今
  • あなただけの他人を追い越すする必要があるため、より良いマウストラップです。低いぶら下がりの果物がある限り、スパマーはそれらのために行くでしょう。誰もがjavascriptに移動しない限り、少なくとも今は大丈夫です
  • ほとんどのスパマーは、正規表現を使用してGETして解析するHTTPベースのスクリプトを使用します。解析するためにはJavaScriptエンジンを使用すると、確かに可能ですが、Facebookのソリューションについて

物事が遅くなります、私はそれは専門外考慮していませんが、純粋主義者が同意しないことがあり、なぜ私は明確に見ることができます。

  • それは(ブラウザ、音声リーダーまたはクリックすることによって解析することができないアクセシビリティ標準を破る。
  • それはセマンティック構造を壊す(それはもうイメージではなく、mailtoのリンクです)
  • それは、プレゼンテーション層を破壊します。あなたは、ブラウザのデフォルトのフォントサイズを大きくするか、高コントラストのカスタムCSSを使用する場合は、電子メールには適用されません。