CN111581955A - 文本指纹提取和校验方法、装置 - Google Patents
文本指纹提取和校验方法、装置 Download PDFInfo
- Publication number
- CN111581955A CN111581955A CN201910118177.4A CN201910118177A CN111581955A CN 111581955 A CN111581955 A CN 111581955A CN 201910118177 A CN201910118177 A CN 201910118177A CN 111581955 A CN111581955 A CN 111581955A
- Authority
- CN
- China
- Prior art keywords
- text
- fingerprint
- window
- length
- hash value
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000000605 extraction Methods 0.000 title claims abstract description 18
- 238000012795 verification Methods 0.000 title claims abstract description 13
- 239000012634 fragment Substances 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 101150090313 abc1 gene Proteins 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Collating Specific Patterns (AREA)
Abstract
本申请提供一种文本指纹提取和校验方法、装置,具体地包括:根据步长,将窗口在所述文本上滑动多次得到多个文本片段;对每个文本片段计算哈希值,得到所述多个文本片段的哈希值集合,即使用了滑动窗口的方法来提取文本指纹信息,增加了指纹的信息量,可以大大增加了指纹识别文本时的抗干扰能力。
Description
技术领域
本发明涉及数据安全技术领域,尤其涉及一种文本指纹提取和校验方法、装置。
背景技术
在数据安全管理领域中,对文本内容的识别能力是一项极重要的能力,因为要保护文本数据内容首先要识别文本数据内容。
目前常规的文本内容识别有关键词匹配和正则表达式匹配,但是这些方法有很大的局限性,例如,对待识别的文本进行简单地删改之后,这些匹配方法就会失效,导致无法正常对要保护文本数据进行有效的保护了。
发明内容
为了解决上述问题,本发明提供一种文本指纹提取和校验方法、装置,大大增加文本指纹的抗干扰性。
本发明实施例提供一种文本指纹提取方法,包括:
将窗口在所述文本上根据步长按序滑动多次得到多个文本片段,所述窗口的长度大于所述步长的长度,且二者之比值大于等于预设阈值;
对每个文本片段计算哈希值,得到所述多个文本片段的哈希值集合;
所述多个文本片段的哈希值集合为所述文本的指纹。
可选地,所述的方法还包括:
根据所述文本的长度以及预设参数,确定所述窗口的宽度。
可选地,所述的方法还包括:
将所述窗口的宽度除以大于等于预设阈值的常数,确定所述窗口在所述文本上滑动的步长。
可选地,所述的方法还包括:
根据所述文本的长度和所述步长,确定所述窗口在所述文本上滑动的次数。
可选地,所述的方法还包括:
所述文件片段的长度与所述窗口的长度相同,且每两个相邻的文件片段之间不同的字节长度为所述步长的长度。
本申请还提供一种文本指纹校验方法,包括:
计算待识别文本的指纹;
将所述待识别文本的指纹与目标文本的指纹进行匹配;
若匹配成功则确定所述待识别文本为所述目标文本;
所述待识别文本的指纹是所述待识别文本的多个文本片段的哈希值集合,所述目标文本的指纹是所述目标文本的多个文本片段的哈希值集合。
可选地,将所述待识别文本的指纹与目标文本的指纹进行匹配包括:
将所述待识别文本的哈希值集合中每一个哈希值与所述目标文本的哈希值集合中哈希值进行匹配,确定匹配成功的哈希值个数;
根据所述匹配成功的哈希值个数与所述目标文本的哈希值集合中哈希值个数之比例,确定所述待识别文本与所述目标文本的匹配结果。
可选地,所述的方法还包括:
若所述匹配成功的哈希值个数与所述目标文本的哈希值集合中哈希值个数之比例大于等于所述待识别文本的步长与窗口宽度之比例,则确定所述待识别文本与所述目标文本的匹配成功,否则匹配不成功。
可选地,所述的方法还包括:
根据所述待识别文本的长度以及预设参数,确定所述待识别文本的窗口宽度;
根据所述窗口宽度以及预设参数,确定所述窗口在所述待识别文本上滑动的步长。
本申请还提供一种文本指纹提取装置,包括:
确定模块,用于根据步长,将窗口在所述文本上按次序滑动多次得到多个文本片段,所述窗口的长度大于所述步长的长度,且二者之比值大于等于预设阈值;
计算模块,用于对每个文本片段计算哈希值,得到所述多个文本片段的哈希值集合;
所述多个文本片段的哈希值集合为所述文本的指纹。
本申请还提供一种文本指纹校验装置,包括:
计算模块,用于计算待识别文本的指纹;
匹配模块,用于将所述待识别文本的指纹与目标文本的指纹进行匹配;若匹配成功则确定所述待识别文本为所述目标文本;
所述待识别文本的指纹是所述待识别文本的多个文本片段的哈希值集合,所述目标文本的指纹是所述目标文本的多个文本片段的哈希值集合。
本申请还提供一种服务器,包括存储器、处理器以及通信组件;
所述存储器,用于存储计算机程序;
所述处理器与所述存储器和通信组件耦合,用于执行计算机程序,以用于执行上述文本指纹提取方法,或者执行上述文本指纹校验方法。
本申请还提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被执行时能够实现文本指纹提取方法,或者实现文本指纹校验方法。
本发明实施例根据步长,将窗口在所述文本上按次序滑动多次得到多个文本片段;由于窗口长度远大于步长长度,因此,窗口在文本上连续滑动两次得到相邻的两个文本片段中,只有1个步长范围内的字节是不同,其余字节是相同的,这样在计算每个文本片段的哈希值时基本不会发生变化,因此文件指纹也变化很小。对每个文本片段计算哈希值,得到所述多个文本片段的哈希值集合,即使用了滑动窗口的方法来提取文本指纹信息,增加了指纹的信息量,可以大大增加了指纹识别文本时的抗干扰能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的文本指纹提取方法的流程示意图;
图2为本发明一实施例提供的窗口滑动示意图;
图3为本发明一实施例提供的文本指纹校验方法的流程示意图;
图4为本发明一实施例提供的文本指纹提取装置的结构示意图;
图5为本发明一实施例提供的文本指纹校验装置的结构示意图;
图6为本发明一实施例提供的服务器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。
通常,恶意者可能会对文件执行以下操作来对抗文本数据的检测:
1.在原文文本内容中删除部分内容;
2.在原文本内容头部、中间或尾部插入等比例其它文本;
3.在原文本中插入大量其它文本淹没原文本内容;
4.打乱文本中的段落;
因此,在数据安全技术领域中,对文本指纹的抗干扰能力和识别准确率有很高的要求,而现有的指纹提取方案在抗干扰能力上都不理想,而发明人在实现本发明的过程中发现现有的指纹提取方案存在两方面问题:
1.在文件分块过程存在数据不对齐的问题,如果对抗操作正好使文件与源本文本的本块发生错位,计算出来的指纹差异就会很大。如:源文本为“12345678”,按固定长度(如4)为尺寸分成两块是“1234”,"5678";如果这时插入一些干扰文本“abc12345678”,再分块就变成了“abc1”,"2345","678"这样指纹就会有很大不同。
2.在指纹的比较过程中以多个块为一个单元进行计算,单元内任意块的改变都会影响到匹配,这样大大扩大了干扰操作带来的对抗效果。
图1为本发明一实施例提供的文本指纹提取方法的流程示意图,如图1所示:
101、根据步长,将窗口在所述文本上按序滑动多次得到多个文本片段;
其中,本发明实施例中的窗口是指文本的窗口,可以根据文本的长度以及预设参数,确定所述窗口的宽度。例如,根据公式Fl=(Tl÷800+1)×8,确定所述文本的窗口的宽度;其中,T1表示所述文本的长度,Fl表示所述文本的窗口的宽度。
本申请为了克服现有技术中文件指纹抗干扰性差的问题,本发明实施例中,设置上述窗口的长度远大于步长的长度,且二者之比值大于等于预设阈值。
本发明实施例中,将所述窗口的宽度除以大于等于预设阈值的常数,来确定所述窗口在所述文本上滑动的步长。例如,利用公式Step=Fl÷4,其中,Step表示步长,Fl表示窗口的宽度。需要说明的是,4为预设阈值,实际应用中,可以将窗口长度除以大于预设阈值4的任意常数,如5,6,7,8等,窗口的长度越大于步长的长度,文件指纹的改变越小。
图2为本发明一实施例提供的窗口滑动示意图,如图2所示,假设窗口长度为4个字节,步长为1个字节,例如,在源文本12345678的头部插入了其他文本abc,按照步长将窗口在原本文上按次序滑动可以将原文件分成"abc1","bc12","c123","1234","2345","3456","4567","5678"八个文本片段,其中,每相邻的两个文本片段中,有3个字节是相同的,只有1个步长范围内的字节是不同,这样在算每个文本片段的哈希值时基本不会发生变化。
需要说明的是,因为窗口在文本上每滑动一次得到一个文本片段,该文本片段的长度与窗口的长度相同。为了增加文本指纹的信息量,增加指纹识别文本时的抗干扰能力,可以通过滑动窗口得到文本的多个文本片段来提取文本的指纹,因此本发明实施例中需要确定上述窗口在文本上滑动的总次数,例如,根据所述文本的长度和所述步长,利用公式N=Tl÷Step+1,确定窗口在文本上滑动的总次数N。
102、对每个文本片段计算哈希值,得到所述多个文本片段的哈希值集合;
其中,所述多个文本片段的哈希值集合为所述文本的指纹。
根据所述步长,在所述文本进行窗口滑动,所述窗口每滑动一次把窗口内的文本片段添加到文本集合S中;
滑动N次后形成文本集合S={x0~xn};x是其中的一个文件片断,所述文件片断长度为所述窗口的宽度Fl,其中0≤n<N。
根据函数Fingerprin={x∈S,F_HASH(x)},对文本集合S中的每一项求哈希值得到集合Fingerprin,即作为文本的指纹。
因此,本发明实施例根据步长,将窗口在所述文本上滑动多次得到多个文本片段;对每个文本片段计算哈希值,得到所述多个文本片段的哈希值集合,即使用了滑动窗口的方法来提取文本指纹信息,增加了指纹的信息量,可以大大增加了指纹识别文本时的抗干扰能力。
下面通过举例详细说明文本指纹计算过程与方法:
T:待提取指纹的文本流,UNICODE编码;
Tl:文本长度Fl:窗口宽度;
Step:滑动距离;
N:文本T总的窗口数,即窗口在文件T上滑动的总步数;
F_HASH(X):HASH算法,X是待HASH的输入;
F_HASH_CMP(x,y):HASH比较算法,函数输出两个HASH值相同的比率;
F_HASH_RATE:HASH算法中两个HASH值相同的最佳比率;
S={x0~xn}:通过Step在文本T上滑动后形成的窗口集合;
Fingerprin:文本T的指纹。
FingerprinCreate(T):对文本T提取指纹的方法;
假设要对文本T提取指纹,Tl是文本的长度:
1.第一步求得计算文本指纹时窗口的宽度Fl,计算公式如下:
Fl=(Tl÷800+1)×8;
2.第二步求得计算文本指纹时窗口在文件T上滑动的步长Step,计算公式如下:Step=Fl÷4;
3.第三步求得计算文本指纹时文本T总的窗口数(窗口滑动总次数),即窗口在文件T上滑动的总步数N,计算公式如下:N=Tl÷Step+1;
4.第四步使用步长Step在文本T进行窗口滑动;
窗口每滑动一次把窗口内的文本做为元素添加到集合S中;
滑动N次后形成集S={x0~xn};
a.x是其中的一个文件片断;
b.文件片断长度为Fl;
c.其中0≤n<N;
5.第四步对集合S中的每一项求哈希得到:
Fingerprin={x∈S,F_HASH(x)};
6.返回集合Fingerprin作为函数的结果,即作为文本T的最终指纹。
针对文本被干扰后,例如在源文本12345678的头部插入了其他文本abc,在指纹提取过程中使用本发明所述的滑动窗口方法,根据本发明所述窗口、步长以及滑动总次数的计算公式,可以得到本发明实施例会将原本文分成"abc1","c123","1234","3456","5678"五个文本片段,这样可以解决了数据不对齐而带来与原文本计算指纹时窗口内容完全被打乱的问题。
其次,在哈希HASH计算上使用模糊HASH,窗口内容变化的敏感度低,这样针对窗口”1234“变为”1a34"的变化也能识别。
因此,本发明实施例文本指纹提取的方法,在发生上述情况及几种情况的干扰组合后,通过与源文本指纹对比,仍能保证很高的识别率,很大程度增加文本指纹的抗干扰性。
图3为本发明一实施例提供的文本指纹校验方法的流程示意图,如图3所示:
201、计算待识别文本的指纹;
其中,所述待识别文本的指纹是所述待识别文本的多个文本片段的哈希值集合,具体可以利用图1所示实施例所述的文本指纹提取方法得到,在此不再赘述。
202、将所述待识别文本的指纹与目标文本的指纹进行匹配;
所述目标文本的指纹是所述目标文本的多个文本片段的哈希值集合,具体可以利用图1所示实施例所述的文本指纹提取方法得到,在此不再赘述。
具体实现时,步骤202将所述待识别文本的指纹与目标文本的指纹进行匹配包括:
将所述待识别文本的哈希值集合中每一个哈希值与所述目标文本的哈希值集合中哈希值进行匹配,确定匹配成功的哈希值个数;
根据所述匹配成功的哈希值个数与所述目标文本的哈希值集合中哈希值个数之比例,确定所述待识别文本与所述目标文本的匹配结果;
若所述匹配成功的哈希值个数与所述目标文本的哈希值集合中哈希值个数之比例大于等于所述待识别文本的步长与窗口宽度之比例,则确定所述待识别文本与所述目标文本的匹配成功,否则匹配不成功。
203、若匹配成功则确定所述待识别文本为所述目标文本;
下面通过举例详细说明文本指纹校验过程与方法:
FingerprinCompare(Text,F):指纹校验方法,校验文本Text是否与文本F所代表的文本相似。
假设文本Text是待识别文件本内容;F是待匹配的目标文本所对应的指纹。
1.第一步先对文本Text求指纹Fs;计算方法如下:Fs=FingerprinCreate(Text);具体参考图1所示实施例部分相关内容;
2.第二步对Fs和F两个集合进行相似比较形成集合Cr,方法如下:
Cr={x∈F,y∈Fs,F_HASH_CMP(x,y)≥F_HASH_RATE}
详细说明:
a.在集合Fs中取得一个元素x(任一哈希值);
b.用x在集合F中任一哈希值进行匹配,确定匹配成功(查找符合条件)的元素;
查找方法例如为:F_HASH_CMP(x,y)≥F_HASH_RATE);
c.若找到匹配成功的元素,就将匹配成功的元素添加到Cr集合中;
d.回到步骤a,直到Fs中的元素都被遍历完后,流程结束;
e.最后求到的集合Cr中为匹配成功的元素个数(哈希值个数)。
其中,F_HASH_CMP和F_HASH_RATE与具体模糊HASH算法相关,本申请并不局限于某种固定模糊HASH算法。
3.第三步计算第二步中求得集合Cr的元素个数
CrLen=Length(Cr)
4.第四步计算F中的元素个数FLen=length(F);
5.第五步计算比较结果为公式为:
6.结果为1,则说明Text与指纹F所表示的文本存在很大相似性,结果为0,则说明两者不相似。
本发明实施例通过上述文本指纹提取的方法得到文本的指纹信息,增加了指纹的信息量,在发生文本的干扰后,由于哈希HASH计算上使用模糊HASH,窗口内容变化的敏感度低,针对个别窗口”1234“例如变为”1a34"的变化也能识别;进一步地,指纹比较计算过程中以命中窗口数为指标同时窗口保证一定的信息冗余,单个窗口内容的变化损坏对全局的影响通过与源文本指纹对比,仍能保证很高的识别率,很大程度增加文本指纹的抗干扰性。
图4为本发明实施例提供的一种文本指纹提取装置的结构示意图,如图3所示,包括:
确定模块,用于将窗口在所述文本上根据步长按序滑动多次得到多个文本片段,所述窗口的长度大于所述步长的长度,且二者之比值大于等于预设阈值;
计算模块,用于对每个文本片段计算哈希值,得到所述多个文本片段的哈希值集合;
所述多个文本片段的哈希值集合为所述文本的指纹。
可选地,计算模块,还用于根据所述文本的长度以及预设参数,确定所述窗口的宽度。
可选地,计算模块,还用于将所述窗口的宽度除以大于等于预设阈值的常数,确定所述窗口在所述文本上滑动的步长。
可选地,计算模块,还用于根据所述文本的长度和所述步长,确定所述窗口在所述文本上滑动的次数;
可选地,所述文件片段的长度与所述窗口的长度相同,且每两个相邻的文件片段之间不同的字节长度为所述步长的长度。
本实施例所示装置可以执行上述图1所示方法实施例,其实现原理和技术效果不再赘述。
图5为本发明实施例提供的一种文本指纹校验装置的结构示意图,如图4所示,包括:
计算模块,用于计算待识别文本的指纹;
匹配模块,用于将所述待识别文本的指纹与目标文本的指纹进行匹配;若匹配成功则确定所述待识别文本为所述目标文本;
所述待识别文本的指纹是所述待识别文本的多个文本片段的哈希值集合,所述目标文本的指纹是所述目标文本的多个文本片段的哈希值集合。
可选地,匹配模块,具体用于将所述待识别文本的哈希值集合中每一个哈希值与所述目标文本的哈希值集合中哈希值进行匹配,确定匹配成功的哈希值个数;根据所述匹配成功的哈希值个数与所述目标文本的哈希值集合中哈希值个数之比例,确定所述待识别文本与所述目标文本的匹配结果。
可选地,匹配模块,具体用于若所述匹配成功的哈希值个数与所述目标文本的哈希值集合中哈希值个数之比例大于等于所述待识别文本的步长与窗口宽度之比例,则确定所述待识别文本与所述目标文本的匹配成功,否则匹配不成功。
其中,计算模块,具体用于根据所述待识别文本的长度以及预设参数,确定所述待识别文本的窗口宽度;根据所述窗口宽度以及预设参数,确定所述窗口在所述待识别文本上滑动的步长。
本实施例所示装置可以执行上述图3所示方法实施例,其实现原理和技术效果不再赘述。
图5为本发明实施例提供的一种服务器的结构示意图,如图5所示,包括:存储器、处理器以及通信组件;
所述存储器,用于存储计算机程序;
所述处理器与所述存储器和通信组件耦合,用于执行计算机程序,以用于执行图1所示实施例所述的方法,或者执行图2所示实施例所述的方法,在此不再赘述。
进一步,如图6所示,服务器还包括:显示器、电源组件、音频组件等其它组件。图6中仅示意性给出部分组件,并不意味着服务器只包括图6所示组件。
本实施例所示装置可以执行上述图1或图3所示方法实施例,其实现原理和技术效果不再赘述。
相应地,本发明实施例还提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被执行时能够图1所示实施例所述的方法,或者执行图3所示实施例所述的方法,在此不再赘述。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (13)
1.一种文本指纹提取方法,其特征在于,包括:
将窗口在所述文本上根据步长按序滑动多次得到多个文本片段,所述窗口的长度大于所述步长的长度,且二者之比值大于等于预设阈值;
对每个文本片段计算哈希值,得到所述多个文本片段的哈希值集合;
所述多个文本片段的哈希值集合为所述文本的指纹。
2.根据权利要求1所述的方法,其特征在于,还包括:
根据所述文本的长度以及预设参数,确定所述窗口的宽度。
3.根据权利要求2所述的方法,其特征在于,还包括:
将所述窗口的宽度除以大于等于预设阈值的常数,确定所述窗口在所述文本上滑动的步长。
4.根据权利要求3所述的方法,其特征在于,还包括:
根据所述文本的长度和所述步长,确定所述窗口在所述文本上滑动的次数。
5.根据权利要求1所述的方法,其特征在于,包括:
所述文件片段的长度与所述窗口的长度相同,且每两个相邻的文件片段之间不同的字节长度为所述步长的长度。
6.一种文本指纹校验方法,其特征在于,包括:
计算待识别文本的指纹;
将所述待识别文本的指纹与目标文本的指纹进行匹配;
若匹配成功则确定所述待识别文本为所述目标文本;
所述待识别文本的指纹是所述待识别文本的多个文本片段的哈希值集合,所述目标文本的指纹是所述目标文本的多个文本片段的哈希值集合。
7.根据权利要求6所述的方法,其特征在于,将所述待识别文本的指纹与目标文本的指纹进行匹配包括:
将所述待识别文本的哈希值集合中每一个哈希值与所述目标文本的哈希值集合中哈希值进行匹配,确定匹配成功的哈希值个数;
根据所述匹配成功的哈希值个数与所述目标文本的哈希值集合中哈希值个数之比例,确定所述待识别文本与所述目标文本的匹配结果。
8.根据权利要求7所述的方法,其特征在于,还包括:
若所述匹配成功的哈希值个数与所述目标文本的哈希值集合中哈希值个数之比例大于等于所述待识别文本的步长与窗口宽度之比例,则确定所述待识别文本与所述目标文本的匹配成功,否则匹配不成功。
9.根据权利要求8所述的方法,其特征在于,还包括:
根据所述待识别文本的长度以及预设参数,确定所述待识别文本的窗口宽度;
根据所述窗口宽度以及预设参数,确定所述窗口在所述待识别文本上滑动的步长。
10.一种文本指纹提取装置,其特征在于,包括:
确定模块,用于根据步长,将窗口在所述文本上按次序滑动多次得到多个文本片段,所述窗口的长度大于所述步长的长度,且二者之比值大于等于预设阈值;
计算模块,用于对每个文本片段计算哈希值,得到所述多个文本片段的哈希值集合;
所述多个文本片段的哈希值集合为所述文本的指纹。
11.一种文本指纹校验装置,其特征在于,包括:
计算模块,用于计算待识别文本的指纹;
匹配模块,用于将所述待识别文本的指纹与目标文本的指纹进行匹配;若匹配成功则确定所述待识别文本为所述目标文本;
所述待识别文本的指纹是所述待识别文本的多个文本片段的哈希值集合,所述目标文本的指纹是所述目标文本的多个文本片段的哈希值集合。
12.一种服务器,其特征在于,包括存储器、处理器以及通信组件;
所述存储器,用于存储计算机程序;
所述处理器与所述存储器和通信组件耦合,用于执行计算机程序,以用于执行权利要求1-5中任一项所述的方法,或者执行权利要求6-9任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被执行时能够实现权利要求1-5中任一项所述的方法,或者实现权利要求6-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910118177.4A CN111581955A (zh) | 2019-02-15 | 2019-02-15 | 文本指纹提取和校验方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910118177.4A CN111581955A (zh) | 2019-02-15 | 2019-02-15 | 文本指纹提取和校验方法、装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111581955A true CN111581955A (zh) | 2020-08-25 |
Family
ID=72124186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910118177.4A Pending CN111581955A (zh) | 2019-02-15 | 2019-02-15 | 文本指纹提取和校验方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111581955A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102982180A (zh) * | 2012-12-18 | 2013-03-20 | 华为技术有限公司 | 数据存储方法及设备 |
CN105701085A (zh) * | 2016-01-13 | 2016-06-22 | 湖南通远网络科技有限公司 | 一种网络查重方法及系统 |
CN105740266A (zh) * | 2014-12-10 | 2016-07-06 | 国际商业机器公司 | 用于数据去重的方法和设备 |
CN106250777A (zh) * | 2016-07-26 | 2016-12-21 | 合肥赛猊腾龙信息技术有限公司 | 数据防泄露系统中一种文档指纹提取及匹配方法 |
CN108073815A (zh) * | 2017-12-29 | 2018-05-25 | 哈尔滨安天科技股份有限公司 | 基于代码切片的家族判定方法、系统及存储介质 |
CN109145080A (zh) * | 2018-07-26 | 2019-01-04 | 新华三信息安全技术有限公司 | 一种文本指纹获得方法及装置 |
-
2019
- 2019-02-15 CN CN201910118177.4A patent/CN111581955A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102982180A (zh) * | 2012-12-18 | 2013-03-20 | 华为技术有限公司 | 数据存储方法及设备 |
CN105740266A (zh) * | 2014-12-10 | 2016-07-06 | 国际商业机器公司 | 用于数据去重的方法和设备 |
CN105701085A (zh) * | 2016-01-13 | 2016-06-22 | 湖南通远网络科技有限公司 | 一种网络查重方法及系统 |
CN106250777A (zh) * | 2016-07-26 | 2016-12-21 | 合肥赛猊腾龙信息技术有限公司 | 数据防泄露系统中一种文档指纹提取及匹配方法 |
CN108073815A (zh) * | 2017-12-29 | 2018-05-25 | 哈尔滨安天科技股份有限公司 | 基于代码切片的家族判定方法、系统及存储介质 |
CN109145080A (zh) * | 2018-07-26 | 2019-01-04 | 新华三信息安全技术有限公司 | 一种文本指纹获得方法及装置 |
Non-Patent Citations (2)
Title |
---|
刘文龙 等: "数字指纹生成方案及关键算法研究", pages 2 * |
韩红旗 著: "《语义指纹著者姓名消歧理论及应用》", pages: 104 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111382430B (zh) | 用于对计算机系统的对象进行分类的系统和方法 | |
EP2304649B1 (en) | Frame based video matching | |
CN111382434B (zh) | 用于检测恶意文件的系统和方法 | |
WO2021227831A1 (zh) | 威胁情报的主题检测方法、装置和计算机存储介质 | |
CN101807208B (zh) | 视频指纹快速检索方法 | |
Gayoso Martínez et al. | State of the art in similarity preserving hashing functions | |
CN109271614B (zh) | 一种数据查重方法 | |
US11281714B2 (en) | Image retrieval | |
CN112329443B (zh) | 一种确定新词的方法、装置,计算机设备和介质 | |
Zhang et al. | Effective and fast near duplicate detection via signature‐based compression metrics | |
CN111581955A (zh) | 文本指纹提取和校验方法、装置 | |
CN109670305A (zh) | 一种病毒文件识别方法 | |
CN115565222A (zh) | 人脸识别方法、人脸识别系统、终端设备及存储介质 | |
CN111159996B (zh) | 基于文本指纹算法的短文本集合相似度比较方法及系统 | |
CN113011301A (zh) | 一种活体识别方法、装置及电子设备 | |
US12007949B2 (en) | Apparatus and method for detecting target file based on network packet analysis | |
US20220365909A1 (en) | Apparatus and method for detecting target file based on network packet analysis | |
US11822803B2 (en) | Method, electronic device and computer program product for managing data blocks | |
CN115878848B (zh) | 一种对抗性视频样本生成方法、终端设备及介质 | |
US20230259655A1 (en) | Data storage arrangement and method for anonymization aware differential compression | |
KR102158317B1 (ko) | 2차 q-그램에 대한 핑거프린트를 이용한 순위패턴매칭 알고리즘 | |
CN118018223A (zh) | 攻击检测的方法、装置、存储介质及电子设备 | |
CN114492427A (zh) | 一种数据恢复方法及终端 | |
CN112214985A (zh) | 一种文件类别检测方法、装置、存储介质及电子设备 | |
CN115720159A (zh) | 一种xss注入攻击检测方法、装置、设备及存储介质 |
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 |