电子邮件安全传输机制的研究与实现
- 格式:pdf
- 大小:243.20 KB
- 文档页数:5
安全电子邮件系统的设计与实现Secure E-mail System Design and Implementation摘要:电子邮件的安全问题是目前实际网络应用中被广泛关注的热点问题之一。
文章分析了当前电子邮件在安全方面的隐患,设计了一种实现内联网端到端的安全电子邮件系统,并详细介绍了安全电子邮件系统中签名加密、轻量目录访问协议(LDAP)证书库、目录等部分的设计思路。
文章还给出了把安全电子邮件系统扩展应用在大企业Intranet中的方案。
关键词:电子邮件;安全;安全/多用途互联网邮件扩充;公钥基础设施;轻量目录访问协议Abstract:Email security is currently one of the hot-spot issues in network applications, drawing broad attention. Based on the analysis of the shortcomings of current email systems, this paper presents an end-to-end secure email system on Intranet, putting emphasis on the design of digital signature encryption, Lightweight Directory Access Protocol (LDAP) certificate server and system directory. At last, it gives solutions of implementing such a system on an enterprise Intranet.Key words:E-mail; security; S/MIME; PKI; LDAP电子邮件利用计算机的存储、转发原理,克服时间、地理上的差距,通过计算机终端和通信网络进行文字、声音、图像等信息的传递。
如何在Outlook中实现邮件的加密和网络安全Outlook是一款常用的邮件客户端软件,许多人在工作和日常生活中都会用到它来收发邮件。
然而,随着网络安全问题的愈发突出,邮件的保密性和安全性也变得越来越重要。
本文将介绍如何在Outlook 中实现邮件的加密和网络安全。
一、邮件加密邮件加密是指通过加密算法对邮件内容进行加密,在传输过程中保证邮件内容的机密性。
这样可以有效地防止恶意攻击者通过窃取邮件内容来获取用户的敏感信息。
Outlook支持使用S/MIME和PGP等加密方式来保护邮件的机密性。
1. S/MIME加密S/MIME(Secure/Multipurpose Internet Mail Extensions)是一种基于PKI(Public Key Infrastructure)加密机制的加密方式。
使用S/MIME加密发送的邮件被视为是公共密钥加密(PKI)标准,可以在将其传输到收件人之前对其进行数字签名和加密。
这样,收件人就可以使用其私钥对邮件进行解密和验证。
因此,S/MIME加密是一种效果显著的保护邮件机密性和完整性的方式。
在Outlook中使用S/MIME加密,需要先申请数字证书,证书可以从公认的认证机构中购买或者自己生成。
在Outlook中,打开文件->选项->信任中心->信任中心设置->安全电子邮件,然后点击“获取数字证书”来申请数字证书。
申请成功后,就可以开启S/MIME加密,选择要保护的邮件并点击“选项” -> “加密”即可。
2. PGP加密PGP(Pretty Good Privacy)是一种广泛使用的邮件加密技术,使用公钥加密和私钥解密的机制来确保邮件的机密性和完整性。
使用PGP加密发送的邮件将被进一步压缩和加密,并且只有收件人才能解密。
在Outlook中使用PGP加密,需要先下载并安装PGP加密软件。
然后在Outlook中,选择要加密的邮件并点击“选项” -> “PGP加密”,输入接收方的公钥,即可将邮件加密并发送给指定的收件人。
电子邮件与邮件传输协议SMTPPOPIMAP电子邮件与邮件传输协议SMTP/POP/IMAP电子邮件的发展已经成为我们日常沟通的重要工具之一。
在电子邮件的繁荣发展背后,涉及到许多协议和技术,其中最重要的是SMTP、POP和IMAP协议。
本文将介绍这些协议的作用、特点以及它们在电子邮件中的应用。
第一部分:SMTP协议SMTP(Simple Mail Transfer Protocol)简单邮件传输协议是电子邮件中最关键的协议之一。
它定义了邮件的传输方式和规则,确保邮件能够准确、高效地从发送者传递到接收者。
SMTP协议的工作原理如下:当发送者准备发送一封邮件时,它会使用SMTP客户端来连接到发送邮件的服务器上。
发送者通过SMTP客户端将邮件发送给服务器,服务器根据接收者的电子邮件地址将邮件转发给接收者所在的服务器,最终将邮件传递给接收者。
SMTP协议具有以下特点:1. 简洁高效:SMTP协议传输的邮件格式简单,数据包大小较小,传输速度较快。
2. 可靠性较高:SMTP协议采用可靠的传输机制,确保邮件不易丢失或损坏。
3. 不支持邮件的离线存储:SMTP协议只负责邮件的传输,不存储任何邮件数据,因此,如果接收者处于离线状态,邮件将无法传递。
第二部分:POP协议POP(Post Office Protocol)邮局协议是一种用于电子邮件接收的协议。
它允许用户通过连接到邮件服务器上下载并获取自己的电子邮件。
POP协议的工作过程如下:用户在电子邮件客户端上配置POP服务器的相关信息,然后通过POP客户端连接到邮件服务器。
客户端发送命令给服务器,服务器根据命令返回邮件内容,客户端将邮件下载到本地计算机。
POP协议具有以下特点:1. 离线下载:POP协议允许用户在没有网络连接的情况下查看已下载的邮件,提供了离线浏览的功能。
2. 邮件存储在本地:POP协议下载的邮件会存储在用户本地的计算机中,用户可以随时查看和管理这些邮件。
电子邮件安全电子邮件通常称为E-mail,是计算机网络上最早也是最重要的应用之一,世界各地的人们通过电子邮件互相传递信息,进行网上交流。
电子邮件已经成为现在人们互相往来的一种常用方式。
电子邮件是一种将电话通信的快速与邮政通信的直观易懂想结合的通信手段,与电话通信以及邮政通信相比,电子邮件有它得天独厚的优点。
但是,在电子邮件飞速发展的同时,电子邮件的安全问题也随之浮出水面。
一.电子邮件的安全隐患针对电子邮件的攻击分为两种,一种世界对电子邮件的攻击,如窃取电子邮件密码,截获发送邮件内容,发送邮件炸弹;另一种是间接对电子邮件的攻击,如通过邮件传输病毒木马。
产生电子邮件安全隐患主要有3个方面:(1)电子邮件传送协议自身的先天安全隐患。
众所周知,电子邮件传输采用的是SMTP 协议,即简单邮件传输协议,它传输的数据没有经过任何加密,只要攻击者在其传输途中把它截获即可知道内容。
(2)由邮件接收端软件的设计缺陷导致的安全隐患。
如微软的OutLook曾存在的安全隐患可以是攻击者编制一定代码让木马或者病毒自动运行。
(3)用户个人的原因到时的安全隐患。
二.电子邮件的安全技术1.端到端的安全电子邮件技术端到端的安全电子邮件技术保证邮件从发出到被接收的整个过程中,内容无法被修改,并且不可否认。
PGP和S/MIME是目前两种成熟的端到端安全电子邮件标准。
PGP(Pretty Good Privacy)被广泛采用,通过单向散列算法对邮件内容进行签名,以保证信件内容无法被修改,使用公钥和私钥技术保证邮件内容保密且不可否认。
发信人与收信人的公钥都保存在公开的地方,公钥的权威性则可由第三方进行签名认证。
在PGP系统中,信任是双方的直接关系。
S/MIME(Secure/Multipurpose Internet Mail Extensions)与PGP一样,利用单向散列算法、公钥与私钥的加密体系。
但是,S/MIME也有两方面与PGP不同:议事S/MIME的认证机制依赖于层次结构的证书认证机构,所有下一级的组织和个人的证书由上一级的组织负责认证,而嘴上一级的组织(根证书)之间相互认证;二是S/MIME将信件内容加密签名后作为特殊的附件传送。
安全邮件传输PGP协议剖析PGP(Pretty Good Privacy)是一种广泛使用的加密协议,被用来保护电子邮件的安全传输。
本文将对PGP协议的原理和应用进行详细剖析。
一、PGP协议的原理PGP协议基于非对称加密算法,使用公钥和私钥对邮件进行加密和解密。
其主要原理如下:1. 公钥加密:每个用户都有一对密钥,包括公钥和私钥。
公钥可以自由发布,私钥保密保存。
发送方使用接收方的公钥对邮件进行加密,只有拥有相应私钥的接收方才能解密邮件。
2. 数字签名:发送方还可以使用私钥对邮件进行数字签名,接收方可以使用发送方的公钥验证签名的真实性。
这样可以确保邮件的完整性和身份认证。
3. 对称加密:为了提高效率,PGP协议采用混合加密技术。
发送方使用对称密钥对邮件内容进行加密,然后将该对称密钥用接收方的公钥进行加密,一并发送给接收方。
接收方使用私钥解密对称密钥,然后使用对称密钥解密邮件内容。
二、PGP协议的应用PGP协议在实际应用中广泛被用于保护邮件的安全传输,并提供数字签名功能。
1. 安全传输:PGP协议可以确保邮件在传输过程中的机密性,即使被截取,也无法解密邮件内容。
这对于商业秘密和个人隐私的保护非常重要。
2. 身份认证:PGP协议的数字签名功能可以保证邮件的发送方的真实身份。
这对于防止伪造邮件和保护个人声誉具有重要意义。
3. 安全存储:PGP协议还可以用于对邮件进行加密,以确保在邮件存储过程中的安全性。
这对于电子邮件服务提供商和用户来说都是非常重要的。
三、PGP协议的局限性尽管PGP协议提供了一种强大的加密和认证机制,但它仍然存在一些局限性:1. 密钥管理:PGP协议需要用户管理和保存自己的密钥对,并确保私钥的机密性。
这对于普通用户来说可能有一定难度。
2. 兼容性:由于PGP协议是一种开放标准,不同实现之间存在一定的兼容性问题,导致有时邮件无法正确解密或验证签名。
3. 依赖信任链:PGP协议的公钥认证依赖于信任链的建立,即保证公钥的所有权和真实性。
SMTP安全协议SMTP(Simple Mail Transfer Protocol)是用于电子邮件传输的标准协议。
然而,由于其通信内容通常以明文形式传输,SMTP协议存在一些安全风险。
为了保护电子邮件的机密性和完整性,我们需要使用SMTP安全协议。
本文将介绍SMTP安全协议的原理、功能和应用。
一、SMTP安全协议简介SMTP安全协议是在传统SMTP协议上增加的一种安全机制,用于保护电子邮件的安全。
它主要包括两种协议:SMTPS(SMTP Secure)和STARTTLS。
SMTPS是通过对传输层协议(如SSL或TLS)进行封装来实现加密传输和身份验证。
STARTTLS则在SMTP协议的基础上添加了STARTTLS命令,用于协商客户端和服务器之间的加密和身份验证方式。
二、SMTP安全协议的工作原理1. SMTPS工作原理SMTPS使用SSL或TLS协议对SMTP协议进行封装,实现数据的加密传输和身份验证。
具体工作流程如下:a. 客户端与服务器之间建立连接。
b. 客户端向服务器发送加密连接请求。
c. 服务器验证客户端的身份,并提供数字证书。
d. 客户端验证服务器的身份,并使用服务器的公钥对对称密钥进行加密。
e. 客户端和服务器使用对称密钥对邮件进行加密传输。
2. STARTTLS工作原理STARTTLS在SMTP协议的基础上添加了STARTTLS命令,用于在客户端和服务器之间协商加密和身份验证方式。
具体工作流程如下:a. 客户端与服务器之间建立连接。
b. 客户端向服务器发送STARTTLS命令。
c. 服务器回应STARTTLS响应,并提供数字证书。
d. 客户端验证服务器的身份,并使用服务器的公钥对对称密钥进行加密。
e. 客户端和服务器使用对称密钥对邮件进行加密传输。
三、SMTP安全协议的功能和应用1. 数据加密传输SMTP安全协议可以使用SSL或TLS协议对邮件进行加密传输,确保邮件在传输过程中不会被窃取和篡改。
电子邮件安全传输机制的研究与实现田中佳北京邮电大学电子工程学院,北京(100876)E-mail:tplusplus@摘要:针对windows平台下的电子邮件客户端软件,利用winsock 2服务提供者接口改变协议栈结构,在基础TCP协议之上建立分层协议并组装成协议链以实现自定义的处理,同时在传输中通过对电子邮件结构的改动实现对电子邮件的加解密,以此确保电子邮件在网络传输过程中的安全。
应用表明,此方案能有效地实现电子邮件的安全传输。
关键词:SPI,电子邮件客户端,MIME,电子邮件安全中图分类号:TP393.081.引言当今是信息时代,经常性的信息交互变得越来越不可缺少,电子邮件凭借其简单快捷经济的特性,成为目前最为流行的通信方式。
值得重视的是,每天在全球范围内发送接收的电子邮件中,包含大量重要甚至是机要的信息,这些信息无论是对于使用电子邮件的军队、政府、组织、企业、个人来说都有着非同寻常的价值,一旦在传输中被截获,重要信息的泄漏将导致不可估量的损失。
由此,在享受电子邮件带来便利的同时,保证这些信息被安全地传送也成为了电子邮件系统所要解决的问题。
SPI(Service Provider Interface)是微软推出的Windows Sockets 2中的一个新特性。
SPI 部分包含了传输服务提供者和名字服务提供者的实现接口和ws2_32.dll文件,SPI以一组DLL的形式存在,当应用程序需要时由ws2_32.dll装入内存,在不需要时会被自动卸载。
[1]这里主要关注的是TSP(传输服务提供者)部分。
本方案利用SPI技术,针对电子邮件客户端软件收发的电子邮件数据,根据电子邮件的相关特点进行加密解密处理,达到安全传输的目标。
2.数据包拦截技术[2]对传输中的电子邮件数据进行处理,需要拦截数据。
计算机结构中,在应用层、核心层两个级别都可以进行截包的操作。
核心层程序表现为底层驱动程序,例如TDI或NDIS,其优点是受应用程序的限制小,对数据的截获能力最强;缺点是需要从网络协议封包中层层剥出数据,对数据甄别不利,此外要和硬件驱动打交道,相对复杂,稳定性兼容性不易达到。
应用层操作的优点是截到的数据最清晰,便于执行策略;缺点是受应用程序的限制较大,通用性较差。
Winsock 2的SPI工作在会话层,属于应用层级别,数据未经TCP或UDP协议加工,便于操作;与应用程序关联较小,程序通用性强。
SPI处于核心层和应用层之间,具有双方的优势,比较适合处理电子邮件这种基于TCP的通信。
3. SPI原理在Windows体系中,分层的思想贯彻得很显著。
SPI实际上就是API功能的下层实现者,而在SPI之下同样有其他层来完成更真实的功能,层层递推直到硬件层的最后实现。
SPI 包括30个WSP服务函数,每当API进行操作的时候,SPI就有相应的WSP函数被调用。
服务提供者有三种协议形式:分层协议、基础协议和协议链。
可以通过添加分层协议,并和基础协议组成协议链形成新的服务提供者。
通过分层协议监测WSP函数的调用情况,并根据需要在相应WSP函数中添加自定义的功能,之后把真正的通信功能交给下层协议来完成。
[3]4. 关于电子邮件电子邮件的传输基于TCP协议,但在收发前,还分别经过SMTP协议和POP3协议的处理(这里只涉及支持POP3协议的邮件)。
SMTP(简单邮件传输协议)是发送邮件所遵循的协议,目标是可靠高效地传送邮件,它独立于传送子系统而且仅要求一条可以保证传送数据单元顺序的通道[4];POP3协议(邮局协议第3版)是一种允许用户从邮件服务器收取邮件的协议[5]。
无论是SMTP协议还是POP3协议,在网络通信时都遵循一套标准的流程,而研究他们的目的,就在于在发送中找出需要加密的部分并研究如何在加密之后不影响其正常的发送和接收。
MIME(多用途网际邮件扩充协议)是电子邮件在传输中遵循的最流行的数据格式。
邮件客户端按照标准,将用户编辑好的信件重新编码,而且为了避免非常规字符,还使用了base64编码。
破坏邮件的MIME格式将导致邮件无法被识别。
[6]5. 方案的设计与实现5.1基本思想方案中对电子邮件使用的加密方法是非对称密钥加密法,即利用公私钥对进行加解密。
发信用户使用接收方的公钥对信件进行加密,收信用户使用自己的私钥对信件进行解密,在网络中传送数据是加密数据,即使被截获也会因为没有相应的密钥而无法获取信件的真实内容。
WSP函数中与收发网络数据相关的函数为WSPSend以及WSPRecv。
方案利用SPI技术,在TCP协议之上建立自定义的分层协议,通过分层协议监视数据,保证数据在收发过程中首先由自定义的WSPSend和WSPRecv函数进行处理。
根据SMTP协议和POP3协议的内容,对发送到25端口及从110端口收到的数据进行收集判断。
发送时找到需要加密的邮件正文进行加密,并根据MIME格式保证接下来能够顺利传输。
接收时根据标记对加密的部分进行解密。
图1表明了SPI和邮件及服务器的关系。
图1安全方案简图5.2具体实现WSPSend和WSPRecv函数含有相同的WSABUF类型的结构体参数lpBuffers,包含两个成员len和buf,len表示buf的长度,而buf则是每次传输过程中存放数据的存储区域。
[3]发送时数据从上层来,在自定义的WSPSend函数中得到lpBuffers->buf中的数据,进行处理后再调用下层的WSPSend函数进行传送并返回。
接收时数据从下层来,需要先调用下层的WSPRecv才能得到lpBuffers->buf中的数据。
实际操作中发现WSPRecv函数与WSPSend对lpBuffers->buf的限制不同,WSPSend可以定义任意的WSABUF结构体进行发送,接收时则只能限制在原始的lpBuffers->buf空间进行操作,位置,大小都不能变化。
需要在处理后把得到的新数据复制到原空间中,再返回。
根据SMTP的规定,当发送方发送DATA命令时表示准备开始发送信件全文,而以<CRLF>.<CRLF>标记表示信件发送完毕[4]。
由此,可以对WSPSend函数中的lpBuffers->buf 参数进行字符串匹配操作来定位信件的始末;与之类似,收信时也是以<CRLF>.<CRLF>标记来表示信件的末端[5],同理可对WSPRecv函数中的lpBuffers->buf参数进行类似处理。
接下来的问题在于找到适合的加密部分,由WSPSend函数截取到的信件是MIME包体,图2为三种不同类型的MIME格式的信件,这里只列出正文部分,框起来的部分为MIME 标注各部分分割的标记。
[6]图2三种不同类型的邮件格式对比由于加密之后的数据与原来相去甚远,将破坏信件的MIME结构,无法使大多数邮件服务器将其当作是一封正常的邮件来处理,因此需要对邮件的结构进行改动以保证加密之后仍然可以被服务器正常处理。
通过对比各种类型的MIME信件,发现text格式的无附件信件在邮件头之后的部分就是正文,没有多余格式的修饰,形式最为简洁。
于是采取将所有不是此格式的信件通过改变MIME体中的Content-Type属性统一修改成text格式的无附件信件。
具体做法是,把从Content-Type处往后所有的内容都进行加密,统一放到修改过的邮件头后面,当作text信件的正文,这样不管这封信原来是什么样子,进行处理后都会被当作是一封text邮件。
与之对应,收信时找到Content-Type,把其和text邮件正文开头处之间的部分全部去除,将加密数据还原后接到Content-Type的位置,这封信也就随之还原成原始的状态。
图3为加密前后两封信的对比:图3加密前后邮件格式对比对数据加密的方法为,以字节为单位设置固定长度的块,在发送数据包的时候截到数据,对数据做while循环,一块一块进行加密直到包的末端,最后一块的长度一般会小于设定的值。
在加密好的数据之间添加一个不会混淆的标记,把加过密的数据顺次累积起来,待这一包数据处理好之后以加密好的数据建立一个新的WSABUF结构体,代替原来的lpBuffers 参数,最后调用下层WSPSend进行发送。
接收时只需在收到的数据包中逐个找到标记,将每两个相邻标记间的部分解密,并把解过密的数据顺次连接,最后把解密好的数据复制到lpBuffers->buf。
一般情况下每包的数据不会完全被解密,总会剩下一部分,其将和下包数据的开头部分组成一个加密单元,因此需要准备一个全局变量,存放每包最后的不能成为加密单元的数据,直到最后收到信的结束标记<CRLF>.<CRLF>。
6. 结论本方案利用Winsock 2 SPI的工作原理,对客户端收发的电子邮件进行数据截取,结构分析,结构改动,把SPI技术和电子邮件结构,协议原理相结合,最后实现对电子邮件的加解密处理。
此方案通过在一套电子邮件安全系统中的应用与测试,提出了实现通用的客户端电子邮件安全方案的一种思路。
参考文献[1] J.Anthony and O.Jim. Windows网络编程技术[M]. 北京:机械工业出版社,2000.3[2] 朱雁辉. Windows防火墙与网络封包截获技术[M]. 北京:电子工业出版社,2002.7[3] Microsoft. Windows Sockets Version 2 SPI[Z].Windows Sockets Version 2,Network Protocols,Networking and Directory Services,Platform SDK,MSDN Library–July2000. 2000.7[4] J.Postel. Simple Mail Transfer Protocol,RFC821[Z].USC/Information Sciences Institute. 1982.8[5] J.Myers. Post Office Protocol–version 3,RFC1939[Z]. Dover Beach Consulting,Inc. 1996.5[6] N.Freed. Multipurpose Internet Mail Extensions(MIME)Part one:Form at of Internet Message Bodies, RFC2045[Z]. 1996,11.Research on the Security Transmission of Email and itsRealizationTian ZhongjiaSchool of Electronic Engineering,Beijing University of Posts and Telecommunications,Beijing(100876)AbstractThis project aims at the email client software of Windows. A model was proposed by changing the structure of the protocol stack that due to the Winsock 2 Service Provider Interface. It sets up a layer protocol above the based TCP protocol so that can make them to be a protocol chain. The layer can provide some custom functions. In the email transmission, the mail is encrypted or decrypted and the structure of the mail is changed at the same time. As a result, the mail in the transmission is safe. The application indicates that this project can make the mail safe in transmissions effectively. Keywords:SPI,email client,MIME,email security。