CN116318855A - 一种汽车标准can通信安全的加解密方法 - Google Patents

一种汽车标准can通信安全的加解密方法 Download PDF

Info

Publication number
CN116318855A
CN116318855A CN202310103610.3A CN202310103610A CN116318855A CN 116318855 A CN116318855 A CN 116318855A CN 202310103610 A CN202310103610 A CN 202310103610A CN 116318855 A CN116318855 A CN 116318855A
Authority
CN
China
Prior art keywords
message
encryption
communication
decryption method
automobile
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
Application number
CN202310103610.3A
Other languages
English (en)
Inventor
魏晓翰
孙学银
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bosch Huayu Steering Systems Co Ltd
Original Assignee
Bosch Huayu Steering Systems Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Bosch Huayu Steering Systems Co Ltd filed Critical Bosch Huayu Steering Systems Co Ltd
Priority to CN202310103610.3A priority Critical patent/CN116318855A/zh
Publication of CN116318855A publication Critical patent/CN116318855A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus 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)
  • Small-Scale Networks (AREA)

Abstract

本发明涉及汽车CAN通信,具体地说是一种汽车标准CAN通信安全的加解密方法。流程为:S1,报文发送方将CAN报文中的前6个字节存放有效的通信数据,CAN报文中的后2个字节存放前6个字节的CRC‑16校验码;S2,通过SPECK算法及与报文接收方共同持有的密钥对CAN报文进行加密,然后将加密后的CAN报文发送至报文接收方;S3,报文接收方接收到加密后的CAN报文,先使用SPECK算法及与报文发送方共同持有的密钥进行解密;然后计算前6个字节通信数据的CRC‑16校验码并与报文中后2个字节的CRC‑16校验码进行比较,若两者是相同的,则认为接收到的CAN报文来自于报文发送方。同现有技术相比,基于CRC‑16校验码、SPECK加密算法的机制确保了CAN报文的来源、完整性及机密性。

Description

