CN103001849B - 反垃圾邮件处理系统及方法 - Google Patents
反垃圾邮件处理系统及方法 Download PDFInfo
- Publication number
- CN103001849B CN103001849B CN201110264664.5A CN201110264664A CN103001849B CN 103001849 B CN103001849 B CN 103001849B CN 201110264664 A CN201110264664 A CN 201110264664A CN 103001849 B CN103001849 B CN 103001849B
- Authority
- CN
- China
- Prior art keywords
- key value
- message segment
- mail body
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种反垃圾邮件处理系统,包括:关键值向量库,用于保存垃圾邮件样本所对应的关键值向量;关键值向量生成器,用于接收邮件传送代理系统转发的MIME格式的电子邮件,并计算电子邮件所对应的关键值向量;垃圾邮件处理单元,将电子邮件对应的关键值向量与关键值向量库中保存的关键值向量分别进行比较,如果存在比较结果在垃圾邮件判断阈值范围内,则确定电子邮件为垃圾邮件,否则将电子邮件转交给邮件投递代理系统进行邮件投递。本发明还涉及一种反垃圾邮件处理方法。本发明比传统的垃圾关键字全文比较方式更快捷,即便垃圾关键字进行了改装,也仍能确保垃圾邮件过滤的准确率。
Description
技术领域
本发明涉及反垃圾邮件技术,尤其涉及一种反垃圾邮件处理系统及方法。
背景技术
在互联网用户的各种应用中,电子邮件是一种比较常用的基础应用,用户可以通过发送电子邮件向另一方传送信息,十分便捷,但也同时产生了垃圾电子邮件的问题。
垃圾电子邮件(以下简称垃圾邮件)是指未经用户许可就强行发送到用户的电子邮箱中的任何电子邮件,垃圾邮件主要通过电子邮箱来发送。垃圾邮件的内容包括推销广告、成人广告、赚钱信息,或包含电脑病毒等破坏性的电子邮件。这些垃圾邮件给邮箱用户带来了困扰,影响到了邮箱用户的使用体验,因此各大邮件提供商都把提升电子邮件反垃圾系统效果作为提升邮箱用户体验的重要关注点。
现有的反垃圾邮件处理系统通常是采用垃圾关键字的匹配方法,即通过在邮件内容中查询是否有字词与已录入在系统中的垃圾关键字匹配,由此确定该邮件是否属于垃圾邮件。这种垃圾关键字匹配方案由于需要全文匹配,效率比较低,而且对于增加了很多干扰性的符号或类似词义或字形或发音的其他表达词形式,则很难准确的进行识别和匹配。
发明内容
本发明的目的是提出一种反垃圾邮件处理系统及方法,能够实现较高的垃圾邮件识别准确率和效率。
为实现上述目的,本发明提供了一种反垃圾邮件处理系统,包括:及所述信息段相对于整个邮件的尺寸关系计算对应的信息段尺寸关键值SizeKey;
信息段编码关键值计算组件,用于根据所述信息段采用的编码方式及相关信息计算对应的信息段编码关键值EncodeKey;
递归线性计算组件,用于通过对所述电子邮件的邮件体分成的各个信息段所对应的所述信息段结构关键值MIMEKey、信息段尺寸关键值SizeKey和信息段编码关键值EncodeKey进行递归线性计算,得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey。
进一步的,所述邮件头关键值计算单元所应用的计算公式为:
HeadKey=∑(第i个域出现的序号*log(该域的映射数值)),i=1~N;
其中,N为所述邮件头中所包括的域的数量。
进一步的,所述信息段结构关键值计算组件所应用的计算公式为:
信息段结构关键值MIMEKey=当前信息段的层数*log(当前信息段的映射数值)+当前信息段的数据尺寸*log(下一信息段的映射数值);
所述信息段尺寸关键值计算组件所应用的计算公式为:
信息段尺寸关键值SizeKey=((当前信息段解码后数据尺寸+电子邮件总体数据尺寸/2)/电子邮件总体数据尺寸)*log(当前信息段的映射数值);
信息段编码关键值计算组件所应用的计算公式为:
信息段编码关键值EncodeKey=a*log(字符集的映射数值)+b*log(当前信息段的加密编码的映射数值)+c*log(MIME结构内定义的标准CONTENT-TYPE的映射数值)+d*log(CONTENT-TYPE标签的长度)+e*log(附件名字符集的映射数值),其中a、b、c、d、e均为预设的系数。
为实现上述目的,本发明提供了一种反垃圾邮件处理方法,包括:
接收邮件传送代理系统转发的MIME格式的电子邮件,并计算
关键值向量库,用于保存垃圾邮件样本所对应的关键值向量;
关键值向量生成器,用于接收邮件传送代理系统转发的MIME格式的电子邮件,并计算所述电子邮件所对应的关键值向量;
垃圾邮件处理单元,将所述电子邮件对应的关键值向量与所述关键值向量库中保存的关键值向量分别进行比较,如果存在比较结果在垃圾邮件判断阈值范围内,则确定所述电子邮件为垃圾邮件,否则将所述电子邮件转交给邮件投递代理系统进行邮件投递。
进一步的,所述关键值向量生成器具体包括:
邮件分割单元,用于对所述电子邮件的邮件头和邮件体进行分割;
邮件头关键值计算单元,用于根据所述电子邮件的邮件头中的各个域计算对应的邮件头关键值HeaderKey;
邮件体关键值计算单元,用于根据所述电子邮件的邮件体中的各个信息段所对应的多维向量通过递归计算得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey;
关键值向量生成单元,根据所述邮件头关键值计算单元计算出的邮件头关键值HeaderKey和所述邮件体关键值计算单元计算出的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey得到所述电子邮件对应的关键值向量。
进一步的,所述邮件体关键值计算单元具体包括:
MIME结构树生成组件,用于将邮件体表示为呈MIME树形结构所对应的多维向量,所述多维向量与所述邮件体所分成的多个信息段相对应,所述多维向量的维度包括信息段结构关键值MIMEKey、信息段尺寸关键值SizeKey和信息段编码关键值EncodeKey;
信息段结构关键值计算组件,用于根据所述信息段在所述电子邮件的邮件体中的位置以及所述信息段与其他信息段的父子兄弟关系计算对应的信息段结构关键值MIMEKey;
信息段尺寸关键值计算组件,用于根据所述信息段的数据尺寸以所述电子邮件所对应的关键值向量;
将所述电子邮件对应的关键值向量与所述关键值向量库中保存的垃圾邮件样本所对应的关键值向量分别进行比较,如果存在比较结果在垃圾邮件判断阈值范围内,则确定所述电子邮件为垃圾邮件,否则将所述电子邮件转交给邮件投递代理系统进行邮件投递。
进一步的,所述计算电子邮件所对应的关键值向量的操作具体包括:
对所述电子邮件的邮件头和邮件体进行分割;
根据所述电子邮件的邮件头中的各个域计算对应的邮件头关键值HeaderKey;
根据所述电子邮件的邮件体中的各个信息段所对应的多维向量通过递归计算得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey;
根据计算出的邮件头关键值HeaderKey、邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey得到所述电子邮件对应的关键值向量。
进一步的,所述根据电子邮件的邮件体中的各个信息段所对应的多维向量通过递归计算得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey的操作具体包括:
将邮件体表示为呈MIME树形结构所对应的多维向量,所述多维向量与所述邮件体所分成的多个信息段相对应,所述多维向量的维度包括信息段结构关键值MIMEKey、信息段尺寸关键值SizeKey和信息段编码关键值EncodeKey;
根据所述信息段在所述电子邮件的邮件体中的位置以及所述信息段与其他信息段的父子兄弟关系计算对应的信息段结构关键值MIMEKey;
根据所述信息段的数据尺寸以及所述信息段相对于整个邮件的尺寸关系计算对应的信息段尺寸关键值SizeKey;
根据所述信息段采用的编码方式及相关信息计算对应的信息段编码关键值EncodeKey;
通过对所述电子邮件的邮件体分成的各个信息段所对应的所述信息段结构关键值MIMEKey、信息段尺寸关键值SizeKey和信息段编码关键值EncodeKey进行递归线性计算,得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey。
进一步的,所述根据电子邮件的邮件头中的各个域计算对应的邮件头关键值HeaderKey的操作所应用的计算公式为:
HeadKey=∑(第i个域出现的序号*log(该域的映射数值)),i=1~N;
其中,N为所述邮件头中所包括的域的数量。
进一步的,所述根据信息段在所述电子邮件的邮件体中的位置以及所述信息段与其他信息段的父子兄弟关系计算对应的信息段结构关键值MIMEKey的操作所应用的计算公式为:
信息段结构关键值MIMEKey=当前信息段的层数*log(当前信息段的映射数值)+当前信息段的数据尺寸*log(下一信息段的映射数值);
所述根据信息段的数据尺寸以及所述信息段相对于整个邮件的尺寸关系计算对应的信息段尺寸关键值SizeKey的操作所应用的计算公式为:
信息段尺寸关键值SizeKey=((当前信息段解码后数据尺寸+电子邮件总体数据尺寸/2)/电子邮件总体数据尺寸)*log(当前信息段的映射数值);
所述根据信息段采用的编码方式及相关信息计算对应的信息段编码关键值EncodeKey的操作所应用的计算公式为:
信息段编码关键值EncodeKey=a*log(字符集的映射数值)+b*log(当前信息段的加密编码的映射数值)+c*log(MIME结构内定义的标准CONTENT-TYPE的映射数值)+d*log(CONTENT-TYPE标签的长度)+e*log(附件名字符集的映射数值),其中a、b、c、d、e均为预设的系数。
基于上述技术方案,本发明对接收到的电子邮件生成对应的关键值向量,并将该向量与垃圾邮件样本对应的关键值向量进行比较,根据比较情况来确定该电子邮件是否有较大可能是垃圾邮件,这种方式比传统的垃圾关键字全文比较方式更快捷,即便垃圾关键字进行了改装,也仍能确保垃圾邮件过滤的准确率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明反垃圾邮件处理系统的一实施例的结构示意图。
图2为本发明中一封MIME邮件的识别特征码的实例示意图。
图3为本发明反垃圾邮件处理系统的另一实施例中的关键值向量生成器的结构示意图。
图4为本发明反垃圾邮件处理方法的一实施例的流程示意图。
图5为本发明反垃圾邮件处理方法的另一实施例的流程示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
目前的电子邮件基本都是根据MIME规范编码而成的电子邮件,MIME邮件是由邮件头和邮件体构成。邮件体被分为多段,每个段又包含段头和段体。因此每封MIME邮件都可以被描述成一个树状结构。MIME邮件的树状结构中每一个树状节点都代表不同的内容(如文字长度、内容类型、传输编码等)。在日常监测中发现,很多垃圾邮件在群发的过程中,虽然垃圾邮件发给每个人的邮件会有变种,但MIME邮件结构中只有小部分结构中的内容会进行变动,因此本发明基于MIME结构树特征识别来进行垃圾邮件的识别,将垃圾邮件的MIME树结构进行特征码提取,形成垃圾邮件特征码库,并作为后续垃圾邮件判断的依据。无论是作为反垃圾邮件系统的主要技术手段还是以垃圾关键字识别方式为主的传统反垃圾邮件系统的辅助技术手段,均可实现较好的垃圾邮件识别准确率和效率。
如图1所示,为本发明反垃圾邮件处理系统的一实施例的结构示意图。在本实施例中,反垃圾邮件处理系统主要包括以下组件:关键值向量库1、关键值向量生成器2和垃圾邮件处理单元3。在这些组件中,关键值向量库1负责保存垃圾邮件样本所对应的关键值向量,这里提到的垃圾邮件样本是指日常收集到的垃圾邮件样本,例如一些历史数据、每次判断后的垃圾邮件、外部导入的垃圾邮件数据等等。选取这些样本就是希望从这些样本中找出具有能够较显著的区别出垃圾邮件与普通邮件之间区别的特征,从而为垃圾邮件判别提供判断依据。关键值向量库1中的垃圾邮件样本对应的关键值向量可以采用与关键值向量生成器2相同的生成机理,以便关键值比较实在一个对等的基础上,或者如果能够保证关键值比较的可靠性,采用不同于关键值向量生成器2的关键值向量生成机理也是可行的。
关键值向量生成器2负责接收邮件传送代理(MailTransferAgent,简称MTA)系统转发的MIME格式的电子邮件,并计算该电子邮件所对应的关键值向量。前面已经提到了直接进行关键字类的比较在效率上、判断适应范围等方面还存在缺陷,而采用关键值向量的方式则可以屏蔽掉一些内容上的规避,而直接从邮件结构入手,因此可以在识别效率上、对各类不同形态的垃圾邮件的适应范围等方面均有所提高,进一步也提高了识别的准确率。
垃圾邮件处理单元3负责将该电子邮件对应的关键值向量与关键值向量库中保存的关键值向量分别进行比较,如果存在比较结果在垃圾邮件判断阈值范围内,则确定所述电子邮件为垃圾邮件,否则将所述电子邮件转交给邮件投递代理(MailDeliveryAgent,简称MDA)系统进行邮件投递。在具体垃圾邮件的判断过程中,垃圾邮件处理单元3主要是进行关键值向量的比较,通过判断比较结果是否比较显著来判断该电子邮件是否与垃圾邮件相符,如果比较结果比较显著,那就证明该电子邮件与垃圾邮件的样本在结构上差异较大,不能被认定为垃圾邮件,或者说属于垃圾邮件的机率较小,而如果比较结果表明该电子邮件与垃圾邮件的样本在结构上比较接近,而前面提到通过观察,即便是变种的垃圾邮件在MIME邮件结构中的结构变化也比较小,进而推出该电子邮件为垃圾邮件,或者说属于垃圾邮件的机率较大。在判断出垃圾邮件后,可以将该邮件作为垃圾邮件样本存入关键值向量库1,以便不断更新关键值向量库1,使其更符合实际情况。
下面通过图2来先提供一个比较直观的MIME邮件的识别特征码的实例说明。在图2中的MIME结构树中并未包括邮件头,主要是邮件体所分成的各层各段。每个节点包括了信息段所对应的几种关键值信息,这里暂不详述,在后面将结合方法实施例继续进行说明。
如图3所示,为本发明反垃圾邮件处理系统的另一实施例中的关键值向量生成器的结构示意图。在本实施例中,关键值向量生成器具体包括:邮件分割单元21、邮件头关键值计算单元22、邮件体关键值计算单元23和关键值向量生成单元24。其中,邮件分割单元21负责对电子邮件的邮件头和邮件体进行分割。邮件头关键值计算单元22负责根据电子邮件的邮件头中的各个域计算对应的邮件头关键值HeaderKey。在计算邮件关键值时,由于一些邮件头的域是要具备的,例如Received、From、To、Subject、Date、Message-ID、MIME-Version、Content-Type等,通过建立这些域的映射数值表,将邮件头的结构转换成具体数值的计算,以求得邮件头关键值HeaderKey。在具体计算方法中,可以在考虑邮件头的结构的基础上进一步采用对数的处理方式,使结果在保持线性的基础上增加离散性。具体计算公式例如以下:
HeadKey=∑(第i个域出现的序号*log(该域的映射数值)),i=1~N,这里的N为所述邮件头中所包括的域的数量。
邮件体关键值计算单元23负责根据所述电子邮件的邮件体中的各个信息段所对应的多维向量通过递归计算得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey。邮件体关键值在计算过程中主要是通过对各个信息段的邮件体关键值进行递归计算而得到的,通过这种方式可以将整个邮件体中包括各个信息段的整体和局部结构以数字方式清楚的表达出来。
关键值向量生成单元24负责根据所述邮件头关键值计算单元计算出的邮件头关键值HeaderKey和所述邮件体关键值计算单元计算出的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey得到所述电子邮件对应的关键值向量。
在另一个具体实施例中,邮件体关键值计算单元可以具体包括:MIME结构树生成组件、信息段结构关键值计算组件、信息段尺寸关键值计算组件、信息段编码关键值计算组件和递归线性计算组件。
MIME结构树生成组件负责将邮件体表示为呈MIME树形结构所对应的多维向量,所述多维向量与所述邮件体所分成的多个信息段相对应,所述多维向量的维度包括信息段结构关键值MIMEKey、信息段尺寸关键值SizeKey和信息段编码关键值EncodeKey。
MIME结构树生成组件所生成的MIME结构树如图2所示,在图2中,每个信息段作为一个节点,其对应着多维向量,并被记录在该MIME结构树的节点中,而每个向量的维度包括了每个信息段对应的结构关键值MIMEKey、尺寸关键值SizeKey和编码关键值EncodeKey。在其他实施例中,根据具体情况还可以在本实施例中的各个维度的基础上中增加或减少维度,例如邮件的时间维度可能也能够作为判断依据之一,因此可以在多维向量中增加该维度或者替换其中的某个维度。另外,在每个节点中,编码关键值EncodeKey不限于一个,可以包括并列的多种编码类型。
信息段结构关键值计算组件负责根据所述信息段在所述电子邮件的邮件体中的位置以及所述信息段与其他信息段的父子兄弟关系计算对应的信息段结构关键值MIMEKey。在具体计算方法中,可以在考虑信息段的结构的基础上进一步采用对数的处理方式,使结果在保持现行的基础上增加离散性。例如计算公式如下所示但不限于该公式:
信息段结构关键值MIMEKey=当前信息段的层数*log(当前信息段的映射数值)+当前信息段的数据尺寸*log(下一信息段的映射数值)。这里的层数就是根据MIME结构树所体现出的各个节点所对应的层。
信息段尺寸关键值计算组件负责根据所述信息段的数据尺寸以及所述信息段相对于整个邮件的尺寸关系计算对应的信息段尺寸关键值SizeKey。在具体计算方法中,可以在考虑信息段的结构的基础上进一步采用对数的处理方式,使结果在保持现行的基础上增加离散性。例如计算公式如下所示但不限于该公式:
信息段尺寸关键值SizeKey=((当前信息段解码后数据尺寸+电子邮件总体数据尺寸/2)/电子邮件总体数据尺寸)*log(当前信息段的映射数值)。
信息段编码关键值计算组件负责根据所述信息段采用的编码方式及相关信息计算对应的信息段编码关键值EncodeKey。在具体计算方法中,可以在考虑信息段的结构的基础上进一步采用对数的处理方式,使结果在保持现行的基础上增加离散性。例如计算公式如下所示但不限于该公式:
信息段编码关键值EncodeKey=a*log(字符集的映射数值)+b*log(当前信息段的加密编码的映射数值)+c*log(MIME结构内定义的标准CONTENT-TYPE的映射数值)+d*log(CONTENT-TYPE标签的长度)+e*log(附件名字符集的映射数值),其中a、b、c、d、e均为预设的系数。
递归线性计算组件负责通过对所述电子邮件的邮件体分成的各个信息段所对应的所述信息段结构关键值MIMEKey、信息段尺寸关键值SizeKey和信息段编码关键值EncodeKey进行递归线性计算,得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey。
下面将通过几个反垃圾邮件处理方法的实施例对本发明进行说明。如图4所示,为本发明反垃圾邮件处理方法的一实施例的流程示意图。在本实施例中,反垃圾邮件处理流程包括:
步骤100、接收邮件传送代理系统转发的MIME格式的电子邮件;
步骤110、计算电子邮件所对应的关键值向量;
步骤120、将所述电子邮件对应的关键值向量与所述关键值向量库中保存的垃圾邮件样本所对应的关键值向量分别进行比较;
步骤130、判断是否存在比较结果在垃圾邮件判断阈值范围内的情况,如果存在,则执行步骤140,否则执行步骤150;
步骤140、确定所述电子邮件为垃圾邮件,并在后续执行相应的处理,例如屏蔽该邮件,将该邮件作为垃圾邮件样本存入关键值向量库,或者删除该邮件等;
步骤150、将所述电子邮件转交给邮件投递代理系统进行邮件投递。
本实施例对接收到的电子邮件生成对应的关键值向量,并将该向量与垃圾邮件样本对应的关键值向量进行比较,根据比较情况来确定该电子邮件是否有较大可能是垃圾邮件,这种方式比传统的垃圾关键字全文比较方式更快捷,即便垃圾关键字进行了改装,也仍能确保垃圾邮件过滤的准确率。
如图5所示,为本发明反垃圾邮件处理方法的另一实施例的流程示意图。与上一实施例相比,本实施例中的步骤110的具体步骤包括:
步骤111、对所述电子邮件的邮件头和邮件体进行分割;
步骤112、根据所述电子邮件的邮件头中的各个域计算对应的邮件头关键值HeaderKey;
步骤113、根据所述电子邮件的邮件体中的各个信息段所对应的多维向量通过递归计算得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey;
步骤114、根据计算出的邮件头关键值HeaderKey、邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey得到所述电子邮件对应的关键值向量。
在本实施例中,邮件头和邮件体的关键值向量是分开计算的,在步骤112中主要对邮件头对应的关键值向量进行了计算,具体公式可参见以下公式,但不限于该公式:
HeadKey=∑(第i个域出现的序号*log(该域的映射数值)),i=1~N,这里的N为所述邮件头中所包括的域的数量。
在步骤113中,信息段结构关键值MIMEKey的操作所应用的计算公式例如以下,但不限制为该公式:
信息段结构关键值MIMEKey=当前信息段的层数*log(当前信息段的映射数值)+当前信息段的数据尺寸*log(下一信息段的映射数值)。
信息段尺寸关键值SizeKey的操作所应用的计算公式例如以下,但不限制为该公式:
信息段尺寸关键值SizeKey=((当前信息段解码后数据尺寸+电子邮件总体数据尺寸/2)/电子邮件总体数据尺寸)*log(当前信息段的映射数值)。
信息段编码关键值EncodeKey的操作所应用的计算公式例如以下,但不限制为该公式:
信息段编码关键值EncodeKey=a*log(字符集的映射数值)+b*log(当前信息段的加密编码的映射数值)+c*log(MIME结构内定义的标准CONTENT-TYPE的映射数值)+d*log(CONTENT-TYPE标签的长度)+e*log(附件名字符集的映射数值),其中a、b、c、d、e均为预设的系数。
在得到了各个信息段所对应的多维向量后,通过递归计算得到总的邮件体所对应的邮件体关键值向量,进而结合邮件头关键值向量生成该电子邮件所对应的关键值向量。
本发明所阐述的反垃圾邮件处理系统及方法强调邮件的原始信息结构,利用邮件的MIME树形结构计算其KeyValue来进行垃圾邮件识别,便于从垃圾邮件结构特征进行垃圾邮件识别,避免垃圾邮件通过部分变体来逃避过滤;同时传统的MIME结构特征反垃圾方法需要遍历每个分支进行比对,本发明则创新性的通过将每封邮件生成唯一MIME结构特征向量的方法,只对每封邮件的MIME结构特征向量与垃圾邮件MIME结构特征向量库进行匹配,大大提高了可疑垃圾邮件的识别效率。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于方法实施例而言,由于其与系统实施例基本相似,所以描述的比较简单,相关之处参见系统实施例的部分说明即可。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。
Claims (8)
1.一种反垃圾邮件处理系统,包括:
关键值向量库,用于保存垃圾邮件样本所对应的关键值向量;
关键值向量生成器,用于接收邮件传送代理系统转发的MIME格式的电子邮件,并计算所述电子邮件所对应的关键值向量;
垃圾邮件处理单元,将所述电子邮件对应的关键值向量与所述关键值向量库中保存的关键值向量分别进行比较,如果存在比较结果在垃圾邮件判断阈值范围内,则确定所述电子邮件为垃圾邮件,否则将所述电子邮件转交给邮件投递代理系统进行邮件投递;
其中,所述关键值向量生成器具体包括:
邮件分割单元,用于对所述电子邮件的邮件头和邮件体进行分割;
邮件头关键值计算单元,用于根据所述电子邮件的邮件头中的各个域计算对应的邮件头关键值HeaderKey;
邮件体关键值计算单元,用于根据所述电子邮件的邮件体中的各个信息段所对应的多维向量通过递归计算得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey;
关键值向量生成单元,根据所述邮件头关键值计算单元计算出的邮件头关键值HeaderKey和所述邮件体关键值计算单元计算出的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey得到所述电子邮件对应的关键值向量。
2.根据权利要求1所述的系统,其中所述邮件体关键值计算单元具体包括:
MIME结构树生成组件,用于将邮件体表示为呈MIME树形结构所对应的多维向量,所述多维向量与所述邮件体所分成的多个信息段相对应,所述多维向量的维度包括信息段结构关键值MIMEKey、信息段尺寸关键值SizeKey和信息段编码关键值EncodeKey;
信息段结构关键值计算组件,用于根据所述信息段在所述电子邮件的邮件体中的位置以及所述信息段与其他信息段的父子兄弟关系计算对应的信息段结构关键值MIMEKey;
信息段尺寸关键值计算组件,用于根据所述信息段的数据尺寸以及所述信息段相对于整个邮件的尺寸关系计算对应的信息段尺寸关键值SizeKey;
信息段编码关键值计算组件,用于根据所述信息段采用的编码方式及相关信息计算对应的信息段编码关键值EncodeKey;
递归线性计算组件,用于通过对所述电子邮件的邮件体分成的各个信息段所对应的所述信息段结构关键值MIMEKey、信息段尺寸关键值SizeKey和信息段编码关键值EncodeKey进行递归线性计算,得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey。
3.根据权利要求1所述的系统,其中,所述邮件头关键值计算单元所应用的计算公式为:
HeaderKey=∑(第i个域出现的序号*log(该域的映射数值)),i=1~N;
其中,N为所述邮件头中所包括的域的数量。
4.根据权利要求2所述的系统,其中,所述信息段结构关键值计算组件所应用的计算公式为:
信息段结构关键值MIMEKey=当前信息段的层数*log(当前信息段的映射数值)+当前信息段的数据尺寸*log(下一信息段的映射数值);
所述信息段尺寸关键值计算组件所应用的计算公式为:
信息段尺寸关键值SizeKey=((当前信息段解码后数据尺寸+电子邮件总体数据尺寸/2)/电子邮件总体数据尺寸)*log(当前信息段的映射数值);
信息段编码关键值计算组件所应用的计算公式为:
信息段编码关键值EncodeKey=a*log(字符集的映射数值)+b*log(当前信息段的加密编码的映射数值)+c*log(MIME结构内定义的标准CONTENT-TYPE的映射数值)+d*log(CONTENT-TYPE标签的长度)+e*log(附件名字符集的映射数值),其中a、b、c、d、e均为预设的系数。
5.一种反垃圾邮件处理方法,包括:
接收邮件传送代理系统转发的MIME格式的电子邮件,并计算所述电子邮件所对应的关键值向量;
将所述电子邮件对应的关键值向量与所述关键值向量库中保存的垃圾邮件样本所对应的关键值向量分别进行比较,如果存在比较结果在垃圾邮件判断阈值范围内的情况,则确定所述电子邮件为垃圾邮件,否则将所述电子邮件转交给邮件投递代理系统进行邮件投递;
其中,所述计算电子邮件所对应的关键值向量的操作具体包括:
对所述电子邮件的邮件头和邮件体进行分割;
根据所述电子邮件的邮件头中的各个域计算对应的邮件头关键值HeaderKey;
根据所述电子邮件的邮件体中的各个信息段所对应的多维向量通过递归计算得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey;
根据计算出的邮件头关键值HeaderKey、邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey得到所述电子邮件对应的关键值向量。
6.根据权利要求5所述的方法,其中所述根据电子邮件的邮件体中的各个信息段所对应的多维向量通过递归计算得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey的操作具体包括:
将邮件体表示为呈MIME树形结构所对应的多维向量,所述多维向量与所述邮件体所分成的多个信息段相对应,所述多维向量的维度包括信息段结构关键值MIMEKey、信息段尺寸关键值SizeKey和信息段编码关键值EncodeKey;
根据所述信息段在所述电子邮件的邮件体中的位置以及所述信息段与其他信息段的父子兄弟关系计算对应的信息段结构关键值MIMEKey;
根据所述信息段的数据尺寸以及所述信息段相对于整个邮件的尺寸关系计算对应的信息段尺寸关键值SizeKey;
根据所述信息段采用的编码方式及相关信息计算对应的信息段编码关键值EncodeKey;
通过对所述电子邮件的邮件体分成的各个信息段所对应的所述信息段结构关键值MIMEKey、信息段尺寸关键值SizeKey和信息段编码关键值EncodeKey进行递归线性计算,得出所述电子邮件的邮件体所对应的邮件体结构关键值MIMEKey、邮件体尺寸关键值SizeKey和邮件体编码关键值EncodeKey。
7.根据权利要求5所述的方法,其中,所述根据电子邮件的邮件头中的各个域计算对应的邮件头关键值HeaderKey的操作所应用的计算公式为:
HeaderKey=∑(第i个域出现的序号*log(该域的映射数值)),i=1~N;
其中,N为所述邮件头中所包括的域的数量。
8.根据权利要求6所述的方法,其中,所述根据信息段在所述电子邮件的邮件体中的位置以及所述信息段与其他信息段的父子兄弟关系计算对应的信息段结构关键值MIMEKey的操作所应用的计算公式为:
信息段结构关键值MIMEKey=当前信息段的层数*log(当前信息段的映射数值)+当前信息段的数据尺寸*log(下一信息段的映射数值);
所述根据信息段的数据尺寸以及所述信息段相对于整个邮件的尺寸关系计算对应的信息段尺寸关键值SizeKey的操作所应用的计算公式为:
信息段尺寸关键值SizeKey=((当前信息段解码后数据尺寸+电子邮件总体数据尺寸/2)/电子邮件总体数据尺寸)*log(当前信息段的映射数值);
所述根据信息段采用的编码方式及相关信息计算对应的信息段编码关键值EncodeKey的操作所应用的计算公式为:
信息段编码关键值EncodeKey=a*log(字符集的映射数值)+b*log(当前信息段的加密编码的映射数值)+c*log(MIME结构内定义的标准CONTENT-TYPE的映射数值)+d*log(CONTENT-TYPE标签的长度)+e*log(附件名字符集的映射数值),其中a、b、c、d、e均为预设的系数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110264664.5A CN103001849B (zh) | 2011-09-08 | 2011-09-08 | 反垃圾邮件处理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110264664.5A CN103001849B (zh) | 2011-09-08 | 2011-09-08 | 反垃圾邮件处理系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103001849A CN103001849A (zh) | 2013-03-27 |
CN103001849B true CN103001849B (zh) | 2015-11-25 |
Family
ID=47930005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110264664.5A Active CN103001849B (zh) | 2011-09-08 | 2011-09-08 | 反垃圾邮件处理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103001849B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107819664A (zh) * | 2016-09-12 | 2018-03-20 | 阿里巴巴集团控股有限公司 | 一种垃圾邮件的识别方法、装置及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101282310A (zh) * | 2008-05-23 | 2008-10-08 | 华东师范大学 | 一种反图片垃圾邮件的方法及装置 |
JP4686724B2 (ja) * | 2006-11-28 | 2011-05-25 | 国立大学法人山口大学 | 迷惑メールのフィルタ機能を有する電子メールシステム |
CN102158428A (zh) * | 2011-04-18 | 2011-08-17 | 柳州职业技术学院 | 快速高准确率的垃圾邮件过滤方法 |
-
2011
- 2011-09-08 CN CN201110264664.5A patent/CN103001849B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4686724B2 (ja) * | 2006-11-28 | 2011-05-25 | 国立大学法人山口大学 | 迷惑メールのフィルタ機能を有する電子メールシステム |
CN101282310A (zh) * | 2008-05-23 | 2008-10-08 | 华东师范大学 | 一种反图片垃圾邮件的方法及装置 |
CN102158428A (zh) * | 2011-04-18 | 2011-08-17 | 柳州职业技术学院 | 快速高准确率的垃圾邮件过滤方法 |
Non-Patent Citations (2)
Title |
---|
基于内容与行为特征的反垃圾邮件系统;石义等;《网络安全》;20090430(第4期);第20-21页 * |
基于文本挖掘的垃圾邮件过滤技术研究;许镇;《中国优秀硕士学位论文全文数据库信息科技辑》;20110331(第3期);说明书第9-14页,第22-26页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103001849A (zh) | 2013-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102655482B (zh) | 基于http协议分析的web邮件还原方法 | |
US8959162B2 (en) | Publisher-based message data cashing in a publish-subscription environment | |
CN109558400A (zh) | 数据处理方法、装置、设备和存储介质 | |
CN110598001A (zh) | 联合实体关系抽取方法、装置及存储介质 | |
CN102045268B (zh) | 一种电子邮件数据恢复方法及装置 | |
CN101046858B (zh) | 电子信息比较系统和方法以及反垃圾邮件系统 | |
US9667737B2 (en) | Publisher-assisted, broker-based caching in a publish-subscription environment | |
US20120246219A1 (en) | Shared cache for potentially repetitive message data in a publish-subscription environment | |
WO2011153894A1 (zh) | 识别图片垃圾邮件的方法及系统 | |
CN108197112A (zh) | 一种从新闻中提取事件的方法 | |
CN111666575A (zh) | 基于词元编码的文本无载体信息隐藏方法 | |
CN111814486A (zh) | 一种基于语义分析的企业客户标签生成方法、系统及装置 | |
CN101789105B (zh) | 一种在数据包的级别动态检测邮件附件病毒的方法 | |
CN103001849B (zh) | 反垃圾邮件处理系统及方法 | |
US20120215858A1 (en) | Caching potentially repetitive message data in a publish-subscription environment | |
CN102323934B (zh) | 基于滑动窗口的邮件指纹提取方法及邮件相似判断方法 | |
CN101795273A (zh) | 一种垃圾邮件过滤方法及装置 | |
CN103095885B (zh) | 一种移动终端及其邮箱地址管理方法 | |
JP4686724B2 (ja) | 迷惑メールのフィルタ機能を有する電子メールシステム | |
CN107066450B (zh) | 一种基于学习的即时通信会话切分方法 | |
CN113239687B (zh) | 一种数据处理方法和装置 | |
CN107391695A (zh) | 一种基于大数据的信息提取方法 | |
CN114301719A (zh) | 一种基于变分自编码器的恶意更新检测方法及模型 | |
CN106302491A (zh) | 一种基于Linux的邮件监控方法 | |
CN115438629A (zh) | 数据处理方法、装置、存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |