KR20200070450A - 차량 제어기의 보안 강화 방법 및 장치 - Google Patents

차량 제어기의 보안 강화 방법 및 장치 Download PDF

Info

Publication number
KR20200070450A
KR20200070450A KR1020180156523A KR20180156523A KR20200070450A KR 20200070450 A KR20200070450 A KR 20200070450A KR 1020180156523 A KR1020180156523 A KR 1020180156523A KR 20180156523 A KR20180156523 A KR 20180156523A KR 20200070450 A KR20200070450 A KR 20200070450A
Authority
KR
South Korea
Prior art keywords
password
vehicle controller
mode
error
boot
Prior art date
Application number
KR1020180156523A
Other languages
English (en)
Other versions
KR102176378B1 (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 KR1020180156523A priority Critical patent/KR102176378B1/ko
Priority to CN201911193602.2A priority patent/CN111284450B/zh
Priority to US16/703,504 priority patent/US11347837B2/en
Publication of KR20200070450A publication Critical patent/KR20200070450A/ko
Application granted granted Critical
Publication of KR102176378B1 publication Critical patent/KR102176378B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R25/00Fittings or systems for preventing or indicating unauthorised use or theft of vehicles
    • B60R25/20Means to switch the anti-theft system on or off
    • B60R25/23Means to switch the anti-theft system on or off using manual input of alphanumerical codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • G06F21/46Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/03Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for supply of electrical power to vehicle subsystems or for
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2105Dual mode as a secondary aspect

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 차량 제어기의 보안 강화 방법에 관한 것으로, 차량 제어기에 전원이 인가되어 부팅될 경우, 마이크로컨트롤러가 보안 부팅(Secure Boot)을 수행하는 단계; 상기 보안 부팅이 완료되면, 상기 마이크로컨트롤러가 상기 부팅이 리프로그래밍 모드를 위한 부팅인지, 아니면 상기 차량 제어기의 복수의 모드 중 상기 리프로그래밍 모드를 제외한 다른 모드를 위한 부팅인지를 체크하는 단계; 상기 부팅이 상기 차량 제어기의 복수의 모드 중 상기 리프로그래밍 모드를 제외한 다른 모드를 위한 부팅이면, 상기 마이크로컨트롤러가 패스워드 입력 단계를 수행한 후, 오류 패스워드를 생성하여 자동으로 입력하는 단계; 및 상기 오류 패스워드가 입력되면, 상기 마이크로컨트롤러가 곧바로 메인 소프트웨어(SW) 루틴으로 점프하는 단계;를 포함한다.

Description

차량 제어기의 보안 강화 방법 및 장치{METHOD AND APPARATUS FOR ENHANCING SECURITY OF VEHICLE CONTROLLER}
본 발명은 차량 제어기의 보안 강화 방법 및 장치에 관한 것으로, 보다 상세하게는 차량 제어기의 잠금이 해제될 때 까지 비밀번호를 반복해서 입력하는 방식의 해킹을 방지하기 위하여, 차량 제어기의 부팅 시 고의적인 에러 비밀번호가 자동으로 입력되게 함으로써, 해킹을 위한 비밀번호 입력 기회를 미리 차단시켜 보안성을 강화시킬 수 있도록 하는, 차량 제어기의 보안 강화 방법 및 장치에 관한 것이다.
최근 자동차 산업은 기계적인 장치보다 수많은 전자제어장치를 통해 눈부시게 발전해가고 있으며 그 수는 계속적으로 증가하고 있다. 이렇게 증가하고 있는 수많은 전자제어장치는 소프트웨어를 통해 동작하며, 차량이 보다 정확하고 안전하게 동작할 수 있도록 도움을 주고 있다.
상기와 같이 차량의 다양한 기능들을 제어하는 복수의 전자제어장치를 차량 제어기라고 통합하여 기재할 수 있다.
가령 상기 전자제어장치(즉, 차량 제어기) 중 엔진 제어기(ECU : Engine Control Unit)의 경우 차량의 심장과 같으며, 상기 엔진 제어기가 해킹될 경우 엔진 및 차량에 심각한 손상을 초래할 수 있으며 심지어는 생명을 앗아갈 수도 있다.
이로 인해 엔진 제어기의 해킹 방지의 노력은 지속되고 있으며 현재도 점점 더 강화된 엔진 제어기의 해킹 방지 기술을 적용하고 있다.
예컨대 상기 엔진 제어기의 해킹 방지를 위해 보안 기능으로서, 시큐어 디버그(Secure Debug), 플래쉬 읽기/쓰기 금지 기능 등이 포함되고 있다. 상기 보안 기능은 비밀번호를 입력하여 잠금을 해제한 후 사용할 수 있는 기능이다. 즉, 누구나 비밀번호를 알고 있을 경우, 시큐어 디버그(Secure Debug), 플래쉬 읽기/쓰기 금지 기능 등의 잠금을 해제할 수 있다.
이 때 상기 비밀번호를 알아 내는 것은 쉽지 않지만 완전히 불가능한 것은 아니다. 예컨대 엔진 제어기 부팅 후 해커가 반복해서 비밀번호를 입력하다 보면 어느 순간 잠금을 해제할 수 있게 되며, 이에 따라 해당 엔진 제어기의 해킹이 가능하게 되는 문제점이 있다. 이는 엔진 제어기에 한정되지 않고, 차량에 포함된 복수의 차량 제어기에서 발생될 수 있는 문제점이다.
본 발명의 배경기술은 대한민국 공개특허 10-2015-0064474호(2015.06.11. 공개, 차량 제어기 소프트웨어 업그레이드 방법)에 개시되어 있다.
본 발명의 일 측면에 따르면, 본 발명은 상기와 같은 문제점을 해결하기 위해 창작된 것으로서, 차량 제어기의 잠금이 해제될 때 까지 비밀번호를 반복해서 입력하는 방식의 해킹을 방지하기 위하여, 차량 제어기의 부팅 시 고의적인 에러 비밀번호가 자동으로 입력되게 함으로써, 해킹을 위한 비밀번호 입력 기회를 미리 차단시켜 보안성을 강화시킬 수 있도록 하는, 차량 제어기의 보안 강화 방법 및 장치를 제공하는 데 그 목적이 있다.
본 발명의 일 측면에 따른 차량 제어기의 보안 강화 방법은, 차량 제어기에 전원이 인가되어 부팅될 경우, 마이크로컨트롤러가 보안 부팅(Secure Boot)을 수행하는 단계; 상기 보안 부팅이 완료되면, 상기 마이크로컨트롤러가 상기 부팅이 리프로그래밍 모드를 위한 부팅인지, 아니면 상기 차량 제어기의 복수의 모드 중 상기 리프로그래밍 모드를 제외한 다른 모드를 위한 부팅인지를 체크하는 단계; 상기 부팅이 상기 차량 제어기의 복수의 모드 중 상기 리프로그래밍 모드를 제외한 다른 모드를 위한 부팅이면, 상기 마이크로컨트롤러가 패스워드 입력 단계를 수행하여, 오류 패스워드를 생성하여 자동으로 입력하는 단계; 및 상기 오류 패스워드가 입력되면, 상기 마이크로컨트롤러가 곧바로 메인 소프트웨어(SW) 루틴으로 점프하는 단계;를 포함하는 것을 특징으로 한다.
본 발명에 있어서, 상기 패스워드 입력 단계에서, 상기 패스워드는 1회만 입력할 수 있도록 구현된 것을 특징으로 한다.
본 발명에 있어서, 상기 오류 패스워드는, 미리 지정된 오류 패스워드 생성 알고리즘을 이용하여 부팅 시마다 매번 생성하거나, 어느 하나의 오류 패스워드를 미리 저장한 후, 이 저장된 오류 패스워드를 매번 입력하는 방식을 적용하는 것을 특징으로 한다.
본 발명에 있어서, 상기 리프로그래밍 모드를 제외한 다른 모드는, 상기 차량 제어기 내의 외부 메모리에 저장된 일부 변경 가능한 정보 영역에 접근할 수 있는 모드;를 포함하는 것을 특징으로 한다.
본 발명의 다른 측면에 따른 차량 제어기의 보안 강화 장치는, 차량 제어기 내의 외부 메모리에 저장된 엔진제어 프로그램을 수행하는 마이크로컨트롤러; 및 상기 마이크로컨트롤러의 내부에 포함되어 통신 및 동작 모드를 위한 펌웨어를 저장하는 내부 메모리;를 포함하고, 상기 펌웨어는, 상기 차량 제어기의 복수의 모드 중 리프로그래밍 모드를 제외한 다른 모드를 위한 부팅 시, 패스워드 입력 단계를 수행하여, 오류 패스워드를 생성하여 자동으로 입력하는 소프트웨어를 포함하는 것을 특징으로 한다.
본 발명에 있어서, 상기 마이크로컨트롤러는, 차량 제어기에 전원이 인가되어 부팅될 경우, 보안 부팅(Secure Boot)이 완료되면, 상기 부팅이 상기 차량 제어기의 복수의 모드 중 상기 리프로그래밍 모드를 제외한 다른 모드를 위한 부팅이면, 상기 내부 메모리에 저장된 펌웨어에 기초하여 패스워드 입력 단계를 수행한 후, 오류 패스워드를 생성하여 자동으로 입력하고, 상기 오류 패스워드가 입력됨에 따라, 곧바로 메인 소프트웨어(SW) 루틴으로 점프하는 것을 특징으로 한다.
본 발명에 있어서, 상기 패스워드 입력 단계에서, 상기 패스워드는 1회만 입력할 수 있도록 구현된 것을 특징으로 한다.
본 발명에 있어서, 상기 오류 패스워드는, 미리 지정된 오류 패스워드 생성 알고리즘을 이용하여 부팅 시마다 매번 생성하거나, 어느 하나의 오류 패스워드를 미리 저장한 후, 이 저장된 오류 패스워드를 매번 입력하는 방식을 적용하는 것을 특징으로 한다.
본 발명에 있어서, 상기 리프로그래밍 모드를 제외한 다른 모드는, 상기 차량 제어기 내의 외부 메모리에 저장된 일부 변경 가능한 정보 영역에 접근할 수 있는 모드;를 포함하는 것을 특징으로 한다.
본 발명의 일 측면에 따르면, 본 발명은 차량 제어기의 잠금이 해제될 때 까지 비밀번호를 반복해서 입력하는 방식의 해킹을 방지하기 위하여, 차량 제어기의 부팅 시 고의적인 에러 비밀번호가 자동으로 입력되게 함으로써, 해킹을 위한 비밀번호 입력 기회를 미리 차단시켜 보안성을 강화시킬 수 있도록 한다.
도 1은 본 발명의 일 실시예에 관련된 차량 제어기의 구성을 개략적으로 보인 예시도.
도 2는 본 발명의 일 실시예에 따른 차량 제어기의 보안 강화 방법을 설명하기 위한 흐름도.
이하, 첨부된 도면을 참조하여 본 발명에 따른 차량 제어기의 보안 강화 방법의 일 실시예를 설명한다.
이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로, 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 실시예에 관련된 차량 제어기의 구성을 개략적으로 보인 예시도이다.
도 1에 도시된 바와 같이, 차량 제어기(100)는 마이크로컨트롤러(110)와 외부 메모리(130)(예 : 플래시 EPROM)을 내장하고 있다.
상기 마이크로컨트롤러(110)는 내부에 내부 메모리(120)를 포함하고 있다.
상기 외부 메모리(130)는 특정 엔진제어 프로그램을 저장한다.
상기 마이크로컨트롤러(110)의 내부 메모리(120)에는 상기 외부 메모리(130)에 특정 엔진제어 프로그램을 저장(또는 업데이트)할 때, 통신 단자(또는 통신 포트)(140)를 통해 외부의 진단기(미도시)와의 통신을 수행하기 위한 통신 프로그램, 프로그래밍 모드, 및 부팅 동작 모드와 관련된 복수의 코드(또는 펌웨어)가 저장되어 있다.
상기 통신 단자(또는 통신 포트)(140)는 외부의 진단기(미도시)나 리프로그래밍 장치(미도시)를 연결할 수 있다.
상기 마이크로컨트롤러(110)와 외부 메모리(130)는 어드레스 버스와 데이터 버스를 통해 서로 연결되며, 상기 외부 메모리(130)는 상기 차량 제어기(100)의 내부에 고정 설치된다.
상기 내부 메모리(120)에 저장되는 코드(또는 펌웨어)는 상기 차량 제어기(100)의 최초 생산 단계(또는 공장 생산 단계)에서 저장된다.
본 발명에 따른 실시예는 상기 내부 메모리(120)에 저장되는 코드(또는 펌웨어)에 관련된 것이다.
참고로 상기 차량 제어기(100)는 복수의 동작 모드(예 : 리프로그래밍 모드, 노말(Normal) 모드 등)를 포함하고 있으며, 종래에는 상기 복수의 동작 모드 중 리프로래밍 모드에 대해서만 보안 인증 후 리프로그래밍이 가능하도록 되어 있다.
따라서 종래에 해커는 상기 엔진 제어부(100)의 복수의 동작 모드 중 상기 리프로그래밍 모드를 제외한 다른 모드(예 : 노말 모드 등)에 접근하여, 상기 외부 메모리(130)에 저장된 일부 변경 가능한 정보 영역에 대한 해킹(예 : 설정값 변경, 초기값 변경, 보정값 변경 등)을 수행할 수 있었다.
하지만 기존에는 상기 엔진 제어부(100)의 복수의 동작 모드 중 상기 리프로그래밍 모드를 제외한 다른 모드(예 : 노말 모드 등)에 대한 해킹을 방지할 수 있는 방법이 없었다.
이에 따라 본 실시예에서는 상기 내부 메모리(120)에 저장되는 코드(또는 펌웨어)를 개선함으로써, 상기 외부 메모리(130)에 저장된 일부 변경 가능한 정보 영역에 대한 해커의 접근 자체를 차단할 수 있도록 하는 방법을 제공하는 것이다.
이하 도 2를 참조하여, 본 실시예에 따라 상기 내부 메모리(120)에 저장되는 코드(또는 펌웨어)에 기초한 상기 마이크로컨트롤러(110)의 동작에 대해서 설명한다.
도 2는 본 발명의 일 실시예에 따른 차량 제어기의 보안 강화 방법을 설명하기 위한 흐름도이다.
도 2를 참조하면, 차량 제어기(100)에 전원이 인가되어 부팅될 경우(S101), 마이크로컨트롤러(110)는 상기 내부 메모리(120)에 저장되는 코드(또는 펌웨어)에 기초하여 보안 부팅(Secure Boot)을 수행한다(S102).
이에 따라 상기 보안 부팅(Secure Boot)이 완료되면(S103의 예), 상기 마이크로컨트롤러(110)는 상기 부팅이 리프로그래밍 모드를 위한 부팅인지, 아니면 그 이외의 모드(예 : 노말 모드)를 위한 부팅인지를 체크한다(즉, 부팅 모드를 체크한다)(S104).
예컨대 상기 차량 제어기(100)는 부팅 시 이전 종료시에 설정된 부팅 모드(예 : 리프로그래밍을 위한 부팅, 변경된 설정값 적용을 위한 부팅, 설정값 변경을 위한 부팅 등)에 따라 해당하는 모드로 부팅하게 되어 있다.
이에 따라 상기 부팅 모드를 체크한 결과 리프로그래밍을 위한 부팅 모드이면(S104의 예), 기존에 이미 보안 기능이 적용되어 있는 리프로그래밍 과정을 수행한다(S105). 따라서 본 실시예에서는 리프로그래밍 과정의 보안 기능(또는 리프로그래밍을 위한 보안 동작)에 대한 설명은 생략하기로 한다.
하지만 상기 부팅 모드를 체크한 결과 리프로그래밍을 위한 부팅 모드(즉, 리프로그래밍 모드)가 아니면(S104의 아니면)(예 : 노말 모드이면), 패스워드(또는 보안키) 입력 단계를 수행한 후, 오류(잘못된) 패스워드(또는 보안키)를 생성하여 자동으로 입력한다(S106).
이 때 상기 오류 패스워드는 패스워드 생성 알고리즘(미도시)을 이용하여 부팅 시마다 매번 생성하거나, 어느 하나의 오류 패스워드를 미리 저장한 후, 이 저장된 오류 패스워드를 매번 입력하는 방식을 적용할 수 있다.
참고로 기존에는 리프로그래밍 모드로 진입할 경우에만 별도의 보안 기능이 적용되었을 뿐, 상기 엔진 제어부(100)의 복수의 동작 모드 중 상기 리프로그래밍 모드를 제외한 다른 모드(예 : 노말 모드 등 상기 외부 메모리에 저장된 일부 변경 가능한 정보 영역에 접근할 수 있는 모드)에 대하여 해킹 방지를 위한 보안 기능이 적용되지 않았다. 그러나 본 실시예에서는 상기 리프로그래밍 모드를 제외한 다른 모드(예 : 노말 모드 등 상기 외부 메모리에 저장된 일부 변경 가능한 정보 영역에 접근할 수 있는 모드)에 접근하기 위해서 패스워드(또는 보안키)를 입력하게 하는 것이다.
그런데 상기와 같이 패스워드(또는 보안키)를 입력하는 방식은, 기존의 해킹 방식처럼 반복해서 패드워드를 입력하여 잠금을 해제(또는 보안 해제)할 수 있으므로, 본 실시예에서는 부팅 후 1회만 패스워드(또는 보안키)를 입력할 수 있는 기회를 주고, 그 1회의 패스워드(또는 보안키)를 입력할 수 있는 기회마저 제거(즉, 고의적으로 오류(잘못된) 패스워드(또는 보안키)를 생성하여 자동으로 입력하여 해커에 의한 패스워드 입력 기회를 제거)함으로써, 해커에 의한(또는 해커의 패스워드 입력에 의한) 잠금 해제(또는 보안 해제)를 불가하게 하는 것이다(S107).
상기와 같이 패스워드(또는 보안키) 입력 단계에서 오류(잘못된) 패스워드(또는 보안키)를 생성하여 자동으로 입력함으로써, 이후로 노말 모드 등 상기 외부 메모리(130)에 저장된 일부 변경 가능한 정보 영역에 접근을 방지하면서 곧바로 메인 소프트웨어(SW) 루틴으로 점프시킨다(S108).
상기와 같이 본 실시예는 차량 제어기(100)의 잠금(또는 보안)이 해제될 때 까지 비밀번호를 반복해서 입력하는 방식의 해킹을 방지하기 위하여, 차량 제어기(100)의 부팅 시 고의적인 에러 비밀번호가 자동으로 입력되게 함으로써, 해킹을 위한 비밀번호 입력 기회를 미리 차단시켜 보안성을 강화시킬 수 있도록 한다.
상기와 같이 본 실시예에서 상기 차량 제어기(100)는 엔진 제어기(ECU)를 포함하며, 또한 차량의 다양한 기능들을 제어하는 복수의 전자제어장치(ECU)를 포함하는 개념이다.
이상으로 본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 기술적 보호범위는 아래의 특허청구범위에 의해서 정하여져야 할 것이다. 또한 본 명세서에서 설명된 구현은, 예컨대, 방법 또는 프로세스, 장치, 소프트웨어 프로그램, 데이터 스트림 또는 신호로 구현될 수 있다. 단일 형태의 구현의 맥락에서만 논의(예컨대, 방법으로서만 논의)되었더라도, 논의된 특징의 구현은 또한 다른 형태(예컨대, 장치 또는 프로그램)로도 구현될 수 있다. 장치는 적절한 하드웨어, 소프트웨어 및 펌웨어 등으로 구현될 수 있다. 방법은, 예컨대, 컴퓨터, 마이크로프로세서, 집적 회로 또는 프로그래밍가능한 로직 디바이스 등을 포함하는 프로세싱 디바이스를 일반적으로 지칭하는 프로세서 등과 같은 장치에서 구현될 수 있다. 프로세서는 또한 최종-사용자 사이에 정보의 통신을 용이하게 하는 컴퓨터, 셀 폰, 휴대용/개인용 정보 단말기(personal digital assistant: "PDA") 및 다른 디바이스 등과 같은 통신 디바이스를 포함한다.
100 : 차량 제어기
110 : 마이크로컨트롤러
120 : 내부 메모리
130 : 외부 메모리

Claims (9)

  1. 차량 제어기에 전원이 인가되어 부팅될 경우, 마이크로컨트롤러가 보안 부팅(Secure Boot)을 수행하는 단계;
    상기 보안 부팅이 완료되면, 상기 마이크로컨트롤러가 상기 부팅이 리프로그래밍 모드를 위한 부팅인지, 아니면 상기 차량 제어기의 복수의 모드 중 상기 리프로그래밍 모드를 제외한 다른 모드를 위한 부팅인지를 체크하는 단계;
    상기 부팅이 상기 차량 제어기의 복수의 모드 중 상기 리프로그래밍 모드를 제외한 다른 모드를 위한 부팅이면, 상기 마이크로컨트롤러가 패스워드 입력 단계를 수행하여, 오류 패스워드를 생성하여 자동으로 입력하는 단계; 및
    상기 오류 패스워드가 입력되면, 상기 마이크로컨트롤러가 곧바로 메인 소프트웨어(SW) 루틴으로 점프하는 단계;를 포함하는 것을 특징으로 하는 차량 제어기의 보안 강화 방법.
  2. 제 1항에 있어서, 상기 패스워드 입력 단계에서,
    상기 패스워드는 1회만 입력할 수 있도록 구현된 것을 특징으로 하는 차량 제어기의 보안 강화 방법.
  3. 제 1항에 있어서, 상기 오류 패스워드는,
    미리 지정된 오류 패스워드 생성 알고리즘을 이용하여 부팅 시마다 매번 생성하거나, 어느 하나의 오류 패스워드를 미리 저장한 후, 이 저장된 오류 패스워드를 매번 입력하는 방식을 적용하는 것을 특징으로 하는 차량 제어기의 보안 강화 방법.
  4. 제 1항에 있어서, 상기 리프로그래밍 모드를 제외한 다른 모드는,
    상기 차량 제어기 내의 외부 메모리에 저장된 일부 변경 가능한 정보 영역에 접근할 수 있는 모드;를 포함하는 것을 특징으로 하는 차량 제어기의 보안 강화 방법.
  5. 차량 제어기 내의 외부 메모리에 저장된 엔진제어 프로그램을 수행하는 마이크로컨트롤러; 및
    상기 마이크로컨트롤러의 내부에 포함되어 통신 및 동작 모드를 위한 펌웨어를 저장하는 내부 메모리;를 포함하고,
    상기 펌웨어는,
    상기 차량 제어기의 복수의 모드 중 리프로그래밍 모드를 제외한 다른 모드를 위한 부팅 시, 패스워드 입력 단계를 수행하여, 오류 패스워드를 생성하여 자동으로 입력하는 소프트웨어를 포함하는 것을 특징으로 하는 차량 제어기의 보안 강화 장치.
  6. 제 5항에 있어서, 상기 마이크로컨트롤러는,
    차량 제어기에 전원이 인가되어 부팅될 경우, 보안 부팅(Secure Boot)이 완료되면, 상기 부팅이 상기 차량 제어기의 복수의 모드 중 상기 리프로그래밍 모드를 제외한 다른 모드를 위한 부팅이면,
    상기 내부 메모리에 저장된 펌웨어에 기초하여 패스워드 입력 단계를 수행한 후, 오류 패스워드를 생성하여 자동으로 입력하고, 상기 오류 패스워드가 입력됨에 따라, 곧바로 메인 소프트웨어(SW) 루틴으로 점프하는 것을 특징으로 하는 차량 제어기의 보안 강화 장치.
  7. 제 5항에 있어서, 상기 패스워드 입력 단계에서,
    상기 패스워드는 1회만 입력할 수 있도록 구현된 것을 특징으로 하는 차량 제어기의 보안 강화 장치.
  8. 제 5항에 있어서, 상기 오류 패스워드는,
    미리 지정된 오류 패스워드 생성 알고리즘을 이용하여 부팅 시마다 매번 생성하거나, 어느 하나의 오류 패스워드를 미리 저장한 후, 이 저장된 오류 패스워드를 매번 입력하는 방식을 적용하는 것을 특징으로 하는 차량 제어기의 보안 강화 장치.
  9. 제 5항에 있어서, 상기 리프로그래밍 모드를 제외한 다른 모드는,
    상기 차량 제어기 내의 외부 메모리에 저장된 일부 변경 가능한 정보 영역에 접근할 수 있는 모드;를 포함하는 것을 특징으로 하는 차량 제어기의 보안 강화 장치.
KR1020180156523A 2018-12-07 2018-12-07 차량 제어기의 보안 강화 방법 및 장치 KR102176378B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020180156523A KR102176378B1 (ko) 2018-12-07 2018-12-07 차량 제어기의 보안 강화 방법 및 장치
CN201911193602.2A CN111284450B (zh) 2018-12-07 2019-11-28 用于增强车辆控制器的安全性的方法和设备
US16/703,504 US11347837B2 (en) 2018-12-07 2019-12-04 Method and apparatus for enhancing security of vehicle controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180156523A KR102176378B1 (ko) 2018-12-07 2018-12-07 차량 제어기의 보안 강화 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200070450A true KR20200070450A (ko) 2020-06-18
KR102176378B1 KR102176378B1 (ko) 2020-11-10

Family

ID=70970763

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180156523A KR102176378B1 (ko) 2018-12-07 2018-12-07 차량 제어기의 보안 강화 방법 및 장치

Country Status (3)

Country Link
US (1) US11347837B2 (ko)
KR (1) KR102176378B1 (ko)
CN (1) CN111284450B (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019206302A1 (de) * 2019-05-02 2020-11-05 Continental Automotive Gmbh Verfahren und Vorrichtung zum Übertragen eines Boot-Codes mit verbesserter Datensicherheit
KR20210091585A (ko) * 2020-01-14 2021-07-22 삼성전자주식회사 사용자 인증에 기반한 펌웨어 업데이트를 수행하는 전자 장치 및 이의 동작방법
CN113043970B (zh) * 2021-03-30 2023-03-14 重庆长安汽车股份有限公司 一种整车负载管理系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130006963A (ko) * 2011-06-28 2013-01-18 주식회사 현대케피코 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법
KR20150065003A (ko) * 2013-12-04 2015-06-12 현대자동차주식회사 차량 운행 기록 조작 방지 장치
KR20160092496A (ko) * 2015-01-27 2016-08-04 르네사스 일렉트로닉스 가부시키가이샤 통신 장치, lsi, 프로그램 및 통신 시스템
KR101806719B1 (ko) * 2016-07-04 2017-12-08 현대오트론 주식회사 보안 부팅에 따른 메모리 영역 자동 설정이 가능한 전자 제어유닛 및 이를 이용한 보안 부팅 방법
KR20180049523A (ko) * 2016-11-03 2018-05-11 현대오토에버 주식회사 Mac을 포함하는 can 메시지 송수신을 위한 방법 및 시스템

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW575804B (en) * 2002-06-25 2004-02-11 Mitac Int Corp Automatic booting test error code collecting and recording device and method before initiating computer system
KR20130089928A (ko) * 2012-01-13 2013-08-13 이재호 가맹점 할인 서비스 제공 방법 및 시스템
CN103870744B (zh) * 2012-12-13 2018-04-27 联想(北京)有限公司 一种验证密码的方法及电子设备
KR20150064474A (ko) 2013-12-03 2015-06-11 현대자동차주식회사 차량 제어기 소프트웨어 업그레이드 방법
CN103971048B (zh) * 2014-04-30 2017-12-15 宇龙计算机通信科技(深圳)有限公司 一种输入密码的方法及其密码输入系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130006963A (ko) * 2011-06-28 2013-01-18 주식회사 현대케피코 마이크로컨트롤러 소프트웨어의 리프로그래밍 방법
KR20150065003A (ko) * 2013-12-04 2015-06-12 현대자동차주식회사 차량 운행 기록 조작 방지 장치
KR20160092496A (ko) * 2015-01-27 2016-08-04 르네사스 일렉트로닉스 가부시키가이샤 통신 장치, lsi, 프로그램 및 통신 시스템
KR101806719B1 (ko) * 2016-07-04 2017-12-08 현대오트론 주식회사 보안 부팅에 따른 메모리 영역 자동 설정이 가능한 전자 제어유닛 및 이를 이용한 보안 부팅 방법
KR20180049523A (ko) * 2016-11-03 2018-05-11 현대오토에버 주식회사 Mac을 포함하는 can 메시지 송수신을 위한 방법 및 시스템

Also Published As

Publication number Publication date
CN111284450B (zh) 2021-12-24
KR102176378B1 (ko) 2020-11-10
CN111284450A (zh) 2020-06-16
US11347837B2 (en) 2022-05-31
US20200184066A1 (en) 2020-06-11

Similar Documents

Publication Publication Date Title
US9589139B2 (en) Method and device for altering a unified extensible firmware interface (UEFI) secure boot process in a computing device
TWI607376B (zh) 用於處理改變依照統一可延伸韌體介面計算裝置中之系統安全資料庫及韌體儲存區請求的系統及方法
EP3028147B1 (en) Updating boot code
KR20090005390A (ko) 소프트웨어 버전 설치의 권한
US20210149681A1 (en) Secure Firmware Management with Hierarchical Boot Sequence using Last Known Good Firmware
US9262631B2 (en) Embedded device and control method thereof
KR20200070450A (ko) 차량 제어기의 보안 강화 방법 및 장치
CN110020561B (zh) 半导体装置和操作半导体装置的方法
US10885196B2 (en) Executing protected code
CN112685338A (zh) 包括安全可修补rom的半导体装置及其修补方法
CN112613011B (zh) U盘系统认证方法、装置、电子设备及存储介质
JP2017517795A (ja) 外部メモリデバイス上に存在するチップ制限命令を使用したブートシーケンス修正のためのシステムおよび方法
EP3895053B1 (en) Field replaceable touch display module
CN114253576B (zh) 双bios镜像刷新验证的方法、装置、存储介质及设备
CN117609984A (zh) 基于risc-v架构的代码校验方法及装置
CN111382433B (zh) 模块加载方法、装置、设备以及存储介质
US20230129942A1 (en) Method for locking a rewritable non-volatile memory and electronic device implementing said method
KR20230066060A (ko) 전자 장치를 부팅하는 방법
US10824767B1 (en) Force locking storage devices
CN112685754A (zh) 一种调试接口的解锁电路及解锁方法
EP3620944A1 (en) Low power embedded device using a write-once register to speed up the secure boot from sleep states of the device
CN116745765A (zh) 安全的服务中固件更新
CN115968540A (zh) 安全组件和操作方法
CN112817619A (zh) 电脑系统及其安全管理方法以及电脑软件产品
CN117852010A (zh) 应用程序引导加载方法及装置、设备、存储介质

Legal Events

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