一个安全电子邮件系统的设计与实现_第1页
一个安全电子邮件系统的设计与实现_第2页
一个安全电子邮件系统的设计与实现_第3页
一个安全电子邮件系统的设计与实现_第4页
一个安全电子邮件系统的设计与实现_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

收稿日期:2002-03-05(修改稿作者简介:高继文(1967-,男,硕士研究生,主要研究方向:信息安全、电子商务;何涛(1976-,男,硕士研究生,主要研究方向:信息安全、网络应用;杨寿保(1947-,男,教授,博士生导师,主要研究方向:计算机网络及应用、信息安全与密码学.文章编号:1001-9081(200206-0082-02一个安全电子邮件系统的设计与实现高继文,何涛,杨寿保(中国科学技术大学计算机科学技术系,安徽合肥230026摘要:分析了安全电子邮件需要解决的问题,介绍了安全电子邮件的解决方案,并以一个企业的工资发放邮件系统为例给出了企业级安全解决的实例。关键词:电子邮件;加密;数字签名;数字信封中图分类号:TP393.098文献标识码:A1需要解决的问题电子邮件存在的不安全因素包括:容易被别人偷窥,容易被篡改,以任何人的名义冒发电子邮件等。尽管存在很多的不安全因素,但电子邮件还是在Internet上被广泛应用,这是因为一般的电子邮件通信仅仅传输的是一些不敏感或不重要的普通信息,但是一旦考虑传输一些重要信息,那么安全性问题就是首要问题。安全电子邮件的具体要求包括如下几点:邮件内容的保密性。在邮件的收发过程中,除了邮件收发双方外任何人无法获取邮件真实内容。信息来源证明———发信方对所发邮件的内容不可否认。当收信人接收到邮件时,有足够的证据证实这封邮件确实是发信方所发的,而且没有被篡改。安全收条———收信方对所收到的邮件的内容不可否认。当收信人接收到邮件时,发信方有可靠的证据证实这封邮件被接收方收到了。2采用的安全措施安全电子邮件所采用的安全措施,几乎全部以数据加密技术为基础。安全电子邮件把对称密钥体制和公开密钥体制完美的结合了起来,充分利用了DES效率高速度快、RSA安全性高、密钥管理简便的优点。下面以数据加密技术为基础,讨论安全电子邮件所采用的安全措施。(1数字签名数字签名采用RSA算法,数据发送方采用自己的私钥加密数据,接受方用发送方的公钥解密,由于私钥和公钥之间的严格对应性,使用其中一个只能用另一个来解,保证了发送方不能抵赖发送过数据,完全模拟了现在生活中的签名。(2数字信封发送方将消息用DES、RC2、RC4等算法进行加密,并将对称密钥用接受方的公钥加密,称为消息的“数字信封”,将数字信封与加密后的消息一起发给接受方。接受者收到消息后,先用其密钥打开数字信封,得到发送方的对称密钥,再用此对称密钥去解开数据。只有用接受方的RSA密钥才能够打开此数字信封,确保了接受者的身份。(3协签名数字签名的一个重要的应用就是协签名。一个文件可以被多个人签名,首先甲方将文件进行数字签名,被签名的文件发给乙方,乙方验证甲方的签名后可以用协签名的方法将自己的数字签名加到文件里,如果还有其他的人还可以用这个文件继续签名,最后发送给邮件的接收者。3实现方法CAPICOM是微软公司的一个COM的客户端组件,支持Automation,它用于实现加密功能,如数据签名、验证签名、用数字信封对信息加密、用数字信封对信息解密、数据加密、数据解密、数字证书验证等。可以使用VB、VC++对CAPICOM进行开发。1创建数字证书用户在创建数字签名、解密信息时必须拥有一个带有私钥(PrivateKey的证书(Certificate,如果一个证书没有私钥,那么数字签名、解密就无法进行。使用CAPICOM时要确保我们有一个证书,证书可以向专门的CA认证中心申请,如RSA、VeriSign、中国国际电子商务中心(CIECC等。另外微软公司(密钥长度512位和SUN公司(密钥长度2048位都提供了创建证书的工具。可以从微软的站点下载这个工具,下载后先创建一个自签名的证书,方法如下:makecert-r-n"cn=xxx,ou=yyy,o=zzz"-ssmy其中XXX是用户的名字,YYY是组织名,ZZZ是公司名。在Windows操作系统中用控制台将这个证书导出,并放到根证书存储区后使这个证书合法并受信任。根据这个根证书可以创建相应的用户证书,发给单位其他的人使用,如果希望用于安全电子邮件,则需要将电子邮件地址的信息加到证书中。2对一个文件进行数字签名数字签名的标准使用方法是将一个文件进行签名运算并且将签名后的数据保存到另外一个文件里。这个签名后的文件也可以在Internet上传送。下面的例子简述了用CAPICOM进行数字签名的过程,例中没有指定签名者,程序将在个人证书存储区自动找出用于签名的证书,如果有多个证书,将弹出第22卷第6期2002年6月计算机应用ComputerApplicationsVol.22,No.6June,2002一个对话框,让用户选择用于签名的证书。DimSignobjAsNewSignedData′声明并且创建一个签名对象得实例Signobj.Content=c′将被签名的数据c赋给签名对象s=Signobj.Sign′得出签名的结果3协签名一个文件可以被多个人签名,例如合同的双方对一个合同进行签名,首先加方将合同进行数字签名,被签名的文件发给乙方,乙方验证甲方的签名后可以用协签名的方法将自己的数字签名加到文件里。下面的例子首先将要签名的原文赋给签名对象,然后验证甲方的签名,验证无误后加入乙方的签名。Signobj.Content=c′将被签名的数据c赋给签名对象Signobj.Verifys′验证甲方的签名CS=Signobj.CoSign′用协签名的方法加入乙方的签名,生成新的协签名数据如果有第三方的话,可以用同样的方法进行协签名。4验证签名当接收到一个数字签名的文件后,用CAPICOM很容易对其进行验证,验证包括验证签名者的证书和签名的信息两个方面。首先用签名者的证书中的公钥(PublicKey对签名的信息进行解密,如果签名时产生的哈希(hash值与接收到的明文的哈希值相符,那么就证明明文没有被篡改。对证书的验证包括检查该证书是否已被吊销、是否过期、该证书是否在接受者的信任链中等。下面的例子用CAPICOM验证一个签名的过程。DimsigAsSignedData′声明并且创建一个签名对象得实例Setsig=NewSignedDatasig.Content=c′将明文的数据赋给签名对象OnErrorresumenextsig.Verifys,True′验证签名ifErr.number<>0thenMsgbox"数字签名非法!"′报错ElseMsgBox"数字签名正确!"Endif5创建和接收数字信封数字信封是用一组接收者的证书加密后的信息,在创建数字信封时产生一个会话密钥,用这个会话密钥加密原文,然后将这个会话密钥用接收者的公钥进行加密,数字信封的信息包括加密后的信息、接收者的证书、经过加密的会话密钥。下面的例子创建了一个数字信封信息。DimCertStoreAsNewStore′声明并创建一个证书存储区′打开接收者的证书存储区CertStore.OpenCAPICOM—CURRENT—USER—STORE,"Other",CAPICOM—STORE—OPEN—READ—ONLYDimEnvMessageAsNewEnvelopedData′声明并创建一个数字信封对象EnvMessage.Content=Text′将明文赋给数字信封对象Envmessage.Algorithm.Name=ENCRYPTION—ALGORITHM—RC4′用RC4加密算法Envmessage.Algorithm.KeyLength=KEY—LENGTH—128—BITS′给定密钥长度128位EnvelopedMessage=EnvMessage.Encrypt′得出加密后的信息解密一个数字信封时,首先到“个人证书”存储区找出相应的带有私钥的证书,如果没有对应接收人信息的带有私钥的证书时,这个加密的信息就不会被解密。下面的例子首先用接收人的私钥解密会话密钥,然后用会话密钥将密文解密,如果没有相应的证书会产生一个错误。DimEnvmessageAsNewEnvelopedDataEnvmessage.Decryptencrypted′解密数字信封MsgBoxEnvmessage.Content′显示解密后的明文在发送加密并签名的邮件时要先对原文进行签名,然后加密,接收时,先解密,然后验证签名。6软件实现流程在研究的过程中为某企业实现了一个安全的工资条邮件系统。首先建立企业内部的CA(certificationauthority,创建一个企业的根证书(Rootcertificate,并将此根证书存放到一个安全的计算机上,以这个根证书为基础创建所有员工的证书(拥有自己的一对公钥和私钥,将每个员工的证书和根证书的公钥安全地发到每个员工的手中,每个员工将根证书和证书导入。软件实现的流程如图1所示。图1安全电子邮件系统的软件流程图4小结首先建立企业内部的CA,为每个员工生成一个证书。为防止E2mail被窃取用公钥加密E2mail,为方便别人认证E2mail发送者的身份发送者用自己的私钥加密E2mail。工资发放邮件系统在企业的应用过程中收到了良好的效果,由于它的安全性而受到很多企业的欢迎。工资发放邮件系统加密过的信息在现有的计算机运算速度下短时间内根本无法破解,在企业中无论是邮件服务器管理员,还是网络管理人员,都无法得到其他人邮件的真实内容,从而有效地实现了安全电子邮件在企业中的应用。参考文献[1]FordW.,BaumM.SecureElectronicCommerce:BuildingtheInfrastructureforDigitalSignaturesandEncryption[M].PrenticeHall,1997.[2]BruceSchneier.AppliedCryptography

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论