PGP(Pretty Good Privacy)又称为Pretty Good Privacy,它可以用来保护私隐信息。虽然很难统计这个世界上究竟有多少人使用PGP,但">Philip Zimmermann作为PGP的设计者,被评为50位Internet上最有影响力的人之一。
以前,PGP是一种邮件加密软件,它被用于保证邮件在传输过程中保证其保密性和身份确凿性(即身份不可冒认)。现在,PGP的应用已经超出邮件范围,在即时通讯、文件下载、论坛等地方都时常看到PGP的踪迹。
一.PGP是啥?GPG是啥?
PGP么,简单的说,是一款以利用公钥和密钥技术的加密和身份验证软件。
而GPG呢,就是开源的PGP。
二.公钥?密钥?听起来很麻烦啊!
公钥和密钥,是现在密码学的一个发明。以我们生活中的例子来说,公钥相当于你的银行帐号,私钥相当于你的银行存折和银行卡。
公钥,也就是银行帐号,是公开的,让大家都知道,这样可以让别人向你汇钱。
而私钥这个存折呢,是要小心的藏好的,绝对不能满世界乱丢,因为凭它就可以去银行取你的钱呢。
三.那么说PGP和GPG是很NB的加密软件了?
虽然PGP和GPG有强大的安全性,足够胜任加密软件的功能。但是,严格意义上来说,PGP和GPG的加密功能应该叫做保密功能比较贴切。只把PGP和GPG当加密软件用,有点大才小用和不方便了,如果只是要加密软件的话,我个人还是比较推荐TrueCrypt这款软件,毕竟TureCrypt在保持了强大的安全性的同时,不需要好好保护自己的私钥这么麻烦。就那前面的银行帐号的例子来说,你可以天天去银行自己给自己汇款,但是还是直接存钱比较方便不是么?
那么PGP和GPG的保密性又是啥回事捏?这很好理解。你汇钱给别人的帐号,是希望持有对应帐号银行存折的人才能取,其他的 比如 银行保安阿,柜台的工作人员阿,银行里排队排在你后面的人阿,就算经手了你的钱和汇款帐号也不能偷偷摸摸的把对方的钱取出来对不?所谓的保密性,就是起到这个作用。
四.额,我只是要个加密软件而已,保密性对我没什么用吧?
保密性当然很重要。对于目前整个互联网应用来说,还是基于帐号+密码的体系的。这是非常脆弱的一种体系。试想如果银行不给你银行卡和存则,而是给你一个帐号和密码,凭这个帐号和密码就能动你的前,你能放心吗?而且,我们只是租用互联网和互联网上的服务而已,不管是你的isp,你的email服务商,你上的bbs,甚至管你的一个小小的网管,只要他们高兴,都能看到你在网络上的所有数据。说不定你那个网管还可以边嘲笑你些给你女朋友的email肉麻边帮你修改里面的错别字呢…………要知道现在我们常用的http,smtp,pop服务都是明文传递你的信息甚至是你的帐号密码的。不信?自己去搜索"外贸邮件不正常"看看。
而现在的PGP也好,用于安全协议的https、sftp也好,或者说现在大行其道的数字证书也好,都是采用公钥/密钥模式,把以前明文通信的,如同明信片一样内容,精心的加上了一个只有收件人能打开的信封而已。若果你觉得保密性不重要,那么想想你会把比较个人的信件用人人都能看到的明信片寄出去吗?
五.听起来有点道理,那么那个"签名"又是啥东西?
其实呢,这个"签名"是英文的直译。我个人的角度来看,还是理解为手写体的笔迹比较贴切。以那个信件的例子来说,谁都可以自称你给你女朋友写信,签上你的地址,也可以在公共场所以你的名义贴大字报。那么你的女朋友又是以什么来判断写信的是不是你呢?自然是靠那个别人很难模仿的笔迹。而PGP,或者其他的公钥/密钥系统的软件所产生的签名,就是等于把原来是印刷体的文字,变成你自己手写的内容。
而用pgp或者数字证书等东西进行签名,其意义就在于,声明某一段文字或者文件是你本人发表的,而且防止别人篡改你的东西。这在bbs等公共场合,有权限的各级管理员可以修改你发布的帖子的内容的时候,特别有用。