一种汽车标准CAN通信安全的加解密方法
技术领域
本发明涉及汽车CAN通信,具体地说是一种汽车标准CAN通信安全的加解密方法。
背景技术
目前常见的汽车标准CAN网络拓扑,如图1所示,整车CAN网络存在多个网段,各网段之间的通信路由通过网关实现。另外诊断接口直接连接到网段,未做有任何对于CAN网络通信的安全访问措施。
标准CAN网络通信成本低、可靠性高,但在设计之初并没有考虑信息安全问题。报文可以较容易构造并可以自由发送,接收方无法验证是否来自于期望的发送方,即无法确认报文的来源;报文中为通信原始数据,比较容易通过分析得到其表示的内容;无有效的抵御报文录制后重放攻击的手段。
另一方面,一个标准CAN报文的数据段最多有8个字节(64位),如图2所示。其需要承载很多车辆运行的功能数据,任何信息安全设计考虑对数据段的占用,都会对标准CAN网络负载率带来负面影响。标准CAN报文数据段长度的有限性、目前大部分车载ECU的运算能力的局限性,也决定了其无法直接借鉴其它完善的通信协议(如TCP/IP)的信息安全策略。
发明内容
本发明为克服现有技术的不足,提供一种汽车标准CAN通信安全的加解密方法,基于CRC-16校验码、SPECK加密算法的机制确保了CAN报文的来源、完整性及机密性,并使得运算效率和安全性有一个较好的平衡。
为实现上述目的,设计一种汽车标准CAN通信安全的加解密方法,包括报文发送方、报文接收方,其特征在于:具体流程如下:
S1,报文发送方将CAN报文中的前6个字节存放有效的通信数据,CAN报文中的后2个字节存放前6个字节的CRC-16校验码;
S2,通过SPECK算法及与报文接收方共同持有的密钥对CAN报文进行加密,然后将加密后的CAN报文发送至报文接收方;
S3,报文接收方接收到加密后的CAN报文,先使用SPECK算法及与报文发送方共同持有的密钥进行解密;然后计算前6个字节通信数据的CRC-16校验码并与报文中后2个字节的CRC-16校验码进行比较,若两者是相同的,则认为接收到的CAN报文来自于报文发送方。
所述的CAN报文为标准CAN报文,CAN报文由8个字节组成,并且8个字节可自由定义。
所述的SPECK算法加密过程如下:
S21,将CAN报文的64bit数据及128bit密钥作为输入;
S22,进行27轮运算;
S23,得到加密后的CAN报文64bit数据。
所述的加解密方法由CRC-16算法和SPECK算法的组合使用。
所述的报文发送方或者报文接收方如为汽车外部设备,由汽车网关代为作为报文发送方进行加密或汽车网关代为作为报文接收方为报文解密,使授权的汽车外部设备可以与汽车CAN网络正常通信,而不受报文加解密的影响。
所述的报文发送方与报文接收方共同持有通信密钥,由汽车网关实现自动化配置与定期更新。
所述的报文发送方与报文接收方共同持有通信密钥,由汽车网关在收到预定义的诊断请求后进行重置。
本发明同现有技术相比,提供一种汽车标准CAN通信安全的加解密方法, 基于CRC-16校验码、SPECK加密算法的机制确保了CAN报文的来源、完整性及机密性,并使得运算效率和安全性有一个较好的平衡。
附图说明
图1为汽车标准CAN网络拓扑示意图。
图2为标准CAN报文结构示意图。
图3为本发明流程示意图。
图4为汽车外部设备与汽车CAN网络通信示意图。
图5为正常通信密钥配置过程图。
图6为正常通信密钥更新过程图。
图7为正常通信密钥重置过程图。
实施方式
下面根据附图对本发明做进一步的说明。
如图3所示一种汽车标准CAN通信安全的加解密方法,具体流程如下:
S1,报文发送方将CAN报文中的前6个字节存放有效的通信数据,CAN报文中的后2个字节存放前6个字节的CRC-16校验码;
S2,通过SPECK算法及与报文接收方共同持有的密钥对CAN报文进行加密,然后将加密后的CAN报文发送至报文接收方;
S3,报文接收方接收到加密后的CAN报文,先使用SPECK算法及与报文发送方共同持有的密钥进行解密;然后计算前6个字节通信数据的CRC-16校验码并与报文中后2个字节的CRC-16校验码进行比较,若两者是相同的,则认为接收到的CAN报文来自于报文发送方。
CAN报文为标准CAN报文,CAN报文由8个字节组成,并且8个字节可自由定义。
SPECK算法加密过程如下:
S21,将CAN报文的64bit数据及128bit密钥作为输入;
S22,进行27轮运算;
S23,得到加密后的CAN报文64bit数据。
本发明将标准CAN报文数据段8个字节中留出2个字节用于存放其余6个字节中通信原始数据的CRC-16校验码。其中CRC为循环冗余校验码,是一种常用而且易于实现的校验方式。采用CRC-16可以达到字节占用与校验码暴力破解的一个较好的平衡。
报文发送方在计算并填充CRC-16校验码后,会进一步采用SPECK算法对整个数据段8字节进行加密。 SPECK是一种由美国国家安全局开发的轻量化加/解密算法,实现简单但具备尚可的安全强度。算法参数上选择推荐的128位密钥及27轮运算。密钥由报文发送方和报文接收方预先持有,并受到妥善的保管。
报文接收方收到数据段加密的报文后,会首先使用与报文发送方共同持有的密钥进行解密,然后计算6个字节通信原始数据的CRC-16校验码与报文中CRC-16校验码进行比较。如果两者相同,则认为报文来自于预期的发送方。数据段加密保障了通信原始数据的机密性,采用CRC-16校验码确保了通信原始数据的完整性,两者结合又实现了对于通信原始数据真实性的保证。
如报文的发送方或接收方为汽车外部设备,如图4所示,本发明设计外部设备连接至车辆诊断接口,在通过网关的访问控制证明其授权身份后,通过网关预定义的诊断服务:1)使能其将指定网段上的报文解密后发送至诊断接口;2)或将外部设备发送的报文加密后发送至指定网段。这样授权的汽车外部设备可以与汽车CAN网络正常通信,而不受报文加解密的影响。
为了实现CAN报文加密,报文发送方与接收方需要持有相同的密钥。如图5所示,本发明提出了相应的通信密钥配置过程。在车辆装配完成后,网段上的ECU中因未写入通信密钥,会使用缺省通信密钥进行通信、并周期性发送通信密钥未配置状态。网关收到网段上所有ECU发送的未配置状态信息后,会尝试启动通信密钥配置程序,即为每个网段专门生成一个通信密钥,并通过预定义的报文发送至对应的网段。网段上的ECU在收到通信密钥后,会进行内部配置,在完成后周期性发送通信密钥已配置状态。如网关在规定时间内收到网段上所有ECU反馈的通信密钥已配置的状态后,将发送通信密钥生效请求,网段上的所有ECU(包括网关)会在下次车辆上电后统一使用新的通信密钥进行通信。如网关未在规定时间内收到网段上所有ECU反馈的通信密钥已配置的状态,将不会发送通信密钥生效请求,网段上的所有ECU在下次车辆上电后继续周期性发送通信密钥未配置状态。网关会记录下相关故障码,并在通信密钥配置程序多次执行失败后发送相关报文给仪表或信息娱乐系统,提示车辆存在安全风险。
为了实现CAN报文加密,报文发送方与接收方需要持有相同的密钥。如图6所示,本发明还提出了通信密钥的定期更新过程。在网段上使用通信密钥进行通信的情况下,网关会定期启动通信密钥更新程序。通信密钥更新程序与配置程序的过程与问题处理思路类似。理想的设计是网关在每一次车辆上电后就开始尝试配置下一次车辆上电的通信密钥,以期尽可能地降低固定通信密钥在汽车生命周期内泄露、或遭到破解的风险,以及使得攻击者录制的报文在后续重放时变得无效。
如图7所示,本发明还提出了通信密钥重置过程。如出于一些原因,需要对通信密钥进行重置(如换件),可使用汽车外部设备在通过网关的访问控制证明其授权身份后,通过预定义的诊断服务启动网关的通信密钥重置程序。网关会根据具体的诊断服务在相应网段上、或全部网段上发送通信密钥重置请求。网段上的ECU在收到通信密钥重置请求后,会进行内部配置,在车辆下电、再上电后完成重置,即使用缺省通信密钥进行通信。
本发明旨在汽车控制器运算能力普遍有限、控制器间通信(车载CAN通信)实时性要求较高、通信报文数据场只有8个字节的情况下,提出一种轻量化的安全机制,实现针对通信报文的可行且有效的机密性、完整性与真实性保护。寻求性能与安全的平衡,一直是安全机制的重点与难点。
又因存在车辆外部对于车载CAN通信合法访问的需要,车辆应能鉴别访问者的身份,并实现对于外部输入报文的加密或内部报文外发的解密。本专利相应也提出了自动化的内外部报文交换处理(加解密)机制。
鉴于每个车载CAN通信网段中的控制器将持有共同的通信密钥,本专利还提出了对应的通信密钥管理机制,以实现对通信密钥的安全自动化配置、更新、重置。且借助于通信密钥的自动化定期更新,控制器间通信的安全性得到了进一步增强。

Claims (7)

1.一种汽车标准CAN通信安全的加解密方法,包括报文发送方、报文接收方,其特征在于:具体流程如下:
S1,报文发送方将CAN报文中的前6个字节存放有效的通信数据,CAN报文中的后2个字节存放前6个字节的CRC-16校验码;
S2,通过SPECK算法及与报文接收方共同持有的密钥对CAN报文进行加密,然后将加密后的CAN报文发送至报文接收方;
S3,报文接收方接收到加密后的CAN报文,先使用SPECK算法及与报文发送方共同持有的密钥进行解密;然后计算前6个字节通信数据的CRC-16校验码并与报文中后2个字节的CRC-16校验码进行比较,若两者是相同的,则认为接收到的CAN报文来自于报文发送方。
2.根据权利要求1所述的一种汽车标准CAN通信安全的加解密方法,其特征在于:所述的CAN报文为标准CAN报文,CAN报文由8个字节组成,并且8个字节可自由定义。
3.根据权利要求1所述的一种汽车标准CAN通信安全的加解密方法,其特征在于:所述的SPECK算法加密过程如下:
S21,将CAN报文的64bit数据及128bit密钥作为输入;
S22,进行27轮运算;
S23,得到加密后的CAN报文64bit数据。
4.根据权利要求1所述的一种汽车标准CAN通信安全的加解密方法,其特征在于:所述的加解密方法由CRC-16算法和SPECK算法的组合使用。
5.根据权利要求1所述的一种汽车标准CAN通信安全的加解密方法,其特征在于:所述的报文发送方或者报文接收方如为汽车外部设备,由汽车网关代为作为报文发送方进行加密或汽车网关代为作为报文接收方为报文解密,使授权的汽车外部设备可以与汽车CAN网络正常通信,而不受报文加解密的影响。
6.根据权利要求4所述的一种汽车标准CAN通信安全的加解密方法,其特征在于:所述的报文发送方与报文接收方共同持有通信密钥,由汽车网关实现自动化配置与定期更新。
7.根据权利要求4所述的一种汽车标准CAN通信安全的加解密方法,其特征在于:所述的报文发送方与报文接收方共同持有通信密钥,由汽车网关在收到预定义的诊断请求后进行重置。
CN202310103610.3A 2023-02-13 2023-02-13 一种汽车标准can通信安全的加解密方法 Pending CN116318855A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310103610.3A CN116318855A (zh) 2023-02-13 2023-02-13 一种汽车标准can通信安全的加解密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310103610.3A CN116318855A (zh) 2023-02-13 2023-02-13 一种汽车标准can通信安全的加解密方法

