英文:
How to get a MD5 hash from a string in Golang?
问题
这是我开始从一个字符串获取md5
哈希值的方法:
import "crypto/md5"
var original = "我的字符串在这里"
var hash = md5.New(original)
但显然这不是正确的方法。有人能提供一个可行的示例吗?
英文:
This is how I started to get a md5
hash from a string
:
import "crypto/md5"
var original = "my string comes here"
var hash = md5.New(original)
But obviously this is not how it works. Can someone provide me a working sample for this?
答案1
得分: 120
import (
"crypto/md5"
"encoding/hex"
)
func GetMD5Hash(text string) string {
hash := md5.Sum([]byte(text))
return hex.EncodeToString(hash[:])
}
英文:
import (
"crypto/md5"
"encoding/hex"
)
func GetMD5Hash(text string) string {
hash := md5.Sum([]byte(text))
return hex.EncodeToString(hash[:])
}
答案2
得分: 107
参考Sum,对我来说,以下代码运行良好:
package main
import (
"crypto/md5"
"fmt"
)
func main() {
data := []byte("hello")
fmt.Printf("%x", md5.Sum(data))
}
英文:
Reference Sum,For me,following work well:
package main
import (
"crypto/md5"
"fmt"
)
func main() {
data := []byte("hello")
fmt.Printf("%x", md5.Sum(data))
}
答案3
得分: 43
我发现这个解决方案很有效
package main
import (
"crypto/md5"
"encoding/hex"
"fmt"
)
func main() {
var str string = "你好世界"
hasher := md5.New()
hasher.Write([]byte(str))
fmt.Println(str)
fmt.Println(hex.EncodeToString(hasher.Sum(nil)))
}
英文:
I found this solution to work well
package main
import (
"crypto/md5"
"encoding/hex"
"fmt"
)
func main() {
var str string = "hello world"
hasher := md5.New()
hasher.Write([]byte(str))
fmt.Println(str)
fmt.Println(hex.EncodeToString(hasher.Sum(nil)))
}
答案4
得分: 38
从crypto/md5文档中:
package main
import (
"crypto/md5"
"fmt"
"io"
)
func main() {
h := md5.New()
io.WriteString(h, "The fog is getting thicker!")
fmt.Printf("%x", h.Sum(nil))
}
英文:
From crypto/md5 doc:
package main
import (
"crypto/md5"
"fmt"
"io"
)
func main() {
h := md5.New()
io.WriteString(h, "The fog is getting thicker!")
fmt.Printf("%x", h.Sum(nil))
}
答案5
得分: 19
我用这个来对我的字符串进行MD5哈希:
import (
"crypto/md5"
"encoding/hex"
)
func GetMD5Hash(text string) string {
hasher := md5.New()
hasher.Write([]byte(text))
return hex.EncodeToString(hasher.Sum(nil))
}
英文:
I use this to MD5 hash my strings:
import (
"crypto/md5"
"encoding/hex"
)
func GetMD5Hash(text string) string {
hasher := md5.New()
hasher.Write([]byte(text))
return hex.EncodeToString(hasher.Sum(nil))
}
答案6
得分: 6
这里是一个你可以用来生成MD5哈希值的函数:
// 使用md5算法进行MD5哈希
func MD5(text string) string {
algorithm := md5.New()
algorithm.Write([]byte(text))
return hex.EncodeToString(algorithm.Sum(nil))
}
我在这里组合了一组实用的哈希函数:https://github.com/shomali11/util
你会找到 FNV32
, FNV32a
, FNV64
, FNV65a
, MD5
, SHA1
, SHA256
和 SHA512
英文:
Here is a function you could use to generate an MD5 hash:
// MD5 hashes using md5 algorithm
func MD5(text string) string {
algorithm := md5.New()
algorithm.Write([]byte(text))
return hex.EncodeToString(algorithm.Sum(nil))
}
I put together a group of those utility hash functions here: https://github.com/shomali11/util
You will find FNV32
, FNV32a
, FNV64
, FNV65a
, MD5
, SHA1
, SHA256
and SHA512
答案7
得分: 2
只是另一个答案
// 使用md5算法进行MD5哈希
func MD5(text string) string {
data := []byte(text)
return fmt.Sprintf("%x", md5.Sum(data))
}
英文:
just another answer
// MD5 hashes using md5 algorithm
func MD5(text string) string {
data := []byte(text)
return fmt.Sprintf("%x", md5.Sum(data))
}
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论