CN113259374B - 一种新鲜值管理方法及装置 - Google Patents
一种新鲜值管理方法及装置 Download PDFInfo
- Publication number
- CN113259374B CN113259374B CN202110645913.9A CN202110645913A CN113259374B CN 113259374 B CN113259374 B CN 113259374B CN 202110645913 A CN202110645913 A CN 202110645913A CN 113259374 B CN113259374 B CN 113259374B
- Authority
- CN
- China
- Prior art keywords
- counter
- value
- fresh
- bit
- fresh value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种新鲜值管理方法及装置,包括发送节点接收发送安全报文的指令;分别获取第一计数器与第二计数器;根据第一管理规则,将第一计数器作为完整新鲜值的高位,第二计数器作为完整新鲜值的低位拼接获得完整新鲜值;根据完整新鲜值构建截断新鲜值,将第一计数器低位作为截断新鲜值的高位,第二计数器低位作为截断新鲜值的低位拼接获得截断新鲜值以用于接收节点重构所述完整新鲜值以及验证安全报文。本发明既降低了完整新鲜值结构的复杂度,又增强了新鲜值在安全报文中的保密性,同时兼容非AUTOSAR架构的控制器,降低软件开发成本。
Description
技术领域
本发明涉及安全通信技术领域,尤其涉及一种新鲜值管理方法及装置。
背景技术
为了响应汽车行业对数据加密和验证的需求,制订汽车电子软件标准的AUTOSAR(AUTomotive Open System Architecture,汽车开放系统架构)组织提出了一套通信加密和验证的标准,即车载安全通信(SecOC,Secure Onboard Communication)技术。其中,新鲜值(FV,Freshness Value)被用于车载安全通信安全报文(Secured I-PDU)的构建,以抵御重放攻击。
在AUTOSAR的标准规范(Specification of Secure Onboard Communication)中,提供了四种新鲜值管理的方法。
基于单计数器的新鲜值管理。新鲜值由单计数器构建,通过收发两端新鲜值计数器同步单调递增实现节点间新鲜值的同步。虽然该方案可以实现新鲜值管理,但是机制较为简单,存在一定缺陷。一方面,为了保证全生命周期中新鲜值始终单调递增,需要分配相当数量的内存资源用于存储新鲜值;另一方面,新鲜值管理的方法过于简单,攻击者很容易破解。
基于时间戳的新鲜值管理。采用全局同步时间作为新鲜值,此时新鲜值将不需要显示在安全报文的数据中,保密性较高。但是这种方法需要控制器集成全局时基同步管理模块(StbM,Synchronized Time-base Manager),机制较为复杂,尤其是对于非AUTOSAR架构的控制器难以实现,开发成本也较高。
基于多计数器(截断新鲜值)的新鲜值管理。该方法采用三个计数器构建新鲜值,采用主-从的拓扑结构,其中主节点周期性的发送同步报文以用于从节点之间新鲜值的同步。该方法虽然可以采用主节点和从节点耦合在同一个节点的方式减少节点数量,但是同步报文的使用会在一定程度上占用总线负载率;而且计数器数量较多,机制较为复杂,尤其是接收节点在重构新鲜值时多达15个分支,大大增加了开发难度。
基于多计数器(完整新鲜值)的新鲜值管理。该方法采用两个计数器构建新鲜值,相比于上述截断新鲜值的方法,机制相对简单;但是由于将完整新鲜值暴露在安全报文中,攻击者很容易通过对一定数量的报文进行分析,破解新鲜值管理的方法,降低了安全性。
以上四种方法中,基于单计数器的新鲜值管理和基于多计数器(完整新鲜值)的新鲜值管理牺牲了安全报文中新鲜值的保密性,降低了新鲜值构建与重构机制的复杂度;基于多计数器(截断新鲜值)的新鲜值管理则通过复杂的新鲜值构建与重构机制,加强了安全报文中新鲜值的保密性;基于时间戳的新鲜值管理虽然在一定程度上减弱了复杂度和保密性之间的矛盾,但是软件开发成本较高,且不适用于非AUTOSAR架构的控制器。
因此,需要一种新鲜值管理方法及装置,减弱新鲜值管理中新鲜值构建与重构机制的复杂度与新鲜值在安全报文中的保密性之间的矛盾,并兼容非AUTOSAR架构的控制器,降低软件开发成本。
发明内容
针对上述现有技术中存在的问题,本发明提供一种新鲜值管理方法及装置,既降低了完整新鲜值结构的复杂度,又增强了新鲜值在安全报文中的保密性,同时兼容非AUTOSAR架构的控制器,降低软件开发成本。所述技术方案如下:
一方面,本发明提供了一种新鲜值管理方法,包括:
发送节点接收发送安全报文的指令;
分别获取第一计数器与第二计数器;
根据第一管理规则,将所述第一计数器作为完整新鲜值的高位,所述第二计数器作为完整新鲜值的低位拼接获得所述完整新鲜值;其中,所述完整新鲜值的长度等于所述第一计数器与所述第二计数器的长度之和,所述第一计数器包括第一计数器高位与第一计数器低位,所述第二计数器包括第二计数器高位和第二计数器低位;
根据所述完整新鲜值构建截断新鲜值,将所述第一计数器低位作为所述截断新鲜值的高位,所述第二计数器低位作为所述截断新鲜值的低位拼接获得所述截断新鲜值,所述截断新鲜值用于接收节点重构所述完整新鲜值以及验证所述安全报文。
进一步地,所述分别获取第一计数器与第二计数器包括:
所述发送节点的所述第一计数器和所述第二计数器的初始值均为1,所述接收节点的所述第一计数器和所述第二计数器的初始值均为0;
当所述发送节点或所述接收节点切换到第一预设状态后,所述第一计数器的值加一;
当所述第一计数器的值为所述第一计数器的最大值时,将所述第一计数器的值重置为所述第一计数器的初始值;
所述发送节点达到第二预设状态后,则所述第二计数器的值加一;
当所述第二计数器的值为所述第二计数器的最大值时,将所述第二计数器的值重置为所述第二计数器的初始值。
进一步地,所述第一管理规则还包括第一子规则,所述第一子规则为:
当所述发送节点切换到第一预设状态完成后,从非易失性存储器中读取所述第一计数器的值,作为所述第一计数器的当前值;
判断所述当前值是否小于所述第一计数器的最大值;
若是,则将所述第一计数器的值加一,并存储于所述非易失性存储器中;
若否,则将所述第一计数器的初始值存储于所述非易失性存储器中。
进一步地,所述第一管理规则还包括第二子规则,所述第二子规则为:
判断所述发送节点是否达到第二预设状态;
若判断结果为所述发送节点达到所述第二预设状态,则进一步判断所述第二计数器的当前值是否小于所述第二计数器的最大值;
若是,将所述第二计数器的值加一;
若否,则将所述第二计数器的值重置为所述第二计数器的初始值;
若判断结果为所述发送节点未达到所述第二预设状态,则返回执行所述发送节点接收发送安全报文的指令。
进一步地,在所述完整新鲜值与所述截断新鲜值构建完成之后,所述方法还包括:
将所述截断新鲜值作为所述安全报文的组成部分发送给接收节点;
所述接收节点接收所述安全报文,并根据所述截断新鲜值重构所述完整新鲜值,用于验证所述安全报文。
进一步地,所述接收节点接收所述安全报文,并根据所述截断新鲜值重构所述完整新鲜值,用于验证所述安全报文包括:
根据所述接收节点接收到的所述安全报文,判断所述第一计数器低位与上一次成功接收时所述第一计数器低位的值,以及判断所述第二计数器与上一次成功接收时所述第二计数器的值;
根据判断结果,按照验证构建规则构建多个计数器验证尝试初始值;
根据多个所述计数器验证尝试初始值,通过验证尝试重构所述完整新鲜值。
进一步地,所述验证构建规则包括第一构建子规则、第二构建子规则、第三构建子规则和第四构建子规则,所述第一构建子规则为:
若判断结果为所述第一计数器低位等于上一次成功接收时所述第一计数器低位的值,且所述第二计数器低位大于上一次成功接收时所述第二计数器低位的值,则构建多个所述计数器验证尝试初始值为:第一计数器高位为上一次成功接收时所述第一计数器高位的值,所述第一计数器低位为上一次成功接收时所述第一计数器低位的值,第二计数器高位为上一次成功接收时所述第二计数器高位的值,所述第二计数器低位为本次接收到的所述第二计数器低位的值;
所述第二构建子规则为:
若判断结果为所述第一计数器低位等于上一次成功接收时所述第一计数器低位的值,且所述第二计数器低位不大于上一次成功接收时所述第二计数器低位的值,则构建多个所述计数器验证尝试初始值为:所述第一计数器高位为上一次成功接收时所述第一计数器高位的值,所述第一计数器低位为上一次成功接收时所述第一计数器低位的值,所述第二计数器高位为上一次成功接收时所述第二计数器高位的值加一,所述第二计数器低位为本次接收到的所述第二计数器低位的值;
所述第三构建子规则为:
若判断结果为所述第一计数器低位大于上一次成功接收时所述第一计数器低位的值,则构建多个所述计数器验证尝试初始值为:所述第一计数器高位为上一次成功接收时所述第一计数器高位的值,所述第一计数器低位为本次成功接收时所述第一计数器低位的值,所述第二计数器高位为0,所述第二计数器低位为本次接收到的所述第二计数器低位的值;
所述第四构建子规则为:
若判断结果为所述第一计数器低位小于上一次成功接收时所述第一计数器低位的值,则构建多个所述计数器验证尝试初始值为:所述第一计数器高位为0,所述第一计数器低位为本次成功接收时所述第一计数器低位的值,所述第二计数器高位为0,所述第二计数器低位为本次接收到的所述第二计数器低位的值。
进一步地,所述根据多个所述计数器验证尝试初始值,通过验证尝试重构所述完整新鲜值包括:
按照多个所述计数器验证尝试初始值进行赋值,并将多个计数器验证尝试次数设置为1;
判断第一计数器验证尝试次数是否不大于第一计数器验证尝试次数最大值;
若第一计数器判断结果为是,则判断第二计数器验证尝试次数是否不大于第二计数器验证尝试次数最大值;
若第二计数器判断结果为否,则将所述第二计数器高位重置为第二计数器验证尝试初始值,将所述第二计数器验证尝试次数加一,所述第一计数器高位加一,所述第一计数器验证尝试次数加一,返回所述判断第一计数器验证尝试次数是否不大于第一计数器验证尝试次数最大值;
若所述第二计数器判断结果为是,则根据此时的所述第一计数器和所述第二计数器重构所述完整新鲜值;
根据所述完整新鲜值,进一步判断所述安全报文是否验证通过;
若所述安全报文未验证通过,则将所述第二计数器高位加一,所述第二计数器验证尝试次数加一,返回所述判断第二计数器验证尝试次数是否不大于第二计数器验证尝试次数最大值;
若所述安全报文验证通过,则更新所述第一计数器和所述第二计数器。
进一步地,在所述若所述安全报文验证通过,则更新所述第一计数器和所述第二计数器之后,所述方法还包括:
将更新后的所述第一计数器的值存储于非易失性存储器中,并作为下一次验证时,上一次成功接收时所述第一计数器的值,
将更新后的所述第二计数器的值作为下一次验证时,上一次成功接收时所述第二计数器的值;
其中,当所述接收节点切换到第一预设状态后,从所述非易失性存储器中读取所述发送节点的所述第一计数器作为上一次成功接收时所述第一计数器的值,将第二计数器设置为所述接收节点的第二计数器的初始值;
若所述接收节点为第一次切换到所述第一预设状态,则从所述非易失性存储器中读取所述发送节点的所述第一计数器作为所述第一计数器的初始值。
另一方面,本发明提供了一种新鲜值管理装置,包括:
指令接收模块,用于使发送节点接收发送安全报文的指令;
第一获取模块,用于分别获取第一计数器与第二计数器;
第一构建模块,用于根据第一管理规则,将所述第一计数器作为完整新鲜值的高位,所述第二计数器作为完整新鲜值的低位拼接获得所述完整新鲜值;其中,所述第一计数器包括第一计数器高位与第一计数器低位,所述第二计数器包括第二计数器高位和第二计数器低位;
第二构建模块,用于根据所述完整新鲜值构建截断新鲜值,将所述第一计数器低位作为所述截断新鲜值的高位,所述第二计数器低位作为所述截断新鲜值的低位拼接获得所述截断新鲜值,所述截断新鲜值用于接收节点重构所述完整新鲜值以及验证所述安全报文。
实施本发明,具有如下有益效果:
1、完整新鲜值由两个计数器拼接组成,且安全报文中的新鲜值采用截断新鲜值,相比AUTOSAR标准规范中提供的四种新鲜值管理的方法,既降低了完整新鲜值结构的复杂度,又增强了新鲜值在安全报文中的保密性;同时,本发明无需设置控制器集成全局时基同步管理模块,只需要设置简单的收发器即可,对装置部件要求较低,兼容非AUTOSAR架构的控制器,适用性广泛,也大大降低软件开发成本。
2、截断新鲜值由两个计数器分别截断的值拼接组成,相比直接截断完整新鲜值的方法,任何一个计数器都不会完整的暴露在安全报文中,增强了新鲜值在安全报文中的保密性。
3、相比于多计数器(截断新鲜值)的新鲜值管理方法,本发明中接收节点在重构完整新鲜值时的分支由15个缩减为4个,仅需要根据4个构建子规则即可快速可靠地重构出完整新鲜值,大大降低了开发的复杂性。
4、在验证尝试过程中,采用第一计数器与第二计数器轮询的方式,配合接收节点复原完整新鲜值,降低了接收节点验证安全报文机制的复杂度,能够提升信息的传输效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1为本发明实施例提供的一种新鲜值管理方法的逻辑结构图;
图2为本发明实施例提供的第一子规则的逻辑结构图;
图3为本发明实施例提供的第二子规则的逻辑结构图;
图4为本发明实施例提供的另一种新鲜值管理方法的逻辑结构图;
图5为本发明实施例提供的一种接收节点重构完整新鲜值的逻辑结构图;
图6为本发明实施例提供的一种通过验证尝试重构所述完整新鲜值用于验证所述安全报文的逻辑结构图;
图7为本发明实施例提供的一种新鲜值管理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例,因此不能理解为对本发明的限制。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本发明的实施例能够以除了下述图示或下述描述以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本实施例针对现有技术中,车载安全通信的新鲜值管理方法无法协调新鲜值构建与重构机制的复杂度与新鲜值在安全报文中的保密性之间的矛盾的问题,提供了一种新鲜值管理方法,该新鲜值管理方法可以应用于本发明实施例的新鲜值管理装置,该新鲜值管理装置可以配置于车辆的控制器中,当控制器实时给出了发送安全报文的指令时,控制获取第一计数器与第二计数器,并根据第一管理规则构建完整新鲜值,进一步根据该完整新鲜值构建截段新鲜值用于接收节点重构完整新鲜值以及验证安全报文,那么由发送节点传送到接收节点的通信过程中,传输的均是该截断新鲜值,即使攻击者拦截到安全报文,得到的也只是截断新鲜值,而无法获得完整新鲜值,有效提升了安全报文的保密性和通信的安全性,以抵御重放攻击;而接收节点在接收到安全报文时,能够根据截断新鲜值快速准确地重构完整新鲜值以验证安全报文,重构规则简单,按照4个构建子规则能够快速验证安全报文,大大降低构建与重构机制的复杂性。
下面对本发明实施例的技术方案进行详细介绍,参考说明书附图1,该方法包括:
S101,发送节点接收发送安全报文的指令。
其中,发送节点中设置相对应的指令接收器,在通信网络出现发送信息的需求时,控制器发出一个指令给发送节点,使发送节点进入工作状态,准备发送安全报文;在本发明的一个可能的实施方式中,可以检测获取是否出现发送安全报文的指令的变动。
S103,分别获取第一计数器与第二计数器。
需要说明的是,此处获取的第一计数器与第二计数器的既可以是发送节点,也可以是接收节点,只是发送节点获取的第一计数器与第二计数器用于在后续S105-S107步骤中构建完整新鲜值与截断新鲜值,而接收节点获取的第一计数器与第二计数器主要用于在后续S111步骤中重构完整新鲜值与验证安全报文。
S105,根据第一管理规则,将所述第一计数器作为完整新鲜值的高位,所述第二计数器作为完整新鲜值的低位拼接获得所述完整新鲜值。
其中,所述第一计数器包括第一计数器高位与第一计数器低位,所述第二计数器包括第二计数器高位和第二计数器低位,则完整新鲜值的结构如表1中所示,并且该完整新鲜值的长度等于第一计数器与第二计数器的长度之和。
S107,根据所述完整新鲜值构建截断新鲜值,将所述第一计数器低位作为所述截断新鲜值的高位,所述第二计数器低位作为所述截断新鲜值的低位拼接获得所述截断新鲜值,所述截断新鲜值用于接收节点重构所述完整新鲜值以及验证所述安全报文。
其中,根据第一计数器的截断长度,从低位至高位,截取完整新鲜值中的第一计数器作为第一计数器低位;类似地,根据第二计数器的截断长度,从低位至高位,截取完整新鲜值中的第二计数器作为第二计数器低位,则截断新鲜值的结构如表2中所示,并且该截断新鲜值的长度等于第一计数器截断长度与第二计数器截断长度之和;此外,考虑到CAN总线报文的最大数据长度为8个字节,截断新鲜值的长度不能超过64个位。
具体地,在本说明书的一个可能的实施方式中,第一计数器可选为工作周期计数器,该工作周期计数器表示节点已经历的工作周期的数量,则每一个发送节点对应于一个工作周期计数器;对于发送节点,其工作周期计数器的初始值为1,当发送节点上电启动、唤醒或复位后,即发送节点切换到第一预设状态后,则认为开始一个新的工作周期,工作周期计数器的值加一,但是当工作周期计数器的值达到工作周期计数器的最大值时,将工作周期计数器的值重置为工作周期计数器的初始值,也就是重置为1;而对于接收节点,其工作周期计数器的初始值为0,同样地,当接收节点切换到第一预设状态,也就是上电启动、唤醒或复位后,则工作周期计数器的值加一,但是当工作周期计数器的值达到工作周期计数器的最大值时,将工作周期计数器的值重置为工作周期计数器的初始值,也就是重置为0,以顺利进入下一个工作周期。
具体地,在本实施例中,第二计数器可选为报文次数计数器,对应的第二预设状态为发送节点成功发送安全报文的状态,那么报文次数计数器表示一个安全报文已经发送的次数,则每一个安全报文对应于一个报文次数计数器;对于发送节点,其报文次数计数器的初始值为1,当发送节点每成功发送一次安全报文,也就是说每次达到第二预设状态,则相应的报文次数计数器的值加一,但是当报文次数计数器的值达到报文次数计数器的最大值时,将报文次数计数器的值重置为报文次数计数器的初始值,也就是重置为1;而对于接收节点,其报文次数计数器的初始值为0,同样地,当发送节点每成功发送一次安全报文,则报文次数计数器的值加一,但是当报文次数计数器的值达到报文次数计数器的最大值时,将报文次数计数器的值重置为报文次数计数器的初始值,也就是重置为0。
具体地,所述第一管理规则还包括第一子规则,该第一管理规则主要应用于发送节点,则第一子规则主要应用于发送节点的第一计数器,是针对第一计数器进行的管理方法,如说明书附图2所示,所述第一子规则为:
S202,当所述发送节点切换至第一预设状态完成后,从非易失性存储器中读取所述第一计数器的值,作为所述第一计数器的当前值。
在本说明书的一个可能的实施方式中,确定发送节点是否切换至第一预设状态,也就是是否上电启动、唤醒或复位可以通过传感元件直接监测发送节点的状态,也可以监测控制器中与发送节点相关的启动指令,能够反映发送节点是否切换至第一预设状态的装置与指令等都可以作为该步骤中的监测目标;此外,发送节点的上电启动、唤醒或复位可以设置三种传感器分别监测以满足额外的性能要求,也可以设置一种传感器同时监测上电启动、唤醒或复位这三种状态,只要出现三者中任一种状态,即认为可以执行从非易失性存储器中读取所述第一计数器的值,作为所述第一计数器的当前值,一方面节省传感元件的数量、占用空间以及成本,另一方面也能够节省一部分电能。
S204,判断所述当前值是否小于所述第一计数器的最大值。
所述第一计数器的最大值是预先设置好并存储于非易失性存储器中的,该最大值可以根据实际需求进行设置。
S206,若是,则将所述第一计数器的值加一,并存储于所述非易失性存储器中。
也就是说,此时从非易失性存储器中读取的第一计数器的当前值实质上是上一次存储于非易失性存储器中的第一计数器的值,该当前值小于第一计数器的最大值,则认为开始一个新的工作周期,第一计数器即工作周期计数器的值仍能够加一,并存储于非易失性存储器中,可以作为下一次发送节点上电启动、唤醒或复位时,第一计数器的当前值,并继续执行S204及其后续步骤。
S208,若否,则将所述第一计数器的初始值存储于所述非易失性存储器中。
其中,从非易失性存储器中读取的实质上是上一次的第一计数器的值,此时已经等于或者大于第一计数器的最大值,也就意味着第一计数器不可能再进一步增大,在此轮计数过程中,第一计数器已达最大值,则需将第一计数器重置以便于继续进行发送节点的新鲜值管理,开启新一轮的计数,也就是说,将第一计数器重置为初始值=1,并将该初始值1存储于非易失性存储器中,以备下一次发送节点上电启动、唤醒或复位时读取。
具体地,所述第一管理规则还包括第二子规则,该第一管理规则主要应用于发送节点,则第二子规则主要应用于发送节点的第二计数器,是针对第二计数器进行的管理方法,如说明书附图3所示,所述第二子规则为:
S301,判断所述发送节点是否达到第二预设状态。
其中,第二预设状态为发送节点成功发送安全报文的状态,则判断标准可以是监测发送节点的发送状态,也可以是监测接收节点的接收状态。
S303,若判断结果为所述发送节点达到所述第二预设状态,则进一步判断所述第二计数器的当前值是否小于所述第二计数器的最大值。
与第一计数器的最大值类似,所述第二计数器的最大值也是预先设置好的,该最大值也可以根据实际需求进行设置。
其中,第二计数器的当前值在最初管理时设置为第二计数器的当前值=1,在经过后续S305-S307步骤进行更新后,可以利用更新后的第二计数器的值作为再一次判断时的所述第二计数器的当前值,以此循环。
S305,若是,将所述第二计数器的值加一。
也就是说,对应的S303步骤中用于判断的第二计数器的当前值实质上是上一次第二计数器的管理过程中所更新的第二计数器的值,该当前值小于第二计数器的最大值,则认为成功发送了一次安全报文,第二计数器的值仍未达到最大值,即报文次数计数器的值仍能够加一,并能够作为下一次第二计数器管理过程中,第二计数器的当前值,并继续执行S101及其后续步骤,此时完整新鲜值与截断新鲜值均根据更新后的第二计数器进行新一轮构建与重构。
S307,若否,则将所述第二计数器的值重置为所述第二计数器的初始值。
此时,对应的S303步骤中用于判断的第二计数器的当前值实质上是上一次第二计数器的管理过程中所更新的第二计数器的值,已经等于或者大于第二计数器的最大值,也就意味着第二计数器不可能再进一步增大,在此轮计数过程中,第二计数器已达最大值,则需将第二计数器的值重置以便于继续进行发送节点的新鲜值管理,并开启新一轮的计数,也就是说,将第二计数器重置为初始值=1,并将该初始值1作为新一轮第二计数器管理过程中的所述第二计数器的当前值。
此外,若S301步骤的判断结果为所述安全报文未成功发送,则返回执行S101-S107步骤,使所述发送节点接收发送安全报文的指令。
需要说明的是,在S301步骤判断出安全报文发送失败时,此处返回执行S101-S107步骤过程中重新经历了一次构建完整新鲜值与截断新鲜值,但是过程中并未涉及到变量,重新构建的完整新鲜值与截断新鲜值与上一次安全报文未发送成功是构建的完整新鲜值以及截断新鲜值相比是不变的;或者,在本说明书的一个可能的实施方式中,当判断出安全报文发送失败时,可以直接返回S107步骤之后,无需再次重复构建完整新鲜值与截断新鲜值;最终,根据不断更新的第一计数器与第二计数器的值构建新的完整新鲜值与截断新鲜值。
具体地,如说明书附图4所示,在所述完整新鲜值与所述截断新鲜值构建完成之后,所述方法还包括:
S402,将所述截断新鲜值作为所述安全报文的组成部分发送给接收节点。
在构建完成截断新鲜值后,发送节点才真正发送安全报文,则发送节点设置相应的发送器,将安全报文发出;在本发明的一个可能的实施方式中,可以采用传感元件直接监测发送器的当前发送状态,也可以监测安全报文的状态或者监测控制发送器启动开关的变动指令,能够反映发送节点发送状态的装置与指令等都可以作为该步骤中的监测目标。
S404,所述接收节点接收所述安全报文,并根据所述截断新鲜值重构所述完整新鲜值,用于验证所述安全报文。
在接收节点设置相应的接收器,用于接收安全报文;在本发明的一个可能的实施方式中,可以采用传感元件直接监测接收器的当前接收状态,也可以监测安全报文的状态或者监测控制接收器接收报文的开关的变动指令,能够反映接收节点接收状态的装置与指令等都可以作为该步骤中的监测目标。
具体地,如说明书附图5所示,所述接收节点接收所述安全报文,并根据所述截断新鲜值重构所述完整新鲜值,用于验证所述安全报文包括:
S501,根据所述接收节点接收到的所述安全报文,判断所述第一计数器低位与上一次成功接收时所述第一计数器低位的值,以及判断所述第二计数器与上一次成功接收时所述第二计数器的值。
S503,根据判断结果,按照验证构建规则构建多个计数器验证尝试初始值。
S505,根据多个所述计数器验证尝试初始值,通过验证尝试重构所述完整新鲜值。
其中,安全报文中包含截断新鲜值的信息,即第一计数器低位与第二计数器低位的值,而验证构建规则包括4条子规则,分别是第一构建子规则、第二构建子规则、第三构建子规则与第四构建子规则,第一计数器低位与第二计数器低位各自与上一次成功接收时的值比较所得的判断结果与上述四条构建子规则之间的关系如表3中所示:
也就是说,当判断结果为第一计数器低位等于上一次成功接收时第一计数器低位的值,且第二计数器低位大于上一次成功接收时第二计数器低位的值时,按照第一构建子规则进行构建各计数器验证尝试初始值;当判断结果为第一计数器低位等于上一次成功接收时第一计数器低位的值,且第二计数器低位不大于上一次成功接收时第二计数器低位的值时,按照第二构建子规则进行构建各计数器验证尝试初始值;当判断结果为第一计数器低位大于上一次成功接收时第一计数器低位的值,可以不用判断第二计数器低位,直接按照第三构建子规则进行构建各计数器验证尝试初始值;当判断结果为第一计数器低位小于上一次成功接收时第一计数器低位的值,也可以不用判断第二计数器低位,而是直接按照第四构建子规则进行构建各计数器验证尝试初始值;各个构建子规则与对应的验证尝试初始值的关系具体如表4所示:
具体地,上述S505步骤中,根据多个所述计数器验证尝试初始值,通过验证尝试重构所述完整新鲜值包括:
S602,按照多个所述计数器验证尝试初始值进行赋值,并将多个计数器验证尝试次数设置为1。
其中,如说明书附图6所示,默认开始验证尝试过程时,将验证尝试次数设置为1,也就是说,此时是第一次验证尝试,将第一计数器的验证尝试次数设置为1,同时将第二计数器验证尝试次数也设置为1,之后再按照如上表3与表4中的判断结果对两个计数器进行验证尝试初始值的赋值,一共包括4项赋值;例如,当判断结果为第一计数器低位小于上一次成功接收时第一计数器低位的值,此时赋值:第一计数器高位验证尝试初始值为0,第一计数器低位验证尝试初始值为本次成功接收时第一计数器低位的值,第二计数器高位验证尝试初始值为0,第二计数器低位验证尝试初始值为本次接收到的第二计数器低位的值,之后执行S604及其后续步骤。
S604,判断第一计数器验证尝试次数是否不大于第一计数器验证尝试次数最大值。
在该步骤的判断中,若判断出第一计数器验证尝试次数大于第一计数器验证尝试次数最大值,意味着已经超出了验证尝试的范围,则没有进一步判断并验证的需求,控制该验证尝试过程直接结束。
S606,若第一计数器判断结果为是,则判断第二计数器验证尝试次数是否不大于第二计数器验证尝试次数最大值。
对于第一计数器验证尝试次数最大值,可以预先设置好存储于控制器中,该最大值也可以根据实际需求或者第一计数器内存容量进行设置;类似地,第二计数器验证尝试次数最大值,也可以预先设置好存储于控制器中,其具体数值可以根据实际需求或者第二计数器内存容量进行设置。
S608,若所述第二计数器判断结果为是,则根据此时的所述第一计数器和所述第二计数器重构所述完整新鲜值。
也就是说,此时第一计数器与第二计数器均未达到验证尝试的最大限制,可以进行下一步的验证尝试过程,也即是可以开始按照第一构建子规则与第二构建子规则重构完整新鲜值的过程。
S612,根据所述完整新鲜值,进一步判断所述安全报文是否验证通过。
在本说明书的一个可能的实施方式中,此处判断安全报文是否验证通过的标准可选为将重构的完整新鲜值与发送节点最初构建的完整新鲜值进行比较,比较两者是否重合。
S616,若所述安全报文未验证通过,则将所述第二计数器高位加一,所述第二计数器验证尝试次数加一,返回所述判断第二计数器验证尝试次数是否不大于第二计数器验证尝试次数最大值。
如图6所示,其中,安全报文未验证通过,等同于需要进行新一轮重构完整新鲜值的过程,此时完整新鲜值发生了变化,第二计数器高位加一之后再返回S606步骤进行新一轮验证,直至验证通过。
S614,若所述安全报文验证通过,则更新所述第一计数器和所述第二计数器。
此外,无论是S606步骤直接判断还是经过S616步骤之后返回S606步骤进行再次判断,S606步骤之后还包括:
S610,若第二计数器判断结果为否,则将所述第二计数器高位重置为第二计数器验证尝试初始值,将所述第二计数器验证尝试次数加一,所述第一计数器高位加一,所述第一计数器验证尝试次数加一,返回S604步骤判断第一计数器验证尝试次数是否不大于第一计数器验证尝试次数最大值。
需要说明的是,如图6所示,此时返回S604步骤重新开始验证所采用的各项计数器验证尝试初始值发生变化:第二计数器高位仍然为第二计数器验证尝试初始值不变,但第一计数器高位为第一计数器验证尝试初始值加一,同时第一计数器与第二计数器验证尝试次数均加一;若该S610步骤执行N次,则第二计数器高位仍然为第二计数器验证尝试初始值不变,但第一计数器高位为第一计数器验证尝试初始值加N,同时第一计数器与第二计数器验证尝试次数均加N,之后返回S604步骤进行判断。
具体地,在上述S614步骤之后,所述方法还包括:
将更新后的所述第一计数器的值存储于非易失性存储器中,并作为下一次验证时,上一次成功接收时所述第一计数器的值,将更新后的所述第二计数器的值作为下一次验证时,上一次成功接收时所述第二计数器的值。
此时,S614步骤中更新所得的第一计数器与第二计数器实质上已经重构出完整新鲜值的结构,完整了重构过程;也就是说,将本次接收节点重构出的完整新鲜值作为下一次验证时,上一次成功接收时的所述完整新鲜值。
其中,对于接收节点,当所述接收节点上电启动、唤醒或复位,开启一个新的工作周期后,从所述非易失性存储器中读取所述发送节点的所述第一计数器作为上一次成功接收时所述第一计数器的值,将第二计数器设置为所述接收节点的第二计数器的初始值,即设置为0;若所述接收节点为第一次上电启动、唤醒或复位,则从所述非易失性存储器中读取所述发送节点的所述第一计数器作为所述第一计数器的初始值。
通过上述本发明提供的新鲜值管理方法的实施例可知,本发明具有以下有益效果:
1、完整新鲜值由两个计数器拼接组成,且安全报文中的新鲜值采用截断新鲜值,相比AUTOSAR标准规范中提供的四种新鲜值管理的方法,既降低了完整新鲜值结构的复杂度,又增强了新鲜值在安全报文中的保密性;同时,本发明无需设置控制器集成全局时基同步管理模块,只需要设置简单的收发器即可,对装置部件要求较低,兼容非AUTOSAR架构的控制器,适用性广泛,也大大降低软件开发成本。
2、截断新鲜值由两个计数器分别截断的值拼接组成,构建方式简单,同时相比直接截断完整新鲜值的方法,任何一个计数器都不会完整的暴露在安全报文中,增强了新鲜值在安全报文中的保密性。
3、相比于多计数器(截断新鲜值)的新鲜值管理方法,本发明中接收节点在重构完整新鲜值时的分支由15个缩减为4个,仅需要根据4个构建子规则即可快速可靠地利用各计数器验证尝试初始值重构出完整新鲜值,大大降低了开发的复杂性。
4、在验证尝试过程中,采用第一计数器与第二计数器轮询的方式,配合接收节点复原完整新鲜值,降低了接收节点验证安全报文机制的复杂度,能够提升信息的传输效率。
与上述本实施例提供的新鲜值管理方法相对应,本发明实施例还提供一种新鲜值管理装置,由于本发明实施例提供的新鲜值管理装置与上述实施方式提供的新鲜值管理方法相对应,因此前述新鲜值管理方法的实施方式也适用于本实施例提供的新鲜值管理装置,在本实施例中不再详细描述。
本发明实施例提供的新鲜值管理装置能够实现上述方法实施例中的新鲜值管理方法,如说明书附图7所示,该装置可以包括:
指令接收模块710,用于使发送节点接收发送安全报文的指令;
第一获取模块720,用于分别获取第一计数器与第二计数器;
第一构建模块730,用于根据第一管理规则,构建完整新鲜值,将所述第一计数器作为所述完整新鲜值的高位,所述第二计数器作为所述完整新鲜值的低位拼接获得所述完整新鲜值;其中,所述第一计数器包括第一计数器高位与第一计数器低位,所述第二计数器包括第二计数器高位和第二计数器低位;
第二构建模块740,用于根据所述完整新鲜值构建截断新鲜值,将所述第一计数器低位作为所述截断新鲜值的高位,所述第二计数器低位作为所述截断新鲜值的低位拼接获得所述截断新鲜值,所述截断新鲜值用于重构所述完整新鲜值以及验证所述安全报文。
在一个可能的实施方式中,该第一构建模块730还可以包括:
第一读取模块,用于当所述发送节点切换到第一预设状态完成后,从非易失性存储器中读取所述第一计数器的值,作为所述第一计数器的当前值;
第一判断模块,用于判断所述当前值是否小于所述第一计数器的最大值;
若是,则将所述第一计数器的值加一,并存储于所述非易失性存储器中;
若否,则将所述第一计数器的初始值存储于所述非易失性存储器中。
在一个可能的实施方式中,该第一构建模块730还可以包括:
第二判断模块,用于判断所述发送节点是否达到第二预设状态;
若判断结果为所述发送节点达到所述第二预设状态,则返回执行所述发送节点接收发送安全报文的指令;
第三判断模块,用于在判断结果为所述发送节点达到所述第二预设状态时,进一步判断所述第二计数器的当前值是否小于所述第二计数器的最大值;
若是,将所述第二计数器的值加一;
若否,则将所述第二计数器的值重置为所述第二计数器的初始值。
在本说明书的一个可能的实施方式中,该新鲜值管理装置还可以包括:
发送模块,用于将所述截断新鲜值作为所述安全报文的组成部分发送给接收节点;
接收模块,用于所述接收节点接收所述安全报文;
重构模块与验证模块,用于根据所述截断新鲜值重构所述完整新鲜值,用于验证所述安全报文。
在一个可能的实施方式中,该重构模块与验证模块还可以包括:
第四判断模块,用于判断所述第一计数器低位与上一次成功接收时所述第一计数器低位的值,以及
第五判断模块,用于判断所述第二计数器与上一次成功接收时所述第二计数器的值;
根据判断结果,按照验证构建规则构建多个计数器验证尝试初始值;
根据多个所述计数器验证尝试初始值,通过验证尝试重构所述完整新鲜值。
需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本发明实施例的新鲜值管理装置通过获取第一计数器与第二计数器,根据第一管理规则实时构建完整新鲜值,并根据完整新鲜值截取截断新鲜值,将截断新鲜值作为安全报文的组成部分发送给接收节点,再由接收节点根据安全报文中的截断新鲜值重构完整新鲜值,以验证安全报文;其中,完整新鲜值由两个计数器拼接组成,降低了完整新鲜值结构的复杂度,而由两个计数器分别截断的值拼接组成截断新鲜值,构建方式简单,同时任何一个计数器都不会完整的暴露在安全报文中,又增强了新鲜值在安全报文中的保密性。
本发明实施例不仅可以应用于车载安全通信,还能够应用于其他需要通信安全的场合,设置控制器与以上所述的新鲜值管理装置,该新鲜值管理装置由控制器控制,所述控制器包括处理器和存储器,所述存储器中存储有至少一条指令或者至少一段程序,所述至少一条指令或者所述至少一段程序由所述处理器加载并执行以实现上述的新鲜值管理方法。
其中,处理器(或称 CPU (Central Processing Unit,中央处理器 ))为新鲜值管理装置的核心部件,其功能主要是解释存储器指令以及处理各个监测模块或者获取模块等所反馈的数据;处理器的结构大致分为运算逻辑部件与寄存器部件等,运算逻辑部件主要进行相关的逻辑计算(如移位操作、逻辑操作、定点或浮点算术运算操作与地址运算等),寄存器部件则用于暂存指令、数据与地址。
存储器为记忆设备,可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;存储数据区可存储根据所述装置的使用所创建的数据等;相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。
需要说明的是,上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所描述的仅为本发明的一些实施例而已,并不用于限制本发明,本行业的技术人员应当了解,本发明还会有各种变化和改进,任何依照本发明所做的修改、等同替换和改进都落入本发明所要求的保护的范围内。
Claims (9)
1.一种新鲜值管理方法,其特征在于,包括:
发送节点接收发送安全报文的指令;
分别获取第一计数器与第二计数器,包括:所述发送节点的所述第一计数器和所述第二计数器的初始值均为1,接收节点的所述第一计数器和所述第二计数器的初始值均为0;当所述发送节点或所述接收节点切换到第一预设状态后,所述第一计数器的值加一;当所述第一计数器的值为所述第一计数器的最大值时,将所述第一计数器的值重置为所述第一计数器的初始值;所述发送节点达到第二预设状态后,则所述第二计数器的值加一;当所述第二计数器的值为所述第二计数器的最大值时,将所述第二计数器的值重置为所述第二计数器的初始值;其中,所述第一计数器为工作周期计数器,所述第一预设状态为所述发送节点或所述接收节点上电启动、唤醒或复位;所述第二计数器为报文次数计数器,所述第二预设状态为发送节点成功发送安全报文的状态;
根据第一管理规则,将所述第一计数器作为完整新鲜值的高位,所述第二计数器作为完整新鲜值的低位拼接获得所述完整新鲜值;其中,所述完整新鲜值的长度等于所述第一计数器与所述第二计数器的长度之和,所述第一计数器包括第一计数器高位与第一计数器低位,所述第二计数器包括第二计数器高位和第二计数器低位;
根据所述完整新鲜值构建截断新鲜值,将所述第一计数器低位作为所述截断新鲜值的高位,所述第二计数器低位作为所述截断新鲜值的低位拼接获得所述截断新鲜值,所述截断新鲜值用于接收节点重构所述完整新鲜值以及验证所述安全报文。
2.根据权利要求1所述的一种新鲜值管理方法,其特征在于,所述第一管理规则还包括第一子规则,所述第一子规则为:
当所述发送节点切换到第一预设状态完成后,从非易失性存储器中读取所述第一计数器的值,作为所述第一计数器的当前值;
判断所述当前值是否小于所述第一计数器的最大值;
若是,则将所述第一计数器的值加一,并存储于所述非易失性存储器中;
若否,则将所述第一计数器的初始值存储于所述非易失性存储器中。
3.根据权利要求1所述的一种新鲜值管理方法,其特征在于,所述第一管理规则还包括第二子规则,所述第二子规则为:
判断所述发送节点是否达到第二预设状态;
若判断结果为所述发送节点达到所述第二预设状态,则进一步判断所述第二计数器的当前值是否小于所述第二计数器的最大值;
若是,将所述第二计数器的值加一;
若否,则将所述第二计数器的值重置为所述第二计数器的初始值;
若判断结果为所述发送节点未达到所述第二预设状态,则返回执行所述发送节点接收发送安全报文的指令。
4.根据权利要求1所述的一种新鲜值管理方法,其特征在于,在所述完整新鲜值与所述截断新鲜值构建完成之后,所述方法还包括:
将所述截断新鲜值作为所述安全报文的组成部分发送给接收节点;
所述接收节点接收所述安全报文,并根据所述截断新鲜值重构所述完整新鲜值,用于验证所述安全报文。
5.根据权利要求4所述的一种新鲜值管理方法,其特征在于,所述接收节点接收所述安全报文,并根据所述截断新鲜值重构所述完整新鲜值,用于验证所述安全报文包括:
根据所述接收节点接收到的所述安全报文,判断所述第一计数器低位与上一次成功接收时所述第一计数器低位的值,以及判断所述第二计数器与上一次成功接收时所述第二计数器的值;
根据判断结果,按照验证构建规则构建多个计数器验证尝试初始值;
根据多个所述计数器验证尝试初始值,通过验证尝试重构所述完整新鲜值。
6.根据权利要求5所述的一种新鲜值管理方法,其特征在于,所述验证构建规则包括第一构建子规则、第二构建子规则、第三构建子规则和第四构建子规则,所述第一构建子规则为:
若判断结果为所述第一计数器低位等于上一次成功接收时所述第一计数器低位的值,且所述第二计数器低位大于上一次成功接收时所述第二计数器低位的值,则构建多个所述计数器验证尝试初始值为:第一计数器高位为上一次成功接收时所述第一计数器高位的值,所述第一计数器低位为上一次成功接收时所述第一计数器低位的值,第二计数器高位为上一次成功接收时所述第二计数器高位的值,所述第二计数器低位为本次接收到的所述第二计数器低位的值;
所述第二构建子规则为:
若判断结果为所述第一计数器低位等于上一次成功接收时所述第一计数器低位的值,且所述第二计数器低位不大于上一次成功接收时所述第二计数器低位的值,则构建多个所述计数器验证尝试初始值为:所述第一计数器高位为上一次成功接收时所述第一计数器高位的值,所述第一计数器低位为上一次成功接收时所述第一计数器低位的值,所述第二计数器高位为上一次成功接收时所述第二计数器高位的值加一,所述第二计数器低位为本次接收到的所述第二计数器低位的值;
所述第三构建子规则为:
若判断结果为所述第一计数器低位大于上一次成功接收时所述第一计数器低位的值,则构建多个所述计数器验证尝试初始值为:所述第一计数器高位为上一次成功接收时所述第一计数器高位的值,所述第一计数器低位为本次成功接收时所述第一计数器低位的值,所述第二计数器高位为0,所述第二计数器低位为本次接收到的所述第二计数器低位的值;
所述第四构建子规则为:
若判断结果为所述第一计数器低位小于上一次成功接收时所述第一计数器低位的值,则构建多个所述计数器验证尝试初始值为:所述第一计数器高位为0,所述第一计数器低位为本次成功接收时所述第一计数器低位的值,所述第二计数器高位为0,所述第二计数器低位为本次接收到的所述第二计数器低位的值。
7.根据权利要求5所述的一种新鲜值管理方法,其特征在于,所述根据多个所述计数器验证尝试初始值,通过验证尝试重构所述完整新鲜值包括:
按照多个所述计数器验证尝试初始值进行赋值,并将多个计数器验证尝试次数设置为1;
判断第一计数器验证尝试次数是否不大于第一计数器验证尝试次数最大值;
若第一计数器判断结果为是,则判断第二计数器验证尝试次数是否不大于第二计数器验证尝试次数最大值;
若第二计数器判断结果为否,则将所述第二计数器高位重置为第二计数器验证尝试初始值,将所述第二计数器验证尝试次数加一,所述第一计数器高位加一,所述第一计数器验证尝试次数加一,返回所述判断第一计数器验证尝试次数是否不大于第一计数器验证尝试次数最大值;
若所述第二计数器判断结果为是,则根据此时的所述第一计数器和所述第二计数器重构所述完整新鲜值;
根据所述完整新鲜值,进一步判断所述安全报文是否验证通过;
若所述安全报文未验证通过,则将所述第二计数器高位加一,所述第二计数器验证尝试次数加一,返回所述判断第二计数器验证尝试次数是否不大于第二计数器验证尝试次数最大值;
若所述安全报文验证通过,则更新所述第一计数器和所述第二计数器。
8.根据权利要求7所述的一种新鲜值管理方法,其特征在于,在所述若所述安全报文验证通过,则更新所述第一计数器和所述第二计数器之后,所述方法还包括:
将更新后的所述第一计数器的值存储于非易失性存储器中,并作为下一次验证时,上一次成功接收时所述第一计数器的值,
将更新后的所述第二计数器的值作为下一次验证时,上一次成功接收时所述第二计数器的值;
其中,当所述接收节点切换到第一预设状态后,从所述非易失性存储器中读取所述发送节点的所述第一计数器作为上一次成功接收时所述第一计数器的值,将第二计数器设置为所述接收节点的第二计数器的初始值;
若所述接收节点为第一次切换到所述第一预设状态,则从所述非易失性存储器中读取所述发送节点的所述第一计数器作为所述第一计数器的初始值。
9.一种新鲜值管理装置,其特征在于,包括:
指令接收模块,用于使发送节点接收发送安全报文的指令;
第一获取模块,用于分别获取第一计数器与第二计数器,包括:所述发送节点的所述第一计数器和所述第二计数器的初始值均为1,接收节点的所述第一计数器和所述第二计数器的初始值均为0;当所述发送节点或所述接收节点切换到第一预设状态后,所述第一计数器的值加一;当所述第一计数器的值为所述第一计数器的最大值时,将所述第一计数器的值重置为所述第一计数器的初始值;所述发送节点达到第二预设状态后,则所述第二计数器的值加一;当所述第二计数器的值为所述第二计数器的最大值时,将所述第二计数器的值重置为所述第二计数器的初始值;其中,所述第一计数器为工作周期计数器,所述第一预设状态为所述发送节点或所述接收节点上电启动、唤醒或复位;所述第二计数器为报文次数计数器,所述第二预设状态为发送节点成功发送安全报文的状态;
第一构建模块,用于根据第一管理规则,将所述第一计数器作为完整新鲜值的高位,所述第二计数器作为完整新鲜值的低位拼接获得所述完整新鲜值;其中,所述第一计数器包括第一计数器高位与第一计数器低位,所述第二计数器包括第二计数器高位和第二计数器低位;
第二构建模块,用于根据所述完整新鲜值构建截断新鲜值,将所述第一计数器低位作为所述截断新鲜值的高位,所述第二计数器低位作为所述截断新鲜值的低位拼接获得所述截断新鲜值,所述截断新鲜值用于接收节点重构所述完整新鲜值以及验证所述安全报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110645913.9A CN113259374B (zh) | 2021-06-10 | 2021-06-10 | 一种新鲜值管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110645913.9A CN113259374B (zh) | 2021-06-10 | 2021-06-10 | 一种新鲜值管理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113259374A CN113259374A (zh) | 2021-08-13 |
CN113259374B true CN113259374B (zh) | 2021-11-02 |
Family
ID=77187308
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110645913.9A Active CN113259374B (zh) | 2021-06-10 | 2021-06-10 | 一种新鲜值管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113259374B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109600364A (zh) * | 2018-12-04 | 2019-04-09 | 东软集团股份有限公司 | 一种实现消息验证的方法、装置及存储设备、程序产品 |
CN111698086A (zh) * | 2020-06-12 | 2020-09-22 | 北京百度网讯科技有限公司 | 用于数据传输的方法和装置 |
WO2020221787A1 (en) * | 2019-04-30 | 2020-11-05 | Orange | List-based redundancy control in crowd-based iot |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111917619B (zh) * | 2020-07-29 | 2022-07-29 | 华人运通(江苏)技术有限公司 | 通信方法、装置、电子设备和可读存储介质 |
-
2021
- 2021-06-10 CN CN202110645913.9A patent/CN113259374B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109600364A (zh) * | 2018-12-04 | 2019-04-09 | 东软集团股份有限公司 | 一种实现消息验证的方法、装置及存储设备、程序产品 |
WO2020221787A1 (en) * | 2019-04-30 | 2020-11-05 | Orange | List-based redundancy control in crowd-based iot |
CN111698086A (zh) * | 2020-06-12 | 2020-09-22 | 北京百度网讯科技有限公司 | 用于数据传输的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113259374A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110661658B (zh) | 一种区块链网络的节点管理方法、装置及计算机存储介质 | |
CN109871225B (zh) | 电子控制单元ecu升级方法及ecu | |
US20220158836A1 (en) | Fork Processing Method And Blockchain Node | |
CN105159728A (zh) | 一种基于android系统的获取NTP时间信息的方法和装置 | |
CN112651001A (zh) | 访问请求的鉴权方法、装置、设备及可读存储介质 | |
CN110222535A (zh) | 区块链配置文件的处理装置、方法及存储介质 | |
CN106941418B (zh) | Ssl vpn配置信息的同步方法和装置 | |
JP7006335B2 (ja) | 車載通信システム、車載通信方法、およびプログラム | |
CN114866250B (zh) | 车内can网络新鲜值构建方法、装置、车辆及存储介质 | |
CN111142914A (zh) | 一种基于zynq固件升级的方法及计算机可读存储介质 | |
CN104917813A (zh) | 请求资源的方法及装置 | |
CN109388552B (zh) | 启动应用程序的时长的确定方法、装置及存储介质 | |
CN110602234B (zh) | 区块链网络节点管理方法、装置、设备以及存储介质 | |
CN113259374B (zh) | 一种新鲜值管理方法及装置 | |
JP7030960B2 (ja) | 情報処理方法、上位層機能エンティティおよびコンピュータ記憶媒体 | |
CN116743619B (zh) | 网络服务的测试方法、装置、设备及存储介质 | |
CN112954716A (zh) | 网状网络的入网方法、装置、计算机设备以及存储介质 | |
US11474961B2 (en) | Reducing runtime load for vehicle system data encryption using crypto engine with direct memory access (DMA) | |
CN112968793A (zh) | 基于物联网的设备升级方法、装置、设备及存储介质 | |
CN112448883A (zh) | 消息推送方法、装置、计算机设备和存储介质 | |
CN109815202B (zh) | 日志编辑方法及相关装置 | |
CN111314151B (zh) | 节点管理方法、装置、电子设备及计算机可读存储介质 | |
CN113704107B (zh) | 应用测试方法、装置、设备及计算机可读存储介质 | |
CN111464395B (zh) | 一种创建区块链的方法、装置及可读存储介质 | |
CN113535632A (zh) | 蜜罐系统、攻击信息捕获方法与存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |