
PGP加密解密技术初探与实践.doc
9页PGP 加密/解密技术初探与实践 吴若童 14102131第 1 页 共 9 页PGP 加密/解密技术初探与实践学生姓名:吴若童学 号:14102131专 业:信息管理与信息系统电子邮件:toney_wu@PGP 加密/解密技术初探与实践 吴若童 14102131第 2 页 共 9 页PGP 加密/解密技术初探与实践[内容提要] 本文简要介绍了 PGP 的加密机制、密钥管理原理,安全隐患对比 PGP 与 S/MIME 邮件加密原理介 绍 PGP 在 Windows 操作系统下的的安装,密钥生成,电子邮件加密及文件加密的过程[关键词] PGP 加密一、PGP 的基本认识PGP (Pretty Good Privacy) 是基于一种公钥原理 (Public Key)——RSA 的软件, 公钥理论是在 1976 年 Whitfield Diffle 及 Martin Hellman 共同提出的,1977 年由三位 MIT 教授建立了实际方法, 于是大家利用他们的名字称之为 Rivest-Shamir-Adleman, 也就是著名的 RSA 方法.私钥具有保密性只有使用者个人才会知道,一般的私钥还会用 DES 的方法将它再加上一层的保护; 如果使用者用公钥加密其信息时, 只有用他的私钥才可将其信息解码, 如果用他的私钥加密其信息时, 只有其用公钥才能解码.PGP 提供了可以用于 E-mail 和文件存储和应用的保密宇鉴别服务 ,选择最可用的加密算法作为系统的构造模块,且将这些算法集成到一个通用的应用程序中,该程序独立于操作系统和处理器,且基于一个使用方便的小命令集. PGP 程序和文档在 Internet 上公开,由于其免费,可用于多平台,使用生命力和安全性都为公众认可的算法等等的特点,使 PGP 在全世界范围内,各个领域都有广泛的应用,根据《财富》的排名,十大商业银行中 90%,十大制药企业中80%,十大健康机构中的80%,十大能源机构中70%,前15位宇航及防御系统相关企业中73%,前20位电信公司的75%,前20位汽车相关制造企业中70%,都在使用 PGP 进行电子邮件及其它重要数据的加密。
二、PGP 的加密机制 RSA 公钥体系满足保密性(privacy)和公证性(authentication) PGP 的创造性在于他把 RSA 公钥体系的方便和传统加密体系的高度结合起来,并且在数字签名和密钥认证管理机制上有巧妙的设计RSA(Rivest-Shamir-Adleman)算法是基于大数不可能被质因数分解假设的公钥体系简单地说就是找两个很大的质数一个对外公开,一个不告诉任何人公开的一个称为“公钥” ,另一个叫“私钥” (Prblic key & Secret key or Private key) 这两个密钥是互补的,也就是说用公钥加密的密文只可以用私钥解密,反过来也一样PGP 加密/解密技术初探与实践 吴若童 14102131第 3 页 共 9 页PGP 的数字签名是利用一个叫“邮件文摘”的功能, “邮件文摘” (message digest) ,简单地讲就是对一封邮件用某种算法算出一个最能体现这封邮件特征的数来,一旦邮件有任何改变这个数都会发生变化,那么这个数加上用户的名字(实际上在用户的密钥里)和日期等等,就可以作为一个签名了,确切地说 PGP 是用一个 128 位的二进制数进行为"邮件文摘"的,用来产生它的算法就是 MD5(Message Digest 5。
MD5 的提出者是 Ron Rirest,PGP 中使用的代码是由 Colin Plumb 编写的 MD5,MD5 是一种单向散列算法,它不像校验码,是一份替代的邮件并且与原件具有同样的 MD5 特征值 PGP 还可以只签名而不加密,这适用于公开发表声明时,声明人为了证实自己的身份(在网络上只能如此了) ,可以用自己的私签名,这样就可以让收件人能确认发信人的身份,也可以防止发信人抵赖自己的声明这一点在商业领域有很大的应用前途,它可以防止发信人抵赖和信件被途中篡改因为 RSA 算法计算量很大而且在速度上也不适合加密大量数据,所以 PGP 实际上用来加密的不是 RSA 本身,而是采用了一种叫 IDEA 的传统加密算法,又称为“对称加密法”传统加密方法就是用一个密钥加密明文,然后用同样的密钥解密这种方法的代表是DES(US Federal Data Encryption Standard),也就是乘法加密,这的主要缺点就是密码长度较短,且的传递渠道解决不了安全性问题,不适合网络环境邮件加密需要IDEA 是一个有专利的算法,专利持有者是 ETH 和一个瑞士公司:Ascom-Tech AGIDEA 的加(解)密速度比 RSA 快得多,所以实际上 PGP 是以一个随机生成的密钥(每次加密不一样) ,用 IDEA 算法对明文加密,然后用 RSA 算法对该密钥加密。
这样收件人同样是用 RSA 解出这个随机密钥,再用 IDEA 解密邮件本身这样的链式加密就做到了既有 RSA 体系的保密性,又有 IDEA 算法的快捷性三、PGP 的密钥管理 PGP 加密与解密不像其它传统加密的方式,而是利用所谓的公开钥匙密码学 (Public Key Cryptology) 为基础举例来说,当您要传送一封保密信或档案给笔者 时,必须先取得笔者的公开钥匙 (Public Key) ,并且将它加入您的公开钥匙环 ( Public Keyring) 中,然后利用笔者的公开钥匙将信件加密当笔者收到您加密的信 件後,笔者必须利用其相对的私人钥匙 (Secret Key) 来解密因此,除非其他人拥 有笔者的私人钥匙,否则无法解开您所加密的信件同时,笔者在使用私人钥匙解密 时,还必须输入通行码 (Pass Phrase),如此又对加密后的讯息多了一层保护通过 PGP 加密机制可以使一个普遍信任的机构为认证权威机构,每个由他签过字的公钥都被认为真的,这样大家只要有他的公钥就行了,认证这个人的公钥是方便的,因他广泛提供这个服务,假冒他的公钥是极困难的,因为他的公钥流传广泛这样的"权威机构"适合由非个人控制组织或政府机构充当,现在已经有等级认证制度的机构存在,如广东省电子商务电子认证中心()就是一个权威的认证机构。
对于那些非常分散的用户,PGP 使用私人方式的密钥转介方式,因这样有的非官方途径更能反映出人们自然的社会交往,而且人们也能自由地选择信任的朋友来公证,总之和不认识的人们之间的交往一样,每个公钥至少有一个" 用户名" (User ID) ,请尽量用自己的全名,最好再加上本人的 E-mail 地址,以免混淆,这就是 PGP 推荐使用的密钥认证PGP 的每个密钥有它们自己的标识(keyID) ,keyID 是一个 8 位十六进制数,两个密钥具有同 keyID 的可能性只有十亿分之一,而且 PGP 还提供了一种更可靠的标识密钥的PGP 加密/解密技术初探与实践 吴若童 14102131第 4 页 共 9 页方法:“密钥指纹”(keys fingrprint),每个密钥对应一串数字(16 个 2 位十六进制数) ,这个指纹重复的可能就更微乎其微了而且任何人无法指定生成一个具有某个指纹的密钥,密钥是随机生成的,从指纹也无法反推出密钥来用户拿到某人密钥后就可以他在上核对这个指纹,从而认证他的公钥四、PGP 与 S/MIME 加密电子邮件的比较保证电子邮件的安全常用到两种端到端的安全技术 PGP 和 S/MIME(Secure Multi- Part Intermail Mail Extension) 。
它们的主要功能就是身份的认证和传输数据的加密PGP 和 S/MIME 这两种协议对一般用户来说,在使用上几乎没有什么差别但是事实上它们是完全不同的,主要体现在格式上,一个使用 PGP 的用户不能与另一个使用S/MIME 的用户通讯,且他们也不能共享证书 主要特征 s/mime v3 openpgp信息通信的格式 基于 cms 的二进制格式 基于早期 pgp 的二进制格式身份认证的格式 基于 x.509v3 的二进制格式 基于早期 pgp 的二进制格式机密算法 tripledes(des ede3 cbc) tripledes(des ede3 eccentric cfb)数字签名 diffie-hellman(x9.42) with dss elgamal with dss哈希算法 sha-1 sha-1PGP/MIME 和 OpenPGP 都是基于 PGP 的,已经得到许多重要的邮箱提供商支持,PGP 的通信和认证的格式是随机生成的、使用简单的二进制代码PGP 的主要提供商是美国 NAI的子公司 PGP,在中国,由于 PGP 的加密超过 128 位,受到美国出口限制,所以商用的比较少。
同 PGP 一样,S/MIME 也利用单向散列算法和公钥与私钥的加密体系但它与 PGP 主要有两点不同:它的认证机制依赖于层次结构的证书认证机构,所有下一级的组织和个人的证书由上一级的组织负责认证,而最上一级的组织(根证书)之间相互认证,整个信任关系基本是树状的,这就是所谓的 Tree of Trust还有, S/MIME 将信件内容加密签名后作为特殊的附件传送,它的证书格式采用 X.509,但与一般浏览器网上使用的 SSL 证书有一定差异 国内众多的认证机构基本都提供一种叫“安全电子邮件证书”的服务,其技术对应的就是S/MIME 技术,平台使用的基本上是美国 Versign 的主要提供商有北京的天威诚信()和 TrustAsia 上海() ,它们一个是 Versign 的中国区合作伙伴,一个是 Versign 亚太区分支机构 五、PGP 使用中的安全隐患1、没有正确的使用 PGP 进行加密对 PGP 不正确的操作,可能将只会把讯息予以签名,而并不予以加密在这种状态下结果看起来 好像是加密了,其实不然,全世界的任何人都可以将其恢复为原来的文字PGP 加密/解密技术初探与实践 吴若童 14102131第 5 页 共 9 页2、邮件的自动回复功能暴露邮件内容通过欺骗收件人对邮件进行回复,互联网黑客能够破解加密的电子邮件。
截取电子邮件的黑客只要对电子邮件重新包装,并发送给收件人发给收件人的电子邮件将显示乱七八糟的信息,很可能促使收件人要求发件人重新发送一次如果收件人将收到的邮件内容连同请求一块发送给发件人━━一般用户都会将电子邮件客户端软件配置成这样,黑客就能够读取原来的电子邮件内容许多 PGP 软件在发送电子邮件前都会对电子邮件进行压缩压缩在许多情况下会对非法的解译构成一定的困难而新版 OpenPGP 标准已经发布了解决了这一问题3、PGP 处理长文件名时的漏洞PGP 企业版 7.1.0 和 7.1.1 中 PGP 处理加密文件中的长文件名时出现的,PGP 对文件名长于 200 个字符的文件进行加密/解密就会出现问题,当 PGP 对文件解密时会导致内存溢出,从而引发安全隐患黑客可以控制邮件接收人的计算机,提高其在局域网中的权限 六、PGP 基本应用实验报告实验内容 实验1:PGP 的安装 实验2:使用 PGP 创建密钥对 实验3:导入、导出 PGP 公钥及签。
