C#中使用PGP的多个接收器(BouncyCastle框架)

时间:2012-02-29 09:26:27

标签: c# encryption bouncycastle pgp

我已经能够使用一个公钥来管理加密/解密文件。现在我想用PGP加密多个收件人的文件。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:1)

我假设您正在做这样的事情:

PgpEncryptedDataGenerator encryptedDataGenerator = // ...
encryptedDataGenerator.AddMethod(publicKey);
encryptedDataGenerator.Open(outputStream, buffer);

只需多次使用AddMethod() - 方法为其他收件人添加公钥:

PgpEncryptedDataGenerator encryptedDataGenerator = // ...
foreach(PgpPublicKey publicKey in publicKeys){
  encryptedDataGenerator.AddMethod(publicKey);
}
encryptedDataGenerator.Open(outputStream, buffer);

答案 1 :(得分:0)

我处于类似情况。我自己做了一个随机会话密钥,它被加密了好几次;每个目标一个。让一切都运转起来有点混乱。我不确定OpenPGP是否真的支持开箱即用(即使函数名称似乎暗示它)