跳转到主要内容

热门内容

今日:


总体:


最近浏览:


Chinese, Simplified

category

端到端加密,更具体地说是OpenPGP,是我们在Mailfence所做工作的重要组成部分。

然而,OpenPGP加密并不总是那么简单,正确的密钥管理仍然是一个挑战。因此,在本指南中,我们将介绍安全管理OpenPGP密钥的最佳技巧,包括:

  • 如何生成和管理您的OpenPGP密钥;
  • 如何与他人交换OpenPGP密钥;
  • 如何设置私钥的过期日期;


…还有更多!那么,让我们深入探讨。

注意:如果你需要复习一下OpenPGP是什么,请在这里查看这篇博客文章。

提示#1:生成尽可能强的密钥


默认情况下,Mailfence使用RSA(Rivest Shamir Adleman)生成4096位密钥,RSA是最古老、使用最广泛的公钥密码系统之一。

Mailfence还支持使用Curve25519(256位密钥长度)的椭圆曲线密码学(ECC)生成密钥。

ECC算法通常比RSA更快、更高效,特别是在计算资源有限的环境中。如果您计划使用外部工具生成私钥,请确保它基于Curve25519的ECC或4096位密钥长度的RSA。

提示#2:验证公钥


任何人都可以将密钥上传到公钥服务器。

这意味着您没有理由信任给定的关系,即电子邮件ID和公钥之间的关联。

因此,您应该与所有者核实其密钥的完整密钥指纹。建议您在现实生活中或通过电话(如果可能的话)使用与交换或下载联系人的OpenPGP公钥不同的渠道进行此验证。

作为提醒,指纹是用户证书的哈希值,显示为证书的属性之一。

如果这不可能,那么看看社交媒体、个人网站、博客等属于你想要拥有密钥指纹的个人的地方——因为有些人只是发布他们的公钥指纹。

在导入之前,请确保验证此指纹。

提示#3:不要只依赖KEY ID


始终通过指纹检查给定的OpenPGP公钥,指纹是一个40位字母数字字符串(没有空格或破折号)。

即使是64位长的OpenPGP密钥ID(例如0x44434547b7286901),冲突概率也可能是一个非常严重的问题。

提示#4:更新Keystore中的公钥


如果你不更新密钥存储中的公钥,那么你就不会得到及时的过期或撤销。

了解赎罪和撤销都非常重要。

使用Mailfence,您只需在密钥库中的任何导入的公钥上单击“从公共服务器更新”即可完成此操作。

Updating information from a public server

如果可能,执行可否认的密钥交换!

您可以通过拥有易于使用和识别的公钥来拒绝交换密钥。告诉所有通讯员使用您的公钥与您联系,并将他们的公钥包含在消息的加密正文中。

这将保护您免受所有主流密钥交换攻击。只需确保您的公钥可以通过多种渠道进行验证,包括社交媒体、公共邮件列表、密钥服务器等。承载PGP密钥指纹的通道越多,就越难被攻击。

提示#5:设置过期日期


另一个经常被忽视的提示是在钥匙上设置过期日期。

用户通常不希望他们的密钥过期,但有充分的理由让他们过期。

为什么?关键是要设置一些东西来禁用您的密钥,以防您失去访问权限或密钥已被泄露。这里的想法是设置一个到期日期,即使在到期日期之后也可以延长。

这意味着到期日更像是一个“安全阀”,会在某个时候自动触发。如果您有权访问密钥材料,则可以防止过期。

这里的第二个提示是设置一个日历事件来提醒您到期日期

最好在您的Mailfence日历中设置一个日历事件,在适当的时间提醒您延长OpenPGP密钥到期日期。同样,即使到期,您也可以随时延长到期日期!您不需要制作一个全新的密钥,只需要将过期时间延长到稍后的日期。

提示#6:生成吊销证书


但是,如果你忘记了密码会发生什么?或者,如果您的私钥被泄露或丢失。

然后,你唯一的希望就是等待密钥过期(这不是最好的解决方案)。

更好的方法是通过在公钥服务器上发布吊销证书来激活它。执行此操作将通知其他人您已撤销密钥。然而,被撤销的密钥仍可用于验证旧的数字签名,或者如果私钥可访问,则可用于解密旧数据。

注意:请记住,您的吊销证书已准备好使用。如果骗子可以访问它,那么他/她可以用它来撤销你的密钥。

提示#7:安全地共享您的OpenPGP密钥


第一次使用OpenPGP加密电子邮件时,您可能会感到困惑。如何获取收件人的公钥?他怎么得到我的?以下是您可以使用的一些最常见的方法。

方法1:数字签名电子邮件


第一种选择是发送一封数字签名的电子邮件,并将您的公钥附加到收件人身上。随后,您的收件人也应该这样做。这将要求您提前获得收件人的电子邮件地址。

使用Mailfence对电子邮件进行数字签名
 

方法2:即时通讯应用程序


在大多数情况下,此选项要求您提前获得收件人的手机号码。您还需要同时使用相应的应用程序。

如果您打算使用这种方法,我们建议您使用Signal。

如果您不确定联系人的身份,请按照此处详细说明的联系人验证步骤进行操作。

方法3:社交媒体账户和网站


今天很多人都在社交媒体上(脸书、X……)。这意味着您可以以纯文本形式向他们发送带有OpenPGP公钥的直接消息。

您有时可以在用户的网站/或其他在线状态上找到OpenPGP公钥指纹。Mailfence还提供了通过公共链接共享文档的选项,这些链接可用于共享OpenPGP公钥。

但请注意,虚假的社交媒体资料很常见。所以,确保你使用了正确的(通过做一些检查)。社交媒体资料也会受到损害。始终检查收件人的个人资料中是否有可疑标记,以确保其没有被泄露。

方法4:公钥存储库


公钥存储库是存放不同用户公钥的地方。

我们建议使用实现电子邮件验证且对GDPR友好的存储库或服务器(例如keys.openpgp.org)。

或者,还有其他基于“OpenPGP HTTP密钥服务器协议”规范的开放式公钥服务器。Hockeypuck就是这样一个实现。

但是,在这些服务器上发布公钥是一个不可逆的过程(您的密钥不能被删除或完全删除)。此类密钥服务器的另一个缺点是,密钥的UID(姓名和电子邮件地址)可能会公开。

请注意,任何人都可以在这些开放的公钥服务器上发布公钥。因此,在导入联系人的公钥之前,您需要确保已建立一定程度的所有权信任。

方法5:亲自会面


如果你提前知道你的收件人,并且有可能亲自见面,那么这可能是最合适的选择。您可以使用闪存盘共享或交换公钥。然后口头交换指纹,或通过任何其他安全可靠的方式。

交换OpenPGP公钥的目的是确保它们确实属于声称的所有者。

提示#8:备份您的密钥材料


仔细检查您是否有密钥材料的加密备份。

理想情况下,您应该备份密钥(默认情况下使用密码加密)。

使用Mailfence,您可以使用我们的虚拟云解决方案轻松备份您的密钥和任何其他敏感文档。

此外,请备份您的吊销证书,并将其存储在设备上的受保护位置。

提示#9:正确使用用户名


如果你不需要的话,不要在你的用户ID中包含“评论”。OpenPGP用户ID通常会提到你的名字或别名,而不是用于评论。

提示#10:注意公钥服务器


大多数基于OpenPGP的应用程序都配有一个特定的密钥服务器,没有其他密钥发现或交换选项。这并不理想,因为如果密钥服务器发生故障,或者更糟糕的是,如果它看起来正常工作但运行不正常,您可能无法收到关键的密钥更新。

这不仅是一个单点故障,也是OpenPGP用户之间关系信息泄露的主要来源,因此也是攻击的目标。

最后,您与密钥服务器的所有交互都应该加密(通过TLS/SSL–hkps),这将使任何可能窥探您流量的人都无法看到您的社交关系图。

提示#11:如何回复加密电子邮件


删除加密电子邮件回复中的解密内容,必要时仅引用相关部分。将您的应用程序配置为默认情况下不保存草稿(或将其加密存储),并丢弃已发送项目中的加密消息,或不以纯文本形式保存。

提示#12:保护您的元数据


通过简单地隐藏元数据(收件人、发件人、ip地址等)来尽量减少通信中的上下文信息泄漏也是一种很好的做法。

在可能和相关的情况下,控制这些信息,并将其与链接到您的数据解除链接。

例如,您可以通过创建新的电子邮件帐户来控制发件人字段。发送电子邮件客户端的IP地址可以通过使用VPN、Tor或公共互联网连接进行更改。关于Tor的常见警告适用:不要完全依赖Tor,如果你需要保护你的IP地址,那么就使用一个不属于你的IP。

为了数据隐私,主题行不应直接指电子邮件的内容。例如,“主题:很高兴在埃菲尔铁塔见到你!”几乎完全披露了电子邮件的内容。

提示#13:最终检查


最后,这里有一些您可以对OpenPGP密钥执行的最后检查:

确保您的OpenPGP密钥格式不是v3或更早版本;
验证您的OpenPGP密钥是否有合理的到期日期(例如,2年后)。
如果您使用Mailfence生成了私钥,您可以放心,密钥对将使用强大的技术参数生成。

 

本文地址
最后修改
星期二, 十一月 12, 2024 - 13:46
Tags
 
Article