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

一种文本加密方法及装置与流程

2022-06-12 01:43:16 来源:中国专利 TAG:


1.本发明涉及数据加密领域,尤其涉及一种文本加密方法及装置。


背景技术:

2.随着互联网的飞速发展,网络安全已经成为关注的焦点。由于网络威胁对互联网发起恶意攻击,可能导致存储在数据库中的信息的泄露。基于此,对存储在数据库中的文本信息进行加密可以有效防止信息泄露。
3.目前的加密方法是将文本数据按照固定的长度分批进行加密。该方法存在一定的缺陷:比如,若不在同一加密批次中选定检索词进行检索,导致加密后的检索词并不能与密文进行匹配,该种加密方法中检索词的选择十分局限。


技术实现要素:

4.本发明提供一种文本加密方法及装置,用以解决现有技术中在不同加密批次中选择检索词进行检索,使检索词与密文无法匹配缺陷,可以实现检索词的任意选取可与密文进行匹配。
5.第一方面,本发明提供了一种文本加密方法,包括:将目标文本进行拆分,得到所述目标文本的字符;选取所述目标文本匹配的编码格式的第一子集;对所述第一子集中的字符进行排列,得到所述第一子集的第一字符环;基于所述第一字符环和对应的第一偏移量对所述目标文本的字符进行加密,得到对应的加密字符;将所述加密字符进行拼接得到所述目标文本对应的加密文本。
6.根据本发明提供的文本加密方法,所述对所述第一子集中的字符进行排列,得到所述第一子集的第一字符环,包括:将所述第一子集中的字符转化为数字编码;基于所述数字编码的排列规则对所述第一子集中的字符进行排列,得到所述第一字符环。
7.根据本发明提供的文本加密方法,所述基于所述第一字符环和对应的第一偏移量对所述目标文本的字符进行加密,得到对应的加密字符,包括:判断所述目标文本的字符是否存在于所述第一字符环上;若所述目标文本的字符存在于所述第一字符环上,根据所述第一偏移量在所述第一字符环上确定所述目标文本的字符对应的加密字符;若所述目标文本的字符不存在于所述第一字符环上,所述目标文本的字符为所述目标文本的字符对应的加密字符。
8.根据本发明提供的文本加密方法,所述将所述加密字符进行拼接得到所述目标文本对应的加密文本之后,还包括:将所述加密文本拆分为所述加密字符;判断所述加密字符是否存在于所述第一字符环上;若所述加密字符存在于所述第一字符环上,基于所述第一偏移量的相反数在所述第一字符环上确定所述加密字符对应的目标文本的字符;若所述加密字符不存在于所述第一字符环上,所述加密字符为所述加密字符对应的目标文本的字符;将所述目标文本的字符进行拼接得到所述目标文本,将所述目标文本进行展示。
9.根据本发明提供的文本加密方法,所述基于所述第一字符环和对应的第一偏移量
对所述目标文本的字符进行加密,得到加密字符之后,还包括:选取所述目标文本匹配的编码格式的第二子集;对所述第二子集中的字符进行排列,得到所述第二子集的第二字符环;基于所述第二字符环和对应的第二偏移量对所述加密字符进行加密,得到新的加密字符;相应的,所述将所述加密字符进行拼接得到所述目标文本对应的加密文本,包括:将所述新的加密字符进行拼接得到所述目标文本对应的新的加密文本。
10.根据本发明提供的文本加密方法,所述基于所述第一字符环和对应的第一偏移量对所述目标文本的字符进行加密之前,还包括:设置所述第一偏移量;所述基于所述第二字符环和对应的第二偏移量对所述加密字符进行加密之前,还包括:设置所述第二偏移量。
11.第二方面,本发明还提供了一种文本加密装置,包括:拆分模块,用于将目标文本进行拆分,得到所述目标文本的字符;选取模块,用于选取所述目标文本匹配的编码格式的第一子集;排列模块,用于对所述第一子集中的字符进行排列,得到所述第一子集的第一字符环;加密模块,用于基于所述第一字符环和对应的第一偏移量对所述目标文本的字符进行加密,得到对应的加密字符;拼接模块,用于将所述加密字符进行拼接得到所述目标文本对应的加密文本。
12.第三方面,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的文本加密方法的步骤。
13.第四方面,本发明实施例还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述的文本加密方法的步骤。
14.第五方面,本发明实施例还提供了一种计算机程序产品,其上存储有可执行指令,该指令被处理器执行时使处理器实现如第一方面所述的文本加密方法的步骤。
15.本发明提供的文本加密方法及装置,通过将目标文本进行拆分,得到所述目标文本的字符;选取所述目标文本匹配的编码格式的第一子集;对第一子集中的字符进行排列,得到第一子集的第一字符环;基于第一字符环和对应的第一偏移量对所述目标文本的字符进行加密,得到对应的加密字符;将加密字符进行拼接得到目标文本对应的加密文本。通过第一字符环和对应的第一偏移量对目标文本的字符中的每一个字符进行加密,可以使加密文本仍存在于目标文本匹配的编码格式中,任意选取的检索词进行加密后可以与目标文本对应的加密文本成功匹配。
附图说明
16.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
17.图1为本发明提供的文本加密方法实施例的流程示意图;
18.图2为本发明提供的获取第一字符环的方法实施例的流程示意图;
19.图3为本发明提供的第一字符环的示意图;
20.图4为本发明提供的字符加密方法实施例的流程示意图;
21.图5为本发明提供的文本加密装置实施例的结构组成示意图;
22.图6示例了一种电子设备的实体结构示意图。
具体实施方式
23.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.图1为本发明提供的文本加密方法实施例的流程示意图。如图1所示,该文本加密方法,可以包括以下步骤:
25.s101,将目标文本进行拆分,得到目标文本的字符。
26.s102,选取目标文本匹配的编码格式的第一子集。
27.在步骤s102中,编码格式可以被看作为字典,可以为utf8,或者可以为gbk,或者还可以为gd2313,本发明实施例对编码格式不作限定。包括目标文本的编码格式为目标文本匹配的编码格式。
28.s103,对第一子集中的字符进行排列,得到第一子集的第一字符环。
29.在步骤s103中,第一子集中的字符可以为连续字符,也可以为不连续字符,本发明实施例对此不作限定。
30.s104,基于第一字符环和对应的第一偏移量对目标文本的字符进行加密,得到对应的加密字符。
31.在步骤s104中,第一偏移量可以为一个非零的数值,如2,4,或-2等。其中,第一偏移量为正数代表顺时针偏移,第一偏移量为负值代表逆时针偏移。若第一偏移量为2,则代表顺时针偏移两个位置;若第一偏移量为-2,则代表逆时针偏移两个位置。
32.s105,将加密字符进行拼接得到目标文本对应的加密文本。
33.在步骤s105中,可以使用strcat进行加密字符的拼接,或者可以使用sprintf进行加密字符的拼接,本发明实施对加密字符的拼接方法不作限定。将加密字符按照拆分得到的预设编码格式的字符的排列顺序进行拼接即可得到目标文本对应的加密文本。
34.本发明实施例提供的文本加密方法,通过将目标文本进行拆分,得到目标文本的字符;选取目标文本匹配的编码格式的第一子集;对第一子集中的字符进行排列,得到第一子集的第一字符环;基于第一字符环和对应的第一偏移量对目标文本的字符进行加密,得到对应的加密字符;将加密字符进行拼接得到目标文本对应的加密文本。通过第一字符环和对应的第一偏移量对目标文本的字符中的每一个字符进行加密,可以使加密文本仍存在于编码格式中,任意选取的检索词进行加密后可以与目标文本对应的加密文本成功匹配。
35.图2为本发明提供的获取第一字符环的方法实施例的流程示意图。如图2所示,该获取第一字符环的方法,可以包括以下步骤:
36.s201,将第一子集中的字符转化为数字编码。
37.在步骤s201中,由于第一子集中的字符为编码格式的字符,可以将编码格式的字符转化为对应的数字编码,比如,二进制编码或者十进制编码,本发明实施例对此不作限定。
38.s202,基于数字编码的排列规则对第一子集中的字符进行排列,得到第一字符环。
39.在步骤s202中,可以根据第一子集中的字符的数字编码的大小对第一子集中的字符进行排列,使其首尾相连,构成第一字环符,可以将第一字环符记为char ring。第一子集中的字符可以为数字编码连续的字符,也可以为数字编码不连续的字符,本发明实施例对此不作限定。
40.char ring可以由一个二进制范围组成,或者也可以由多个二进制范围组成,本发明实施例对此不作限定。如图3所示,char ring由多个二进制范围组成,如0x0100-0x02ff,0x1000-0x12ff,0x1500-0x1aff以及0xb100-0xb1ff。
41.本发明提供的获取字符环的方法,通过根据数字编码的排列顺序对第一子集中的字符进行排列,可以快速得到对应的第一字环符。
42.图4为本发明提供的字符加密方法实施例的流程示意图。如图4所示,该字符加密方法,可以包括以下步骤:
43.s401,判断目标文本的字符是否存在于第一字符环上。
44.s402,若目标文本的字符存在于第一字符环上,根据第一偏移量在第一字符环上确定目标文本的字符对应的加密字符。
45.s403,若目标文本的字符不存在于字符环上,目标文本的字符为目标文本的字符对应的加密字符。
46.在步骤s401至步骤s403中,首先判断目标文本的字符是否存在于第一字符环上;若目标文本的字符存在于第一字符环上,在第一字符环上定位目标文本的字符,基于定位的字符及第一偏移量在第一字符环上进行查找目标文本的字符对应的加密字符。比如,在第一字符环上的定位到目标文本的字符,由于第一偏移量为2,那么以该定位的位置为起点,沿着顺时针方向偏移两个位置,查找到的该位置的字符为定位到的字符的加密字符。又比如,在第一字符环上的定位到目标文本的字符,由于第一偏移量为-2,那么以该定位的位置为起点,沿着逆时针方向偏移两个位置,查找到的该位置的字符为定位到的字符的加密字符。
47.若目标文本的字符不存在于第一字符环上,那么将目标文本的字符作为该字符的加密字符。
48.本发明提供实施例提供的字符加密方法,通过在第一字符环上查找加密字符或以目标文本的字符作为加密字符,可以使加密字符仍存在于编码格式中,可以任意选取检索词对其进行加密,使加密后的检索词能与加密字符可以成功匹配。
49.在一些可选的实施例中,基于第一字符环和对应的第一偏移量对目标文本的字符进行加密,得到加密字符之后,还可以包括:选取目标文本匹配的编码格式的第二子集;对第二子集中的字符进行排列,得到第二子集的第二字符环;基于第二字符环和对应的第二偏移量对加密字符进行加密,得到新的加密字符;相应的,将加密字符进行拼接得到目标文本对应的加密文本,可以包括:将新的加密字符进行拼接得到目标文本对应的新的加密文本。
50.第一子集和第二子集可以相同,或者也可以不同,本发明实施例对此不作选定。第二偏移量和第一偏移量可以相同,或者也可以不同,本发明实施例对此不作限定。基于第二字符环和第二偏移量对加密字符进行再次加密,可以得到新的加密字符。根据第二次加密的步骤,还可以对新的加密字符进行第三次加密以及更多次数的加密,本发明实施例对加
密的次数不作限定。将最终的加密字符进行拼接可以得到目标文本对应的新的加密文本。
51.本发明提供的实施例,通过对加密字符进行多次加密得到加密文本,可以提升加密本文的加密强度,提升其加密的安全性。
52.在一些可选的实施例中,基于第一字符环和对应的第一偏移量对目标文本的字符进行加密之前,还可以包括:设置第一偏移量;基于第二字符环和对应的第二偏移量对加密字符进行加密之前,还可以包括:设置第二偏移量。
53.在一些可选的实施例中,将目标文本进行加密后得到加密文本存储在数据库中,当加密文本接收查看请求需要对加密文本进行解密,以目标文本的形式向外展示。其中解密的过程可以包括:
54.若该加密文本进行了一次加密,将加密文本拆分为加密字符;判断加密字符是否存在于第一字符环上;若加密字符存在于第一字符环上,基于第一偏移量的相反数在第一字符环上确定加密字符对应的目标文本的字符;若加密字符不存在于第一字符环上,加密字符为加密字符对应的目标文本的字符;将目标文本的字符进行拼接得到目标文本,将目标文本进行展示;若该加密文本进行了多次加密,基于上述解密步骤,依次从最后一次加密到第一次加密的顺序进行解密,确定加密字符对应的目标文本的字符,将该字符进行拼接可以得到目标文本。
55.图5为本发明提供的文本加密装置实施例的结构组成示意图。如图5所示,该文本加密装置,包括:
56.拆分模块501,用于将目标文本进行拆分,得到目标文本的字符;
57.选取模块502,用于选取目标文本匹配的编码格式的第一子集;
58.排列模块503,用于对第一子集中的字符进行排列,得到第一子集的第一字符环;
59.加密模块504,用于基于第一字符环和对应的第一偏移量对目标文本的字符进行加密,得到对应的加密字符;
60.拼接模块505,用于将加密字符进行拼接得到目标文本对应的加密文本。
61.可选地,排列模块503,包括:
62.获取单元,用于将第一子集中的字符转化为数字编码;
63.排列单元,用于基于数字编码的排列规则对第一子集中的字符进行排列,得到第一字符环。
64.可选地,加密模块504,包括:
65.判断单元,用于判断目标文本的字符是否存在于第一字符环上;
66.第一确定单元,用于若目标文本的字符存在于第一字符环上,根据第一偏移量在第一字符环上确定目标文本的字符对应的加密字符;
67.第二确定单元,用于若目标文本的字符不存在于第一字符环上,目标文本的字符为目标文本的字符对应的加密字符。
68.可选地,拆分模块501,还用于将加密文本拆分为加密字符;
69.解密模块,用于判断加密字符是否存在于第一字符环上;若加密字符存在于所一字符环上,基于第一偏移量的相反数在第一字符环上确定加密字符对应的目标文本的字符;若加密字符不存在于第一字符环上,加密字符为加密字符对应的目标文本的字符;
70.拼接模块505,还用于将目标文本的字符进行拼接得到目标文本,将目标文本进行
展示。
71.可选地,选取模块502,还用于选取目标文本匹配的编码格式的第二子集;
72.排列模块503,还用于对第二子集中的字符进行排列,得到第二子集的第二字符环;
73.加密模块504,还用于基于第二字符环和对应的第二偏移量对加密字符进行加密,得到新的加密字符;
74.拼接模块505,还用于将新的加密字符进行拼接得到目标文本对应的新的加密文本。
75.可选地,该文本加密装置,还包括:
76.设置模块,用于设置第一偏移量;设置第二偏移量。
77.图6示例了一种电子设备的实体结构示意图,如图6示,该电子设备可以包括:处理器(processor)601、通信接口(communicationsinterface)602、存储器(memory)603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信。处理器601可以调用存储器603中的逻辑指令,以执行如下文本加密方法:
78.将目标文本进行拆分,得到目标文本的字符;选取目标文本匹配的编码格式的第一子集;对第一子集中的字符进行排列,得到第一子集的第一字符环;基于第一字符环和对应的第一偏移量对目标文本的字符进行加密,得到对应的加密字符;将加密字符进行拼接得到目标文本对应的加密文本。
79.此外,上述的存储器603中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
80.另一方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各实施例提供的文本加密方法:
81.将目标文本进行拆分,得到目标文本的字符;选取目标文本匹配的编码格式的第一子集;对第一子集中的字符进行排列,得到第一子集的第一字符环;基于第一字符环和对应的第一偏移量对目标文本的字符进行加密,得到对应的加密字符;将加密字符进行拼接得到目标文本对应的加密文本。
82.又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的文本加密方法:
83.将目标文本进行拆分,得到目标文本的字符;选取目标文本匹配的编码格式的第一子集;对第一子集中的字符进行排列,得到第一子集的第一字符环;基于第一字符环和对应的第一偏移量对目标文本的字符进行加密,得到对应的加密字符;将加密字符进行拼接得到目标文本对应的加密文本。
84.以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是第二上分开的,作为模块显示的部件可以是或者也可以不是第二模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
85.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
86.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

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

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

相关文献