crypto/md5

md5包

  • import "crypto/md5"

  • 概述

  • 索引

  • 示例

概述

md5 包实现了 RFC 1321 中定义的 MD5 哈希算法。

MD5 是加密破解的,不应用于安全应用程序。

索引

  • Constants

  • func New() hash.Hash

  • func Sum(data []byte) [Size]byte

示例

New New (File) Sum

文件包

md5.go md5block.go md5block_decl.go

常量

以字节为单位的MD5块大小。

const BlockSize = 64

MD5 校验和的大小(以字节为单位)。

const Size = 16

func New(查看源代码)

func New() hash.Hash

New 返回一个新的散列.Hash 计算 MD5 校验和。

示例

package main import ( "crypto/md5" "fmt" "io" ) func main() { h := md5.New() io.WriteString(h, "The fog is getting thicker!") io.WriteString(h, "And Leon's getting laaarger!") fmt.Printf("%x", h.Sum(nil)) }

示例(File)

package main import ( "crypto/md5" "fmt" "io" "log" "os" ) func main() { f, err := os.Open("file.txt") if err != nil { log.Fatal(err) } defer f.Close() h := md5.New() if _, err := io.Copy(h, f err != nil { log.Fatal(err) } fmt.Printf("%x", h.Sum(nil)) }

func Sum(查看源代码)

func Sum(data []byte) [Size]byte

总和返回数据的 MD5 校验和。

示例

package main import ( "crypto/md5" "fmt" ) func main() { data := []byte("These pretzels are making me thirsty.") fmt.Printf("%x", md5.Sum(data)) }