防篡改防重
数据字段
- 基础参数
- 业务参数
- sign验签字段
基础参数
- 时间戳
- 版本号
- token
- requestId: 毫秒级时间戳+[ 0到10000随机数 ]
业务参数
- password
- userName
- .....
验签参数sign
- sign : md5 [ (基础参数+盐(密钥)参数+业务参数) 排序之后的字符串]
传输文件名摘要生成规则
防止对文件内容篡改
- a = hash256(文件内容)
- fileName = hash512 [ a + 盐(密钥) ]
作用
- 某个请求失效,传递时间戳,为了支持服务器的失效处理
- 防重复:基础参数包含requestId防止请求被截获之后频繁请求重复数据,密钥存储在本地,不在网络当中传输,通过APP的重复提交,设置可操作状态;防止重复提交,时间戳有一定的的失效时间(2分钟);
- 防篡改:md5防止反解码,sign签名防篡改,截获人员不知道密钥,不知道签名生成规则