CN113132098B - 面向大规模车内网络的可扩展can总线安全通信方法及装置 - Google Patents

面向大规模车内网络的可扩展can总线安全通信方法及装置 Download PDF

Info

Publication number
CN113132098B
CN113132098B CN202110268523.4A CN202110268523A CN113132098B CN 113132098 B CN113132098 B CN 113132098B CN 202110268523 A CN202110268523 A CN 202110268523A CN 113132098 B CN113132098 B CN 113132098B
Authority
CN
China
Prior art keywords
bus
ecu
key
equipment
session key
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.)
Expired - Fee Related
Application number
CN202110268523.4A
Other languages
English (en)
Other versions
CN113132098A (zh
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.)
Beihang University
Original Assignee
Beihang University
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 Beihang University filed Critical Beihang University
Priority to CN202110268523.4A priority Critical patent/CN113132098B/zh
Publication of CN113132098A publication Critical patent/CN113132098A/zh
Application granted granted Critical
Publication of CN113132098B publication Critical patent/CN113132098B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • 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/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles

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)
  • Power Engineering (AREA)

Abstract

本发明公开了一种面向大规模车内网络的可扩展CAN总线安全通信方法及装置,其中,方法涵盖了总线内的初始密钥分发、密钥更新、数据保密性与完整性保护以及外部设备接入等安全场景,恰当地利用总线的广播机制和密码学群认证机制有效简化了初始密钥分发阶段的通信流程,实现了密钥初始化的轻量级设计,对CAN总线上日益增长的设备数量具备良好可扩展性;使用全局计数器解决了数据加密通信面对延迟攻击的脆弱性;引入跨子网数据传输模块解决加密消息的加密消息不能跨网传输的缺陷;此外设计了外部设备接入的认证流程基于无双线性对的无证书签名机制,摆脱对于公钥基础设施机制的依赖、降低通信开销的同时,避免了复杂双线性对运算,满足了实时性需求。

Description

