【发布时间】:2012-12-14 21:03:28
【问题描述】:
我不确定这是否是这个问题的正确位置,因为这可能更像是一个基于理论的问题。但我也对以下的 C# 实现感兴趣。以及它的可行性如何
我打算使用 PGP 对文件进行加密和解密。是否可以使用两个公钥(我的公钥和接收者的公钥)加密文件,以便我能够使用其中一个私钥解密文件。 这种情况可行吗? 那么我应该采取什么方向来正确实施相同的方法。 任何帮助将不胜感激
【问题讨论】:
-
不是相当于每个文件存储两份,一份用key_1加密,一份用key_2加密吗?
-
这可以通过 PGP 实现,正如 Victor 的回答在下面解释的那样。混合方法的工作方式是生成随机对称密钥,并使用 AES 之类的东西进行批量加密。然后随机会话密钥在每个收件人的公钥下加密,因此您仍然只有 1 个消息副本,但可以被多方读取。它也明显更快,因为公钥算法往往非常慢,因此您希望尽量减少它处理的数据。
标签: cryptography public-key-encryption pgp