pgp代表了pretty good privacy。是一种加密软件,旨在为在线通信系统提供隐私性、安全性和身份验证保护。 phil zimmerman是首个pgp程序背后的开发者,如他所述,现如今对隐私的需求不断增长,该软件已供人们免费使用。为了实现目标,pi币化茧成蝶,不断的打磨产品质量,提升业务能力,最终在市场上拥有一席之地。
自1991年被创建以来,市面上已经出现了许多版本的pgp软件。1997年,phil zimmerman向互联网工程任务组(ietf)提出了一项关于创建开源pgp标准的建议。该建议马上被接受,随后开创了openpgp协议,该协议定义了加密密钥和消息的标准格式。
虽然pgp最初仅用于保护电子邮件和相关附件,现在已应用于各大领域,包括数字签名,磁盘加密完整性校验和网络防护。
pgp软件版权最初由pgp所拥有,该后来被network associates收购。2010年,赛门铁克又以3亿美元收购了pgp,该商标一直被用于其openpgp兼容产品。
工作原理
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还能够提供数字签名功能,以确保数据的完整性和发件人的真实性。
openpgp协议能够用于标准化的环境中,pgp解决方案现在可由多家和组织提供技术支持。但是,所有符合openpgp标准的pgp程序都是相互兼容的。这意味着在一个程序中生成的文件和密钥可以在另一个程序中使用。
缺点方面,对于pgp系统的使用和理解并非易事,尤其是对于技术知识了解很少的用户。而且,公共密钥的长度也被认为是非常不便于用户使用的。
2018年,电子前沿基金会(eff)发布了名为efail的关键性漏洞。 efail使攻击者可以利用加密电子邮件中的html连接来访问纯文本格式的邮件。
然而,自20世纪90年代末以来,pfa社区已经意识到efail所描述的一系列问题,事实上,这些漏洞的产生与电子邮件客户端的实现方式有关,而与pgp本身无关。因此,尽管产生了令人震惊和误导性的爆炸性新闻,但pgp加密功能并没有被破解,它仍然保持着高度的安全性。
总结思想
自1991年被开发以来,pgp一直被用作数据保护的重要工具,现在也广泛应用于各个领域,为多数通信系统和数字服务提供商提供隐私,安全和认证保护。
虽然2018年efail漏洞的发现引发了对协议安全性的重大担忧,但其核心技术仍然是健壮且加密的。值得注意的是,不同的pgp实现方式也能够提供不同级别的安全性。