CN110603786A - 用于在控域网(can)之上减轻对密钥协商的基于电压的攻击的方法 - Google Patents
用于在控域网(can)之上减轻对密钥协商的基于电压的攻击的方法 Download PDFInfo
- Publication number
- CN110603786A CN110603786A CN201880030258.2A CN201880030258A CN110603786A CN 110603786 A CN110603786 A CN 110603786A CN 201880030258 A CN201880030258 A CN 201880030258A CN 110603786 A CN110603786 A CN 110603786A
- Authority
- CN
- China
- Prior art keywords
- node
- communication medium
- shared communication
- transceiver
- voltage
- 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.)
- Granted
Links
Classifications
-
- 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
- H04L12/40039—Details regarding the setting of the power status of a node according to activity on the bus
-
- 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
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- 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/1475—Passive attacks, e.g. eavesdropping or listening without modification of the traffic monitored
-
- 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/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key 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
-
- 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/0875—Generation of secret information including derivation or calculation of cryptographic keys or passwords based on channel impulse response [CIR]
-
- 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/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/06—Time-space-time switching
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/08—Randomization, e.g. dummy operations or using noise
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/84—Vehicles
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Small-Scale Networks (AREA)
- Dc Digital Transmission (AREA)
Abstract
已经开发了一种操作使用共享通信介质的通信网络中的至少一个节点的方法。所述方法包括:利用第一节点中的控制器将第一节点中的第一电位计的电阻调整至第一节点中的控制器随机确定的第一电阻水平,第一节点中的第一电位计连接到第一节点中的收发器的输出以及连接到共享通信介质;以及利用第一节点中的收发器,通过连接到共享通信介质的输出传送第一数据位,其中第一电位计产生第一电阻水平。
Description
优先权要求
本申请要求题目为“Method to Mitigate Voltage Based Attacks on KeyAgreement over Controller Area Network (CAN)”并且于2017年3月8日提交的美国临时申请No.62/468,705的权益,其全部内容通过引用明确地并入本文。
技术领域
本公开总地涉及网络通信的领域,并且更具体地,涉及用于使用共享通信介质的安全通信的系统和方法。
背景技术
控域网(CAN)总线通信标准提供稳健的通信接口,其用于宽范围的应用中,所述应用包括但不限于汽车和其它运输载具、建筑物自动化、工业系统、机器人,以及需要通过使用共享通信介质而在嵌入式数字设备之间的通信的其它领域。许多CAN总线实施例采用被称为CAN-高(CANH)和CAN-低(CANL)的两个导电线,以及被称为“节点”的电子设备,所述“节点”使用CANH和CANL导线作为共享通信介质以通过使用经标准化的数据帧格式来传送和接收数据。CAN总线典型地利用线缆的一对经屏蔽或未经屏蔽的双绞线作为用于信号传送的物理介质。
在正常操作期间,当一个或多个节点希望传送数据帧的时候,节点执行总线仲裁过程以确保一次仅一个节点实际在CAN-高和CAN-低线路上传送数据,从而提供可靠通信,而没有在两个或更多节点同时传送的时候发生的“冲突”。在CAN总线标准中,当在总线上传送显性位(dominant bit)“0”的时候,输出引脚CANH和CANL被驱动到不同的电压水平,并且从CANH到CANL的差异是CAN总线的输出。类似地,当CANH和CANL没有被驱动并且将具有类似电压水平的时候,隐性位“1”的传送发生。因为CAN总线是共享通信介质,所以被连接到CAN总线的每个节点可以读取通过总线所传送的数据的每个位。当两个节点希望私有地传输不能被连接到总线的其它节点理解的数据的时候,CAN总线的该性质呈现问题。
对于CAN总线实现方式的新近进展包括如下配置:在所述配置中被连接到CAN总线的两个节点同时传送数据位(以有意地产生冲突),来以防止第三方节点能够确定所述两个传送节点中的哪一个实际正在传送形成密码密钥的一部分的信息的方式交换密码密钥数据。在这些密钥交换技术的一部分中,两个节点同时传送逻辑1和逻辑0信号,继之以从两个节点同时传送原始位的逻辑补码,这在CANH与CANL导线之间产生可以被所附连的节点中的每一个检测到的经求和的电压差分。然而,虽然被附连到CAN总线的全部设备都可以检测通过CAN总线的显性位(逻辑0)的传送,但是由于两个节点同时传送,所以被连接到CAN总线的其它节点不能确定在0/1位继之以逻辑补码的传送序列期间的任一时间处,两个节点中的哪一个正在传送显性0或非显性1,并且仅所述两个传送节点确实知道哪个位在被传送。所述两个节点以随机化方式传送逻辑0和1位及其逻辑补码(如果两个节点都传送逻辑00/11序列或逻辑11/00序列,那么忽略传送,因为那些信号确实使得第三方能够确定从每个节点所传送的数据),这防止被连接到CAN总线的其它节点检测到传送每个位的节点的身份。被重复许多次并且与没有在本文更详细描述的其它技术相组合的该操作形成用于使得两个节点——以及间接地甚至更大群组的节点——能够交换形成共享密码密钥的基础的数据的根本(foundation)。在节点已经交换了密码密钥之后,那些共享密钥用于通过使用另行对于本领域而言已知的技术来执行数据加密和认证/验证操作,所述技术使得总线上节点的不同子集能够以不可被连接到CAN总线的其它节点检测的方式来交换不能被解密或变更的数据。
如上所述,利用标准CAN总线收发器连接到CAN总线的节点可以通过CAN总线的CANH和CANL导线来检测与逻辑0和1水平相对应的电压信号。当两个节点同时传送逻辑0和1的时候,最标准的CAN节点的收发器不能确定两个节点中的哪一个传送了逻辑0和1。然而,在物理水平上,通过CAN总线被传送的电信号并不完美对应于上述数字逻辑的逻辑0和1水平,因为CAN总线的物理组件以及节点本身具有复杂并且不同的模拟电性质。在一些实例中,对抗者——其或是CAN总线中已经被恶意软件损害的正当硬件节点或是被电连接到CAN总线的未经认证的硬件设备,以如下方式执行对通过CAN总线传送的电信号性质的高精度测量:所述方式可以使得对抗者能够确定在上述过程中哪个节点传送逻辑0并且哪个节点传送逻辑1信号。特别地,由于两个节点以随机化次序来传送逻辑0和逻辑1以用于每个位交换,所以对抗者可以监视从每个节点传送的显性位信号(逻辑0)的信号特性。对抗者然后可以重构在所述两个节点之间共享的秘密数据,并且损害CAN总线系统的安全性。该类攻击被称为侧信道攻击,因为对抗者基于受特定CAN总线系统中的总线以及被连接到总线的节点的物理性质所影响的精确电信号测量而提取信息,尽管对抗者尚未击败用于上述密码密钥交换的逻辑协议。
图1描绘了包括三个CAN节点104、106和108的现有技术CAN网络100的示例,所述三个CAN节点104、106和108各自被连接到由电阻器118终结以形成CAN总线的CANH导体112和CANL导体116。对抗节点124也被电连接到CAN总线,并且对抗节点包括使得对抗者能够执行一个或多个侧信道攻击的电信号测量和信号处理硬件。如上所述,侧信道攻击呈现对于维护在共享介质通信网络(诸如CAN总线)中的安全性的挑战。因此,对于减小或消除来自这些侧信道攻击的威胁的方法和系统的改进将是有益的。
发明内容
本文所描述的实施例包括针对如下系统执行侧信道攻击的新方法:该系统利用两个节点之间的同时数据传送来通过共享通信介质(诸如CAN总线)进行密钥协商。实施例还包括提供如下对策的方法和系统:该对策用于减小或消除对抗者在两个节点通过CAN总线同时传送信号时确定哪个节点传送逻辑0或1信号的能力,即使当对抗者被配置为物理探测信道时亦如此。这些实施例使得能够以最小的电路改变来使对抗者所观测到的电压混淆。本文描述的实施例的优点包括但不限于如下技术:保护依赖于数据位的同时传送来建立用于密码密钥交换的私有信道的设备免受电压探测攻击和泄漏。这些方案包括利用诸如改变网络特性、使能节点之间的协作以及电压调节电路之类的技术。
在一个实施例中,已经开发了一种操作使用共享通信介质的通信网络中的至少一个节点的方法。所述方法包括:利用第一节点中的控制器将第一节点中的第一电位计的电阻调整至第一节点中的控制器随机确定的第一电阻水平,第一节点中的第一电位计连接到第一节点中的收发器的输出以及连接到共享通信介质;以及利用第一节点中的收发器,通过连接到共享通信介质的输出传送第一数据位,其中第一电位计产生第一电阻水平。
在另一个实施例中,已经开发了一种操作向共享通信介质提供电压反馈的共享通信网络中的节点的方法。所述方法包括:利用所述节点中的收发器检测出一个位正由另一节点通过连接到收发器的共享通信介质被传送;当所述位正由所述另一节点通过共享通信介质被传送时,利用所述节点中的采样和保持电路,对共享通信介质中的电压水平进行采样;利用差分放大器生成输出信号,所述输出信号对应于来自采样和保持电路的电压水平与预定参考电压之间的差异;利用求和放大器和反相放大器,基于来自差分放大器的输出信号与所述节点中驱动电压源的预定电压水平的总和,生成校正电压水平;以及利用所述节点中的收发器、基于校正电压水平向共享通信介质传送输出电压,以当所述位正由所述另一节点通过共享通信介质被传送时,将共享通信介质的电压水平驱动至预定参考电压。
在另一个实施例中,已经开发了一种操作包括连接到共享通信介质的多个收发器的节点的方法。所述方法包括:利用所述节点中的控制器操作多路复用器以控制所述节点中的多个收发器同时向共享通信介质传送多个位,控制器随机选择用于传送的位,其中至少一个位是用于通过共享通信介质传送的显性位。
附图说明
图1是现有技术的CAN总线系统的图,其中对抗节点测量CAN总线中的电信号以执行侧信道攻击。
图2A是对抗节点在现有技术的CAN总线系统中观测到的、来自两种不同收发器类型的传送信号的电压水平的图。
图2B是对抗节点在现有技术的CAN总线系统中观测到的、来自相同类型的两个收发器的传送信号的电压水平的图。
图3是CAN总线系统的图,所述CAN总线系统包括被配置为将噪声引入传送信号中以防止对抗者执行电压水平侧信道攻击的节点。
图4是节点的图,所述节点可以连接到共享通信介质以将由其它节点通过共享通信介质传送的信号的电压水平驱动到预定电压水平。
图5是包括多个收发器的节点的图,所述多个收发器可以在CAN总线中同时传送多个位以防止对抗者执行电压水平侧信道攻击。
图6是连接到CAN总线的多个节点的图,其中多个节点可以在CAN总线中同时传送多个位以防止对抗者执行电压水平侧信道攻击。
图7是描绘在数据位的传送期间通过在节点中产生电位计的不同电阻水平以调整CAN总线的阻抗水平而生成的电压水平的图表。
图8是描绘可以并入到图4的节点中的采样和保持电路以及差分放大器的现有技术实施例的电路图。
具体实施方式
为了促进对本文所公开的实施例的原理的理解的目的,现在参考附图以及在以下所撰写的说明书中的描述。不意图通过参考对主题范围的限制。本公开还包括对所图示的实施例的任何变更和修改,并且包括如本公开所涉及的领域中的技术人员通常将会想到的所公开的实施例的原理的另外的应用。
如本文所使用的,术语“位”是指可以具有两个离散值之一的二进制值,所述两个离散值在文本中典型地被表示为“0”或“1”。通信系统在数据传送期间生成信号,所述信号具有不同的电压水平、相位或表示二进制位的两个值的其它信号特性。如对于本领域所众所周知的,数字数据包括可以表示数字、字母或任何其它形式的数据的一系列一个或多个位,并且特别地,位的集合可以形成密码密钥。如本文所使用的,如被应用到二进制值的术语“逻辑补码”或“逆”是可互换的,并且是指数据集合或改变二进制数据的每个位的值的操作(例如二进制序列“101”是“010”的逻辑补码)。如下面更详细地描述的,用于安全密钥交换的协议使不同的节点具有用于共享密钥的对应位的集合,该对应位的集合是彼此的逻辑补码。节点的所选集合执行逆操作,使得所有节点具有相同的共享密钥。
如本文所使用的,术语“密钥”或“密码密钥”是指通信网络中的两个或更多节点使用来执行包括数据的加密和解密的密码操作以及用于对所传送数据的认证的位序列。“共享密钥”是指对于与彼此通信的两个或更多节点而言已知的密钥,但是共享密钥另行对于第三方、包括对抗者而言不是已知的。本文所述的方法和系统使得通信网络中的两个或更多节点能够生成对抗者不能标识的共享密钥,即使对抗者可以监视在节点之间发生的任何通信并且能够执行本文所述的侧信道攻击亦如此。在生成共享密钥之后,节点执行另行对于本领域所众所周知、并且不在本文更详细地描述的密码操作。
如本文所使用的,术语“共享通信介质”是指物理网络连接和网络通信协议,其中多个节点以如下方式传送和接收数据:在所述方式中,来自单个节点的任何传送由被连接到共享通信介质的所有其它节点接收。在共享通信介质中,两个或更多节点可以同时传送数据。共享通信介质被视为“不安全”或“不可信”通信信道,这是因为对抗者被假设为具有监视通过共享通信介质而发生的任何和所有通信的能力。
共享通信介质的两个非限制性示例包括控域网总线(CAN总线)网络通信总线和协议以及I2C总线。在这两个实施例中,被通信地连接到共享通信介质的所有节点可以观测通过通信介质所传送的所有信号,包括不意图供特定节点接收的信号。如下面更详细地描述的,每个节点是包括收发器的计算设备,所述收发器被配置成通过到一个或多个附加节点的共享通信介质来既传送又接收信号。
在本文档中将一类侧信道攻击称为“电压侧信道”攻击,其依赖对来自CAN总线系统中不同节点的稳态输出电压的精确测量,来在两个节点使用上述技术同时传送数据时确定哪个节点正传送逻辑0或1。CAN总线系统针对如下信号使用差分电压,在所述信号中两个节点同时传送逻辑0(高电压)和逻辑1(低电压),节点中的仅一个产生CANH和CANL导线上电压差分中的改变。在大多数CAN实施例中,CANH和CANL导线两者默认被驱动到预定电压水平(例如2.5V),并且如果在CANH和CANL上的电压之间的差异是零或在为零的预定操作阈值内,那么传送被称为是“隐性的”,其对应于逻辑1,并且被连接到CAN总线的节点基于零或低电压差分来检测逻辑1。然而,如果节点传送逻辑0,那么节点将CANH导线驱动到2.5V以上的较高电压水平,并且将CANL导线驱动到2.5V以下的较低电压水平。在CANH和CANL之间的电压中的差分容易由被连接到CAN总线的其它节点检测到来检测逻辑1和0信号。
如图1中所描绘的,个体节点可以并且经常确实以不同的驱动电压水平来传送数据信号(诸如图1中针对节点104为5V并且针对节点106为3.3V),并且由于具有广泛变化的电特性的节点设备都可以在没有附加补偿电路的情况下使用差分电压信令过程,因此在标准CAN总线配置中完全支持这些类型的传送。如果具有两个不同驱动电压输出幅度的两个不同节点均同时传送逻辑0和1,则具有足够灵敏的电压测量硬件和对节点电压水平的先验知识(其不是秘密信息)的侧信道对抗者可以通过简单地测量绝对电压差分来确定哪个节点传送逻辑0,所述绝对电压差分由传送对应于逻辑0的显性电压信号的节点产生。通过消除过程,对抗者确定该对中的另一个节点传送了隐性逻辑1。附加地,由于传送序列涉及两个节点传送随机选择的位、继之以所述位的逻辑补码,因此两个节点将在传送对期间传送具有逻辑0值的显性位,这使得对抗者能够比较两个传送的电压水平,以基于先前确定的操作电压水平来标识节点。图2A描绘了电压和时间图,其图示了使能侧信道攻击的CAN总线的性质。信号204描绘了在两个节点A和B同时传送时的显性差分电压水平,并且节点A是相比于节点B利用更低的驱动电压信号水平配置的显性节点。信号208示出了相反的情形,其中A和B两者同时传送,但是节点B是以更高的驱动电压传送的显性节点。对抗节点可以测量信号204和208的电压差分水平,并由于两个不同节点之间的驱动电压源中的差异确定两个节点A和B中的哪个节点正在传送显性位。
附加于具有不同驱动电压水平的节点之间的电压差异,具有相同驱动电压水平的两个收发器可以具有不同的负载电阻。类似于驱动特性,当使用不同的收发器时,这可能导致CANH和CANL线路上的不同电压。对抗节点利用这点来标识传送器。例如,商业可获得的CAN总线收发器的两个实施例是MCP2551和TJA1040。MCP2551包括为40Ω<RL<60Ω的操作负载电阻,而对于TJA1040,经调节的负载电阻为45Ω<RL<65Ω。这些差异引起可以帮助对抗者在节点之间进行区分的传送电压中的差异。
附加地,即使两个CAN总线收发器以相同的驱动电压和阻抗水平操作,在沿着CAN总线的节点的位置与对抗节点的位置之间的差异也可以在侧信道攻击中产生潜在的信息泄漏。即使两个节点的传送特性类似,但由于两个收发器与对抗者的中间位置之间的网络节段的阻抗中的差异,CAN总线中的中间观测者(诸如对抗者124)也可以能够检测到信号中的差异。对于典型的CAN总线情境,若干因素可以促成这些差异,诸如将两个节点连接到对抗节点的导线的不同长度,以及中间节点的不同数量,这会引起由两个收发器所传送的相同信号在这样的点处可分辨。当节点如上所述那样执行同时传送以交换密码密钥时,在这样的点处探测总线的对抗者可以因此标识节点。
例如,在图1的CAN总线网络中,节点104和108两者使用具有5V驱动信号的相同收发器(例如MCP2551)和在收发器处的相同负载阻抗。然而,即使节点具有相同的配置,节点104和108之间的不同位置也可以表现出相对于两个节点104和108的不同阻抗水平。例如,在一种配置中,对抗节点124连接到CAN总线上的观测点,所述观测点相比于节点108与节点104更靠近1米。图2B描绘了电压图250,其描绘了观测者从如上所述的两个相同配置的收发器检测到的电压。稳态电压信号254和258由于CAN总线中的不相等阻抗水平而表现出小的差异。尽管该差异显得小,但是利用重复观测,对抗节点124可以清楚地在图1中的节点104和108的传送之间进行区分,这可能导致秘密数据和密码密钥泄漏到对抗节点154。
上述信息泄漏由于以下而发生:对于对抗节点的共同观测点而言,不同传送器之间的阻抗特性、驱动器电路和噪声特性中的差异。这可能源于各种因素,并且表示收发器的指纹。本文描述的实施例使向这样的对抗者的泄漏最小化。通过噪声(或可变性)的受控添加(或移除)使对抗者可以检测到的信息混淆。在理想的系统中,由于任何传送节点所致的电压观测的分布应该是类似的,并且本文描述的实施例提供了若干种这样的对策来实现该目的。不同的对策要求在现有总线架构中不同程度的改变,并相应地实现变化程度的泄漏减量。
阻抗调整
如上所述,对抗节点可以使用CAN总线节点的不同阻抗水平作为侧信道攻击的一部分,以在两个CAN总线节点同时操作时检测传送每个信号的CAN总线节点的身份。减小或消除该信息泄漏的一种技术是以不可预测的方式调整CAN总线中节点的阻抗水平,因此当两个节点同时传送以传送私有数据用于密码密钥交换时,对抗节点不能可靠地检测到传送数据的节点的身份。
图3是包括节点304和306的CAN总线系统300的示意图,节点304和306被特别配置为减小或消除对抗者执行上述电压水平侧信道攻击的能力。节点304和306中的每一个包括CAN总线控制器312和CAN总线收发器316,该CAN总线控制器312典型地是数字微控制器、微处理器或其它合适的数字逻辑设备。节点304包括5V驱动电压源(VDD)326,而节点306包括3.3V驱动电压源328。节点304和306两者中的收发器316连接到CAN总线中的CANH导体112和CANL导体116。在图3中,对抗节点124连接到CAN总线,并当节点304和306同时传送数据以执行密码密钥数据的安全交换时,试图区分节点304或306中的哪一个传送逻辑0和1信号。图3还描绘了可以连接到CAN总线的现有技术节点108,并且节点304和306保持与现有技术的CAN总线节点完全兼容。
节点304和306各自包括对策控制器310,该对策控制器310操作性地连接到两个可变电阻器(电位计)320和324。在图3的实施例中,对策控制器310是控制电位计320和324的电阻水平的数字逻辑设备。对策控制器310实现提供随机化数据的硬件随机数生成器(RNG)或伪随机数生成器中的至少一个。对策控制器310使用预定的随机分布产生随机数据,尽管可以使用其它分布,但该预定的随机分布在图3的实施例中是均匀随机分布,并且随机数彼此独立地生成,使得每个随机生成的数的值不受先前生成的随机数的值影响。对策控制器310使用随机化数据来生成控制输出信号,以将电位计320和324的电阻水平调整到预定的操作电阻范围内的值,以用于节点以对抗节点124不能预测到的随机化方式操作。
在节点304和306中的每一个中,电位计320电连接到驱动电压源(节点304中的326和节点306中的328)和收发器316。电位计324连接在收发器316的输出之间,其中输出将收发器316连接到CANH导体112和CANL导体116。
电位计320和324包括数字电位计,所述数字电位计可以由来自对策控制器电路310的输出信号控制,并以高速率被调整以使能CAN总线系统300中的高效操作。虽然图3出于说明性目的而将对策控制器310描绘为单独的设备,但在一些实施例中,通过使用CAN控制器312中的硬件和软件或节点304和306中的每一个中的另一数字逻辑设备来实现对策控制器。
在图3中,电位计320的电阻水平影响从节点304和306中的收发器316传送的信号的总输出电压。在一种配置中,节点304和306或是在消息帧中明示地或是由于默认情况下收发器基于驱动源的电压水平传送信号而隐式地将电压源326和328的默认电压水平传送到CAN总线中的其它节点,其中大多数收发器实施例生成具有最多比驱动电压水平略低的电压水平的输出信号。在操作期间,当每个节点不需要使传送信号源混淆时,将电位计320设置为零电阻,并且收发器316以每个节点中的驱动电压源提供的标称电压水平进行操作。
在其中两个节点同时传送位以交换秘密数据的操作期间,节点304和306中的每个中的对策控制器310将传送显性电压水平的节点(例如,传送逻辑0的节点)中的电位计320的电阻水平设置为在预定电阻范围内的随机选择的水平。选择预定电阻范围,使得两个节点均以在两个节点的操作范围内的电压水平生成显性信号。电位计的电阻水平产生在收发器从电压源接收到的电压中的减量,如本领域众所周知的,所述减量随着电位计的电阻水平增大而增大,并且每个节点中的对策控制器310被配置为基于每个节点中的预定供给电压水平和收发器的操作电压范围来不同地调整电位计320的电阻值。在同时传送操作期间,节点304和306中的每个中的对策控制器310随机设置电位计320的值,使得两个节点均产生显性输出信号,该显性输出信号是以用于CAN总线传送的有效电压范围内的电压水平内随机生成的。因此,节点304和306被配置为减小对抗者执行图2A中所描绘的攻击的能力,这是因为在同时传送期间,两个节点均生成向传送信号的电压水平添加随机化的输出信号。传送非显性电压信号(例如逻辑1)的节点以默认电压水平传送,尽管传送非显性位的节点也可选地被配置为调整电位计320以在预定电压范围(例如2.4V至2.6V或CAN总线标准内的任何其它可操作电压)内向非显性输出信号的绝对电压水平提供随机改变,所述默认电压水平对于CAN总线网络中的所有节点一般是相同的,即使节点之间的供给电压不同。
附加于电位计320,图3的节点304和306还包括电位计324,电位计324在连接到CAN总线时调整收发器316看到的有效负载电阻。总线上观测到的电压是网络整体阻抗和驱动电压的函数。在实际的车用网络中,使用具有120Ω的标称阻抗的分布式元件模型对CAN总线进行建模。因此,由于若干原因,任何阻抗变化可能引起观测者处的电压水平中的改变。首先,有效总线负载的改变将引起不同的电压降。其次,由于阻抗失配,在变化点处将存在信号的反射、放大和衰减。
在高速度操作情境下,这样的变化可能影响CAN总线的稳健性并在接收器处引起错误。因此,在标准CAN总线操作期间,电位计324从收发器输出断连,以使得CAN总线能够以标称阻抗操作。然而,在其中两个节点同时传送数据以交换密码密钥数据的特定操作期间,CAN总线可以以足够低的速度操作,以使得电位计324能够调整有效负载阻抗而仍使能两个同时传送的节点之间的通信,同时减小或消除对抗者124执行侧信道攻击的能力。在操作期间,对策控制器310调整节点304和306中的每个中的电位计324,以产生随机选择的电阻水平,该电阻水平调整负载电阻水平。
表1描绘了针对具有变化的负载电阻水平的不同收发器在CAN总线上的电压输出水平。
负载电阻(Ω) | 180 | 120 | 100 | 90 | 80 | 70 | 60 | 50 | 40 |
类型A | 1.9764 | 1.9321 | 1.9076 | 1.8901 | 1.8780 | 1.8512 | 1.8159 | 1.6604 | 1.3948 |
类型B | 2.2697 | 2.1319 | 2.0537 | 1.9987 | 1.9678 | 1.8849 | 1.7886 | 1.6724 | 1.4986 |
虽然表1出于说明性目的描绘了十个有区别的负载电阻值,但是对策控制器310可以操作电位计324以在预定的操作负载电阻范围内产生大得多数量的有区别的负载电阻水平。图7描绘了使用上面在表1中所描绘的不同负载电阻水平、由CAN总线中的观测者处的两种不同类型的节点生成的观测电压水平的图表700。在图7中,“类型A”节点使用商业可获得的MCP2551收发器,并且“类型B”节点使用商业可获得的TJA1040收发器。图3的系统300中的节点304和306的配置使得对策控制器310能够通过利用电位计324调整负载电阻来产生宽范围的随机化电压输出水平。电压水平的这种随机化防止对抗者124执行侧信道电压攻击,所述侧信道电压攻击类似于上面结合图2B描述的那些。
系统300中的节点304和306的不同操作方法通过以随机化方式调整有效负载阻抗,而减小或消除攻击者124在两个节点同时操作时标识传送逻辑0和1信号的节点的能力。所述技术包括个体节点电阻变化和群组电阻变化。
在个体电阻变化中,每个节点中的对策控制器310以随机方式至少每位传送调整电位计324的电阻水平一次,包括例如在每位传送之前以及在每位传送期间进行一次或多次,如上所述。对策控制器310包括存储器或连接到存储器,所述存储器存储类似于上面的表1的预定义的查找表,所述查找表表征由不同电阻水平产生的电压变化。由于对于典型的CAN情境,如收发器所观测到的网络的阻抗将是类似的,因此可以在不跨CAN网络进行调谐的情况下使用配置文件。
如上所述,节点被配置为在最小和最大电压范围内操作。每个节点i标识具有合适电阻水平的电阻值范围,所述合适电阻水平产生用于显性位(例如逻辑0)传送的期望电压输出。每个节点中的对策控制器310生成在一个实施例中使用均匀随机分布而选择的随机且独立采样的值,以从以下范围生成电阻值:,其中D i 标示电阻值的均匀随机分布,所述随机且独立采样的值还产生随机均匀的输出电压集合。由于电位计324与其它电阻器并联连接、CAN总线本身的组件以及连接到CAN总线的其它节点的有效电阻水平,因此可能不是完全均匀地选择产生均匀的输出电压集合的电阻值,这意味着输出电压可能不会随着对电位计的电阻水平的改变而线性改变。在一些实施例中,对策控制器310使用电阻值和有效输出电压水平之间的映射来选择如下电阻值:即使没有以均匀的随机分布选择电阻值,该电阻值也会在输出水平中产生均匀的随机变化。映射是凭经验确定的,并且可以存储在对策控制器310的存储器或节点中的另一个存储器设备中。
在群组电阻变化中,连接到CAN总线的节点群组以随机化方式调整负载电阻水平,来以随机化方式调整CAN总线的整体阻抗水平,使得即使不包括节点304和306的附加特征的节点(诸如图3的现有技术节点108)也可以体验到抵御侧信道攻击的一些益处。该配置也称为“干扰”配置,其中具有连接到CAN总线的电位计的一个或多个“干扰”节点以随机化方式针对发生在同时传送数据用于秘密通信的两个节点之间的每个位传送来调整电位计,即使干扰节点本身不传送任何数据,这也以随机化方式影响CAN总线的阻抗水平,并且减小或消除对抗者124执行电压侧信道攻击的能力,即使传送节点之一或两者是不包括图3中的节点304和306的附加特征的现有技术节点亦如此。干扰节点不需要将电位计的随机操作与在密码密钥交换过程期间实际正传送位的节点同步,并且干扰节点可以以超过通过CAN总线的数据传送速率的速率来操作电位计,以在电阻和对抗者124观测到的对应电压水平中引入附加随机变化。
在群组电阻配置中,干扰节点以随机化电位计配置进行操作,该随机化电位计配置防止CAN总线的总阻抗水平变更到使通过CAN总线的通信变得不可靠的程度。这可能会限制“干扰”集合中每个个体节点中电位计设置的变化范围。然而,这样的变化的集体影响可以针对对抗者引起足够的混淆。在针对给定数量的M个干扰节点的一个示例中,每个节点可以仅从两个有区别的负载阻抗中进行选择,并且集体变化导致2 M 个水平。然而,现实地,由于阻抗情境中的相似性,干扰节点产生较少数量的有区别的阻抗水平。然而,这可以通过如下操作调整:针对每个节点选择有区别的负载电阻值,并针对干扰节点协助的节点中的每个具有2 M 个有区别的水平。
电压反馈回路
在另一个实施例中,CAN总线中的节点配置有电压反馈硬件,所述电压反馈硬件使得CAN总线中的节点能够将两个传送节点之间的电压水平中可区分差异减小至如下程度:在该程度下,当两个节点同时传送数据、继之以逻辑补码的传送时,对抗节点实际上不能确定哪个节点传送逻辑0或1。这可以通过在传送期间将总线线路驱动到共享参考值——即调节CAN总线电压来实现。这可以经由反馈机制来实现,该反馈机制对总线输出进行采样并通过调整传送器特性而将输出驱动到共同参考。被添加到CAN总线网络中的甚至单个节点的这样的反馈机制也可以将CAN总线驱动到用于显性传送和非显性传送位两者的预定电压水平,以减小对抗者检测来自连接到CAN总线的不同个体节点的传送电压水平中较小不一致性的能力。
图4描绘了连接至CAN总线以提供电压反馈信号的节点400的示例,该电压反馈信号减小对抗者执行基于电压的侧信道攻击的能力。节点400包括采样和保持电路404、差异电路408、电压调节电路组VDD 412、以及CAN收发器块,所述CAN收发器块还包括对策逻辑设备410、CAN接收器416、CAN传送器418和解码器电路420。在一些实施例中,节点400还是使用CAN总线进行通信的设备,而在其它实施例中,节点400专用于向CAN总线提供电压反馈。
在节点400中,采样和保持电路404以预定采样率对来自CAN总线的两条线路的电压水平进行采样,该预定采样率足够快以测量在来自CAN总线中其它节点的位传送期间发生的对CAN的CANH和CANL导体中的电压水平的改变。图8描绘了采样和保持电路的一个示例的电路图820,并且采样和保持电路一般是本领域已知的。在采样频率的每个时钟周期处,采样和保持电路首先相对于给定参考来对CAN总线中的CANH和CANL数据进行采样。该参考可以是收发器的内部接地。如果使用模数转换器,则以足够高的分辨率(典型为mV量级或更高的精度)实现ADC,以用于以相同的分辨率或高于对抗节点的预期灵敏度进行精确的电压控制。
差异电路408计算从CAN总线线路上(在CANH或CANL中)的采样和保持电路404接收的采样电压与参考电压中的差异。取决于组VDD 412中求和放大器和反相放大器的配置来设置差异电路的增益。在一个实施例中,差分放大器实现差异电路,尽管其它电路实施例也可以实现差异电路。图8描绘了差分放大器的一个实施例的电路图840,并且差分放大器一般是本领域已知的。
组VDD块412是电压调节电路,在一个实施例中,该电压调节电路包括计算校正电压的求和放大器和反相放大器,所述校正电压将基于差异电路408的输出而由收发器中的传送器418生成,所述差异电路408的输出被添加到节点400中的驱动电压源VDD(未示出)的值。在一种配置中,节点400利用驱动电压源与CANH和CANL的峰值之间的线性关系操作,并且通过使用求和放大器和反相放大器来实现组VDD。求和放大器接收来自节点400的驱动电压源的参考电压(在一个实施例中为5V)以及差异电路的输出,并生成输入的总和。反相放大器对来自求和放大器的输出进行反相,来为节点400提供反馈值,从而生成将检测到的总和朝向零驱动的输出电压。注意,在该情况下,差异电路的增益与CANH/CANL对比VDD曲线的斜率相同。节点400包括电压源VDD(图4中未示出),该电压源VDD被配置为至少具有连接到CAN总线的任何其它节点的最大电压水平,以使得节点400能够提供通过CAN总线传送的操作电压的全范围内的电压反馈水平。
对策逻辑设备410是与节点400中的CAN收发器集成的数字逻辑设备,但是在其它实施例中可以是单独的数字逻辑设备。对策逻辑设备410执行两个功能。首先,对策逻辑设备410利用当前的CAN总线水平来检测何时通过CAN总线传送位。CAN接收器416和解码器420为CAN总线提供数字输出,该数字输出使得对策逻辑设备410能够确定是否正在通过CAN总线传送数据位、并且特别是显性电压逻辑0数据位。对于其中传送位的情境,对策逻辑设备410提供用于稳定的参考电压水平,并且CAN传送器418以对应于来自组VDD电路412的输出的校正电压的电压水平进行传送,以向CAN总线提供电压反馈信号。对策逻辑设备410维持位时序,以确保仅在通过CAN总线进行单个位传送的持续时间内传送对策电压反馈信号,其中该持续时间由连接到CAN总线的节点的传送速度设置。此外,对策逻辑设备410在接续传送之间维持足够的间隔,以允许活动节点在CAN总线上传送附加位值,并且用于附加位值被接收器电路正确采样。
如上所述,图4的电压反馈回路实施例每当CAN总线中的两个节点传送数据时就将CAN总线驱动到预定的电压参考值,以减小对抗者基于来自不同节点的传送信号中观测到的电压水平中的较小差异而执行电压侧信道攻击的机会。图4中描绘的电压反馈回路实施例可以与上面结合图3描述的对策控制器和电位计相组合。
使用多个收发器以用于信号混淆
在另一个实施例中,CAN总线系统包括在个体节点内或在连接到CAN总线的不同节点之间采用多个收发器的节点,以在两个节点通过CAN总线同时传送逻辑0和1位、继之以逻辑补码的传送时减小或消除对抗者进行电压侧信道攻击的能力。
图5描绘了CAN总线系统500的一个实施例,该CAN总线系统500包括节点504,节点504具有CAN控制器512、收发器多路复用器514、多个CAN收发器516A-516C以及分别连接到CAN收发器516A–516C中每个的输出的开关518A-518C。虽然图5描绘了三个收发器516A-516C和对应的开关518A-518C,但是可替换实施例可以包括两个或更多个收发器/开关元件。如下面进一步详细描述的,CAN控制器512是数字逻辑设备,其操作收发器多路复用器514以使用收发器516A-516C中的一个或多个来通过CAN总线同时传送数据位。收发器多路复用器514是如下电路:所述电路基于来自CAN控制器512的命令信号来从收发器516A-516C中的每个选择用于传送的数据位(例如0或1),并且确保收发器516A-516C同时传送所选位。开关518A–518C提供可选的电隔离,以在不使用收发器时将收发器从CAN总线断连,并且合适的开关的示例包括但不限于固态继电器开关。节点504连接到CAN总线,该CAN总线包括CANH导体112和CANL导体116以及终结电阻器118。CAN总线系统500还包括通过CAN总线与节点504通信的现有技术节点106,以及当节点504和节点106通过CAN总线同时传送逻辑0和1位以执行密码密钥交换过程时试图执行电压侧信道攻击的对抗者124。
图6描绘了包括三个单独的节点604、606和608的CAN网络600的另一实施例。每个节点包括连接到收发器多路复用设备614的CAN控制器612。收发器多路复用设备614连接到收发器616和开关618,该开关618连接到每个CAN收发器616的输出。在图6的配置中,节点604、606和608中的收发器多路复用设备614经由独立于CAN总线的通信信道彼此连接,以使用各自包括单个收发器的多个节点来使能传送信号的多路复用,而图5的节点504使用单个节点中的多个收发器执行多路复用。节点604-608中的每个中的开关618提供可选的电隔离,以在不使用收发器时将收发器从CAN总线断连。节点604-608连接到CAN总线,该CAN总线包括CANH导体112和CANL导体116以及终结电阻器118。网络600还包括攻击者124,攻击者124在节点606-608中的任何两个通过CAN总线同时传送逻辑0和1位以执行密码密钥交换过程时试图执行电压侧信道攻击。
在图5和图6的实施例中以及一般的CAN总线系统中,对抗者124所观测到的电压是电流源的强度以及观测者与电流源之间的网络的阻抗的函数。对于非均匀网络,这与源和观测者的物理位置直接相关。一种使对抗者的观测混淆的方法针对每个传送修改这些位置,但是该过程在传统的有线网络(诸如CAN总线)中不实际。然而,图5和图6的实施例通过针对显性位的每个传送使用位于网络中不同点处的随机数量的电流源来实现类似的效果。
表2描绘了来自多个收发器的同时显性位传送的电压输出水平,其中多个收发器可以如图5中那样在单个节点中或者如图6中那样在多个节点中。表2中的数据是基于对三个不同的CAN总线收发器的操作的观测而生成的,所述三个不同的CAN总线收发器包括针对节点1的MCP2551、针对节点2的TJA1040和针对节点3的TJA1041,但是类似的结果适用于其它收发器实施例。更一般地,N个收发器可以生成高达2N–1个有区别的电压水平,尽管在一些配置中,电压水平的实际数量略小于2N–1。图5和图6中的节点以随机化方式生成下面的输出。对于图5的单个节点实施例,节点504当与来自节点106的另一个位传送同时地传送显性逻辑0位时,生成表中除最终条目(1,1,1)之外的任何条目,这是因为仅需要一个逻辑0输出用于使聚合传送为逻辑0。为了传送逻辑0,节点504中的CAN控制器512生成随机控制值,并基于该随机控制值操作多路复用器514和个体收发器516A-516C,以从收发器516A–516C同时传送随机选择的位的集合。当节点504传送隐性位时,节点504使用最终条目来传送所有隐性位(逻辑1)。
节点1位 | 节点2位 | 节点3位 | 电压输出(V) |
0 | 0 | 0 | 2.4230 |
0 | 0 | 1 | 2.1281 |
0 | 1 | 0 | 2.1197 |
0 | 1 | 1 | 1.8208 |
1 | 0 | 0 | 2.3400 |
1 | 0 | 1 | 1.7710 |
1 | 1 | 0 | 1.7629 |
1 | 1 | 1 | 0.0000 |
附加于同时传送源的数量的变化,以随机方式改变连接到CAN总线、充当宿端(sink)的节点的总数量也使对抗者的观测变化。在传统设置中,总线上未在传送的每个节点充当宿端,并且该特性被用在上面参考图3描述的“干扰节点”实施例中,其中即使非传送节点的变化的负载阻抗水平也可以减小侧信道电压攻击的有效性。以随机方式将节点完全从CAN总线断连改变CAN总线中存在的宿端的总数量,这也影响总负载阻抗水平。因此,图5和图6的实施例通过使用开关518A–518C和618添加非参与节点的电隔离能力来使总线上的宿端数量变化。因此,具有这样的能力的任何收发器可以处于3种有区别的模式中(三态),其是:1.传送显性信号;2.传送隐性位或被动影响CAN总线的负载阻抗;或3.电隔离。
表3描绘了对抗者针对三态节点的不同状态的电压观测。通过在具有收发器的可选隔离的情况下使用三态操作模式,图5和图6的实施例针对N个收发器产生3N–2N个水平。表3描绘了具有附加电隔离的多个节点的同时显性位传送的电压输出,其中隔离的节点以“X”来引用:
节点1位 | 节点2位 | 节点3位 | 电压输出(V) |
X | 0 | 0 | 2.5842 |
X | 0 | 1 | 2.1174 |
X | 1 | 0 | 2.0923 |
0 | 0 | X | 2.3159 |
0 | 1 | X | 1.9647 |
1 | 0 | X | 2.1493 |
0 | X | 0 | 2.2957 |
0 | X | 1 | 1.9599 |
1 | X | 0 | 2.1415 |
0 | X | X | 1.9590 |
X | 0 | X | 2.1449 |
X | X | 0 | 2.1230 |
在一个实施例中,CAN控制器512包括存储一个或多个查找表的存储器或连接到所述存储器,所述查找表具有用于收发器516A-516C和开关518A-518C中的每一个的控制值,所述控制值对上面在表2和表3中描绘的信息进行编码。为了传送显性位,CAN控制器512从表中随机选择条目以控制来自收发器516A-516C的不同位的同时传送。在表3的实施例中,CAN控制器512还可选地通过基于从表3中随机选择的条目向收发器多路复用器514发送命令以断开开关518A-518C,来将收发器516A-516C中的一个或多个从CAN总线断连。
本文描述的系统可以在以下模式中操作,所述模式包括:每控制器有多个收发器的操作模式、每控制器有多路复用收发器的操作模式以及作为辅助节点。这些模式各自在下面进一步详细地描述。
在图5中描绘的每控制器有多个收发器的实施例中,至少一个节点包括可以同时操作的多个收发器。由于信号特性由活动收发器的数量确定,因此每个节点(或CAN控制器)配置有多个收发器,如图5中所描绘。对于每个显性传送,控制器可以选择收发器的任何组合来传送位。让我们假设每个控制器配备有N个收发器。如果一个或多个收发器配备有隔离电路,则每个收发器可以利用最多为3N-2N个状态用于显性传送。传送隐性位的每个传送器可以利用2N-1个状态用于隐性位传送。因此,从(3N-2N)(2N-1)个状态中随机选择节点之间的每个同时传送,在所述同时传送中一个节点传送0且另一节点传送1。例如,即使在每控制器仅包括2个收发器的系统中,对抗者针对每个传送可以观测到15个不同的电压水平。
在图6的每控制器有多路复用接收器的操作模式中,不同节点的收发器多路复用电路连接在一起,以使得多个节点能够以与图5中所描绘的单个节点中的多个收发器类似的方式传送数据。图6的实施例包括收发器多路复用电路614之间的附加通信链路,所述附加通信链路传送同时控制多个节点的操作的命令信号,以使得多个节点能够传送上面在表2和3中描述的相同信号群组。
在辅助节点操作模式中,使用图5或图6的实施例的收发器的添加使能对每个位的传送特性的细粒度控制。然而,这可能引起用于节点的显著开销,或者可能要求网络重新设计。通过使得连接到网络的节点能够与传送节点协作,可以实现类似的效果。与传送器协作的节点基于观测到的总线传送来调整其自己的传送状态。如果每个节点具有将自身与网络隔离(状态“X”)的添加能力,则节点可以采用使用被动协助或主动协助的策略。
在被动协助中,不需要观测CAN总线上的信号的空闲节点基于在CAN控制器中的软件或硬件中实现的随机数生成器的输出,来操作开关以隔离其收发器(即“X”状态)。包括用以将节点中的收发器与CAN总线电隔离的开关和控制逻辑的任何节点可以独立于CAN总线中的其它节点执行被动协助模式。
在主动协助中,节点通过以高频率对总线进行采样来监视CAN总线。如果它检测到从隐性到显性状态的转变,则它可以选择基于随机数生成器的输出来随机地主动协助传送器。否则,节点执行上述被动协助。在主动协助模式中,节点通过在剩余的位持续时间内立即传送显性信号来协助原始信号的传送器。对于其中节点了解预期的总线传送的CAN总线的实现方式(例如,其中多于两个节点执行密码密钥交换过程的群组密钥情境),通过简单地在预测的显性位时段期间传送显性信号,可以在不对总线进行采样的情况下提供主动协助。
上述用于使用多个收发器来减小对抗者执行电压侧信道攻击的能力的实施例与上面参考图3的节点和图4的电压反馈节点描述的所有其它实施例完全兼容。特别地,图5-图6中描绘的开关518A-518C和618可以被集成到图3的节点304和306中,以使得对策控制器310能够当所述节点在其它节点正在执行密码密钥传送过程时没有在主动传送或接收数据以协助改变总线的阻抗水平的时候,以随机化方式操作开关并将所述节点与CAN总线隔离。因此,图3中所描绘的每个节点的实施例包括本文所描述的开关以提供隔离,并且这些节点被配置为执行上述主动和被动辅助模式操作中的任一个或两者。
本文描述的实施例描述了用于针对使用诸如CAN总线之类的共享通信介质同时传送的设备进行电压侧信道攻击的方法,其中攻击者可以标识哪个节点传送数据位。实施例还描述了减小或消除这些攻击的有效性的系统和方法。这些实施例防御可以使用高分辨率装备来物理探测通信介质的电压特性的对抗者。可以使用这些方法的系统的示例包括但不限于车用系统(小汽车、公交车、卡车、农场装备、火车)、使用CAN总线的工业系统、用于DC电力分布系统的控制面板、以及使用CAN总线的安全系统。本文描述的实施例防御对抗者的把基于电压的特征作为目标的侧信道攻击,所述对抗者利用这些特征来提取通过共享通信介质同时传送逻辑0和1位的节点所交换的秘密密钥数据。为了减轻这些问题,一个实施例利用电压对网络阻抗的依赖性。对策控制器随时间随机调整负载阻抗,从而以不可预测的方式修改对抗者在总线上观测到的电压水平。另一架构包括提供电压反馈以将在CAN总线上看到的电压水平调节到一稳定值的节点,所述稳定值防止对抗者观测到可以用于标识传送特定数据位的特定节点的电压水平中的较小变化。另一个实施例包括多个收发器,其可以以随机化方式改变在总线上观测到的电压水平,以使对抗者在共享通信介质中对抗性地观测到的电压信号混淆,包括配置有多个收发器的单个节点、多路复用来自多个收发器的数据传送的节点群组以及彼此协作的节点。
将领会的是,上面所公开的和其它特征及功能的变体、或其可替换方案可以合期望地被组合到许多其它不同的系统、应用或方法中。各种目前没有预见或未预料到的可替换方案、修改、变型或改进可以随后由本领域技术人员做出,这些也意图被以下权利要求所涵盖。
Claims (10)
1.一种用于通信网络中的至少一个节点的操作的方法,包括:
利用第一节点中的控制器将第一节点中的第一电位计的电阻调整至第一节点中的控制器随机确定的第一电阻水平,第一节点中的第一电位计连接到第一节点中的收发器的输出以及连接到共享通信介质;以及
利用第一节点中的收发器,通过连接到共享通信介质的输出传送第一数据位,其中第一电位计产生第一电阻水平。
2.根据权利要求1所述的方法,还包括:
利用第一节点中的控制器将第一电位计的电阻调整至第一节点中的控制器随机确定的第二电阻水平,第二电阻水平不同于第一电阻水平;以及
利用第一节点中的收发器,通过到共享通信介质的输出传送第二数据位,其中第一电位计产生第二电阻水平。
3.根据权利要求1所述的方法,还包括:
利用第一节点中的收发器,通过控域网(CAN)总线共享通信介质传送第一数据位,其中电位计产生第一电阻水平。
4.根据权利要求1所述的方法,还包括:
利用第二节点中的控制器将第二节点中的第二电位计的电阻调整至第二节点中的控制器随机确定的第二电阻水平,第二节点中的电位计连接到第二节点中的收发器的输出以及连接到共享通信介质;以及
利用第二节点中的收发器,通过连接到共享通信介质的收发器的输出传送第二数据位,其中电位计产生第二阻抗水平,第二数据位的传送与从第一节点对第一数据位的传送同时发生,以防止被连接到共享通信介质的对抗节点确定通过共享通信介质,第一节点传送了第一位并且第二节点传送了第二位。
5.根据权利要求1所述的方法,还包括:
利用第一节点中的控制器,将第一节点中的第二电位计的电阻调整至第一节点中的控制器在预定电阻范围内随机确定的第二电阻水平,第一节点中的第二电位计连接在第一节点中的驱动电压源与收发器之间;以及
利用第一节点中的收发器,通过连接到共享通信介质的输出传送第一数据位,其中第一电位计产生第一电阻水平并且第二电位计产生第二电阻水平,第二电位计设置驱动收发器的电压水平,以调整第一位的输出电压水平。
6.根据权利要求1所述的方法,还包括:
利用第一节点中的控制器将第一节点中的第一电位计的电阻调整至第一节点中的控制器随机确定的第二电阻水平,以调整共享通信介质的阻抗水平,第二电阻水平不同于第一电阻水平,而连接到共享通信介质的第二节点与连接到共享通信介质的第三节点传送第三数据位同时地传送第二数据位,以防止连接到共享通信介质的对抗节点确定第二节点和第三节点中的哪一个传送了第二数据位和第三数据位。
7.根据权利要求1所述的方法,还包括:
利用第一节点中的控制器断开连接到收发器的输出的第一节点中的开关,以将收发器和第一电位计与共享通信介质隔离,以调整共享通信介质的阻抗水平,而连接到共享通信介质的第二节点与连接到共享通信介质的第三节点传送第三数据位同时地传送第二数据位,以防止连接到共享通信介质的对抗节点确定第二节点和第三节点中的哪一个传送了第二数据位和第三数据位。
8.一种用于通信网络中的节点的操作的方法,包括:
利用所述节点中的收发器检测出一个位正由另一节点通过连接到收发器的共享通信介质被传送;
当所述位正由所述另一节点通过共享通信介质被传送时,利用所述节点中的采样和保持电路,对共享通信介质中的电压水平进行采样;
利用所述节点中的差异电路,生成对应于来自采样和保持电路的电压水平与预定参考电压之间的差异的输出信号;
利用所述节点中的电压调节电路,基于来自差异电路的输出信号与所述节点中的驱动电压源的预定电压水平的总和,生成校正电压水平;以及
当所述位正由所述另一节点通过共享通信介质被传送时,利用所述节点中的收发器、基于校正电压水平向共享通信介质传送输出电压,以将共享通信介质的电压水平驱动到预定参考电压。
9.一种用于通信网络中的节点的操作的方法,包括:
利用所述节点中的控制器操作多路复用器,以控制所述节点中的多个收发器同时向共享通信介质传送多个位,控制器随机选择用于传送的位,其中至少一个位是用于通过共享通信介质传送的显性位。
10.根据权利要求9所述的方法,还包括:
当所述多个收发器中的至少一个收发器通过共享通信介质传送显性位时,利用所述节点中的控制器操作多路复用器以控制所述节点中的多个开关,来将所述多个收发器中的一个其他收发器从共享通信介质断连。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762468705P | 2017-03-08 | 2017-03-08 | |
US62/468705 | 2017-03-08 | ||
PCT/US2018/021596 WO2018165463A1 (en) | 2017-03-08 | 2018-03-08 | Method to mitigate voltage based attacks on key agreement over controller area network (can) |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110603786A true CN110603786A (zh) | 2019-12-20 |
CN110603786B CN110603786B (zh) | 2022-01-04 |
Family
ID=63445266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880030258.2A Active CN110603786B (zh) | 2017-03-08 | 2018-03-08 | 用于通信网络中的节点的操作的方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10958680B2 (zh) |
EP (1) | EP3593500B1 (zh) |
KR (1) | KR102269220B1 (zh) |
CN (1) | CN110603786B (zh) |
WO (1) | WO2018165463A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3593486B1 (en) * | 2017-03-08 | 2022-10-12 | Robert Bosch GmbH | Methods for minimizing side channel leakage for group key agreement for controller area network |
KR102605056B1 (ko) * | 2017-03-08 | 2023-11-24 | 로베르트 보쉬 게엠베하 | 계측 제어기 통신망을 통한 키 합의 방식들에 대한 과도 상태 기반 공격들을 완화시키기 위한 방법 |
US10757113B2 (en) * | 2017-03-17 | 2020-08-25 | Cylance Inc. | Communications bus signal fingerprinting |
WO2019160600A1 (en) * | 2018-02-14 | 2019-08-22 | Hrl Laboratories, Llc | System and method for side-channel based detection of cyber-attack |
US11256806B2 (en) * | 2018-02-14 | 2022-02-22 | Hrl Laboratories, Llc | System and method for cyber attack detection based on rapid unsupervised recognition of recurring signal patterns |
JP7042417B2 (ja) * | 2018-09-03 | 2022-03-28 | 株式会社オートネットワーク技術研究所 | 通信装置、送信方法及びコンピュータプログラム |
EP3700137B1 (en) * | 2019-02-22 | 2023-08-02 | Volvo Car Corporation | Monitoring can nodes |
DE102019104948A1 (de) * | 2019-02-27 | 2020-08-27 | Zf Active Safety Gmbh | Kommunikationssystem und Verfahren zur Kommunikation für ein Kraftfahrzeug |
US11456855B2 (en) * | 2019-10-17 | 2022-09-27 | Arm Limited | Obfuscating data at-transit |
US11463262B2 (en) * | 2019-12-19 | 2022-10-04 | Intel Corporation | Voltage encoded MAC and bus scrambling |
US11683341B2 (en) * | 2019-12-20 | 2023-06-20 | Robert Bosch Gmbh | System and method for network intrusion detection based on physical measurements |
US20230275913A1 (en) * | 2022-02-25 | 2023-08-31 | Microsoft Technology Licensing, Llc | Using graph enrichment to detect a potentially malicious access attempt |
KR20240037618A (ko) | 2022-09-15 | 2024-03-22 | 고려대학교 산학협력단 | Can 메시지의 난독화 방법 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1664800A (zh) * | 2004-03-02 | 2005-09-07 | 威盛电子股份有限公司 | 一种微处理器总线反相的感测机构 |
US7167527B1 (en) * | 2002-05-02 | 2007-01-23 | Integrated Memory Logic, Inc. | System and method for multi-symbol interfacing |
CN101222400A (zh) * | 2008-02-01 | 2008-07-16 | 北京交通大学 | 道路交通信息采集传感器网络节点装置及其数据传输方法 |
CN101841452A (zh) * | 2010-04-30 | 2010-09-22 | 北汽福田汽车股份有限公司 | 一种车辆控制局域网can网络 |
CN202424756U (zh) * | 2012-01-06 | 2012-09-05 | 广州日滨科技发展有限公司 | 一种can中继器 |
CN103262457A (zh) * | 2010-12-17 | 2013-08-21 | 思科技术公司 | 共享介质网络中的中继节点 |
US20150095711A1 (en) * | 2013-10-02 | 2015-04-02 | Nxp B.V. | Controller area network (can) device and method for emulating classic can error management |
CN105182805A (zh) * | 2014-06-11 | 2015-12-23 | 罗伯特·博世有限公司 | 可配置的集成电路、控制装置和用于配置的方法 |
CN106233661A (zh) * | 2014-04-28 | 2016-12-14 | 罗伯特·博世有限公司 | 用于在网络中生成秘密或密钥的方法 |
CN106411559A (zh) * | 2016-05-24 | 2017-02-15 | 国网山东省电力公司阳信县供电公司 | 一种低压台区反窃电诊断系统 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7113759B2 (en) * | 2002-08-28 | 2006-09-26 | Texas Instruments Incorporated | Controller area network transceiver having capacitive balancing circuit for improved receiver common-mode rejection |
US7532048B1 (en) * | 2004-11-18 | 2009-05-12 | Aquantia Corporation | Multi-level variable-resistor line driver |
WO2008064704A1 (en) * | 2006-11-30 | 2008-06-05 | Telecom Italia S.P.A | Method and device for preventing information leakage attacks on a device implementing a cryptographic function |
JP5226736B2 (ja) * | 2010-05-28 | 2013-07-03 | 株式会社日本自動車部品総合研究所 | 通信信号生成装置及び通信装置 |
EP2541427A1 (en) | 2011-07-01 | 2013-01-02 | Siemens Aktiengesellschaft | Broadcast serial bus termination |
US8922224B2 (en) * | 2012-08-07 | 2014-12-30 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Snoop detection on calibrated bus |
EP2712123A1 (en) * | 2012-09-20 | 2014-03-26 | Robert Bosch Gmbh | Standard CAN implementation tolerating CAN FD frames |
US9417643B2 (en) * | 2013-03-15 | 2016-08-16 | Qualcomm Incorporated | Voltage regulator with variable impedance element |
US8976887B2 (en) * | 2013-03-19 | 2015-03-10 | Broadcom Corporation | Phase noise estimation for MIMO communication |
US9502889B2 (en) | 2013-07-29 | 2016-11-22 | Myson Century, Inc. | Controller area network node transceiver |
CN105593822A (zh) * | 2013-09-30 | 2016-05-18 | 慧与发展有限责任合伙企业 | 对从冗余总线接收到的信号进行解释 |
US9965426B2 (en) * | 2015-01-07 | 2018-05-08 | Infineon Technologies Ag | System and method for a low emission network |
WO2017011904A1 (en) * | 2015-07-17 | 2017-01-26 | The Governors Of The University Of Alberta | Method and system for wireless and single conductor power transmission |
EP3326323B1 (en) | 2015-07-17 | 2021-05-12 | Robert Bosch GmbH | Method and system for shared key and message authentication over an insecure shared communication medium |
-
2018
- 2018-03-08 KR KR1020197029490A patent/KR102269220B1/ko active IP Right Grant
- 2018-03-08 CN CN201880030258.2A patent/CN110603786B/zh active Active
- 2018-03-08 EP EP18764374.7A patent/EP3593500B1/en active Active
- 2018-03-08 WO PCT/US2018/021596 patent/WO2018165463A1/en unknown
- 2018-03-08 US US15/915,933 patent/US10958680B2/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7167527B1 (en) * | 2002-05-02 | 2007-01-23 | Integrated Memory Logic, Inc. | System and method for multi-symbol interfacing |
CN1664800A (zh) * | 2004-03-02 | 2005-09-07 | 威盛电子股份有限公司 | 一种微处理器总线反相的感测机构 |
CN101222400A (zh) * | 2008-02-01 | 2008-07-16 | 北京交通大学 | 道路交通信息采集传感器网络节点装置及其数据传输方法 |
CN101841452A (zh) * | 2010-04-30 | 2010-09-22 | 北汽福田汽车股份有限公司 | 一种车辆控制局域网can网络 |
CN103262457A (zh) * | 2010-12-17 | 2013-08-21 | 思科技术公司 | 共享介质网络中的中继节点 |
CN202424756U (zh) * | 2012-01-06 | 2012-09-05 | 广州日滨科技发展有限公司 | 一种can中继器 |
US20150095711A1 (en) * | 2013-10-02 | 2015-04-02 | Nxp B.V. | Controller area network (can) device and method for emulating classic can error management |
CN106233661A (zh) * | 2014-04-28 | 2016-12-14 | 罗伯特·博世有限公司 | 用于在网络中生成秘密或密钥的方法 |
CN105182805A (zh) * | 2014-06-11 | 2015-12-23 | 罗伯特·博世有限公司 | 可配置的集成电路、控制装置和用于配置的方法 |
CN106411559A (zh) * | 2016-05-24 | 2017-02-15 | 国网山东省电力公司阳信县供电公司 | 一种低压台区反窃电诊断系统 |
Also Published As
Publication number | Publication date |
---|---|
KR102269220B1 (ko) | 2021-06-28 |
EP3593500A4 (en) | 2021-04-28 |
US20180262527A1 (en) | 2018-09-13 |
EP3593500B1 (en) | 2023-09-06 |
WO2018165463A1 (en) | 2018-09-13 |
EP3593500A1 (en) | 2020-01-15 |
KR20190117805A (ko) | 2019-10-16 |
CN110603786B (zh) | 2022-01-04 |
US10958680B2 (en) | 2021-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110603786B (zh) | 用于通信网络中的节点的操作的方法 | |
KR102595961B1 (ko) | 계측 제어기 통신망을 통한 키 합의 방식에 대한 타이밍 기반 공격들을 완화시키기 위한 방법들 | |
EP3593486B1 (en) | Methods for minimizing side channel leakage for group key agreement for controller area network | |
CN110582996B (zh) | 用于在控域网之上减轻对密钥协定方案的基于瞬态的攻击的方法 | |
US20180069874A1 (en) | Attack detection apparatus | |
KR102330160B1 (ko) | 트랜시버, 트랜시버를 가진 시스템, 및 신호 | |
US10833851B2 (en) | Methods and systems for linear key agreement with forward secrecy using an insecure shared communication medium | |
US11949793B2 (en) | Voltage encoded MAC and bus scrambling | |
Ogura et al. | Electrical falsification of can data by magnetic coupling | |
DE102021003257A1 (de) | Verfahren zum Herstellen einer authentifizierten und unidirektionalen Kommunikation zwischen zwei Komponenten eines Fahrzeugs |
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 |