Object 內置對象

對象X509Cert

x509 證書對象

X509Cert 對象屬於 crypto 模塊,創建:

1
var k = new crypto.X509Cert();

繼承關係

#lineWidth: 1.5 #font: Helvetica,sans-Serif #fontSize: 10 #leading: 1.6 #.this: fill=lightgray #.class: fill=white [<class>object|toString();toJSON()] [<this>X509Cert|new X509Cert()|version;serial;issuer;subject;notBefore;notAfter;ca;pathlen;usage;type;sig_md;sig_pk;publicKey;next|load();loadFile();loadRootCerts();verify();dump();clear()] [object] <:- [X509Cert] X509Cert new X509Cert() version serial issuer subject notBefore notAfter ca pathlen usage type sig_md sig_pk publicKey next load() loadFile() loadRootCerts() verify() dump() clear() object toString() toJSON()

構造函數

X509Cert

X509Cert 構造函數

1
new X509Cert();

X509Cert 構造函數,加載一個DER 格式的證書

1
new X509Cert(Buffer derCert);

調用參數:

  • derCert: Buffer, DER 格式的證書

X509Cert 構造函數,加載一個CRT/PEM/TXT 格式的證書

1
new X509Cert(String txtCert);

調用參數:

  • txtCert: String, CRT/PEM/TXT 格式的證書

load 加載mozilla 的certdata,txt, 可於

成員屬性

version

Integer, 獲取證書的版本

1
readonly Integer X509Cert.version;

serial

String, 獲取證書的序列號

1
readonly String X509Cert.serial;

issuer

String, 獲取證書頒發者的可分辨名稱

1
readonly String X509Cert.issuer;

subject

String, 獲取證書的主題可分辨名稱

1
readonly String X509Cert.subject;

notBefore

Date, 獲取證書的生效時間

1
readonly Date X509Cert.notBefore;

notAfter

Date, 獲取證書的到期時間

1
readonly Date X509Cert.notAfter;

ca

Boolean, 獲取證書是否是ca 證書

1
readonly Boolean X509Cert.ca;

pathlen

Integer, 獲取證書的pathlen

1
readonly Integer X509Cert.pathlen;

usage

String, 獲取證書的使用範圍

1
readonly String X509Cert.usage;

結果為全部或部分以下內容:digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment, keyAgreement, keyCertSign, cRLSign


type

String, 獲取證書的Netscape 證書類型

1
readonly String X509Cert.type;

結果為全部或部分以下內容:client, server, email, objsign, reserved, sslCA, emailCA, objCA


sig_md

Integer, 獲取證書的摘要算法

1
readonly Integer X509Cert.sig_md;

sig_pk

Integer, 獲取證書的簽名算法

1
readonly Integer X509Cert.sig_pk;

publicKey

PKey, 獲取證書的公鑰

1
readonly PKey X509Cert.publicKey;

next

X509Cert, 獲取證書鏈中得下一個證書

1
readonly X509Cert X509Cert.next;

成員函數

load

加載一個DER 格式的證書,可多次調用

1
X509Cert.load(Buffer derCert);

調用參數:

  • derCert: Buffer, DER 格式的證書

加載一個CRT/PEM/TXT 格式的證書,可多次調用

1
X509Cert.load(String txtCert);

調用參數:

  • txtCert: String, CRT/PEM/TXT 格式的證書

load 加載mozilla 的certdata,txt, 可於


loadFile

加載一個CRT/PEM/DER/TXT 格式的證書,可多次調用

1
X509Cert.loadFile(String filename);

調用參數:

  • filename: String, 證書文件名

loadFile 加載mozilla 的certdata,txt, 可於


loadRootCerts

加載自帶的缺省根證書

1
X509Cert.loadRootCerts();

此證書內容源自:


verify

使用當前證書鏈驗證給定的證書

1
Boolean X509Cert.verify(X509Cert cert) async;

調用參數:

  • cert: X509Cert, 給定需要驗證的證書

返回結果:

  • Boolean, 如果驗證成功則返回True

dump

導出已經加載的證書

1
Array X509Cert.dump(Boolean pem = true);

調用參數:

  • pem: Boolean, 指定輸出PEM 格式的撤銷證書,缺省為true

返回結果:

  • Array, 以數組方式導出證書鏈

clear

清空已經加載的證書

1
X509Cert.clear();

toString

返回對象的字符串表示,一般返回"[Native Object]",對象可以根據自己的特性重新實現

1
String X509Cert.toString();

返回結果:

  • String, 返回對象的字符串表示

toJSON

返回對象的JSON 格式表示,一般返回對象定義的可讀屬性集合

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

調用參數:

  • key: String, 未使用

返回結果:

  • Value, 返回包含可JSON 序列化的值