Oggetto oggetto incorporato

OggettoX509Req

L'oggetto X509Req è un oggetto utilizzato per creare richieste di certificato x509 e appartiene acryptomodulo

È possibile creare un'istanza di X509Req tramite il relativo costruttore. Nel costruttore è possibile passare parametri per specificare il nome distinto dell'oggetto e la chiave pubblica del certificato, ad esempio:

1 2 3 4
var crypto = require('crypto'); let pky = crypto.PKey.from(private_pem); let req = new crypto.X509Req("CN=localhost,O=fibjs", pky);

Puoi utilizzare questa istanza per chiamare i metodi e le proprietà della sua classe genitore per ottenere informazioni sull'oggetto della richiesta di certificato, ad esempio:

1 2 3 4 5
// return the DER format of the certificate request let derReq = req.der(); // return the PEM format of the certificate request let pemReq = req.pem();

Puoi anche firmare l'oggetto X509Req per generare un oggetto certificato formale, ad esempio:

1 2 3 4 5 6 7
let opt = { notBefore: new Date('2019-01-01') // valid from 2019-01-01 , notAfter: new Date('2029-12-31') // valid to 2029-12-31 }; let crt = req.sign("CN=myy.mkx", pky, opt); // CN=myy.mkx is the issuer of the certificate

Va notato che per creare una richiesta di certificato x509 viene utilizzato l'oggetto X509Req e non il certificato stesso, per ottenere un certificato valido è necessario firmarlo. Allo stesso tempo, la chiave pubblica utilizzata per firmare il certificato deve essere coerente con la chiave pubblica utilizzata nella richiesta di certificato.

rapporto ereditario

Costruttore

X509Req

Costruttore X509Req

1
new X509Req();

Costruttore X509Req, crea una richiesta di certificato in base alle informazioni fornite

1 2 3
new X509Req(String subject, PKey key, Integer hash = hash.SHA256);

Parametri di chiamata:

  • subject: String, il nome distinto del soggetto del certificato
  • key:PKey, la chiave pubblica del certificato
  • hash: Numero intero, algoritmo digest del certificato, il valore predefinito èhash.SHA256

Costruttore X509Req, carica una richiesta di certificato in formato DER

1
new X509Req(Buffer derReq);

Parametri di chiamata:

  • derReq:Buffer, richiesta di certificato in formato DER

Costruttore X509Req, carica una richiesta di certificato in formato PEM

1
new X509Req(String pemReq);

Parametri di chiamata:

  • pemReq: Stringa, richiesta di certificato in formato DER

proprietà dei membri

subject

String, ottiene il nome distinto del soggetto del certificato

1
readonly String X509Req.subject;

publicKey

PKey, ottieni la chiave pubblica del certificato

1
readonly PKey X509Req.publicKey;

sig_md

Intero, l'algoritmo digest per ottenere il certificato

1
readonly Integer X509Req.sig_md;

sig_pk

Intero, ottiene l'algoritmo di firma del certificato

1
readonly Integer X509Req.sig_pk;

funzione membro

import

Carica una richiesta di certificato in formato DER

1
X509Req.import(Buffer derReq);

Parametri di chiamata:

  • derReq:Buffer, richiesta di certificato in formato DER

Carica una richiesta di certificato in formato PEM

1
X509Req.import(String pemReq);

Parametri di chiamata:

  • pemReq: stringa, richiesta di certificato in formato PEM

pem

Restituisce la codifica del formato PEM della richiesta di certificato corrente

1
String X509Req.pem();

Risultati restituiti:

  • String, la codifica del formato PEM della richiesta di certificato corrente

der

Restituisce la codifica del formato DER della richiesta di certificato corrente

1
Buffer X509Req.der();

Risultati restituiti:

  • Buffer, la codifica del formato DER della richiesta di certificato corrente

sign

Firma la richiesta di certificato corrente come certificato ufficiale

1 2 3
X509Cert X509Req.sign(String issuer, PKey key, Object opts = {}) async;

Parametri di chiamata:

  • issuer: String, il nome distinto dell'autorità di firma
  • key:PKey, la chiave privata dell'autorità di firma
  • opts: Oggetto, altri parametri opzionali

Risultati restituiti:

  • X509Cert, restituisce il certificato ufficiale firmato

I campi ricevuti da opts sono i seguenti:

1 2 3 4 5 6 7 8
{ ca: false, // specify if the certificate is a CA certificate, default is false pathlen: -1, // specify the path length of the certificate, default is -1 notBefore: "", // specify the certificate valid from date, default is current date notAfter: "", // specify the certificate valid to date, default is 365 days after current date usage: "", // specify the certificate usage, accept: digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment, keyAgreement, keyCertSign, cRLSign type: "" // specify the certificate Netscape certificate type, accept: client, server, email, objsign, reserved, sslCA, emailCA, objCA }

toString

Restituisce la rappresentazione in formato stringa dell'oggetto. Generalmente viene restituito "[Oggetto nativo]". L'oggetto può essere reimplementato in base alle proprie caratteristiche.

1
String X509Req.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.

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

Parametri di chiamata:

  • key: Stringa, non utilizzata

Risultati restituiti:

  • Value, restituisce un valore contenente JSON serializzabile