對象X509Crl
X509Crl 物件是crypto模組中的一個對象,用來表示X509 撤銷證書,即證書的吊銷列表,與CA 相關的操作如X509 證書鏈的驗證都會用到撤銷列表信息
X509Crl 在crypto模組聲明,故可以透過下面的程式碼來引入:
1const crypto = require('crypto');
使用者可以透過新建X509Crl 類別對象,呼叫對象的import 方法載入一個DER 或PEM 格式的憑證。可以透過clear 方法清除已經載入的撤銷憑證清單訊息,控制載入狀態,以支援重複的憑證載入工作。然後可以使用nextUpdate 方法取得撤銷清單的下次更新時間,呼叫serials 取得憑證撤銷序號清單等。
下面這個範例示範如何從文件中匯入一個撤銷證,並將其清單在控制台輸出:
1
2
3
4
5
6
7
8
9
10
11
12const crypto = require('crypto');
const fs = require('fs');
// load a PEM format CRL
var pemFile = './mycrl.pem';
var pemText = fs.readFile(pemFile).toString();
var crl = new crypto.X509Crl(pemText);
// output serials of revoked certificates
for (var i = 0; i < crl.serials.length; i++) {
console.log(crl.serials[i]);
}
繼承關係
建構函數
X509Crl
X509Crl 建構函數
1new X509Crl();
X509Crl 建構子,載入一個DER 格式的撤銷憑證
1new X509Crl(Buffer derCrl);
呼叫參數:
- derCrl:Buffer, DER 格式的撤銷證書
X509Crl 建構子,載入一個PEM 格式的撤銷憑證
1new X509Crl(String pemCrl);
呼叫參數:
- pemCrl: String, PEM 格式的撤銷證書
成員屬性
version
Integer, 取得憑證的版本
1readonly Integer X509Crl.version;
issuer
String, 取得憑證授權者的可分辨名稱
1readonly String X509Crl.issuer;
serials
Array, 取得憑證撤銷序號列表
1readonly Array X509Crl.serials;
thisUpdate
Date, 取得證書的本次更新時間
1readonly Date X509Crl.thisUpdate;
nextUpdate
Date, 取得憑證的下次更新時間
1readonly Date X509Crl.nextUpdate;
next
X509Crl, 取得憑證鏈中得下一個憑證
1readonly X509Crl X509Crl.next;
成員函數
import
載入一個DER 格式的撤銷證書,可多次調用
1X509Crl.import(Buffer derCrl);
呼叫參數:
- derCrl:Buffer, DER 格式的撤銷證書
載入一個PEM 格式的撤銷證書,可多次調用
1X509Crl.import(String pemCrl);
呼叫參數:
- pemCrl: String, PEM 格式的撤銷證書
pem
以PEM 格式匯出已載入的撤銷證書
1String X509Crl.pem(Boolean all = true);
呼叫參數:
- all: Boolean, 指定是否輸出全部證書,預設為true
回傳結果:
- String, 以陣列方式匯出撤銷憑證鏈
der
以DER 格式匯出已載入的撤銷憑證
1Buffer X509Crl.der();
回傳結果:
- Buffer, 以陣列方式匯出撤銷憑證鏈
clear
清空已載入的撤銷憑證
1X509Crl.clear();
toString
傳回物件的字串表示,一般回傳"[Native Object]",物件可以根據自己的特性重新實現
1String X509Crl.toString();
回傳結果:
- String, 傳回物件的字串表示
toJSON
傳回物件的JSON 格式表示,一般傳回物件定義的可讀屬性集合
1Value X509Crl.toJSON(String key = "");
呼叫參數:
- key: String, 未使用
回傳結果:
- Value, 傳回包含可JSON 序列化的值