比方说,用户登录之后,会在浏览器中产生session id,不做处理的话直接www.www.com/index.php?PHPSESSID=32位号码就能直接登录该用户了。
我的想法是给session id md5加密,ID+IP+自定义字符串,发送到服务器端解密之后判断IP是否与上次登录相同。由于没什么经验,不知道有没有更加好的方法来增加session安全,或者说有没有更好的加密方式?

解决方案 »

  1.   

    你的session id怎么是从地址里出来的?
      

  2.   

    it's no problem, no need to improve it
      

  3.   

    普通 session 没问题的 
      

  4.   

    首先session id不是浏览器产生的,是由服务器生成并发送到浏览器,本身就是一个随机不重复的ID,不用再MD5了。
    你说的安全问题确实存在,如果不做处理,只要伪造一个与合法用户相同session id就可以直接登录。
    解决方法:
    在session中存储一个“安全键”(可由IP+用户名+用户密码+随机串),当用户登录成功后,把“安全键”存储到Cookie中。
    然后每次访问时都比较Cookie中“安全键”是否与session中的一致(如果不一致则说明session id是伪造的)。
      

  5.   

    实际的安全性依赖HTTPS.HTTP没有安全性可谈.