使用 kbpgp • 在调用 kbpgp.box(params,cb) 时如何指定 encrypt_with 的密钥对

using kbpgp • how do I specify which key-pair to encrypt_with when calling kbpgp.box(params,cb)

var params = {
  msg:         "If you see me, I am working.",
  encrypt_for: bob,
  sign_with: alice
};

// where bob and alice are KeyManager objects with public and unlocked private keys

kbpgp.box(params, function(err, result_string, result_buffer) {
  console.log('\nencrypted message\n===========')
  console.log(result_string)
})

在此代码段中,我可以指定我使用哪个密钥对进行签名。

如何指定要使用哪个 KeyManager 对象来加密消息,而不是签名?

我是否缺少 encrypt_with 选项?

那是 encrypt_for 参数,它应该是包装收件人 public 密钥的密钥管理器。

kbpgp.box() 调用上方的正确注释是:

// where bob and alice are KeyManager objects with public and unlocked private keys, respectively

为了签名,您需要一个解锁的私钥。但是为了加密,您只需要一个 public 密钥。