背景
原本的安全方案是在Header中设置接口的userName和password,但是众所周知这跟掩耳盗铃没什么区别,只是应付普通接口扫描式攻击的。
一旦进行抓包,那么header中明文传输的一切都可以被获取。
还有中解决方案是对参数进行加密(或者参数体),但这种方式也存在1、传输内容过大 2、一旦被获取到密钥后(理论上不可能)所有接口都会被扫描到
解决方案
解决重点其实在于如何缩短加密后过长的传输内容。次要目的才是密钥被窃取。
所以通过安全中心授权给一方token(或者别的密钥,永久不变的字符串也可以),对于请求参数体+token进行编码,生成DataSign
调用方完全可以放心将dataSign放入请求体以明文形式传输
被调用方获取到dataSign之后按照约定方式对请求体进行同样步骤的编码,然后进行dataSign的字符串比较
即可实现接口传输的安全性。
如果需要的话,还可以维护授权的token(或永久字符串)来实现身份验证。
标签:DataSign,解决方案,dataSign,接口,传输,token From: https://www.cnblogs.com/onejay/p/18190051