OggettoX509Cert
Certificato X509 SìcryptoL'oggetto che rappresenta il certificato x509 nel modulo. Questo oggetto include principalmente informazioni sul certificato e metodi costruiti da dati di certificato in formato DER o PEM e dati della catena di certificati. Può eseguire operazioni come l'analisi e la verifica dei certificati.
Attraverso l'oggetto X509Cert è possibile ottenere il nome del soggetto del certificato, il nome dell'emittente, l'ora di transito, l'ora di scadenza, la verifica della CA e altre informazioni. È inoltre possibile esportare la codifica DER del certificato, ottenere la chiave pubblica del certificato, l'algoritmo di firma e altre informazioni. .
Se desideri caricare un certificato, puoi utilizzare il codice seguente per creare un oggetto X509Cert dai dati del certificato in formato DER/PEM:
1
2
3
4const crypto = require('crypto');
const certData = require('fs').readFile('server.crt');
const cert = new crypto.X509Cert(certData);
Naturalmente l'oggetto X509Cert fornisce anche un metodo per importare direttamente il certificato:
1const cert = crypto.X509Cert.import(certData);
Successivamente è possibile eseguire varie operazioni sul certificato tramite cert, come ottenere il periodo di validità del certificato:
1
2var strDate = cert.notBefore.toLocaleTimeString() + " " + cert.notBefore.toLocaleDateString() + " ~ " + cert.notAfter.toLocaleTimeString() + " " + cert.notAfter.toLocaleDateString();
console.log(`证书有效时间: ${strDate}`)
rapporto ereditario
Costruttore
X509Cert
Costruttore X509Cert
1new X509Cert();
Costruttore X509Cert, carica un certificato in formato DER
1new X509Cert(Buffer derCert);
Parametri di chiamata:
- derCert:Buffer, certificato in formato DER
Costruttore X509Cert, carica un certificato in formato CRT/PEM
1new X509Cert(String txtCert);
Parametri di chiamata:
- txtCert: Stringa, certificato in formato CRT/PEM
proprietà dei membri
version
Intero, ottieni la versione del certificato
1readonly Integer X509Cert.version;
serial
String, ottieni il numero di serie del certificato
1readonly String X509Cert.serial;
issuer
String, ottiene il nome distinto dell'emittente del certificato
1readonly String X509Cert.issuer;
subject
String, ottiene il nome distinto del soggetto del certificato
1readonly String X509Cert.subject;
notBefore
Data, ottenere l'ora di validità del certificato
1readonly Date X509Cert.notBefore;
notAfter
Data, ottieni l'ora di scadenza del certificato
1readonly Date X509Cert.notAfter;
ca
Booleano, ottiene se il certificato è un certificato ca
1readonly Boolean X509Cert.ca;
pathlen
Intero, ottieni il percorso del certificato
1readonly Integer X509Cert.pathlen;
usage
String, ottiene l'ambito di utilizzo del certificato
1readonly String X509Cert.usage;
Il risultato è tutto o parte di quanto segue: digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment, keyAgreement, keyCertSign, cRLSign
type
String, tipo di certificato Netscape per ottenere il certificato
1readonly String X509Cert.type;
Il risultato è tutto o parte di quanto segue: client, server, email, objsign, riservato, sslCA, emailCA, objCA
sig_md
Intero, l'algoritmo digest per ottenere il certificato
1readonly Integer X509Cert.sig_md;
sig_pk
Intero, ottiene l'algoritmo di firma del certificato
1readonly Integer X509Cert.sig_pk;
publicKey
PKey, ottieni la chiave pubblica del certificato
1readonly PKey X509Cert.publicKey;
next
X509Cert, ottieni il certificato successivo nella catena di certificati
1readonly X509Cert X509Cert.next;
funzione membro
import
Carica un certificato in formato DER, richiamabile più volte
1X509Cert.import(Buffer derCert);
Parametri di chiamata:
- derCert:Buffer, certificato in formato DER
Carica un certificato in formato CRT/PEM, richiamabile più volte
1X509Cert.import(String txtCert);
Parametri di chiamata:
- txtCert: Stringa, certificato in formato CRT/PEM
loadRootCerts
Carica il certificato root predefinito fornito con esso
1X509Cert.loadRootCerts();
Il contenuto di questo certificato proviene da: http://hg.mozilla.org/releases/mozilla-release/raw-file/default/security/nss/lib/ckfw/builtins/certdata.txt
verify
Verificare il certificato fornito utilizzando la catena di certificati corrente
1Boolean X509Cert.verify(X509Cert cert) async;
Parametri di chiamata:
- cert: X509Cert, dato il certificato da verificare
Risultati restituiti:
- Boolean, restituisce True se la verifica ha esito positivo
pem
Esporta il certificato caricato in formato PEM
1String X509Cert.pem(Boolean all = true);
Parametri di chiamata:
- all: Booleano, specifica se restituire tutti i certificati, il valore predefinito è true
Risultati restituiti:
- String, esporta la catena di certificati come array
der
Esporta il certificato caricato in formato DER
1Buffer X509Cert.der();
Risultati restituiti:
- Buffer, esporta la catena di certificati come array
clear
Cancella i certificati caricati
1X509Cert.clear();
toString
Restituisce la rappresentazione in formato stringa dell'oggetto. Generalmente viene restituito "[Oggetto nativo]". L'oggetto può essere reimplementato in base alle proprie caratteristiche.
1String X509Cert.toString();
Risultati restituiti:
- String, restituisce la rappresentazione di stringa dell'oggetto
toJSON
Restituisce una rappresentazione in formato JSON dell'oggetto, generalmente restituendo una raccolta di proprietà leggibili definite dall'oggetto.
1Value X509Cert.toJSON(String key = "");
Parametri di chiamata:
- key: Stringa, non utilizzata
Risultati restituiti:
- Value, restituisce un valore contenente JSON serializzabile