最近总有网友加我的QQ来向我了解一些PHP的加密,在这里就大家常常搞不懂的PHP加密方法进行罗列并进行简要的介绍。
1、源码外壳加密(通常加混淆加密,各种加密盾均是此类加密)
优点:简单,加密容易
缺点:加密强度高,执行速度慢。加密强度低,安全性低。我见过某人加密进行了200次循环验证,这样性能很低的。所有的源码混淆加密均可被还原成原代码。
2、源代码混淆(只打算代码不加密)
优点:与方案一不同的在于此加密方法是对源代进行加工,加密PHP变
缺点:源码加密后,不方便修改,严格他并没有加密,只是增加代码不易读的方式,来防止修改二次开发代码。
3、扩展加密(zend为代表)
优点:将PHP程序经过某种算法如DES、异或、压缩等算法加密或者对源代码进行预编译提高速度。在PHP加载的扩展(DLL 或 SO) 中完成对源代码的解密解释执行。速度快,安全性高。如果没有破解扩展很难破解此类代码。
缺点:此类加密,容易被HOOK通过获取OPCODE 转换破解代码,现在主流的ZE
4、编译功能性扩展
有点:
缺点:扩展兼容性最差,功能升级时需要更新此类扩展文件。牺牲兼容性,而得到安全性。
写在最后,PHP的加密安全性一直是相对的。对于上面的加密四种方案是最常见的,也可以多次组合应用。如先用方案二混淆,再用方案一、方案三、加密。这样更加增强了系统的安全性,本网站所采用的方案均可任组合,更为安全。
文章来源网络,仅作参考