良好隐私密码法
PGP加密如何工作
PGP加密由一系列散列、数据压缩、对称密钥加密,以及公钥加密的算法组合而成。每个步骤支持几种算法,可以选择一个使用。每个公钥均绑定唯一的用户名和/或者E-mail地址。这个系统的第一个版本通常称为可信Web或X.509系统;X.509系统使用的是基于数字证书认证机构的分层方案,该方案后来被加入到PGP的实现中。当前的PGP加密版本通过一个自动密钥管理服务器来进行密钥的可靠存放。
兼容性
PGP工作原理图示
随着PGP的版本更新,新版本的PGP系统开始支持新的特征和算法,新系统生成的加密消息不能直接被旧的PGP系统解密,即使是使用旧版存储的有效私钥也不行。因此,在PGP通讯中的通信双方应统一版本,或者至少协商好PGP的具体设置。
机密性
PGP可以用来发送机密消息。这是通过对称的一组密钥-公钥组合来实现的。消息采用对称加密算法加密,采用一组对称密钥。每个对称密钥只使用一次,所以也叫做会话密钥。会话密钥通过接收方的公钥来加密保护,因此只需确保仅接收方能解密会话密钥即可。加密的消息和加密的会话密钥一起发送给接收方。
数字签名
PGP支持消息认证和完整性检测。完整性检测被用来检查消息在传输过程中是否变更过(即验证消息完整性),而消息认证则是被用来决定消息是否确由某特定的人或实体发出(即数字签名验证)。在PGP中,这些特性默认是和消息加密同时开启的,而且同样可以被应用到明文的验证。发送者只需使用PGP为消息创建一个数字签名(签名算法采用RSA或DSA算法(英语:Digital Signature Algorithm))。具体步骤为:PGP以数据或信息创建一个散列(参见消息摘要),然后使用发送者的私钥利用散列生成数字签名。
信赖网络
不管是在加密消息时还是在验证签名时,都需要注意用来发送消息的公钥是否确实属于期望的接收者。简单的从某个位置下载一个公钥是没有保障的。蓄意的或意外冒名顶替是可能的。PGP从它的第一个版本起,总是包含在一个"身份证书"中发布用户公钥,身份证书也是经过加密构造的,所以任何的篡改或意外的变动都可以被迅速的检测出来。但是仅通过创建一个即使最简单的篡改都会被发现证书仍然不够,这样的检测机制只能在证书创建之后用于避免篡改,而不是创建之前。用户也必须用某种形式确保证书中的公钥真正的属于特定的人/实体。从第一个发行版开始,PGP产品就包含一个内部的"审查方案"来协助。一个信任模型被叫做信赖网络(Web of Trust)。一个给定的公钥(如一个用户名到对应其密钥的绑定信息)可以被第三方用户数字签名,来证明某人(一个用户名)和一个密钥关联。可以在这样的签名中包含几个信任级别,只不过许多程序都会读写这个信息,而只有少数会通过信任级别来决定是否信任一个密钥。
信赖网络协议(Trusted-Web Protocol)在1992年的PGP 2.0手册中被菲利普·齐默曼(Philip R. Zimmermann)描述为:
信赖网络机制比S/MIME机制的集中管理的公钥基础设施有优势,但是没有被网络普罗大众普遍采用,一般只在Unix-like的爱好者、开源软件界、和对隐私特别注意而且有电脑知识的人群之间使用。如何使一般用户容易使用、乐意接收证书然后手动的验证它们的有效性,对于这些潜在的推广上阻碍还没有找到满意的解决方案。
近来有一些电子邮件服务业者推出结合于网页邮件接口的简便PGP操作,用户就算不创设自己的PGP密钥也可以寄出PGP加密信,包括寄给不使用PGP的收信人,并以通关密语的问答来使收信人获取阅读权限。每封信可以设置不同的通关密语,并能设置每个密语的有效期限(对于寄信人而言则是无期限的)。收信人甚至可以在回答正确的通关密语后,以勾选选项的方式轻易回复PGP加密信,无需自行创设和管理PGP密钥。对于一般用户而言这也许足够安全,但对于资安极度谨慎的人而言,这机制把私钥也存在寄件人的邮件服务器上,仍存有私钥外泄的疑虑,不论是政府依法获取,或是黑客非法入侵后获取。针对非法入侵,只能信赖电子邮件服务业者的安全防护能力;对于合法途径则只能通过设置及复杂的通关密语来提高破解难度。
历史
早期历史
菲利普·齐默曼(Philip R. Zimmermann)在1991年创造了第一个版本的PGP,其名称“Pretty Good Privacy”的灵感来自于一个名为“Ralph"s Pretty Good Grocery”的杂货店——电台主播Garrison Keillor虚构出来的一个名为Lake Wobegon的城市的一个杂货店。
软件第一个版本包含一个齐默曼自己设计的对称密钥算法,与周六夜现场的一个小品BassOmatic同名。作为一个老牌的反核能活跃分子,齐默曼为了让所有有相似倾向的人们可以安全的使用BBS并且安全存储消息和文件而创造了PGP加密。在非商业用途上是不需要授权的,无须任何费用,并且在所有的发行中附带了完整的源代码。
在2001年6月5号发表的一篇标题为"PGP 10周年" 的文章中,齐默曼描述了他最初开发PGP时的情景:
PGP在互联网上传播开来,并且在这个世界上获得了非常多的拥护者。PGP用户和支持者也包括在极权主义国家持不同政见的人们(一些给齐默曼的感人信件被发表了,其中一些在美国国会之前被包括到证据中)。在世界其它地方的自由意志主义支持者(参考齐默曼在各个听政会上发表的证据),以及“自由通讯”激进主义分子,他们称他们自己为加密爱好者,进行宣传和分发。
刑事侦察
在发行后不久,PGP加密走出了美国,在1993年二月,齐默尔曼变成了美国政府针对“没有授权的军需品出口”犯罪调查的正式目标。根据美国出口管理法案中的定义,加密系统使用大于40位的密钥将被认为是军需品。PGP从没有使用小于128位的密钥,因此在那时被如此认定。如果被判有罪,这将会是严重的罪行。几年后,对齐默尔曼的调查未经备案即被关闭,也没有提起针对他本人或其他任何人的刑事指控。
齐默曼使用了一种富有想象力的方法来对抗这一规定。他将PGP的全套源代码出版成一本书,由MIT出版社(英语:MIT Press)发行,受到了广泛欢迎。任何想要构建自己的PGP版本的人只需买下这本60美元的书,切掉封面,分离页面,然后使用OCR(文字扫描识别)程序进行扫描和文字识别(或者直接输入),生成一系列的源代码文本文档。接下来便可以使用自由分发的GCC来编译程序。PGP就是这样在全世界变得可用。声明的原则很简单:对军需品——枪支、炸药、飞机和软件的出口是被限制的,然而书本出口受到第一修正案(部分)的保护。这个问题从未再在法庭中检查过。
商业应用
PGP一般在企业资源规划(即ERP)软件连接到银行系统时使用,防止信息在传输过程中被删改或盗取,从而减少商业秘密泄露和遭遇诈骗的风险。
OpenPGP
参考文献
^PGP如何运作?. Jedi"s BLOG. 2003-05-09 [2016-11-02]. (原始内容存档于2016-03-14) (中文(台湾)).
^例如:Tutanota和StartMail。
^PGP Marks 10th Anniversary. Phil Zimmermann. [2010-08-23].
^Zimmermann, Philip. PGP Source Code and Internals. MIT Press. 1995. ISBN 0-262-24039-4.
免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。
- 有价值
- 一般般
- 没价值