tkcashgame_v4/pkg/utils/md5.go

38 lines
749 B
Go
Raw Permalink Normal View History

2025-10-22 10:01:11 +00:00
package utils
import (
"crypto/hmac"
"crypto/md5"
"crypto/sha256"
"encoding/base64"
"encoding/hex"
"encoding/json"
"fmt"
)
func MD5Base64(content []byte) string {
h := md5.New()
h.Write(content)
return base64.StdEncoding.EncodeToString(h.Sum(nil))
}
func MD5Hex(content []byte) string {
h := md5.New()
h.Write(content)
return hex.EncodeToString(h.Sum(nil))
}
func HmacSha256(data string, secret string) string {
h := hmac.New(sha256.New, []byte(secret))
h.Write([]byte(data))
//return base64.StdEncoding.EncodeToString(h.Sum(nil))
return hex.EncodeToString(h.Sum(nil))
}
// MD5Any 仅仅是为了判断唯一性
func MD5Any(v any) string {
b, _ := json.Marshal(v)
md5Bytes := md5.Sum(b)
return fmt.Sprintf("%x", md5Bytes)
}