垃圾邮件的识别方法及装置与流程

文档序号:11253862阅读:1238来源:国知局
垃圾邮件的识别方法及装置与流程
本发明涉及垃圾邮件识别技术,尤其涉及一种垃圾邮件的识别方法及装置。
背景技术
:随着互联网的广泛普及,邮件已经成为常用的通信工具之一,但用户常会收到各种垃圾邮件,严重影响用户对正常邮件的查收和处理。因此,识别垃圾邮件越来越重要。目前基于概率统计的贝叶斯识别技术为常用的识别垃圾邮件技术,该技术会收集大量的正常邮件样本和垃圾邮件样本,把正常邮件样本和垃圾邮件样本的内容进行分词,统计各个分词在正常邮件样本和垃圾邮件样本的次数。然而,基于概率统计的贝叶斯识别技术对于不适合分词的垃圾信息(如图片等)识别的效果不佳,现亟需一种识别准确率较高的识别垃圾邮件技术。技术实现要素:本发明提供一种垃圾邮件的识别方法及装置,以解决现有的基于概率统计的贝叶斯识别技术识别准确率较低的问题。本发明提供一种垃圾邮件的识别方法,包括:接收邮件并对所述邮件进行解析,以获取所述邮件的ip地址和邮件内容,其中所述邮件内容包括主题、正文和附件;通过预设校验算法,对所述邮件内容进行计算,得到所述邮件的校验码;判断所述邮件的校验码是否存在于垃圾邮件样本中,其中,所述垃圾邮件样本中存储有不同的垃圾邮件对应的校验码;若所述邮件的校验码存在于所述垃圾邮件样本中,则识别所述邮件为垃圾邮件。可选地,若所述邮件的校验码不存在于所述垃圾邮件样本中,所述方法还包括:针对已接收到的邮件的ip值和校验码,判断所述邮件的校验码所对应的ip地址的个数是否大于预设阀值,所述邮件的校验码所对应的ip地址包括与所述邮件的校验码相同的校验码所对应的已接收到的邮件的ip地址和所述邮件的ip地址;若所述个数大于预设阈值,则识别所述邮件为垃圾邮件,并将所述邮件的校验码写入到所述垃圾邮件样本中;若所述个数小于预设阈值,则识别所述邮件为正常邮件。可选地,所述针对已接收到的邮件的校验码和ip值,判断所述邮件的校验码所对应的ip地址的个数是否大于预设阀值,包括:判断临时缓存中是否存储有与所述邮件的校验码相同的校验码,所述临时缓存中存储有所述已接收到的邮件对应的不同的校验码和各所述校验码对应的ip地址集合;若是,则将所述邮件的ip地址写入到与所述邮件的校验码相同的校验码对应的ip地址集合中,并判断所述相同的校验码所对应的ip地址的个数是否大于预设阀值;若否,则将所述邮件的校验码和ip地址写入到所述临时缓存中。可选地,所述方法还包括:获取所述临时缓存中写入校验码的写入时刻距当前时刻的间隔时长;判断所述间隔时长是否大于预设时长;若是,则释放所述临时缓存。可选地,所述预设校验算法包括md5算法或sha1算法。本发明还提供一种垃圾邮件的识别装置,包括:获取模块,用于接收邮件并对所述邮件进行解析,以获取所述邮件的ip地址和邮件内容,其中所述邮件内容包括主题、正文和附件;计算模块,用于通过预设校验算法,对所述邮件内容进行计算,得到所述邮件的校验码;判断模块,用于判断所述邮件的校验码是否存在于垃圾邮件样本中,其中,所述垃圾邮件样本中存储有不同的垃圾邮件对应的校验码。确认模块,用于在所述邮件的校验码存在于所述垃圾邮件样本中时,识别所述邮件为垃圾邮件。可选地,所述判断模块,还用于针对已接收到的邮件的校验码和ip值,判断所述邮件的校验码所对应的ip地址的个数是否大于预设阀值,所述邮件的校验码所对应的ip地址包括与所述邮件的校验码相同的校验码所对应的已接收到的邮件的ip地址和所述邮件的ip地址。所述确认模块,还用于在所述个数大于预设阈值时,识别所述邮件为垃圾邮件,并将所述邮件的校验码写入到所述垃圾邮件样本中;所述确认模块,还用于在所述个数小于预设阈值时,识别所述邮件为正常邮件。可选地,所述判断模块,具体用于判断临时缓存中是否存储有与所述邮件的校验码相同的校验码,所述临时缓存中存储有所述已接收到的邮件对应的不同的校验码和各所述校验码对应的ip地址集合。所述确认模块,具体用于在所述判断模块的判断结果为是时,将所述邮件的ip地址写入到与所述邮件的校验码相同的校验码对应的ip地址集合中,并判断所述相同的校验码所对应的ip地址的个数是否大于预设阀值;在所述判断模块的判断结果为否时,将所述邮件的校验码和ip地址写入到所述临时缓存中。可选地,所述获取模块,还用于获取所述临时缓存中写入校验码的写入时刻距当前时刻的间隔时长;所述判断模块,还具体用于判断所述间隔时长是否大于预设时长。释放模块,具体用于在所述判断模块的判断结果为是时,识别所述邮件为正常邮件,并释放所述临时缓存。可选地,所述预设校验算法包括md5算法或sha1算法。本发明提供的垃圾邮件的识别方法及装置,该方法通过接收邮件并对邮件进行解析,以获取邮件的ip地址和邮件内容,再通过预设校验算法,对邮件内容进行计算,得到邮件的校验码,接着判断邮件的校验码是否存在于垃圾邮件样本中,其中,垃圾邮件样本中存储有不同的垃圾邮件对应的校验码。若邮件的校验码存在于垃圾邮件样本中,则识别邮件为垃圾邮件。本发明提供的方法以及装置以多个ip地址发送相同邮件内容的垃圾邮件为特征,将邮件内容对应的校验码存在垃圾邮件样本中,对接收的邮件进行判断是否为垃圾邮件,解决了现有概率统计的贝叶斯识别技术准确率较低的问题,且过程简单、高效,提升了垃圾邮件的识别率。附图说明图1为本发明提供的垃圾邮件的识别方法的场景示意图;图2为本发明提供的垃圾邮件的识别方法的流程图一;图3为本发明提供的垃圾邮件的识别方法的流程图二;图4为本发明提供的垃圾邮件的识别方法中一种存储方式的流程图;图5为本发明提供的垃圾邮件的识别方法中一种释放方式的流程图;图6为本发明提供的垃圾邮件的识别装置的结构示意图。具体实施方式图1为本发明提供的垃圾邮件的识别方法的场景示意图,如图1所示,邮件是由外域服务器或本域服务器发送的邮件,再由邮件服务器进行接收。通常,发送者在外域服务器或本域服务器上会发送大量的垃圾邮件,若这些垃圾邮件仅仅是通过单个ip地址进行发送,这个ip地址很容易被发现,进而会被拦截。因此,发送者会使用大量的ip地址发送垃圾邮件。本实施例可利用邮件服务器能够接收到由不同ip地址发送的相同内容的大量邮件的特征对这些邮件进行识别,以识别出该邮件是垃圾邮件还是正常邮件。图2为本发明提供的垃圾邮件的识别方法的流程图一,本实施例的执行主体可以为图1所示的邮件服务器,如图2所示,本实施例垃圾邮件的识别方法包括:s201、接收邮件并对邮件进行解析,以获取邮件的ip地址和邮件内容,其中邮件内容包括主题、正文和附件。具体地,由大量的ip地址发送的垃圾邮件的内容是相同的,这样垃圾邮件的主题、正文和附件也就是相同的。对接收到的邮件进行解析,可得到该邮件的各种信息,如邮件头、时间戳、发送者、接收者、邮件内容以及邮件的ip地址。但是邮件头、时间戳、发送者、接收者会对识别该邮件是否为垃圾邮件产生影响,进而做出错误的判断。而邮件内容为邮件的实质性内容,因此,本实施例中解析获取的邮件内容是通过对该邮件的本质内容进行识别。又由于邮件的ip地址为唯一的,且与该邮件内容相同的邮件的个数相对应,进而可结合邮件内容与邮件的ip地址对发送者会利用大量的ip地址发送大量的内容相同的垃圾邮件这个特征进行表征,以完成对垃圾邮件的识别。因此,本实施例中在接收到邮件时,可对该邮件进行解析,以得到该邮件的ip地址和邮件内容。本实施例对邮件的ip地址和邮件内容的具体形式不做限定,只需满足邮件的ip地址和邮件内容能够表征该邮件即可。为了便于对邮件的识别,可将邮件的ip地址和邮件内容解析为计算机二进制机器语言。s202、通过预设校验算法,对邮件内容进行计算,得到邮件的校验码。具体地,在获得邮件内容后,通过预设校验算法计算邮件内容对应的校验码,其中邮件的校验码为唯一的,对应的,邮件内容便可唯一表征该邮件。本实施例中预设校验算法由很多种实现形式,只需满足该预设校验算法计算邮件内容得到的邮件的校验码为唯一的即可。可选地,预设校验算法包括md5算法或sha1算法。具体地,本实施例可采用md5算法对邮件内容计算得到md5码。由于md5码有128位那么长,因此,任意邮件的邮件内容之间具有相同md5码的可能性非常低,通常被认为是不可能的。这样,当邮件为垃圾邮件时,便可很容易找到相同的md5码;当邮件为正常邮件时,便很难找到相同的md5码。本实施例采用sha1算法得到sha1码并将sha1码作为邮件的校验码判断邮件是否为垃圾邮件的过程与采用md5算法识别垃圾邮件的过程类似,本实施例对此不做限定。s203、判断邮件的校验码是否存在于垃圾邮件样本中,其中,垃圾邮件样本中存储有不同的垃圾邮件对应的校验码。s204、若邮件的校验码存在于垃圾邮件样本中,则识别邮件为垃圾邮件。具体地,本实施例可直接利用垃圾邮件样本中存储的校验码判断该邮件是否为垃圾邮件,由于垃圾邮件样本存储着不同垃圾邮件对应的校验码,当计算得到该邮件的校验码后,便可在垃圾邮件样本中搜索,看能否找到相同的校验码。当该邮件的校验码存在与垃圾邮件样本中,便可快速、准确的识别出该邮件为垃圾邮件。本实施例提供的垃圾邮件的识别方法,通过接收邮件并对邮件进行解析,以获取邮件的ip地址和邮件内容,再通过预设校验算法,对邮件内容进行计算,得到邮件的校验码,接着判断邮件的校验码是否存在于垃圾邮件样本中,其中,垃圾邮件样本中存储有不同的垃圾邮件对应的校验码。若邮件的校验码存在于垃圾邮件样本中,则识别邮件为垃圾邮件。即本实施例以多个ip地址发送相同邮件内容的垃圾邮件为特征,将邮件内容对应的校验码存在垃圾邮件样本中,对接收的邮件进行判断是否为垃圾邮件,解决了现有概率统计的贝叶斯识别技术准确率较低的问题,且过程简单、高效,提升了垃圾邮件的识别率。现有的基于概率统计的贝叶斯识别技术往往需要通过用户举报等方式中得到正常邮件样本和垃圾邮件样本才能够识别垃圾邮件,时效性会严重滞后。然而本实施例可将识别过程化被动为主动,其中垃圾邮件样本可直接通过接收到的邮件获得,而并不是事先由用户举报等方式获得的垃圾邮件样本。下面结合图3,对本实施例垃圾邮件的识别方法的具体实现方式进行详细说明。图3为本发明提供的垃圾邮件的识别方法的流程图二,如图3所示,该方法包括:s301、接收邮件并对邮件进行解析,以获取邮件的ip地址和邮件内容,其中邮件内容包括主题、正文和附件。s302、通过预设校验算法,对邮件内容进行计算,得到邮件的校验码。s303、判断邮件的校验码是否存在于垃圾邮件样本中,其中,垃圾邮件样本中存储有不同的垃圾邮件对应的校验码;若是,则执行s304,若否,则执行s305。s304、识别邮件为垃圾邮件。其中,s301、s302、s303与s304与图2实施例中的s201、s202、s203与s204等实现方式类似,本实施例此处不再赘述。s305、针对已接收到的邮件的ip值和校验码,判断邮件的校验码所对应的ip地址的个数是否大于预设阀值,邮件的校验码所对应的ip地址包括与邮件的校验码相同的校验码所对应的已接收到的邮件的ip地址和邮件的ip地址。具体地,已收到的邮件是由邮件服务器接收到该邮件之前的邮件,本实施例可将已接收到的邮件的校验码和ip值保存在临时缓存或数据库中。根据该邮件的校验码,可在已收到的邮件中确定与该邮件的校验码相同的检验码对应的ip地址的个数。因此,需要将该邮件的ip地址与之前已经收到的邮件相同校验码对应的ip地址之和作为邮件的校验码所对应的ip地址的个数,接着判断邮件的校验码所对应的ip地址的个数是否大于预设阈值,其中,预设阈值可根据经验进行设定,本实施例对此不做限定。进一步地,本实施例中无论在已收到的邮件中是否能够找到与该邮件的校验码相同的校验码对应的ip地址,在判断过程中,都应该将已收到的邮件的ip地址与该邮件的ip地址之和得到的总个数与预设阀值进行比较。进一步地,无论采用上述哪种存储方式,在计算得到相同校验码的邮件对应的ip地址的个数之后,若个数大于预设阈值,则执行s306;若个数小于预设阈值,则执行s307。为了便于说明,本实施例可将已接收到的邮件的校验码和ip值保存在临时缓存中。s306、识别邮件为垃圾邮件,并将邮件的校验码写入到垃圾邮件样本中。s307、识别邮件为正常邮件。具体地,当邮件的校验码所对应的ip地址的个数大于预设阈值时,该邮件为垃圾邮件,且将该邮件的校验码写入到垃圾邮件样本中。当邮件的校验码所对应的ip地址的个数小于预设阈值时,该邮件为正常邮件。本实施例可对接收的邮件能够及时、快速进行识别,以区分是正常邮件还是垃圾邮件,过程简单、高效且不会依赖于事先由用户举报等方式获得的垃圾邮件样本。而且,本实施例不仅可接收其他识别垃圾邮件方法过滤得到的正常邮件,还可将区分得到的正常邮件采用其他识别垃圾邮件方法进行再次识别,以实现垃圾邮件的过滤。在上述图3实施例的基础上,在步骤305中本实施例可采用多种存储方式将已接收到的邮件的校验码和ip值保存在临时缓存中。一种可行的存储方式,如表1所示,本实施例具体可将邮件的校验码和ip地址一起一组一组的存入到临时缓存中。例如,存入邮件一的校验码一和ip地址一,存入邮件二的校验码二和ip地址二,存入邮件三的校验码三和ip地址三,……,等等,其中校验码一、校验码二和校验码三可能相同也可能不同。本实施例中无论已接收到的检验码是否相同,都会将邮件的校验码和ip地址一组组直接存储到临时缓存中。表1临时缓存中邮件的检验码和ip地址的存储方式一校验码一ip地址一校验码二ip地址二校验码三ip地址三…………另一种可行的存储方式,如表2所示,本实施例具体还可将邮件的不同的校验码和各校验码对应的ip地址集合的方式存到临时缓中,即相同的校验码对应的ip地址写入一个集合中,不同的检验码对应的ip地址写入到另一个集合中。例如,在已收到的邮件中,将相同的校验码的邮件对应的ip地址写入到ip地址集合中,其中校验码为校验码一的邮件对应的ip地址一、ip地址二等放入到一个集合中,校验码为校验码二的邮件对应的ip地址三、ip地址四等放入到一个集合中,校验码为校验码三的邮件对应的ip地址五、ip地址六等放入到一个集合中等等,校验码一、校验码二和校验码三皆不相同。表2临时缓存中邮件的检验码和ip地址的存储方式二校验码一(ip地址一,ip地址二,……)校验码二(ip地址三,ip地址四,……)校验码三(ip地址五,ip地址六,……)…………进一步地,本实施例对邮件的校验码和ip值的存储方式不做限定。为了方便说明,结合图4,本实施例s305中通过将邮件的不同的校验码和各校验码对应的ip地址集合的方式存到临时缓存中这一具体的存储方式进行具体说明。图4为本发明提供的垃圾邮件的识别方法中一种存储方式的流程图,如图4所示,该方法包括:s401、判断临时缓存中是否存储有与邮件的校验码相同的校验码,临时缓存中存储有已接收到的邮件对应的不同的校验码和各校验码对应的ip地址集合。若是,则执行s402;若否,则执行s403。s402、将邮件的ip地址写入到与邮件的校验码相同的校验码对应的ip地址集合中,并判断相同的校验码所对应的ip地址的个数是否大于预设阀值。s403、将邮件的校验码和ip地址写入到临时缓存中。具体地,由于临时缓存中已经存储了已接收到的邮件对应的校验码和ip地址,因此,可直接判断临时缓存中是否存储有与该邮件的校验码相同的校验码。若临时缓存中存储有与该邮件的校验码相同的校验码,则将该邮件的ip地址存储到相同校验码对应的ip地址集合中,再计算相同校验码对应的ip地址的个数。若临时缓存中没存储有与该邮件的校验码相同的校验码,则将该邮件的校验码和ip地址都存储到临时缓存中,则该邮件的校验码对应的ip地址的个数为1。在上述图3实施例的基础上,由于临时缓存中存储着大量校验码占用内存,会影响识别垃圾邮件的速率。为了加快垃圾邮件的识别速率,结合图5,对本实施例中释放临时缓存的具体过程进行详细说明。图5为本发明提供的垃圾邮件的识别方法中一种释放方式的流程图,如图5所示,该方法还包括:s501、获取临时缓存中写入校验码的写入时刻距当前时刻的间隔时长。具体地,由于临时缓存会在预设时长之后释放变为空,因此,本实施例可会记录向空的临时缓存写入校验码的写入时刻,再用当前时刻减去写入时刻得到间隔时长,这样随着时间的流逝,间隔时长会越来越大。s502、判断间隔时长是否大于预设时长,若是,则执行s503;若否,则返回执行s301。s503、释放临时缓存。具体地,本实施例中预设时长可为经验设置,可为半天,也可为1个小时,本实施例对此不做限定。若间隔时长大于预设时长,则释放临时缓存,这样临时缓存的存储内容不会占用过多的资源,识别效率变高。若间隔时长小于预设时长,则不释放临时缓存,继续接收新的邮件执行s301,直至识别出该邮件是否为垃圾邮件还是正常邮件。图6为本发明提供的垃圾邮件的识别装置的结构示意图,如图6所示,本实施例垃圾邮件的识别装置包括:获取模块10,用于接收邮件并对邮件进行解析,以获取邮件的ip地址和邮件内容,其中邮件内容包括主题、正文和附件;计算模块20,用于通过预设校验算法,对邮件内容进行计算,得到邮件的校验码;判断模块30,用于判断邮件的校验码是否存在于垃圾邮件样本中,其中,垃圾邮件样本中存储有不同的垃圾邮件对应的校验码。确认模块40,用于在邮件的校验码存在于垃圾邮件样本中时,识别邮件为垃圾邮件。可选地,判断模块30,还用于针对已接收到的邮件的校验码和ip值,判断邮件的校验码所对应的ip地址的个数是否大于预设阀值,邮件的校验码所对应的ip地址包括与邮件的校验码相同的校验码所对应的已接收到的邮件的ip地址和邮件的ip地址。确认模块40,还用于在个数大于预设阈值时,识别邮件为垃圾邮件,并将邮件的校验码写入到垃圾邮件样本中;确认模块40,还用于在个数小于预设阈值时,识别邮件为正常邮件。可选地,判断模块30,具体用于判断临时缓存中是否存储有与邮件的校验码相同的校验码,临时缓存中存储有已接收到的邮件对应的不同的校验码和各校验码对应的ip地址集合。确认模块40,具体用于在判断模块的判断结果为是时,将邮件的ip地址写入到与邮件的校验码相同的校验码对应的ip地址集合中,并判断相同的校验码所对应的ip地址的个数是否大于预设阀值;在判断模块的判断结果为否时,将邮件的校验码和ip地址写入到临时缓存中。可选地,获取模块10,还用于获取邮件的接收时刻与临时缓存中写入与邮件的校验码相同的校验码的写入时刻之间的间隔时长;判断模块30,还具体用于判断间隔时长是否大于预设时长。释放模块50,具体用于在判断模块30的判断结果为是时,识别邮件为正常邮件,并释放临时缓存。可选地,预设校验算法包括md5算法或sha1算法。本发明实施例提供的垃圾邮件的识别装置,可执行上述方法实施例,其具体实现原理和技术效果,可参见上述方法实施例,本实施例此处不再赘述。本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1