にしし ふぁくとりー(西村文宏 個人サイト)

メールアドレスを数字列にしてJavaScriptで記述するソース生成ツール

2015/01/08 更新

メールアドレスをHTMLソース内に直接記述することなくウェブ上に掲載すべく、「メールアドレスをASCIIコードの数値列に変換して掲載しておき、JavaScriptを使ってウェブページ上に表示する」ためのソースコードを生成します。これによって、メールアドレスの自動収集プログラムにメールアドレスを収集されてしまうのを防げる可能性が高まります。たぶん。

ASCIIコードに変換してJavaScriptで記述したいメールアドレスを入力

以下の入力欄に、ASCIIコードに変換してJavaScriptで記述したいメールアドレスを入力して下さい。(※半角英数記号のみ変換できます。多バイト文字は変換できません。)
入力後に「ASCIIコード化したJavaScriptソースを生成」ボタンを押すと、入力されたメールアドレスがASCIIコードに変換され、それを使ってメールアドレスを表示するためのJavaScriptソースが表示されます。そのソースをコピー&ペーストして自身のウェブサイトに掲載すれば、HTMLソースやJavaScriptソース内にメールアドレスを一切記述することなく、メールアドレスをウェブ上に掲載できます。

※入力するにはJavaScriptの実行環境が必須です。

メールアドレスをASCIIコードの数字列に変換してJavaScriptで記述する仕組みの解説

◆メールアドレスを直接ソースに記述することなく、メールアドレスを表示できる

下記には、メールアドレスへのリンクが1つ見えるはずです。しかし、このメールアドレスは、このHTMLソース内には一切記述されていません。 また、JavaScriptソース部分を読んでも、このメールアドレスは(直接は)記述されていません。 そのため、(メールアドレスをウェブ上に掲載しておきつつも)メールアドレスが自動収集されてしまう可能性を減らせます

上記のリンクは、メールアドレスを構成する文字1つ1つをASCIIコードに変換して、JavaScriptソース中に記述することで表示しています。 ここでは「116,101,115,116,64,101,120,97,109,112,108,101,46,99,111,109」のような数値の列になっています。
この数値列(ASCIIコード)を、JavaScriptを使って文字に戻すことで、ブラウザの画面上に本来のメールアドレスを表示させています。

◆メールアドレスを表現するASCIIコードをもっと複雑にするオプション

上記の入力欄とボタンの間にある「ASCIIコードの表現に計算式を含めて複雑に見せる」チェックボックスにチェックを入れておくと、 「132-16,83+18,141-26,100+16,71-7,82+19,125-5,92+5,127-18,104+8,129-21,91+10,66-20,96+3,133-22,102+7」のような計算式の列になります。 このようにしておくと、余計に「この数字列がメールアドレスだ」とは分かりにくくなります。増減値はランダムに決定されるため、同じメールアドレスでも実行するたびに異なるソースが出力されます。