KR20200086632A - 차량 생성 데이터를 수집 및 관리하는 방법 및 시스템 - Google Patents

차량 생성 데이터를 수집 및 관리하는 방법 및 시스템 Download PDF

Info

Publication number
KR20200086632A
KR20200086632A KR1020200001209A KR20200001209A KR20200086632A KR 20200086632 A KR20200086632 A KR 20200086632A KR 1020200001209 A KR1020200001209 A KR 1020200001209A KR 20200001209 A KR20200001209 A KR 20200001209A KR 20200086632 A KR20200086632 A KR 20200086632A
Authority
KR
South Korea
Prior art keywords
vehicle
data
server
identification number
vehicle identification
Prior art date
Application number
KR1020200001209A
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 US17/419,021 priority Critical patent/US20220114845A1/en
Priority to PCT/KR2020/000173 priority patent/WO2020145589A1/ko
Publication of KR20200086632A publication Critical patent/KR20200086632A/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/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0808Diagnosing performance data
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0841Registering performance data
    • G07C5/085Registering performance data using electronic data carriers
    • G07C5/0858Registering performance data using electronic data carriers wherein the data carrier is removable
    • 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/1458Denial of Service
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Bioethics (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Traffic Control Systems (AREA)

Abstract

본 개시는, 일반적으로, 차량으로부터 차량 생성 데이터를 수집 및 관리하는 시스템에 관한 것이다. 차량 생성 데이터는 관련된 차량의 차량 식별 번호(vehicle identification number: VIN)의 비식별화된 버전에 의해 익명화된다. 차량 식별 번호(VIN)의 비식별화된 버전은, 개인의 프라이버시에 대한 위험 없이, 차량 생성 데이터에 대한 통계적인 분석을 용이하게 한다. 익명화된 차량 생성 데이터는 차량 제조사들과는 독립적인 사업자에 의해 운영되는 중립적인 데이터 서버에 의해 보유되고 제3자에게 제공될 수 있다.

Description

차량 생성 데이터를 수집 및 관리하는 방법 및 시스템{METHOD AND SYSTEM FOR COLLECTING AND MANAGING VEHICLE GENERATED DATA}
본 발명은 차량으로부터 차량 생성 데이터를 수집 및 저장하는 방법 및 시스템에 관련되어 있다.
이 부분에 기술된 내용은 단순히 본 발명에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
차량에 ADAS(Advanced Driver Assistance Systems)와 자율주행 기능이 확대 적용에 따라 사고의 원인이 운전자로부터 차량으로 확대 이동되는 양상을 보이고 있다. 이러한 사고 원인의 적절한 규명을 위해, 기존의 이벤트 데이터 레코더(Event Data Recorder: EDR)에서 기록되는 데이터 외에, ADAS 혹은 자율주행 기능들의 동작 상태, 센서 입력에 대해 차량 시스템이 어떻게 판단을 하였는지 등에 관한 추가적인 데이터를 수집하여야 한다는 요구가 커지고 있다.
EDR 데이터를 포함한 차량에서 생성, 기록, 저장되는 데이터는 차량 관련 서비스(보험, 유지보수, 중고차 거래, 렌탈/판매 등)에서부터 마케팅 용도, 연구 목적 (교통분석, 자율주행 등)까지 다양하게 활용될 수 있다. 예컨대, 차량 제조사 등은 차량에 탑재되는 다양한 ECU들, 센서들, 다른 컴포넌트의 기능을 검증하고 개선하기 위해 차량 데이터를 활용하고자 한다. 또한 보험 업계에서는 운전자의 운전 성향에 의한 리스크에 맞는 보험료를 산정하고자 하는 이른바 '운전 습관 연계보험(Usage Base Insurance: UBI)'이 시도되고 있다.
정보통신기술이 발전되면서, 이러한 차량 데이터는 네트워크 상의 데이터 서버에 다양한 형태로 수집될 수 있으며, 다양한 서비스 제공자들에게 제공될 수 있다. 데이터 서버에 수집될 수 있는 일부 정보는 개인의 프라이버시 측면에서 민감한 정보일 수 있다. 이러한 데이터 서버에서 개인정보에 대한 실질적인 통제와 판매 권한이 운영자에게 있었기 때문에, 개인은 많은 위험을 부담해야 했다.
더욱이, 유럽의 일반개인정보보호법(General Data Protection Regulation: GDPR) 등의 개인정보보호에 대한 법안들이 시행됨에 따라, 기업은 개인 데이터 기록을 수집, 처리, 업데이트, 보관, 삭제하는 과정과 그 이유를 재정립함으로써 데이터 보호에 대한 책임과 결과를 입증해야 한다.
본 개시는 차량 생성 데이터를 수집 및 관리하는 중앙화된 시스템에서, 개인의 프라이버시 보호를 위해 차량 생성 데이터를 개인정보와 분리하기 위한 기법을 제시하고자 한다.
본 개시의 일 측면에 따르면, 차량 제조사의 서버에 의해 수행되는 방법으로서, 차량으로부터 차량 식별 번호(vehicle identification number; VIN)에 의해 식별되는 차량 생성 데이터를 수신하는 단계; 상기 차량 식별 번호의 비식별화된 버전을 생성하는 단계; 및 상기 차량 식별 번호의 비식별화된 버전과 상기 차량 생성 데이터를 상기 차량 제조사의 서버와는 독립된 데이터 서버에 제공하는 단계를 포함하는 방법을 제공한다.
상기 차량 식별 번호의 비식별화된 버전을 생성하는 단계는, 상기 차량 식별 번호의 일부 디지트(digit)와 솔트(salt)의 연접에 대해 해시 함수를 적용하여 해시값을 생성하는 단계; 및 상기 일부 디지트를 상기 해시값으로 대체하는 단계를 포함할 수 있다. 상기 일부 디지트는 적어도 생산 일련 번호를 포함할 수 있다.
일부 실시예에서, 상기 차량 생성 데이터는 상기 차량에 탑재된 이벤트 데이터 레코더(Event Data Recorder: EDR)에 의해 기록된 데이터일 수 있다. 다른 일부 실시예에서, 상기 차량 생성 데이터는, 상기 차량에 탑재된 데이터 스토리지 시스템에 의해 기록된 자율 주행 데이터일 수 있다.
본 개시의 다른 측면에 따르면, 익명화된 차량 생성 데이터를 보유하는 데이터 서버로부터, 차량 제조사 서버가, 특정 차량과 관련된 차량 생성 데이터를 취득하는 방법으로서, 상기 특정 차량의 차량 식별 번호(vehicle identification number; VIN)를 획득하는 단계; 상기 특정 차량의 차량 식별 번호의 비식별화된 버전을 재구성하는 단계; 및 재구성된 비식별화된 버전에 대응하는 차량 생성 데이터를 상기 데이터 서버에 요청하는 단계를 포함하는 방법을 제공한다.
본 개시의 또 다른 측면에 따르면, 익명화된 차량 생성 데이터를 보유하는 데이터 서버를 제공한다. 상기 데이터 서버는 적어도 하나의 프로세서; 및 적어도 하나의 데이터 스토리지를 포함하고, 상기 적어도 하나의 데이터 스토리지는 차량 식별 번호의 비식별화된 버전에 의해 구별되는 차량 생성 데이터를 저장하는 데이터베이스와 명령어들을 저장한다. 상기 명령어들은 상기 적어도 하나의 프로세서에 의해 수행될 때, 상기 데이터 서버로 하여금, 차량 제조사 서버로부터 관심 있는 차량 식별 번호의 비식별화된 버전에 대응하는 차량 생성 데이터를 요청하는 요청 메시지를 수신하는 단계; 상기 데이터베이스를 조회하여 상기 관심 있는 차량 식별 번호의 비식별화된 버전에 대응하는 차량 생성 데이터를 획득하는 단계; 및 상기 차량 제조사 서버에 상기 획득한 차량 생성 데이터를 전송하는 단계를 수행하도록 한다.
본 개시의 일 측면에 따르면, 차량 생성 데이터는 차량 제조사들의 서버에 의해 관련된 차량의 차량 식별 번호(vehicle identification number: VIN)의 비식별화된 버전에 의해 익명화된다.
차량 식별 번호(VIN)의 비식별화된 버전은, 개인의 프라이버시에 대한 위험 없이, 차량 생성 데이터에 대한 통계적인 분석을 용이하게 한다. 익명화된 차량 생성 데이터는 차량 제조사들과는 독립적인 사업자에 의해 운영되는 중립적인 데이터 서버에 의해 보유되고 제3자에게 제공될 수 있다.
차량 제조사들은, 법률이나 법원의 명령, 혹은 차량 소유자 혹은 운전자의 동의 하에, 차량 식별 번호(VIN)의 비식별화된 버전을 재구성하여, 익명화된 차량 생성 데이터와 이를 생성한 차량 및 차량의 소유자/운전자 간의 관계를 복원할 수 있다.
도 1은 본 발명의 일 실시예에 따른, 차량들로부터 차량 생성 데이터를 수집하고 관리하는 중앙화된 시스템(centralized system)을 도식화한 도면이다.
도 2는 본 발명의 일 실시예에 따라, 도 1의 시스템에서 VM 서버가 운용하는 관계형 데이터베이스들의 예시적인 구조를 보이는 개념도이다.
도 3은 본 발명의 일 실시예에 따라, 도 1의 시스템에서 VM 서버가 EDR 데이터를 수집 및 저장하는 프로세스를 예시한 흐름도이다.
도 4는 차량 식별 번호(VIN)의 세부사항을 설명하는 도면이다.
도 5는 도 1에 예시된 시스템에서, VM 서버가 이벤트 데이터를 중립 서버에 제공하는 방법을 설명하는 흐름도이다.
도 6은 중립 서버에 전송되는 이벤트 데이터의 예시적인 버전을 보인다.
도 7은 도 1에 예시된 시스템에서, 차량 소유자가 자신의 차량에서 생성된 이벤트 데이터를 획득하는 프로세스를 보이는 예시적인 제어 흐름도이다.
도 8은 도 1에 예시된 시스템에서, 제3자가 관심 있는 특정 차량에서 생성된 이벤트 데이터를 획득하는 프로세스를 보이는 예시적인 제어 흐름도이다.
도 9는 도 1에 예시된 시스템에서, VM 서버가 중립 서버로부터 특정 차량과 관련된 이벤트 데이터를 획득하는 프로세스를 보이는 흐름도이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 '포함', '구비'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 '...부,' '모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
본 개시는, 일반적으로, 다수의 차량들로부터 차량에서 생성, 기록 혹은 저장되는 데이터(즉, 차량 생성 데이터; vehicle generated data)를 수집 및 관리하는 중앙화된 시스템에 관한 것이다. 차량 생성 데이터는 관련된 차량의 차량 식별 번호(vehicle identification number: VIN)의 비식별화된 버전에 의해 익명화된다. 익명화된 차량 생성 데이터는 차량 제조사들과는 독립적인 사업자에 의해 운영되는 중립적인 데이터 서버에 의해 보유되고 제3자에게 제공될 수 있다. 차량 식별 번호(VIN)의 비식별화된 버전은, 개인의 프라이버시에 대한 위험 없이, 차량 생성 데이터에 대한 통계적인 분석을 용이하게 한다. 차량 제조사들은, 법률이나 법원의 명령, 혹은 차량 소유자 혹은 운전자의 동의 하에, 차량 식별 번호(VIN)의 비식별화된 버전을 재구성하여, 익명화된 차량 생성 데이터와 이를 생성한 차량 및 차량의 소유자/운전자 간의 관계를 복원할 수 있다.
도 1은 본 발명의 일 실시예에 따른, 차량들로부터 차량 생성 데이터를 수집하고 관리하는 중앙화된 시스템(centralized system)을 도식화한 도면이다.
도 1의 시스템에서는 차량 내 구비된 이벤트 데이터 레코더(Event Data Recorder: EDR)에서 기록되는 데이터를 차량 생성 데이터의 일 예로서 설명하고 있으나, 이하에서 제안되는 시스템(100)은 차량 작동이나 운전자 행동과 관련하여 차량 내 다른 유형의 장치에서 생성, 기록 혹은 저장되는 다른 유형의 데이터에 대해서도 적용 가능하다. 예를 들어, 도 1의 시스템은 최근 논의되고 있는 자율주행차량용 데이터 스토리지 시스템(Data Storage System for Automated Driving Vehicles; DSSAD)에서 기록되는 자율 주행 데이터(예컨대, ADAS 기능들의 상태 천이, MRM(Minimal Risk Maneuver) 개시, 운전자로의 제어권 전환, 자율주행 시스템의 오류 등의 타임-스탬프된 데이터)에 적용될 수도 있다.
시스템(100)은 차량에 구비된 차량 탑재 모니터링 시스템(in-vehicle monitoring system; 10), 차량 제조사(vehicle manufacturer; VM)에 의해 운용되는 차량 제조사 서버(VM 서버; 20), 및 차량 제조사들과는 독립적인 사업자에 의해 운용되는 데이터 서버(30)를 포함한다. 도 1에는 하나의 차량과 하나의 VM 서버(20) 가 도시되어 있으나, 전형적인 실시예에서, 다수의 차량과 상이한 차량 제조사들에 운용되는 다수의 VM 서버(20)가 존재할 수도 있다. 데이터 서버는 차량 제조사들과는 독립적인 사업자에 의해 운용된다는 점에서 "중립 서버(30)(neutral server)"로 지칭될 수 있다.
차량 탑재 모니터링 시스템(10)은 차량 작동이나 운전자 행동과 관련된 다양한 유형의 데이터를 생성, 기록 혹은 저장하도록 구성되어 있다. 예컨대, 차량 탑재 모니터링 시스템(10)은 이벤트 데이터 레코더(Event Data Recorder: EDR; 11), 적어도 하나의 센서(13) 및 통신 디바이스(Telecommunication device; 15)를 포함할 수 있다. 이들은 차량내 데이터 버스(예컨대, CAN(Controller Area Network), LIN(Local Interconnect Network), MOST(Medium Oriented Systems Transport), Ethernet 등)에 연결될 수 있다.
이벤트 데이터 레코더(EDR; 11)는 차량에 장착된 각종 센서 및/또는 전자 제어 유닛(electronic control unit: ECU)들로부터 데이터를 수신할 수 있다. 이벤트 데이터 레코더(11)의 휘발성 메모리에는 일정 시간 동안의 데이터가 지속적으로 업데이트되면서 임시 저장된다. 이벤트 데이터 레코더(EDR; 11)는 하나 이상의 미리 정의된 이벤트의 발생이 검출되면, 그 검출 전후 소정 시간 내에 휘발성 메모리에 저장된 데이터를 내부의 비휘발성 메모리에 기록하며, 기록된 데이터를 통신 디바이스(15)에 제공하도록 설계된다. 그러한 이벤트는 특히 충돌 사고(traffic collision)일 수 있다. 충돌 사고는, 예를 들어, 에어백 또는 좌석안전벨트 프리로딩 장치 등의 비가역 안전장치의 전개가 트리거되는 때에 감지될 수 있다. 충돌 사고는, 또한, 사전 정의된 임계 값을 초과하는 가감속(예컨대, 150 ms 내에 8km/h 이상의 속도 변화)이 발생할 때 감지될 수도 있다. 이벤트는 차량의 주요 기능의 고장을 더 포함할 수도 있다.
이벤트 데이터 레코더(EDR; 11)는, 예컨대, 에어백 제어 유닛(airbag control unit: ACU)과 같은, 전자 제어 유닛(들)으로부터 이벤트 발생을 알리는 트리거 신호(들)를 수신할 수도 있다. 이벤트 데이터 레코더(11)는 적어도 하나의 센서(13)에 의해 측정된 값들에 접근 가능할 수 있다. 적어도 하나의 센서(13)는 차량 속도/가감속/이동 거리 등을 감지하도록 설계될 수 있다.
이벤트 데이터 레코더(11)에 의해 기록되는 데이터는, 예컨대, 차량의 동역학(dynamics), 운전자의 행동, 차량의 안전 시스템의 작동 상태 등과 같은 충돌 사고를 분석하기에 적합한 데이터일 수 있다. 이벤트 데이터 레코더(11)는 기록된 데이터(이하 'EDR 데이터'로 지칭함)를 통신 디바이스(15)에 제공한다.
통신 디바이스(15)는, 차량 내부 네트워크를 외부의 통신 네트워크에 연결하는 유선 혹은 무선 통신기기이다. 통신 디바이스(15)는, 예컨대, 텔레매틱스 유닛(Telematics Unit; TMU) 혹은 OBD-Ⅱ 포트에 플러그 되는 유무선 동글일 수 있다. 통신 디바이스(15)는, 예를 들어, GSM/WCDMA/LTE/5G와 같은 셀룰러 통신 혹은 WLAN, c-V2X, WAVE, DSRC, 블루투스와 같은 단거리 무선 통신이 가능한 무선 송수신기를 포함하도록 구성될 수 있다.
통신 디바이스(15)는, 이벤트 데이터 레코더(11)로부터 EDR 데이터가 수신되면, 위치 결정 디바이스(미도시), 시간 결정 디바이스(미도시) 등으로부터 이벤트가 발생한 날짜, 시각, 및 지리적 위치와 같은 부가 정보를 획득할 수 있다. 위치 결정 디바이스는 GPS, GNSS와 같은 위성 지원 위치 결정 시스템으로부터 지리적 위치 정보 및/또는 시간 정보를 수신하는 수신기를 포함할 수 있다. 통신 디바이스(15)는 위치 결정 디바이스 및/또는 시간 결정 디바이스를 포함하도록 구성될 수 있다. 대안적으로, 이벤트 데이터 레코더(11)에 의해 기록되는 EDR 데이터 그 자체에 이벤트가 발생한 날짜, 시각(즉, 타임스탬프), 및 지리적 위치가 포함될 수도 있다.
통신 디바이스(15)는 이벤트 리포트 메시지를 생성할 수 있다. 이벤트 리포트 메시지는 차량 식별 정보(Vehicle identifiable information: VII)와 이벤트 데이터(EDR 데이터 및/또는 부가 정보)를 포함한다. 통신 디바이스(15)는, 통신 네트워크를 거쳐, VM 서버(20)에, 이벤트 리포트 메시지를 전송할 수 있다. 차량 식별 정보는 해당 차량을 고유하게 식별할 수 있는 정보로서, 전형적으로, 차량 제조사가 개별 차량에 할당하는 숫자와 문자로 구성된 17-자리의 고유 식별자인 차량 식별 번호(vehicle identification number: VIN)일 수 있다. 대안적으로, 차량 식별 정보는 차량 등록 번호(license plate information) 혹은 통신 디바이스(13)가 통신에 사용하는 고유 식별자일 수 있다. 또 다른 예시로서, 개인(즉, 차량의 소유자 혹은 운전자)를 식별할 수 있는 개인 식별 정보(Personally Identifiable Information: PII; 예컨대, 주민등록번호, 운전면허번호 등)가 차량 식별 정보에 대용하여 사용될 수도 있다.
VM 서버(20)는 차량으로부터 이벤트 리포트 메시지를 수신할 수 있다. VM 서버(20)는 차량 식별 정보(VII)와 이벤트 데이터를 상이한 데이터베이스들에 분리 저장할 수 있다. VM 서버(20)는 차량 식별 정보(VII)에 대해, 후술하는 비식별화 처리를 수행하여, 제3자가 관련 차량을 식별하거나 추적할 수 있게 하는 항목들(elements)이 마스크(mask)되어 있는, 차량 식별 정보(VII)의 비식별화된 버전을 생성할 수 있다. VM 서버(20)는 이벤트 데이터 및 그와 관련된 차량 식별 정보(VII)의 비식별화된 버전(즉, 익명화된 이벤트 데이터)을 중립 서버(30)에 제공할 수 있다. VM 서버(20)는 중립 서버(30)에 제공한 이벤트 데이터를 자신의 데이터베이스에서 제거할 수도 있다.
특정 개인 및/또는 특정 차량에 대한 이벤트 데이터가 요구되는 경우에, VM 서버(20)는 자신이 관리하는 데이터베이스들을 조회하여, 그 이벤트 데이터를 생성한 특정 차량의 차량 식별 정보(VII)를 특정하고, 특정된 차량 식별 정보(VII)에 대응하는 이벤트 데이터를 획득할 수 있다. 대안적으로, VM 서버(20)는 특정 차량의 차량 식별 정보(VII)로부터 비식별화된 버전을 재구성하고, 재구성된 비식별화된 버전에 대응하는 이벤트 데이터를 중립 서버(30)로부터 획득할 수도 있다. 즉, VM 서버(20)는 중립 서버(30)가 보유하고 있는 익명화된 이벤트 데이터를 특정 차량 및/또는 특정 개인에 다시 연관시킬 수 있다.
개인의 프라이버시 보호를 위해, 이러한 연관된 개인이나 차량이 식별되어 있는 이벤트 데이터에 대해서는, 법원 명령(court order), 수색 영장 및/또는 다른 적용 가능한 법률 및 규정에 의해 달리 승인되지 않는 한, 차량 소유자 혹은 차량 소유자에 의해 허가된 사람/기관에 의한 액세스만이 허용되어야 한다.
중립 서버(30)는 상이한 차량 제조사의 VM 서버들로부터 익명화된 이벤트 데이터를 수집하고, 수집된 익명화된 이벤트 데이터를 제3자(third party)들에게 제공할 수 있다. 중립 서버(30)는 이벤트 데이터를 통계적으로 분석하고자 하는 연구자, 보험사, 정부기관 혹은 다른 서비스 제공자로 하여금 개별 차량 제조사의 여러 VM 서버를 이용해야 하는 대신에 하나의 서버에서 여러 브랜드의 차량 데이터에 대한 액세스를 가능하게 한다.
시스템(100)은 적합한 네트워크 연결을 통해 VM 서버(20)/중립 서버(30)와 통신하는 클라이언트 컴퓨팅 디바이스(40A, 40B)를 더 포함할 수 있다. 클라이언트 컴퓨팅 디바이스(40A)는 사용자에 의해 이용되는 컴퓨터 시스템, 휴대 전화 또는 VM 서버(20)와 통신할 수 있는 다른 적절한 컴퓨팅 디바이스일 수 있으며, 클라이언트 컴퓨팅 디바이스 (40B)는 제3자에 의해 이용되는 컴퓨터 시스템, 서버 시스템 혹은 VM 서버(20)/중립 서버(30)와 통신할 수 있는 다른 적절한 컴퓨팅 디바이스일 수도 있다. 사용자는 클라이언트 컴퓨팅 디바이스(40A)를 이용하여 VM 서버(20)로부터 자신의 차량에서 생성된 이벤트 데이터를 획득할 수 있으며, 권한을 가진 제3자는, 클라이언트 컴퓨팅 디바이스(40B)를 이용하여, VM 서버(20)로부터 특정 개인 및/또는 특정 차량에 대한 이벤트 데이터를 획득할 수 있으며, 중립 서버(30)로부터 통계적인 분석에 유용한 익명화된 이벤트 데이터를 획득할 수도 있다.
도 2는 본 발명의 일 실시예에 따라, 도 1의 시스템에서 VM 서버(20)가 운용하는 관계형 데이터베이스들의 예시적인 구조를 보이는 개념도이다. 도 2에는 4개의 데이터베이스가 도시되어 있다.
제 1 데이터베이스(210)는 사용자들의 프로파일이 저장된 [USER] 테이블(211), 이벤트 데이터를 이용하고자 하는 제3자들의 프로파일이 저장된 [3RD_PARTY] 테이블(212), 차량들의 프로파일이 저장된 [VEHICLE] 테이블(213), 및 차량에 장착되는 EDR 디바이스의 프로파일이 저장된 [EDR] 테이블(214)을 포함한다.
[USER] 테이블(211)에서, 각 사용자의 레코드는 ID, 인코딩된 패스워드(PW), 차량, 제3자 제공에 대한 동의 등의 필드를 가질 수 있다. [3RD_PARTY] 테이블(212)에서, 각 제3자의 레코드는 ID, 인코딩된 패스워드(PW) 등의 필드를 가질 수 있다. ID는 각 사용자/제3자의 레코드를 구분할 수 있는 기본키(primary key)일 수 있다. 인코딩된 패드워드(PW)는 사용자/제3자의 패스워드와 무작위로 생성한 값(이하 "솔트(salt)"로 지칭됨)의 연접에 대해 해시 함수를 수행하여 얻어진 해시값이다. [VEHICLE] 테이블(213)에서, 각 차량의 레코드는 인덱스(index), 차량 식별 번호(VIN), EDR 디바이스 등의 필드를 가질 수 있다. [EDR] 테이블(214)에서, 각 EDR 레코드는 인덱스(index)와 EDR 디바이스의 시리얼 번호, 하드웨어/소프트웨어 버전 등의 필드를 가질 수 있다. [VEHICLE] 테이블(213)과 [EDR] 테이블(214)에서, 인덱스(Index)는 각 레코드를 구분할 수 있는 기본키(primary key)일 수 있다.
제 2 데이터베이스(220)는 [USER] 테이블(211)과 [3RD_PARTY] 테이블(212)에 기록된 인코딩된 패스워드(해시값)을 생성하는 데 사용된 솔트(salt)가 기록된 [SALT] 테이블(221)을 포함한다. [SALT] 테이블(221)에서, 각 레코드는 관련된 사용자 혹은 제3자의 ID와 솔트 값을 가진다. [SALT] 테이블(221)에서, ID는 각 레코드를 구분할 수 있는 기본키(primary key)일 수 있다. 솔트(salt)는 후술할 차량 식별 정보(VII)의 비식별화된 버전을 생성하는 데에도 사용된다.
사용자는 다수의 차량을 소유할 수 있으므로, [USER] 테이블(211)과 [VEHICLE] 테이블(213)은 1:N의 참조 관계를 가질 수 있다. 또한, 관련된 차량 및 개인이 식별된 이벤트 데이터에 접근하고자 하는 다수의 제3자들이 존재할 수 있으므로, [USER] 테이블(211)과 [3RD_PARTY] 테이블(212)은 1:N의 참조 관계를 가질 수 있다. 차량의 수명주기 동안 EDR 디바이스가 여러 번 교체될 수 있으므로, [VEHICLE] 테이블(213)과 [EDR] 테이블(214)은 1:N의 참조 관계를 가질 수 있다. [USER] 테이블(211)과 [3RD_PARTY] 테이블(212)은 [SALT] 테이블(221)에 대해 1:1의 참조 관계를 가진다.
제 3 데이터베이스(230)는 차량 식별 정보(VII)가 기록되는 [VII] 테이블(231)을 포함한다. 제 4 데이터베이스(240)는 이벤트 데이터가 기록되는 [EDR_DATA] 테이블(241)을 포함한다. [VII] 테이블(231)의 각 레코드와 [EDR_DATA] 테이블(241)의 각 레코드는 링크(Link) 필드에 의해 서로 참조된다. [VII] 테이블(231)에는 차량 식별 정보(VII) 혹은 그것의 비식별화된 버전이 기록될 수도 있다.
한편, 중립 서버(30)는 익명화된 이벤트 데이터를 관리하기 위해, 도 2에 예시된 제 3 데이터베이스(230) 및 제 4 데이터베이스(240)와 유사한 데이터베이스들을 보유할 수 있다.
도 3은 본 발명의 일 실시예에 따라, 도 1의 시스템에서 VM 서버(20)가 EDR 데이터를 수집 및 저장하는 프로세스를 예시한 흐름도이다.
VM 서버(20)는 차량으로부터 EDR 데이터와 차량 식별 정보(VII)를 포함하는 이벤트 리포트 메시지를 수신한다(S310).
VM 서버(20)는 이벤트 리포트 메시지에 포함된 차량 식별 정보(VII)가 유효한지 여부를 판단할 수 있다(S312). 예컨대, VM 서버(20)는 제 1 데이터베이스(210)의 [USER] 테이블(221) 및/또는 [VEHICLE] 테이블(213)을 조회하여 그 차량 식별 정보(VII)가 등록된 사용자의 차량의 것인지 여부를 체크할 수 있다. 차량 식별 정보(VII)가 유효하지 않으면(S312에서 'No'), 해당 EDR 데이터를 폐기하고 로그 정보를 생성한다(S318).
차량 식별 정보(VII)가 유효하면(S312에서 'Yes'), VM 서버(20)는 서로 상이한 데이터베이스(230, 240)에 저장될 EDR 데이터와 차량 식별 정보(VII)를 서로 연관시키기 위한 링크(link)를 생성한다(S314). VM 서버(20)는 차량 식별 정보(VII)를 링크와 함께 제 3 데이터베이스(230)의 [VII] 테이블(231)에 기록하는 한편, EDR 데이터를 링크와 함께 제 4 데이터베이스(240)의 [EDR_DATA] 테이블(241)에 기록하고, 그 후 로그 정보를 생성한다 (S306~S308).
전술한 바와 같이, 중립 서버(30) 내에서 이벤트 데이터는 차량 식별 정보(VII)의 비식별화된 버전에 의해 구별된다. 본 발명의 일 실시예에 따르면, 관련 차량을 식별하거나 추적할 수 없게 하면서도 관련된 이벤트 데이터에 대한 의미있는 통계 분석을 가능하게 하는, 차량 식별 정보(VII)의 비식별화 버전이 도입된다. 전형적인 실시예에서, 차량 식별 정보(VII)는 차량 제조사가 개별 차량에 할당하는 숫자와 문자로 구성된 17 자리(17 digits)의 고유 식별자인 차량 식별 번호(vehicle identification number: VIN)일 수 있다. 이하에 설명하는 바와 같이, 차량 식별 번호(VIN)의 각 자리는 특정 목적을 가지고 있다.
도 4는 차량 식별 번호(VIN)의 세부사항을 설명하는 도면이다.
세계 제조업체 식별자(World Manufacturer identifier) 또는 WMI 코드로 알려진, VIN의 처음 세 자리는 차량을 제조한 회사와 지리적 위치에 대한 정보를 제공한다.
VIN의 첫 번째 자리는 차량이 제조된 국가를 나타낸다. 이 자리는 문자 또는 숫자일 수 있다. 예를 들어, 첫 번째 자리의 "1", "4"또는 "5"는 원산지를 미국으로 식별한다. 캐나다는 "2", "3"은 멕시코, "6"은 호주, "A"는 남아프리카, "J"는 일본, "L"은 중국, "K"는 한국으로 식별된다.
VIN의 두 번째 자리는 차량 제조업체를 나타내지만 제조업체를 정확하게 디코딩하려면 첫 번째 자리(제조 국가를 나타냄)와 쌍을 이루어야 한다. 예를 들어, "1C"로 시작하는 VIN은 미국에서 Chrysler에 의해 제조된 차량을 식별하는 반면, "AC"로 시작하는 VIN은 남아프리카에서 Hyundai에 의해 제조된 차량을 식별한다.
세 번째 문자는 차량 유형(vehicle type) 또는 제조 부문(manufacturing division)을 나타낸다. "WV1"로 시작하는 VIN을 고려하면, "W"는 독일을 제조 국가로 나타내고 "V"는 제조업체로서 Volkswagen을 가리킨다. "1"은 Volkswagen의 상용차(commercial vehicle)를 의미한다. Volkswagen의 버스 또는 밴의 VIN은 "WV2"로 시작하고 Volkswagen 트럭의 VIN은 "WV3"으로 시작한다.
VIN의 네 번째부터 아홉 번째 자리들은 차량 설명자 섹션(Vehicle Descriptor Section; VDS)로 지칭된다. 네 번째부터 여덟 번째 자리들은 차체 스타일, 엔진 유형, 모델, 시리즈 등과 같은 차량 특징들(vehicle features)을 나타낸다. 각 제조업체는 자신들의 방식으로 이 5 자리 필드를 사용한다.
아홉 번째 자리는 유효하지 않은 VIN을 식별하기 위한 VIN의 점검 숫자이다. 이 숫자는 처음 8자리와 마지막 8자리에 대한 수치 값들(numeric values)을 사용하여 수학 공식에 의해 결정된다.
VIN의 열 번째부터 열일곱 번째 자리는 차량 식별자 섹션(Vehicle Identifier Section; VIS)으로 알려져 있다. 이들은 특정 차량에 대해 훨씬 더 자세한 설명을 제공한다.
열 번째 문자는 차량의 모델 연도를 나타낸다. B에서 Y까지의 문자는 1981 년에서 2000년 사이의 모델에 해당한다. VIN은 I, O, Q, U 또는 Z를 사용하지 않는다. 2001년부터 2009년 사이에는 문자 대신 1에서 9까지의 숫자가 사용되었다. 2010년에 A에서 시작하여 알파벳이 2030년까지 계속될 것이다. 2000년 이후 모델 연도는 다음과 같다: Y = 2000, 1 = '01, 2 = '02, 3 = '03, 4 = '04, 5 = '05, 6 = '06, 7 = '07, 8 = ' 08, 9 = '09, A = '10, B = '11, C = '12, D = '13, E = '14, F = '15, G = '16, H = '17, J = ' 18, K = '19, L = '20.
열한 번째 자리는 차량이 조립된 제조 공장을 나타낸다. 각 차량 제조사는 자체 공장 코드 세트를 가진다. 마지막 여섯 자리(열두 번째부터 열일곱 번째 자리)는 차량의 생산 일련번호(serial number)를 나타낸다.
도 5는 도 1에 예시된 시스템에서, VM 서버(20)가 차량 식별 번호(VIN)의 비식별화된 버전에 의해 식별되는 이벤트 데이터를 중립 서버(30)에 제공하는 방법을 설명하는 흐름도이다.
VM 서버(20)는 제 4 데이터베이스(240)의 [EDR] 테이블(241)로부터 중립 서버(30)에 전달할 EDR 데이터를 획득하고, 제 3 데이터베이스(230)의 [VII] 테이블로(231)부터 상기 EDR 데이터와 관련된 차량 식별 번호(VIN)을 획득한다(S510).
VM 서버(20)는 차량 식별 번호(VIN)을 파싱하여 생산 일련 번호를 추출한다(S512).
VM 서버(20)는 제 1 데이터베이스(210)의 [USER] 테이블(211)로부터 상기 차량 식별 번호(VIN)에 대응하는 차량을 소유하는 사용자 ID를 획득하고, 제 2 데이터베이스(220)의 [SALT] 테이블(221)로부터 상기 사용자 ID에 대응하는 솔트(salt)를 획득한다(S514).
VM 서버(20)는 솔트(salt)와 생산 일련 번호의 연접(concatenation)에 대해 기정의된 해시함수를 적용하여 해시값을 생성한다(S516).
VM 서버(20)는 VIN의 일련 번호를 생성된 해시값으로 대체하여, 차량 식별 번호(VIN)의 비식별화된 버전을 생성한다(S518). 즉, 차량 식별 번호(VIN)의 비식별화된 버전은 마스크된 생산 일련 번호를 가진다.
이러한 비식별화 방식은 생산 일련 번호에 대한 사전 공격(Dictionary attack), 레인보우 공격(rainbow attack) 등을 효과적으로 무력화할 수 있다. 또한, 솔트(salt)는 비밀정보가 아니므로, "하나의 키를 여러 응용에 사용하지 않아야 한다"는 일반적인 키 사용 보안 요구사항에 위배되지 않는다.
VM 서버(20)는 차량 식별 번호(VIN)의 비식별화된 버전에 의해 식별되는 EDR 데이터(즉, 익명화된 이벤트 데이터)를 중립 서버(30)에 전송한다.
도 6은 중립 서버에 전송되는 이벤트 데이터의 예시적인 버전을 보인다. 차량 식별 번호(VIN)의 비식별화된 버전에서, 생산 일련 번호를 제외한 나머지 자리들(digits)은 평문 상태이므로, EDR 데이터에 대한 의미 있는 통계 분석을 가능하게 한다. 예컨대, '북미에서 생산된 2018년형 아반떼 모델'의 차량들에서 생성된 이벤트 데이터를 분석하는 것이 가능하다.
한편, 극소수만 생산되는 모델의 경우에는, 모델, 시리즈, 차량의 모델 연도와 같은 정보가 관련된 차량이나 소유자를 추적할 수 있게 할 수 있다. 따라서, 이와 같은 모델에 대해서는, 차량 식별자 섹션(VIS)인 차량 식별 번호(VIN)의 열 번째부터 열일곱 번째 자리와 차량 설명자 섹션(VDS)인 차량 식별 번호(VIN)의 네 번째부터 여덟 번째 자리들 중 적어도 일부에 대해, 생산 일련 번호에 대해 수행된 비식별화 처리와 유사한 처리가 수행될 수도 있다.
또한, 차량 등록 번호(license plate information) 혹은 통신 디바이스(13)가 통신에 사용하는 고유 식별자 등이 차량 식별 정보(PII)로 사용되는 경우에, 이들에 대해서도, 적어도 부분적으로, 차량 식별 번호(VIN)의 생산 일련 번호에 대해 수행된 비식별화 처리와 유사한 처리가 수행될 수 있을 것이다.
도 7은 도 1에 예시된 시스템에서, 차량 소유자가 자신의 차량에서 생성된 이벤트 데이터를 획득하는 프로세스를 보이는 예시적인 제어 흐름도이다.
차량 소유자는, 클라이언트 컴퓨팅 디바이스(40A)를 이용하여, 로그인할 VM 서버(20)에 사용자 ID와 패스워드를 제출한다(S700).
VM 서버(20)는 사용자 ID와 패스워드를 기초로 클라이언트 컴퓨팅 디바이스(40A)에 대한 인증을 수행한다(S702). 인증절차에서, VM 서버(20)는, User ID가 유효한지 판단하고(S704), User ID가 유효하면, 제 2 데이터베이스(220)의 [SALT] 테이블(221)에서 User ID에 대응하는 솔트(salt)를 획득한다(S706). VM 서버(20)는, 솔트와 패스워드를 연접(concatenate)하고, 그 연접에 기정의된 해시함수를 적용하여 제1해시값을 생성한다(S708). 그리고 VM 서버(20)는 제1해시값을 사용자 ID에 대응되는 기저장된 패스워드(제2해시값)과 비교하고, 그러한 비교에 기초하여 인증 결과를 출력한다(S710). 즉, 제1해시값이 제2해시값과 동일하다면, 로그인이 허용된다. VM 서버(20)는 로그 데이터를 생성하고, 클라이언트 컴퓨팅 디바이스(40A)로 로그인 요청에 대한 응답을 제공한다(S712).
로그인에 성공한 클라이언트 컴퓨팅 디바이스(40A)는 관심있는 차량 정보, 이벤트가 발생한 시간정보 등을 특정하여, 이벤트 데이터를 요청하는 요청 메시지를 VM 서버(20)에 전송한다(S712~S714).
요청 메시지 수신에 응답하여, VM 서버(20)는 제 1 데이터베이스(210)의 [USER] 테이블(221) 및/또는 [VEHICLE] 테이블(213)로부터 요청과 관련된 차량 식별 정보 (VII)을 획득한다(S716~S718).
VM 서버(20)는 제 3 데이터베이스(230)의 [VII] 테이블(231)로부터 차량 식별 정보(VII)에 관련된 제1링크를 취득하고, 제 4 데이터베이스(240)의 [EDR] 테이블(241)로부터 제1링크에 대응되는 이벤트 데이터를 취득한다(S720). VM 서버(20)는 해당 이벤트 데이터를 클라이언트 컴퓨팅 디바이스(40A)에 전송한다.
도 8은 도 1에 예시된 시스템에서, 제3자가 관심 있는 특정 차량에서 생성된 이벤트 데이터를 획득하는 프로세스를 보이는 예시적인 제어 흐름도이다.
VM 서버(20)는, 예컨대, 제3자로부터 특정 운전자 및/또는 특정 차량과 관련된 차량 생성 데이터를 요청 받을 수 있다. VM 서버(20)는 제3자가 법원 명령, 수색 영장 및/또는 다른 적용 가능한 법률 및 규정에 의해 액세스 권한을 가지지 않는 한, 소유자의 동의 하에서만 제3자에게 이벤트 데이터를 제공하여야 한다.
도 8에 예시된 제어 흐름도는, 이벤트 데이터를 제3자에게 제공하는 것에 대한 소유자의 동의 여부를 체크하는 단계(S820)를 더 포함하는 것을 제외하고는, 도 7에 예시된 제어 흐름도와 실질적으로 동일하다.
제3자가 이용하는 클라이언트 컴퓨팅 디바이스(40B)는 로그인할 VM 서버(20)에 자신의 ID와 패스워드를 제출한다(S800).
VM 서버(20)는 ID와 패스워드를 기초로 클라이언트 컴퓨팅 디바이스(40B)에 대한 인증을 수행한다(S802). 인증절차(S804~S810)는 도 7의 흐름도와 실질적으로 동일하다.
로그인에 성공한 클라이언트 컴퓨팅 디바이스(40B)는 관심있는 차량 정보, 이벤트가 발생한 시간정보 등을 특정하여, 이벤트 데이터를 요청하는 요청 메시지를 VM 서버(20)에 전송한다(S812~S814).
요청 메시지 수신에 응답하여, VM 서버(20)는 제 1 데이터베이스(210)의 [VEHICLE] 테이블(213)로부터 요청된 차량의 차량 식별 정보(VII)를 취득하고, 제 1 데이터베이스(210)의 [USER] 테이블(211)로부터 해당 차량과 관련된 소유자의 프로파일을 취득한다(S816~S818).
VM 서버(20)는 소유자의 프로파일을 기초로 요청된 이벤트 데이터를 상기 제3자에게 제공하는 것이 허용되는지 여부를 체크한다(S820).
이벤트 데이터의 제3자로의 제공이 허용되는 경우에(S820의 'YES'), VM 서버(20)는, 제 3 데이터베이스(230)의 [VII] 테이블(231)로부터 차량 식별 정보(VII)에 관련된 제1링크를 취득하고, 제 4 데이터베이스(240)의 [EDR] 테이블(241)로부터 제1링크에 대응되는 이벤트 데이터를 취득한다(S822). VM 서버(20)는 해당 이벤트 데이터를 클라이언트 컴퓨팅 디바이스(40B)에 전송한다.
도 7 및 도 8에서는, VM 서버(20)가 자신이 보유하고 있는 이벤트 데이터를 제공하는 방법들이 예시되었다. 전술한 바와 같이, 일부 실시 형태에서, VM 서버(20)는 중립 서버(30)에 제공한 이벤트 데이터를 자신의 데이터베이스(231, 241)에서 제거할 수도 있으며, 이 경우, VM 서버(20)는 익명화된 이벤트 데이터를 보유하고 있는 중립 서버(30)로부터 특정 차량과 관련된 이벤트 데이터를 획득할 수 있다.
도 9는 도 1에 예시된 시스템에서, VM 서버(20)가 익명화된 이벤트 데이터를 보유하고 있는 중립 서버(30)로부터 특정 차량과 관련된 이벤트 데이터를 획득하는 프로세스를 보이는 흐름도이다.
VM 서버(20)는, 제 1 데이터베이스(210)의 [USER] 테이블(211)과 [VEHICLE] 테이블(213)을 조회하여, 관심 있는 개인 혹은 차량과 관련된 사용자 ID와 VIN을 획득한다(S900). 또한, 제 2 데이터베이스(220)의 [SALT] 테이블(221)로부터 상기 사용자 ID에 대응되는 SALT를 획득한다(S902).
VM 서버(20)는, VIN의 일부를 구성하는 생산 일련 번호(serial number)와 SALT의 연접에 대해 기정의된 해시함수를 적용하여 해시값을 생성하고(S904), 차량 식별 번호(VIN)의 생산 일련 번호를 생성된 해시값으로 대체하여, 차량 식별 번호(VIN)의 비식별화된 버전을 재구성한다(S906).
VM 서버(20)는 차량 식별 번호(VIN)의 비식별화된 버전에 대응하는 이벤트 데이터를 중립 서버(30)에 요청한다(S908).
중립 서버(30)는 익명화된 이벤트데이터가 저장된 데이터베이스를 조회하여, 상기 차량 식별 번호(VIN)의 비식별화된 버전에 대응하는 이벤트 데이터를 획득하고, 상기 이벤트 데이터를 VM 서버(20)에 제공한다.
전술한 예시적인 실시예들은 많은 다른 방식으로 구현될 수 있다는 것을 이해해야 한다. 일부 예들에서, 본 개시에서 설명된 다양한 장치들은 ASIC(application specific integrated circuit), DSP(digital signal processing), PLD(programmable logic device), FPGA(field programmable gate array), 프로세서, 제어기, 마이크로 프로세서, 다른 전자 유닛 또는 이들의 조합으로 구현될 수 있다. 일부 예들에서, 본 개시에서 설명된 다양한 방법들, 서버들, (서브) 시스템들은 프로세서, 메모리, 디스크 또는 다른 대용량 스토리지, 통신 인터페이스, 입/출력(I/O) 디바이스들 및 기타 주변 기기들을 가지는 적어도 하나의 범용 컴퓨터에 의해 구현될 수도 있다. 범용 컴퓨터는 소프트웨어 명령어들을 프로세서에 로딩한 다음, 본 개시에 설명된 기능들을 수행하기 위해 명령들의 실행함으로써 상술한 방법을 실행하는 장치, 서버, 시스템 등으로 기능할 수 있다.
한편, 본 개시에서 설명된 다양한 방법들 혹은 기능들은 하나 이상의 프로세서에 의해 판독되고 실행될 수 있는 비일시적 기록매체에 저장된 명령어들로 구현될 수도 있다. 비일시적 기록매체는, 예를 들어, 컴퓨터 시스템에 의하여 판독가능한 형태로 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 예를 들어, 비일시적 기록매체는 EPROM(erasable programmable read only memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래시 드라이브, 광학 드라이브, 자기 하드 드라이브, 솔리드 스테이트 드라이브(SSD)와 같은 저장매체를 포함한다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (11)

  1. 차량 제조사의 서버에 의해 수행되는 방법에 있어서,
    차량으로부터 차량 식별 번호(vehicle identification number; VIN)에 의해 식별되는 차량 생성 데이터를 수신하는 단계;
    상기 차량 식별 번호의 비식별화된 버전을 생성하는 단계; 및
    상기 차량 식별 번호의 비식별화된 버전과 상기 차량 생성 데이터를 상기 차량 제조사의 서버와는 독립된 데이터 서버에 제공하는 단계
    를 포함하는 방법.
  2. 제 1 항에 있어서,
    상기 차량 식별 번호의 비식별화된 버전을 생성하는 단계는,
    상기 차량 식별 번호의 일부 디지트(digit)와 솔트(salt)의 연접에 대해 해시 함수를 적용하여 해시값을 생성하는 단계; 및
    상기 차량 식별 번호의 일부 디지트를 상기 해시값으로 대체하는 단계
    를 포함하는 것을 특징으로 하는, 방법.
  3. 제 2 항에 있어서,
    상기 일부 디지트는,
    적어도 생산 일련 번호를 포함하는 것을 특징으로 하는, 방법.
  4. 제 1 항에 있어서,
    상기 차량 생성 데이터는,
    상기 차량에 탑재된 이벤트 데이터 레코더(Event Data Recorder: EDR)에 의해 기록된 데이터를 포함하는 것을 특징으로 하는, 방법.
  5. 제 1 항에 있어서,
    상기 차량 생성 데이터는,
    상기 차량에 탑재된 데이터 스토리지 시스템에 의해 기록된 자율 주행 데이터를 포함하는 것을 특징으로 하는, 방법.
  6. 익명화된 차량 생성 데이터를 보유하는 데이터 서버로부터, 차량 제조사 서버가, 특정 차량과 관련된 차량 생성 데이터를 취득하는 방법에 있어서,
    상기 특정 차량의 차량 식별 번호(vehicle identification number; VIN)를 획득하는 단계;
    상기 차량 식별 번호의 비식별화된 버전을 재구성하는 단계; 및
    재구성된 비식별화된 버전에 대응하는 차량 생성 데이터를 상기 데이터 서버에 요청하는 단계
    를 포함하는 방법.
  7. 제 6 항에 있어서,
    상기 차량 식별 번호의 비식별화된 버전을 재구성하는 단계는,
    상기 차량 식별 번호의 일부 디지트(digit)와 솔트(salt)의 연접에 대해 해시 함수를 적용하여 해시값을 생성하는 단계; 및
    상기 차량 식별 번호의 일부 디지트를 상기 해시값으로 대체하는 단계
    를 포함하는 것을 특징으로 하는, 방법.
  8. 제 7 항에 있어서,
    상기 일부 디지트는,
    적어도 생산 일련 번호를 포함하는 것을 특징으로 하는, 방법.
  9. 제 6 항에 있어서,
    상기 차량 생성 데이터는,
    상기 차량에 탑재된 이벤트 데이터 레코더(Event Data Recorder: EDR)에 의해 기록된 데이터를 포함하는 것을 특징으로 하는, 방법.
  10. 제 6 항에 있어서,
    상기 차량 생성 데이터는,
    상기 차량에 탑재된 데이터 스토리지 시스템에 의해 기록된 자율 주행 데이터를 포함하는 것을 특징으로 하는, 방법.
  11. 익명화된 차량 생성 데이터를 보유하는 데이터 서버로서,
    적어도 하나의 프로세서; 및
    적어도 하나의 데이터 스토리지
    를 포함하고,
    상기 적어도 하나의 데이터 스토리지는 차량 식별 번호의 비식별화된 버전에 의해 구별되는 차량 생성 데이터를 저장하는 데이터베이스와 명령어들을 저장하며, 상기 명령어들은 상기 적어도 하나의 프로세서에 의해 수행될 때, 상기 데이터 서버로 하여금,
    차량 제조사 서버로부터 관심 있는 차량 식별 번호의 비식별화된 버전에 대응하는 차량 생성 데이터를 요청하는 요청 메시지를 수신하는 단계;
    상기 데이터베이스를 조회하여 상기 관심 있는 차량 식별 번호의 비식별화된 버전에 대응하는 차량 생성 데이터를 획득하는 단계; 및
    상기 차량 제조사 서버에 상기 획득한 차량 생성 데이터를 전송하는 단계
    를 수행하도록 하는, 데이터 서버.
KR1020200001209A 2019-01-09 2020-01-06 차량 생성 데이터를 수집 및 관리하는 방법 및 시스템 KR20200086632A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/419,021 US20220114845A1 (en) 2019-01-09 2020-01-06 Method and system for collecting and managing vehicle generated data
PCT/KR2020/000173 WO2020145589A1 (ko) 2019-01-09 2020-01-06 차량 생성 데이터를 수집 및 관리하는 방법 및 시스템

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190002897 2019-01-09
KR20190002897 2019-01-09

Publications (1)

Publication Number Publication Date
KR20200086632A true KR20200086632A (ko) 2020-07-17

Family

ID=71832224

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200001209A KR20200086632A (ko) 2019-01-09 2020-01-06 차량 생성 데이터를 수집 및 관리하는 방법 및 시스템

Country Status (3)

Country Link
EP (1) EP3910902A4 (ko)
KR (1) KR20200086632A (ko)
CN (1) CN113273159B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022019489A1 (ko) * 2020-07-21 2022-01-27 현대자동차주식회사 차량 생성 데이터를 수집 및 관리하는 방법 및 시스템

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114724378B (zh) * 2022-06-02 2022-10-18 瞳见科技有限公司 一种基于深度学习的车辆追踪统计系统及方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6768935B1 (en) * 2003-04-07 2004-07-27 General Motors Corporation Vehicle diagnostic record mapping
US20070255704A1 (en) * 2006-04-26 2007-11-01 Baek Ock K Method and system of de-identification of a record
EP2573727A1 (en) * 2011-09-21 2013-03-27 Allianz Telematics S.p.A. Telematics on-board unit for vehicles
US9202039B2 (en) * 2012-10-05 2015-12-01 Microsoft Technology Licensing, Llc Secure identification of computing device and secure identification methods
US9036040B1 (en) * 2012-12-20 2015-05-19 United Services Automobile Association (Usaa) Vehicle identification number capture
US9953467B2 (en) * 2013-12-19 2018-04-24 Intel Corporation Secure vehicular data management with enhanced privacy
WO2015100278A1 (en) * 2013-12-23 2015-07-02 Robert Bosch Gmbh System and method for automotive diagnostic tool data collection and analysis
DE102014005589A1 (de) * 2014-04-15 2014-09-25 Daimler Ag Verfahren zur anonymisierten Übertragung von kraftfahrzeugbezogenen Daten, Computerprogrammprodukt
CN104202440B (zh) * 2014-09-02 2016-04-13 腾讯科技(深圳)有限公司 一种标识终端的方法、服务器及系统
US20160147945A1 (en) * 2014-11-26 2016-05-26 Ims Health Incorporated System and Method for Providing Secure Check of Patient Records
CA3067177A1 (en) * 2015-02-10 2016-08-18 Mobileye Vision Technologies Ltd. Sparse map for autonomous vehicle navigation
US9615248B2 (en) * 2015-03-31 2017-04-04 Globalfoundries Inc. Anonymous vehicle communication protocol in vehicle-to-vehicle networks
US10445822B2 (en) * 2016-03-24 2019-10-15 Autodata Solutions, Inc. System and method for generating and supplying viewer customized multimedia presentations
US20180025553A1 (en) * 2016-07-22 2018-01-25 Ford Global Technologies, Llc Stealth mode for vehicles

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022019489A1 (ko) * 2020-07-21 2022-01-27 현대자동차주식회사 차량 생성 데이터를 수집 및 관리하는 방법 및 시스템

Also Published As

Publication number Publication date
EP3910902A1 (en) 2021-11-17
EP3910902A4 (en) 2022-11-23
CN113273159A (zh) 2021-08-17
CN113273159B (zh) 2023-07-18

Similar Documents

Publication Publication Date Title
US11348385B2 (en) Method and system for managing event data
US20180091596A1 (en) Trusted vehicle telematics using blockchain data analytics
US11677568B2 (en) Method for collecting and managing event data of a vehicle
US11057426B2 (en) Methods and systems providing cyber defense for electronic identification, vehicles, ancillary vehicle platforms and telematics platforms
KR102358833B1 (ko) 차량에서 기록된 이벤트 데이터를 수집 및 관리하는 방법 및 시스템
Strandberg et al. A systematic literature review on automotive digital forensics: Challenges, technical solutions and data collection
US20220207547A1 (en) Vehicle price estimating method
US20200218729A1 (en) Method for Collecting and Managing Event Data of a Vehicle
KR20200086632A (ko) 차량 생성 데이터를 수집 및 관리하는 방법 및 시스템
US20220050925A1 (en) Automotive data sharing and consent management platform
US11544408B2 (en) Method and system for managing vehicle generated data
US11271971B1 (en) Device for facilitating managing cyber security health of a connected and autonomous vehicle (CAV)
US20230098006A1 (en) Method and System for Collecting and Managing Vehicle-Generated Data
US20220114845A1 (en) Method and system for collecting and managing vehicle generated data
KR20210112241A (ko) 차량 생성 데이터를 수집 및 관리하는 방법 및 시스템
CN111145386A (zh) 一种基于区块链管理行车电脑数据的方法、设备及介质
US20230311936A1 (en) Method and system for collecting and managing vehicle-generated data
KR102680551B1 (ko) 클라우드 기반의 edr 데이터 관리 방법 및 시스템
CN114338048B (zh) 一种基于区块链的车辆事故责任的认定方法及车辆终端
KR20220011568A (ko) 차량 생성 데이터를 수집 및 관리하는 방법 및 시스템

Legal Events

Date Code Title Description
A201 Request for examination