オブジェクト組み込みオブジェクト

オブジェクトX509要求

X509Req オブジェクトは、x509 証明書リクエストの作成に使用されるオブジェクトであり、以下に属します。cryptoモジュール

コンストラクターを使用して X509Req のインスタンスを作成できます。コンストラクターでは、証明書のサブジェクト識別名と公開キーを指定するパラメーターを渡すことができます。次に例を示します。

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

このインスタンスを使用して、その親クラスのメソッドとプロパティを呼び出して、証明書要求オブジェクトに関する情報を取得できます。次に例を示します。

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

X509Req オブジェクトに署名して、正式な証明書オブジェクトを生成することもできます。次に例を示します。

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

X509Req オブジェクトは、証明書自体ではなく、x509 証明書要求の作成に使用されることに注意してください。有効な証明書を取得するには、署名する必要があります。同時に、証明書の署名に使用される公開キーは、証明書要求で使用される公開キーと一致している必要があります。

相続関係

コンストラクタ

X509Req

X509Req コンストラクター

1
new X509Req();

X509Req コンストラクター。指定された情報に基づいて証明書リクエストを作成します。

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

呼び出しパラメータ:

  • subject: 文字列、証明書のサブジェクト識別名
  • key:PKey、証明書の公開キー
  • hash: 整数、証明書ダイジェスト アルゴリズム、デフォルトはhash.SHA256

X509Req コンストラクター、DER 形式で証明書リクエストをロードします

1
new X509Req(Buffer derReq);

呼び出しパラメータ:

  • derReq:Buffer、DER形式の証明書リクエスト

X509Req コンストラクター、PEM 形式で証明書リクエストをロードします

1
new X509Req(String pemReq);

呼び出しパラメータ:

  • pemReq: 文字列、DER 形式の証明書リクエスト

メンバーのプロパティ

subject

文字列、証明書のサブジェクト識別名を取得します。

1
readonly String X509Req.subject;

publicKey

PKey、証明書の公開キーを取得します。

1
readonly PKey X509Req.publicKey;

sig_md

整数、証明書を取得するためのダイジェスト アルゴリズム

1
readonly Integer X509Req.sig_md;

sig_pk

整数、証明書の署名アルゴリズムを取得します

1
readonly Integer X509Req.sig_pk;

メンバー関数

import

DER 形式で証明書リクエストをロードする

1
X509Req.import(Buffer derReq);

呼び出しパラメータ:

  • derReq:Buffer、DER形式の証明書リクエスト

PEM 形式で証明書リクエストをロードする

1
X509Req.import(String pemReq);

呼び出しパラメータ:

  • pemReq: 文字列、PEM 形式の証明書リクエスト

pem

現在の証明書リクエストの PEM 形式エンコーディングを返します。

1
String X509Req.pem();

返される結果:

  • String、現在の証明書リクエストの PEM 形式エンコーディング

der

現在の証明書リクエストの DER 形式エンコーディングを返します。

1
Buffer X509Req.der();

返される結果:

  • Buffer、現在の証明書リクエストの DER 形式エンコーディング

sign

現在の証明書リクエストに公式証明書として署名します。

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

呼び出しパラメータ:

  • issuer: 文字列、署名機関の識別名
  • key:PKey、署名機関の秘密鍵
  • opts: オブジェクト、その他のオプションのパラメータ

返される結果:

  • X509Cert、署名された公式証明書を返します

opts が受け取るフィールドは次のとおりです。

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

オブジェクトの文字列表現を返します。通常、「[Native Object]」が返されます。オブジェクトは、独自の特性に従って再実装できます。

1
String X509Req.toString();

返される結果:

  • String、オブジェクトの文字列表現を返します。

toJSON

オブジェクトの JSON 形式表現を返します。通常は、オブジェクトによって定義された読み取り可能なプロパティのコレクションを返します。

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

呼び出しパラメータ:

  • key: 文字列、使用されません

返される結果:

  • Value、シリアル化可能な JSON を含む値を返します