一种在网关上还原电子邮件内容的方法.pdf

上传人:Y94****206 文档编号:1127920 上传时间:2018-04-01 格式:PDF 页数:12 大小:539.24KB
返回 下载 相关 举报
摘要
申请专利号:

CN02112401.9

申请日:

2002.07.02

公开号:

CN1466342A

公开日:

2004.01.07

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回|||实质审查的生效|||公开

IPC分类号:

H04L12/58; H04L29/02

主分类号:

H04L12/58; H04L29/02

申请人:

深圳市中兴通讯股份有限公司;

发明人:

陈开渠

地址:

广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦法律部

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

一种在网关上还原电子邮件内容的方法,包括以下步骤:读取并分析邮件的消息头部,获得邮件的发送者、接收者、主题、日期、消息类型、编码方式和附件名称等信息;分析邮件的消息类型,如果该消息包含多个子消息,则进行多消息处理;否则说明该消息携带的是正文或附件,对消息正文或附件进行解码。本发明通过对邮件格式的分析及解码,还原出电子邮件的全部内容,使得对邮件的分析和过滤不再局限于只能对单个IP包的处理,能够对邮件内容进行完整的分析,识别出邮件的发送方、接收方、主题、正文、附件等所有内容,为以后针对这些内容做进一步的判断和过滤打下基础。

权利要求书

1: 一种在网关上还原电子邮件内容的方法,其特征在于,包括以下步骤: 一、读取并分析邮件的消息头部,获得邮件的发送者、接收者、主题、日期、 消息类型、编码方式和附件名称; 二、分析消息类型,如果该消息包含多个子消息,则进行多消息处理;否则 说明该消息携带的是正文或附件,转入步骤三; 三、对消息正文或附件进行解码。
2: 根据权利要求1所述的在网关上还原电子邮件内容的方法,其特征在于,所 述步骤二中多消息处理进一步包括: a、分析子消息的消息头部,获得其消息类型、编码方式和附件名称; b、分析该子消息的消息类型,如果该子消息包含多个子消息,则进行多消息 处理;否则说明该子消息携带的是正文或附件,对子消息的正文或附件解码; c、如果该子消息的消息类型是multipart/mixed,则返回步骤a、b对其余的 子消息进行分析,直到最后一个子消息;如果该子消息的消息类型是 multipart/alternative,则不分析其他子消息。
3: 根据权利要求1所述的在网关上还原电子邮件内容的方法,其特征在于,所 述步骤三中对正文或附件解码进一步包括: a、读取正文或附件的一行数据; b、如果编码方式是64位基数编码,则采用64位基数编码的解码函数进行 解码;转至步骤g; c、如果编码方式是引用可显示编码,则采用引用可显示编码的解码函数进 行解码;转至步骤g; d、如果编码方式是7位编码,则采用7位编码的解码函数进行解码;转至 步骤g; e、如果编码方式是8位编码,则采用8位编码的解码函数进行解码;转至 步骤g; f、如果编码方式是二进制编码,则采用二进制编码的解码函数进行解码; g、判断正文或附件的数据是否都已经解码,如果是,则结束;如果不是, 则转至步骤a。
4: 根据权利要求1或2所述的在网关上还原电子邮件内容的方法,其特征在于, 如果消息类型是multipart/mixed和multipart/alternative,则表示该消息包含多个 子消息。

说明书


