一种数据加密传输方法、系统、设备及介质与流程

未命名 09-08 阅读:94 评论:0


1.本发明属于计算机领域,具体涉及一种数据加密传输方法、系统、设备及介质。


背景技术:

2.在网络数据传输领域,出于信息安全的考量通常会对数据进行加密处理防止被中间人截获,在网络上很多的数据都采用加密的方式进行传输,例如,以视频数据为例,对于视频数据通过网络传输时会做加密处理,加密视频数据一方面防止他人截获视频数据,另一方面还可以通过加密视频数据保护版权。另外,视频数据由于其有多帧图像组成的流数据,即具备时间序列的特性,通常采用变更秘钥的方式进行动态加密。在视频数据加密领域,如图5所示通常采用aes-ctr加密模式进行,aes-ctr模式因为可以硬件流水实现所以非常适合用于对视频流数据的加密处理。但是由于网络环境复杂,网络丢包时有发生,一旦数据丢包,则解密端无法对数据正常解密。
3.而为解决该问题,传统的实现方式则通过使用tcp协议保证数据可靠传输,但当网络发生丢包时,tcp协议会有数据重传的动作,虽然解决了丢包问题但是引入了额外的延时,对一些实时性要求比较高的场景不适用,并且tcp的方式在处理视频数据时有连接设备数的局限性;此外,另一种实现方法是控制视频流数据的加密长度,例如将加密长度控制在以太网有效载荷长度以内,即使发生丢包也不影响后续数据的解密,但是加密长度太短并且不能及时更新密钥导致安全性无法保证。
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.图1为本发明实施例提供的一种数据加密传输方法的流程示意图;
33.图2为本发明实施例提供的一种数据加密传输系统的结构示意图;
34.图3为本发明实施例提供的一种计算机设备的结构示意图;
35.图4为本发明实施例提供的一种计算机可读存储介质的结构示意图;
36.图5为本发明实施例提供的aes-ctr加密原理示意图;
37.图6为本发明一实施例提供的加密数据格式示意图;
38.图7为本发明一实施例提供的控制字段的内容结构示意图;
39.图8为本发明一实施例提供的一种数据加密传输方法的加密过程即秘钥更新过程示意图;
40.图9为本发明一实施例提供的一种数据加密传输方法的解密过程示意图。
具体实施方式
41.为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
42.需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
43.本发明旨在解决在网络数据加密传输时因采用aes-ctr(计数模式的对称加密算法)的数据传输存在的网络数据包丢失时解密段无法确认解密秘钥的问题。传输的数据一般为连续的数据(是数据的使用方式及传输方式需要按照数据内容本身的连续性进行传输,例如典型的视频数据,在提供视频观看服务中,不可能向p2p下载的方式并发获取所有的视频帧,哪一帧先到就先看哪一帧视频数据),连续型数据的传输通过aes-ctr加密模式进行加密,一旦其中某一段数据丢失,则无法为后续的数据进行解密,传统的做法如通过tcp的方式再次补发数据或者再向数据提供者获取解密秘钥,这样会造成一来一回的网络延迟,对于实时性要求比较高的场景简直灾难,例如直播场景,一旦丢包就出现画面暂停的情况。
44.如图1所示,为解决上述问题,本发明提出一种数据加密传输方法,包括:
45.步骤s1、根据加密数据的加密方式以及加密数据的存储方式生成控制字段,并在发送所述加密数据时一同发送所述控制字段;
46.步骤s2、响应于接收到所述加密数据,根据所述加密数据对应的控制字段确定所述加密数据的解密方式,并基于所述解密方式对所述加密数据进行解密。
47.在本发明的实施例中,本发明提出的数据加密方法主要针对的是具有序列相邻关系的数据的加密传输方法,所谓序列相邻关系是指数据在使用上要按照数据的排列顺序才能实现数据本身所能表示的内容,典型地为视频数据,视频数据是以帧为单位的数据格式。流数据是指将数据以数据流的方式连续发送,可以将一个视频帧作为一个流数据,此外本发明中的序列相邻关系的数包括对于任意的数据如果对数据进行分块,并按照分块顺序基于aes-ctr模式进行加密传输。另外,本发明中的加密数据是指一个网络数据包对应的内容部分,该部分的数据是通过对称加密算法对原文加密后的密文。
48.控制字段是本发明提出的用于指导数据解密方对加密数据进行解密的内容,如图6所示,图6示出的是以视频数据为例控制字段和加密后的视频数据的结构示意图,控制字段在加密后的视频数据之前。
49.具体地,在步骤s1中,判断加密数据中对应的加密秘钥相比于上一个流数据的加密秘钥是否产生更新,若产生更新则在控制字段中加入秘钥变更的信息,另外根据加密数据的内容是如何存储的将加密数据的存储信息添加到控制字段的对应部分。
50.在步骤s2中,当解密端(可以是硬件解密端也可以是软件解密端)收到加密数据之后,根据控制字段中的加密数据的存储信息找到加密后的密文,然后根据控制字段中秘钥变更信息确定解密该密文的解密秘钥,即如果变更信息表示该密文的加密秘钥不同于上一个流数据的解密秘钥,则解密端将新获得的解密秘钥对该密文进行解密。如果秘钥变更信息表示该密文没有使用新的解密秘钥则使用与上一个流数据相同的解密秘钥进行解密。
51.特别地,在本发明的一些实施例中,加密数据中可能包含两个流数据,即如前所述,如果是视频数据,可能包含两帧数据,即加密数据可能包含第一帧的末尾部分和第二帧的开始部分,按照aes-ctr的加密模式,两帧之间需要使用两个秘钥进行加密。对于这种情况需要在控制字段中体现更进一步的秘钥变更信息。
52.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段包括:
53.在所述控制字段中设置默认值为第二预定值的第一起始标志,响应于所述加密数据中的内容部分包含具有序列相邻关系的流数据的起始数据,将所述第一起始标志置为第一预定值;
54.在所述控制字段中设置默认值为第二预定值的第二起始标志,响应于所述加密数据中的内容部分包换有第一流数据的结束数据以及所述第一流数据之后的第二流数据的起始数据,将所述第二起始标志置为第一预定值。
55.在本实施例中,如图7所示,控制字段共有48bit,从右到左依次为32位的counter,即计数器,然后是1bit的第一起始标志,第一起始标志表示某一个流数据的第一个数据(即如果以视频数据为例,表示某一帧的开始数据,因为视频每一帧都是内容及其庞大的数据,在网络上传输时需要多个数据包进行发送;如果是其他数据分段后按照顺序发送,则是指某一段数据的开始部分),即该加密数据发送的是对应的流数据的起始数据。
56.进一步,当加密数据中包含某个流数据的起始部分,例如加密数据中包含某一帧视频数据的第一个像素值,即开头部分,则在控制字段如图7中的s1的值置位为1。如果加密
数据中不含有某流数据的起始部分,s1默认为0。
57.另外,当加密数据包含两个流数据时,此时加密数据必然包含一个流数据的结束数据,和另一个流数据的起始数据,此时将控制字段如图7中的第二起始标志s2的值置位为1。如果不存在另一个流数据的起始数据,则控制字段中的第二起始标志为0。
58.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
59.在所述控制字段中设置结束标志,响应于所述加密数据中的内容部分包含具有序列相邻关系的流数据的结束数据,将所述结束标志置为第一预定值;
60.响应于所述加密数据中的内容部分不包含具有序列相邻关系的流数据的结束数据,将所述结束标志置为第二预定值。
61.在本实施例中,如图7所示,如果加密数据中包含一个流数据的结束数据,则将图中控制字段中的e1的值置位为1。如果加密数据对应的是流数据的中间部分,即包含结束数据则将控制字段中结束标志e1的值置位为0。也即当加密数据对应的内容部分只是某个流数据的中间部分时控制字段中的s1、e1、s2的值均为0。
62.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
63.在所述控制字段中设置偏移位,响应于所述加密数据中的内容部分包含有两个具有序列相邻关系的流数据,将第二个流数据的起始数据在加密数据中的地址写入到所述偏移位中。
64.在本实施例中,如图7所示,当加密数据中存在两个相邻的流数据时,即一个网络数据包中发送的内容包含了其中一个流数据的结束数据和另一个流数据的起始数据,并且两个流数据在序列上是相邻关系,例如相邻的两个视频帧。此时将控制字段的第37位到47位(bit位从0开始计数)的空间作为偏移位(图中offset)用来保存加密数据中第二个流数据(假设该网络数据包中的结束数据时第一个流数据)的起始数据在加密数据中的偏移位置。
65.进一步,偏移位可以用来标识加密数据中哪些数据是属于第一个流数据(相对后者是第一,并不是指数据整体上的第一)的加密内容,从偏移位开始到网络数据包内容部分的结束是第二个流数据的加密内容。
66.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
67.在所述控制字段中设置第一秘钥更新标志,响应于所述加密数据中的内容部仅包含具有序列相邻关系的流数据的一个流数据且包含所述流数据的起始数据时将所述第一秘钥更新标志置为第一预定值。
68.在本实施例中,如图7所示,当加密数据中的数据内容是一个新的流数据的起始数据时,基于安全性的考虑,对新的流数据采用新的秘钥进行加密,此时需将图7中的第一秘钥更新标志u1置位为1以告诉解密端该加密数据对应的是一个流的起始数据,加密秘钥发生了变更。
69.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
70.在所述控制字段中设置第二秘钥更新标志,响应于所述加密数据中的内容部分包含两个相邻的流数据的内容且所述相邻的两个流数据的内容采用不同的秘钥进行加密,则将所述第二秘钥更新标志置为第一预定值。
71.在本实施例中,当加密数据包含相邻的两个流数据,如前所述,在发送任意一个流数据时需要更新加密秘钥,因此对于存在两个流数据的网络数据包中的加密数据的内容部分,存在着用两个秘钥进行加密的密文,分别对应着第一各流数据的结束数据,和第二个流数据的起始数据。因此本发明在控制字段中设置第二秘钥更新标志如图7中的u2,此时需将u2的值置位为1。
72.在本发明的一些实施方式中,根据所述加密数据对应的控制字段确定所述加密数据的解密方式,并基于所述解密方式对所述加密数据进行解密包括:
73.响应于控制字段中的第一秘钥更新标志为第一预定值,获取新的秘钥并通过新的秘钥对所述加密数据进行解密;
74.响应于控制字段中的第二秘钥更新标志为第一预定值,通过第一秘钥对所述加密数据中的第一流数据进行解密,通过获取的第二秘钥对所述加密数据中的第二流数据进行解密。
75.在本实施例中,在解密端接收到加密形式的网络数据包之后,获取对应的控制字段,并按照控制字段中对应的标志对加密数据部分进行解密。
76.具体地,当控制字段中的第一秘钥更新标志u1为1时,则向对称秘钥的来源处获取当前加密使用的新的秘钥(一般情况下新的解密秘钥会先于加密数据到解密端),通过新的秘钥对加网络数据包中的加密数据进行解密得到对应的明文。
77.当控制字段中的第二秘钥更新标志u 2为1时,则根据控制字段中的offset的值将密文形式的加密数据拆分成两部分,分别对应两个流数据,并对第一流数据的密文以原先的解密秘钥进行解密。对应的第二流数据则以获取的新的解密秘钥进行解密。以此得到对应的明文。同时在对第二流数据进行解密之后,将新的解密秘钥作为下一个网络数据包的加密数据的解密秘钥,将新的秘钥作为后续多个加密数据的解密秘钥,后续加密数据的个数取决于流数据和网络数据包的大小。
78.实施例:
79.在本实施例中,本发明一视频流数据来举例本发明提出的数据加密传输方法,如图6所示,加密端通过网络传输数据时的udp报文有效载荷包含控制字段和视频流数据两部分,其中控制字段可根据需求选择加密或不加密。当需要对控制字段加密传输时,可以选用aes-ecb、sm4等块密码算法加密,控制字段的加密和视频流数据的加密是两个独立的过程;视频流数据选用aes-ctr对称密码算法加密。
80.如图6所示,控制字段至少包含以下信息(从右到左):
81.(1)counter:计数器。32位或者更高,与加密长度有关,用于指示当前udp报文包含的第一个密文数据的位置,即第几个数据,从0开始计数。例如,假设对长度为1000字节的视频流加密,分两包数据传输,每包数据包含500字节,则第一包数据的counter设置为0,第二包数据的counter设置为500。
82.(2)s1:帧起始标志。当发送某一帧视频数据的第一包数据时,该位置1。
83.(3)e1:帧结束标志。当发送某一帧视频数据的最后一包数据时,该位置1。
84.(4)s2:帧起始标志。当一包数据包含两个视频帧的数据时(前一视频帧的结尾和后一视频帧的起始),该位和e1位同时置1。
85.(5)u1:密钥更新标志。当密钥更新时,该位会翻转一次,初始值为0。
86.(6)u2:密钥更新标志。当密钥更新时,该位会翻转一次,初始值为0。用于当一包数据包含两个视频帧的数据时,指示第二帧视频数据是否有密钥更新。
87.(7)offset:偏移位,11位。用于当一包数据包含两个视频帧的数据时,指示第二帧视频数据的起始位置。
88.在本实施例中,如图8所示,本发明以硬件实现的硬件加密过程作为示例,具体地在加密端设置两个寄存器:r0和r1,用来保存密钥。加密端始终使用r0寄存器保存的密钥对视频流数据加密,r1寄存器保存更新的密钥。加密端软硬件协同工作,负责数据的加密和密钥的更新:
89.(1)使能加密前,加密端软件生成对称密钥并通过寄存器配置给加密端,同时通过网络将密钥发送给解密端;
90.(2)加密端将收到的密钥保存在r0寄存器,并使用r0中保存的密钥加密视频流数据;
91.(3)加密端择机发送密钥更新请求,例如配置加密长度为100帧,在第50帧时发送密钥更新请求;
92.(4)加密端软件收到密钥更新请求后更新密钥并通过寄存器配置给加密端,同时通过网络将密钥发送给解密端;
93.(5)加密端将收到的密钥保存在r1寄存器;
94.(6)当前加密长度结束时,加密端硬件逻辑在帧间间隔更新密钥,然后使用更新的密钥对视频流数据加密。
95.进一步,如图9所示,在解密端的解密过程中,与加密端相同,解密端也设置两个寄存器:r0和r1,用来保存密钥,其中r0用来保存当前秘钥或者说是默认秘钥,是指直到出现某一帧的结束数据前一直默认使用该秘钥进行解密,r1用来保存获取到的新的解密沐瑶。
96.进一步,在解密端始终使用r0寄存器保存的密钥对视频流数据解密,r1寄存器保存更新的密钥。当检测到密钥更新时,将r1寄存器的值赋值给r0寄存器。解密端解密过程为:
97.(1)解密端收到一包数据,当对控制字段加密时,执行对控制字段的解密操作;
98.(2)当检测到s2=1,e1=1,s1=0时,根据offset字段界定两帧的边界,前一帧数据使用当前密钥和counter解密;当检测到密钥更新时,后一帧数据使用更新的密钥解密,否则使用当前密钥和counter解密;
99.(3)当检测到s2=0,e1=0,s1=1时,为新一帧的开始,当检测到密钥更新时,使用更新的密钥解密,否则使用当前密钥和counter解密;
100.(4)当检测到s2=0,e1=1,s1=0时,为一帧的结束,使用当前密钥和counter解密;
101.(5)当检测到s2=0,e1=0,s1=0时,使用当前密钥和counter解密。
102.如图2所示,本发明的另一方面还提出一种数据加密传输系统,包括:
103.加密模块1,所述加密模块1配置用于根据加密数据的加密方式以及加密数据的存
储方式生成控制字段,并在发送所述加密数据时一同发送所述控制字段;
104.解密模块2,所述解密模块2配置用于响应于接收到所述加密数据,根据所述加密数据对应的控制字段确定所述加密数据的解密方式,并基于所述解密方式对所述加密数据进行解密。
105.如图3所示,本发明的又一方面还提出一种计算机设备,包括:
106.至少一个处理器21;以及
107.存储器22,所述存储器22存储有可在所述处理器21上运行的计算机指令23,所述指令23由所述处理器21执行时实现一种数据加密传输方法,包括:
108.根据加密数据的加密方式以及加密数据的存储方式生成控制字段,并在发送所述加密数据时一同发送所述控制字段;
109.响应于接收到所述加密数据,根据所述加密数据对应的控制字段确定所述加密数据的解密方式,并基于所述解密方式对所述加密数据进行解密。
110.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段包括:
111.在所述控制字段中设置默认值为第二预定值的第一起始标志,响应于所述加密数据中的内容部分包含具有序列相邻关系的流数据的起始数据,将所述第一起始标志置为第一预定值;
112.在所述控制字段中设置默认值为第二预定值的第二起始标志,响应于所述加密数据中的内容部分包换有第一流数据的结束数据以及所述第一流数据之后的第二流数据的起始数据,将所述第二起始标志置为第一预定值。
113.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
114.在所述控制字段中设置结束标志,响应于所述加密数据中的内容部分包含具有序列相邻关系的流数据的结束数据,将所述结束标志置为第一预定值;
115.响应于所述加密数据中的内容部分不包含具有序列相邻关系的流数据的结束数据,将所述结束标志置为第二预定值。
116.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
117.在所述控制字段中设置偏移位,响应于所述加密数据中的内容部分包含有两个具有序列相邻关系的流数据,将第二个流数据的起始数据在加密数据中的地址写入到所述偏移位中。
118.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
119.在所述控制字段中设置第一秘钥更新标志,响应于所述加密数据中的内容部仅包含具有序列相邻关系的流数据的一个流数据且包含所述流数据的起始数据时将所述第一秘钥更新标志置为第一预定值。
120.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
121.在所述控制字段中设置第二秘钥更新标志,响应于所述加密数据中的内容部分包
含两个相邻的流数据的内容且所述相邻的两个流数据的内容采用不同的秘钥进行加密,则将所述第二秘钥更新标志置为第一预定值。
122.在本发明的一些实施方式中,根据所述加密数据对应的控制字段确定所述加密数据的解密方式,并基于所述解密方式对所述加密数据进行解密包括:
123.响应于控制字段中的第一秘钥更新标志为第一预定值,获取新的秘钥并通过新的秘钥对所述加密数据进行解密;
124.响应于控制字段中的第二秘钥更新标志为第一预定值,通过第一秘钥对所述加密数据中的第一流数据进行解密,通过获取的第二秘钥对所述加密数据中的第二流数据进行解密。
125.如图4所示,本发明的再一方面还提出一种计算机可读存储介质401,所述计算机可读存储介质401存储有计算机程序402,所述计算机程序402被处理器执行时实现一种数据加密传输方法,包括:
126.根据加密数据的加密方式以及加密数据的存储方式生成控制字段,并在发送所述加密数据时一同发送所述控制字段;
127.响应于接收到所述加密数据,根据所述加密数据对应的控制字段确定所述加密数据的解密方式,并基于所述解密方式对所述加密数据进行解密。
128.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段包括:
129.在所述控制字段中设置默认值为第二预定值的第一起始标志,响应于所述加密数据中的内容部分包含具有序列相邻关系的流数据的起始数据,将所述第一起始标志置为第一预定值;
130.在所述控制字段中设置默认值为第二预定值的第二起始标志,响应于所述加密数据中的内容部分包换有第一流数据的结束数据以及所述第一流数据之后的第二流数据的起始数据,将所述第二起始标志置为第一预定值。
131.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
132.在所述控制字段中设置结束标志,响应于所述加密数据中的内容部分包含具有序列相邻关系的流数据的结束数据,将所述结束标志置为第一预定值;
133.响应于所述加密数据中的内容部分不包含具有序列相邻关系的流数据的结束数据,将所述结束标志置为第二预定值。
134.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
135.在所述控制字段中设置偏移位,响应于所述加密数据中的内容部分包含有两个具有序列相邻关系的流数据,将第二个流数据的起始数据在加密数据中的地址写入到所述偏移位中。
136.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
137.在所述控制字段中设置第一秘钥更新标志,响应于所述加密数据中的内容部仅包含具有序列相邻关系的流数据的一个流数据且包含所述流数据的起始数据时将所述第一
秘钥更新标志置为第一预定值。
138.在本发明的一些实施方式中,根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:
139.在所述控制字段中设置第二秘钥更新标志,响应于所述加密数据中的内容部分包含两个相邻的流数据的内容且所述相邻的两个流数据的内容采用不同的秘钥进行加密,则将所述第二秘钥更新标志置为第一预定值。
140.在本发明的一些实施方式中,根据所述加密数据对应的控制字段确定所述加密数据的解密方式,并基于所述解密方式对所述加密数据进行解密包括:
141.响应于控制字段中的第一秘钥更新标志为第一预定值,获取新的秘钥并通过新的秘钥对所述加密数据进行解密;
142.响应于控制字段中的第二秘钥更新标志为第一预定值,通过第一秘钥对所述加密数据中的第一流数据进行解密,通过获取的第二秘钥对所述加密数据中的第二流数据进行解密。
143.以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
144.应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
145.上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
146.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
147.所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上所述的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

