1.本发明涉及数据加密方法技术领域,特别是涉及一种数据加密方法、一种数据加密方法装置、一种电子设备以及一种计算机可读存储介质。
背景技术:2.随着计算机和互联网技术的发展,在如金融、电信、交通、医疗、物业管理、住宿服务、快递等诸多社会公共服务领域中,收集和储存了人们大量的个人敏感信息。
3.所以,如何对敏感信息进行加密,以提高针对敏感信息的安全性是本领域技术人员需要攻克的技术问题。
技术实现要素:4.本发明实施例是提供一种数据加密方法、装置、电子设备以及计算机可读存储介质,以解决在加密过程中,提升针对待加密数据的安全性的问题。
5.本发明实施例公开了一种数据加密方法,可以包括:
6.获取待加密数据,并将所述待加密数据拆分为单位数据;
7.采用所述单位数据确定所述待加密数据的数据位数;
8.采用所述数据位数分割圆,生成多个扇形;所述扇形具有对应的角度区间数值;所述扇形的数量与数据位数相等;
9.将所述单位数据随机分配至所述扇形中,以使多个所述单位数据与多个所述角度区间数值一一对应;
10.获取时间信息,并采用所述时间信息,基于第一时间算法在所述角度区间数值中确定出针对所述单位数据的第一加密值;
11.通过所述第一加密值生成针对所述待加密数据的第一加密数据。
12.可选地,还可以包括:
13.采用所述第一加密值生成第一二进制数列;
14.对所述第一二进制数列进行逐位反转,生成第二二进制数列;
15.采用所述第二二进制数列生成第二加密值;
16.通过所述第二加密值生成第二加密数据。
17.可选地,还可以包括:
18.采用所述第二加密值计算出与所述第二加密值对应的弧长;
19.采用所述弧长与所述时间信息,基于第二时间算法计算出第三加密值;
20.通过所述第三加密值生成第三加密数据。
21.可选地,还可以包括:
22.通过对所述时间信息和所述第三加密值进行异或运算,生成第四加密值;
23.通过所述第四加密值生成第四加密数据。
24.可选地,所述时间信息可以为密钥。
25.可选地,所述单位数据可以包括用于实际表达所述待加密数据的实际单位数据,和不用于实际表达所述待加密数据的虚拟单位数据。
26.本发明实施例还公开了一种数据加密装置,可以包括:
27.加密数据获取模块,用于获取待加密数据,并将所述待加密数据拆分为单位数据;
28.数据位数确定模块,用于采用所述单位数据确定所述待加密数据的数据位数;
29.扇形生成模块,用于采用所述数据位数分割圆,生成多个扇形;所述扇形具有对应的角度区间数值;所述扇形的数量与数据位数相等;
30.单位数据分配模块,用于将所述单位数据随机分配至所述扇形中,以使多个所述单位数据与多个所述角度区间数值一一对应;
31.时间信息获取模块,用于获取时间信息,并采用所述时间信息,基于第一时间算法在所述角度区间数值中确定出针对所述单位数据的第一加密值;
32.第一加密数据生成模块,用于通过所述第一加密值生成针对所述待加密数据的第一加密数据。
33.可选地,还可以包括:
34.第一二进制数列生成模块,用于采用所述第一加密值生成第一二进制数列;
35.第二二进制数列生成模块,用于对所述第一二进制数列进行逐位反转,生成第二二进制数列;
36.第二加密值生成模块,用于采用所述第二二进制数列生成第二加密值;
37.第二加密数据生成模块,用于通过所述第二加密值生成第二加密数据。
38.可选地,还可以包括:
39.弧长计算模块,用于采用所述第二加密值计算出与所述第二加密值对应的弧长;
40.第三加密值计算模块,用于采用所述弧长与所述时间信息,基于第二时间算法计算出第三加密值;
41.第三加密数据生成模块,用于通过所述第三加密值生成第三加密数据。
42.可选地,还可以包括:
43.第四加密值生成模块,用于通过对所述时间信息和所述第三加密值进行异或运算,生成第四加密值;
44.第四加密数据生成模块,用于通过所述第四加密值生成第四加密数据。
45.可选地,所述时间信息可以为密钥。
46.可选地,所述单位数据可以包括用于实际表达所述待加密数据的实际单位数据,和不用于实际表达所述待加密数据的虚拟单位数据。
47.本发明实施例还公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;
48.所述存储器,用于存放计算机程序;
49.所述处理器,用于执行存储器上所存放的程序时,实现如本发明实施例所述的方法。
50.本发明实施例还公开了一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如本发明实施例所述的方法。
51.本发明实施例包括以下优点:
52.本发明实施例,获取待加密数据,并将所述待加密数据拆分为单位数据;采用所述单位数据确定所述待加密数据的数据位数;采用所述数据位数分割圆,生成多个扇形;所述扇形具有对应的角度区间数值;所述扇形的数量与数据位数相等;将所述单位数据随机分配至所述扇形中,以使多个所述单位数据与多个所述角度区间数值一一对应;获取时间信息,并采用所述时间信息,基于第一时间算法在所述角度区间数值中确定出针对所述单位数据的第一加密值;通过所述第一加密值生成针对所述待加密数据的第一加密数据,从而避免了明文和密文之间的加密结果单一化,也避免了明文和密文之间的对应关系单一化,进而提升了针对保密数据的安全性。
附图说明
53.图1是本发明实施例中提供的一种数据加密方法的步骤流程图;
54.图2是本发明实施例中提供的一种针对扇形和单位数据的关系示意图;
55.图3是本发明实施例中提供的一种数据加密方法装置的结构框图;
56.图4是本发明各实施例中提供的一种电子设备的硬件结构框图。
具体实施方式
57.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
58.在实际应用中,在数据传输和数据存储过程中对数据进行加密,是最简单有效的方法。然而,在加密的概念出现后,本领域技术人员一直在研究新的加密算法,从摩斯密码简单的长短信号不同组合进行加密,到数据摘要md5加密算法这类固定算法中所有数值的加密算法,再到des对称加密算法这类需要使用者添加密钥或偏移向量的加密算法,虽然加密算法的逻辑越来越复杂,但不论使用多少轮异或,置换,代换,移位四种基本运算,不断改变运算顺序,或者让使用者最大限度的参与到加密过程中,明文和密文的一一对应关系都不会改变,在对明文密文进行一定量的收集后,通过大数据分析对比,大概率可以找到这个一一对应的关系,进而增大了针对加密数据的泄露风险。
59.参照图1,示出了本发明实施例中提供的一种数据加密方法的步骤流程图,具体可以包括如下步骤:
60.步骤101,获取待加密数据,并将所述待加密数据拆分为单位数据;
61.步骤102,采用所述单位数据确定所述待加密数据的数据位数;
62.步骤103,采用所述数据位数分割圆,生成多个扇形;所述扇形具有对应的角度区间数值;所述扇形的数量与数据位数相等;
63.步骤104,将所述单位数据随机分配至所述扇形中,以使多个所述单位数据与多个所述角度区间数值一一对应;
64.步骤105,获取时间信息,并采用所述时间信息,基于第一时间算法在所述角度区间数值中确定出针对所述单位数据的第一加密值;
65.步骤106,通过所述第一加密值生成针对所述待加密数据的第一加密数据。
66.在具体实现中,本发明实施条例的待加密数据可以是任意字符,例如,英文字母、
拉丁文字母、汉语拼音、汉语注音、汉字等等,也可以是数字或其他符号,为使本领域技术人员更好的理解本发明实施例,以下将用小写英文字母和数字作为示例展示针对待加密数据的加密过程,当然,本领域技术人员可以通过如下方式对其他类型的数据进行加密,对此,本发明实施例不作限制。
67.本发明实施例在获取到待加密数据后,可以通过等分或不等分的方式将待加密数据拆分为单位数据,例如,可以将26个小写英文字母“a-z”及阿拉伯数字“0-9”作为待加密数据,即,待加密数据可以为“abcdefghijklmnopqrstuvwxyz0123456789”这一串字符串,在获取到待加密数据后,可以将其拆分成“abcdefgh”、“ijklmnopqrstuvwxyz”、“0123456789”这3个单位数据,也可以将其拆分成“ab”、“cd”、“ef”、“gh”、“ij”、“kl”、“mn”、“op”、“qr”“st”、“uv”、“wx”、“yz”、“01”、“23”、“45”、“67”、“89”这13个单位数据。
68.可选地,本发明实施例的单位数据可以是最小单位数据,例如,将“abcdefghijklmnopqrstuvwxyz0123456789”这一串字符串的每一个字母和数字都作为一个单位数据。
69.在完成对待加密数据的拆分后,本发明实施例可以采用单位数据确定待加密数据的数据位数,例如,将“abcdefghijklmnopqrstuvwxyz0123456789”这一待加密数据分成“abcdefgh”、“ijklmnopqrstuvwxyz”、“0123456789”这3个单位数据,待加密数据的数据位数为3位,将“abcdefghijklmnopqrstuvwxyz0123456789”这一待加密数据分成“ab”、“cd”、“ef”、“gh”、“ij”、“kl”、“mn”、“op”、“qr”“st”、“uv”、“wx”、“yz”、“01”、“23”、“45”、“67”、“89”则待加密数据的数据位数为13位。
70.在具体实现中,本发明实施例可以采用数据位数分割圆,生成多个扇形,而扇形具有内角,所以,扇形可以具有对应的角度区间数值,扇形的数量则可以与数据位数相等。
71.可选地,在本发明实施例中,针对原的分割方式可以为等分或不等分。
72.在生成扇形后,本发明实施例可以将单位数据随机分配至扇形中,以使多个单位数据与多个所述角度区间数值一一对应
73.参考图2,图2是本发明实施例提供的一种针对扇形和单位数据的关系示意图,若将“abcdefghijklmnopqrstuvwxyz0123456789”这一待加密数据分成单位数据201“abcdefgh”、单位数据202“0123456789”、单位数据203“stuvwxyz”、单位数据204“ijklmnopqr”这4个单位数据后,待加密数据的数据位数为4位,并可以将圆分割为扇形205、扇形206、扇形207、扇形208四个扇形,扇形205的角度区间数值可以为0
°
至30
°
,扇形206的角度区间数值可以为30
°
至180
°
,扇形207的角度区间数值可以为180
°
至210
°
,扇形208的角度区间数值可以为210
°
至360
°
,其中,单位数据201“abcdefgh”对应的角度区间数值可以为0
°
至30
°
,单位数据202“0123456789”对应的角度区间数值可以为30
°
至180
°
,单位数据203“stuvwxyz”对应的角度区间数值可以为180
°
至210
°
,单位数据204“ijklmnopqr”对应的角度区间数值可以为210
°
至360
°
。
74.在完成对单位数据的分配后,本发明实施例可以获取时间信息,并可以采用时间信息,基于第一时间算法在角度区间数值中确定出针对单位数据的第一加密值。
75.例如,将“abcdefghijklmnopqrstuvwxyz0123456789”这一待加密数据拆分成最小单位数据,即,待加密数据的数据位数为36,将圆分割成36份扇形,并将单位数据随机分配至扇形中,以使多个单位数据与多个角度区间数值一一对应,可以得到如下对应表:
76.圆心角度对应内容圆心角度对应内容
0~107181~190f11~20q191~200421~30w201~210g31~40e211~220h41~505221~230j51~60r231~240k61~70t241~250071~80y251~260981~908261~270l91~100u271~280z101~110i281~290x111~120o291~3002121~1306301~310c131~140p311~320v141~150a321~330b151~1601331~3403161~170s341~350n171~180d351~360m
77.其中,每一个单位数据对应一个角度区间数值。
78.例如,假设对待加密数据加密的当天时间信息为2022年3月30号,则可以获取这一时间信息,将其记作20220330,可以对时间信息的日期位数除以3取余,以余数决定保留小数位数,设余数为0,取整数;余数为1,取1位小数;余数为2,取2位小数;30
÷
3=10,余数为0,则取整数,则单位数据“e”的第一加密值可以是31-40中的随机整数,如36或39,可以分别记作“036”、“039”,即,31-40中的任意整数都可以表示单位数据“e”,单位数据“5”的第一加密值可以是50或是47,可以分别记作“050”、“047”,即,41-50中的任意整数都可以表示单位数据“5”,同理,若待加密数据加密的当天日期为2022年4月1号则可以获取这一日期,将时间信息记作20220401,对0220401的后两位除以三取余,以余数决定保留小数位数,则单位数据“5”的第一加密值可以是41至50中保留两位小数的任意数,如42度9分或44度7分,可以分别记作“4209”、“4407”,即,在41-50中,保留两位小数的任意数都可以表示单位数据“5”。
79.本发明实施例可以在确定出所有单位数据对应的第一加密值后,将多个第一加密值组合生成针对待加密数据的第一加密数据。
80.可选地,360度以上的第一加密值可以对应表达空格的单位数据,以拆分单词和数字。
81.本发明实施例,获取待加密数据,并将所述待加密数据拆分为单位数据;采用所述单位数据确定所述待加密数据的数据位数;采用所述数据位数分割圆,生成多个扇形;所述扇形具有对应的角度区间数值;所述扇形的数量与数据位数相等;将所述单位数据随机分配至所述扇形中,以使多个所述单位数据与多个所述角度区间数值一一对应;获取时间信息,并采用所述时间信息,基于第一时间算法在所述角度区间数值中确定出针对所述单位数据的第一加密值;通过所述第一加密值生成针对所述待加密数据的第一加密数据,从而
避免了明文和密文之间的加密结果单一化,也避免了明文和密文之间的对应关系单一化,进而提升了针对保密数据的安全性。
82.在上述实施例的基础上,提出了上述实施例的变型实施例,在此需要说明的是,为了使描述简要,在变型实施例中仅描述与上述实施例的不同之处。
83.在本发明的一个可选地实施例中,还包括:
84.采用所述第一加密值生成第一二进制数列;
85.对所述第一二进制数列进行逐位反转,生成第二二进制数列;
86.采用所述第二二进制数列生成第二加密值;
87.通过所述第二加密值生成第二加密数据。
88.在具体实现中,本发明实施例可以采用第一加密值生成第一二进制数列,并对所第一二进制数列进行逐位反转,生成第二二进制数列,再采用第二二进制数列生成第二加密值。
89.例如,字母c的第一加密值为304,将304进行二进制转化生成第一二进制数列“100110000”,然后对“100110000”进行逐位反转,生成第二二进制数列“011001111”,在生成生成第二二进制数列后,可以对第二二进制数列“011001111”进行十进制转换生成第二加密值207。
90.在将所有第一加密数据都转化为第二加密值后,本发明实施例可以通过第二加密值生成第二加密数据。
91.本发明实施例通过采用所述第一加密值生成第一二进制数列;对所述第一二进制数列进行逐位反转,生成第二二进制数列;采用所述第二二进制数列生成第二加密值;通过所述第二加密值生成第二加密数据,从而更进一步提升了针对保密数据的安全性。
92.在本发明的一个可选地实施例中,还包括:
93.采用所述第二加密值计算出与所述第二加密值对应的弧长;
94.采用所述弧长与所述时间信息,基于第二时间算法计算出第三加密值;
95.通过所述第三加密值生成第三加密数据。
96.在具体实现中,本发明实施例的第二加密值仍可以表示扇形的内角度数,所以,可以采用第二加密值计算出与第二加密值对应的弧长。
97.例如,可以通过如下公式计算出弧长l=(r/180)*π*n,其中,l为弧长,r为半径,可取1;π为圆周率,可取3;n为圆心角度数,可取第二加密值。
98.在计算出与第二加密值对应的弧长后,可以采用弧长与时间信息,基于第二时间算法计算出第三加密值。
99.例如,假设对待加密数据加密的当天时间信息为2022年3月30号,则可以获取这一时间信息,将其记作20220330,可以对时间信息的日期位数除以2取余,以余数决定保留小数位数,设余数为0,取2位小数;余数为1,取3位小数;30
÷
2=15,余数为0,取2位小数,第二加密值为207,则圆心角207
°
的扇形的弧长为3.45,记作345,则第三加密值为345。
100.在将所有第二加密数据都转化为第三加密值后,本发明实施例可以通过第三加密值生成第三加密数据。
101.本发明实施例,通过采用所述第二加密值计算出与所述第二加密值对应的弧长;采用所述弧长与所述时间信息,基于第二时间算法计算出第三加密值;通过所述第三加密
值生成第三加密数据,从而更进一步提升了针对保密数据的安全性。
102.在本发明的一个可选地实施例中,还包括:
103.通过对所述时间信息和所述第三加密值进行异或运算,生成第四加密值;
104.通过所述第四加密值生成第四加密数据。
105.在具体实现中,本发明实施例可以通过对时间信息和第三加密值进行异或运算,生成第四加密值。
106.例如,将345进行二进制转换得到二进制数列101011001,假设对待加密数据加密的当天时间信息为2022年3月30号,则可以获取这一时间信息,将其记作20220330,将20220330进行二进制转换得到二进制数列1001101001000100110101010,通过对时间信息和第三加密值进行异或运算345(二进制101011001)xor 20220330(二进制1001101001000100110101010)=20220147(二进制1001101001000100011110011),即,第四加密值为20220147(二进制1001101001000100011110011)。
107.在将所有第三加密数据都转化为第四加密值后,本发明实施例可以通过第四加密值生成第四加密数据。
108.本发明实施例通过对所述时间信息和所述第三加密值进行异或运算,生成第四加密值;通过所述第四加密值生成第四加密数据,从而更进一步提升了针对保密数据的安全性。
109.在本发明的一个可选地实施例中,所述时间信息为密钥。
110.在实际应用中,将时间信息作为密钥,可以保证密钥的时效性,从而更进一步提升了针对保密数据的安全性,同时,本发明实施例的密钥还可以用于解密,将密文还原为明文,即,还原待加密数据。
111.例如,假设对待加密数据加密的当天时间信息为2022年3月30号,则可以获取这一时间信息,密钥则为20220330,第四加密数据中的第四加密值为20220147,通过对第四加密值20220147和密钥20220330进行按位异或计算,则可以计算出第三加密值为345,日期位数30除以2的余数为0,可得第三加密值345对应弧长为3.45,利用弧长公式l=(r/180)*π*n(l为弧长,r为1,π取3,n为圆心角度数),计算出第二加密值为207,将第二加密值207按位取反,计算出第一加密值为304,日期位数30除以2的余数为0,可得304对应304度,304度在301度~310度区间内,在第四加密数据中,与第四加密值对应结果为c。
112.在本发明的一个可选地实施例中,所述单位数据包括用于实际表达所述待加密数据的实际单位数据,和不用于实际表达所述待加密数据的虚拟单位数据。
113.在实际应用中,本发明实施例可以采用多分的方式将待加密数据拆分为单位数据,具体地,可以将待加密数据拆分为实际表达待加密数据的实际单位数据,和不用于实际表达所述待加密数据的虚拟单位数据。
114.例如,待加密数据为“0123456789”这一串字符串时,可以将待加密数据更改为“0_1_2_3_4_5_6_7_8_9”这一数列,其中“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”、“9”实际表达待加密数据的实际单位数据,另外9个“_”则可以为不用于实际表达所述待加密数据的虚拟单位数据,若将“0_1_2_3_4_5_6_7_8_9”这一数列拆分为最小单位数据,则待加密数据的位数为19,意味着可以将圆分割为19个扇形,在将单位数据随机分配至扇形中后,会有9个扇形的内角对应“_”,然而,在实际应用中,若出现虚拟单位数据,即,解码过程中出现“_”,可视
为有第三方进行尝试加密算法破解,或加密数据受到垃圾数据攻击,所以,本发明实施例可以通过采用包括用于实际表达待加密数据的实际单位数据,和不用于实际表达待加密数据的虚拟单位数据一起构成单位数据,在解码时出现虚拟单位数据时,进行安全预警,从而更进一步提升了针对保密数据的安全性。
115.进一步地,本发明实施例通过利用圆心角度对数据进行加密,将加密关系变成一对多,实现了同一原始数据,同一时间进行加密,密文也有多种结果;通过结合扇形弧长公式、按位取反、按位异或,增加了算法的复杂程度;通过时间信息决定保留的小数位数,使同一原文在单位时间内的加密结果的可能性与先前的时间不相同;通过利用日期作为密钥,保证了其时效性。
116.为使本领域技术人员更好的理解本发明实施例,以下用一完整示例对本发明实施例进行说明。
117.第一步:按需求将圆形进行等分,如需对26个小写英文字母及阿拉伯数字0-9进行加密,将圆形等分36份。
118.第二步:将最小原子数据源随机分配至拆分好的扇形中得到如下表格。
119.[0120][0121]
第三步:扇形对应的圆心角度就是英文字母或阿拉伯数字加密后的取值范围,利用数据传输(存储)当天日期后两位除以三取余决定保留小数位数(余数为0,取整数;余数为1,取1位小数;余数为2,取2位小数)。如2022年3月30号(20220330)对数据进行存储,30除以3,余数为0,取整数,36度(036)对应英文字母e,39度(039)也对应英文字母e,50度(050)对应阿拉伯数字5;2022年4月1号(20220401)对数据进行存储,01除以3,余数为1,保留1位小数,36度3分(0363)对应英文字母e,39度0分(0390)也对应英文字母e,50度9分(0509)对应阿拉伯数字5。360度以上对应空格,用来拆分单词和数字。
[0122]
第四步:按对应关系将英文单词或阿拉伯数字替换成对应的圆心角度,然后进行按位取反,如:英文字母c对应304(二进制100110000),按位取反结果为207(二进制011001111)。
[0123]
第五步:取单位圆内,该圆心角对应扇形弧长(保留两位小数)l=(r/180)*π*n(l为弧长,r为1,π取3,n为圆心角度数),利用数据传输(存储)当天日期月份位除以二取余决定保留小数位数(余数为0,取2位小数;余数为1,取3位小数)如2022年3月30号(20220330)对数据进行存储,30除以2,余数为0,取2位小数,圆心角207度对应的扇形弧长为3.45,记作345,进一步地,加解密双方可就扇形弧长公式中π保留小数位进行约定,也可对按位取反,按位异或在整个算法中的顺序进行约定。
[0124]
第六步:将传输(存储)当天日期作为密钥,传输中通过增加“时间戳”参数来区分密钥,存储时通过“保存时间”来区分密钥,如2022年3月30日,记作20220330,对圆心角对应扇形弧长进行按位异或,如345(二进制101011001)xor 20220330(二进制1001101001000100110101010)=20220147(二进制1001101001000100011110011)。
[0125]
第七步:解密
[0126]
解密即对加密结果进行逆向处理。
[0127]
如:在2022年3月30号,对c(圆心角取304)加密结果可为20220147,则解密过程为:(第六步逆向处理)20220147进行按位异或计算,密钥为20220330,结果为345;(第五步逆向处理)30除以2,余数为0,可得345对应弧长为3.45,利用弧长公式l=(r/180)*π*n(l为弧长,r为1,π取3,n为圆心角度数),计算圆心角度,结果为207;(第四步逆向处理)207按位取反,结果为304;(第三步逆向处理)30除以3,余数为0,可得304对应304度,304度在301度~
310度区间内,对应结果为c,即,加密:c
→
304
→
207
→
345
→
20220147;解密:20220147
→
345
→
207
→
304
→
c。
[0128]
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
[0129]
参照图3,示出了本发明实施例中提供的一种数据加密方法装置的结构框图,具体可以包括如下模块:
[0130]
加密数据获取模块301,用于获取待加密数据,并将所述待加密数据拆分为单位数据;
[0131]
数据位数确定模块302,用于采用所述单位数据确定所述待加密数据的数据位数;
[0132]
扇形生成模块303,用于采用所述数据位数分割圆,生成多个扇形;所述扇形具有对应的角度区间数值;所述扇形的数量与数据位数相等;
[0133]
单位数据分配模块304,用于将所述单位数据随机分配至所述扇形中,以使多个所述单位数据与多个所述角度区间数值一一对应;
[0134]
时间信息获取模块305,用于获取时间信息,并采用所述时间信息,基于第一时间算法在所述角度区间数值中确定出针对所述单位数据的第一加密值;
[0135]
第一加密数据生成模块306,用于通过所述第一加密值生成针对所述待加密数据的第一加密数据。
[0136]
可选地,还可以包括:
[0137]
第一二进制数列生成模块,用于采用所述第一加密值生成第一二进制数列;
[0138]
第二二进制数列生成模块,用于对所述第一二进制数列进行逐位反转,生成第二二进制数列;
[0139]
第二加密值生成模块,用于采用所述第二二进制数列生成第二加密值;
[0140]
第二加密数据生成模块,用于通过所述第二加密值生成第二加密数据。
[0141]
可选地,还可以包括:
[0142]
弧长计算模块,用于采用所述第二加密值计算出与所述第二加密值对应的弧长;
[0143]
第三加密值计算模块,用于采用所述弧长与所述时间信息,基于第二时间算法计算出第三加密值;
[0144]
第三加密数据生成模块,用于通过所述第三加密值生成第三加密数据。
[0145]
可选地,还可以包括:
[0146]
第四加密值生成模块,用于通过对所述时间信息和所述第三加密值进行异或运算,生成第四加密值;
[0147]
第四加密数据生成模块,用于通过所述第四加密值生成第四加密数据。
[0148]
可选地,所述时间信息可以为密钥。
[0149]
可选地,所述单位数据可以包括用于实际表达所述待加密数据的实际单位数据,和不用于实际表达所述待加密数据的虚拟单位数据。
[0150]
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关
之处参见方法实施例的部分说明即可。
[0151]
另外,本发明实施例还提供了一种电子设备,包括:处理器,存储器,存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述数据加密方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0152]
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述数据加密方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等。
[0153]
图4为实现本发明各个实施例的一种电子设备的硬件结构示意图。
[0154]
该电子设备400包括但不限于:射频单元401、网络模块402、音频输出单元403、输入单元404、传感器405、显示单元406、用户输入单元407、接口单元408、存储器409、处理器410、以及电源411等部件。本领域技术人员可以理解,图4中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,电子设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
[0155]
应理解的是,本发明实施例中,射频单元401可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器410处理;另外,将上行的数据发送给基站。通常,射频单元401包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元401还可以通过无线通信系统与网络和其他设备通信。
[0156]
电子设备通过网络模块402为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
[0157]
音频输出单元403可以将射频单元401或网络模块402接收的或者在存储器409中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元403还可以提供与电子设备400执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元403包括扬声器、蜂鸣器以及受话器等。
[0158]
输入单元404用于接收音频或视频信号。输入单元404可以包括图形处理器(graphics processing unit,gpu)4041和麦克风4042,图形处理器4041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元406上。经图形处理器4041处理后的图像帧可以存储在存储器409(或其它存储介质)中或者经由射频单元401或网络模块402进行发送。麦克风4042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元401发送到移动通信基站的格式输出。
[0159]
电子设备400还包括至少一种传感器405,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板4061的亮度,接近传感器可在电子设备400移动到耳边时,关闭显示面板4061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态(比
如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器405还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
[0160]
显示单元406用于显示由用户输入的信息或提供给用户的信息。显示单元406可包括显示面板4061,可以采用液晶显示器(liquid crystal display,lcd)、有机发光二极管(organic light-emitting diode,oled)等形式来配置显示面板4061。
[0161]
用户输入单元407可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元407包括触控面板4071以及其他输入设备4072。触控面板4071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板4071上或在触控面板4071附近的操作)。触控面板4071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器410,接收处理器410发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板4071。除了触控面板4071,用户输入单元407还可以包括其他输入设备4072。具体地,其他输入设备4072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
[0162]
进一步的,触控面板4071可覆盖在显示面板4061上,当触控面板4071检测到在其上或附近的触摸操作后,传送给处理器410以确定触摸事件的类型,随后处理器410根据触摸事件的类型在显示面板4061上提供相应的视觉输出。虽然在图4中,触控面板4071与显示面板4061是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板4071与显示面板4061集成而实现电子设备的输入和输出功能,具体此处不做限定。
[0163]
接口单元408为外部装置与电子设备400连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(i/o)端口、视频i/o端口、耳机端口等等。接口单元408可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到电子设备400内的一个或多个元件或者可以用于在电子设备400和外部装置之间传输数据。
[0164]
存储器409可用于存储软件程序以及各种数据。存储器409可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器409可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0165]
处理器410是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器409内的软件程序和/或模块,以及调用存储在存储器409内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器410可包括一个或多个处理单元;优选的,处理器410可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要
处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器410中。
[0166]
电子设备400还可以包括给各个部件供电的电源411(比如电池),优选的,电源411可以通过电源管理系统与处理器410逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
[0167]
另外,电子设备400包括一些未示出的功能模块,在此不再赘述。
[0168]
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0169]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0170]
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
[0171]
本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0172]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0173]
在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0174]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0175]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0176]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0177]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
技术特征:1.一种数据加密方法,其特征在于,包括:获取待加密数据,并将所述待加密数据拆分为单位数据;采用所述单位数据确定所述待加密数据的数据位数;采用所述数据位数分割圆,生成多个扇形;所述扇形具有对应的角度区间数值;所述扇形的数量与数据位数相等;将所述单位数据随机分配至所述扇形中,以使多个所述单位数据与多个所述角度区间数值一一对应;获取时间信息,并采用所述时间信息,基于第一时间算法在所述角度区间数值中确定出针对所述单位数据的第一加密值;通过所述第一加密值生成针对所述待加密数据的第一加密数据。2.根据权利要求1所述的方法,其特征在于,还包括:采用所述第一加密值生成第一二进制数列;对所述第一二进制数列进行逐位反转,生成第二二进制数列;采用所述第二二进制数列生成第二加密值;通过所述第二加密值生成第二加密数据。3.根据权利要求2所述的方法,其特征在于,还包括:采用所述第二加密值计算出与所述第二加密值对应的弧长;采用所述弧长与所述时间信息,基于第二时间算法计算出第三加密值;通过所述第三加密值生成第三加密数据。4.根据权利要求3所述的方法,其特征在于,还包括:通过对所述时间信息和所述第三加密值进行异或运算,生成第四加密值;通过所述第四加密值生成第四加密数据。5.根据权利要求1-4任一项所述的方法,其特征在于,所述时间信息为密钥。6.根据权利要求1所述的方法,其特征在于,所述单位数据包括用于实际表达所述待加密数据的实际单位数据,和不用于实际表达所述待加密数据的虚拟单位数据。7.一种数据加密装置,其特征在于,包括:加密数据获取模块,用于获取待加密数据,并将所述待加密数据拆分为单位数据;数据位数确定模块,用于采用所述单位数据确定所述待加密数据的数据位数;扇形生成模块,用于采用所述数据位数分割圆,生成多个扇形;所述扇形具有对应的角度区间数值;所述扇形的数量与数据位数相等;单位数据分配模块,用于将所述单位数据随机分配至所述扇形中,以使多个所述单位数据与多个所述角度区间数值一一对应;时间信息获取模块,用于获取时间信息,并采用所述时间信息,基于第一时间算法在所述角度区间数值中确定出针对所述单位数据的第一加密值;第一加密数据生成模块,用于通过所述第一加密值生成针对所述待加密数据的第一加密数据。8.根据权利要求7所述的装置,其特征在于,还包括:第一二进制数列生成模块,用于采用所述第一加密值生成第一二进制数列;第二二进制数列生成模块,用于对所述第一二进制数列进行逐位反转,生成第二二进
制数列;第二加密值生成模块,用于采用所述第二二进制数列生成第二加密值;第二加密数据生成模块,用于通过所述第二加密值生成第二加密数据。9.根据权利要求8所述的装置,其特征在于,还包括:弧长计算模块,用于采用所述第二加密值计算出与所述第二加密值对应的弧长;第三加密值计算模块,用于采用所述弧长与所述时间信息,基于第二时间算法计算出第三加密值;第三加密数据生成模块,用于通过所述第三加密值生成第三加密数据。10.根据权利要求9所述的装置,其特征在于,还包括:第四加密值生成模块,用于通过对所述时间信息和所述第三加密值进行异或运算,生成第四加密值;第四加密数据生成模块,用于通过所述第四加密值生成第四加密数据。11.根据权利要求7-10任一项所述的装置,其特征在于,所述时间信息为密钥。12.根据权利要求7所述的装置,其特征在于,所述单位数据包括用于实际表达所述待加密数据的实际单位数据,和不用于实际表达所述待加密数据的虚拟单位数据。13.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行存储器上所存放的程序时,实现如权利要求1-6任一项所述的方法。14.一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-6任一项所述的方法。
技术总结本发明实施例提供了一种数据加密方法、装置、电子设备及存储介质,通过获取待加密数据,并将待加密数据拆分为单位数据;采用单位数据确定待加密数据的数据位数;采用数据位数分割圆,生成多个扇形;扇形具有对应的角度区间数值;扇形的数量与数据位数相等;将单位数据随机分配至扇形中,以使多个单位数据与多个角度区间数值一一对应;获取时间信息,并采用时间信息,基于第一时间算法在角度区间数值中确定出针对单位数据的第一加密值;通过第一加密值生成针对待加密数据的第一加密数据,从而避免了明文和密文之间的加密结果单一化,也避免了明文和密文之间的对应关系单一化,进而提升了针对保密数据的安全性。针对保密数据的安全性。针对保密数据的安全性。
技术研发人员:徐永生
受保护的技术使用者:中国电信股份有限公司
技术研发日:2022.06.29
技术公布日:2022/11/1