面向大规模车内网络的可扩展CAN总线安全通信方法及装置
技术领域
本发明涉及信息安全技术领域,特别涉及一种面向大规模车内网络的可扩展CAN总线安全通信方法及装置。
背景技术
现代汽车已经从单纯的交通运输工具发展到面向多种连接方式的计算平台。在现代车辆中,各种类型的总线和数百个ECU(Electronic Control Unit,电子控制单元)通过车内网关连接起来,以确保正常的安全操作,如碰撞预测和防抱死制动系统。这些ECU通过CAN(Controller Area Network,控制器局域网)总线进行通信,通过传感器、执行器和控制器来保证驾驶安全,为用户提供更舒适的驾驶体验。随着传感器节点的增多,汽车的功能越来越复杂,需要连接到总线上的ECU越来越多。在豪华轿车上,甚至安装了超过100个ECU。
随着越来越复杂的服务和复杂的通信功能融入到汽车中,面向现代汽车的攻击手段正在迅速增长。在过去的几十年里,大量的研究表明,无论是在实验室还是在道路测试中,物理接入还是远程攻击方式,都有能力恶意控制车辆。作为最重要的汽车接口,车载诊断系统(OBD-II)提供了对内部网络的直接访问功能,通过该系统,CAN总线可以从外部接入,并在物理上暴露给攻击者。此外,蓝牙、蜂窝网络和互联网连接(如Wi-Fi和4G)等各种攻击手段也是可行的。这些接口经常与外部世界交互,为攻击者在CAN中插入恶意代码提供了潜在的接入点。据报道,福特、丰田和特斯拉汽车在停车和驾驶模式下,其发动机、制动器、车灯和燃油表都可被攻击,实现了转向、制动、加速和显示控制,甚至可以修改固件和内置代码。
车载CAN的三个主要漏洞是访问控制薄弱、无认证和无加密机制。由于CAN消息帧中没有目的地址,每个节点都可以根据预定义的配置发送和接收广播到总线的消息。攻击者还可以插入恶意信息或进行重放,这对司机和乘客都构成了威胁。因此,CAN总线的保护需要适当的认证和加密机制。
最近发布的密码协议套件是由Palaniswamy等人提出的。该套件由七个协议组成,涵盖了总线内部安全通信和与外部设备连接的过程。但这些协议存在潜在的安全缺陷以及协议设计冗余。
在初始会话密钥分发协议和会话密钥更新协议中,这些协议没有利用CAN总线中的广播机制。GECU必须与每个ECU建立挑战-响应机制,这会导致不必要的通信开销,面对车内不断增长的ECU总数会造成明显的通信时延。
数据帧传输协议和远程帧传输协议中,每个计数器都被安排用于记录来自某个仲裁ID的数据流。然而,该方案容易受到延迟攻击,被攻击者延迟一段时间再发出的消息,不能通过检测计数器的异常消息校验值得到发现。另一缺点是没有为跨子网数据传输设计协议。由于现代车辆中通常存在两个或多个CAN总线,因此有必要进行跨子网信息交换。然而,会话密钥在各子网之间是不同的,来自不同子网的ECU之间没有直接进行安全通信的能力。此外,针对外部设备的接入协议在此前还未针对CAN总线场景进行特别优化,使用依赖于PKI(Public Key Infrastructure,公钥基础设施)的证书体制进行身份认证会显著增加CAN总线上的通信开销。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种面向大规模车内网络的可扩展CAN总线安全通信方法,可以在实现CAN总线的内部安全密钥协商、保密通信、安全密钥协商和密钥更新,以及与外部设备的安全认证接入,属于信息安全中的密码学领域。
本发明的另一个目的在于提出一种面向大规模车内网络的可扩展CAN总线安全通信装置。
为达到上述目的,本发明一方面实施例提出了一种面向大规模车内网络的可扩展CAN总线安全通信方法,包括以下步骤:利用总线广播机制实现CAN总线上接入的多个ECU设备间的通信,并利用密码学群认证机制对所述多个ECU设备进行多实体群认证,并协商得到总线设备与ECU设备间的第一会话密钥;基于全局计数器对所述CAN总线上的数据帧进行加密解密、对远程帧进行数据校验,以实现所述第一会话密钥的数据帧和远程帧传输;建立所述CAN总线包括的多个子网间的跨子网数据传输协议,以通过所述跨子网数据传输协议实现不同子网间设备的数据帧和远程帧的交换;在预设时间周期后更新所述第一会话密钥的同时,基于所述全局计数器保证会话的前向安全与后向安全;通过无证书签名体制实现车内总线设备与外部设备的双向认证,并在认证通过后完成第二会话密钥的协商。
本发明实施例的面向大规模车内网络的可扩展CAN总线安全通信方法,涵盖了总线内的初始密钥分发、密钥更新、加密通信以及外部设备接入等安全场景,恰当地利用总线的广播机制和密码学群认证机制有效简化了初始密钥分发阶段的通信流程,实现了密钥初始化的轻量级设计,对CAN总线上日益增长的设备数量具备良好可扩展性;使用全局计数器解决了数据加密通信面对延迟攻击的脆弱性;引入跨子网数据传输模块解决加密消息的加密消息不能跨网传输的缺陷;此外设计了外部设备接入的认证流程基于无双线性对的无证书签名机制,摆脱对于公钥基础设施机制的依赖、降低通信开销的同时,避免了复杂双线性对运算,满足了实时性需求。
另外,根据本发明上述实施例的面向大规模车内网络的可扩展CAN总线安全通信方法还可以具有以下附加的技术特征:
进一步地,在本发明的一个实施例中,所述利用总线广播机制实现CAN总线上接入的多个设备间的通信,并利用密码学群认证机制对所述多个设备进行多实体群认证,并协商得到第一会话密钥,包括:通过总线设备生成随机种子,使用预共享密钥计算所述种子的校验值,并将所述种子和所述校验值打包并发送到所述CAN总线;每个ECU设备使用所述预共享密钥验证所述校验值,并生成随机种子和新校验值,发送到所述CAN总线;在所述总线设备接收到所有ECU设备的响应后,利用中国剩余定理计算所有新随机种子的公共响应值,并将所述公共响应值发送到所述CAN总线上;每个ECU设备验证所述公共响应值,并在验证后根据所述公共响应值生成包括加密密钥和完整性密钥的第一会话密钥。
进一步地,在本发明的一个实施例中,所述基于全局计数器对所述CAN总线上的数据帧进行加密解密,包括:作为发送方的ECU设备使用所述会话密钥加密所述数据帧,同时使用所述完整性密钥保护消息的完整性,其中,加密过程包含一个计数器值,同一子网中的ECU设备同步一个全局计数器;作为接收方的ECU设备使用所述会话密钥和所述完整性密钥验证所述数据帧的完整性同时对所述数据帧进行解密,其中,不包括接收方的其他ECU设备的增加计数器,以同步全局计数器值。
进一步地,在本发明的一个实施例中,基于全局计数器对所述CAN总线上的远程帧进行数据校验,包括:当作为接收方的ECU设备需要来自作为发送方的ECU设备的消息时,所述作为接收方的ECU设备发送包含消息仲裁,并利用所述完整性密钥计算计数器校验值的远程帧;在所述作为发送方的ECU设备接收到消息后,如果校验值验证成功则对所述远程帧进行响应,所述作为发送方的ECU设备发送数据帧。
进一步地,在本发明的一个实施例中,所述建立所述CAN总线包括的多个子网间的跨子网数据传输协议,以通过所述跨子网数据传输协议实现不同子网间设备的数据帧和远程帧的交换,包括:将第一子网中作为的发送方ECU设备根据所述会话密钥和所述完整性密钥生成数据帧;当总线设备接收到跨网传输的仲裁消息时,触发转发机制,其中,所述总线设备验证所述仲裁消息,使用第二子网的会话秘钥加密、并计算得到新校验值,所述总线设备按照转发表将所述新校验值转发到其他子网,并转换不同子网的计数器值以及提供同步;作为接收方的ECU设备接收、验证和解密消息。
进一步地,在本发明的一个实施例中,所述在预设时间周期后更新所述第一会话密钥的同时,基于所述全局计数器保证会话的前向安全与后向安全,包括:当全局计数器达到预定值或释放外部设备时,所述总线设备发送一个数据帧,其中,所述数据帧包含一个新的随机种子,认证部分包含仲裁、随机种子、总线设备与所有ECU设备间预置的长期对称密钥、HMAC值,以保证数据的真实性;所有ECU设备验证所述数据帧,并根据所述HMAC值生成新会话密钥,并发送所有ECU设备的响应值以实现密钥确认;所述总线设备接收来所有ECU设备的响应值并进行验证,以实现所述新会话密钥的确认。
进一步地,在本发明的一个实施例中,所述通过无证书签名体制实现车内总线设备与外部设备的双向认证,并在认证通过后完成第二会话密钥的协商,包括:将所述外部设备生成的随机挑战值和身份信息发送给车辆内的总线设备;在所述总线设备接收到所述挑战值后,利用所述总线设备的私钥对所述挑战值进行签名作为响应,同时生成用于认证外部设备身份的随机挑战值,所述总线设备将响应值、所述随机挑战值、身份信息与公钥共同发送给所述外部设备;所述外部设备验证所述总线设备生成的签名,并对所述总线设备的随机挑战值进行签名作为响应,并将所述签名消息发送给所述总线设备;所述总线设备对所述外部设备发送的所述签名消息进行验证,并在验证通过后完成双向认证,根据所述总线设备和所述外部设备交互的挑战值协商生成会话密钥,以在所述总线设备和所述外部设备的通信中使用所述会话密钥保护消息的保密性和完整性。
为达到上述目的,本发明另一方面实施例提出了一种面向大规模车内网络的可扩展CAN总线安全通信装置,包括:初始密钥分发模块,用于利用总线广播机制实现CAN总线上接入的多个ECU设备间的通信,并利用密码学群认证机制对所述多个ECU设备进行多实体群认证,并协商得到总线设备与ECU设备间的第一会话密钥;数据帧传输模块,用于基于全局计数器对所述CAN总线上的数据帧进行加密解密,以实现所述第一会话密钥的数据帧传输;远程帧传输模块,用于基于全局计数器对所述CAN总线上的远程帧进行数据校验,以实现所述第一会话密钥的远程帧传输;跨子网传输模块,用于建立所述CAN总线包括的多个子网间的跨子网数据传输协议,以通过所述跨子网数据传输协议实现不同子网间设备的数据帧和远程帧的交换;会话密钥更新模块,用于在预设时间周期后更新所述第一会话密钥的同时,基于所述全局计数器保证会话的前向安全与后向安全;外部设备接入模块,用于通过无证书签名体制实现车内总线设备与外部设备的双向认证,并在认证通过后完成第二会话密钥的协商。
本发明实施例的面向大规模车内网络的可扩展CAN总线安全通信装置,涵盖了总线内的初始密钥分发、密钥更新、加密通信以及外部设备接入等安全场景,恰当地利用总线的广播机制和密码学群认证机制有效简化了初始密钥分发阶段的通信流程,实现了密钥初始化的轻量级设计,对CAN总线上日益增长的设备数量具备良好可扩展性;使用全局计数器解决了数据加密通信面对延迟攻击的脆弱性;引入跨子网数据传输模块解决加密消息的加密消息不能跨网传输的缺陷;此外设计了外部设备接入的认证流程基于无双线性对的无证书签名机制,摆脱对于公钥基础设施机制的依赖、降低通信开销的同时,避免了复杂双线性对运算,满足了实时性需求。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本发明一个实施例的面向大规模车内网络的可扩展CAN总线安全通信方法的流程图;
图2为根据本发明一个实施例的初始密钥分发流程图;
图3为根据本发明一个实施例的数据帧传输流程图;
图4为根据本发明一个实施例的远程帧传输流程图;
图5为根据本发明一个实施例的跨子网数据传输流程图;
图6为根据本发明一个实施例的会话密钥更新流程图;
图7为根据本发明一个实施例的外部设备接入流程图;
图8为根据本发明一个实施例的面向大规模车内网络的可扩展CAN总线安全通信装置的方框示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
本发明实施例的方案可以实现CAN总线上的加密通信及其初始密钥分发和密钥更新,同时满足对等实体认证、密钥新鲜性、前后向安全等安全需求,可以确保重放、伪造等攻击无法对通信各方及通信内容造成威胁及损失。此外,借助无证书签名方案,车辆可以以最小通信开销认证外部接入设备,并协商出会话密钥,为远程诊断、远程驾驶等应用场景需求提出接入认证的解决方案。
在介绍本发明实施例提出的面向大规模车内网络的可扩展CAN总线安全通信方法及装置之前,先简单介绍一下数学基础以及CAN总线相关基础概念,具体如下:
1、中国剩余定理:
设m1,…,k是k个两两互素的正整数则对任意的整数b1,…,k,同余式组
Figure BDA0002973094960000051
一定有解,且解是唯一的。
事实上,若令m=m1…mk,m=mi·i,i=1,…,k,则同余式的解可表示为x≡b1·1 ·1+2·2 ·2+…+k· k·k(modm),
其中Mi ·i≡1(modmi),i=1,…,k.
2、CAN总线相关基础概念
(1)CAN总线消息类型
CAN总线协议由Bosch公司于1981年为安全关键实时系统设计,是一种多主控和消息广播的串行总线,在工业自动化领域得到了广泛的应用。CAN总线通信通道由双绞线组成,其中一条标记为CAN高,另一条标记为CAN低。信令是利用两条导线之间的物理差分信令来实现的。显性水平用逻辑0表示,隐性水平用逻辑1表示。数据帧、远程帧、错误帧和过载帧是CAN总线中的四种主要帧类型。数据帧是最常见的消息类型,用于传输消息。ECU不必被动地接收通过总线广播的消息,还可以使用远程帧向其他ECU主动请求消息。CAN协议授权所有ECU在检测到错误时发送错误帧,除非它们处于总线断开模式。过载帧用于提供前一帧和后一帧数据或远程帧之间的额外延迟。
(2)车内CAN总线网络划分
通常,车内CAN网络分为三个子网络,例如动力传动子网包含安全关键性操作,包括控制发动机、制动器和底盘控制部件。为了保证实时通信速率,信息娱乐子网通常具有高带宽和稳定的通信能力。这些子网之间的ECU的通信通过网关ECU(GECU)来实现,网关ECU被认为比通常的ECU具备更强大的计算能力以及对车外CAN总线设备的通信能力。
另外,本发明基于CAN总线的安全通信方案,该方案由初始密钥协商、数据帧安全传输、远程帧安全传输、跨子网数据传输、会话密钥更新和外部设备介入六个部分实现。以下实施例中使用的符号如表1所示:
表1
Figure BDA0002973094960000061
下面将参照附图描述根据本发明实施例提出的面向大规模车内网络的可扩展CAN总线安全通信方法及装置,首先将参照附图描述根据本发明实施例提出的面向大规模车内网络的可扩展CAN总线安全通信方法。
图1是本发明一个实施例的面向大规模车内网络的可扩展CAN总线安全通信方法的流程图。
如图1所示,该面向大规模车内网络的可扩展CAN总线安全通信方法包括以下步骤:
在步骤S101中,利用总线广播机制实现CAN总线上接入的多个ECU设备间的通信,并利用密码学群认证机制对多个ECU设备进行多实体群认证,并协商得到总线设备与ECU设备间的第一会话密钥。
可以理解的是,本发明实施例在CAN总线设备开启后实现了设备间的多实体群认证并协商出会话密钥,以实现初始密钥分发。其中,总线设备为网关ECU,以下简称GECU。
在本发明的一个实施例中,利用总线广播机制实现CAN总线上接入的多个设备间的通信,并利用密码学群认证机制对多个设备进行多实体群认证,并协商得到第一会话密钥,包括:通过总线设备生成随机种子,使用预共享密钥计算种子的校验值,并将种子和校验值打包并发送到CAN总线;每个ECU设备使用预共享密钥验证校验值,并生成随机种子和新校验值,发送到CAN总线;在总线设备接收到所有ECU设备的响应后,利用中国剩余定理计算所有新随机种子的公共响应值,并将公共响应值发送到CAN总线上;每个ECU设备验证公共响应值,并在验证后根据公共响应值生成包括加密密钥和完整性密钥的第一会话密钥。
具体而言,如图2所示,初始密钥分发包括:
步骤1:协议由GECU发起。GECU生成一个随机种子,使用长期预共享密钥计算其校验值,然后将种子和它的校验打包并发送到总线。
步骤2:每个ECU将使用预共享密钥GK来验证校验值。然后,ECU将生成一个新的随机数及其校验值,发送到总线。
步骤3:GECU收到来自所有ECU的响应后,借助中国剩余定理可以计算协议中使用的所有随机种子的公共响应值,并将该响应值发送到总线上。
步骤4:各ECU可以验证最终的校验值并使用它来派生加密密钥(EK)和完整性密钥(AK)。
在步骤S102中,基于全局计数器对CAN总线上的数据帧进行加密解密、对远程帧进行数据校验,以实现第一会话密钥的数据帧和远程帧传输。
可以理解的是,针对CAN总线上的数据帧和远程帧规定了基于全局计数器的加解密和数据校验流程,以实现数据帧和远程帧传输。
在本发明的一个实施例中,基于全局计数器对CAN总线上的数据帧进行加密解密,包括:作为发送方的ECU设备使用会话密钥加密数据帧,同时使用完整性密钥保护消息的完整性,其中,加密过程包含一个计数器值,同一子网中的ECU设备同步一个全局计数器;作为接收方的ECU设备使用会话密钥和完整性密钥验证数据帧的完整性同时对数据帧进行解密,其中,不包括接收方的其他ECU设备的增加计数器,以同步全局计数器值。
具体而言,如图3所示,数据帧传输包括:
步骤5:发送方ECU可以使用会话密钥EK来加密消息,同时使用AK保护消息的完整性。为了防止对数据帧的重放攻击,加密过程需要包含一个计数器值CTR,同一子网中的ECU共同同步一个全局计数器。
步骤6:接收方ECU可以使用协商出的AK和EK验证消息的完整性同时对消息进行解密。除接收方ECU外,其他ECU也会增加其计数器以保证全局计数器值的同步。
进一步地,在本发明的一个实施例中,基于全局计数器对CAN总线上的远程帧进行数据校验,包括:当作为接收方的ECU设备需要来自作为发送方的ECU设备的消息时,作为接收方的ECU设备发送包含消息仲裁,并利用完整性密钥计算计数器校验值的远程帧;在作为发送方的ECU设备接收到消息后,如果校验值验证成功则对远程帧进行响应,作为发送方的ECU设备发送数据帧。
具体而言,如图4所示,远程帧传输包括:
步骤7:远程帧传输类似于数据帧传输。主要区别在于远程帧没有数据字段,因此不涉及消息的加解密。当接收方ECU需要来自发送方ECU的消息时,前者只需发送包含消息仲裁ID和使用AK计算的计数器校验值的远程帧。
步骤8:后者接收到消息后,如果校验值验证成功则对该远程帧进行响应。随后,发送方ECU可以按照数据帧传输模块的流程发送数据帧。
在步骤S103中,建立CAN总线包括的多个子网间的跨子网数据传输协议,以通过跨子网数据传输协议实现不同子网间设备的数据帧和远程帧的交换。
需要说明的是,车内网络中的CAN总线被分为不同的子网络,如动力传动系统、底盘、安全和信息娱乐部分。各子网相对独立,通过一个中心网关GECU连接。然而,跨子网数据传输的需求仍然存在。在初始密钥分发模块中,会话密钥建立在它们自己的子网内,不同子网中的ECU不能直接通信。同时,不同子网中的计数器也不可能同步。因此,加密通信需要一种跨网的数据传输协议。
在本发明的一个实施例中,建立CAN总线包括的多个子网间的跨子网数据传输协议,以通过跨子网数据传输协议实现不同子网间设备的数据帧和远程帧的交换,包括:将第一子网中作为的发送方ECU设备根据会话密钥和完整性密钥生成数据帧;当总线设备接收到跨网传输的仲裁消息时,触发转发机制,其中,总线设备验证仲裁消息,使用第二子网的会话秘钥加密、并计算得到新校验值,总线设备按照转发表将新校验值转发到其他子网,并转换不同子网的计数器值以及提供同步;作为接收方的ECU设备接收、验证和解密消息。
具体而言,如图5所示,跨子网传输包括:
步骤9:首先,来自子网i的发送方ECU按照数据帧传输模块规定的流程使用会话密钥EK和AK生成数据帧。
步骤10:当GECU接收到某个需要跨网传输的仲裁ID时,触发转发机制。GECU验证消息,使用子网j的会话密钥重新加密并重新计算校验值。GECU按照转发表将其转发到其他子网。GECU可以转换来自不同子网的计数器值并提供同步。
步骤11:最终,接收方ECU可以按照数据帧传输模块规定的流程进行接收,并验证和解密消息。
在步骤S104中,在预设时间周期后更新第一会话密钥的同时,基于全局计数器保证会话的前向安全与后向安全。
可以理解的是,本发明实施例在预设时间周期后更新会话密钥同时保证会话的前向安全与后向安全。
在本发明的一个实施例中,在预设时间周期后更新第一会话密钥的同时,基于全局计数器保证会话的前向安全与后向安全,包括:当全局计数器达到预定值或释放外部设备时,总线设备发送一个数据帧,其中,数据帧包含一个新的随机种子,认证部分包含仲裁、随机种子、总线设备与所有ECU设备间预置的长期对称密钥、HMAC值,以保证数据的真实性;所有ECU设备验证数据帧,并根据HMAC值生成新会话密钥,并发送所有ECU设备的响应值以实现密钥确认;总线设备接收来所有ECU设备的响应值并进行验证,以实现新会话密钥的确认。
具体而言,如图6所示,密钥更新协议包括:
步骤12:如图5所示,会话密钥更新协议由GECU发起。当全局计数器达到预定值或释放外部设备时,GECU将发送一个数据帧。数据域包含一个新的随机种子,认证部分包含仲裁ID、随机种子和GK的HMAC值,以保证数据的真实性。
步骤13:所有其他ECU将验证此消息,并从该HMAC值派生新的会话密钥。然后,发送各ECU的响应值以实现密钥确认。
步骤14:GECU接收来自各ECU的响应值并验证以实现新会话密钥的确认。
由此,本发明实施例通过上述步骤S101-S104可以完成车内各ECU实体的身份认证和保密通信,涵盖了初始密钥协商、数据加密、会话密钥更新等总线内部的安全机制,实现了内部ECU实体的双向认证、前向后向安全以及总线传输数据的保密性和完整性保护。
在步骤S105中,通过无证书签名体制实现车内总线设备与外部设备的双向认证,并在认证通过后完成第二会话密钥的协商。
可以理解的是,本发明实施例可以实现无证书条件下车内总线设备与外部设备的双向认证,同时完成会话密钥的协商。
在本发明的一个实施例中,通过无证书签名体制实现车内总线设备与外部设备的双向认证,并在认证通过后完成第二会话密钥的协商,包括:将外部设备生成的随机挑战值和身份信息发送给车辆内的总线设备;在总线设备接收到挑战值后,利用总线设备的私钥对挑战值进行签名作为响应,同时生成用于认证外部设备身份的随机挑战值,总线设备将响应值、随机挑战值、身份信息与公钥共同发送给外部设备;外部设备验证总线设备生成的签名,并对总线设备的随机挑战值进行签名作为响应,并将签名消息发送给总线设备;总线设备对外部设备发送的签名消息进行验证,并在验证通过后完成双向认证,根据总线设备和外部设备交互的挑战值协商生成会话密钥,以在总线设备和外部设备的通信中使用会话密钥保护消息的保密性和完整性。
具体而言,如图7所示,外部设备接入协议包括:
步骤15:本步骤属于外部设备或车辆的注册阶段。外部设备或车辆在出厂前由密钥生成中心(KGC)为其颁发公钥和私钥。由于公私钥对由KGC生成,因此不需要借助公钥基础设施PKI系统保证公钥的可信性,数字签名的验证者可以使用KGC的主公钥直接对签名进行验证。
步骤16:以下4个步骤属于外部设备的接入阶段。首先由外部设备生成一个随机挑战值,并将该挑战值和身份ID发送给车辆内的GECU。
步骤17:GECU在接收到挑战值后,使用自己的私钥对该挑战值进行签名作为响应,同时也生成一个随机挑战值用于认证外部设备的身份。GECU将响应值、挑战值、身份ID与公钥一同发送给外部设备。
步骤18:外部设备对GECU生成的签名进行验证,同时对GECU的挑战值进行签名作为响应,最终将签名消息返回给GECU。
步骤19:GECU对外部设备发来的签名进行验证,若验证通过则双方完成双向认证。GECU和外部设备可以通过协议中交互的挑战值协商生成会话密钥。在随后的通信中可以使用会话密钥保护消息的保密性和完整性。
由此,本发明实施例通过步骤S105提供了网关ECU(GECU)对外部设备的双向认证与密钥协商,外部设备接入机制使得外部设备可以与车内总线建立互信并协商出会话密钥,实现车内外数据的安全传输。
综上,本发明提供了一套完整的CAN总线安全通信协议套件,可用于CAN总线内部的保密通信、密钥建立与密钥更新,以及与外部设备的密钥建立过程,并具有以下优点:
1)该方案使用基于全局计数器方案,避免了现有CAN总线安全协议中存在延迟重放攻击的漏洞,能够抵御这种攻击。
2)提出了一种基于中国剩余定理的广播的初始密钥分发协议,减少了初始会话密钥分配过程中的通信开销,面向更多ECU连接的CAN总线提供良好可扩展性。
3)在协议族中引入了跨子网数据传输协议,使来自不同子网的ECU能够交换数据帧和远程帧,从而组成更复杂的车内网络。
4)在外部设备接入的密钥建立环节中,通过引入基于椭圆曲线的无证书签名体制,提出以汽车生产厂商作为密钥生成中心的解决方案,解决了公钥可信性,无需再依赖公钥基础设施PKI构建的可信链,使协议更为轻量级。
下面将通过一个具体实施例对面向大规模车内网络的可扩展CAN总线安全通信方法进行进一步阐述,具体如下:
模块一:初始密钥协商模块具体由四个步骤实现:
步骤1:GECU首先发送一个随机整数Seed作为对其他ECU的挑战值,并在其后附上包含其ID和Seed的Hash值HGK(IDGECU||Seed),确保传输值的完整性。
步骤2:处于同一子网内的每个ECUi在收到挑战值Seed后,使用其校验值进行验证,随后在本地再生成一个随机整数Ri和随机大素数Pi。将收到的随机值Seed和新生成的两个随机值Ri和Pi,一起使用预共享密钥GK生成校验值MACi=HGK(Ki||Seed||Ri||Pi),其中Ki是ECUi与GECU间的共享秘密消息,用于对ECUi的消息进行认证。ECUi最终将Ri,Pi和MACi发送到总线上。
步骤3:GECU对来自总线上每个ECU发来的每条消息进行验证,重新计算MAC′i=HGK(Ki||Seed||R′i||P′i)与收到的MACi进行对比,若对比一致则对ECUi的身份认证成功,同时确认了Ri和Pi的完整性。针对来自每个ECU的消息,GECU生成Hashi=HGK(Ki||Seed||Ri)作为响应值,利用中国剩余定理可以得到
Figure BDA0002973094960000111
作为对所有ECU共用的响应值。其中
Figure BDA0002973094960000112
Zi=Z/Pi
Figure BDA0002973094960000113
GECU最终将S发送到总线上。
步骤4:总线上各ECU接收到S后进行验证,若S(mod Pi)=Hashi,则说明GECU的身份验证成功,双向认证完成。ECU和GECU均可通过密钥生成算法EK||AK=HGK(S)协商出会话密钥,其中加密密钥为EK,完整性保护密钥为AK。
模块二:数据帧安全传输模块具体由两个步骤实现:
步骤5:CAN总线在发送数据帧消息时应使用会话密钥进行加密。通信时需要在所有ECU间维护一个同步的全局计数器CTR。发送方ECU使用
Figure BDA0002973094960000114
由明文M加密产生密文C,同时使用完整性保护密钥生成其消息校验值MAC=HAK(IDS||C||CTR),其中IDS为发送方ECU的身份ID。发送方ECU最终将密文C和校验值MAC一同发送到总线上,并更新本地的计数器值CTR=CTR+1。
步骤6:接收方ECU首先计算MAC′=HAK(IDS||C′||CTR),对比其与接收到的校验值MAC是否一致。若不一致则触发CAN总线固有的错误机制,若一致则进行解密得到明文
Figure BDA0002973094960000115
同时更新本地的计数器值CTR=CTR+1。为保证全局计数器的同步,其他非接收方的ECU在收到一条消息后也要对本地的计数器值进行更新。
模块三:远程帧安全传输模块具体由两个步骤实现:
步骤7:由于远程帧中不含数据域内容,因此只需对远程帧的完整性进行保护。发送方ECU计算消息校验值MAC=HAK(RTR Frame||IDr||CTR),其中RTRFrame为远程帧整体,IDr为消息接收方ID。最终发送方ECU将RTR Frame与校验值MAC一同发送到总线上,并更新本地的计数器值CTR=CTR+1。
步骤8:接收方ECU首先校验MAC值的正确性,若MAC′=HAK(RTR Frame′||IDr||CTR)与MAC相等则验证成功,同时更新本地的计数器值CTR=CTR+1。为保证同步,其他非接收方的ECU在收到消息后也要对计数器值进行更新。
模块四:跨子网数据传输模块具体由三个步骤实现:
步骤9:处于子网i中的发送方ECU按照与步骤5中相同的流程生成密文
Figure BDA0002973094960000116
Figure BDA0002973094960000117
和校验值
Figure BDA0002973094960000118
将以上两值发送到总线上后,更新本地计数器值。
步骤10:由于跨子网的会话密钥和计数器值不能互通,需要GECU进行中转,转换为使用子网j中会话密钥加密的消息,即
Figure BDA0002973094960000121
同时将对校验值也要进行转换,得到
Figure BDA0002973094960000122
最后,GECU将C′和MAC′转发到子网j的总线上,并更新CTRi和CTRj的计数器值。
步骤11:位于子网j的接收方ECU重新计算MAC′的值并与收到的MAC′进行比较,若一致则通过消息验证。随后将消息明文解密出来
Figure BDA0002973094960000123
并对本地计数器更新CTRj=CTRj+1。
模块五:会话密钥更新模块具体由三个步骤实现:
步骤12:会话密钥更新过程由GECU发起。GECU首先生成一个新鲜随机值Seedk+1并使用本轮的会话密钥AK计算包含该随机值的校验值MAC=HAK(IDGECU|Seedk+1||GK),将预共享密钥GK置入校验之中可以有效防止攻击者对校验值的伪造。随后,GECU将Seedk+1和MAC一同发送到总线上。
步骤13:总线上的其他各ECU收到消息后首先对校验值进行验证,验证成功后使用新鲜的随机值生成新的会话密钥EKk+1||AKk+1=HGK(Seedk+1),并重置本地计数器。随后ECU使用新的会话密钥生成响应校验值
Figure BDA0002973094960000124
并将该响应值发送到总线上。
步骤14:GECU收到来自各ECU的相应之后依次重新计算并比较,若结果相同则验证成功。GECU重置本地计数器并使用新的会话密钥进行加密通信。
模块六:外部设备接入模块,可分为注册和接入两个子模块,具体由5个步骤实现:
步骤15:注册阶段发生在车辆和外部设备出厂之前。在获得了车辆或设备的身份ID后,密钥生成中心(KGC)为其生成一对公私钥对。生成过程为,KGC根据系统参数中已经公布了乘法群
Figure BDA0002973094960000125
的素数阶p和生成元P,首先生成随机值
Figure BDA0002973094960000126
随后使用椭圆曲线上的运算得到公钥Yi=ri·P。计算Yi的杂凑值hi=H1(IDi,Yi),并使用主私钥s计算得到私钥yi=ri+shi。最终KGC将公私钥对(yi,Yi)发送给车辆或设备,完成注册过程。
步骤16:在实际的接入过程中,接入首先由外部设备发起。外部设备首先生成随机值a,计算VE=a·P作为挑战值,并将自己的身份IDE和挑战值发送给GECU。
步骤17:GECU在收到消息后,生成随机值q,计算VG=q·P作为挑战值。随后计算外部设备的响应值hE2=H1(IDE,VE),并使用自己的私钥yG对响应值签名得到SG=q+yGhE2。最终GECU将公钥YG,身份IDG,挑战值VG以及数字签名SG发送给外部设备。
步骤18:外部设备在收到消息后,重新计算hE2=H1(IDE,Vx)并利用GECU公钥YG计算hG1=H1(IDG,YG)。外部设备对GECU的签名进行验证,若SGP=VG+hE(YG+hG1Ppub)则通过对GECU的认证,其中Ppub是KGC的主公钥。随后,外部设备计算响应值hG2=H1(IDG,VG),并用自己的私钥对响应值签名SE=a+yEhG2。最终将本方公钥YE和签名值SE发送给GECU。
步骤19:GECU计算hE1=H1(IDE,YE)后可以对外部设备的签名进行验证,若SEP=VE+hG(YE+hE1Ppub)则验证通过。至此完成外部设备与GECU间的双向认证,GECU端可以通过EK||AK=qVE生成会话密钥,外部设备端可通过EK||AK=aVG生成会话密钥,其后的会话内容可使用会话密钥进行保密通信。
根据本发明实施例提出的面向大规模车内网络的可扩展CAN总线安全通信方法,涵盖了总线内的初始密钥分发、密钥更新、加密通信以及外部设备接入等安全场景,恰当地利用总线的广播机制和密码学群认证机制有效简化了初始密钥分发阶段的通信流程,实现了密钥初始化的轻量级设计,对CAN总线上日益增长的设备数量具备良好可扩展性;使用全局计数器解决了数据加密通信面对延迟攻击的脆弱性;引入跨子网数据传输模块解决加密消息的加密消息不能跨网传输的缺陷;此外设计了外部设备接入的认证流程基于无双线性对的无证书签名机制,摆脱对于公钥基础设施机制的依赖、降低通信开销的同时,避免了复杂双线性对运算,满足了实时性需求。
其次参照附图描述根据本发明实施例提出的面向大规模车内网络的可扩展CAN总线安全通信装置。
图8是本发明一个实施例的面向大规模车内网络的可扩展CAN总线安全通信装置。
如图8所示,该面向大规模车内网络的可扩展CAN总线安全通信装置10包括:初始密钥分发模块100、数据帧传输模块200、远程帧传输模块300、跨子网传输模块400、会话密钥更新模块500和外部设备接入模块600。
其中,初始密钥分发模块100用于利用总线广播机制实现CAN总线上接入的多个ECU设备间的通信,并利用密码学群认证机制对多个ECU设备进行多实体群认证,并协商得到总线设备与ECU设备间的第一会话密钥;数据帧传输模块200用于基于全局计数器对CAN总线上的数据帧进行加密解密,以实现第一会话密钥的数据帧传输;远程帧传输模块300用于基于全局计数器对CAN总线上的远程帧进行数据校验,以实现第一会话密钥的远程帧传输;跨子网传输模块400用于建立CAN总线包括的多个子网间的跨子网数据传输协议,以通过跨子网数据传输协议实现不同子网间设备的数据帧和远程帧的交换;会话密钥更新模块500用于在预设时间周期后更新第一会话密钥的同时,基于全局计数器保证会话的前向安全与后向安全;外部设备接入模块600用于通过无证书签名体制实现车内总线设备与外部设备的双向认证,并在认证通过后完成第二会话密钥的协商。
可以理解的是,本发明实施例协议族共包含六个模块,其中初始密钥分发模块和会话密钥更新模块用于会话密钥的生成和更新,数据帧传输模块、远程帧传输模块和跨子网传输模块规定了安全数据传输的加密机制。上述五个模块一起可以完成车内各ECU实体的身份认证和保密通信。而最后的外部设备接入模块提供了网关ECU(GECU)对外部设备的双向认证与密钥协商。
需要说明的是,前述对面向大规模车内网络的可扩展CAN总线安全通信方法实施例的解释说明也适用于该实施例的面向大规模车内网络的可扩展CAN总线安全通信装置,此处不再赘述。
根据本发明实施例提出的面向大规模车内网络的可扩展CAN总线安全通信装置,涵盖了总线内的初始密钥分发、密钥更新、加密通信以及外部设备接入等安全场景,恰当地利用总线的广播机制和密码学群认证机制有效简化了初始密钥分发阶段的通信流程,实现了密钥初始化的轻量级设计,对CAN总线上日益增长的设备数量具备良好可扩展性;使用全局计数器解决了数据加密通信面对延迟攻击的脆弱性;引入跨子网数据传输模块解决加密消息的加密消息不能跨网传输的缺陷;此外设计了外部设备接入的认证流程基于无双线性对的无证书签名机制,摆脱对于公钥基础设施机制的依赖、降低通信开销的同时,避免了复杂双线性对运算,满足了实时性需求。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不是必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (4)

1.一种面向大规模车内网络的可扩展CAN总线安全通信方法,其特征在于,包括以下步骤:
利用总线广播机制实现CAN总线上接入的多个ECU设备间的通信,并利用密码学群认证机制对所述多个ECU设备进行多实体群认证,并协商得到总线设备与ECU设备间的第一会话密钥;
基于全局计数器对所述CAN总线上的数据帧进行加密解密、对远程帧进行数据校验,以实现所述第一会话密钥的数据帧和远程帧传输;
建立所述CAN总线包括的多个子网间的跨子网数据传输协议,以通过所述跨子网数据传输协议实现不同子网间设备的数据帧和远程帧的交换;
在预设时间周期后更新所述第一会话密钥的同时,基于所述全局计数器保证会话的前向安全与后向安全;以及
通过无证书签名体制实现车内总线设备与外部设备的双向认证,并在认证通过后完成第二会话密钥的协商;
所述利用总线广播机制实现CAN总线上接入的多个设备间的通信,并利用密码学群认证机制对所述多个设备进行多实体群认证,并协商得到第一会话密钥,包括:
通过总线设备生成随机种子,使用预共享密钥计算所述种子的校验值,并将所述种子和所述校验值打包并发送到所述CAN总线;
每个ECU设备使用所述预共享密钥验证所述校验值,并生成随机种子和新校验值,发送到所述CAN总线;
在所述总线设备接收到所有ECU设备的响应后,利用中国剩余定理计算所有新随机种子的公共响应值,并将所述公共响应值发送到所述CAN总线上;
每个ECU设备验证所述公共响应值,并在验证后根据所述公共响应值生成包括加密密钥和完整性密钥的第一会话密钥;
所述基于全局计数器对所述CAN总线上的数据帧进行加密解密,包括:
作为发送方的ECU设备使用所述会话密钥加密所述数据帧,同时使用所述完整性密钥保护消息的完整性,其中,加密过程包含一个计数器值,同一子网中的ECU设备同步一个全局计数器;
作为接收方的ECU设备使用所述会话密钥和所述完整性密钥验证所述数据帧的完整性同时对所述数据帧进行解密,其中,除所述接收方的ECU设备增加计数器值,以同步全局计数器值;
所述建立所述CAN总线包括的多个子网间的跨子网数据传输协议,以通过所述跨子网数据传输协议实现不同子网间设备的数据帧和远程帧的交换,包括:
第一子网中作为发送方的ECU设备根据所述会话密钥和所述完整性密钥生成数据帧;
当总线设备接收到跨网传输的仲裁消息时,触发转发机制,其中,所述总线设备验证所述仲裁消息,使用第二子网的会话秘钥加密、并计算得到新校验值,所述总线设备按照转发表将所述新校验值转发到其他子网,并转换不同子网的计数器值以及提供同步;
作为接收方的ECU设备接收、验证和解密消息;
所述在预设时间周期后更新所述第一会话密钥的同时,基于所述全局计数器保证会话的前向安全与后向安全,包括:
当全局计数器达到预定值或释放外部设备时,所述总线设备发送一个数据帧,其中,所述数据帧包含一个新的随机种子,认证部分包含仲裁、随机种子、总线设备与所有ECU设备间预置的长期对称密钥、HMAC值,以保证数据的真实性;
所有ECU设备验证所述数据帧,并根据所述HMAC值生成新会话密钥,并发送所有ECU设备的响应值以实现密钥确认;
所述总线设备接收来所有ECU设备的响应值并进行验证,以实现所述新会话密钥的确认。
2.根据权利要求1所述的方法,其特征在于,基于全局计数器对所述CAN总线上的远程帧进行数据校验,包括:
当作为接收方的ECU设备需要来自作为发送方的ECU设备的消息时,所述作为接收方的ECU设备发送包含消息仲裁,并利用所述完整性密钥计算计数器校验值的远程帧;
在所述作为发送方的ECU设备接收到消息后,如果校验值验证成功则对所述远程帧进行响应,所述作为发送方的ECU设备发送数据帧。
3.根据权利要求1所述的方法,其特征在于,所述通过无证书签名体制实现车内总线设备与外部设备的双向认证,并在认证通过后完成第二会话密钥的协商,包括:
将所述外部设备生成的随机挑战值和身份信息发送给车辆内的总线设备;
在所述总线设备接收到所述挑战值后,利用所述总线设备的私钥对所述挑战值进行签名作为响应,同时生成用于认证外部设备身份的随机挑战值,所述总线设备将响应值、所述随机挑战值、身份信息与公钥共同发送给所述外部设备;
所述外部设备验证所述总线设备生成的签名,并对所述总线设备的随机挑战值进行签名作为响应,并将所述签名消息发送给所述总线设备;
所述总线设备对所述外部设备发送的所述签名消息进行验证,并在验证通过后完成双向认证,根据所述总线设备和所述外部设备交互的挑战值协商生成会话密钥,以在所述总线设备和所述外部设备的通信中使用所述会话密钥保护消息的保密性和完整性。
4.一种面向大规模车内网络的可扩展CAN总线安全通信装置,其特征在于,包括:
初始密钥分发模块,用于利用总线广播机制实现CAN总线上接入的多个ECU设备间的通信,并利用密码学群认证机制对所述多个ECU设备进行多实体群认证,并协商得到总线设备与ECU设备间的第一会话密钥;
数据帧传输模块,用于基于全局计数器对所述CAN总线上的数据帧进行加密解密,以实现所述第一会话密钥的数据帧传输;
远程帧传输模块,用于基于全局计数器对所述CAN总线上的远程帧进行数据校验,以实现所述第一会话密钥的远程帧传输;
跨子网传输模块,用于建立所述CAN总线包括的多个子网间的跨子网数据传输协议,以通过所述跨子网数据传输协议实现不同子网间设备的数据帧和远程帧的交换;
会话密钥更新模块,用于在预设时间周期后更新所述第一会话密钥的同时,基于所述全局计数器保证会话的前向安全与后向安全;以及
外部设备接入模块,用于通过无证书签名体制实现车内总线设备与外部设备的双向认证,并在认证通过后完成第二会话密钥的协商;
所述利用总线广播机制实现CAN总线上接入的多个设备间的通信,并利用密码学群认证机制对所述多个设备进行多实体群认证,并协商得到第一会话密钥,包括:
通过总线设备生成随机种子,使用预共享密钥计算所述种子的校验值,并将所述种子和所述校验值打包并发送到所述CAN总线;
每个ECU设备使用所述预共享密钥验证所述校验值,并生成随机种子和新校验值,发送到所述CAN总线;
在所述总线设备接收到所有ECU设备的响应后,利用中国剩余定理计算所有新随机种子的公共响应值,并将所述公共响应值发送到所述CAN总线上;
每个ECU设备验证所述公共响应值,并在验证后根据所述公共响应值生成包括加密密钥和完整性密钥的第一会话密钥;
所述基于全局计数器对所述CAN总线上的数据帧进行加密解密,包括:
作为发送方的ECU设备使用所述会话密钥加密所述数据帧,同时使用所述完整性密钥保护消息的完整性,其中,加密过程包含一个计数器值,同一子网中的ECU设备同步一个全局计数器;
作为接收方的ECU设备使用所述会话密钥和所述完整性密钥验证所述数据帧的完整性同时对所述数据帧进行解密,其中,除接收方的其他ECU设备增加计数器值,以同步全局计数器值;
所述建立所述CAN总线包括的多个子网间的跨子网数据传输协议,以通过所述跨子网数据传输协议实现不同子网间设备的数据帧和远程帧的交换,包括:
第一子网中作为发送方的ECU设备根据所述会话密钥和所述完整性密钥生成数据帧;
当总线设备接收到跨网传输的仲裁消息时,触发转发机制,其中,所述总线设备验证所述仲裁消息,使用第二子网的会话秘钥加密、并计算得到新校验值,所述总线设备按照转发表将所述新校验值转发到其他子网,并转换不同子网的计数器值以及提供同步;
作为接收方的ECU设备接收、验证和解密消息;
所述在预设时间周期后更新所述第一会话密钥的同时,基于所述全局计数器保证会话的前向安全与后向安全,包括:
当全局计数器达到预定值或释放外部设备时,所述总线设备发送一个数据帧,其中,所述数据帧包含一个新的随机种子,认证部分包含仲裁、随机种子、总线设备与所有ECU设备间预置的长期对称密钥、HMAC值,以保证数据的真实性;
所有ECU设备验证所述数据帧,并根据所述HMAC值生成新会话密钥,并发送所有ECU设备的响应值以实现密钥确认;
所述总线设备接收来所有ECU设备的响应值并进行验证,以实现所述新会话密钥的确认。
CN202110268523.4A 2021-03-12 2021-03-12 面向大规模车内网络的可扩展can总线安全通信方法及装置 Expired - Fee Related CN113132098B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110268523.4A CN113132098B (zh) 2021-03-12 2021-03-12 面向大规模车内网络的可扩展can总线安全通信方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110268523.4A CN113132098B (zh) 2021-03-12 2021-03-12 面向大规模车内网络的可扩展can总线安全通信方法及装置