Publications (1)

Publication Number Publication Date
CN116318855A true CN116318855A (zh) 2023-06-23

Family

ID=86778882

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310103610.3A Pending CN116318855A (zh) 2023-02-13 2023-02-13 一种汽车标准can通信安全的加解密方法

Country Status (1)

Country Link
CN (1) CN116318855A (zh)

Similar Documents

Publication Publication Date Title
CN107846395B (zh) 确保车载总线上的通信安全的方法、系统、介质和车辆
US9252945B2 (en) Method for recognizing a manipulation of a sensor and/or sensor data of the sensor
CN111131313B (zh) 智能网联汽车更换ecu的安全保障方法及系统
CN106464499B (zh) 通信网络系统、发送节点、接收节点、消息检查方法、发送方法及接收方法
JP5783103B2 (ja) 車両用データ通信システム及び車両用データ通信装置
CN110708388B (zh) 用于提供安全服务的车身安全锚节点设备、方法以及网络系统
US11128474B2 (en) Secure device communication
US20210144130A1 (en) Method for securing communication without management of states
US20190199521A1 (en) Method and apparatus for secure access to a sensor or device network
CN113132082A (zh) 一种基于车内网的通信方法及装置
JP2019105946A (ja) 車載更新装置、プログラム及びプログラム又はデータの更新方法
WO2018101488A1 (ja) セキュアネットワーク通信方法
US10367794B2 (en) Method and apparatus for securing a sensor or device
JP6203798B2 (ja) 車載制御システム、車両、管理装置、車載コンピュータ、データ共有方法、及びコンピュータプログラム
CN100596350C (zh) 工业控制数据的加密解密方法
CN116456336A (zh) 一种外部设备接入安全认证方法、系统、汽车、设备及存储介质
CN116318855A (zh) 一种汽车标准can通信安全的加解密方法
WO2023000313A1 (zh) 一种密钥验证方法及相关装置
KR102144179B1 (ko) 차량 내부에서의 통신 방법
KR101691201B1 (ko) Dnp 메시지의 보안통신장치 및 방법
CN114946155A (zh) 一种车辆诊断系统、方法及装置
CN107493262B (zh) 用于传输数据的方法和装置
CN113973002A (zh) 一种数据密钥的更新方法及装置
Daily et al. Secure controller area network logging
EP4080813B1 (en) Communication method and electronic device

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