Objet objet intégré

ObjetX509Req

L'objet X509Req est un objet utilisé pour créer des demandes de certificat x509 et appartient àcryptomodule

Vous pouvez créer une instance de X509Req via son constructeur. Dans le constructeur, vous pouvez transmettre des paramètres pour spécifier le nom unique du sujet et la clé publique du certificat, par exemple :

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);

Vous pouvez utiliser cette instance pour appeler les méthodes et propriétés de sa classe parent afin d'obtenir des informations sur l'objet de demande de certificat, par exemple :

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();

Vous pouvez également signer l'objet X509Req pour générer un objet de certificat formel, par exemple :

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

A noter que l'objet X509Req est utilisé pour créer une demande de certificat x509, et non le certificat lui-même. Pour obtenir un certificat valide, il doit être signé. Parallèlement, la clé publique utilisée pour signer le certificat doit être cohérente avec la clé publique utilisée dans la demande de certificat.

relation d'héritage

Constructeur

X509Req

Constructeur X509Req

1
new X509Req();

Constructeur X509Req, crée une demande de certificat basée sur les informations fournies

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

Paramètres d'appel :

  • subject: String, le nom distinctif du sujet du certificat
  • key:PKey, la clé publique du certificat
  • hash: Nombre entier, algorithme de résumé de certificat, la valeur par défaut esthash.SHA256

Constructeur X509Req, charge une demande de certificat au format DER

1
new X509Req(Buffer derReq);

Paramètres d'appel :

  • derReq:Buffer, demande de certificat au format DER

Constructeur X509Req, charge une demande de certificat au format PEM

1
new X509Req(String pemReq);

Paramètres d'appel :

  • pemReq: String, demande de certificat au format DER

propriétés des membres

subject

Chaîne, obtient le nom unique du sujet du certificat

1
readonly String X509Req.subject;

publicKey

PKey, récupérez la clé publique du certificat

1
readonly PKey X509Req.publicKey;

sig_md

Entier, l'algorithme de résumé pour l'obtention du certificat

1
readonly Integer X509Req.sig_md;

sig_pk

Entier, obtient l'algorithme de signature du certificat

1
readonly Integer X509Req.sig_pk;

fonction membre

import

Charger une demande de certificat au format DER

1
X509Req.import(Buffer derReq);

Paramètres d'appel :

  • derReq:Buffer, demande de certificat au format DER

Charger une demande de certificat au format PEM

1
X509Req.import(String pemReq);

Paramètres d'appel :

  • pemReq: String, demande de certificat au format PEM

pem

Renvoie l'encodage au format PEM de la demande de certificat en cours

1
String X509Req.pem();

Résultats de retour :

  • String, l'encodage au format PEM de la demande de certificat en cours

der

Renvoie l'encodage au format DER de la demande de certificat en cours

1
Buffer X509Req.der();

Résultats de retour :

  • Buffer, l'encodage au format DER de la demande de certificat en cours

sign

Signez la demande de certificat actuelle en tant que certificat officiel

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

Paramètres d'appel :

  • issuer: String, le nom distinctif de l'autorité signataire
  • key:PKey, la clé privée de l'autorité de signature
  • opts: Objet, autres paramètres facultatifs

Résultats de retour :

  • X509Cert, renvoie le certificat officiel signé

Les champs reçus par opts sont les suivants :

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

Renvoie la représentation sous forme de chaîne de l'objet. Généralement, "[Native Object]" est renvoyé. L'objet peut être réimplémenté en fonction de ses propres caractéristiques.

1
String X509Req.toString();

Résultats de retour :

  • String, renvoie la représentation sous forme de chaîne de l'objet

toJSON

Renvoie une représentation au format JSON de l'objet, renvoyant généralement une collection de propriétés lisibles définies par l'objet.

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

Paramètres d'appel :

  • key: Chaîne, non utilisée

Résultats de retour :

  • Value, renvoie une valeur contenant du JSON sérialisable