结合使用的安全优势与总结

前言

写到这里基本上笔者在请求中遇到的问题,以及运用到实践中的解决方案,基本上分为,请求唯一性,单设备登录,单点登录,MD5校验 
这几种校验的小技巧,在之前都对着几种校验方式进行也一些独立的说明(还没有看过的可以先去游览查阅一下,在请求安全模块中) 
在本章里面会着重说明怎么样综合使用,如何获得比较高的安全性,以及会简单介绍一下方便使用的一种高级加密方法.

1.回顾

1.1 单设备登录.单点登录

每次调用登录接口获取的ID都是一个临时ID.当下次登录的时候重新生成在覆盖,就可以达到单设备登录的
效果了,这个临时ID对应着真正的用户ID每次客户端请求都是拿着临时ID请求过来然后服务器做验证,而且
这个临时ID和真正ID是存储在一个共享的区域,其他的模块都能获取到这一项对应

1.2 MD5校验

MD5在请求安全中关键用到的基本上就是对于请求参数进行校验,对与服务器来言排除系统问题最大的问题
就是害怕请求被拦截,拦截修改之后就有很多漏洞的可能性了, 为了避免被拦截,参数被修改这种文件的常
用方法就是对请求参数进行校验,就算拦截了请求参数修改了只要模拟不出MD5加密出来的值,在服务器过滤
器直接就会进行拦截. 我这边推荐的请求校验方法在传递参数的时候带上 MD5值 随机数 时间戳 当然这几
个都是由客户端生成 MD5=MD5(随机数+时间戳+MD5(KEY+公司名+项目名)) 当然这个规则也是可以定制的
请求参数在服务器拦截器就用客户端传递过来的 随机数 时间戳 来做校验如果不通过就不让继续访问

1.3 请求的唯一性

如果别人不破解MD5直接解析Ddos攻击当然要有个拦截机制,请求唯一性是对于一个用户ID这个都是用户的唯
一标示在这个简单的解决方案中有两个比较重要的东西,随机数,时间戳,通过这两个东西加上用户唯一标示就
能实现一套简单的请求唯一性验证

2. 密文加密-STD3Des

STD3Des加密是一种高级可逆加密方法,他需要加解密双方指定两个东西一个是key,一个是vi(vi是偏移量)
密文加密意义在于别人捕获请求不会看到传递参数的具体值

3. 结合增加安全性

1.因为有单设备登录ID是动态的,所以吧ID作为MD5的条件加密会更安全
2.MD5的随机数和时间戳与唯一请求的使用的相同,应为有MD5加密,所以模拟随机数和时间戳需要先破解MD5校验
3.密文加密可以保证所有参数都是密文,进一步增加随机数和时间戳被修改问题

4. 性能

很多人会在乎接口加了这么多东西性能会降低多少呢 ,我经过实践下来其中性能消耗最大的是加解密,损耗在3%~8%
请求量越大损耗越大其他加起来基本保持在1%左右,基本上也是可以接受的,而且结合起来安全性还是相对比较高的

5.总结

通过以上所述各项小技巧的组合确实可以得到不错的安全性,基本上关于请求安全就告一段落了,笔者水平有限希望
大家多提意见,多交流!

