公钥/私钥加密如何工作,谁生成密钥对?

Ste*_*ard 5 encryption pgp public-key-encryption openpgp

我需要对文件进行加密,将其发送给外部合作伙伴,然后该合作伙伴将使用密钥解密该文件。

我的“基本”理解是我可以生成公钥和私钥,使用公钥对文件进行编码,我们的合作伙伴可以使用我们提供的私钥解密。但这对我来说听起来有点奇怪,我们将共享私钥。只有一个值得信赖的合作伙伴。

我错过了什么吗?

Vom*_*yle 11

PGP 加密 - 公钥和私钥如何工作

您仅共享您的公钥,这是他们在将数据发送给您之前使用的加密数据。在将数据发送给他们之前,您还可以使用他们的公钥为他们加密数据。

公钥就是[public],因此任何人都可以安全地使用它来加密文件,但永远不会是私有的,因为它始终与需要解密文件的人保持私密。

通常,您将配置 PGP 软件并生成密钥对。本质上,您将拥有一个私钥和一个公钥,这就是密钥对。

您应该将私钥保存在访问受限的安全位置,并且您可以与其他具有 PGP 加密/解密功能的实体共享公钥,您希望使用该技术交换文件。


PGP文件级加密简单比喻

这就像你给他们锁来锁定文件(你的公钥),但只有你有解锁它的钥匙(你的私钥)。

  • 公钥就像一把锁,任何人都可以使用锁定为[加密]锁定文件
  • 私钥就像是把锁的钥匙,只意味着[解密]的那些解锁它可以和拥有的私有密钥这样做。

例子

  1. 他们使用您的公钥加密文件,然后将这些文件发送给您,并且只有您拥有该密钥对中的私钥来解密这些文件。
  2. 他们使用您的公钥加密文件,然后将这些文件发送给不应该获取数据的公司。这家公司没有解密这些数据的私钥,所以数据没有被暴露。

  3. 您使用另一个实体的公钥加密文件,然后将文件发送给他们,只有他们才能使用他们的密钥对中的私钥解密这些文件。

  4. 您使用另一个实体的公钥加密文件,然后将文件发送给错误的公司,但他们无法解密数据,因为他们没有这样做的私钥,因此不会暴露任何数据。


进一步阅读


Jen*_*rat 5

考虑私钥和实际密钥,公钥是挂锁。无论您将挂锁交给谁,都可以关闭某些东西(例如,包含秘密消息的保险库),只有您(确保私钥安全)才能再次打开它。

公钥/私钥加密示例

记住挂锁是数字的:很容易无限次复制它。事实上,您经常在某个公共目录中将它分享给想要拥有它的每个人。

我的“基本”理解是我可以生成公钥和私钥,使用公钥对文件进行编码,我们的合作伙伴可以使用我们提供的私钥解密。但这对我来说听起来有点奇怪,我们将共享私钥。只有一个值得信赖的合作伙伴。

反之亦然:接收者生成密钥对,并将公钥(“挂锁”)传递给您。现在,只有收件人可以解密消息,因为他是唯一持有私钥的人。

此外,您不必关心中间人拿到私钥——如果他截获了公钥,他仍然无法阅读消息。只需确保在收到公钥(例如通过电话)后验证指纹,以确保公钥在传输过程中未被替换。

除了加密之外,您还可以对消息进行签名,以便另一方可以验证发件人。在这种情况下,您还将生成一个公钥/私钥对。签名几乎完全相反(与挂锁的类比不再适用于签名),请考虑使用私钥加密(只有您可以这样做,因为它是保密的)。如果收件人可以使用您的公钥解密消息(或者通常是消息的散列和),他就知道一定是您对消息进行了签名。