winston 发表于 2011-12-25 20:16:51

网络帐号安全简单解决办法

张人杰
1、 使用用户密码的md5码存储,使用RSA加密后的密码传输
2、 开发IE BHO控件,算法为在用户打开登陆页面时,服务器向控件传入公钥和一加密因子,并在服务器的session中保存此因子。在用户输入密码点登陆时,先算出密码的md5码,再将此面md5码混淆(拼接上因子或异或上因子,必须为可反向混淆),最后使用RSA公钥加密后向服务器发送。此时,只可能在传输过程中泄露RSA加密后的密码,而RSA目前安全性较高,没有私钥反向极为困难,RSA加密后的密码脱离session无法使用。
3、 服务器收到密码后,使用RSA私钥解密,然后取出session中的因子与数据库中的md5码使用相同的方法混淆后与解密后的密码比较,若相同则能够登陆,若不同则密码错误。
4、 初始化密码和修改密码的解决办法:浏览器发送加密后的密码(加密方法与2相同);服务器得到密码后先RSA解密,然后再用session中的因子反向解密后的密码,最后将此密码保存入数据库(此时的密码为完整的原密码的md5值,与因子无关)]
5、为防止窃取session登录(即为防止使用抓包工具抓到传递的sessionid和rsa加密后的密码后,模拟浏览器登录),在打开登录页面时服务器端的session中还需要记录用户的真实ip地址,如果有反向代理,需要记录整个反向代理链(x-forwarded-for),在登录和使用时,需要判断,用户的ip地址及反向代理链是否与打开登录页面时一致
6、 定期更新RSA的公钥和私钥
7、在每次操作时都需要手机短信验证的安全性就会更高。
8、给每个网友发一个usb keyhttp://static.blog.csdn.net/xheditor/xheditor_emot/default/laugh.gif作者:ranjio_z 发表于2011-12-25 11:34:14 原文链接
页: [1]
查看完整版本: 网络帐号安全简单解决办法