3.请求安全-- 结合使用的安全优势总结相关推荐

  1. Zuul和Gateway请求IO模型比对(WebFlux优势)以及Reactor模型分析

    文章目录 背景 Zuul 请求处理模型 Gateway Doug Lea Reactor模型 总结 背景 最近在做一些开源网关的调研,首选也是主流的网关就是Zuul和Gateway.然后在性能上基于Z ...

  2. 嵌入式软件异步编程:请求的多阶段异步处理

    本文节选自<深入理解Nginx模块开发与架构解析(第2版)>第8章 Nginx基础架构 >> 8.2Nginx的架构设计 >> 8.2.3 请求的多阶段异步处理,和 ...

  3. 【iOS】使用NSURLSession网络请求

    文章目录 前言 NSURLSession NSURLSession替换NSURLConnection Get请求 流程 1. 确定请求路径 2. 创建请求对象 3. 获得会话对象 4. 根据会话对象创 ...

  4. 微信公众号服务器负荷过大,2W台服务器、每秒数亿请求,微信如何不“失控”?...

    原标题:2W台服务器.每秒数亿请求,微信如何不"失控"? 微信作为当之无愧的国民级应用,系统复杂程度超乎想象:其后台由三千多个移动服务构成,每天需处理大约十的10~11次方个外部请 ...

  5. 服务器端往手机端推送数据的问题(手机解决方案)

    1.方案一: 思路:使用socket连接,在手机端开个socketserver,然后服务器端连接手机端,实现服务器端的不定时发送数据. MIDlet关闭时, 你可以通过sms激活它. midlet运行 ...

  6. Tomcat是什么:Tomcat与Java技、Tomcat与Web应用以及Tomcat基本框架及相关配置

    1.Tomcat是什么        Apache Tomcat是由Apache Software Foundation(ASF)开发的一个开源Java WEB应用服务器. 类似功能的还有:Jetty ...

  7. 基于前后端分离的Nginx+Tomcat动静分离

    1.什么是动静分离 "动"与"静" 在弄清动静分离之前,我们要先明白什么是动,什么是静. 在Web开发中,通常来说,动态资源其实就是指那些后台资源,而静态资源就 ...

  8. 关于Web服务器的认识

    马上就要毕业了,也要开始找工作了,大学写了这么多代码了,却没有好好总结一下常用的概念很是遗憾额,就通过这篇博客记录一下我最常用的一些知识好了. 说到Web服务器,有很多文章都介绍的很好,之前看到一篇非 ...

  9. 一周一论文(翻译)——[Acta 1996] The Log-Structured Merge-Tree (LSM-Tree)

    Abstract 高性能事务系统通常会通过向一个历史表中插入记录以追踪各项活动行为:与此同时事务系统也会因系统恢复的需要而生成日志记录.这两种类型的生成信息都可以从高效的索引方式中获益.众所周知的一个 ...

最新文章

  1. python建站与java建站有何不同_详解模板建站和定制建站的不同之处
  2. JVM第三篇 — JVM是怎么工作的?
  3. git 添加未跟踪的文件
  4. Objective-C 运行AppleScript脚本
  5. asp按时间自动递增编号_约束力最强的手铐——美国ASP钢性手铐
  6. java两个数组中不同的数字_java将两个数组中不同的数字去掉一个剩下的保存到一个新的数组中...
  7. python学习基础语法_python学习-基础语法
  8. java 解析dex_将DEX反编译成Java源代码
  9. 博客优化--ping让博客文章发表就有可能被收录
  10. FAT32、exFAT、NTFS
  11. 不是吧?DNSPod挪车码免费送?
  12. 房地产前期投资阶段及启动阶段目标成本形成过程
  13. Android游戏开发学习笔记(三):视频的播放
  14. 5-3 外星人颜色#1
  15. 微信小程序获取用户信息-头像、昵称......
  16. 国外经典幽默漫画和笑话集
  17. w3c JS测试
  18. Outlook Express错误代码表
  19. mycat 分表子查询_MyCat分库分表策略详解
  20. 修复克米3.5勋章中心空白不显示问题

热门文章

  1. pcb文件转成原理图_电路仿真与PCB设计 | 文末赠书
  2. ROS实现两台计算机之间的网络通信
  3. SpringBoot集成RabbitMQ消息队列搭建与ACK消息确认入门
  4. python为什么那么多人用_为什么那么多人在学Python?
  5. python 执行shell_python中执行shell的两种方法总结
  6. 净利下降7成、新业务“扛大旗” 阿里转型更需耐心
  7. 腾讯或于本周正式宣布合并搜狗?官方回应:看点招聘及搜狗合并均正常进行...
  8. iPhone 13系列上线1小时 京东预约人数破20万
  9. 蔚来辅助驾驶致死,副总裁沈斐或遇更大危机
  10. 荣耀Magic 3渲染图曝光:超大主摄暗示顶级成像效果