JP6197000B2 - システム、車両及びソフトウェア配布処理方法 - Google Patents

システム、車両及びソフトウェア配布処理方法 Download PDF

Info

Publication number
JP6197000B2
JP6197000B2 JP2015134427A JP2015134427A JP6197000B2 JP 6197000 B2 JP6197000 B2 JP 6197000B2 JP 2015134427 A JP2015134427 A JP 2015134427A JP 2015134427 A JP2015134427 A JP 2015134427A JP 6197000 B2 JP6197000 B2 JP 6197000B2
Authority
JP
Japan
Prior art keywords
verification
key
expected value
distribution processing
unit
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2015134427A
Other languages
English (en)
Other versions
JP2017017616A (ja
Inventor
秀明 川端
秀明 川端
誠一郎 溝口
誠一郎 溝口
歩 窪田
歩 窪田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
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 KDDI Corp filed Critical KDDI Corp
Priority to JP2015134427A priority Critical patent/JP6197000B2/ja
Priority to PCT/JP2016/069660 priority patent/WO2017006862A1/ja
Priority to US15/737,540 priority patent/US10999078B2/en
Priority to CN201680037406.4A priority patent/CN107710672B/zh
Priority to EP16821331.2A priority patent/EP3319266B1/en
Publication of JP2017017616A publication Critical patent/JP2017017616A/ja
Application granted granted Critical
Publication of JP6197000B2 publication Critical patent/JP6197000B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/3247Cryptographic 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 digital signatures
    • 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/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Mechanical Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、システム、車両及びソフトウェア配布処理方法に関する。
近年、自動車は、車載制御システムを備え、車載制御システムによって、走る、止まる、曲がるといった自動車の基本的な動作の制御や、その他の応用的な制御を行っている。車載制御システムは、一般に、ECU(Electronic Control Unit)と呼ばれる車載制御マイコンを20個〜100個程度備える。ECUは、コンピュータの一種であり、コンピュータプログラムによって所望の機能を実現する。それらECUは、自動車に搭載される通信ネットワークであるCAN(Controller Area Network)に接続し、各ECUが互いに連携する。
また、自動車には、ECUに繋がるOBD(On-board Diagnostics)ポートと呼ばれる診断ポートのインタフェースが設けられている。このOBDポートに、メンテナンス専用の診断端末を接続して、該診断端末からECUに対して更新プログラムのインストール及びデータの設定変更などを行うことができる。すでに使用されている自動車について、ECUのコンピュータプログラムの更新等をする場合には、通常、車検時や自動車の定期点検時などに、正規販売店(ディーラー)や一般の自動車整備工場の工員によって更新がなされる。
自動車の車載制御システムに関し、例えば非特許文献1、2にはセキュリティについて記載されている。
C. Miller、C. Valasek、"Adventures in Automotive Networks and Control Units"、DEF CON 21、2013年8月 吉岡顕、小熊寿、西川真、繁富利恵、大塚玲、今井秀樹、"構成証明機能を持つ車内通信プロトコルの提案"、情報処理学会、DICOMO2008、pp.1270-1275、2008年7月
自動車の車載制御システムのECUに使用されるコンピュータプログラム等のデータの適用についての信頼性を向上させることが望まれる。例えば、ECUがファームウェアの更新を実施する際にECUの共通鍵で検証することが考えられる。この場合、更新ファームウェアを配布するサーバがECUの共通鍵を有することになる。しかしながら、更新ファームウェアを配布するサーバが複数存在する場合、ECUの共通鍵を複数のサーバで共有することから、ECUの共通鍵のサーバ間共有におけるコスト面や、共通鍵の漏洩時に漏洩元の特定が難しいなどの共通鍵のセキュリティ面における負担が問題となる可能性がある。
本発明は、このような事情を考慮してなされたものであり、ECU等のコンピュータのコンピュータプログラムの更新の際にコンピュータの共通鍵で検証することによる負担を軽減することができる、システム、車両及びソフトウェア配布処理方法を提供することを課題とする。
本発明の一態様は、ソフトウェア配布処理装置と、前記ソフトウェア配布処理装置と通信するコンピュータと、を備え、前記ソフトウェア配布処理装置は、ソフトウェアの更新データの電子署名の検証に使用される検証鍵と前記ソフトウェアがインストールされた前記コンピュータの共通鍵を記憶する鍵記憶部と、電子署名が施された前記更新データを受信する受信部と、前記受信部で受信された前記更新データの電子署名を前記鍵記憶部に記憶される前記検証鍵を使用して検証する検証部と、前記検証部による電子署名の検証が成功した前記更新データについての期待値を計算する期待値計算部と、前記検証部による電子署名の検証が成功した前記更新データについて計算された前記期待値を、前記鍵記憶部に記憶される前記共通鍵を使用して暗号化する暗号処理部と、前記検証部による電子署名の検証が成功した前記更新データと当該更新データについて計算された前記期待値が前記共通鍵を使用して暗号化された暗号化データに対して、前記鍵記憶部に記憶される前記共通鍵を使用して電子署名を施す署名部と、前記共通鍵を使用して電子署名が施された前記更新データと前記暗号化データを前記コンピュータへ送信する送信部と、を備え、前記コンピュータは、前記ソフトウェア配布処理装置から受信した電子署名を前記コンピュータの共通鍵を使用して検証する署名検証部と、前記ソフトウェア配布処理装置から受信した前記暗号化データを、前記コンピュータの共通鍵を使用して復号する復号部と、前記署名検証部による電子署名の検証が成功した前記更新データについての期待値を計算し、当該計算結果の期待値と前記復号部による復号結果の値とが一致した場合に前記復号結果の値を前記ソフトウェアの更新処理の検証に使用される新しい期待値として保持し、一方、当該計算結果の期待値と前記復号部による復号結果の値とが一致しない場合には前記復号結果の値を前記新しい期待値として保持しないソフトウェア検証部と、を備える、システムである。
本発明の一態様は、上記のシステムを備える車両である。
本発明の一態様は、ソフトウェア配布処理装置と、前記ソフトウェア配布処理装置と通信するコンピュータと、を備えるシステムのソフトウェア配布処理方法であって、前記ソフトウェア配布処理装置が、ソフトウェアの更新データの電子署名の検証に使用される検証鍵と前記ソフトウェアがインストールされた前記コンピュータの共通鍵を鍵記憶部に記憶する鍵記憶ステップと、前記ソフトウェア配布処理装置が、電子署名が施された前記更新データを受信する受信ステップと、前記ソフトウェア配布処理装置が、前記受信ステップで受信された前記更新データの電子署名を前記鍵記憶部に記憶される前記検証鍵を使用して検証する検証ステップと、前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データについての期待値を計算する期待値計算ステップと、前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データについて計算された前記期待値を、前記鍵記憶部に記憶される前記共通鍵を使用して暗号化する暗号処理ステップと、前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データと当該更新データについて計算された前記期待値が前記共通鍵を使用して暗号化された暗号化データに対して、前記鍵記憶部に記憶される前記共通鍵を使用して電子署名を施す署名ステップと、前記ソフトウェア配布処理装置が、前記共通鍵を使用して電子署名が施された前記更新データと前記暗号化データを前記コンピュータへ送信する送信ステップと、前記コンピュータが、前記ソフトウェア配布処理装置から受信した電子署名を前記コンピュータの共通鍵を使用して検証する署名検証ステップと、前記コンピュータが、前記ソフトウェア配布処理装置から受信した前記暗号化データを、前記コンピュータの共通鍵を使用して復号する復号ステップと、前記コンピュータが、前記署名検証ステップによる電子署名の検証が成功した前記更新データについての期待値を計算し、当該計算結果の期待値と前記復号部による復号結果の値とが一致した場合に前記復号結果の値を前記ソフトウェアの更新処理の検証に使用される新しい期待値として保持し、一方、当該計算結果の期待値と前記復号部による復号結果の値とが一致しない場合には前記復号結果の値を前記新しい期待値として保持しないソフトウェア検証ステップと、を含むソフトウェア配布処理方法である。
(1)本発明の一態様は、ソフトウェアの更新データの電子署名の検証に使用される検証鍵と前記ソフトウェアがインストールされたコンピュータの共通鍵を記憶する鍵記憶部と、電子署名が施された前記更新データを受信する受信部と、前記受信部で受信された前記更新データの電子署名を前記鍵記憶部に記憶される前記検証鍵を使用して検証する検証部と、前記検証部による電子署名の検証が成功した前記更新データに対して前記鍵記憶部に記憶される前記共通鍵を使用して電子署名を施す署名部と、前記共通鍵を使用して電子署名が施された前記更新データを前記コンピュータへ送信する送信部と、を備えるソフトウェア配布処理装置である。
(2)本発明の一態様は、ソフトウェアの更新データの電子署名の検証に使用される検証鍵と前記ソフトウェアがインストールされたコンピュータの共通鍵を記憶する鍵記憶部と、電子署名が施された前記更新データを受信する受信部と、前記受信部で受信された前記更新データの電子署名を前記鍵記憶部に記憶される前記検証鍵を使用して検証する検証部と、前記検証部による電子署名の検証が成功した前記更新データについての期待値を計算する期待値計算部と、前記検証部による電子署名の検証が成功した前記更新データについて計算された前記期待値を、前記鍵記憶部に記憶される前記共通鍵を使用して暗号化する暗号処理部と、前記検証部による電子署名の検証が成功した前記更新データと当該更新データについて計算された前記期待値が前記共通鍵を使用して暗号化された暗号化データに対して、前記鍵記憶部に記憶される前記共通鍵を使用して電子署名を施す署名部と、前記共通鍵を使用して電子署名が施された前記更新データと前記暗号化データを前記コンピュータへ送信する送信部と、を備えるソフトウェア配布処理装置である。
(3)本発明の一態様は、上記(1)又は(2)のいずれかのソフトウェア配布処理装置と、通信ネットワークと、前記通信ネットワークを介して前記ソフトウェア配布処理装置と通信する車載コンピュータと、を備える車両である。
(4)本発明の一態様は、ソフトウェア配布処理装置が、ソフトウェアの更新データの電子署名の検証に使用される検証鍵と前記ソフトウェアがインストールされたコンピュータの共通鍵を鍵記憶部に記憶する鍵記憶ステップと、前記ソフトウェア配布処理装置が、電子署名が施された前記更新データを受信する受信ステップと、前記ソフトウェア配布処理装置が、前記受信ステップで受信された前記更新データの電子署名を前記鍵記憶部に記憶される前記検証鍵を使用して検証する検証ステップと、前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データに対して前記鍵記憶部に記憶される前記共通鍵を使用して電子署名を施す署名ステップと、前記ソフトウェア配布処理装置が、前記共通鍵を使用して電子署名が施された前記更新データを前記コンピュータへ送信する送信ステップと、を含むソフトウェア配布処理方法である。
(5)本発明の一態様は、ソフトウェア配布処理装置が、ソフトウェアの更新データの電子署名の検証に使用される検証鍵と前記ソフトウェアがインストールされたコンピュータの共通鍵を鍵記憶部に記憶する鍵記憶ステップと、前記ソフトウェア配布処理装置が、電子署名が施された前記更新データを受信する受信ステップと、前記ソフトウェア配布処理装置が、前記受信ステップで受信された前記更新データの電子署名を前記鍵記憶部に記憶される前記検証鍵を使用して検証する検証ステップと、前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データについての期待値を計算する期待値計算ステップと、前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データについて計算された前記期待値を、前記鍵記憶部に記憶される前記共通鍵を使用して暗号化する暗号処理ステップと、前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データと当該更新データについて計算された前記期待値が前記共通鍵を使用して暗号化された暗号化データに対して、前記鍵記憶部に記憶される前記共通鍵を使用して電子署名を施す署名ステップと、前記ソフトウェア配布処理装置が、前記共通鍵を使用して電子署名が施された前記更新データと前記暗号化データを前記コンピュータへ送信する送信ステップと、を含むソフトウェア配布処理方法である。
(6)本発明の一態様は、ソフトウェアの更新データの電子署名の検証に使用される検証鍵と前記ソフトウェアがインストールされたコンピュータの共通鍵を鍵記憶部に記憶する鍵記憶ステップと、電子署名が施された前記更新データを受信する受信ステップと、前記受信ステップで受信された前記更新データの電子署名を前記鍵記憶部に記憶される前記検証鍵を使用して検証する検証ステップと、前記検証ステップによる電子署名の検証が成功した前記更新データに対して前記鍵記憶部に記憶される前記共通鍵を使用して電子署名を施す署名ステップと、前記共通鍵を使用して電子署名が施された前記更新データを前記コンピュータへ送信する送信ステップと、をコンピュータに実行させるためのコンピュータプログラムである。
(7)本発明の一態様は、ソフトウェア配布処理装置が、ソフトウェアの更新データの電子署名の検証に使用される検証鍵と前記ソフトウェアがインストールされたコンピュータの共通鍵を鍵記憶部に記憶する鍵記憶ステップと、前記ソフトウェア配布処理装置が、電子署名が施された前記更新データを受信する受信ステップと、前記ソフトウェア配布処理装置が、前記受信ステップで受信された前記更新データの電子署名を前記鍵記憶部に記憶される前記検証鍵を使用して検証する検証ステップと、前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データについての期待値を計算する期待値計算ステップと、前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データについて計算された前記期待値を、前記鍵記憶部に記憶される前記共通鍵を使用して暗号化する暗号処理ステップと、前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データと当該更新データについて計算された前記期待値が前記共通鍵を使用して暗号化された暗号化データに対して、前記鍵記憶部に記憶される前記共通鍵を使用して電子署名を施す署名ステップと、前記ソフトウェア配布処理装置が、前記共通鍵を使用して電子署名が施された前記更新データと前記暗号化データを前記コンピュータへ送信する送信ステップと、をコンピュータに実行させるためのコンピュータプログラムである。
本発明によれば、ECU等のコンピュータのコンピュータプログラムの更新の際にコンピュータの共通鍵で検証することによる負担を軽減することができるという効果が得られる。
第1実施形態に係る自動車1及び管理システムを示す図である。 図1に示すゲートウェイECU10の構成図である。 図1に示す鍵管理装置20の構成図である。 第1実施形態のソフトウェア配布処理方法のシーケンスチャートである。 セキュアブート方法の説明図である。 第2実施形態に係る鍵管理装置20の構成図である。 第2実施形態のソフトウェア配布処理方法のシーケンスチャートである。
以下、図面を参照し、本発明の実施形態について説明する。なお、以下に示す実施形態では、車両として自動車を例に挙げて説明する。
[第1実施形態]
図1は、第1実施形態に係る自動車1及び管理システムを示す図である。図1において、自動車1は、ゲートウェイECU10と鍵管理装置20と複数のECU30と車載ネットワーク40を備える。本実施形態では、ソフトウェア配布処理装置2はゲートウェイECU10と鍵管理装置20から構成される。ゲートウェイECU10とECU30は車載ネットワーク40に接続される。車載ネットワーク40として、例えばCANが使用される。CANは車両に搭載される通信ネットワークの一つとして知られている。本実施形態では、車載ネットワーク40はCANである。ゲートウェイECU10と各ECU30とは、車載ネットワーク40を介してデータを交換する。ECU30は、車載ネットワーク40を介して、他のECU30との間でデータを交換する。
ECU30は、自動車1に備わる車載コンピュータである。ECU30は、CPU(Central Processing Unit)50と記憶部52とHSM(Hardware Security Module)60を備える。CPU_50は、ECU30にインストールされたファームウェアを実行する。ファームウェアはソフトウェアつまりコンピュータプログラムの一種である。記憶部52はファームウェアやデータ等を記憶する。記憶部52は、ROM(リードオンリメモリ)やRAM(ランダムアクセスメモリ)、フラッシュメモリ(flash memory)などから構成される。HSM_60は暗号処理等を実行する。本実施形態では、セキュアエレメントの一例としてHSM_60を使用する。セキュアエレメントは耐タンパー性を有する。
ゲートウェイECU10は、無線通信ネットワーク3を介して管理サーバ装置70と通信する。管理サーバ装置70はECU30のファームウェアを管理する。鍵管理装置20は、管理サーバ装置70の鍵とECU30の鍵を管理する。鍵管理装置20はセキュアエレメントにより実現される。
図2は、図1に示すゲートウェイECU10の構成図である。図2において、ゲートウェイECU10は無線通信部11とCANインタフェース12と制御部13とユーザインタフェース14を備える。無線通信部11は無線通信ネットワーク3を介して管理サーバ装置70とデータを送受する。CANインタフェース12は、車載ネットワーク40を介して各ECU30とデータを送受する。制御部13は、ゲートウェイECU10の制御を実行する。ユーザインタフェース14は、利用者の操作を受け付ける。
図3は、図1に示す鍵管理装置20の構成図である。図3において、鍵管理装置20は、検証部21と署名部22と鍵記憶部23を備える。検証部21は、電子署名の検証を実行する。署名部22は、電子署名の生成を実行する。鍵記憶部23は、管理サーバ装置70の電子署名の検証に使用される検証鍵と、ECU30の共通鍵を記憶する。管理サーバ装置70の電子署名の検証に使用される検証鍵は、管理サーバ装置70の電子署名の生成に使用される共通鍵であってもよく、又は、管理サーバ装置70の電子署名の生成に使用される秘密鍵のペアの公開鍵であってもよい。鍵記憶部23には、予め、管理サーバ装置70の電子署名の検証に使用される検証鍵と、ECU30の共通鍵とが記憶される。
鍵管理装置20はセキュアエレメントにより実現される。鍵管理装置20を実現するセキュアエレメントとして、例えば、SIM(Subscriber Identity Module)、eSIM(Embedded Subscriber Identity Module)又はHSMなどが挙げられる。例えば、無線通信ネットワーク3を利用するためのSIM又はeSIMを使用して、鍵管理装置20を実現してもよい。無線通信ネットワーク3を利用するためのSIM又はeSIMは、ゲートウェイECU10の無線通信部11が無線通信ネットワーク3に接続する際に使用される。
次に図4を参照して、本実施形態の動作を説明する。図4は、第1実施形態のソフトウェア配布処理方法のシーケンスチャートである。
(ステップS1)利用者がゲートウェイECU10のユーザインタフェース14を操作してECU30のアップデート確認を実施する。又は、管理サーバ装置70がゲートウェイECU10に対してECU30のアップデート確認を要求する。
(ステップS2)ゲートウェイECU10は、ECU30に対してECUバージョンを問い合わせし、ECU30からECUバージョンの応答を得る。ゲートウェイECU10は、ECU30から得た応答のECUバージョンを管理サーバ装置70へ送信する。
なお、管理サーバ装置70が自動車1のECU30のECUバージョンを記録し管理する場合には、上記のステップS1及びS2は無くてもよい。
(ステップS3)管理サーバ装置70が、自動車1のECU30について、更新ファームウェアの有無を確認する。管理サーバ装置70は、ECU30のバージョン情報と電子署名付き更新ファームウェアを保持する。管理サーバ装置70は、ECU30のバージョン情報に基づいて、自動車1のECU30のECUバージョンが最新バージョンであるかを判定する。
(ステップS4)管理サーバ装置70は、ステップS3の結果、自動車1のECU30のECUバージョンが最新バージョンではない場合に、電子署名付き更新ファームウェアをゲートウェイECU10へ送信する。
(ステップS5)ゲートウェイECU10が、管理サーバ装置70から受信した電子署名付き更新ファームウェアを鍵管理装置20へ送信する。
(ステップS6)鍵管理装置20の検証部21が、ゲートウェイECU10から受信した電子署名付き更新ファームウェアの電子署名を、鍵記憶部23に記憶される検証鍵を使用して検証する。
(ステップS7)鍵管理装置20の署名部22は、ステップS6の検証部21による電子署名の検証が成功した電子署名付き更新ファームウェアの更新ファームウェアに対して、鍵記憶部23に記憶される共通鍵を使用して電子署名を施す。これにより、ECU30の共通鍵を使用して電子署名が施された電子署名付き更新ファームウェアが生成される。このECU30の共通鍵を使用して電子署名が施された電子署名付き更新ファームウェアのことを、管理サーバ装置70から受信した電子署名付き更新ファームウェアと区別するために、説明の便宜上、再署名更新ファームウェアと称する。
(ステップS8)鍵管理装置20は、再署名更新ファームウェアをゲートウェイECU10へ送信する。なお、ステップS6の検証部21による電子署名の検証が失敗した場合には、鍵管理装置20は、エラーメッセージをゲートウェイECU10へ送信する。
(ステップS9)ゲートウェイECU10は、鍵管理装置20から受信した再署名更新ファームウェアをECU30へ送信する。
(ステップS10)ECU30のCPU_50は、ゲートウェイECU10から受信した再署名更新ファームウェアをHSM_60へ送信する。
(ステップS11)ECU30のHSM_60は、ECU30の共通鍵を使用して、再署名更新ファームウェアの電子署名を検証する。HSM_60は、予め、ECU30の共通鍵を保持する。HSM_60は、再署名更新ファームウェアの電子署名の検証結果をCPU_50へ応答する。
(ステップS12)ECU30のCPU_50は、HSM_60から受信した応答が検証の成功である場合に、ステップS9でゲートウェイECU10から受信した再署名更新ファームウェアの更新ファームウェアを使用して、ファームウェア更新処理を実行する。これにより、ECU30のECUバージョンが最新バージョンになる。一方、ECU30のCPU_50は、HSM_60から受信した応答が検証の失敗である場合には、ファームウェア更新処理を実行しない。
(ステップS13)ECU30のCPU_50は、ファームウェア更新処理の実行が完了した場合に、更新完了通知をゲートウェイECU10へ送信する。ゲートウェイECU10は、ECU30から更新完了通知を受信すると、ECU30のファームウェアの更新完了通知を管理サーバ装置70へ送信する。
なお、ステップS13の更新完了通知については、実行してもよく、又は、実行しなくてもよい。
また、ステップS2において、ECUバージョンを示すECUバージョン情報に対して、暗号化したり又は電子署名を施したりしてもよい。以下、ECUバージョン情報に対して暗号化する場合を説明する。ECU30のHSM_60がECU30の共通鍵を使用してECUバージョン情報を暗号化し、ECUバージョン情報の暗号化データをゲートウェイECU10へ送信する。ゲートウェイECU10はECUバージョン情報の暗号化データを鍵管理装置20へ送信する。鍵管理装置20は、鍵記憶部23に記憶される共通鍵を使用してECUバージョン情報の暗号化データを復号化する。鍵管理装置20は、この復号化データを鍵記憶部23に記憶される検証鍵(管理サーバ装置70の共通鍵又は公開鍵)を使用して暗号化し、この暗号化データをゲートウェイECU10へ送信する。ゲートウェイECU10は、鍵管理装置20から受信した暗号化データを管理サーバ装置70へ送信する。管理サーバ装置70は、ゲートウェイECU10から受信した暗号化データを、共通鍵又は秘密鍵を使用して復号化する。この復号化によりECUバージョン情報が得られる。なお、ECUバージョン情報に対して電子署名を施す場合にも暗号化と同様の手順となる。
上述した第1実施形態によれば、ソフトウェア配布処理装置2が、管理サーバ装置70から受信した電子署名付き更新ファームウェアの電子署名を検証する。次いで、ソフトウェア配布処理装置2が、電子署名の検証が成功した電子署名付き更新ファームウェアの更新ファームウェアに対して、ECU30の共通鍵を使用して電子署名を施す。次いで、ソフトウェア配布処理装置2が、ECU30の共通鍵を使用して電子署名が施された再署名更新ファームウェアをECU30へ送信する。ECU30は、ソフトウェア配布処理装置2から受信した再署名更新ファームウェアの電子署名を、自己の共通鍵で検証する。ECU30は、電子署名の検証が成功した再署名更新ファームウェアの更新ファームウェアのみを使用して、ファームウェア更新処理を実行する。
これにより、ECU30がファームウェアの更新を実施する際に、ECU30の共通鍵で検証することができる。さらに、管理サーバ装置70はECU30の共通鍵を有する必要がないので、ECU30の共通鍵のサーバ間共有におけるコスト上の問題や、共通鍵の漏洩時に漏洩元の特定が難しいなどの共通鍵のセキュリティ上の問題が解消する。よって、ECU30のファームウェアの更新の際にECU30の共通鍵で検証することによる負担を軽減することができるという効果が得られる。
[第2実施形態]
第2実施形態において、自動車1及び管理システムの構成は上記の図1と同様である。第2実施形態では、ECU30がセキュアブートを実行する。
図5を参照してECU30のセキュアブートに係る動作を説明する。図5はセキュアブート方法の説明図である。ECU30において、CPU_50は、ECU30のファームウェアのプログラムコードであるECUコード(ECU code)521を実行する。ECUコード521は、記憶部52のフラッシュメモリに格納される。CPU_50に対し、ブートローダ(Boot Loader)522によってECUコード521が起動される。ブートローダ522のプログラム(ブートプログラム)は、記憶部52のROMに格納される。CPU_50は、初期起動時に記憶部52のROMからブートプログラムを起動し、ブートローダ522として機能する。HSM_60は、ECUコード521のCMAC(Cipher-based Message Authentication Code)の正解値である期待値BOOT_MACを保持する。期待値BOOT_MACは、予め、HSM_60に設定される。
(ステップS21)ブートローダ522はECUコード521をHSM_60へ送信する。
(ステップS22)HSM_60は、受信したECUコード521のCMAC(Cipher-based Message Authentication Code)を計算する。
(ステップS23)HSM_60は、計算結果のCMACの値と期待値BOOT_MACを比較する。この比較の結果、一致した場合にはHSM_60はブートローダ522へ検証の成功を応答し、不一致した場合にはHSM_60はブートローダ522へ検証の失敗を応答する。
(ステップS23)ブートローダ522は、HSM_60からの応答が検証の成功である場合にECUコード521を起動する。一方、ブートローダ522は、HSM_60からの応答が検証の失敗である場合にはECUコード521を起動しない。
ECU30のファームウェアを更新するとECUコード521が変わる。このため、ECU30が上述したセキュアブートを実行する場合には、ECU30のファームウェアを更新する際に、HSM_60に保持される期待値BOOT_MACも更新する必要がある。
図6は、第2実施形態に係る鍵管理装置20の構成図である。図6に示す鍵管理装置20は、上記の図3の構成に対してさらに期待値計算部24と暗号処理部25を備える。期待値計算部24はCMACを計算する。暗号処理部25は暗号処理を実行する。
図7を参照して本実施形態の動作を説明する。図7は、第2実施形態のソフトウェア配布処理方法のシーケンスチャートである。図7において、上記の図4の各ステップに対応する部分には同一の符号を付け、その説明を省略する。
ステップS1〜S6までは上記の図4と同じである。ステップS6における電子署名付き更新ファームウェアの電子署名の検証が成功した場合にのみ、ステップS31に進む。ステップS6における電子署名付き更新ファームウェアの電子署名の検証が失敗した場合には、鍵管理装置20からゲートウェイECU10へ、エラーメッセージが送信される。
(ステップS31)鍵管理装置20の期待値計算部24は、ステップS6における電子署名の検証が成功した電子署名付き更新ファームウェアの更新ファームウェアに対して、CMACを計算する。次いで、鍵管理装置20の暗号処理部25が、期待値計算部24の計算結果のCMACの値を、鍵記憶部23に記憶される共通鍵を使用して暗号化する。
(ステップS32)鍵管理装置20の署名部22は、ステップS6における電子署名の検証が成功した電子署名付き更新ファームウェアの更新ファームウェアとステップS31で暗号処理部25の暗号化により生成された暗号化データであるCMAC暗号化データに対して、鍵記憶部23に記憶される共通鍵を使用して電子署名を施す。これにより、ECU30の共通鍵を使用して電子署名が施された電子署名付き更新ファームウェアとCMAC暗号化データが生成される。このECU30の共通鍵を使用して電子署名が施された電子署名付き更新ファームウェアとCMAC暗号化データのことを、管理サーバ装置70から受信した電子署名付き更新ファームウェアと区別するために、説明の便宜上、再署名更新データと称する。
(ステップS33)鍵管理装置20は、再署名更新データをゲートウェイECU10へ送信する。
(ステップS34)ゲートウェイECU10は、鍵管理装置20から受信した再署名更新データをECU30へ送信する。
(ステップS35)ECU30のCPU_50は、ゲートウェイECU10から受信した再署名更新データの電子署名の検証をHSM_60へ依頼する。
(ステップS36)ECU30のHSM_60は、ECU30の共通鍵を使用して、再署名更新データの電子署名を検証する。HSM_60は、予め、ECU30の共通鍵を保持する。
(ステップS37)ECU30のHSM_60は、再署名更新データの電子署名の検証結果をCPU_50へ応答する。
(ステップS38)ECU30のCPU_50は、ステップS37でHSM_60から受信した応答が検証の成功である場合に、ステップS34でゲートウェイECU10から受信した再署名更新データのCMAC暗号化データをHSM_60へ送信し、期待値更新を依頼する。一方、ECU30のCPU_50は、ステップS37でHSM_60から受信した応答が検証の失敗である場合には、HSM_60に対して期待値更新を依頼しない。
(ステップS39)ECU30のHSM_60は、CPU_50からの期待値更新の依頼に応じて期待値更新処理を実行する。この期待値更新処理では、HSM_60は、CPU_50から受信した再署名更新データの更新ファームウェアのCMACを計算する。また、HSM_60は、CPU_50から受信した再署名更新データのCMAC暗号化データを、ECU30の共通鍵を使用して復号化する。次いで、HSM_60は、計算結果のCMACの値とCMAC暗号化データの復号結果の値を比較する。この比較の結果、一致した場合には、HSM_60は、CMAC暗号化データの復号結果の値を新しい期待値BOOT_MACとして保持する。この場合、期待値更新処理の結果が成功である。一方、その比較の結果、不一致した場合には、HSM_60は、期待値BOOT_MACを更新しない。この場合、期待値更新処理の結果が失敗である。
(ステップS40)ECU30のHSM_60は、期待値更新処理の結果をCPU_50へ応答する。
(ステップS41)ECU30のCPU_50は、ステップS40でHSM_60から受信した応答が期待値更新処理の成功である場合に、ステップS34でゲートウェイECU10から受信した再署名更新データの更新ファームウェアを使用して、ファームウェア更新処理を実行する。これにより、ECU30のECUバージョンが最新バージョンになる。また、HSM_60に保持される期待値BOOT_MACが最新バージョンになるので、ECU30のセキュアブートに対応することができる。一方、ECU30のCPU_50は、ステップS40でHSM_60から受信した応答が期待値更新処理の失敗である場合には、ファームウェア更新処理を実行しない。
(ステップS42)ECU30のCPU_50は、ファームウェア更新処理の実行が完了した場合に、更新完了通知をゲートウェイECU10へ送信する。ゲートウェイECU10は、ECU30から更新完了通知を受信すると、ECU30のファームウェアの更新完了通知を管理サーバ装置70へ送信する。
なお、ステップS42の更新完了通知については、実行してもよく、又は、実行しなくてもよい。
上述した第2実施形態によれば、ECU30がセキュアブートを実行する場合に対応することができる。
なお、更新ファームウェアを所定の方法で複数に分割し、該分割ごとにCMACの値を計算して期待値を生成してもよい。これにより、更新ファームウェア全体のCMACを計算するには鍵管理装置20の処理能力が不足し時間がかかる場合に、処理時間の短縮を図ることができる。この場合には、HSM_60は、更新ファームウェアの分割毎にCMACの期待値を保持する。そして、ECU30のセキュアブートの実行の際には、ブートローダ522が、ECUコード521を所定の方法で複数に分割し、ECUコード521の各分割をHSM_60へ送信する。HSM_60は、ECUコード521の分割毎に、CMACを計算して期待値と比較する。
また、更新ファームウェアのハッシュ値に対して期待値を持つようにしてもよい。この場合、鍵管理装置20は、更新ファームウェアのハッシュ値に対してCMACを計算し、この計算結果のCMACの値を期待値とする。そして、ECU30のセキュアブートの実行の際には、ブートローダ522が、ECUコード521のハッシュ値を計算してHSM_60へ送信する。これにより、HSM_60は、ECUコード521のハッシュ値についてのCMACの計算値と期待値の比較を行う。
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
例えば、自動車1に備わるいずれかのECU30をゲートウェイECU10として機能させてもよい。
また、車両として自動車を例に挙げたが、原動機付自転車や鉄道車両等の自動車以外の他の車両にも適用可能である。
また、コンピュータとして自動車のECUを例に挙げたが、他のコンピュータにも適用可能である。例えば、通信ネットワークに接続される家電製品の内蔵コンピュータのファームウェアの更新に適用してもよい。
また、上述したソフトウェア配布処理装置2の機能を実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disk)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
1…自動車、2…ソフトウェア配布処理装置、10…ゲートウェイECU、11…無線通信部、12…CANインタフェース、13…制御部、14…ユーザインタフェース、20…鍵管理装置、21…検証部、22…署名部、23…鍵記憶部、30…ECU、40…車載ネットワーク、50…CPU、52…記憶部、60…HSM、521…ECUコード、522…ブートローダ

Claims (3)

  1. ソフトウェア配布処理装置と、前記ソフトウェア配布処理装置と通信するコンピュータと、を備え、
    前記ソフトウェア配布処理装置は、
    ソフトウェアの更新データの電子署名の検証に使用される検証鍵と前記ソフトウェアがインストールされた前記コンピュータの共通鍵を記憶する鍵記憶部と、
    電子署名が施された前記更新データを受信する受信部と、
    前記受信部で受信された前記更新データの電子署名を前記鍵記憶部に記憶される前記検証鍵を使用して検証する検証部と、
    前記検証部による電子署名の検証が成功した前記更新データについての期待値を計算する期待値計算部と、
    前記検証部による電子署名の検証が成功した前記更新データについて計算された前記期待値を、前記鍵記憶部に記憶される前記共通鍵を使用して暗号化する暗号処理部と、
    前記検証部による電子署名の検証が成功した前記更新データと当該更新データについて計算された前記期待値が前記共通鍵を使用して暗号化された暗号化データに対して、前記鍵記憶部に記憶される前記共通鍵を使用して電子署名を施す署名部と、
    前記共通鍵を使用して電子署名が施された前記更新データと前記暗号化データを前記コンピュータへ送信する送信部と、を備え、
    前記コンピュータは、
    前記ソフトウェア配布処理装置から受信した電子署名を前記コンピュータの共通鍵を使用して検証する署名検証部と、
    前記ソフトウェア配布処理装置から受信した前記暗号化データを、前記コンピュータの共通鍵を使用して復号する復号部と、
    前記署名検証部による電子署名の検証が成功した前記更新データについての期待値を計算し、当該計算結果の期待値と前記復号部による復号結果の値とが一致した場合に前記復号結果の値を前記ソフトウェアの更新処理の検証に使用される新しい期待値として保持し、一方、当該計算結果の期待値と前記復号部による復号結果の値とが一致しない場合には前記復号結果の値を前記新しい期待値として保持しないソフトウェア検証部と、を備える、
    システム。
  2. 請求項1に記載のシステムを備える車両。
  3. ソフトウェア配布処理装置と、前記ソフトウェア配布処理装置と通信するコンピュータと、を備えるシステムのソフトウェア配布処理方法であって、
    前記ソフトウェア配布処理装置が、ソフトウェアの更新データの電子署名の検証に使用される検証鍵と前記ソフトウェアがインストールされた前記コンピュータの共通鍵を鍵記憶部に記憶する鍵記憶ステップと、
    前記ソフトウェア配布処理装置が、電子署名が施された前記更新データを受信する受信ステップと、
    前記ソフトウェア配布処理装置が、前記受信ステップで受信された前記更新データの電子署名を前記鍵記憶部に記憶される前記検証鍵を使用して検証する検証ステップと、
    前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データについての期待値を計算する期待値計算ステップと、
    前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データについて計算された前記期待値を、前記鍵記憶部に記憶される前記共通鍵を使用して暗号化する暗号処理ステップと、
    前記ソフトウェア配布処理装置が、前記検証ステップによる電子署名の検証が成功した前記更新データと当該更新データについて計算された前記期待値が前記共通鍵を使用して暗号化された暗号化データに対して、前記鍵記憶部に記憶される前記共通鍵を使用して電子署名を施す署名ステップと、
    前記ソフトウェア配布処理装置が、前記共通鍵を使用して電子署名が施された前記更新データと前記暗号化データを前記コンピュータへ送信する送信ステップと、
    前記コンピュータが、前記ソフトウェア配布処理装置から受信した電子署名を前記コンピュータの共通鍵を使用して検証する署名検証ステップと、
    前記コンピュータが、前記ソフトウェア配布処理装置から受信した前記暗号化データを、前記コンピュータの共通鍵を使用して復号する復号ステップと、
    前記コンピュータが、前記署名検証ステップによる電子署名の検証が成功した前記更新データについての期待値を計算し、当該計算結果の期待値と前記復号部による復号結果の値とが一致した場合に前記復号結果の値を前記ソフトウェアの更新処理の検証に使用される新しい期待値として保持し、一方、当該計算結果の期待値と前記復号部による復号結果の値とが一致しない場合には前記復号結果の値を前記新しい期待値として保持しないソフトウェア検証ステップと、
    を含むソフトウェア配布処理方法。
JP2015134427A 2015-07-03 2015-07-03 システム、車両及びソフトウェア配布処理方法 Active JP6197000B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2015134427A JP6197000B2 (ja) 2015-07-03 2015-07-03 システム、車両及びソフトウェア配布処理方法
PCT/JP2016/069660 WO2017006862A1 (ja) 2015-07-03 2016-07-01 ソフトウェア配布処理装置、車両、ソフトウェア配布処理方法及びコンピュータプログラム
US15/737,540 US10999078B2 (en) 2015-07-03 2016-07-01 Software distribution processing device, software distribution processing method, and vehicle
CN201680037406.4A CN107710672B (zh) 2015-07-03 2016-07-01 软件分配处理装置、软件分配处理方法以及车辆
EP16821331.2A EP3319266B1 (en) 2015-07-03 2016-07-01 Software distribution processing device, vehicle, software distribution processing method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015134427A JP6197000B2 (ja) 2015-07-03 2015-07-03 システム、車両及びソフトウェア配布処理方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2017158158A Division JP6440334B2 (ja) 2017-08-18 2017-08-18 システム、車両及びソフトウェア配布処理方法

Publications (2)

Publication Number Publication Date
JP2017017616A JP2017017616A (ja) 2017-01-19
JP6197000B2 true JP6197000B2 (ja) 2017-09-13

Family

ID=57685590

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015134427A Active JP6197000B2 (ja) 2015-07-03 2015-07-03 システム、車両及びソフトウェア配布処理方法

Country Status (5)

Country Link
US (1) US10999078B2 (ja)
EP (1) EP3319266B1 (ja)
JP (1) JP6197000B2 (ja)
CN (1) CN107710672B (ja)
WO (1) WO2017006862A1 (ja)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10346152B2 (en) * 2016-09-20 2019-07-09 At&T Intellectual Property I, L.P. Facilitating use of a universal integrated circuit card (UICC) for secure device updates
DE102016221108A1 (de) * 2016-10-26 2018-04-26 Volkswagen Aktiengesellschaft Verfahren zum Aktualisieren einer Software eines Steuergeräts eines Fahrzeugs
JP6443482B2 (ja) * 2017-01-13 2018-12-26 株式会社オートネットワーク技術研究所 車載装置、中継装置及びコンピュータプログラム
JP6475271B2 (ja) * 2017-01-31 2019-02-27 セコム株式会社 ゲートウェイ装置、機器、及び通信システム
US11194562B2 (en) 2017-05-19 2021-12-07 Blackberry Limited Method and system for hardware identification and software update control
JP6888424B2 (ja) * 2017-05-30 2021-06-16 株式会社リコー 情報処理システム、電子機器、情報処理方法、情報処理プログラム及び情報更新方法
JP6340120B1 (ja) * 2017-06-16 2018-06-06 アイビーシー株式会社 デバイスプロビジョニングシステム
EP4152144A1 (en) 2017-10-24 2023-03-22 Huawei International Pte. Ltd. Vehicle-mounted device upgrade method and related device
JP7106845B2 (ja) * 2017-11-22 2022-07-27 凸版印刷株式会社 端末装置、及び検証方法
JP2019105946A (ja) * 2017-12-11 2019-06-27 株式会社オートネットワーク技術研究所 車載更新装置、プログラム及びプログラム又はデータの更新方法
US10909050B2 (en) * 2018-03-19 2021-02-02 Toyota Jidosha Kabushiki Kaisha Gateway apparatus and communication method
JP6897630B2 (ja) * 2018-05-11 2021-07-07 株式会社オートネットワーク技術研究所 車載更新装置、更新処理方法及び更新処理プログラム
US10841284B2 (en) * 2018-05-30 2020-11-17 Lear Corporation Vehicle communication network and method
JP7003976B2 (ja) * 2018-08-10 2022-01-21 株式会社デンソー 車両用マスタ装置、更新データの検証方法及び更新データの検証プログラム
JP7143744B2 (ja) * 2018-12-03 2022-09-29 大日本印刷株式会社 機器統合システム及び更新管理システム
JP7092071B2 (ja) * 2019-03-05 2022-06-28 トヨタ自動車株式会社 車両用制御装置、車両用制御装置の起動方法及び車両用制御プログラム
US11356256B2 (en) * 2019-03-25 2022-06-07 Micron Technology, Inc. Secure vehicular part communication
JP7123843B2 (ja) * 2019-03-29 2022-08-23 日立Astemo株式会社 演算装置、判定方法
JP2019207732A (ja) * 2019-08-08 2019-12-05 富士ゼロックス株式会社 ドキュメント管理システム、管理装置及び処理装置
JP6733791B2 (ja) * 2019-08-08 2020-08-05 富士ゼロックス株式会社 管理装置及び処理装置
CN112422595B (zh) * 2019-08-20 2022-10-11 华为技术有限公司 车载系统安全保护方法及设备
US11334655B2 (en) * 2019-11-19 2022-05-17 Micron Technology, Inc. Authenticating a device using a remote host
FR3103926B1 (fr) * 2019-11-29 2021-11-05 Renault Sas Procédé de mise à jour de système numérique.
CA3160260A1 (en) * 2019-12-06 2021-06-10 Kapil Sachdeva Methods & processes to securely update secure elements
JP2021145205A (ja) 2020-03-11 2021-09-24 本田技研工業株式会社 認証システム
FR3111447A1 (fr) * 2020-06-16 2021-12-17 Psa Automobiles Sa Gestion de versions de logiciels embarqués à partir d’une empreinte informatique
US11956369B2 (en) 2020-08-13 2024-04-09 Robert Bosch Gmbh Accelerated verification of automotive software in vehicles
DE102020212772A1 (de) * 2020-10-09 2022-04-14 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Verwalten von kryptografischen Schlüsseln
JP7400744B2 (ja) * 2021-01-14 2023-12-19 トヨタ自動車株式会社 車両制御システム
US11887411B2 (en) * 2021-01-27 2024-01-30 Amazon Technologies, Inc. Vehicle data extraction service
US11658828B2 (en) 2021-02-01 2023-05-23 Ford Global Technologies, Llc Securely transmitting commands to vehicle during assembly
US12008146B2 (en) * 2021-03-31 2024-06-11 Seagate Technology Llc Code-based signatures for secure programs
JP7540401B2 (ja) * 2021-06-22 2024-08-27 トヨタ自動車株式会社 センタ、otaマスタ、方法、プログラム、及び車両
DE102021003840A1 (de) * 2021-07-27 2023-02-02 Mercedes-Benz Group AG Verfahren zur Überprüfung digitaler Signaturen, Fahrzeug-Recheneinheit und Fahrzeug
US11902374B2 (en) 2021-11-29 2024-02-13 Amazon Technologies, Inc. Dynamic vehicle data extraction service
CN115828273B (zh) 2021-11-29 2024-03-29 宁德时代新能源科技股份有限公司 车辆安全启动方法、装置,电子控制单元及存储介质
KR20230082388A (ko) * 2021-12-01 2023-06-08 현대자동차주식회사 차량 제어기의 부트로더 검증 장치 및 그 방법
CN118476188A (zh) * 2021-12-27 2024-08-09 索尼半导体解决方案公司 电子装置和信息处理方法
CN115296815B (zh) * 2022-07-28 2024-07-05 东风汽车集团股份有限公司 一种车载控制器身份认证方法

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100974419B1 (ko) * 2003-07-04 2010-08-05 바이에리셰 모토렌 베르케 악티엔게젤샤프트 차량 제어 유닛에 로딩할 수 있는 소프트웨어 컴포넌트의인증 방법
US7225167B2 (en) * 2003-11-21 2007-05-29 International Business Machines Corporation Merchandise-integral transaction receipt and auditable product ownership trail
JP2005259028A (ja) * 2004-03-15 2005-09-22 Mitsubishi Electric Corp 利用者装置及び利用者装置用プログラム及び認証システム及びプログラム
US20060106806A1 (en) * 2004-11-12 2006-05-18 Smith Micro Software, Inc. Software update for a plurality of mobile devices
JP5116325B2 (ja) 2007-03-15 2013-01-09 株式会社リコー 情報処理装置、ソフトウェア更新方法及び画像処理装置
WO2010041462A1 (ja) * 2008-10-10 2010-04-15 パナソニック株式会社 情報処理装置、情報処理方法、情報処理プログラム及び集積回路
WO2011152042A1 (ja) * 2010-05-31 2011-12-08 三洋電機株式会社 端末装置および基地局装置
CN102474723A (zh) * 2010-07-13 2012-05-23 三洋电机株式会社 终端装置
JP2013031151A (ja) * 2011-06-20 2013-02-07 Renesas Electronics Corp 暗号通信システムおよび暗号通信方法
JP5479408B2 (ja) * 2011-07-06 2014-04-23 日立オートモティブシステムズ株式会社 車載ネットワークシステム
JP5770602B2 (ja) * 2011-10-31 2015-08-26 トヨタ自動車株式会社 通信システムにおけるメッセージ認証方法および通信システム
CN102662692B (zh) * 2012-03-16 2015-05-27 北京经纬恒润科技有限公司 一种电子控制单元中应用程序的更新方法及系统
US8978160B2 (en) 2012-09-12 2015-03-10 GM Global Technology Operations LLC Method for selective software rollback
US20140075517A1 (en) * 2012-09-12 2014-03-13 GM Global Technology Operations LLC Authorization scheme to enable special privilege mode in a secure electronic control unit
US9201642B2 (en) 2013-03-15 2015-12-01 International Business Machines Corporation Extending platform trust during program updates
JP6063321B2 (ja) 2013-03-27 2017-01-18 株式会社富士通エフサス サーバ装置およびハッシュ値処理方法
JP6024564B2 (ja) * 2013-03-28 2016-11-16 株式会社オートネットワーク技術研究所 車載通信システム
US9374355B2 (en) * 2013-10-28 2016-06-21 GM Global Technology Operations LLC Programming vehicle modules from remote devices and related methods and systems
US9253200B2 (en) * 2013-10-28 2016-02-02 GM Global Technology Operations LLC Programming vehicle modules from remote devices and related methods and systems
JP5949732B2 (ja) * 2013-11-27 2016-07-13 株式会社オートネットワーク技術研究所 プログラム更新システム及びプログラム更新方法
KR20150074414A (ko) * 2013-12-24 2015-07-02 현대자동차주식회사 펌웨어 업그레이드 방법 및 그 시스템
JP6276023B2 (ja) * 2013-12-25 2018-02-07 住友電工システムソリューション株式会社 通信システム、通信方法、通信アダプタおよびサーバ
KR101527779B1 (ko) * 2014-01-13 2015-06-10 현대자동차주식회사 효율적인 차량용 리프로그래밍 장치 및 그 제어방법
CN103744706A (zh) * 2014-01-17 2014-04-23 深圳市道通科技有限公司 一种vci设备程序升级方法和装置
EP4236196A3 (en) * 2014-05-08 2023-10-18 Panasonic Intellectual Property Corporation of America In-vehicle network system, fraud-sensing electronic control unit, and anti-fraud method
US9215228B1 (en) * 2014-06-17 2015-12-15 Cisco Technology, Inc. Authentication of devices having unequal capabilities
KR101780278B1 (ko) * 2014-10-17 2017-09-21 현대자동차주식회사 Can 통신에서의 통신 부하 절감 방법 및 장치
CN106458112B (zh) * 2014-11-12 2019-08-13 松下电器(美国)知识产权公司 更新管理方法、更新管理系统以及计算机可读取的记录介质
JP6079768B2 (ja) * 2014-12-15 2017-02-15 トヨタ自動車株式会社 車載通信システム
US10608818B2 (en) * 2015-01-16 2020-03-31 Autonetworks Technologies, Ltd. In-vehicle communication system having a comparison means for verifying data and a comparison method for verifying data
US9912655B2 (en) * 2015-03-27 2018-03-06 Amazon Technologies, Inc. Unmanned vehicle message exchange
US9935774B2 (en) * 2015-05-22 2018-04-03 Nxp B.V. Configurable cryptographic controller area network (CAN) device
US9825918B2 (en) * 2015-05-22 2017-11-21 Nxp B.V. Controller area network (CAN) device and method for operating a CAN device

Also Published As

Publication number Publication date
CN107710672A (zh) 2018-02-16
EP3319266B1 (en) 2021-09-01
US10999078B2 (en) 2021-05-04
EP3319266A1 (en) 2018-05-09
US20180183605A1 (en) 2018-06-28
CN107710672B (zh) 2021-10-29
WO2017006862A1 (ja) 2017-01-12
JP2017017616A (ja) 2017-01-19
EP3319266A4 (en) 2018-12-12

Similar Documents

Publication Publication Date Title
JP6197000B2 (ja) システム、車両及びソフトウェア配布処理方法
JP6440334B2 (ja) システム、車両及びソフトウェア配布処理方法
JP6260067B1 (ja) 管理システム、鍵生成装置、車載コンピュータ、管理方法、及びコンピュータプログラム
JP6228093B2 (ja) システム
JP6188672B2 (ja) 鍵管理システム
JP6262681B2 (ja) 管理装置、車両、管理方法、及びコンピュータプログラム
JP6238939B2 (ja) 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
JP6190443B2 (ja) 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
WO2018029905A1 (ja) データ提供システム、データ保安装置、データ提供方法、及びコンピュータプログラム
CN109314644B (zh) 数据提供系统、数据保护装置、数据提供方法以及存储介质
JP2016163265A (ja) 鍵管理システム、鍵管理方法およびコンピュータプログラム
JP2018055566A (ja) 保守装置、保守方法、及びコンピュータプログラム
JP6476462B2 (ja) 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
JP6860464B2 (ja) システム及び管理方法
JP6188744B2 (ja) 管理システム、車両及び管理方法
JP6454919B2 (ja) 管理システム、データ提供装置、車載コンピュータ、管理方法、及びコンピュータプログラム
JP6672243B2 (ja) データ提供システム、データ提供装置、データ提供方法、及びデータ提供プログラム
JP6554704B2 (ja) データ提供システム及びデータ提供方法
JP6464466B2 (ja) 保守装置、保守方法、及びコンピュータプログラム
JP6519060B2 (ja) 管理装置、車両、管理方法、及びコンピュータプログラム
JP6354099B2 (ja) データ提供システム及びデータ提供方法
JP2017208731A (ja) 管理システム、管理装置、車載コンピュータ、管理方法、及びコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170509

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170706

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170707

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170725

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170821

R150 Certificate of patent or registration of utility model

Ref document number: 6197000

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150