KR102190054B1 - 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치 및 그 동작 방법 - Google Patents

다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치 및 그 동작 방법 Download PDF

Info

Publication number
KR102190054B1
KR102190054B1 KR1020190062011A KR20190062011A KR102190054B1 KR 102190054 B1 KR102190054 B1 KR 102190054B1 KR 1020190062011 A KR1020190062011 A KR 1020190062011A KR 20190062011 A KR20190062011 A KR 20190062011A KR 102190054 B1 KR102190054 B1 KR 102190054B1
Authority
KR
South Korea
Prior art keywords
reference information
entropy
information entropy
vehicle
driving environment
Prior art date
Application number
KR1020190062011A
Other languages
English (en)
Other versions
KR20200136217A (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 조선대학교산학협력단
Priority to KR1020190062011A priority Critical patent/KR102190054B1/ko
Priority to US16/721,934 priority patent/US11297076B2/en
Publication of KR20200136217A publication Critical patent/KR20200136217A/ko
Application granted granted Critical
Publication of KR102190054B1 publication Critical patent/KR102190054B1/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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • 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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40045Details regarding the feeding of energy to the node from the bus
    • 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/40071Packet processing; Packet format
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • 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/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • 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/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/121Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]

Abstract

다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치 및 그 동작 방법이 개시된다. 본 발명은 차량 내부의 CAN(Controller Area Network) 통신 네트워크를 통해 발생 가능한 패킷 ID에 대한 정보량을 표상하는 정보 엔트로피(entropy)의 확인을 통해 차량 내에 외부 데이터의 침입이 발생하였는지 여부를 판단할 수 있는 기법을 제공함으로써, 차량 내의 외부 데이터의 침입으로 인한 위험을 방지할 수 있다.

Description

다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치 및 그 동작 방법{IN-VEHICLE EXTERNAL DATA INTRUSION DETECTION APPARATUS BY COMPARING MULTIPLE INFORMATION ENTROPY AND OPERATING METHOD THEREOF}
본 발명은 네트워크를 통해 다른 차량들 또는 외부의 교통 시설들과 데이터를 송수신할 수 있는 차량에 대한 외부 데이터의 침입 여부를 탐지할 수 있는 장치 및 그 동작 방법에 대한 것이다.
최근, 차량에 통신 모듈이 탑재되어, 네트워크를 통해 다른 차량들 또는 외부의 교통 시설들과 데이터를 송수신할 수 있는 커넥티드 카에 대한 연구가 지속되고 있다.
아울러, 자율 주행 차량에 대한 관심이 증가됨에 따라, 자율 주행 차량에 적용되는 다양한 최신 기술들이 등장하고 있다.
이렇게 첨단 기술이 탑재된 차량은 해당 차량이 스스로 주행 환경을 판단하여 차량 주행을 할 것인지 아니면, 멈출 것인지 등을 결정하는 기능을 제공하고 있다는 점에서 차량 주변 환경을 감지하기 위한 다양한 센서들이 탑재되고 있다.
이러한 센서들로는 차량 주변에 장애물이 존재하는지 여부를 감지하기 위한 감지 센서, 차량의 현재 위치를 판단하기 위한 GPS 센서 등이 존재하며, 만약 감지 센서가 차량 주변에 장애물이 존재하는 것으로 감지하게 되면, 차량의 감속을 유도하기 위한 센싱 결과 값을 출력하고, 차량 주변에 장애물이 존재하지 않는 것으로 감지하면, 차량의 속도를 유지시키거나 가속을 유도하기 위한 센싱 결과 값을 출력하는 형태로 동작한다.
참고로, 이러한 감지 센서들로는 초음파를 이용하여 장애물을 감지하는 초음파 센서, 카메라를 통해 촬영한 영상으로부터 오브젝트 추적을 수행하여 장애물을 감지하는 영상 감지 센서, 레이더(RADAR)를 이용하여 장애물을 감지하는 레이더 센서, 레이저 광을 이용하여 장애물을 감지하는 라이더(LiDAR) 센서 등이 활용되고 있다.
네트워크 기능이 탑재된 차량들은 외부로부터 다양한 데이터를 수신하기 때문에 외부에서 인위적으로 차량의 제어 체계를 교란하기 위한 데이터를 전송하게 되면, 차량의 제어에 문제가 발생하게 되어 운전자에게 큰 위협이 될 수 있다.
예컨대, 외부에서 차량에 탑재되어 있는 다양한 센서들에 대해 조작을 가하거나 차량의 ECU(Electronic Control Unit)에 대한 공격을 가함으로써, 운전자가 원하지 않는 형태로 차량을 제어함에 따라 대형 교통사고를 유발하는 문제를 일으킬 수 있다.
따라서, 네트워크 기능이 탑재된 차량에 대해 외부로부터의 데이터 침입이 발생하였는지 여부를 탐지할 수 있는 기술에 대한 연구가 필요하다.
특정 주행 환경 하에서 차량 내부의 CAN(Controller Area Network) 통신 네트워크를 통해 발생하는 패킷들의 종류는 차량에 문제가 없는 한, 거의 매번 유사한 패턴으로 발생하기 때문에 CAN 통신 네트워크를 통해 발생할 수 있는 모든 종류의 패킷 ID들의 각 주행 환경별 발생 확률은 특정 확률 값으로 수렴하는 특징을 가지고 있다. 이로 인해, 특정 주행 환경 하에서 CAN 통신 네트워크를 통해 발생할 수 있는 패킷 ID의 발생 확률과 연관된 정보량을 표상하는 정보 엔트로피(entropy)는 특정 값으로 수렴하게 된다. 여기서, 정보 엔트로피란 특정 확률을 갖는 사건들에 대한 불확실성 정도를 나타내는 정보량을 수치화한 것을 의미한다.
앞서 언급한 바에 따라, 정상 상태의 차량에서는 특정 주행 조건별로 발생하는 패킷 ID의 종류가 규칙적인 특성을 가지고 있기 때문에 정보 엔트로피가 일정한 값으로 수렴하는 특징을 가지고 있다. 하지만, 공격자에 의해 차량 내부에 외부 데이터의 침입이 발생함에 따라 임의의 패킷이 삽입되기 시작하면, 각 패킷의 발생 확률이 달라지게 되어 정보 엔트로피 값에 대한 변화가 발생할 수 있다.
따라서, 차량 내부의 CAN 통신 네트워크를 통해 발생 가능한 패킷 ID에 대한 정보량을 표상하는 정보 엔트로피의 확인을 통해 차량 내에 외부 데이터의 침입이 발생하였는지 여부를 판단할 수 있는 기술을 도입함으로써, 차량 내의 외부 데이터의 침입으로 인한 위험을 방지할 수 있는 기법에 대한 연구가 필요하다.
본 발명은 차량 내부의 CAN(Controller Area Network) 통신 네트워크를 통해 발생 가능한 패킷 ID에 대한 정보량을 표상하는 정보 엔트로피(entropy)의 확인을 통해 차량 내에 외부 데이터의 침입이 발생하였는지 여부를 판단할 수 있는 기법을 제안함으로써, 차량 내의 외부 데이터의 침입으로 인한 위험을 방지할 수 있도록 한다.
본 발명의 일실시예에 따른 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치는 미리 정해진 서로 다른 복수의 주행 환경 조건들 각각에 대해, 차량에 대한 외부 데이터의 침입 탐지를 위한 미리 정해진 제1 참조 정보 엔트로피(entropy)의 상한 값과 하한 값, 미리 정해진 제2 참조 정보 엔트로피의 상한 값과 하한 값 및 미리 정해진 제3 참조 정보 엔트로피의 상한 값과 하한 값이 저장되어 있는 참조 엔트로피 저장부, 상기 차량의 ECU(Electronic Control Unit)에 접속하여 상기 차량의 주행과 연관된 제어 신호를 확인함으로써, 상기 차량의 현재 주행 환경 조건을 확인하는 주행 환경 조건 확인부, 상기 차량 내부의 CAN(Controller Area Network) 통신 네트워크를 통해서 순차적으로 생성되는 N(N은 2이상의 자연수)개의 패킷들을 수집하여 N개의 패킷들로 구성된 패킷 그룹을 생성하고, 상기 패킷 그룹을 구성하는 N개의 패킷들에 할당되어 있는 ID를 확인해서 제1 중복 이벤트(상기 제1 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 2개가 연속으로 생성되었을 경우 발생하는 이벤트임), 제2 중복 이벤트(상기 제2 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 3개가 연속으로 생성되었을 경우 발생하는 이벤트임) 및 제3 중복 이벤트(상기 제3 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 4개가 연속으로 생성되었을 경우 발생하는 이벤트임)의 발생 횟수를 각각 카운트하는 카운트부, 상기 제1 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제1 기준 정보 엔트로피를 추정하고, 상기 제2 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제2 기준 정보 엔트로피를 추정하며, 상기 제3 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제3 기준 정보 엔트로피를 추정하는 기준 정보 엔트로피 추정부, 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피가 추정되면, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제1 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제1 기준 정보 엔트로피가 속하는지 여부를 확인하고, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제2 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제2 기준 정보 엔트로피가 속하는지 여부를 확인하며, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제3 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제3 기준 정보 엔트로피가 속하는지 여부를 확인하는 엔트로피 확인부 및 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피 중 어느 하나의 기준 정보 엔트로피도 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하지 않는 것으로 확인되면, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단하는 외부 데이터 침입 판단부를 포함한다.
또한, 본 발명의 일실시예에 따른 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법은 미리 정해진 서로 다른 복수의 주행 환경 조건들 각각에 대해, 차량에 대한 외부 데이터의 침입 탐지를 위한 미리 정해진 제1 참조 정보 엔트로피의 상한 값과 하한 값, 미리 정해진 제2 참조 정보 엔트로피의 상한 값과 하한 값 및 미리 정해진 제3 참조 정보 엔트로피의 상한 값과 하한 값이 저장되어 있는 참조 엔트로피 저장부를 유지하는 단계, 상기 차량의 ECU에 접속하여 상기 차량의 주행과 연관된 제어 신호를 확인함으로써, 상기 차량의 현재 주행 환경 조건을 확인하는 단계, 상기 차량 내부의 CAN 통신 네트워크를 통해서 순차적으로 생성되는 N(N은 2이상의 자연수)개의 패킷들을 수집하여 N개의 패킷들로 구성된 패킷 그룹을 생성하고, 상기 패킷 그룹을 구성하는 N개의 패킷들에 할당되어 있는 ID를 확인해서 제1 중복 이벤트(상기 제1 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 2개가 연속으로 생성되었을 경우 발생하는 이벤트임), 제2 중복 이벤트(상기 제2 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 3개가 연속으로 생성되었을 경우 발생하는 이벤트임) 및 제3 중복 이벤트(상기 제3 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 4개가 연속으로 생성되었을 경우 발생하는 이벤트임)의 발생 횟수를 각각 카운트하는 단계, 상기 제1 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제1 기준 정보 엔트로피를 추정하고, 상기 제2 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제2 기준 정보 엔트로피를 추정하며, 상기 제3 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제3 기준 정보 엔트로피를 추정하는 단계, 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피가 추정되면, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제1 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제1 기준 정보 엔트로피가 속하는지 여부를 확인하고, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제2 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제2 기준 정보 엔트로피가 속하는지 여부를 확인하며, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제3 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제3 기준 정보 엔트로피가 속하는지 여부를 확인하는 단계 및 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피 중 어느 하나의 기준 정보 엔트로피도 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하지 않는 것으로 확인되면, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단하는 단계를 포함한다.
본 발명은 차량 내부의 CAN(Controller Area Network) 통신 네트워크를 통해 발생 가능한 패킷 ID에 대한 정보량을 표상하는 정보 엔트로피(entropy)의 확인을 통해 차량 내에 외부 데이터의 침입이 발생하였는지 여부를 판단할 수 있는 기법을 제공함으로써, 차량 내의 외부 데이터의 침입으로 인한 위험을 방지할 수 있다.
도 1은 본 발명의 일실시예에 따른 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법을 도시한 순서도이다.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.
도 1은 본 발명의 일실시예에 따른 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 구조를 도시한 도면이다.
도 1을 참조하면, 본 발명에 따른 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치(110)는 참조 엔트로피 저장부(111), 주행 환경 조건 확인부(112), 카운트부(113), 기준 정보 엔트로피 추정부(114), 엔트로피 확인부(115) 및 외부 데이터 침입 판단부(116)를 포함한다.
참조 엔트로피 저장부(111)에는 미리 정해진 서로 다른 복수의 주행 환경 조건들 각각에 대해, 차량에 대한 외부 데이터의 침입 탐지를 위한 미리 정해진 제1 참조 정보 엔트로피(entropy)의 상한 값과 하한 값, 미리 정해진 제2 참조 정보 엔트로피의 상한 값과 하한 값 및 미리 정해진 제3 참조 정보 엔트로피의 상한 값과 하한 값이 저장되어 있다.
여기서, 상기 복수의 주행 환경 조건들이란 소정의 속도 구간별로 소정의 가속도의 변화량을 매칭시켜 놓은 주행 환경 조건일 수 있다. 관련해서, 상기 복수의 주행 환경 조건들은 하기의 표 1과 같이 구분되어 있을 수 있다.
주행 환경 조건 속도 구간 가속도 변화량
주행 환경 조건 1 0~20km/h -1km/s2 ~ +1km/s2
주행 환경 조건 2 0~20km/h -2km/s2 ~ +2km/s2
주행 환경 조건 3 20~40km/h -2km/s2 ~ +2km/s2
... ... ...
예컨대, 상기 표 1에서 '주행 환경 조건 1'은 차량의 속도가 '0~20km/h'일 때, 상기 차량의 가속도 변화량이 '-1km/s2 ~ +1km/s2'의 값을 갖도록 하는 주행 환경 조건을 의미한다.
이때, 참조 엔트로피 저장부(111)에는 상기 표 1과 같은 서로 다른 복수의 주행 환경 조건들 각각에 대해, 차량에 대한 외부 데이터의 침입 탐지를 위한 미리 정해진 제1 참조 정보 엔트로피의 상한 값과 하한 값, 미리 정해진 제2 참조 정보 엔트로피의 상한 값과 하한 값 및 미리 정해진 제3 참조 정보 엔트로피의 상한 값과 하한 값이 저장되어 있을 수 있다.
이때, 본 발명의 일실시예에 따르면, 차량 내 외부 데이터 침입 탐지 장치(110)는 엔트로피 저장부(111) 상에 저장될 각 주행 환경 조건별로 제1 참조 정보 엔트로피, 제2 참조 정보 엔트로피 및 제3 참조 정보 엔트로피의 상한 값과 하한 값을 결정하기 위한 구성으로, 시뮬레이션 주행 수행부(118), 테스트 정보 엔트로피 추정부(119) 및 엔트로피 저장 처리부(120)를 더 포함할 수 있다.
시뮬레이션 주행 수행부(118)는 상기 차량의 ECU(Electronic Control Unit)에 대해 상기 복수의 주행 환경 조건들 각각에 따른 주행 환경을 갖도록 하기 위한 제어 신호를 인가함으로써, 상기 차량에 대해 상기 복수의 주행 환경 조건들 각각에 따른 시뮬레이션 주행을 선정된(predetermined) 훈련 횟수만큼 반복 수행한다.
관련해서, 상기 선정된 훈련 횟수를 '100회'라고 하는 경우, 시뮬레이션 주행 수행부(118)는 상기 차량의 ECU에 대해 상기 표 1과 같은 주행 환경 조건에 따른 주행 환경을 갖도록 하기 위한 제어 신호를 각 주행 환경 조건별로 100번씩 인가함으로써, 상기 차량이 상기 복수의 주행 환경 조건들 각각에 따라 100번씩 시뮬레이션 주행을 수행하도록 제어할 수 있다.
테스트 정보 엔트로피 추정부(119)는 상기 복수의 주행 환경 조건들 각각에 대해 상기 시뮬레이션 주행이 상기 선정된 훈련 횟수만큼 반복 수행될 때마다, 상기 차량 내부의 CAN(Controller Area Network) 통신 네트워크를 통해서 순차적으로 생성되는 복수의 패킷들의 총 개수와 상기 복수의 패킷들에 대해서 발생하는 제1 중복 이벤트, 제2 중복 이벤트 및 제3 중복 이벤트의 발생 횟수를 카운트하여 상기 제1 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제1 테스트용 정보 엔트로피를 추정하고, 상기 제2 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제2 테스트용 정보 엔트로피를 추정하며, 상기 제3 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제3 테스트용 정보 엔트로피를 추정한다.
여기서, 상기 제1 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 2개가 연속으로 생성되었을 경우 발생하는 이벤트를 의미하고, 상기 제2 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 3개가 연속으로 생성되었을 경우 발생하는 이벤트를 의미하며, 상기 제3 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 4개가 연속으로 생성되었을 경우 발생하는 이벤트를 의미한다.
예컨대, 총 10개의 패킷들이 순차적으로 생성되었다고 하고, 여기서 3번째 패킷의 ID가 2번째 패킷의 ID와 일치하고, 5번째 패킷의 ID가 4번째 패킷의 ID와 일치한다면, 총 2번의 제1 중복 이벤트가 발생한 것으로 볼 수 있다.
또한, 총 10개의 패킷들이 순차적으로 생성되었다고 하고, 여기서 4번째 패킷의 ID, 3번째 패킷의 ID 및 2번째 패킷 ID가 서로 일치한다면, 총 1번의 제2 중복 이벤트가 발생한 것으로 볼 수 있다.
마지막으로, 총 10개의 패킷들이 순차적으로 생성되었다고 하고, 여기서 5번째 패킷의 ID, 4번째 패킷의 ID, 3번째 패킷의 ID 및 2번째 패킷 ID가 서로 일치한다면, 총 1번의 제3 중복 이벤트가 발생한 것으로 볼 수 있다.
이때, 테스트 정보 엔트로피 추정부(119)는 하기의 수학식 1에 따른 연산을 수행함으로써, 상기 제1 테스트용 정보 엔트로피를 추정할 수 있다.
Figure 112019054192803-pat00001
여기서, Rt1는 특정 주행 환경 조건에서 1회 시뮬레이션 주행이 수행되었을 때 추정되는 제1 테스트용 정보 엔트로피, L은 해당 주행 환경 조건에서 1회 시뮬레이션 주행이 수행되었을 때 발생하는 패킷의 총 개수, C1은 해당 주행 환경 조건에서 1회 시뮬레이션 주행이 수행되었을 때 발생하는 제1 중복 이벤트의 발생 횟수를 의미한다.
특정 확률 분포를 갖는 N개의 사건들이 있을 때, 사건을 발생시키기 위한 실행을 L번 순차적으로 수행한 결과, 사건이 서로 중복되는 중복 이벤트가 C번 발생하게 되면,
Figure 112019054192803-pat00002
는 상기 N개의 사건들에 대한 정보량을 표상하기 위한 정보 엔트로피의 종류 중 하나인 레니 엔트로피(Renyi Entropy)로 수렴하는 특징을 가지고 있다. 특히, L값이 큰 값을 가질수록
Figure 112019054192803-pat00003
는 레니 엔트로피와 거의 동일한 값으로 수렴하게 된다. 레니 엔트로피는 잘 알려진 섀넌 엔트로피(Shannon Entropy)와 최소-엔트로피(Min-Entropy)를 특별한 경우로 포함하는 일반화된 개념으로, 섀넌 엔트로피처럼 차량 내부의 데이터의 흐름 패턴에서의 변화량을 감지할 수 있는 잘 정의된 수학적 개념이다.
따라서, 특정 주행 환경 조건에서 1회 시뮬레이션 주행이 수행된 결과, 총 L개의 패킷이 순차적으로 발생하였고, 이때 상기 제1 중복 이벤트가 총 C1번 발생하였다면, 상기 수학식 1에 따라 연산되는 Rt1는 해당 주행 환경 조건에서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 레니 엔트로피에 수렴하게 되기 때문에 테스트 정보 엔트로피 추정부(119)는 상기 복수의 주행 환경 조건들 각각에 대해, 상기 선정된 훈련 횟수만큼 시뮬레이션 주행을 반복수행하고, 각 시뮬레이션 주행 수행시마다 상기 수학식 1에 따른 연산을 수행함으로써, 상기 제1 테스트용 정보 엔트로피를 추정할 수 있다.
관련해서, 상기 선정된 훈련 횟수를 '100회'라고 하고, 상기 복수의 주행 환경 조건들로 '주행 환경 조건 1', '주행 환경 조건 2'가 존재한다고 가정하면, 테스트 정보 엔트로피 추정부(119)는 상기 수학식 1에 따른 연산을 통해 '주행 환경 조건 1'에서 100개의 제1 테스트용 정보 엔트로피를 추정할 수 있고, '주행 환경 조건 2'에서 100개의 제1 테스트용 정보 엔트로피를 추정할 수 있다.
또한, 본 발명의 일실시예에 따르면, 테스트 정보 엔트로피 추정부(119)는 하기의 수학식 2에 따른 연산을 수행함으로써, 상기 제2 테스트용 정보 엔트로피를 추정할 수 있다.
Figure 112019054192803-pat00004
여기서, Rt2는 특정 주행 환경 조건에서 1회 시뮬레이션 주행이 수행되었을 때 추정되는 제2 테스트용 정보 엔트로피, L은 해당 주행 환경 조건에서 1회 시뮬레이션 주행이 수행되었을 때 발생하는 패킷의 총 개수, C2는 해당 주행 환경 조건에서 1회 시뮬레이션 주행이 수행되었을 때 발생하는 제2 중복 이벤트의 발생 횟수를 의미한다.
그리고, 본 발명의 일실시예에 따르면, 테스트 정보 엔트로피 추정부(119)는 하기의 수학식 3에 따른 연산을 수행함으로써, 상기 제3 테스트용 정보 엔트로피를 추정할 수 있다.
Figure 112019054192803-pat00005
여기서, Rt3은 특정 주행 환경 조건에서 1회 시뮬레이션 주행이 수행되었을 때 추정되는 제3 테스트용 정보 엔트로피, L은 해당 주행 환경 조건에서 1회 시뮬레이션 주행이 수행되었을 때 발생하는 패킷의 총 개수, C3은 해당 주행 환경 조건에서 1회 시뮬레이션 주행이 수행되었을 때 발생하는 제3 중복 이벤트의 발생 횟수를 의미한다.
엔트로피 저장 처리부(120)는 상기 복수의 주행 환경 조건들 각각에 대해 상기 선정된 훈련 횟수만큼 반복 추정된 상기 제1 테스트용 정보 엔트로피, 상기 제2 테스트용 정보 엔트로피 및 상기 제3 테스트용 정보 엔트로피의 최댓값과 최솟값을 확인해서, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제1 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제1 참조 정보 엔트로피의 상한 값과 하한 값으로 참조 엔트로피 저장부(111) 상에 대응시켜 저장하고, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제2 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제2 참조 정보 엔트로피의 상한 값과 하한 값으로 참조 엔트로피 저장부(111) 상에 대응시켜 저장하며, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제3 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값으로 참조 엔트로피 저장부(111) 상에 대응시켜 저장할 수 있다.
관련해서, 전술한 예시와 같이, 상기 선정된 훈련 횟수를 '100회'라고 하고, 상기 복수의 주행 환경 조건들로 '주행 환경 조건 1', '주행 환경 조건 2'가 존재한다고 가정함에 따라, 테스트 정보 엔트로피 추정부(119)가 '주행 환경 조건 1'에서 100개의 제1, 제2, 제3 테스트용 정보 엔트로피를 추정하였고, '주행 환경 조건 2'에서 100개의 제1, 제2, 제3 테스트용 정보 엔트로피를 추정하였다고 한다면, 엔트로피 저장 처리부(120)는 '주행 환경 조건 1'에서 추정된 100개의 제1, 제2, 제3 테스트용 정보 엔트로피 중 최댓값과 최솟값을 '주행 환경 조건 1'에 대한 제1, 제2, 제3 참조 정보 엔트로피의 상한 값과 하한 값으로 결정하여 참조 엔트로피 저장부(111)에 저장할 수 있고, '주행 환경 조건 2'에서 추정된 100개의 제1, 제2, 제3 테스트용 정보 엔트로피 중 최댓값과 최솟값을 '주행 환경 조건 2'에 대한 제1, 제2, 제3 참조 정보 엔트로피의 상한 값과 하한 값으로 결정하여 참조 엔트로피 저장부(111)에 저장할 수 있다.
이렇게, 참조 엔트로피 저장부(111) 상에 서로 다른 복수의 주행 환경 조건들 각각에 따른 차량에 대한 외부 데이터의 침입 탐지를 위한 제1, 제2, 제3 참조 정보 엔트로피의 상한 값과 하한 값의 저장이 완료되면, 차량 내 외부 데이터 침입 탐지 장치(110)는 상기 차량에 대해 외부 데이터의 침입이 발생하였는지 여부를 판단하기 위한 과정을 진행할 수 있다.
이와 관련해서, 우선 주행 환경 조건 확인부(112)는 상기 차량의 ECU에 접속하여 상기 차량의 주행과 연관된 제어 신호를 확인함으로써, 상기 차량의 현재 주행 환경 조건을 확인한다.
카운트부(113)는 상기 차량 내부의 CAN 통신 네트워크를 통해서 순차적으로 생성되는 N(N은 2이상의 자연수)개의 패킷들을 수집하여 N개의 패킷들로 구성된 패킷 그룹을 생성하고, 상기 패킷 그룹을 구성하는 N개의 패킷들에 할당되어 있는 ID를 확인해서 제1 중복 이벤트(상기 제1 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 2개가 연속으로 생성되었을 경우 발생하는 이벤트임), 제2 중복 이벤트(상기 제2 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 3개가 연속으로 생성되었을 경우 발생하는 이벤트임) 및 제3 중복 이벤트(상기 제3 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 4개가 연속으로 생성되었을 경우 발생하는 이벤트임)의 발생 횟수를 각각 카운트한다.
기준 정보 엔트로피 추정부(114)는 상기 제1 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제1 기준 정보 엔트로피를 추정하고, 상기 제2 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제2 기준 정보 엔트로피를 추정하며, 상기 제3 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제3 기준 정보 엔트로피를 추정한다.
이때, 본 발명의 일실시예에 따르면, 기준 정보 엔트로피 추정부(114)는 하기의 수학식 4에 따른 연산에 기초하여 상기 제1 기준 정보 엔트로피를 추정하고, 하기의 수학식 5에 따른 연산에 기초하여 상기 제2 기준 정보 엔트로피를 추정하며, 하기의 수학식 6에 따른 연산에 기초하여 상기 제3 기준 정보 엔트로피를 추정할 수 있다.
Figure 112019054192803-pat00006
Figure 112019054192803-pat00007
Figure 112019054192803-pat00008
여기서, R1은 상기 제1 기준 정보 엔트로피, S1는 상기 제1 중복 이벤트의 발생 횟수, n1은 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수이고, R2는 상기 제2 기준 정보 엔트로피, S2는 상기 제2 중복 이벤트의 발생 횟수, n1은 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수이며, R3은 상기 제3 기준 정보 엔트로피, S3는 상기 제3 중복 이벤트의 발생 횟수, n1은 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수를 의미한다.
앞서, 설명한 바와 같이, 특정 확률 분포를 갖는 N개의 사건들이 있을 때, 사건을 발생시키기 위한 실행을 L번 순차적으로 수행한 결과, 사건이 서로 중복되는 중복 이벤트가 C번 발생하게 되면,
Figure 112019054192803-pat00009
는 상기 N개의 사건들에 대한 정보량을 표상하기 위한 정보 엔트로피의 종류 중 하나인 레니 엔트로피로 수렴하는 특징을 가지고 있기 때문에, 기준 정보 엔트로피 추정부(114)는 상기 차량의 현재 주행 환경 조건에서 확인된 N개의 패킷들로부터 제1, 제2, 제3 중복 이벤트의 발생 횟수인 S1, S2, S3을 카운트하여 상기 수학식 4, 5, 6에 따른 연산을 수행함으로써, 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 레니 엔트로피의 추정을 수행할 수 있고, 이러한 추정 값을 상기 제1, 제2, 제3 기준 정보 엔트로피로 결정할 수 있다.
엔트로피 확인부(115)는 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피가 추정되면, 참조 엔트로피 저장부(111)에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제1 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제1 기준 정보 엔트로피가 속하는지 여부를 확인하고, 참조 엔트로피 저장부(111)에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제2 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제2 기준 정보 엔트로피가 속하는지 여부를 확인하며, 참조 엔트로피 저장부(111)에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제3 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제3 기준 정보 엔트로피가 속하는지 여부를 확인한다.
외부 데이터 침입 판단부(116)는 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피 중 어느 하나의 기준 정보 엔트로피도 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하지 않는 것으로 확인되면, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단한다.
즉, 참조 엔트로피 저장부(111)에 저장되어 있는 각 주행 환경 조건에 따른 제1, 제2, 제3 참조 정보 엔트로피의 상한 값과 하한 값은 정상 주행 상황일 경우에 대응되는 값이기 때문에, 외부 데이터 침입 판단부(116)는 현재 주행 환경 조건에서 연산된 상기 제1, 제2, 제3 기준 정보 엔트로피가 참조 엔트로피 저장부(111) 상에 저장되어 있는 제1, 제2, 제3 참조 정보 엔트로피의 상한 값과 하한 값을 벗어나는 것으로 확인되면, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단할 수 있다.
이때, 본 발명의 일실시예에 따르면, 차량 내 외부 데이터 침입 탐지 장치(110)는 지속 감시 이벤트 발생부(117)를 더 포함할 수 있다.
지속 감시 이벤트 발생부(117)는 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피 중 어느 하나 이상의 기준 정보 엔트로피가 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하는 것으로 확인되면, 지속 감시 이벤트를 발생시킨다.
이때, 주행 환경 조건 확인부(112)는 상기 지속 감시 이벤트가 발생되면, 상기 차량의 ECU에 다시 접속하여 상기 차량의 주행과 연관된 제어 신호를 확인함으로써, 상기 차량의 현재 주행 환경 조건을 재확인할 수 있다.
그리고, 카운트부(113)는 상기 CAN 통신 네트워크를 통해서 추가적으로 생성되는 N개의 패킷들을 재수집하여 재수집된 N개의 패킷들로 구성된 패킷 그룹을 재생성하고, 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들에 할당되어 있는 ID를 확인해서 상기 제1 중복 이벤트, 상기 제2 중복 이벤트 및 상기 제3 중복 이벤트의 발생 횟수를 각각 다시 카운트할 수 있다.
그러고 나서, 기준 정보 엔트로피 추정부(114)는 상기 다시 카운트된 제1 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제1 기준 정보 엔트로피를 재추정하고, 상기 다시 카운트된 제2 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제2 기준 정보 엔트로피를 재추정하며, 상기 다시 카운트된 제3 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제3 기준 정보 엔트로피를 재추정할 수 있다.
이때, 본 발명의 일실시예에 따르면, 기준 정보 엔트로피 추정부(114)는 하기의 수학식 7에 따른 연산에 기초하여 상기 제1 기준 정보 엔트로피의 재추정을 수행하고, 하기의 수학식 8에 따른 연산에 기초하여 상기 제2 기준 정보 엔트로피의 재추정을 수행하며, 하기의 수학식 9에 따른 연산에 기초하여 상기 제3 기준 정보 엔트로피의 재추정을 수행할 수 있다.
Figure 112019054192803-pat00010
Figure 112019054192803-pat00011
Figure 112019054192803-pat00012
여기서, R1r은 상기 재추정된 제1 기준 정보 엔트로피, S1는 상기 제1 중복 이벤트의 발생 횟수, S1r는 상기 다시 카운트한 제1 중복 이벤트의 발생 횟수, n2은 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수이고, R2r은 상기 재추정된 제2 기준 정보 엔트로피, S2는 상기 제2 중복 이벤트의 발생 횟수, S2r은 상기 다시 카운트한 제2 중복 이벤트의 발생 횟수, n2은 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수이며, R3r은 상기 재추정된 제3 기준 정보 엔트로피, S3은 상기 제3 중복 이벤트의 발생 횟수, S3r은 상기 다시 카운트한 제3 중복 이벤트의 발생 횟수, n2은 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수이고, w는 0에서 1사이의 크기를 갖는 미리 정해진 가중치를 의미한다.
즉, 기준 정보 엔트로피 추정부(114)는 상기 수학식 4, 5, 6에서 나타낸 연산방식에 따라 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들에서 상기 제1, 제2, 제3 중복 이벤트의 발생 횟수인 S1r, S2r, S3r을 카운트하여 레니 엔트로피의 추정을 수행하되, 상기 수학식 7, 8, 9에서 나타낸 바와 같이, 이전 패킷 그룹에서 카운트된 제1, 제2, 제3 중복 이벤트의 발생 횟수인 S1, S2, S3을 상기 가중치인 w만큼 추가로 반영하여 이전 패킷 그룹과 상기 재생성된 패킷 그룹에서 확인된 총 2N개의 패킷들로부터 카운트되는 제1, 제2, 제3 중복 이벤트에 기초한 연산 값을 연산함으로써, 레니 엔트로피의 추정을 수행할 수 있고, 이렇게 추정되는 레니 엔트로피를 상기 재추정된 제1, 제2, 제3 기준 정보 엔트로피로 결정할 수 있다.
이때, 엔트로피 확인부(115)는 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피가 재추정되면, 참조 엔트로피 저장부(111)에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제1 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제1 기준 정보 엔트로피가 속하는지 여부를 확인하고, 참조 엔트로피 저장부(111)에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제2 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제2 기준 정보 엔트로피가 속하는지 여부를 확인하며, 참조 엔트로피 저장부(111)에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제3 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제3 기준 정보 엔트로피가 속하는지 여부를 확인한다.
그러고 나서, 외부 데이터 침입 판단부(116)는 상기 재추정된 제1 기준 정보 엔트로피, 상기 재추정된 제2 기준 정보 엔트로피 및 상기 재추정된 제3 기준 정보 엔트로피 중 어느 하나의 기준 정보 엔트로피도 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하지 않는 것으로 확인되면, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단한다.
만약, 상기 재추정된 제1, 제2, 제3 기준 정보 엔트로피 중 어느 하나 이상의 기준 정보 엔트로피가 상기 제1, 제2, 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하는 것으로 확인되는 경우, 지속 감시 이벤트 발생부(117)는 상기 차량의 상태가 정상인 것으로 확인하고, 다시 한 번 상기 지속 감시 이벤트를 발생시켜서, 주행 환경 조건 확인부(112), 카운트부(113), 기준 정보 엔트로피 추정부(114), 엔트로피 확인부(115)에 따른 동작의 반복 수행을 제어하여 상기 차량에 외부 데이터의 침입이 발생하였는지 여부에 대한 판단 과정을 재수행할 수 있다. 이러한 방식으로, 지속 감시 이벤트 발생부(117)는 상기 차량에 외부 데이터 침입이 발생하지 않은 것으로 계속 확인될 때마다, 상기 지속 감시 이벤트를 계속 발생시켜서, 차량에 외부 데이터의 침입이 발생하였는지 여부에 대한 판단이 반복적으로 수행되도록 제어할 수 있다.
이때, 기준 정보 엔트로피 추정부(114)는 지속 감시 이벤트가 발생할 때마다 하기의 수학식 10의 연산을 반복수행하여 각 지속 감시 이벤트에 대응되는 제1, 제2, 제3 기준 정보 엔트로피를 추정할 수 있다.
Figure 112019054192803-pat00013
여기서, Rp은 상기 지속 감시 이벤트가 p번째에 발생하였을 때 추정되는 제1, 제2, 제3 기준 정보 엔트로피로 p는 2이상의 자연수이고, Sk -1은 k-1번째에서 상기 지속 감시 이벤트가 발생하였을 때 카운트된 제1, 제2, 제3 중복 이벤트의 발생 횟수, Sp는 p번째에서 상기 지속 감시 이벤트가 발생하였을 때 카운트된 제1, 제2, 제3 중복 이벤트 발생 횟수, np은 p번째에서 상기 지속 감시 이벤트가 발생하였을 때의 패킷 그룹을 구성하는 N개의 패킷들의 개수(즉, np=N임)이며, w는 0에서 1사이의 크기를 갖는 미리 정해진 가중치를 의미한다.
본 발명의 일실시예에 따르면, 차량 내 외부 데이터 침입 탐지 장치(110)는 위험 등급 테이블 유지부(121), 반복 수행 제어부(122), 비율 연산부(123) 및 경고 메시지 출력부(124)를 더 포함할 수 있다.
위험 등급 테이블 유지부(121)는 미리 정해진 서로 다른 복수의 위험 등급들 각각에 대해 각 위험 등급에 대응하는 서로 다른 침입 판단 비율 값 범위가 기록되어 있는 위험 등급 테이블을 저장하여 유지한다.
관련해서, 상기 위험 등급 테이블에는 하기의 표 2와 같은 정보가 기록되어 있을 수 있다.
위험 등급들 침입 판단 비율 값 범위들
안전 0~10%
주의 10~30%
위험 30~60%
고위험 60~100%
반복 수행 제어부(122)는 외부 데이터 침입 판단부(116)를 통해 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단되면, 미리 정해진 제1 재판단 수행 횟수만큼 상기 차량에 대한 외부 데이터의 침입 여부에 대한 판단의 반복 수행을 제어한다.
비율 연산부(123)는 상기 제1 재판단 수행 횟수만큼 상기 차량에 대한 외부 데이터의 침입 여부의 판단이 반복 수행되면, 상기 차량에 대한 외부 데이터의 침입 여부의 판단을 반복 수행한 결과로부터 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단된 횟수를 카운트하고, 상기 제1 재판단 수행 횟수 대비 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단된 횟수의 비율을 연산한다.
경고 메시지 출력부(124)는 상기 위험 등급 테이블로부터 상기 연산된 비율이 속한 제1 침입 판단 비율 값 범위에 대응하는 제1 위험 등급을 추출하여 디스플레이를 통해 상기 차량의 상태가 상기 제1 위험 등급에 따른 위험 상황임을 알리는 경고 메시지를 출력한다.
예컨대, 상기 미리 정해진 제1 재판단 수행 횟수를 '8회'라고 하는 경우, 외부 데이터 침입 판단부(116)에서 상기 차량에 외부 데이터의 침입이 발생하였는지 여부에 대해 판단한 결과, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단되었다면, 반복 수행 제어부(122)는 상기 제1 재판단 수행 횟수인 '8회'만큼 상기 차량에 대한 외부 데이터의 침입 여부에 대한 판단의 반복 수행을 제어할 수 있다.
이때, 상기 제1 재판단 수행 횟수인 '8회'만큼 상기 차량에 대한 외부 데이터의 침입 여부의 판단이 반복 수행되면, 비율 연산부(123)는 상기 차량에 대한 외부 데이터의 침입 여부의 판단을 반복 수행한 결과로부터 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단된 횟수를 카운트할 수 있다.
관련해서, 상기 차량에 대한 외부 데이터의 침입 여부의 판단을 반복 수행한 결과로부터 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단된 횟수가 총 '5회'로 카운트되었다면, 비율 연산부(123)는 상기 제1 재판단 수행 횟수인 '8회' 대비 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단된 횟수인 '5회'의 비율을 연산함으로써, '62.5%'라는 비율을 연산할 수 있다.
이때, 경고 메시지 출력부(124)는 상기 표 2와 같은 위험 등급 테이블로부터 상기 연산된 비율인 '62.5%'가 속한 제1 침입 판단 비율 값 범위인 '60~100%'에 대응하는 '고위험'이라는 위험 등급을 추출하여 디스플레이를 통해 상기 차량의 상태가 '고위험'이라는 위험 등급에 따른 위험 상황임을 알리는 경고 메시지를 출력할 수 있다.
도 2는 본 발명의 일실시예에 따른 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법을 도시한 순서도이다.
단계(S210)에서는 미리 정해진 서로 다른 복수의 주행 환경 조건들 각각에 대해, 차량에 대한 외부 데이터의 침입 탐지를 위한 미리 정해진 제1 참조 정보 엔트로피의 상한 값과 하한 값, 미리 정해진 제2 참조 정보 엔트로피의 상한 값과 하한 값 및 미리 정해진 제3 참조 정보 엔트로피의 상한 값과 하한 값이 저장되어 있는 참조 엔트로피 저장부를 유지한다.
단계(S220)에서는 상기 차량의 ECU에 접속하여 상기 차량의 주행과 연관된 제어 신호를 확인함으로써, 상기 차량의 현재 주행 환경 조건을 확인한다.
단계(S230)에서는 상기 차량 내부의 CAN 통신 네트워크를 통해서 순차적으로 생성되는 N(N은 2이상의 자연수)개의 패킷들을 수집하여 N개의 패킷들로 구성된 패킷 그룹을 생성하고, 상기 패킷 그룹을 구성하는 N개의 패킷들에 할당되어 있는 ID를 확인해서 제1 중복 이벤트(상기 제1 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 2개가 연속으로 생성되었을 경우 발생하는 이벤트임), 제2 중복 이벤트(상기 제2 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 3개가 연속으로 생성되었을 경우 발생하는 이벤트임) 및 제3 중복 이벤트(상기 제3 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 4개가 연속으로 생성되었을 경우 발생하는 이벤트임)의 발생 횟수를 각각 카운트한다.
단계(S240)에서는 상기 제1 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제1 기준 정보 엔트로피를 추정하고, 상기 제2 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제2 기준 정보 엔트로피를 추정하며, 상기 제3 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제3 기준 정보 엔트로피를 추정한다.
단계(S250)에서는 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피가 추정되면, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제1 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제1 기준 정보 엔트로피가 속하는지 여부를 확인하고, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제2 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제2 기준 정보 엔트로피가 속하는지 여부를 확인하며, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제3 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제3 기준 정보 엔트로피가 속하는지 여부를 확인한다.
단계(S260)에서는 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피 중 어느 하나의 기준 정보 엔트로피도 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하지 않는 것으로 확인되면, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단한다.
이때, 본 발명의 일실시예에 따르면, 단계(S240)에서는 상기 수학식 4에 따른 연산에 기초하여 상기 제1 기준 정보 엔트로피를 추정하고, 상기 수학식 5에 따른 연산에 기초하여 상기 제2 기준 정보 엔트로피를 추정하며, 상기 수학식 6에 따른 연산에 기초하여 상기 제3 기준 정보 엔트로피를 추정할 수 있다.
또한, 본 발명의 일실시예에 따르면, 상기 차량 내 외부 데이터 침입 탐지 장치의 동작 방법은 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피 중 어느 하나 이상의 기준 정보 엔트로피가 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하는 것으로 확인되면, 지속 감시 이벤트를 발생시키는 단계, 상기 지속 감시 이벤트가 발생되면, 상기 차량의 ECU에 다시 접속하여 상기 차량의 주행과 연관된 제어 신호를 확인함으로써, 상기 차량의 현재 주행 환경 조건을 재확인하는 단계, 상기 CAN 통신 네트워크를 통해서 추가적으로 생성되는 N개의 패킷들을 재수집하여 재수집된 N개의 패킷들로 구성된 패킷 그룹을 재생성하고, 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들에 할당되어 있는 ID를 확인해서 상기 제1 중복 이벤트, 상기 제2 중복 이벤트 및 상기 제3 중복 이벤트의 발생 횟수를 각각 다시 카운트하는 단계, 상기 다시 카운트된 제1 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제1 기준 정보 엔트로피를 재추정하고, 상기 다시 카운트된 제2 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제2 기준 정보 엔트로피를 재추정하며, 상기 다시 카운트된 제3 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제3 기준 정보 엔트로피를 재추정하는 단계, 상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피가 재추정되면, 상기 참조 엔트로피 저장부에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제1 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제1 기준 정보 엔트로피가 속하는지 여부를 확인하고, 상기 참조 엔트로피 저장부에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제2 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제2 기준 정보 엔트로피가 속하는지 여부를 확인하며, 상기 참조 엔트로피 저장부에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제3 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제3 기준 정보 엔트로피가 속하는지 여부를 확인하는 단계 및 상기 재추정된 제1 기준 정보 엔트로피, 상기 재추정된 제2 기준 정보 엔트로피 및 상기 재추정된 제3 기준 정보 엔트로피 중 어느 하나의 기준 정보 엔트로피도 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하지 않는 것으로 확인되면, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단하는 단계를 더 포함할 수 있다.
이때, 본 발명의 일실시예에 따르면, 상기 제3 기준 정보 엔트로피를 재추정하는 단계는 상기 수학식 7에 따른 연산에 기초하여 상기 제1 기준 정보 엔트로피의 재추정을 수행하고, 상기 수학식 8에 따른 연산에 기초하여 상기 제2 기준 정보 엔트로피의 재추정을 수행하며, 상기 수학식 9에 따른 연산에 기초하여 상기 제3 기준 정보 엔트로피의 재추정을 수행할 수 있다.
또한, 본 발명의 일실시예에 따르면, 상기 차량 내 외부 데이터 침입 탐지 장치의 동작 방법은 상기 차량의 ECU에 대해 상기 복수의 주행 환경 조건들 각각에 따른 주행 환경을 갖도록 하기 위한 제어 신호를 인가함으로써, 상기 차량에 대해 상기 복수의 주행 환경 조건들 각각에 따른 시뮬레이션 주행을 선정된 훈련 횟수만큼 반복 수행하는 단계, 상기 복수의 주행 환경 조건들 각각에 대해 상기 시뮬레이션 주행이 상기 선정된 훈련 횟수만큼 반복 수행될 때마다, 상기 CAN 통신 네트워크를 통해서 순차적으로 생성되는 복수의 패킷들의 총 개수와 상기 복수의 패킷들에 대해서 발생하는 상기 제1 중복 이벤트, 상기 제2 중복 이벤트 및 상기 제3 중복 이벤트의 발생 횟수를 카운트하여 상기 제1 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제1 테스트용 정보 엔트로피를 추정하고, 상기 제2 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제2 테스트용 정보 엔트로피를 추정하며, 상기 제3 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제3 테스트용 정보 엔트로피를 추정하는 단계 및 상기 복수의 주행 환경 조건들 각각에 대해 상기 선정된 훈련 횟수만큼 반복 추정된 상기 제1 테스트용 정보 엔트로피, 상기 제2 테스트용 정보 엔트로피 및 상기 제3 테스트용 정보 엔트로피의 최댓값과 최솟값을 확인해서, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제1 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제1 참조 정보 엔트로피의 상한 값과 하한 값으로 상기 참조 엔트로피 저장부 상에 대응시켜 저장하고, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제2 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제2 참조 정보 엔트로피의 상한 값과 하한 값으로 상기 참조 엔트로피 저장부 상에 대응시켜 저장하며, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제3 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값으로 상기 참조 엔트로피 저장부 상에 대응시켜 저장하는 단계를 더 포함할 수 있다.
또한, 본 발명의 일실시예에 따르면, 상기 차량 내 외부 데이터 침입 탐지 장치의 동작 방법은 미리 정해진 서로 다른 복수의 위험 등급들 각각에 대해 각 위험 등급에 대응하는 서로 다른 침입 판단 비율 값 범위가 기록되어 있는 위험 등급 테이블을 저장하여 유지하는 단계, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단되면, 미리 정해진 제1 재판단 수행 횟수만큼 상기 차량에 대한 외부 데이터의 침입 여부에 대한 판단의 반복 수행을 제어하는 단계, 상기 제1 재판단 수행 횟수만큼 상기 차량에 대한 외부 데이터의 침입 여부의 판단이 반복 수행되면, 상기 차량에 대한 외부 데이터의 침입 여부의 판단을 반복 수행한 결과로부터 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단된 횟수를 카운트하고, 상기 제1 재판단 수행 횟수 대비 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단된 횟수의 비율을 연산하는 단계 및 상기 위험 등급 테이블로부터 상기 연산된 비율이 속한 제1 침입 판단 비율 값 범위에 대응하는 제1 위험 등급을 추출하여 디스플레이를 통해 상기 차량의 상태가 상기 제1 위험 등급에 따른 위험 상황임을 알리는 경고 메시지를 출력하는 단계를 더 포함할 수 있다.
이상, 도 2를 참조하여 본 발명의 일실시예에 따른 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법은 도 1을 이용하여 설명한 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.
본 발명의 일실시예에 따른 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.
또한, 본 발명의 일실시예에 따른 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
110: 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치
111: 참조 엔트로피 저장부 112: 주행 환경 조건 확인부
113: 카운트부 114: 기준 정보 엔트로피 추정부
115: 엔트로피 확인부 116: 외부 데이터 침입 판단부
117: 지속 감시 이벤트 발생부 118: 시뮬레이션 주행 수행부
119: 테스트 정보 엔트로피 추정부 120: 엔트로피 저장 처리부
121: 위험 등급 테이블 유지부 122: 반복 수행 제어부
123: 비율 연산부 124: 경고 메시지 출력부

Claims (14)

  1. 미리 정해진 서로 다른 복수의 주행 환경 조건들 각각에 대해, 차량에 대한 외부 데이터의 침입 탐지를 위한 미리 정해진 제1 참조 정보 엔트로피(entropy)의 상한 값과 하한 값, 미리 정해진 제2 참조 정보 엔트로피의 상한 값과 하한 값 및 미리 정해진 제3 참조 정보 엔트로피의 상한 값과 하한 값이 저장되어 있는 참조 엔트로피 저장부;
    상기 차량의 ECU(Electronic Control Unit)에 접속하여 상기 차량의 주행과 연관된 제어 신호를 확인함으로써, 상기 차량의 현재 주행 환경 조건을 확인하는 주행 환경 조건 확인부;
    상기 차량 내부의 CAN(Controller Area Network) 통신 네트워크를 통해서 순차적으로 생성되는 N(N은 2이상의 자연수)개의 패킷들을 수집하여 N개의 패킷들로 구성된 패킷 그룹을 생성하고, 상기 패킷 그룹을 구성하는 N개의 패킷들에 할당되어 있는 ID를 확인해서 제1 중복 이벤트(상기 제1 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 2개가 연속으로 생성되었을 경우 발생하는 이벤트임), 제2 중복 이벤트(상기 제2 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 3개가 연속으로 생성되었을 경우 발생하는 이벤트임) 및 제3 중복 이벤트(상기 제3 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 4개가 연속으로 생성되었을 경우 발생하는 이벤트임)의 발생 횟수를 각각 카운트하는 카운트부;
    상기 제1 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제1 기준 정보 엔트로피를 추정하고, 상기 제2 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제2 기준 정보 엔트로피를 추정하며, 상기 제3 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제3 기준 정보 엔트로피를 추정하는 기준 정보 엔트로피 추정부;
    상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피가 추정되면, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제1 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제1 기준 정보 엔트로피가 속하는지 여부를 확인하고, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제2 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제2 기준 정보 엔트로피가 속하는지 여부를 확인하며, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제3 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제3 기준 정보 엔트로피가 속하는지 여부를 확인하는 엔트로피 확인부;
    상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피 중 어느 하나의 기준 정보 엔트로피도 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하지 않는 것으로 확인되면, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단하는 외부 데이터 침입 판단부; 및
    상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피 중 어느 하나 이상의 기준 정보 엔트로피가 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하는 것으로 확인되면, 지속 감시 이벤트를 발생시키는 지속 감시 이벤트 발생부
    를 포함하고,
    상기 주행 환경 조건 확인부는
    상기 지속 감시 이벤트가 발생되면, 상기 차량의 ECU에 다시 접속하여 상기 차량의 주행과 연관된 제어 신호를 확인함으로써, 상기 차량의 현재 주행 환경 조건을 재확인하고,
    상기 카운트부는
    상기 CAN 통신 네트워크를 통해서 추가적으로 생성되는 N개의 패킷들을 재수집하여 재수집된 N개의 패킷들로 구성된 패킷 그룹을 재생성하고, 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들에 할당되어 있는 ID를 확인해서 상기 제1 중복 이벤트, 상기 제2 중복 이벤트 및 상기 제3 중복 이벤트의 발생 횟수를 각각 다시 카운트하며,
    상기 기준 정보 엔트로피 추정부는
    상기 다시 카운트된 제1 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제1 기준 정보 엔트로피를 재추정하고, 상기 다시 카운트된 제2 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제2 기준 정보 엔트로피를 재추정하며, 상기 다시 카운트된 제3 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제3 기준 정보 엔트로피를 재추정하고,
    상기 엔트로피 확인부는
    상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피가 재추정되면, 상기 참조 엔트로피 저장부에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제1 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제1 기준 정보 엔트로피가 속하는지 여부를 확인하고, 상기 참조 엔트로피 저장부에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제2 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제2 기준 정보 엔트로피가 속하는지 여부를 확인하며, 상기 참조 엔트로피 저장부에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제3 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제3 기준 정보 엔트로피가 속하는지 여부를 확인하고,
    상기 외부 데이터 침입 판단부는
    상기 재추정된 제1 기준 정보 엔트로피, 상기 재추정된 제2 기준 정보 엔트로피 및 상기 재추정된 제3 기준 정보 엔트로피 중 어느 하나의 기준 정보 엔트로피도 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하지 않는 것으로 확인되면, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단하는 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치.
  2. 제1항에 있어서,
    상기 기준 정보 엔트로피 추정부는
    하기의 수학식 1에 따른 연산에 기초하여 상기 제1 기준 정보 엔트로피를 추정하고, 하기의 수학식 2에 따른 연산에 기초하여 상기 제2 기준 정보 엔트로피를 추정하며, 하기의 수학식 3에 따른 연산에 기초하여 상기 제3 기준 정보 엔트로피를 추정하는 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치.
    [수학식 1]
    Figure 112019054192803-pat00014

    [수학식 2]
    Figure 112019054192803-pat00015

    [수학식 3]
    Figure 112019054192803-pat00016

    여기서, R1은 상기 제1 기준 정보 엔트로피, S1는 상기 제1 중복 이벤트의 발생 횟수, n1은 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수이고, R2는 상기 제2 기준 정보 엔트로피, S2는 상기 제2 중복 이벤트의 발생 횟수, n1은 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수이며, R3은 상기 제3 기준 정보 엔트로피, S3는 상기 제3 중복 이벤트의 발생 횟수, n1은 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수임.
  3. 삭제
  4. 제1항에 있어서,
    상기 기준 정보 엔트로피 추정부는
    하기의 수학식 4에 따른 연산에 기초하여 상기 제1 기준 정보 엔트로피의 재추정을 수행하고, 하기의 수학식 5에 따른 연산에 기초하여 상기 제2 기준 정보 엔트로피의 재추정을 수행하며, 하기의 수학식 6에 따른 연산에 기초하여 상기 제3 기준 정보 엔트로피의 재추정을 수행하는 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치.
    [수학식 4]
    Figure 112020115108956-pat00017

    [수학식 5]
    Figure 112020115108956-pat00018

    [수학식 6]
    Figure 112020115108956-pat00019

    여기서, R1r은 상기 재추정된 제1 기준 정보 엔트로피, S1는 상기 제1 중복 이벤트의 발생 횟수, S1r는 상기 다시 카운트한 제1 중복 이벤트의 발생 횟수, n2은 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수이고, R2r은 상기 재추정된 제2 기준 정보 엔트로피, S2는 상기 제2 중복 이벤트의 발생 횟수, S2r은 상기 다시 카운트한 제2 중복 이벤트의 발생 횟수, n2은 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수이며, R3r은 상기 재추정된 제3 기준 정보 엔트로피, S3은 상기 제3 중복 이벤트의 발생 횟수, S3r은 상기 다시 카운트한 제3 중복 이벤트의 발생 횟수, n2은 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수이고, w는 0에서 1사이의 크기를 갖는 미리 정해진 가중치임.
  5. 제1항에 있어서,
    상기 차량의 ECU에 대해 상기 복수의 주행 환경 조건들 각각에 따른 주행 환경을 갖도록 하기 위한 제어 신호를 인가함으로써, 상기 차량에 대해 상기 복수의 주행 환경 조건들 각각에 따른 시뮬레이션 주행을 선정된(predetermined) 훈련 횟수만큼 반복 수행하는 시뮬레이션 주행 수행부;
    상기 복수의 주행 환경 조건들 각각에 대해 상기 시뮬레이션 주행이 상기 선정된 훈련 횟수만큼 반복 수행될 때마다, 상기 CAN 통신 네트워크를 통해서 순차적으로 생성되는 복수의 패킷들의 총 개수와 상기 복수의 패킷들에 대해서 발생하는 상기 제1 중복 이벤트, 상기 제2 중복 이벤트 및 상기 제3 중복 이벤트의 발생 횟수를 카운트하여 상기 제1 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제1 테스트용 정보 엔트로피를 추정하고, 상기 제2 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제2 테스트용 정보 엔트로피를 추정하며, 상기 제3 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제3 테스트용 정보 엔트로피를 추정하는 테스트 정보 엔트로피 추정부; 및
    상기 복수의 주행 환경 조건들 각각에 대해 상기 선정된 훈련 횟수만큼 반복 추정된 상기 제1 테스트용 정보 엔트로피, 상기 제2 테스트용 정보 엔트로피 및 상기 제3 테스트용 정보 엔트로피의 최댓값과 최솟값을 확인해서, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제1 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제1 참조 정보 엔트로피의 상한 값과 하한 값으로 상기 참조 엔트로피 저장부 상에 대응시켜 저장하고, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제2 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제2 참조 정보 엔트로피의 상한 값과 하한 값으로 상기 참조 엔트로피 저장부 상에 대응시켜 저장하며, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제3 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값으로 상기 참조 엔트로피 저장부 상에 대응시켜 저장하는 엔트로피 저장 처리부
    를 더 포함하는 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치.
  6. 제1항에 있어서,
    미리 정해진 서로 다른 복수의 위험 등급들 각각에 대해 각 위험 등급에 대응하는 서로 다른 침입 판단 비율 값 범위가 기록되어 있는 위험 등급 테이블을 저장하여 유지하는 위험 등급 테이블 유지부;
    상기 외부 데이터 침입 판단부를 통해 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단되면, 미리 정해진 제1 재판단 수행 횟수만큼 상기 차량에 대한 외부 데이터의 침입 여부에 대한 판단의 반복 수행을 제어하는 반복 수행 제어부;
    상기 제1 재판단 수행 횟수만큼 상기 차량에 대한 외부 데이터의 침입 여부의 판단이 반복 수행되면, 상기 차량에 대한 외부 데이터의 침입 여부의 판단을 반복 수행한 결과로부터 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단된 횟수를 카운트하고, 상기 제1 재판단 수행 횟수 대비 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단된 횟수의 비율을 연산하는 비율 연산부; 및
    상기 위험 등급 테이블로부터 상기 연산된 비율이 속한 제1 침입 판단 비율 값 범위에 대응하는 제1 위험 등급을 추출하여 디스플레이를 통해 상기 차량의 상태가 상기 제1 위험 등급에 따른 위험 상황임을 알리는 경고 메시지를 출력하는 경고 메시지 출력부
    를 더 포함하는 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치.
  7. 미리 정해진 서로 다른 복수의 주행 환경 조건들 각각에 대해, 차량에 대한 외부 데이터의 침입 탐지를 위한 미리 정해진 제1 참조 정보 엔트로피(entropy)의 상한 값과 하한 값, 미리 정해진 제2 참조 정보 엔트로피의 상한 값과 하한 값 및 미리 정해진 제3 참조 정보 엔트로피의 상한 값과 하한 값이 저장되어 있는 참조 엔트로피 저장부를 유지하는 단계;
    상기 차량의 ECU(Electronic Control Unit)에 접속하여 상기 차량의 주행과 연관된 제어 신호를 확인함으로써, 상기 차량의 현재 주행 환경 조건을 확인하는 단계;
    상기 차량 내부의 CAN(Controller Area Network) 통신 네트워크를 통해서 순차적으로 생성되는 N(N은 2이상의 자연수)개의 패킷들을 수집하여 N개의 패킷들로 구성된 패킷 그룹을 생성하고, 상기 패킷 그룹을 구성하는 N개의 패킷들에 할당되어 있는 ID를 확인해서 제1 중복 이벤트(상기 제1 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 2개가 연속으로 생성되었을 경우 발생하는 이벤트임), 제2 중복 이벤트(상기 제2 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 3개가 연속으로 생성되었을 경우 발생하는 이벤트임) 및 제3 중복 이벤트(상기 제3 중복 이벤트는 상기 CAN 통신 네트워크를 통해 동일한 ID를 갖는 패킷 4개가 연속으로 생성되었을 경우 발생하는 이벤트임)의 발생 횟수를 각각 카운트하는 단계;
    상기 제1 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제1 기준 정보 엔트로피를 추정하고, 상기 제2 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제2 기준 정보 엔트로피를 추정하며, 상기 제3 중복 이벤트의 발생 횟수와 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제3 기준 정보 엔트로피를 추정하는 단계;
    상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피가 추정되면, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제1 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제1 기준 정보 엔트로피가 속하는지 여부를 확인하고, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제2 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제2 기준 정보 엔트로피가 속하는지 여부를 확인하며, 상기 참조 엔트로피 저장부에서 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제3 참조 정보 엔트로피의 상한 값과 하한 값에 상기 제3 기준 정보 엔트로피가 속하는지 여부를 확인하는 단계;
    상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피 중 어느 하나의 기준 정보 엔트로피도 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하지 않는 것으로 확인되면, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단하는 단계;
    상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피 중 어느 하나 이상의 기준 정보 엔트로피가 상기 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하는 것으로 확인되면, 지속 감시 이벤트를 발생시키는 단계;
    상기 지속 감시 이벤트가 발생되면, 상기 차량의 ECU에 다시 접속하여 상기 차량의 주행과 연관된 제어 신호를 확인함으로써, 상기 차량의 현재 주행 환경 조건을 재확인하는 단계;
    상기 CAN 통신 네트워크를 통해서 추가적으로 생성되는 N개의 패킷들을 재수집하여 재수집된 N개의 패킷들로 구성된 패킷 그룹을 재생성하고, 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들에 할당되어 있는 ID를 확인해서 상기 제1 중복 이벤트, 상기 제2 중복 이벤트 및 상기 제3 중복 이벤트의 발생 횟수를 각각 다시 카운트하는 단계;
    상기 다시 카운트된 제1 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제1 기준 정보 엔트로피를 재추정하고, 상기 다시 카운트된 제2 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제2 기준 정보 엔트로피를 재추정하며, 상기 다시 카운트된 제3 중복 이벤트의 발생 횟수와 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수에 기초하여 상기 재확인된 차량의 현재 주행 환경 조건 하에서 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 상기 제3 기준 정보 엔트로피를 재추정하는 단계;
    상기 제1 기준 정보 엔트로피, 상기 제2 기준 정보 엔트로피 및 상기 제3 기준 정보 엔트로피가 재추정되면, 상기 참조 엔트로피 저장부에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제1 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제1 기준 정보 엔트로피가 속하는지 여부를 확인하고, 상기 참조 엔트로피 저장부에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제2 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제2 기준 정보 엔트로피가 속하는지 여부를 확인하며, 상기 참조 엔트로피 저장부에서 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 제3 참조 정보 엔트로피의 상한 값과 하한 값에 상기 재추정된 제3 기준 정보 엔트로피가 속하는지 여부를 확인하는 단계; 및
    상기 재추정된 제1 기준 정보 엔트로피, 상기 재추정된 제2 기준 정보 엔트로피 및 상기 재추정된 제3 기준 정보 엔트로피 중 어느 하나의 기준 정보 엔트로피도 상기 재확인된 차량의 현재 주행 환경 조건과 일치하는 주행 환경 조건에 대응되어 저장되어 있는 상기 제1 참조 정보 엔트로피, 상기 제2 참조 정보 엔트로피 및 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값 사이에 속하지 않는 것으로 확인되면, 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단하는 단계
    를 포함하는 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법.
  8. 제7항에 있어서,
    상기 제3 기준 정보 엔트로피를 추정하는 단계는
    하기의 수학식 1에 따른 연산에 기초하여 상기 제1 기준 정보 엔트로피를 추정하고, 하기의 수학식 2에 따른 연산에 기초하여 상기 제2 기준 정보 엔트로피를 추정하며, 하기의 수학식 3에 따른 연산에 기초하여 상기 제3 기준 정보 엔트로피를 추정하는 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법.
    [수학식 1]
    Figure 112019054192803-pat00020

    [수학식 2]
    Figure 112019054192803-pat00021

    [수학식 3]
    Figure 112019054192803-pat00022

    여기서, R1은 상기 제1 기준 정보 엔트로피, S1는 상기 제1 중복 이벤트의 발생 횟수, n1은 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수이고, R2는 상기 제2 기준 정보 엔트로피, S2는 상기 제2 중복 이벤트의 발생 횟수, n1은 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수이며, R3은 상기 제3 기준 정보 엔트로피, S3는 상기 제3 중복 이벤트의 발생 횟수, n1은 상기 패킷 그룹을 구성하는 N개의 패킷들의 개수임.
  9. 삭제
  10. 제7항에 있어서,
    상기 제3 기준 정보 엔트로피를 재추정하는 단계는
    하기의 수학식 4에 따른 연산에 기초하여 상기 제1 기준 정보 엔트로피의 재추정을 수행하고, 하기의 수학식 5에 따른 연산에 기초하여 상기 제2 기준 정보 엔트로피의 재추정을 수행하며, 하기의 수학식 6에 따른 연산에 기초하여 상기 제3 기준 정보 엔트로피의 재추정을 수행하는 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법.
    [수학식 4]
    Figure 112020115108956-pat00023

    [수학식 5]
    Figure 112020115108956-pat00024

    [수학식 6]
    Figure 112020115108956-pat00025

    여기서, R1r은 상기 재추정된 제1 기준 정보 엔트로피, S1는 상기 제1 중복 이벤트의 발생 횟수, S1r는 상기 다시 카운트한 제1 중복 이벤트의 발생 횟수, n2은 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수이고, R2r은 상기 재추정된 제2 기준 정보 엔트로피, S2는 상기 제2 중복 이벤트의 발생 횟수, S2r은 상기 다시 카운트한 제2 중복 이벤트의 발생 횟수, n2은 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수이며, R3r은 상기 재추정된 제3 기준 정보 엔트로피, S3은 상기 제3 중복 이벤트의 발생 횟수, S3r은 상기 다시 카운트한 제3 중복 이벤트의 발생 횟수, n2은 상기 재생성된 패킷 그룹을 구성하는 N개의 패킷들의 개수이고, w는 0에서 1사이의 크기를 갖는 미리 정해진 가중치임.
  11. 제7항에 있어서,
    상기 차량의 ECU에 대해 상기 복수의 주행 환경 조건들 각각에 따른 주행 환경을 갖도록 하기 위한 제어 신호를 인가함으로써, 상기 차량에 대해 상기 복수의 주행 환경 조건들 각각에 따른 시뮬레이션 주행을 선정된(predetermined) 훈련 횟수만큼 반복 수행하는 단계;
    상기 복수의 주행 환경 조건들 각각에 대해 상기 시뮬레이션 주행이 상기 선정된 훈련 횟수만큼 반복 수행될 때마다, 상기 CAN 통신 네트워크를 통해서 순차적으로 생성되는 복수의 패킷들의 총 개수와 상기 복수의 패킷들에 대해서 발생하는 상기 제1 중복 이벤트, 상기 제2 중복 이벤트 및 상기 제3 중복 이벤트의 발생 횟수를 카운트하여 상기 제1 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제1 테스트용 정보 엔트로피를 추정하고, 상기 제2 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제2 테스트용 정보 엔트로피를 추정하며, 상기 제3 중복 이벤트의 발생 횟수를 기초로 상기 복수의 주행 환경 조건들 각각에 따른 상기 CAN 통신 네트워크를 통해서 발생 가능한 패킷 ID에 대한 정보량을 표상하는 제3 테스트용 정보 엔트로피를 추정하는 단계; 및
    상기 복수의 주행 환경 조건들 각각에 대해 상기 선정된 훈련 횟수만큼 반복 추정된 상기 제1 테스트용 정보 엔트로피, 상기 제2 테스트용 정보 엔트로피 및 상기 제3 테스트용 정보 엔트로피의 최댓값과 최솟값을 확인해서, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제1 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제1 참조 정보 엔트로피의 상한 값과 하한 값으로 상기 참조 엔트로피 저장부 상에 대응시켜 저장하고, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제2 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제2 참조 정보 엔트로피의 상한 값과 하한 값으로 상기 참조 엔트로피 저장부 상에 대응시켜 저장하며, 상기 복수의 주행 환경 조건들 각각에 대해 확인된 상기 제3 테스트용 정보 엔트로피의 최댓값과 최솟값을 상기 복수의 주행 환경 조건들 각각에 대한 상기 제3 참조 정보 엔트로피의 상한 값과 하한 값으로 상기 참조 엔트로피 저장부 상에 대응시켜 저장하는 단계
    를 더 포함하는 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법.
  12. 제7항에 있어서,
    미리 정해진 서로 다른 복수의 위험 등급들 각각에 대해 각 위험 등급에 대응하는 서로 다른 침입 판단 비율 값 범위가 기록되어 있는 위험 등급 테이블을 저장하여 유지하는 단계;
    상기 차량에 외부 데이터의 침입이 발생한 것으로 판단되면, 미리 정해진 제1 재판단 수행 횟수만큼 상기 차량에 대한 외부 데이터의 침입 여부에 대한 판단의 반복 수행을 제어하는 단계;
    상기 제1 재판단 수행 횟수만큼 상기 차량에 대한 외부 데이터의 침입 여부의 판단이 반복 수행되면, 상기 차량에 대한 외부 데이터의 침입 여부의 판단을 반복 수행한 결과로부터 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단된 횟수를 카운트하고, 상기 제1 재판단 수행 횟수 대비 상기 차량에 외부 데이터의 침입이 발생한 것으로 판단된 횟수의 비율을 연산하는 단계; 및
    상기 위험 등급 테이블로부터 상기 연산된 비율이 속한 제1 침입 판단 비율 값 범위에 대응하는 제1 위험 등급을 추출하여 디스플레이를 통해 상기 차량의 상태가 상기 제1 위험 등급에 따른 위험 상황임을 알리는 경고 메시지를 출력하는 단계
    를 더 포함하는 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치의 동작 방법.
  13. 제7항, 제8항, 제10항, 제11항 또는 제12항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
  14. 제7항, 제8항, 제10항, 제11항 또는 제12항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.
KR1020190062011A 2019-05-27 2019-05-27 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치 및 그 동작 방법 KR102190054B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190062011A KR102190054B1 (ko) 2019-05-27 2019-05-27 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치 및 그 동작 방법
US16/721,934 US11297076B2 (en) 2019-05-27 2019-12-20 Apparatus for detecting in-vehicle external data intrusion by comparing multiple information entropy and operating method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190062011A KR102190054B1 (ko) 2019-05-27 2019-05-27 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치 및 그 동작 방법

Publications (2)

Publication Number Publication Date
KR20200136217A KR20200136217A (ko) 2020-12-07
KR102190054B1 true KR102190054B1 (ko) 2020-12-11

Family

ID=73550005

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190062011A KR102190054B1 (ko) 2019-05-27 2019-05-27 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치 및 그 동작 방법

Country Status (2)

Country Link
US (1) US11297076B2 (ko)
KR (1) KR102190054B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111970309B (zh) * 2020-10-20 2021-02-02 南京理工大学 基于Spark车联网组合深度学习入侵检测方法及系统
JPWO2022137661A1 (ko) * 2020-12-25 2022-06-30
CN112637224B (zh) * 2020-12-28 2022-11-15 浙江工业大学 一种自治系统内基于子空间和相对熵的DDoS攻击检测方法
CN114584345B (zh) * 2022-01-26 2023-04-28 北京邮电大学 轨道交通网络安全处理方法、装置及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101638613B1 (ko) * 2015-04-17 2016-07-11 현대자동차주식회사 차량용 네트워크의 침입 탐지 시스템(ids) 및 그 제어방법
KR101857554B1 (ko) * 2017-11-14 2018-05-14 조선대학교산학협력단 차량에 대한 외부 데이터 침입 탐지 장치 및 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10708293B2 (en) * 2015-06-29 2020-07-07 Argus Cyber Security Ltd. System and method for time based anomaly detection in an in-vehicle communication network
KR101853676B1 (ko) * 2016-08-18 2018-05-03 고려대학교 산학협력단 차량 침입 탐지 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101638613B1 (ko) * 2015-04-17 2016-07-11 현대자동차주식회사 차량용 네트워크의 침입 탐지 시스템(ids) 및 그 제어방법
KR101857554B1 (ko) * 2017-11-14 2018-05-14 조선대학교산학협력단 차량에 대한 외부 데이터 침입 탐지 장치 및 방법

Also Published As

Publication number Publication date
US20200382528A1 (en) 2020-12-03
KR20200136217A (ko) 2020-12-07
US11297076B2 (en) 2022-04-05

Similar Documents

Publication Publication Date Title
KR102190054B1 (ko) 다중 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치 및 그 동작 방법
KR101936891B1 (ko) 운전 행위 안내 정보의 생성 방법 및 장치
US20160308887A1 (en) In-vehicle network intrusion detection system and method for controlling the same
CN105976450A (zh) 无人驾驶车辆的数据处理方法和装置、黑匣子系统
CN113272838A (zh) 虚拟场景生成方法、装置、计算机设备和存储介质
CN109032103A (zh) 无人驾驶车辆的测试方法、装置、设备及存储介质
KR101857554B1 (ko) 차량에 대한 외부 데이터 침입 탐지 장치 및 방법
AU2021202991B2 (en) Method and system for vehicle speed profile generation
US10809709B2 (en) Information storage system and apparatus
CN113535569B (zh) 自动驾驶的控制效果确定方法
JP6950481B2 (ja) 診断システム
US20070136015A1 (en) Diagnosis apparatus for diagnosing state of equipment
JP4814816B2 (ja) 事故発生予測シミュレーション装置、方法及びプログラム並びに安全システム評価装置及び事故警報装置
CN110781578A (zh) 一种基于事故场景的智能网联车算法的测试及评价方法
KR102147540B1 (ko) 차량의 위치 정보와 주행 상태 정보를 기초로 도로 상태 정보의 공유를 가능하게 하는 정보 공유 서버 및 그 동작 방법
KR102006755B1 (ko) 정보 엔트로피의 비교를 통한 차량 내 외부 데이터 침입 탐지 장치 및 그 동작 방법
Cho et al. Autonomous driving system verification framework with FMI co-simulation based on OMG DDS
CN114821968A (zh) 动车司机疲劳驾驶干预方法、装置、设备及可读存储介质
CN110377982B (zh) 自动驾驶性能的测试方法及系统、电子设备、存储介质
KR102242671B1 (ko) 슬라이딩 윈도우를 이용한 메시지 검증 기반의 차량 내 보안 침입 탐지 장치 및 그 동작 방법
CN112455460B (zh) 车辆控制方法、装置、设备及存储介质
CN115384536A (zh) 一种驾驶辅助系统控制器的评估方法、装置、设备及介质
CN114911982A (zh) 一种车辆故障预警方法、装置、终端设备及存储介质
CN114987512A (zh) 收集交通工具的传感器数据
Lv et al. A novel rear-end collision warning algorithm in VANET

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant