首页 > 安全 > 网络安全 >

用PHP来加密解密Cloudflare邮箱保护

2016-10-02

Cloudflare 有一项功能挺不错的,就是将页面上所有的邮箱地址都加密起来,防止机器人抓到然后干坏事。这项功能要在后台开启 email address obfuscation,之后就可以在页面上加入一个邮箱地址,比如说 abc@abc com。

Cloudflare 有一项功能挺不错的,就是将页面上所有的邮箱地址都加密起来,防止机器人抓到然后干坏事。

这项功能要在后台开启 email address obfuscation

之后就可以在页面上加入一个邮箱地址,比如说 abc@abc.com

查看源代码就能发现类似如下的代码

[email protected]

我们可以使用 PHP 的方式将这个邮箱地址解密出来

function deCFEmail($encode){$k = hexdec(substr($encode,0,2));for($i=2, $m=&#39;&#39;; $i < strlen($encode) - 1; $i += 2){$m.=chr(hexdec(substr($encode, $i, 2))^$k);}return $m;}echo deCFEmail("30515253705152531e535f5d")."\n";

得到的结果就是上面所说的 abc@abc.com

但是我们不想用 Cloudflare 的相关服务,就是单纯想用他这种加密技术,所以我们就得将加密的算法也找出来

我们可以利用上面解密的代码反向执行,就可以得到一个加密的算法了

function encodeEmail($email, $key=0) {$chars = str_split($email);$string = &#39;&#39;;$key = $key ? $key : rand(10, 99);foreach ($chars as $value) {$string .= sprintf("%02s", dechex(ord($value)^$key));}return dechex($key).$string;}

我们就能利用这个加密算法,将手机号、邮箱地址、身份证等各种敏感的信息都加密起来,防止别人能轻易的抓取到数据

相关文章
最新文章
热点推荐