package sha import ( "crypto/hmac" "crypto/sha1" "crypto/sha256" "encoding/base64" "encoding/hex" ) func Sha1(src string) string { h := sha1.New() h.Write([]byte(src)) sh := hex.EncodeToString(h.Sum(nil)) return sh } func Sha256(src string) string { m := sha256.New() m.Write([]byte(src)) res := hex.EncodeToString(m.Sum(nil)) return res } func HmacSha256Base64(src, secret string) string { h := hmac.New(sha256.New, []byte(secret)) h.Write([]byte(src)) sign := base64.StdEncoding.EncodeToString(h.Sum(nil)) return sign }