(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-22
(45)【発行日】2022-10-03
(54)【発明の名称】データ検証装置
(51)【国際特許分類】
G06F 21/62 20130101AFI20220926BHJP
G06F 21/31 20130101ALI20220926BHJP
B60R 16/02 20060101ALI20220926BHJP
【FI】
G06F21/62
G06F21/31
B60R16/02 660U
B60R16/02 660W
(21)【出願番号】P 2018242136
(22)【出願日】2018-12-26
【審査請求日】2021-09-24
(73)【特許権者】
【識別番号】000005348
【氏名又は名称】株式会社SUBARU
(74)【代理人】
【識別番号】110001357
【氏名又は名称】弁理士法人つばさ国際特許事務所
(72)【発明者】
【氏名】中曽 善朗
【審査官】宮司 卓佳
(56)【参考文献】
【文献】特開平04-033030(JP,A)
【文献】特開2005-115614(JP,A)
【文献】特開2009-212896(JP,A)
【文献】特開2012-103181(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/62
G06F 21/31
B60R 16/02
(57)【特許請求の範囲】
【請求項1】
第1のデータおよび第1のステータス情報を記憶する第1の記憶部と、第2のデータおよび第2のステータス情報を記憶する第2の記憶部とを有する記憶部と、
外部装置との間の通信により取得したデータに基づいて前記第1の記憶部に前記第1のデータを書き込んだ後に前記データに基づいて前記第2の記憶部に前記第2のデータを書き込む書込プロセスを制御するとともに、前記書込プロセスに応じて前記第1のステータス情報および前記第2のステータス情報を更新する管理部と、
前記通信が切断された状態において、前記第1のステータス情報および前記第2のステータス情報に基づいて前記第1のデータおよび前記第2のデータを検証する検証部と
を備
え、
前記管理部は、
前記第1のデータを前記第1の記憶部に書き込む前に、前記第1のステータス情報を第1のステータスに設定し、
前記第1のデータを前記第1の記憶部に書き込んだ後に、前記第1のステータス情報を第2のステータスに設定し、
前記第2のデータを前記第2の記憶部に書き込み、前記第2の記憶部における前記第2のデータと、前記第1の記憶部における前記第1のデータとが一致した場合に、前記第1のステータス情報を第3のステータスに設定する
データ検証装置。
【請求項2】
前記検証部は、前記通信が切断された状態において、前記第1のステータス情報、および前記第2のステータス情報に基づいて、前記書込プロセスが中断しているかどうかを確認し、前記書込プロセスが中断している場合には、どの段階で中断しているのかを確認し、それらの確認結果に基づいて前記第1のデータおよび前記第2のデータを検証する
請求項1に記載のデータ検証装置。
【請求項3】
前記検証部は、前記通信が切断された状態において、前記確認結果、前記第1のデータ、および前記第2のデータに基づいて、前記第1のデータおよび前記第2のデータのそれぞれに対して、データ不正または書込異常を判定する
請求項2に記載のデータ検証装置。
【請求項4】
前記検証部は、前記通信が切断された状態において、前記第1のステータス情報が前記第1のステータスである場合には、前記書込異常が生じたと判定する
請求項3に記載のデータ検証装置。
【請求項5】
前記検証部は、前記通信が切断された状態において、前記第1のステータス情報が前記第2のステータスであり、かつ前記第1のデータにエラーがある場合には、前記データ不正が生じたと判定する
請求項3または
請求項4に記載のデータ検証装置。
【請求項6】
前記管理部は、
前記第1のデータを前記第1の記憶部に書き込む前に、前記第2の記憶部にすでに書き込まれた前記第2のデータにエラーがある場合には前記第2のステータス情報を第4のステータスに設定し、
前記第1のデータを前記第1の記憶部に書き込んだ後に、前記第2のステータス情報を第5のステータスに設定し、
前記第2のデータを前記第2の記憶部に書き込み、前記第2の記憶部における前記第2のデータと、前記第1の記憶部における前記第1のデータとが一致した場合に、前記第2のステータス情報を第6のステータスに設定する
請求項1から
請求項5のいずれか一項に記載のデータ検証装置。
【請求項7】
前記検証部は、前記通信が切断された状態において、前記第1の記憶部に書き込まれた前記第1のデータ、および前記第2の記憶部に書き込まれた前記第2のデータにエラーがあるかどうかを確認し、
前記管理部は、前記第2のステータス情報が前記第5のステータスであり、前記第2のデータにエラーがあり、前記第1のデータにエラーがない場合には、前記第1の記憶部に書き込まれた前記第1のデータに基づいて、前記第2の記憶部に前記第2のデータを再度書き込む
請求項6に記載のデータ検証装置。
【請求項8】
第1のデータおよび第1のステータス情報を記憶する第1の記憶部と、第2のデータおよび第2のステータス情報を記憶する第2の記憶部とを有する記憶部と、
外部装置との間の通信により取得したデータに基づいて前記第1の記憶部に前記第1のデータを書き込んだ後に前記データに基づいて前記第2の記憶部に前記第2のデータを書き込む書込プロセスを制御するとともに、前記書込プロセスに応じて前記第1のステータス情報および前記第2のステータス情報を更新する管理部と、
前記通信が切断された状態において、前記第1のステータス情報および前記第2のステータス情報に基づいて前記第1のデータおよび前記第2のデータを検証する検証部と
を備
え、
前記管理部は、
前記第1のデータを前記第1の記憶部に書き込む前に、前記第2の記憶部にすでに書き込まれた前記第2のデータにエラーがある場合には前記第2のステータス情報を第4のステータスに設定し、
前記第1のデータを前記第1の記憶部に書き込んだ後に、前記第2のステータス情報を第5のステータスに設定し、
前記第2のデータを前記第2の記憶部に書き込み、前記第2の記憶部における前記第2のデータと、前記第1の記憶部における前記第1のデータとが一致した場合に、前記第2のステータス情報を第6のステータスに設定する
データ検証装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、データを検証するデータ検証装置に関する。
【背景技術】
【0002】
自動車等の車両には、しばしば不揮発性の記憶装置が搭載される。その記憶装置には、車両で用いられる様々なデータが記憶される。例えば、特許文献1には、記憶装置への書換指令が正当でないことが確認された場合に、書換禁止指令を生成するデータ書換システムが開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
記憶装置に記憶されたデータは、一般に信頼性が高いことが望まれており、さらなる信頼性の向上が期待されている。
【0005】
データの信頼性を高めることができるデータ検証装置を提供することが望ましい。
【課題を解決するための手段】
【0006】
本開示の一実施の形態に係る第1のデータ検証装置は、記憶部と、管理部と、検証部とを備えている。記憶部は、第1のデータおよび第1のステータス情報を記憶する第1の記憶部と、第2のデータおよび第2のステータス情報を記憶する第2の記憶部とを有する。管理部は、外部装置との間の通信により取得したデータに基づいて第1の記憶部に第1のデータを書き込んだ後にデータに基づいて第2の記憶部に第2のデータを書き込む書込プロセスを制御するとともに、書込プロセスに応じて第1のステータス情報および第2のステータス情報を更新するように構成される。検証部は、通信が切断された状態において、第1のステータス情報および第2のステータス情報に基づいて第1のデータおよび第2のデータを検証する。上記管理部は、第1のデータを第1の記憶部に書き込む前に、第1のステータス情報を第1のステータスに設定し、第1のデータを第1の記憶部に書き込んだ後に、第1のステータス情報を第2のステータスに設定し、第2のデータを第2の記憶部に書き込み、第2の記憶部における第2のデータと、第1の記憶部における第1のデータとが一致した場合に、第1のステータス情報を第3のステータスに設定する。
本開示の一実施の形態に係る第2のデータ検証装置は、記憶部と、管理部と、検証部とを備えている。記憶部は、第1のデータおよび第1のステータス情報を記憶する第1の記憶部と、第2のデータおよび第2のステータス情報を記憶する第2の記憶部とを有する。管理部は、外部装置との間の通信により取得したデータに基づいて第1の記憶部に第1のデータを書き込んだ後にデータに基づいて第2の記憶部に第2のデータを書き込む書込プロセスを制御するとともに、書込プロセスに応じて第1のステータス情報および第2のステータス情報を更新するように構成される。検証部は、通信が切断された状態において、第1のステータス情報および第2のステータス情報に基づいて第1のデータおよび第2のデータを検証する。上記管理部は、第1のデータを第1の記憶部に書き込む前に、第2の記憶部にすでに書き込まれた第2のデータにエラーがある場合には第2のステータス情報を第4のステータスに設定し、第1のデータを第1の記憶部に書き込んだ後に、第2のステータス情報を第5のステータスに設定し、第2のデータを第2の記憶部に書き込み、第2の記憶部における第2のデータと、第1の記憶部における第1のデータとが一致した場合に、第2のステータス情報を第6のステータスに設定する。
【発明の効果】
【0007】
本開示の一実施の形態に係る第1および第2のデータ検証装置によれば、データの信頼性を高めることができる。
【図面の簡単な説明】
【0008】
【
図1】本開示の一実施の形態に係る充電システムの一構成例を表すブロック図である。
【
図2】
図1に示したデータセクションの一例を表す説明図である。
【
図3】
図1に示した更新データセクションの一例を表す説明図である。
【
図4A】
図1に示した車両の一動作例を表すフローチャートである。
【
図4B】
図1に示した車両の一動作例を表す他のフローチャートである。
【
図5A】
図1に示した車両の一動作例を表す他のフローチャートである。
【
図5B】
図1に示した車両の一動作例を表す他のフローチャートである。
【
図6A】
図1に示した車両の一動作例を表す表である。
【
図6B】
図1に示した車両の一動作例を表す他の表である。
【
図7A】
図1に示した車両の一動作例を表す他の表である。
【
図7B】
図1に示した車両の一動作例を表す他の表である。
【発明を実施するための形態】
【0009】
以下、本開示の実施の形態について、図面を参照して詳細に説明する。
【0010】
<実施の形態>
[構成例]
図1は、一実施の形態に係るデータ検証装置が適用された充電システム1の一構成例を表すものである。充電システム1は、車両10と、充電ステーション30と、管理装置40と、サーバ50とを備えている。
【0011】
車両10は、例えば電動車両である。車両10のドライバ(ユーザ)は、車両10のバッテリ14(後述)を充電したい場合には、車両10を充電ステーション30に移動させ、車両10を充電ステーション30にケーブルで接続する。充電ステーション30は、車両10との間でケーブルを介して通信を行い、車両10に記憶された証明書データDTに基づいて認証処理を行い、認証処理が成功した場合に、車両10のバッテリ14に電力を供給する。サーバ50は、ユーザ情報データベース52(後述)を利用して、その証明書データDTに含まれるユーザ識別子UID(後述)に対応する、課金処理に必要な情報を特定し、この情報に基づいて、ユーザに対して課金処理を行う。
【0012】
車両10に記憶された証明書データDTは、例えば、定期的に更新される。この例では、車両10は、充電ステーション30との間でケーブルを介して通信を行うことにより、充電ステーション30から新しい証明書データDTを取得し、この証明書データDTを用いて車両10に記憶された証明書データDTを更新する。証明書データDTを更新する際、例えば車両10において書込異常が生じるおそれがある。この場合には、車両10は、例えば充電ステーション30と通信を行うことにより、証明書データDTを再度更新することができる。
【0013】
ところで、例えば、車両10の部品の故障により、証明書データDTにエラーが生じた場合があり得る。また、悪意者が、証明書データDTを不正に改変するおそれもある。車両10は、車両10に記憶されたステータス情報(後述するデータステータスSTDおよび更新ステータスSTU)および証明書データDTに基づいて、部品故障またはデータ不正が生じたと判定し、ステータス情報を書き換える。この場合、車両10は、ロック状態になり、充電ステーション30により電力が供給されず、充電ステーション30と通信を行っても、証明書データDTを更新しない。そこで、ユーザは、例えば、車両10をディーラに持ち込む。部品故障である場合には、ディーラがその部品を交換し、そのディーラが管理する管理装置40が、車両10と通信を行うことにより、車両10に記憶された証明書データDTを強制的に更新するとともにステータス情報をリセットすることができる。また、データ不正である場合には、ディーラが管理する管理装置40は、車両10と通信を行うことにより、車両10に記憶された証明書データDTを強制的に更新するとともにステータス情報をリセットすることができる。このように、管理装置40は、車両10がロック状態である場合でも、証明書データDTを車両10に強制的に書き込むことができ、これにより、車両10のロックを解除することができるようになっている。
【0014】
車両10は、ゲートウェイ11と、セキュリティ制御部20と、表示部13と、バッテリ14と、インバータ15と、モータ16とを有している。
【0015】
ゲートウェイ11は、中継部11A,11Bを有している。中継部11Aは、セキュリティ制御部20および充電ステーション30の間の通信を中継するように構成される。セキュリティ制御部20および充電ステーション30は、例えばケーブルにより接続され、TLS(Transport Layer Security)を用いて通信を行うようになっている。中継部11Bは、セキュリティ制御部20および管理装置40の間の通信を中継するように構成される。セキュリティ制御部20および管理装置40は、例えばケーブルにより接続され、例えば専用規格を用いたセキュリティ通信を行うようになっている。
【0016】
セキュリティ制御部20は、例えばセキュリティECU(Electronic Control Unit)を含んで構成される。セキュリティECUは、例えば、1または複数の半導体チップを含んで構成される。セキュリティ制御部20は、通信部21と、セクション管理部22と、記憶部23と、電源監視部24と、監視部25とを有している。
【0017】
通信部21は、車両10が充電ステーション30に接続された場合には、ゲートウェイ11の中継部11Aを介して充電ステーション30との間で通信を行い、車両10が管理装置40に接続された場合には、ゲートウェイ11の中継部11Bを介して管理装置40との間で通信を行うように構成される。
【0018】
セクション管理部22は、記憶部23に対するデータの書込プロセス、および記憶部23からのデータの読出プロセスを管理することにより、記憶部23のデータセクションSECDおよび更新データセクションSECUを管理するように構成される。
【0019】
記憶部23は、例えばフラッシュメモリなどの不揮発性メモリを含んで構成される。記憶部23は、ファイアウォールFWと、データセクションSECDと、更新データセクションSECUとを有している。
【0020】
ファイアウォールFWは、セクション管理部22との間の通信を監視し、記憶部23に記憶されたデータを保護するため、望まれない通信を防ぐように構成される。
【0021】
データセクションSECDは、車両10で用いられる様々なデータを記憶するメモリ領域である。
【0022】
図2は、データセクションSECDの一例を表すものである。データセクションSECDは、複数のデータセットDS(データセットDS1,DS2,…)が記憶される。複数のデータセットDSのうちのいずれか1つ(この例では1番目のデータセットDS1)に、証明書データDTが格納される。このデータセットDS1は、データステータスSTDと、データ番号NDと、証明書データDT(証明書データDTD)と、SUM値とを含んでいる。説明の便宜上、データセクションSECDに記憶された証明書データDTを、証明書データDTDとも呼ぶ。
【0023】
データステータスSTDは、セキュリティ制御部20における書込プロセスのステータスについての情報を含む。データステータスSTDは、この例では、後述するように、例えば、“正常”、“要更新”、または“不正”に設定可能である。
【0024】
データ番号NDは、データセクションSECDに記憶された複数のデータセットDSのうちの、このデータセットDS1を識別する番号である。このデータ番号NDは、データセクションSECDにおいて、このデータセットDS1が記憶されたメモリ領域を示すアドレスに対応している。
【0025】
証明書データDTDは、暗号化された電子証明書である。証明書データDTDは、例えば、車両10を識別可能な識別子(車両識別子VID)、ユーザを識別可能な識別子(ユーザ識別子UID)などについての情報を含んでいる。
【0026】
SUM値は、誤り検出符号の符号値である。この例では、SUM値は、このデータセットDS1に含まれる、データステータスSTD、データ番号ND、および証明書データDTDに基づいて算出された値である。セキュリティ制御部20は、このSUM値を用いて、データセットDS1におけるデータエラーの有無を検証することができるようになっている。
【0027】
なお、この例ではSUM値を用いたが、これに限定されるものではなく、これに代えて、例えば、データステータスSTD、データ番号ND、および証明書データDTDのミラーデータであってもよい。この場合には、セキュリティ制御部20は、データエラーの有無に加え、例えばデータエラーの場所を検出することができる。
【0028】
更新データセクションSECU(
図1)は、例えば、データセクションSECDに記憶された証明書データDTを更新する前に、そのデータセクションSECDに記憶すべき新しい証明書データDTを一時的に記憶するメモリ領域である。すなわち、セキュリティ制御部20は、証明書データDTを更新する際、まず、更新データセクションSECUに証明書データDTを書き込み、その後に、データセクションSECDに証明書データDTを書き込むようになっている。
【0029】
図3は、更新データセクションSECUの一例を表すものである。この例では、更新データセクションSECUに記憶されたデータは、更新ステータスSTUと、データ番号NUと、証明書データDT(証明書データDTU)と、SUM値とを含んでいる。説明の便宜上、更新データセクションSECUに記憶された証明書データDTを、証明書データDTUと呼ぶ。
【0030】
更新ステータスSTUは、セキュリティ制御部20における書込プロセスのステータスについての情報を含む。更新ステータスSTUは、この例では、後述するように、例えば、“更新中”、“書換中”、または“未使用”に設定可能である。
【0031】
データ番号NUは、この更新データセクションSECUのデータが書き込まれるべきデータセクションSECDにおけるデータセット(この例ではデータセットDS1)のデータ番号NDである。なお、例えば、データセクションSECDにおけるデータセットDS2に証明書データDTを格納する場合には、この更新データセクションSECUのデータ番号NUは、このデータセットDS2に含まれるデータ番号NDである。
【0032】
証明書データDTUは、データセクションSECDに証明書データDTDとして書き込まれるべき、暗号化された電子証明書である。
【0033】
SUM値は、誤り検出符号の符号値であり、更新ステータスSTU、データ番号NU、および証明書データDTUに基づいて算出された値である。セキュリティ制御部20は、このSUM値を用いて、更新データセクションSECUに記憶されたデータのデータエラーの有無を検証することができるようになっている。
【0034】
なお、この例ではSUM値を用いたが、これに限定されるものではなく、これに代えて、例えば、更新ステータスSTU、データ番号NU、および証明書データDTUのミラーデータであってもよい。この場合には、セキュリティ制御部20は、エラーの有無に加え、データエラーの場所を検出することができる。
【0035】
この構成により、セキュリティ制御部20では、セクション管理部22は、例えば、充電ステーション30からの読出要求に基づいて、記憶部23のデータセクションSECDから証明書データDT(証明書データDTD)を読み出し、通信部21は、この証明書データDTを中継部11Aを介して充電ステーション30に送信する。また、セクション管理部22は、例えば、充電ステーション30から送信された、更新すべき新しい証明書データDTを受け取った場合には、まず、この新しい証明書データDTを、証明書データDTUとして更新データセクションSECUに書き込む。そして、その後に、セクション管理部22は、この新しい証明書データDTを、証明書データDTDとしてデータセクションSECDに書き込む。また、セクション管理部22は、その書込プロセスに応じて、更新データセクションSECUに更新ステータスSTUを書き込むとともに、データセクションSECDにデータステータスSTDを書き込むようになっている。
【0036】
電源監視部24は、セキュリティ制御部20に供給される電源電圧を監視するように構成される。電源監視部24は、電源供給が停止した後に電源供給が復旧したときに、その電源供給の停止についての情報を、監視部25に供給するようになっている。
【0037】
監視部25は、記憶部23に記憶されたデータを監視するように構成される。監視部25は、例えば、車両10が起動する度に、記憶部23に記憶された更新ステータスSTUおよびデータステータスSTDに基づいて、セキュリティ制御部20における書込プロセスが中断しているかどうかを確認する。そして、監視部25は、書込プロセスが中断している場合には、どの段階で中断しているのかを確認し、その確認結果と、記憶部23に記憶された証明書データDTUおよび証明書データDTDとに基づいて、部品故障またはデータ不正が生じているのか、あるいはデータの書込異常が生じているのかを判定する。また、監視部25は、電源監視部24から供給された情報に基づいて、書込プロセスが中断した原因を判定する機能をも有している。
【0038】
表示部13は、例えばインストルメントパネルなどに設けられ、例えば液晶ディスプレイを含んで構成される。表示部13は、監視部25からの指示に基づいて、データの不正やデータの書込異常などについての情報をユーザに通知するようになっている。
【0039】
バッテリ14は、電力を蓄えるとともに、インバータ15に直流電力を供給するように構成される。バッテリ14は、充電ステーション30から供給された電力を蓄えることができるようになっている。インバータ15は、バッテリ14から供給された直流電力に基づいて交流電力を生成し、生成した交流電力をモータ16に供給するように構成される。モータ16は、インバータ15から供給された交流電力に基づいて、機械的エネルギーである駆動力を生成する動力源である。このようにして、車両10は、モータの駆動力に基づいて走行を行うことができるようになっている。
【0040】
充電ステーション30(
図1)は、車両10のバッテリ14に電力を供給することができるように構成される。充電ステーション30は、例えば充電事業を行う事業者により管理される。なお、この例では充電ステーションの例で説明するが、これに限定されるものではなく、これに代えて、例えばV2H(Vehicle to Home)により家庭に電力供給を行うことが可能な装置であってもよい。充電ステーション30は、認証部31と、給電部32と、証明書更新部33とを有している。
【0041】
認証部31は、車両10から取得した証明書データDTに基づいて認証処理を行うように構成される。具体的には、認証部31は、車両10から取得した証明書データDTに基づいて、サーバ50のユーザ情報データベース52(後述)に問い合わせを行うことにより、認証処理を行うようになっている。
【0042】
給電部32は、認証部31における認証処理が成功した場合に、車両10のバッテリ14に電力を供給するように構成される。そして、充電ステーション30は、証明書データDTに含まれるユーザ識別子UIDについての情報、およびバッテリ14への電力供給量についての情報をサーバ50に供給するようになっている。
【0043】
証明書更新部33は、車両10の証明書データDTを更新するように構成される。具体的には、証明書更新部33は、サーバ50により生成され送信された、新しい証明書データDTを車両10の記憶部23に書き込むことにより、車両10の証明書データDTを更新するようになっている。
【0044】
管理装置40は、例えばディーラにより管理される装置である。管理装置40は、証明書更新部41を有している。証明書更新部41は、充電ステーション30の証明書更新部33と同様に、証明書データDTを更新するように構成される。そして、管理装置40は、この証明書データDTを、車両10の記憶部23に強制的に書き込むようになっている。
【0045】
サーバ50は、証明書生成部51と、ユーザ情報データベース52と、課金処理部53とを有している。
【0046】
証明書生成部51は、充電ステーション30や管理装置40からの依頼に基づいて、車両10の証明書データDTを生成するように構成される。そして、サーバ50は、証明書生成部51が生成した証明書データDTを、その依頼元である充電ステーション30や管理装置40に送信するようになっている。
【0047】
ユーザ情報データベース52は、車両識別子VID、ユーザ識別子UID、そのユーザ識別子UIDに対応するユーザに対する課金処理に必要な情報などを、互いに関連づけて管理するように構成される。課金処理に必要な情報は、例えば、クレジットカード情報や、銀行の口座情報である。
【0048】
課金処理部53は、充電ステーション30から送信されたユーザ識別子UIDについての情報および電力供給量についての情報に基づいて、課金処理を行うように構成される。具体的には、課金処理部53は、充電ステーション30から送信されたユーザ識別子UIDに基づいて、ユーザ情報データベース52を用いて、そのユーザ識別子UIDに対応するユーザに対する課金処理に必要な情報を特定する。そして、課金処理部53は、充電ステーション30から送信された電力供給量についての情報に基づいて、金額を算出し、算出した金額、および特定された課金処理に必要な情報に基づいて、課金処理を行うようになっている。
【0049】
ここで、セキュリティ制御部20は、本開示における「データ検証装置」の一具体例に対応する。記憶部23は、本開示における「記憶部」の一具体例に対応する。更新データセクションSECUは、本開示における「第1の記憶部」の一具体例に対応する。データセクションSECDは、本開示における「第2の記憶部」の一具体例に対応する。セクション管理部22は、本開示における「管理部」の一具体例に対応する。監視部25は、本開示における「検証部」の一具体例に対応する。
【0050】
[動作および作用]
続いて、本実施の形態の充電システム1の動作および作用について説明する。
【0051】
(全体動作概要)
まず、
図1を参照して、充電システム1の全体動作概要を説明する。車両10のドライバ(ユーザ)は、車両10のバッテリ14を充電したい場合には、車両10を充電ステーション30に移動させ、車両10を充電ステーション30にケーブルで接続する。充電ステーション30は、車両10との間でケーブルを介して通信を行うことにより、記憶部23のデータセクションSECDに記憶された証明書データDT(証明書データDTD)を読み出す。充電ステーション30の認証部31は、読み出した証明書データDTに基づいて、サーバ50のユーザ情報データベース52に問い合わせを行うことにより、認証処理を行う。そして、認証処理が成功した場合には、給電部32は、車両10のバッテリ14に電力を供給する。充電ステーション30は、証明書データDTに含まれるユーザ識別子UIDについての情報およびバッテリ14への電力供給量についての情報をサーバ50に送信する。サーバ50の課金処理部53は、これらのユーザ識別子UIDについての情報および電力供給量についての情報に基づいて、ユーザ情報データベース52を利用して、課金処理を行う。
【0052】
また、車両10は、充電ステーション30との間でケーブルを介して通信を行うことにより、充電ステーション30から新しい証明書データDTを取得し、この証明書データDTを用いて車両10に記憶された証明書データDTを更新する。セクション管理部22は、記憶部23に対するデータの書込プロセス、および記憶部23からのデータの読出プロセスを管理することにより、記憶部23のデータセクションSECDおよび更新データセクションSECUを管理する。セクション管理部22は、まず、取得した新しい証明書データDTを証明書データDTUとして更新データセクションSECUに書き込み、その後に、新しい証明書データDTを証明書データDTDとしてデータセクションSECDに書き込む。また、セクション管理部22は、その書込プロセスに応じて、更新データセクションSECUに更新ステータスSTUを書き込むとともに、データセクションSECDにデータステータスSTDを書き込む。
【0053】
監視部25は、記憶部23に記憶されたデータを監視する。そして、表示部13は、監視部25からの指示に基づいて、データの不正やデータの書込異常などについての情報をユーザに通知する。
【0054】
(証明書データDTの更新について)
図4A,4Bは、証明書データDTを更新する際の車両10の動作を表すものである。車両10のセクション管理部22は、充電ステーション30から取得した新しい証明書データDTを証明書データDTUとして更新データセクションSECUに書き込み、その後に、新しい証明書データDTを証明書データDTDとしてデータセクションSECDに書き込む。また、セクション管理部22は、その書込プロセスに応じて、更新データセクションSECUに更新ステータスSTUを書き込むとともに、データセクションSECDにデータステータスSTDを書き込む。以下に、この動作について詳細に説明する。
【0056】
まず、セキュリティ制御部20の通信部21は、充電ステーション30から送信された新しい証明書データDTを受信する(ステップS101)。
【0057】
次に、セクション管理部22は、データセクションSECDにおける、更新対象であるデータセットDSを確認する(ステップS102)。この例では、
図2に示したように、証明書データDT(証明書データDTD)は1番目のデータセットDS1に格納されているので、セクション管理部22は、更新対象であるデータセットDSは1番目のデータセットDS1である旨を確認する。
【0058】
次に、セクション管理部22は、更新対象であるデータセットDSにおけるSUM値が正常であるかどうかを確認する(ステップS103)。セクション管理部22は、この例では、1番目のデータセットDS1に含まれるデータステータスSTD、データ番号ND、および証明書データDTDに基づいてSUM値を算出し、このSUM値がデータセットDS1に含まれるSUM値と一致した場合に正常と判定する。
【0059】
ステップS103において、SUM値が正常ではない場合(ステップS103において“N”)には、セクション管理部22は、データセクションSECDに“不正”を示すデータステータスSTDを書き込むことにより、データステータスSTDを“不正”に設定する(ステップS104)。すなわち、この場合には、データセクションSECDにおける証明書データDT(証明書データDTD)にデータエラーが生じているので、セクション管理部22は、部品が故障しているか、あるいはデータが不正に改変された可能性が高いと判定し、データステータスSTDを“不正”に設定する。
【0060】
そして、監視部25は、このデータステータスSTDが“不正”である旨を確認し、表示部13は、監視部25からの指示に基づいて、部品故障またはデータ不正が生じた旨を表示する(ステップS105)。
【0061】
そして、通信部21は、セクション管理部22からの指示に基づいて、部品故障またはデータ不正が生じた旨を充電ステーション30に通知する(ステップS106)。
【0062】
このようにデータステータスSTDが“不正”である場合には、車両10はロック状態になり、これ以降において、充電ステーション30は、車両10の証明書データDTを更新することができず、車両10のバッテリ14を充電することができない。この場合には、ユーザは、例えば、車両10をディーラに持ち込む。部品故障である場合には、ディーラはその部品を交換し、管理装置40は、車両10と通信を行うことにより、車両10に記憶された証明書データDTを更新するとともにデータステータスSTDをリセットする。また、データ不正である場合には、ディーラが管理する管理装置40は、車両10と通信を行うことにより、車両10に証明書データDTを強制的に書き込むとともにデータステータスSTDをリセットする。このようにして、管理装置40は車両10のロックを解除することができる。
【0063】
一方、ステップS103において、SUM値が正常である場合(ステップS103において“Y”)には、セクション管理部22は、更新データセクションSECUに、“書換中”を示す更新ステータスSTUを書き込むことにより、更新ステータスSTUを“書換中”に設定する(ステップS107)。
【0064】
次に、セクション管理部22は、ステップS101において通信部21が受信した新しい証明書データDTを証明書データDTUとして更新データセクションSECUに書き込む(ステップS108)。
【0065】
次に、セクション管理部22は、更新データセクションSECUに書き込まれた証明書データDTUに基づいてSUM値を算出し、そのSUM値を更新データセクションSECUに書き込む(ステップS109)。具体的には、セクション管理部22は、ステップS108により更新データセクションSECUに書き込まれた証明書データDTUを読み出し、読み出された証明書データDTUに基づいてSUM値を算出することができる。なお、これに限定されるものではなく、図示しないバッファメモリが、例えば、ステップS101において通信部21が受信した証明書データDTを一旦記憶し、セクション管理部22が、そのバッファメモリに記憶された証明書データDTに基づいてSUM値を算出し、そのSUM値を更新データセクションSECUに書き込んでもよい。
【0066】
次に、セクション管理部22は、更新データセクションSECUに、“更新中”を示す更新ステータスSTUを書き込むことにより、更新ステータスSTUを“更新中”に設定する(ステップS110)。
【0067】
次に、セクション管理部22は、データセクションSECDに、“要更新”を示すデータステータスSTDを書き込むことにより、データステータスSTDを“要更新”に設定する(ステップS111)。
【0068】
次に、セクション管理部22は、更新データセクションSECUに基づいてデータセクションSECDのデータを更新する更新処理を行う(ステップS112)。具体的には、セクション管理部22は、更新データセクションSECUに記憶されたデータ番号NUおよび証明書データDT(証明書データDTU)を読み出し、読み出した証明書データDTを、データセクションSECDにおけるそのデータ番号NUに対応するデータセットDS(この例では1番目のデータセットDS1)に証明書データDTDとして書き込む。また、セクション管理部22は、更新データセクションSECUに記憶されたSUM値を読み出し、読み出したSUM値をそのデータセットDS(この例ではデータセットDS1)に書き込む。
【0069】
次に、セクション管理部22は、データセクションSECDのデータと更新データセクションSECUのデータとが互いに一致するかどうかを確認する(ステップS113)。具体的には、セクション管理部22は、データセクションSECDにおける、証明書データDTが格納されたデータセットDS(この例では1番目のデータセットDS1)のデータ番号ND、証明書データDTD、およびSUM値と、更新データセクションSECUのデータ番号NU、証明書データDTU、およびSUM値が互いにそれぞれ一致するかどうかを確認する。
【0070】
ステップS113において、データセクションSECDのデータと更新データセクションSECUのデータとが互いに一致する場合(ステップS113において“Y”)には、セクション管理部22は、データセクションSECDに、“正常”を示すデータステータスSTDを書き込むことにより、データステータスSTDを“正常”に設定する(ステップS114)。
【0071】
次に、セクション管理部22は、更新データセクションSECUに、“未使用”を示す更新ステータスSTUを書き込むことにより、更新ステータスSTUを“未使用”に設定する(ステップS115)。
【0072】
次に、監視部25は、データステータスSTDが“正常”であり更新ステータスSTUが“未使用”である旨を確認し、表示部13は、監視部25からの指示に基づいて、証明書データDTの更新が正常に終了した旨を表示する(ステップS116)。
【0073】
そして、通信部21は、セクション管理部22からの指示に基づいて、証明書データDTの更新が正常に終了した旨を充電ステーション30に通知する(ステップS117)。
【0074】
一方、ステップS113において、データセクションSECDのデータと更新データセクションSECUのデータとが互いに一致しない場合(ステップS113において“N”)には、セクション管理部22は、データセクションSECDのデータステータスSTDを“要更新”に維持し(ステップS118)、ステップS112と同様に、再度、更新データセクションSECUに基づいてデータセクションSECDのデータを更新する更新処理を行い(ステップS119)、ステップS113と同様に、データセクションSECDのデータと更新データセクションSECUのデータとが互いに一致するかどうかを確認する(ステップS120)。ステップS120において、データセクションSECDのデータと更新データセクションSECUのデータとが互いに一致する場合(ステップS120において“Y”)には、ステップS114に進む。一方、データセクションSECDのデータと更新データセクションSECUのデータとが互いに一致しない場合(ステップS120において“N”)には、所定回数、ステップS119,S120を繰り返す。
【0075】
繰り返し回数が所定回数に達した場合(ステップS121において“Y”)には、監視部25は、データステータスSTDが“要更新”であり更新ステータスSTUが“更新中”である旨を確認し、表示部13は、監視部25からの指示に基づいて、書込異常が生じた旨を表示する(ステップS122)。
【0076】
そして、通信部21は、セクション管理部22からの指示に基づいて、書込異常が生じた旨を充電ステーション30に通知する(ステップS123)。
【0077】
以上で、このフローは終了する。ここで、証明書データDTUは、本開示における「第1のデータ」の一具体例に対応する。更新ステータスSTUは、本開示における「第1のステータス情報」の一具体例に対応する。更新ステータスSTUの“書込中”は、本開示における「第1のステータス」の一具体例に対応する。更新ステータスSTUの“更新中”は、本開示における「第2のステータス」の一具体例に対応する。更新ステータスSTUの“未使用”は、本開示における「第3のステータス」の一具体例に対応する。証明書データDTDは、本開示における「第2のデータ」の一具体例に対応する。データステータスSTDは、本開示における「第2のステータス情報」の一具体例に対応する。データステータスSTDの“不正”は、本開示における「第4のステータス」の一具体例に対応する。データステータスSTDの“要更新”は、本開示における「第5のステータス」の一具体例に対応する。データステータスSTDの“正常”は、本開示における「第6のステータス」の一具体例に対応する。
【0078】
(バッテリ14を充電する動作について)
図5A,5Bは、証明書データDTを使用してバッテリ14を充電する際の車両10の動作を表すものである。車両10のセクション管理部22は、データセクションSECDから、証明書データDT(証明書データDTD)を含むデータセットDSを読み出し、そのデータセットDSに基づいて、その証明書データDTが正常であるかどうかを判定する。そして、充電ステーション30は、その証明書データDTが正常である場合に、車両10のバッテリ14を充電する。以下に、この動作について詳細に説明する。
【0079】
まず、セクション管理部22は、データセクションSECDから、証明書データDT(証明書データDTD)を含むデータセットDSを読み出す(ステップS131)。この例では、1番目のデータセットDS1が証明書データDTを含むので、セクション管理部22は、1番目のデータセットDS1を読み出す。
【0080】
次に、セクション管理部22は、読み出したデータセットDSに含まれるデータステータスSTDが“不正”であるかどうかを確認する(ステップS132)。
【0081】
ステップS132において、データステータスSTDが“不正”である場合(ステップS132において“Y”)には、監視部25は、このデータステータスSTDが“不正”である旨を確認し、表示部13は、監視部25からの指示に基づいて、部品故障またはデータ不正が生じた旨を表示する(ステップS133)。
【0082】
そして、通信部21は、ステップS106と同様に、セクション管理部22からの指示に基づいて、部品故障またはデータ不正が生じた旨を充電ステーション30に通知する(ステップS134)。この場合には、充電ステーション30は、車両10のバッテリ14に電力を供給しない。
【0083】
一方、ステップS132において、データステータスSTDが“不正”ではない場合(ステップS132において“N”)には、セクション管理部22は、このデータステータスSTDが“要更新”であるかどうかを確認する(ステップS135)。
【0084】
ステップS135において、データステータスSTDが“要更新”である場合(ステップS135において“Y”)には、セクション管理部22は、データセクションSECDのデータステータスSTDを“要更新”に維持し(ステップS136)、再度、更新データセクションSECUに基づいてデータセクションSECDのデータを更新する更新処理を行い(ステップS137)、データセクションSECDのデータと更新データセクションSECUのデータとが互いに一致するかどうかを確認する(ステップS138)。ステップS138において、データセクションSECDのデータと更新データセクションSECUのデータとが互いに一致する場合(ステップS138において“Y”)には、ステップS142に進む。一方、データセクションSECDのデータと更新データセクションSECUのデータとが互いに一致しない場合(ステップS138において“N”)には、所定回数、ステップS137,S138を繰り返す。
【0085】
繰り返し回数が所定回数に達した場合(ステップS139において“Y”)には、監視部25は、データステータスSTDが“要更新”である旨を確認し、表示部13は、監視部25からの指示に基づいて、書込異常が生じた旨を表示する(ステップS140)。
【0086】
そして、通信部21は、セクション管理部22からの指示に基づいて、書込異常が生じた旨を充電ステーション30に通知する(ステップS141)。この場合には、充電ステーション30は、車両10のバッテリ14に電力を供給しない。
【0087】
一方、ステップS135において、データステータスSTDが“要更新”ではない場合(ステップS135において“N”)には、セクション管理部22は、ステップS131において読み出したデータセットDSのSUM値が正常であるかどうかを確認する(ステップS142)。セクション管理部22は、この例では、1番目のデータセットDS1に含まれるデータステータスSTD、データ番号ND、および証明書データDTDに基づいてSUM値を算出し、このSUM値がデータセットDS1に含まれるSUM値と一致した場合に正常と判定する。
【0088】
ステップS142において、データセットDSのSUM値が正常ではない場合(ステップS142において“N”)には、セクション管理部22は、データセクションSECDに、“不正”を示すデータステータスSTDを書き込むことにより、データステータスSTDを“不正”に設定する(ステップS143)。
【0089】
そして、監視部25は、このデータステータスSTDが“不正”である旨を確認し、表示部13は、監視部25からの指示に基づいて、部品故障またはデータ不正が生じた旨を表示する(ステップS144)。
【0090】
そして、通信部21は、セクション管理部22からの指示に基づいて、部品故障またはデータ不正が生じた旨を充電ステーション30に通知する(ステップS145)。この場合には、充電ステーション30は、車両10のバッテリ14に電力を供給しない。
【0091】
一方、ステップS142において、データセットDSのSUM値が正常である場合(ステップS142において“Y”)には、セクション管理部22は、そのデータセットDSに含まれる証明書データDT(証明書データDTD)は正常であると判定し、通信部21は、この証明書データDTを充電ステーション30に送信する(ステップS146)。
【0092】
充電ステーション30の認証部31は、車両10から送信された証明書データDTに基づいて認証処理を行い、認証処理が成功した場合には、給電部32が、車両10のバッテリ14に電力を供給する。このようにして、車両10のバッテリ14に電力が供給される(ステップS147)。
【0093】
(車両10におけるデータ検証動作について)
セキュリティ制御部20の監視部25は、例えば、車両10が起動する度に、記憶部23に記憶された更新ステータスSTUおよびデータステータスSTDに基づいて、セキュリティ制御部20における書込プロセスが中断しているかどうかを確認する。そして、監視部25は、書込プロセスが中断している場合には、どの段階で中断しているのかを確認し、その確認結果と、記憶部23に記憶された証明書データDTUおよび証明書データDTDとに基づいて、部品故障またはデータ不正が生じているのか、あるいはデータの書込異常が生じているのかを判定する。以下に、更新データセクションSECUのデータに基づくデータ検証、およびデータセクションSECDのデータに基づくデータ検証について、順に説明する。
【0094】
図6A,6Bは、更新データセクションSECUのデータに基づく監視部25におけるデータ検証動作の一例を表すものである。
図6において、“データエラー無し”は、SUM値が正常であることを示し、“データエラー有り”は、SUM値が正常ではないことを示す。
【0095】
例えば、更新ステータスSTUが“未定義”である場合には、監視部25は、部品故障またはデータ不正が生じたと判定する。すなわち、この例では、“更新中”、“書換中”、および“未使用”の3つが、更新ステータスSTUとして設定できるように定義されている。よって、更新ステータスSTUがこれらのいずれでもないことは、更新ステータスSTU自体が変化してしまったことを意味している。よって、監視部25は、部品故障またはデータ不正が生じたと判定する。
【0096】
この場合には、セクション管理部22は、データステータスSTDを“不正”に設定することにより車両10をロックする。そして、表示部13は、監視部25からの指示に基づいて、部品故障またはデータ不正が生じた旨を表示する。ロック状態では、車両10は、更新データセクションSECUのデータの消去や充電ステーション30による再度の証明書データDTの更新を行うことはできない。充電ステーション30は、車両10のロックを解除することはできず、管理装置40のみが車両10のロックを解除することができる。よって、車両10のドライバ(ユーザ)は、車両10をディーラに持ち込む。部品故障である場合には、ディーラはその部品を交換する。そして、管理装置40は、車両10と通信を行うことにより、車両10に記憶された証明書データDTを更新するとともにデータステータスSTDをリセットする。また、データ不正である場合には、管理装置40は、車両10と通信を行うことにより、車両10に記憶された証明書データDTを更新するとともにデータステータスSTDをリセットする。管理装置40は、このように車両10に強制的に証明書データDTを書き込むことにより、車両10のロックを解除する。
【0097】
また、例えば、更新ステータスSTUが“書換中”であり、証明書データDTUにデータエラーがある場合には、監視部25は、更新データセクションSECUに対するデータの書込中に書込異常が生じたと判定する。
【0098】
この場合には、セクション管理部22は、データステータスSTDを“要更新”に設定する。そして、表示部13は、監視部25からの指示に基づいて、書込異常が生じた旨を表示する。すなわち、この場合には、更新データセクションSECUへの証明書データDTの書き込みが終了していない段階で書込プロセスが中断したので、例えば、証明書データDTが不正に改変されたおそれはないため、車両10はロックされない。よって、セクション管理部22は、更新データセクションSECUのデータの消去や充電ステーション30による再度の証明書データDTの更新を行うことができる。
【0099】
また、例えば、更新ステータスSTUが“更新中”であり、証明書データDTUにデータエラーがある場合には、監視部25は、部品故障またはデータ不正が生じたと判定する。すなわち、この場合には、更新データセクションSECUへの証明書データDTの書き込みが終了した後に書込プロセスが中断したので、例えば、証明書データDTUが不正に改変されたおそれがある。よって、監視部25は、部品故障またはデータ不正が生じたと判定する。
【0100】
この場合には、セクション管理部22は、データステータスSTDを“不正”に設定することにより車両10をロックする。そして、表示部13は、監視部25からの指示に基づいて、部品故障またはデータ不正が生じた旨を表示する。ロック状態では、車両10は、更新データセクションSECUのデータの消去や充電ステーション30による再度の証明書データDTの更新を行うことはできない。充電ステーション30は、車両10のロックを解除することはできず、管理装置40のみが車両10のロックを解除することができる。
【0101】
また、例えば、更新ステータスSTUが“未使用”であり、証明書データDTUにデータエラーがある場合には、監視部25は、問題ないと判定する。すなわち、更新ステータスSTUが“未使用”であるので、証明書データDTUのデータエラーは、証明書データDTの更新後に生じている。よって、監視部25は、問題ないと判定する。
【0102】
この場合には、セクション管理部22は、更新データセクションSECUに記憶された証明書データDTUを消去することができる。また、例えば、セクション管理部22は、充電ステーション30による再度の証明書データDTの更新を行うことができる。
【0103】
また、例えば、更新ステータスSTUが“書換中”であり、証明書データDTUにデータエラーがない場合には、監視部25は、更新データセクションSECUに対するデータの書込中に書込異常が生じたと判定する。
【0104】
この場合には、セクション管理部22は、データステータスSTDを“要更新”に設定する。そして、表示部13は、監視部25からの指示に基づいて、書込異常が生じた旨を表示する。すなわち、この場合には、更新データセクションSECUへの証明書データDTの書き込みが終了していない段階で書込プロセスが中断したので、例えば、証明書データDTが不正に改変されたおそれはないため、車両10はロックされない。よって、セクション管理部22は、更新データセクションSECUのデータの消去や充電ステーション30による再度の証明書データDTの更新を行うことができる。
【0105】
また、例えば、更新ステータスSTUが“更新中”であり、証明書データDTUにデータエラーがない場合には、監視部25は、更新データセクションSECUに基づいてデータセクションSECDのデータを更新する際に書込異常が生じたと判定する。
【0106】
この場合には、更新データセクションSECUの証明書データDTUにデータエラーがないので、セクション管理部22は、更新データセクションSECUに基づいてデータセクションSECDのデータを更新する更新処理を行う。その結果、データセクションSECDには、証明書データDTが正常に書き込まれ、更新ステータスSTUは“未使用”に設定されることにより、証明書データDTの更新は正常に終了する。
【0107】
また、例えば、更新ステータスSTUが“未使用”であり、証明書データDTUにデータエラーがない場合には、証明書データDTの更新は正常に終了しているので、監視部25は、問題ないと判定する。
【0108】
この場合には、セクション管理部22は、例えば、更新データセクションSECUに記憶された証明書データDTUを消去することができる。
【0109】
図7A,7Bは、
データセクションSECDのデータに基づく監視部25におけるデータ検証動作の一例を表すものである。
【0110】
例えば、データステータスSTDが“正常”であり、証明書データDTDにデータエラーがある場合には、監視部25は、書込異常が生じたと判定する。
【0111】
この場合には、証明書データDTDにデータエラーがあるため、セクション管理部22は、この証明書データDTDを使用不可にする。これにより、充電ステーション30は車両10のバッテリ14に電力を供給することはできない。そして、表示部13は、監視部25からの指示に基づいて、書込異常が生じた旨を表示する。更新データセクションSECUにデータエラーがない場合には、セクション管理部22は、更新データセクションSECUに基づいてデータセクションSECDのデータを更新する更新処理を行うことができる。これにより、充電ステーション30は、車両10のバッテリ14を充電することができるようになる。
【0112】
また、例えば、データステータスSTDが“要更新”であり、証明書データDTDにデータエラーがある場合には、監視部25は、更新データセクションSECUに基づいてデータセクションSECDのデータを更新する際に書込異常が生じたと判定する。
【0113】
この場合には、表示部13は、書込異常が生じた旨を表示する。セクション管理部22は、充電ステーション30による再度の証明書データDTの更新を行うことができる。更新データセクションSECUの証明書データDTUにデータエラーがなく、更新ステータスSTUが"更新中"である場合には、セクション管理部22は、更新データセクションSECUに基づいてデータセクションSECDのデータを更新する更新処理を行うことができる。
【0114】
また、例えば、データステータスSTDが“不正”であり、証明書データDTDにデータエラーがある場合には、監視部25は、部品故障またはデータ不正が生じたと判定する。
【0115】
この場合には、データステータスSTDがすでに“不正”であるため、車両10はロック状態である。表示部13は、監視部25からの指示に基づいて、部品故障またはデータ不正が生じた旨を表示する。ロック状態では、車両10は、更新データセクションSECUのデータの消去や充電ステーション30による再度の証明書データDTの更新を行うことはできない。充電ステーション30は、車両10のロックを解除することはできず、管理装置40のみが車両10のロックを解除することができる。
【0116】
例えば、データステータスSTDが“正常”であり、証明書データDTDにデータエラーがない場合には、証明書データDTの更新は正常に終了しているので、監視部25は、問題ないと判定する。
【0117】
この場合には、証明書データDTを使用することができる。例えば、充電ステーション30は、車両10のバッテリ14に電力を供給することができる。
【0118】
また、例えば、データステータスSTDが“要更新”であり、証明書データDTDにデータエラーがない場合には、監視部25は、更新データセクションSECUに基づいてデータセクションSECDのデータを更新する際に書込異常が生じたと判定する。
【0119】
この場合には、表示部13は、書込異常が生じた旨を表示する。セクション管理部22は、充電ステーション30による再度の証明書データDTの更新を行うことができる。更新データセクションSECUの証明書データDTUにデータエラーがなく、更新ステータスSTUが"更新中"である場合には、セクション管理部22は、更新データセクションSECUに基づいてデータセクションSECDのデータを更新する更新処理を行うことができる。
【0120】
また、例えば、データステータスSTDが“不正”であり、証明書データDTDにデータエラーがある場合には、監視部25は、部品故障またはデータ不正が生じたと判定する。
【0121】
この場合には、データステータスSTDがすでに“不正”であるため、車両10はロック状態である。表示部13は、監視部25からの指示に基づいて、部品故障またはデータ不正が生じた旨を表示する。ロック状態では、車両10は、更新データセクションSECUのデータの消去や充電ステーション30による再度の証明書データDTの更新を行うことはできない。充電ステーション30は、車両10のロックを解除することはできず、管理装置40のみが車両10のロックを解除することができる。
【0122】
このように、セキュリティ制御部20では、更新データセクションSECUおよびデータセクションSECDを設け、更新データセクションSECUに更新ステータスSTUを記憶させるとともに、データセクションSECDにデータステータスSTDを記憶させるようにした。そして、監視部25は、更新ステータスSTUおよびデータステータスSTDに基づいて、書込プロセスの中断を確認するようにした。そして、監視部25は、書込プロセスが中断している場合には、どの段階で中断しているのかを確認し、その確認結果と、記憶部23に記憶された証明書データDTUおよび証明書データDTDとに基づいて、部品故障またはデータ不正が生じているのか、あるいはデータの書込異常が生じているのかを判定するようにした。これにより、セキュリティ制御部20では、車両10と、外部装置との間で通信を行うことなく、部品故障またはデータ不正が生じているのか、あるいはデータの書込異常が生じているのかを判定することができる。その結果、セキュリティ制御部20では、証明書データDTの信頼性を高めることができる。
【0123】
すなわち、例えば、車両と外部装置との間で通信を行い、車両が、記憶している証明書データDTと、外部装置から送信された証明書データDTとを比較することにより、証明書データDTを検証する方法があり得る。しかしながら、例えば、悪意のある第3者がこの外部装置を用意した場合には、証明書データDTを正確に検証することができない。
【0124】
一方、本実施の形態に係るセキュリティ制御部20では、更新ステータスSTUおよびデータステータスSTDに基づいて、書込プロセスの中断を確認し、この確認結果と、記憶部23に記憶された証明書データDTUおよび証明書データDTDとに基づいて、証明書データDTを検証するようにした。これにより、本実施の形態では、車両10と外部装置との間で通信を行うことなく、車両10のセキュリティ制御部20自体が、証明書データDTを検証することができる。その結果、セキュリティ制御部20では、証明書データDTを正確に検証することができるので、データ(証明書データDT)の信頼性を高めることができる。
【0125】
また、セキュリティ制御部20では、部品故障またはデータ不正が生じているのか、あるいはデータの書込異常が生じているのかを判定するようにした。これにより、例えば部品故障またはデータ不正が生じている場合には、車両10をディーラに持ち込むことにより、部品の交換などの適切な処置を受けることができる。また、例えば、データの書込異常の場合には、車両10をディーラに持ち込むことなく、正常な状態に復帰することができる。その結果、セキュリティ制御部20では、ユーザの利便性を高めることができる。
【0126】
[効果]
以上のように本実施の形態では、更新データセクションおよびデータセクションを設け、更新データセクションに更新ステータスを記憶させるとともに、データセクションにデータステータスを記憶させるようにした。そして、更新ステータスおよびデータステータスに基づいて、書込プロセスの中断を確認し、書込プロセスが中断している場合には、どの段階で中断しているのかを確認し、その確認結果と、記憶部23に記憶された証明書データとに基づいて、部品故障またはデータ不正が生じているのか、あるいはデータの書込異常が生じているのかを判定するようにした。これにより、証明書データの信頼性を高めることができる。
【0127】
本実施の形態では、部品故障またはデータ不正が生じているのか、あるいはデータの書込異常が生じているのかを判定するようにしたので、ユーザの利便性を高めることができる。
【0128】
以上、実施の形態を挙げて本技術を説明したが、本技術はこれらの実施の形態等には限定されず、種々の変形が可能である。
【0129】
例えば、上記実施の形態では、本技術を証明書データDTに適用したが、これに限定されるものではなく、様々なデータに適用することができる。
【0130】
また、例えば、上記実施の形態では、本技術を充電システムに適用したが、これに限定されるものではなく、充電以外の用途に適用してもよい。
【0131】
なお、本明細書中に記載された効果はあくまで例示であって限定されるものではなく、また、他の効果があってもよい。
【符号の説明】
【0132】
1…充電システム、10…車両、11…ゲートウェイ、11A,11B…中継部、13…表示部、14…バッテリ、15…インバータ、16…モータ、20…セキュリティ制御部、21…通信部、22…セクション管理部、23…記憶部、24…電源監視部、25…監視部、DS,DS1,DS2…データセット、DT,DTD,DTU…証明書データ、FW…ファイアウォール、ND,NU…データ番号、SECD…データセクション、SECU…更新データセクション、STD…データステータス、STU…更新ステータス。