Go實(shí)現(xiàn)MD5加密的三種方法小結(jié)
第一種方法: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轉(zhuǎn)字符串 ?? ?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轉(zhuǎn)字符串 ?? ?md5String := hex.EncodeToString(sum[:]) ?? ?fmt.Println(md5String) ?? ?// e10adc3949ba59abbe56e057f20f883e ?? ?// 同 ?? ?fmt.Printf("%x", md5.Sum(data)) }
參考
https://syaning.github.io/go-pkgs/crypto/md5.html
http://doc.golang.ltd/pkg/crypto_md5.htm
到此這篇關(guān)于Go實(shí)現(xiàn)MD5加密的三種方法小結(jié)的文章就介紹到這了,更多相關(guān)Go MD5加密內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
如何go語(yǔ)言比較兩個(gè)對(duì)象是否深度相同
這篇文章主要介紹了如何go語(yǔ)言比較兩個(gè)對(duì)象是否深度相同,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-05-05golang實(shí)現(xiàn)java uuid的序列化方法
這篇文章主要介紹了golang實(shí)現(xiàn)java uuid的序列化方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09使用Go語(yǔ)言實(shí)現(xiàn)找出兩個(gè)大文件中相同的記錄
這篇文章主要為大家詳細(xì)介紹了使用Go語(yǔ)言實(shí)現(xiàn)找出兩個(gè)大文件中相同的記錄的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-10-10Kubernetes上使用Jaeger分布式追蹤基礎(chǔ)設(shè)施詳解
這篇文章主要為大家介紹了Kubernetes上使用Jaeger分布式追蹤基礎(chǔ)設(shè)施詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03