Go1.9获取rsa证书的指纹码

package main

import (
    "crypto/sha1"
    "encoding/hex"
    "fmt"

    "github.com/czxichen/work-stacks/tools/encrypt"
)

const c = `-----BEGIN CERTIFICATE-----
MIICeTCCAiOgAwIBAgIICqroUds7aqYwDQYJKoZIhvcNAQELBQAwaTELMAkGA1UE
BhMCQ04xEDAOBgNVBAgTB0ppYW5nU3UxDzANBgNVBAcTBlN1WmhvdTELMAkGA1UE
ChMCV1MxFDASBgNVBAsTC3dvcmstc3RhY2tzMRQwEgYDVQQDEwtXb3JrLXN0YWNr
czAeFw0xNzA5MjgwODUzMzhaFw0yMjA5MjgwODUzMzhaMHIxCzAJBgNVBAYTAkNI
MRAwDgYDVQQIEwdKaWFuZ1N1MQ8wDQYDVQQHEwZTdVpob3UxHDAaBgNVBAoTE3d3
dy53b3JrLXN0YWNrcy5jb20xDTALBgNVBAsTBFBhYXMxEzARBgNVBAMTCjIwMTct
MDktMjUwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAL5BmTcl0sWC7ATaOqDL
WVu+eAouY/yrjx7d3eISjGBttyZ10zYCZqeutQUEH9Y9SYlki65y4TFLfRSBSISF
kQtEf/sEeoaaxFn9nTzS6QVVnVShJuaGQMZIl5ofRi8UnFHG2qmq4ZjUqTTRthBC
b/gO7KfVWSkv5wfdK41t2Zf5AgMBAAGjYjBgMA4GA1UdDwEB/wQEAwIChDAdBgNV
HSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADAhBgNVHREE
GjAYgRBjenhpY2hlbkAxNjMuY29thwR/AAABMA0GCSqGSIb3DQEBCwUAA0EAN4S1
ynHWme57wzyhqYPm8AOnwiIwgmR6VhvvKsSpdWCNDnUX49SmvJvjWRnAa/XW9rIJ
bwEHORER2wvhprAN1A==
-----END CERTIFICATE-----
`

func main() {
    cc, err := encrypt.ParseCrt([]byte(c))
    if err != nil {
        fmt.Printf("Parse crt error:%s\n", err.Error())
        return
    }
    h := sha1.New()
    h.Write(cc.Raw)
    s := hex.EncodeToString(h.Sum(nil))
    fmt.Println(s)
}

猜你喜欢

转载自blog.csdn.net/fyxichen/article/details/78275219