点击(此处)折叠或打开
- package main
- import (
- "crypto/x509"
- "flag"
- "fmt"
- "log"
- "os"
- "strconv"
- )
- var certname = flag.String("certname", "test.der", "input you certname")
- func getCertInfo() {
- if len(os.Args) != 2 {
- log.Fatal("input certname....")
- return
- }
- flag.Parse()
- certCerFile, err := os.Open(*certname)
- if err != nil {
- log.Fatal(err)
- }
- derBytes := make([]byte, 1000)
- count, err := certCerFile.Read(derBytes)
- if err != nil {
- log.Fatal(err)
- }
- certCerFile.Close()
- cert, err := x509.ParseCertificate(derBytes[0:count])
- if err != nil {
- log.Fatal(err)
- }
- expiretime := strconv.FormatInt(cert.NotAfter.Unix(), 10)
- fmt.Printf(expiretime);
- extension := cert.Extensions
- if len(extension) > 0 {
- fmt.Printf(extension);
- }
- }
- func main() {
- getCertInfo()
- }