本文件提供了一个高层次的概述。有关问题和说明,请参见单独的文件:在 Thunderbird 中使用 OpenPGP —— 怎么做以及问题解答
目录
什么是 Thunderbird 中的端到端加密?
电子邮件的端对端加密(e2ee)可以用来确保只有发件人和收件人可以阅读邮件的内容。 如果没有这种保护,网络管理员、电子邮件供应商和政府机构很容易读取你的信息。
实现 e2ee 需要发件人和收件人都很小心。任何参与方的一个错误都足以破坏 e2ee 的安全性。
另外,电子邮件元数据也不能用 e2ee 来保护。例如,发件人和收件人的姓名和地址,信息发送的时间,或从哪台电脑发送或接收电子邮件。即使使用 e2ee,邮件的主题也可能不受保护且容易被读取。
带 OpenPGP 的 e2ee 的一般工作方式
Thunderbird 处理了大部分的细节,因此你不需要担心这些问题。但是,我们建议你尝试了解它的工作原理,下面会介绍,这样可以减少你犯错的风险,避免不会受到全面保护的情况。
加密使用一种数学程序来使信息不可读。使信息再次可读被称为解密,需要了解所涉及的秘密。
以前的加密方法要求两个人见面并分享一个秘密,然后由发件人用来加密,随后由收件人用来解密信息。
用于电子邮件的 e2ee 使用了一种称为公钥加密法的现代方法。使用公钥加密法的 e2ee 需要每个发件人和收件人做一次准备,这涉及到个人随机数的生成。两个这样的随机数是必要的,一个将被称为你的密钥,另一个将被称为你的公钥。这些数字非常大,它们由数百或数千位数字组成。
利用巧妙的数学方法,可以用公钥对信息进行加密(使之不可读)。该信息只能由拥有匹配的密钥的人解密(使之可读)。换句话说,如果你把你的公钥给了别人,那么他们可以用这个密钥为你加密信息。而结果是除了你之外,任何人都无法读取数据。然后他们将加密的数据发送给你。然后你用你的秘钥来解密数据,然后你可以读取信息。
你的秘钥和其相关的公钥的配对被称为个人密钥。你决不能与其他人分享秘钥。因为那样的话,它显然不再是一个秘密,也不再是一个个人密钥。 如果你与其他人分享你的秘钥,那么其他人也可以读取发给你的加密信息。或者,如果你不小心,在没有保护的情况下存储你的密钥,或者你在没有保护的情况下将你的秘钥备份到云端,那么别人可能很容易窃取你的密钥,并用它来读取所有发送给你的加密信息。
另外,如果你丢失了你的秘钥,例如你丢失了你的电脑,或者你删除了你电脑上的所有数据,那么你将无法再读取你的加密信息。如果发生这种情况,你的信息是无法以任何方式被任何人恢复的。
还有一些可以破坏 e2ee 安全性的方法,这涉及到使用错误的公钥。下面是一个例子:
如果 Alice 想向 Bob 发送一封加密的电子邮件,她需要获得 Bob 的公钥。公钥是一个很大的数字,所以它必须通过互联网传输,或者在电子邮件中,或者从网站上下载,或者从目录中下载。如果 Alice 用 Bob 的密钥加密了一封电子邮件,而且 Bob 很小心,从不与其他人分享他的秘密密钥,那么只有 Bob 能够解密和阅读信息。
然而,困难在于如何确保 Alice 真的获得了 Bob 的公钥。有人可能试图欺骗 Alice 和 Bob,试图截获他们的通信以达到监视目的。例如,Eve可以创建一个恶意密钥并将其发送给 Alice,将其作为 Bob 的密钥。如果 Alice 相信这个密钥属于 Bob,并使用它来给 Bob 加密信息,那么 Eve 将能够读取 Alice 发送的信息。你可以把这比作获得某人的错误邮政地址,这样,从 Alice 到 Bob 的信就会转到 Eve 的家里。然后,Eve 打开信,阅读并将其发送给 Bob,可能会改变一些邮件的细节。
为了保证 e2ee 的安全,重要的是验证你是否真的获得了 Bob 的密钥,而不是一个恶意密钥。
每当你从你的一个通信者那里收到公钥时,你应该意识到它可能是一个恶意密钥的风险。如果你不能冒被 Eve 欺骗的风险,那么你应该仔细检查你是否收到了 Bob 的正确公钥。
仔细检查的常用方法是与 Bob 沟通一次,使用一种机制,让你确认你真的在与 Bob 交谈。例如,你可以使用视频通话,或者如果你认出 Bob 的声音,可以使用电话通话。或者你可以亲自见面。
一旦你与 Bob 交流,你应该打开你所收到的公钥的细节。Thunderbird 会向你显示一个特殊的校验和,这也被称为指纹,它是由大约 40 个字符和字母组成的。Bob 应该对他自己的指纹做同样的处理,并且应该把指纹读给你听。你应该看看你自己的电脑屏幕,并验证它是否与你在自己的电脑上看到的一致。如果不匹配,那么你就下载了不正确的密钥,或者有人试图欺骗你--实际上,你的通信受到了监视。如果完全吻合,那么你可以将密钥标记为已验证,你的软件将记住它。
用下面的比喻可能更容易理解公钥和秘钥的概念。把公钥想象成一个可以上锁的小盒子。你想有多少个小盒子都可以。你可以分享你的盒子,或者让它们供人下载,甚至把它们添加到一个目录中。其他人可以在互联网上找到你的盒子。他们可以在里面放置一个秘密信息,并将其锁定,然后将盒子寄给你。你的密钥就像一把真正的钥匙,可以用来解锁盒子。因为只有你有匹配的钥匙,所以只有你能解锁盒子。如果你想确定你真的拿到了 Bob 的盒子,而不是 Eve 的盒子,你需要看一下写在盒子外面的数字,这被称为指纹。用视频聊天、电话或当面与 Bob 交谈,验证盒子上的指纹是否与 Bob 告诉你的一致。
还要注意的是,在使用加密的电子邮件时,很容易出错。考虑一下,如果 Alice 向 Bob 发送了一个加密信息,而 Bob 可能决定将该信息转发给 Carol。Carol 可能从未准备使用 e2ee,或者 Bob 可能没有 Carol 的公钥。如果 Bob 在没有加密的情况下将 Alice 的信息转发给 Carol,那么原始信息的内容就不再受到保护。因此,如果你通过电子邮件交换敏感内容,你可能想要求你的通信伙伴不要转发你的电子邮件。
另外,用于 e2ee 的技术也可以用来对信息进行数字签名。电子邮件中显示的发件人地址可能被一个试图误导你的人修改过。如果 Bob 向 Alice 发送电子邮件,他可以使用他的密钥来创建一个数字签名。Alice 可以使用 Bob 的公钥来确认只有 Bob 能够创建这个签名,因为只有 Bob 拥有匹配的秘钥。如果 Alice 已经验证了 Bob 密钥的指纹,并且如果所有的数字都与 Thunderbird 的自动检查相匹配,那么就可以知道这个信息确实是由 Bob 发送的。当然,我们仍然假设 Bob 对他的秘钥很小心,从未分享过它。
带 S/MIME 的 e2ee 的一般工作方式
尽管 S/MIME 使用了一些与 OpenPGP 相同的概念,但它的使用方式不同。
在未来的时间里,这篇文章将被扩展到 S/MIME。
使用 e2ee 的后果是什么
如果你发送加密的信息,你发送的文件夹中的信息将被加密。如果你丢失了你的密匙,你将无法阅读你的存档信息。这些信息无法恢复!
所有你阅读加密信息的设备必须配置为使用相同的个人密钥。如果你使用的是 Thunderbird 以外的软件,该软件可能不支持端对端加密。例如,在你的手机上阅读加密邮件就需要进行一些设置。
如果你丢失了密匙,其他人可以继续给你发送加密的邮件,而你将无法阅读这些邮件。
注意:一般来说,搜索功能对加密邮件的正文内容不起作用。
如何在 Thunderbird 中使用 OpenPGP 端到端加密技术
Thunderbird 不会自动尝试使用 e2ee。要使用 e2ee,你必须配置你的个人密钥。配置部分可以在 Thunderbird 的账户设置中的端到端加密标签中找到。一旦你配置了个人密钥,你就可以在你发送的每封邮件中控制加密或数字签名的使用。
对于每一个你想接收加密邮件的电子邮件地址,或者你想用来发送数字签名邮件的电子邮件地址,你需要创建你的个人密钥。
你应该避免拥有多个个人密钥。如果你使用两台设备来阅读同一电子邮件帐户的信息,你可能希望能够阅读你在两台设备上收到的加密信息。 因此,只生成一次个人密钥。然后将你的个人密钥备份到一个文件中。建议你使用一个强大的密码来保护你的个人密钥的备份,以使其他人难以使用你的备份文件来获得你的密钥。将该备份文件复制到另一台设备上,输入密码解锁该备份,然后在该设备上导入个人密钥。
一旦你创建了你的个人密钥,你需要使其他人能够获得你的公钥。要小心,千万不要与任何人分享你的秘密钥匙。然而,公钥可以被广泛分享,以便人们可以向你发送加密的电子邮件并验证你的数字签名。
在撰写电子邮件时,在工具栏上的安全按钮后面有一个箭头显示。点击该箭头,选择菜单选项 “附加我的公钥”。
收件人会在你的电子邮件中看到一个附件,文件名以 “OpenPGP” 开头。如果收件人使用 Thunderbird,那么他们可以右键点击该邮件,打开一个带有选项的菜单,从该菜单中他们可以选择 “导入OpenPGP密钥”。
讨论和支持
如果你想讨论 Thunderbird 中的端到端加密邮件,需要帮助设置,或者有其他与此相关的问题,请在我们的 e2ee 邮件列表中进行讨论: https://thunderbird.topicbox.com/groups/e2ee