技术特征:
1.一种数据加密传输方法,其特征在于,包括:根据加密数据的加密方式以及加密数据的存储方式生成控制字段,并在发送所述加密数据时一同发送所述控制字段;响应于接收到所述加密数据,根据所述加密数据对应的控制字段确定所述加密数据的解密方式,并基于所述解密方式对所述加密数据进行解密。2.根据权利要求1所述的方法,其特征在于,所述根据加密数据的加密方式以及加密数据的存储方式生成控制字段包括:在所述控制字段中设置默认值为第二预定值的第一起始标志,响应于所述加密数据中的内容部分包含具有序列相邻关系的流数据的起始数据,将所述第一起始标志置为第一预定值;在所述控制字段中设置默认值为第二预定值的第二起始标志,响应于所述加密数据中的内容部分包换有第一流数据的结束数据以及所述第一流数据之后的第二流数据的起始数据,将所述第二起始标志置为第一预定值。3.根据权利要求1所述的方法,其特征在于,所述根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:在所述控制字段中设置结束标志,响应于所述加密数据中的内容部分包含具有序列相邻关系的流数据的结束数据,将所述结束标志置为第一预定值;响应于所述加密数据中的内容部分不包含具有序列相邻关系的流数据的结束数据,将所述结束标志置为第二预定值。4.根据权利要求1所述的方法,其特征在于,所述根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:在所述控制字段中设置偏移位,响应于所述加密数据中的内容部分包含有两个具有序列相邻关系的流数据,将第二个流数据的起始数据在加密数据中的地址写入到所述偏移位中。5.根据权利要求1所述的方法,其特征在于,所述根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:在所述控制字段中设置第一秘钥更新标志,响应于所述加密数据中的内容部仅包含具有序列相邻关系的流数据的一个流数据且包含所述流数据的起始数据时将所述第一秘钥更新标志置为第一预定值。6.根据权利要求1所述的方法,其特征在于,所述根据加密数据的加密方式以及加密数据的存储方式生成控制字段还包括:在所述控制字段中设置第二秘钥更新标志,响应于所述加密数据中的内容部分包含两个相邻的流数据的内容且所述相邻的两个流数据的内容采用不同的秘钥进行加密,则将所述第二秘钥更新标志置为第一预定值。7.根据权利要求5或6所述的方法,其特征在于,所述根据所述加密数据对应的控制字段确定所述加密数据的解密方式,并基于所述解密方式对所述加密数据进行解密包括:响应于控制字段中的第一秘钥更新标志为第一预定值,获取新的秘钥并通过新的秘钥对所述加密数据进行解密;响应于控制字段中的第二秘钥更新标志为第一预定值,通过第一秘钥对所述加密数据
中的第一流数据进行解密,通过获取的第二秘钥对所述加密数据中的第二流数据进行解密。8.一种数据加密传输系统,其特征在于,包括:加密模块,所述加密模块配置用于根据加密数据的加密方式以及加密数据的存储方式生成控制字段,并在发送所述加密数据时一同发送所述控制字段;解密模块,所述解密模块配置用于响应于接收到所述加密数据,根据所述加密数据对应的控制字段确定所述加密数据的解密方式,并基于所述解密方式对所述加密数据进行解密。9.一种计算机设备,其特征在于,包括:至少一个处理器;以及存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-7任意一项所述方法的步骤。10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任意一项所述方法的步骤。

技术总结
本发明属于计算机领域,具体涉及一种数据加密传输方法、系统、设备及介质。其中,方法包括:根据加密数据的加密方式以及加密数据的存储方式生成控制字段,并在发送所述加密数据时一同发送所述控制字段;响应于接收到所述加密数据,根据所述加密数据对应的控制字段确定所述加密数据的解密方式,并基于所述解密方式对所述加密数据进行解密。通过本发明提出的一种数据加密传输方法,在加密数据中添加控制对加密数据解密的控制字段,并通过控制字段指导解密段对加密数据进行解密,可有效解决传统的实现方式中,当某连续的数据出现缺失时难以对后续的解密数据进行解密的问题。续的解密数据进行解密的问题。续的解密数据进行解密的问题。


技术研发人员:高波
受保护的技术使用者:山东云海国创云计算装备产业创新中心有限公司
技术研发日:2023.05.19
技术公布日:2023/9/6
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