浅析PGP软件及其应用
毕业论文3.03W
[摘要]文章主要介绍了PGP软件,对其主要部分和原理进行了阐述,并给出了在电子邮件等方面的应用。
[关键词]PGP;加密;电子邮件
1引言
电子邮件在人们的工作中占据着重要作用。据统计,中国平均每用户每周收到4.4封邮件,发送3.6封邮件。但是电子邮件的主要协议如SMTP等是明文传送的。这些信息在经过不可信的因特网时,有可能会被第三方获得。在重视信息安全的现代社会,显然这并符合要求。如何能将这些信息保密,同时不篡改、不伪造等?本文所介绍的PGP(PrettyGoodPrivacy)就是一种这样的软件,它主要应用于电子邮件和文件的加密解密。
目前PGP获得了广泛的应用。但它本身并不是一种加密算法,相反只是将一些加密算法(如RSA、IDEA、AES等)综合在一起,实现了一个完整的安全软件包。
PGP主要是由ermann开发的,于1991年在Internet上免费发布。他主要做了如下工作:选择比较好的算法,例如RSA、IDEA等作为加密算法的基础构件;将这些算法集成在一个便于用户使用的应用程序中;制作了软件包及其文档,且源代码免费公开,以避隐藏后门之嫌;和公司合作,提供商业版本等。现在用户可以从下载PGP。目前最新版本是9.0。
2原理
PGP结合了一些大部分人认为很安全的算法,包括传统的对称密钥加密算法和公开密钥算法,充分利用这两类加密算法的特性,实现了以下几种服务:鉴别、加密、压缩等。
当发送者PGP加密一段明文时,PGP首先压缩明文,然后PGP建立一个一次性会话密钥,采用传统的对称加密算法(例如AES等)加密刚才压缩后的明文,产生密文。然后用接收者的`公开密钥加密刚才的一次性会话密钥,随同密文一同传输给接收方。接收方首先用私有密钥解密,获得一次性会话密钥,最后用这个密钥解密密文。
2.1数字签名
数字签名能够保证接收者接收的信息没有经过未授权的第三方篡改,并确信报文来自发信者。PGP使用如下步骤实现数字签名:
2.1.1发送者创建报文,然后使用SHA-2等散列算法生成散列代码,然后使用自己的私有密钥采用RSA对散列代码加密,并将结果串接在报文前面。
2.1.2接收者使用发送者的公开密钥,采用RSA解密得到散列代码,然后和根据接收到的报文重新计算的散列代码比较,如果匹配,则接受报文。
目前,PGP使用的散列函数包括:SHA-2(256bit)、SHA-2(384bit)、SHA-2(512bit)、SHA-1(160bit)、RIPEMD(128bit)、MD-5(128bit)等。
2.2压缩
压缩是为了减少网络传输时间和磁盘空间,提高安全性:压缩减少了明文中上下文相关信息。(当然如果文件太短或者压缩性能不好,则不压缩。)
PGP在签名之后加密之前对报文进行压缩。它使用了有Jean-lupGailly,MarkAdler,RichardWales等编写的ZIP压缩算法。
2.3加密
PGP对每次会话的报文进行加密后传输,它采用的加密算法包括:AES-256、AES-192、AES-128、CAST、3DES、IDEA、Twofish等。例如使用AES密钥最长可达256bit,这已经足够安全了。
这里需要指出,PGP结合了常规密钥加密和公开密钥加密算法,一是时间上的考虑,对称加密算法比公开密钥加密速度快大约10000倍;二是公开密钥解决了会话密钥分配问题,因为只有接收者才能用私有密钥解密一次性会话密钥。PGP巧妙的将常规密钥加密和公开密钥加密结合起来,从而使会话安全得到保证。
2.4密钥管理
在PGP里面,最有特色的或许就是它的密钥管理。PGP包含四种密钥:一次性会话密钥、公开密钥、私有密钥和基于口令短语的常规密钥。
用户使用PGP时,应该首先生成一个公开密钥/私有密钥对。其中公开密钥可以公开,而私有密钥绝对不能公开。PGP将公开密钥和私有密钥用两个文件存储,一个用来存储该用户的公开/私有密钥,称为私有密钥环;另一个用来存储其他用户的公开密钥,称为公开密钥环。
[关键词]PGP;加密;电子邮件
1引言
电子邮件在人们的工作中占据着重要作用。据统计,中国平均每用户每周收到4.4封邮件,发送3.6封邮件。但是电子邮件的主要协议如SMTP等是明文传送的。这些信息在经过不可信的因特网时,有可能会被第三方获得。在重视信息安全的现代社会,显然这并符合要求。如何能将这些信息保密,同时不篡改、不伪造等?本文所介绍的PGP(PrettyGoodPrivacy)就是一种这样的软件,它主要应用于电子邮件和文件的加密解密。
目前PGP获得了广泛的应用。但它本身并不是一种加密算法,相反只是将一些加密算法(如RSA、IDEA、AES等)综合在一起,实现了一个完整的安全软件包。
PGP主要是由ermann开发的,于1991年在Internet上免费发布。他主要做了如下工作:选择比较好的算法,例如RSA、IDEA等作为加密算法的基础构件;将这些算法集成在一个便于用户使用的应用程序中;制作了软件包及其文档,且源代码免费公开,以避隐藏后门之嫌;和公司合作,提供商业版本等。现在用户可以从下载PGP。目前最新版本是9.0。
2原理
PGP结合了一些大部分人认为很安全的算法,包括传统的对称密钥加密算法和公开密钥算法,充分利用这两类加密算法的特性,实现了以下几种服务:鉴别、加密、压缩等。
当发送者PGP加密一段明文时,PGP首先压缩明文,然后PGP建立一个一次性会话密钥,采用传统的对称加密算法(例如AES等)加密刚才压缩后的明文,产生密文。然后用接收者的`公开密钥加密刚才的一次性会话密钥,随同密文一同传输给接收方。接收方首先用私有密钥解密,获得一次性会话密钥,最后用这个密钥解密密文。
2.1数字签名
数字签名能够保证接收者接收的信息没有经过未授权的第三方篡改,并确信报文来自发信者。PGP使用如下步骤实现数字签名:
2.1.1发送者创建报文,然后使用SHA-2等散列算法生成散列代码,然后使用自己的私有密钥采用RSA对散列代码加密,并将结果串接在报文前面。
2.1.2接收者使用发送者的公开密钥,采用RSA解密得到散列代码,然后和根据接收到的报文重新计算的散列代码比较,如果匹配,则接受报文。
目前,PGP使用的散列函数包括:SHA-2(256bit)、SHA-2(384bit)、SHA-2(512bit)、SHA-1(160bit)、RIPEMD(128bit)、MD-5(128bit)等。
2.2压缩
压缩是为了减少网络传输时间和磁盘空间,提高安全性:压缩减少了明文中上下文相关信息。(当然如果文件太短或者压缩性能不好,则不压缩。)
PGP在签名之后加密之前对报文进行压缩。它使用了有Jean-lupGailly,MarkAdler,RichardWales等编写的ZIP压缩算法。
2.3加密
PGP对每次会话的报文进行加密后传输,它采用的加密算法包括:AES-256、AES-192、AES-128、CAST、3DES、IDEA、Twofish等。例如使用AES密钥最长可达256bit,这已经足够安全了。
这里需要指出,PGP结合了常规密钥加密和公开密钥加密算法,一是时间上的考虑,对称加密算法比公开密钥加密速度快大约10000倍;二是公开密钥解决了会话密钥分配问题,因为只有接收者才能用私有密钥解密一次性会话密钥。PGP巧妙的将常规密钥加密和公开密钥加密结合起来,从而使会话安全得到保证。
2.4密钥管理
在PGP里面,最有特色的或许就是它的密钥管理。PGP包含四种密钥:一次性会话密钥、公开密钥、私有密钥和基于口令短语的常规密钥。
用户使用PGP时,应该首先生成一个公开密钥/私有密钥对。其中公开密钥可以公开,而私有密钥绝对不能公开。PGP将公开密钥和私有密钥用两个文件存储,一个用来存储该用户的公开/私有密钥,称为私有密钥环;另一个用来存储其他用户的公开密钥,称为公开密钥环。
-
谈谈现代企业经济管理模式研究
在实际的经济管理中,企业的高层管理者要及时评价管理结果,保证经济管理的有效性、科学性、适宜性。在实际的经济管理过程中,对于经济管理模式,管理者必须予以高度重视。摘要:随着经济全球化进程的不断加快以及我国社会主义市场经济体制的深入改革,现代企业的经济管理...
-
浅析大学英语教学中学生的沉默现象探源及对策
【论文关键词】大学英语教学学生沉默教学风格原因对策【论文摘要】本文分析了导致大学英语课堂学生沉默现象的原因,探讨了打破课堂沉默的对策。要激发学生正确的学习动机;平衡外向性格同学和内向性格同学之间的提问次数;打破沉闷的课堂气氛,使课堂活起来;鼓励学生用...
-
对于工程硕士专业学位标准实施细则修订中的思考
论文摘要:根据全国控制工程领域工程硕士教育协作组颁布的控制工程领域工程硕士专业学位标准(试行),结合军械工程学院研究生生源的特点以及培养要求,对控制工程领域工程硕士专业学位标准实施细则进行了修订,就培养方案中的研究方向、课程设置等内容进行了重点的思考,使...
-
小组合作学习模式应贯彻在初中英语教学的始终
小组合作学习是以学习材料为线索、以学生为主体、以活动为形式,组织学生思考,合作完成某一任务的小组学习活动。在这种学习活动中,学生始终保持一种积极的、主动的学习状态,学生之间利用英语进行理解、交际互动。这一过程的良好实施能引起学生学习兴趣,激发学生积极...