一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种云终端交互的数据加密传输方法及系统与流程

2022-11-19 17:17:38 来源:中国专利 TAG:


1.本技术涉及数据加密传输技术领域,具体而言,涉及一种云终端交互的数据加密传输方法及系统。


背景技术:

2.随着信息技术快速发展,各行业大力推动信息化建设。云端与终端的数据交互,关系着我们的方方面面,数据安全意义重大。
3.对于云终端之间的数据交互,加密传输已是常态,但目前的加密算法,要么过于复杂,需要消耗大量的计算资源,要么加密方式单一,安全性不够。如何提供一种相对简单且安全性较高的加密方式,实现对数据的加密传输,是云终端交互场景中需要解决的一个问题。


技术实现要素:

4.本技术实施例的目的在于提供一种云终端交互的数据加密传输方法及系统,以相对简单且安全性较高的加密方式实现对数据的加密传输。
5.为了实现上述目的,本技术的实施例通过如下方式实现:第一方面,本技术实施例提供一种云终端交互的数据加密传输方法,终端与云端建立通信连接,所述方法应用于终端,包括:获取待传输的原始数据,其中,所述原始数据具有n个数据单元,每个数据单元具有m个属性;将所述原始数据处理为m
×
n的矩阵后,将m
×
n的矩阵映射为一维数据;对一维数据进行分段处理,得到s个数据段,其中,每个数据段具有对应的序号,每个数据段内的元素不超过x个,x取值为128或512;针对每个数据段,对数据段内的元素进行排序,并基于每个元素的顺序变化确定出一个单元图像,共计得到s个单元图像,再基于s个单元图像确定出密文图像;基于数据段的序号将所有数据段进行排序,得到密文数据;计算所述原始数据对应的第一哈希值;将所述密文数据、第一哈希值和密文图像分别发送给所述云端,以使所述云端基于所述密文图像对所述密文数据进行解密,得到还原数据后,计算所述还原数据对应的第二哈希值,并验证第一哈希值与第二哈希值是否一致。
6.在本技术实施例中,通过对原始数据进行处理,处理为一维数据,然后对一维数据进行分段(每128个元素或512个元素为一个数据段),对每个对数据段内的元素进行排序,然后再基于每个数据段的序号对数据段进行排序,从而实现对原始数据的加密,得到密文数据。与此同时,在对每个数据段的元素进行排序时,利用数据段内元素的顺序变化,生成对应的单元图像(单元图像可以反映出数据原来的顺序,从而便于解密),再利用所有的单元图像生成密文图像,一同传输给终端,便于终端基于密文图像对密文数据进行解密,得到还原数据(如解密无误且数据未被篡改,还原数据与原始数据一致)。为了验证数据传输过程中是否被篡改,利用原始数据计算第一哈希值,传输给云端,云端对解密得到的还原数据计算第二哈希值,即可验证还原数据与原始数据是否一致。这样可以利用数据与图像协同
的方式(本质是将解密需要的密钥转换为图像了,在加密算法未公开的情况下,相较于文本型密钥,破解难度大大增加),通过相对简单的方式实现较高的安全性,实现云终端交互的数据加密传输。
7.结合第一方面,在第一方面的第一种可能的实现方式中,对一维数据进行分段处理,得到s个数据段,包括:将一维数据按照每128个划分为一个数据段,若存在不足128个的剩余元素,将剩余元素单独作为一个数据段,并按照数据段的划分顺序赋予数据段对应的序号,共计得到s个数据段;或者,将一维数据按照每512个划分为一个数据段,若存在不足512个的剩余元素,将剩余元素单独作为一个数据段,并按照数据段的划分顺序赋予数据段对应的序号,共计得到s个数据段。
8.在该实现方式中,这样可以将一维数据按照每128(或512)个划分为一个数据段,并赋予编号,得到s个数据段。
9.结合第一方面,在第一方面的第二种可能的实现方式中,x取值为128,对数据段内的元素进行排序,并基于每个元素的顺序变化确定出一个单元图像,包括:对数据段内的元素进行随机排序;遍历数据段内的每个元素,确定出每个元素的顺序变化,并采用以下方式记录对应的灰度像素值:,其中,表示第i个元素对应的第i个像素的灰度值,yi表示第i个元素顺序变化的数值,左移、右移表示第i个元素顺序变化是向左移动还是向右移动;将数据段内的元素对应的所有像素顺序拼接为一个单元图像,此单元图像为灰度图像。
10.在该实现方式中,通过对数据段内的元素进行随机排序,利用灰度值记录每个元素的顺序变化情况,从而能够将每个元素顺序的变化情况反映到像素中,从而利用这些像素拼接为一个单元图像,每个数据段的顺序变化情况通过单元图像记录。
11.结合第一方面,在第一方面的第三种可能的实现方式中,x取值为512,对数据段内的元素进行排序,并基于每个元素的顺序变化确定出一个单元图像,包括:将数据段划分为四个小段:第一小段、第二小段、第三小段和第四小段;对所述第一小段内的元素进行随机排序,确定出第一小段内每个元素的顺序变化,并采用以下方式记录对应的r通道色彩值:,其中,表示所述第一小段内第i个元素对应的第i个像素的r通道色彩值,yi表示所述第一小段内第i个元素顺序变化的数值,左移、右移表示所述第一小段内第i个元素顺序变化是向左移动还是向右移动;对所述第二小段内的元素进行随机排序,确定出第二小段内每个元素的顺序变化,并采用以下方式记录对应的g通道色彩值:
,其中,表示所述第二小段内第i个元素对应的第i个像素的g通道色彩值,yi表示所述第二小段内第i个元素顺序变化的数值,左移、右移表示所述第二小段内第i个元素顺序变化是向左移动还是向右移动;对所述第三小段内的元素进行随机排序,确定出第三小段内每个元素的顺序变化,并采用以下方式记录对应的b通道色彩值:,其中,表示所述第三小段内第i个元素对应的第i个像素的b通道色彩值,yi表示所述第三小段内第i个元素顺序变化的数值,左移、右移表示所述第三小段内第i个元素顺序变化是向左移动还是向右移动;对所述第四小段内的元素进行随机排序,确定出第四小段内每个元素的顺序变化,并采用以下方式记录对应的a通道色彩值:,其中,表示所述第四小段内第i个元素对应的第i个像素的a通道色彩值,yi表示所述第四小段内第i个元素顺序变化的数值,左移、右移表示所述第四小段内第i个元素顺序变化是向左移动还是向右移动;基于所述第一小段内每个元素对应的像素的r通道色彩值、所述第二小段内每个元素对应的像素的g通道色彩值、所述第三小段内每个元素对应的像素的b通道色彩值、所述第四小段内每个元素对应的像素的a通道色彩值,确定出一个单元图像,此单元图像为rgba四通道色彩图像。
12.在该实现方式中,通过将数据段划分为四个小段(第一小段、第二小段、第三小段和第四小段),对每个小段内的元素进行随机排序,分别利用rgba四个通道色彩值(r、g、b、a通道色彩值)来记录四个小段内每个元素的顺序变化情况,从而能够将每个小段内每个元素顺序的变化情况反映到像素中,得到彩色像素点,利用这些像素拼接为一个单元图像,实现每个数据段的顺序变化情况通过单元图像记录。
13.结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,基于所述第一小段内每个元素对应的像素的r通道色彩值、所述第二小段内每个元素对应的像素的g通道色彩值、所述第三小段内每个元素对应的像素的b通道色彩值、所述第四小段内每个元素对应的像素的a通道色彩值,确定出一个单元图像,包括:将所述第一小段内第i个元素对应的第i个像素的r通道色彩值、所述第二小段内第i个元素对应的第i个像素的g通道色彩值、所述第三小段内第i个元素对应的第i个像素的b通道色彩值、所述第四
小段内第i个元素对应的第i个像素的a通道色彩值,作为单元图像中第i个像素的rgba四通道色彩值,得到单元图像中第i个像素,据此拼接出8
×
16的单元图像。
14.在该实现方式中,将四个小段中对应第i个像素的r通道色彩值、g通道色彩值、b通道色彩值和a通道色彩值作为第i个像素的色彩值,可以构建出rgba四通道色彩图像,作为单元图像。
15.结合第一方面的第二种或第三种可能的实现方式,在第一方面的第五种可能的实现方式中,基于s个单元图像确定出密文图像,包括:采用以下公式计算图像模板的单元数边长:,其中,z表示图像模板的边长对应的图像单元数量;确定出z
×
z的图像模板;将s个单元图像向z
×
z的图像模板内填充,所述图像模板内未能填充的部分以白色单元图像补足,得到所述密文图像。
16.在该实现方式中,这样可以利用单元图像的数量s来确定图像模板的尺寸(z
×
z的图像模板),便于将s个单元图像向z
×
z的图像模板内填充图像模板内未能填充的部分以白色单元图像补足,得到密文图像。
17.结合第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式中,将s个单元图像向z
×
z的图像模板内填充,包括:确定出z
×
z的图像模板的中心单元;若所述单元图像的数量s为奇数,以所述中心单元为起点,以向上方向沿顺时针将s个单元图像填充至z
×
z的图像模板内;若所述单元图像的数量s为偶数,以所述中心单元为起点,以向上方向沿逆时针将s个单元图像填充至z
×
z的图像模板内。
18.在该实现方式中,通过单元图像的数量s的奇偶,来确定填充s个单元图像的方式,能够进一步加强安全性,在解密时也能够检测单元图像的数量s,从而实现解密。
19.第二方面,本技术实施例提供一种云终端交互的数据加密传输方法,终端与云端建立通信连接,所述方法应用于云端,包括:接收终端发送的密文数据、第一哈希值和密文图像,其中,所述密文数据、所述第一哈希值和所述密文图像由所述终端基于第一方面或第一方面的可能的实现方式中任一项所述的云终端交互的数据加密传输方法得到;基于所述密文图像对所述密文数据进行解密,得到还原数据;计算所述还原数据对应的第二哈希值,并验证所述第二哈希值与所述第一哈希值是否一致,判断所述密文数据是否被篡改。
20.第三方面,本技术实施例提供一种云终端交互系统,包括建立通信连接的云端和终端,所述终端,用于执行第一方面或第一方面的可能的实现方式中任一项所述的云终端交互的数据加密传输方法;所述云端,用于执行第二方面所述的云终端交互的数据加密传输方法,实现终端与云端的数据加密传输。
21.第四方面,本技术实施例提供一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面或第一方面的可能的实现方式中任一项所述的云终端交互的数据加密传输方法,或者执行第二方面所述的云终端交互的数据加密传输方法。
22.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
23.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
24.图1为本技术实施例提供的一种云终端交互系统的示意图。
25.图2为本技术实施例提供的应用于终端的云终端交互的数据加密传输方法的流程图。
26.图3为本技术实施例提供的应用于云端的云终端交互的数据加密传输方法的流程图。
27.图标:10-云终端交互系统;11-终端;12-云端。
具体实施方式
28.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
29.请参阅图1,图1为本技术实施例提供的一种云终端交互系统10的示意图。在本实施例中,云终端交互系统10可以包括建立通信连接的云端12和终端11。
30.本实施例中将通过以终端11加密、云端12解密的案例对本方案进行完整的介绍,但不应视为对本技术的限定,在其他实施例中,也可以采用云端12加密终端11解密的方案。
31.首先介绍加密过程,请参阅图2,图2为本技术实施例提供的应用于终端11的云终端交互的数据加密传输方法的流程图。在本实施例中,应用于终端11的云终端交互的数据加密传输方法可以包括步骤s11、步骤s12、步骤s13、步骤s14、步骤s15、步骤s16和步骤s17。
32.首先,终端11可以执行步骤s11。
33.步骤s11:获取待传输的原始数据,其中,所述原始数据具有n个数据单元,每个数据单元具有m个属性。
34.在本实施例中,终端11可以获取待传输的原始数据,为了便于理解,本实施例中限定原始数据具有n个数据单元,每个数据单元具有m个属性。例如采集的电力数据,每个电力数据具有频率、峰值等多个维度的属性。又如,终端11内置的客户端收集的用户信息,例如每个单位时间段采集得到的用户偏好数据,例如客户端内的功能偏好、功能使用时长、位置信息、时段信息等多维度的属性信息。
35.获取待传输的原始数据后,终端11可以执行步骤s12。
36.步骤s12:将所述原始数据处理为m
×
n的矩阵后,将m
×
n的矩阵映射为一维数据。
37.在本实施例中,终端11可以对原始数据进行处理,将原始数据处理为m
×
n的矩阵:,
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
然后,可以将m
×
n的矩阵映射为一维数据。例如,可以约定通过以列为基础将数据展开的方式,得到一维数据:,
ꢀꢀꢀꢀꢀꢀꢀ
(2)得到一维数据后,终端11可以执行步骤s13。
38.步骤s13:对一维数据进行分段处理,得到s个数据段,其中,每个数据段具有对应的序号,每个数据段内的元素不超过x个,x取值为128或512。
39.在本实施例中,终端11可以将一维数据按照每128个划分为一个数据段,若存在不足128个的剩余元素,将剩余元素单独作为一个数据段,并按照数据段的划分顺序赋予数据段对应的序号,共计得到s个数据段。需要说明的是,最后一个数据段中不足128个元素的,可以通过补上标识符后添0,补足128个元素。
40.另外,终端11也可以将一维数据按照每512个划分为一个数据段,若存在不足512个的剩余元素,将剩余元素单独作为一个数据段,并按照数据段的划分顺序赋予数据段对应的序号,共计得到s个数据段。需要说明的是,最后一个数据段中不足512个元素的,可以通过补上标识符后添0,补足512个元素。
41.这样可以将一维数据按照每128(或512)个划分为一个数据段,并赋予编号,得到s个数据段。本方案中采用128和512,可以分别对应两种图像的形式(灰度图像和rgba四通道色彩图像),根据不同的情况选取合适的方式,相对来说,采用对应rgba四通道色彩图像的512个元素每个数据段的方式,加密安全性更高一些,数据计算量也相对较大些。
42.对一维数据进行分段处理得到s个数据段后,终端11可以执行步骤s14。
43.步骤s14:针对每个数据段,对数据段内的元素进行排序,并基于每个元素的顺序变化确定出一个单元图像,共计得到s个单元图像,再基于s个单元图像确定出密文图像。
44.在本实施例中,终端11可以针对每个数据段进行如下处理:首先,终端11可以对数据段内的元素进行排序,并基于每个元素的顺序变化确定出一个单元图像,共计得到s个单元图像。
45.示例性的,针对x取值为128的情况,即每个数据段包含128个元素,终端11可以对数据段内的元素进行随机排序。
46.随机排序的同时,需要确定出数据段内的每个元素的顺序变化(例如元素a
11
右移98位,元素a
67
左移23位等),然后采用以下方式记录对应的灰度像素值:,
ꢀꢀꢀꢀꢀ
(3)其中,表示第i个元素对应的第i个像素的灰度值,yi表示第i个元素顺序变化的数值,左移、右移表示第i个元素顺序变化是向左移动还是向右移动。
47.之后,终端11可以将数据段内的元素对应的所有像素顺序拼接为一个单元图像,此单元图像为灰度图像。拼接方式可以是按照水平s型的顺序来拼接为8
×
16的单元图像(此单元图像为灰度图像)。
48.通过对数据段内的元素进行随机排序,利用灰度值记录每个元素的顺序变化情况,从而能够将每个元素顺序的变化情况反映到像素中,从而利用这些像素拼接为一个单
元图像,每个数据段的顺序变化情况通过单元图像记录。而128个元素的随机顺序变化,可以通过[0,127]来记录元素左移的情况,通过[128,255]来记录元素右移的情况,从而能够巧妙地利用灰度值(灰度值的范围在[0,255])实现对每个元素的顺序变化的记录。
[0049]
示例性的,针对x取值为512的情况,即每个数据段包含512个元素,终端11可以将每个数据段划分为四个小段:第一小段、第二小段、第三小段和第四小段。
[0050]
针对第一小段:终端11可以对第一小段内的元素进行随机排序,确定出第一小段内每个元素的顺序变化,并采用以下方式记录对应的r通道色彩值:,
ꢀꢀꢀꢀꢀꢀ
(4)其中,表示第一小段内第i个元素对应的第i个像素的r通道色彩值,yi表示第一小段内第i个元素顺序变化的数值,左移、右移表示第一小段内第i个元素顺序变化是向左移动还是向右移动。
[0051]
针对第二小段:终端11可以对第二小段内的元素进行随机排序,确定出第二小段内每个元素的顺序变化,并采用以下方式记录对应的g通道色彩值:,
ꢀꢀꢀꢀꢀꢀ
(5)其中,表示第二小段内第i个元素对应的第i个像素的g通道色彩值,yi表示第二小段内第i个元素顺序变化的数值,左移、右移表示第二小段内第i个元素顺序变化是向左移动还是向右移动。
[0052]
针对第三小段:终端11可以对第三小段内的元素进行随机排序,确定出第三小段内每个元素的顺序变化,并采用以下方式记录对应的b通道色彩值:,
ꢀꢀꢀꢀꢀꢀ
(6)其中,表示第三小段内第i个元素对应的第i个像素的b通道色彩值,yi表示第三小段内第i个元素顺序变化的数值,左移、右移表示第三小段内第i个元素顺序变化是向左移动还是向右移动。
[0053]
针对第四小段:终端11可以对第四小段内的元素进行随机排序,确定出第四小段内每个元素的顺序变化,并采用以下方式记录对应的a通道色彩值:,
ꢀꢀꢀꢀꢀꢀ
(7)其中,表示第四小段内第i个元素对应的第i个像素的a通道色彩值,yi表示第四小段内第i个元素顺序变化的数值,左移、右移表示第四小段内第i个元素顺序变化是向左
移动还是向右移动。
[0054]
需要说明的是,由于针对不同小段的处理原理相同,本实施例中未再对不同小段内的元素顺序变化的数值符号作额外的区分。
[0055]
确定出一个数据段(含512个元素)中第一小段内每个元素对应的像素的r通道色彩值、第二小段内每个元素对应的像素的g通道色彩值、第三小段内每个元素对应的像素的b通道色彩值、第四小段内每个元素对应的像素的a通道色彩值后,终端11可以据此确定出一个单元图像,此单元图像为rgba四通道色彩图像。
[0056]
通过将数据段划分为四个小段(第一小段、第二小段、第三小段和第四小段),对每个小段内的元素进行随机排序,分别利用rgba四个通道色彩值(r、g、b、a通道色彩值)来记录四个小段内每个元素的顺序变化情况,从而能够将每个小段内每个元素顺序的变化情况反映到像素中,得到彩色像素点,利用这些像素拼接为一个单元图像,实现每个数据段的顺序变化情况通过单元图像记录。
[0057]
具体的,终端11可以将第一小段内第i个元素对应的第i个像素的r通道色彩值、第二小段内第i个元素对应的第i个像素的g通道色彩值、第三小段内第i个元素对应的第i个像素的b通道色彩值、第四小段内第i个元素对应的第i个像素的a通道色彩值,作为单元图像中第i个像素的rgba四通道色彩值,得到单元图像中第i个像素,据此拼接出8
×
16的单元图像。
[0058]
这样可以将四个小段中对应第i个像素的r通道色彩值、g通道色彩值、b通道色彩值和a通道色彩值作为第i个像素的色彩值,构建出rgba四通道色彩图像,作为单元图像。
[0059]
采用以上方式对每个数据段进行处理后,共计得到s个单元图像。
[0060]
之后,终端11可以基于s个单元图像确定出密文图像。
[0061]
在本实施例中,终端11可以采用以下公式计算图像模板的单元数边长:,
ꢀꢀꢀ
(8)其中,z表示图像模板的边长对应的图像单元数量,表示对取整。
[0062]
之后,终端11可以确定出z
×
z的图像模板,然后将s个单元图像向z
×
z的图像模板内填充,图像模板内未能填充的部分以白色单元图像补足,从而得到密文图像。
[0063]
这样可以利用单元图像的数量s来确定图像模板的尺寸(z
×
z的图像模板),便于将s个单元图像向z
×
z的图像模板内填充图像模板内未能填充的部分以白色单元图像补足,得到密文图像。
[0064]
示例性的,终端11可以确定出z
×
z的图像模板的中心单元,即,位于图像模板最中心的一个单元(8
×
16的单元)。然后,终端11可以对单元图像的数量s作判断:若单元图像的数量s为奇数,终端11可以以中心单元为起点,以向上方向沿顺时针将s个单元图像填充至z
×
z的图像模板内。
[0065]
若单元图像的数量s为偶数,终端11可以以中心单元为起点,以向上方向(或向下方向)沿逆时针将s个单元图像填充至z
×
z的图像模板内。
[0066]
通过单元图像的数量s的奇偶,来确定填充s个单元图像的方式,能够进一步加强安全性,在解密时也能够检测单元图像的数量s,从而实现解密。
[0067]
由此,可以基于s个单元图像确定出密文图像。确定出密文图像后,终端11可以执行步骤s15。
[0068]
步骤s15:基于数据段的序号将所有数据段进行排序,得到密文数据。
[0069]
在本实施例中,终端11可以基于数据段的序号将所有数据段进行排序(这里用来计算密文数据的数据段是已经经过随机顺序变换处理后的数据段),得到密文数据。
[0070]
得到密文数据后,终端11还可以执行步骤s16。
[0071]
步骤s16:计算所述原始数据对应的第一哈希值。
[0072]
在本实施例中,终端11可以计算原始数据对应的第一哈希值,此处可以采用md5信息摘要算法(md5 message-digest algorithm)来计算第一哈希值。另外,也可以对原始数据进行一定的标准化处理后再进行对应的第一哈希值计算(但需要保证解密后进行验证时,也采用同样的标准化处理后再计算第二哈希值)。
[0073]
计算出原始数据对应的第一哈希值后,终端11可以执行步骤s17。
[0074]
步骤s17:将所述密文数据、第一哈希值和密文图像分别发送给所述云端,以使所述云端基于所述密文图像对所述密文数据进行解密,得到还原数据后,计算所述还原数据对应的第二哈希值,并验证第一哈希值与第二哈希值是否一致。
[0075]
在本实施例中,终端11可以将密文数据、第一哈希值和密文图像分别发送给云端12,以使云端12基于密文图像对所述密文数据进行解密,得到还原数据后,计算还原数据对应的第二哈希值,并验证第一哈希值与第二哈希值是否一致。
[0076]
通过对原始数据进行处理,处理为一维数据,然后对一维数据进行分段(每128个元素或512个元素为一个数据段),对每个对数据段内的元素进行排序,然后再基于每个数据段的序号对数据段进行排序,从而实现对原始数据的加密,得到密文数据。与此同时,在对每个数据段的元素进行排序时,利用数据段内元素的顺序变化,生成对应的单元图像(单元图像可以反映出数据原来的顺序,从而便于解密),再利用所有的单元图像生成密文图像,一同传输给终端11,便于终端11基于密文图像对密文数据进行解密,得到还原数据(如解密无误且数据未被篡改,还原数据与原始数据一致)。为了验证数据传输过程中是否被篡改,利用原始数据计算第一哈希值,传输给云端12,云端12对解密得到的还原数据计算第二哈希值,即可验证还原数据与原始数据是否一致。这样可以利用数据与图像协同的方式(本质是将解密需要的密钥转换为图像了,在加密算法未公开的情况下,相较于文本型密钥,破解难度大大增加),通过相对简单的方式实现较高的安全性,实现云终端交互的数据加密传输。
[0077]
为了便于对本方案中解密过程的理解,本实施例中以云端12解密为例进行介绍。
[0078]
请参阅图3,图3为本技术实施例提供的应用于云端12的云终端交互的数据加密传输方法的流程图。应用于云端12的云终端交互的数据加密传输方法可以包括步骤s21、步骤s22和步骤s23。
[0079]
为了实现数据解密,首先,云端12可以执行步骤s21。
[0080]
步骤s21:接收终端发送的密文数据、第一哈希值和密文图像,其中,所述密文数据、所述第一哈希值和所述密文图像由所述终端11基于云终端交互的数据加密传输方法得
到。
[0081]
云端12可以接收终端11发送的密文数据、第一哈希值和密文图像。
[0082]
接收到终端11发送的密文数据、第一哈希值和密文图像后,云端12可以执行步骤s22。
[0083]
步骤s22:基于所述密文图像对所述密文数据进行解密,得到还原数据。
[0084]
在本实施例中,云端12基于密文图像对密文数据进行解密的过程,实质上是加密的逆过程。
[0085]
首先,云端12可以对密文图像进行识别,确定出密文图像的单元图像数量,识别时会排除掉填充的空白单元图像,从而得到单元图像的数量s,然后根据单元图像的数量s的奇偶,还原每个单元图像的序号。
[0086]
然后对应同一序号的单元图像和数据段(经过随机顺序变换后的数据段),采用约定的方式读取单元图像中每个像素的灰度值(或者rgba四通道色彩值),从而得到该数据段中每个元素的顺序变化情况,并依照顺序变化情况对经过随机顺序变换后的数据段中的每个元素进行顺序调节,还原为元素未经随机顺序变换的数据段,再按照数据段(元素未经随机顺序变换)的序号,将所有数据段拼接为一维数据,再还原为m
×
n矩阵形式,再对m
×
n矩阵形式的数据进行还原,得到还原数据。
[0087]
得到还原数据后,为了验证数据是否被篡改,云端12可以进一步执行步骤s23。
[0088]
步骤s23:计算所述还原数据对应的第二哈希值,并验证所述第二哈希值与所述第一哈希值是否一致,判断所述密文数据是否被篡改。
[0089]
在本实施例中,云端12可以采用与终端11约定的同一算法计算哈希值,例如采用md5信息摘要算法计算还原数据的第二哈希值,然后,云端12可以比对第二哈希值与第一哈希值是否一致。一致,表示还原数据无误,未遭篡改。
[0090]
由此可以实现云终端交互的数据加密传输。
[0091]
本技术实施例提供一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在终端11执行的应用于终端11的云终端交互的数据加密传输方法,或者控制所述存储介质所在云端12执行的应用于云端12的云终端交互的数据加密传输方法。
[0092]
综上所述,本技术实施例提供一种云终端交互的数据加密传输方法即系统,通过对原始数据进行处理,处理为一维数据,然后对一维数据进行分段(每128个元素或512个元素为一个数据段),对每个对数据段内的元素进行排序,然后再基于每个数据段的序号对数据段进行排序,从而实现对原始数据的加密,得到密文数据。与此同时,在对每个数据段的元素进行排序时,利用数据段内元素的顺序变化,生成对应的单元图像(单元图像可以反映出数据原来的顺序,从而便于解密),再利用所有的单元图像生成密文图像,一同传输给终端11,便于终端11基于密文图像对密文数据进行解密,得到还原数据(如解密无误且数据未被篡改,还原数据与原始数据一致)。为了验证数据传输过程中是否被篡改,利用原始数据计算第一哈希值,传输给云端12,云端12对解密得到的还原数据计算第二哈希值,即可验证还原数据与原始数据是否一致。这样可以利用数据与图像协同的方式(本质是将解密需要的密钥转换为图像了,在加密算法未公开的情况下,相较于文本型密钥,破解难度大大增加),通过相对简单的方式实现较高的安全性,实现云终端交互的数据加密传输。
[0093]
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
[0094]
以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献