Read basic info (subject, altnames, expiresAt, issuedAt) from a cert.pem / x509 certificate (tls / ssl / https)
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
AJ ONeal a7722dea19 v1.5.1: bugfix increase loop limit to allow for 100+ domains vor 5 Jahren
bin v1.5.0: 💯 parse HTTPS certificate info in a focused, lightweight, zero-dependency library vor 5 Jahren
lib v1.5.1: bugfix increase loop limit to allow for 100+ domains vor 5 Jahren
.gitignore Initial commit vor 8 Jahren
LICENSE v1.5.0: 💯 parse HTTPS certificate info in a focused, lightweight, zero-dependency library vor 5 Jahren
README.md v1.5.0: 💯 parse HTTPS certificate info in a focused, lightweight, zero-dependency library vor 5 Jahren
cert.pem v1.0.0 vor 8 Jahren
index.js v1.5.0: 💯 parse HTTPS certificate info in a focused, lightweight, zero-dependency library vor 5 Jahren
package.json v1.5.1: bugfix increase loop limit to allow for 100+ domains vor 5 Jahren
test.js v1.5.0: 💯 parse HTTPS certificate info in a focused, lightweight, zero-dependency library vor 5 Jahren

README.md

cert-info.js

Read basic info from a cert.pem / x509 certificate.

Used for Greenlock.js

Features

| <175 lines of code | 1.7k gzipped | 4.4k minified | 8.8k with comments |

  • Parses x.509 certificate schemas
    • DER/ASN.1
    • PEM (base64-encoded DER)
    • Subject
    • SAN extension (altNames)
    • Issuance Date (notBefore)
    • Expiry Date (notAfter)
  • VanillaJS, Zero Dependencies
    • Node.js
    • Browsers (built, publishing soon)

Install

# bin
npm install --global cert-info

# node.js library
npm install --save cert-info

Usage

CLI

For basic info (subject, altnames, issuedAt, expiresAt):

cert-info /path/to/cert.pem

node.js

'use strict';

var certinfo = require('cert-info');
var cert = fs.readFile('cert.pem', 'ascii', function (err, certstr) {

  // basic info
  console.info(certinfo.info(certstr));

  // if you need to submit a bug report
  console.info(certinfo.debug(certstr));
});

Example output:

{
  "subject": "localhost.example.com",
  "altnames": [
    "localhost.example.com"
  ],
  "issuedAt": 1465516800000,
  "expiresAt": 1499731199000
}

With a few small changes this could also work in the browser (it has no dependencies and all of the non-browser things are on the Enc object).

Legal

cert-info.js | MPL-2.0 | Terms of Use | Privacy Policy