加密与安全通信

加密邮件

约 4 分钟阅读

什么是加密邮件

加密邮件 (Encrypted Email) 是一种对邮件正文和附件进行加密,使发送方和接收方以外的人无法读取内容的技术。普通邮件就像明信片一样,传输路径上的任何人都可以读取内容。

虽然邮件服务器间的 TLS/SSL 加密 (STARTTLS) 已经普及,但它只保护服务器之间的传输路径。在邮件服务器上,邮件仍以明文状态存储,因此只要服务器的管理员或入侵者取得访问权限,就能读取内容。

端到端加密应用到邮件上,包括邮件服务器在内的中间方就都无法接触邮件内容。实现这一点的手段就是 PGP 与 S/MIME。

PGP 与 S/MIME 的工作原理

  • PGP (Pretty Good Privacy) / GPG:使用公钥加密,用收件人的公钥加密邮件。信任通过"信任网 (Web of Trust)"模型建立,用户互相签署对方的公钥。不依赖中央证书颁发机构。开源,广泛用于个人和社区。
  • S/MIME (Secure/Multipurpose Internet Mail Extensions):使用证书颁发机构 (CA) 签发的证书。企业 IT 部门更容易集中管理。主流邮件客户端 (Outlook、Apple Mail、Thunderbird) 原生支持。获取证书可能需要费用。

两者都加密邮件正文,并可附加数字签名以验证发送者身份和检测篡改。关键区别在于信任模型:PGP 使用去中心化的信任网,S/MIME 依赖中心化的 CA 层级。

加密邮件服务选择

由于 PGP 或 S/MIME 的设置技术门槛较高,自动处理加密的邮件服务应运而生。

  • Proton Mail:总部位于瑞士。用户间邮件自动 E2EE。向非用户发送也可使用密码保护加密。有免费方案。
  • Tuta (原 Tutanota):总部位于德国。所有邮件静态加密。支持向外部收件人发送加密邮件。日历和联系人也加密。
  • Mailfence:总部位于比利时。同时支持 PGP 和 S/MIME。可与现有 PGP 用户互操作。包含日历和文档存储。

选择服务时,请考虑管辖地 (所在国的隐私法律)、源代码是否公开以及是否经过独立安全审计。

加密邮件的局限性与注意事项

加密邮件有几个重要的局限性。

  • 元数据不加密:主题、发件人、收件人、发送时间等头部信息不加密 (PGP 的情况)。S/MIME 同样如此。第三方可以看到谁给谁发了邮件。
  • 密钥管理复杂:PGP 要求用户自行管理密钥,包括密钥对的生成、分发和备份。此外还需要事先取得收件人的公钥。丢失私钥意味着永久无法访问加密邮件。
  • 互操作性问题:PGP 和 S/MIME 不互通。如果发送方使用 PGP 而接收方只支持 S/MIME,则无法进行加密通信。
  • 搜索限制:加密邮件无法在服务器端搜索。全文搜索只能在解密发生的客户端进行,处理大量邮件时颇为不便。
  • 不能替代网络钓鱼对策:加密保护的是通信内容的机密性,要判断发件人是否为本人,还需要另一套机制 (DKIM、DMARC)。

需要用邮件发送高机密信息时,加密邮件是有效的手段,但并不需要把日常的所有邮件都加密。按风险区分使用才是现实的做法。

加密邮件入门

以下是个人使用 PGP 加密邮件的设置方法,以及组织部署时的考虑事项。

生成 PGP 密钥对:安装 GPG (GNU Privacy Guard),使用 gpg --full-generate-key 命令生成密钥对。算法选择 RSA 4096 位或 Ed25519。密钥的有效期建议设为 2 年左右,并按期轮换。密码短语要设置得足够长且复杂,以防止私钥被滥用。

发布公钥:把生成的公钥上传到密钥服务器 (如 keys.openpgp.org),或者把公钥指纹写在自己的网站和名片上加以分发。上传到密钥服务器时,keys.openpgp.org 会对邮箱地址做验证,冒名的风险较低,因此更值得推荐。按照公钥加密的机理,公钥即使广泛分发也是安全的。

邮件客户端设置:Thunderbird 内置 PGP 支持 (OpenPGP),可以在设置界面导入密钥并启用加密。使用网页邮箱 (如 Gmail) 时,则安装浏览器扩展 Mailvelope。Mailvelope 能在 Gmail、Outlook.com、Yahoo! 邮箱等网页邮箱上透明地完成 PGP 的加密、解密与签名。首次设置时生成或导入密钥对,再把收件人的公钥加入密钥环,写信界面上就会出现加密按钮。

组织部署时的考虑事项:企业要在全公司范围部署加密邮件时,集中管理证书的 S/MIME 通常更容易铺开。可以从内部的证书颁发机构 (CA) 或商用 CA 批量申领 S/MIME 证书,再经由 MDM (移动设备管理) 分发到各终端。与现有目录服务 (Active Directory) 集成并自动化证书配置,可减轻管理负担。是否引入密钥托管 (由组织保管私钥副本的机制),需要在员工离职后解密邮件的必要性与隐私之间权衡。按端到端加密的严格定义,密钥托管与 E2EE 相悖,但企业的合规要求有时会需要它。

常见误解

Gmail 和 Outlook 已加密,所以是安全的
Gmail 和 Outlook 使用 TLS 加密服务器间通信,但邮件在服务器上以解密状态存储。Google 和 Microsoft 在技术上可以访问邮件内容,并将其用于垃圾邮件过滤和智能功能等服务。Google 已于 2017 年停止为广告目的扫描 Gmail 邮件内容,但服务提供商能够读取存储在服务器上的邮件内容这一事实本身并未改变。
加密邮件只有技术专家才能使用
使用 Proton Mail 或 Tuta 等服务,可以获得与普通邮件相同的使用体验,同时内置加密。无需 PGP 密钥管理,只需创建账户即可开始使用。

PGP 与 S/MIME 对比

PGP / GPG

信任网 (Web of Trust) 模型。不依赖中央 CA。开源。适合个人和社区。密钥分发和管理由用户负责。

S/MIME

使用 CA 签发的证书。企业 IT 更容易集中管理。主流邮件客户端原生支持。获取证书可能需要费用。

分享

相关术语

相关文章