数据加密方法、装置、电子设备及存储介质与流程

文档序号:31385806发布日期:2022-09-03 01:29阅读:151来源:国知局
数据加密方法、装置、电子设备及存储介质与流程

1.本技术涉及信息安全技术领域,特别是涉及一种数据加密方法、装置、电子设备及存储介质。


背景技术:

2.随着计算机技术的不断发展,在计算机上存储以及通过计算机传输的数据越来越多,而这些数据通常具有保密要求,因此需要对存储、传输的数据进行加密处理,以避免存储、传输的数据被第三方窃取。数据加密是计算机系统对信息进行保护的一种可靠的办法,它利用密码技术对数据进行加密,实现信息隐蔽,从而起到保护信息安全的作用。但是,通过对目前用于加密的加密秘钥进行收集对比,这些加密秘钥往往有规律可循,存在被破解的风险,进而导致数据的泄露。


技术实现要素:

3.本技术实施例提供了一种数据加密方法、装置、电子设备及存储介质,以解决现有技术中用于对数据进行加密的加密秘钥存在一定的规律性容易被破解的问题。
4.第一方面,本技术实施例提供了一种数据加密方法,应用于服务器,所述方法包括:
5.对待加密数据进行序列化处理,获取包括多个二进制形式的数据元素的第一数组;
6.根据所述待加密数据对应的保密级别,在所述第一数组中进行数据截取确定第二数组,并基于所述第二数组模拟电荷数组;
7.在模拟所述电荷数组中的各电荷在预设磁场作用下通过导体时,获取每个电荷在所述导体上的停留位置以及基于所述电荷数组中的电荷运动在所述导体两端形成的电势差;
8.根据每个电荷对应的停留位置和所述电势差,确定加密秘钥;
9.基于加密算法和所述加密秘钥对所述待加密数据进行处理,得到加密数据。
10.第二方面,本技术实施例还提供一种数据加密装置,应用于服务器,所述装置包括:
11.第一获取模块,用于对待加密数据进行序列化处理,获取包括多个二进制形式的数据元素的第一数组;
12.第一处理模块,用于根据所述待加密数据对应的保密级别,在所述第一数组中进行数据截取确定第二数组,并基于所述第二数组模拟电荷数组;
13.第二获取模块,用于在模拟所述电荷数组中的各电荷在预设磁场作用下通过导体时,获取每个电荷在所述导体上的停留位置以及基于所述电荷数组中的电荷运动在所述导体两端形成的电势差;
14.确定模块,用于根据每个电荷对应的停留位置和所述电势差,确定加密秘钥;
15.第二处理模块,用于基于加密算法和所述加密秘钥对所述待加密数据进行处理,得到加密数据。
16.第三方面,本技术实施例还提供了一种电子设备,该电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述的数据加密方法的步骤。
17.第四方面,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述的数据加密方法的步骤。
18.本技术实施例至少包括以下技术效果:
19.本技术实施例的技术方案,在对待加密数据进行序列化处理得到第一数组,根据待加密数据的保密级别对第一数组进行截取得到第二数组,基于第二数组模拟出电荷数组后,模拟电荷数组中的各电荷在预设磁场作用下通过导体的场景,获取电荷在导体上的停留位置以及基于电荷数组中的电荷运动在导体两端形成的电势差,基于电荷停留位置和电势差确定加密秘钥,可以实现基于多个变量动态生成加密秘钥,使得加密秘钥具有很强的随机性,采用加密秘钥对待加密数据进行处理得到加密数据,保证加密数据无规律可循,提高了待加密数据的安全性,降低了数据泄露风险。
附图说明
20.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
21.图1是本技术实施例提供的数据加密方法的流程示意图之一;
22.图2是本技术实施例提供的数据加密方法的流程示意图之二;
23.图3是本技术实施例提供的数据加密装置的结构示意图;
24.图4是本技术实施例提供的电子设备结构示意图。
具体实施方式
25.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
26.应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本技术的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
27.在本技术的各种实施例中,应理解,下述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
28.服务器在向客户端发送数据时,为了保证该数据的安全性,防止在传输过程中被第三方窃取,可以在传输前对该数据进行加密处理。现有的加密方式中用到的加密秘钥往
往有规律可循,本技术提供一种数据加密方法,可以基于多个变量动态生成加密秘钥,使得加密秘钥具有很强的随机性,下面对本技术提供的应用于服务器的数据加密方法进行介绍,如图1所示,该方法包括:
29.步骤101,对待加密数据进行序列化处理,获取包括多个二进制形式的数据元素的第一数组。
30.在服务器对待加密数据进行加密时,首先对待加密的数据进行序列化处理,序列化处理是将对象的状态信息转换为可以存储或传输的形式的过程,本技术通过对待加密的数据进行序列化处理,可以获取到与该待加密数据对应的由多个二进制形式的数据元素组成的第一数组。
31.步骤102,根据所述待加密数据对应的保密级别,在所述第一数组中进行数据截取确定第二数组,并基于所述第二数组模拟电荷数组。
32.针对待加密数据,服务器根据待加密数据对应的安全要求力度,对待加密数据的保密级别进行设置,然后,根据待加密数据对应的保密级别,从第一数组中截取至少部分数据元素,以确定第二数组,由于第一数组是由二进制形式的数据元素组成的数组,相应的,第二数组也是由二进制形式的数据元素组成的数组。
33.在获取第二数组之后,可以将第二数组模拟为电荷数组,在模拟电荷数组时,可以将第二数组中的每个数据元素模拟为一个电荷,从而得到由多个电荷组成的电荷数组。
34.步骤103,在模拟所述电荷数组中的各电荷在预设磁场作用下通过导体时,获取每个电荷在所述导体上的停留位置以及基于所述电荷数组中的电荷运动在所述导体两端形成的电势差。
35.在将第二数组模拟为电荷数组之后,可以进一步通过预设模型模拟出电荷数组中的各电荷在预设磁场作用下通过导体的场景,进而可以获取到每个电荷在所述导体上的停留位置以及基于电荷数组中的电荷运动在导体两端形成的电势差。
36.模拟电荷数组中的各电荷在预设磁场作用下通过导体的场景时,需要模拟出导体以及在导体上外加的磁场,并模拟电荷数组中的各电荷在预设磁场作用下通过导体。那么在模拟的电荷数组中的各电荷组成的电流垂直于磁场通过导体时,基于霍尔效应,电荷会受到洛伦兹力的作用发生偏转,并最终落到导体的垂直于磁场方向和电流方向的两个端面上,其中,正电荷和负电荷分别向导体的不同端面上聚集,从而在导体两个端面之间产生电势差。
37.步骤104,根据每个电荷对应的停留位置和所述电势差,确定加密秘钥。
38.在获取到每个电荷对应的停留位置和导体两端形成的电势差之后,可以根据电势差和各电荷对应的停留位置,确定用于对待加密数据进行加密的加密秘钥。
39.步骤105,基于加密算法和所述加密秘钥对所述待加密数据进行处理,得到加密数据。
40.在确定加密秘钥之后,服务器可以基于该加密秘钥和加密算法对待加密数据进行处理,并得到加密数据。其中,加密算法的选取可以根据需要选定,本技术不做具体限定。
41.本技术实施例,在对待加密数据进行序列化处理得到第一数组,根据待加密数据的保密级别对第一数组进行截取得到第二数组,基于第二数组模拟出电荷数组后,模拟电荷数组中的各电荷在预设磁场作用下通过导体的场景,获取电荷在导体上的停留位置以及
基于电荷数组中的电荷运动在导体两端形成的电势差,基于电荷停留位置和电势差确定加密秘钥,可以实现基于多个变量动态生成加密秘钥,使得加密秘钥具有很强的随机性,采用加密秘钥对待加密数据进行处理得到加密数据,保证加密数据无规律可循,提高了待加密数据的安全性,降低了数据泄露风险。
42.在本技术一可选实施例中,所述根据所述待加密数据对应的保密级别,在所述第一数组中进行数据截取确定第二数组,包括:
43.根据所述待加密数据对应的保密级别,确定所述第一数组对应的数据截取长度,所述保密级别与所述数据截取长度正相关;
44.根据所述数据截取长度从所述第一数组中进行数据元素截取,以确定所述第二数组。
45.本实施例中,用于模拟电荷数组的第二数组是根据第一数组和待加密数据的保密级别确定的。通过获取待加密数据对应的保密级别,可以确定第一数组对应的数据截取长度,保密级别与数据截取长度正相关,也就是说,待加密数据的保密级别越高,数据截取长度越长,相应的,第二数组的长度越长,那么,由第二数组所模拟的电荷数组中的电荷数量越多,由于电荷数组中电荷数量的多少会最终决定加密秘钥的复杂程度,相应的,电荷数组中的电荷数量越多,加密秘钥的复杂程度就越高。其中,在确定数据截取长度之后,服务器根据数据截取长度从第一数组中进行数据元素截取,以确定第二数组,具体可以从第一数组的任意位置连续截取或分段截取,对于开始截取位置和截取方式本技术不做具体限定。
46.本技术上述实施方案,通过确定待保密数据的保密级别,确定由第二数组模拟的电荷数组中的电荷数量,进而得到加密秘钥的复杂程度,可以根据待加密数据的保密级别动态生成复杂度不同的加密密钥,由于服务器在生成加密秘钥后,需要对加密秘钥进行存储,在接收到客户端发送的解密请求并对客户端验证通过的情况下,还需要将对应的加密秘钥下发至客户端,针对保密级别不同的待加密数据对应的加密秘钥的复杂程度不同,本技术实施例可以根据加密秘钥的复杂程度配置存储该加密秘钥的存储空间和用于传输该加密秘钥的传输带宽,故在保证数据安全性的基础上,可以有效控制用于存储加密秘钥的存储空间的大小和用于传输加密秘钥的带宽的传输效率。
47.下面对在模拟的所述电荷数组中的电荷在预设磁场作用下通过导体时,如何获取每个电荷在所述导体上的停留位置和基于所述电荷数组中的电荷运动在所述导体的两端形成的电势差分别进行介绍。
48.需要说明的是,可以在服务器上设置一个模型,该模型用于模拟导体、外加在导体上的预设磁场以及电荷数组中的电荷在预设磁场作用下通过导体的场景,通过该模型可以获取每个电荷在所述导体上的停留位置以及基于所述电荷数组中的电荷运动在所述导体的两端形成的电势差。
49.具体的,获取每个电荷在所述导体上的停留位置,包括:
50.为所述电荷数组中的每个电荷进行电量、偏移角度和移动速度的随机赋值,得到每个电荷对应的电量、偏移角度和移动速度;
51.根据每个电荷对应的电量、移动速度和所述预设磁场的磁场强度,确定每个电荷所受到的洛伦兹力;
52.根据每个电荷对应的偏移角度和每个电荷对应的洛伦兹力,确定每个电荷在所述
导体上的停留位置。
53.具体的,电荷数组中的各电荷的电量、偏移角度和移动速度的具体取值需要服务器进行随机赋值,其中,在对电荷的电量和移动速度进行赋值时,需要满足电量越小、移动速度越快的原则,例如,在给某个电荷赋值的电量较大时,则相应的给这个电荷赋值的移动速度需要较小。这里的偏移角度是指电荷在预设磁场的作用下在导体的端面上构建的坐标系上偏移x轴或y轴的角度。下面将以该偏移角度为偏移x轴的角度进行介绍,针对每个电荷,根据电荷的电量、移动速度和所述预设磁场的磁场强度,可以确定每个电荷所受到的洛伦兹力,具体为f=q*v*b,其中,f为洛伦兹力,q为电荷的电量,v为电荷的移动速度,b为预设磁场的磁场强度。在确定每个电荷所受到的洛伦兹力之后,根据洛伦兹力和电荷对应的偏移角度,可以确定每个电荷在导体上的停留位置(x1,y1),具体为x=f*cosθ,y=f*sinθ,其中,x1为电荷停留位置的横坐标,x1为电荷停留位置的纵坐标,f为洛伦兹力,θ为电荷偏移角度。
54.综上可知,电荷的停留位置是由多个变量共同决定的,多个变量包括电荷电量、电荷移动速度、磁场强度和偏移角度。故电荷的电量越大,预设磁场的磁场强度越高,受到的洛伦兹力越大,电荷偏移后落到坐标系上的位置越大,而基于该停留位置和电势差确定的加密秘钥越复杂。
55.具体的,获取基于所述电荷数组中的电荷运动在所述导体的两端形成的电势差,包括:
56.将所述电荷数组中各电荷的电量和移动速度的乘积进行累加,确定所述电荷数组对应的电流;
57.根据所述电荷数组对应的电流和所述预设磁场的磁场强度,确定所述导体的两端形成的电势差。
58.具体的,通过将电荷数组中各电荷的电量和移动速度的乘积进行累加,可以确定电荷数组对应的电流,具体为i=q1*v1+q2*v2+...+qn*vn,其中,i为电荷数组对应的电流,q1为电荷数组中第一个电荷的电量,v1为电荷数组中第一个电荷的移动速度,q2为电荷数组中第二个电荷的电量,v2为电荷数组中第二个电荷的移动速度,qn为电荷数组中第n个电荷的电量,vn为电荷数组中第n个电荷的移动速度,n为电荷数组中的电荷数量。通过电荷数组对应的电流和预设磁场的磁场强度,可以确定所述导体的两端形成的电势差,具体为u=i*b,其中,u为导体的两端形成的电势差,i为电荷数组对应的电流,b为预设磁场的磁场强度。
59.在本技术一可选实施例中,所述根据每个电荷对应的停留位置和所述电势差,确定加密秘钥,包括:
60.针对每个电荷,根据所述电荷对应的停留位置和所述电势差进行运算,得到第一序列;
61.将所述电荷数组中各电荷对应的第一序列进行组合,得到目标序列;
62.对所述目标序列进行十进制转化处理,以确定所述加密秘钥。
63.具体的,针对每个电荷,根据电荷对应的停留位置和所述电势差进行运算,得到第一序列,在确定每个电荷对应的第一序列之后,将电荷数组中的各电荷对应的第一序列进行组合,得到目标序列,这里的组合可以是将电荷数组中的各电荷对应的第一序列进行拼接,在拼接过程中,可以按照电荷的排列顺序依次进行拼接,最终得到的序列为目标序列。
此时得到的目标序列为由二进制元素组成的数组,然后,对目标序列进行十进制转化处理,得到十进制形式的数据并确定为加密秘钥。
64.本技术上述实施方案,根据电势差和每个电荷对应的停留位置,确定加密秘钥,由于决定停留位置和电势差大小的磁场强度、电荷电量、移动速度以及偏移角度均为随机赋值确定,使得电荷对应的停留位置和电势差有很强的随机性,进而保证由电荷对应的停留位置和电势差运算得到的加密秘钥的随机性很强,无规律可循,保证了使用该加密秘钥进行加密的数据的安全性更高,不容易被破解。
65.下面对如何针对每个电荷根据所述电荷对应的停留位置和所述电势差进行运算得到第一序列进行介绍。
66.针对每个电荷,将所述电荷对应的停留位置的横坐标对应的二进制数据与所述电势差对应的二进制数据进行与运算,确定第二序列;
67.针对每个电荷,将所述电荷对应的停留位置的纵坐标对应的二进制数据与所述电势差对应的二进制数据进行与运算,确定第三序列;
68.将所述第二序列和所述第三序列进行组合,得到所述第一序列。
69.具体的,在确定各电荷对应的第一序列时,可以将每个电荷对应的停留位置的横坐标对应的二进制数据和电势差对应的二进制数据进行与运算得到第二序列,将每个电荷对应的停留位置的纵坐标对应的二进制数据和电势差对应的二进制数据进行与运算得到第三序列,第二序列和第三序列均为由二进制元素组成的数组,然后将第二序列和第三序列进行组合得到第一序列,这里的组合可以是将第二序列和第三序列进行拼接。
70.在本技术一可选实施例中,在基于加密算法和所述加密秘钥对所述待加密数据进行处理,得到加密数据之后,所述方法还包括:
71.发送所述加密数据至客户端;所述加密数据在发送至所述客户端后,由所述客户端向所述服务器请求存储的所述加密秘钥、基于所述加密秘钥和与所述加密算法对应的解密算法对所述加密数据进行解密,以获取所述待加密数据。
72.具体的,服务器在得到加密数据之后,将加密数据发送至客户端。另外,服务器在得到加密秘钥后、通过加密秘钥对待加密数据进行处理前,需要对该加密秘钥进行存储,以便客户端在请求加密秘钥时,可以将加密秘钥发送至对应的客户端。其中,服务器在接收到客户端发送的加密秘钥请求信息时,需要对客户端进行验证,只有验证通过,才能将加密秘钥发送至对应的客户端。
73.客户端在接收到加密数据之后,可以向服务器请求加密秘钥以及获取与加密算法对应的解密算法,然后基于加密秘钥和解密算法对加密数据进行解密处理,即可得到解密数据,也就是服务器所处理的待加密数据。
74.本技术上述实施方案,通过发送待加密数据对应的加密数据至客户端,不直接发送待加密数据至客户端,可以防止待加密数据在传输过程中被第三方窃取,提高了待加密数据的安全性,降低了数据泄露风险。
75.下面对本技术实施例的整体实施流程进行介绍,如图2所示,包括:
76.步骤201,服务器对待加密数据进行处理,得到第二数组,并将第二数组模拟为电荷数组。具体的,服务器是通过对待加密数据进行序列化处理,获取包括多个二进制形式的数据元素的第一数组,然后,根据待加密数据对应的保密级别,在第一数组中进行数据截取
确定第二数组。电荷数组中电荷的数量与第二数组中的数据元素的数量相同。
77.步骤202,为电荷数组中的各电荷的电量、移动速度和偏移角度进行随机赋值。其中,所赋值的电量为正则电荷为正电荷,所赋值的电量为负则电荷为负电荷。
78.步骤203,模拟电荷数组中的各电荷在预设磁场作用下通过导体,并计算各电荷受到的洛伦兹力、在洛伦兹力的作用下各电荷的停留位置以及导体两端形成的电势差。基于霍尔效应,电荷在通过磁场时,会受到洛伦兹力,并在洛伦兹力的作用下开始偏移,并最终停留在导体的两个端面上,由于电荷停留到导体的两个端面上,故会在导体的两端面间形成电势差。
79.步骤204,将电势差和各电荷的停留位置进行运算,得到加密秘钥。具体的,可以针对每个电荷,根据电荷对应的停留位置和电势差进行运算,得到第一序列,将电荷数组中各电荷对应的第一序列进行组合,得到目标序列,对目标序列进行十进制转化处理,以确定加密秘钥。
80.步骤205,将加密秘钥存储到秘钥数据库中。
81.步骤206,通过加密秘钥和加密算法对待加密数据进行处理,得到加密数据,并发送至客户端。通过步骤201至步骤206的处理,服务器完成了对待加密数据的加密。
82.步骤207,客户端在接收到加密数据后,通过查询服务器的秘钥数据库,获取加密秘钥。
83.步骤208,客户端通过加密秘钥和加密算法对应的解密算法对加密数据进行解密,得到解密数据。该解密数据即为服务器所处理的待加密数据。通过步骤207至步骤208的处理,服务器完成了对加密数据的解密。
84.上述实施方案,服务器在对待加密数据进行序列化处理得到第一数组,根据待加密数据的保密级别对第一数组进行截取得到第二数组,基于第二数组模拟出电荷数组后,模拟电荷数组中的各电荷在预设磁场作用下通过导体的场景,获取电荷在导体上的停留位置以及基于电荷数组中的电荷运动在导体两端形成的电势差,基于电荷停留位置和电势差确定加密秘钥,可以实现基于多个变量动态生成加密秘钥,使得加密秘钥具有很强的随机性,采用加密秘钥对待加密数据进行处理得到加密数据,保证加密数据无规律可循,提高了待加密数据的安全性,降低了数据泄露风险。
85.需要说明的是,本技术实施例提供的数据加密方法可以应用在程序api接口的token、签名等安全机制中,用于生成随机参数也就是加密秘钥;还可以应用于对url进行保护,对交互数据进行保护。
86.以上介绍了本发明实施例提供的数据加密方法,下面将结合附图介绍本技术实施例提供的数据加密装置。
87.如图3所示,本发明实施例还提供了一种数据加密装置,应用于服务器,所述装置包括:
88.第一获取模块301,用于对待加密数据进行序列化处理,获取包括多个二进制形式的数据元素的第一数组;
89.第一处理模块302,用于根据所述待加密数据对应的保密级别,在所述第一数组中进行数据截取确定第二数组,并基于所述第二数组模拟电荷数组;
90.第二获取模块303,用于在模拟所述电荷数组中的各电荷在预设磁场作用下通过
导体时,获取每个电荷在所述导体上的停留位置以及基于所述电荷数组中的电荷运动在所述导体两端形成的电势差;
91.确定模块304,用于根据每个电荷对应的停留位置和所述电势差,确定加密秘钥;
92.第二处理模块305,用于基于加密算法和所述加密秘钥对所述待加密数据进行处理,得到加密数据。
93.可选的,所述第一处理模块包括:
94.第一确定子模块,用于根据所述待加密数据对应的保密级别,确定所述第一数组对应的数据截取长度,所述保密级别与所述数据截取长度正相关;
95.第二确定子模块,用于根据所述数据截取长度从所述第一数组中进行数据元素截取,以确定所述第二数组。
96.可选的,所述第二获取模块包括:
97.赋值子模块,用于为所述电荷数组中的每个电荷进行电量、偏移角度和移动速度的随机赋值,得到每个电荷对应的电量、偏移角度和移动速度;
98.第三确定子模块,用于针对每个电荷,根据所述电荷对应的电量、移动速度和所述预设磁场的磁场强度,确定所述每个电荷在所述预设磁场作用下通过导体时受到的洛伦兹力;
99.第四确定子模块,用于针对每个电荷,根据所述电荷对应的偏移角度和所述洛伦兹力,确定所述电荷在所述导体上的停留位置。
100.可选的,所述第二获取模块还包括:
101.第五确定子模块,用于将所述电荷数组中各电荷的电量和移动速度的乘积进行累加,确定所述电荷数组对应的电流;
102.第六确定子模块,用于根据所述电荷数组对应的电流和所述预设磁场的磁场强度,确定所述导体的两端形成的电势差。
103.可选的,所述确定模块包括:
104.第一处理子模块,用于针对每个电荷,根据所述电荷对应的停留位置和所述电势差进行运算,得到第一序列;
105.组合子模块,用于将所述电荷数组中各电荷对应的第一序列进行组合,得到目标序列;
106.第二处理子模块,用于对所述目标序列进行十进制转化处理,以确定所述加密秘钥。
107.可选的,所述第一处理子模块包括:
108.第一确定单元,用于针对每个电荷,将所述电荷对应的停留位置的横坐标对应的二进制数据与所述电势差对应的二进制数据进行与运算,确定第二序列;
109.第二确定单元,用于针对每个电荷,将所述电荷对应的停留位置的纵坐标对应的二进制数据与所述电势差对应的二进制数据进行与运算,确定第三序列;
110.组合单元,用于将所述第二序列和所述第三序列进行组合,得到所述第一序列。
111.可选的,所述装置还包括:
112.发送模块,用于发送所述加密数据至客户端;
113.其中,所述加密数据在发送至所述客户端后,由所述客户端向所述服务器请求存
储的所述加密秘钥、基于所述加密秘钥和与所述加密算法对应的解密算法对所述加密数据进行解密,以获取所述待加密数据。
114.本技术提供的数据加密装置,在对待加密数据进行序列化处理得到第一数组,根据待加密数据的保密级别对第一数组进行截取得到第二数组,基于第二数组模拟出电荷数组后,模拟电荷数组中的各电荷在预设磁场作用下通过导体的场景,获取电荷在导体上的停留位置以及基于电荷数组中的电荷运动在导体两端形成的电势差,基于电荷停留位置和电势差确定加密秘钥,可以实现基于多个变量动态生成加密秘钥,使得加密秘钥具有很强的随机性,采用加密秘钥对待加密数据进行处理得到加密数据,保证加密数据无规律可循,提高了待加密数据的安全性,降低了数据泄露风险。
115.本技术实施例还提供一种电子设备,包括处理器,存储器,存储在存储器上并可在所述处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述数据加密方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
116.举例如下,图4示出了一种电子设备的实体结构示意图。如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(communications interface)420、存储器(memory)430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,处理器410用于执行以下步骤:对待加密数据进行序列化处理,获取包括多个二进制形式的数据元素的第一数组;根据所述待加密数据对应的保密级别,在所述第一数组中进行数据截取确定第二数组,并基于所述第二数组模拟电荷数组;在模拟所述电荷数组中的各电荷在预设磁场作用下通过导体时,获取每个电荷在所述导体上的停留位置以及基于所述电荷数组中的电荷运动在所述导体两端形成的电势差;根据每个电荷对应的停留位置和所述电势差,确定加密秘钥;基于加密算法和所述加密秘钥对所述待加密数据进行处理,得到加密数据。处理器410还可以执行本技术实施例中的其他方案,这里不再进一步阐述。
117.此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。
118.本技术实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述数据加密方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
119.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字
用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
120.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
121.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
122.以上所述仅为本技术的较佳实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本技术的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1