API 签名生成器
生成带时间戳与随机数的接口签名
✨ API Signature Generator
API Signature Generator
📐 工作原理与说明
为 API 请求生成防篡改签名:参数排序 → 拼接 → 摘要,服务端用同样规则复算比对。
- 排序:把请求参数(排除 sign 本身与空值)按参数名 ASCII 升序排列。
- 拼接:拼成
k1=v1&k2=v2…,首尾按约定追加或前置key=密钥。 - 摘要:对拼接串做 MD5 / SHA-1 / SHA-256 / HMAC 后转大写,得到签名值。
- 安全:须带时间戳与 nonce 防重放;密钥只能留在服务端,绝不下发客户端。
📚 深度解析:API 签名生成器
💡 常见使用场景
- 按密钥对请求参数做签名(HMAC)。
- 回调验签:第三方支付或消息推送回调时,按文档约定的字段顺序复算签名,与报文里的 sign 字段比对,确认请求确实来自对方且未被篡改。
签名
参数按 key 排序+secret → HMAC-SHA256 签名串,随请求发送。
❓ 常见问题(FAQ)
- 为何要排序?
- 保证客户端与服务端拼接串一致才能验签。
- 签名里要不要带时间戳?
- 必须带。仅有参数签名会被重放——攻击者截获一次合法请求后可反复提交。做法是加入 timestamp 与 nonce,服务端校验时间戳在允许窗口内(如 5 分钟)、且 nonce 未出现过。