【发布时间】:2011-03-26 19:23:44
【问题描述】:
我知道大多数 javascript 电子邮件混淆解决方案可以阻止机器人死在他们的轨道上 - 但有时很难在某些地方使用/插入 javascript。
为此,我想知道是否有人知道机器人是否足够聪明,可以将 HEX 和 DEC 中的 HTML 实体翻译成有效的电子邮件字符串?
例如,假设我有一个函数可以将字符串字符随机转换为三种形式之一 - 这足够了吗?
hide_email($email)
{
$s='';
foreach(str_split($email)as$l)
{
switch(rand(1,3))
{
case 1:$s.='&#'.ord($l).';';break;
case 2:$s.='&#x'.dechex(ord($l)).';';break;
case 3:$s.=$l;
}
}
return$s;
}
这使得 first.last@email.com 变成这样的:
first.last@email.com
我会假设机器人创建者已经为这样的事情添加了一个正则表达式模式......
【问题讨论】:
-
没有什么是足够安全 :)
-
@BoltClock:没有一个的东西是足够安全的,这就是我们练习深度防御的原因。现在请原谅我在摸索我的腰带和吊带......
-
@Steven Sudit:公平……够了。
-
考虑用图片替换电子邮件地址。