package utils import ( "crypto/md5" "encoding/hex" "fmt" "io" "strings" ) func Md5(str string) string { h := md5.New() h.Write([]byte(str)) return hex.EncodeToString(h.Sum(nil)) } /* MD5ToUpper32 将字符串,转为32位md5加密,返回大写字母 */ func MD5ToUpper32(str string) string { w := md5.New() io.WriteString(w, str) //将str写入到w中 md5Str := fmt.Sprintf("%x", w.Sum(nil)) //w.Sum(nil)将w的hash转成[]byte格式 return strings.ToUpper(md5Str) } /* MD5ToLower32 将字符串,转为32位md5加密,返回小写字母 */ func MD5ToLower32(str string) string { w := md5.New() io.WriteString(w, str) //将str写入到w中 md5Str := fmt.Sprintf("%x", w.Sum(nil)) //w.Sum(nil)将w的hash转成[]byte格式 return md5Str }