KR20170119645A - 차량 시스템의 소프트웨어 보안 업데이트 방법 및 장치 - Google Patents

차량 시스템의 소프트웨어 보안 업데이트 방법 및 장치 Download PDF

Info

Publication number
KR20170119645A
KR20170119645A KR1020170050173A KR20170050173A KR20170119645A KR 20170119645 A KR20170119645 A KR 20170119645A KR 1020170050173 A KR1020170050173 A KR 1020170050173A KR 20170050173 A KR20170050173 A KR 20170050173A KR 20170119645 A KR20170119645 A KR 20170119645A
Authority
KR
South Korea
Prior art keywords
certificate
update
vehicle system
verification
software
Prior art date
Application number
KR1020170050173A
Other languages
English (en)
Other versions
KR101963776B1 (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 주식회사 엔지스테크널러지
Publication of KR20170119645A publication Critical patent/KR20170119645A/ko
Application granted granted Critical
Publication of KR101963776B1 publication Critical patent/KR101963776B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3265Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate chains, trees or paths; Hierarchical trust model
    • H04L67/16
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

차량 시스템의 소프트웨어 보안 업데이트 방법 및 장치를 개시한다. 일 실시예에 따른 차량 시스템의 소프트웨어 보안 업데이트 방법은, 소프트웨어 업데이트와 관련된 바이너리 데이터, 전자 인증서 및 상기 바이너리 데이터를 제공하는 주체에 의해 서명된 전자 서명을 포함하는 무선 전송(OTA: Over-The-Air) 업데이트 패키지를 수신하는 단계와, 차량 시스템의 검증 모듈이, 보안된 키 스토어(Key Store)에 저장된 인증서 체인을 이용하여 상기 전자 인증서에 포함된 공개 키(Public Key) 자체의 무결성을 검증하여, 상기 전자 인증서를 검증하는 단계와, 상기 전자 인증서의 검증이 성공하면, 상기 공개 키를 이용하여 상기 전자 서명에 대한 해쉬 값을 상기 바이너리 데이터에 대한 해쉬 값과 비교하여 상기 업데이트 패키지를 검증하는 단계 및 상기 업데이트 패키지에 대한 검증이 성공하면, 상기 바이너리 데이터를 이용하여 소프트웨어 업데이트를 수행하는 단계를 포함한다.

Description

차량 시스템의 소프트웨어 보안 업데이트 방법 및 장치{METHOD AND APPARATUS FOR SECURE UPDATES OF SOFTWARE IN VEHICLE ELECTRIC SYSTEM}
기술 분야는 차량 시스템의 소프트웨어 업데이트에 관한 것으로서, 무선 전송(OTA: Over-The-Air) 업데이트를 수행하는 차량 시스템의 소프트웨어 보안 업데이트 방법 및 장치에 관한 것이다.
최근 차량 시스템이 통신 네트워크와 연결되면서, 차량내에 설치되는 소프트웨어에 대한 데이터의 보안이 중요한 이슈가 되고 있다.
예를 들어, 스마트카에 설치된 소프트웨어를 무선 통신으로 업그레이드 하는 경우, 스마트폰과 같이 OTA(Over-The-Air) 방식으로 업그레이드 하는 방안이 논의되고 있다. 이때, 무선을 통해 전송되는 데이터의 무결성을 검증하기 위해 데이터 보안이 필요할 수 있다.
예를 들어, 차량에 구비되는 복수의 ECU(Electronic Control Units)들에 설치되는 각종 소프트에어의 업데이트가 OTA(Over-The-Air) 방식으로 수행될 수 있다.
일반적으로, 데이터의 무결성 검증(verify)은 공개키(public key) 구조 기반으로 수행될 수 있다.
공개 키 기반의 검증은 수신 받은 키와 하드웨어 모듈 혹은 시스템 내의 키저장소에 저장된 키와 비교하는 방식으로 진행될 수 있다.
이때, 키 저장소가 노출되거나 조작된 경우 데이터 보안이 문제될 수 있다.
차량에 구비되는 복수의 ECU(Electronic Control Units)들에 설치되는 각종 소프트웨어의 업데이트를 OTA(Over-The-Air) 방식으로 업그레이드 하는 경우, 보안을 유지하면서도 추가적인 정보 작업을 최소화하며, 업데이트를 효율적으로 수행하기 위한 방법 및 장치를 제공하고자 한다.
일 실시예에 따른 차량 시스템의 소프트웨어 보안 업데이트 방법은, 소프트웨어 업데이트와 관련된 바이너리 데이터, 전자 인증서 및 상기 바이너리 데이터를 제공하는 주체에 의해 서명된 전자 서명을 포함하는 무선 전송(OTA: Over-The-Air) 업데이트 패키지를 수신하는 단계와, 차량 시스템의 검증 모듈이, 보안된 키 스토어(Key Store)에 저장된 인증서 체인을 이용하여 상기 전자 인증서에 포함된 공개 키(Public Key) 자체의 무결성을 검증하여, 상기 전자 인증서를 검증하는 단계와, 상기 전자 인증서의 검증이 성공하면, 상기 공개 키를 이용하여 상기 전자 서명에 대한 해쉬 값을 상기 바이너리 데이터에 대한 해쉬 값과 비교하여 상기 업데이트 패키지를 검증하는 단계 및 상기 업데이트 패키지에 대한 검증이 성공하면, 상기 바이너리 데이터를 이용하여 소프트웨어 업데이트를 수행하는 단계를 포함한다.
일 실시예에 따른 차량 시스템의 소프트웨어 보안 업데이트 장치는, 소프트웨어 업데이트와 관련된 바이너리 데이터, 전자 인증서 및 상기 바이너리 데이터를 제공하는 주체에 의해 서명된 전자 서명을 포함하는 무선 전송(OTA: Over-The-Air) 업데이트 패키지를 수신하는 수신부와, 보안된 키 스토어(Key Store)에 저장된 인증서 체인을 이용하여 상기 전자 인증서에 포함된 공개 키(Public Key) 자체의 무결성을 검증하여, 상기 전자 인증서를 검증하는 인증서 검증부와, 상기 전자 인증서의 검증이 성공하면, 상기 공개 키를 이용하여 상기 전자 서명에 대한 해쉬 값을 상기 바이너리 데이터에 대한 해쉬 값과 비교하여 상기 업데이트 패키지를 검증하는 업데이트 패키지 검증부 및 상기 업데이트 패키지에 대한 검증이 성공하면, 상기 바이너리 데이터를 이용하여 소프트웨어 업데이트를 수행하는 업데이트 실행부를 포함한다.
차량에 구비되는 복수의 ECU(Electronic Control Units)들에 설치되는 각종 소프트웨어의 업데이트를 OTA(Over-The-Air) 방식으로 업그레이드 하는 경우, 보안을 유지하면서도 추가적인 정보 작업을 최소화하며, 업데이트를 효율적으로 수행할 수 있다.
또한, PKI 구조(공개키 기반의 구조)에서 보안을 유지하며 시스템 설치 및 업데이트를 진행하기 위한 전달된 OTA 업데이트 데이터에 대한 무결성을 검증 시, 통신 비용을 최소화하며 데이터를 검증할 수 있다.
도 1은 일 실시예에 따른 차량 시스템의 소프트웨어 보안 업데이트 장치를 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 키 스토어의 구조를 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 차량 시스템의 소프트웨어 보안 업데이트 방법을 나타내는 흐름도이다.
도 4는 일 실시예에 따른 인증서 체인 검증 방법을 설명하기 위한 흐름도이다.
도 5는 다른 일실시예에 따른 인증서 체인 검증 방법을 설명하기 위한 흐름도이다.
이하 첨부 도면들 및 첨부 도면들에 기재된 내용들을 참조하여 본 발명의 실시예를 상세하게 설명하지만, 본 발명이 실시예에 의해 제한되거나 한정되는 것은 아니다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
본 명세서에서 사용되는 "실시예", "예", "측면", "예시" 등은 기술된 임의의 양상(aspect) 또는 설계가 다른 양상 또는 설계들보다 양호하다거나, 이점이 있는 것으로 해석되어야 하는 것은 아니다.
또한, '또는' 이라는 용어는 배타적 논리합 'exclusive or' 이기보다는 포함적인 논리합 'inclusive or' 를 의미한다. 즉, 달리 언급되지 않는 한 또는 문맥으로부터 명확하지 않는 한, 'x가 a 또는 b를 이용한다' 라는 표현은 포함적인 자연 순열들(natural inclusive permutations) 중 어느 하나를 의미한다.
또한, 본 명세서 및 청구항들에서 사용되는 단수 표현("a" 또는 "an")은, 달리 언급하지 않는 한 또는 단수 형태에 관한 것이라고 문맥으로부터 명확하지 않는 한, 일반적으로 "하나 이상"을 의미하는 것으로 해석되어야 한다.
또한, 본 명세서 및 청구항들에서 사용되는 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
한편, 본 발명을 설명함에 있어서, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는, 그 상세한 설명을 생략할 것이다. 그리고, 본 명세서에서 사용되는 용어(terminology)들은 본 발명의 실시예를 적절히 표현하기 위해 사용된 용어들로서, 이는 사용자, 운용자의 의도 또는 본 발명이 속하는 분야의 관례 등에 따라 달라질 수 있다. 따라서, 본 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 일 실시예에 따른 차량 시스템의 소프트웨어 보안 업데이트 장치를 설명하기 위한 도면이다.
도 1을 참조하면, 차량 시스템의 소프트웨어 보안 업데이트 장치는 수신부(120), 차량 시스템의 검증 모듈(130), 키 스토어(140) 및 업데이트 수행부(160)를 포함한다.
수신부(120)는 무선 전송(OTA: Over-The-Air) 업데이트 패키지(110)를 원격의 서버(도시 되지 않음)로부터 수신한다.
업데이트 패키지(110)는 각종 업데이트 이미지들(111), 공개 키를 포함하는 전자 인증서(113) 및 전자 서명(115)를 포함할 수 있다.
서버는 업데이트 패키지(110)의 생성시에 각종 업데이트 이미지들(111)의 해쉬 값을 구하고, 업데이트 이미지들(111)의 해쉬 값을 공개 키에 대응하는 개인 키로 암호화하여 전자 서명(115)를 생성할 수 있다.
즉, 소프트웨어 업데이트 데이터들에 대한 signature 계산시 개별적인 데이터들이 아니라, 업데이트 패키지 데이터 내에 존재하는 하나 이상의 전체 소프트웨어 업데이트 데이터 바이너리들에 대한 해쉬 값이 계산된 후 전자 서명이 생성될 수 있다.
각종 업데이트 이미지들(111)은 예를 들어, 차량 시스템 운용 체제에 대한 업데이트 이미지(업데이트 이미지 1), 메인 컨트롤 유닛 시스템의 업데이트 이미지(업데이트 이미지2), 및 복수의 ECU(Electronic Control Units)들 각각의 업데이트 이미지(업데이트 이미지3)을 포함할 수 있다.
이때, 업데이트 이미지들(111)은 소프트웨어 업데이트와 관련된 바이너리 데이터리 칭할 수 있다.
따라서, 전자 서명(115)은 소프트웨어 업데이트와 관련된 바이너리 데이터를 제공하는 주체에 의해 서명된 전자 서명이라 칭할 수 있다.
예를 들어, 소프트웨어 업데이트와 관련된 바이너리 데이터는 차량 시스템에 설치된 전자 장치의 관리를 수행하는 업체를 통해 제공될 수 있고, 전자 인증서의 발급 주체는 해당 업체일 수 있다.
이때, 전자 인증서(113)에는 소프트웨어 업데이트와 관련된 바이너리 데이터를 제공하는 주체가 표시될 수 있다. 또한, 전자 인증서에 포함되는 공개 키는 발급 주체에 의해 차량 시스템에 발급된 후 키 스토어(140)에 저장될 수 있다.
정리하면, 업데이트 패키지(110)는 소프트웨어 업데이트와 관련된 바이너리 데이터(111), 전자 인증서(113) 및 바이너리 데이터를 제공하는 주체에 의해 서명된 전자 서명(115)를 포함한다.
차량 시스템의 검증 모듈(130)은 보안된 키 스토어(Key Store)(140)에 저장된 인증서 체인을 이용하여 상기 전자 인증서에 포함된 공개 키(Public Key) 자체의 무결성을 검증하여, 상기 전자 인증서를 검증한다.
이때, 검증 모듈(130)은 End Device라 할 수 있는 차량 시스템에 발급되어 키 스토어(140)에 저장되어 있는 공개 키와 업데이트 패키지의 전자 인증서에 포함된 공개 키의 무결성을 각각 검증할 수 있고, 특히 업데이트 패키지의 전자 인증서에 포함된 공개 키 자체의 무결성을 검증할 수 있다.
또한, 업데이트 패키지의 전자 인증서에 대한 해쉬 값(제1 해쉬 값)을 계산하고, 전자 인증서 자체의 서명을 복호화하여 얻은 해쉬 값(제2 해쉬 값)을 계산하고, 키 스토어(140)에 저장되어 있는 공개 키로 전자 인증서 자체의 서명을 복호화하여 얻은 해쉬 값(제3 해쉬 값)을 계산한 후 제1 해쉬 값, 제2 해쉬 값, 제3 해쉬 값을 비교하여 전자 인증서에 포함된 공개 키와 차량 시스템에 저장된 공개 키의 동일성을 비교할 수 도 있다.
인증서 체인을 이용하여 상기 전자 인증서에 포함된 공개 키 자체의 무결성을 검증하는 방식은 키 스토어(140)에 저장된 중간 발급자 인증서(Intermediate Certification)으로 공개 키의 무결성을 확인하고, 중간 발급자 인증서는 최상위 발급자 인증서(Root Certification)로 인증하는 체인 검증 방식이 이용될 수 있다.
이때, 하위 발급자 인증서, 중간 발급자 인증서 및 최상위 발급자 인증서 각각각은 차량 시스템 내의 키 스토어(140)에 저장되어 있을 수 있기 때문에, 체인 검증을 위해 외부 서버와 인증 과정을 거치는 과정을 최소화 할 수 있다.
또한, 하위 발급자 인증서, 중간 발급자 인증서 및 최상위 발급자 인증서 중 최상위 발급자 인증서 만 원격지 서버에 저장되어 있을 수 있고, 최상위 발급자 인증서를 통해 중간 발급자 인증서를 검증하는 과정만 온라인 인증서 상태 프로토콜(OCSP: Online Certificate Status Protocol)을 이용하여 수행할 수 도 있다.
차량 시스템의 검증 모듈(130)은 전자 인증서의 검증이 성공하면, 상기 공개 키를 이용하여 상기 전자 서명에 대한 해쉬 값을 상기 바이너리 데이터에 대한 해쉬 값과 비교하여 상기 업데이트 패키지를 검증한다.
이때, 차량 시스템의 검증 모듈(130)은 인증서 검증부(131) 및 업데이트 패키지 검증부(133)를 포함할 수 있다.
인증서 검증부(131)는 인증서 체인을 이용하여 전자 인증서에 포함된 공개 키(Public Key) 자체의 무결성을 검증할 수 있다.
업데이트 패키지 검증부(133)는 공개 키를 이용하여 상기 전자 서명에 대한 해쉬 값을 상기 바이너리 데이터에 대한 해쉬 값과 비교하여 상기 업데이트 패키지를 검증한다.
다시 말해, 업데이트 패키지 검증부(133)는 업데이트 패키지에 포함된 바이너리 데이터(111)에 대한 해쉬 값(제4 해쉬 값)을 계산하고, 전자 인증서에 포함된 공개 키로 전자 서명을 복호화하여 해쉬 값(제5 해쉬 값)을 계산한 후, 제4 해쉬 값과 제5 해쉬 값을 비교함으로써, 업데이트 패키지를 검증할 수 있다.
키 스토어(140)는 하드웨어 적 또는 소프트웨어적으로 보안된 영역으로 인증서 체인에 포함되는 하위 발급자 인증서, 중간 발급자 인증서 및 최상위 발급자 인증서 각각을 저장하기 위한 복수의 개별 키 스토어를 포함할 수 있다.
이때, 하위 발급자 인증서는 전자 장치의 관리를 수행하는 업체를 통해 발급된 OEM Device Certification이라 칭할 수 있다.
업데이트 수행부(160)는 업데이트 패키지에 대한 검증이 성공하면, 상기 바이너리 데이터를 이용하여 소프트웨어 업데이트를 수행한다.
이때, 업데이트 수행부(160)는 델타 업데이트를 수행할 수 있다.
여기서, 델타 업데이트는 대상 기기의 원본 이미지를 업데이트하기 위한 풀 사이즈의 업데이트 이미지를 전송하는 것이 아니라, 차분을 전송함으로써, 저용량으로 대상 기기를 업데이트하는 기술이다.
예를 들어, 업데이트 이미지 3은 복수 개의 델타 파일 및 상기 복수 개의 델타 파일에 참조되는 델타 헤더를 포함할 수 있다.
업데이트 수행부(160)는 델타 헤더를 참조하여 차량 내의 각각의 전자제어유닛으로부터 각각의 원본 이미지를 수신한다.
업데이트 수행부(160)는 상기 수신된 복수 개의 델타 파일로부터 상기 수신된 각각의 원본 이미지에 대응하는 각각의 델타 블록을 추출하고, 상기 추출된 각각의 델타 블록의 위치 정보를 참조하여 상기 수신된 각각의 원본 이미지에 대한 각각의 업데이트 이미지를 생성하고, 각각의 업데이트 이미지에 대응하는 상기 각각의 전자제어유닛에 대한 업데이트를 제공할 수 있다.
이때, 업데이트 수행부(160)는 업데이트 순서를 선정하고, 상기 선정된 업데이트 순서에 따라 상기 각각의 업데이트 이미지에 대응하는 상기 전자제어유닛에 대한 업데이트를 제공하되, 용량을 많이 차지하는 원본 이미지의 순서로 업데이트를 진행하고, 전자제어유닛으로부터 업데이트 완료 메시지를 수신하면 관련된 이미지를 삭제할 수 있다.
이때, 업데이트 이미지 3을 생성하는 관리 서버는 압축 효율을 고려한 압축 알고리즘에 기초하여 상기 원본 이미지 및 상기 업데이트 이미지에 대한 블록의 변화가 발생된 지점에 대응하는 상기 각각의 델타 블록을 추출하되, 압축된 업데이트 이미지에서 압축된 원본 이미지의 차를 연산하는 선 압축 알고리즘, 업데이트 이미지에서 원본 이미지의 차를 연산하고 연산된 차의 값을 압축하는 후 압축 알고리즘 및 상기 선 압축 알고리즘 및 후 압축 알고리즘 중 적어도 하나에 의해 생성된 후보 델타 블록을 한번 더 압축하는 이중 압축 알고리즘을 포함하는 압축 알고리즘에 기초하여 복수의 후보 델타 블록을 생성하고, 후보 델타 블록 중 가장 적은 데이터 용량을 갖는 델타 블록을 선택할 수 있다.
도 2는 일 실시예에 따른 키 스토어의 구조를 설명하기 위한 도면이다.
도 2를 참조하면, 일 실시예에 따른 키 스토어(140)는 식별 코드로 분류되는 복수의 개별 키 스토어들(141, 143, 145)를 포함할 수 있다.
이때, 식별 코드는 복수의 개별 키 스토어를 구분하기 위한 정보 또는 복수의 개별 키 스토어의 위치를 나타내는 정보로 이용될 수 있다.
예를 들어, 도 1의 검증 모듈(130)은 전자 인증서 검증 과정이 시작되는 런타임에 상기 차량 시스템의 검증 모듈과 분리된 키스토어 관리부(도시 되지 않음)로 식별 코드를 요청하고, 키 스토어 관리부로부터 수신된 식별 코드를 이용하여 해당 개별 키 스토어에 접근할 수 있다.
키 스토어 관리부는 식별 코드 전달 시 타임 스탬프를 기록함으로써, 식별 코드는 소정 시간 동안만 유효하도록 식별 코드를 관리할 수 있다.
예를 들어, 검증 모듈은 전자 인증서에 포함된 공개 키와 하위 발급자 인증서를 비교하기 위해, 식별 코드를 개별 키 스토어(141)에 저장된 값과 비교 하고, 식별 코드가 동일한 경우에만 인증서 비교를 수행할 수 도 있다.
검증 모듈(130)은, 하위 발급자 인증서를 이용한 검증이 완료된 후 키 스토어 관리부로부터 수신된 중간 발급자 인증서가 저장된 개별 키 스토어(143)에 대한 식별 코드를 이용하여 개별 키 스토어(143)에 접근할 수 있다.
따라서, 차량 시스템의 검증 모듈은 전자 인증서 검증 과정이 시작되는 런타임에 상기 복수의 개별 키 스토어들을 식별하기 위한 식별 코드들을 상기 차량 시스템의 검증 모듈과 분리된 키스토어 관리부로 요청하고, 상기 식별 코드들을 이용하여 상기 복수의 개별 키 스토어를 식별한 후 상기 전자 인증서 검증 과정을 진행할 수 도 있다.
이때, 최상위 발급자 인증서는 로컬 영역인 차량 내의 개별 키 스토어(145)에 저장되어 있을 수도 있고, 원격 서버에 저장되어 있을 수 도 있다.
따라서, 최상위 발급자 인증서에 대한 개별 키스토어의 식별 코드는 상기 최상위 발급자 인증서에 대한 개별 키 스토어가 로컬 영역에 설치된 경우를 나타내는 제1 식별 코드, 또는 상기 최상위 발급자 인증서에 대한 개별 키 스토어가 원격 서버에 위치함을 나타내는 제2 식별 코드로 구분될 수 도 있다.
따라서, 검증 모듈(130)은 상기 최상위 발급자 인증서에 대한 개별 키 스토어가 원격 서버에 위치함을 나타내는 제2 식별 코드인 경우 상기 차량 시스템의 검증 모듈은 온라인 인증서 상태 프로토콜(OCSP: Online Certificate Status Protocol)을 이용하여 상기 최상위 발급자 인증서에 대한 인증서 체인 검증을 수행할 수 있다.
이때, 검증 모듈(130)은 상기 최상위 발급자 인증서에 대한 인증서 체인 검증 요청이 실패한 경우, 상기 로컬 영역에 상기 최상위 발급자 인증서의 존재 여부를 체크하고, 상기 로컬 영역에 상기 최상위 발급자 인증서가 존재하는 경우 상기 제1 식별 코드를 요청하고, 상기 제1 식별 코드를 이용하여 상기 최상위 발급자 인증서에 대한 개별 키스토어를 확인한 후 인증서 체인 검증을 수행할 수 있다.
다시 말해, 최상위 발급자 인증서는 로컬 영역과 원격 서버에 각각 저장되어 있을 수 있고, 먼저 온라인 인증서 상태 프로토콜을 이용하여 최상위 발급자 인정서에 대한 인증서 체인 검증을 시도하고, 이의 실패 시 로컬 영역 최상위 발급자 인증서가 존재하는 경우 상기 제1 식별 코드를 요청하고, 상기 제1 식별 코드를 이용하여 상기 최상위 발급자 인증서에 대한 개별 키스토어를 확인한 후 인증서 체인 검증을 수행할 수 있다.
예를 들어, 하위 발급자 인증서는 중간 발급자 인증서 또는 최상위 발급자 인증서에 포함된 보안 키에 의해 서명된 전자 서명을 포함하고, 해쉬 값 비교를 통해 검증이 수행될 수 있다.
다시 말해, 하위 발급자 인증서는 상기 바이너리 데이터를 제공하는 주체에 대한 정보 및 상기 바이너리 데이터를 제공하는 주체의 공개 키를 포함하고, 상기 중간 발급자 인증서에 의해 서명된 전자 서명을 포함할 수 있다.
또한, 검증 모듈(130)은 상기 하위 발급자 인증서의 재발급 또는 변경 시 상기 중간 발급자 인증서에 의해 재발급 또는 변경된 하위 발급자 인증서를 검증하고, 검증이 성공한 경우에 상기 복수의 개별 키 스토어 중 어느 하나에 상기 재발급 또는 변경된 하위 발급자 인증서를 저장할 수 있다.
따라서, 일실시예에 따르면, OEM Device Certification이 변경되거나 재발급되더라도 차량 시스템 내의 키 스토어에 Intermediate Certification 또는 Root Certification 인증이 가능한 상위 인증서가 존재하므로 별다른 키스토어에 대한 보안 체크 없이도 검증 진행이 가능하다.
다시 말해, OEM Device Certification는 Intermediate Certification 또는 Root Certification에 의해 서명될 수 있으므로, OEM Device Certification의 변경 또는 재발급은 Intermediate Certification 또는 Root Certification의 변경을 필요로 하지 않게 된다.
한편, 일 실시예에 따르면, 키 스토어 자체에 대한 검증하는 과정이 추가될 수 있다.
즉, 검증 모듈(130)은 상기 전자 인증서의 검증이 성공하면, 상기 보안된 키 스토어에 대한 해쉬 값을 계산하고, 상기 최상위 발급자 인증서를 이용하여 상기 보안된 키 스토어에 대한 전자 서명을 해독한 후 상기 키 스토어에 대한 해쉬 값과 비교하여 상기 보안된 키스토어 자체를 검증할 수 도 있다.
도 3은 일 실시예에 따른 차량 시스템의 소프트웨어 보안 업데이트 방법을 나타내는 흐름도이다.
도 3에 도시된 방법은 도 1에 도시된 장치에 의해 수행될 수 있다.
310단계에서 소프트웨어 업데이트와 관련된 바이너리 데이터, 전자 인증서 및 상기 바이너리 데이터를 제공하는 주체에 의해 서명된 전자 서명을 포함하는 무선 전송(OTA: Over-The-Air) 업데이트 패키지를 수신한다.
320 단계에서, 차량 시스템의 검증 모듈이, 보안된 키 스토어(Key Store)에 저장된 인증서 체인을 이용하여 상기 전자 인증서에 포함된 공개 키(Public Key) 자체의 무결성을 검증하여, 상기 전자 인증서를 검증한다.
330 단계에서, 전자 인증서의 검증이 성공하면, 상기 공개 키를 이용하여 상기 전자 서명에 대한 해쉬 값을 상기 바이너리 데이터에 대한 해쉬 값과 비교하여 상기 업데이트 패키지를 검증한다.
340 단계에서, 업데이트 패키지에 대한 검증이 성공하면 상기 바이너리 데이터를 이용하여 소프트웨어 업데이트를 수행한다.
도 4는 일 실시예에 따른 인증서 체인 검증 방법을 설명하기 위한 흐름도이다. 도 5는 다른 일실시예에 따른 인증서 체인 검증 방법을 설명하기 위한 흐름도이다.
도 4는 인증서 체인을 이용한 검증에서, 최상위 발급자 인증서가 차량 시스템 내의 키 스토어에 저장된 경우를 나타내고, 도 5는 최상위 발급자 인증서가 원격 서버에 저장된 경우를 나타낸다.
도 4를 참조하면, 421 단계에서 장치는 키스토어를 체크하여 인증서 체인 검증을 수행하고, 425 단계에서 전자 인증서에 포함된 공개 기 검증을 수행할 수 있다.
도 5를 참조하면, 423 단계에서 장치는 중간 발급자 인증서를 이용한 하위 발급자 인증서 또는 업데이트 패키지에 포함된 전자 인증서 검증을 수행한 후, 중간 발급자 인증서에 대한 검증은 OCSP를 이용하여 원격 서버에 저장된 최상위 발급자 인증서를 이용하여 검증할 수 있다.
이후, 장치는 425 단계에서 공개 키 검증 과정을 수행할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (10)

  1. 소프트웨어 업데이트와 관련된 바이너리 데이터, 전자 인증서 및 상기 바이너리 데이터를 제공하는 주체에 의해 서명된 전자 서명을 포함하는 무선 전송(OTA: Over-The-Air) 업데이트 패키지를 수신하는 단계;
    차량 시스템의 검증 모듈이, 보안된 키 스토어(Key Store)에 저장된 인증서 체인을 이용하여 상기 전자 인증서에 포함된 공개 키(Public Key) 자체의 무결성을 검증하여, 상기 전자 인증서를 검증하는 단계;
    상기 전자 인증서의 검증이 성공하면, 상기 공개 키를 이용하여 상기 전자 서명에 대한 해쉬 값을 상기 바이너리 데이터에 대한 해쉬 값과 비교하여 상기 업데이트 패키지를 검증하는 단계; 및
    상기 업데이트 패키지에 대한 검증이 성공하면, 상기 바이너리 데이터를 이용하여 소프트웨어 업데이트를 수행하는 단계를 포함하는
    차량 시스템의 소프트웨어 보안 업데이트 방법.
  2. 제1항에 있어서,
    상기 보안된 키 스토어는 상기 인증서 체인에 포함되는 하위 발급자 인증서, 중간 발급자 인증서 및 최상위 발급자 인증서 각각을 저장하기 위한 복수의 개별 키 스토어를 포함하고,
    상기 차량 시스템의 검증 모듈은 전자 인증서 검증 과정이 시작되는 런타임에 상기 복수의 개별 키 스토어들을 식별하기 위한 식별 코드들을 상기 차량 시스템의 검증 모듈과 분리된 키스토어 관리부로 요청하고, 상기 식별 코드들을 이용하여 상기 복수의 개별 키 스토어를 식별한 후 상기 전자 인증서 검증 과정을 진행하는
    차량 시스템의 소프트웨어 보안 업데이트 방법.
  3. 제2항에 있어서,
    상기 최상위 발급자 인증서에 대한 개별 키스토어의 식별 코드는 상기 최상위 발급자 인증서에 대한 개별 키 스토어가 로컬 영역에 설치된 경우를 나타내는 제1 식별 코드, 또는 상기 최상위 발급자 인증서에 대한 개별 키 스토어가 원격 서버에 위치함을 나타내는 제2 식별 코드임을 특징으로 하는
    차량 시스템의 소프트웨어 보안 업데이트 방법.
  4. 제3항에 있어서,
    상기 최상위 발급자 인증서에 대한 개별 키 스토어가 원격 서버에 위치함을 나타내는 제2 식별 코드인 경우 상기 차량 시스템의 검증 모듈은 온라인 인증서 상태 프로토콜(OCSP: Online Certificate Status Protocol)을 이용하여 상기 최상위 발급자 인증서에 대한 인증서 체인 검증을 수행하는
    차량 시스템의 소프트웨어 보안 업데이트 방법.
  5. 제4항에 있어서,
    상기 차량 시스템의 검증 모듈은,
    상기 최상위 발급자 인증서에 대한 인증서 체인 검증 요청이 실패한 경우, 상기 로컬 영역에 상기 최상위 발급자 인증서의 존재 여부를 체크하고, 상기 로컬 영역에 상기 최상위 발급자 인증서가 존재하는 경우 상기 제1 식별 코드를 요청하고, 상기 제1 식별 코드를 이용하여 상기 최상위 발급자 인증서에 대한 개별 키스토어를 확인한 후 인증서 체인 검증을 수행하는
    차량 시스템의 소프트웨어 보안 업데이트 방법.
  6. 제2항에 있어서,
    상기 하위 발급자 인증서는 상기 바이너리 데이터를 제공하는 주체에 대한 정보 및 상기 바이너리 데이터를 제공하는 주체의 공개 키를 포함하고, 상기 중간 발급자 인증서에 의해 전자 서명된 것을 특징으로 하는
    차량 시스템의 소프트웨어 보안 업데이트 방법.
  7. 제6항에 있어서,
    상기 차량 시스템의 검증 모듈은 상기 하위 발급자 인증서의 재발급 또는 변경 시 상기 중간 발급자 인증서에 의해 재발급 또는 변경된 하위 발급자 인증서를 검증하고, 검증이 성공한 경우에 상기 복수의 개별 키 스토어 중 어느 하나에 상기 재발급 또는 변경된 하위 발급자 인증서를 저장하는
    차량 시스템의 소프트웨어 보안 업데이트 방법.
  8. 제1항에 있어서,
    상기 차량 시스템의 검증 모듈은 상기 전자 인증서의 검증이 성공하면, 상기 보안된 키 스토어에 대한 해쉬 값을 계산하고, 상기 최상위 발급자 인증서를 이용하여 상기 보안된 키 스토어에 대한 전자 서명을 해독한 후 상기 키 스토어에 대한 해쉬 값과 비교하여 상기 보안된 키스토어 자체를 검증하는
    차량 시스템의 소프트웨어 보안 업데이트 방법.
  9. 소프트웨어 업데이트와 관련된 바이너리 데이터, 전자 인증서 및 상기 바이너리 데이터를 제공하는 주체에 의해 서명된 전자 서명을 포함하는 무선 전송(OTA: Over-The-Air) 업데이트 패키지를 수신하는 수신부;
    보안된 키 스토어(Key Store)에 저장된 인증서 체인을 이용하여 상기 전자 인증서에 포함된 공개 키(Public Key) 자체의 무결성을 검증하여, 상기 전자 인증서를 검증하는 인증서 검증부;
    상기 전자 인증서의 검증이 성공하면, 상기 공개 키를 이용하여 상기 전자 서명에 대한 해쉬 값을 상기 바이너리 데이터에 대한 해쉬 값과 비교하여 상기 업데이트 패키지를 검증하는 업데이트 패키지 검증부; 및
    상기 업데이트 패키지에 대한 검증이 성공하면, 상기 바이너리 데이터를 이용하여 소프트웨어 업데이트를 수행하는 업데이트 실행부를 포함하는
    차량 시스템의 소프트웨어 보안 업데이트 장치.
  10. 제9항에 있어서,
    상기 인증서 검증부는 상기 보안된 키 스토어에 포함된 복수의 개별 키 스토어들을 식별하기 위한 식별 코드들을 상기 차량 시스템의 키스토어 관리부로 요청하고, 기 설정된 런타임 내에 상기 식별 코드들을 수신하는 경우 상기 전자 인증서 검증 과정을 시작하는
    차량 시스템의 소프트웨어 보안 업데이트 장치.
KR1020170050173A 2016-04-19 2017-04-19 차량 시스템의 소프트웨어 보안 업데이트 방법 및 장치 KR101963776B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20160047384 2016-04-19
KR1020160047384 2016-04-19

Publications (2)

Publication Number Publication Date
KR20170119645A true KR20170119645A (ko) 2017-10-27
KR101963776B1 KR101963776B1 (ko) 2019-07-31

Family

ID=60300195

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170050173A KR101963776B1 (ko) 2016-04-19 2017-04-19 차량 시스템의 소프트웨어 보안 업데이트 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101963776B1 (ko)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019146812A1 (ko) * 2018-01-25 2019-08-01 엘지전자 주식회사 차량용 업데이트 시스템 및 제어 방법
WO2019237192A1 (en) * 2018-06-15 2019-12-19 Sierra Wireless, Inc. Method and apparatus for secure software update
CN111193587A (zh) * 2018-11-14 2020-05-22 现代自动车株式会社 数据通信系统、数据通信方法、服务器和车辆
KR20200067742A (ko) 2019-11-01 2020-06-12 인포뱅크 주식회사 차량 ecu 소프트웨어 업데이트 시스템
KR20200138059A (ko) * 2019-05-30 2020-12-09 현대오토에버 주식회사 차량 공유를 위한 이동통신 단말의 디지털 키를 관리하는 방법 및 이를 이용한 키 서버
KR102239904B1 (ko) * 2019-12-19 2021-04-13 한국자동차연구원 차량 ecu의 업데이트를 관리하기 위한 ota 마스터 장치, 시스템 및 방법
KR20210042575A (ko) 2019-10-10 2021-04-20 박재완 차량의 소프트웨어 업데이트 장치 및 시스템 및 방법
KR20220065223A (ko) * 2020-11-13 2022-05-20 경희대학교 산학협력단 추가 하드웨어 모듈을 이용하는 자동차 ecu 업데이트 방법
CN115208575A (zh) * 2022-05-27 2022-10-18 深圳市广和通无线股份有限公司 软件安全性的校验方法、设备及存储介质
KR102481219B1 (ko) * 2022-01-25 2022-12-26 쌍용자동차 주식회사 차량 보안 관리서버를 이용한 차량 소프트웨어 업데이트 시스템 및 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100658300B1 (ko) * 1999-12-18 2006-12-14 주식회사 케이티 무선통신시스템에서의 인증 및 키 설정 방법
KR20150057024A (ko) * 2013-11-18 2015-05-28 삼성전자주식회사 응용프로그램 업데이트 제어 방법 및 그 전자 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100658300B1 (ko) * 1999-12-18 2006-12-14 주식회사 케이티 무선통신시스템에서의 인증 및 키 설정 방법
KR20150057024A (ko) * 2013-11-18 2015-05-28 삼성전자주식회사 응용프로그램 업데이트 제어 방법 및 그 전자 장치

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019146812A1 (ko) * 2018-01-25 2019-08-01 엘지전자 주식회사 차량용 업데이트 시스템 및 제어 방법
KR20200105743A (ko) * 2018-01-25 2020-09-09 엘지전자 주식회사 차량용 업데이트 시스템 및 제어 방법
US11449331B2 (en) * 2018-01-25 2022-09-20 Lg Electronics Inc. Vehicular update system and control method thereof
WO2019237192A1 (en) * 2018-06-15 2019-12-19 Sierra Wireless, Inc. Method and apparatus for secure software update
US10977024B2 (en) 2018-06-15 2021-04-13 Sierra Wireless, Inc. Method and apparatus for secure software update
CN111193587A (zh) * 2018-11-14 2020-05-22 现代自动车株式会社 数据通信系统、数据通信方法、服务器和车辆
KR20200138059A (ko) * 2019-05-30 2020-12-09 현대오토에버 주식회사 차량 공유를 위한 이동통신 단말의 디지털 키를 관리하는 방법 및 이를 이용한 키 서버
KR20210042575A (ko) 2019-10-10 2021-04-20 박재완 차량의 소프트웨어 업데이트 장치 및 시스템 및 방법
KR20200067742A (ko) 2019-11-01 2020-06-12 인포뱅크 주식회사 차량 ecu 소프트웨어 업데이트 시스템
WO2021125523A1 (ko) * 2019-12-19 2021-06-24 한국자동차연구원 차량 ecu의 업데이트를 관리하기 위한 ota 마스터 장치, 시스템 및 방법
KR102239904B1 (ko) * 2019-12-19 2021-04-13 한국자동차연구원 차량 ecu의 업데이트를 관리하기 위한 ota 마스터 장치, 시스템 및 방법
KR20220065223A (ko) * 2020-11-13 2022-05-20 경희대학교 산학협력단 추가 하드웨어 모듈을 이용하는 자동차 ecu 업데이트 방법
KR102481219B1 (ko) * 2022-01-25 2022-12-26 쌍용자동차 주식회사 차량 보안 관리서버를 이용한 차량 소프트웨어 업데이트 시스템 및 방법
CN115208575A (zh) * 2022-05-27 2022-10-18 深圳市广和通无线股份有限公司 软件安全性的校验方法、设备及存储介质

Also Published As

Publication number Publication date
KR101963776B1 (ko) 2019-07-31

Similar Documents

Publication Publication Date Title
KR101963776B1 (ko) 차량 시스템의 소프트웨어 보안 업데이트 방법 및 장치
US10157050B2 (en) Method for confirming correction program and information processing apparatus
KR101937220B1 (ko) 키 관리가 필요없는 블록체인을 기반한 전자서명 또는 메시지 인증 코드를 생성 및 검증 방법
US8881308B2 (en) Method to enable development mode of a secure electronic control unit
EP3489853B1 (en) A method for providing a firmware update of a device
US8856538B2 (en) Secured flash programming of secondary processor
CN104537293B (zh) 认证设备和系统
CN104904156B (zh) 认证处理装置、认证处理系统以及认证处理方法
EP3171315A1 (en) Payment verification system, method and apparatus, computer program and recording medium
JP5357152B2 (ja) 情報処理装置、情報処理方法、これらを実現するコンピュータプログラム及び集積回路
US9699185B2 (en) Unauthorized device detection method, unauthorized device detection server, and unauthorized device detection system
US20140075517A1 (en) Authorization scheme to enable special privilege mode in a secure electronic control unit
CN108696356B (zh) 一种基于区块链的数字证书删除方法、装置及系统
CN110661779B (zh) 基于区块链网络的电子证件管理方法、系统、设备及介质
US20230325178A1 (en) Tokenized mobile device update systems and methods
CN106031124B (zh) 借助于肯定名单来使用证书
US10579984B2 (en) Method for making contactless transactions secure
KR20210016547A (ko) 데이터 처리
US11681513B2 (en) Controlled scope of authentication key for software update
JP5872588B2 (ja) トレースデバイスおよびトレース方法
KR101778455B1 (ko) 해쉬 체인을 이용한 전자 영수증 관리 방법
JP4948271B2 (ja) Icカードアプリケーション格納方法及びシステム及びicカード発行者サーバ及びプログラム
CN113783839B (zh) 区块链数据更新方法、装置、计算机设备及存储介质
CN117896179B (zh) 一种组合式url签名鉴权方法、装置及其存储介质
CN117336002A (zh) 分布式网络中的节点认证

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant