数据加密方法、装置、存储介质及处理器与流程

文档序号:29501373发布日期:2022-04-06 17:06阅读:119来源:国知局
数据加密方法、装置、存储介质及处理器与流程

1.本技术涉及数据加密领域,具体而言,涉及一种数据加密方法、装置、存储介质及处理器。


背景技术:

2.随着信息技术的迅猛发展,互联网已不再是一个陌生的词汇,越来越多的人加入了互联网用户的行列,网络正以迅速、便利、超时空的传递方式改变着人们的生存空间和生活方式。与此同时,如何确保个人信息在网络上能够安全的传输也成为了互联网从业人员关注的重中之重。
3.针对上述的问题,目前尚未提出有效的解决方案。


技术实现要素:

4.本技术实施例提供了一种数据加密方法、装置、存储介质及处理器,以至少解决现有技术对用户信息进行加密存在密钥外泄,造成的用户信息安全度不高的技术问题。
5.根据本技术实施例的一个方面,提供了一种数据加密方法,包括:获取待加密数据以及目标对象的多维度信息;基于目标对象的多维度信息确定在对待加密数据进行加密时使用的数字特征,待加密数据包括:目标对象设置的密码数据;将多维度信息分别转换为预设物理运动的运动参数;确定运动参数对应的目标物理值,目标物理值用于指示预设物理运动在各个方向的位移;至少基于目标物理值对待加密数据进行加密。
6.可选地,获取待加密数据,基于目标对象的多维度信息确定在对待加密数据进行加密时使用的数字特征,包括:获取多维度信息的数字内容与非数字内容;确定数字内容为第一数字特征;对非数字内容进行转换得到第二数字特征。
7.可选地,将多维度信息分别转换为预设物理运动的运动参数,包括:确定多维度信息中目标对象的名字;将目标对象的名字转换为第二数字特征,确定第二数字特征为运动参数中的常量参数;获取多维度信息中目标对象的年龄;根据目标对象的年龄得到运动参数中的第一变量参数;获取目标对象在输入待加密数据之前,在验证界面进行验证操作所消耗的时间;将所消耗的时间确定为运动参数中的第二变量参数。
8.可选地,确定运动参数对应的目标物理值,包括:根据第一变量参数与第二变量参数得到预设物理运动在水平方向上的第一位移;根据常量参数与第二变量参数得到预设物理运动在竖直方向上的第二位移;根据第一位移与述第二位移得到合位移。
9.可选地,至少基于目标物理值对待加密数据进行加密,包括:获取随机生成的字符串;将第一位移、第二位移、合位移与字符串进行拼接得到加密密钥;基于加密密钥对待加密数据进行加密。
10.可选地,获取随机生成的字符串,包括:对常量参数、第一变量参数与第二变量参数进行排列组合,得到多组数组;从多组数组随机选中一组数组,将该数组确定为字符串。
11.基于密钥对待加密数据进行加密,包括:获取待加密数据的第一数据长度,第一数
据长度用于指示待加密数据所占用的字节数;获取密钥的第二数据长度,基于第一数据长度对第二数据长度进行取余运算,得到第一余值,第二数据长度用于指示密钥所占用的字节数;根据第一余值确定密钥在待加密数据的插入位置;将密钥插入至插入位置对待加密数据进行加密。
12.根据第一余值确定密钥在待加密数据的插入位置,包括:在第一余值小于第一数据长度的情况下,将第一余值确定为密钥在待加密数据的插入位置;在第一余值大于第一数据长度的情况下,基于第一数据长度对第一余值进行取余运算,得到第二余值,将第二余值确定为密钥在待加密数据的插入位置。
13.根据本技术实施例的另一方面,还提供了一种数据加密装置,包括:获取模块,用于获取待加密数据以及目标对象的多维度信息;第一确定模块,用于基于目标对象的多维度信息确定在对待加密数据进行加密时使用的数字特征,待加密数据包括:目标对象设置的密码数据;转换模块,用于将多维度信息分别转换为预设物理运动的运动参数;第二确定模块,用于确定运动参数对应的目标物理值,目标物理值用于指示预设物理运动在各个方向的位移;加密模块,用于至少基于目标物理值对待加密数据进行加密。
14.根据本技术实施例的另一方面,还提供了一种非易失性存储介质,该非易失性存储介质包括存储的程序,在程序运行时控制非易失性存储介质所在设备执行上述的数据加密方法。
15.根据本技术实施例的另一方面,还提供了一种处理器,其特征在于,该处理器用于运行程序,程序运行时执行上述的数据加密方法。
16.在本技术实施例中,采用基于待加密信息以及目标对象的多维度信息,确定对待加密信息进行加密时使用的数字特征,然后将多维度信息分别转换为预设物理运动的运动参数,并基于运动参数确定目标物理值,最后基于目标物理值对待加密数据进行加密的方式,通过使用抛物线密钥的不可逆加密运算,达到了防止加密数据泄露的目的,从而实现了使用抛物线密钥对用户信息进行更深层次加密的技术效果,进而解决了现有技术对用户信息进行加密存在密钥外泄,造成的用户信息安全度不高的技术问题。
附图说明
17.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
18.图1是根据本技术实施例的一种用于实现数据加密方法的计算机终端的硬件结构框图;
19.图2是根据本技术实施例的一种数据加密方法的示意图;
20.图3是根据本技术实施例的一种数据加密装置的示意图。
具体实施方式
21.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范
围。
22.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
23.根据本技术实施例,提供了一种数据加密方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
24.本技术实施例所提供的数据加密方法可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现数据加密方法的计算机终端(或移动设备)的硬件结构框图。如图1所示,计算机终端10(或移动设备10)可以包括一个或多个(图中采用102a、102b,
……
,102n来示出)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、输入/输出接口(i/o接口)、通用串行总线(usb)端口(可以作为i/o接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
25.应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。如本技术实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
26.存储器104可用于存储应用软件的软件程序以及模块,如本技术实施例中的数据加密方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据加密方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
27.传输模块106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(network interface controller,nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(radio frequency,rf)模块,其用于通过无线方式与互联网进行通讯。
28.显示器可以例如触摸屏式的液晶显示器(lcd),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
29.此处需要说明的是,在一些可选实施例中,上述图1所示的计算机设备(或移动设备)可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机设备(或移动设备)中的部件的类型。
30.在上述运行环境下,本技术实施例提供了如图2所示的数据加密方法。
31.图2是根据本技术实施例的一种数据加密方法的流程图,如图2所示,该方法包括如下步骤:
32.步骤s202,获取待加密数据以及目标对象的多维度信息;
33.步骤s204,基于目标对象的多维度信息确定在对待加密数据进行加密时使用的数字特征,待加密数据包括:目标对象设置的密码数据;
34.步骤s206,将多维度信息分别转换为预设物理运动的运动参数;
35.步骤s208,确定运动参数对应的目标物理值,目标物理值用于指示预设物理运动在各个方向的位移;
36.步骤s210,至少基于目标物理值对待加密数据进行加密。
37.通过获取的待加密信息以及目标对象的多维度信息,确定对待加密信息进行加密时使用的数字特征,然后将多维度信息分别转换为预设物理运动的运动参数,并基于运动参数确定目标物理值,最后基于目标物理值对待加密数据进行加密的方式,达到了防止加密数据泄露的目的,从而实现了使用抛物线密钥对用户信息进行更深层次加密的技术效果,进而解决了现有技术对用户信息进行加密存在密钥外泄,造成的用户信息安全度不高的技术问题。
38.可选地,在步骤s202中,可通过以下方式获取待加密数据以及目标对象的多维度信息。在本技术一些实施例中,待加密数据以及目标对象的多维度信息是目标对象主动选择的,或者是加密系统判断出的。例如:在加密系统监测到目标对象疑似存在输入个人信息操作的情况下,获取待加密数据以及目标对象的多维度信息,待加密数据至少包括:账号数据、密码数据、账户中个人资产数据,目标对象的多维度信息至少包括:目标对象的远端设备的互联网协议地址信息、远端设备的类型信息、目标对象的名字以及年龄等信息。
39.可选地,在步骤s204中,可采用以下方式基于目标对象的多维度信息确定在对待加密数据进行加密时使用的数字特征,待加密数据包括:目标对象设置的密码数据。具体地,获取多维度信息的数字内容与非数字内容;确定数字内容为第一数字特征;对非数字内容进行转换得到第二数字特征。
40.在本技术一些可选地实施例中,对目标对象多维度信息中的数字内容与非数字内容进行判断,如判断目标对象远端设备的互联网协议地址信息为数字内容,判断远端设备的类型信息、目标对象的名字为非数字内容;确定互联网协议地址信息为第一数字特征,并将远端设备的类型信息、目标对象的名字转换为第二数字特征。
41.可选地,在步骤s206中,可通过如下具体步骤将多维度信息分别转换为预设物理运动的运动参数。具体地,确定多维度信息中目标对象的名字;将目标对象的名字转换为第二数字特征,确定第二数字特征为运动参数中的常量参数;获取多维度信息中目标对象的
年龄;根据目标对象的年龄得到运动参数中的第一变量参数;获取目标对象在输入待加密数据之前,在验证界面进行验证操作所消耗的时间;将所消耗的时间确定为运动参数中的第二变量参数。
42.在本技术一些实施例中,可将目标对象的名字转换为第二数字特征,作为重力加速度g,即平抛运动中的常量参数;将目标对象的年龄转换为第二数字特征,作为平抛运动的水平方向的初始速度v0,即平抛运动中的第一变量参数;将目标对象在输入待加密数据之前,在验证界面进行验证操作所消耗的时间转换为第二数字特征,作为平抛运动的时间t,即平抛运动中的第二变量参数。
43.可选地,在步骤s208中,采用以下方式确定运动参数对应的目标物理值。具体地,根据第一变量参数与第二变量参数得到预设物理运动在水平方向上的第一位移;根据常量参数与第二变量参数得到预设物理运动在竖直方向上的第二位移;根据第一位移与第二位移得到合位移。
44.基于平抛运动的相关公式,确定根据第一变量参数v0与第二变量参数t得到的预设物理运动在水平方向上的第一位移:s=v0×
t(即水平方向为初速度为v0的匀速直线运动);确定根据常量参数g与第二变量参数t得到的预设物理运动在竖直方向上的第二位移:h=(1/2)gt2(即竖直方向为自由落体运动);对第一位移的向量与第二位移的向量进行合并,得到合位移的向量,进而确定合位移。容易理解的,可将第一位移s、第二位移h、合位移作为基于平抛运动产生的平抛运动密钥。
45.可选地,在步骤s210中,采用如下方式至少基于目标物理值对待加密数据进行加密。具体地,获取随机生成的字符串;将第一位移、第二位移、合位移与字符串进行拼接得到加密密钥;基于加密密钥对待加密数据进行加密。
46.可选地,获取随机生成的字符串,包括:对常量参数、第一变量参数与第二变量参数进行排列组合,得到多组数组;从多组数组随机选中一组数组,将该数组确定为字符串。例如,将常量参数g、第一变量参数v0、第二变量参数t进行排列组合,得到多组数组,如数组[1]={g,v0}、数组[2]={g,t}、数组[3]={v0,t},并随机选择一个数组作为字符串。
[0047]
在本技术一些实施例中,可将第一位移s、第二位移h、合位移与字符串进行拼接得到加密密钥。
[0048]
可选地,通过以下步骤实现基于密钥对待加密数据进行加密:获取待加密数据的第一数据长度,第一数据长度用于指示待加密数据所占用的字节数;获取密钥的第二数据长度,基于第一数据长度对第二数据长度进行取余运算,得到第一余值,第二数据长度用于指示密钥所占用的字节数;根据第一余值确定密钥在待加密数据的插入位置;将密钥插入至插入位置对待加密数据进行加密。具体地,采用如下方式根据第一余值确定密钥在待加密数据的插入位置:在第一余值小于第一数据长度的情况下,将第一余值确定为密钥在待加密数据的插入位置;在第一余值大于第一数据长度的情况下,基于第一数据长度对第一余值进行取余运算,得到第二余值,将第二余值确定为密钥在待加密数据的插入位置。
[0049]
在本技术一些可选地实施例中,可通过以下方式对待加密数据进行加密:获取待加密数据的第一数据长度,如用户密码“165943xfy2”的第一数据长度为100bit,第一数据长度的间隔数量为11,其中,“1”的左侧为第一数据长度的起始间隔、“1”与“6”之间为第一数据长度的第一间隔,以此类推可知“y”与“2”之间为第一数据长度的第九间隔、“2”的右侧
为第一数据长度的第十间隔;获取密钥的第二数据长度,如由第一位移s、第二位移h、合位移、数组[1]拼接而成的密钥的第二数据长度为12bit;基于第一数据长度,对第二数据长度进行取余运算,得到第一余值4;基于第一余值4小于第一数据长度中的间隔数量11,将第一余值4对应的第一数据长度中的第四间隔位置确定为密钥在待加密数据的插入位置,将由第一位移s、第二位移h、合位移、数组[1]拼接而成的密钥插入在第一数据长度的第四间隔位置,对待加密数据进行加密。
[0050]
在本技术一些实施例中,若用户密码为“1659”,第一数据长度为66bit,且第一数据长度的间隔数量为5;在由第一位移s、第二位移h、合位移、数组[1]拼接而成的密钥的第二数据长度为12bit的情况下,基于第一数据长度对第二数据长度进行取余运算,得到第一余值6,此时第一余值6大于第一数据长度的间隔数量5;在第一余值大于第一数据长度的情况下,基于第一数据长度对第一余值进行取余运算,得到第二余值0,此时第二余值0小于第一数据长度的间隔数量5;基于第二余值0,将第二余值0对应的第一数据长度中的起始间隔位置确定为密钥在待加密数据的插入位置,将由第一位移s、第二位移h、合位移、数组[1]拼接而成的密钥插入在第一数据长度的起始间隔位置,对待加密数据进行加密。
[0051]
为在第一余值大于第一数据长度的情况下,基于第一数据长度对第一余值进行取余运算,得到第二余值,将第二余值确定为密钥在待加密数据的插入位置
[0052]
图3是根据本技术实施例的一种数据加密装置,如图3所示,该装置包括以下模块:
[0053]
获取模块40,用于获取待加密数据以及目标对象的多维度信息;
[0054]
第一确定模块42,用于基于目标对象的多维度信息确定在对待加密数据进行加密时使用的数字特征,待加密数据包括:目标对象设置的密码数据;
[0055]
转换模块44,用于将多维度信息分别转换为预设物理运动的运动参数;
[0056]
第二确定模块46,用于确定运动参数对应的目标物理值,目标物理值用于指示预设物理运动在各个方向的位移;
[0057]
加密模块48,用于至少基于目标物理值对待加密数据进行加密。
[0058]
该数据加密装置中,获取模块40,用于获取待加密数据以及目标对象的多维度信息;第一确定模块42,用于基于目标对象的多维度信息确定在对待加密数据进行加密时使用的数字特征,待加密数据包括:目标对象设置的密码数据;转换模块44,用于将多维度信息分别转换为预设物理运动的运动参数;第二确定模块46,用于确定运动参数对应的目标物理值,目标物理值用于指示预设物理运动在各个方向的位移;加密模块48,用于至少基于目标物理值对待加密数据进行加密,达到了防止加密数据泄露的目的,从而实现了使用抛物线密钥对用户信息进行更深层次加密的技术效果,进而解决了现有技术对用户信息进行加密存在密钥外泄,造成的用户信息安全度不高的技术问题。
[0059]
该数据加密模块中,在第一确定模块中包括:第一获取单元,用于获取多维度信息的数字内容与非数字内容;第一确定单元,用于确定数字内容为第一数字特征;转换单元,用于对非数字内容进行转换得到第二数字特征。
[0060]
在本技术一些实施例中,在转换模块中包括:第二确定单元,用于确定多维度信息中目标对象的名字;第三确定单元,用于将目标对象的名字转换为第二数字特征,确定第二数字特征为运动参数中的常量参数;第二获取单元,用于获取多维度信息中目标对象的年龄;得到单元,用于根据目标对象的年龄得到运动参数中的第一变量参数;验证单元,用于
获取目标对象在输入待加密数据之前,在验证界面进行验证操作所消耗的时间;第四确定单元,用于将所消耗的时间确定为运动参数中的第二变量参数。
[0061]
根据本技术实施例的另一方面,还提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,在程序运行时控制非易失性存储介质所在设备执行上述的数据加密方法。
[0062]
具体地,上述存储介质用于存储执行以下功能的程序指令,实现以下功能:获取待加密数据以及目标对象的多维度信息;基于目标对象的多维度信息确定在对待加密数据进行加密时使用的数字特征,待加密数据包括:目标对象设置的密码数据;将多维度信息分别转换为预设物理运动的运动参数;确定运动参数对应的目标物理值,目标物理值用于指示预设物理运动在各个方向的位移;至少基于目标物理值对待加密数据进行加密。
[0063]
上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
[0064]
在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0065]
在本技术所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0066]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0067]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0068]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0069]
以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1