Skip to main content

go-md5

GO语言 MD5 四种实现方式/及 BASE64加解密

第一种

func md5_1(s string) {
m := md5.New()
m.Write([]byte (s))
fmt.Println(hex.EncodeToString(m.Sum(nil)))
}

第二种

func md5_2(s string) {
m := md5.Sum([]byte (s))
fmt.Println(hex.EncodeToString(m[:]))
}

第三种

func md5_3(s string) {
m := md5.Sum([]byte(s))
fmt.Printf("%x", m)
fmt.Println()
}

第四种

func md5_4(s string) {
m := md5.New()
io.WriteString(m, s)
fmt.Println(hex.EncodeToString(m.Sum(nil)))
}

解密

hex.DecodeString(string)

Base64 加解密

const (
base64Table = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
)

var coder = base64.NewEncoding(base64Table)

func Base64Encode(src []byte) []byte {
return []byte(coder.EncodeToString(src))
}

func Base64Decode(src []byte) ([]byte, error) {
return coder.DecodeString(string(src))
}

===============================分割线(另一种方法sursen)=========================================
//加密
base64.StdEncoding.EncodeToString([]byte])
//解密
base64.StdEncoding.DecodeString(string)