crypto.publicEncrypt(key, buffer)

使用key加密buffer的的内容并返回一个新的带加密的内容Buffer
  • key {Object | string | Buffer | KeyObject}
    • key {string | Buffer | KeyObject} 一个 PEM 编码的公共或私有密钥。
    • oaepHash {string} 散列函数使用的 OAEP 填充和 MGF1。 默认: 'sha1'
    • oaepLabel {Buffer | TypedArray | DataView} OAEP 填充标签。 如果没有指定,则使用无标签。
    • passphrase {string | Buffer} 一个可选的密码私钥。
    • padding {crypto.constants} 在crypto.constants定义的可选填充值, 其可以是: crypto.constants.RSA_NO_PADDING, crypto.constants.RSA_PKCS1_PADDING, 或 crypto.constants.RSA_PKCS1_OAEP_PADDING.
  • buffer {Buffer | TypedArray | DataView}
  • 返回: {Buffer} 一个新的带加密内容的Buffer

返回的数据可以使用对应的私钥解密, 例如使用 crypto.privateDecrypt().

如果key不是KeyObject, 该功能表现为好像key已传递到crypto.createPublicKey(). 如果它是一个对象,在padding属性可以通过。 否则,此函数使用RSA_PKCS1_OAEP_PADDING

由于 RSA 公共密钥可以从私有密钥导出,私有密钥可以传递的,而不是一个公共密钥.


最后修改 April 16, 2020: 加密 (a75e592)