Publications (2)

Publication Number Publication Date
CN113132098A CN113132098A (zh) 2021-07-16
CN113132098B true CN113132098B (zh) 2022-08-05

Family

ID=76772991

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110268523.4A Expired - Fee Related CN113132098B (zh) 2021-03-12 2021-03-12 面向大规模车内网络的可扩展can总线安全通信方法及装置

Country Status (1)

Country Link
CN (1) CN113132098B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113938304B (zh) * 2021-10-14 2024-02-13 吉林大学 一种基于can总线的数据加密传输方法
CN114584385B (zh) * 2022-03-09 2023-02-03 西安电子科技大学 一种车内网络安全通信方法、计算机设备、介质及终端
CN114584384B (zh) * 2022-03-09 2022-12-09 西安电子科技大学 车内异构网络安全通信控制方法、计算机设备及存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9769658B2 (en) * 2013-06-23 2017-09-19 Shlomi Dolev Certificating vehicle public key with vehicle attributes
US9380044B2 (en) * 2014-09-10 2016-06-28 Cisco Technology, Inc. Supporting differentiated secure communications among heterogeneous electronic devices
CN104767618B (zh) * 2015-04-03 2018-02-09 清华大学 一种基于广播的can总线认证方法及系统
US10285051B2 (en) * 2016-09-20 2019-05-07 2236008 Ontario Inc. In-vehicle networking
CN106790053B (zh) * 2016-12-20 2019-08-27 江苏大学 一种can总线中ecu安全通信的方法
US10701102B2 (en) * 2017-10-03 2020-06-30 George Mason University Hardware module-based authentication in intra-vehicle networks
CN110086622A (zh) * 2018-01-25 2019-08-02 南京汽车集团有限公司 一种智能网联环境下车内网络安全架构设计
US10991175B2 (en) * 2018-12-27 2021-04-27 Beijing Voyager Technology Co., Ltd. Repair management system for autonomous vehicle in a trusted platform
US20220131839A1 (en) * 2019-04-25 2022-04-28 Deere & Company Systems, methods and controllers for secure communications
CN110377002B (zh) * 2019-06-06 2021-07-30 西安电子科技大学 一种自适应的车内can总线安全控制方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"A secure protocol for session keys establishment between ECUs in the CAN bus";Samir Fassak et al.;《2017 International Conference on Wireless Networks and Mobile Communications (WINCOM)》;20171225;全文 *
"Practical Sender Authentication Scheme for In-Vehicle CAN With Efficient Key Management";Taek-Young Youn et al.;《IEEE Access》;20200504;第8卷;全文 *

Also Published As

Publication number Publication date
CN113132098A (zh) 2021-07-16

Similar Documents

Publication Publication Date Title
US10965450B2 (en) In-vehicle networking
US10742409B2 (en) Legitimacy verification of a node in a distributed network
CN106533655B (zh) 一种车内网ecu安全通信的方法
Radu et al. Leia: Al ightweight auth e nticat i on protocol for can
CN113132098B (zh) 面向大规模车内网络的可扩展can总线安全通信方法及装置
Hazem et al. Lcap-a lightweight can authentication protocol for securing in-vehicle networks
EP3386163B1 (en) Apparatuses and methods for use in a can system
CN106664311B (zh) 支持异构电子设备之间差异化的安全通信
CN108259465B (zh) 一种智能汽车内部网络的认证加密方法
Fassak et al. A secure protocol for session keys establishment between ECUs in the CAN bus
Zelle et al. On using TLS to secure in-vehicle networks
KR20130083619A (ko) 차량용 데이터의 인증 및 획득 방법
CN112636923B (zh) 一种工程机械can设备身份认证方法及系统
CN108933665B (zh) 轻量级V2I组通信身份验证协议应用在VANETs中的方法
Püllen et al. Using implicit certification to efficiently establish authenticated group keys for in-vehicle networks
CN112448812A (zh) 用于车辆与外部服务器的受保护的通信的方法
Carvajal-Roca et al. A semi-centralized dynamic key management framework for in-vehicle networks
CN113852632A (zh) 基于sm9算法的车辆身份认证方法、系统、装置及存储介质
Siddiqui et al. A secure communication framework for ecus
CN113839782B (zh) 基于puf的车内网络can总线轻量级安全通信方法
CN111245613A (zh) 一种基于身份的车内外网络三级密钥协商方法
Giri et al. An integrated safe and secure approach for authentication and secret key establishment in automotive Cyber-Physical systems
CN114584385A (zh) 一种车内网络安全通信方法、计算机设备、介质及终端
Shannon et al. Blockchain based distributed key provisioning and secure communication over CAN FD
Giri A dependable and secure approach for secret key establishment and operation in automotive CPS

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20220805

CF01 Termination of patent right due to non-payment of annual fee