api - FTX FIX 协议返回“无效签名”消息
问题描述
我一直在尝试在 Go 中实现一个 FIX 客户端来与 FTX 交互。为了发送初始登录消息,FTX 的 API 文档要求客户端在消息中包含签名。
在 FTX 的返回消息中,它显示“无效签名”。
下面是我生成签名的实现:
func signatureGenerator(msgType, msgSeqNum, senderCompID, targetCompID string) string {
timeNow := time.Now().UTC().Format("20060102-15:04:05")
message := [][]byte{[]byte(timeNow),
[]byte(msgType),
[]byte(msgSeqNum),
[]byte(senderCompID),
[]byte(targetCompID)}
SOH := []byte{0x01}
signature := bytes.Join(message, SOH)
signSha256 := hmac.New(sha256.New, []byte(userInfo.CLIENT_API_SECRET))
signSha256.Write(signature)
strSig := hex.EncodeToString(signSha256.Sum(nil))
return strSig
}
解决方案
推荐阅读
- security - 如何使用 GDB 创建/导出二进制文件
- firebase - 我的应用在 iPhone 上运行时未在 Android 设备上运行
- c - 如何让我的代码在 C 中重复相同的问题
- akka - 如何用虚拟时间测试 Akka 演员?
- telegram - 如何通过电报发送通过谷歌表格发布的图表
- javascript - Discord.js 如果功能问题
- java - Graphics2D 和 GUI:方法的 ArrayList、方法引用错误
- c# - 根据页面对模型进行不同的验证
- php - 在数组递归php中添加数据
- javascript - 应用程序运行一段时间后节点 cron 任务不工作(node-cron、cronr、timexe)