市值: $2.0544T -0.47%
成交额(24h): $79.7284B 43.92%
恐惧与贪婪指数:

16 - 极度恐惧

  • 市值: $2.0544T -0.47%
  • 成交额(24h): $79.7284B 43.92%
  • 恐惧与贪婪指数:
  • 市值: $2.0544T -0.47%
加密货币
话题
百科
资讯
加密话题
视频
热门加密百科

选择语种

选择语种

选择货币

加密货币
话题
百科
资讯
加密话题
视频

如何修复 Kraken 交易 API 上的无效 API 签名错误?

Kraken API requires HMAC-SHA512 signatures built from `/endpoint + SHA256(nonce+postdata)`, using Base64-decoded secret—timestamps must be unique, millisecond-precise, and <60s old.

2026/06/27 02:59

了解 Kraken API 签名要求

1. Kraken对其交易端点的每个经过身份验证的请求强制执行严格的签名验证。

2. 签名必须使用 HMAC-SHA512 对特定的数据元素串联进行计算。

3. 每个请求都需要一个唯一的时间戳(以毫秒为单位),服务器拒绝早于 60 秒的请求。

4. POST 正文必须先编码为 URL 编码字符串,然后才能包含在签名库中。

5. 请求标头中使用的 API 密钥必须与用于签名的密钥相关联的密钥匹配。

正确的签名构建顺序

1. 将所有请求参数组装到字典中,不包括sign字段本身。

2. 按字母顺序对参数键进行排序,并将它们连接成格式为key1=value1&key2=value2 的单个字符串。

3. 将 API 端点路径(例如/0/private/AddOrder )添加到排序后的参数字符串中。

4. 使用 UTF-8 对生成的字符串进行编码,并使用解码的 Base64 API 密钥作为密钥来计算 HMAC-SHA512。

5. 将生成的摘要转换为 Base64 并将其作为签名参数包含在请求负载中。

Python 实现中常见的编码陷阱

1. 在将 Base64 编码的 API 密钥传递给hmac.new()之前未能对其进行解码会导致无效输出。

2. 在构建 POST 正文时使用原始 JSON 而不是 URL 编码的表单数据会导致签名输入不匹配。

3. 在连接之前将时间戳作为整数传递而不将其转换为字符串会引入静默类型错误。

4. 意外地对参数值进行双重编码(一次在 URL 编码期间,另一次在 JSON 序列化期间)会破坏签名对齐。

5. 忽略 JSON 有效负载中的空白规范化:Kraken 期望紧凑的 JSON 不含空格,因此必须强制执行分隔符 =(',', ':')

标头配置要点

1. API-Key标头必须包含在 Kraken 帐户仪表板上注册的确切 API 密钥字符串。

2. API-Sign标头必须携带 Base64 编码的 HMAC-SHA512 结果,而不是十六进制摘要或原始字节。

3. 对于所有专用端点, Content-Type标头必须设置为application/x-www-form-urlencoded

4. 标头中传递的时间戳必须与签名计算中使用的时间戳精确对齐,不允许舍入或截断。

5. 所有标题区分大小写; api-keyApi-Sign将立即验证失败。

无效签名响应故障排除

1. 使用mitmproxyWireshark等工具捕获完整的原始请求和响应正文,以比较预期签名输入与实际签名输入。

2. 在 Python REPL 中手动重建签名字符串,并验证每个组件的字节表示形式是否符合 Kraken 的期望。

3. 通过打印密钥长度(以字节为单位)来验证密钥的 Base64 解码 — Kraken 密钥解码为正好 64 字节,以实现 SHA512 兼容性。

4. 编码前确认参数值中不存在隐藏字符(如BOM、零宽空格)。

5. 在尝试私人调用之前,首先针对 Kraken 的/0/public/Time端点进行测试以验证时间戳同步。

常见问题解答

问:Kraken 是否需要像 KuCoin 一样单独签名密码?不会。Kraken 在其签名方案中不使用密码。 HMAC 计算中仅涉及 API 密钥和密钥。

问:我可以在多个请求中重复使用相同的签名吗?不会。每个签名都绑定到唯一的时间戳和参数集。重复使用签名会立即引发拒绝。

问:为什么我的签名在 Postman 中有效,但在 Python 中失败?这通常源于不一致的 URL 编码行为 — Postman 自动编码值,而 Python 的urllib.parse.urlencode()可能会省略某些字符的编码,除非明确配置。

问:Kraken API 参数值有最大长度限制吗? Kraken 没有施加任何记录的硬限制,但过长的值可能会由于 HTTP 传输或内部解析期间的静默截断而导致签名错位。

免责声明:info@kdj.com

所提供的信息并非交易建议。根据本文提供的信息进行的任何投资,kdj.com不承担任何责任。加密货币具有高波动性,强烈建议您深入研究后,谨慎投资!

如您认为本网站上使用的内容侵犯了您的版权,请立即联系我们(info@kdj.com),我们将及时删除。

相关百科

如何防范加密货币交易所的网络钓鱼诈骗?

如何防范加密货币交易所的网络钓鱼诈骗?

2026-07-01 10:40:16

严格启用双因素身份验证 (2FA) 1. 始终使用 Google Authenticator 或 Authy 等身份验证应用程序激活 2FA,而不是基于短信的验证,后者容易受到 SIM 交换的影响。 2. 将您的 2FA 备份代码存储在安全的离线位置,切勿存储在可通过网络浏览器访问的云笔记或电子邮件...

OKX上如何切换BTC和USDT市场?

OKX上如何切换BTC和USDT市场?

2026-06-28 07:40:28

访问交易界面1.通过官网或手机应用登录您的OKX账户。确保启用双因素身份验证以确保安全。 2. 导航至顶部菜单栏并单击“交易”。在下拉菜单中选择“现货”,进入现货交易界面。 3.默认视图显示BTC-USDT为主要交易对。该货币对出现在图表区域、订单簿和交易面板的显着位置。 4. 在开始任何市场切换或...

如何在Bybit上使用逐仓模式?

如何在Bybit上使用逐仓模式?

2026-06-28 16:20:23

了解逐仓模式1. 隔离保证金模式将固定数量的抵押品专门分配给单个仓位,防止未平仓交易之间的交叉污染。 2. 该模式允许交易者精确控制每份合约的风险敞口,非常适合具有不同波动性的多头寸策略。 3. 损失严格限制在指定保证金内——不会发生其他仓位或账户余额的自动提款。 4. Bybit在每个逐仓仓位旁显...

如何在KuCoin平台上设置交易机器人策略?

如何在KuCoin平台上设置交易机器人策略?

2026-07-01 06:19:35

了解KuCoin的机器人交易基础设施1. KuCoin通过其“交易机器人”模块提供原生算法交易工具,可直接从网络和移动界面访问,无需外部API集成。 2. 该平台支持三种主要机器人类型:网格机器人、DCA 机器人和美元成本平均机器人,每种机器人都针对不同的市场条件和风险状况量身定制。 3.所有机器人...

如何启用Kraken账户的安全密钥登录?

如何启用Kraken账户的安全密钥登录?

2026-06-29 17:39:50

安全密钥设置过程1. 使用您当前的凭据登录到您的 Kraken 帐户,然后导航至“帐户设置”下的“安全设置”部分。 2. 找到“两步验证”子部分并选择“添加新方法”。 3. 从可用选项中选择“安全密钥 (FIDO2)”,而不是短信或验证器应用程序。 4. 将您的物理安全密钥(例如 YubiKey)插...

如何查看币安合约的强平价格?

如何查看币安合约的强平价格?

2026-06-29 21:00:07

了解强平价格计算1、强平价格是交易所自动平仓杠杆仓位以防止进一步损失的市场价格。 2. 取决于合约具体的仓位规模、入场价格、杠杆水平和维持保证金率。 3. 对于全仓保证金,强平价格会随着未实现盈亏的积累或可用保证金的减少而动态变化。 4、逐仓杠杆仓位仅根据分配保证金和当前标记价格计算强平价格。 5....

如何防范加密货币交易所的网络钓鱼诈骗?

如何防范加密货币交易所的网络钓鱼诈骗?

2026-07-01 10:40:16

严格启用双因素身份验证 (2FA) 1. 始终使用 Google Authenticator 或 Authy 等身份验证应用程序激活 2FA,而不是基于短信的验证,后者容易受到 SIM 交换的影响。 2. 将您的 2FA 备份代码存储在安全的离线位置,切勿存储在可通过网络浏览器访问的云笔记或电子邮件...

OKX上如何切换BTC和USDT市场?

OKX上如何切换BTC和USDT市场?

2026-06-28 07:40:28

访问交易界面1.通过官网或手机应用登录您的OKX账户。确保启用双因素身份验证以确保安全。 2. 导航至顶部菜单栏并单击“交易”。在下拉菜单中选择“现货”,进入现货交易界面。 3.默认视图显示BTC-USDT为主要交易对。该货币对出现在图表区域、订单簿和交易面板的显着位置。 4. 在开始任何市场切换或...

如何在Bybit上使用逐仓模式?

如何在Bybit上使用逐仓模式?

2026-06-28 16:20:23

了解逐仓模式1. 隔离保证金模式将固定数量的抵押品专门分配给单个仓位,防止未平仓交易之间的交叉污染。 2. 该模式允许交易者精确控制每份合约的风险敞口,非常适合具有不同波动性的多头寸策略。 3. 损失严格限制在指定保证金内——不会发生其他仓位或账户余额的自动提款。 4. Bybit在每个逐仓仓位旁显...

如何在KuCoin平台上设置交易机器人策略?

如何在KuCoin平台上设置交易机器人策略?

2026-07-01 06:19:35

了解KuCoin的机器人交易基础设施1. KuCoin通过其“交易机器人”模块提供原生算法交易工具,可直接从网络和移动界面访问,无需外部API集成。 2. 该平台支持三种主要机器人类型:网格机器人、DCA 机器人和美元成本平均机器人,每种机器人都针对不同的市场条件和风险状况量身定制。 3.所有机器人...

如何启用Kraken账户的安全密钥登录?

如何启用Kraken账户的安全密钥登录?

2026-06-29 17:39:50

安全密钥设置过程1. 使用您当前的凭据登录到您的 Kraken 帐户,然后导航至“帐户设置”下的“安全设置”部分。 2. 找到“两步验证”子部分并选择“添加新方法”。 3. 从可用选项中选择“安全密钥 (FIDO2)”,而不是短信或验证器应用程序。 4. 将您的物理安全密钥(例如 YubiKey)插...

如何查看币安合约的强平价格?

如何查看币安合约的强平价格?

2026-06-29 21:00:07

了解强平价格计算1、强平价格是交易所自动平仓杠杆仓位以防止进一步损失的市场价格。 2. 取决于合约具体的仓位规模、入场价格、杠杆水平和维持保证金率。 3. 对于全仓保证金,强平价格会随着未实现盈亏的积累或可用保证金的减少而动态变化。 4、逐仓杠杆仓位仅根据分配保证金和当前标记价格计算强平价格。 5....

查看所有文章

User not found or password invalid

Your input is correct