一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于文档指纹的文本检测方法及系统与流程

2022-03-26 10:11:29 来源:中国专利 TAG:


1.本技术涉及网络安全技术领域,具体而言,涉及一种基于文档指纹的文本检测方法及系统。


背景技术:

2.目前,电子文档、数字化产品在办公、教学等工作中给人们方便的同时,也存在着巨大的安全风险。现有的数字版权保护技术主要基于现代密码学理论,如加密系统、数字签名系统等。它主要解决的是数字产品在存储和传输过程中安全问题。但是一旦这些数字产品内容被解密后,就可以被复制、传播和泄漏,必须使用基于内容识别的数据防泄漏(dlp,data leakage prevention)技术进行防护。
3.现有技术中,传统的数据防泄漏技术主要依赖于关键词匹配和正则表达式匹配,这些方法有很大的局限性。比如对待识别的数据进行简单地增删改后,这些传统的匹配方法就会失效,导致无法正常对敏感数据进行有效的防护了。“文档指纹”匹配可确保准确检测以文档形式存储的非结构化数据,文件格式包括microsoft word文件、powerpoint文件、pdf文档等等。受保护的文档包括财务、并购文档,以及其他敏感或专有信息。dlp系统会利用指纹算法为文档创建指纹特征,以匹配原始文档的已检索部分、草稿或不同版本的受保护文档。


技术实现要素:

