软件水平考试网络工程师复习指导:PGP简介(1)
pgp--pretty good privacy, 是一个基于rsa公匙加密体系的邮件加密 软件,它可以用来对你的邮件加密以防止非授权者阅读,还能对你的邮件加上 数字签名而使收信人可以确信邮件是你发来的。它让你可以安全地和你从未见 过的人们通讯,事先并不需要任何保密的渠道用来传递密匙。它采用了审慎的 密匙管理, 一种rsa和传统加密的杂合算法,用于数字签名的邮件文摘算法, 加密前压缩等,还有一个良好的人机工程设计。它的功能强大有很快的速度, 而且它的源代码是免费的。 实际上pgp的功能还不止上面说的:pgp可以用来加密文件,还可以用pgp代 替uuencode 生成 radix 64 格式(就是mime 的 base 64格式)的编码文件。
pgp 的创始人是美国的 phil zimmermann。他的创造性在于他把rsa公匙体 系的方便和传统加密体系的高速度结合起来,并且在数字签名和密匙认证管理 机制上有巧妙的设计。因此pgp成为几乎最流行的公匙加密软件包。
rsa(rivest-shamir-adleman)算法是一种基于大数不可能质因数分解假 设的公匙体系。简单地说,其原理就是找两个很大的质数,其中一个向外界公 开(公匙),另一个不告诉任何人(私匙)。这两个密匙是互补的,用公匙加 密的密文可以用私匙解密,反过来也一样。假设甲要寄信给乙,他们互相知道 对方的公匙。甲就用乙的公匙加密邮件寄出,乙收到后就可以用自己的私匙解密出甲的原文。由于没别人知道乙的私匙所以即使是甲本人也无法解密那封信, 这就解决了信件保密的问题。另一方面由于每个人都知道乙的公匙,他们都可 以给乙发信,那么乙就无法确信是不是甲的来信。认证的问题就出现了,这时候数字签名就有用了。
在说明数字签名前先要解释一下什么是"邮件文摘"(message digest), 简单地说就是对一封邮件用某种算法算出一个能体现这封邮件"精华"的数来, 一旦邮件有任何改变这个数都会变化,那么这个数加上作者的名字(实际上在 作者的密匙里)还有日期等等,就可以作为一个签名了。 确切地说,pgp是用 一个128位的二进制数作为"邮件文摘"的,用来产生它的算法叫md5(message digest 5),md5的提出者是 ron rivest,pgp中使用的代码是由colin plumb 编写的,md5本身是公用软件。所以pgp的法律条款中没有提到它。
md5是一种 单向散列算法, 它不像crc校验码,很难找到一份替代的邮件而与原件具有一 样的"精华"。 回到数字签名上来,甲用自己的私匙将上述的128位的"精华"加密, 附 加在邮件上,再用乙的公匙将整个邮件加密。这样这份密文被乙收到以后,乙 用自己的私匙将邮件解密,得到甲的原文和签名, 乙的pgp也从原文计算出一 个128位的"精华"来再用甲的公匙解密签名得到的数比较, 如果符合就说明 这份邮件确实是甲寄来的。这样两个要求都得到了满足。
编辑推荐:
温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)
点击加载更多评论>>