CN108733664A - 一种文件归类方法及装置 - Google Patents
一种文件归类方法及装置 Download PDFInfo
- Publication number
- CN108733664A CN108733664A CN201710240448.4A CN201710240448A CN108733664A CN 108733664 A CN108733664 A CN 108733664A CN 201710240448 A CN201710240448 A CN 201710240448A CN 108733664 A CN108733664 A CN 108733664A
- Authority
- CN
- China
- Prior art keywords
- file
- characteristic information
- sample
- storage location
- integer
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了文件归类方法及装置,应用于信息处理技术领域。文件归类装置将待归类文件的特征信息转化为第一整数,然后根据第一整数及预置的位置计算函数确定对应的第一存储位置,如果存储空间中第一存储位置对应的数值为第一指示值,确定待归类文件为某一类型的文件,其中,第一指示值用于指示存储空间储存第一存储位置所表示的样本文件的特征信息。这样,可以通过存储空间中的各个存储位置表示某一类型的一个样本文件的特征信息,并通过各个存储位置对应的指示值指示存储空间中是否储存相应的样本文件的特征信息,极大地减少了某一类型的样本文件的存储空间的特征信息,使得确定待归类文件的类型的效率得到提高。
Description
技术领域
本发明涉及信息处理技术领域,特别涉及一种文件归类方法及装置。
背景技术
现有技术中,在储存病毒库时,经常会提取病毒样本的一些特征进行储存,具体地,将各个病毒样本的消息摘要算法第五版(Message Digest Algorithm5,MD5)储存到本地设备的硬盘中。当需要根据病毒库对本地设备中的文件进行查毒时,需要将硬盘中病毒样本的信息加载到内存中,然后再判定待查杀文件是否与病毒样本的信息匹配。
一般情况下,本地设备在将病毒样本的信息加载内存时,可以直接将病毒库的MD5加载到内存。但是病毒库的MD5特征一般比较大,使得病毒样本无法一次性加载到内存,需要频繁读取本地设备的硬盘,导致查毒速度低下。比如,常见的一条病毒样本的MD5特征一般需要32个字节来存储,如果需要存储1亿条,就大约需要2.98GB的空间存储该病毒库。另一种情况下,本地设备会先通过MD5字符串构建成字典树后加载到内存,但是初始化字典树需要耗费较长的时间,如果硬盘中的MD5的规模较大,容易引起内存不足的问题。
发明内容
本发明实施例提供一种文件归类方法及装置,实现了根据储存某一类型样本文件的特征信息的存储空间中,待归类文件的特征信息对应的第一存储位置的数值确定待归类文件是否为某一类型的文件。
本发明实施例提供一种文件归类方法,包括:
获取待归类文件的特征信息,及将所述待归类文件的特征信息转化为第一整数;
根据所述第一整数及预置的位置计算函数确定对应的第一存储位置;
如果储存某一类型样本文件的特征信息的存储空间中,第一存储位置对应的数值为第一指示值,确定所述待归类文件为所述某一类型的文件,所述第一指示值用于指示所述存储空间储存所述第一存储位置所表示的样本文件的特征信息。
本发明实施例提供一种文件归类装置,包括:
整数单元,用于获取待归类文件的特征信息,及将所述待归类文件的特征信息转化为第一整数;
位置确定单元,用于根据所述第一整数及预置的位置计算函数确定对应的第一存储位置;
第一类型确定单元,用于如果储存某一类型样本文件的特征信息的存储空间中,第一存储位置对应的数值为第一指示值,确定所述待归类文件为所述某一类型的文件,所述第一指示值用于指示所述存储空间储存所述第一存储位置所表示的样本文件的特征信息。
可见,在本实施例的方法中,文件归类装置获取待归类文件的特征信息,且将该特征信息转化为第一整数,然后根据第一整数及预置的位置计算函数确定对应的第一存储位置,如果储存某一类型样本文件的特征信息的存储空间中,第一存储位置对应的数值为第一指示值,确定待归类文件为某一类型的文件,其中,第一指示值用于指示存储空间储存第一存储位置所表示的样本文件的特征信息。这样,可以通过存储空间中的各个存储位置表示某一类型的一个样本文件的特征信息,并通过各个存储位置对应的指示值指示存储空间中是否储存相应的样本文件的特征信息,极大地减少了某一类型样本文件的存储空间的特征信息,从而也节省了在确定待归类文件的类型的过程中将样本文件的特征信息加载到内存的时间和空间,使得确定待归类文件的类型的效率得到提高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种文件归类方法的流程图;
图2是本发明实施例中设置存储空间中各个存储位置的数值的方法流程图;
图3是本发明应用实施例中储存病毒样本文件的MD5特征的方法流程图;
图4是本发明应用实施例中确定待查杀文件是否为病毒文件的方法流程图;
图5是本发明应用实施例中确定待查杀文件是否为病毒文件的示意图;
图6是本发明实施例提供的一种文件归类装置的结构示意图;
图7是本发明实施例提供的另一种文件归类装置的结构示意图;
图8是本发明实施例提供的一种终端设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排它的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供一种文件归类方法,主要应用于对某一未知类型的文件(即待归类文件)进行归类的场景,比如确定某一文件是否是病毒文件等场景。具体地,文件归类装置获取待归类文件的特征信息,且将该特征信息转化为第一整数,然后根据第一整数及预置的位置计算函数确定对应的第一存储位置,如果储存某一类型样本文件的特征信息的存储空间中,第一存储位置对应的数值为第一指示值,确定待归类文件为某一类型的文件,其中,第一指示值用于指示存储空间储存第一存储位置所表示的样本文件的特征信息。这样,可以通过存储空间中的各个存储位置表示某一类型的一个样本文件的特征信息,并通过各个存储位置对应的数值指示存储空间中是否储存相应的样本文件的特征信息,极大地减少了某一类型样本文件的特征信息的存储空间,从而也节省了在确定待归类文件的类型的过程中将样本文件的特征信息加载到内存的时间和空间,使得确定待归类文件的类型的效率得到提高。
本发明的一个实施例提供一种文件归类方法,主要是文件归类装置所执行的方法,流程图如图1所示,包括:
步骤101,获取待归类文件的特征信息,及将该待归类文件的特征信息转化为第一整数。
具体地,文件归类装置在获取待归类文件的特征信息时,可以计算待归类文件的MD5值;在将特征信息转化为第一整数时,主要是将对特征信息进行哈希计算得到的哈希值作为第一整数,这里哈希计算可以是任意哈希算法,比如,安全哈希算法(Secure HashAlgorithm,SHA)等。
其中,待归类文件的MD5值可以确保信息传输完整一致,具有压缩性、容易计算、抗修改性、强抗碰撞等特性。MD5的作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式,具体是将一个任意长度的字节串变换成一定长的十六进制数字串。
哈希算法是将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式,如果散列一段明文而且哪怕只更改该段落的一个字母,经过哈希计算都将产生不同的值。本实施例中采用哈希计算,保证了不同待归类文件的特征信息对应不同的整数。
步骤102,根据第一整数及预置的位置计算函数确定对应的第一存储位置。
这里预置的位置计算函数是指通过某一整数计算得到某一存储位置的任一函数,本实施例中,通过第一整数和位置计算函数即可得到第一存储位置,该位置计算函数是预先设置在文件归类装置中的。且本实施例中确定的第一存储位置用于指示在储存某一类型样本文件的特征信息的存储空间中的某一位置。
上述的第一存储位置及预置的位置计算函数的具体形式主要取决于上述存储空间储存样本文件的特征信息的形式,第一存储位置可以是第一位置定位坐标等,而位置计算函数可以是将某一整数对n的商值和余数值作为该整数在存储空间的位置定位坐标等,其中,n为大于1的整数。具体地,本实施例中,文件归类装置可以将第一整数对n的商值和余数值作为该第一整数在存储空间的第一位置定位坐标。
例如:上述存储空间通过如下表1所示的4*16位的位数组来储存样本文件的特征信息。则位置计算函数为:将某一整数对16(n为16)的商值和余数值作为该整数在存储空间的位置定位坐标,比如,29的位置定位坐标为(1,13),用于表示a[1]和bit13这个位置。
bit0 | bit2 | bit3 | bit4 | … | bit12 | bit13 | bit14 | bit15 | |
a[0] | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
a[1] | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
a[2] | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
a[3] | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
表1
其中,如果某对象只有两种值,即可通过一个二进制位就能表示该对象,位数组就是用来存储这种对象的数组,其内部为整数数组,整数的每一位都表示一个对象。上述表1所示的位数组可以表示4*16个对象,每个对象表示某一类型的一个样本文件的特征信息,该对象的两种值0和1分别表示存储空间中未储存有该样本文件的特征信息,及存储空间中储存有该样本文件的特征信息,比如,上述表1中a[2]和bit2所表示对象的值(为1)表示存储空间中储存有该样本文件的特征信息,根据对应的位置计算函数得到该样本文件的特征信息对应的整数为34。
步骤103,判断储存某一类型样本文件的特征信息的存储空间中,第一存储位置对应的数值是否为第一指示值,如果是第一指示值,则执行步骤104;如果不是第一指示值,而是第二指示值,则执行步骤105。
其中,该第一指示值是用于指示在存储空间中储存有该第一存储位置所表示的样本文件的特征信息,具体可以为1;第二指示值是用于指示在存储空间中未储存该第一存储位置所表示的样本文件的特征信息,具体可以为0。
在其它具体实施例中,第一指示值可以为1,而第二指示值为0。
步骤104,确定待归类文件为某一类型的文件。
步骤105,确定待归类文件不是该某一类型的文件。
可见,在本实施例的方法中,可以通过存储空间中的各个存储位置表示某一类型的一个样本文件的特征信息,并通过各个存储位置对应的数值指示存储空间中是否储存相应的样本文件的特征信息,极大地减少了某一类型样本文件的特征信息的存储空间,从而也节省了在确定待归类文件的类型的过程中将样本文件的特征信息加载到内存的时间和空间,使得确定待归类文件的类型的效率得到提高。
在一个具体的实施例中,文件归类装置可以通过如下步骤201到203将某一类型的样本文件储存到存储空间中,流程图如图2所示,包括:
步骤201,分别获取某一类型的多个样本文件的特征信息,将多个样本文件的特征信息分别转化为多个样本整数。
具体地,文件归类装置在获取待样本特征信息时,可以计算分别计算已知类型的多个样本文件的MD5值;在将样本特征信息转化为样本整数时,主要是将对样本特征信息进行哈希计算得到的哈希值作为样本整数,这里哈希计算可以是任意哈希算法。
步骤202,根据上述位置计算函数分别确定多个样本整数对应的样本存储位置。
该位置计算函数可以是将某一整数对n的商值和余数值作为位置定位坐标,在本实施例中,文件归类装置可以将样本整数对n的商值和余数值作为对应的样本位置定位坐标,样本存储位置包括样本位置定位坐标。
步骤203,将存储空间中样本存储位置对应的数值设置为第一指示值,而其它位置对应的数值设置为第二指示值。
这样就可以通过存储空间中的各个存储位置表示某一类型的一个样本文件的特征信息,并通过各个存储位置对应的数值指示存储空间中是否储存相应的样本文件的特征信息。
进一步地,文件归类装置还可以不断地更新存储空间中储存的某一类型的样本文件的特征信息,比如,新增加该类型样本文件的特征信息,这种情况下,需要先根据上述位置计算函数确定该类型的新增加样本文件的特征信息对应的最新存储位置,然后将存储空间中最新存储位置的数值设置为第一指示值。其中,在确定最新存储位置时与上述确定第一存储位置的方法类似,不同的是,在确定最新存储位置时是针对新增加的样本文件的特征信息,而确定第一存储位置时是针对待归类文件的特征信息。
以下以一个具体的实施例来说明本发明的文件归类方法,在本实施例中,文件归类装置为病毒查杀设备,待归类文件为待查杀文件,在本实施例中:
(1)病毒查杀设备或者云端的服务器储存病毒样本文件的特征信息,具体为MD5特征,流程图如图3所示,包括:
步骤301,病毒查杀设备或服务器针对多个病毒样本文件,先分别获取多个病毒样本文件的MD5特征,分别对多个病毒样本文件的MD5特征进行哈希计算得到对应的哈希值。每个病毒样本文件对应的哈希值为一个整数。
步骤302,病毒查杀设备或服务器设置一个位数组,将该位数组中各个位置的数值初始化为0。
具体地,假设上述步骤301中获取的整数个数为SUM,为了防止多个病毒样本文件的MD5特征对应的整数发生碰撞,实现一个病毒样本文件的MD5特征对应的整数对应位数组中的一个位置,可以将位数组设置为整数个数SUM的m倍,在本实施例中m可以为8。
在一个具体的实施例中,可以将位数组设置为t*n位的位数组,每一位可以表示一个病毒样本文件的MD5特征,每一位的数值可以为1或0,其中,n为32,t=(SUM*8)/32+1。
例如,可以设置一个如下表2所示的10*32位的位数组:
bit0 | bit2 | bit3 | bit4 | … | bit28 | bit29 | bit30 | bit31 | |
a[0] | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
a[1] | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
a[2] | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
a[3] | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
… | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
a[9] | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
表2
步骤303,病毒查杀设备或服务器根据预置的位置计算函数,确定上述步骤301得到的各个病毒文件的MD5特征对应的整数(即哈希值)的位置定位坐标。
具体地,在本实施例中,位置计算函数可以为:将整数(NUM)对32(n为32)的商值和余数值作为对应整数的位置定位坐标,具体可以为如下公式1:
[NUM/32]|(1<<(NUM%32))(1)
本实施例中,病毒查杀设备或服务器确定的位置定位坐标为a[i]和bitj,其中,i到0到9之间的整数,j为0到31之间的整数。
步骤304,病毒查杀设备或服务器将位数组中与上述步骤303确定的各个位置定位坐标对应位置的数值设置为1,用于表示位数组中储存该位置对应的病毒样本文件的MD5特征。
例如,某一病毒样本文件的MD5特征为“25e41a91a6a83f9b400e2ff1fc28a1f9”,该MD5特征对应的哈希值为45,通过上述步骤303,确定45对应的位置定位坐标为a[1]和bit13,则将a[1]的bit13的数值设置为1。
又例如,病毒查杀设备或服务器针对其它病毒样本文件的MD5特征对应的哈希值32、95、126、31及288,分别确定对应的位置定位坐标为a[1]和bit0,a[2]和bit31,a[3]和bit30,a[0]和bit31,及a[9]和bit30,且将相应位置的数值设置为1,具体可以如下表3所示:
bit0 | … | bit12 | bit13 | bit14 | … | bit29 | bit30 | bit31 | |
a[0] | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
a[1] | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
a[2] | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
a[3] | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
… | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
a[9] | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
表3
(2)确定本地文件是否是病毒文件,流程图如图4所示,包括:
步骤401,如图5所示,病毒查杀设备会先将本地硬盘中储存的位数组,或者从服务器下载的位数组加载到病毒查杀设备的内存中。
可以理解,病毒查杀设备可以按照预置的周期,定期地针对本地文件,发起本实施例的流程;或者根据用户对病毒查杀设备的操作,针对特定的文件,发起本实施例的流程。
步骤402,病毒查杀设备针对待查杀文件,先获取待查杀文件的MD5特征,对待查杀文件的MD5特征进行哈希计算得到对应的哈希值,该哈希值为一个整数。
步骤403,病毒查杀设备根据预置的位置计算函数,确定上述步骤402得到的待查杀文件的MD5特征对应的整数(即哈希值)的位置定位坐标。
步骤404,病毒查杀设备判断内存中加载的位数组中,上述步骤403得到的位置定位坐标对应位置的数值是否为1,如果为1,则确定待查杀文件为病毒文件,如果为0,则确定待查杀文件不是病毒文件。
通过本实施例的方法,可以实现如下的效果:
(1)减少病毒样本文件的特征信息的存储空间。相比现有技术中直接储存一个病毒文件的MD5特征(32个字节的字符串),本实施例中只要一个比特位就可以储存该MD5特征,相当于将存储空间节省了256(32*8)倍。
(2)针对数据量比较大的病毒样本文件,可以一次性将病毒样本文件的特征信息加载到内存。如果存储1亿条MD5特征需要32亿个字节,对应的内存大约需要2.98GB,很多病毒查杀设备并不能一次性地分配对应地内存,而利用本实施例的方法,大大缩减了分配的内存,可以一次性将病毒样本文件的特征信息加载到内存。
(3)提升匹配效率。现有技术中待查杀文件的MD5特征与病毒样本文件的MD5进行匹配时,其时间复杂度是O(n),而利用本实施例的方法,时间复杂度为O(1)。
本发明实施例还提供一种文件归类装置,其结构示意图如图6所示,具体可以包括:
整数单元10,用于获取待归类文件的特征信息,及将所述待归类文件的特征信息转化为第一整数;
位置确定单元11,用于根据所述整数单元10得到的第一整数及预置的位置计算函数确定对应的第一存储位置;
第一类型确定单元12,用于如果储存某一类型样本文件的特征信息的存储空间中,所述位置确定单元11确定的第一存储位置对应的数值为第一指示值,确定所述待归类文件为所述某一类型的文件,所述第一指示值用于指示所述存储空间储存所述第一存储位置所表示的样本文件的特征信息。
在本实施例中,上述整数单元10,具体用于将待归类文件的特征信息进行哈希计算得到的哈希值作为所述第一整数。而位置确定单元11,具体用于将所述第一整数对n的商值和余数值作为所述第一整数在存储空间的第一位置定位坐标,所述第一存储位置为所述第一位置定位坐标,所述n为大于1的整数。
其中,所述某一类型的样本文件为病毒样本文件,所述第一指示值为1,所述第二指示值为0。
可见,本实施例的文件归类装置中,整数单元10获取待归类文件的特征信息,且将该特征信息转化为第一整数,然后位置确定单元11根据第一整数及预置的位置计算函数确定对应的第一存储位置,如果储存某一类型样本文件的特征信息的存储空间中,第一存储位置对应的数值为第一指示值,第一类型确定单元12确定待归类文件为某一类型的文件,其中,第一指示值用于指示存储空间储存第一存储位置所表示的样本文件的特征信息。这样,可以通过存储空间中的各个存储位置表示某一类型的一个样本文件的特征信息,并通过各个存储位置对应的数值指示存储空间中是否储存相应的样本文件的特征信息,极大地减少了某一类型样本文件的特征信息的存储空间,从而也节省了在确定待归类文件的类型的过程中将样本文件的特征信息加载到内存的时间和空间,使得确定待归类文件的类型的效率得到提高。
参考图7所示,在一个具体的实施例中,文件归类装置除了可以包括如图6所示的结构外,还可以包括设置单元13和第二类型确定单元14,其中:
第二类型确定单元14,还用于如果储存某一类型样本文件的特征信息的存储空间中,所述位置确定单元11确定的第一存储位置对应的数值为第二指示值,确定所述待归类文件不是所述某一类型的文件,所述第二指示值用于指示所述存储空间未储存所述第一存储位置所表示的样本文件的特征信息。
上述整数单元10,还用于分别获取所述某一类型的多个样本文件的特征信息,将所述多个样本文件的特征信息分别转化为多个样本整数;位置确定单元11,还用于根据所述位置计算函数分别确定所述整数单元10确定的多个样本整数对应的样本存储位置;这样设置单元13,用于将所述存储空间中所述位置确定单元11确定的样本存储位置对应的数值设置为所述第一指示值,将其它位置对应的数值设置为第二指示值。
进一步地,上述位置确定单元11,还用于根据所述位置计算函数,确定所述某一类型的新增加样本文件的特征信息对应的最新存储位置;在这种情况下,设置单元13,还用于将所述存储空间中所述位置确定单元11确定的最新存储位置的数值设置为所述第一指示值。
本发明实施例还提供一种终端设备,其结构示意图如图8所示,该终端设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(centralprocessing units,CPU)20(例如,一个或一个以上处理器)和存储器21,一个或一个以上存储应用程序221或数据222的存储介质22(例如一个或一个以上海量存储设备)。其中,存储器21和存储介质22可以是短暂存储或持久存储。存储在存储介质22的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对终端设备中的一系列指令操作。更进一步地,中央处理器20可以设置为与存储介质22通信,在终端设备上执行存储介质22中的一系列指令操作。
具体地,在存储介质22中储存的应用程序221包括文件归类的应用程序,且该程序可以包括上述文件归类装置中的整数单元10,位置确定单元11,第一类型确定单元12,设置单元13和第二类型确定单元14,在此不进行赘述。更进一步地,中央处理器20可以设置为与存储介质22通信,在终端设备上执行存储介质22中储存的文件归类的应用程序对应的一系列操作。
终端设备还可以包括一个或一个以上电源23,一个或一个以上有线或无线网络接口24,一个或一个以上输入输出接口25,和/或,一个或一个以上操作***223,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述方法实施例中所述的由文件归类装置所执行的步骤可以基于该图8所示的终端设备的结构。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM)、随机存取存储器RAM)、磁盘或光盘等。
以上对本发明实施例所提供的文件归类方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (14)
1.一种文件归类方法,其特征在于,包括:
获取待归类文件的特征信息,及将所述待归类文件的特征信息转化为第一整数;
根据所述第一整数及预置的位置计算函数确定对应的第一存储位置;
如果储存某一类型样本文件的特征信息的存储空间中,第一存储位置对应的数值为第一指示值,确定所述待归类文件为所述某一类型的文件,所述第一指示值用于指示所述存储空间储存所述第一存储位置所表示的样本文件的特征信息。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
分别获取所述某一类型的多个样本文件的特征信息,将所述多个样本文件的特征信息分别转化为多个样本整数;
根据所述位置计算函数分别确定所述多个样本整数对应的样本存储位置;
将所述存储空间中所述样本存储位置对应的数值设置为所述第一指示值,将其它位置对应的数值设置为第二指示值。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
根据所述位置计算函数,确定所述某一类型的新增加样本文件的样本特征信息对应的最新存储位置;
将所述存储空间中所述最新存储位置的数值设置为所述第一指示值。
4.如权利要求1至3任一项所述的方法,其特征在于,所述将所述特征信息转化为第一整数,具体包括:
将待归类文件的特征信息进行哈希计算得到的哈希值作为所述第一整数。
5.如权利要求1至3任一项所述的方法,其特征在于,所述根据所述第一整数及预置的位置计算函数确定对应的第一存储位置,具体包括:
将所述第一整数对n的商值和余数值作为所述第一整数在存储空间的第一位置定位坐标,所述第一存储位置为所述第一位置定位坐标,所述n为大于1的整数。
6.如权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
如果储存某一类型样本文件的特征信息的存储空间中,第一存储位置对应的数值为第二指示值,确定所述待归类文件不是所述某一类型的文件,所述第二指示值用于指示所述存储空间未储存所述第一存储位置所表示的样本文件的特征信息。
7.如权利要求6所述的方法,其特征在于,所述某一类型的样本文件为病毒样本文件,所述第一指示值为1,所述第二指示值为0。
8.一种文件归类装置,其特征在于,包括:
整数单元,用于获取待归类文件的特征信息,及将所述待归类文件的特征信息转化为第一整数;
位置确定单元,用于根据所述第一整数及预置的位置计算函数确定对应的第一存储位置;
第一类型确定单元,用于如果储存某一类型样本文件的特征信息的存储空间中,第一存储位置对应的数值为第一指示值,确定所述待归类文件为所述某一类型的文件,所述第一指示值用于指示所述存储空间储存所述第一存储位置所表示的样本文件的特征信息。
9.如权利要求8所述的装置,其特征在于,还包括设置单元,其中:
所述整数单元,还用于分别获取所述某一类型的多个样本文件的特征信息,将所述多个样本文件的特征信息分别转化为多个样本整数;
所述位置确定单元,还用于根据所述位置计算函数分别确定所述多个样本整数对应的样本存储位置;
所述设置单元,用于将所述存储空间中所述样本存储位置对应的数值设置为所述第一指示值,将其它位置对应的数值设置为第二指示值。
10.如权利要求9所述的装置,其特征在于,
所述位置确定单元,还用于根据所述位置计算函数,确定所述某一类型的新增加样本文件的特征信息对应的最新存储位置;
所述设置单元,还用于将所述存储空间中所述最新存储位置的数值设置为所述第一指示值。
11.如权利要求8至10任一项所述的装置,其特征在于,
所述整数单元,具体用于将待归类文件的特征信息进行哈希计算得到的哈希值作为所述第一整数。
12.如权利要求8至10任一项所述的装置,其特征在于,
所述位置确定单元,具体用于将所述第一整数对n的商值和余数值作为所述第一整数在存储空间的第一位置定位坐标,所述第一存储位置为所述第一位置定位坐标,所述n为大于1的整数。
13.如权利要求8至10任一项所述的装置,其特征在于,还包括:
第二类型确定单元,还用于如果储存某一类型样本文件的特征信息的存储空间中,第一存储位置对应的数值为第二指示值,确定所述待归类文件不是所述某一类型的文件,所述第二指示值用于指示所述存储空间未储存所述第一存储位置所表示的样本文件的特征信息。
14.如权利要求13所述的装置,其特征在于,所述某一类型的样本文件为病毒样本文件,所述第一指示值为1,所述第二指示值为0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710240448.4A CN108733664B (zh) | 2017-04-13 | 2017-04-13 | 一种文件归类方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710240448.4A CN108733664B (zh) | 2017-04-13 | 2017-04-13 | 一种文件归类方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108733664A true CN108733664A (zh) | 2018-11-02 |
CN108733664B CN108733664B (zh) | 2022-05-03 |
Family
ID=63923800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710240448.4A Active CN108733664B (zh) | 2017-04-13 | 2017-04-13 | 一种文件归类方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108733664B (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090012984A1 (en) * | 2007-07-02 | 2009-01-08 | Equivio Ltd. | Method for Organizing Large Numbers of Documents |
CN101777056A (zh) * | 2009-12-31 | 2010-07-14 | 成都市华为赛门铁克科技有限公司 | 数据存储方法及设备 |
US7809752B1 (en) * | 2005-04-14 | 2010-10-05 | AudienceScience Inc. | Representing user behavior information |
CN103037344A (zh) * | 2012-12-06 | 2013-04-10 | 亚信联创科技(中国)有限公司 | 一种话单去重方法及装置 |
CN103067364A (zh) * | 2012-12-21 | 2013-04-24 | 华为技术有限公司 | 病毒检测方法及设备 |
CN103164408A (zh) * | 2011-12-09 | 2013-06-19 | 阿里巴巴集团控股有限公司 | 基于垂直搜索引擎的信息存储、查询方法及其装置 |
CN103164651A (zh) * | 2011-12-15 | 2013-06-19 | 西门子公司 | 提取病毒文件特征码的装置和方法以及病毒检测*** |
WO2014081727A1 (en) * | 2012-11-20 | 2014-05-30 | Denninghoff Karl L | Search and navigation to specific document content |
CN103970722A (zh) * | 2014-05-07 | 2014-08-06 | 江苏金智教育信息技术有限公司 | 一种文本内容去重的方法 |
CN104090895A (zh) * | 2013-12-18 | 2014-10-08 | 深圳市腾讯计算机***有限公司 | 获取基数的方法、装置、服务器及*** |
CN104657451A (zh) * | 2015-02-05 | 2015-05-27 | 百度在线网络技术(北京)有限公司 | 页面的处理方法及装置 |
CN104751055A (zh) * | 2013-12-31 | 2015-07-01 | 北京启明星辰信息安全技术有限公司 | 一种基于纹理的分布式恶意代码检测方法、装置及*** |
CN105069020A (zh) * | 2015-07-14 | 2015-11-18 | 国家信息中心 | 自然资源数据三维可视化方法和*** |
CN105183855A (zh) * | 2015-09-08 | 2015-12-23 | 浪潮(北京)电子信息产业有限公司 | 一种信息归类方法和*** |
CN105306063A (zh) * | 2015-10-12 | 2016-02-03 | 浙江大学 | 一种记录型数据存储空间的优化与恢复方法 |
CN106487833A (zh) * | 2015-08-26 | 2017-03-08 | 北京国双科技有限公司 | 网络监测中独立用户数的统计方法及装置 |
-
2017
- 2017-04-13 CN CN201710240448.4A patent/CN108733664B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7809752B1 (en) * | 2005-04-14 | 2010-10-05 | AudienceScience Inc. | Representing user behavior information |
US20090012984A1 (en) * | 2007-07-02 | 2009-01-08 | Equivio Ltd. | Method for Organizing Large Numbers of Documents |
CN101777056A (zh) * | 2009-12-31 | 2010-07-14 | 成都市华为赛门铁克科技有限公司 | 数据存储方法及设备 |
CN103164408A (zh) * | 2011-12-09 | 2013-06-19 | 阿里巴巴集团控股有限公司 | 基于垂直搜索引擎的信息存储、查询方法及其装置 |
CN103164651A (zh) * | 2011-12-15 | 2013-06-19 | 西门子公司 | 提取病毒文件特征码的装置和方法以及病毒检测*** |
WO2014081727A1 (en) * | 2012-11-20 | 2014-05-30 | Denninghoff Karl L | Search and navigation to specific document content |
CN103037344A (zh) * | 2012-12-06 | 2013-04-10 | 亚信联创科技(中国)有限公司 | 一种话单去重方法及装置 |
CN103067364A (zh) * | 2012-12-21 | 2013-04-24 | 华为技术有限公司 | 病毒检测方法及设备 |
CN104090895A (zh) * | 2013-12-18 | 2014-10-08 | 深圳市腾讯计算机***有限公司 | 获取基数的方法、装置、服务器及*** |
CN104751055A (zh) * | 2013-12-31 | 2015-07-01 | 北京启明星辰信息安全技术有限公司 | 一种基于纹理的分布式恶意代码检测方法、装置及*** |
CN103970722A (zh) * | 2014-05-07 | 2014-08-06 | 江苏金智教育信息技术有限公司 | 一种文本内容去重的方法 |
CN104657451A (zh) * | 2015-02-05 | 2015-05-27 | 百度在线网络技术(北京)有限公司 | 页面的处理方法及装置 |
CN105069020A (zh) * | 2015-07-14 | 2015-11-18 | 国家信息中心 | 自然资源数据三维可视化方法和*** |
CN106487833A (zh) * | 2015-08-26 | 2017-03-08 | 北京国双科技有限公司 | 网络监测中独立用户数的统计方法及装置 |
CN105183855A (zh) * | 2015-09-08 | 2015-12-23 | 浪潮(北京)电子信息产业有限公司 | 一种信息归类方法和*** |
CN105306063A (zh) * | 2015-10-12 | 2016-02-03 | 浙江大学 | 一种记录型数据存储空间的优化与恢复方法 |
Non-Patent Citations (3)
Title |
---|
O. ERDOGAN 等: "Hash-AV: fast virus signature scanning by cache-resident filters", 《 GLOBECOM "05. IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE, 2005.》 * |
刘鹏程: "一种新型网页篡改检测技术", 《绍兴文理学院学报(自然科学)》 * |
樊震 等: "基于PE文件结构异常的未知病毒检测", 《计算机技术与发展》 * |
Also Published As
Publication number | Publication date |
---|---|
CN108733664B (zh) | 2022-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9805099B2 (en) | Apparatus and method for efficient identification of code similarity | |
US9910985B2 (en) | Apparatus and method for identifying similarity via dynamic decimation of token sequence N-grams | |
Chikhi et al. | On the representation of de Bruijn graphs | |
EP2608096B1 (en) | Compression of genomic data file | |
US7834781B2 (en) | Method of constructing an approximated dynamic Huffman table for use in data compression | |
EP3072076B1 (en) | A method of generating a reference index data structure and method for finding a position of a data pattern in a reference data structure | |
CN105553937B (zh) | 数据压缩的***和方法 | |
Gayoso Martínez et al. | State of the art in similarity preserving hashing functions | |
CN106682506B (zh) | 一种病毒程序检测方法和终端 | |
CN111370064B (zh) | 基于simd的哈希函数的基因序列快速分类方法及*** | |
Yu et al. | Traversing the k-mer landscape of NGS read datasets for quality score sparsification | |
Haj Rachid et al. | A practical and scalable tool to find overlaps between sequences | |
CN112052413A (zh) | Url模糊匹配方法、装置和*** | |
Italiano et al. | Compressed weighted de Bruijn graphs | |
CN112926647B (zh) | 模型训练方法、域名检测方法及装置 | |
Maniscalco et al. | Faster lightweight suffix array construction | |
WO2018055160A1 (en) | System level testing of entropy encoding | |
CN1691581A (zh) | 基于特征值的多模式匹配算法及硬件实现 | |
CN107251015B (zh) | 高效地检测用户证书 | |
CN108733664A (zh) | 一种文件归类方法及装置 | |
Ghosh et al. | Pakman: Scalable assembly of large genomes on distributed memory machines | |
CN113987486A (zh) | 一种恶意程序检测方法、装置及电子设备 | |
CN110287147B (zh) | 一种字符串排序方法及装置 | |
Bille et al. | Hierarchical relative lempel-ziv compression | |
CN105095752B (zh) | 病毒数据包的识别方法、装置及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |