一种版式文件矢量化加密方法与流程



1.本发明涉及数据加密技术领域,具体涉及一种版式文件矢量化加密方法。


背景技术:



2.随着信息化的发展,电子文件的使用范围越来越广泛,电子文件已经逐步替代了纸质文件在日常办公中的地位。在档案管理等业务应用中,已逐步使用电子化归档的方式。
3.历史的纸质文件进行电子化归档需要对纸质文件进行扫描得到版式文件,版式文件展示时为扫描件图像的形式,当版式文件被放大时会出现噪点、失真的情况,无法实现真正的纸质文件到电子文件的完整转换。因此在对版式文件进行归档存储时需要对版式文件进行矢量化,保证在版式文件放大的情况下,文件内容依然清晰可查。
4.对版式文件进行矢量化,需要匹配版式文件中文字和字库中的文字,获取文字的矢量化字体,将版式文件中的文字图像区域用对应的矢量化字体替换显示。客户端需要将扫描得到的版式文件传输至文件存储服务器进行矢量化以及归档存储。
5.文字是文件中最为重要的部分,文字可能包含了机密信息,如商业机密、国家秘密等。为防止文件机密信息泄露,在由客户端传输至文件存储服务器的过程中,需要对版式文件中的文字进行加密。
6.现有对文字进行加密的方法如栅栏易位法、恺撒移位密码加密等方法仅改变了文字的顺序,并未改变文字的内容,难以抵抗统计分析攻击。


技术实现要素:



7.本发明提供一种版式文件矢量化加密方法,以解决现有的问题。
8.本发明的一种版式文件矢量化加密方法采用如下技术方案:本发明一个实施例提供了一种版式文件矢量化加密方法,该方法包括以下步骤:获取文字序列,根据文字序列获取文字编码序列;根据文字编码序列中每个元素的长度构建无向密钥图;根据文字编码序列的长度、预设补充密钥以及预设路径长度获取加密路径序列;获取文字编码序列中每个元素在加密路径序列中对应位置的值作为所述每个元素的路径;将所述每个元素的路径转换为二进制数并拆分成多个位二进制数,将每个位二进制数转换为十进制数,所有十进制数构成所述每个元素的路径序列;根据无向密钥图获取文字编码序列中每个元素的起始点;根据文字编码序列中每个元素的起始点以及路径序列对所述每个元素进行加密操作,获取所述每个元素的结束点,包括:s1:将起始点作为第一顶点;s2:将路径序列中第一个元素作为第一权值,获取无向密钥图中与第一顶点相连且与第一顶点之间的边权值等于第一权值的顶点,作为第二顶点;将路径序列中第一个元素删除;当路径序列为空时,将第二顶点作为结束点,当路径序列不为空时,将第二顶点作为第一顶点;s3:重复s2直到得到结束点时停止迭代;
将文字编码序列中每个元素的结束点的值作为所述每个元素的密文;根据文字编码序列中每个元素的密文获取文字序列中每个文字的密文,组成密文文字序列;根据密文文字序列获取密文文件。
9.优选的,所述根据文字序列获取文字编码序列包括:对文字序列中每个文字利用第一编码方法进行编码得到所述每个文字的编码结果;将每个文字的编码结果拆分成第一编码以及第二编码;将文字序列中所有文字的第一编码以及第二编码组成文字编码序列。
10.优选的,所述根据文字编码序列中每个元素的长度构建无向密钥图包括:将文字编码序列中每个元素的长度作为第一长度,构建一个包含个顶点的无向图,所述无向图中每个顶点的度均为,所述无向图中与任意一个顶点相连的条边的权值分别为,所述无向图中每个顶点的值分别为位的二进制数,所述无向图中所有顶点的值包含了所有位的二进制数;将所述无向图作为无向密钥图。
11.优选的,所述根据文字编码序列的长度、预设补充密钥以及预设路径长度获取加密路径序列包括:将文字编码序列长度作为第二长度,将预设路径长度乘以作为第三长度;根据预设补充密钥利用混沌映射的方法获取长度为第二长度的加密路径序列,所述加密路径序列中每个元素的范围为到。
12.优选的,所述根据无向密钥图获取文字编码序列中每个元素的起始点包括:获取无向密钥图中与文字编码序列中每个元素值相同的顶点,将所述顶点作为文字编码序列中每个元素的起始点。
13.优选的,所述根据文字编码序列中每个元素的密文获取文字序列中每个文字的密文包括:文字编码序列中每个元素的密文对应文字序列中每个文字的第一编码或第二编码的密文,将所述每个文字的第一编码的密文与第二编码的密文拼接,得到所述每个文字的密文编码;对所述每个文字的密文编码利用第一编码方法进行解码得到所述每个文字的密文。
14.优选的,所述根据密文文字序列获取密文文件包括:获取密文文字序列中每个文字的图像,利用密文文字序列中每个文字的图像替换版式文件中原文字的图像区域,得到密文文件。
15.本发明的技术方案的有益效果是:本发明通过构建无向密钥图作为加密过程中的密钥,密钥空间大,可抵抗暴力破解攻击。相较于现有的栅栏易位法、恺撒移位密码加密等文字加密方法仅改变了文字的顺序未改变文字的内容,本发明不仅改变了文字的顺序,还改变了文字内容;同时本发明根据文字编码序列中每个元素的起始点以及路径序列在无向密钥图中游走,获取游走的结束点,将结束点的值作为每个元素的密文,通过为每个元素赋予不同的路径序列,根据路径序列匹配无向密钥图中的边权值,使得不同元素的游走路径不同,进而使得相同元素的加密结果不同,不同元素的加密结果可能相同,增加了密文的复
杂性,破坏了明文原有的统计规律,可抗统计分析攻击。同时本发明通过对版式文件进行矢量化,使得版式文件在放大后清晰可查,解决了版式文件被放大时会出现噪点或失真的问题。
附图说明
16.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
17.图1为本发明的一种版式文件矢量化加密方法的步骤流程图;图2为本发明的一种版式文件矢量化加密方法的无向图密钥图示意图。
具体实施方式
18.为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种版式文件矢量化加密方法,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构或特点可由任何合适形式组合。
19.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。
20.下面结合附图具体的说明本发明所提供的一种版式文件矢量化加密方法的具体方案。
21.请参阅图1,其示出了本发明一个实施例提供的一种版式文件矢量化加密方法的步骤流程图,该方法包括以下步骤:101.获取无向密钥图以及补充密钥。
22.需要说明的是,版式文件中可能包含汉字、字母、数字等文字,为了对版式文件中的文字进行加密,需要先对版式文件中的文字进行编码。现有的gb2312编码可将每个文字编码成16位的二进制数。本发明实施例的目的是通过构建一个无向图作为密钥,根据无向图中顶点之间的路径实现文字的加密。而每个文字的编码长度为16位,则共有种不同的编码。若将每个文字作为无向图的顶点,则无向图的顶点有个,此时无向图数据量非常大占用空间大,不适合作为密钥。因此可将每个文字的编码分成两个8位二进制数,对两个8位二进制数分别进行加密。而长度为8位的二进制数共有种,若将每个8位二进制数作为无向图的顶点,则无向图的顶点共有256个。
23.在本发明实施例中,构建一个包含个顶点的无向图,无向图中每个顶点的度均为,则每个顶点有条与之相连的边。无向图中与任意一个顶点相连的条边的权值分别为。将共个位二进制数随机分配给无向图的个
顶点,将得到的无向图作为密钥,记为无向密钥图。
24.由于将共个位二进制数随机分配给无向图的个顶点,共有种分配方式,因此无向密钥图的密钥空间大,可抗暴力破解。本发明实施例以位二进制数为例构建的一个无向密钥图参见图2。
25.需要说明的是,本发明实施例的目的是通过无向密钥图中顶点之间的路径实现顶点的加密,因此需要设置补充密钥,以便后续根据补充密钥构建路径序列,进而根据路径序列中的路径获取顶点的加密结果。
26.在本发明实施例中,设置补充密钥作为补充密钥,其中,,。
27.至此,获取了无向密钥图以及补充密钥。无向密钥图与补充密钥事先保存在加密端和解密端。
28.102.获取文字编码序列,根据文字编码序列以及补充密钥获取加密路径序列。
29.一个实施方式中,获取需要进行电子化归档的版式文件,在客户端对版式文件进行ocr识别,通过ocr识别将版式文件中的内容识别为具体的文字,得到文字序列。
30.另一个实施方式中,获取需要进行电子化归档的版式文件,在客户端对版式文件进行ocr识别,通过ocr识别将版式文件中的内容识别为具体的文字,得到第一序列,对第一序列利用第一加密方法进行加密得到文字序列。第一加密方法包括但不限于栅栏易位法、恺撒移位密码。
31.利用gb2312编码的方法对文字序列中每个文字进行编码,每个文字的编码长度为16位。将文字序列中每个文字的编码结果拆分成两个8位二进制数,分别作为每个文字的第一编码与第二编码。将文字序列中所有文字的第一编码与第二编码构成文字编码序列,将第一编码用表示,第二编码用表示,则文字编码序列为,其中为文字序列中第一个文字的第一编码,为文字序列中第一个文字的第二编码。
32.需要说明的是,为了利用无向密钥图中的路径对文字编码序列中每个元素进行加密,则需为文字编码序列中每个元素获取一个路径,因此需要构建与文字编码序列长度相同的加密路径序列。为了使得解密结果更加混乱无规律,则需要使得文字编码序列中每个元素的加密时遍历的路径尽可能长。而无向密钥图中每个边的权值均在的范围内,可以用位二进制来表示。设置文字编码序列中每个元素的加密时遍历的路径长度为,则要求加密路径序列每个元素转换为二进制后长度为,因此要求加密路径序列中每个元素的大小在范围内。在本发明实施例中,在其他实施例中,实施人员可根据需要设置的值。
33.在本发明实施例中,获取文字编码序列的长度,根据补充密钥,利用混沌映射的方法生成一个长度为的混沌序列。将混沌序列中的后个元素分别乘以并向下取整得到十进制整数,组成长度为的加密路径序列。
34.至此,获取了文字编码序列以及加密路径序列。
35.103.根据有向密钥图以及加密路径序列对文字编码序列中的每个元素进行加密,获取密文文字序列。
36.对于文字编码序列中的每个元素,获取其在加密路径序列中对应位置的元素,作为文字编码序列中每个元素的路径。
37.对文字编码序列中每个元素进行加密,如文字编码序列中第个元素的加密方法为:加密路径序列中每个元素的范围为,因此文字编码序列中第个元素的路径为中的一个数,将其转换为位二进制数,并将该位二进制数分为长度相等的组,每组长度均为,则获得了个位二进制数。将每个位二进制数分别转换为十进制,则得到了个范围内的十进制数,将此个十进制数构成文字编码序列中的个元素的路径序列。
38.如假设文字编码序列中第个元素的路径为,当时,加密路径序列中每个元素的范围为,则将转换为位二进制数为。将分为组为、、、,则文字编码序列中第个元素的路径序列为。
39.获取无向密钥图中与文字编码序列中第个元素值相同的顶点,将该顶点作为文字编码序列中第个元素的起始点。
40.根据文字编码序列中第个元素的起始点以及路径序列获取文字编码序列中第个元素的结束点,作为文字编码序列中第个元素的密文。具体包括:将起始点作为第一顶点,根据第一顶点与路径序列进行结束点获取操作,包括:将路径序列中第一个元素作为第一权值,获取无向密钥图中与第一顶点相连且与第一顶点之间的边权值等于第一权值的顶点,作为第二顶点。将路径序列中第一个元素删除。若此时路径序列为空,则将第二顶点作为结束点,反之若路径序列不为空,则将第二顶点作为第一顶点。
41.重复根据第一顶点与路径序列进行结束点获取操作,直到得到结束点时停止迭代。
42.将得到的结束点的值作为文字编码序列中第个元素的密文。
43.至此,完成了文字编码序列中第个元素的加密,获取了文字编码序列中第个元
素的密文。
44.同理,对文字编码序列中每个元素进行加密,获取文字编码序列中每个元素的密文。文字编码序列由文字序列中每个文字的第一编码和第二编码构成,因此文字编码序列中每个元素的密文即为每个文字的第一编码或第二编码的密文。将每个文字的第一编码的密文与第二编码的密文拼接,作为每个文字的密文编码。每个文字的密文编码为一个16位二进制数。
45.对每个文字的密文编码利用gb2312编码的方法解码成一个文字,将该文字作为对应文字的密文。文字序列中所有文字的密文构成密文文字序列。
46.至此,完成了文字编码序列中的每个元素的加密,获得了密文文字序列。
47.104.根据密文文字序列生成密文文件,对密文文件进行传输。
48.在字库中查获取密文文字序列中每个文字的图像,利用密文文字序列中每个文字的图像替换版式文件中原文字的图像区域,使得版式文件显示为密文,如此得到了密文文件。
49.由客户端将密文文件传输至文件存储服务器。
50.105.对密文文件进行解密并矢量化,得到矢量化版式文件,对矢量化版式文件进行归档存储。
51.文件存储服务器接收到密文文件后,对密文文件进行解密。具体方法为:对密文文件进行ocr识别,通过ocr识别将密文文件中的内容识别为具体的文字,得到密文文字序列。利用gb2312编码的方法对密文文字序列中每个文字进行编码,每个文字的编码长度为16位。将密文文字序列中每个文字的编码结果拆分成两个8位二进制数,分别作为每个文字的第一编码密文与第二编码密文。将密文文字序列中所有文字的第一编码密文与第二编码密文构成密文文字编码序列。
52.利用步骤102中的方法获取加密路径序列。
53.对于密文文字编码序列中的每个元素,获取其在加密路径序列中对应位置的元素,作为密文文字编码序列中每个元素的路径。利用步骤103中的方法将密文文字编码序列中每个元素的路径转换为路径序列。对路径序列进行反序,得到解密路径序列。
54.获取无向密钥图中与密文文字编码序列中每个元素值相同的顶点,作为每个元素的起始点。利用步骤103中的方法,根据每个元素的解密路径序列以及每个元素的起始点,获取每个元素的结束点,则结束点的值即为每个元素的明文。
55.密文文字编码序列由密文文字序列中每个文字的第一编码密文和第二编码密文构成。因此密文文字编码序列中每个元素的明文即为每个文字的第一编码密文或第二编码密文的明文。将每个文字的第一编码密文的明文与第二编码密文的明文拼接,作为每个文字的明文编码。
56.对密文文字序列中每个文字的明文编码利用gb2312编码的方法解码成一个文字,则该文字即为对密文文字序列中对应文字解密后的结果。密文文字序列中所有文字解密后的结果构成文字序列。
57.需要说明的是,版式文件的展示是扫描件图像的形式,当文件被放大时会出现噪声点、失真的情况。因此在根据文字序列获取原始文件时,需要同时进行矢量化,以确保解密之后获得的文件放大后不会出现噪声点或失真的情况。
58.在本发明实施例中,在字库中查获取文字序列中每个文字的矢量字体,利用文字序列中每个文字的矢量字体替换密文文件中原文字的图像区域,如此实现了密文文件的解密,获取了矢量化的版式文件。
59.至此,完成了密文文件的解密以及矢量化,获取了矢量化的版式文件,矢量化的版式文件的格式为“.bw”格式。文件存储服务器对矢量化的版式文件进行归档存储。
60.具有相关权限的人员在需要时可在文件存储服务器上下载查看矢量化的版式文件。
61.通过以上步骤,完成了版式文件矢量化以及归档存储,实现了版式文件的电子化归档以及安全管理。
62.本发明实施例通过构建无向密钥图作为加密过程中的密钥,密钥空间大,可抵抗暴力破解攻击。相较于现有的栅栏易位法、恺撒移位密码加密等文字加密方法仅改变了文字的顺序未改变文字的内容,本发明不仅改变了文字的顺序,还改变了文字内容;同时本发明根据文字编码序列中每个元素的起始点以及路径序列在无向密钥图中游走,获取游走的结束点,将结束点的值作为每个元素的密文,通过为每个元素赋予不同的路径序列,根据路径序列匹配无向密钥图中的边权值,使得不同元素的游走路径不同,进而使得相同元素的加密结果不同,不同元素的加密结果可能相同,增加了密文的复杂性,破坏了明文原有的统计规律,可抗统计分析攻击。同时本发明通过对版式文件进行矢量化,使得版式文件在放大后清晰可查,解决了版式文件被放大时会出现噪点或失真的问题。
63.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:


1.一种版式文件矢量化加密方法,其特征在于,该方法包括以下步骤:获取文字序列,根据文字序列获取文字编码序列;根据文字编码序列中每个元素的长度构建无向密钥图;根据文字编码序列的长度、预设补充密钥以及预设路径长度获取加密路径序列;获取文字编码序列中每个元素在加密路径序列中对应位置的值作为所述每个元素的路径;将所述每个元素的路径转换为二进制数并拆分成多个位二进制数,将每个位二进制数转换为十进制数,所有十进制数构成所述每个元素的路径序列;根据无向密钥图获取文字编码序列中每个元素的起始点;根据文字编码序列中每个元素的起始点以及路径序列对所述每个元素进行加密操作,获取所述每个元素的结束点,包括:s1:将起始点作为第一顶点;s2:将路径序列中第一个元素作为第一权值,获取无向密钥图中与第一顶点相连且与第一顶点之间的边权值等于第一权值的顶点,作为第二顶点;将路径序列中第一个元素删除;当路径序列为空时,将第二顶点作为结束点,当路径序列不为空时,将第二顶点作为第一顶点;s3:重复s2直到得到结束点时停止迭代;将文字编码序列中每个元素的结束点的值作为所述每个元素的密文;根据文字编码序列中每个元素的密文获取文字序列中每个文字的密文,组成密文文字序列;根据密文文字序列获取密文文件。2.根据权利要求1所述的一种版式文件矢量化加密方法,其特征在于,所述根据文字序列获取文字编码序列包括:对文字序列中每个文字利用第一编码方法进行编码得到所述每个文字的编码结果;将每个文字的编码结果拆分成第一编码以及第二编码;将文字序列中所有文字的第一编码以及第二编码组成文字编码序列。3.根据权利要求1所述的一种版式文件矢量化加密方法,其特征在于,所述根据文字编码序列中每个元素的长度构建无向密钥图包括:将文字编码序列中每个元素的长度作为第一长度,构建一个包含个顶点的无向图,所述无向图中每个顶点的度均为,所述无向图中与任意一个顶点相连的条边的权值分别为,所述无向图中每个顶点的值分别为位的二进制数,所述无向图中所有顶点的值包含了所有位的二进制数;将所述无向图作为无向密钥图。4.根据权利要求1所述的一种版式文件矢量化加密方法,其特征在于,所述根据文字编码序列的长度、预设补充密钥以及预设路径长度获取加密路径序列包括:将文字编码序列长度作为第二长度,将预设路径长度乘以作为第三长度;根据预设补充密钥利用混沌映射的方法获取长度为第二长度的加密路径序列,所述加密路径序列中每个元素的范围为到。5.根据权利要求1所述的一种版式文件矢量化加密方法,其特征在于,所述根据无向密钥图获取文字编码序列中每个元素的起始点包括:获取无向密钥图中与文字编码序列中每个元素值相同的顶点,将所述顶点作为文字编
码序列中每个元素的起始点。6.根据权利要求1所述的一种版式文件矢量化加密方法,其特征在于,所述根据文字编码序列中每个元素的密文获取文字序列中每个文字的密文包括:文字编码序列中每个元素的密文对应文字序列中每个文字的第一编码或第二编码的密文,将所述每个文字的第一编码的密文与第二编码的密文拼接,得到所述每个文字的密文编码;对所述每个文字的密文编码利用第一编码方法进行解码得到所述每个文字的密文。7.根据权利要求1所述的一种版式文件矢量化加密方法,其特征在于,所述根据密文文字序列获取密文文件包括:获取密文文字序列中每个文字的图像,利用密文文字序列中每个文字的图像替换版式文件中原文字的图像区域,得到密文文件。

技术总结


本发明涉及数据加密技术领域,具体涉及一种版式文件矢量化加密方法,包括:获取文字编码序列,构建无向密钥图,获取加密路径序列;根据加密路径序列以及无向密钥图获取文字编码序列中每个元素的路径序列以及起始点;根据起始点以及路径序列在无向密钥图中游走,获取游走的结束点,将结束点的值作为文字编码序列中每个元素的密文,根据文字编码序列中所有元素的密文获取密文文字序列,进一步得到密文文件。本发明构建的无向密钥图的密钥空间大,可抵抗暴力破解攻击,同时密文复杂,可抗统计分析攻击。析攻击。析攻击。


技术研发人员:

陆猛 谢文迅 孙高健 赵云 庄玉龙 张伟 孙肖辉 郭尚 杨瑞钦

受保护的技术使用者:

北京点聚信息技术有限公司

技术研发日:

2022.11.02

技术公布日:

2022/12/12

本文发布于:2024-09-22 09:26:07,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/34420.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:序列   文字   密钥   元素
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议