26 Go语言的哈希函数

Go语言的哈希函数

1.MD5

​ MD5是一种广泛使用的哈希算法,它将任意长度的数据映射为128位的哈希值。但由于其安全性问题,不建议在安全敏感的场景中使用。

import (
"crypto/md5"
"fmt"
)

func main() {
data := []byte("Hello, World!")
hash := md5.Sum(data)
fmt.Printf("%x\n", hash)
}

2.SHA-1

​ SHA-1是一种常用的哈希函数,将任意长度的数据映射为160位的哈希值。然而,与MD5一样,SHA-1也存在安全性问题,不再推荐使用。

import (
"crypto/sha1"
"fmt"
)

func main() {
data := []byte("Hello, World!")
hash := sha1.Sum(data)
fmt.Printf("%x\n", hash)
}

3.SHA-256

​ SHA-256是SHA-2系列中的一种哈希函数,将任意长度的数据映射为256位的哈希值。SHA-256是目前广泛使用的安全哈希算法之一。

import (
"crypto/sha256"
"fmt"
)

func main() {
data := []byte("Hello, World!")
hash := sha256.Sum256(data)
fmt.Printf("%x\n", hash)
}