(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023180073
(43)【公開日】2023-12-20
(54)【発明の名称】サーバ装置、データ変更方法、プログラム、およびデータ変更システム
(51)【国際特許分類】
H04W 12/06 20210101AFI20231213BHJP
H04W 12/69 20210101ALI20231213BHJP
H04W 48/08 20090101ALI20231213BHJP
H04W 88/08 20090101ALI20231213BHJP
【FI】
H04W12/06
H04W12/69
H04W48/08
H04W88/08
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022093167
(22)【出願日】2022-06-08
(71)【出願人】
【識別番号】000002897
【氏名又は名称】大日本印刷株式会社
(74)【代理人】
【識別番号】110000958
【氏名又は名称】弁理士法人インテクト国際特許事務所
(74)【代理人】
【識別番号】100120189
【弁理士】
【氏名又は名称】奥 和幸
(72)【発明者】
【氏名】福永 正剛
【テーマコード(参考)】
5K067
【Fターム(参考)】
5K067AA33
5K067AA34
5K067DD11
5K067EE02
5K067EE06
5K067EE16
(57)【要約】
【課題】リアルタイムに通信できない場合であっても、セキュアにデータの変更ができるサーバ装置等を提供することを目的とする。
【解決手段】サーバ装置10は、移動体に設置された電子装置20のデータを変更する場合に、データを変更するための変更データに電子署名を付与し(S3)、電子装置20がネットワーク3と接続可能か否かを判定し(S4)、電子装置20がネットワーク3と接続不可の場合、電子署名を付与した変更データを、電子装置20に直接、接続可能な中継装置である診断装置40に送信する(S6)。
【選択図】
図7
【特許請求の範囲】
【請求項1】
移動体に設置された電子装置のデータを変更する場合に、前記データを変更するための変更データに電子署名を付与する付与手段と、
前記電子装置がネットワークと接続可能か否かを判定する判定手段と、
前記電子装置が前記ネットワークと接続不可の場合、前記電子署名を付与した前記変更データを、前記電子装置に直接、接続可能な中継装置に送信する送信手段と、
を備えることを特徴とするサーバ装置。
【請求項2】
請求項1に記載のサーバ装置において、
前記電子装置のデータを変更するか否かを判定する判定手段を、更に備えることを特徴とするサーバ装置。
【請求項3】
請求項1または請求項2に記載のサーバ装置において、
前記変更データが、前記電子装置において実行されるコマンドであって、前記データを変更するためのコマンドを含むことを特徴とするサーバ装置。
【請求項4】
請求項1または請求項2に記載のサーバ装置において、
前記電子装置における前記変更データの検証に、前記電子署名が使用されることを特徴とするサーバ装置。
【請求項5】
付与手段が、移動体に設置された電子装置のデータを変更する場合に、前記データを変更するための変更データに電子署名を付与する付与ステップと、
判定手段が、前記電子装置がネットワークと接続可能か否かを判定する判定ステップと、
送信手段が、前記電子装置が前記ネットワークと接続不可の場合、前記電子署名を付与した前記変更データを、前記電子装置に直接、接続可能な中継装置に送信する送信ステップと、
を含むことを特徴とするデータ変更方法。
【請求項6】
コンピュータを、
移動体に設置された電子装置のデータを変更する場合に、前記データを変更するための変更データに電子署名を付与する付与手段、
前記電子装置がネットワークと接続可能か否かを判定する判定手段、および、
前記電子装置が前記ネットワークと接続不可の場合、前記電子署名を付与した前記変更データを、前記電子装置に直接、接続可能な中継装置に送信する送信手段として機能させることを特徴とするプログラム。
【請求項7】
移動体に設置された電子装置と、前記電子装置のデータの変更を管理するサーバ装置と、前記電子装置に直接、接続可能な中継装置と、を備えたデータ変更システムにおいて、
前記サーバ装置が、
前記電子装置のデータを変更する場合に、前記データを変更するための変更データに電子署名を付与する付与手段と、
前記電子装置がネットワークと接続可能か否かを判定する判定手段と、
前記電子装置が前記ネットワークと接続不可の場合、前記電子署名を付与した前記変更データを、前記中継装置に送信する送信手段と、
を有することを特徴とするデータ変更システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバ装置、データ変更方法、プログラム、およびデータ変更システムの技術分野に関する。
【背景技術】
【0002】
非接触ICカードやスマートフォン等を利用して車両のドアの解錠・施錠やエンジンの始動を行うデジタルキーなど、車両が外部と認証する機能を持つ場合、鍵や証明書のデータが車両内のECU(Electronic Control Unit)に格納されている。これらのデータを後から更新する場合、不正な書き込みを防止するため、認証やセキュアメッセージを用いて、正しい権限を持った相手からのデータであることを確認する必要がある。例えば、特許文献1には、目的サイトへのアクセス要求に応答して、コンピューティングデバイスが、目的サイトから現在のデジタル証明書を受信し、目的サイトに関する以前に受信したデジタル証明書、証明書審査サービスから受信した確認証明書、ならびにデジタル証明書および/または目的サイトの付加的な特性に基づいて、現在のデジタル証明書が本物であるか不正なものであるかを判定する不正デジタル証明書の自動検出が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来の方式では、ネットワークに接続されていることが前提となっているが、車両等がリアルタイムに通信できるとは限らず、リアルタイムに通信ができない状況では、相互にデータをやり取りする認証ができず、セキュアにデータの更新の実施が難しいという問題点がある。
【0005】
そこで、本発明は、上記問題等に鑑みてなされたものであり、リアルタイムに通信できない場合であっても、セキュアにデータの変更ができるサーバ装置、データ変更方法、プログラム、およびデータ変更システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、請求項1に記載の発明は、移動体に設置された電子装置のデータを変更する場合に、前記データを変更するための変更データに電子署名を付与する付与手段と、前記電子装置がネットワークと接続可能か否かを判定する判定手段と、前記電子装置が前記ネットワークと接続不可の場合、前記電子署名を付与した前記変更データを、前記電子装置に直接、接続可能な中継装置に送信する送信手段と、を備えることを特徴とする。
【0007】
請求項2に記載の発明は、請求項1に記載のサーバ装置において、前記電子装置のデータを変更するか否かを判定する判定手段を、更に備えることを特徴とする。
【0008】
請求項3に記載の発明は、請求項1または請求項2に記載のサーバ装置において、前記変更データが、前記電子装置において実行されるコマンドであって、前記データを変更するためのコマンドを含むことを特徴とする。
【0009】
請求項4に記載の発明は、請求項1または請求項2に記載のサーバ装置において、前記電子装置における前記変更データの検証に、前記電子署名が使用されることを特徴とする。
【0010】
請求項5に記載の発明は、付与手段が、移動体に設置された電子装置のデータを変更する場合に、前記データを変更するための変更データに電子署名を付与する付与ステップと、判定手段が、前記電子装置がネットワークと接続可能か否かを判定する判定ステップと、送信手段が、前記電子装置が前記ネットワークと接続不可の場合、前記電子署名を付与した前記変更データを、前記電子装置に直接、接続可能な中継装置に送信する送信ステップと、を含むことを特徴とする。
【0011】
請求項6に記載の発明は、コンピュータを、移動体に設置された電子装置のデータを変更する場合に、前記データを変更するための変更データに電子署名を付与する付与手段、前記電子装置がネットワークと接続可能か否かを判定する判定手段、および、前記電子装置が前記ネットワークと接続不可の場合、前記電子署名を付与した前記変更データを、前記電子装置に直接、接続可能な中継装置に送信する送信手段として機能させることを特徴とする。
【0012】
請求項7に記載の発明は、移動体に設置された電子装置と、前記電子装置のデータの変更を管理するサーバ装置と、前記電子装置に直接、接続可能な中継装置と、を備えたデータ変更システムにおいて、前記サーバ装置が、前記電子装置のデータを変更する場合に、前記データを変更するための変更データに電子署名を付与する付与手段と、前記電子装置がネットワークと接続可能か否かを判定する判定手段と、前記電子装置が前記ネットワークと接続不可の場合、前記電子署名を付与した前記変更データを、前記中継装置に送信する送信手段と、を有することを特徴とする。
【発明の効果】
【0013】
本発明によれば、移動体に設置された電子装置のデータを変更する場合に、データを変更するための変更データに電子署名を付与し、電子装置がネットワークと接続可能か否かを判定し、電子装置がネットワークと接続不可の場合、電子署名を付与した変更データを、電子装置に直接、接続可能な中継装置に送信するので、リアルタイムに通信できない場合であっても、電子装置に直接、接続した中継装置から、電子署名を付与した変更データを送信し、電子署名を検証後に、変更データに基づき、電子装置内のデータをセキュアに変更ができる。
【図面の簡単な説明】
【0014】
【
図1】本実施形態に係るデータ変更システムの概要構成例を示す図である。
【
図2】
図1のデータ管理サーバ装置の概要構成例を示す図である。
【
図3】
図2のデータ管理サーバ装置のデータベースの一例を示す図である。
【
図5】ビークルサーバ装置の概要構成例を示す図である。
【
図7】データ管理サーバ装置の動作の一例を示すフローチャートである。
【
図8】データ変更システムにおける変更用データセットの流れの一例を示す模式図である。
【
図9】ビークルサーバ装置または診断装置の動作の一例を示すフローチャートである。
【
図10】電子装置の動作の一例を示すフローチャートである。
【発明を実施するための形態】
【0015】
以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、車両の内部に設置された電子装置内のデータの変更を行うデータ変更システムに対して本発明を適用した場合の実施の形態である。なお、車両は、移動体の一例であり、2輪自動車、4輪自動車、または自転車等である。
【0016】
[1.データ変更システムSの概要構成]
まず、
図1等を参照して、本実施形態に係るデータ変更システムSの概要構成について説明する。
図1は、本実施形態に係るデータ変更システムSの概要構成例を示す図である。
【0017】
図1に示すように、データ変更システムSは、データ管理サーバ装置10と、車両Cに搭載された電子装置20と、電子装置20とネットワーク3を介して通信を行うビークルサーバ装置30と、車両Cに直接接続して車両Cの種々の電子システムを診断する診断装置40と、を含んで構成される。なお、車両Cは、移動体の一例であり、2輪自動車、4輪自動車、または自転車等である。車両Cは、ネットワーク3を介しての無線通信機能を有する車両と、有しない車両とがある。
【0018】
データ管理サーバ装置10、電子装置20、および、ビークルサーバ装置30、例えばインターネット等により構成されるネットワーク3に接続されている。データ管理サーバ装置10およびビークルサーバ装置30は、ネットワーク3を介して通信可能になっている。ビークルサーバ装置30および電子装置20は、ネットワーク3および無線基地局5を介して、無線通信可能になっている。電子装置20は、ビークルサーバ装置30を介さず、ネットワーク3を介して、データ管理サーバ装置10と直接、通信を行ってもよい。ネットワーク3は、公開鍵基盤(PKI:public key infrastructure)に接続している。
【0019】
なお、特定の車両Cが、外部との無線通信機能を備えていなく、この車両Cの電子装置20が、ネットワーク3に接続できないこともある。また、車両Cが、ネットワーク3を介しての無線通信機能を有していても、通信環境により、電子装置20が、リアルタイムに、外部と通信できないこともある。
【0020】
データ管理サーバ装置10は、例えば、車両Cに搭載された電子装置20等の特定の機器に提供可能な特定のアプリケーション、データ等を管理するためのサーバである。
【0021】
電子装置20は、例えば、車両Cに設けられているECU(Electronic Control Unit)等の制御装置、eSE(embedded Secure Element)を有した機器である。電子装置20は、車両Cに設けられているナビゲーション装置、ドライブレコーダ等の電子機器、決済サービス等の各種サービスを提供する機器でもよい。電子装置20は、車両C用のデジタルキーでもよい。
【0022】
ここで、データ管理サーバ装置10が電子装置20に提供する電子装置のデータの一例として、ECUに格納する暗号鍵等の鍵のデータや電子証明書のデータ、ナビゲーション用の地図データ、ECU用の制御用のデータ、これらの更新用のデータ等が挙げられる。また、データ管理サーバ装置10が電子装置20に提供するアプリケーション(電子装置のデータの一例)として、ECU用の制御用のプログラム、ナビゲーション用のプログラム、決済サービス等の各種サービスの利用に要するソフトウェア等が挙げられる。
【0023】
ビークルサーバ装置30は、例えば、ネットワーク3を介して電子装置20に接続して、電子装置20において変更するデータを提供するサーバである。
【0024】
診断装置40は、例えば、車両Cの点検の際に、車検の際に、車両Cの電子システムを診断する携帯型のコンピュータである。診断装置40は、車両診断ポート(例えば、OBD(On Board Diagnostics)-II)等を通じて、車両Cの電子装置20と直接、接続可能である。電子装置20に直接、接続可能な中継装置の一例である。診断装置40と電子装置20との接続は、有線の他に、近距離無線通信により直接接続されてもよい。近距離無線通信には、例えば、NFC(Near Field Communication)、Bluetooth(登録商標)、またはUWB(Ultra Wide Band)の技術が用いられる。
【0025】
なお、データ管理サーバ装置10と診断装置40とは、ローカルエリアネットワーク等により、接続される。なお、診断装置40が、ネットワーク3に接続して、データ管理サーバ装置10とデータの送受信を行ってもよい。診断装置40は、車両Cの点検を行う事業所毎や、修理担当者毎にあってもよい。
【0026】
次に、データ管理サーバ装置10の概要構成例について説明する。
図2は、データ管理サーバ装置10の概要構成例を示す図である。
図3は、データ管理サーバ装置10のデータベースの一例を示す図である。
【0027】
図2に示すように、データ管理サーバ装置10は、通信部11と、記憶部12と、表示部13と、操作部14と、システム制御部15と、入出力インターフェース部16とを備えている。そして、システム制御部15と入出力インターフェース部16とは、システムバス17を介して接続されている。
【0028】
通信部11は、ネットワーク3に接続してビークルサーバ装置30等との通信状態を制御したり、ローカルエリアネットワークに接続して、診断装置40等とデータの送受信を行ったりする。
【0029】
記憶部12は、例えば、ハードディスクドライブ、ソリッドステートドライブ等により構成されている。記憶部12には、
図3に示すように、各車両Cに割り当てられたビークルIDと、電子証明書の証明書IDと、電子証明書の期限と、が関連付けられたデータベースが構築されている。なお、電子証明書であるデジタル証明書には、公開鍵、公開鍵に対応する秘密鍵の所有者の識別名、認証局の情報等が含まれている。ビークルIDは、電子装置20に割り当てられた電子装置IDでもよい。また、記憶部12には、ビークルIDと、電子装置IDとは、関連付けて記憶されている。
【0030】
また、記憶部12には、更新が必要なデータやアプリケーションを特定するデータIDと、電子装置20に含まれるデータやアプリケーションのバージョン情報と、最新のバージョン情報と、電子装置IDまたはビークルIDに関連付けられて、記憶されている。記憶部12には、変更するデータに対して付与する電子署名の情報(秘密鍵、公開鍵等)が記憶されている。また、記憶部12には、各電子装置20において実行可能なコマンドに関する情報が電子装置IDまたはビークルIDに関連付けられて記憶されている。
【0031】
記憶部12には、オペレーティングシステムおよびアプリケーションが記憶される。アプリケーションには、相互認証処理プログラム等が含まれる。また、記憶部12には、ビークルサーバ装置30、診断装置40等とのセキュアチャネルを確立するための相互認証処理に用いられる認証用データ(例えば、セキュアチャネル暗号鍵、セキュアチャネルMAC鍵、およびデータ暗号鍵を含む鍵セット)が格納される。
【0032】
記憶部12は、ビークルIDまたは電子装置IDに関連付けられて、車両Cの電子装置20がネットワーク3と接続可能な機能を有するか否かの情報を記憶している。記憶部12は、ビークルIDまたは電子装置IDに関連付けられて、ネットワーク3を介して接続するための電子装置20のネットワークアドレス等を記憶している。
【0033】
表示部13は、例えば、液晶表示素子または有機EL(Electro Luminescence)素子等によって構成されている。操作部14は、例えば、キーボードおよびマウス等によって構成されている。
【0034】
システム制御部15は、例えば、CPU(Central Processing Unit)、RAM(Random Access Memory)、およびROM(Read Only Memory)と、を有する。システム制御部15は、CPUが、ROMや、RAMや、記憶部12に記憶された各種プログラムを読み出して実行する。例えば、システム制御部15は、相互認証処理プログラムに従って、電子装置20およびビークルサーバ装置30との間でセキュアセッション確立のための相互認証処理を実行する。システム制御部15は、認証後、変更用のデータ等を、電子装置20またはビークルサーバ装置30に送信する。データ管理サーバ装置10は、コンピュータとして機能し、システム制御部15が、プログラムに従って、様々な演算や処理を行う。
【0035】
入出力インターフェース部16は、通信部11および記憶部12等とシステム制御部15とのインターフェースである。
【0036】
次に、電子装置20の概要構成例について説明する。
図4は、電子装置20の概要構成例を示す図である。
図4に示すように、電子装置20は、通信部21、記憶部22、および制御部23等を備えて構成される。
【0037】
通信部21は、無線基地局5およびネットワーク3を介して、ビークルサーバ装置30と通信を行う。通信部21は、無線基地局5と通信を行うためのアンテナを有してよし、無線基地局5と無線通信できる機器を介して、無線基地局5と通信を行ってもよい。
【0038】
記憶部22は、例えば、不揮発性メモリ(NVM(Nonvolatile Memory))である。記憶部12には、電子証明書のデータ、ECU用の制御用のデータ等が記憶されている。記憶部12には、オペレーティングシステム(OS)およびアプリケーションが記憶される。アプリケーションには、相互認証処理プログラム等が含まれる。
【0039】
また、記憶部22には、セキュアチャネルを確立するための相互認証処理に用いられる認証用データが、鍵装置に関連付けられて格納される。かかる認証用データは、例えば、セキュアチャネル暗号鍵、セキュアチャネルMAC(Message Authentication Code)鍵、およびデータ暗号鍵を含む鍵セットである。また、記憶部22には、変更するデータに対して付与された電子署名の情報(公開鍵、秘密鍵等)が記憶されている。
【0040】
制御部23は、CPU、RAM、およびROM等を備えて構成される。制御部23は、相互認証処理プログラムに従って、ビークルサーバ装置30、診断装置40等との認証を行う。制御部23は、認証後に、データ更新のコマンドを受信したり、実施したりして、電子証明書等のデータの更新を行う。
【0041】
次に、ビークルサーバ装置30の概要構成例について説明する。
図5は、ビークルサーバ装置30の概要構成例を示す図である。
【0042】
図5に示すように、コンピュータの一例のビークルサーバ装置30は、通信部31と、記憶部32と、表示部33と、操作部34と、システム制御部35と、入出力インターフェース部36とを備えている。そして、システム制御部35と入出力インターフェース部36とは、システムバス37を介して接続されている。なお、これらの構成は、データ管理サーバ装置10における通信部11、記憶部12等とほぼ同様であるので、説明を省略する。以下に説明する診断装置40の概要構成例についても同様である。
【0043】
システム制御部35は、記憶部32に記憶された相互認証処理プログラムに従って、電子装置20との認証を行う。電子装置20を認証後に、データ更新のコマンド等を電子装置20に送信する。
【0044】
次に、診断装置40の概要構成例について説明する。
図6は、診断装置40の概要構成例を示す図である。
【0045】
図6に示すように、コンピュータの一例の診断装置40は、通信部41と、記憶部42と、表示部43と、操作部44と、システム制御部45と、入出力インターフェース部46とを備えている。そして、システム制御部45と入出力インターフェース部46とは、システムバス47を介して接続されている。
【0046】
通信部41は、ローカルエリアネットワーク等に接続して、データ管理サーバ装置10等との通信状態を制御する。また、通信部41は、車両Cの車両診断ポートに接続して、車両Cの電子装置20の通信状態を制御する。通信部41は、近距離無線通信の機能を有し、車両Cの電子装置20の通信状態を制御してもよい。
【0047】
記憶部42は、電子装置20用のデータ更新のコマンド等を記憶する。システム制御部45は、記憶部42に記憶された相互認証処理プログラムに従って、電子装置20との認証を行う。電子装置20を認証後に、データ更新のコマンド等を電子装置20に送信する。
【0048】
[2.データ変更システムSの動作]
次に、データ変更システムSの動作について図を用いて説明する。なお、電子装置20の変更対象のデータの一例である電子証明書の更新を例として、データ変更システムSの動作について説明する。
【0049】
(2.1 データ管理サーバ装置10の動作)
まず、データ管理サーバ装置10の動作について説明する。
図7は、データ管理サーバ装置10の動作の一例を示すフローチャートである。
図8は、データ変更システムSにおける変更用データセットの流れの一例を示す模式図である。
【0050】
図7に示すように、データ管理サーバ装置10は、電子証明書の期限切れか否かを判定する(ステップS1)。具体的には、システム制御部15は、記憶部12のデータベースを参照して、各車両Cの各電子装置20の電子証明書の期限の情報と、現在の日付とを比較して、電子証明書が期限切れか否か、期限が迫っているか否かを判定する。システム制御部15は、電子証明書の期限切れ/期限が迫っている電子装置20の電子装置IDまたはビークルIDを抽出する。このように、データ管理サーバ装置10は、電子装置のデータを変更するか否かを判定する判定手段の一例として機能する。
【0051】
電子証明書が期限切れでない場合(ステップS1:NO)、データ管理サーバ装置10は、処理を終了する。
【0052】
電子証明書が期限切れの場合(ステップS1:YES)、データ管理サーバ装置10は、変更用データセットを生成する(ステップS2)。具体的には、システム制御部15は、電子装置IDまたはビークルIDに基づき、記憶部12のデータベースを参照して、証明書IDを抽出する。システム制御部15は、抽出した証明書IDに基づき、対応する電子証明書の情報を抽出し、電子証明書の情報を更新するための変更用データセットを生成する。変更用データセットは、データを変更するための変更データの一例である。生成する変更用データセットは、変更用のデータのみでもよいし、電子装置20で実行されるデータ変更用のコマンドのみでもよいし、このデータ変更用のコマンドと変更用のデータと組み合わせでもよい。データを変更するためのコマンドの一例である電子装置20で実行されるコマンドは、単独のコマンド、複数のコマンドが組み合わさったコマンドセットでもよい。
【0053】
次に、データ管理サーバ装置10は、変更用データセットに署名を付与する(ステップS3)。具体的には、システム制御部15は、記憶部12のデータベースを参照して、電子署名の秘密鍵を取得する。システム制御部15は、所定のハッシュ関数による変更用データセットのハッシュ値に、秘密鍵を適用して電子署名を生成し、変更用データセットに添付し、電子署名付きの変更用データセットを生成する。この電子署名は、車両Cの電子装置20に搭載されている認証局(CA:Certification Authority)の公開鍵に対応した、CAの秘密鍵により作成される。なお、このCA鍵セットはデータ変更の専用のものでなくともよく、例えば、データ管理サーバ装置10とのネットワーク通信認証にて利用するためのものを流用してもよい。また、電子署名はコマンドごとに生成して添付してもよい。これによりコマンド単位での検証が可能となる。
【0054】
このように、データ管理サーバ装置10は、移動体に設置された電子装置のデータを変更する場合に、データを変更するための変更データに電子署名を付与する付与手段の一例として機能する。
【0055】
次に、データ管理サーバ装置10は、ネットワーク通信可能か否かを判定する(ステップS4)。具体的には、システム制御部15は、ビークルIDに基づき、記憶部12を参照して、車両Cがネットワーク3と接続可能な機能を有するか否かを判定する。また、システム制御部15は、ビークルサーバ装置30を介して、ビークルIDに対応する車両Cとの通信が、現在可能か否かを判定してもよい。このように、データ管理サーバ装置10は、電子装置がネットワークと接続可能か否かを判定する判定手段の一例として機能する。
【0056】
ネットワーク通信可能の場合(ステップS4:YES)、データ管理サーバ装置10は、ビークルサーバ装置30に変更用データセットを送信する(ステップS5)。データ管理サーバ装置10は、ビークルサーバ装置30と相互認証を行い、セキュアチャネルを確立した後、
図8に示すように、システム制御部15は、対象の電子装置20を特定するための電子装置IDまたはビークルID等共に、電子署名を添付した変更用データセットを、ビークルサーバ装置30に送信する。システム制御部15は、対象の電子装置20とのセキュアチャネルを確立するための情報、電子装置20のネットワークアドレス等も、ビークルサーバ装置30に送信する。
【0057】
なお、ビークルサーバ装置30が、特定の電子装置20の更新データを受け取ったあと、電子装置20に送信可能か否かを判定してもよい。ビークルサーバ装置30が、ネットワーク通信可能か否かを判定して、可の場合、電子装置20に電子署名を添付した変更用データセットを送信し、不可の場合、データ管理サーバ装置10に、不可の旨を通知する。また、データ管理サーバ装置10が、ビークルサーバ装置30を介さずに、電子装置20に署名を添付した変更用データセットを、電子装置20に送信してよい。
【0058】
ネットワーク通信不可の場合(ステップS4:NO)、データ管理サーバ装置10は、診断装置40に変更用データセットを送信する(ステップS6)。データ管理サーバ装置10は、診断装置40と相互認証を行い、セキュアチャネルを確立した後、
図8に示すように、システム制御部15は、対象の電子装置20を特定するための電子装置IDまたはビークルID等共に、署名を添付した変更用データセットを、診断装置40に送信する。システム制御部15は、対象の電子装置20とのセキュアチャネルを確立するための情報や、期限情報等も、診断装置40に送信する。このように、データ管理サーバ装置10は、電子装置がネットワークと接続不可の場合、電子署名を付与した前記変更データを、電子装置に直接、接続可能な中継装置に送信する送信手段の一例として機能する。
【0059】
(2.2 ビークルサーバ装置30または診断装置40の動作)
次に、ビークルサーバ装置30または診断装置40において、対象の電子装置20へ変更用データセットを送信する動作について説明する。
図9は、ビークルサーバ装置30または診断装置40の動作の一例を示すフローチャートである。なお、ビークルサーバ装置30または診断装置40において、対象の電子装置20への変更用データセットの送信の動作は、基本的に同じなので、ここでは診断装置40について主に説明する。
【0060】
まず、診断装置40は、データ管理サーバ装置10と接続するために、ローカルエリアネットワーク等に接続する。
【0061】
図9に示すように、診断装置40は、変更用データセットを受信したか否かを判定する(ステップS10)。具体的には、システム制御部45は、ステップS6で、データ管理サーバ装置10と相互認証を行い、セキュアチャネルを確立した後、データ管理サーバ装置10から、変更用データセットを受信したか否かを判定する。
【0062】
次に、システム制御部45は、記憶部42に、対象の電子装置20の電子装置IDまたはビークルID等共に関連付けて、電子署名を添付した変更用データセット、対象の電子装置20とのセキュアチャネルを確立用の鍵の情報等を記憶する。ビークルサーバ装置30の場合は、システム制御部35は、記憶部32に、対象の電子装置20の電子装置IDまたはビークルID等共に関連付けて、署名を添付した変更用データセット、対象の電子装置20とのセキュアチャネルを確立用の鍵の情報、電子装置20のネットワークアドレス等を記憶する。
【0063】
変更用データセットを受信してない場合(ステップS10:NO)、診断装置40は、処理を終了する。
【0064】
次に、診断装置40は、電子装置20と接続したか否かを判定する(ステップS11)。車検等の検査で運ばれてきた車両Cの車両診断ポートに、診断装置40が直接接続される。システム制御部45は、車両Cの電子装置20と、通信が接続したか否かを判定する。なお、診断装置40と電子装置20とは、有線により、または、近距離無線通信により直接接続されてもよい。ビークルサーバ装置30の場合は、システム制御部35が、ネットワーク3を介して、接続を試み、車両Cの電子装置20と、通信が接続したか否かを判定する。
【0065】
接続してない場合(ステップS11:NO)、診断装置40は、電子装置20との接続を待つ。
【0066】
接続した場合(ステップS11:YES)、診断装置40は、変更用データセットを対象車両Cの電子装置20に送信する(ステップS12)。具体的には、システム制御部45は、車両Cの電子装置20と相互認証を行い、セキュアチャネルを確立した後、
図8に示すように、電子署名を添付した変更用データセットを、診断装置40に送信する。情報漏洩の危険が少ない場所での接続の場合では、相互認証の処理は省かれてもよい。ビークルサーバ装置30の場合は、システム制御部35が、ネットワーク3を介して、変更用データセットを対象車両Cの電子装置20に送信する。
【0067】
(2.3 電子装置20の動作)
次に、電子装置20においてデータを更新する動作について説明する。
図10は、電子装置20の動作の一例を示すフローチャートである。なお、ビークルサーバ装置30または診断装置40から変更用データセットを受信した場合、電子装置20においてデータを更新する動作は、基本的に同じなので、診断装置40から変更用データセットを受信した場合について主に説明する。
【0068】
図10に示すように、電子装置20は、変更用データセットを受信した否かを判定する(ステップS20)。具体的には、制御部23は、ステップS12で、診断装置40と相互認証を行い、セキュアチャネルを確立した後、データ管理サーバ装置10から、電子署名を添付した変更用データセットを受信したか否かを判定する。
【0069】
変更用データセットを受信しなかった場合(ステップS20:NO)、電子装置20は、処理を終了する。例えば、このとき、電子装置20は、診断装置40に変更用データセットを受信しなかった旨の情報を送信し、診断装置40が、表示部43に表示させてもよい。
【0070】
変更用データセットを受信した場合(ステップS20:YES)、電子装置20は、署名検証に成功したか否かを判定する(ステップS21)。具体的には、制御部23は、電子署名と変更用データセットとに分ける。制御部23は、あらかじめ保持しているCA公開鍵により電子署名を復号する。制御部23は、変更用データセットのハッシュ値と、復号された電子署名とを比較して、一致すれば、署名検証に成功したと判定する。
【0071】
署名検証に失敗した場合(ステップS21:NO)、電子装置20は、処理を終了する。例えば、このとき、電子装置20は、診断装置40に署名検証に失敗の旨の情報を送信し、診断装置40が、表示部43に表示させてもよい。
【0072】
署名検証に成功した場合(ステップS21:YES)、電子装置20は、電子証明書の更新用コマンドを実行し電子証明書を更新する(ステップS22)。具体的には、制御部23は、変更用データセットの中の電子証明書の更新用コマンドを実行し、記憶部22に記憶されている電子証明書のデータを更新する。制御部23は、コマンドセットを実行することで、電子証明書に含まれる鍵情報を変更等する。なお、更新する電子証明書の鍵等の情報を更新用コマンド自体が含んでよいし、変更用データセットの中に別体で含ませてよい。
【0073】
データの変更が、プログラムやアプリの更新の場合、変更用データセットは、最新版のプログラム等と、プログラム更新の処理を起動させるコマンドセットと、を含んでもよい。データの変更が、地図データのようにデータ量が多いとき、変更用データセットは、地図データを更新の処理を起動させるコマンドセットのみで、地図データは、別途、診断装置40からダウンロードしてもよい。
【0074】
以上説明したように、上記実施形態によれば、車両Cに設置された電子装置20における電子証明書等のデータを変更する場合に、データを変更するための変更データに電子署名を付与し、電子装置20がネットワーク3と接続可能か否かを判定し、電子装置20がネットワークと3接続不可の場合、電子署名を付与した変更データを、電子装置20に直接、接続可能な診断装置40に送信するので、リアルタイムに通信できない場合であっても、電子装置20に直接、接続した診断装置40から、電子署名を付与した変更データを送信し、電子署名を検証後に、変更データに基づき、電子装置20内のデータをセキュアに変更ができる。
【0075】
電子装置のデータを変更するか否かを判定する判定手段を、更に備える場合、変更な必要な電子装置20のみを特定して、電子証明書を更新等のデータの変更を、電子装置20毎に一元に管理できる。
【0076】
変更データが、電子装置において実行されるコマンドであって、データを変更するためのコマンドを含む場合、電子署名を検証後に、データを変更するためのコマンドに基づき、電子装置20内のデータをセキュアに変更ができる。
【0077】
電子装置20における変更データの検証に、電子署名が使用される場合、電子装置20において、不正にデータの改ざん等を防止できる。
【符号の説明】
【0078】
3 ネットワーク
10 データ管理サーバ装置(サーバ装置)
20 電子装置
40 診断装置(中継装置)