一种用于存储病毒名称的方法及装置制造方法及图纸

技术编号:2839629 阅读:326 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种用于存储病毒名称的方法及装置,其中,该方法包括:以预定次序预先存储所述病毒名称的各个组成部分中将要用到的字符串;检索一个将被存储的病毒名称的所述各个组成部分中的字符串在所述预先存储时对应的序号;通过所述检索到的序号来保存所述将被存储的病毒名称。利用该方法及装置,在保存病毒的病毒名称时能够有效地节省存储空间。

【技术实现步骤摘要】

本专利技术涉及计算机病毒领域,尤其涉及一种在病毒库中存储病毒名称的方法及装置。
技术介绍
自从1986年出现第一个计算机病毒以来,计算机病毒专家已经研发出了许多杀毒技术,以避免人们的重要数据和文件遭受各种病毒的侵害。在现有的计算机杀毒技术中,通常需要病毒库来保存各种计算机病毒的病毒名称和特征码等病毒信息。计算机病毒的病毒名称一般至少包括病毒类型、主名和副名三个组成部分,每个组成部分使用字符串来表示。例如,“worm.cabir.a”是一种病毒的病毒名称,其中,字符串“worm”表示该病毒的病毒类型,字符串“cabir”表示该病毒的主名,而字符串“a”表示该病毒的副名。常规的病毒库包括病毒信息库和病毒特征库。在传统的病毒名称存储方法中,对于每一个病毒,在病毒信息库中按照预定次序保存各个病毒的病毒名称,而在病毒特征库中,保存每个病毒的病毒名称在病毒信息库中存储时对应的序号、以及相应的病毒特征码和偏移量等。例如,对于病毒worm.cabir.a和worm.cabir.b,在病毒信息库中按照预定次序存储它们的病毒名称“worm.cabir.a”和“worm.cabir.b”,其中,病毒名称 “worm.cabir.a”的存储序号为0,而病毒名称“worm.cabir.b”的存储序号为1。然后,在病毒特征库中,对于病毒worm.cabir.a,保存作为病毒名称的序号0以及相应的病毒特征码和偏移量等,对于病毒worm.cabir.b,保存作为病毒名称的序号1以及相应的病毒特征码和偏移量等。然而,这种传统的病毒名称存储方法在小存储容量的设备上存在缺陷。因为对于不同病毒的病毒名称,它们的病毒类型、主名或副名可能相同,因此,当按照传统的方法存储病毒名称时,表示相同的病毒类型、主名或副名的字符串可能被重复的保存。以上述的两个病毒的病毒名称为例,按照传统的病毒名称存储方法,在病毒信息库中,表示病毒类型的字符串“worm”被保存了两次,表示主名的字符串“cabir”被保存了两次。随着病毒数量的增加时,表示病毒类型、主名或副名的字符串被重复保存的次数可能会增多。由于字符串的存储需要的很多存储空间,所以字符串这种重复保存将会消耗大量的存储空间。尤其,当字符串的这种重复保存发生在诸如移动终端和PDA这样的存储容量较小的设备中时,将产生严重的性能问题。
技术实现思路
考虑到上述问题,本专利技术提出一种用于存储病毒名称的方法及装置,利用该方法及装置,在保存病毒的病毒名称时能够有效地节省存储空间。为了实现本专利技术的目的,按照本专利技术的一种用于存储病毒名称的方法,包括步骤以预定次序预先存储所述病毒名称的各个组成部分中将要用到的字符串;检索一个将被存储的病毒名称的所述各个组成部分中的字符串在所述预先存储时对应的序号;通过所述检索到的序号来保存所述将被存储的病毒名称。为了实现本专利技术的目的,按照本专利技术的一种用于存储病毒名称的装置,包括字符串存储模块,用于以预定次序预先存储所述病毒名称的各个组成部分中将要用到的字符串;检索模块,用于检索一个将被存储的病毒名称的所述各个组成部分中的字符串在所述预先存储时对应的序号;以及名称存储模块,用于通过所述检索到的序号来保存所述将被存储的病毒名称。附图说明根据下面结合附图的详细描述,本专利技术及其附加的目的、特点和优点将变得更加显而易见。其中图1示出了按照本专利技术的用于存储病毒名称的方法的概要流程图;图2示出了本专利技术的一个病毒信息库的例子;图3示出了本专利技术的一个病毒特征库的例子;以及图4示出了本专利技术的用于存储病毒名称的装置。专利技术详述下面将结合附图详细描述本专利技术的用于存储病毒名称的方法。图1示出了按照本专利技术的用于存储病毒名称的方法的概要流程图。如图1所示,首先,将病毒名称的各个组成部分中将要用到的字符串按照预定次序预先存储起来(步骤S10)。然后,对于每一个将被存储的病毒名称,检索该将被存储的病毒名称的所述各个组成部分中的字符串在所述预先存储时对应的序号(步骤S20)。最后,通过该检索到的序号保存该将被存储的病毒名称(步骤S30)。下面将结合附图2和3,以只包括病毒类型、主名和副名三个组成部分的病毒名称为例,详细描述本专利技术一个实施例的用于存储病毒名称的方法。在本实施例中,本专利技术的病毒库由病毒信息库和病毒特征库构成。病毒信息库用于按照预定顺序预先存储病毒名称的病毒类型、主名和副名中将要用到的字符串。图2示出了本专利技术的一个病毒信息库的例子,如图2所示,病毒信息库按照预定次序预先存储了字符串“worn”、“cabir”、“a”和“b”,其中,字符串“worm”的序号为0,字符串“cabir”的序号为1,字符串“a”的序号为2,以及字符串“b”的序号为3。此外,在图2中,除了预先存储的字符串之外,病毒信息库还包括病毒信息库文件头和校验和,其中,病毒信息库文件头用于存放病毒信息库的配置信息,而校验和用于检验病毒信息库所存储信息是否正确。病毒特征库主要用于存储各个病毒的病毒名称、病毒特征码和偏移量、病毒特征库文件头和校验和。其中,在病毒特征库中,对于每个病毒的病毒名称,不是存储由病毒类型字符串、主名字符串和副名字符串构成的病毒名称,而是存储病毒名称的病毒类型字符串、主名字符串和副名字符串各自在病毒信息库中对应的序号。图3示出了本专利技术的一个病毒特征库的例子,其中,示出了病毒worm.cabir.a和worm.cabir.b各自的病毒名称在病毒特征库中的存储方式。如图3所示,对于病毒worm.cabir.a的病毒名称“worm.cabir.a”,检索得到表示病毒类型的字符串“worm”在图2的病毒信息库中所存储的序号为0,表示主名的字符串“cabir”在图2的病毒信息库中所存储的序号为1,以及表示副名的字符串“a”在图2的病毒信息库中所存储的序号为2,因此,病毒worm.cabir.a的病毒名称“worm.cabir.a”在病毒特征库中存储为病毒类型序号是0,主名序号是1以及副名序号是2。对于病毒worm.cabir.b的病毒名称“worm.cabir.b”,检索得到表示病毒类型的字符串“worm”在图2的病毒信息库中所存储的序号为0,表示主名的字符串“cabir”在图2的病毒信息库中所存储的序号为1,以及表示副名的字符串“b”在图2的病毒信息库中所存储的序号为3,因此,病毒worm.cabir.b的病毒名称“worm.cabir.b”在病毒特征库中存储为病毒类型序号是0,主名序号是1以及副名序号是3。当需要从读取病毒的病毒名称时,根据在病毒特征库中所存储的该病毒名称的病毒类型序、主名和副名各自的序号,从病毒信息库中获取相应的字符串,从而由该获取的相应字符串组合成该病毒的病毒名称。从图2和3可以看出,假设每个数字和字符分别利用一个字节来保存,则在仅仅存储两个病毒worm.cabir.a和worm.cabir.b的病毒名称的情况下,按照本实施例的方法仅需17个字节,而按照传统的存储方法则需22个字节。随着存储的病毒名称增多,按照本专利技术的存储方法与传统的存储方法相比将能节省出更多的存储空间。需要注意的是,上述实施例只是用于举例说明,本专利技术并不局限于此。在不偏离本专利技术的精神的情况下,基于上述实施例进行的各种变形和修改都在本专利技术的保护范围本文档来自技高网
...

【技术保护点】
一种用于存储病毒名称的方法,包括步骤:以预定次序预先存储所述病毒名称的各个组成部分中将要用到的字符串;检索一个将被存储的病毒名称的所述各个组成部分中的字符串在所述预先存储时对应的序号;通过所述检索到的序号来保存所述将 被存储的病毒名称。

【技术特征摘要】
1.一种用于存储病毒名称的方法,包括步骤以预定次序预先存储所述病毒名称的各个组成部分中将要用到的字符串;检索一个将被存储的病毒名称的所述各个组成部分中的字符串在所述预先存储时对应的序号;通过所述检索到的序号来保存所述将被存储的病毒名称。2.如权利要求1所述的方法,其中,所述各个组成部分至少包括病毒类型、主名和副名。3.如权利要求1所述的方法,其中,所述将要用到的字符串被存储在病毒信息库中。4.如权利要求1所述的方法,其中,所述将被存储的病毒名称被保存在病毒特征库中。5.一种用于存储...

【专利技术属性】
技术研发人员:任砚涛
申请(专利权)人:北京瑞星国际软件有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1