From bd9151d3f3f97168046649f11c4615d3440da742 Mon Sep 17 00:00:00 2001 From: duyu Date: Wed, 24 Jul 2024 11:17:25 +0800 Subject: [PATCH] fix --- app/http/middlewares/sign_verify.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/app/http/middlewares/sign_verify.go b/app/http/middlewares/sign_verify.go index 6a17550..76d325a 100644 --- a/app/http/middlewares/sign_verify.go +++ b/app/http/middlewares/sign_verify.go @@ -25,7 +25,7 @@ func getMD5Hash(input string) string { return hex.EncodeToString(hash[:]) } -func GenMD5Sign(data map[string]interface{}, secretKey string) string { +func GenMD5Sign(data map[string]interface{}, secretKey string) (string,string) { keys := make([]string, 0, len(data)) for key := range data { if key != "sign" && key != "Sign" { @@ -43,8 +43,9 @@ func GenMD5Sign(data map[string]interface{}, secretKey string) string { rawStr += fmt.Sprintf("%s=%s", key, value) } rawStr += "&key=" + secretKey + // fmt.Println(rawStr) sign := strings.ToUpper(getMD5Hash(rawStr)) - return sign + return sign,rawStr } func VerifySign() gin.HandlerFunc { @@ -81,8 +82,12 @@ func VerifySign() gin.HandlerFunc { return } //验证签名是否正确 - hash := GenMD5Sign(data, merchant.PrivateKey) + data["time_stamp"] = int(data["time_stamp"].(float64)) + hash,rawStr := GenMD5Sign(data, merchant.PrivateKey) + // fmt.Println(hash) + logger.Info(c, "RawStr", rawStr) logger.Info(c, "Sign", hash) + if hash != data["sign"] { common.Error(c, 400, "签名错误") c.Abort()