什么是电子邮件加密?

电子邮件加密掩盖了电子邮件的内容,使其无法被未经授权的各方查看或篡改。

学习目标

阅读本文后,您将能够:

  • 定义“电子邮件加密”
  • 解释电子邮件加密的工作原理
  • 了解电子邮件加密的主要类型

相关内容


想要继续学习吗?

订阅 TheNET,这是 Cloudflare 每月对互联网上最流行见解的总结!

参阅 Cloudflare 的隐私政策,了解我们如何收集和处理您的个人数据。

复制文章链接

什么是电子邮件加密?

电子邮件加密是一种掩盖电子邮件消息中内容的方法,防止未经授权的各方进行查看或更改。加密通过编码来掩盖这些内容——换而言之,使用密码密钥*将可读文本变为无法破译的随机字符组合。通过使用一个密钥,收件人的电子邮件提供商能够解码文本,并在电子邮件安全地传递到预定的收件箱后显示出电子邮件的内容。

许多电子邮件提供商使用加密技术,来在发件人和收件人的电子邮件服务器之间安全地传输消息。这可以帮助确保在邮件传输过程中攻击者无法进行拦截,使得他们不能查看、改动或窃取这些邮件中的敏感信息。然而,一些电子邮件服务不提供加密,这就让用户更容易遭受数据窃取和其他攻击。

*加密密钥是加密算法用来打乱数据的一串字符。

电子邮件加密是如何运作的?

电子邮件加密是由电子邮件服务提供商来进行,他们负责存储、传输和接收用户之间的电子邮件消息。常用的电子邮件加密方法有两种:传输级加密和端到端加密。

传输级加密

传输级加密使用 Transport Layer Security (TLS) 协议来加密和解密电子邮件消息。此外,它还负责验证参与传输电子邮件消息的服务器的身份,确保攻击者无法截获这些消息。

加密消息与验证客户端身份(即用户设备)和 web 服务器的过程称为 TLS 握手,这个过程分为四个步骤:

  1. 客户端和服务器商定将用于建立连接的 TLS 版本。
  2. 客户端和服务器商定将用于确定该会话的加密密钥的密码套件(或算法)。
  3. 使用 TLS 证书验证服务器的身份。
  4. 生成加密密钥*(也称为会话密钥),并在握手完成后用于加密消息。

传输级加密在 SMTP 过程中保护电子邮件。SMTP,即简单邮件传输协议,是一种电子邮件传输协议,负责在电子邮件客户端和服务器之间交换数据。在此过程中,电子邮件消息在到达预定目的地之前,通常会被传输到多个电子邮件服务器;TLS 加密确保消息在不同服务器之间的中继过程中受到保护。每个服务器与客户端或服务器与服务器的连接都会使用一个新的 TLS 握手过程。这就表示消息会被短暂地解密,然后对每次跳跃进行重新加密。(了解更多关于 SMTP 的工作原理。)

为了直观地展示这一过程,试想一下,Alice 要从旧金山向东京寄送一份礼物。他们把礼物放在一个盒子里,这样可以确保这些物品的私密性和安全性(就像加密确保电子邮件内容的私密性一样)。他们把包裹交给邮递员,邮递员会将其送往当地的一个邮局。包裹会经过检查,以确保内容和配送信息均正确。然后,包裹会被运到东京,在那里通过海关并再次接受检查。最后,包裹被转移到当地邮局进行投递,那里会经过最后一次检查后才会送达预定目的地。

这类似于 TLS 加密,即电子邮件在传递到最终目的地之前,会在其所到达的每一个服务器解密和重新加密。

*会话密钥是 TLS 握手过程中双方都会使用的一个临时加密字符串。

端对端加密

与传输层加密不同,端对端加密(也称为 E2EE)不会在电子邮件消息传输过程中解密和重新加密。而是,消息只能由两方解密:发件人和电子邮件的最终收件人。这可以防止第三方截获电子邮件消息以及防止窥探、改动或复制其内容。

与 TLS 加密一样,E2EE 使用公钥加密(或非对称加密)来加密和保护发件人和收件人之间的消息。然而,TLS 对客户端和服务器之间的消息进行加密,而 E2EE 则对电子邮件的发件人和收件人之间的通信进行加密——确保甚至包括服务提供商在内的任何人都无法解密该消息。(了解更多关于 E2EE 与 TLS 加密的不同之处)。

回到前面的例子,现在试想一下,Alice 要把一个包裹从旧金山的一个社区寄到另一个社区。包裹被邮递员取走,直接送到最终目的地,没有任何的中间检查工作。这类似于端对端加密,即发件人的电子邮件消息在到达预定收件人之前不会被解密。

为什么加密对电子邮件安全很重要?

当电子邮件在 20 世纪 70 年代首次问世时,用户之间的消息并未加密。一封电子邮件消息所包含的所有内容——包括邮件正文中的任何敏感数据均为明文,这就表示任何人都可以轻易地读取这些内容。这使得用户很容易受到攻击,因为攻击者无需先进行解密,就可以拦截消息并窃取数据。

随着加密协议的发展,用户和电子邮件提供商能够将明文消息转换成密码文本,防止未经授权的各方通过数据包嗅探器(一种旨在收集和分析网络上传输数据的程序)来窥探或窃取数据。

然而,尽管这些加密协议在保护电子邮件消息免受攻击时发挥了重要的作用,但电子邮件仍然很容易遭遇风险。

不可避免的是,使用 TLS 加密的电子邮件在服务器中继之间会进行解密,因此在电子邮件传输过程中,很难完全保护数据免受在途攻击(有时称为中间人攻击)。在遭受在途攻击时,攻击者在敏感数据到达预定收件人之前就将其截获。

同时,提供 E2EE 的服务提供商可能会在其服务中加入加密后门。后门是一种规避加密方法和访问敏感用户数据的秘密手段。提供商可能利用这些后门来监视用户的活动或非法使用他们的数据。

常见的电子邮件加密工具有哪些?

电子邮件加密通常由服务提供商(如Gmail)进行或由用户来配置。如果组织需要强大的加密措施来保护其消息,可以使用网关软件或基于网络的服务,这两种方式都允许他们设置策略,以确定哪些电子邮件需要加密,并可指定应该用于加密消息的协议。

一些最常见的加密工具包括:

加密工具 加密类型 优势 劣势
STARTTLS 是一条命令,用于告知电子邮件服务器启动 TLS 连接 传输层
  • 用于保护 SMTP 和 IMAP 连接的安全
  • 可以被任何支持加密的电子邮件服务器使用,即使服务器使用不同的协议也是如此
  • 受到电子邮件提供商的广泛支持
  • 必须由收件人的电子邮件提供商进行配置
  • 消息可能在 SMTP 中继之间被拦截
  • 增加了 SMTP 连接的延迟
STLS 与 STARTTLS 一样,是一条命令,用于为 POP3 启动 TLS 连接 传输层
  • 用于确保 POP3 连接的安全
  • 可以被任何支持加密的电子邮件服务器使用,即使服务器使用不同的协议也是如此
  • 受到电子邮件提供商的广泛支持
  • 必须由收件人的电子邮件提供商进行配置
  • 消息可能在 SMTP 中继之间被拦截
  • 增加了 SMTP 连接的延迟
Pretty Good Privacy (PGP) 和 OpenPGP 是使用公钥和私钥加密的程序 端到端
  • 提供数字签名来证明消息的真实性
  • 与大多数电子邮件服务兼容
  • 配置难度更大;需要用户设置一个公/私钥对
  • 不会对元数据进行加密(如邮件标题)
  • 第三方有可能识别电子邮件的发件人和收件人
  • 与其他协议不兼容
  • 不容易与电子邮件客户端整合
安全/多用途 Internet 邮件扩展 (S/MIME) 是一项公共密钥加密标准,用于告知服务器如何加密 MIME 数据 端到端
  • 使用证书颁发机构 (CA) 来验证消息
  • 提供数字签名来证明消息的真实性
  • 受到电子邮件提供商的广泛支持
  • 证书需要每年更新一次
  • 不会对元数据进行加密(如邮件标题)
  • 第三方有可能识别电子邮件的发件人和收件人
  • 与其他协议不兼容

其他电子邮件加密协议包括 GNU Privacy Guard (GPG) 和 Bitmessage,前者是 PGP 的免费替代产品,后者是以加密货币比特币为模式的加密协议。

电子邮件加密是否能保证电子邮件的安全?

电子邮件加密可以保护电子邮件的内容。但电子邮件消息的内容本身仍然可能是不安全的或者是存在危险的。例如,攻击者可以向预定的受害者发送完全加密的钓鱼邮件,而受害者所使用的加密方法却是没有办法阻止他们落入攻击的圈套。

电子邮件安全性是一个非常广泛的领域,需要解决的攻击载体有很多。如欲了解更多关于确保电子邮件收件箱安全的信息,请参阅什么是电子邮件安全性?