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
4const 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:
1const 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
2var strDate = cert.notBefore.toLocaleTimeString() + " " + cert.notBefore.toLocaleDateString() + " ~ " + cert.notAfter.toLocaleTimeString() + " " + cert.notAfter.toLocaleDateString();
console.log(`证书有效时间: ${strDate}`)
relació hereditària
Constructor
X509Cert
Constructor X509Cert
1new X509Cert();
Constructor X509Cert, carrega un certificat de format DER
1new X509Cert(Buffer derCert);
Paràmetres de trucada:
- derCert:Buffer, certificat en format DER
Constructor X509Cert, carrega un certificat en format CRT/PEM
1new X509Cert(String txtCert);
Paràmetres de trucada:
- txtCert: Cadena, certificat en format CRT/PEM
propietats dels membres
version
Enter, obteniu la versió del certificat
1readonly Integer X509Cert.version;
serial
String, obteniu el número de sèrie del certificat
1readonly String X509Cert.serial;
issuer
String, Obté el nom distingit de l'emissor del certificat
1readonly String X509Cert.issuer;
subject
String, obté el nom distingit del subjecte del certificat
1readonly String X509Cert.subject;
notBefore
Data, obteniu el temps de validesa del certificat
1readonly Date X509Cert.notBefore;
notAfter
Data, obteniu el temps de caducitat del certificat
1readonly Date X509Cert.notAfter;
ca
Booleà, obté si el certificat és un certificat ca
1readonly Boolean X509Cert.ca;
pathlen
Enter, obteniu la ruta del certificat
1readonly Integer X509Cert.pathlen;
usage
String, obté l'àmbit d'ús del certificat
1readonly 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
1readonly 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
1readonly Integer X509Cert.sig_md;
sig_pk
Enter, obté l'algoritme de signatura del certificat
1readonly Integer X509Cert.sig_pk;
publicKey
PKey, obteniu la clau pública del certificat
1readonly PKey X509Cert.publicKey;
next
X509Cert, obteniu el següent certificat de la cadena de certificats
1readonly X509Cert X509Cert.next;
funció de membre
import
Carregueu un certificat en format DER, que es pot cridar diverses vegades
1X509Cert.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
1X509Cert.import(String txtCert);
Paràmetres de trucada:
- txtCert: Cadena, certificat en format CRT/PEM
loadRootCerts
Carregueu el certificat arrel predeterminat que l'acompanya
1X509Cert.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
1Boolean 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
1String 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
1Buffer X509Cert.der();
Resultats de retorn:
- Buffer, exporteu la cadena de certificats com a matriu
clear
Netegeu els certificats carregats
1X509Cert.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.
1String 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.
1Value X509Cert.toJSON(String key = "");
Paràmetres de trucada:
- key: Corda, no utilitzada
Resultats de retorn:
- Value, retorna un valor que conté JSON serializable