假设我有一个我想向其发送电子邮件的收件人的公钥,而我以前从未向此人发送过电子邮件。将我的第一封电子邮件加密给该收件人并附上我的公钥是否有意义?他们可以解密我的电子邮件吗?
(这在某种程度上是一个“礼仪”之类的问题。)
谢谢
假设我有一个我想向其发送电子邮件的收件人的公钥,而我以前从未向此人发送过电子邮件。将我的第一封电子邮件加密给该收件人并附上我的公钥是否有意义?他们可以解密我的电子邮件吗?
(这在某种程度上是一个“礼仪”之类的问题。)
谢谢
他们根本不需要你的公钥来解密。
您需要他们的公钥来加密消息,他们用他们的私钥解密。他们唯一需要您的公钥的就是验证消息是否来自您。从这个意义上说,附加您的公钥是没有意义的,除非,例如,您计划不久之后通过电话确认指纹。
在非对称加密方案中,您可以实现两件事:
然而,这个问题受到以下事实的阻碍:获得正确的公钥有点困难。如果有人要攻击您传递密钥的通信通道,您可能会误以为攻击者拥有的密钥是您的接收者密钥。所以为了实现认证,需要先验证公钥。
这通常是通过“信任网络”完成的。如果您无法从手到手获取密钥,您可以寻找您已经信任(并且拥有可信密钥)的人,该人可以为您的接收者提供担保。如果该第三人已经拥有他信任的收件人的密钥,他可以为您签名。这样,您可以通过验证您信任的第三方签名来评估密钥是否正确。通过传递性,您知道新收件人的可信密钥。
在您的特定情况下:如果您在电子邮件中发送您的公钥,收件人将无法验证您是您声称的身份。据他所知,您可能是试图冒充他人并伪造密钥对的攻击者。
我有同样的问题,经过一番思考,我认为只要你也加密,发送你的公钥是正确的。
因此,使用接收者的公钥加密以下内容:
这样,当他们解密它时,他们会看到您的消息和您的公钥。这是您消息的接收者也可以安全地回复您,使用您的公钥加密他们对您的回复。
公钥可用于将电子邮件安全地发送给相应私钥的持有者,但公钥的持有者无法确定该消息实际上来自您。但是在电子邮件中附加您的公钥可能会出现问题,因为他无法验证附加的公钥是否确实属于您。如果他只关心后续的电子邮件是否来自同一个人,那么这可能没问题,但如果他需要关心消息实际上来自您,那么他仍然需要将您的公钥视为未经验证,直到您有另一个更可靠的验证。