这个HTTP签名计算器的功能
"我们计算的请求签名与您提供的签名不匹配"是API工作中最令人丧的错误之一,。这台计算器可复制 AWS Signature Version 4,Alibaba Cloud ACS3-HMAC-SHA256,Tencent Cloud TC3-HMAC-SHA256 和 OAuth 1.0a HMAC-SHA1 的整个签名过程,并显示每个中间值:规范请求,其哈希,签名字符串,衍生签名密钥以及最终签名和头。它还验证了来自GitHub,Stripe和Slack的webhook签名。所有密码都使用浏览器的网络密码API,
使用方法
- 选择提供者选项卡。
- 输入方法,URL,头条 (每行一个
Name: value) 和正如您的代码发送它们的那样。 - 输入访问密钥,秘密密钥,并酌情输入区域和服务。点击使用当前时间或固定时间,以与捕获请求进行比较。
- 让我们对每个步骤进行比较,。首先要注意的是你的虫子在哪里
- 对于webhooks,请粘贴原始请求体字节为字节,签名头和签名密码,
签名不匹配的常见原因
- 定制URI编码: AWS编码每个路径段;S3不进行双重编码。
- **查询排序:**参数必须按编码键排序,空值仍然需要
=。 - **签名标题:**标题名字是小写的,修剪,排序和加入
;。忘记host或x-amz-date是很常见的。 - **有效载荷哈希:**S3需要
x-amz-content-sha256头;其他服务只需要哈希机体。 - **时钟偏差:**大多数提供商拒绝超过515分钟的请求。
- **Webhooks:**框架通常在您看到JSON之前分析并重新串行。根据原始字节进行验证,而不是重新编码的对象。条纹标志
timestamp.body,宽松标志v0:timestamp:body。