4.本技术实施例的目的在于提供一种基于文档指纹的文本检测方法、系统、电子设备及计算机可读存储介质,可以防止机密文档泄漏,实现提高文档检测能力的技术效果。
5.第一方面,本技术实施例提供了一种基于文档指纹的文本检测方法,包括:
6.获取待检测文档的文本数据;
7.对所述文本数据进行统一编码格式处理,获得统一化文本数据;
8.通过预设符号分割所述统一化文本数据,获得所述待检测文档的指纹库数据;
9.通过模板指纹库数据检测所述待检测文档的指纹库数据,获得检测结果。
10.在上述实现过程中,该基于文档指纹的文本检测方法可以对常见格式文档进行文本提取,并将文本转化为统一的编码格式,同时通过文本内容中的特殊符号分割文本,进而获得待检测文档的指纹库数据,可保证指纹可靠;从而,通过模板指纹库数据检测待检测文档的指纹库数据,即使对待检测文档做出修改后依旧可以检测,根据检测结果可以知道待检测文档是否违规;因此,该基于文档指纹的文本检测方法可以防止机密文档泄漏,实现提高文档检测能力的技术效果。
11.进一步地,在所述通过模板指纹库数据检测所述待检测文档的指纹库数据,获得检测结果的步骤之前,还包括:
12.获取模板文档的模板文本数据;
13.对所述模板文本数据进行统一编码格式处理,获得统一化模板文本数据;
14.通过预设符号分割所述统一化模板文本数据,获得所述模板指纹库数据。
15.在上述实现过程中,对模板文档的处理过程与待检测文档的处理过程相同,分别获得模板指纹库数据、待检测文档的指纹库数据;将两个指纹库数据进行比对,进而判断该待检测文档是否违规。
16.进一步地,所述通过预设符号分割所述统一化文本数据,获得所述待检测文档的指纹库数据的步骤,包括:
17.通过换行符、逗号、句号中的一种或多种分割所述统一化文本数据,获得特征值数据;
18.将所述特征值数据的首位字符保存在结构体中并计算所述特征值数据的md5值,生成所述待检测文档的指纹库数据。
19.在上述实现过程中,对待检测文档的文本数据进行分析处理,转换成统一的编码格式之后,通过换行符、逗号、句号等特殊符号分割统一化文本数据,提取出特征值,将特征值的首位字符保存在结构体中,同时计算md5值,进而保存成指纹库数据。
20.进一步地,所述获取待检测文档的文本数据的步骤,包括:
21.通过tika算法获取所述待检测文档的文本数据。
22.第二方面,本技术实施例提供了一种基于文档指纹的文本检测系统,包括:
23.获取模块,用于获取待检测文档的文本数据;
24.统一编码模块,用于对所述文本数据进行统一编码格式处理,获得统一化文本数据;
25.文档指纹模块,用于通过预设符号分割所述统一化文本数据,获得所述待检测文档的指纹库数据;
26.检测模块,用于通过模板指纹库数据检测所述待检测文档的指纹库数据,获得检测结果。
27.进一步地,所述基于文档指纹的文本检测系统还包括:
28.模板获取模块,用于获取模板文档的模板文本数据;
29.统一编码模块还用于对所述模板文本数据进行统一编码格式处理,获得统一化模板文本数据;
30.文档指纹模块还用于通过预设符号分割所述统一化模板文本数据,获得所述模板指纹库数据。
31.进一步地,所述文档指纹模块包括:
32.分割单元,用于通过换行符、逗号、句号中的一种或多种分割所述统一化文本数据,获得特征值数据;
33.文档指纹生成单元,用于将所述特征值数据的首位字符保存在结构体中并计算所述特征值数据的md5值,生成所述待检测文档的指纹库数据。
34.进一步地,所述获取模块具体用于通过tika算法获取所述待检测文档的文本数据。
35.第三方面,本技术实施例提供的一种电子设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述的方法的步骤。
36.第四方面,本技术实施例提供的一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如第一方面任一项所述的方法。
37.第五方面,本技术实施例提供的一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行如第一方面任一项所述的方法。
38.本技术公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本技术公开的上述技术即可得知。
39.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
40.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
41.图1为本技术实施例提供的一种基于文档指纹的文本检测方法的流程示意图;
42.图2为本技术实施例提供的另一种基于文档指纹的文本检测方法的流程示意图;
43.图3为本技术实施例提供的基于文档指纹的文本检测系统的结构框图;
44.图4为本技术实施例提供的一种电子设备的结构框图。
具体实施方式
45.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
46.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
47.本技术实施例提供了一种基于文档指纹的文本检测方法、系统、电子设备及计算机可读存储介质,可以应用于文档防泄漏检测,例如防止机密文档外泄的场景中;该基于文档指纹的文本检测方法可以对常见格式文档(例如:word、excel、ppt、pdf等)进行文本提取,并将文本转化为统一的编码格式,同时通过文本内容中的特殊符号分割文本,进而获得待检测文档的指纹库数据,可保证指纹可靠;从而,通过模板指纹库数据检测待检测文档的指纹库数据,即使对待检测文档做出修改后依旧可以检测,根据检测结果可以知道待检测文档是否违规;因此,该基于文档指纹的文本检测方法可以防止机密文档泄漏,实现提高文档检测能力的技术效果。
48.请参见图1,图1为本技术实施例提供的一种基于文档指纹的文本检测方法的流程示意图,该基于文档指纹的文本检测方法包括如下步骤:
49.s100:获取待检测文档的文本数据。
50.示例性地,待检测文档可以是word、excel、ppt、pdf等多种格式,此处不作限定。
51.s200:对文本数据进行统一编码格式处理,获得统一化文本数据。
52.示例性地,将文本数据进行统一编码格式处理获得统一化文本数据,方便根据统
一的处理步骤进行下一步处理,并根据统一的检测标准判断待检测文档是否违规。
53.可选地,统一编码格式处理可以是将文本数据转换成统一的unicode;例如,可以是转化成统一的ucs2编码格式。
54.示例性地,统一码(unicode),也叫万国码、单一码,是计算机科学领域里的一项业界标准,包括字符集、编码方案等。unicode是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。unicode是国际组织制定的可以容纳世界上所有文字和符号的字符编码方案。unicode用数字0-0x10ffff来映射这些字符,最多可以容纳1114112个字符,或者说有1114112个码位。码位就是可以分配给字符的数字。utf-8、utf-16、utf-32都是将数字转换到程序数据的编码方案。
55.unicode字符集可以简写为ucs(unicode character set)。早期的unicode标准有ucs-2、ucs-4的说法。ucs-2用两个字节编码,ucs-4用4个字节编码。ucs-4根据最高位为0的最高字节分成2^7=128个group。每个group再根据次高字节分为256个平面(plane)。每个平面根据第3个字节分为256行(row),每行有256个码位(cell)。group 0的平面0被称作bmp(basic multilingual plane)。将ucs-4的bmp去掉前面的两个零字节就得到了ucs-2。
56.s300:通过预设符号分割统一化文本数据,获得待检测文档的指纹库数据。
57.示例性地,预设符号可以是换行符、逗号、句号等特殊符号,通过上述符号将统一化文本数据分割,进而获得待检测文档的特征值,即指纹库数据。
58.s400:通过模板指纹库数据检测待检测文档的指纹库数据,获得检测结果。
59.示例性地,模板指纹库数据是预设的模板文档通过s100-s300的处理步骤之后获得的数据;将模板指纹库数据和待检测文档的指纹库数据进行比对,获得相应的检测结果,可以检测该待检测文档是否违规;例如,将模板指纹库数据和待检测文档的指纹库数据进行对比,可以获得模板文档中的特征值指纹在待检测文档的指纹库数据中出现的比例,如果超过设定值,则可以判断该待检测文档为违规文件。
60.在一些实施场景中,该基于文档指纹的文本检测方法可以对常见格式文档进行文本提取,并将文本转化为统一的编码格式,同时通过文本内容中的特殊符号分割文本,进而获得待检测文档的指纹库数据,可保证指纹可靠;从而,通过模板指纹库数据检测待检测文档的指纹库数据,即使对待检测文档做出修改后依旧可以检测,根据检测结果可以知道待检测文档是否违规;因此,该基于文档指纹的文本检测方法可以防止机密文档泄漏,实现提高文档检测能力的技术效果。
61.请参见图2,图2为本技术实施例提供的另一种基于文档指纹的文本检测方法的流程示意图。
62.示例性地,在s400:通过模板指纹库数据检测待检测文档的指纹库数据,获得检测结果的步骤之前,还包括:
63.s401:获取模板文档的模板文本数据;
64.s402:对模板文本数据进行统一编码格式处理,获得统一化模板文本数据;
65.s403:通过预设符号分割统一化模板文本数据,获得模板指纹库数据。
66.示例性地,s401-s403的处理过程与s100-s300的处理过程相同,区别在于一个是对模板文档进行处理,获得模板指纹库数据;一个是对待检测文档进行处理,获得待检测文
档的指纹库数据;将两个指纹库数据进行比对,进而判断该待检测文档是否违规。
67.示例性地,s300:通过预设符号分割统一化文本数据,获得待检测文档的指纹库数据的步骤,包括:
68.s310:通过换行符、逗号、句号中的一种或多种分割统一化文本数据,获得特征值数据;
69.s320:将特征值数据的首位字符保存在结构体中并计算特征值数据的md5值,生成待检测文档的指纹库数据。
70.示例性地,对待检测文档的文本数据进行分析处理,转换成统一的编码格式之后,通过换行符、逗号、句号等特殊符号分割统一化文本数据,提取出特征值,将特征值的首位字符保存在结构体中,同时计算md5值,进而保存成指纹库数据。
71.示例性地,s100:获取待检测文档的文本数据的步骤,包括:
72.s110:通过tika算法获取待检测文档的文本数据。
73.示例性地,tika算法基于apache tika;apache tika是一种用于从各种文件格式进行文档类型检测和内容提取的库;在内部,tika算法使用各种现有的文档解析器和文档类型检测技术来检测和提取数据。通过tika算法,可以开发通用型检测器和内容提取器,以在一定程度上提取结构化文本以及来自不同类型文档(如电子表格,文本文档,图像,pdf,甚至多媒体输入格式)的元数据。tika算法提供了一个单一的通用api来解析不同的文件格式。它为每个文档类型使用83个现有的专门的解析器ibraries。所有这些解析器库都封装在名为parser接口的单个接口下。
74.在一些实施场景中,结合图1和图2所示,本技术实施例提供的基于文档指纹的文本检测方法应用于某个个人信息采集模板表格,个人信息采集模板表格内容为:
75.个人信息采集模板表格内容为“姓名:性别:民族:年龄:地址:”;
76.其具体的处理步骤如下:
77.步骤一:提取个人信息采集模板并获得姓名、性别、民族、年龄、地址这些文本内容;
78.步骤二:对上述文本内容进行编码转换并计算md5值存储成指纹库文件,共5个指纹特征;
79.步骤三:抽取待检文档的文本数据,例如对模板表格进行填写后的数据:
80.姓名:xx性别:x民族:x年龄:xx地址:xxxxxx;
81.将上述文本内容进行编码转换并计算md5值,与模板文档的指纹库中对比,发现五个指纹特征均存在,则判断该待检测文档为违规文档。
82.请参见图3,图3为本技术实施例提供的基于文档指纹的文本检测系统的结构框图,该基于文档指纹的文本检测系统包括:
83.获取模块100,用于获取待检测文档的文本数据;
84.统一编码模块200,用于对文本数据进行统一编码格式处理,获得统一化文本数据;
85.文档指纹模块300,用于通过预设符号分割统一化文本数据,获得待检测文档的指纹库数据;
86.检测模块400,用于通过模板指纹库数据检测待检测文档的指纹库数据,获得检测
结果。
87.示例性地,基于文档指纹的文本检测系统还包括:
88.模板获取模块,用于获取模板文档的模板文本数据;
89.统一编码模块还用于对模板文本数据进行统一编码格式处理,获得统一化模板文本数据;
90.文档指纹模块还用于通过预设符号分割统一化模板文本数据,获得模板指纹库数据。
91.示例性地,文档指纹模块300包括:
92.分割单元,用于通过换行符、逗号、句号中的一种或多种分割统一化文本数据,获得特征值数据;
93.文档指纹生成单元,用于将特征值数据的首位字符保存在结构体中并计算特征值数据的md5值,生成待检测文档的指纹库数据。
94.示例性地,获取模块100具体用于通过tika算法获取待检测文档的文本数据。
95.需要注意的是,图3所示的基于文档指纹的文本检测系统的结构框图与图1、图2所示的方法实施例相对应,为避免重复,此处不再赘述。
96.本技术还提供一种电子设备,请参见图4,图4为本技术实施例提供的一种电子设备的结构框图。电子设备可以包括处理器510、通信接口520、存储器530和至少一个通信总线540。其中,通信总线540用于实现这些组件直接的连接通信。其中,本技术实施例中电子设备的通信接口520用于与其他节点设备进行信令或数据的通信。处理器510可以是一种集成电路芯片,具有信号的处理能力。
97.上述的处理器510可以是通用处理器,包括中央处理器(cpu,central processing unit)、网络处理器(np,network processor)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器510也可以是任何常规的处理器等。
98.存储器530可以是,但不限于,随机存取存储器(ram,random access memory),只读存储器(rom,read only memory),可编程只读存储器(prom,programmable read-only memory),可擦除只读存储器(eprom,erasable programmable read-only memory),电可擦除只读存储器(eeprom,electric erasable programmable read-only memory)等。存储器530中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器510执行时,电子设备可以执行上述图1至图2方法实施例涉及的各个步骤。
99.可选地,电子设备还可以包括存储控制器、输入输出单元。
100.所述存储器530、存储控制器、处理器510、外设接口、输入输出单元各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通信总线540实现电性连接。所述处理器510用于执行存储器530中存储的可执行模块,例如电子设备包括的软件功能模块或计算机程序。
101.输入输出单元用于提供给用户创建任务以及为该任务创建启动可选时段或预设执行时间以实现用户与服务器的交互。所述输入输出单元可以是,但不限于,鼠标和键盘等。
102.可以理解,图4所示的结构仅为示意,所述电子设备还可包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。图4中所示的各组件可以采用硬件、软件或其组合实现。
103.本技术实施例还提供一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,所述计算机程序被处理器执行时实现方法实施例所述的方法,为避免重复,此处不再赘述。
104.本技术还提供一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行方法实施例所述的方法。
105.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
106.另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
107.所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
108.以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
109.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应所述以权利要求的保护范围为准。
110.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要
素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献