Objecte objecte incorporat

ObjectX509Cert

X509Cert SícryptoL'objecte que representa el certificat x509 al mòdul. Aquest objecte inclou principalment informació de certificat i mètodes construïts a partir de dades de certificat en format DER o PEM i dades de cadena de certificats. Pot realitzar operacions com ara l'anàlisi i la verificació de certificats.

Mitjançant l'objecte X509Cert, podeu obtenir el nom del subjecte del certificat, el nom de l'emissor, el temps de transmissió, el temps de caducitat, la verificació de CA i altra informació. També podeu exportar la codificació DER del certificat, obtenir la clau pública del certificat, l'algoritme de signatura i altra informació. .

Si voleu carregar un certificat, podeu utilitzar el codi següent per crear un objecte X509Cert a partir de les dades del certificat en format DER/PEM:

1 2 3 4
const crypto = require('crypto'); const certData = require('fs').readFile('server.crt'); const cert = new crypto.X509Cert(certData);

Per descomptat, l'objecte X509Cert també proporciona un mètode per importar directament el certificat:

1
const cert = crypto.X509Cert.import(certData);

A continuació, podeu realitzar diverses operacions de certificat mitjançant cert, com ara l'obtenció del període de validesa del certificat:

1 2
var strDate = cert.notBefore.toLocaleTimeString() + " " + cert.notBefore.toLocaleDateString() + " ~ " + cert.notAfter.toLocaleTimeString() + " " + cert.notAfter.toLocaleDateString(); console.log(`证书有效时间: ${strDate}`)

relació hereditària

Constructor

X509Cert

Constructor X509Cert

1
new X509Cert();

Constructor X509Cert, carrega un certificat de format DER

1
new X509Cert(Buffer derCert);

Paràmetres de trucada:

  • derCert:Buffer, certificat en format DER

Constructor X509Cert, carrega un certificat en format CRT/PEM

1
new X509Cert(String txtCert);

Paràmetres de trucada:

  • txtCert: Cadena, certificat en format CRT/PEM

propietats dels membres

version

Enter, obteniu la versió del certificat

1
readonly Integer X509Cert.version;

serial

String, obteniu el número de sèrie del certificat

1
readonly String X509Cert.serial;

issuer

String, Obté el nom distingit de l'emissor del certificat

1
readonly String X509Cert.issuer;

subject

String, obté el nom distingit del subjecte del certificat

1
readonly String X509Cert.subject;

notBefore

Data, obteniu el temps de validesa del certificat

1
readonly Date X509Cert.notBefore;

notAfter

Data, obteniu el temps de caducitat del certificat

1
readonly Date X509Cert.notAfter;

ca

Booleà, obté si el certificat és un certificat ca

1
readonly Boolean X509Cert.ca;

pathlen

Enter, obteniu la ruta del certificat

1
readonly Integer X509Cert.pathlen;

usage

String, obté l'àmbit d'ús del certificat

1
readonly String X509Cert.usage;

El resultat és tot o part del següent: digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment, keyAgreement, keyCertSign, cRLSign


type

Cadena, tipus de certificat de Netscape per obtenir el certificat

1
readonly String X509Cert.type;

El resultat és tot o part dels següents: client, server, email, objsign, reserved, sslCA, emailCA, objCA


sig_md

Integer, l'algorisme de resum per obtenir el certificat

1
readonly Integer X509Cert.sig_md;

sig_pk

Enter, obté l'algoritme de signatura del certificat

1
readonly Integer X509Cert.sig_pk;

publicKey

PKey, obteniu la clau pública del certificat

1
readonly PKey X509Cert.publicKey;

next

X509Cert, obteniu el següent certificat de la cadena de certificats

1
readonly X509Cert X509Cert.next;

funció de membre

import

Carregueu un certificat en format DER, que es pot cridar diverses vegades

1
X509Cert.import(Buffer derCert);

Paràmetres de trucada:

  • derCert:Buffer, certificat en format DER

Carregueu un certificat en format CRT/PEM, que es pot cridar diverses vegades

1
X509Cert.import(String txtCert);

Paràmetres de trucada:

  • txtCert: Cadena, certificat en format CRT/PEM

loadRootCerts

Carregueu el certificat arrel predeterminat que l'acompanya

1
X509Cert.loadRootCerts();

El contingut d'aquest certificat prové de: http://hg.mozilla.org/releases/mozilla-release/raw-file/default/security/nss/lib/ckfw/builtins/certdata.txt


verify

Verifiqueu el certificat proporcionat mitjançant la cadena de certificats actual

1
Boolean X509Cert.verify(X509Cert cert) async;

Paràmetres de trucada:

  • cert: X509Cert, donat el certificat que cal verificar

Resultats de retorn:

  • Boolean, retorna True si la verificació té èxit

pem

Exporteu el certificat carregat en format PEM

1
String X509Cert.pem(Boolean all = true);

Paràmetres de trucada:

  • all: Booleà, especifica si s'han de produir tots els certificats, el valor predeterminat és cert

Resultats de retorn:

  • String, exporteu la cadena de certificats com a matriu

der

Exporteu el certificat carregat en format DER

1
Buffer X509Cert.der();

Resultats de retorn:

  • Buffer, exporteu la cadena de certificats com a matriu

clear

Netegeu els certificats carregats

1
X509Cert.clear();

toString

Retorna la representació de cadena de l'objecte. En general, es retorna "[Objecte natiu]". L'objecte es pot tornar a implementar segons les seves pròpies característiques.

1
String X509Cert.toString();

Resultats de retorn:

  • String, retorna la representació de cadena de l'objecte

toJSON

Retorna una representació en format JSON de l'objecte, generalment retornant una col·lecció de propietats llegibles definides per l'objecte.

1
Value X509Cert.toJSON(String key = "");

Paràmetres de trucada:

  • key: Corda, no utilitzada

Resultats de retorn:

  • Value, retorna un valor que conté JSON serializable