Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1082692
  • 博文数量: 80
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 746
  • 用 户 组: 普通用户
  • 注册时间: 2018-06-12 20:01
个人简介

寫写code、调調bug、填填坑,僅此而已。

文章分类

全部博文(80)

文章存档

2019年(30)

2018年(50)

分类: C/C++

2019-01-25 17:24:49


点击(此处)折叠或打开

  1. package main

  2. import (
  3.     "crypto/x509"
  4.     "flag"
  5.     "fmt"
  6.     "log"
  7.     "os"
  8.     "strconv"
  9. )

  10. var certname = flag.String("certname", "test.der", "input you certname")

  11. func getCertInfo() {

  12.     if len(os.Args) != 2 {
  13.         log.Fatal("input certname....")
  14.         return
  15.     }
  16.     flag.Parse()
  17.     certCerFile, err := os.Open(*certname)

  18.     if err != nil {
  19.         log.Fatal(err)
  20.     }
  21.     derBytes := make([]byte, 1000)
  22.     count, err := certCerFile.Read(derBytes)
  23.     if err != nil {
  24.         log.Fatal(err)
  25.     }
  26.     certCerFile.Close()
  27.     cert, err := x509.ParseCertificate(derBytes[0:count])
  28.     if err != nil {
  29.         log.Fatal(err)
  30.     }

  31.     expiretime := strconv.FormatInt(cert.NotAfter.Unix(), 10)
  32.     fmt.Printf(expiretime);
  33.     extension := cert.Extensions

  34.     if len(extension) > 0 {
  35.         fmt.Printf(extension);
  36.     }

  37. }
  38. func main() {
  39.     getCertInfo()
  40. }

阅读(6898) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~