如何“加密”你的email地址

如何“加密”你的email地址

2011年1月27日 陈皓 发表评论 阅读评论 2,960 人阅读   

现在在网上要小心,无论是保护好你的用户名和帐号,还是我们的电子邮件地址。在网上有很多爬虫程序专爬我们的电子邮件地址,一量被爬中了,那么你的邮箱里就是一堆又一堆的垃圾邮件,就好像我的haoel(at)hotmail.com一样,在7、8年前,每天几千封的垃圾邮件。现在hotmail的垃圾邮件过滤得好一些了,不过也有每天40封左右的垃圾邮件。但是我们在自己的网页上又需要发布自己的email地址。所以我们需要搞乱我们的邮件地址,就像那种非常规的搞乱代码一样。不过,我们还需要能认人读的出来。

一般来说,在网上现在很普遍的做法是——

  • 1)用图片,可以用PHP动态生成那个验证码式的。
  • 2)把@变成at,把点变成dot,如 haoel(at)hotmail(dot)com之类的。
  • 3)把a变成@,写成haoel@hotm@mail.com

不过这些还是能被爬到,用图片的方法不利于用户拷贝粘贴。下面介绍几种方法:

第一种:使用CSS样式

反转字序

1
2
span.codedirection { unicode-bidi:bidi-override; direction: rtl; }
< p >< span >moc.liamtoh@leoah</ span ></ p >

加入些不显示的字符串

1
2
p span.hide { display:none; }
< p >foo@bar< span class = "hide" >null</ span >.baz</ p >

第二种:使用Javascript

最为简单的方法是:

1
document.write( "haoel" + "@" + "hotmail" + "." + "com" );

或是:

1
2
3
4
5
6
7
8
9
<script type= "text/javascript" >
<!--
    var string1 = "@" ;
    var string2 = "haoel" ;
    var string3 = "hotmail.com" ;
    var string4 = string2 + string1 + string3;
    document.write( "<a href=" + "mail" + "to:" + string2 + string1 + string3 + ">" + string4 + "</a>" );
//-->
</script>

不过更为强大的是使用ROT13加密,这里有一个ROT13的在线工具,或是使用PHP的ROT13的函数str_rot13

1
2
3
4
<script type=”text/javascript”>
document.write(“<n uers=\"znvygb:unbry@ubgznvy.pbz\">”.replace(/[a-zA-Z]/g,
function (c){ return String.fromCharCode((c<=”Z”?90:122)>=(c=c.charCodeAt(0)+13)?c:c-26);}));
</script>陈皓的电子邮件</a>

这些方法还是很有效果的。


(转载本站文章请注明作者和出处 酷壳 – CoolShell.cn ,请勿用于任何商业用途)

————————============ 感谢 42qu.com 为本站提供 VPS ============————————

posted @ 2012-09-03 15:44  attilaxAti  阅读(70)  评论(0编辑  收藏  举报