【发布时间】:2020-08-09 19:18:18
【问题描述】:
我已经通过下一条命令生成了自签名证书:
/bin/bash -c 'openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 5 -nodes
并检查证书,它在接下来的 5 天内有效。
我需要编写脚本来检查此证书的到期日期,但不幸的是它无法验证它。 你能不能换个正确的流程?
我的程序:
package main
import (
"crypto/x509"
"encoding/pem"
"fmt"
)
func main() {
const certPEM = `
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----`
block, _ := pem.Decode([]byte(certPEM))
if block == nil {
panic("failed to parse certificate PEM")
}
cert, err := x509.ParseCertificate(block.Bytes)
if err != nil {
panic("failed to parse certificate: " + err.Error())
}
opts := x509.VerifyOptions{
DNSName: "test.com",
}
if _, err := cert.Verify(opts); err != nil {
panic("failed to verify certificate: " + err.Error())
}
fmt.Println("correct")
}
我遇到的下一个错误:
恐慌:无法验证证书:x509:证书由 未知权限
【问题讨论】: