KR102595961B1 - 계측 제어기 통신망을 통한 키 합의 방식에 대한 타이밍 기반 공격들을 완화시키기 위한 방법들 - Google Patents

계측 제어기 통신망을 통한 키 합의 방식에 대한 타이밍 기반 공격들을 완화시키기 위한 방법들 Download PDF

Info

Publication number
KR102595961B1
KR102595961B1 KR1020197029458A KR20197029458A KR102595961B1 KR 102595961 B1 KR102595961 B1 KR 102595961B1 KR 1020197029458 A KR1020197029458 A KR 1020197029458A KR 20197029458 A KR20197029458 A KR 20197029458A KR 102595961 B1 KR102595961 B1 KR 102595961B1
Authority
KR
South Korea
Prior art keywords
node
time
data bit
bit
nodes
Prior art date
Application number
KR1020197029458A
Other languages
English (en)
Other versions
KR20190118208A (ko
Inventor
샬라브 제인
치안 왕
머천 조지 과자르도
Original Assignee
로베르트 보쉬 게엠베하
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 로베르트 보쉬 게엠베하 filed Critical 로베르트 보쉬 게엠베하
Publication of KR20190118208A publication Critical patent/KR20190118208A/ko
Application granted granted Critical
Publication of KR102595961B1 publication Critical patent/KR102595961B1/ko

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/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus 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
    • 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/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/005Countermeasures against attacks on cryptographic mechanisms for timing attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1475Passive attacks, e.g. eavesdropping or listening without modification of the traffic monitored
    • 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/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • 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/088Usage 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
    • 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/08Randomization, e.g. dummy operations or using noise
    • 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 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)

Abstract

공유 통신 매체를 사용하는 통신 네트워크에서 적어도 하나의 노드를 작동시키는 방법은 공유 통신 매체에 연결된 공격자에 의해 수행되는 타이밍 부채널 공격들을 감소시키거나 제거하기 위해 개발되었다. 상기 방법은 제 1 노드 내 제어기에 의해, 미리 결정된 시간 범위 내에서 랜덤하게 생성된 제 1 지터 시간 오프셋을 생성하는 단계, 및 제 1 노드 내 송수신기에 의해, 공유 통신 매체에 연결되는 송수신기의 출력을 통해 제 1 데이터 비트를 송신하는 단계를 포함하고, 제 1 데이터 비트는 제 1 미리 결정된 송신 시간에 추가된 제 1 지터 시간 오프셋에 대응하는 제 1 시간에 송신된다.

Description

계측 제어기 통신망을 통한 키 합의 방식에 대한 타이밍 기반 공격들을 완화시키기 위한 방법들
우선권의 주장
본 출원은 발명의 명칭이 "계측 제어기 통신망을 통한 키 합의 방식에 대한 타이밍 기반 공격을 완화시키기 위한 방법"이고, 2017년 3월 8일에 출원된 미국 가출원 제 62/468,680 호의 이익을 주장하고, 그의 전체 내용들은 참조로 본 명세서에 명확히 통합된다.
본 개시는 일반적으로 네트워크 통신 분야에 관한 것이고, 보다 구체적으로 공유 통신 매체를 이용한 보안 통신을 위한 시스템들 및 방법들에 관한 것이다.
계측 제어기 통신망(CAN) 버스 통신 표준은 자동차들 및 다른 운송 차량들, 빌딩 자동화, 산업 시스템들, 로보틱스, 및 공유 통신 매체를 사용하여 임베딩된 디지털 디바이스들 사이의 통신을 요구하는 다른 분야들을 포함하지만 그로 제한되지 않는 광범위한 응용들에서 사용되는 견고한 통신 인터페이스를 제공한다. 다수의 CAN 버스 실시예들은 CAN-High(CANH) 및 CAN-Low(CANL)라고 지칭되는 두 개의 전기 전도성 와이어들을 채용하고, "노드들"라고 지칭되는 전자 디바이스들은 CANH 및 CANL 와이어들을 표준화된 데이터 프레임 포맷을 사용하여 데이터를 송신 및 수신하기 위한 공유 통신 매체로서 사용한다. CAN 버스는 일반적으로 신호 송신을 위한 물리적 매체로서 차폐 또는 비차폐 연선들의 쌍을 이용한다.
정규 동작 동안, 노드들은 둘 이상의 노드들이 동시에 송신할 때 발생하는 "충돌들" 없는 신뢰 가능한 통신을 제공하기 위해 단 하나의 노드가 실제로 한 번에 CAN-High 및 CAN-Low 라인들을 통해 데이터를 송신하는 것을 보장하기 위해 하나 이상의 노드들이 데이터 프레임을 송신하고자 할 때 버스 중재 프로세스(bus arbitration process)를 수행한다. CAN 버스 표준에서, 버스상으로 우성 비트 '0'을 송신할 때, 출력 핀들(CANH 및 CANL)은 상이한 전압 레벨들로 구동되고, CANH와 CANL의 차이는 CAN 버스의 출력이다. 유사하게, 열성 비트 '1'의 송신은 CANH 및 CANL이 구동되지 않을 때 발생하며 유사한 전압 레벨들을 가질 것이다. CAN 버스는 공유 통신 매체이기 때문에, CAN 버스에 연결된 모든 노드는 버스를 통해 송신되는 각 데이터 비트를 판독할 수 있다. CAN 버스의 이러한 속성은 두 개의 노드들이 버스에 연결된 다른 노드들에 의해 이해될 수 없는 데이터를 개인적으로 통신하고자 할 때 문제들을 나타낸다.
CAN 버스 구현들에 대한 최근의 진보들은 CAN 버스에 연결된 두 개의 노드들이 제 3 자 노드들이 두 개의 송신 노드들 중 어느 것이 실제로 암호 키의 일부를 형성하는 정보를 송신하고 있는지를 결정할 수 있는 것을 방지하는 방식으로 암호 키 데이터를 교환하기 위해 (충돌을 의도적으로 생성하기 위해) 데이터의 비트들을 동시에 송신하는 구성들을 포함된다. 이러한 키 교환 기술들의 일 부분에서, 두 개의 노드들은 논리 1 및 논리 0 신호를 동시에 송신하고, 두 개의 노드들로부터 원래 비트들의 논리 보수(logical complement)의 동시 송신으로 후속되고, 이는 결합된 노드들의 각각에 의해 검출될 수 있는 CANH 와이어와 CANL 와이어 사이의 합산된 전압 차이를 생성한다. 그러나, CAN 버스에 결합된 모든 디바이스들은 CAN 버스를 통해 우성 비트(논리 0)의 송신을 검출할 수 있지만, 두 개의 노드들이 동시에 송신할 수 있기 때문에, CAN 버스에 연결된 다른 노드들은 두 개의 노드들 중 어느 것이 논리 보수가 후속되는 0/1 비트의 송신 시퀀스 동안 임의의 하나의 시간에 우성 0 또는 비우성 1을 송신하고 있는지를 결정할 수 없고, 단지 두 개의 송신 노드들만이 어느 비트가 송신되고 있는지를 안다. 두 개의 노드들은 논리 0 및 1 비트들 및 논리 보수들을 랜덤화된 방식으로 송신하고(두 개의 노드들이 논리 00/11 시퀀스 또는 논리 11/00 시퀀스를 송신하는 경우, 이들 신호들이 제 3 자들이 각각의 노드로부터 송신된 데이터를 결정하게 하기 때문에 송신이 무시된다), 이는 CAN 버스에 연결된 다른 노드들이 각 비트를 송신하는 노드의 아이덴티티를 검출하는 것을 방지한다. 여러 번 반복되고 본 명세서에서 더 상세히 설명되지 않은 다른 기술들과 조합된 이러한 동작은 두 개의 노드들 -및 간접적으로 노드들의 더 큰 그룹들-이 공유된 암호 키들에 대한 기반을 형성하는 데이터를 교환하게 하기 위한 기초를 형성한다. 노드들이 암호 키들을 교환한 후, 이들 공유 키들은 버스상의 노드들의 다른 서브세트들이 CAN 버스에 연결되는 다른 노드들에 의해 검출할 수 없는 방식으로 해독 또는 변경될 수 없는 데이터를 교환하게 하는 기술로 그와 달리 알려진 기술들을 사용하여 데이터 암호화 및 인증/검증 동작들을 수행하기 위해 사용된다.
전술한 바와 같이, 표준 CAN 버스 송수신기들에 의해 CAN 버스에 연결되는 노드들은 CAN 버스의 CANH 및 CANL 와이어들을 통해 논리 0 및 1 레벨들에 대응하는 전압 신호들을 검출할 수 있다. 두 개의 노드들이 논리 0과 1을 동시에 송신할 때, 대부분의 표준 CAN 노드들의 송수신기들은 두 개의 노드들 중 어느 것이 논리 0 및 1을 송신했는지 결정할 수 없다. 그러나, CAN 버스의 물리적 구성요소들 및 노드들 자체는 복잡하고 다른 아날로그 전기 속성들을 갖기 때문에 물리적 레벨에서 CAN 버스를 통해 송신되는 전기 신호들은 상술된 디지털 논리의 논리 0 및 1 레벨들에 완벽하게 대응한다. 일부 경우들에서, 악성 소프트웨어에 의해 손상된 CAN 버스에서의 적법한 하드웨어 노드이거나 CAN 버스에 전기적으로 연결된 허가되지 않은 하드웨어 디바이스인 공격자는 공격자가 전술된 프로세스에서 어떤 노드가 논리 0 신호를 송신하고 어느 노드가 논리 1 신호를 송신하는지를 결정하게 할 수 있는 방식으로 CAN 버스를 통해 송신되는 전기 신호들의 속성들의 고정밀 측정들을 수행한다. 특히, 양쪽 노드들은 각각의 비트 교환에 대해 랜덤화된 순서로 논리 0 및 논리 1을 송신하기 때문에, 공격자는 각 노드로부터 송신되는 우성 비트 신호(논리 0)의 신호 특성들을 모니터링할 수 있다. 이후, 공격자는 두 개의 노드들간에 공유되는 비밀 데이터를 재구성할 수 있고 CAN 버스 시스템의 보안을 손상시킬 수 있다. 이러한 공격들의 부류는 부채널 공격들(side-channel attack)이라고 하는데, 왜냐하면 공격자가 전술된 암호 키 교환을 위해 논리 프로토콜을 파괴하지 않더라도, 공격자는 특정 CAN 버스 시스템에서 버스에 연결되는 노드들 및 버스의 물리적 속성들에 의해 영향을 받는 정확한 전기 신호 측정들에 기초하여 정보를 추출하기 때문이다.
도 1은 CAN 버스를 형성하기 위해 저항기(118)에 의해 종단되는 CANH 컨덕터(112) 및 CANL 컨덕터(116)에 각각 연결되는 세 개의 CAN 노드들(104, 106, 108)을 포함하는 종래 기술의 CAN 네트워크(100)의 예를 도시한다. 공격자 노드(adversary node; 124)는 또한 CAN 버스에 전기적으로 연결되고 공격자 노드는 공격자가 하나 이상의 부채널 공격들을 수행하게 하는 전기 신호 측정 및 신호 처리 하드웨어를 포함한다. 전술된 바와 같이, 부채널 공격들은 CAN 버스와 같은 공유 매체 통신 네트워크들에서 보안을 유지하는 데 문제들을 나타낸다. 결과적으로, 이들 부채널 공격들로부터의 위협을 감소시키거나 제거하는 방법들 및 시스템들의 개선들이 유리할 것이다.
본 발명의 목적은 계측 제어기 통신망을 통한 키 합의 방식에 대한 타이밍 기반 공격들을 완화시키기 위한 방법들을 제공하는 것이다.
본 명세서에 기술된 실시예들은 공유 통신 매체를 물리적으로 프로브할 수 있는 공격자들로부터 공유 통신 매체를 사용하는 CAN 버스 또는 다른 네트워크를 보안하기 위한 대응책들을 포함한다. 제안된 기술들은 공격자에 의해 관찰되는 신호들에 대한 전이 시간들의 난독화를 가능하게 한다. 제안된 실시예들의 이점들은 두 개의 노드들이 타이밍 부채널 공격들로부터 동시에 데이터 비트들을 송신하는 시스템들을 보호하기 위한 실시예들을 포함하지만, 이에 제한되지는 않는다. 실시예들은 지터 또는 다수의 송신기들을 이용하는 협력 방식들을 도입함으로써 비트 타이밍의 변동과 같은 다양한 기술들을 이용한다.
일 실시예에서, 통신 네트워크에서 적어도 하나의 노드의 동작 방법이 개발되었다. 상기 방법은 제 1 노드 내 제어기에 의해, 미리 결정된 시간 범위 내에서 랜덤하게 생성된 제 1 지터 시간 오프셋을 생성하는 단계, 및 제 1 노드 내 송수신기에 의해, 공유 통신 매체에 연결되는 송수신기의 출력을 통해 제 1 데이터 비트를 송신하는 단계로서, 제 1 데이터 비트는 제 1 미리 결정된 송신 시간에 추가된 제 1 지터 시간 오프셋에 대응하는 제 1 시간에 송신되는, 제 1 데이터 비트를 송신하는 단계를 포함한다.
도 1은 공격자 노드가 부채널 공격들을 수행하기 위하여 CAN 버스에서 전기 신호들을 측정하는 종래 기술의 CAN 버스 시스템의 도면.
도 2a는 CAN 버스에서 동시에 송신하는 두 개의 상이한 노드들로부터 검출된 고 및 저 신호 펄스들에서의 시간 차이를 나타내는 신호 그래프.
도 2b는 CAN 버스에서 동시에 송신하는 두 개의 다른 노드들로부터의 시간 차이를 나타내는 다른 신호 그래프.
도 2c는 관찰자가 CAN 버스 내 상이한 위치에서 신호를 관찰하는 동안 두 개의 상이한 노드들에 의해 생성된 신호들을 검출할 때 생성되는 신호 그래프들의 세트를 도시하는 도면.
도 2d는 관찰자가 CAN 버스 내 다른 위치들에서 신호들을 관찰하는 동안 두 개의 서로 다른 노드들에 의해 생성된 신호들을 검출할 때 생성되는 신호 그래프들의 다른 세트를 도시하는 도면.
도 3은 타이밍 부채널 공격들을 수행하기 위한 공격자의 능력을 감소시키거나 제거하기 위해 랜덤화된 지터를 사용하여 비트의 송신 시간을 조정하도록 구성되는 노드들을 갖는 CAN 버스 시스템의 도면.
도 4는 타이밍 부채널 공격들을 감소시키거나 제거하기 위해 도 3의 시스템의 동작 방법을 도시한 블록도.
도 5는 공격자가 CAN 버스의 상이한 영역들에 연결될 때 두 개의 노드들로부터 송신된 신호들을 관찰하는 공격자 노드에 대한 신호 타이밍을 도시하는 타이밍도.
본 명세서에 개시된 실시예들의 원리들의 이해를 촉진하기 위해, 이제 다음의 기재된 명세서에서 도면들 및 상세한 설명이 참조된다. 요지의 범위에 대한 제한은 참조들에 의해 의도되지 않는다. 본 개시는 또한 도시된 실시예들에 대한 임의의 변경들 및 수정들을 포함하고, 본 개시가 속하는 기술 분야의 당업자에게 일반적으로 일어날 수 있는 개시된 실시예들의 원리들의 추가 적용들을 포함한다.
본 명세서에 사용된, 용어 "비트"는 두 개의 이산 값들 중 하나를 가질 수 있는 이진값을 지칭하고, 이는 일반적으로 텍스트에서 "0" 또는 "1"로 표시된다. 통신 시스템들은 데이터의 송신 동안 이진 비트의 두 개의 값들을 나타내는 다른 전압 레벨들, 위상들, 또는 다른 신호 특성들을 갖는 신호들을 생성한다. 당업계에 공지된 바와 같이, 디지털 데이터는 숫자들, 문자들, 또는 임의의 다른 형태의 데이터를 나타낼 수 있는 일련의 하나 이상의 비트들을 포함하고, 특히 비트들의 세트는 암호 키를 형성할 수 있다. 본 명세서에 사용된, 이진 값들에 적용되는 용어들 "논리 보수(logical complement)" 또는 "역(inverse)"는 상호 교환 가능하고, 이진 데이터의 각 비트의 값들을 변경하는 데이터 세트 또는 연산을 지칭한다(예를 들면, 이진 시퀀스 "101"은 "010"의 논리 보수이다). 이하에 더 상세히 설명되는 바와 같이, 보안 키 교환을 위한 프로토콜은 서로의 논리 보수들인 공유 키들에 대한 대응하는 비트들의 세트들을 갖는 상이한 노드들을 남긴다. 선택된 노드들의 세트는 모든 노드들이 동일한 공유 키를 갖도록 역 연산을 수행한다.
본 명세서에서 사용된, 용어 "키" 또는 "암호 키"는 통신 네트워크 내 두 개 이상의 노드들이 송신된 데이터의 인증 및 데이터의 암호화 및 암호 해독을 포함하는 암호 연산들을 수행하기 위해 사용하는 일련의 비트들을 지칭한다. "공유 키"는 서로 통신하는 두 개 이상의 노드들에 알려진 키를 말하지만, 공유 키는 그와 달리 공격자를 포함하여 제 3 자들에게 알려지지 않는다. 본 명세서에 기술된 방법들 및 시스템들은 통신 네트워크 내 두 개 이상의 노드들이 공격자가 노드들 사이에서 발생하는 임의의 통신을 모니터링할 수 있고 여기에 설명되는 부채널 공격들을 수행할 수 있는 경우에도 공격자가 식별할 수 없는 공유 키를 생성할 수 있게 한다. 공유 키들이 생성된 후, 노드들은 그와 달리 당업계에 공지되고 여기에서 더 상세히 설명되지 않은 암호화 동작들을 수행한다.
본 명세서에서 사용된, 용어 "공유 통신 매체"는 단일 노드로부터의 임의의 송신이 공유 통신 매체에 연결되는 모든 다른 노드들에 의해 수신되는 방식으로 다수의 노드들이 데이터를 송신 및 수신하는 물리적 네트워크 연결 및 네트워크 통신 프로토콜을 지칭한다. 공유 통신 매체에서, 두 개 이상의 노드들이 동시에 데이터를 송신할 수 있다. 공격자가 공유 통신 매체를 통해 발생하는 임의의 및 모든 통신들을 모니터링할 수 있는 능력을 갖는다고 가정되기 때문에, 공유 통신 매체는 "안전하지 않은" 또는 "신뢰할 수 없는" 통신 채널로 간주된다.
공유 통신 매체의 두 개의 비제한적인 예들은 계측 제어기 통신망(CAN 버스) 네트워크 통신 버스 및 프로토콜 및 I2C 버스를 포함한다. 이들 실시예들 모두에서, 공유 통신 매체에 통신 가능하게 연결된 모든 노드들은 특정 노드에 의해 수신에 대해 의도되지 않은 신호들을 포함하는 통신 매체를 통해 송신된 모든 신호들을 관찰할 수 있다. 이하에 더 상세히 설명되는 바와 같이, 각각의 노드는 공유 통신 매체를 통해 하나 이상의 추가 노드들로 신호들을 송신 및 수신하도록 구성된 송수신기를 포함하는 컴퓨팅 디바이스이다.
한 부류의 부채널 공격은 본 명세서에서 두 개의 노드들이 0 및 1 비트 데이터를 동시에 송신하고 전술된 기술을 사용하여 송신된 비트들의 논리 보수들로 후속될 때 어느 노드가 논리 0 또는 1을 송신하고 있는지를 결정하기 위해 CAN 버스 시스템에서 상이한 노드들로부터의 신호들의 관찰된 시간들의 정확한 측정들에 의존하는 "타이밍 부채널" 공격이라고 지칭된다. 충분히 높은 전압 정밀도와 타이밍 분해능으로 CAN 버스 신호들의 변동을 관찰할 수 있는 공격자는 도 1의 종래 기술의 CAN 버스와 같은 보호되지 않은 시스템에서 논리 0 및 1 신호들의 송신기 사이에 구별하기 위해 타이밍 부채널 공격을 수행한다. 특히, 공격자는 노드들로부터 우성 비트 논리 0 신호들의 선행 에지의 도착 시간을 정확하게 측정할 수 있고, 이는 우성 신호들 또는 "글리치들(glitches)" 사이의 시간 간격들(time gaps)을 또한 포함하고, 두 개의 노드들은 전술된 제 1 송신 또는 제 2 송신에서 논리 0 및 논리 1을 송신하기 때문에, 두 개의 노드들로부터의 우성 비트들 또는 열성 비트들의 작은 부분들이 시간에서 중첩되고 동시에 관찰된다. 이러한 공격자는 고정밀 오실로스코프(디지털 또는 아날로그)를 사용하여 와이어들에 직접 액세스하는 도청자(eavesdropper)에 의해 간단히 실현할 수 있다. 대체 수단은 정규 노드를 통해 높은 주파수에서 버스를 샘플링할 수 있는 수정된 CAN 제어기에 의해 입력에서 고정밀 아날로그-디지털(AID) 변환기에 의해 CAN 버스에 연결될 수 있다. 예를 들어, 자동차 시나리오들(또는 일반 시스템들)에서, 이러한 노드들은 OBD-II 포트(진단 포트)에 연결될 수 있다.
CAN 버스 시스템은 논리 0(고전압)과 논리 1(저전압)을 동시에 송신하는 두 개의 노드들에서 노드들 중 단지 하나만 CANH 및 CANL 컨덕터들에서 전압 차이에서 변경을 생성하는 신호들에 대한 차동 전압을 사용한다. 대부분의 CAN 실시예들에서, CANH 및 CANL 컨덕터들은 디폴트로 미리 결정된 전압 레벨(예를 들어, 2.5V)로 구동되고, CANH와 CANL상의 전압들 사이의 차이가 제로이거나 제로의 미리 결정된 동작 임계값 내인 경우, 송신들은 "열성"이라고 불리고, 이는 논리 1에 해당하고 CAN 버스에 연결된 노드들은 제로 또는 저전압 차동에 기초하여 논리 1을 검출한다. 그러나, 노드가 논리 0을 송신하는 경우, 노드는 CANH 컨덕터를 2.5V 이상의 더 높은 전압 레벨로 구동하고 CANL 와이어는 2.5V 미만의 더 낮은 전압 레벨로 구동한다. CANH 컨덕터와 CANL 컨덕터 사이의 전압 차이는 논리 1 및 0 신호들을 검출하기 위해 CAN 버스에 연결된 다른 노드들에 의해 쉽게 검출된다. CAN 버스에 대한 물리적 매체로서 사용된 연선에 대한 일반적인 전파 지연은 5ns/m이다. 따라서 길이가 최대 50m인 기존 네트워크의 경우, 관찰자가 신호 전이를 관찰하고 송신기가 버스를 구동(또는 해제)하는 시간의 차이는 최대 250ns일 수 있다. 비트 값의 정확한 샘플링을 위해 이러한 지연들이 CAN 비트 타이밍 사양 내에 수용되지만, 공격자는 두 개의 송신기들이 동시에 작동할 때 송신기들을 식별하기 위해 시간 차이를 이용할 수 있다.
두 개의 완벽하게 동기화된 노드들이 논리 0 및 논리 1 비트를 동시에 송신하고 이어서 전술된 암호 키 교환 프로세스의 일부로서 논리 1 및 논리 0 비트의 논리 보수가 송신될 때, 송신된 신호들은 CAN 버스의 컨덕터들을 통한 신호 전파 지연으로 인해 상이한 시간들에서 버스상의 임의의 지점(노드들에 대해 완벽하게 중앙에 위치하는 것을 제외하고)에 위치된 도청자에 도달할 것이다. 이는 단순히, 신호들이 빛의 속도의 몇분의 일로 이동하는 두 개의 노드들로부터 버스상의 다른 노드에 관하여 하나의 노드로부터 더 큰 거리에 위치되고 두 개의 신호들의 도착 시간의 차이들을 관찰할 수 있는 공격자 노드로 신호의 전파 지연의 차이 때문이다.
도 2a는 두 개의 동일한 송신기들에 대해 대칭적으로 배치된 공격자에 대한 관측들의 신호 그래프를 도시한다. 그러나, 알 수 있는 바와 같이, 비트 타이밍의 0.02%의 작은 전파 차이조차도 좌측 노드(204) 및 우측 노드(208)로부터의 우세한 송신을 구별하기에 충분하여, 공격자가 두 개의 노드들 중 어느 것이 논리 0 및 1 신호들을 송신했는지를 결정하게 한다.
두 개의 노드들로부터의 전파 지연의 차이가 점점 불일치하게 되면, 공격자는 비트를 보다 쉽게 식별할 수 있다. 도 2b는 전파 지연, 노드들의 동기화에서 작은 에러들, 또는 둘 다로 인해 전파 차이가 비트 타이밍의 약 1%일 때의 또 다른 신호 그래프 시나리오이다. 도 2b는 노드가 0-1, 1-0 및 0-1을 송신하는 두 개의 노드들 사이의 세 개의 연속적인 비트 상호 작용들에 대해 공격자에 의해 관찰된 신호를 나타낸다. 글리치들(210, 212, 214)은 비트 전환점들(bit transition points)을 나타낸다. 하이 글리치(210)는 우성 값을 송신하는 두 개의 노드들에 의해 발생한다. 이는 그 때 더 빠른 노드가 열성에서 우성 값으로 전환한 반면, 느린 노드는 우성 값을 유지했음을 나타낸다. 유사하게, 212의 글리치는 두 개의 노드들 모두 열성 값을 송신하기 때문에 발생하는데, 이는 더 느린 노드가 열성 상태를 유지하는 동안 더 빠른 노드가 열성 상태로 전환한다는 것을 나타낸다. 도 2a 및 도 2b는 노드들이 정확하게 동기화되는 상황들을 도시하고, 전형적인 CAN 네트워크에서, 송신 노드들은 정확하게 동기화되지 않는다. 암호 키 교환 프로세스 동안, 동시에 송신하는 두 개의 노드들은 암호 키 교환 프로토콜을 시작하는 하나의 노드와 동기화되는데, 이는 암호 키 교환에 관련된 두 개의 노드들 중 하나이거나 게이트웨이 노드라고 지칭되는 CAN 시스템의 다른 노드일 수 있다. 결과적으로, 실제 시나리오들에서, 공격자에 의해 관찰된 전환들 사이의 불일치는 도 2a 및 도 2b에 도시된 예들보다 훨씬 클 것이고, 공격자는 높은 확률로 데이터를 송신하는 노드들을 식별할 수 있다.
도 2a 및 도 2b는 CAN 버스 내 고정된 위치에 있는 공격자가 타이밍 부채널 공격들을 수행하게 하는 타이밍 신호들을 도시한다. 또한, 일부 시나리오들에서, 공격자는 여러 위치들에서 CAN 버스에 연결될 수 있다. 예를 들어, 도 1의 종래 기술의 CAN-버스 구성에서, 노드(104)는 처음에 우성 비트를 송신하고 노드(106)는 열성 비트를 동시에 송신한다. 다음 송신에서, 노드들(104, 106)은 스위칭되고 노드(106)는 우성 비트를 송신하고 노드(104)는 열성 비트를 동시에 송신한다. 도 2c는 노드(104)에 더 가까이 이동하는 공격자로부터의 관찰들을 도시하고, 노드(104)로부터의 전파 지연은 감소된다. 유사하게, 도 2d에서, 공격자가 노드(106)에 더 가깝게 이동하는 시나리오를 도시한다. 대부분의 실제 시나리오들에서, 공격자 노드는 비트 송신들의 단일 시퀀스의 시간 주기 내에서 CAN 버스 내 다른 위치로 실제로 이동하지 않는다. 대신, 도 2c 및 도 2d에 도시된 움직임은 일반적으로 공격자 노드에 대해 상이한 위치들에 위치되는 CAN 버스 네트워크 내 상이한 노드들의 쌍들이 데이터 비트들을 송신하는 상황들을 도시하고, 상이한 노드들의 쌍들의 동작은 공격자가 종종 단일 물리 위치에서 CAN 버스에 연결되어 유지되더라도 공격자의 위치를 효과적으로 이동시킨다. 공격자의 분해능 및 능력들에 기초하여, 그의 위치를 약간만 변경하는 능력이 있더라도, 공격자는 송신 노드들간에 쉽게 구별할 수 있도록 CAN 위치 자체에 대한 위치를 조정할 수 있다.
타이밍 부채널 공격들은, 심지어 노드들이 전압 레벨 검출 부채널 공격들과 같은 다른 부채널 공격들을 수행하기 어렵게 하는 유사하거나 동일한 하드웨어 구성들을 사용할 때조차 두 개의 노드들이 동시에 데이터를 송신할 때 어느 노드가 데이터 비트를 송신하는지를 결정하는데 효과적일 수 있다. 특히, 타이밍 부채널 공격들은 CAN 버스에 연결된 노드들과 다른 신호들의 공격자 노드의 위치에서 도착 시간의 정확한 검출에 의존하고, 타이밍 부채널 공격들은 다른 노드들로부터 송신되는 신호들의 전압 레벨들의 작은 차이에 의존할 것을 공격자에게 요구하지 않는다.
타이밍 지터의 도입
전술한 바와 같이, 공격자 노드는 두 개의 CAN 버스 노드들이 동시에 동작할 때 각각의 신호를 송신하는 CAN 버스 노드의 아이덴티티를 검출하기 위해 타이밍 부채널 공격을 이용할 수 있다. 이러한 정보 누출을 감소시키거나 제거하는 하나의 기술은 송신된 신호들의 정확한 시간 측정들에 기초하여 노드들을 식별하기 위한 공격자들의 기회를 감소시키거나 제거하기 위해서 데이터를 전송하는 두 개의 노드들로부터 송신의 타이밍에 지터를 도입하는 것이다. 당업계에 알려진 바와 같이, 지터는 아마도 주기적 신호의 실제 주기와의 편차이다. CAN 버스 시스템들은 주기적 신호 송신을 제어하기 위해 전역 클록(global clock)을 사용하지 않지만, CAN 버스 시스템 내 송신 노드들은 각 송신된 비트 사이에 예상된 시간 주기들로 일정한 비율로 비트들의 시퀀스를 생성한다. 통신 시스템에서 지터의 존재는 종종 통신 시스템의 작동에 에러들 및 기타 문제들을 생성하는 제어되지 않은 방식으로 발생한다. 본 명세서에 설명된 실시예들은 암호 키 교환 프로세스를 수행하기 위해 두 개의 노드들이 동시에 데이터를 송신하게 하도록 CAN 버스 시스템의 동작을 계속 유지하면서 타이밍 부채널 공격을 수행하는 공격자 노드의 능력을 감소시키거나 제거하기 위해 랜덤하지만 제어된 방식으로 지터를 발생시킨다.
도 3은 특히 전술한 타이밍 부채널 공격을 수행하는 공격자의 능력을 감소시키거나 제거하도록 구성되는 노드들(304, 306)을 포함하는 CAN 버스 시스템(300)의 개략도이다. CAN 버스 시스템(300)은 또한 노드들 사이의 통신을 위한 CAN 버스 공유 통신 매체를 형성하기 위해 저항기들(118)에 의해 종단되는 CANH 컨덕터(112) 및 CANL 컨덕터(116)를 포함한다. 노드들(304, 306)의 각각은 전형적으로 디지털 마이크로컨트롤러, 마이크로프로세서, 또는 다른 적합한 디지털 로직 디바이스인 CAN 버스 제어기(312) 및 CAN 버스 송수신기(316)를 포함한다. 도 3에서, 공격자 노드(124)는 CAN 버스에 연결되고 노드들(304, 306)이 암호 키 데이터의 안전한 교환을 수행하기 위해 데이터를 동시에 송신할 때 노드들(304 또는 306) 중 어느 것이 논리 0 및 1 신호들을 송신하는지를 구별하려고 시도한다. 도 3은 예시 목적을 위한 두 개의 노드들(304, 306)을 도시하지만, 다른 CAN 버스 실시예들은 CANH 컨덕터(112) 및 CANL 컨덕터(116)상의 다양한 위치들에서 서로로부터 상이한 거리들에 배치되는 더 많은 수의 노드들을 포함한다.
노드들(304, 306)들의 각각에서, CAN 제어기(312)는 CAN 버스 송수신기(316)에 동작 가능하게 연결된다. 송수신기(316)는 CAN 버스를 통한 송신을 위한 전기 신호들의 물리 계층 생성을 구현하고 CAN 버스를 통해 다른 노드들에 의해 송신되는 데이터 비트들을 수신한다. CAN 제어기(312)는 송수신기의 동작 시간을 제어하고 송수신기(316)가 송신하는 비트(논리 0 또는 1)를 제어하기 위해 명령 신호들을 제공한다.
제어기(312)는 전파 지연 추정(320)을 구현하는 하드웨어 및 소프트웨어 요소들을 포함한다. 더 상세히 설명되는 바와 같이, CAN 제어기(312)는 다른 노드와 암호 키 데이터를 교환하기 위해 동시 비트 송신 프로세스를 시작하기 전에 CAN 네트워크에서 다른 노드와 통신하기 위해 필요한 왕복 시간을 측정한다. 한다. 제어기(312)에서의 전파 지연 추정(320)은 왕복 시간을 고 정밀도로 측정하고 왕복 시간에 기초하여 다른 노드로의 신호 송신을 위한 전파 지연의 추정치를 생성하기 위해 고정밀 타이머 회로, 연속 실행 카운터, 또는 다른 적절한 시간 측정 구현을 포함한다. CAN 제어기(312)는 또한 비트 송신 시간에 영향을 주는 랜덤화된 지터 타이밍 오프셋을 도입함으로써 노드가 데이터 비트들을 송신하는 정확한 시간을 조정하기 위해 타이밍 지터(324)를 구현하는 하드웨어 및 소프트웨어 요소들을 포함한다. CAN 제어기(312)는, 예를 들면, 타이밍 부채널 공격들의 효과를 감소시키기에 충분히 크고 시스템(300) 내 노드들(304, 306) 사이의 통신에 에러들을 도입하는 것을 회피하기에 충분히 작은 동작 범위 내에서 랜덤화된 지터 시간 오프셋 값들을 생성하기 위해 하드웨어 또는 소프트웨어 난수 발생기를 사용한다. 사용된 지터의 범위는 네트워크 내 상이한 노드들의 위치들에 기초하여 변하는 전파 지연 추정(320)의 출력에 적어도 부분적으로 기초한다. 시스템(300) 내 CAN 제어기(312) 및 노드들(304, 306)의 동작은 이하에 더 상세히 설명된다.
도 4는 암호 키 교환 프로세스를 수행하기 위해 두 개의 노드들이 동시에 비트들을 송신할 때 타이밍 부채널 공격들을 수행하기 위한 공격자의 능력을 감소시키거나 제거하기 위해 통신 네트워크에서 노드들의 동작을 위한 프로세스(400)를 도시한다. 이하의 설명에서, 기능 또는 동작을 수행하는 프로세스(400)에 대한 참조는 통신 네트워크에서 다른 구성요소들과 함께 기능 또는 동작을 수행하기 위한 명령들을 실행하기 위한 제어기의 동작을 지칭한다. 프로세스(400)는 예시 목적들을 위해 도 3의 시스템(300) 및 노드들(304, 306)과 함께 설명된다.
프로세스(400) 동안, 노드들(304, 306)은 노드들(304, 306) 모두가 데이터를 동시에 송신하는 것을 보장하기 위해 암호 키 데이터를 교환하기 위해 비트들을 송신하기 전에 서로 동기화 프로세스를 수행하는 동안 CAN 버스상의 노드들 사이의 전파 지연의 추정치들을 생성한다(블록(404)). 예를 들어, 노드(304)는 표준 CAN 버스 헤더를 포함하는 제 1 데이터 프레임 및 우성 논리 0 레벨을 갖는 적어도 1 비트의 페이로드 데이터를 노드(306)에 송신함으로써 동기화 프로세스를 개시한다. 노드(306)는 제 2 확인 응답 데이터 프레임에 의해 제 1 데이터 프레임에 응답한다. 제 1 노드(304)에서, CAN 제어기(312)는 제 1 데이터 프레임의 최종 비트의 송신시에 전파 지연 추정(320)을 위한 타이머를 시작하고, 송수신기(316)가 처음 노드(306)로부터의 제 2 확인 응답 데이터의 제 1 비트를 검출할 때까지의 시간 지연에 기초하여 노드(306)에 대한 왕복 시간을 식별하고, 확인 응답 데이터 프레임의 제 1 비트는 우성 비트다. CAN 제어기(312)는 관찰된 시간 지연을 절반으로 분할하여 왕복 시간의 절반인 단방향 전파 지연()의 추정치를 생성한다. 일부 구성들에서, 제 1 노드(304) 내 CAN 제어기(312)는 또한 제 2 노드(306) 내 처리 지연들에 의해 확인 응답 데이터의 송신시 지연들을 고려하기 위해 제 2 노드(306)의 하드웨어 구성에 기초하여 왕복 시간으로부터 단일 비트(예를 들면, 1 비트 기간)를 송신하기 위해 걸린 시간 길이의 정수배에 대응하는 고정된 처리 지연 시간 기간을 감산한다. 상기에 생성된 추정된 전파 지연은 CAN 버스를 통한 신호의 단방향 전파 시간 및 두 개의 노드들 사이의 시간 동기화에 대한 부정확성 모두를 고려한다. 이러한 점에서, 제 2 노드(306)는 전파 지연의 추정치()를 갖지 않지만, 후술되는 바와 같이, 이러한 정보는 한 쌍 중 하나의 노드에만 이용 가능할 필요가 있음에 주의한다. 그러나, 제 2 노드(306)는 제 1 노드(304)가 제 2 확인 응답 데이터 프레임을 제 2 노드(306)로 송신하는 구성에서 전파 지연의 다른 추정치()를 생성할 수 있다. 제 2 노드(306)는 제 1 노드(304)가 전술된 동일한 프로세스를 사용하여 제 1 확인 응답 데이터 프레임 및 제 2 확인 응답 데이터 프레임의 왕복 시간에 기초하여 전파 지연을 추정한다. 공격자 노드(124)는 다음의 암호 키 교환 프로세스의 보안을 손상시키지 않으면서 전술한 동기화 프로세스 동안 송신되는 모든 데이터 및 데이터 소스들을 관찰할 수 있다.
전술한 전파 지연()에 대한 추정 프로세스는 노드들(304, 306) 사이의 동기화를 직접 기술한다. 다른 구성들에서, 시스템에서 게이트웨이 노드로 지칭되는 제 3 노드는 노드들(304, 306) 모두 사이에서 시간 동기화를 수행한다. 도 5에서, "기준" 표기는 CAN 버스에서 게이트웨이 노드의 하나의 위치에 대응하지만, 보다 일반적으로 게이트웨이 노드는 CAN 버스에서 임의의 사용 가능한 위치에 배치될 수 있다. 게이트웨이 노드는 노드들(304, 306) 모두가 CAN 버스를 통해 게이트웨이 노드에 도달하기 위해 별도의 신호 전파 시간을 가지고, 노드들(304, 306) 모두가 두 노드들이 게이트웨이 노드와 동기화될 때 불균일한 동기화 에러들을 또한 경험할 수 있기 때문에 전파 지연에 추가의 변수들을 도입한다. 도 5에 도시된 바와 같이, 항 은 노드(304)와 게이트웨이 노드 사이의 전파 지연을 지칭하고, 항 는 노드(306)와 게이트웨이 노드 사이의 전파 지연을 지칭하고, 항 는 공격자 노드(124)와 게이트웨이 노드 사이의 전파 지연을 지칭하고, 항들 는 공격자(124)와 노드들(304 및 306) 각각 사이의 전파 지연을 지칭한다.
게이트웨이 노드를 사용하는 실시예에서, 추정된 값()은 다음 식에 기초하여 결정될 수 있다:
상기 식에서, 항 는 상기 예에서 노드(306)와 같은 제 2 노드의 처리 지연을 지칭한다. 여기서, 는 두 개의 노드들(304, 306) 사이를 구별하기 위한 공격자 노드(124)의 능력을 결정한다. 공격자 노드(124)의 위치에 기초하여, 지연은 영역 R1에서 영역 R3의 로 변한다. 노드들이 비트들의 시작 시간들을 결정하기 위해 지터 간격들을 이용하는 경우, 공격자는 각각, 노드들(N1, N2)의 각각에 대하여, 지원 세트들 에 걸쳐 두 개의 분포들로부터의 샘플들로서 비트 전환 시간들을 관찰한다. 공격자에게의 누설은 I1과 I2로부터의 샘플간에 구별하는 그의 능력에 의해 결정된다. 따라서, 프로세스(400)는 신호가 실제로 세트들 중 단 하나(I1 또는 I2)에만 속한다는 것을 결정하기 위해 공격자 노드(124)의 능력을 감소시키기 위해 관찰된 신호들의 두 개의 간격들 사이의 중첩을 증가시키기 위해 타이밍 지터를 도입하고, 이는 공격자 노드가 신호를 송신한 노드를 식별하는 것을 방지한다.
프로세스(400)는 타이밍 부채널 공격들을 통해 공격자(124)에게 암호 키의 데이터 누설을 방지하기 위해 각각의 비트에 대한 송신 시간을 조정하기 위해 랜덤 지터를 사용하여 암호 키를 교환하기 위해 동기화 프로세스의 완료 후 두 노드들이 동시에 데이터 비트들을 송신할 때 계속된다(블록 408). 시스템(300)에서, 노드들(304, 306) 모두에서의 CAN 제어기(312)는 각각의 노드(N)에 대하여 타이밍 지터(324)에서 난수 발생기를 사용하여 지터 간격(,)으로 지칭되는 최소 및 최대 시간 값 사이의 랜덤 지연 값을 생성한다. 일부 실시예들에서 최소 시간 값()은 0이고, 이는 노드가 비트들의 송신에서 지연 없음을 무작위로 선택하는 것을 의미하는 반면, 최소값()은 다른 실시예들에서는 음수이다. 음수는 노드가 그와 달리 발생하는 것보다 더 이른 시간에 비트를 송신하는 것을 나타내고, 랜덤 지터 프로세스에 의해 발생된 음의 시간 오프셋은 비트의 더 이른 송신이 노드의 작동 동안 이전 비트의 송신을 방해하지 않을 정도로 충분히 작다. 따라서, 본 명세서에서 사용되는 용어들 "지연" 및 "시간 오프셋"은 더 늦은 송신 시간이 되는 양의 지연들 또는 더 이른 송신 시간이 되는 음의 지연들을 모두 지칭할 수 있다. CAN 제어기(312)는 와 같이 노드들() 사이의 전파 지연의 배수 α에 대응하는 시간이 되도록 선택되는 최대 시간 값()으로 프로그래밍되고, α는 다른 승수 범위들이 사용될 수 있지만, 예를 들어, [1, 2]의 범위에서 미리 결정된 값이다. 유사하게, 의 값은 일 수 있다. 의 값은 일반적으로 임의의 합리적인 추정된 전파 지연 값()보다 크고, 랜덤하게 선택된 최대 지터 시간조차도 데이터 비트들을 송신 및 수신할 때 에러들을 발생시키지 않을 정도로 충분히 작다. 도 3의 실시예에서, 노드들(304, 306) 내 CAN 제어기(312)는 타이밍 지터(324)에서의 난수 발생기의 출력에 기초하여 균일한 랜덤 샘플링 을 사용하여 범위(,)에서 지터 시간 오프셋 값들을 선택한다. CAN 제어기(312)는 임의의 이전에 생성된 지터 오프셋 값에 무관하고 균일하게 각각의 지터 시간 오프셋 값을 균일하고 무관하게 생성한다(예를 들면, 지터 오프셋 값들(j0, j1, j2)에 대하여, j1의 임의의 생성은 j0의 값에 의해 영향을 받지 않고, j2의 임의의 생성은 값 j0 또는 j1에 영향을 받지 않는 등이다.)
프로세스(400) 동안, 노드들(304, 306) 모두는 타이밍 부채널 공격들을 수행하기 위한 공격자(124)의 능력을 감소시키기 위해 랜덤화된 방식으로 데이터의 각 비트의 송신 시간들을 조정하기 위해 미리 결정된 지터 범위를 사용한다. 두 개의 노드들(304, 306)은 공격자 노드(124)가 어느 노드가 각각의 수신된 비트를 송신했는지를 높은 확률의 확실성을 가지고 결정할 수 없는 겹치는 시간 범위에서 송신 비트들에 지터 지연들을 생성한다. 노드들(304, 306)에서 랜덤하게 선택된 지터 시간 오프셋 값들을 사용하는 것은 도 3의 구성에 도시된 바와 같이 공격자 노드(124)가 노드들(304, 306) 사이에 있는 CAN 버스상의 위치에 있을 때 가장 효과적이다.
그러나, 다른 버스 구성에서, 노드들(304, 306)에 대한 공격자의 위치는 잠재적으로 랜덤 지터의 효율성을 감소시킨다. 예를 들면, 도 5에 도시된 바와 같이, 공격자 노드(124)는 실질적으로 노드(304)에 더 가까운 버스의 한 단부에 있도록 재배치되고 공격자 노드(124)는 또한 제 2 노드(306)로부터 더 먼 거리에 있고, 이는 노드 2로부터의 임의의 전파된 신호가 공격자(124)에 도달하기 위해 노드간 전파 지연(t12)보다 항상 더 많이 걸리지만, 노드(304)로부터의 신호들이 공격자(124)에 대해 훨씬 더 짧은 경로를 갖는다는 것을 의미한다. 도 5의 구성에서, 임의의 시간 지터 오프셋들에 의해서조차, 공격자(124)는 확률적 추론을 사용하여 먼저 도달하는 신호가 제 2 노드로부터의 비교적 큰 전파 오프셋으로 인해 정확할 확률이 50%보다 큰 노드(304)로부터 온 것으로 가정할 수 있다. 이러한 시나리오에서, 노드(304) 내 CAN 제어기(312)는 추정된 전파 지연 출력()을 최소 지터 지연 및 최대 시간 값 범위에 추가된 시간 오프셋으로서 사용하여 추정된 전파 지연을 각각 랜덤하게 생성된 지터 값에 효과적으로 추가하고:, 동시에 노드(306)는 디폴트 지터 시간 범위(, )를 계속 사용한다. 공격자에게 가장 가까운 노드에 대한 지터 시간 간격에 대한 이러한 일정한 시간 오프셋은 또 다시 공격자에 의해 수행될 수 있는 타이밍 부채널 공격들의 효과를 감소시킨다. 공격자(124)가 노드(306)에 실질적으로 더 가까운 도 5에서의 영역(R3)으로 재배치되는 경우, 노드(306)는 전파 지연()의 추정치를 선택된 지터 값들에 대한 일정한 오프셋으로서 사용하여 영역(R3)에 위치되는 공격자 노드의 효과를 감소시킨다.
도 3 및 도 5에서 상기에 도시된 바와 같이, CAN 버스에서 공격자의 위치는 두 노드들(304, 306)이 동시에 비트를 송신하여 암호 키 교환을 수행할 때 비트들의 정확한 송신 시간에 영향을 미치는 지터 시간 오프셋들을 생성하기 위해 노드들(304, 306)의 동작 방식에 영향을 줄 수 있다. 물론, 정교한 공격자 노드는 잠재적으로 CAN 버스를 따라 광범위한 위치에 위치할 수 있다. 그러나, 많은 실제 CAN 버스 실시예들에서, 공격자 노드(124)는 특정 CAN 버스가 CAN 버스에 연결될 추가 노드들을 위한 소켓들을 제공하는 하나 또는 적은 수의 고정 위치들에서 CAN 버스에 연결될 높은 가능성을 가진다. 예를 들면, 대부분의 상업용 자동차들에 사용되는 온보드 진단 II(OBD-II) 포트는 외부 디바이스가 각 차량 내의 고정 위치에서 차량의 CAN 버스에 연결하게 한다. 결과적으로, 공격자의 가장 가능성이 높은 위치는 OBD-II 포트의 위치에 있고, CAN 버스의 노드들 내의 CAN 제어기들은 특히 OBD-II 포트 또는 다른 고정 연결 위치에 있는 공격자에 대한 가장 큰 효과를 가지고 랜덤화된 지터 시간 오프셋을 가지고 비트들을 송신하도록 구성될 수 있다.
프로세스(400) 동안, 송신 노드들(304, 306)은 랜덤하게 생성된 지터 값들을 사용하여 일련의 송신된 비트들에서 각각의 동시에 송신된 비트에 대해 랜덤 방식으로 송신 시간을 조정하여 암호 키 교환 프로세스를 수행한다. 예를 들면, 노드(304)는 송수신기(316)로부터 비트 송신의 레이트에 기초하여 고정된 시간 간격들로 분리되는 미리 결정된 송신 시간들[t0, t1, t2, ...]에 순서대로 비트들의 송신을 시작한다. CAN 제어기(312)는 미리 결정된 송신 시간들의 각각에 랜덤하게 생성된 지터 시간 오프셋 값들[j0, j1, j2, ...]을 추가하여[t0+j0, t1+j1, t2+j2, ...] 노드(304)가 랜덤화된 지터 오프셋 시간들로 송신하게 한다. 노드들(304, 306)은 단지 암호 키 교환 프로세스 동안 비트들의 송신으로 지터를 도입하고 암호 키 교환 프로세스가 완료된 후에 지터의 추가 없이 정상 송신으로 리턴할 필요가 있다.
프로세스(400)에서 전술한 실시예들은 타이밍 부채널 공격을 수행하기 위한 공격자 노드의 능력을 감소시키거나 제거하기 위해 암호 키 교환 프로세스에 직접 참여하는 노드들의 동작들을 설명한다. 또한, 일부 실시예들에서, 암호 키 교환 프로세스에 직접 참여하고 있지 않은 CAN 버스 시스템의 다른 노드들은 타이밍 부채널 공격들을 수행하기 위한 공격자 노드의 능력을 감소시키기 위한 동작들을 수행한다. 이들 노드들은 그들이 타이밍 부채널 공격의 효과를 감소시키기 위해 두 참여 노드들과 협력하기 때문에 "협업" 노드라고 지칭된다. 일 구성에서, CAN 버스 시스템의 비참여 노드는 암호 키 교환 프로세스 동안 우세한 송신을 검출하고 우성 비트를 또한 송신함으로써 원래(알 수 없는) 송신기를 돕는다. 노드들의 그룹들이 쌍의 방식의 키 교환 프로세스(pair-wise key exchange process)에 의해 암호 키를 공유하는 그룹 키 시나리오들에 대하여, 이들 노드들이 암호 키를 이미 수신했기 때문에, 특정 노드들(능동 관찰자들)은 송신될 비트를 알고 있다. 이들 노드들은 우성 비트를 송신하는 참여 노드로부터 송신된 신호의 타이밍을 더 혼란스럽게 하기 위해 버스를 관찰하지 않고 우성 비트를 송신하기 위해 참여 노드들 중 하나에 대한 예상 시간에 대응하는 미리 결정된 시간에 우성 비트의 송신을 시작할 수 있다. 우성 비트들을 송신하기 위한 비참여 노드들의 동작은 비트 지속 시간 및 전이 에지들을 랜덤하게 연장하여 공격자 관찰들을 난독화시키는 효과를 가진다.
프로세스(400) 동안 비참여 노드들이 우성 비트들을 송신하게 하는 것 외에, 하나 이상의 추가의 비참여 노드들은 CAN 버스에 연결된 가변 임피던스 회로를 포함한다. 적어도 하나의 비참여 노드는 가변 임피던스 디바이스를 작동시켜서 전체 CAN 버스의 임피던스 레벨에 영향을 미치는 부하 저항에 임의의 변경들을 도입하고, 동시에 두 개의 참여 노드들은 암호 키 교환 프로세스 동안 데이터를 송신한다. 송신된 신호들에서 전압 레벨의 가짜 전이들을 야기할 수 있고, 이는 협력 송수신기들로 인한 잔류 누설을 마스킹할 수 있다.
본 명세서에 설명된 실시예들은 공격자는 어느 노드가 데이터 비트를 송신하는지 식별할 수 있는 CAN 버스와 같은 공유 통신 매체를 사용하여 동시에 송신하는 디바이스들에 대한 타이밍 부채널 공격들을 위한 방법들을 설명한다. 실시예들은 또한 이들 공격들의 효과를 감소시키거나 제거하는 시스템들 및 방법들을 설명한다. 이들 실시예들은 고해상도 장비를 사용하여 통신 매체의 전압 특성들을 물리적으로 프로브할 수 있는 공격자들로부터 보호한다. 이들 방법들을 사용할 수 있는 시스템들의 예들은 자동차 시스템들(자동차들, 버스들, 트럭들, 농장 장비, 기차들), CAN 버스를 사용하는 산업 시스템들, DC 전기 배전 시스템용 제어 패널들, 및 CAN 버스를 사용하는 보안 시스템들을 포함하지만 이에 한정되지 않는다. 본 명세서에 설명된 실시예들은 노드들에 의해 비트 송신 시간에 임의의 지터 시간 오프셋들을 도입하여 공격자에 의해 관찰되는 신호들의 타이밍 측정들을 혼란스럽게 한다. 제 2 실시예는 버스에서 다수의 송신기들 및 수신기들을 이용하여 비트 지속 시간을 연장시키고 공격자 관찰들을 난독화시킨다. 다른 실시예들은 스퓨리어스 전이들(spurious transitions)을 도입함으로써 다수의 송신기들을 방해함으로써 제 2 아키텍처를 향상시킨다. 이는 네트워크 임피던스의 변동을 허용하는 아키텍처를 형성함으로써 달성된다.
상기 개시된 및 다른 특징들 및 기능들의 변형들, 또는 그의 대안들이 많은 다른 상이한 시스템들, 애플리케이션들 또는 방법들로 바람직하게 조합될 수 있음이 이해될 것이다. 현재 예상되지 않거나 예상치 못한 다양한 대안들, 수정들, 변동들 또는 개선들이 다음의 청구 범위에 의해 포함되도록 의도된 당업자에 의해 후속하여 행해질 수 있다.

Claims (9)

  1. 통신 네트워크에서 적어도 하나의 노드의 동작 방법에 있어서,
    제 1 노드 내 제 1 제어기에 의해, 미리 결정된 시간 범위 내에서 랜덤하게 생성된 제 1 지터 시간 오프셋을 생성하는 단계;
    제 2 노드 내 제 2 제어기에 의해, 미리 결정된 시간 범위 내에서 랜덤하게 생성된 제 2 지터 시간 오프셋을 생성하는 단계;
    제 1 노드 내 제 1 송수신기에 의해, 공유 통신 매체에 연결된 제 1 송수신기의 출력을 통해 제 1 데이터 비트를 송신하는 단계로서, 제 1 데이터 비트는 제 1 미리 결정된 송신 시간에 추가된 제 1 지터 시간 오프셋에 대응하는 제 1 시간에 송신되는, 제 1 데이터 비트를 송신하는 단계; 및
    제 2 노드 내 제 2 송수신기에 의해, 공유 통신 매체에 연결된 제 2 송수신기의 출력을 통해 제 2 데이터 비트를 송신하는 단계로서, 제 2 데이터 비트는 제 1 미리 결정된 송신 시간에 추가된 제 2 지터 시간 오프셋에 대응하는 제 2 시간에 송신되는, 제 2 데이터 비트를 송신하는 단계를 포함하고,
    제 1 데이터 비트와 제 2 데이터 비트는 적어도 부분적으로 동시에 공유 통신 매체 상에서 송신되는, 통신 네트워크에서 적어도 하나의 노드의 동작 방법.
  2. 제 1 항에 있어서,
    제 1 노드 내 제 1 제어기에 의해, 제 1 지터 시간 오프셋과 관계없이 미리 결정된 시간 범위 내에서 랜덤하게 생성된 제 3 지터 시간 오프셋을 생성하는 단계;
    제 2 노드 내 제 2 제어기에 의해, 제 2 지터 시간 오프셋과 관계없이 미리 결정된 시간 범위 내에서 랜덤하게 생성된 제 4 지터 시간 오프셋을 생성하는 단계;
    제 1 노드 내 제 1 송수신기에 의해, 제 1 송수신기의 출력을 통해 제 3 데이터 비트를 송신하는 단계로서, 제 3 데이터 비트는 제 2 미리 결정된 송신 시간에 추가된 제 3 지터 시간 오프셋에 대응하는 제 3 시간에 송신되는, 제 3 데이터 비트를 송신하는 단계;
    제 2 노드 내 제 2 송수신기에 의해, 제 2 송수신기의 출력을 통해 제 4 데이터 비트를 송신하는 단계로서, 제 4 데이터 비트는 제 2 미리 결정된 송신 시간에 추가된 제 4 지터 시간 오프셋에 대응하는 제 4 시간에 송신되는, 제 4 데이터 비트를 송신하는 단계를 더 포함하고,
    제 3 데이터 비트와 제 4 데이터 비트는 적어도 부분적으로 동시에 공유 통신 매체 상에서 송신되는, 통신 네트워크에서 적어도 하나의 노드의 동작 방법.
  3. 제 1 항에 있어서,
    공유 통신 매체는 계측 제어기 통신망(Controller Area Network; CAN) 버스 인, 통신 네트워크에서 적어도 하나의 노드의 동작 방법.
  4. 제 1 항에 있어서,
    제 1 노드 내 제 1 송수신기에 의해, 공유 통신 매체를 통해 제 1 데이터 프레임을 공유 통신 매체에 연결된 제 2 노드로 송신하는 단계;
    제 1 노드 내 제 1 송수신기에 의해, 제 1 데이터 프레임에 응답하여 제 2 노드로부터 제 2 데이터 프레임을 수신하는 단계;
    제 1 노드 내 제 1 제어기에 의해, 제 1 노드와 제 2 노드 사이에서 송신된 신호들에 대한 추정된 전파 지연 시간을 식별하는 단계로서, 전파 지연 시간은 제 1 데이터 프레임의 송신 종료 및 제 2 데이터 프레임의 수신 개시로부터의 경과 시간의 절반에 대응하는, 추정된 전파 지연 시간을 식별하는 단계; 및
    제 1 노드 내 제 1 제어기에 의해, 제 1 데이터 비트를 송신하기 전에 추정된 전파 지연 시간에 기초하여 최소 시간 값 및 최대 시간 값을 갖는 미리 결정된 시간 범위를 생성하는 단계를 더 포함하는, 통신 네트워크에서 적어도 하나의 노드의 동작 방법.
  5. 제 4 항에 있어서,
    제 1 노드 내 제 1 제어기에 의해, 제 1 데이터 비트를 송신하기 전에 1보다 크고 2보다 작은 미리 결정된 값이 곱해진 추정된 전파 지연 시간에 기초하여 최대 시간 값을 갖는 미리 결정된 시간 범위를 생성하는 단계를 더 포함하는, 통신 네트워크에서 적어도 하나의 노드의 동작 방법.
  6. 제 4 항에 있어서,
    제 1 노드 내 제 1 제어기에 의해, 추정된 전파 지연 시간만큼 미리 결정된 시간 범위를 오프셋시키기 위해 추정된 전파 지연 시간을 미리 결정된 시간 범위의 최소 시간 값 및 미리 결정된 시간 범위의 최대 시간 값에 추가하는 단계를 더 포함하는, 통신 네트워크에서 적어도 하나의 노드의 동작 방법.
  7. 제 1 항에 있어서,
    제 1 시간에서 제 1 노드로부터의 제 1 데이터 비트 및 제 2 시간에서 제 2 노드로부터의 제 2 데이터 비트의 송신은 공유 통신 매체에 연결된 공격자 노드(adversary node)가 공유 통신 매체를 통해 제 1 노드가 제 1 비트를 송신하고 제 2 노드가 제 2 비트를 송신한 것을 결정하는 것을 방지하는, 통신 네트워크에서 적어도 하나의 노드의 동작 방법.
  8. 제 7 항에 있어서,
    공유 통신 매체에 연결된 제 3 노드 내 제 3 송수신기에 의해, 제 1 노드로부터의 제 1 비트 및 제 2 노드로부터의 제 2 비트 중 하나의 송신을 검출하는 단계; 및
    제 3 노드 내 제 3 송수신기에 의해, 공유 통신 매체를 통한 우성 비트의 송신 시간을 연장하고 공유 통신 매체에 연결된 공격자 노드가 공유 통신 매체를 통해 제 1 노드가 제 1 데이터 비트를 송신하고 제 2 노드가 제 2 데이터 비트를 송신한 것을 결정하는 것을 방지하기 위해 제 1 노드로부터 제 1 데이터 비트 및 제 2 노드로부터 제 2 데이터 비트의 송신 동안 공유 통신 매체를 통해 우성 비트를 송신하는 단계를 더 포함하는, 통신 네트워크에서 적어도 하나의 노드의 동작 방법.
  9. 제 7 항에 있어서,
    공유 통신 매체에 연결된 제 3 노드 내 제 3 송수신기에 의해, 공유 통신 매체를 통한 우성 비트의 송신 시간을 연장하고 공유 통신 매체에 연결된 공격자 노드가, 공유 통신 매체를 통해 제 1 노드가 제 1 비트를 송신하고 제 2 노드가 제 2 비트를 송신한 것을 결정하는 것을 방지하기 위해 제 1 노드로부터의 제 1 데이터 비트 및 제 2 노드로부터의 제 2 데이터 비트의 송신에 대응하는 미리 결정된 시간에 공유 통신 매체를 통해 우성 비트를 송신하는 단계를 더 포함하는, 통신 네트워크에서 적어도 하나의 노드의 동작 방법.
KR1020197029458A 2017-03-08 2018-03-08 계측 제어기 통신망을 통한 키 합의 방식에 대한 타이밍 기반 공격들을 완화시키기 위한 방법들 KR102595961B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762468680P 2017-03-08 2017-03-08
US62/468,680 2017-03-08
PCT/US2018/021587 WO2018165456A1 (en) 2017-03-08 2018-03-08 Methods to mitigate timing based attacks on key agreement schemes over controller area network

Publications (2)

Publication Number Publication Date
KR20190118208A KR20190118208A (ko) 2019-10-17
KR102595961B1 true KR102595961B1 (ko) 2023-11-01

Family

ID=63445684

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197029458A KR102595961B1 (ko) 2017-03-08 2018-03-08 계측 제어기 통신망을 통한 키 합의 방식에 대한 타이밍 기반 공격들을 완화시키기 위한 방법들

Country Status (5)

Country Link
US (1) US10805339B2 (ko)
EP (1) EP3593484B1 (ko)
KR (1) KR102595961B1 (ko)
CN (1) CN110582985B (ko)
WO (1) WO2018165456A1 (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3055063B1 (fr) 2016-08-11 2018-08-31 Soitec Procede de transfert d'une couche utile
US10929535B2 (en) * 2018-06-29 2021-02-23 Intel Corporation Controlled introduction of uncertainty in system operating parameters
DE102018220204A1 (de) * 2018-11-23 2020-05-28 Diehl Metering Gmbh Verschleierung von umwelteinflüssen auf den sendeparametern
WO2020226836A1 (en) 2019-05-03 2020-11-12 Microchip Technology Incorporated Emulating collisions in wired local area networks and related systems, methods, and devices
CN112422385B (zh) 2019-08-23 2022-11-29 微芯片技术股份有限公司 用于改进的媒体访问的接口以及相关的系统、方法和设备
CN112423403A (zh) 2019-08-23 2021-02-26 微芯片技术股份有限公司 检测网络上的冲突
CN112491435B (zh) 2019-08-23 2022-11-18 微芯片技术股份有限公司 包括收发器和驱动器架构的物理层的电路
CN112422295B (zh) 2019-08-23 2023-06-13 微芯片技术股份有限公司 以太网接口及相关系统、方法和设备
US11121782B2 (en) 2019-08-23 2021-09-14 Microchip Technology Incorporated Diagnosing cable faults within a network
CN112422153B (zh) 2019-08-23 2023-04-07 微芯片技术股份有限公司 检测到共享传输介质处冲突后处理数据接收的方法和系统
CN112422219B (zh) 2019-08-23 2024-05-24 微芯片技术股份有限公司 以太网接口和相关系统、方法和设备
US11456855B2 (en) * 2019-10-17 2022-09-27 Arm Limited Obfuscating data at-transit
US11736517B2 (en) * 2020-02-10 2023-08-22 Seagate Technology Llc Data storage device with security module
US11698975B2 (en) 2020-02-26 2023-07-11 Seagate Technology Llc Distributed data storage system with backward attestation
DE112021001780T5 (de) 2020-03-24 2023-01-05 Microchip Technology Incorporated Wake-quellenkommunikation einer schnittstelle mit niedriger verbindungsanzahl gemäss lokalem und entferntem 10spe-wake und zugehörige systeme, verfahren und vorrichtungen
DE102020214945A1 (de) * 2020-11-27 2022-06-02 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Überprüfen einer Nachricht in einem Kommunikationssystem
CN113225180A (zh) * 2021-04-29 2021-08-06 北京连山科技股份有限公司 一种通信密钥的保护方法和系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110040859A1 (en) * 2008-01-14 2011-02-17 Davide Tazzari Method for Assigning Addresses to a Plurality of Electronic Devices Connected to a Communication Channel
US20170019382A1 (en) * 2015-07-17 2017-01-19 Robert Bosch Gmbh Method and system for secure key generation over an insecure shared communication medium

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6898582B2 (en) * 1998-12-30 2005-05-24 Algodyne, Ltd. Method and apparatus for extracting low SNR transient signals from noise
GB2365153A (en) * 2000-01-28 2002-02-13 Simon William Moore Microprocessor resistant to power analysis with an alarm state
CN1214553C (zh) * 2000-11-17 2005-08-10 三星电子株式会社 在窄带时分双工码分多址移动通信系统中测量传播延迟的设备和方法
DE10128573A1 (de) * 2001-06-13 2003-01-02 Infineon Technologies Ag Verhindern der unerwünschten externen Erfassung von Operationen in integrierten Digitalschaltungen
US7869769B2 (en) * 2007-11-28 2011-01-11 Motorola, Inc. Method and apparatus for reconfigurable frequency generation
KR101663322B1 (ko) * 2009-08-25 2016-10-07 한국전자통신연구원 데이터 송수신을 위한 동기 제어 방법 및 데이터 송수신 동기를 위한 스테이션
US20110285421A1 (en) * 2010-05-24 2011-11-24 Alexander Roger Deas Synchronous logic system secured against side-channel attack
US20120075596A1 (en) * 2010-09-24 2012-03-29 Hannah Eric C High efficiency illumination
US20120083902A1 (en) * 2010-09-30 2012-04-05 Wolf Daum Communication system and method for communicating between master and slave devices
CN101977134A (zh) * 2010-11-02 2011-02-16 电子科技大学 一种汽车电子控制器通信网络总线负载的均散化方法
WO2013085362A1 (en) * 2011-12-08 2013-06-13 Lg Electronics Inc. Method of transmitting and receiving data unit in wireless local area network system and apparatus for the same
US8955157B2 (en) 2012-07-03 2015-02-10 Honeywell International Inc. Method and apparatus for differential power analysis protection
JP5778099B2 (ja) * 2012-08-24 2015-09-16 株式会社日本自動車部品総合研究所 受信回路
EP2712123A1 (en) * 2012-09-20 2014-03-26 Robert Bosch Gmbh Standard CAN implementation tolerating CAN FD frames
US8897319B2 (en) * 2013-03-15 2014-11-25 Concio Holdings LLC High speed embedded protocol for distributed control systems
WO2015013440A1 (en) * 2013-07-23 2015-01-29 Battelle Memorial Institute Systems and methods for securing real-time messages
US9832093B1 (en) * 2014-02-26 2017-11-28 Keysight Technologies, Inc. Method for injecting timing variations into continuous signals
US9887868B2 (en) * 2015-06-25 2018-02-06 Intel IP Corporation Techniques using a first band of communication to determine frequency synchronization for communication on a second band
KR101701623B1 (ko) * 2015-07-09 2017-02-13 라인 가부시키가이샤 VoIP 통화음성 대역폭 감소를 은닉하는 시스템 및 방법
US11048797B2 (en) * 2015-07-22 2021-06-29 Arilou Information Security Technologies Ltd. Securing vehicle bus by corrupting suspected messages transmitted thereto
CN107748589A (zh) * 2017-10-18 2018-03-02 京东方科技集团股份有限公司 一种输出电压可调电路及其电压调整方法和显示装置
US10838898B2 (en) * 2017-12-05 2020-11-17 Qualcomm Incorporated Bit-interleaved bi-directional transmissions on a multi-drop bus for time-critical data exchange

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110040859A1 (en) * 2008-01-14 2011-02-17 Davide Tazzari Method for Assigning Addresses to a Plurality of Electronic Devices Connected to a Communication Channel
US20170019382A1 (en) * 2015-07-17 2017-01-19 Robert Bosch Gmbh Method and system for secure key generation over an insecure shared communication medium

Also Published As

Publication number Publication date
EP3593484A4 (en) 2020-12-09
EP3593484B1 (en) 2022-10-12
US10805339B2 (en) 2020-10-13
CN110582985B (zh) 2023-04-11
EP3593484A1 (en) 2020-01-15
KR20190118208A (ko) 2019-10-17
WO2018165456A1 (en) 2018-09-13
US20180262526A1 (en) 2018-09-13
CN110582985A (zh) 2019-12-17

Similar Documents

Publication Publication Date Title
KR102595961B1 (ko) 계측 제어기 통신망을 통한 키 합의 방식에 대한 타이밍 기반 공격들을 완화시키기 위한 방법들
KR102269220B1 (ko) 계측 제어기 통신망(can)을 통한 키 합의에 대한 전압 기반 공격들을 완화하기 위한 방법
EP3593486B1 (en) Methods for minimizing side channel leakage for group key agreement for controller area network
Woo et al. Can id shuffling technique (cist): Moving target defense strategy for protecting in-vehicle can
CN110582996B (zh) 用于在控域网之上减轻对密钥协定方案的基于瞬态的攻击的方法
WO2016185514A1 (ja) 攻撃検出装置
US11245673B2 (en) Method for communicating data from a sensor device to an electronic control unit, a sensor device and an electronic control unit
Wang et al. A delay based plug-in-monitor for intrusion detection in controller area network
WO2018208359A2 (en) Communications bus data transmission using relative ground shifting
Jain et al. Probing attacks on physical layer key agreement for automotive controller area networks
Groza et al. Can-square-decimeter level localization of electronic control units on can buses
Roeschlin et al. EdgeTDC: On the security of time difference of arrival measurements in CAN bus systems
Jain et al. Probing attacks on physical layer key agreement for automotive controller area networks (extended version)
Lee et al. Real Time Perfect Bit Modification Attack on In-Vehicle CAN
Ogura et al. Electrical falsification of can data by magnetic coupling
Serag Alsharif PROACTIVE VULNERABILITY IDENTIFICATION AND DEFENSE CONSTRUCTION--THE CASE FOR CAN
Alsharif Proactive Vulnerability Identification and Defense Construction–The Case for Can

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right