一种文件类型识别方法及系统与流程

文档序号:11808031阅读:594来源:国知局
一种文件类型识别方法及系统与流程
本发明涉及文件类型识别技术领域,特别是涉及一种文件类型识别方法及系统。

背景技术:
随着网络的发展,人们越来越多的使用网络进行信息的传输,这也带来了使用网络进行信息传输的安全问题。在网络信息传输中,网络设备一般将所传输的信息整合成某种文件格式。在计算机或其他网络设备接收到另一网络设备经网络发送的文件后,一般会对该文件进行检测,如果该文件的类型能够识别,且是安全的文件类型,那么接收端网络设备就可以进行文件的后续接收和使用。当识别出该文件的类别不属于安全的文件类型时,就可以进行报警等处理。然而,当网络所传输的文件类型无法被识别时,用户需要从互联网上查找能够识别该类文件类型的工具,较为繁琐且成功率低。并且,现有的安全机制下,为了尽可能的保护网络设备的安全,一般将无法识别的文件类型也作为不安全文件来进行处理,导致部分安全信息,由于无法识别文件类型,而无法接收。

技术实现要素:
为解决上述技术问题,本发明实施例提供一种文件类型识别方法及系统,以更有效的识别文件类型,技术方案如下:一种文件类型识别方法,包括:提供用于更新文件类型配置文件中文件特征参数的修改界面;接收用户通过所述修改界面输入的文件特征参数并添加到相应的文件类型配置文件中,得到更新后的文件类型配置文件;将所述更新后的文件类型配置文件加载到状态机中,使状态机中的文件特征参数得到更新,以便所述状态机根据更新后的文件特征参数进行文件类型的识别。优选的,将所述更新后的文件类型配置文件加载到状态机中,包括:控制所述状态机进行初始化;所述状态机初始化完成后,对所述文件类型配置文件进行编译,生成目标程序;将所述目标程序加载到所述状态机中。优选的,当所述状态机的文件类型识别失败时,控制报警模块进行报警处理。优选的,所述文件特征参数包括:文件类型、和特征字信息。优选的,所述特征字信息包括:特征字类型、特征字内容、特征字长度和特征字偏移量。优选的,所述文件类型配置文件为可扩展标记语言XML配置文件。优选的,所述修改界面为Web页面或者命令行界面。本发明还提供了一种文件类型识别系统,包括:修改界面提供模块、文件特征参数添加模块、配置文件加载模块和状态机,所述修改界面提供模块,用于提供用于更新文件类型配置文件中文件特征参数的修改界面;所述文件特征参数添加模块,用于接收用户通过所述修改界面输入的文件特征参数并添加到相应的文件类型配置文件中,得到更新后的文件类型配置文件;所述配置文件加载模块,用于将所述更新后的文件类型配置文件加载到状态机中,使状态机中的文件特征参数得到更新,以便所述状态机根据更新后的文件特征参数进行文件类型的识别。优选的,所述配置文件加载模块包括:状态机初始化子模块、编译子模块和程序加载子模块,所述状态机初始化子模块,用于控制所述状态机进行初始化;所述编译子模块,用于在所述状态机初始化完成后,对所述文件类型配置文件进行编译,生成目标程序;所述程序加载子模块,用于将所述目标程序加载到所述状态机中。优选的,还包括:报警模块,用于当所述状态机的文件类型识别失败时,进行报警处理。通过应用以上技术方案,本发明提供的一种文件类型识别方法及系统,可以提供修改界面以使用户输入文件特征参数,并将用户输入的文件特征参数添加到文件类型配置文件中,然后加载到状态机中以进行文件类型的识别。因此,用户可以对原有的文件类型配置文件中的文件特征参数进行修改,当某类型文件的文件特征参数出现更改或出现新类型文件时,用户就可以及时的更新状态机中的文件特征参数,以对更改后的文件或新类型文件进行识别。这样,用户就不用在互联网上进行识别工具的查找。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例提供的一种文件类型识别方法的流程示意图;图2为本发明公开的一种状态树;图3为本发明实施例提供的另一种文件类型识别方法的流程示意图;图4为本发明实施例提供的一种文件类型识别系统的结构示意图;图5为本发明实施例提供的另一种文件类型识别系统中配置文件加载模块的结构示意图;图6为本发明实施例提供的另一种文件类型识别系统的结构示意图。具体实施方式为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。如图1所示,本发明实施例提供的一种文件类型识别方法,包括:S101、提供用于更新文件类型配置文件中文件特征参数的修改界面;其中,所述文件特征参数可以包括:特征字信息,当然也可以包括扩展名。容易理解的是,大部分的文件类型都可以根据文件的扩展名进行识别,如Word文件的扩展名为“.doc”。使用扩展名进行文件类型的识别较为简单,但同时也存在准确性低的问题。可以理解的是,很多文件的扩展名都是可以进行修改的。当某文件的扩展名被刻意修改为与该文件实际类型不符的类型后,如果仅以扩展名进行文件类型的识别,将识别该文件的类型为与该文件实际类型不符的类型,这样在后续的文件使用中将带来很多的问题。举例来说,将Word文件的扩展名“.doc”修改为图像文件格式“.jpg”,这样电子设备将识别该文件为图像文件并默认使用图像软件进行打开,于是造成文件打开的失败。因此,同时使用扩展名和特征字信息进行文件类型的识别可以提高识别的准确性。当然,当识别文件扩展名失败或某些文件不具有扩展名时,也可以仅使用特征字信息进行文件类型的识别。当然,在考虑到扩展名识别准确性低的情况下,也可以不使用扩展名进行文件类型的识别或将扩展名识别作为对使用特征字信息进行文件类型识别的校验。当使用特征字信息识别出的文件类型与使用扩展名识别出的文件类型不符时,可以产生一个告知文件类型与扩展名不符的信息,以提示用户进行处理。其中,所述特征字信息可以包括:特征字类型、特征字内容、特征字长度和特征字偏移量。需要说明的是,特征字类型是唯一标识文件类型特征的编码方式,一般可以分为字符串和十六进制。特征字内容是唯一标识文件类型的魔鬼数字,根据特征字类型,特征字内容可以为字符串或16进制串。特征字长度是特征字内容的长度。特征字偏移量为特征字出现在文件内容中的位置。其中,特征字信息可以有多个,在文件类型识别过程中,如果可以匹配到任意个特征字信息,则可识别出该文件的类型。在实际应用中,可以将文件特征参数与文件类型进行对应,当与第一文件类型对应的文件特征参数与所识别的第一文件的特征参数相匹配时,就可以识别该第一文件为第一文件类型。当然,将文件类型作为文件特征参数的一部分输入文件类型配置文件中也是可以的。其中,所述修改界面可以为Web页面。在实际应用中,用户一般习惯通过Web页面对系统进行配置,将当前的文件类型配置文件以一定的方式格式化,通过Web的方式呈现,将使配置变得直观、易理解,操作起来也很方便、简单。当然,所述修改界面也可以为命令行界面。通过命令输入界面进行修改时,可针对性的直接选择需要修改的文件类型,或者某个文件类型的某种特征字信息进行修改,操作直接快速、针对性强。S102、接收用户通过所述修改界面输入的文件特征参数并添加到相应的文件类型配置文件中,得到更新后的文件类型配置文件;其中,所述文件类型配置文件中保存系统必需的配置信息,使用配置文件保存文件特征参数,通过修改配置文件就可以调整文件类型识别功能的准确性。配置文件的类型可以为config文件、INI文件、XML文件等等。其中,可扩展标记语言XML文件结构清晰、表达能力强,有良好的可扩展性,方便于不同系统之间信息的传输,所以采用XML文件作为本系统的配置文件。容易理解的是,配置文件的类型可以为Xml、html等脚本语言,这种配置文件各种平台通用,可移植性好。在实现上,几乎所有的程序都能处理xml这样的配置文件,当需要增加新的文件类型特征时,按照配置文件的内容提供信息,不需要更改代码,就可以重新读取配置文件,增加用户新的需求,维护性好。为方便理解,下面公开一种XML配置文件中的内容:<File><Type>CAD文件</Type>类型为CAD文件<Extension>.dwg</Extension>扩展名为.dwg<Description>CAD文件</Description>描述信息为“CAD文件”<CharacterList>文件特征列表为以下内容<CharacterType>bin</CharacterType>特征字类型为十六进制<Character>0x4D534346</Character>特征字内容为0x4D534346<Length>4</Length>征字长度为4字节<Offset>0</Offset>特征字偏移量为0</CharacterList>文件列表结束<Action>block</Action>响应类型为阻断</File>其中:Type字段代表文件类型,如pdf、doc、ppt、CAD等;Extension字段代表文件扩展名(可以没有),如.doc、.pdf等;Description字段代表描述信息;CharacterList字段代表文件特征列表;CharacterType字段代表特征字类型,字符串(string)或十六进制(bin);Character字段代表特征字内容,string类型的内容或16进制串的内容,如:pdf文件的特征字内容为十六进制0x25504446;Length字段代表特征字长度;Offset字段代表特征字偏移量;Action字段代表响应类型,告警(alert)或阻断(block)等;S103、将所述更新后的文件类型配置文件加载到状态机中,使状态机中的文件特征参数得到更新,以便所述状态机根据更新后的文件特征参数进行文件类型的识别。状态机是一种编译后的用来匹配预定义的模式集合的数据结构,可以在文件识别中应用:将文件特征参数加载到状态机中后,就可以使用状态机进行文件类型的识别,并根据不同的状态进行处理。具体的,可以在树状结构的状态机中设置多个状态,具这样当某一状态与所要匹配的对象匹配时,就可以按照状态树的节点分布进行状态转移。如图2所示,该状态树包括一开始状态000,三个最终状态:第四状态004、第五状态005和第六状态006,最终状态用于指示对于特定类型文件的处理方式,三个中间状态:第一状态001、第二状态002和第三状态003,中间状态用于指示文件类型。举例来说,第一状态001中的文件特征参数为第一类型文件的文件特征参数;第二状态002中的文件特征参数为第二类型文件的文件特征参数;第三状态003中的文件特征参数为第三类型文件的文件特征参数中。当电子设备所要识别的文件为第一类型文件时,第一状态001中的文件特征参数会与第一类型文件的文件特征参数相匹配,于是识别出所要识别的文件为第一类型文件,第一状态001向最终状态第四状态004转移。其中,第四状态004根据第一状态001所可以识别的文件类型进行设置,如:第四状态004为报警信号的发出或阻止接收的信号发出等。如图3所示,本发明实施例提供的另一种文件类型识别方法中,步骤S103可以包括:S201、控制所述状态机进行初始化;具体的,初始化可以包括如下内容:预先分配状态机的内存、设置状态机的编译参数。S202、所述状态机初始化完成后,对所述文件类型配置文件进行编译,生成目标程序;其中,编译后可以将预先定义好的模式集合编译成用来实现匹配的数据结构。S203、将所述目标程序加载到所述状态机中。这样,更新后的文件类型配置文件中的内容就可以加载到状态机中,从而用于文件类型的识别。其中,当所述状态机的文件类型识别失败时,控制报警模块进行报警处理。图3所示的一种文件类型识别方法中步骤S101和S102和图1所示的一种文件类型识别方法中步骤S101和步骤S102相同,不再累述。本发明提供的一种文件类型识别方法,可以提供修改界面以使用户输入文件特征参数,并将用户输入的文件特征参数添加到文件类型配置文件中,然后加载到状态机中以进行文件类型的识别。因此,用户可以对原有的文件类型配置文件中的文件特征参数进行修改,当某类型文件的文件特征参数出现更改或出现新类型文件时,用户就可以及时的更新状态机中的文件特征参数,以对更改后的文件或新类型文件进行识别。这样,用户就不用在互联网上进行识别工具的查找。相应于上面的方法实施例,本发明还提供一种文件类型识别系统。如图4所示,本发明实施例提供的的一种文件类型识别系统,包括:修改界面提供模块100、文件特征参数添加模块200、配置文件加载模块300和状态机400,修改界面提供模块100,用于提供用于更新文件类型配置文件中文件特征参数的修改界面;其中,所述文件特征参数可以包括:特征字信息,当然,也可以包括扩展名。其中,所述特征字信息可以包括:特征字类型、特征字内容、特征字长度和特征字偏移量。其中,所述修改界面可以为Web页面。文件特征参数添加模块200,用于接收用户通过所述修改界面输入的文件特征参数并添加到相应的文件类型配置文件中,得到更新后的文件类型配置文件;其中,所述文件类型配置文件可以为可扩展标记语言XML配置文件。配置文件加载模块300,用于将所述更新后的文件类型配置文件加载到状态机400中,使状态机400中的文件特征参数得到更新,以便所述状态机400根据更新后的文件特征参数进行文件类型的识别。状态机是一种编译后的用来匹配预定义的模式集合的数据结构,可以在文件识别中应用:将文件特征参数加载到状态机中后,就可以使用状态机进行文件类型的识别。具体的,可以在树状结构的状态机中设置多个状态,具这样当某一状态与所要匹配的对象匹配时,就可以按照状态树的节点分布进行状态转移。如图5所示,本发明实施例提供的另一种文件类型识别系统中,所述配置文件加载模块300可以包括:状态机初始化子模块310、编译子模块320和程序加载子模块330,所述状态机初始化子模块310,用于控制所述状态机进行初始化;所述编译子模块320,用于在所述状态机初始化完成后,对所述文件类型配置文件进行编译,生成目标程序;所述程序加载子模块330,用于将所述目标程序加载到所述状态机中。如图6所示,本发明实施例提供的另一种文件类型识别系统还可以包括:报警模块500,用于当所述状态机的文件类型识别失败时,进行报警处理。本发明提供的一种文件类型识别系统,可以提供修改界面以使用户输入文件特征参数,并将用户输入的文件特征参数添加到文件类型配置文件中,然后加载到状态机中以进行文件类型的识别。因此,用户可以对原有的文件类型配置文件中的文件特征参数进行修改,当某类型文件的文件特征参数出现更改或出现新类型文件时,用户就可以及时的更新状态机中的文件特征参数,以对更改后的文件或新类型文件进行识别。这样,用户就不用在互联网上进行识别工具的查找。对于系统实施例而言,由于其基本相应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。在本发明所提供的几个实施例中,应该理解到,所揭露的系统和方法,在没有超过本发明的精神和范围内,可以通过其他的方式实现。当前的实施例只是一种示范性的例子,不应该作为限制,所给出的具体内容不应该限制本发明的目的。例如,所述单元或子单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或多个子单元结合一起。另外,多个单元可以或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所描述系统和方法以及不同实施例的示意图,在不超出本发明的范围内,可以与其它系统,模块,技术或方法结合或集成。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1