【接口安全】DataSign解决方案
背景
原本的安全方案是在Header中设置接口的userName和password,但是众所周知这跟掩耳盗铃没什么区别,只是应付普通接口扫描式攻击的。
一旦进行抓包,那么header中明文传输的一切都可以被获取。
还有中解决方案是对参数进行加密(或者参数体),但这种方式也存在1、传输内容过大 2、一旦被获取到密钥后(理论上不可能)所有接口都会被扫描到
解决方案
解决重点其实在于如何缩短加密后过长的传输内容。次要目的才是密钥被窃取。
所以通过安全中心授权给一方token(或者别的密钥,永久不变的字符串也可以),对于请求参数体+token进行编码,生成DataSign
调用方完全可以放心将dataSign放入请求体以明文形式传输
被调用方获取到dataSign之后按照约定方式对请求体进行同样步骤的编码,然后进行dataSign的字符串比较
即可实现接口传输的安全性。
如果需要的话,还可以维护授权的token(或永久字符串)来实现身份验证。
标签:
工作学习
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律