http下如何防止密码被获取,回话id及token被窃取

http下如何防止密码被获取,回话id及token被窃取

http下如何防止密码被获取,回话id及token被窃取

大家都知道在http协议下,数据都是明文传输的,如果要想安全传输数据,就必须将协议改为https,那么http下有没有其他的办法来保证数据传输的安全呢

而且在登录过程中,一旦服务端通过验证,就会返回一个登录的回话id,如果被人窃取,也是很不安全的,这个又该如何解决呢

其实在http下也可以通过加密来解决数据传输的安全问题,现在的浏览器都支持md5、aes、des对称和非对称加密算法,只要与后端协商一致,完全可以自己实现一套类似https协议的安全通讯程序

回话id被窃取安全问题,只要将在服务端记录回话的ip地址,当检测到ip变动时会要再次跳转到登录页面,这样窃取者获得这个回话的id也没啥用

密码加密最简单的方式就是先从服务器端获取本次回话的token及salt数据,然后在浏览器端将salt与密码进行md5加密,最后传给后端,后端接受到数据后,首先从当前回话中取出salt,然后从数据库中进行匹配,这样解决了上面的问题,密码不再以明文的形式传输,而且每次密码加密后的值都是不一样,窃听者即使获取也不知道密码是啥,而且也不能完成登录。


{{collectdata}}

网友评论0