第一种方法: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" ) fphpunc main() { h := 开发者_JAVA教程md5.New() io.WriteString(h, "123456") sum := h.Sum(nil) fmt.Println(hex.EncodeToString(sum[:])) // e10adc394www.devze.com9ba59abbe56e057f20f883e }
第三种方法:md5.Sum
package main import ( "crypto/md5" "encoding/hex" "fmt" ) func main() { data := []byte("123456") sum := androidmd5.Sum(data) // hex转字符串 md5String := hex.EncodeTopythonString(sum[:]) fmt.Println(md5String) // e10adc3949ba59abbe56e057f20f883e // 同 fmt.Printf("%x", md5.Sum(data)) }
参考
https://syaning.github.io/go-pkgs/crypto/mdpython5.html
http://doc.golang.ltd/pkg/crypto_md5.htm到此这篇关于Go实现MD5加密的三种方法小结的文章就介绍到这了,更多相关Go MD5加密内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
精彩评论