Object-ingebouwd object

ObjectX509Cert

X509Certificaat JacryptoHet object dat het x509-certificaat in de module vertegenwoordigt. Dit object bevat voornamelijk certificaatinformatie en methoden die zijn opgebouwd uit certificaatgegevens en certificaatketengegevens in de DER- of PEM-indeling. Het kan bewerkingen uitvoeren zoals het parseren en verifiëren van certificaten.

Via het X509Cert-object kunt u de onderwerpnaam, de naam van de uitgever, de doorlooptijd, de vervaltijd, ca-verificatie en andere informatie verkrijgen. U kunt ook de DER-codering van het certificaat exporteren, de openbare sleutel van het certificaat, het handtekeningalgoritme en andere informatie verkrijgen .

Als u een certificaat wilt laden, kunt u de volgende code gebruiken om een ​​X509Cert-object te maken op basis van certificaatgegevens in DER/PEM-indeling:

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

Uiteraard biedt het X509Cert-object ook een methode om het certificaat rechtstreeks te importeren:

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

Vervolgens kunt u via cert verschillende certificaatbewerkingen uitvoeren, zoals het verkrijgen van de geldigheidsduur van het certificaat:

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

erfenis relatie

Constructeur

X509Cert

X509Cert-constructor

1
new X509Cert();

X509Cert-constructor, laadt een certificaat in DER-formaat

1
new X509Cert(Buffer derCert);

Oproepparameters:

  • derCert:Buffer, certificaat in DER-formaat

X509Cert-constructor, laadt een certificaat in CRT/PEM-indeling

1
new X509Cert(String txtCert);

Oproepparameters:

  • txtCert: String, certificaat in CRT/PEM-formaat

eigenschappen van leden

version

Integer, haal de versie van het certificaat op

1
readonly Integer X509Cert.version;

serial

String, haal het serienummer van het certificaat op

1
readonly String X509Cert.serial;

issuer

Tekenreeks, haalt de DN-naam van de certificaatuitgever op

1
readonly String X509Cert.issuer;

subject

String, verkrijgt de onderscheidende naam van het certificaat

1
readonly String X509Cert.subject;

notBefore

Datum, verkrijg de geldigheidsduur van het certificaat

1
readonly Date X509Cert.notBefore;

notAfter

Datum, haal de vervaltijd van het certificaat op

1
readonly Date X509Cert.notAfter;

ca

Boolean, verkrijgt of het certificaat een ca-certificaat is

1
readonly Boolean X509Cert.ca;

pathlen

Integer, haal de pathlen van het certificaat op

1
readonly Integer X509Cert.pathlen;

usage

String, verkrijgt het toepassingsgebied van het certificaat

1
readonly String X509Cert.usage;

Het resultaat is het volgende geheel of gedeeltelijk: digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment, keyAgreement, keyCertSign, cRLSign


type

Tekenreeks, Netscape-certificaattype om het certificaat op te halen

1
readonly String X509Cert.type;

Het resultaat is geheel of gedeeltelijk het volgende: client, server, e-mail, objsign, gereserveerd, sslCA, emailCA, objCA


sig_md

Integer, het digest-algoritme voor het verkrijgen van het certificaat

1
readonly Integer X509Cert.sig_md;

sig_pk

Integer, verkrijgt het handtekeningalgoritme van het certificaat

1
readonly Integer X509Cert.sig_pk;

publicKey

PKey, haal de publieke sleutel van het certificaat op

1
readonly PKey X509Cert.publicKey;

next

X509Cert, haal het volgende certificaat in de certificaatketen op

1
readonly X509Cert X509Cert.next;

lid functie

import

Laad een certificaat in DER-formaat, dat meerdere keren kan worden aangeroepen

1
X509Cert.import(Buffer derCert);

Oproepparameters:

  • derCert:Buffer, certificaat in DER-formaat

Laad een certificaat in CRT/PEM-formaat, dat meerdere keren kan worden opgeroepen

1
X509Cert.import(String txtCert);

Oproepparameters:

  • txtCert: String, certificaat in CRT/PEM-formaat

loadRootCerts

Laad het standaard rootcertificaat dat daarbij hoort

1
X509Cert.loadRootCerts();

De inhoud van dit certificaat is afkomstig van: http://hg.mozilla.org/releases/mozilla-release/raw-file/default/security/nss/lib/ckfw/builtins/certdata.txt


verify

Verifieer het opgegeven certificaat met behulp van de huidige certificaatketen

1
Boolean X509Cert.verify(X509Cert cert) async;

Oproepparameters:

  • cert: X509Cert, gegeven het certificaat dat moet worden geverifieerd

Resultaten retourneren:

  • Boolean, retourneert True als de verificatie succesvol is

pem

Exporteer het geladen certificaat in PEM-indeling

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

Oproepparameters:

  • all: Boolean, specificeert of alle certificaten moeten worden uitgevoerd; de standaardwaarde is waar

Resultaten retourneren:

  • Stringexporteert u de certificaatketen als een array

der

Exporteer het geladen certificaat in DER-formaat

1
Buffer X509Cert.der();

Resultaten retourneren:

  • Bufferexporteert u de certificaatketen als een array

clear

Wis de geladen certificaten

1
X509Cert.clear();

toString

Retourneert de tekenreeksweergave van het object. Over het algemeen wordt '[Native Object]' geretourneerd. Het object kan opnieuw worden geïmplementeerd op basis van zijn eigen kenmerken.

1
String X509Cert.toString();

Resultaten retourneren:

  • String, retourneert de tekenreeksrepresentatie van het object

toJSON

Retourneert een weergave in JSON-indeling van het object, waarbij doorgaans een verzameling leesbare eigenschappen wordt geretourneerd die door het object zijn gedefinieerd.

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

Oproepparameters:

  • key: Tekenreeks, niet gebruikt

Resultaten retourneren:

  • Value, retourneert een waarde die JSON-serialiseerbaar bevat