一种在网关上还原电子邮件内容的方法

    【技术领域】

    本发明涉及互联网技术,具体地说,涉及在网关处对用POP3(Post OfficeProtocol)协议接收的电子邮件和用SMTP(Simple Message Transfer Protocol)协议发送的电子邮件的内容进行还原的方法。背景技术

    随着互联网的迅猛发展,电子邮件越来越成为一种重要的信息交流方式。据不完全统计,在互联网上,电子邮件是仅次于WWW的第二大信息传递方式。电子邮件的收发一般都是采用POP3协议和SMTP协议。

    当某主机向外发电子邮件时,首先将用户的邮箱、对方邮箱、主题、日期、正文、附件等内容,按照邮件格式进行编码、封装,然后通过Internet发送给邮件服务器,在发送过程中采用的是SMTP协议。而对方主机收取电子邮件时,首先通过Internet从邮件服务器上接收到邮件,接收过程采用的是POP3协议,然后进行解封装、解码,最后恢复出邮件内容。

    如图1所示,只要发送邮件的主机、收取邮件的主机、邮件服务器不在同一网络上,那么,发送邮件或接收邮件必然要通过网关的转发。图1给出了通过网关转发的两个例子,一个是网络一的主机向网络二的邮件服务器发送邮件,一个是网络一地主机从网络二的邮件服务器收取邮件。

    采用POP3协议和SMTP协议的邮件客户端有美国微软公司的OutlookExpress系统、美国网景公司的Netscape Messenger等;采用POP3协议和SMTP协议的邮件服务器有Sendmail、Qmail等。

    为了防止含有非法内容或敏感内容的邮件的传递,一般在服务器端都有对邮件内容进行过滤的工具,常用的有防火墙技术。

    一般的防火墙能够根据网络中IP包携带的源地址、目的地址、源端口、目的端口和协议类型等信息对IP包进行过滤。比如,通过配置防火墙规则,限定如果IP包的源地址是1.2.3.4,协议类型是TCP,目的端口(即POP3协议所使用的端口)是110,则丢弃IP包,这样可以使主机1.2.3.4无法用POP3协议收取邮件。但是它的缺点在于将主机1.2.3.4的所有邮件都过滤了,不能根据邮件的内容来决定是否过滤。

    还有一种防火墙能够实现对单个IP包进行字符串匹配,例如,通过配置防火墙规则,限定如果IP包的源地址是1.2.3.4,协议类型是TCP,目的端口是110,并且包含字符串“组织郊游”,则丢掉该IP包。这样,主机1.2.3.4用POP3协议收取的邮件中如果含有“组织郊游”的字符串,那么该邮件就被过滤。通过这种方法虽然能够在一定程度上实现根据邮件内容进行过滤,但仍存在三个缺点:

    1、该方法只能做简单的字符串匹配,不能分析整个邮件的内容。

    2、该方法只能对一个IP包中的字符串进行匹配,而一封邮件往往会通过多个IP包传送,如果字符串“组织郊游”分散在两个IP包中,第一个IP包中包含“组织”,第二个IP包中包含“郊游”,这种方法就不能对其进行过滤。

    3、即便字符串“组织郊游”包含在一个IP包中,但由于邮件内容往往经过了专门的编码方式进行编码,所以字符串“组织郊游”在IP包中将以编码后的形式出现,这样也会导致字符串匹配失败。

    综上所述,现有的过滤方法都不能实现根据整个邮件内容进行分析和过滤,而为了网络的安全性,避免含有非法内容的邮件的传递,有必要在网关处加强对邮件的分析和过滤。而要达到这一目的,在网关还原出所转发的电子邮件的内容是关键所在,但目前还没有检索到在网络的网关处还原电子邮件内容的方法。发明内容

    本发明所要解决的技术问题在于提供一种在网关上还原电子邮件内容的方法,可以还原出电子邮件的全部内容,使得分析和过滤邮件更加容易。

    本发明所述在网关上还原电子邮件内容的方法,包括以下步骤:

    一、读取并分析邮件的消息头部,获得邮件的发送者、接收者、主题、日期、消息类型、编码方式和附件名称;

    二、分析消息类型,如果该消息包含多个子消息,则进行多消息处理;否则说明该消息携带的是正文或附件,转入步骤三;

    三、对消息正文或附件进行解码。

    所述步骤二中多消息处理进一步包括:

    a、分析子消息的消息头部,获得其消息类型、编码方式和附件名称;

    b、分析该子消息的消息类型,如果该子消息包含多个子消息,则进行多消息处理;否则说明该子消息携带的是正文或附件,对子消息的正文或附件解码;

    c、如果该子消息的消息类型是multipart/mixed,则返回步骤a、b对其余的子消息进行分析,直到最后一个子消息;如果该子消息的消息类型是multipart/alternative,则不分析其他子消息。

    所述步骤三中对正文或附件解码进一步包括:

    a、读取正文或附件的一行数据;

    b、如果编码方式是64位基数编码,则采用64位基数编码的解码函数进行解码;转至步骤g;

    c、如果编码方式是引用可显示编码,则采用引用可显示编码的解码函数进行解码;转至步骤g;

    d、如果编码方式是7位编码,则采用7位编码的解码函数进行解码;转至步骤g;

    e、如果编码方式是8位编码,则采用8位编码的解码函数进行解码;转至步骤g;

    f、如果编码方式是二进制编码,则采用二进制编码的解码函数进行解码;

    g、判断正文或附件的数据是否都已经解码,如果是,则结束;如果不是,则转至步骤a。

    本发明所述方法通过对邮件格式的分析及解码,还原出电子邮件的全部内容,使得对邮件的分析和过滤不再局限于只能对单个IP包的处理,解决了现有技术中只能对地址、端口、协议等的简单过滤,或对单个IP包进行的简单字符串匹配。本方法能够对邮件内容进行完整的分析,识别出邮件的发送方、接收方、主题、正文、附件等所有内容,为以后针对这些内容做进一步的判断和过滤打下基础。附图说明

    图1是本发明还原电子邮件内容的方法适用的系统示意图。

    图2是本发明还原电子邮件内容方法的流程图。

    图3是对多个子消息进行分析的流程图。

    图4是正文或附件解码的流程图。

    图5是对某一邮件的还原分析示意图。具体实施方式

    在图1所示的系统图中,网络一上的一个主机以SMTP协议向网络二的邮件服务器发送邮件,另一主机以POP3协议从网络二的邮件服务器上收取邮件,所有的IP包都要经过网关的转发。本发明适用于网关从其所转发的IP包中还原出邮件内容。

    还原电子邮件的内容主要在于对邮件格式的分析和对邮件正文及附件的解码。消息是邮件的基本组成单位,一个邮件可以是单个消息,也可以由多个消息组成。消息包括消息头部和消息体,消息头部一般包含有发送人、接收人、日期、主题等信息,消息体是消息的正文部分,记载有邮件的正式内容。每个消息的消息类型不同,编码方式也不同,在消息内部也可以有嵌套结构,即消息由多个子消息构成,每个子消息有独立的消息类型和编码方式。消息类型是用于说明消息体的内容的,有三种形式,一是多个子消息及各子消息之间的关系,二是正文,三是附件及附件的文件类型,邮件中允许的消息类型有几十种,目前表示表示消息体是由多个子消息组成的消息类型只有两种,分别是multipart/mixed和multipart/alternative,两者的区别在于multipart/mixed表示每个子消息都是邮件内容的一部分;而multipart/alternative表示只能任选一个子消息作为邮件内容;其他的消息类型表明消息体是正文或附件。编码方式是对正文或附件的编码方法,有64位基数编码(BASE64)、引用可显示编码(Quoted-Printable)、7位编码(7BIT)、8位编码(8BIT)、二进制编码(Binary)共5种编码方式,每种编码方式都有相应的解码函数。

    本发明的核心思想在于将邮件内容的还原分解成三部分,分析单个消息(即分析单个消息的消息头部)、分析多个子消息(即把多个子消息分割开来进行处理)和分析消息体(即消息正文或附件的解码),分别用三个过程——单消息处理过程、多消息分析过程、正文或附件解码过程来完成这三部分。对于有内部嵌套结构的消息的分析,则可以综合使用单消息处理过程和多消息分析过程来完成,从而用三个较为简单的过程完成复杂的邮件格式和内容分析。

    图2所示的流程既是本发明方法的流程图,也是单消息处理过程的流程图。在还原邮件内容之前,首先要从网关正在转发的所有IP包中找到要还原的邮件的IP包,可以根据以下四个参数获取携带所需邮件的所有IP包,邮件客户端地址、邮件客户端端口、邮件服务器地址和邮件服务器端口。由于IP包可能失序到达或重复到达,所以应采取相应措施消除失序和重复,以保证IP包的顺序符合邮件的顺序。本发明可以对IP包进行实时处理,以保证及时地根据邮件的内容进行下一步的处理。

    在单消息处理过程中,首先读取邮件的消息头部,去掉携带邮件的IP包的IP报头,得到有用的邮件数据。然后对消息头部进行分析,获得该邮件的发送者、接收者、主题、日期、消息类型、编码方式,如果邮件带有附件的话,还可以获得附件的名称。在获得了邮件的消息类型后,根据消息类型选择下一步的处理,如果消息类型是multipart/mixed或multipart/alternative,则说明该消息是由多个子消息组成的,就对多个子消息进行处理,进行多消息分析过程;否则,说明该消息的消息体是正文或附件,对正文或附件进行解码。

    在图3所示的多消息处理过程中,对子消息进行单消息处理,并且根据消息类型来判断是否对每个子消息都进行处理,如果消息类型是multipart/mixed,则每个子消息都要进行单消息处理;如果消息类型是multipart/alternative,则处理完一个子消息后,就不再处理其他子消息了。

    正文或附件的解码过程如图4所示,根据编码方式的不同对数据进行解码。现在的编码方式有5种,根据消息头部中所带的编码方式,采取相应的解码函数对每行数据解码。

    图5是某一邮件的还原分析示意图。假设该邮件中包含三个子消息,其中第一个子消息又由两个子消息组成。下面详细介绍对该邮件的还原过程。

    将整个邮件看作一个单消息,进行单消息处理。分析邮件消息头部,获得发件人、收件人、主题、日期的信息;同时还获得邮件的消息类型是multipart/mixed,说明该邮件包含多个子消息,并且需对每个子消息进行处理;分割行是boundary1,表明子消息之间的分界是boundary 1。由于含有多个子消息,所以需进行多消息处理。

    对于第一个子消息,分析其消息头部,获得其消息类型是multipart/alternative,表明该子消息由多个孙子消息组成,并且可以只对其中一个孙子消息进行处理;分割行是boundary 2,是各个孙子消息之间的分界。分析第一个孙子消息的头部,获得其消息类型是text/plain,表明是纯文本信息的正文,进行正文的解码,循环读取正文的每行数据,由于其编码方式是引用可显示编码,因此采用引用可显示编码(Quoted-Printable)的解码函数进行解码,直到分割行boundary 2处,该孙子消息的还原完毕。由于第一个子消息的消息类型是multipart/alternative,因此跳过第二个孙子消息,对第一个子消息的还原结束。

    对于第二个子消息,分析其消息头部,获得其消息类型是application/msword,表明该子消息携带的是一个WORD文件;编码方式是64位基数编码,对其进行解码,采用64位基数编码(BASE64)的解码函数,直到分割行boundary1处,对第二个子消息的还原结束。

    对于第三个子消息,通过对其消息头部的分析,获得其消息类型是application/zip,表明该子消息是一个ZIP压缩文件;编码方式是64位基数编码,对其进行解码,采用64位基数编码的解码函数,直到分割行boundary1处,对第三个子消息的还原结束。

    至此,通过以上步骤可以还原出该邮件的全部内容。

一种在网关上还原电子邮件内容的方法.pdf_第1页
第1页 / 共12页
一种在网关上还原电子邮件内容的方法.pdf_第2页
第2页 / 共12页
一种在网关上还原电子邮件内容的方法.pdf_第3页
第3页 / 共12页
点击查看更多>>
资源描述

《一种在网关上还原电子邮件内容的方法.pdf》由会员分享,可在线阅读,更多相关《一种在网关上还原电子邮件内容的方法.pdf(12页珍藏版)》请在专利查询网上搜索。

一种在网关上还原电子邮件内容的方法,包括以下步骤:读取并分析邮件的消息头部,获得邮件的发送者、接收者、主题、日期、消息类型、编码方式和附件名称等信息;分析邮件的消息类型,如果该消息包含多个子消息,则进行多消息处理;否则说明该消息携带的是正文或附件,对消息正文或附件进行解码。本发明通过对邮件格式的分析及解码,还原出电子邮件的全部内容,使得对邮件的分析和过滤不再局限于只能对单个IP包的处理,能够对邮件。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1