这篇文章主要介绍“Go实现MD5加密的方法有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Go实现MD5加密的方法有哪些”文章能帮助大家解决问题。
第一种方法:md5.New() 和 Write
package main
import (
"crypto/md5"
"encoding/hex"
"fmt"
)
func main() {
str := "123456"
data := []byte(str)
md5New := md5.New()
md5New.Write(data)
// hex转字符串
md5String := hex.EncodeToString(md5New.Sum(nil))
fmt.Println(md5String)
// e10adc3949ba59abbe56e057f20f883e
}
第二种方法:md5.New() 和 io.WriteString
package main
import (
"crypto/md5"
"encoding/hex"
"fmt"
"io"
)
func main() {
h := md5.New()
io.WriteString(h, "123456")
sum := h.Sum(nil)
fmt.Println(hex.EncodeToString(sum[:]))
// e10adc3949ba59abbe56e057f20f883e
}
第三种方法:md5.Sum
package main
import (
"crypto/md5"
"encoding/hex"
"fmt"
)
func main() {
data := []byte("123456")
sum := md5.Sum(data)
// hex转字符串
md5String := hex.EncodeToString(sum[:])
fmt.Println(md5String)
// e10adc3949ba59abbe56e057f20f883e
// 同
fmt.Printf("%x", md5.Sum(data))
}