CN117675307A - 校验方法、车载部件、软件组件 - Google Patents
校验方法、车载部件、软件组件 Download PDFInfo
- Publication number
- CN117675307A CN117675307A CN202311604997.7A CN202311604997A CN117675307A CN 117675307 A CN117675307 A CN 117675307A CN 202311604997 A CN202311604997 A CN 202311604997A CN 117675307 A CN117675307 A CN 117675307A
- Authority
- CN
- China
- Prior art keywords
- component
- signal
- algorithm
- software
- received signal
- 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.)
- Pending
Links
- 238000012795 verification Methods 0.000 title claims abstract description 109
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000008569 process Effects 0.000 claims abstract description 21
- 230000004044 response Effects 0.000 claims abstract description 18
- 238000004891 communication Methods 0.000 claims description 37
- 125000004122 cyclic group Chemical group 0.000 claims description 7
- 238000007689 inspection Methods 0.000 claims 3
- 238000012545 processing Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
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/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40267—Bus for use in transportation systems
- H04L2012/40273—Bus for use in transportation systems the transportation system being a vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供校验方法,包括:设置于第一部件的软件组件接收来自与所述第一部件通信连接的第二部件的信号;由预设在所述软件组件中的校验算法校验所接收的信号是否来自特定部件;以及响应于所接收的信号来自所述特定部件,所述软件组件处理所接收的信号;其中,所述第一部件和所述第二部件是车载部件。
Description
技术领域
本申请涉及车辆技术,更为具体地,涉及用于软件组件的校验技术。
背景技术
随着车辆内电子控制单元数量的增多,以及车辆电子化与网络技术的发展,车内通信的安全性受到了挑战,有必要在这方面做出改进。
发明内容
根据本申请的一个方面,提供校验方法,以在车辆通信安全方面做出改进。
根据本申请第一方面示例的校验方法,包括:设置于第一部件的软件组件接收来自与所述第一部件通信连接的第二部件的信号;由预设在所述软件组件中的校验算法校验所接收的信号是否来自特定部件;以及响应于所接收的信号来自所述特定部件,所述软件组件处理所接收的信号。其中,所述第一部件和所述第二部件为车载部件。
根据本申请的校验方法,可选地,由预设在所述软件组件中的校验算法校验所接收的信号是否来自特定部件,包括:获取所接收信号中的随机数;由所述校验算法根据所述随机数生成校验值;如果所生成的校验值与所接收信号中的校验位的值匹配,确定所接收的信号来自所述特定部件;其中,所述信号中的随机数由所述第二部件通过随机函数生成,所述校验位的值由所述第二部件的部件端校验算法基于所述随机数生成。
根据本申请的校验方法,可选地,所述预设在所述软件组件中校验算法与设置在所述第二部件的部件端校验算法相同。
根据本申请的校验方法,可选地,响应于所接收的信号不是来自所述特定部件,所述软件组件不处理所接收的信号。
根据本申请的校验方法,可选地,还包括:在设置于第一部件的软件组件接收来自与所述第一部件通信连接的第二部件的信号之前,所述第一部件校验所述信号是否来自所述第二部件,且仅在校验通过的情况下,将所述信号传送给所述软件组件。
根据本申请的第二方面,还提供校验方法,所述校验方法可由第二部件执行,包括:接收到软件组件经由第一部件的通信接口发送的信号后,由第二部件的校验算法校验所接收的信号是否来自特定软件组件;以及响应于所接收的信号来自所述特定软件组件,所述第二部件处理所接收的信号;其中,所述第一部件和所述第二部件是车载部件,并且所述软件组件设置在所述第一部件中。
根据本申请第二方面提供的校验方法,可选地,由第二部件中的校验算法校验所接收的信号是否来自特定软件组件,包括:获取所接收信号中的随机数;由所述校验算法根据所述随机数生成校验值;如果所生成的校验值与所接收信号中的校验位的值匹配,确定所接收的信号来自所述特定软件组件;其中,所述信号中的随机数由所述软件组件通过随机函数生成,所述校验位的值由所述软件组件的软件端校验算法基于所述随机数生成。
根据本申请第二方面提供的校验方法,可选地,所述软件端校验算法与设置在所述第二部件的校验算法相同。进一步,可选地,该方法还包括:在由第二部件的校验算法校验所接收的信号是否来自特定软件组件之前,所述第二部件校验所述信号是否来自所述第一部件,且仅在校验通过的情况下,进一步校验所述信号是否来自特定软件组件。
根据本申请的第三方面,还提供一种校验方法,包括:接收到第二部件发送给软件组件的信号时,所述第一部件校验所述信号以确定所述信号来自第二部件,其中,所述软件组件设置在所述第一部件中;响应于所述第一部件对所述信号的校验通过,所述软件组件根据本申请第一方面所述的校验方法中的任意一种校验所述信号;接收到所述软件组件经由所述第一部件发送的信号时,所述第二部件校验所述信号是否来自第一部件;响应于所述第二部件对所述信号的校验通过,所述第二部件根据第二方面提供的校验方法中的任意一种校验所述信号。
根据本申请的又一方面,还提供车载部件,所述车载部件包括:通信接口,配置为收、发信号;处理器,配置为对所述通信接口接收的由软件组件经由包括该软件组件的部件发送的信号,以校验算法对其进行校验,以判断所接收的信号是否来自特定软件组件;以及响应于所接收的信号来自所述特定软件组件,处理所述信号。
该车载部件中的处理器,可选地,配置为通过如下过程来由校验算法校验所接收的信号是否来自特定软件组件:获取所接收信号中的随机数;由所述校验算法根据所述随机数生成校验值;如果所生成的校验值与所接收信号中的校验位的值匹配,确定所接收的信号来自所述特定软件组件;其中,所述信号中的随机数由所述软件组件通过随机函数生成,所述校验位的值由所述软件组件的软件端校验算法基于所述随机数生成。
该车载部件中的处理器,可选地,配置为在由校验算法校验所接收的信号是否来自特定软件组件之前,校验所述信号是否来自包括所述软件组件的所述部件,且仅在校验通过的情况下,进一步校验所述信号是否来自特定软件组件。
本申请还可提供软件组件,所述软件组件配置能够执行上文根据第一方面所示例提供的校验方法。本申请还提供包括软件组件的车载部件,例如为以上任意一个示例中的第一部件。
根据本申请的以上可示例,可选地,所述预校验算法包括和校验算法、e2e校验算法、循环冗余校验码算法等。
附图说明
下文将结合附图详细说明本申请的实施方式,以便本申请可被更充分地理解,其中:
图1是根据本申请一些示例的校验方法的流程图;
图2是两个车载电子部件的通信连接的结构示意图;
图3是根据本申请另外一些示例的校验方法的流程图;
图4是根据本申请的一些示例的车载部件的结构示意图;
图5是根据本申请又一些示例的校验方法的过程示意图;
图6是根据本申请的示例的动力域控制器32发送给SWC 30的一条CAN报文的示例性结构;
图7是根据本申请示例的校验系统的结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下文将结合附图,对本申请实施方式进行清楚、完整的描述。需要说明的是,所描述的实施方式只是本申请技术方案的部分实施实施方式,而非全部。本领域普通技术人员基于本申请文件所记载的实施方式,在无需付出创造性劳动的前提下所获得的所有其它实施方式,都由本申请的保护范围所涵盖。
本申请说明书、权利要求书及附图中的术语“第一”、“第二”等是用于区别类似的对象,而非用于描述特定的顺序或先后次序。此外,“第一”、“第二”仅用于描述目的,不应被理解为明示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
图1是根据本申请一些示例的校验方法的流程图。软件组件(SoftwareComponent,SWC)作为软件功能模块,可由硬件执行。在车辆中,一个SWC可根据需要被配置在不同的车载部件中。在本申请的描述中,术语“部件”可做广泛理解,包括例如域控制器DCU、车辆电子控制单元ECU等电子部件,还可能被构造为多个部件或系统,例如,作为部件的某个控制器,其可能被按照模块实现在两个或两个以上电子器件中。
图2示例了两个车载部件的通信连接,其中,软件组件20设置在第一部件21中。应理解到,软件组件20与第二部件22的通信可通过第二部件22与第一部件21之间的通信实现。在两者都为车载部件的情况下,第一部件21与第二部件22之间的通信例如基于CAN协议等车载网络通信协议。
请同时参考图1和图2。在步骤S101,设置于第一部件的软件组件接收来自第二部件的信号。第一部件21在该示例中是软件组件20的常驻部件。应理解到,软件组件20经由第一部件21与第二部件22通信。
在步骤S102,由预设在软件组件中的校验算法校验所接收的信号是否来自特定部件。作为示例,软件组件20处理来自特定部件的信号并根据需要做出反馈,对于来自非特定部件的信号则可不做处理,以确保车载部件的通信安全。特定部件例如是预先确定的可与软件组件20通信的安全部件。
根据本申请的一些实施例,预设在软件组件中的校验算法根据所接收信号中的随机数计算校验值。如果所计算的校验值与所接收的信号中的校验位的值匹配,则说明所接收的信号来自特定部件。该示例中,由第二部件22发送的信号可包括随机数和校验位,其中,随机数由第二部件22通过随机函数生成,校验位的值是由第二部件22的部件端校验算法根据该随机数所生成的校验值。
根据本申请,软件组件的校验算法所计算的校验值与所接收的信号中的校验值匹配,可以是两个值相等。这种情况下,软件组件的校验算法与设置在第二部件的部件端校验算法可设置为相同,从而确保根据随机数计算的校验值相同。校验算法例如为校验和算法,在下文的一些例子中,校验算法为循环冗余校验码(Cyclic Redundancy Check,CRC)算法。
在另外一些例子中,软件组件的校验算法所计算的校验值与所接收的信号中的校验值匹配可以是按照预先约定的方式匹配,比如两个校验值的和为一个定值。在又一些例子中,校验算法可为加密算法和对应的解密算法。比如,设置在第二部件22的部件校验算法为加密算法而SWC 20的校验算法包括与其相应的解密算法。
在步骤102的判断结果为所接收的信号来自特定部件的情况下,进入到步骤S104。反之,在步骤S103,结束对所接收信号的处理。
在步骤S104,响应于所接收的信号来自所述特定部件,软件组件进一步处理所接收的信号。经过了验证,SWC 20便可对所接收的信号做进一步解析以从信号中获知第二部件22传达的更多信息,并可根据需要做出响应或反馈。
根据本申请的一些示例,图1所示的方法还包括在步骤S102之前的步骤S101。在步骤S100,第一部件21接收来自第二部件22的信号后,进入到步骤S101。第一部件21校验所接收的信号是由第二部件22发送的信号,且仅在校验通过的情况下,才将信号传送给软件组件20,进入到步骤S102。第一部件21校验所述信号是否由第二部件22发送意在确保信号来自可通信部件。例如,在CAN协议下互相通信的第一部件21和第二部件22在通信过程中,会检验彼此发送的CAN报文以确保通信在已确认的可通信部件之间进行。
对于车辆,随着网络和智能化技术的不断发展,原本默认安全的电子部件的通信变得越来越不安全。举例来说,如果总线上某个电子控制器ECU被劫持从而假冒其它ECU发出刹车、加速、转向等信号,车辆的动力系统据此处理,就会导致车辆失控。尽管车辆的ECU间通信时会彼此验证,但这样的验证无法完全避免假冒、篡改信息的发生。执行根据本申请示例的方法,作为软件功能块的SWC被配置为在与外部部件的交互过程中,尽管该外部部件已由该SWC所在的部件做过验证,但是该SWC根据预设校验算法进一步验证由该外部部件发送的信号,以确定其该信号是否由预先设置的可安全处理的特定部件发送,并仅在该信号来自特定部件的情况下,进行后续处理;即,仅在该外部部件对SWC而言属于已知的安全的特定部件的情况下,处理其发送的信号。这样,即使SWC所在的部件未能有效去除假冒或篡改信息,最为功能模块的SWC还可基于本申请的示例而避免处理这样的假冒或篡改信息,进一步提升了车载通信的安全性。
图3是根据本申请另外一些示例的校验方法的流程图。该方法可以由第二部件执行,以验证经由第一部件传送的SWC的信号是否为特定软件组件的信号。与特定部件类似,特定软件组件在此指的是对第二部件而言安全的软件组件。以下描述可同时参照图3和图2。
在步骤S300,接收到软件组件20经由第一部件21的通信接口发送的信号。
在步骤S302,由第二部件22的校验算法校验所接收的信号是否来自特定软件组件。如果是,进入步骤S304,反之,进入步骤S303。
根据本申请的一些实施例,第二部件22的校验算法根据所接收信号中的随机数计算校验值。如果所计算的校验值与所接收的信号中的校验位的值匹配,则说明所接收的信号来自特定软件组件。该示例中,由软件组件20发送的信号可包括随机数和校验位,其中,随机数由软件组件20通过随机函数生成,校验位的值是由软件组件20的软件端校验算法根据该随机数所生成的校验值。
在步骤S304,响应于所接收的信号来自所述特定软件组件,所述第二部件处理所接收的信号。作为示例,第二部件22处理来自特定软件组件的信号并根据需要做出反馈。作为示例,对于来自非特定软件组件的信号则可不做处理,如步骤S303所示,以确保车载部件的通信安全性。
根据本申请,第二部件22的校验算法所计算的校验值与所接收的信号中的校验值匹配,可以是两个值相等。这种情况下,第二部件22的校验算法与设置在软件组件中的软件端校验算法可设置为相同,从而确保根据随机数计算的校验值相同。举例来说,校验算法为校验和算法,以及在一些例子中,校验算法为循环冗余校码(Cyclic Redundancy Check,CRC)算法。
在另外一些例子中,第二部件22的校验算法所计算的校验值与所接收的信号中的校验值匹配可以是按照预先约定的方式匹配,比如两个校验值的和为一个定值。在又一些例子中,校验算法可为加密算法和对应的解密算法。比如,设置在软件组件20的软件端校验算法为加密算法,而设置在第二部件22的校验算法包括与该加密算法对应的解密算法。
根据本申请的一些示例,图3所示的方法还包括步骤S301,其在步骤S302之前进行。在步骤S301,第二部件22在接收到信号后,确定所述信号是否由第一部件21发送,且仅在校验通过的情况下,才进入到步骤S302以进一步校验所述信号是否来自特定软件组件。第二部件22校验第一部件21发送的信号以首先确保信号来自可通信部件。
根据本申请的示例,第一部件21和第二部件22之间对通信信号的校验是第一重校验,软件组件20与第二部件22之间的信号校验则是第二重校验,两重校验可更好地确保车载通信的安全性。
图4是根据本申请的一些示例的车载部件的结构示意图。如图4所示,该车载部件包括通信接口40和处理器42。要说明的是,车载部件包括的器件、模块要比在此示意的更多和更为复杂,本文仅示例了为阐述本申请而需要的部分。通信接口40是可用于处理车载部件与外部部件通信的器件,其例如支持CAN总线协议、LIN总线协议等。通信接口40接收到由软件组件经由该软件组件所在的部件发送的信号,处理器42以校验算法对该信号进行校验,从而判断所接收的信号是否来自特定软件组件;以及响应于所接收的信号来自特定软件组件,进一步处理所接收的信号。示例地,如果所接收的信号不是来自特定软件组件,处理器42可以不对该信号进行处理。
图4中所示的车载部件可以配置为上文结合任意一个示例描述的第二部件,所描述的可由第二部件执行的步骤、过程从而实现的功能,图4所示的车载部件均可实现。在此,就不再赘述车载部件的更多示例。进一步,图4所示的车载部件还可配置为下文结合图5和图6描述的示例中的例如为动力域控制器的部件32。
图5是根据本申请又一些示例的校验方法的过程示意图。在该示例中,示例但非限制地,软件组件30设置在车辆的整车控制器VCU 31中,软件组件30的功能与车辆动力控制有关,与其通信的部件为车辆动力域的控制器32,简称动力域控制器32。应理解到,图5中的SWC 30通过SWC 30的常驻控制器31来收、发信号。举例来说,SWC 30经由VCU 31与动力域控制器32间通信,以接收动力域控制器32发送的信号或者向动力域控制器32发送信号。
参考图5,VCU 31接收到来自动力域控制器32发送的CAN报文后,VCU 31首先验证该报文以完成VCU 31与动力域控制器32间的CAN通信验证,如步骤S300所示。作为对验证通过的响应,该报文被送到SWC 30,如步骤S302。
SWC 30对所接收的来自动力域控制器32的CAN报文,按照预设的校验算法验证其是否来特定部件(步骤S304)。动力域控制器32发送的CAN报文由部件端校验算法加密。根据本申请的示例,部件端校验算法与SWC 30的校验算法相匹配。举例来说,动力域控制器32设置为按照特定方式加密报文,而SWC 30则可通过与该特定方式相匹配的方式解密报文,该加密方式与解密方式是预先仅设置于动力域控制器32和SWC 30的算法。
作为示例,设置在动力域控制器32和SWC 30上的算法可以是端到端(end to end,e2e)校验算法、校验和算法、循环冗余校验码CRC算法等。
在本申请中,示例而非限制地,SWC 30与动力域控制器32中设置的校验算法为CRC算法。具体而言,动力域控制器32由随机函数生成随机数,再由校验算法产生校验值。动力域控制器32所生成的随机数和校验值填写到其所发送的信号的相应位,例如下文结合图6描述的AliverCounter位和CRC校验位。接收到动力域控制器32发送的信号的SWC 30,根据信号中的随机数,由其校验算法计算校验值。如果SWC 30的校验算法所计算的校验值与来自动力域控制器32发送的信号的校验位的校验值一致,SWC 30可确定所接收的报文来自特定部件。
图6是根据本申请示例的动力域控制器32发送给SWC 30的一条CAN报文的示例性结构,其中,第一行中的数字0到7表示位,第一列的数字0到7表示字节0到字节7。如图6所示,该条报文包括8个字节,从上到下依次标为字节0、1、2、3、4、5、6、7;每个字节包括8个位(bit),从右到左的位0、1、2、3、4、5、6、7。其中,字节5和字节7为CRC位,字节5的CRC用于SWC30校验动力域控制器32的信号正确与否,字节7的CRC用于VCU 31对动力域控制器32进行校验。字节6的高四位55、54、53和52是根据本申请而设置的AliverCounter位。动力域控制器32根据随机函数生成的随机数写入到字节6的AliverCounter位,作为AliverCounter的值。需要说明的是,尽管在此示意的报文结构中,字节7也设置了CRC校验位,但其与字节5的CRC没有关系,字节5的CRC是仅为SWC 30和动力域控制器32设置,其算法只用于SWC 30和动力域控制器32,而与字节7的CRC算法不同。
SWC 30在接收到该报文之后,获取AliverCounter的值,由校验算法计算校验值。如果所计算的校验值与信号中字节5的CRC值一致,则确定所接收的报文来自特定部件;反之,确定所接收的报文不是来自特定部件。
回到图5。作为对步骤S304确定所接收的报文来自特定部件的响应,在步骤S306,SWC 30进一步解析接收的信号,以获得动力域控制器32所发送的信号的更多信息。进一步,可根据需要做出反馈。
根据本申请的示例,作为对步骤S304确定所接收的报文不是来自特定部件的相应,SWC 30停止对该信号的处理,如步骤S303所示。
在车辆的SWC执行根据本申请示例的校验方法,如果因为非正常原因将动力域控制器32替代或冒充动力域控制器32,从而由替代的或冒充的控制器32发送信号给SWC 30时,由于该替代或冒充的控制器32未设置部件端校验算法,便无法在发送的信号中包括仅SWC可识别的校验信息,由此SWC 30便可容易地辨别出替代或冒充的控制器32发送的信号。由此,避免了错误执行这样的信号而可能带来的风险和危险。
以上描述了SWC 30与动力域控制器32之间通信的一个方面,即,动力域控制器32发送信号给SWC 30,以下描述SWC 30发送信号给动力域控制器32的过程。
如图5所示,SWC 30经由VCU 31发出信号,例如CAN报文,如步骤S600所示。动力域控制器32接收到来自VCU 31的报文后,首先验证该报文是否来自可通信的部件VCU 31,在验证通过的情况下,进入到步骤S602,按照校验算法验证该报文是否来自特定软件组件。SWC 30发送的CAN报文由软件端校验算法加密。根据本申请的示例,软件端校验算法与动力域控制器32的校验算法相匹配。举例来说,软件端校验算法设置为按照特定方式加密报文,而动力域控制器32则可通过与该特定方式相匹配的方式解密报文,该加密方式与解密方式是预先仅设置于动力域控制器32和SWC 30的算法。上文关于校验算法的各示例都适用于软件端校验算法,不再赘述。图6示意的动力域控制器32发送给SWC 30的一条CAN报文的示例性结构同样适用于SWC 30发送给动力域控制器32的报文结构。在动力域控制器32确定CAN报文来自特定软件组件的情况下,其进一步处理该报文,以解析其内容进而获取信息,如步骤S604所示。动力域控制器32确定CAN报文不是来自特定软件组件的情况下,不对其进行处理,如步骤S603所示。
需要说明的是,在结合图5和图6描述的例子中,以CAN报文作为动力域控制器32和SWC 30之间的交互信息,但这只是示例,并非限制。例如,动力域控制器32和SWC 30的通信可例如基于LIN等其它车载通信网络通信协议,由此,交互信息变为LIN报文。此外,动力域控制器32和VCU 31在此只是第二部件和第一部件的示例。实际应用中,第一部件、第二部件均可为车辆内的其它部件,例如底盘域控制器、自动驾驶控制器等。
此外,尽管在以上关于方法、过程的描述中,对步骤进行了编号,但这并不限定各步骤必须按照这样的顺序执行,各步骤的执行顺序取决于具体情况。例如图5中,步骤S600~S604并不是在步骤S300~S306之后执行,而是可在之前执行。
进一步,本申请各示例中,第一部件和第二部件并不特指某个部件,在此只是为了说明更为简洁、清楚而对部件的指代性称谓。第一部件指的是设置SWC的电子部件,文中也称为SWC的常驻部件。第二部件指的是与第一部件通信连接的电子部件。
图7是根据本申请示例的用于软件组件的校验系统的结构图。如图7所示,该系统包括通信模块50和处理模块52。通信模块50配置为与部件通信。处理模块52配置为由预设的校验算法校验接收的信号是否来自特定部件;以及响应于所接收的信号来自所述特定部件,进一步处理所接收的信号。
图7所示的校验系统可以设置在车辆的一个电子部件中,例如图2示例的第一部件21,或图5示例的VCU 31中。在将该校验系统实现在例如第一部件21、VCU 31的电子部件中时,通信模块50可以采用该电子部件的通信模块。诸如CAN通信模块,以便电子部件与车辆的其它部件通信。进一步,在将该校验系统实现在例如第一部件21、VCU 31的电子部件中时,处理模块52可以实现在SWC中,例如以指令程序的方式实现为SWC的软件模块的一部分。处理模块52可获取所接收信号中的随机数;由所述校验算法根据所述随机数生成校验值;如果所生成的校验值与所接收信号中的校验位的值匹配,确定所接收的信号来自所述特定部件。
上文结合附图描述的各示例的校验方法可在例如图7所示的校验系统中执行,例如由通信模块50接收来自第二部件21或动力域控制器31的信号,由实现在软件组件中的处理模块52来来以校验算法校验所接收的信号,由此判断所接收的信号是否来自特定部件,且在确定来自特定部件的情况下,由软件组件进一步处理所接收的信号。
根据本申请的示例,还提供车载部件。该车载部件例如被配置为上文结合图1和图2描述的示例中第二部件21,或被配置为上文结合图5和图6描述的示例中的例如动力域控制器31的车载部件。示例而非限制地,该车载部件例如为底盘域控制器、自动驾驶控制器、扭矩控制器、车辆安全域控制、车身稳定程序控制器、车辆动态控制器等。
根据本申请的示例,还提供软件组件,该软件组件例如为上文描述的软件组件20或30。进一步,本申请还可提供包括根据本申请示例的软件组件的车载部件,该车载部件例如为上文结合附图描述的例子中的第一部件21、例如VCU的部件31等。
根据本申请的示例,还提供车辆,该车辆可包括上文任意一个示例描述的软件组件、任意一个示例描述的车载部件、任意一个示例描述的用于软件组件的校验系统,或者可执行任意一个示例描述的用于软件组件的校验方法。
在此,虽已详细示出并描述了本申请的各实施例以说明本申请的原理,但应理解的是,各实施例及其特征可在不冲突的情况下,相互结合,从而实现新的实施方式,这样的实施方式应由本申请所主张的范围所包括。此外,本申请也可以其它未背离本申请精神的方式来实施。
Claims (16)
1.一种校验方法,其特征在于,所述方法包括:
设置于第一部件的软件组件接收来自与所述第一部件通信连接的第二部件的信号;
由预设在所述软件组件中的校验算法校验所接收的信号是否来自特定部件;以及
响应于所接收的信号来自所述特定部件,所述软件组件处理所接收的信号;
其中,所述第一部件和所述第二部件是车载部件。
2.根据权利要求1所述的方法,其特征在于,由预设在所述软件组件中的校验算法校验所接收的信号是否来自特定部件,包括:
获取所接收信号中的随机数;
由所述校验算法根据所述随机数生成校验值;
如果所生成的校验值与所接收信号中的校验位的值匹配,确定所接收的信号来自所述特定部件;
其中,所述信号中的随机数由所述第二部件通过随机函数生成,所述校验位的值由所述第二部件的部件端校验算法基于所述随机数生成。
3.根据权利要求2所述的方法,其特征在于,所述预设在所述软件组件中的校验算法与所述部件端校验算法相同。
4.根据权利要求1到3中任意一项所述的方法,其特征在于,所述方法还包括:在设置于第一部件的软件组件接收来自与所述第一部件通信连接的第二部件的信号之前,所述第一部件校验所述信号是否来自所述第二部件,且仅在校验通过的情况下,将所述信号传送给所述软件组件。
5.一种软件组件,其特征在于,所述软件组件被配置为能执行根据权利要求1到3中任意一项所述的校验方法。
6.一种校验方法,其特征在于,所述方法包括:
接收到软件组件经由第一部件发送的信号后,由第二部件的校验算法校验所接收的信号是否来自特定软件组件;以及
响应于所接收的信号来自所述特定软件组件,所述第二部件处理所接收的信号;
其中,所述第一部件和所述第二部件是车载部件,并且所述软件组件设置在所述第一部件中。
7.根据权利要求6所述的校验方法,其特征在于,由第二部件中的校验算法校验所接收的信号是否来自特定软件组件,包括:
获取所接收信号中的随机数;
由所述校验算法根据所述随机数生成校验值;
如果所生成的校验值与所接收信号中的校验位的值匹配,确定所接收的信号来自所述特定软件组件;
其中,所述信号中的随机数由所述软件组件通过随机函数生成,所述校验位的值由所述软件组件的软件端校验算法基于所述随机数生成。
8.根据权利要求7所述的方法,其特征在于,所述软件端校验算法与设置在所述第二部件的校验算法相同。
9.根据权利要求6到8中任意一项所述的方法,其特征在于,所述方法还包括:在由第二部件的校验算法校验所接收的信号是否来自特定软件组件之前,所述第二部件校验所述信号是否来自所述第一部件,且仅在校验通过的情况下,进一步校验所述信号是否来自特定软件组件。
10.一种校验方法,其特征在于,所述方法包括:
接收到第二部件发送给软件组件的信号时,所述第一部件校验所述信号以确定所述信号来自所述第二部件,其中,所述软件组件设置在所述第一部件中;
响应于所述第一部件对所述信号的校验通过,所述软件组件根据权利要求1到3中任意一项所述的校验方法校验所述信号;
接收到所述软件组件经由所述第一部件发送的信号时,所述第二部件校验所述信号是否来自第一部件;
响应于所述第二部件对所述信号来自所述第一部件的校验结果,所述第二部件根据权利要求6到8中任意一项所述的校验方法校验所述信号。
11.一种车载部件,其特征在于,所述车载部件包括:
通信接口,配置为收、发信号;
处理器,配置为:
对所述通信接口接收的由软件组件经由包括该软件组件的部件发送的信号,以校验算法对其进行校验,以判断所接收的信号是否来自特定软件组件;以及
响应于所接收的信号来自所述特定软件组件,处理所述信号。
12.根据权利要求11所述的车载部件,其特征在于,所述处理器配置为通过如下过程来由校验算法校验所接收的信号是否来自特定软件组件,包括:
获取所接收信号中的随机数;
由所述校验算法根据所述随机数生成校验值;
如果所生成的校验值与所接收信号中的校验位的值匹配,确定所接收的信号来自所述特定软件组件;
其中,所述信号中的随机数由所述软件组件通过随机函数生成,所述校验位的值由所述软件组件的软件端校验算法基于所述随机数生成。
13.根据权利要求12所述的车载部件,其特征在于,所述软件端校验算法与所述车载部件的所述校验算法相同。
14.根据权利要求11到13中任意一项所述的车载部件,其特征在于,所述处理器还配置为:在由校验算法校验所接收的信号是否来自特定软件组件之前,校验所述信号是否来自包括所述软件组件的所述部件,且仅在校验通过的情况下,进一步校验所述信号是否来自特定软件组件。
15.一种车载部件,其包括根据权利要求5所述的软件组件。
16.根据权利要求1到4中任意一项所述的检验方法,根据权利要求6到10中任意一项所述的校验方法,以及根据权利要求11到14中任意一项所述的车载部件,其特征在于,所述校验算法包括校验和算法、e2e算法、循环冗余校验码算法中的任意一种。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311604997.7A CN117675307A (zh) | 2023-11-28 | 2023-11-28 | 校验方法、车载部件、软件组件 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311604997.7A CN117675307A (zh) | 2023-11-28 | 2023-11-28 | 校验方法、车载部件、软件组件 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117675307A true CN117675307A (zh) | 2024-03-08 |
Family
ID=90076322
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311604997.7A Pending CN117675307A (zh) | 2023-11-28 | 2023-11-28 | 校验方法、车载部件、软件组件 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117675307A (zh) |
-
2023
- 2023-11-28 CN CN202311604997.7A patent/CN117675307A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10104094B2 (en) | On-vehicle communication system | |
US10171478B2 (en) | Efficient and secure method and apparatus for firmware update | |
US9577997B2 (en) | Authentication system and authentication method | |
CN114095298B (zh) | 一种管理控制器局域网中模块间安全通信的系统及方法 | |
US9602487B2 (en) | Method for the protected transmission of data | |
CN109040285B (zh) | 车载网络安全认证的方法、装置、存储介质及车辆 | |
CN107306185B (zh) | 用于避免对数据传输的操纵的方法和装置 | |
KR20190013018A (ko) | 효율적인 차량용 리프로그래밍 장치 및 그 제어방법 | |
US12197903B2 (en) | Vehicle controller | |
CN112883382A (zh) | 一种车辆刷写的方法、车联网盒、车辆及存储介质 | |
CN116346398A (zh) | 安全汽车系统 | |
Hartzell et al. | Security analysis of an automobile controller area network bus | |
CN112702166A (zh) | 一种数据传输方法、验证方法、装置和汽车 | |
US20240291687A1 (en) | Apparatus for secured communication between control devices in a vehicle, electronic processing unit, and vehicle | |
US12184446B2 (en) | Relay device, communication network system, and communication control method | |
CN117675307A (zh) | 校验方法、车载部件、软件组件 | |
EP4521714A1 (en) | End-to-end data encryption communication system and method | |
CN118214766A (zh) | 一种车辆的远程控制方法、装置、电子设备及介质 | |
US20230336356A1 (en) | Data storage device, data storage method, and non-transitory computer readable storage medium | |
KR20220042146A (ko) | 자동차 통신 시스템을 위한 데이터 링크 계층 신뢰성 및 보안 | |
KR102001420B1 (ko) | 전자제어유닛, 차량 통신 보안시스템 및 보안방법 | |
CN107444300B (zh) | 用于运行用于车辆的数据处理装置的方法 | |
CN115065522A (zh) | 安全认证方法、车载控制器、远程通信终端和存储介质 | |
KR102084552B1 (ko) | 코드 기반 차량 데이터 검증 장치, 방법 및 시스템 | |
US20240007450A1 (en) | Apparatus, Method, and Computer Program for the Secure, High-Availability Transmission of Messages, and a Vehicle Comprising the Apparatus |
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 |