
1.本发明涉及数据安全领域,特别是一种局部加密传输和解密方法。
背景技术:2.随着工业互联网日新月异的发展,给工业控制系统带来操作便捷的同时也带来了一系列安全问题。当前工业互联网安全形势严峻,工业安全事件频发,重大工业信息安全事件层出不穷。工业互联网数据一旦遭受攻击,会造成工艺信息泄露、商业信息泄露、保密信息泄露、产品质量下降、生产线停转等后果,这类针对数据信息的攻击轻则会对工业企业的正常生产运行造成影响,重则还会造成重大安全生产事故,给人民生命财产造成严重损失。更为甚者,一旦能源、航空航天等重要领域的工业数据信息安全遭到攻击,还将对国家总体安全造成危害,产生不可挽回的严重后果。所以,保证工业互联网的数据信息安全,是关系到工业互联网系统顺利、快速发展的关键因素之一。
技术实现要素:3.本技术实施例提供了一种数据加密传输和解密方法、存储器和处理器,以至少解决数据传输的安全问题。
4.本发明的第一方面,提出一种数据加密传输方法,应用于数据发送端,
5.利用第一秘钥对部分数据明文对称加密形成第一加密数据,第一加密数据和剩余未加密数据明文集合形成第一密文;
6.利用第一公钥对第一加密数据和第一秘钥非对称加密,对应获得第二加密数据和第一加密秘钥;所述第一公钥来自于数据接收端;
7.向数据接收端发送第二加密数据、第一加密秘钥和第一密文。
8.进一步的,在本发明中,所述对部分数据明文加密通过以下方式进行:
9.对数据明文进行等量分割得到若干数据块,随机取其中部分数据块作为待加密的数据。
10.进一步的,在本发明中,第一加密数据和剩余未加密数据明文集合形成第一密文的方法包括:
11.对等量分割后的数据块进行标记并将标记序号保存在数据块各自的头文件中,将第一加密数据和剩余未加密数据明文按照数据块的序号顺序组合形成第一密文。
12.进一步的,在本发明中,随机取三分之二数量的数据块作为待加密数据。
13.进一步的,在本发明中,所述第一公钥通过以下方式获得:
14.选择两个素数p和q,计算n=pq和φ(n)=(p
‑
1)(q
‑
1);
15.选择整数e使其与φ(n)互素且小于φ(n),求得d使得de=1modφ(n);
16.则(n,e)为第一公钥,(d,n)为与第一公钥对应的第一私钥。
17.本发明的另一个方面,在于提供一种数据解密方法,应用于数据接收端,其特征在于:
18.接收数据发送端发来的数据,所述数据包括第二加密数据、第一加密秘钥和第一密文;所述第二加密数据为依次采用第一秘钥、第一公钥对部分数据明文进行对称加密、非对称加密后获得的数据;所述第一加密秘钥为采用第一公钥对第一秘钥非对称加密后获得的数据;所述第一密文为第一公钥对部分数据明文加密后形成的数据和剩余未加密数据集合形成;
19.利用第一私钥对第二加密数据和第一加密秘钥非对称解密,对应获得第一加密数据和第一秘钥;
20.对比第一密文与第一加密数据,获得所述剩余未加密数据明文;
21.利用第一秘钥对第一加密数据对称解密,获得所述部分数据明文;
22.所述剩余未加密数据明文和所述部分数据明文形成解密后的明文;
23.上述第一公钥与第一私钥为非对称加密方式获得。
24.进一步的,在本发明中,利用第一秘钥对第一加密数据对称解密,获得所述部分数据明文包括:
25.按照第一加密数据对应的数据块的标记序号进行解密;所述标记为数据明文在加密前进行等量分割后得到的对应的每个数据块的标记。
26.进一步的,在本发明中,所述剩余未加密数据明文和所述部分数据明文形成解密后的明文包括:
27.按照部分数据明文和剩余未加密数据明文对应的数据块的标记序号进行组合。
28.本发明的第三个方面,在于提供一种存储器,用于存储软件,其中,所述软件用于执行上述任一项所述的方法。
29.本发明的第三个方面,在于提供一种处理器,用于执行软件,其中,所述软件用于执行上述任一项所述的方法。
30.有益效果:
31.由以上技术方案可知,本发明的技术方案提供了一种数据加密传输方法,应用于数据发送端,利用第一秘钥对部分数据明文对称加密形成第一加密数据,第一加密数据和剩余未加密数据明文集合形成第一密文;利用第一公钥对第一加密数据和第一秘钥非对称加密,对应获得第二加密数据和第一加密秘钥;所述第一公钥来自于数据接收端;向数据接收端发送第二加密数据、第一加密秘钥和第一密文。通过上述方案,解决了数据传输的安全问题。
32.应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。
33.结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。
附图说明
34.附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:
35.图1是本发明实施例的一种数据加密传输和解密方法的数据传输路线图;
36.图2是本发明实施例的一种数据加密传输方法的流程示意图;
37.图3是本发明实施例的一种数据解密方法的流程示意图。
具体实施方式
38.为了更了解本发明的技术内容,特举具体实施例并配合所附图式说明如下。
39.在本公开中参照附图来描述本发明的各方面,附图中示出了许多说明的实施例。本公开的实施例不必定意在包括本发明的所有方面。应当理解,上面介绍的多种构思和实施例,以及下面更加详细地描述的那些构思和实施方式可以以很多方式中任意一种来实施,这是因为本发明所公开的构思和实施例并不限于任何实施方式。另外,本发明公开的一些方面可以单独使用,或者与本发明公开的其他方面的任何适当组合来使用。
40.根据本发明实施例,提供了一种工业互联网中企业通信的数据加密传输和解密方法,图1为该方法所提出的数据信息从数据发送端传输到数据接收端的整个过程,包括:
41.数据发送端和数据接收端是工业互联网中的注册企业,在正式进行数据通信之前还可以通过身份认证模块来对双方进行身份认证来提高安全性。
42.具体的,各个企业要通过工业互联网平台进行信息交流,须要首先进行企业的实名注册,企业首要负责人需要使用手机号或者身份证号等信息进行身份确认,如此可以提高数据的安全性,免于重要数据流向网络攻击者。
43.经过身份认证的企业双方才可以开始正式数据通信,图2为数据发送端对明文处理加密传输的流程示意图,包括:
44.步骤s102、利用第一秘钥对部分数据明文对称加密形成第一加密数据,第一加密数据和剩余未加密数据明文集合形成第一密文;
45.步骤s104、利用第一公钥对第一加密数据和第一秘钥非对称加密,对应获得第二加密数据和第一加密秘钥;所述第一公钥来自于数据接收端;
46.步骤s106、向数据接收端发送第二加密数据、第一加密秘钥和第一密文。
47.通过上述方式,采用对称加密的方式对部分数据明文进行第一次加密获得第一加密数据,并将第一加密数据和未加密的明文组合成为第一密文;然后采用非对称加密的方式对第一加密数据和对称加密的第一秘钥进行第二次加密,获得第二加密数据和第一加密秘钥;最后将获得的数据包括第二加密数据、第一加密秘钥和第一密文发出。本方法结合了现有的数据加密方法的优势,例如对称加密方法、非对称加密方法,并且加入了数据局部加密的特点,在对数据进行安全保护的同时可以提高工业互联网的运行效率,使得工业互联网可以高效有序的顺利运行。
48.作为优选的实施方式,步骤s102中,为了能够有序地对数据明文进行处理,所述对部分数据明文加密通过以下方式进行:对数据明文进行等量分割得到若干数据块,随机取其中部分数据块作为待加密的数据。
49.作为优选的实施方式,步骤s102中,第一加密数据和剩余未加密数据明文集合形成第一密文的方法包括:对等量分割后的数据块进行标记并将标记序号保存在数据块各自的头文件中,将第一加密数据和剩余未加密数据明文按照数据块的序号顺序组合形成第一密文。
50.具体的,选择des算法进行第一次加密,该算法具有速度快但安全性略低的问题。具体的,即对数据明文m按照数据的排列顺序等量不重合地分割成长度相同的数据块,每个数据块的长度均为64位,最后一个数据块不足64位的用0补全,并且对所有数据块进行序号标记为1、2、
···
、k,标记序号保存在数据块各自的头文件中。
51.作为优选的实施方式,步骤s102中,上述部分数据块的选择按照随机方式进行,并且随机取三分之二数量的数据块作为待加密数据。对随机获得的数据块记录其数据块的序号组成为集合u。数据发送端生成第一秘钥k1,对集合u内的所有数据块进行加密处理得到加密数据块,将其与三分之一数量的未加密数据块按照序号顺序组合成最终密文c。
52.作为优选的实施方式,步骤s104中,选择rsa算法进行第二次加密,该算法具有安全性高但速度较慢的问题。具体的,所述第一公钥通过以下方式获得:
53.选择两个素数p和q,计算n=pq和φ(n)=(p
‑
1)(q
‑
1);
54.选择整数e使其与φ(n)互素且小于φ(n),求得d使得de=1modφ(n);
55.则(n,e)为第一公钥,(d,n)为与第一公钥对应的第一私钥。
56.具体的,在本发明的实施例中,上述第一公钥和第一私钥均是由数据接收端生成的,数据发送端利用第一公钥(n,e)分别将集合u内的序号组合和第一秘钥k1进行加密,然后将加密后的u序号组合、加密的第一秘钥k1和最终密文c发送给数据接收端。
57.本技术的另一个实施例,提供一种数据解密方法,应用于数据接收端,如图3所示为发明实施例的一种数据解密方法的流程示意图,由图3可知,该方法包括以下步骤:
58.步骤s202、接收数据发送端发来的数据,所述数据包括第二加密数据、第一加密秘钥和第一密文;所述第二加密数据为依次采用第一秘钥、第一公钥对部分数据明文进行对称加密、非对称加密后获得的数据;所述第一加密秘钥为采用第一公钥对第一秘钥非对称加密后获得的数据;所述第一密文为第一公钥对部分数据明文加密后形成的数据和剩余未加密数据集合形成;
59.步骤s202、利用第一私钥对第二加密数据和第一加密秘钥非对称解密,对应获得第一加密数据和第一秘钥;
60.步骤s204、对比第一密文与第一加密数据,获得所述剩余未加密数据明文;
61.步骤s206、利用第一秘钥对第一加密数据对称解密,获得所述部分数据明文;
62.步骤s208、所述剩余未加密数据明文和所述部分数据明文形成解密后的明文;
63.上述第一公钥与第一私钥为非对称加密方式获得。
64.具体的,在本实施例中,首先用第一私钥(d,n)对加密的集合u序号组合和第一秘钥k1进行解密,然后按照集合u内的序号组合,用第一秘钥k1对加密过的三分之二部分的数据块进行解密,与其余三分之一未加密部分的数据块组合最终得到明文m。通过上述与加密过程相反的过程进行解密,综合了部分解密和二次解密的方法,可以实现工业互联网企业间数据的安全传输,而且数据的加解密效率适当提高。
65.作为优选的实施例,利用第一秘钥对第一加密数据对称解密,获得所述部分数据明文包括:按照第一加密数据对应的数据块的标记序号进行解密;所述标记为数据明文在加密前进行等量分割后得到的对应的每个数据块的标记。
66.作为优选的实施例,所述剩余未加密数据明文和所述部分数据明文形成解密后的明文包括:按照部分数据明文和剩余未加密数据明文对应的数据块的标记序号进行组合。
67.本技术的又一个实施例,提供一种存储器,用于存储上述数据加密传输和/或解密方法的软件,其中,所述软件用于执行上述的方法。
68.本技术的再一个实施例,提供一种处理器,用于执行上述数据加密传输和/或解密方法的软件,其中,所述软件用于执行上述的方法。
69.需要说明的是,本实施例中所提及的软件即为上文中介绍的数据加密传输和/或解密方法,在此不再赘述。
70.在本实施例中,提供一种电子装置,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行以上实施例中的方法。
71.这些计算机程序也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤,对应与不同的步骤可以通过不同的模块来实现。
72.上述程序可以运行在处理器中,或者也可以存储在存储器中(或称为计算机可读介质),计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd
‑
rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
73.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。