KR101669946B1 - 전력 신호를 이용한 ecu 식별 장치 및 방법 - Google Patents

전력 신호를 이용한 ecu 식별 장치 및 방법 Download PDF

Info

Publication number
KR101669946B1
KR101669946B1 KR1020150121842A KR20150121842A KR101669946B1 KR 101669946 B1 KR101669946 B1 KR 101669946B1 KR 1020150121842 A KR1020150121842 A KR 1020150121842A KR 20150121842 A KR20150121842 A KR 20150121842A KR 101669946 B1 KR101669946 B1 KR 101669946B1
Authority
KR
South Korea
Prior art keywords
data
ecu
power signal
ecus
field
Prior art date
Application number
KR1020150121842A
Other languages
English (en)
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 고려대학교 산학협력단
Priority to KR1020150121842A priority Critical patent/KR101669946B1/ko
Application granted granted Critical
Publication of KR101669946B1 publication Critical patent/KR101669946B1/ko

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
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40104Security; Encryption; Content protection
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mechanical Engineering (AREA)
  • Small-Scale Networks (AREA)

Abstract

ECU 식별 장치 및 ECU 식별 방법이 개시된다. 상기 ECU 식별 장치에서 ECU를 식별하는 방법는 식별하고자 하는 데이터를 수신하는 단계, 상기 데이터의 전력 신호를 측정하는 단계, 상기 데이터의 ID 필드 정보를 이용하여 어느 ECU의 데이터인지 여부를 확인하는 단계, 상기 ECU에 대하여 미리 학습된 전력 신호 데이터를 상기 측정된 전력 신호와 비교하여, 상기 ECU에서 생성하고 송신한 데이터인지 여부를 식별하는 단계를 포함한다.

Description

