System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及通信领域,具体而言,涉及一种消息报文的生成方法及装置、程序产品、存储介质。
技术介绍
1、安全车载通信(security onboard communication,简称为secoc)机制用于保护车内网中敏感信息的完整性、可认证性和防重放性。保护的对象以协议数据单元(protocoldata unit,简称为pdu)为单位进行传输,在受保护的pdu消息尾部增加新鲜度值的信息和完整性校验值的信息。相关技术在进行通信时,新鲜值完全暴露,很难有更多的字节来追加截断的消息认证码(message authentication code,简称为mac值),存在消息报文易被强制破解的问题。
技术实现思路
1、本申请实施例提供了一种消息报文的生成方法及装置、程序产品、存储介质,以至少解决相关技术中消息报文易被强制破解的问题。
2、根据本申请的一个实施例,提供了一种消息报文的生成方法,包括:获取原始消息报文、数据传输资源、第一新鲜值和上述原始消息报文的原始标识,其中,上述第一新鲜值用于表示上述原始消息报文的时效性,上述原始标识用于唯一识别上述原始消息报文,上述数据传输资源用于表示数据传输总线的通信能力;基于上述原始消息报文的报文字节长度和上述数据传输资源对上述第一新鲜值执行第一截断操作,得到目标新鲜值,其中,上述目标新鲜值的字节长度小于上述第一新鲜值的字节长度;基于上述原始消息报文、上述原始标识、上述第一新鲜值以及上述原始消息报文的报文字节长度,生成目标消息认证数据,其中
3、在一个示例性实施例中,获取原始消息报文、数据传输资源、第一新鲜值和上述原始消息报文的原始标识,包括:向第一消息组件发送第一请求指令,其中,上述第一消息组件用于在获取到上述原始消息报文时生成上述原始标识,并存储上述原始消息报文和上述原始标识;接收上述第一消息组件响应上述第一请求指令发送的上述原始消息报文和上述原始标识;向第二消息组件发送第二请求指令,其中,上述第二消息组件中包括存储的上述数据传输资源;接收上述第二消息组件响应上述第二请求发送的上述数据传输资源;向第三消息组件发送第三请求指令,其中,上述第三消息组件中包括存储上述第一新鲜值,其中,上述第一新鲜值是在上述原始消息报文生成时,通过计时器生成的时间戳;接收上述第三消息组件响应上述第三请求指令发送的上述第一新鲜值;其中,上述第一消息组件、上述第二消息组件以及上述第三消息组件均集成在同一电子控制设备中。
4、在一个示例性实施例中,基于上述原始消息报文的报文字节长度和上述数据传输资源对上述第一新鲜值执行第一截断操作,得到目标新鲜值,包括:确定上述数据传输资源中的资源限制,其中,上述资源限制包括传输带宽限制和网络负载限制,上述传输带宽限制用于限制上述数据传输总线的数据传输速率,上述网络负载限制用于限制上述数据传输总线传输的数据量;获取上述传输带宽限制中包括的带宽限制字节长度和上述网络负载限制中包括的负载限制字节长度,并按照上述带宽限制字节长度、上述负载限制字节长度以及上述原始消息报文的报文字节长度,计算上述第一新鲜值的第一目标截断长度;从上述第一新鲜值的第一预设字节位置处,截取与上述第一目标截断长度匹配的字节长度,得到上述目标新鲜值。
5、在一个示例性实施例中,按照上述带宽限制字节长度、上述负载限制字节长度以及上述原始消息报文的报文字节长度,计算上述第一新鲜值的第一目标截断长度,包括以下之一:在上述负载限制字节长度小于第一预设长度,且上述报文字节长度与上述第一新鲜值的字节长度之间的第一和值,满足上述带宽限制字节长度的情况下,将第一截断长度确定为上述第一目标截断长度,其中,上述第一截断长度是与上述第一预设长度和上述第一和值对应的截断长度;在上述负载限制字节长度大于第二预设长度,且上述报文字节长度与上述第一新鲜值的字节长度之间的第二和值,满足上述带宽限制字节长度的情况下,将第二截断长度确定为上述第一目标截断长度,其中,上述第二截断长度是与上述第二预设长度和上述第二和值对应的截断长度;其中,上述第一截断长度小于上述第二截断长度。
6、在一个示例性实施例中,基于上述原始消息报文、上述原始标识、上述第一新鲜值以及上述原始消息报文的报文字节长度,生成目标消息认证数据,包括:确定上述目标新鲜值的字节长度、上述原始消息报文的报文字节长度,以及上述第一新鲜值的字节长度,并对上述原始消息报文、上述原始标识和上述第一新鲜值执行异或运算,得到原始消息认证码;对上述原始消息认证码执行编码操作,得到消息认证码,其中,上述编码操作中包括对上述原始消息认证码进行加密的操作;对上述目标新鲜值的字节长度与上述消息认证码的字节长度执行商运算,并对得到的第一运算结果执行取余操作,将得到的第一余数确定为上述消息认证码的第一截取位置;从上述消息认证码的第一截取位置处,截取与第一预设字节长度,得到上述目标消息认证码,其中,上述目标消息认证码的字节长度小于上述消息认证码的字节长度。
7、在一个示例性实施例中,基于上述原始消息报文、上述原始标识、上述第一新鲜值以及上述原始消息报文的字节长度,生成目标消息认证数据,包括:对上述第一新鲜值的字节长度与上述原始消息报文的报文字节长度执行商运算,并对得到的第二运算结果执行取余操作,得到的第二余数;按照上述第二余数确定上述目标消息认证数据中包括的上述插入位置。
8、根据本申请的一个实施例,提供了一种消息报文的生成装置,包括:第一获取模块,用于获取原始消息报文、数据传输资源、第一新鲜值和上述原始消息报文的原始标识,其中,上述第一新鲜值用于表示上述原始消息报文的时效性,上述原始标识用于唯一识别上述原始消息报文,上述数据传输资源用于表示数据传输总线的通信能力;第一执行模块,用于基于上述原始消息报文的报文字节长度和上述数据传输资源对上述第一新鲜值执行第一截断操作,得到目标新鲜值,其中,上述目标新鲜值的字节长度小于上述第一新鲜值的字节长度;第一生成模块,用于基于上述原始消息报文、上述原始标识、上述第一新鲜值以及上述原始消息报文的报文字节长度,生成目标消息认证数据,其中,上述目标消息认证数据中包括目标消息认证码和上述目标消息认证码待插入至上述原始消息报文的插入位置,上述目标消息认证码用于验证上述原始消息报文的安全性和完整性;第一插入模块,用于基于上述插入位置将上述目标消息认证码插入至上述原始消息报文中,得到第一消息报文;第一拼接模块,用于拼接上述目标新鲜值和上述第一消息报文,得到目标消息报文。
9、在一个示例性实施例中,上述第一获取模块,包括:第一发送子模块,用于向第一消息组件发送第一请求指令,其中,上述第一消息组件用于在获取到上本文档来自技高网...
【技术保护点】
1.一种消息报文的生成方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,获取原始消息报文、数据传输资源、第一新鲜值和所述原始消息报文的原始标识,包括:
3.根据权利要求1所述的方法,其特征在于,基于所述原始消息报文的报文字节长度和所述数据传输资源对所述第一新鲜值执行第一截断操作,得到目标新鲜值,包括:
4.根据权利要求3所述的方法,其特征在于,按照所述带宽限制字节长度、所述负载限制字节长度以及所述原始消息报文的报文字节长度,计算所述第一新鲜值的第一目标截断长度,包括以下之一:
5.根据权利要求1所述的方法,其特征在于,基于所述原始消息报文、所述原始标识、所述第一新鲜值以及所述原始消息报文的报文字节长度,生成目标消息认证数据,包括:
6.根据权利要求1所述的方法,其特征在于,基于所述原始消息报文、所述原始标识、所述第一新鲜值以及所述原始消息报文的字节长度,生成目标消息认证数据,包括:
7.一种消息报文的生成装置,其特征在于,包括:
8.根据权利要求7所述的装置,其特征在于,所述第一
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至6任一项中所述的方法的步骤。
10.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至6任一项中所述的方法的步骤。
...【技术特征摘要】
1.一种消息报文的生成方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,获取原始消息报文、数据传输资源、第一新鲜值和所述原始消息报文的原始标识,包括:
3.根据权利要求1所述的方法,其特征在于,基于所述原始消息报文的报文字节长度和所述数据传输资源对所述第一新鲜值执行第一截断操作,得到目标新鲜值,包括:
4.根据权利要求3所述的方法,其特征在于,按照所述带宽限制字节长度、所述负载限制字节长度以及所述原始消息报文的报文字节长度,计算所述第一新鲜值的第一目标截断长度,包括以下之一:
5.根据权利要求1所述的方法,其特征在于,基于所述原始消息报文、所述原始标识、所述第一新鲜值以及所述原始消息报文的报文字节长度,生成目标消息认证数...
【专利技术属性】
技术研发人员:曲洪达,杨彦召,薛信钊,印星,王文轩,鞠世超,张强强,
申请(专利权)人:中汽创智科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。