const ( RANDOM_STR = "qwertyuioplkjhgfdsazxcvbnm123456789.+-*/0=_-)(*&^%$#@!~" ) //小写的 func Md5Encode(data string) string{ h := md5.New() h.Write([]byte(data)) // 需要加密的字符串为 123456 cipherStr := h.Sum(nil) return hex.EncodeToString(cipherStr) } //大写 func MD5Encode(data string) string{ return strings.ToUpper(Md5Encode(data)) } func ValidatePasswd(plainpwd,salt,passwd string) bool{ return Md5Encode(plainpwd+salt)==passwd } func MakePasswd(plainpwd,salt string) string{ return Md5Encode(plainpwd+salt) } func GenerateSalt(length int) (str string) { // 生成指定位数的随机字符串 rand.Seed(time.Now().UnixNano()) // 随机种子 for i := 0; i < length; i++ { ii := rand.Intn(len(RANDOM_STR)) str += string(RANDOM_STR[ii]) } return }