전력 신호를 이용한 ECU 식별 장치 및 방법{APPRATUS AND METHOD FOR IDENTIFICATION OF ECU USING VOLTAGE SIGNAL}
본 발명의 개념에 따른 실시 예는 전력 신호를 이용한 ECU 식별 장치 및 그 방법에 관한 것으로, 특히, 데이터에서 고정된 값을 출력하는 비트의 전력 신호를 분석하고 이를 이용하여 데이터를 송신한 ECU를 식별할 수 있는 ECU 식별 장치 및 그 방법에 관한 것이다.
최근의 자동차들은 운전자와 승객에게 안전성과 편의성을 제공하기 위해 다양한 정보통신기술을 융합시키고 있다. 자동차에 정보통신기술을 효율적으로 융합시키기 위해서는 ECU(Electronic Control Unit)의 사용이 필수적으로 요구된다. 자동차 내부에 탑재되는 ECU는 도입 초기부터 지금까지 그 수요가 꾸준히 증가하여 최근에 개발되는 고급 자동차의 경우 약 70여개 이상의 ECU들이 자동차 내부에 탑재되고 있다. 자동차에 탑재되는 ECU들 사이의 효율적인 통신을 위하여 자동차 제조사에서는 CAN(Controller Area Network)을 사용하고 있다.
그러나, CAN은 폐쇄적인 네트워크 환경만 고려하고 설계되어 정보보호 기능을 전혀 제공하지 않는다. 자동차에 정보통신기술의 융합이 가속화 되면서 CAN의 취약점을 이용한 각종 해킹 사례가 발표되고 있다. 이에, 정보통신기술 융합의 원활한 발전을 위해 안전한 CAN 통신 환경을 구축해야 할 필요성이 대두되고 있다.
CAN은 외부 전자파나 노이즈에 강한 장점을 갖고 있으며 이런 특성 때문에 차량 내부 네트워크 구축에 가장 큰 비중을 차지하고 있다. 하지만 보안적인 측면에서 CAN은 몇 가지 취약점을 갖고 있다. CAN은 브로드캐스트 통신 방식을 사용하기 때문에 데이터의 도청에 취약하다. 특히 최근 차량 기술의 동향은 외부 환경과의 통신을 지향하고 있기 때문에 현재의 CAN구조에서는 외부에서의 도청을 방지할 수 없다. 또한 CAN에는 도청으로 수집된 데이터에 대한 메시지 재전송공격을 방지 할 수 있는 보안 기법이 적용되어 있지 않다.
위에 언급된 문제점을 해결하기 위해서 일반적인 IT환경에서는 메시지인증코드(Message Authentication Code; MAC)를 사용한다. 그러나 CAN 데이터 프레임 내부의 데이터 필드에는 MAC을 저장할 수 있는 가용공간이 충분하지 않다. 또한, 기존 IT분야에서 사용되는 암호학적 기법을 차량환경에 적용시켰을 때, ECU의 제한적인 연산 능력 때문에 데이터의 실시간적인 처리를 보장하기 어렵다.
최근 연구들은 OBD-2(On Board Diagnostics)단자를 통해 CAN과 통신하여 차량을 자가 진단하거나 CAN의 데이터를 가공하여 사용자 편의를 제공하는 방법을 제안하고 있다. 하지만, CAN의 특성을 악용한 공격자가 차량을 제어할 수 있는 취약점이 존재한다. 따라서 차량 외부에서 CAN 데이터를 주입했을 경우, 이를 식별할 수 있어야 한다.
특허문헌 한국공개특허 제10-2014-0023799에서는 암호화키 및 인증키를 이용하여 외부 도청(sniffing)으로부터 ECU간 송수신 CAN 데이터의 기밀성과 무결성을 보장하는 방법을 개시하고 있다.
특허문헌 한국등록특허 제10-1508497호에서는 그룹키, 그룹세션키 및 메시지인증코드를 이용하여 메시지를 획득하는 차량용 데이터의 인증 및 획득 방법을 개시하고 있다.
본 명세서에서는 CAN 데이터 중 고정 값을 출력하는 필드의 물리 계층 신호(전력 신호)를 분석하여 실시간으로 ECU를 식별하는 방법을 제안한다.
삭제
KR 10-2014-0023799 A KR 10-1508497 B1
CAN 통신 도청 및 조작을 통한 차량 ECU의 외부위협 가능성 분석, 김강석, 고려대학교, 학위논문, 2011. R. B. GmbH, CAN Specification version 2.0, Std., 1991.
본 발명이 이루고자 하는 기술적인 과제는 차량 내부 통신 시스템에 포함된 모든 ECU들의 전력 신호 데이터를 학습하고 이를 이용하여, ECU 식별 장치에서 수신한 데이터의 ID 필드를 통해 확인된 ECU에서 생성하고 송신한 데이터인지 또는 차량 외부로부터 유입된 데이터인지 여부를 식별하는 ECU 식별 장치 및 ECU 식별 방법을 제공하는 것이다.
본 발명의 실시 예에 따른 ECU 식별 장치는 복수 개의 ECU들과 데이터를 통신하는 통신부, 상기 데이터의 전력 신호를 측정하는 측정부, 상기 측정된 전력 신호와 미리 학습된 전력 신호를 비교하여 상기 데이터가 차량 내부의 ECU에서 송신한 데이터인지 여부를 식별하는 식별부를 포함한다. 이때, 상기 식별부에서 상기 ECU를 식별하기 위하여 이용하는 전력 신호는 상기 데이터에서 고정된 값을 출력하는 비트 또는 상기 고정된 값을 출력하는 비트와 인접한 비트의 전력 신호이다.
또한, 본 발명의 실시 예에 따른 ECU 식별 장치가 ECU를 식별하는 방법은 상기 ECU 식별 장치가 식별하고자 하는 데이터를 수신하는 단계, 상기 데이터의 전력 신호를 측정하는 단계, 상기 데이터의 ID 필드 정보를 이용하여 어느 ECU의 데이터인지 여부를 확인하는 단계, 상기 ECU에 대하여 미리 학습된 전력 신호 데이터를 상기 측정된 전력 신호와 비교하여, 상기 ECU에서 생성하고 송신한 데이터인지 여부를 식별하는 단계;를 포함한다. 이때, 상기 식별 단계에서 이용하는 전력 신호는 상기 데이터에서 고정된 값을 출력하는 비트 또는 상기 고정된 값을 출력하는 비트와 인접한 비트의 전력 신호이다.
본 발명의 실시 예에 따른 전력 신호를 이용한 ECU 식별 방법에 의하면, 메시지 재생공격 등을 이용한 해킹으로부터 통신 시스템을 보호할 수 있는 효과가 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 일 실시 예에 의한 통신 시스템을 도시한다.
도 2는 CAN 데이터 프레임 포맷을 도시한다.
도 3은 도 1에 도시된 ECU 식별 장치의 기능 블럭도이다.
도 4는 도 3에 도시된 ECU 식별 장치의 학습부에서 생성된 전력 신호 데이터의 예를 도시한다.
도 5는 도 3에 도시된 ECU 식별 장치에서의 ECU 식별 방법을 설명하기 위한 흐름도이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 벗어나지 않은 채, 제1 구성 요소는 제2 구성 요소로 명명될 수 있고 유사하게 제2 구성 요소는 제1 구성 요소로도 명명될 수 있다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 명세서에 첨부된 도면들을 참조하여 본 발명의 실시 예들을 상세히 설명한다.
도 1은 본 발명의 일 실시 예에 의한 통신 시스템을 도시한다. 통신 시스템(10)은 차량용 통신 시스템을 의미할 수 있으며, 구체적으로는 CAN(Controller Area Network) 통신 시스템일 수 있다. 그러나, 본 발명이 통신 시스템(10)의 종류에 제한되는 것은 아니며, 실시 예에 따라 상기 통신 시스템은 CAN FD(CAN with Rlexible Data-Rate), Flexlay, LIN(Local Interconnect Network), 또는 MOST(Multimedia Oriented Systems Transport) 통신 시스템일 수도 있다.
도 1을 참조하면, 통신 시스템(10)은 복수의 ECU(Electronic Control Unit)들과 ECU 식별장치(100), 및 버스(bus; 12)를 포함한다. 도 1에는 총 4 개의 ECU들만이 도시되어 있으나, 통신 시스템(10)에 포함된 ECU의 개수는 n(n은 2 이상의 자연수)일 수 있다.
상기 복수의 ECU들은 제1 ECU(ECUA), 제2 ECU(ECUB), 제3 ECU(ECUC), 및 제4 ECU(ECUD)를 포함한다. 또한, 버스(12)는 두 개의 통신선, CAN_H(또는 CAN High) 및 CAN_L(또는 CAN Low)을 포함한다. 이때, 디지털 '0'(dominant state)의 값을 전송하는 경우, CAN-H에 약 3.5V, CAN-L에 약 1.5V 전압이 흐를 수 있으며, '1'(recessive)의 값을 전송하기 위해서는 CAN-H 및 CAN-L 2개의 선에 약 2. 5V 전압이 흐를 수 있다.
상기 ECU 식별 장치(100)는 ECU(Identification ECU, IECU)일 수 있다.
상기 복수의 ECU들 각각은 대응되는 전자 장치의 동작을 제어할 수 있으며, 버스(12)를 통하여 다른 ECU와 통신할 수 있다. 이때, 상기 복수의 ECU들 각각이 메시지를 송신하거나 수신하기 위해 송수신기를 포함할 수 있으며, 실시 예에 따라 상기 송수신기는 대응되는 ECU와 별도로 구현될 수도 있다.
ECU들은 CAN 통신 버스에 연결되어 있고 브로드캐스트(broadcast) 방식으로 통신한다. 데이터를 전송하고자 하는 ECU가 CAN 데이터 규격에 수신 ECU의 ID와 전송하고자 하는 정보를 포함하여 CAN 버스에 브로드캐스트하면, CAN 버스에 연결된 모든 ECU가 수신하고 CAN 데이터 규격에 포함된 수신 ECU의 ID에 해당하는 ECU만 CAN 데이터를 처리하는 방식이다.
도 2는 본 발명에 일 실시예에 따른 CAN 프로토콜의 데이터 프레임의 구성을 도시한 것으로서, SOF(Start of Frame), ID(Arbitration) Field, RTR Field, Control Field, Data Field, CRC Field, ACK Field 및 EOF(End of Frame) Field로 구성된다.
여기서, 상기 SOF는 데이터 프레임의 시작을 나타내는 비트로서 1 비트가 할당되며, 상기 ID Field는 데이터 프레임의 송신자를 식별할 수 있는 ID 정보를 나타내며 11 비트가 할당된다. 상기 RTR Field는 리모트 프레임과 데이터 프레임을 구별하는 비트로서 1 비트가 할당되며, 리모트 프레임일 경우 신호 종류는 1, 데이터 프레임일 경우의 신호 종류는 0이다. 본 발명에 따른 ECU 식별 장치는 바람직하게는 데이터 프레임을 이용하여 ECU를 식별한다.
상기 Control Field에는 총 6bits가 할당되는데, 그 중에서 2 비트는 예약 비트로서 고정값 '00'을 출력하고, 나머지 4 비트는 다음에 연속되는 Data Field의 데이터(Data) 길이(length)를 나타낸다.
상기 Data Field에는 데이터 프레임의 데이터를 의미하여 최대 64 비트가 할당된다. 상기 CRC Field에는 16bits가 할당되며, 15 비트(CRC Sequence)는 데이터 프레임의 CRC 값을 의미하며, 1 비트(CRC delimiter)는 CRC 값의 끝을 의미하며 고정값 '1'을 출력한다.
상기 ACK Field에는 2 비트가 할당되며 데이터의 수신 여부를 알 수 있는 정보가 실린다. 즉, 임의의 데이터 송신자가 특정 데이터가 포함된 데이터 프레임을 CAN 버스에 실어 주면, 상기 CAN 버스에 연결된 모든 ECU는 현재 CAN 버스에 실린 데이터가 자신에게 필요한 데이터인지를 확인하여, 필요한 데이터라고 판단되면 상기 CAN 버스에 실린 데이터를 수신한다. 이때, 데이터를 수신한 ECU는 데이터 송신자가 출력한 데이터 프레임의 ACK Field에 자신이 데이터를 수신하였음을 알려주는 정보를 실어줌으로써, 상기 데이터 송신자가 똑같은 데이터를 계속해서 출력하지 않도록 한다. 즉,임의의 데이터 송신자가 출력하는 데이터는 CAN 버스에 실린 후 다시 자신에게 피드백(Feedback)되는데, 피드백되는 데이터 프레임의 ACK Field에 실린 정보를 토대로 똑같은 데이터를 재전송할 것인지의 여부를 결정하게 된다. 1 비트(ACK slot)는 ACK 비트이며, 나머지 1 비트(ACK delimiter)는 ACK 값의 끝을 의미하며 고정값 '1'을 출력한다.
마지막으로, 프레임의 끝을 알리는 EOF(End of Frame) Field에는 7 비트가 할당되며 고정값 '1111111'이 출력된다.
CAN 데이터 프레임에서 RTR filed(1비트), Control field의 예약비트(2비트), CRC delimiter(1비트), EOF field(7비트)는 항상 고정적이 값을 출력하는 필드이다. 본 발명에 따른 ECU 식별 장치는 고정 값을 출력하는 RTR filed(1비트), Control field의 예약비트(2비트), CRC delimiter(1비트), EOF field(7비트)의 물리 계층 신호(전력 신호)를 분석하여 ECU를 식별할 수 있다.
도 3는 본 발명에 따른 ECU 식별 장치의 기능 블럭도이다.
도 3을 참조하면, ECU 식별 장치(100)는 통신부(110), 측정부(130), 학습부(150), 식별부(170), 및 제어부(190)을 포함한다.
통신부(110)는 제어부(190)의 제어 하에, CAN 버스를 이용하여 복수 개의 ECU 각각과 통신을 수행할 수 있다. 즉, 각각의 ECU(
Figure 112015083842960-pat00001
)로부터 CAN 데이터를 수신할 수 있으며, 각각의 ECU(
Figure 112015083842960-pat00002
)에 ECU 식별 결과 등을 포함하는 CAN 데이터를 전송할 수 있다.
측정부(130)는 각각의 ECU(
Figure 112015083842960-pat00003
)로부터 수신된 데이터의 전력 신호를 측정할 수 있다. 예를 들어 CAN 데이터의 특정 비트 값이 0(dominant state)인 경우, CAN-H 통신선에서 약 3.5V, CAN-L 통신선에서 약 1.5V 전압을 측정할 수 있으며, 비트 값이 1(recessive)인 경우, CAN-H 및 CAN-L 2개의 선에서 약 2.5V 전압을 측정할 수 있다.
학습부(150)는 상기 측정된 각각의 ECU(
Figure 112015083842960-pat00004
)의 데이터 전력 신호의 특성을 학습하여 각각의 ECU(
Figure 112015083842960-pat00005
)에 대하여 학습 된 전력 신호 데이터(
Figure 112015083842960-pat00006
)를 생성한다. 도 4는 ECU 식별 장치(100)의 학습부(150)에서 생성된 전력 신호 데이터의 예를 도시한다. 상기 전력 신호의 특성은 전력 신호의 세기일 수 있다.
이때, 학습부(150)는 상기 전력 신호 세기의 특성을 분석하기 위하여, 고정 값을 출력하는 RTR filed, Control field의 예약비트, CRC delimiter, EOF field를 이용한다. 이때, 학습부(150)는 상기 고정 값을 출력하는 데이터 자체의 전력 신호를 분석할 수 있다. 또한, 학습부(150)는 전력 신호의 세기가 변화할 때의 특성(인접하는 데이터 값에 따라서 전력 세기의 값이 변화하는 특성 등)을 학습하기 위하여, 고정 값을 출력하는 부분과 인접한 부분의 데이터를 함께 분석할 수 있다.
구체적으로 학습부(150)는 RTR filed(1비트), Control field의 예약비트(2비트)를 활용하여 연속적으로 발생하는 3비트의“000”해당하는 전력 신호 특성을 학습할 수 있다. 또한, Control field의 예약비트(2비트) 바로 다음에 오는 데이터 길이 나타내는 부분의 첫 부분에 존재하는 비트의 값이 변화할 수 있으며, 이를 활용하여 전력 신호를 학습할 수 있다. 예를 들어, Control Field의 3번째 비트 값을 활용할 경우,“0001”혹은“0000”에 해당하는 전력 신호를 학습할 수 있다.
학습부(150)는 CRC delimiter(1비트)를 활용하여 “1”에 해당하는 전력 신호 특성을 학습할 수 있다. 또한, 상기 CRC delimiter 전에 발생하는 CRC Sequence의 마지막 부분에 존재하는 비트 값을 활용하여 전력신호 학습에 이용할 수 있다. 예를 들어 15번째 비트 값을 활용할 경우, 두 가지 경우의 전력 신호 “01”혹은 “11”을 학습할 수 있다.
또한, 학습부(150)는 EOF field(7비트)의 전력신호 “1111111”을 학습할 수 있다. 이때, ACK delimiter(1비트)를 포함하는 전력신호 “11111111”을 학습하는 것도 가능하며, ACK Field(2비트, ACK slot 및 ACK delimiter)를 포함하는 전력신호 "011111111" 또는 "111111111"을 학습하는 것도 가능하다.
고정 비트 자체에 대한 학습 및 고정 비트 및 인접 비트를 포함하는 부분에 대한 학습을 모두 수행하는 방법에 대하여 기재하고 있으나, 실시예에 따라, 학습부(150)는 항상 고정 값을 출력하는 비트에 대해서만 학습할 수도 있으며, 또한, 학습부(150)는 고정 값을 출력하는 비트와 인접한 부분을 포함하는 비트에 대해서만 학습하는 것도 가능하다.
또한, 본 실시예와 달리 학습부(150)가 인접하는 둘 이상의 비트를 포함하여 학습을 수행하는 것도 가능하다.
학습부(150) ECU 식별을 위한 학습에 분류(Classification) 알고리즘인 SVM, Neural Network, Bagged Decision Tree (BDT) 중 어느 하나의 통계 기법을 이용할 수 있다.
식별부(170)는 ID Field를 이용하여 어떤 ECU가 데이터를 보내고 있는지 확인한 후, 학습 된 전력 신호 데이터(
Figure 112015083842960-pat00007
)를 바탕으로 해당 ECU에서 송신한 데이터인지 차량 외부에서 유입된 데이터인지 여부에 대한 판정을 수행할 수 있다.
Figure 112015083842960-pat00008
제어부(190)는 ECU 식별 장치(100)의 전반적인 동작을 제어한다. 즉, 통신부(110), 측정부(130), 학습부(150), 및 식별부(170)의 동작을 제어할 수 있다. 또한, 제어부(190)는 상기 식별 결과를 기반으로 판정된 데이터를 차단 또는 연결하도록 제어할 수 있다.
도 5는 본 발명에 따른 ECU 식별 장치의 ECU 식별 방법을 위한 예시적인 제어 흐름을 도시한 도면이다.
먼저, ECU 식별 장치(100)의 측정부(130)는 각각의 ECU(
Figure 112015083842960-pat00009
)에서 발생하는 데이터의 전력신호를 측정한다(S110).
다음, ECU 식별 장치(100)의 학습부(150)는 상기 측정된 각각의 ECU(
Figure 112015083842960-pat00010
)의 데이터 전력 신호의 특성을 학습하여 각각의 ECU(
Figure 112015083842960-pat00011
)에 대하여 학습 된 전력 신호 데이터(
Figure 112015083842960-pat00012
)를 생성한다(S130, 도 4 참조). 상기 전력 신호의 특성은 전력 신호의 세기일 수 있다.
ECU 식별 장치(100)는 상기 전력 신호 세기의 특성을 분석하기 위하여, 고정 값을 출력하는 비트(예를 들어, RTR filed, Control field의 예약비트, CRC delimiter, EOF field)들을 이용한다. 이때, 고정 값을 출력하는 비트 자체의 전력 신호를 분석할 수 있으며, 또한, 고정 값을 출력하는 비트 및 이와 인접하는 하나 이상의 비트의 전력 신호를 함께 분석하는 것도 가능하다.
삭제
다음, ECU 식별 장치(100)의 측정부(130)는 차량 내부 ECU로부터 수신된 데이터인지 여부 판정할 신규 데이터의 전력 신호(
Figure 112015083842960-pat00013
)를 측정한다(S150).
다음, ECU 식별 장치(100)의 식별부(150)가 상기 신규 데이터의 ID Field를 이용하여 어느 ECU의 데이터인지 확인한다(S170).
상기 ID Field를 통하여 확인한 ECU에 대하여 미리 학습 된 전력 신호 데이터(
Figure 112015083842960-pat00014
)와 상기 측정된 전력 신호 데이터(
Figure 112015083842960-pat00015
)를 비교하여 해당 ECU에서 송신한 데이터인지 차량 외부에서 유입된 데이터인지 여부에 대한 판정을 수행한다(S190). 즉, ECU 식별 장치(100)가 수신한 데이터를 송신한 송신자가 차량 내부의 ECU인지 여부를 식별한다.
Figure 112015083842960-pat00016
상기 판정 결과를 바탕으로 판정된 데이터가 외부에서 차량으로 유입된 데이터인지 여부를 식별할 수 있으며, 따라서, 안전한 차량 내부 네트워크 구축이 가능하다.
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
10 : 통신 시스템
12 : 버스 100 : ECU 식별 장치
ECUA : 제1 ECU ECUB : 제2 ECU
ECUC : 제3 ECU ECUD : 제4 ECU

Claims (8)

  1. 복수 개의 ECU(Electronic Control Unit)들과 CAN(Controller Area Network) 통신 시스템을 이용하여 CAN 데이터를 통신하는 통신부;
    상기 복수 개의 ECU 각각으로부터 수신한 CAN 데이터의 전력 신호를 측정하는 측정부;
    상기 복수 개의 ECU 각각으로부터 수신한 CAN 데이터를 이용하여 각각의 ECU에 대한 CAN 데이터의 전력 신호의 특성을 학습하는 학습부;
    새롭게 수신한 신규 CAN 데이터의 ID 필드(ID field)를 이용하여 상기 신규 CAN 데이터의 송신 ECU를 식별하는 제1 식별부; 및
    상기 신규 CAN 데이터로부터 측정된 전력 신호와 제1 식별부에 의하여 확인된 송신 ECU에 대하여 미리 학습된 전력 신호를 비교하여 상기 신규 CAN 데이터가 차량 내부의 ECU-상기 제1 식별부에 의하여 확인된 송신 ECU-에서 송신한 CAN 데이터인지 또는 차량 외부로부터 유입된 CAN 데이터인지 여부를 식별하는 제2 식별부;를 포함하되,
    상기 CAN 데이터는 고정된 값을 출력하는 제1 부분 및 고정되지 않은 값을 출력하며 상기 제1 부분에 인접하게 위치하는 제2 부분을 포함하고,
    상기 학습부는 상기 CAN 데이터의 상기 제1 부분 및 상기 제2 부분의 전력 신호를 이용하여 각각의 ECU에 대한 CAN 데이터의 전력 신호의 특성-상기 제1 부분의 출력값이 고정되고 상기 제2 부분의 출력값이 변화됨에 따른 전력 신호의 특성-을 학습하고,
    상기 학습부는 SVM, Neural Network, Bagged Decision Tree (BDT) 중 어느 하나의 분류 기법을 이용하여 각각의 ECU에 대한 CAN 데이터의 전력 신호의 특성을 학습하며,
    상기 제2 식별부에서 상기 송신 ECU를 식별하기 위하여 이용하는 전력 신호는 상기 CAN 데이터의 상기 제1 부분 및 상기 제2 부분의 전력 신호이며,
    상기 제1 부분은 RIR 필드(Field), 컨트롤 필드(Control Field)의 예약 비트, CRC 딜리미터(delimiter), EOF 필드 중 하나 이상인, ECU 식별 장치.
  2. 제1항에 있어서,
    상기 CAN 데이터의 전력 신호는 CAN 통신 버스의 통신선에서 측정되는 전압인, ECU 식별 장치.
  3. 삭제
  4. 삭제
  5. ECU 식별 장치가 복수 개의 ECU를 식별하는 방법에 있어서,
    상기 ECU 식별 장치가 복수 개의 ECU들로부터 CAN(Controller Area Network) 통신 시스템을 이용하여 CAN 데이터를 수신하는 단계;
    상기 복수 개의 ECU로부터 수신한 CAN 데이터의 전력 신호를 측정하는 단계;
    상기 복수 개의 ECU로부터 수신한 CAN 데이터의 전력 신호의 특성을 학습하여 각각의 ECU에 대한 CAN 데이터의 학습된 전력 신호 특성을 추출하는 단계;
    상기 ECU 식별 장치가 상기 복수 개의 ECU 중 어느 하나의 ECU(이하 '송신 ECU'라 함)로부터 CAN 통신 시스템을 이용하여 신규의 CAN 데이터를 수신하는 단계;
    상기 신규의 CAN 데이터의 전력 신호를 측정하는 단계;
    상기 신규의 CAN 데이터의 ID 필드(Field)를 이용하여 상기 송신 ECU를 식별하는 제1 식별 단계; 및
    상기 신규의 CAN 데이터로부터 측정된 전력 신호와 상기 제1 식별 단계에서식별한 송신 ECU에 대하여 미리 학습된 전력 신호 특성을 비교하여 상기 신규의 CAN 데이터가 차량 내부의 ECU-상기 제1 식별 단계에서 식별한 송신 ECU-에서 송신한 CAN 데이터인지 또는 차량 외부로부터 유입된 CAN 데이터인지 여부를 식별하는 제2 식별 단계;를 포함하되,
    상기 CAN 데이터는 고정된 값을 출력하는 제1 부분 및 고정되지 않은 값을 출력하며 상기 제1 부분에 인접하게 위치하는 제2 부분을 포함하고, 상기 제1 부분은 RIR 필드(Field), 컨트롤 필드(Control Field)의 예약 비트, CRC 딜리미터(delimiter), EOF 필드 중 하나 이상이며,
    상기 제2 식별 단계에서,
    상기 송신 ECU를 식별하기 위하여 이용하는 전력 신호는 상기 CAN 데이터의 상기 제1 부분 및 상기 제2 부분의 전력 신호이며,
    상기 학습된 전력 신호 특성을 추출하는 단계에서,
    상기 CAN 데이터의 상기 제1 부분 및 상기 제2 부분의 전력 신호를 이용하여 상기 복수 개의 ECU 각각에서 송신한 CAN 데이터의 전력 신호의 특성-상기 제1 부분의 출력값이 고정되고 제2 부분의 출력값이 변화됨에 따른 전력 신호의 특성-을 학습하고,
    SVM, Neural Network, Bagged Decision Tree(BDT) 중 어느 하나의 분류 기법을 이용하여 상기 각각의 ECU에 대한 CAN 데이터의 학습된 전력 신호 특성을 추출하는,
    ECU 식별 방법.
  6. 제5항에 있어서,
    상기 CAN 데이터의 전력 신호는 CAN 통신 버스의 통신선에서 측정되는 전압인, ECU 식별 방법.
  7. 삭제
  8. 삭제
KR1020150121842A 2015-08-28 2015-08-28 전력 신호를 이용한 ecu 식별 장치 및 방법 KR101669946B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150121842A KR101669946B1 (ko) 2015-08-28 2015-08-28 전력 신호를 이용한 ecu 식별 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150121842A KR101669946B1 (ko) 2015-08-28 2015-08-28 전력 신호를 이용한 ecu 식별 장치 및 방법

Publications (1)

Publication Number Publication Date
KR101669946B1 true KR101669946B1 (ko) 2016-10-28

Family

ID=57244804

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150121842A KR101669946B1 (ko) 2015-08-28 2015-08-28 전력 신호를 이용한 ecu 식별 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101669946B1 (ko)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180127221A (ko) * 2017-05-19 2018-11-28 로베르트 보쉬 게엠베하 사이버 공격에 대한 네트워크 보호 방법
CN112084185A (zh) * 2020-09-17 2020-12-15 杭州电子科技大学 车载边缘设备基于关联学习的受损电子控制单元定位方法
US10966095B2 (en) 2019-08-29 2021-03-30 Hyundai Motor Company Vehicle network intrusion detection device, system including the same, and method thereof
US11032300B2 (en) 2017-07-24 2021-06-08 Korea University Research And Business Foundation Intrusion detection system based on electrical CAN signal for in-vehicle CAN network
KR20220014796A (ko) 2020-07-29 2022-02-07 현대자동차주식회사 의도적 에러를 이용한 위변조 제어기 식별 시스템 및 방법
US11481283B2 (en) 2020-01-28 2022-10-25 Hyundai Motor Company Systems and methods providing backup database for protecting messages on a CAN bus
WO2023101148A1 (ko) * 2021-11-30 2023-06-08 숭실대학교 산학협력단 Can 트래픽 모니터링을 이용한 공격 ecu 탐지 방법 및 장치
US11809561B2 (en) 2020-07-29 2023-11-07 Hyundai Motor Company System and method for identifying compromised electronic controller using intentionally induced error

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100325164B1 (ko) * 1999-06-22 2002-02-25 이계안 이티에스를 이용한 악셀레이터 포지션 센서 고장 진단 방법
KR20140023799A (ko) 2012-08-17 2014-02-27 고려대학교 산학협력단 Can에서 데이터의 기밀성과 무결성을 보장하는 방법
KR20140050643A (ko) * 2011-08-05 2014-04-29 로베르트 보쉬 게엠베하 유연한 메시지 크기로 직렬 데이터 전송 시 데이터 전송 안전성을 개선하기 위한 방법 및 장치
JP2014108695A (ja) * 2012-11-30 2014-06-12 Denso Corp ネットワークシステム
KR101508497B1 (ko) 2013-08-26 2015-04-07 고려대학교 산학협력단 차량용 데이터의 인증 및 획득 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100325164B1 (ko) * 1999-06-22 2002-02-25 이계안 이티에스를 이용한 악셀레이터 포지션 센서 고장 진단 방법
KR20140050643A (ko) * 2011-08-05 2014-04-29 로베르트 보쉬 게엠베하 유연한 메시지 크기로 직렬 데이터 전송 시 데이터 전송 안전성을 개선하기 위한 방법 및 장치
KR20140023799A (ko) 2012-08-17 2014-02-27 고려대학교 산학협력단 Can에서 데이터의 기밀성과 무결성을 보장하는 방법
JP2014108695A (ja) * 2012-11-30 2014-06-12 Denso Corp ネットワークシステム
KR101508497B1 (ko) 2013-08-26 2015-04-07 고려대학교 산학협력단 차량용 데이터의 인증 및 획득 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CAN 통신 도청 및 조작을 통한 차량 ECU의 외부위협 가능성 분석, 김강석, 고려대학교, 학위논문, 2011.
R. B. GmbH, CAN Specification version 2.0, Std., 1991.

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180127221A (ko) * 2017-05-19 2018-11-28 로베르트 보쉬 게엠베하 사이버 공격에 대한 네트워크 보호 방법
KR102601578B1 (ko) * 2017-05-19 2023-11-14 로베르트 보쉬 게엠베하 사이버 공격에 대한 네트워크 보호 방법
US11032300B2 (en) 2017-07-24 2021-06-08 Korea University Research And Business Foundation Intrusion detection system based on electrical CAN signal for in-vehicle CAN network
US10966095B2 (en) 2019-08-29 2021-03-30 Hyundai Motor Company Vehicle network intrusion detection device, system including the same, and method thereof
US11481283B2 (en) 2020-01-28 2022-10-25 Hyundai Motor Company Systems and methods providing backup database for protecting messages on a CAN bus
KR20220014796A (ko) 2020-07-29 2022-02-07 현대자동차주식회사 의도적 에러를 이용한 위변조 제어기 식별 시스템 및 방법
US11809561B2 (en) 2020-07-29 2023-11-07 Hyundai Motor Company System and method for identifying compromised electronic controller using intentionally induced error
CN112084185A (zh) * 2020-09-17 2020-12-15 杭州电子科技大学 车载边缘设备基于关联学习的受损电子控制单元定位方法
CN112084185B (zh) * 2020-09-17 2022-05-31 杭州电子科技大学 车载边缘设备基于关联学习的受损电子控制单元定位方法
WO2023101148A1 (ko) * 2021-11-30 2023-06-08 숭실대학교 산학협력단 Can 트래픽 모니터링을 이용한 공격 ecu 탐지 방법 및 장치

Similar Documents

Publication Publication Date Title
KR101669946B1 (ko) 전력 신호를 이용한 ecu 식별 장치 및 방법
US10691631B2 (en) Broadcast bus frame filter
US11032300B2 (en) Intrusion detection system based on electrical CAN signal for in-vehicle CAN network
Matsumoto et al. A method of preventing unauthorized data transmission in controller area network
WO2016185514A1 (ja) 攻撃検出装置
EP3471371B1 (en) Authentication system for electronic control unit on a bus
KR20160095201A (ko) 컴퓨팅 디바이스에 대한 액세스 제어를 제공하기 위한 방법들, 시스템들 및 매체들
US11611876B2 (en) Authentication system and authentication method
US20180367554A1 (en) Real-time active threat validation mechanism for vehicles
CN107104948A (zh) 无人机数据传输方法和无人机数据传输系统
US20210044600A1 (en) Security module for a can node
US9042256B2 (en) Network isolation system
KR20190003112A (ko) Can 통신 기반 우회 공격 탐지 방법 및 시스템
KR20180137306A (ko) Can 통신 기반 해킹공격 탐지 방법 및 시스템
KR101593171B1 (ko) 차량 정보 유출 방지 장치 및 그 방법
KR101843930B1 (ko) 시퀀스 마이닝 기반의 차량 이상 징후 탐지 장치
KR101705639B1 (ko) 차량 네트워크 시스템에서의 메시지 송수신 방법
Murvay et al. Securing the controller area network with covert voltage channels
KR20160088483A (ko) 키 생성키 생성 방법 및 이를 이용한 데이터 프레임 인증 방법
US10841085B2 (en) Method for generating a secret or a key in a network
CN113273144A (zh) 车载通信系统、车载通信控制装置、车载通信装置、通信控制方法及通信方法
JP2020167570A (ja) 監視装置
CN113411179B (zh) 一种基于工业数据总线的安全通信方法
JP6873375B2 (ja) 通信装置、通信システム及び通信方法
JP6149716B2 (ja) 車載ネットワークシステム

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191017

Year of fee payment: 4