对象 PKey

不对称加密算法对象

PKey 对象属于 crypto 模块,创建:

var k = new crypto.PKey();

继承关系

构造函数

PKey

PKey 构造函数

new PKey();

成员属性

name

String, 返回当前算法名称

readonly String PKey.name;

keySize

Integer, 返回当前算法密码长度,以位为单位

readonly Integer PKey.keySize;

publicKey

PKey, 返回当前密钥的公钥

readonly PKey PKey.publicKey;

返回结果:

成员函数

genRsaKey

生成一个 RSA 私钥

PKey.genRsaKey(Integer size) async;

调用参数:


genEcKey

生成一个 EC 私钥

PKey.genEcKey(String curve = "secp521r1") async;

调用参数:


isPrivate

查询当前密钥是否为私钥

Boolean PKey.isPrivate();

返回结果:


clone

复制当前密钥

PKey PKey.clone();

返回结果:


importKey

加载一个 DER 格式的密钥

PKey.importKey(Buffer DerKey,
    String password = "");

调用参数:


加载一个 PEM 格式的密钥

PKey.importKey(String pemKey,
    String password = "");

调用参数:


importFile

加载一个 PEM/DER 格式的密钥文件

PKey.importFile(String filename,
    String password = "");

调用参数:


exportPem

返回当前 key 的 PEM 格式编码

String PKey.exportPem();

返回结果:


exportDer

返回当前 key 的 DER 格式编码

Buffer PKey.exportDer();

返回结果:


encrypt

使用当前算法密码公钥加密数据

Buffer PKey.encrypt(Buffer data) async;

调用参数:

返回结果:


decrypt

使用当前算法密码私钥解密数据

Buffer PKey.decrypt(Buffer data) async;

调用参数:

返回结果:


sign

使用当前算法密码私钥签名数据

Buffer PKey.sign(Buffer data,
    Integer alg = 0) async;

调用参数:

返回结果:


verify

使用当前算法密码公钥验证数据

Boolean PKey.verify(Buffer sign,
    Buffer data) async;

调用参数:

返回结果:


dispose

强制回收对象,调用此方法后,对象资源将立即释放

PKey.dispose();

equals

比较当前对象与给定的对象是否相等

Boolean PKey.equals(object expected);

调用参数:

返回结果:


toString

返回对象的字符串表示,一般返回 "[Native Object]",对象可以根据自己的特性重新实现

String PKey.toString();

返回结果:


toJSON

返回对象的 JSON 格式表示,一般返回对象定义的可读属性集合

Value PKey.toJSON(String key = "");

调用参数:

返回结果:


valueOf

返回对象本身的数值

Value PKey.valueOf();

返回结果: