Golang Gorilla CEX.IO Websocket 认证错误

huangapple go评论89阅读模式
英文:

Golang Gorilla CEX.IO Websocket authentication error

问题

我目前正在尝试连接到CEX.IO比特币交易所的WebSocket。WebSocket连接正常,但在进行身份验证时,我遇到了错误:“时间戳不在20秒范围内”。我不知道这个错误是什么意思。

createSignature的测试用例1和2是正确的(https://cex.io/websocket-api#authentication)。

身份验证的Go代码:

func toHmac256(message string, secret string) string {
    key := []byte(secret)
    h := hmac.New(sha256.New, key)
    h.Write([]byte(message))
    return strings.ToUpper(hex.EncodeToString(h.Sum(nil)))
}

func Signature() (string, string) {
    nonce := time.Now().Unix()  // 使用Cerise Limón的答案进行编辑
    message := strconv.FormatInt(nonce, 10) + "API-KEY"
    signature := api.toHmac256(message, "SECRET-KEY")
    return signature, nonce
}
英文:

I'm currently trying to connect to the CEX.IO bitcoin exchange's websocket.
Websocket connection is OK but at the time of authentication, I have the error: Timestamp is not in 20sec range. I don't know what this error.

Test case 1 & 2 for createSignature is OK (https://cex.io/websocket-api#authentication).

Authentication Go code :

func toHmac256(message string, secret string) string {
	key := []byte(secret)
	h := hmac.New(sha256.New, key)
	h.Write([]byte(message))
	return strings.ToUpper(hex.EncodeToString(h.Sum(nil)))
}

func Signature() (string, string) {
    nonce := time.Now().Unix()  // Edit with Cerise Limón answer
    message := strconv.FormatInt(nonce, 10) + "API-KEY"
	signature := api.toHmac256(message, "SECRET-KEY")
	return signature, nonce
}

答案1

得分: 1

错误消息告诉你,时间戳与当前时间相差超过20秒。

API要求使用秒而不是纳秒表示时间。使用Unix将时间转换为秒。

     nonce := time.Now().Unix()

Unix时间是从1970年1月1日UTC开始计算的秒数。

如果这个方法失败了,检查一下系统时间是否正确设置到秒。

英文:

The error message is telling you that the timestamp is more than 20 seconds away from the current time.

The API expects time in seconds, not nanoseconds. Use Unix to get the time in seconds.

     nonce := time.Now().Unix()

Unix time is is seconds since Jan 01 1970 UTC.

If this fails, then check that your system time is set correctly down to the second.

huangapple
  • 本文由 发表于 2017年7月2日 23:47:55
  • 转载请务必保留本文链接:https://go.coder-hub.com/44872595.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定