一种新鲜值管理方法及装置制造方法及图纸

技术编号:29684181 阅读:29 留言:0更新日期:2021-08-13 22:08
本发明专利技术公开了一种新鲜值管理方法及装置,包括发送节点接收发送安全报文的指令;分别获取第一计数器与第二计数器;根据第一管理规则,将第一计数器作为完整新鲜值的高位,第二计数器作为完整新鲜值的低位拼接获得完整新鲜值;根据完整新鲜值构建截断新鲜值,将第一计数器低位作为截断新鲜值的高位,第二计数器低位作为截断新鲜值的低位拼接获得截断新鲜值以用于接收节点重构所述完整新鲜值以及验证安全报文。本发明专利技术既降低了完整新鲜值结构的复杂度,又增强了新鲜值在安全报文中的保密性,同时兼容非AUTOSAR架构的控制器,降低软件开发成本。

【技术实现步骤摘要】
一种新鲜值管理方法及装置
本专利技术涉及安全通信
,尤其涉及一种新鲜值管理方法及装置。
技术介绍
为了响应汽车行业对数据加密和验证的需求,制订汽车电子软件标准的AUTOSAR(AUTomotiveOpenSystemArchitecture,汽车开放系统架构)组织提出了一套通信加密和验证的标准,即车载安全通信(SecOC,SecureOnboardCommunication)技术。其中,新鲜值(FV,FreshnessValue)被用于车载安全通信安全报文(SecuredI-PDU)的构建,以抵御重放攻击。在AUTOSAR的标准规范(SpecificationofSecureOnboardCommunication)中,提供了四种新鲜值管理的方法。基于单计数器的新鲜值管理。新鲜值由单计数器构建,通过收发两端新鲜值计数器同步单调递增实现节点间新鲜值的同步。虽然该方案可以实现新鲜值管理,但是机制较为简单,存在一定缺陷。一方面,为了保证全生命周期中新鲜值始终单调递增,需要分配相当数量的内存资源用于存储新鲜值;另一方面,新鲜值管理的方法过于简单,攻击者很容易破解。基于时间戳的新鲜值管理。采用全局同步时间作为新鲜值,此时新鲜值将不需要显示在安全报文的数据中,保密性较高。但是这种方法需要控制器集成全局时基同步管理模块(StbM,SynchronizedTime-baseManager),机制较为复杂,尤其是对于非AUTOSAR架构的控制器难以实现,开发成本也较高。基于多计数器(截断新鲜值)的新鲜值管理。该方法采用三个计数器构建新鲜值,采用主-从的拓扑结构,其中主节点周期性的发送同步报文以用于从节点之间新鲜值的同步。该方法虽然可以采用主节点和从节点耦合在同一个节点的方式减少节点数量,但是同步报文的使用会在一定程度上占用总线负载率;而且计数器数量较多,机制较为复杂,尤其是接收节点在重构新鲜值时多达15个分支,大大增加了开发难度。基于多计数器(完整新鲜值)的新鲜值管理。该方法采用两个计数器构建新鲜值,相比于上述截断新鲜值的方法,机制相对简单;但是由于将完整新鲜值暴露在安全报文中,攻击者很容易通过对一定数量的报文进行分析,破解新鲜值管理的方法,降低了安全性。以上四种方法中,基于单计数器的新鲜值管理和基于多计数器(完整新鲜值)的新鲜值管理牺牲了安全报文中新鲜值的保密性,降低了新鲜值构建与重构机制的复杂度;基于多计数器(截断新鲜值)的新鲜值管理则通过复杂的新鲜值构建与重构机制,加强了安全报文中新鲜值的保密性;基于时间戳的新鲜值管理虽然在一定程度上减弱了复杂度和保密性之间的矛盾,但是软件开发成本较高,且不适用于非AUTOSAR架构的控制器。因此,需要一种新鲜值管理方法及装置,减弱新鲜值管理中新鲜值构建与重构机制的复杂度与新鲜值在安全报文中的保密性之间的矛盾,并兼容非AUTOSAR架构的控制器,降低软件开发成本。
技术实现思路
针对上述现有技术中存在的问题,本专利技术提供一种新鲜值管理方法及装置,既降低了完整新鲜值结构的复杂度,又增强了新鲜值在安全报文中的保密性,同时兼容非AUTOSAR架构的控制器,降低软件开发成本。所述技术方案如下:一方面,本专利技术提供了一种新鲜值管理方法,包括:发送节点接收发送安全报文的指令;分别获取第一计数器与第二计数器;根据第一管理规则,将所述第一计数器作为完整新鲜值的高位,所述第二计数器作为完整新鲜值的低位拼接获得所述完整新鲜值;其中,所述完整新鲜值的长度等于所述第一计数器与所述第二计数器的长度之和,所述第一计数器包括第一计数器高位与第一计数器低位,所述第二计数器包括第二计数器高位和第二计数器低位;根据所述完整新鲜值构建截断新鲜值,将所述第一计数器低位作为所述截断新鲜值的高位,所述第二计数器低位作为所述截断新鲜值的低位拼接获得所述截断新鲜值,所述截断新鲜值用于接收节点重构所述完整新鲜值以及验证所述安全报文。进一步地,所述分别获取第一计数器与第二计数器包括:所述发送节点的所述第一计数器和所述第二计数器的初始值均为1,所述接收节点的所述第一计数器和所述第二计数器的初始值均为0;当所述发送节点或所述接收节点切换到第一预设状态后,所述第一计数器的值加一;当所述第一计数器的值为所述第一计数器的最大值时,将所述第一计数器的值重置为所述第一计数器的初始值;所述发送节点达到第二预设状态后,则所述第二计数器的值加一;当所述第二计数器的值为所述第二计数器的最大值时,将所述第二计数器的值重置为所述第二计数器的初始值。进一步地,所述第一管理规则还包括第一子规则,所述第一子规则为:当所述发送节点切换到第一预设状态完成后,从非易失性存储器中读取所述第一计数器的值,作为所述第一计数器的当前值;判断所述当前值是否小于所述第一计数器的最大值;若是,则将所述第一计数器的值加一,并存储于所述非易失性存储器中;若否,则将所述第一计数器的初始值存储于所述非易失性存储器中。进一步地,所述第一管理规则还包括第二子规则,所述第二子规则为:判断所述发送节点是否达到第二预设状态;若判断结果为所述发送节点达到所述第二预设状态,则进一步判断所述第二计数器的当前值是否小于所述第二计数器的最大值;若是,将所述第二计数器的值加一;若否,则将所述第二计数器的值重置为所述第二计数器的初始值;若判断结果为所述发送节点未达到所述第二预设状态,则返回执行所述发送节点接收发送安全报文的指令。进一步地,在所述完整新鲜值与所述截断新鲜值构建完成之后,所述方法还包括:将所述截断新鲜值作为所述安全报文的组成部分发送给接收节点;所述接收节点接收所述安全报文,并根据所述截断新鲜值重构所述完整新鲜值,用于验证所述安全报文。进一步地,所述接收节点接收所述安全报文,并根据所述截断新鲜值重构所述完整新鲜值,用于验证所述安全报文包括:根据所述接收节点接收到的所述安全报文,判断所述第一计数器低位与上一次成功接收时所述第一计数器低位的值,以及判断所述第二计数器与上一次成功接收时所述第二计数器的值;根据判断结果,按照验证构建规则构建多个计数器验证尝试初始值;根据多个所述计数器验证尝试初始值,通过验证尝试重构所述完整新鲜值。进一步地,所述验证构建规则包括第一构建子规则、第二构建子规则、第三构建子规则和第四构建子规则,所述第一构建子规则为:若判断结果为所述第一计数器低位等于上一次成功接收时所述第一计数器低位的值,且所述第二计数器低位大于上一次成功接收时所述第二计数器低位的值,则构建多个所述计数器验证尝试初始值为:第一计数器高位为上一次成功接收时所述第一计数器高位的值,所述第一计数器低位为上一次成功接收时所述第一计数器低位的值,第二计数器高位为上一次成功接收时所述第二计数器高位的值,所述第二计数器低位为本次接收到的所述第二计数器低位的值;<本文档来自技高网
...

