KR101912665B1 - Method for controlling smart car using code splitting and device for performing the method - Google Patents
Method for controlling smart car using code splitting and device for performing the method Download PDFInfo
- Publication number
- KR101912665B1 KR101912665B1 KR1020180089280A KR20180089280A KR101912665B1 KR 101912665 B1 KR101912665 B1 KR 101912665B1 KR 1020180089280 A KR1020180089280 A KR 1020180089280A KR 20180089280 A KR20180089280 A KR 20180089280A KR 101912665 B1 KR101912665 B1 KR 101912665B1
- Authority
- KR
- South Korea
- Prior art keywords
- code
- engine
- main
- automobile
- core
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R25/00—Fittings or systems for preventing or indicating unauthorised use or theft of vehicles
- B60R25/10—Fittings or systems for preventing or indicating unauthorised use or theft of vehicles actuating a signalling device
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R25/00—Fittings or systems for preventing or indicating unauthorised use or theft of vehicles
- B60R25/01—Fittings or systems for preventing or indicating unauthorised use or theft of vehicles operating on vehicle systems or fittings, e.g. on doors, seats or windscreens
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2113—Multi-level security, e.g. mandatory access control
Landscapes
- Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Lock And Its Accessories (AREA)
Abstract
Description
본 발명은 코드 분리 기반 스마트 자동차 제어 방법 및 이를 수행하기 위한 장치에 관한 것으로서, 더욱 상세하게는 원격으로 문을 개방하거나 시동을 켤 수 있는 스마트 자동차의 해킹 위험을 줄이기 위한 코드 분리 기반 스마트 자동차 제어 방법 및 이를 수행하기 위한 장치에 관한 것이다.The present invention relates to a code separation-based smart car control method and a device for performing the same, and more particularly, to a code separation-based smart car control method for reducing a risk of hacking a smart car, And an apparatus for performing the same.
종래의 자동차 열쇠는 물리적인 형태의 키로써 운전자 인증 수단으로서의 역할만 수행해 왔다. 즉, 단순한 기계식 키로써 키를 통해서만 자동차의 문을 열고, 시동을 걸 수 있었기 때문에 어렵지 않게 키를 복제하여 사용할 수 있었다.The conventional automobile key is a physical type key and has only been used as a driver authentication means. In other words, it was possible to use a simple mechanical key to open the door of the car only through the key, and start the car, so that the key could be used without difficulty.
현재 현대인의 필수품으로 자리잡은 자동차는 운전자의 편의와 안전을 위하여 많은 발전을 거듭해 왔으며, 최근에는 전파를 이용하여 신호를 송수신하는 기술을 이용하여 자동차의 일부 부품을 동작시킬 수 있게 하는 원격조정장치가 개발되어 운전자의 편의와 안전을 향상시켰다.Nowadays, automobiles that have become a necessity of modern people have made many advances for the convenience and safety of the driver. In recent years, there has been a remote control device that can operate some parts of the automobile by using a technique of transmitting and receiving signals using radio waves Developed and improved the convenience and safety of the driver.
특히 자동차의 환경, 안전, 편의성을 지향하는 방향으로 바뀌면서 최근에는 스마트폰에 키 정보를 저장하고, NFC로 통신하여 부팅할 수 있는 기술이 개발되어 상용화되고 있다.In recent years, technologies for storing key information in a smart phone and communicating with NFC have been developed and commercialized.
그러나 이는 단지 키에 데이터가 저장된 것이기 때문에 해킹 및 복제가 쉽게 가능하다는 문제점이 있다. 실제로 현재 자동차 기업에서는 키를 제작할 때 키의 정보를 랜덤하게 제작하기 때문에 키의 정보는 얼마든지 중복될 수 있다.However, this is a problem in that hacking and duplication are easily possible because the data is stored only in the key. In fact, the current automobile industry can produce key information randomly at the time of key production, so that the key information can be redundant.
또한, 스마트폰과 같은 모바일 장치에서 제공하는 잠금 기능이 해제되면 인증되지 않은 사용자도 자동 로그인 된 어플리케이션을 이용하여 개인 정보를 탈취할 수 있게 된다.In addition, when the lock function provided by a mobile device such as a smart phone is released, an unauthorized user can also steal personal information using an automatically logged-in application.
이에 따라, 개인 정보 보호를 위한 모바일 장치의 보안에 대한 관심이 높아지고 있으며, 모바일 장치 자체적으로 패스워드, 패턴, 생체 정보 인증 등의 다양한 인증 방법을 제공하고 있고, 이러한 인증 방법에 대해서도 많은 연구가 진행되고 있다.Accordingly, interest in security of a mobile device for protecting personal information is increasing, and various authentication methods such as a password, a pattern, biometric information authentication, and the like are provided by the mobile device itself. have.
본 발명의 일측면은 자동차 부팅에 있어서 보안성을 높이기 위해 코드의 일부를 운전자의 단말기에 저장하는 코드 분리 기반 스마트 자동차 제어 방법 및 이를 수행하기 위한 장치를 제공한다. One aspect of the present invention provides a code separation-based smart car control method for storing part of a code in a driver's terminal in order to enhance security in booting a car, and an apparatus for performing the same.
본 발명의 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The technical problem of the present invention is not limited to the technical problems mentioned above, and other technical problems which are not mentioned can be understood by those skilled in the art from the following description.
본 발명의 일 실시예에 따른 코드 분리 기반 스마트 자동차 제어 방법은, 자동차를 개방하는 신호가 수신되면 상기 개방 신호를 송신한 디바이스를 1차 인증하고, 상기 1차 인증에 성공한 디바이스로부터 메인 노드의 보안 코드에서 분리된 메인 핵심코드를 수신하여 상기 자동차를 개방하고, 상기 개방된 자동차의 엔진스타트 신호가 수신되면 상기 엔진스타트 신호를 송신한 디바이스를 2차 인증하고, 상기 2차 인증에 성공한 디바이스로부터 엔진 노드의 보안 코드에서 분리된 엔진 핵심코드를 수신하여 상기 엔진에 시동을 건다.A method of controlling a smart-car based on code separation according to an embodiment of the present invention is a method for controlling a smart-car based on code separation, comprising: a first authentication of a device transmitting an open signal when a signal for opening the car is received; And a control unit for receiving the main core code separated from the code to open the automobile, and when the engine start signal of the open automobile is received, the device that has transmitted the engine start signal is secondarily authenticated, Receives the engine core code separated from the security code of the node and starts the engine.
상기 자동차를 개방하는 것은, 상기 디바이스로부터 수신된 메인 핵심코드가 상기 자동차의 메인 노드의 메인 일반코드와 재결합에 성공하면 상기 자동차를 개방할 수 있다.Opening the car may open the car if the main core code received from the device succeeds in rejoining the main common code of the car's main node.
상기 엔진에 시동을 거는 것은, 상기 디바이스로부터 수신된 엔진 핵심코드가 상기 자동차의 엔진 노드의 엔진 일반코드와 재결합에 성공하면 상기 자동차의 엔진에 시동을 걸 수 있다.The starting of the engine may start the engine of the vehicle if the engine core code received from the device succeeds in re-coupling with the engine general code of the engine node of the vehicle.
상기 메인 핵심코드는, 상기 자동차의 메인 노드에서 생성한 보안 코드로부터 코드를 메인 핵심코드와 메인 일반코드로 분리한 뒤 상기 디바이스로 송신될 수 있다.The main core code may be transmitted to the device after separating the code from the security code generated by the main node of the automobile into the main core code and the main general code.
상기 엔진 핵심코드는, 상기 자동차의 엔진 노드에서 생성한 엔진 코드로부터 코드를 엔진 핵심코드와 엔진 일반코드로 분리한 뒤 상기 디바이스로 송신될 수 있다.The engine core code can be transmitted to the device after separating the engine code generated from the engine node of the automobile into the engine core code and the engine general code.
상기 엔진스타트 신호를 송신한 디바이스를 2차 인증하는 것은, 상기 1차 인증에 성공한 디바이스로부터 메인 핵심코드를 수신하여 상기 자동차의 문이 개방된 후 상기 디바이스에 대해 2차 인증을 수행할 수 있다.The secondary authentication of the device that transmits the engine start signal may be performed by receiving the main core code from the device that succeeded in the primary authentication and then performing the secondary authentication with respect to the device after the door of the automobile is opened.
본 발명의 일 실시예에 따른 코드 분리 기반 스마트 자동차 제어 장치는, 자동차 문의 개방을 관할하는 메인 노드의 보안 코드를 생성하고, 메인 핵심코드와 메인 일반코드로 분리하는 제1 코드생성부; 상기 자동차의 시동을 관할하는 엔진 노드의 보안 코드를 생성하고, 엔진 핵심코드와 엔진 일반코드로 분리하는 제2 코드생성부; 상기 제1 코드생성부 및 제2 코드생성부의 각 핵심코드를 디바이스로 송신하는 통신부; 상기 디바이스로부터 자동차 개방신호가 수신되면 상기 디바이스를 1차 인증하고, 상기 디바이스로부터 엔진스타트 신호가 수신되면 상기 디바이스를 2차 인증하는 인증수행부; 상기 인증수행부에서 1차 인증에 성공한 디바이스로부터 수신되는 메인 핵심코드를 메인 일반코드와 재결합하는 메인코드 결합부; 및 상기 인증수행부에서 2차 인증에 성공한 디바이스로부터 수신되는 엔진 핵심코드를 엔진 일반코드와 재결합하는 엔진코드 결합부;를 포함한다.A first code generation unit for generating a security code of a main node that controls the opening of a car door and separating the security code into a main core code and a main general code according to an embodiment of the present invention; A second code generation unit for generating a security code of an engine node that manages the start of the vehicle and separating the security code into an engine core code and an engine general code; A communication unit for transmitting each of the core codes of the first code generation unit and the second code generation unit to the device; An authentication performing unit for first authenticating the device when the vehicle open signal is received from the device and for authenticating the device when the engine start signal is received from the device; A main code combining unit for recombining the main core code received from the device that has succeeded in the first authentication in the authentication performing unit with the main general code; And an engine code combining unit for recombining the engine core code received from the device that succeeded in the secondary authentication in the authentication performing unit with the engine general code.
상기 메인코드 결합부는, 상기 디바이스로부터 수신되는 메인 핵심코드와 메인 일반코드가 재결합에 성공하면 상기 자동차의 문을 개방하는 신호를 송신할 수 있다.The main code combining unit may transmit a signal for opening the door of the automobile if the main core code and the main general code received from the device succeed in reuniting.
상기 인증수행부는, 상기 메인코드 결합부에 의해 상기 자동차의 문이 개방된 후 상기 디바이스의 2차 인증을 수행할 수 있다.The authentication performing unit may perform the secondary authentication of the device after the door of the automobile is opened by the main code combining unit.
상기 엔진코드 결합부는, 상기 디바이스로부터 수신되는 엔진 핵심코드와 엔진 일반코드가 재결합에 성공하면 상기 자동차의 엔진에 시동을 거는 신호를 송신할 수 있다.The engine code combining unit may transmit a signal to start the engine of the vehicle when the engine core code and the engine general code received from the device succeed in reuniting.
상기 코드 분리 기반 스마트 자동차 제어 장치는, 상기 메인코드 결합부에 의해 상기 자동차의 문이 개방되면 상기 자동차의 문의 위치와 개방 상태를 나타내고, 상기 엔진코드 결합부에 의해 상기 자동차의 엔진에 시동이 걸리면 엔진에 시동이 걸린 상태를 나타내는 출력부;를 더 포함할 수 있다.The code separation-based smart automobile control device indicates a door position and an open state of the automobile when the door of the automobile is opened by the main code coupler, and when the engine of the automobile is started by the engine code coupler And an output unit for indicating a state in which the engine is started.
상술한 본 발명의 일측면에 따르면, 코드 분리 기반 스마트 자동차 제어 방법 및 이를 수행하기 위한 장치는 중요 코드를 외부로 분리함으로써 중요 코드의 노출을 원천 차단할 수 있고, 보안 코드의 해킹을 예방할 수 있다.According to an aspect of the present invention, a method for controlling a smart car based on a code separation and an apparatus for performing the method can prevent the exposure of important codes and prevent hacking of security codes by separating important codes from the outside.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects obtained in the present invention are not limited to the effects mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the following description .
도 1은 본 발명의 코드 분리 기반 스마트 자동차 제어 시스템을 개략적으로 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 코드 분리 기반 스마트 자동차 제어 장치를 자세히 도시한 블록도이다.
도 3은 도 1의 코드 분리 기반 스마트 자동차 제어 장치의 출력부의 예시를 도시한 도면이다.
도 4는 도 1의 코드 분리 기반 스마트 자동차 제어 장치의 보안 코드 분리 과정의 예를 나타낸 예시도이다.
도 5a 내지 도 5e는 도 1의 코드 분리 기반 스마트 자동차 제어 장치의 코드 분리 과정을 구현한 예시도이다.
도 6은 도 1의 코드 분리 기반 스마트 자동차 제어 장치와 통신하는 인포테인먼트 장치를 도시한 도면이다.
도 7은 도 6의 인포테인먼트 장치의 보안 코드 분리 과정의 예를 나타낸 예시도이다.
도 8 내지 도 10은 본 발명의 일 실시예에 따른 코드 분리 기반 스마트 자동차 제어 방법을 나타낸 흐름도이다.
도 11은 본 발명의 코드 분리 기반 스마트 자동차 제어 장치의 구현예에 따른 흐름도이다.
도 12는 본 발명의 코드 분리 기반 스마트 자동차 제어 장치의 작동을 구현한 예시도이다.
도 13은 본 발명의 스마트 자동차 제어 장치와 통신하는 인포테인먼트 장치의 작동을 구현한 예시도이다.
도 14는 본 발명의 코드 분리 기반 스마트 자동차 제어 장치의 출력부의 작동을 구현한 예시도이다.
도 15는 본 발명의 운전자의 디바이스의 사용 방법을 구현한 예시도이다.1 is a view schematically showing a code separation-based smart car control system of the present invention.
FIG. 2 is a detailed block diagram of a code separation-based smart car control apparatus according to an embodiment of the present invention.
FIG. 3 is a diagram illustrating an example of an output portion of the code separation-based smart car control apparatus of FIG. 1;
FIG. 4 is a diagram illustrating an example of a security code separation process of the code separation-based smart car control apparatus of FIG. 1;
FIGS. 5A to 5E are views illustrating an embodiment of a code separation process of the smart-car control apparatus based on the code separation of FIG. 1. FIG.
FIG. 6 is a diagram illustrating an infotainment device in communication with the code separation-based smart car control device of FIG. 1;
FIG. 7 is an exemplary view showing an example of a security code separation process of the infotainment apparatus of FIG. 6;
8 to 10 are flowcharts illustrating a method of controlling a smart car based on a code separation according to an embodiment of the present invention.
11 is a flowchart according to an embodiment of the code separation-based smart car control apparatus of the present invention.
12 is an exemplary diagram illustrating the operation of the code separation-based smart car control apparatus of the present invention.
13 is an exemplary diagram illustrating the operation of an infotainment device communicating with the smart car control device of the present invention.
FIG. 14 is an exemplary diagram illustrating the operation of the output unit of the smart-commuter-based smart car control apparatus of the present invention.
FIG. 15 is an exemplary view illustrating a method of using a driver's device of the present invention.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예와 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.The following detailed description of the invention refers to the accompanying drawings, which illustrate, by way of illustration, specific embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. It should be understood that the various embodiments of the present invention are different, but need not be mutually exclusive. For example, certain features, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the invention in connection with an embodiment. It is also to be understood that the position or arrangement of the individual components within each disclosed embodiment may be varied without departing from the spirit and scope of the invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is to be limited only by the appended claims, along with the full scope of equivalents to which such claims are entitled, if properly explained. In the drawings, like reference numerals refer to the same or similar functions throughout the several views.
이하, 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the drawings.
본 발명은 자동차를 부팅할 수 있는 코드 중에서 중요 코드를 외부로 분리함으로써 중요 코드의 노출을 원천 차단할 수 코드 분리 기반 스마트 자동차 제어 방법 및 이를 수행하기 위한 장치이다.The present invention relates to a code separation-based smart car control method capable of blocking exposure of important codes by separating important codes from the codes capable of booting the vehicle to the outside, and a device for performing the method.
도 1은 코드 분리 기반 스마트 자동차 제어 시스템을 개략적으로 도시한 도면이다.1 is a view schematically showing a code separation-based smart car control system.
도 1을 참조하면, 코드 분리 기반 스마트 자동차 제어 시스템(10)은 자동차(900) 및 디바이스(500)를 포함할 수 있다.Referring to FIG. 1, a code separation based smart
디바이스(500)는 운전자가 소지하는 장치로써 이동성을 가지며, 스마트폰, 모바일 장치, 디바이스(device), 기구(apparatus), 단말(terminal), UE(user equipment), MS(mobile station), 무선기기(wireless device), 휴대기기(handheld device) 등 다른 용어로 불릴 수 있다.The
디바이스(500)는 운영체제(Operation System; OS), 즉 시스템을 기반으로 다양한 소프트웨어를 실행하거나 제작할 수 있다. 상기 운영체제는 소프트웨어가 장치의 하드웨어를 사용할 수 있도록 하기 위한 시스템 프로그램으로서, 안드로이드 OS, iOS, 윈도우 모바일 OS, 바다 OS, 심비안 OS, 블랙베리 OS 등 모바일 컴퓨터 운영체제를 모두 포함할 수 있다.The
일 예로, 디바이스(500)는 스마트폰, PDA, 노트북, 태블릿PC, 웨어러블 장치 등의 형태일 수 있다. 이하에서는, 설명의 편의를 위해 디바이스(500)는 스마트폰으로 정의한다. 하지만, 상술한 바와 같이 디바이스(500)의 형태는 스마트폰에만 국한되는 것은 아니다.As an example, the
디바이스(500)는 도 2에 도시된 바와 같이 자동차 문 개폐 버튼, 엔진스타트 버튼을 포함할 수 있어 원격으로 자동차의 문을 열거나 닫을 수 있고, 엔진에 시동을 걸 수 있다.As shown in FIG. 2, the
예를 들어, 운전자가 자동차 문을 개방하는 버튼을 누르면 자동차 문 개방 신호를 송신할 수 있다. 또한, 운전자가 엔진스타트 버튼을 누르면 엔진스타트 신호를 송신할 수도 있다.For example, when the driver presses a button for opening the car door, it can transmit the car door open signal. Further, when the driver presses the engine start button, the engine start signal may be transmitted.
단, 엔진스타트 버튼은 자동차의 문이 개방되어 디바이스(500)의 Power버튼이 켜진 후 운전이 가능한 상태로 변환되었을 경우에만 엔진스타트 버튼을 누를 수 있다.However, the engine start button can be depressed only when the door of the automobile is opened and the power button of the
자동차(900)는 디바이스(500)로부터 자동차 문의 개방 신호 또는 엔진스타트 신호가 수신되면 해당 디바이스(500)를 인증하고, 인증결과에 따라 문을 개방하거나 엔진에 시동을 거는 코드 분리 기반 스마트 자동차 제어 장치(100)를 포함할 수 있다.The
도 2는 코드 분리 기반 스마트 자동차 제어 장치를 자세히 도시한 블록도이다.FIG. 2 is a block diagram showing a code separation-based smart car control device in detail.
본 발명의 일 실시예에 따른 코드 분리 기반 스마트 자동차 제어 장치(100, 이하 스마트 자동차 제어 장치)는 제1 코드생성부(110), 제2 코드생성부(120), 통신부(130), 인증수행부(150), 메인코드 결합부(170) 및 엔진코드 결합부(180)를 포함한다. 스마트 자동차 제어 장치(100)는 출력부(190)를 더 포함할 수 있다.The smart-
스마트 자동차 제어 장치(100)는 제1 코드생성부(110), 제2 코드생성부(120), 통신부(130), 인증수행부(150), 메인코드 결합부(170), 엔진코드 결합부(180) 및 출력부(190)를 통합하여 관리하기 위한 소프트웨어(어플리케이션)가 설치되어 실행될 수 있다.The smart
제1 코드생성부(110), 제2 코드생성부(120), 통신부(130), 인증수행부(150), 메인코드 결합부(170), 엔진코드 결합부(180) 및 출력부(190)의 구성은 통합 모듈로 형성되거나, 하나 이상의 모듈로 이루어질 수 있다. 그러나, 이와 반대로 각 구성은 별도의 모듈로 이루어질 수도 있다.The first
장치(100)는 이동성을 갖거나 자동차(900)에 장착된 채로 고정될 수 있다. 장치(100)는 컴퓨터(computer), 서버(server) 또는 엔진(engine) 형태일 수 있으며, 디바이스(device), 기구(apparatus), 단말(terminal), UE(user equipment), MS(mobile station), MT(mobile terminal), UT(user terminal), SS(subscriber station), 무선기기(wireless device), PDA(personal digital assistant), 무선 모뎀(wireless modem), 휴대기기(handheld device) 등 다른 용어로 불릴 수 있다.The
제1 코드생성부(110)는 자동차(900)의 문의 개방을 관할하는 메인 노드의 보안 코드를 생성할 수 있고, 생성된 메인 노드의 보안 코드를 메인 핵심코드와 메인 일반코드로 분리할 수 있다.The first
제2 코드생성부(120)는 자동차(900)의 시동을 관할하는 엔진 노드의 보안 코드를 생성할 수 있고, 생성된 엔진 노드의 보안 코드를 엔진 핵심코드와 엔진 일반코드로 분리할 수 있다.The
제1 코드생성부(110)와 제2 코드생성부(120)에서 생성하는 보안 코드는 각각 ROS 코드(파이썬 코드, Python Parsing Code)를 의미할 수 있고, ROS 코드(파이썬 코드)는 가장 작은 단위인 token으로부터 statement, method, class로 확장되는 구조를 가지고 있을 수 있고, 이를 기반으로 분석될 수 있다.The security code generated by the first
여기서, ROS는 로봇 어플리케이션 개발을 위한 표준 소스로써 자율주행차의 대부분이 탑재하고 있는 소스를 의미할 수 있다. 또한, ROS는 관할하는 각 노드의 정보를 다른 노드에게 알려주어 노드 간의 통신을 가능하게 할 수 있다.Here, the ROS is a standard source for robot application development, and may refer to a source on which most autonomous vehicles are mounted. In addition, the ROS can inform the other nodes of information about each node to enable communication between the nodes.
제1 코드생성부(110)와 제2 코드생성부(120)에서 생성하는 보안 코드(ROS 코드)를 분리하기 위해 파이썬 코드 구조 분석 및 파싱 모듈(Python Parsing Module) 개발이 선행되어 생성될 수 있다.A Python code structure analysis and a Python Parsing Module development may be performed in advance to separate the security code (ROS code) generated by the first
예를 들어, 파이썬 언어(Python Language)의 문법(Grammer)을 기초로 하여 파이썬 프로그램(Python Program)을 구성할 수 있고, 구성된 파이썬 프로그램을 이용하여 token을 인식할 수 있는 인식기를 제작할 수 있다.For example, you can build a Python program based on the grammar of the Python language, and you can build a recognizer that recognizes the token using a configured Python program.
생성된 token 인식기를 바탕으로 하여 statement를 인식할 수 있는 인식기를 제작할 수 있고, 이를 이용하여 복수 개의 statement로 구성된 method 및 class도 인식할 수 있는 인식기를 제작할 수 있다.Based on the generated token recognizer, it is possible to construct a recognizer that recognizes a statement, and a recognizer capable of recognizing a method and class composed of a plurality of statements can be produced.
통신부(130)는 마스터 스프릿 모듈(Master Split Module) 등의 분리 대상 코드를 배포할 수 있는 장치를 이용하여 제1 코드생성부(110) 및 제2 코드생성부(120)에서 분리한 메인 핵심코드 및 엔진 핵심코드를 디바이스(500)로 송신할 수 있다.The
인증수행부(150)는 운전자의 디바이스(500)로부터 자동차(900) 문의 개방신호가 수신되면, 자동차(900) 문 개방신호를 송신한 디바이스(500)에 대해 1차 인증을 수행할 수 있다.The
또한, 인증수행부(150)는 운전자의 디바이스(500)로부터 자동차(900) 엔진스타트 신호가 수신되면, 엔진스타트 신호를 송신한 디바이스(500)에 대해 2차 인증을 수행할 수 있다.Also, when the engine start signal of the
여기서, 인증수행부(150)가 수행하는 2차 인증은 1차 인증을 성공적으로 마친 디바이스(500)에 한하여 자동차(900)의 문이 개방된 후에 해당 디바이스(500)에 대해 수행할 수 있다.Here, the secondary authentication performed by the
메인코드 결합부(170)는 인증수행부(150)에서 1차 인증에 성공한 디바이스(500)로부터 메인 핵심코드를 수신할 수 있고, 저장되어 있던 메인 일반코드와 재결합할 수 있다.The main
또한, 메인코드 결합부(170)는 디바이스(500)로부터 수신된 메인 핵심코드와 저장되어 있던 메인 일반코드가 재결합에 성공하면 자동차(900)의 문을 개방하는 신호를 송신할 수 있다.In addition, the main
엔진코드 결합부(180)는 인증수행부(150)에서 2차 인증에 성공한 디바이스(500)로부터 엔진 핵심코드를 수신할 수 있고, 저장되어 있던 엔진 일반코드와 재결합할 수 있다.The engine
메인코드 결합부(170)와 마찬가지로, 엔진코드 결합부(180)도 디바이스(500)로부터 수신된 엔진 핵심코드와 저장되어 있는 엔진 일반코드가 재결합에 성공하면 엔진에 시동을 걸기 위한 신호를 송신할 수 있다.As with the main
메인코드 결합부(170)와 엔진코드 결합부(180)는 마스터 트랜스퍼 모듈(Master Transfer Module) 등의 통신을 이용하여 네트워크 환경을 구축하는 장치로써, 디바이스(500)와 통신이 되어 각 핵심코드를 수신하면 각 일반코드가 저장된 곳으로 전송할 수 있다.The main
이로부터 메인코드 결합부(170)와 엔진코드 결합부(180)는 각 핵심코드가 각 일반코드와 재결합에 성공하면, 보안 코드가 정상적으로 실행되어 자동차의 전원(Power)이 온(On)되거나 엔진에 시동이 걸릴 수 있다.When the main
출력부(190)는 자동차에 설치된 계기판 등의 출력할 수 있는 장치 또는 웹페이지일 수 있고, 실시간 자동차의 정보(예를 들어, 문의 개방 상태 또는 엔진 시동 상태 등이 있다)를 반영하여 운전자가 확인할 수 있도록 출력할 수 있다.The
출력부(190)는 메인코드 결합부(170)에 의해 자동차(900)의 문이 개방되면 자동차(900)의 문의 위치와 개방 상태를 나타낼 수 있고, 엔진코드 결합부(180)에 의해 자동차(900)의 엔진 시동이 걸리면 엔진에 시동이 걸린 상태를 나타낼 수 있다.The
출력부(190)는 스마트 자동차 제어 장치(100)에 장착되어 제공받는 정보를 출력할 수도 있지만, 별도의 모듈로 설치되어 스마트 자동차 제어 장치(100)와 통신함으로써 스마트 자동차 제어 장치(100)로부터 제공받는 정보를 출력할 수도 있다.The
도 3을 참조하면, 자동차(900)의 엔진에 시동을 걸 수 있는 방법은 디바이스(500)의 엔진스타트 버튼뿐만 아니라 출력부(190)의 오른쪽 하단의 엔진스타트 버튼을 통해서 직접 자동차의 시동을 걸 수도 있다.Referring to FIG. 3, the method of starting the engine of the
도 4는 스마트 자동차 제어 장치의 보안 코드 분리 과정의 예를 나타낸 예시도이다.4 is an exemplary view showing an example of a security code separation process of the smart car control device.
본 발명의 일 실시예에 따른 자동차 제어 장치(100)의 제1 코드생성부(110) 및 제2 코드생성부(120)에서 보안 코드인 ROS 코드가 생성되면, ROS 코드를 분리하기 위해 파이썬 코드 구조 분석 및 파싱 모듈(Python Parsing Module)을 사용할 수 있다.When the ROS code as the security code is generated in the first
본 발명의 일 실시예에 따른 자동차 제어 장치(100)의 통신부(130)는 제1 코드생성부(110) 및 제2 코드생성부(120)에서 생성한 뒤 분리한 메인 핵심코드 및 엔진 핵심코드를 디바이스(500)로 송신하기 위해 마스터 스프릿 모듈(Master Split Module)을 사용할 수 있다.The
본 발명의 일 실시예에 따른 자동차 제어 장치(100)의 메인코드 결합부(170)와 엔진코드 결합부(180)는 디바이스(500)와 통신이 하여 각 핵심코드를 수신하면 각 일반코드가 저장된 곳으로 전송하기 위해 마스터 트랜스퍼 모듈(Master Transfer Module)을 사용할 수 있다.The main
도 5a 내지 도 5e는 본 발명이 제안하는 코드 분리 기반 스마트 자동차 제어 장치의 코드 분리 과정을 구현한 예시도이다.5A to 5E are diagrams illustrating an embodiment of a code separation process of a smart car control apparatus based on a code separation proposed by the present invention.
도 5a를 참조하면, 코드를 분리할 파일을 선택한 후, 해당 파일에 있는 문장과 함수 등이 운전자가 선택할 수 있도록 순차적으로 출력되는 것을 확인할 수 있다. Referring to FIG. 5A, after selecting a file to be separated from the code, it can be confirmed that the statements and functions in the file are sequentially output so that the driver can select the file.
도 5b를 참조하면, 함수는 def이므로 ⓓ로 표현되고 class는 ⓒ로 표현될 수 있으며, 나머지 변수나 조건문 등은 ⓘ로 표현되는 것을 확인할 수 있다.Referring to FIG. 5B, since the function is def, it can be expressed by d, the class can be expressed by c, and the remaining variables and conditional statements can be expressed by ⓘ.
운전자는 왼쪽의 체크박스를 통해 해당 파일의 전체 코드 중에서 핵심코드를 랜덤으로 선택할 수 있다. 이로부터 운전자마다 고유한 핵심코드를 갖게 되므로 보안성이 높아질 수 있다.The operator can randomly select the core code from the entire code of the file through the check box on the left. From this, since the driver has a unique core code, the security can be enhanced.
도 5c를 참조하면, 운전자에 의해 선택된 코드는 핵심코드로 추출되어 저장될 수 있고, 선택되지 않은 코드는 일반코드로 추출되어 해당 파일에 저장될 수 있다. 운전자가 "Finish" 버튼을 클릭하면 "Complete" 메시지가 출력되고, 이를 통해 코드 분리가 완료되었음을 확인할 수 있다.Referring to FIG. 5C, the code selected by the driver can be extracted and stored in the core code, and the unselected code can be extracted into the general code and stored in the corresponding file. When the driver clicks the "Finish" button, a "Complete" message is output, which confirms that the code separation is complete.
도 5d를 참조하면, 해당 파일의 코드가 분리되면 두 개의 파일(~\1.py, ~\2.py)로 나눠져서 저장될 수 있고, 파일 '~\1.py'는 해당 파일에 저장된 일반코드이고, 파일 '~\1.py'는 운전자가 선택한 핵심코드인 것을 확인할 수 있다.Referring to FIG. 5D, if the code of the corresponding file is separated, it can be divided into two files (~ \ 1.py, ~ \ 2.py) and the file '~ \ 1.py' It is a generic code, and the file '~ \ 1.py' is the core code chosen by the driver.
도 5e를 참조하면, 코드가 분리된 후 코드의 원본과 분리된 코드를 열어보면, 코드의 원본에서 일부분이 사라지고 /*removed*/라는 주석이 생성된 것을 확인할 수 있다.Referring to FIG. 5E, when the code is separated and the code separated from the original of the code is opened, a part of the original code disappears and / * removed * / comment is generated.
도 6은 코드 분리 기반 스마트 자동차 제어 장치와 통신하는 인포테인먼트 장치를 도시한 도면이다.6 is a diagram illustrating an infotainment device in communication with a code separation based smart car control device.
본 발명의 일 실시예에 따른 스마트 자동차 제어 장치(100)는 자동차의 문이 개방되어 부팅이 완료되면 사용할 수 있는 인포테인먼트 장치(700)와 통신할 수 있다.The smart
인포테인먼트 장치(700)는 이동성을 갖거나 자동차(900)에 장착된 채로 고정될 수 있다. 장치(100)는 컴퓨터(computer), 서버(server) 또는 엔진(engine) 형태일 수 있으며, 디바이스(device), 기구(apparatus), 단말(terminal), UE(user equipment), MS(mobile station), MT(mobile terminal), UT(user terminal), SS(subscriber station), 무선기기(wireless device), PDA(personal digital assistant), 무선 모뎀(wireless modem), 휴대기기(handheld device) 등 다른 용어로 불릴 수 있다.The
인포테인먼트 장치(700)의 상단에는 여러 가지 오락거리를 제공하는 버튼들이 존재할 수 있고, 길 안내를 원할 때는 하단의 지도 버튼을 클릭하여 길 안내를 받을 수 있다. 이와 같이 인포테인먼트 장치(700)는 정보 및 엔터테인먼트를 결합하여 제공하기 위한 소프트웨어(어플리케이션)가 설치되어 실행될 수 있다. At the top of the
인포테인먼트 장치(700)는 자동차(900)의 문이 개방되어 부팅된 이후 동작할 수 있으므로, 스마트 자동차 제어 장치(100)와 마찬가지로 인포테인먼트 장치(700)에 대한 보안이 필요하다.Since the
즉, 인포테인먼트 장치(700)는 정보 및 엔터테인먼트를 결합하여 제공하기 위한 소프트웨어(어플리케이션)의 보안 코드를 일반코드와 핵심코드로 분리할 수 있다.That is, the
여기서, 소프트웨어는 APK 형태로 이루어져 소프트웨어의 보안 코드인 바이트 코드는 DEX 형태로 존재할 수 있다. DEX 형태는 프로그래머가 이해할 수 없는 형태이므로, 이를 알아볼 수 있는 트리 구조로 변환하기 위해 덱스 파싱 모듈(Dex Parsing Module)등의 기계어로 번역할 수 있는 장치를 이용할 수 있다.Here, the software is in the APK form, and the bytecode, which is the security code of the software, can exist in the DEX form. Since the DEX form is something that the programmer can not understand, a device that can be translated into a machine language such as the Dex Parsing Module can be used to convert it into a recognizable tree structure.
덱스 파싱 모듈을 이용하여 DEX 형태를 기계어로 번역한 뒤 소프트웨어의 보안 코드인 바이트 코드를 일반코드와 핵심코드로 분리할 수 있고, 분리된 핵심코드를 운전자의 디바이스(500)로 전송할 수 있다.The DEX parsing module can be used to translate the DEX type into machine language and then separate the bytecode, which is a security code of the software, into a general code and a core code, and transfer the separated core code to the driver's
여기서, 분리된 핵심코드를 운전자의 디바이스(500)로 전송(배포)하기 위해 코드 스프릿 모듈(Code Split Module) 등의 코드를 다른 디바이스로 전송(배포)할 수 있는 장치를 이용할 수 있다.Here, it is possible to use a device capable of transmitting (distributing) code such as a code splitting module to another device to transmit (distribute) the separated core code to the driver's
인포테인먼트 장치(700)는 운전자의 디바이스(500)와 통신이 되면 수신된 핵심코드를 일반코드가 저장된 곳으로 전송할 수 있고, 핵심코드가 일반코드와의 재결합에 성공하면 소프트웨어는 네트워크 환경을 구축하여 실행할 수 있다.When the
여기서, 수신된 핵심코드를 일반코드가 저장된 곳으로 전송하고 재결합하기 위해 코드 트랜스퍼 모듈(Code Transfer Module) 등의 코드를 전송하여 재결한 할 수 있는 장치를 이용할 수 있다.Here, it is possible to use a device capable of transmitting a code such as a code transfer module and transmitting the received core code to a place where the general code is stored and reassembled.
도 7은 인포테인먼트 장치의 보안 코드 분리 과정의 예를 나타낸 예시도이다.7 is an exemplary view showing an example of a security code separation process of the infotainment apparatus.
인포테인먼트 장치(700)의 보안 코드인 소프트웨어의 보안 코드는 DEX 형태로 존재할 수 있으므로 덱스 파싱 모듈(Dex Parsing Module) 등의 기계어로 번역할 수 있는 장치를 이용하여 일반코드와 핵심코드로 분리할 수 있다.Since the security code of the software, which is the security code of the
덱스 파싱 모듈(Dex Parsing Module)을 이용하여 분리된 핵심코드를 운전자의 디바이스(500)로 전송(배포)하기 위해 코드 스프릿 모듈(Code Split Module)을 이용할 수 있다.A code splitting module can be used to transmit (distribute) the separated core code to the driver's
운전자의 디바이스(500)와 통신이 되면 수신된 핵심코드를 일반코드가 저장된 곳으로 전송하고, 핵심코드를 일반코드와 재결합하기 위해 코드 트랜스퍼 모듈(Code Transfer Module)을 이용할 수 있다.When communicating with the driver's
이하에서는, 도 8 내지 도 10를 참조하여 코드 분리 기반 스마트 자동차 제어 방법을 구체적으로 설명하도록 한다.Hereinafter, a code separation-based smart car control method will be described in detail with reference to FIGS. 8 to 10. FIG.
본 발명의 일 실시예에 따른 코드 분리 기반 스마트 자동차 제어 방법은 자동차(900)를 개방하는 신호가 디바이스(500)로부터 수신되면 개방 신호를 송신한 디바이스(500)를 1차 인증할 수 있다(S1100).The smart control method based on a code separation based on the present invention can first authenticate the
스마트 자동차 제어 장치(100)는 해당 디바이스(500)가 1차 인증에 성공했는지에 대한 여부를 확인할 수 있고(S1300), 해당 디바이스(500)가 1차 인증에 성공했으면 자동차(900)의 문을 개방할 수 있다(S1300).The smart
도 9를 참조하여 디바이스(500)의 1차 인증을 성공한 뒤 자동차(900)의 문을 개방하는 과정을 구체적으로 설명하기로 한다.The process of opening the door of the
스마트 자동차 제어 장치(100)는 1차 인증에 성공한 디바이스(500)에 한하여 메인 핵심코드를 요청할 수 있고, 이에 따라 디바이스(500)가송신한 메인 핵심코드를 수신할 수 있다(S1310).The smart
수신된 메인 핵심코드가 자동차(900)에 저장된 메인 일반코드와 재결합에 성공하면(S1330) 자동차(900)의 문을 개방하는 신호를 송신하여(S1350) 자동차(900)의 문을 개방할 수 있다(S1370).If the received main core code is successfully rejoined to the main general code stored in the
여기서, 디바이스(500)가 송신하는 메인 핵심코드와 자동차(900)에 저장된 메인 일반코드는 스마트 자동차 제어 장치(100)의 메인 노드로부터 생성되는 보안 코드를 분리하여 생성한 뒤 메인 핵심코드는 운전자의 디바이스(500)로 송신하고, 메인 일반코드는 자동차(900)에 저장한 보안 코드일 수 있다.Here, the main core code transmitted by the
해당 디바이스(500)에 대해 1차 인증에 성공하여 자동차(900)의 문이 개방된 후, 디바이스(500)로부터 자동차(900)의 엔진스타트 신호가 수신되면 엔진스타트 신호를 송신한 디바이스(500)를 2차 인증할 수 있다(S1500).When the engine start signal of the
스마트 자동차 제어 장치(100)는 해당 디바이스(500)가 2차 인증에 성공했는지에 대한 여부를 확인할 수 있고(S1700), 해당 디바이스(500)가 2차 인증에 성공했으면 자동차(900)의 엔진에 시동을 걸 수 있다(S1700).The smart
여기서, 엔진스타트 신호는 운전자의 디바이스(500)뿐만 아니라 스마트 자동차 제어 장치(100)의 출력부(190)의 엔진스타트 버튼으로부터 엔진스타트 신호를 송신할 수 있다.Here, the engine start signal can transmit the engine start signal from the engine start button of the
도 10을 참조하여 디바이스(500)의 2차 인증을 성공한 뒤 자동차(900)의 엔진을 구동하는 과정을 구체적으로 설명하기로 한다.The process of driving the engine of the
스마트 자동차 제어 장치(100)는 2차 인증에 성공한 디바이스(500)에 한하여 메인 핵심코드를 요청할 수 있고, 이에 따라 디바이스(500)가 송신한 메인 핵심코드를 수신할 수 있다(S1710).The smart
수신된 메인 핵심코드가 자동차(900)에 저장된 메인 일반코드와 재결합을 시도할 수 있고(S1730), 재결합에 성공하면 자동차(900)의 엔진을 구동하는 신호를 송신하여(S1750) 자동차(900)의 엔진에 시동을 걸 수 있다(S1770).The received main core code can attempt to rejoin the main general code stored in the
여기서, 디바이스(500)가 송신하는 엔진 핵심코드와 자동차(900)에 저장된 엔진 일반코드는 스마트 자동차 제어 장치(100)의 엔진 노드로부터 생성되는 보안 코드를 분리하여 생성한 뒤 엔진 핵심코드는 운전자의 디바이스(500)로 송신하고, 엔진 일반코드는 자동차(900)에 저장한 보안 코드일 수 있다.Here, the engine core code transmitted by the
메인 노드와 엔진 노드로부터 생성되는 각 보안 코드는 각각 ROS 코드(파이썬 코드, Python Parsing Code)를 의미할 수 있고, ROS 코드(파이썬 코드)는 가장 작은 단위인 token으로부터 statement, method, class로 확장되는 구조를 가지고 있을 수 있고, 이를 기반으로 분석될 수 있다.Each security code generated from the main node and the engine node can each refer to ROS code (Python Parsing Code), and ROS code (Python code) extends from the smallest unit token to statement, method, and class Structure, and can be analyzed on the basis of this.
메인 노드와 엔진 노드로부터 생성되는 보안 코드(ROS 코드)를 핵심코드와 일반코드로 분리하기 위해 파이썬 코드 구조 분석 및 파싱 모듈(Python Parsing Module) 개발이 선행되어 생성될 수 있다.Python Parsing Module development can be done in advance to separate security code (ROS code) generated from main node and engine node into core code and general code.
예를 들어, 파이썬 언어(Python Language)의 문법(Grammer)을 기초로 하여 파이썬 프로그램(Python Program)을 구성할 수 있고, 구성된 파이썬 프로그램을 이용하여 token을 인식할 수 있는 인식기를 제작할 수 있다.For example, you can build a Python program based on the grammar of the Python language, and you can build a recognizer that recognizes the token using a configured Python program.
생성된 token 인식기를 바탕으로 하여 statement를 인식할 수 있는 인식기를 제작할 수 있고, 이를 이용하여 복수 개의 statement로 구성된 method 및 class도 인식할 수 있는 인식기를 제작할 수 있다.Based on the generated token recognizer, it is possible to construct a recognizer that recognizes a statement, and a recognizer capable of recognizing a method and class composed of a plurality of statements can be produced.
도 11은 도 8 내지 도 10에 따른 본 발명이 제안하는 코드 분리 기반 스마트 자동차 제어 장치의 구현예에 따른 흐름도이다.FIG. 11 is a flowchart illustrating an embodiment of a code separation-based smart car control apparatus proposed by the present invention shown in FIGS. 8 to 10.
본 발명의 실시예에 따른 스마트 자동차 제어 장치(100)의 코드 분리 기술은 메인 노드의 보안 코드, 엔진 노드의 보안 코드 및 인포테이션 장치(700)의 보안 코드에 적용될 수 있다.The code separation technique of the smart
운전자의 디바이스(500)로부터 자동차(900)의 문 개방 신호가 입력되면 해당 디바이스(500)에 대하여 1차 인증을 수행할 수 있고, 1차 인증이 성공적으로 마치면 디바이스(500)로부터 메인 핵심코드를 수신받아 자동차(900)의 전원(Power)이 온(On)될 수 있다.When the door open signal of the
여기서, 자동차(900)의 전원이 온 된 후 스마트 자동차 제어 장치(100)와 통신할 수 있는 인포테인먼트 장치(700)의 전원(Power)도 온(On) 신호를 입력받을 수 있게 된다.Here, the power of the
자동차(900)의 문이 개방되어 전원이 온 된 후 디바이스(500)로부터 엔진스타트 신호가 입력될 수 있고, 엔진스타트 신호를 송신한 디바이스(500)에 대해 2차 인증을 수행할 수 있다.The engine start signal can be input from the
2차 인증을 성공적으로 마친 디바이스(500)로부터 엔진 핵심코드를 수신받아 자동차(900)의 엔진에 시동을 걸 수 있고, 자동차(900)의 엔진에 시동이 걸리면 스마트 자동차 제어 장치(100)의 출력부(190)에 실시간 자동차(900)의 자동차의 정보(예를 들어, 문의 개방 상태 또는 엔진 시동 상태 등이 있다)가 출력될 수 있다.When the engine of the
여기서, 스마트 자동차 제어 장치(100)는 자동차의 계기판에 존재하는 여러 세부 기능들의 상태를 출력부(190)에 출력하기 위해 Instrument Cluster 노드를 이용하여 실시간 자동차의 정보를 제공할 수 있다.Here, the smart
자동차(900)의 내부에 착석한 운전자가 인포테이션 장치(700)의 전원(Power)을 온(On) 시키면 해당 디바이스(500)로부터 핵심코드를 수신받아 인포테이션 장치(700)에 저장된 일반코드와 재결합을 수행할 수 있고, 재결합에 성공하면 인포테이션 장치(700)는 실행될 수 있다.When a driver sitting inside the
도 12는 코드 분리 기반 스마트 자동차 제어 장치의 작동을 구현한 예시도이다.12 is an exemplary diagram illustrating the operation of the code separation-based smart car control device.
코드 분리 기술은 자동차(900)의 부팅 기능을 담당하는 스마트 자동차 제어 장치(100)의 제1 코드생성부(110)인 메인 노드와 제2 코드생성부(120)인 엔진 노드에 적용될 수 있다.The code separation technique can be applied to the main node which is the first
제1 코드생성부(110) 및 제2 코드생성부(120)를 통해 보안 코드를 핵심코드와 엔진코드로 분리한 후, 통신부(130)를 통해 메인 핵심코드와 엔진 핵심코드를 운전자의 디바이스(500)로 전송하여 디바이스(500)에 저장할 수 있도록 할 수 있다.After separating the security code into the core code and the engine code through the first
운전자의 디바이스(500)로부터 자동차(900)의 문 개방신호가 수신되면, 개방신호를 송신한 디바이스(500)에 대해 1차 인증을 수행할 수 있고, 1차 인증을 성공적으로 마친 디바이스(500)로부터 메인 핵심코드를 수신받을 수 있다.When the door open signal of the
디바이스(500)로부터 메인 핵심코드를 수신받은 메인코드 결합부(170)는 스마트 자동차 제어 장치(100)에 저장된 메인 일반코드와 재결합할 수 있고, 재결합에 성공하면 자동차(900)의 문을 개방하고, 전원(Power)을 온(On) 시킬 수 있다.The main
자동차(900)의 전원(Power)이 온(On)되면 스마트 자동차 제어 장치(100)는 출력부(190)로 자동차(900)의 문 개폐 여부를 전송할 수 있고, 출력부(190)는 제공받은 자동차(900)의 문 개폐 여부를 출력할 수 있다.When the power of the
마찬가지로 운전자의 디바이스(500)로부터 자동차(900)의 엔진에 시동을 걸기 위해 엔진스타트 신호가 수신되면, 엔진스타트 신호를 송신한 디바이스(500)에 대해 2차 인증을 수행할 수 있고, 2차 인증을 성공적으로 마친 디바이스(500)로부터 엔진 핵심코드를 수신받을 수 있다.Similarly, when the engine start signal is received from the driver's
여기서, 엔진스타트 신호는 운전자의 디바이스(500)뿐만 아니라 출력부(190)에 출력된 오른쪽 하단의 엔진스타트 버튼을 통해서 자동차(900)의 엔진에 시동을 걸 수도 있다.Here, the engine start signal may start the engine of the
디바이스(500)로부터 엔진 핵심코드를 수신받은 엔진코드 결합부(180)는 스마트 자동차 제어 장치(100)에 저장된 엔진 일반코드와 재결합할 수 있고, 재결합에 성공하면 엔진에 시동을 걸 수 있다.The engine
자동차(900)의 엔진에 시동이 걸리면 스마트 자동차 제어 장치(100)는 출력부(190)로 자동차(900)의 엔진 시동 여부를 전송할 수 있고, 출력부(190)는 제공받은 자동차(900)의 엔진 시동 여부를 출력할 수 있다.When the engine of the
도 13은 스마트 자동차 제어 장치와 통신하는 인포테인먼트 장치의 작동을 구현한 예시도이다.Figure 13 is an exemplary diagram illustrating the operation of an infotainment device in communication with a smart car control device.
인포테인먼트 장치(700)의 덱스 파싱 모듈을 통해 소프트웨어의 보안 코드를 기계어로 번역할 수 있고, 기계어로 번역된 보안 코드를 핵심코드와 일반코드로 분리할 수 있다.The security code of the software can be translated into machine language through the dex parsing module of the
기계어로 번역된 뒤 보안 코드에서 분리된 일반코드는 인포테인먼트 장치(700)에 저장될 수 있고, 핵심코드는 코드 스프릿 모듈을 이용하여 운전자의 디바이스(500)로 전송될 수 있다.The general code separated from the security code after being translated into the machine language can be stored in the
스마트 자동차 제어 장치(100)의 메인코드 결합부(170)에서 디바이스(500)로부터 제공받은 메인 핵심코드가 재결합에 성공하여 자동차(900)의 문이 개방되고, 메인 노드가 실행되면 자동차(900)의 전원(Power)이 온(On)된 상태에서 인포테인먼트 장치(700)의 인증이 실행될 수 있다.The main core code provided from the
인포테인먼트 장치(700)의 인증이 실행되면, 가장 먼저 운전자의 디바이스(500)로 인포테인먼트 장치(700)에 대한 핵심코드를 수신받을 수 있고, 수신된 핵심코드를 일반코드가 저장된 곳으로 전송하여 재결합을 실행할 수 있다.When the authentication of the
운전자의 디바이스(500)로부터 수신된 핵심코드가 일반코드와의 재결합에 성공하면 소프트웨어는 네트워크 환경을 구축하여 인포테인먼트 장치(700)를 실행할 수 있다.If the core code received from the driver's
도 14는 코드 분리 기반 스마트 자동차 제어 장치의 출력부의 작동을 구현한 예시도이다.FIG. 14 is an exemplary diagram illustrating the operation of the output unit of the smart-car control apparatus based on the code separation.
스마트 자동차 제어 장치(100)는 자동차의 계기판에 존재하는 여러 세부 기능들의 상태를 출력부(190)에 출력하기 위해 Instrument Cluster 노드를 이용하여 실시간 자동차의 정보를 제공할 수 있다.The smart
출력부(190)는 운전자의 자동차(900)에 탑재될 계기판 웹 뷰로써 제작될 수 있고, 엔진의 상태, 자동차(900) 문의 개방 상태 등 차의 정보를 확인할 수 있고, 중간에 위치한 눈금자로 자동차(900)의 속도 정보와 마력 정보를 제공받을 수 있다.The
또한, 출력부(190)의 왼쪽 하단에 자동차(900)의 여러 부가적인 정보가 제공될 수 있는데, ABS, AIRBAG, BRAKE, BATTERY 등이 해당될 수 있고, 부가 정보의 변경 및 반영은 ROS와의 통신을 통해 이루어질 수 있다.Also, ABS, AIRBAG, BRAKE, BATTERY, and the like may be provided at the lower left of the
도 15는 운전자의 디바이스의 사용 방법을 구현한 예시도이다.FIG. 15 is an exemplary diagram showing a method of using a driver's device.
도 15를 참조하면, 디바이스(500)의 Open, Close 및 Engine Start 버튼이 형성되어 있을 수 있고, 자동차(900)의 전원 상태를 알리는 Power On 표시등이 형성되어 있을 수 있다.15, Open, Close and Engine Start buttons of the
디바이스(500)의 Open 또는 Close 버튼을 클릭하면 자동차(900)로부터 수행되는 1차 인증 과정을 거친 후, 메인 핵심노드를 전송하여 자동차(900)의 문의 개폐를 조절할 수 있다.When the Open or Close button of the
자동차(900)의 엔진에 시동이 걸리기 전 상태의 전원만 들어온 상태를 Power 상태라고 할 수 있는데, 시동이 꺼져 있는 상태에서 Power On 표시등이 켜지면 Engine Start 버튼을 클릭할 수 있다.When the engine of the
운전자는 디바이스(500)의 Engine Start 버튼을 클릭하여 자동차(900)의 엔진에 시동을 걸 수 있고, 자동차(900)로부터 수행되는 2차 인증 과정을 거친 후, 엔진 핵심코드를 전송하여 엔진을 구동시킬 수 있다.The driver can start the engine of the
전술한 바와 같이, 본 발명의 코드 분리 기반 스마트 자동차 제어 장치(100)는 중요 코드를 외부로 분리함으로써 중요 코드의 노출을 원천 차단할 수 있고, 보안 코드의 해킹을 예방할 수 있다.As described above, the code separation-based smart
이와 같은, 스마트 자동차 제어 장치는 어플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.Such a smart car control device may be implemented in an application or may be implemented in the form of program instructions that may be executed through various computer components and recorded on a computer readable recording medium. The computer-readable recording medium may include program commands, data files, data structures, and the like, alone or in combination.
상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다.The program instructions recorded on the computer-readable recording medium may be ones that are specially designed and configured for the present invention and are known and available to those skilled in the art of computer software.
컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD 와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like.
프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of program instructions include machine language code such as those generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules for performing the processing according to the present invention, and vice versa.
이상에서는 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those skilled in the art that various changes and modifications may be made therein without departing from the spirit and scope of the invention as defined in the appended claims. It will be possible.
10: 코드 분리 기반 스마트 자동차 제어 시스템
100: 코드 분리 기반 스마트 자동차 제어 장치
110: 제1 코드생성부
120: 제2 코드생성부
130: 통신부
150: 인증수행부
170: 메인코드 결합부
180: 엔진코드 결합부
190: 출력부
500: 디바이스
700: 인포테이션 장치
900: 자동차10: Smart car control system based on code separation
100: Code-based Smart Car Controller
110: first code generation unit
120: second code generation unit
130:
150:
170: main code coupling unit
180: engine code connecting portion
190: Output section
500: device
700: Inportation device
900: Automobile
Claims (11)
상기 1차 인증에 성공한 디바이스로부터 메인 노드의 보안 코드에서 분리된 메인 핵심코드를 수신하고,
상기 디바이스로부터 수신된 메인 핵심코드가 상기 자동차의 메인 노드의 메인 일반코드와 재결합에 성공하는 경우, 메인 노드의 보안 코드가 정상적으로 실행되어 상기 자동차를 개방하고,
상기 개방된 자동차의 엔진스타트 신호가 수신되면 상기 엔진스타트 신호를 송신한 디바이스를 2차 인증하고,
상기 2차 인증에 성공한 디바이스로부터 엔진 노드의 보안 코드에서 분리된 엔진 핵심코드를 수신하고,
상기 디바이스로부터 수신된 엔진 핵심코드가 상기 자동차의 엔진 노드의 엔진 일반코드와 재결합에 성공하는 경우, 엔진 노드의 보안 코드가 정상적으로 실행되어 상기 엔진에 시동을 거는, 코드 분리 기반 스마트 자동차 제어 방법.
When the open signal for opening the vehicle is received, the device that has transmitted the open signal is first authenticated,
Receiving the main core code separated from the security code of the main node from the device that succeeded in the primary authentication,
When the main core code received from the device succeeds in re-association with the main general code of the main node of the automobile, the security code of the main node is normally executed to open the automobile,
When the engine start signal of the open vehicle is received, the device that has transmitted the engine start signal is secondly authenticated,
Receives the engine core code separated from the security code of the engine node from the device that succeeded in the secondary authentication,
And when the engine core code received from the device succeeds in re-coupling with the engine general code of the engine node of the automobile, the security code of the engine node is normally executed to start the engine.
상기 메인 핵심코드는,
상기 자동차의 메인 노드에서 생성한 보안 코드로부터 코드를 메인 핵심코드와 메인 일반코드로 분리한 뒤 상기 디바이스로 송신되는, 코드 분리 기반 스마트 자동차 제어 방법.
The method according to claim 1,
The main core code includes:
Wherein the code is separated into a main core code and a main general code from a security code generated by a main node of the automobile, and then transmitted to the device.
상기 엔진 핵심코드는,
상기 자동차의 엔진 노드에서 생성한 엔진 코드로부터 코드를 엔진 핵심코드와 엔진 일반코드로 분리한 뒤 상기 디바이스로 송신되는, 코드 분리 기반 스마트 자동차 제어 방법.
The method according to claim 1,
The engine core code includes:
Wherein the code is separated from the engine code generated by the engine node of the automobile into the engine core code and the engine general code, and then transmitted to the device.
상기 엔진스타트 신호를 송신한 디바이스를 2차 인증하는 것은,
상기 1차 인증에 성공한 디바이스로부터 메인 핵심코드를 수신하여 상기 자동차의 문이 개방된 후 상기 디바이스에 대해 2차 인증을 수행하는, 코드 분리 기반 스마트 자동차 제어 방법.
The method according to claim 1,
The second authentication of the device that has transmitted the engine start signal,
Receiving a main core code from a device that succeeded in the primary authentication and performing a secondary authentication on the device after the door of the automobile is opened.
상기 자동차의 시동을 관할하는 엔진 노드의 보안 코드를 생성하고, 엔진 핵심코드와 엔진 일반코드로 분리하는 제2 코드생성부;
상기 제1 코드생성부 및 제2 코드생성부의 각 핵심코드를 디바이스로 송신하는 통신부;
상기 디바이스로부터 자동차 개방신호가 수신되면 상기 디바이스를 1차 인증하고, 상기 디바이스로부터 엔진스타트 신호가 수신되면 상기 디바이스를 2차 인증하는 인증수행부;
상기 인증수행부에서 1차 인증에 성공한 디바이스로부터 수신되는 메인 핵심코드를 메인 일반코드와 재결합하고, 상기 디바이스로부터 수신되는 메인 핵심코드와 메인 일반코드가 재결합에 성공하면 메인 노드의 보안 코드가 정상적으로 실행되어 상기 자동차의 문을 개방하는 신호를 송신하는 메인코드 결합부; 및
상기 인증수행부에서 2차 인증에 성공한 디바이스로부터 수신되는 엔진 핵심코드를 엔진 일반코드와 재결합하고, 상기 디바이스로부터 수신된 엔진 핵심코드와 엔진 일반코드가 재결합에 성공하면 엔진 노드의 보안 코드가 정상적으로 실행되어 상기 엔진에 시동을 거는 엔진코드 결합부;를 포함하는, 코드 분리 기반 스마트 자동차 제어 장치.
A first code generating unit for generating a security code of a main node that controls the opening of a car door and separating the security code into a main core code and a main general code;
A second code generation unit for generating a security code of an engine node that manages the start of the vehicle and separating the security code into an engine core code and an engine general code;
A communication unit for transmitting each of the core codes of the first code generation unit and the second code generation unit to the device;
An authentication performing unit for first authenticating the device when the vehicle open signal is received from the device and for authenticating the device when the engine start signal is received from the device;
The main code is re-merged with the main general code received from the device that succeeded in the first authentication in the authentication performing unit, and if the main core code and the main general code received from the device succeed in re- A main code connector for transmitting a signal for opening the door of the automobile; And
The engine core code received from the device succeeding in the secondary authentication by the authentication performing unit is reunited with the engine general code, and when the engine core code and the engine general code received from the device succeed in reuniting, the security code of the engine node is normally executed And an engine code coupling unit for starting the engine.
상기 인증수행부는,
상기 메인코드 결합부에 의해 상기 자동차의 문이 개방된 후 상기 디바이스의 2차 인증을 수행하는, 코드 분리 기반 스마트 자동차 제어 장치.
8. The method of claim 7,
Wherein the authentication performing unit comprises:
And performs secondary authentication of the device after the door of the automobile is opened by the main code combining unit.
상기 메인코드 결합부에 의해 상기 자동차의 문이 개방되면 상기 자동차의 문의 위치와 개방 상태를 나타내고, 상기 엔진코드 결합부에 의해 상기 자동차의 엔진에 시동이 걸리면 엔진에 시동이 걸린 상태를 나타내는 출력부;를 더 포함하는, 코드 분리 기반 스마트 자동차 제어 장치.
8. The method of claim 7,
Wherein when the door of the automobile is opened by the main cord coupling unit, the door is opened and the door is opened. When the engine of the automobile is started by the engine code coupling unit, Further comprising: a code separation based smart car control device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180089280A KR101912665B1 (en) | 2018-07-31 | 2018-07-31 | Method for controlling smart car using code splitting and device for performing the method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180089280A KR101912665B1 (en) | 2018-07-31 | 2018-07-31 | Method for controlling smart car using code splitting and device for performing the method |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101912665B1 true KR101912665B1 (en) | 2018-10-29 |
Family
ID=64101160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180089280A KR101912665B1 (en) | 2018-07-31 | 2018-07-31 | Method for controlling smart car using code splitting and device for performing the method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101912665B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101580425B1 (en) * | 2014-11-26 | 2015-12-28 | 숭실대학교산학협력단 | User Terminal for Interworking with the Peripherals and Method for Preventing Corporate Information Leakage Using the same |
-
2018
- 2018-07-31 KR KR1020180089280A patent/KR101912665B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101580425B1 (en) * | 2014-11-26 | 2015-12-28 | 숭실대학교산학협력단 | User Terminal for Interworking with the Peripherals and Method for Preventing Corporate Information Leakage Using the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105491080B (en) | Control method for vehicle and system based on mobile terminal | |
JP6810607B2 (en) | Methods for controlling the automatic movement maneuvering of automatic vehicles | |
CN102243590B (en) | Method for being communicated between the application program and Vehicular system on external equipment | |
KR20170077328A (en) | System and method for management of vehicle | |
US20190118805A1 (en) | System and method for controlling autonomous driving vehicle | |
WO2020228442A1 (en) | Car key control method and apparatus | |
CN104057919A (en) | System For Vehicular Biometric Access And Personalization | |
KR20190041710A (en) | Speech recognition based vehicle control method | |
CN113841143A (en) | Securing firmware installation on a USB input device | |
US12001536B1 (en) | Input/output privacy tool | |
KR20210031267A (en) | Vehicle electronic device for performing authentication, mobile device for vehicle authentication, vehicle authentication system, and authentication method for vehicle | |
KR20150121892A (en) | Payment method, apparatus and sytem for recognizing information of line body service in the system | |
CN104269170A (en) | Permission voice recognition method for ERP | |
KR20150086908A (en) | Vehicle control apparatus and method using voice or gesture | |
CN107444318A (en) | Automobile rear end door control method and system | |
JP2009018656A (en) | Control system and method, fixed radio communication device and method, and portable radio communication device and method | |
JP2023541661A (en) | Application processing methods and related devices | |
CN108737090A (en) | The method and apparatus for generating and handling for dynamic vehicle secret key | |
KR101912665B1 (en) | Method for controlling smart car using code splitting and device for performing the method | |
CN105897858A (en) | System and method of facilitating communication between a mobile device and vehicle computer system | |
JP2019163676A (en) | On-vehicle authentication device, method, and program | |
CN106156573A (en) | A kind of method controlling intelligent terminal and the device of control intelligent terminal | |
WO2019080677A1 (en) | Vehicle control method and system, mobile terminal, and storage medium | |
KR101978372B1 (en) | Remote controlled car control system using a voice recognition and Method for controlling Remote controlled car having the same | |
JP2022178229A (en) | Vehicle control device, vehicle, vehicle control method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |