Api Signature
文章目录
规则
接口需要四个公共参数
- X-Nonce
- X-Time
- X-Token
- X-Sign
这四个参数是需要在 Header 上发送
参数 | 说明 | 长度 | 必须 |
---|---|---|---|
X-Nonce | 随机字符串 | 16 | 是 |
X-Time | 时间戳 | 10 | 是 |
X-Sign | lower(sha1("{{固定常量}}:{{X-Nonce}}:{{X-Time}}:{{data}}”)) | 40 | 是 |
能够防护的攻击方式
- 参数修改 (对method,params 等进行 hash)
- 重放攻击 (记录请求时间戳+随机值)
签名校验 data 算法
常用请求 METHOD,
GET
|
|
get 请求需要对参数进行排序然后
php 部分使用 ksort 进行排序
|
|
POST
有两部分参数 1:url参数, 2:body参数
|
|
PUT
|
|
DELETE
|
|
写在最后
本方案只是解决了,api 接口容易被人利用
文章作者 霸气千秋
上次更新 2018-08-03