论文部分内容阅读
[摘要]随着互联网应用的日益普及,电子邮件信息成为交流方式之一,随之而来的有安全性的考虑。通过探讨基于PGP(Pretty GoodPrivacy)的一种加密方法,以及其算法和加密过程,并进一步论述了其安全性。
[关键词]PGP 电子邮件系统 加密5
中图分类号:TN99文献标识码:A文章编号:1671-797 (2008) 0110014-01
随着互联网应用的普及和发展,电子邮件已成为主要的信息交流方式之一。它的出现,给用户在全球范围内的及时通信提供了方便、快捷和经济的手段,同时电子邮件的安全问题显得日益重要。一般来说,网络安全问题的类型可分成以四种:信息保密、身份鉴别、数字签名、完整性确认。PGP(端到端的安全邮件协议)集网络鉴别安全问题的防护,有效阻止信息被非法查看、篡改和伪造。
一、PGP使用的基本加密算法
(一)IDEA算法(Internation Date Encryption Algorithm)。IDEA 叫对称加密算法算法,其机理是用一个128bit的密钥加密明文,解密时再使用相同的密钥解密密文,此处的密钥在PGP中叫会话密钥。IDEA算法优点是加密速度较快,缺点是收发双方不能确保有一个安全渠道来传送会话密钥。在PGP中,IDEA算法被用来加密邮件正文。
(二)RSA算法(Rivest-Shamir-Adleman)。RSA叫非对称加密算法,其原理是找两个很大的质数,其中一个对外界公开,称为公匙,另一个称为私匙,用公匙加加密的密文可以用私匙,反之亦然。发信人需用收信人的公匙将传输信息加密,通过网络传给收信人。收信人再用自己的私匙才能解密,此时只有收信人的私匙才能解密,由此可确认能读懂信的人必是正确的收信人,从而实现身份的鉴别。另一方面,如果发信人用自己的私匙将传输信息加密,就相当于在此消息上作了签名。收信人只有用发信人的公匙才能将其解开。这样可以证明信件确实是由原发件人发出,别人无法假冒他的名义,便实现了数字签名功能。RSA算法的不足之处是其计算量很大,加密正文信息效率低,加密正文信息效率低,速度慢。
(三)SHA算法(Secure Hash Algorithm)。SHA叫单向散列算法,在PGP中,信息摘要是一串能表达内容的160bit或128bit的二进制特征数。信息内容和信息摘要是一一对应的,不同的内容所产生的信息摘要不同,即使内容有一个字节的改变信息摘要的结果都会发生较大的变化。单向散列算法不能够由信息摘要反推出原邮件内容。因SHA可以保证邮件的完整性。
二、加密电子邮件的过程
PGP发送电子邮件的过程如图所示:
PGP发送邮件的步骤如下:
步骤一:数字签名。明文P是原始的未加密的邮件正文,经过SHA算法产生唯一的信息摘要P1,以便收信人验证P的完整性,即使如此,如果在邮件传输过程中有第三者利用另一份明文P及其相应的信息摘要P1来同时篡改这里的P和 P1,那么收信人将无法识别这一篡改为。为了防止篡改,PGP采用RSA算法的数字签名功能,用发信人的私匙Da再次把P1加密成P2具备完整性检测和数字签名的双重功能,以保证不被别人篡改或假冒。PGP再将数字签名P2连接到明文P的尾部组成P3。
步骤二:信息压缩。PGP将 P3经过PKZIP算法压缩成P4,信息压缩一方面可以减少传输量,另一方面实现对P3的另一种加密。收件人收到后在此处进行解压即可。
步骤三:信息加密。PGP再用IDEA算法将P4加密。IDEA的会话密钥由随机数产生器产生,它根据用户输入的一串随机数,结合用户键入字符的速度来产生一个128bit的随机生成会话密钥Km,.加密后即生成P5,同时会话密钥Km也要被传输给收信人以便解密。为增强保密性,PGP采用RSA算法利用收信人的公匙Eb对此会话密钥进行加密形成P6,并附加到P5之后形成P7输出。收信人收到后在此处首先用自己的RSA私匙解密后得出会话密钥Km利用IDEA解密得到P4。此法利用了IDEA加密速度快这一特点,同时用RSA的公匙来加密IDEA的会话密钥Km既克服了直接传送会话密钥安全性的缺点,也弥补了RSA的加密速度慢、适合于处理信息量小但非常重要的信息这一特点。而用RSA的公匙加密又同时时验证了收信人的身份。PGP结合这两种算法,充分发挥各自的特长,取长补短,既增强了功能又不失较快的速度,使得PGP具有较大的安全性和实用性。
步骤四:码制转换。P 7Bass64经算法转换成ASCII码后最终发出。Bass64是一种对二进制数据进行编码的方法,它将二进制数据每24bit一组分成4个6bit的字符转换成4个ASCII码。
三、PGP加密的安全性
(一)安全性。随机数产生器每次随机产生出一个会话机密钥仅供一次IDEA运算使用,并采用一次一密制,更增强了会话密钥的安全性。对于RSA的公匙,由于需要公布,所以很容易被子冒充或篡改,它成为RSA乃至PGP安全的最薄弱环节,所以当我们要使用别人的公匙时,必须确认是否是由对方直接发出或是从另一个可信度较高的认证机构得来,以防公匙被篡改。另外自己的公匙也要妥善保存,防止别人利用口令破解、木马等手段盗取。
(二)可靠性。IDEA算法采用128bit的密钥,它对密钥穷举搜索和密码学分析法的抵御能力都很强,是一个较为可靠的算法;RSA算法的原理是基于大数质因数分解非常困难这一事实。但随着计算机发展的迅速,早期的RSA-129位十进制数的密钥已经被破解,目前普遍认为采用的RSA密钥比较安全,PGP则可以提供更可靠的RSA密钥。而从安全性能上来说IDE-1024bit都是较为可靠的算法;对SHA单向散列算法,从复杂度上来分析能够在短时间内破解的可能性极其微小。
参考文献:
[1]陈良臣等,《 基于OpenPGP的安全邮件系统的研究与设计》[J],《计算机应用研究》,2007,(03).
[2]杨尚森,《PGP应用中保密性和安全性的实现》[J],《洛阳大学学报》,2005,(02).
[3]郝保水,《浅析PGP软件及其应用》[J],《大众科技》, 2005,(08).
[4]邱晓理,《浅谈PGP与邮件加密》[J],《华南金融电脑》,2005,(04).
[5]尹晨,张宁,《电子邮件系统的安全隐患及解决方法》[J],《南京工业大学学报(自然科学版)》,2005,(04).
[关键词]PGP 电子邮件系统 加密5
中图分类号:TN99文献标识码:A文章编号:1671-797 (2008) 0110014-01
随着互联网应用的普及和发展,电子邮件已成为主要的信息交流方式之一。它的出现,给用户在全球范围内的及时通信提供了方便、快捷和经济的手段,同时电子邮件的安全问题显得日益重要。一般来说,网络安全问题的类型可分成以四种:信息保密、身份鉴别、数字签名、完整性确认。PGP(端到端的安全邮件协议)集网络鉴别安全问题的防护,有效阻止信息被非法查看、篡改和伪造。
一、PGP使用的基本加密算法
(一)IDEA算法(Internation Date Encryption Algorithm)。IDEA 叫对称加密算法算法,其机理是用一个128bit的密钥加密明文,解密时再使用相同的密钥解密密文,此处的密钥在PGP中叫会话密钥。IDEA算法优点是加密速度较快,缺点是收发双方不能确保有一个安全渠道来传送会话密钥。在PGP中,IDEA算法被用来加密邮件正文。
(二)RSA算法(Rivest-Shamir-Adleman)。RSA叫非对称加密算法,其原理是找两个很大的质数,其中一个对外界公开,称为公匙,另一个称为私匙,用公匙加加密的密文可以用私匙,反之亦然。发信人需用收信人的公匙将传输信息加密,通过网络传给收信人。收信人再用自己的私匙才能解密,此时只有收信人的私匙才能解密,由此可确认能读懂信的人必是正确的收信人,从而实现身份的鉴别。另一方面,如果发信人用自己的私匙将传输信息加密,就相当于在此消息上作了签名。收信人只有用发信人的公匙才能将其解开。这样可以证明信件确实是由原发件人发出,别人无法假冒他的名义,便实现了数字签名功能。RSA算法的不足之处是其计算量很大,加密正文信息效率低,加密正文信息效率低,速度慢。
(三)SHA算法(Secure Hash Algorithm)。SHA叫单向散列算法,在PGP中,信息摘要是一串能表达内容的160bit或128bit的二进制特征数。信息内容和信息摘要是一一对应的,不同的内容所产生的信息摘要不同,即使内容有一个字节的改变信息摘要的结果都会发生较大的变化。单向散列算法不能够由信息摘要反推出原邮件内容。因SHA可以保证邮件的完整性。
二、加密电子邮件的过程
PGP发送电子邮件的过程如图所示:
PGP发送邮件的步骤如下:
步骤一:数字签名。明文P是原始的未加密的邮件正文,经过SHA算法产生唯一的信息摘要P1,以便收信人验证P的完整性,即使如此,如果在邮件传输过程中有第三者利用另一份明文P及其相应的信息摘要P1来同时篡改这里的P和 P1,那么收信人将无法识别这一篡改为。为了防止篡改,PGP采用RSA算法的数字签名功能,用发信人的私匙Da再次把P1加密成P2具备完整性检测和数字签名的双重功能,以保证不被别人篡改或假冒。PGP再将数字签名P2连接到明文P的尾部组成P3。
步骤二:信息压缩。PGP将 P3经过PKZIP算法压缩成P4,信息压缩一方面可以减少传输量,另一方面实现对P3的另一种加密。收件人收到后在此处进行解压即可。
步骤三:信息加密。PGP再用IDEA算法将P4加密。IDEA的会话密钥由随机数产生器产生,它根据用户输入的一串随机数,结合用户键入字符的速度来产生一个128bit的随机生成会话密钥Km,.加密后即生成P5,同时会话密钥Km也要被传输给收信人以便解密。为增强保密性,PGP采用RSA算法利用收信人的公匙Eb对此会话密钥进行加密形成P6,并附加到P5之后形成P7输出。收信人收到后在此处首先用自己的RSA私匙解密后得出会话密钥Km利用IDEA解密得到P4。此法利用了IDEA加密速度快这一特点,同时用RSA的公匙来加密IDEA的会话密钥Km既克服了直接传送会话密钥安全性的缺点,也弥补了RSA的加密速度慢、适合于处理信息量小但非常重要的信息这一特点。而用RSA的公匙加密又同时时验证了收信人的身份。PGP结合这两种算法,充分发挥各自的特长,取长补短,既增强了功能又不失较快的速度,使得PGP具有较大的安全性和实用性。
步骤四:码制转换。P 7Bass64经算法转换成ASCII码后最终发出。Bass64是一种对二进制数据进行编码的方法,它将二进制数据每24bit一组分成4个6bit的字符转换成4个ASCII码。
三、PGP加密的安全性
(一)安全性。随机数产生器每次随机产生出一个会话机密钥仅供一次IDEA运算使用,并采用一次一密制,更增强了会话密钥的安全性。对于RSA的公匙,由于需要公布,所以很容易被子冒充或篡改,它成为RSA乃至PGP安全的最薄弱环节,所以当我们要使用别人的公匙时,必须确认是否是由对方直接发出或是从另一个可信度较高的认证机构得来,以防公匙被篡改。另外自己的公匙也要妥善保存,防止别人利用口令破解、木马等手段盗取。
(二)可靠性。IDEA算法采用128bit的密钥,它对密钥穷举搜索和密码学分析法的抵御能力都很强,是一个较为可靠的算法;RSA算法的原理是基于大数质因数分解非常困难这一事实。但随着计算机发展的迅速,早期的RSA-129位十进制数的密钥已经被破解,目前普遍认为采用的RSA密钥比较安全,PGP则可以提供更可靠的RSA密钥。而从安全性能上来说IDE-1024bit都是较为可靠的算法;对SHA单向散列算法,从复杂度上来分析能够在短时间内破解的可能性极其微小。
参考文献:
[1]陈良臣等,《 基于OpenPGP的安全邮件系统的研究与设计》[J],《计算机应用研究》,2007,(03).
[2]杨尚森,《PGP应用中保密性和安全性的实现》[J],《洛阳大学学报》,2005,(02).
[3]郝保水,《浅析PGP软件及其应用》[J],《大众科技》, 2005,(08).
[4]邱晓理,《浅谈PGP与邮件加密》[J],《华南金融电脑》,2005,(04).
[5]尹晨,张宁,《电子邮件系统的安全隐患及解决方法》[J],《南京工业大学学报(自然科学版)》,2005,(04).