某些情况下,网站的提交数据内容是非常机密的,不允许外界用过嗅探的手段截获(或者即使截获了也看不到明文的内容),这样大家第一反应是使用SSL进行连接。
但仅仅使用SSL并不能满足真正的需要,因为像FireFox这样的浏览器,通过插件(如FireBugs)可以看到具体提交数据的地址和内容,这样真正的黑客可能会通过这个手段来截取提交数据来达到试图攻击网站目的。这样,就需要把这接数据在提交之前先给加密起来。
CMSPAD中提供了一种叫SecurityKey的技术,支持客户端提交前将请求数据加密,即使使用FireBugs这样的调试插件,也只是看到加密后的内容,而且密钥由服务器端控制,用户可以定期更改密钥,以达到有效的防黑目的。
而且SecurityKey技术使用起来也极其简便,只需要在config.php或载入global.php前添加以下代码即可:
[code]define('CMSPAD_SECURITY_KEY', '您的加密密钥内容');[/code]
这样,随着使用的密钥不同,客户端会自动进行请求加密。
至此,通过SecurityKey技术,我们已经达到了以下的目的:
[list=1]
[*]防止黑客窃取请求数据
[*]防止注册机/发贴机自动提交数据
[*]不需要验证码,因为这个弄不好很影响用户体验[/list]
注意:如果缓存了内核JS代码,在每次更改密钥内容时需要删除内核JS代码缓存以保证密钥的成功应用。
但仅仅使用SSL并不能满足真正的需要,因为像FireFox这样的浏览器,通过插件(如FireBugs)可以看到具体提交数据的地址和内容,这样真正的黑客可能会通过这个手段来截取提交数据来达到试图攻击网站目的。这样,就需要把这接数据在提交之前先给加密起来。
CMSPAD中提供了一种叫SecurityKey的技术,支持客户端提交前将请求数据加密,即使使用FireBugs这样的调试插件,也只是看到加密后的内容,而且密钥由服务器端控制,用户可以定期更改密钥,以达到有效的防黑目的。
而且SecurityKey技术使用起来也极其简便,只需要在config.php或载入global.php前添加以下代码即可:
[code]define('CMSPAD_SECURITY_KEY', '您的加密密钥内容');[/code]
这样,随着使用的密钥不同,客户端会自动进行请求加密。
至此,通过SecurityKey技术,我们已经达到了以下的目的:
[list=1]
[*]防止黑客窃取请求数据
[*]防止注册机/发贴机自动提交数据
[*]不需要验证码,因为这个弄不好很影响用户体验[/list]
注意:如果缓存了内核JS代码,在每次更改密钥内容时需要删除内核JS代码缓存以保证密钥的成功应用。