比较安全的cookie验证登录设计方案

web是基于HTTP协议传输的,明文传输是极其危险的,随便哪个抓包工具分析下数据包,就over啦,一个加密的传输过程应该包括两部分,一部分为身份认证,用户鉴别这个用户的真伪;另外一部分为数据加密,用于数据的保密。

设计方案1:
1.生成用户验证token,用户登录后我会生成一个token,该token可能由如下信息组成:username+ip+expiration+salt【只是举例】,然后将组成信息用可逆加密函数加密得到token,将该token保存到数据库或者redis等,并写入cookie;

2.校验信息,判断用户的登录状态将token解密,验证用户username,如果存在,继续;然后验证token是否和存入数据库的token相同,如果相同继续;验证cookie的有效期expiration,如果有效继续;验证ip是否变化,若变化跳入登录。。。。。。甚至还可以验证user agent.

方案1说明:
1.可以做到单终端登录,可以将token放到数据库,每次登录操作必然会改变token的值,另外一端的用户就会token验证失败下线,保证token每次登录都会不一样,这样之前的token【既cookie】就会失效
3.cookie的有效期最好不超过一周

ing

 

posted on 2018-12-25 10:06  zqifa  阅读(1146)  评论(0编辑  收藏  举报

导航