(计算机应用技术专业论文)基于贝叶斯方法的中文垃圾邮件过滤技术研究.pdf_第1页
(计算机应用技术专业论文)基于贝叶斯方法的中文垃圾邮件过滤技术研究.pdf_第2页
(计算机应用技术专业论文)基于贝叶斯方法的中文垃圾邮件过滤技术研究.pdf_第3页
(计算机应用技术专业论文)基于贝叶斯方法的中文垃圾邮件过滤技术研究.pdf_第4页
(计算机应用技术专业论文)基于贝叶斯方法的中文垃圾邮件过滤技术研究.pdf_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

摘要 摘要 邮件在日常生活中被广泛使用,而垃圾邮件的传播大大影响了人们的正常生 活,浪费大量的网络资源,造成大量财力人力的浪费。如何控制垃圾邮件的传播 是各国正在研究的课题之一。如今,中文垃圾邮件的数量大大增加,在前人研究 的基础上,利用前人的研究成果,对中文垃圾邮件的过滤技术进行深入研究,对 于控制中文垃圾邮件的传播以及占领该领域的市场有很大的作用。 目前实际应用的主要过滤方法是基于关键字的简单规则的过滤,包括黑白名 单、邮件头分析等。这些方法具有很大的局限性,过滤效果不是很好。 为了能更好的进行邮件过滤,文本分类和信息过滤理论被应用到邮件过滤上 来,提出了许多的基于内容的邮件过滤方法。 另外,针对中文垃圾邮件独有的特点,需要把国外现有的技术进行改进才能 够应用到实际中。 本文首先分析了垃圾邮件的现状,介绍垃圾邮件的定义及解决垃圾邮件的 两种途径:然后叙述了邮件系统的相关理论,包括邮件的传输过程,使用的相关 传输协议,邮件的格式信息,以及在邮件传输过程中的不同阶段可以采用的过滤 方法:接着分析了目前常用的简单过滤方法,和文本分类方法的邮件过滤方法, 并详细介绍了贝叶斯方法的相关理论。在分析中文垃圾邮件的特点之后,在 c c e r t 提供的邮件样本的基础上,试验了朴素贝叶斯方法。实验中,首先通过试 验确定一些参数,并总结这些参数对于实验结果的影响规律。在确定参数之后, 在不同的样本规模下实验朴素贝叶斯方法的过滤效果。最后对传统的方案进行了 两种改进方法,并进行试验。最后提出了在w i n d o w s 下利用s p i 技术构建客户端 邮件过滤技术的方案。 关键字:贝叶斯方法邮件过滤s p i a b s h a c t a b s t r a c t e m a i li sb e i n gw i d e l yu s e di no u fe v e r yw o r k h o w e v m es p r e a d i n gs p 锄 b a d l ya f f b c t sp e o p l e sn o m a lw o r k ,m a l 【i n gal o to fw a s t eo fn e 柳o r kr e s o u r c ea n d m o n 哆m a n ye x p e n sa r ed o i n gr c s e 锄ho nt h i sp m b l 锄i nc h i n a ,“so u rd u t y 锄d o p p o r n l l l i t yt of i l t e rc h i n e s cs p a i l l o 埘e i l t l y ,s o m es i m p l en 1 1 e sb a s eo nk e yw o r d sa r eu s e dt o 右l t e rs p a 锄, i n c l u d i n gb l a c k 锄dw h i t c “瓯m a i lh e a d e r 锄a l y z e ,e t c 1 1 h e s em e t i l o d sa f ep r a c t i c a l b u to f l o we 伍c i e i l c y t of i l t c rs p 锄m o r ee 仿c 渤t l y t 1 1 e o r i e so ft e x tc l 鹊s i 聊n g 锄di n f o 咖a t i o n 矗l t 面n ga r ei n h 伽u c et om a i lf i l t 谢n g f u n h 咖o r c ,c h i n c s em a i lh 勰i t so w nf h t u r 铭d i 行b 托n t 丘o mo t h e f1 a n g u a g e w e 啪n o t d i r e c 硅yu s eat h e o r yb 船eo no t h c rl a n g u a g eo na l i n e s e t h i s p a p 盯矗t s td i s c u s s 豁t 1 1 ec i l n 蜘ts i t u a t i o n o f s p 锄,t h e d e 6 n i t i 0 f as p a m 锄d t l l et w oc o l n m o nw a y st o l v et l i es p 帅p r o b l 锄,t h e l li n 打o d u c e st h eb a s i ct l l e 0 甜e so f m a i ls y s t c i t l ,i n c l u d i n gt h ew a yam a i lt m n s p o n ,t l l ep m t o c o l sl i s e di l lm a i l 仃锄s p o r t a i ,t h em e t l l o do fc o d i n g 锄dd e c o d i n gam a i l ,a i i da t1 硒t ,h o wt of i l t e r s p 锄i nt l l et l l r e es t a g e so f t h et r a n s p o n a t i o n as 甜e so f e x p 舐m 锄l 协w e r et a k e i lo n t h em a i lr e s o u r c ep r o v i d e db yc c e r t 乒o u p ,u s i n gn a v eb a y e s i a r im e t h o d t h e r e s u l t ss h o w o dt l l a tm i st e c l l i l o l o g yw 嬲g o o dt of i l t e rc h i n e s es p 锄,a n dh a ds p a c e t oi m p r o v e f i n a l l y ,am u as p 锄f i i t 硎n gs y s t c i i lo nw i n d o w si sd e s i 舯e da tm e e n d k e y w o r d s :b a y 商a j lm e t h o d ,s p 锄f i l t n gs p l h 学位论文版权使用授权书 本人完全了解北京机械工业学院关于收集、保存、使用学位论文 的规定,同意如下各项内容:按照学校要求提交学位论文的印刷本和 电子版本;学校有权保存学位论文的印刷本和电子版,并采用影印、 缩印、扫描、数字化或其它手段保存论文;学校有权提供目录检索以 及提供本学位论文全文或者部分的阅览服务;学校有权按有关规定向 国家有关部门或者机构送交论文的复印件和电子版;在不以赢利为目 的的前提下,学校可以适当复制论文的部分或全部内容用于学术活 动。 学位论文作者签名:彩仫税1 多。刁年歹月眵日 ( 注:非保密论文无需签字) 经指导教师同意,本学位论文属于保密,在年解密后适用 本授权书。 指导教师签名: 年月日 学位论文作者签名:张菩乖玎 夕一7 年多月j 多日 硕士学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导f ,进行 研究工作所取得的成果。除文中已经注明引用的内容外,本学位论文 的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的 作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集 体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任 由本人承担。 签名: 。| 磁老袱 年歹月l 多日 第一章垃圾邮件现状 第一章垃圾邮件现状 作为互联网的第一大应用,方便快捷的电子邮件一直受到广大网民的青睐。 但是,近些年来,垃圾邮件问题日益严重。2 0 0 4 年7 月,中国互联网络信息中 心( c n n i c ) 发布的第十四次中国互联网发展状况统计报告显示,中国网民 平均每周收到电子邮件数( 不包括垃圾邮件) 5 2 封,而收到垃圾邮件数为9 3 , 垃圾邮件数量是正常邮件数量的将近2 倍。垃圾邮件不仅耗费网络带宽和计算机 时空开销,而且对用户的正常工作造成严重了的干扰。 , 迄今为止,垃圾邮件( s p 锄、j u n km a i1 ) 在国际上没有统一的定义。在中 国互联网协会反垃圾邮件规范中垃圾邮件被界定为: 1 ) 收件人事先没有提出要求或者不同意接收的广告、电子刊物以及各种形 式的宣传邮件。 , 7 2 ) 收件人无法拒收的电子邮件。 3 ) 隐藏发件人身份、地址、标题等信息的电子邮件。 4 ) 含有虚假的信息源、发件人、路由等信息的电子邮件。按照上述界定, 上面四类邮件都属于垃圾邮件范畴。相反,我们可以称收到的其他邮件为“合法 邮件”。对大多数用户,收到的垃圾邮件大部分都是没有主动订阅的广告、电予 期刊等宣传品,其基本特征是“不请自来”、带有商业目的( u n s o l i c i t e d c o 咖e r c i a le m a 订) 或者政治目的。实际上,垃圾邮件的判定会因人而异,不 同的用户对同一邮件的判定结果可能存在差异。 要解决垃圾邮件问题,必须综合法律、技术等多种手段。反垃圾邮件技术上 可以分成两类:“根源阻断”和“存在发现”。 “根源阻断”是指通过防止垃圾邮件的产生来减少垃圾邮件。据报道,比尔 盖茨曾提出通过对发送邮件收费来减少垃圾邮件。另一种称为z o i l l a i l 的技术试 图通过给每个用户分配密码锁的方法来保护邮件接受者的安全。这些方法目前还 没得走向实用,即使走向实用也需要对全球的邮件系统进行全面改造。所以,对 垃圾邮件进行阻断还有很长的路要走。 目前,主流的反垃圾邮件技术是“存在发现”,即对已经产生的垃圾邮件进 行过滤。从内容上看,垃圾邮件过滤可以看成一个2 类问题:垃圾邮件类和合法 邮件类。因此,各种分类方法可以用于垃圾邮件的过滤。然而,垃圾邮件过滤是 一个特定领域的分类问题,它至少在以下几个方面与一般的分类存在不同: 1 ) 通常认为,用户宁愿接收更多的垃圾邮件,也不能接受将合法邮件错判 成垃圾邮件。因此,与通常的分类方法相比,垃圾邮件过滤更重视正确率; 2 ) 垃圾邮件过滤实现的环境通常都有较高的性能要求,因此,要求垃圾邮 件过滤的方法不仅要重视实现的效果,也要重视实现的效率; 3 ) 垃圾邮件过滤中的类别有别于通常分类中的类别,一方面,垃圾邮件、 合法邮件在语义上并不象通常分类中的类别( 如体育、军事等等) 能够被人理解; 另一方面垃圾邮件的类别定义可能会因人而异,也可能会随着时间而改变。 本论文的结构如下: 第一章垃圾邮件现状,介绍垃圾邮件的定义及解决垃圾邮件的两种途径。 第二章邮件系统理论,介绍邮件的相关理论。包括邮件的传输过程,使用 的相关传输协议,邮件的格式信息,以及在邮件传输过程中的不同阶段可以采用 第章垃圾邮件现状 的过滤方法。 第三章常用邮件过滤方法,首先介绍目前常用的简单过滤方法,包括黑白 名单等,并提出这些方法的优缺点。接着介绍采用文本分类方法的邮件过滤方法, 并详细介绍了贝叶斯方法的相关理论。 第四章基于朴素贝时斯方法的中文垃圾邮件过滤实验,在第三章的基础上, 进一步分析影响贝叶斯方法的因素,然后比较了几个现有的贝叶斯过滤的案例, 最后在c c e r t 提供的邮件语料的基础上进行了贝叶斯方法的实验。首先通过试验 确定一些参数,并总结这些参数对于实验结果的影响规律。在确定参数之后,在 不同的样本规模下实验朴素贝叶斯方法的过滤效果。最后对传统的方案进行了两 种改进方法,并进行试验,其中一种方法得到了验证,而另一种则还需要迸一步 研究。在本章的最后,还提出了一些未经试验的改进意见。 第五章基于s p i 的客户端邮件过滤系统设计,首先分析了目前主流的桌面 操作系统w i n d o w s 下网络数据包的过滤技术,结合前几章的理论和试验结果,利 用s p i 技术设计了一个客户端邮件过滤系统。 最后是总结和参考文献以及致谢。 2 第二章邮件系统理论 第二章邮件系统理论 2 1 电子邮件工作原理 电子邮件系统由四个主要部分组成:信件、m t a 、m d a 和m u a ,信件是 信件的数据内容,m 1 a 用于路由信件,m d a 用于投递信件,m u a 提供用户 创建和处理邮件的界面。邮件服务器是由m t a 和m d a 架设而成,是电子邮 件系统的基础与根本。 2 1 1 电子邮件系统的运行机制 2 1 1 1 电子邮件系统的传输流程 电子邮件的传输流程如下图所示。当终端用户通过用户代理( m u a ) 发送一 封电子邮件时,首先试图去寻找一个信件传输代理( m t a ) ,把邮件提交给它, 信件传输代理得到了邮件后将它保存在自身的缓冲队列中,然后根据邮件的目标 地址,通过对d n s 的查询,搜索到对应这个目标地址的邮件传输代理服务器的 i p 地址,并通过网络将邮件传送给目标邮件传输代理服务器,目标邮件传输代 理服务器接收到邮件之后,将其投送给本地的邮件投递代理( m d a ) 服务器, 由本地邮件投递代理服务器将邮件分发至最终用户的邮箱,最后,电子邮件的接 收者就可以通过用户代理( m u a ) 查看自己的电子邮箱。 接收方 在这个过程中,m 1 a 、m d a 、m u a 都有自己的功能职责,完成各自的特定 任务,下面将分别对m 1 a 、m d a 、m u a 这三个代理进行研究。 3 第二章邮件系统理论 2 1 1 2 电子邮件系统代理 邮件传送代理m 1 a ( m a i l1 船n s p o 吨a g 锄t ) m 1 a 从各种来源接收邮件。在收到每个邮件时,m t a 就确定这个邮件要路 由到哪里和如何路由,如果必要的话,它重新写地址、然后把邮件交给m d a 投 递。控制i n t e m c t 邮件路由的主要机制是d n s 域名服务协议。d n s 提供一个 分布式的数据库,把域名映射到几个类型的信息,包括邮件路由指令。大多数的 m 1 a 还提供它们自己的机制直接控制路由,作为d n s 路由的补充。 邮件用户代理m u a ( m a iu s 矾g e n t ) m t a 和m d a 负责信件的路由和传送,而邮件用户代理( m u a ) 负责为用 户提供管理邮件的界面。这个管理通常包括查看信件、管理邮件夹、写和发送新 信件,以及回复信件和把现有的信件发送给其它用户。它通常是与信件直接打交 道的唯一程序。 2 1 2 电子邮件系统涉及的主要协议 与其它h n 锄c t 应用和协议一样,通过标准定义邮件如何操作,这些标准在 一组r f c 中定义,它们定义使电子邮件经过i n t e n l e t 所必须的协议和格式。 2 1 2 1 简单邮件传输协议( s m t p ) 简单邮件传输协议( s i m p l em a i lt r 锄s f 打p r o t o c o l ,s m t p ) 是互联网上m t a 服务器间传递邮件最基本的协议,互联网上的任何一台主机都可以通过s m t p 协议向其它主机发送邮件。s m t p 在互联网标准i 江c 8 2 1 中定义,于1 9 8 2 年8 月2 1 日第一次公布,s m t p 在2 5 号端口建立t c p i p 连接,使用简单的 a s c i i 码文本命令,返回3 位数据的返回码和一些a s c i i 码文本信息。 简单邮件传输协议( s m t p ) 的目标是可靠高效地传送邮件,它独立于传送 子系统而且仅要求一条可以保证传送数据单元顺序的通道。s m t p 的一个重要特 点是它能够在传送中接力传送邮件,传送服务提供了进程问通信环境( i p c e ) , 此环境可以包括一个网络,几个网络或一个网络的子网。进程可能直接和其它进 程通过己知的i p c e 通信,邮件可以通过连接在不同i p c e 上的进程跨网络进 行邮件传送。更特别的是,邮件可以通过不同网络上的主机接力式传送。 r f c 8 2 l 规范了s m t p 协议,指定了在一个简单t c p 连接上,两个m t a 如何进行通信。s m t p 工作在两种情况下:一是电子邮件从客户机传输到服务器: 二是从某一个服务器传输到另一个服务器。s m t p 是个请求响应协议,命令和 响应都是基于a s c 文本,并以回车( c r ) 和换行( l f ) 符结束。 命令是从客户机发送到服务器,命令的格式是由一个关键词后面跟着零个或 多个变量组成。s m t p 定义了1 4 个命令,它们分别是h e l o 、m a l l 、r c p t 、 d 朋r a 、q u l t 、r s e t 、v r f y 、n 0 0 p 、t u r n 、e x p n 、h e l p 、s e n d 、s m o l 、 s m a l 。在这些命令中,前8 个命令是必需的。( 其中v r f y 是验证地址,不 要求一定启用) 。从客户机发送的每个命令行由一个4 字符命令后跟一组可选的 参数组成。随s m t p 核心命令还描述附加的一个命令e h l o ,它是s m t p 服 务扩展使用的h e l o 的变种。 2 l2 2 扩展的简单邮件传输协议e s m t p ( e x t e n d e ds i m p l em a i l t r a n s f e r p r o t o c 0 1 ) 随着s m t p 的流行,最初的协议中也暴露了一些缺点,对此开发者们并没 有创建一个新的协议,而是决定采用新的命令来扩充基本的s m t p 命令。扩充 后的协议被命名为扩展的简单邮件传输协议( e x t e i l d e ds i m p l em a i l 4 第二章邮件系统理论 t r a r i s 缅p r o t o c o l ,e s m t p ) 。e s m t p 所实现的一个很重要的安全特性是提供 m t a 主机登录到接收e s m t p 端主机的能力。在e s m ”协议中引入了 a u t h 命令,客户机能使用a u t h 命令向服务器主机发送用户名和密码来验证 自己。这种验证方法有利于确定远程的身份。 2 1 2 3 邮局协议p o p ( p o s t0 f f i c ep r o t o c 0 1 ) 最简单的m u a 协议是邮局协议( p o s t o 伍c c p m t o c o l ,p o p ) ,第一个关于p o p 的r f c 文档是1 9 8 4 年发表的r f c 9 1 8 ( 邮局协议) ,描述了一个基本的、试验 性的p o p 实现。后来该协议几经修改,最后于1 9 9 6 年发表的r f c 一1 9 3 9 p o s t o 街c e p r o t o c o l v j r s i o n3 成为当前的p o p 标准,通常称为p o p 3 。工作站上 的m u a 程序使用p o p 3 协议访问并读取用户邮箱中的邮件。使用p o p 3 协议 时,用户的所有邮件都从用户邮箱中读取并存储到本地计算机。一般情况下,服 务器上邮箱中的邮件在读取后被删除,从而释放邮件服务器上的空闻。 2 1 2 4 交互式邮件访问协议i m a p ( i n t e r a c t i v em a i 1a c c e s sp r o t o c 0 1 ) 尽管p o p 3 实现起来非常简便而且也被邮件客户端软件所广泛支持,但它也 存在缺陷,通常邮件被一股脑地从邮件服务器端下载,然后在服务器端就被删除。 这就会影响一些经常使用不同计算机的用户,他们邮箱中的邮件被分割成几个部 分,分别位于不同地方的几台不同的计算机上。为解决这一问题,华盛顿大学开 发了交互式邮件访问协议( i n t e r a c t i v em a i la c c e s sp r o t o c 0 1 ,i m p ) ,它允 许用户从多个地点访问邮箱而不会出现邮件被分割在不同计算机上的情况。i m a p 最新的版本号是4 ,并经过了1 次修订( v e r s i o n4r e v i s i o n l ) ,所以简称 i 姒p 4 r e v l ,该协议定义在r f c 2 0 6 0 中。同p o p 3 协议类似,i 姒p 协议也采用 客户机服务器命令模式。 2 1 3 关于信件格式的协议 电子邮件的主要部分是信件,电子邮件的每个方面几乎都是围绕它发展的。 电子邮件的核心结构在两个主要r f c 中定义。第一个r f c 是r f c 8 2 2 ,是 1 9 8 2 年发表的,它是i n t e r n e t 信件的当前标准。r f c 8 2 2 定义信件在从主机传 送到主机时,需要如何格式化,即它指定了在两个m t a 之间用r f c8 2 l 发送的 电子邮件报文的格式。它的主要用途是为信件提供规范化的格式,使得不同类型 的网络可以相互传送电子邮件。1 9 8 9 年发表的r f c l l 2 3 ( i n t e r n e t 主机的要求 应用和支持) 有对许多i n t e r n e t 标准的重要更新。 在最高层,信件非常简单,它含有一系列的文本行,每一行以回车( c r ) 符后 跟换行( l f ) 符结束。当c r 和l f 这样组合使用时,形成c r l f ( 回车换行) 。 每一行的内容由u s a s c i i 字符组成。 在信件的开始,是一组叫做信头的行,含有发信人、收信人、发信时间和主 题等的信息。信头有定义的格式,允许对信头数据进行程序分析。这使m t a 、m d a 和m u a 能够分析和处理信件中的信息。信头中的行分别组成一些字段,这些字 段为用户和程序提供关于信件的信息,每个字段由一行或多行文字组成。 在信头之后是一个空行,用于分隔信头与信件的其余部分。在空行后是一组 叫做信件体的行,它是信件的正文与信件的收信人有关的实际信息。信件体 含有发送给收件人的实际信息。纯粹的r f c 8 2 2 信件体只是一系列的文本行,它 们没有附加的结构或含义。 2 1 4 信体内容解码 邮件通过s m t p 在互联网上进行传送的,s m t p 中唯一用来传输数据的命令 是d a t a 命令,而d a t a 命令只能向远程服务器传输a s c i i 码文本信息。因此, 第二章邮件系统理论 在邮件中的非a s c i i 码信息,如中文文本、图片和程序等,都需要进行专门编 码后才能传递,相应收到邮件后,还要做相应的解码工作。 在m 1 m e 中,邮件信体的每个部分都有一个字段 c o n t e n t t r a n s f e r - e n c o d i n g ,用于说明嵌在邮件中的二进制数据是怎样被编码 的,该字段取值有7 种情况:7 _ b i t ( 默认编码方式) 、8 _ b i t 、b i n a r y 、 q u o t e d p r i n t a b l e 、b a s e 6 4 、 i e t f t o k e n 彳铂x t o k e n 。 7 - b i t 和8 - b i t 分别表示标准的7 位和8 位a s c i i 文本,不用解码。 b i n a r y 、i e t 卜t o k e n 和x t o k e n 这三种情况一般不会使用。 q u o t e d p r i n t a b l e 方式中,被编码的数码以8 位的字节为单位,每个字节 可以用等号“= ”与相应的十六进制形式来表示,如值1 2 被统编码为“:o c ”, 对可打印字符也可用其对应的a s c i i 字符来表示,编码后的数据即为7 b i t 的 a s c i i 码。 b a s e 6 4 是最常用的二迸制编码方式,该方式将字符流顺序放入一个2 4 位 的缓冲区,缺字符的地方补零。然后将缓冲区截断成为4 个部分,高位在先, 每个部分6 位( 6 位二进制数可表示o 6 3 ) ,再分别用下面的6 4 个字符重新表 不 : “a b c d e f g h i j k l m n o p q r s t u v w x y z a b c d e f g h ij k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 + ” 如果被编码数据长度不是3 的整数倍,则编码的最后一组不是完整的3 字节 组,可能剩余1 或2 个字节。当剩余1 个字节时,追加两个o 值来产生3 字节 组,生成的4 个编码数据中只有前两个带有剩余的那个字节的位,所以编码后的 后两个字节设置为“= ”字符;同样当剩余2 个字节时,则编码后的最后一个字 节设置为“= ”字符。编码后的行一般为7 6 个字符,超过的需要插入回车换行符。 2 2 邮件代理中的过滤 。 邮件过滤按照邮件系统的角色结构层次分为三类:m t a ( 邮件传输代理) 过 滤、m d a ( 邮件递交代理) 过滤、m u a ( 邮件用户代理) 过滤。每一层都可以添 加过滤器利用该过滤器类型的长处来过滤垃圾邮件。例如,m t a 过滤器适合于基 于s m t p 信封信息的过滤;另一个例子,因为p o p 通常不支持访问多个邮件文 件夹。仅处理p o p 对信箱的m u a 访问的站点的m d a 过滤器不能再次归档。在 某些层次,一些类型的过滤器有性能问题。例如,在某些情况下,信件内容的过 滤会严重影响m t a 过滤器的性能,所以常常在m d a 或删a 中过滤。 2 2 1m t a 过滤 m t a 过滤是指m t a 在会话过程中对会话的数据进行检查,对于符合过滤条 件的邮件进行过滤处理。大多数m t a 都提供某种过滤,因为它们在电子邮件管 理的前端附近。m t a 过滤器通常用于控制到达的邮件。 m t a 首先过滤的对象之一是到达的连接,通过检查到达连接的地址,并决定 是否接受它。使用m t a 过滤的最简单的方法之一是对s m t p 对话中提供的信息 进行检查,这包括初始协议问候和邮件事务。 2 2 2 m d a 过滤 m d a 过滤是指m d a 在从m t a 中接收到信件,在本地或远程进行递交时进行 检查,对于符合过滤条件的邮件进行过滤处理。 很多的m d a 都支持在这个过程进行过滤,如p r o c m a 订、m a i l d r o p 和 c y r u s i m a p 等,甚至它们本身就是作为过滤器使用的。这些过滤器使用过滤语 言( 如s i e v e ,它是一个标准化的邮件过滤语占,现在已成为i e t f 标准) 来制 订过滤规则,因此配置比较灵活、功能强大。但是由于是在邮件递交阶段进行过 6 第二章邮件系统理论 滤,同m t a 的邮件发送邮件数据后的检查一样,并不能节省下被垃圾邮件占用 的带宽和处理能力,只是可以让用户不再收到这些己被过滤的垃圾邮件。 m t a 和m d a 过滤都是邮件服务器端的过滤,而m u a 过滤是邮件用户的客户 端的过滤。多数流行的邮件客户端,如0 u t l o o k 、o l j t l o o ke x p r e s s 、 n e t s c a d e m a i l 、f o 姗a i l 等都支持删 过滤。即使信件的内容通过个m t a , 但大多数的m t a 过滤器也不检查信件的内容,这类过滤( 多数为垃圾邮件的过 滤) 通常由m d a 做。当m t a 把一个信件提交给m d a 进行最后的过滤时,m d a 运 用过滤器规则进行其它的处理,一些最复杂的过滤是使用m d a 过滤器做的。与 m t a 过滤器相比,m d a 过滤器的缺点是,它们不能直接访问s m t p 对话。一旦一 个m d a 开始处理一个信件,该信件就已经被传输到本地m t a 。 尽管有这个限制,m d a 还是最广泛使用的过滤器类型之一。事实上,m d a 常 常是本地过滤器的最优地方,除了它们的灵活性外,之所以流行,一部分原因是 由于电子邮件在i n t e r n e t 上的历史造成的。在出现个人计算机之前。m u a 通常 位于执行电子邮件最终投递的机器上,它们不提供自己的过滤器,而是依赖于 m d a 过滤器。缺少内置过滤是允许的,因为用户能够访问它们的m d a 过滤配置 文件,这也允许它们切换舢a ,而不影响它们的过滤器配置。这是m d a 过滤器 用于某些复杂过滤的主要原因,这也是m d a 过滤为什么仍被广泛使用的原因。 本地邮件投递通常要求把到达信件追加到用户的i n b o x 邮件箱中。m d a 读 取要被投递的信件并分析内容来确定采取什么动作。这些规则通常定义在一个配 置文件中,m d a 过滤器每次执行时读取这个文件,所以过滤器规则修改起来相当 简单。 m d a 过滤器的过滤条件是基于字段内容的,它根据字段内容标识信件类型。 例如、邮件列表可能包括所有输出信件中的某个信头字段。检测该字段的一个过 滤器规则可能包括一个动作,把信件写到专用于该邮件列表的信件的文件夹。但 字段内容不是可用的唯一条件,过滤器也可能检测信件体中的某些内容,以及特 定的信件字段。 2 2 3m u a 过滤 m d a 过滤器不能满足最终用户的需求,它们主要位于电子邮件服务器上,但 最终用户通常希望享有从它们的主要电子邮件界面( 即m u a ) 管理个人过滤器规 则的方便性。 m u a 过滤器为大多数个人计算机用户所熟悉,但这些用户不能经常访问电子 邮件服务器,所以他们的过滤受m u a 功能的限制。 尽管删a 过滤方便了大多数用户,但在功能和方便性之间有一个权衡。作 为一般规则,m d a 过滤器功能更强,大多数的m u a 过滤器以功能为代价提供方 便性,例如,许多删a 过滤器只能过滤少量的字段。 m u a 过滤的另一个缺点是动作在投递邮件的最后一步执行( 即在用户试图访 问它的信箱时) ,这意味着要求更大的磁盘空间,和更大的信件处理开销。 m u a 过滤器是一个用户控制过滤的方便方法,它不影响远程服务器上的m d a 过滤器。 7 第三章邮件过滤技术 第三章邮件过滤技术 3 1 一般的过滤技术 从垃圾邮件过滤技术上看,目前常用的有白名单和黑名单技术、规则过滤等。 这些技术一般都同时适用于服务器端和客户端的邮件过滤。 3 1 1 白名单和黑名单 白名单中的发件人发送的任何邮件都认为是合法邮件,黑名单中的发件人发 送的任何邮件都认为是垃圾邮件。这是目前电子邮件过滤中广泛使用的技术。通 常做法是收集一个黑、白名单列表,可以是电子邮件地址,也可以是邮件服务器 的域名、i p 地址,收到邮件时对发件人进行实时检查。这种名单一般由比较有 信誉的组织提供,如中国互联网协会( h t t p :w w w i s c o r g c n ) 定期在主页上 公开垃圾邮件服务器i p 地址名单。个人也可以根据需求定义和维护自己的黑、 白名单。 3 1 2 设定过滤规则 设置一些规则,只要符合这些规则的一条或几条,就认为是垃圾邮件。这些 规则通常有: 信头分析 即分析邮件头部信息检查发件人的地址是否有伪造。通常,一封邮件从发件 人到收件人,中间要经过好几台服务器。每经过一台服务器,就会在相应的头部 加入一条r e c e i v e d 的信息,按照经过的服务器顺序由后向前添加。邮件头部中 r e c e i v e d 信息是由服务器自动加上去的,通过比较r e c e i v e d 域( 特别是第一 次经过的邮件服务器的r e c e i v e d 域) 可以识别出伪造的发件人地址。 群发过滤 如果一个邮件服务器在一段较短的时间内收到来自同一个地址的大量邮件, 就认为这个地址有可能在发送垃圾邮件。另外,如果一个邮件服务器在一段较短 的时间内收到从不同地址发送过来的大量内容基本相同的邮件,就认为这封邮件 有可能是垃圾邮件。 关键词精确匹配 可以定义一些反映垃圾邮件特征的关键词或短语,如“f r e e ”、“免费”、“抢 注”、“热卖”、“实惠”、“特惠”、“特卖”、“赠送”、“保证有你想要的”等,当在 邮件标题或者正文中匹配到若干条关键词或者短语,就判定为垃圾邮件。 邮件内容中的其他特征 例如,邮件中文字比较少,却有大量的超级链接;邮件正文中包含有大量的 随机字符等。还有些垃圾邮件在h t m l 格式正文中将大量的无敏感内容的文字设 置为很小而几乎看不见的字体,而将较少的敏感内容设为正常字体,这样既可以 保证邮件的视觉效果,又因为充斥着大量的正常文字,欺骗邮件过滤工具的检查。 3 1 3 反向域名验证技术 由于垃圾邮件一般都是使用的伪造的发送者地址,用真实地址的是极少数, 所以如果能智能地识别出哪些是伪造的邮件,就能阻挡一大批垃圾邮件,反向域 名验证技术正是基于这样的出发点而产生的。 反向域名验证是对收到邮件的来源i p 地址采用反向d n s 查找,如果反向d n s 查找提供的域与邮件上的来源i p 地址相符合,该邮件被接受,如果不符合,该 邮件被拒绝。该技术对s p a m m e :采用虚假的域地址或回复地址能进行有效阻断。 第三章邮件过滤技术 在反垃圾国际标准草案r f c 2 5 0 5 中,作者试图通过域名反向解析来确认发送 邮件服务器的合法性。但是互联网上有大量的d n s 服务器未配置域名反向解析, 这样就会导致大量的合法的邮件服务器被认为是非法的。所以该方案一直未能广 泛推广。 以上这些方法的特点是操作速度快,实现起来比较容易,但是有一定的局限 性,这是因为,通常,并不仅仅是某几个固定的发件人在发送垃圾邮件,发送者 在不断地变化,黑、白名单方法有局限性,而且有延迟现象。规则方法的不足之 处在于规则都是人工指定的,需要人们不断去发现和总结、更新,人为因素比较 多,一些没有经验的用户可能很难提供有效的规则。而且,手工制定规则比较耗 时,准确率也受到了限制。随着时问的变化,垃圾邮件的特征也在变化,让用户 维护这些规则也不是一件易事。 3 2 基于内容的过滤技术 近年来,基于内容的垃圾邮件过滤技术得到一定发展。它是将垃圾邮件过滤 与文本分类和信息过滤联系起来了,将文本分类和信息过滤中常用的方法引入垃 圾邮件过滤任务。这种内容过滤技术提供了更为准确的邮件过滤方法,可以自动 获得垃圾邮件的特征,并及时捕捉到垃圾邮件特征的变化,弥补了手工制定规则 的不足,提高了准确率。 目前基于内容垃圾邮件判别的方法可以大体分成基于规则的方法和基于概 率统计的方法。前者常常得出人们可以理解的显式规则;后者往往通过某种计算 表达式推出结果。本质上,概率统计方法可以看成规螅0 方法的一种推广,只不过 概率统计方法中得到的规则是一种不被人轻易理解的“隐式规则”。 不管是基于规则的方法还是基于概率统计的方法,在使用时都经历从训练到 过滤的过程。通过已有的训练集合( 正例+ 反例) 训练出相应的垃圾邮件规则( 包括 显式规则或隐式规则) ,然后将规则应用到新的邮件判定中去。在实际系统中可 能还会加入人机交互过程,通过用户对判定结果的认可与否对已有的垃圾邮件规 则进行更新。 3 2 1 基于规则的方法 基于规则的方法通过训练得到显式规则( 通常用产生式表示,如:i f 邮件 包含a d v e r t i s e m e n t 且邮件包含! ! ! ! t h e n 该邮件为垃圾邮件) 。规则方法学 习的过程实际上是归纳总结的过程,通过考查一个个的训练样本,归纳总结出其 中规律性的东西来形成规则。规则方法的主要优点是可以生成人类理解的规则。 缺点是在规律性不明显的应用领域效果较差。 。 3 2 1 1 决策树方法 决策树( d e c i s i o nt r e e ) 是著名的规则方法之一。通过按照某种属性的顺序 自顶向下地生成一棵树,树的每个节点是属性名,而每条边是属性值。从树根到 树叶的一条路径便对应一条规则。基于信息增益进行属性顺序选择是决策树中常 用的方法之一。著名的决策树算法有i d 3 、c 4 5 等。 c a r r e r a s 使用决策树来过滤垃圾邮件,得到的垃圾邮件过滤的j 下确率和召回 率都在8 8 左右。但从目前所看到的文章看,决策树方法本身并不常常直接用于 垃圾邮件过滤,而是作为b o o s t i n g 方法的弱学习器来使用。 3 2 1 2 b o o s t i n g 方法 严格地说,b o o s t i n g 方法不是一种特定的学习方法,而是一种在已有学习方 法基础上的进行“投票”的技术。它通过对已有的分类器进行加权求和得到最终 的分类器( 每个分类器称为弱规则或者弱假设,加权求和以后的分类器称为强规 9 第三章邮件过滤技术 则) 。由于b 0 0 s t i n g 的弱规则常常采用基于规则的方法,因此我们将它归于此类。 b o o s t i n g 通过关注弱规则的错误而逐渐组合成强规则,它是一种错误驱动的方 法。a d a b o o s t 是b 0 0 s t i n g 方法中最常用的一种。c a r r e r a s 和n i c h 0 1 a s 将 a d a b o o s t 引入到垃圾邮件过滤,获得了很高的性能。d e s o u z a 使用了决策树方法 作为弱学习器在l i n g s p a m 语料上进行垃圾邮件过滤的两组实验,一组是采用一 层的决策树进行多遍b o o s t i n g 循环,另一组是采用完全的决策树进行少量 b o o s t i n g 循环。他的实验证明,两组情况下都能取得很高的精确率( 9 8 以上) 。 b o o s t i n g 方法的最主要缺点是训练速度较慢。 3 2 1 3r o u 曲s e t 方法 r o u g hs e t 理论是由p a w l a k 于上世纪8 0 年代提出的一种研究不完整、不确 定知识和数据的表达、学习、归纳的理论方法。r o u 曲s e t 的研究对象是一个多 值属性集合描述的向量集合。它通过集合的等价关系操作来确定属于给定类的最 大对象集合和可能属于给定类的最小对象集合,从而指导分类决策。r o u g hs e t 通常经过属性约简( 消除对决策属性没有影响的属性) 和属性值约简( 消除对决策 属性没有影响的属性值) 来简化分类规则。刘洋等将r o u g hs e t 引入到垃圾邮件 过滤,采用了1 1 种非文本属性( 包括收信人个数、中继个数等等) 来进行邮件分 类( 正常、广告和反动) 。在一个小规模的垃圾邮件样本上实验,可以达到8 0 左 右的正确率。 3 2 2 基于统计的方法 3 2 2 1k n n ( k 一近邻) 方法: k n n 是最常用的基于内容的方法。k n n 没有训练过程,分类时直接将待分类 文本与训练集合中的每个文本进行比较,然后根据前k 篇相似的文本得到新文本 的类别( 最简单

温馨提示

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

评论

0/150

提交评论