golang中使用crypto md5


golang中md5包实现了MD5哈希算法

1、常量-Constants

const BlockSize = 64

2、MD5字节块大小。

const Size = 16

3、MD5校验和字节数 func Sum

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

返回数据data的MD5校验和。

下面来举个例子吧

在src目录新建一个目录cryptoDemo,在目录下再新建一个md5Demo.go

package cryptoDemo

import (
    "crypto/md5"
    "fmt"
    "io"
)

func Md5Demo(s string) [16]byte {

    data := []byte(s)

    return md5.Sum(data)
}

//返回一个新的使用MD5校验的hash.Hash接口。
func Md5HashDemo(s,s1 string){
    h := md5.New()
    io.WriteString(h, s)
    io.WriteString(h, s1)
    fmt.Printf("%x\n", h.Sum(nil)) 
}

然后在main里面调用上面的二个方法:

package main

import (
    "fmt"
    "test.cn/src/cryptoDemo"
)

func main() {

    s := cryptoDemo.Md5Demo("fullstack!fullbook")

    fmt.Printf("%x\n", s)

    fmt.Println()

    cryptoDemo.Md5HashDemo("fullstack!", "fullbook")
}

执行main.go得到如下结果:


原文链接:https://blog.csdn.net/longzhoufeng/article/details/113249330