更新时间:2025-07-24 10:54:01 编辑:丁丁小编
来源:点击查看
简介
什么是 PGP?一窥“相当不错的隐私”技术
PGP,全称 Pretty Good Privacy,是一种加密软件,旨在为在线通信系统提供隐私、安全和身份验证。最初由 Phil Zimmerman 开发,他认为随着人们对隐私的需求日益增长,应该免费提供这款软件。
自 1991 年问世以来,PGP 软件经历了多次迭代。1997 年,Phil Zimmerman 向互联网工程任务组 (IETF) 提议创建开源 PGP 标准。该提议被采纳,并催生了 OpenPGP 协议,该协议定义了加密密钥和消息的标准格式。
虽然最初 PGP 仅用于保护电子邮件及其附件,但现在已被广泛应用于数字签名、全盘加密和网络保护等领域。
PGP 最初由 PGP Inc. 公司所有,该公司后来被 Network Associates Inc. 收购。2010 年,赛门铁克公司以 3 亿美元收购了 PGP,现在该术语是其 OpenPGP 兼容产品的商标。
PGP 的工作原理
PGP 是首批广泛使用的公钥密码学软件之一。它是一种混合密码系统,同时使用对称加密和非对称加密来实现高安全级别。在基本的文本加密过程中,明文(可以清楚理解的数据)被转换为密文(无法读取的数据)。但在加密过程发生之前,大多数 PGP 系统会执行数据压缩。通过在传输之前压缩明文文件,PGP 既节省了磁盘空间和传输时间,又提高了安全性。
文件压缩之后,实际的加密过程就开始了。在这个阶段,压缩后的明文文件会使用一次性密钥进行加密,这个密钥被称为会话密钥。该密钥通过使用对称密码学随机生成,并且每个 PGP 通信会话都有一个唯一的会话密钥。
接下来,会话密钥 (1) 本身使用非对称加密进行加密:消息的预期接收者 (Bob) 将其公钥 (2) 提供给消息的发送者 (Alice),以便她可以加密会话密钥。此步骤允许 Alice 通过互联网安全地与 Bob 共享会话密钥,而无需考虑安全条件。
会话密钥的非对称加密通常通过使用 RSA 算法来完成。许多其他加密系统也使用 RSA,包括保护互联网大部分内容的传输层安全 (TLS) 协议。
一旦消息的密文和加密的会话密钥被传输,Bob 就可以使用他的私钥 (3) 来解密会话密钥,然后使用该会话密钥将密文解密回原始明文。
除了基本的加密和解密过程之外,PGP 还支持数字签名,数字签名至少具有以下三个功能:
- 身份验证:Bob 可以验证消息的发送者是 Alice。
- 完整性:Bob 可以确定消息没有被更改。
- 不可否认性:在消息被数字签名后,Alice 不能声称她没有发送该消息。
PGP 的应用场景
PGP 最常见的用途之一是保护电子邮件的安全。受 PGP 保护的电子邮件会变成一串无法读取的字符(密文),只能使用相应的解密密钥才能解密。其工作机制与保护短信安全几乎相同,并且还有一些软件应用程序允许在其他应用程序之上实施 PGP,从而有效地将加密系统添加到不安全的短信服务中。
虽然 PGP 主要用于保护互联网通信的安全,但它也可以应用于加密单个设备。在这种情况下,PGP 可以应用于计算机或移动设备的磁盘分区。通过加密硬盘,用户每次启动系统时都需要提供密码。
PGP 的优缺点
由于 PGP 结合使用了对称加密和非对称加密,因此用户可以通过互联网安全地共享信息和加密密钥。作为一种混合系统,PGP 既受益于非对称密码学的安全性,又受益于对称加密的速度。除了安全性和速度之外,数字签名还可以确保数据的完整性和发送者的真实性。OpenPGP 协议促成了标准化竞争环境的出现,现在有许多公司和组织提供 PGP 解决方案。尽管如此,所有符合 OpenPGP 标准的 PGP 程序都是相互兼容的。这意味着在一个程序中生成的文件和密钥可以在另一个程序中使用,而不会出现问题。
至于缺点,PGP 系统不容易使用和理解,尤其是对于技术知识匮乏的用户。此外,许多人认为公钥的长度过长,非常不方便。
2018 年,电子前沿基金会 (EFF) 发布了一个名为 EFAIL 的重大漏洞。EFAIL 使攻击者可以利用加密电子邮件中的活动 HTML 内容来访问消息的明文版本。
然而,PGP 社区早在 20 世纪 90 年代末就已经知道 EFAIL 描述的一些问题,事实上,这些漏洞与电子邮件客户端的部分不同实现有关,而不是与 PGP 本身有关。因此,尽管标题耸人听闻且具有误导性,但 PGP 并没有损坏,并且仍然非常安全。
总结
自 1991 年开发以来,PGP 一直是数据保护的重要工具,现在已广泛应用于各种应用中,为多个通信系统和数字服务提供商提供隐私、安全和身份验证。
虽然 2018 年发现的 EFAIL 漏洞引起了人们对该协议可行性的重大担忧,但核心技术仍然被认为是强大且密码学上合理的。值得注意的是,不同的 PGP 实现可能会呈现不同的安全级别。