网络编程
位置:首页>> 网络编程>> Go语言>> Go实现MD5加密的三种方法小结

Go实现MD5加密的三种方法小结

作者:小龙在山东  发布时间:2024-02-08 03:47:37 

标签: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))
}

参考

https://syaning.github.io/go-pkgs/crypto/md5.html
http://doc.golang.ltd/pkg/crypto_md5.htm

来源:https://lilongsy.blog.csdn.net/article/details/128336617

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com