zoukankan      html  css  js  c++  java
  • 提高COOKIE的安全性--相关解决方案


    提高COOKIE的安全性--相关解决方案
     
    网络上常见方案是: 
     给Cookies加个加密算法。 给Cookies加个时间戳和IP戳,实际就是让Cookies在同个IP下多少时间内失效。
    最终使用MD5来MAC签名防止篡改……但这样仍然可以看到明文信息,有一定不安全之处。


    我的方案是

    cookie==3des(“值,时间,IP戳”);   最终得到的COOKIE是这样的:3BD1B32614A528EA


    使用3DES来加密,这样保证客户端没有明文……。


    服务端检查的时候,再解密出来值,时间,IP戳,并检查过期时间与IP……不符的需要清空此COOKIE,转向登录页面..

    这样解决了几个问题
    1.客户端COOKIE无明文,得到不任何有用信息……如果使用MD5签名,客户端势必有明文。
    2.无法篡改,一旦篡改后在服务端解密的时候就会出错……防止了暴力破解
    3.在网络被截获后,也无法使用,因为有IP戳……且IP是加密的,无法看到明文,所以也无法使用伪造IP的方式
    4.之所以在客户端存放IP戳,可以使得其在多台电脑上存放COOKIE,如果放在服务端,则只能一台电脑用COOKIE登录了,影响用户体验,且浪费性能查询数据库……

  • 相关阅读:
    函数防抖和函数节流.md
    es6的展开运算符.md
    web安全-xss.md
    es6 数组实例中的find() 和 findIndex() 方法.md
    vuex的学习
    利用nodejs搭建本地服务器.md
    webpack的配置学习
    npm常用命令
    配置phpstorm支持less自动编译css
    Nginx配置中遇到到的问题和解决方案
  • 原文地址:https://www.cnblogs.com/attilax/p/15200006.html
Copyright © 2011-2022 走看看