【技术保护点】
1.一种新鲜值管理方法,其特征在于,包括:/n发送节点接收发送安全报文的指令;/n分别获取第一计数器与第二计数器;/n根据第一管理规则,将所述第一计数器作为完整新鲜值的高位,所述第二计数器作为完整新鲜值的低位拼接获得所述完整新鲜值;其中,所述完整新鲜值的长度等于所述第一计数器与所述第二计数器的长度之和,所述第一计数器包括第一计数器高位与第一计数器低位,所述第二计数器包括第二计数器高位和第二计数器低位;/n根据所述完整新鲜值构建截断新鲜值,将所述第一计数器低位作为所述截断新鲜值的高位,所述第二计数器低位作为所述截断新鲜值的低位拼接获得所述截断新鲜值,所述截断新鲜值用于接收节点重构所述完整新鲜值以及验证所述安全报文。/n

【技术特征摘要】
1.一种新鲜值管理方法,其特征在于,包括:
发送节点接收发送安全报文的指令;
分别获取第一计数器与第二计数器;
根据第一管理规则,将所述第一计数器作为完整新鲜值的高位,所述第二计数器作为完整新鲜值的低位拼接获得所述完整新鲜值;其中,所述完整新鲜值的长度等于所述第一计数器与所述第二计数器的长度之和,所述第一计数器包括第一计数器高位与第一计数器低位,所述第二计数器包括第二计数器高位和第二计数器低位;
根据所述完整新鲜值构建截断新鲜值,将所述第一计数器低位作为所述截断新鲜值的高位,所述第二计数器低位作为所述截断新鲜值的低位拼接获得所述截断新鲜值,所述截断新鲜值用于接收节点重构所述完整新鲜值以及验证所述安全报文。


2.根据权利要求1所述的一种新鲜值管理方法,其特征在于,所述分别获取第一计数器与第二计数器包括:
所述发送节点的所述第一计数器和所述第二计数器的初始值均为1,所述接收节点的所述第一计数器和所述第二计数器的初始值均为0;
当所述发送节点或所述接收节点切换到第一预设状态后,所述第一计数器的值加一;
当所述第一计数器的值为所述第一计数器的最大值时,将所述第一计数器的值重置为所述第一计数器的初始值;
所述发送节点达到第二预设状态后,则所述第二计数器的值加一;
当所述第二计数器的值为所述第二计数器的最大值时,将所述第二计数器的值重置为所述第二计数器的初始值。


3.根据权利要求1所述的一种新鲜值管理方法,其特征在于,所述第一管理规则还包括第一子规则,所述第一子规则为:
当所述发送节点切换到第一预设状态完成后,从非易失性存储器中读取所述第一计数器的值,作为所述第一计数器的当前值;
判断所述当前值是否小于所述第一计数器的最大值;
若是,则将所述第一计数器的值加一,并存储于所述非易失性存储器中;
若否,则将所述第一计数器的初始值存储于所述非易失性存储器中。


4.根据权利要求1所述的一种新鲜值管理方法,其特征在于,所述第一管理规则还包括第二子规则,所述第二子规则为:
判断所述发送节点是否达到第二预设状态;
若判断结果为所述发送节点达到所述第二预设状态,则进一步判断所述第二计数器的当前值是否小于所述第二计数器的最大值;
若是,将所述第二计数器的值加一;
若否,则将所述第二计数器的值重置为所述第二计数器的初始值;
若判断结果为所述发送节点未达到所述第二预设状态,则返回执行所述发送节点接收发送安全报文的指令。


5.根据权利要求1所述的一种新鲜值管理方法,其特征在于,在所述完整新鲜值与所述截断新鲜值构建完成之后,所述方法还包括:
将所述截断新鲜值作为所述安全报文的组成部分发送给接收节点;
所述接收节点接收所述安全报文,并根据所述截断新鲜值重构所述完整新鲜值,用于验证所述安全报文。


6.根据权利要求5所述的一种新鲜值管理方法,其特征在于,所述接收节点接收所述安全报文,并根据所述截断新鲜值重构所述完整新鲜值,用于验证所述安全报文包括:
根据所述接收节点接收到的所述安全报文,判断所述第一计数器低位与上一次成功接收时所述第一计数器低位的值,以及判断所述第二计数器与上一次成功接收时所述第二计数器的值;
根据判断结果,按照验证构建规则构建多个计数器验证尝试初始值;
根据多个所述计数器验证尝试初始值,通过验证尝试重构所述完整新鲜值。


7.根据权利要求6所述的一种新鲜值管理方法,其特征在于,所述验证构建规则包括第一构建子规则、第二构建子规则、第三构建子规则和第四构建子规则,所述第一构建子规则为:
若判断结果为所述第一计数器低位等于上一次成功接收时所述第一计数器低位的值,且所述第二计数器低位大于上一次成功接收时所述第二计数器低位的值,则构建多个所述计数器验证尝试初始值为:第一计数器高位为上一次成功接收时所述第一计数器高位的值,所述第一计数器低位为上一次成功接收时所述第一计数器低位的值,第二计数器高位为上一次成功接收时所述第二计数器高位的值,所述第二计数器低位为本次接收到的所述第二计数...

【专利技术属性】
技术研发人员:李丰军周剑光曹阳杨彦召薛信钊
申请(专利权)人:中汽创智科技有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1