crypto包搜集了常用的密码(算法)常量。
使用不同的hash 算法导入不同的包

const (
    MD4         Hash = 1 + iota // import golang.org/x/crypto/md4
    MD5                         // import crypto/md5
    SHA1                        // import crypto/sha1
    SHA224                      // import crypto/sha256
    SHA256                      // import crypto/sha256
    SHA384                      // import crypto/sha512
    SHA512                      // import crypto/sha512
    MD5SHA1                     // no implementation; MD5+SHA1 used for TLS RSA
    RIPEMD160                   // import golang.org/x/crypto/ripemd160
    SHA3_224                    // import golang.org/x/crypto/sha3
    SHA3_256                    // import golang.org/x/crypto/sha3
    SHA3_384                    // import golang.org/x/crypto/sha3
    SHA3_512                    // import golang.org/x/crypto/sha3
    SHA512_224                  // import crypto/sha512
    SHA512_256                  // import crypto/sha512
    BLAKE2s_256                 // import golang.org/x/crypto/blake2s
    BLAKE2b_256                 // import golang.org/x/crypto/blake2b
    BLAKE2b_384                 // import golang.org/x/crypto/blake2b
    BLAKE2b_512                 // import golang.org/x/crypto/blake2b

)

crypto实现md5的示例

package main

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

func main() {
    fmt.Println("go-crypto/md5 demo.")
    str := "https://const.net.cn"

    data := []byte(str)
    has := md5.Sum(data)
    md5str1 := fmt.Sprintf("%x", has)
    fmt.Println(md5str1)

    str1 := "https://"
    str2 := "const.net.cn"
    w := md5.New()
    io.WriteString(w, str1)
    io.WriteString(w, str2)
    md5str2 := fmt.Sprintf("%x", w.Sum(nil))

    fmt.Println(md5str2)
}

输出:

go run .
go-crypto/md5 demo.
682d2c63236af6e721794b2988fc1d44
682d2c63236af6e721794b2988fc1d44
echo -n "https://const.net.cn" | md5sum 
682d2c63236af6e721794b2988fc1d44  -
echo -n "https://const.net.cn" | openssl dgst -md5
(stdin)= 682d2c63236af6e721794b2988fc1d44
本文链接地址:https://const.net.cn/44.html

标签: md5

添加新评论