System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机领域,具体涉及一种数据通信方法及装置、发送端设备、接收端设备。
技术介绍
1、目标设备(例如车辆)中的控制器在发送数据的过程中,可以采用密钥数据对数据进行加密。而为了保证交互的安全性,控制器的后台发送端设备通常周期性的更新接收端设备中的密钥数据。
2、相关技术中,服务器在更新目标设备中的密钥数据的过程中,可以采用预先存储的密钥对密钥数据加密,并向目标设备加密后的密钥数据,由此保证密钥数据的安全性。
3、但是,该种加密方式的安全性较低。
技术实现思路
1、本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的一个目的在于提出一种数据通信方法,发送端设备基于第一密钥数据生成原文数据后,将第一密钥数据的标识作为附加认证数据,将随机值作为初始向量,并将第一预设密钥、原文数据、附加认证数据和初始向量输入aes-gcm算法,得到加密数据,相较于相关技术,提高了密钥数据加密的安全性,同时有效保证了密钥数据更新的机密性、完整性和真实性。
2、根据本专利技术实施例的一种数据通信方法,方法包括:
3、获取第一密钥数据和第一预设密钥,并基于第一密钥数据生成原文数据;
4、将第一密钥数据的标识作为附加认证数据,并将随机值作为初始向量;
5、将第一预设密钥、原文数据、附加认证数据和初始向量输入aes-gcm算法,得到加密数据和第一认证标签数据;
6、发送加密数据、附加认证数据、初始向量
7、在本专利技术一些实施例中,方法还包括:
8、获取与第一密钥数据对应的计数器,并对计数器的计数值自增预设值,得到第一计数值;
9、基于第一密钥数据生成原文数据,包括:
10、基于第一计数值和第一密钥数据生成原文数据。
11、在本专利技术一些实施例中,方法还包括:
12、获取第一密钥数据的属性参数,属性参数用于表征第一密钥数据是否可更新;
13、基于第一计数值和第一密钥数据生成原文数据,包括:
14、将第一计数值、属性参数和第一密钥数据拼接,生成原文数据。
15、在本专利技术一些实施例中,方法还包括:
16、获取填充数据;
17、将第一计数值、属性参数和第一密钥数据拼接,生成原文数据,包括:
18、将第一计数值、属性参数、填充数据和第一密钥数据拼接,生成原文数据;
19、其中,第一计数值的长度为第一预设长度,属性参数的长度为第二预设长度,填充数据的长度和第一密钥数据的长度之和为第三预设长度,且填充数据的长度与第一密钥数据的长度负相关。
20、根据本专利技术实施例的一种数据通信方法,方法包括:
21、接收加密数据、附加认证数据、初始向量和第一认证标签数据;
22、将第二预设密钥、加密数据、附加认证数据和初始向量输入aes-gcm算法;
23、若aes-gcm算法输出原文数据,且aes-gcm算法输出的第二认证标签数据和第一认证标签数据相同,则基于原文数据确定第一密钥数据,并将当前存储的第二密钥数据更新为第一密钥数据,第二密钥数据的标识与第一密钥数据的标识相同。
24、在本专利技术一些实施例中,在将第二预设密钥、加密数据、附加认证数据和初始向量输入aes-gcm算法之前,方法还包括:
25、获取第二密钥数据的属性参数;
26、将第二预设密钥、加密数据、附加认证数据和初始向量输入aes-gcm算法,包括:
27、若第二密钥数据的属性参数表征第二密钥数据可更新,则将第二预设密钥、加密数据、附加认证数据和初始向量输入aes-gcm算法。
28、在本专利技术一些实施例中,在将当前存储的第二密钥数据更新为第一密钥数据之后,方法还包括:
29、将第二密钥数据的属性参数更新为第一密钥数据的属性参数。
30、在本专利技术一些实施例中,在基于原文数据确定第一密钥数据之后,方法还包括:
31、基于原文数据确定第一计数值;
32、获取与第二密钥数据对应的第二计数值;
33、将当前存储的第二密钥数据更新为第一密钥数据,包括:
34、若第一计数值大于第二计数值,则将当前存储的第二密钥数据更新为第一密钥数据。
35、在本专利技术一些实施例中,方法还包括:
36、将第二计数值更新为第一计数值。
37、根据本专利技术实施例的一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的数据通信方法。
38、根据本专利技术实施例的一种发送端设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,实现上述的数据通信方法。
39、根据本专利技术实施例的一种接收端设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,实现上述的数据通信方法。
40、根据本专利技术实施例的一种数据通信装置,装置包括:
41、获取模块,用于获取第一密钥数据和第一预设密钥;
42、第一确定模块,用于基于第一密钥数据生成原文数据;
43、第二确定模块,用于将第一密钥数据的标识作为附加认证数据,并将随机值作为初始向量;
44、加密模块,用于将第一预设密钥、原文数据、附加认证数据和初始向量输入aes-gcm算法,得到加密数据和第一认证标签数据;
45、发送模块,用于发送加密数据、附加认证数据、初始向量和第一认证标签数据。
46、根据本专利技术实施例的一种数据通信装置,装置包括:
47、接收模块,用于接收加密数据、附加认证数据、初始向量和第一认证标签数据;
48、解密模块,用于将第二预设密钥、加密数据、附加认证数据和初始向量输入aes-gcm算法;
49、第三确定模块,用于若aes-gcm算法输出原文数据,且aes-gcm算法输出的第二认证标签数据和第一认证标签数据相同,则基于原文数据确定第一密钥数据;
50、更新模块,用于将当前存储的第二密钥数据更新为第一密钥数据,第二密钥数据的标识与第一密钥数据的标识相同。
51、综上所述,本专利技术实施例提供了一种数据通信方法及装置、发送端设备、接收端设备,发送端设备在获取第一密钥数据和第一预设密钥,并基于第一密钥数据生成原文数据后,可以将第一密钥数据的标识作为附加认证数据,并将随机值作为初始向量。将第一预设密钥、原文数据、附加认证数据和初始向量输入aes-gcm算法,得到加密数据和第一认证标签数据,之后发送加密数据、附加认证数据、初始向量和第一认证标签数据。
52、由于发送端设备基于第一密钥数据生成原文数据后,将第一密钥数据的标识作为附加认证数据,将随机值作为初始向量,并本文档来自技高网...
【技术保护点】
1.一种数据通信方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
5.一种数据通信方法,其特征在于,所述方法包括:
6.根据权利要求5所述的方法,其特征在于,在将第二预设密钥、所述加密数据、所述附加认证数据和所述初始向量输入AES-GCM算法之前,所述方法还包括:
7.根据权利要求5所述的方法,其特征在于,在将当前存储的第二密钥数据更新为所述第一密钥数据之后,所述方法还包括:
8.根据权利要求5所述的方法,其特征在于,在基于所述原文数据确定第一密钥数据之后,所述方法还包括:
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至4任一所述的数据通信方法,或者,权利要求5至9任一所述的数据通信方法。
...【技术特征摘要】
1.一种数据通信方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
5.一种数据通信方法,其特征在于,所述方法包括:
6.根据权利要求5所述的方法,其特征在于,在将第二预设密钥、所述加密数据、所述附加认证数据和所述初始向量输入aes-gcm算法之前,所述方法还包括:
7.根据权利要求5所述的方法,其特征在于,在将当前存储的第二密钥数据更新为所述第一密钥数据之后,所述方法还包括:
8.根据权利要求5所述的方法,其特征在于,在基于所述原文数据确定第一密钥数据之后,所述方法还包括:
9.根据...
【专利技术属性】
技术研发人员:邹庆武,
申请(专利权)人:苏州萨沙迈半导体有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。