(58)【調査した分野】(Int.Cl.,DB名)
車両に搭載されるデータ保安装置であって、マスタ鍵と前記車両に対応する識別子とを使用して生成された前記車両の共通鍵を記憶する鍵記憶部を備えるデータ保安装置のコンピュータに、
前記車両のログを対象に、前記車両の共通鍵を使用してメッセージ認証符号を生成する暗号処理機能と、
前記ログに前記メッセージ認証符号を付したメッセージ認証符号付きログを、前記データ保安装置の外部の装置とデータを送受するインタフェース部により、マスタ鍵と前記車両に対応する識別子とを使用して前記車両の共通鍵を生成する鍵生成部を備える車両情報収集装置に、送信する送信機能と、を実現させるためのコンピュータプログラムであり、
前記メッセージ認証符号の生成対象のログは、前記データ保安装置が前記インタフェース部により前記車両に搭載される複数の車載コンピュータのそれぞれから受信した前記車載コンピュータのログであり、
前記メッセージ認証符号の生成対象のログは、前記データ保安装置が前記インタフェース部により前記車両の制御機能を有する車載コンピュータから受信したログである、
コンピュータプログラム。
【発明の概要】
【発明が解決しようとする課題】
【0004】
自動車の車載制御システムのECUのログを安全に収集することの実現が一つの課題であった。
【0005】
本発明は、このような事情を考慮してなされたものであり、ECU等の車載コンピュータのログを安全に収集することができる車両情報収集システム、データ保安装置
、車両情報収集方法、及びコンピュータプログラムを提供することを課題とする。
【課題を解決するための手段】
【0006】
(1)本発明の一態様は、車両情報収集装置と、車両に搭載されるデータ保安装置とを備え、前記データ保安装置は、マスタ鍵と前記車両に対応する識別子とを使用して生成された前記車両の共通鍵を記憶する鍵記憶部と、自データ保安装置の外部の装置とデータを送受するインタフェース部と、前記車両のログを対象に前記車両の共通鍵を使用してメッセージ認証符号を生成する暗号処理部と、を備え、前記ログに前記メッセージ認証符号を付したメッセージ認証符号付きログを前記インタフェース部により前記車両情報収集装置に送信し、前記車両情報収集装置は、前記車両とデータを送受する車両インタフェースと、マスタ鍵と前記車両に対応する識別子とを使用して前記車両の共通鍵を生成する鍵生成部と、前記車両インタフェースにより前記データ保安装置から受信したメッセージ認証符号付きログのメッセージ認証符号を、前記鍵生成部が生成した前記車両の共通鍵を使用して検証する暗号処理部と、前記メッセージ認証符号の検証が合格したログを格納する記憶部と、を備え
、前記メッセージ認証符号の生成対象のログは、前記データ保安装置が前記インタフェース部により前記車両に搭載される複数の車載コンピュータのそれぞれから受信した前記車載コンピュータのログであり、前記メッセージ認証符号の生成対象のログは、前記データ保安装置が前記インタフェース部により前記車両の制御機能を有する車載コンピュータから受信したログである、車両情報収集システムである。
本発明の一態様においては、前記データ保安装置は、前記メッセージ認証符号の生成対象のログと、当該ログについての第2メッセージ認証符号とを前記インタフェース部により前記車載コンピュータから受信し、前記第2メッセージ認証符号を検証し、前記第2メッセージ認証符号の検証が合格したログを前記インタフェース部により前記車両情報収集装置に送信してもよい。
本発明の一態様においては、前記第2メッセージ認証符号は、前記メッセージ認証符号の生成対象のログを格納して前記車載コンピュータに伝送するパケットについてのメッセージ認証符号であってもよい。
本発明の一態様においては、前記メッセージ認証符号の生成対象のログは複数のブロックに分割され、該ブロック毎に第2メッセージ認証コードが計算され、前記データ保安装置は、該ブロックと該第2メッセージ認証コードとを前記インタフェース部により前記車載コンピュータから受信してもよい。
本発明の一態様は、上記(1)の車両情報収集システムにおいて、前記データ保安装置は、前記車両の複数の状態の記録を統合する統合ログを生成する統合ログ生成部をさらに備え、前記統合ログ生成部は、前記車両の複数の状態の記録について、順次、古い記録に新しい記録を上書きすることにより一定期間分の記録を保持し、所定の事故判定条件を満たした時に保持している前記車両の複数の状態の記録を統合する統合ログを生成し、前記データ保安装置の暗号処理部は、該統合ログのメッセージ認証符号を、自データ保安装置の署名鍵を使用して生成し、前記データ保安装置は、該統合ログに該統合ログのメッセージ認証符号を付したメッセージ認証符号付き統合ログを前記インタフェース部により前記車両情報収集装置に送信する、車両情報収集システムである。
本発明の一態様は、上記のいずれかの車両情報収集システムにおいて、前記車両は自動車であり、前記データ保安装置は、所定のログ送信条件を満たした時に、メッセージ認証符号付きログを前記インタフェース部により前記車両情報収集装置に送信し、前記ログ送信条件は、前記自動車の走行モードが「パーキング(駐車)」であること、又は、前記自動車のエンジンが始動していること、又は、前記自動車の走行モードが「パーキング(駐車)」であり且つ前記自動車のエンジンが始動していること、である、車両情報収集システムである。
本発明の一態様においては、前記車両に対応する識別子は、前記車両に搭載された装置の識別子であってもよい。
本発明の一態様においては、前記車両に対応する識別子は、前記データ保安装置の識別子であってもよい。
【0007】
本発明の一態様は、車両に搭載されるデータ保安装置において、マスタ鍵と前記車両に対応する識別子とを使用して生成された前記車両の共通鍵を記憶する鍵記憶部と、自データ保安装置の外部の装置とデータを送受するインタフェース部と、前記車両のログを対象に前記車両の共通鍵を使用してメッセージ認証符号を生成する暗号処理部と、を備え、前記ログに前記メッセージ認証符号を付したメッセージ認証符号付きログを前記インタフェース部により、マスタ鍵と前記車両に対応する識別子とを使用して前記車両の共通鍵を生成する鍵生成部を備える車両情報収集装置に、送信
し、前記メッセージ認証符号の生成対象のログは、前記データ保安装置が前記インタフェース部により前記車両に搭載される複数の車載コンピュータのそれぞれから受信した前記車載コンピュータのログであり、前記メッセージ認証符号の生成対象のログは、前記データ保安装置が前記インタフェース部により前記車両の制御機能を有する車載コンピュータから受信したログである、データ保安装置である。
【0008】
(6)本発明の一態様は、車両とデータを送受する車両インタフェースと、前記車両に搭載されるデータ保安装置の署名鍵を生成する鍵生成部と、前記車両インタフェースにより前記データ保安装置から受信したメッセージ認証符号付きログのメッセージ認証符号を、前記鍵生成部が生成した前記データ保安装置の署名鍵を使用して検証する暗号処理部と、前記メッセージ認証符号の検証が合格したログを格納する記憶部と、を備える車両情報収集装置である。
【0009】
本発明の一態様は、車両に搭載されるデータ保安装置が、マスタ鍵と前記車両に対応する識別子とを使用して生成された前記車両の共通鍵を記憶する鍵記憶部を備え、前記データ保安装置が、前記車両のログを対象に、前記車両の共通鍵を使用してメッセージ認証符号を生成するメッセージ認証符号生成ステップと、前記データ保安装置が、前記ログに前記メッセージ認証符号を付したメッセージ認証符号付きログを、自データ保安装置の外部の装置とデータを送受するインタフェース部により車両情報収集装置に送信する送信ステップと、前記車両情報収集装置が、マスタ鍵と前記車両に対応する識別子とを使用して前記車両の共通鍵を生成する鍵生成ステップと、前記車両情報収集装置が、前記車両とデータを送受する車両インタフェースにより前記データ保安装置から受信したメッセージ認証符号付きログのメッセージ認証符号を、前記鍵生成ステップにより生成した前記車両の共通鍵を使用して検証するメッセージ認証符号検証ステップと、前記車両情報収集装置が、前記メッセージ認証符号の検証が合格したログを記憶部に格納するログ格納ステップと、を含
み、前記メッセージ認証符号の生成対象のログは、前記データ保安装置が前記インタフェース部により前記車両に搭載される複数の車載コンピュータのそれぞれから受信した前記車載コンピュータのログであり、前記メッセージ認証符号の生成対象のログは、前記データ保安装置が前記インタフェース部により前記車両の制御機能を有する車載コンピュータから受信したログである、車両情報収集方法である。
【0010】
本発明の一態様は、車両に搭載されるデータ保安装置であって、マスタ鍵と前記車両に対応する識別子とを使用して生成された前記車両の共通鍵を記憶する鍵記憶部を備えるデータ保安装置のコンピュータに、前記車両のログを対象に、前記車両の共通鍵を使用してメッセージ認証符号を生成する暗号処理機能と、前記ログに前記メッセージ認証符号を付したメッセージ認証符号付きログを、前記データ保安装置の外部の装置とデータを送受するインタフェース部により、マスタ鍵と前記車両に対応する識別子とを使用して前記車両の共通鍵を生成する鍵生成部を備える車両情報収集装置に、送信する送信機能と、を実現させるための
コンピュータプログラムであり、前記メッセージ認証符号の生成対象のログは、前記データ保安装置が前記インタフェース部により前記車両に搭載される複数の車載コンピュータのそれぞれから受信した前記車載コンピュータのログであり、前記メッセージ認証符号の生成対象のログは、前記データ保安装置が前記インタフェース部により前記車両の制御機能を有する車載コンピュータから受信したログである、コンピュータプログラムである。
【発明の効果】
【0011】
本発明によれば、ECU等の車載コンピュータのログを安全に収集することができるという効果が得られる。
【発明を実施するための形態】
【0013】
以下、図面を参照し、本発明の実施形態について説明する。なお、以下に示す実施形態では、車両として自動車を例に挙げて説明する。
【0014】
図1は、一実施形態に係る車両情報収集システム及び自動車1001の構成例を示す図である。本実施形態では、車載コンピュータの一例として、自動車1001に搭載されるECU(電子制御装置)を挙げて説明する。
【0015】
図1において、自動車1001は、データ保安装置1010と複数のECU1020とを備える。ECU1020は、自動車1001に備わる車載コンピュータである。ECU1020は、自動車1001のエンジン制御等の制御機能を有する。ECU1020として、例えば、エンジン制御機能を有するECU、ハンドル制御機能を有するECU、ブレーキ制御機能を有するECUなどがある。データ保安装置1010は、自動車1001に搭載されたECU1020のログのセキュリティ(保安)の機能を有する。なお、自動車1001に搭載されたいずれかのECUをデータ保安装置1010として機能させてもよい。
【0016】
データ保安装置1010と複数のECU1020は、自動車1001に備わるCAN(Controller Area Network)1030に接続される。CAN1030は通信ネットワークである。CANは車両に搭載される通信ネットワークの一つとして知られている。データ保安装置1010は、CAN1030を介して、各ECU1020との間でデータを交換する。ECU1020は、CAN1030を介して、他のECU1020との間でデータを交換する。
【0017】
なお、車両に搭載される通信ネットワークとして、CAN以外の通信ネットワークを自動車1001に備え、CAN以外の通信ネットワークを介して、データ保安装置1010とECU1020との間のデータの交換、及び、ECU1020同士の間のデータの交換が行われてもよい。例えば、LIN(Local Interconnect Network)を自動車1001に備えてもよい。また、CANとLINとを自動車1001に備えてもよい。また、自動車1001において、LINに接続するECU1020を備えてもよい。また、データ保安装置1010は、CANとLINとに接続されてもよい。また、データ保安装置1010は、CANを介して該CANに接続されるECU1020との間でデータを交換し、また、LINを介して該LINに接続されるECU1020との間でデータを交換してもよい。また、ECU1020同士が、LINを介してデータを交換してもよい。
【0018】
自動車1001に備わる車載コンピュータシステム1002は、複数のECU1020がCAN1030に接続されて構成される。本実施形態において、車載コンピュータシステム1002は、自動車1001の車載制御システムとして機能する。
【0019】
データ保安装置1010は、車載コンピュータシステム1002の内部と外部の間の通信を監視する。データ保安装置1010は、車載コンピュータシステム1002の外部の装置の例として、インフォテイメント機器1040、TCU(Tele Communication Unit)1050及び診断ポート1060と接続される。ECU1020は、データ保安装置1010を介して、車載コンピュータシステム1002の外部の装置と通信を行う。
【0020】
なお、CAN1030の構成として、CAN1030が複数のバス(通信線)を備え、該複数のバスをデータ保安装置1010に接続してもよい。この場合、一つのバスに、一つのECU1020又は複数のECU1020が接続される。
【0021】
自動車1001は診断ポート1060を備える。診断ポート1060として、例えばOBD(On-board Diagnostics)ポートを使用してもよい。診断ポート1060には、自動車1001の外部の装置を接続可能である。診断ポート1060に接続可能な自動車1001の外部の装置として、例えば、
図1に示されるメンテナンスツール2100などがある。データ保安装置1010と、診断ポート1060に接続された装置、例えばメンテナンスツール2100とは、診断ポート1060を介して、データを交換する。メンテナンスツール2100は、OBDポートに接続される従来の診断端末の機能を有していてもよい。
【0022】
自動車1001はインフォテイメント(Infotainment)機器1040を備える。インフォテイメント機器1040として、例えば、ナビゲーション機能、位置情報サービス機能、音楽や動画などのマルチメディア再生機能、音声通信機能、データ通信機能、インターネット接続機能などを有するものが挙げられる。
【0023】
自動車1001は、TCU1050を備える。TCU1050は通信装置である。TCU1050は通信モジュール1051を備える。通信モジュール1051は、無線通信ネットワークを利用して無線通信を行う。通信モジュール1051は、SIM(Subscriber Identity Module)1052を備える。SIM1052は、無線通信ネットワークを利用するための情報が書き込まれたSIMである。通信モジュール1051は、SIM1052を使用することにより該無線通信ネットワークに接続して無線通信を行うことができる。なお、SIM1052として、eSIM(Embedded Subscriber Identity Module)を使用してもよい。
【0024】
データ保安装置1010は、TCU1050とデータを交換する。TCU1050とデータ保安装置1010とのうち送信側の装置は、受信側の装置に送信するデータを一時的に蓄えるバッファを備えてもよい。
【0025】
なお、TCU1050の他の接続形態として、例えば、TCU1050をインフォテイメント機器1040に接続し、データ保安装置1010が、インフォテイメント機器1040を介して、TCU1050とデータを交換してもよい。又は、TCU1050を診断ポート1060に接続し、データ保安装置1010が、診断ポート1060を介して、該診断ポート1060に接続されたTCU1050とデータを交換してもよい。又は、データ保安装置1010が、SIM1052を含む通信モジュール1051を備えてもよい。データ保安装置1010がSIM1052を含む通信モジュール1051を備える場合には、自動車1001はTCU1050を備えなくてもよい。
【0026】
データ保安装置1010は、メイン演算器1011とHSM(Hardware Security Module)1012を備える。メイン演算器1011は、データ保安装置1010の機能を実現させるためのコンピュータプログラムを実行する。HSM1012は暗号処理機能等を有する。HSM1012は耐タンパー性(Tamper Resistant)を有する。HSM1012はセキュアエレメント(Secure Element:SE)の例である。HSM1012は、データを記憶する記憶部1013を備える。メイン演算器1011はHSM1012を使用する。
【0027】
ECU1020は、メイン演算器1021とSHE(Secure Hardware Extension)1022を備える。メイン演算器1021は、ECU1020の機能を実現させるためのコンピュータプログラムを実行する。SHE1022は暗号処理機能等を有する。SHE1022は耐タンパー性を有する。SHE1022はセキュアエレメントの例である。SHE1022は、データを記憶する記憶部1023を備える。メイン演算器1021はSHE1022を使用する。
【0028】
車両情報収集装置2000は、通信回線を介して、自動車1001のTCU1050の通信モジュール1051とデータを送受する。車両情報収集装置2000は、自動車1001のTCU1050の通信モジュール1051が利用する無線通信ネットワークを介して、該通信モジュール1051とデータを送受する。又は、車両情報収集装置2000は、インターネット等の通信ネットワークと該無線通信ネットワークとを介して、該通信モジュール1051とデータを送受してもよい。また、例えば、車両情報収集装置2000と通信モジュール1051との間をVPN(Virtual Private Network)回線等の専用回線で接続し、該専用回線でデータを送受してもよい。例えば、SIM1052に対応する無線通信ネットワークによって、VPN回線等の専用回線が提供されてもよい。なお、車両情報収集装置2000と自動車1001とを通信ケーブルで接続してもよい。例えば、車両情報収集装置2000と自動車1001のデータ保安装置1010とを通信ケーブルで接続するように構成してもよい。
【0029】
車両情報収集装置2000は、自動車1001に搭載されたECU1020のログを収集する。ECU1020のログは、ECU1020の動作の記録、ECU1020へのアクセスの記録、ECU1020の通信の記録などのECU1020に関する記録である。
【0030】
図2は、車両情報収集装置2000の構成例を示す図である。
図2において、車両情報収集装置2000は、通信部2011と記憶部2012と鍵生成部2015と暗号処理部2016とを備える。通信部2011は、通信回線を介して、他の装置と通信を行う。通信部2011は車両インタフェースに対応する。記憶部2012は、データを記憶する。鍵生成部2015は、鍵を生成する。
【0031】
暗号処理部2016は、暗号処理を実行する。暗号処理部2016の暗号処理は、少なくとも、メッセージ認証符号の検証処理を含む。暗号処理部2016の暗号処理は、さらに、データの暗号化処理及び暗号化データの復号処理を含んでもよい。
【0032】
車両情報収集装置2000の機能は、該車両情報収集装置2000が備えるCPU(Central Processing Unit:中央演算処理装置)がコンピュータプログラムを実行することにより実現される。なお、車両情報収集装置2000として、汎用のコンピュータ装置を使用して構成してもよく、又は、専用のハードウェア装置として構成してもよい。
【0033】
図3は、データ保安装置1010の構成例を示す図である。
図3において、データ保安装置1010は、メイン演算器1011とHSM1012とインタフェース部20とを備える。メイン演算器1011は、制御部21と記憶部22とを備える。HSM1012は、記憶部1013と暗号処理部32とを備える。
【0034】
インタフェース部20は、自データ保安装置1010の外部の装置とデータを送受する。インタフェース部20は、車載コンピュータシステム1002の外部の装置とデータを送受するインタフェースと、CAN1030を介してデータを送受するインタフェースとを備える。メイン演算器1011は、インタフェース部20を介して、データ保安装置1010以外の他の装置とデータの送受を行う。
【0035】
制御部21は、データ保安装置1010の制御を行う。記憶部22は、データを記憶する。記憶部1013は、データを記憶する。暗号処理部32は、暗号処理を実行する。暗号処理部32の暗号処理は、少なくとも、メッセージ認証符号の生成処理を含む。暗号処理部32の暗号処理は、さらに、データの暗号化処理及び暗号化データの復号処理を含んでもよい。
【0036】
制御部21は、自己の機能部の一つとして、統合ログ生成部23を備える。統合ログ生成部23は、統合ログを生成する。例えば、統合ログは、複数のECU1020のログを統合するログであってもよく、又は、自動車1001の複数の状態の記録を統合するログであってもよい。
【0037】
図4は、ECU1020の構成例を示す図である。
図4において、ECU1020は、メイン演算器1021とSHE1022とインタフェース部40とを備える。メイン演算器1021は、制御部41と記憶部42とを備える。SHE1022は、記憶部1023と暗号処理部52とを備える。
【0038】
インタフェース部40は、自ECU1020の外部の装置とデータを送受する。インタフェース部40は、CAN1030を介してデータを送受するインタフェースを備える。メイン演算器1021は、インタフェース部40を介して、自ECU1020以外の他の装置とデータの送受を行う。
【0039】
制御部41は、ECU1020の制御を行う。記憶部42は、データを記憶する。記憶部1023は、データを記憶する。暗号処理部52は、データの暗号化及び暗号化データの復号を行う。
【0040】
なお、本実施形態では、データ保安装置1010にHSMを使用しているが、データ保安装置1010においてHSMの代わりにSHEを使用してもよい。なお、SHEについては、例えば非特許文献2に記載されている。
【0041】
次に
図5を参照して、本実施形態に係る車両情報収集方法の例を説明する。
図5は、本実施形態に係る車両情報収集方法の例を示すシーケンスチャートである。
図5には、説明の便宜上、自動車1001に搭載されているECUのうち1個のECU1020のみを示している。以下、自動車1001に搭載されている1個のECU1020を例に挙げて説明するが、他のECU1020についても同様に適用できる。
【0042】
車両情報収集装置2000は、マスタ鍵Master_Secretを予め記憶部2012に格納している。データ保安装置1010は、自己の署名鍵Kbc及び暗号鍵Kecを予めHSM1012の記憶部1013に格納している。
【0043】
また、データ保安装置1010は、署名鍵Kbe及び暗号鍵Keeを予めHSM1012の記憶部1013に格納している。ECU1020は、署名鍵Kbe及び暗号鍵Keeを予めSHE1022の記憶部1023に格納している。署名鍵Kbe及び暗号鍵Keeは、データ保安装置1010とECU1020との間で予め共有される。
【0044】
以下、車両情報収集装置2000は、通信部2011により、自動車1001のTCU1050と通信を行い、TCU1050を介してデータ保安装置1010との間でデータを送受する。データ保安装置1010は、CAN1030を介して、ECU1020との間でデータを交換する。なお、車両情報収集装置2000とデータ保安装置1010との間の通信路として、暗号化通信路を使用してもよい。例えば、車両情報収集装置2000とデータ保安装置1010は、暗号化通信路の一例として、https(hypertext transfer protocol secure)通信を行ってもよい。
【0045】
(ステップS101)車両情報収集装置2000は、通信部2011により、ログ収集要求メッセージを自動車1001のデータ保安装置1010に送信する。自動車1001のデータ保安装置1010は、車両情報収集装置2000から送信されたログ収集要求メッセージをインタフェース部20により受信する。データ保安装置1010は、該受信したログ収集要求メッセージをインタフェース部20によりECU1020に転送する。ECU1020は、該転送されたログ収集要求メッセージをインタフェース部40により受信する。
【0046】
(ステップS102)データ保安装置1010の制御部21は、車両情報収集装置2000から受信したログ収集要求メッセージに応じて、自己の識別子UNIT_IDをインタフェース部20により車両情報収集装置2000に送信する。車両情報収集装置2000は、データ保安装置1010から送信された識別子UNIT_IDを通信部2011により受信する。
【0047】
(ステップS103)車両情報収集装置2000の鍵生成部2015は、自動車1001のデータ保安装置1010から受信した識別子UNIT_IDを使用して、該データ保安装置1010の署名鍵Kbc及び暗号鍵Kecを生成する。
【0048】
鍵生成部2015の鍵生成方法の例を説明する。鍵生成部2015は、記憶部2012に格納されているマスタ鍵Master_Secretと、データ保安装置1010の識別子UNIT_IDと、変数Nkとを使用して、次式により鍵(共通鍵)を生成する。
共通鍵=ダイジェスト(Master_Secret、UNIT_ID、Nk)
【0049】
但し、ダイジェスト(Master_Secret、UNIT_ID、Nk)は、マスタ鍵Master_Secretと識別子UNIT_IDと変数Nkとから生成されるダイジェスト値である。ダイジェスト値として、例えば、ハッシュ(hash)関数により算出される値、又は、排他的論理和演算により算出される値などが挙げられる。例えば、共通鍵は、マスタ鍵Master_Secretと識別子UNIT_IDと変数Nkとを入力値に使用して算出されるハッシュ関数値である。
【0050】
変数Nkの値が異なれば、ダイジェスト値は異なる。変数Nkの値を変えることによって、同じマスタ鍵Master_Secretと識別子UNIT_IDとから、異なる共通鍵を生成することができる。例えば、署名鍵用の変数Nkの値をNk_aとし、暗号鍵用の変数Nkの値をNk_bとする。鍵生成部2015は、マスタ鍵Master_Secretと、データ保安装置1010の識別子UNIT_IDと、変数Nk_a,Nk_bとを使用して、
署名鍵Kbc=ダイジェスト(Master_Secret、UNIT_ID、Nk_a)、
暗号鍵Kec=ダイジェスト(Master_Secret、ECU_ID、Nk_b)、
により、データ保安装置1010の署名鍵Kbcと暗号鍵Kecとを異なる鍵として生成する。記憶部2012は、データ保安装置1010の署名鍵Kbc及び暗号鍵Kecを格納する。データ保安装置1010のHSM1012の記憶部1013は、車両情報収集装置2000と同じ鍵生成方法によって生成された署名鍵Kbc及び暗号鍵Kecを予め格納している。
【0051】
なお、本実施形態に係る鍵(共通鍵)の生成方法の他の例として、署名鍵をハッシュ関数により算出される値とし、暗号鍵を排他的論理和演算により算出される値としてもよい。又は、その逆、つまり、署名鍵を排他的論理和演算により算出される値とし、暗号鍵をハッシュ関数により算出される値としてもよい。
【0052】
(ステップS104)ECU1020の制御部41は、受信したログ収集要求メッセージに応じて、自己のログをインタフェース部40によりデータ保安装置1010に送信する。ECU1020のログは、制御部41が生成して記憶部42に格納されている。データ保安装置1010は、ECU1020から送信されたログをインタフェース部20により受信する。データ保安装置1010の記憶部22は、該受信したECU1020のログを格納する。
【0053】
(ステップS105)データ保安装置1010の統合ログ生成部23は、記憶部22に格納されている複数のECU1020のログを使用して、該複数のECU1020のログを統合する統合ログを生成する。
【0054】
(ステップS106)データ保安装置1010の制御部21は、統合ログ生成部23が生成した統合ログをHSM1012に渡して、該統合ログのメッセージ認証符号を生成させる。本実施形態では、メッセージ認証符号の一例として、CMAC(Cipher-based Message Authentication Code)を使用する。HSM1012の暗号処理部32は、制御部21から受け取った統合ログのCMACを、記憶部1013に格納されている署名鍵Kbcを使用して生成する。HSM1012は、該生成した統合ログのCMACを制御部21に渡す。
【0055】
(ステップS107)データ保安装置1010の制御部21は、統合ログをHSM1012に渡して、該統合ログの暗号化データである暗号化統合ログを生成させる。HSM1012の暗号処理部32は、記憶部1013に格納されている暗号鍵Kecを使用して統合ログを暗号化し、該暗号化結果である暗号化統合ログを生成する。HSM1012は、該暗号化統合ログを制御部21に渡す。
【0056】
(ステップS108)データ保安装置1010の制御部21は、統合ログのCMACを該統合ログの暗号化データである暗号化統合ログに付したメッセージ認証符号付き暗号化統合ログをインタフェース部20により車両情報収集装置2000に送信する。車両情報収集装置2000は、自動車1001のデータ保安装置1010から送信されたメッセージ認証符号付き暗号化統合ログを通信部2011により受信する。
【0057】
(ステップS109)車両情報収集装置2000の暗号処理部2016は、自動車1001のデータ保安装置1010から受信したメッセージ認証符号付き暗号化統合ログの暗号化統合ログを、記憶部2012に格納されている該データ保安装置1010の暗号鍵Kecを使用して、復号する。
【0058】
(ステップS110)車両情報収集装置2000の暗号処理部2016は、自動車1001のデータ保安装置1010から受信したメッセージ認証符号付き暗号化統合ログのCMACを、記憶部2012に格納されている該データ保安装置1010の署名鍵Kbcを使用して、検証する。このCMACの検証では、暗号処理部2016は、ステップS109の暗号化統合ログの復号結果である復号データに対して、CMACを、記憶部2012に格納されている該データ保安装置1010の署名鍵Kbcを使用して生成する。次いで、暗号処理部2016は、該生成結果のCMACと、メッセージ認証符号付き暗号化統合ログのCMACとを比較する。この比較の結果、両者が一致する場合にはメッセージ認証符号(CMAC)の検証が合格であり、両者が一致しない場合にはメッセージ認証符号(CMAC)の検証が不合格である。
【0059】
(ステップS110)車両情報収集装置2000の記憶部2012は、メッセージ認証符号(CMAC)の検証が合格である場合に、該メッセージ認証符号(CMAC)の検証が合格したメッセージ認証符号付き暗号化統合ログの暗号化統合ログの復号結果として得られた統合ログを格納する。これにより、自動車1001のECU1020のログが車両情報収集装置2000に保存される。
【0060】
一方、メッセージ認証符号(CMAC)の検証が不合格である場合には、車両情報収集装置2000は、該メッセージ認証符号(CMAC)の検証が不合格であるメッセージ認証符号付き暗号化統合ログを破棄し、該メッセージ認証符号付き暗号化統合ログの暗号化統合ログの復号結果として得られた統合ログを保存しない。なお、メッセージ認証符号(CMAC)の検証が不合格である場合には、車両情報収集装置2000は、所定のエラー処理を実行してもよい。例えば、エラー処理として、車両情報収集装置2000は、ログの再送を、データ保安装置1010に要求してもよい。また、該エラー処理を、メッセージ認証符号(CMAC)の検証が合格になるまで繰り返す、又は、所定回数だけ繰り返してもよい。
【0061】
なお、上述した
図5の例では、車両情報収集装置2000が自動車1001のデータ保安装置1010にログ収集要求メッセージを送信することによって、該自動車1001のECU1020のログを収集するが、データ保安装置1010が自律的にECU1020にログ収集要求メッセージを送信したり、又は、ECU1020が自律的にログをデータ保安装置1010に送信したりしてもよい。例えば、ECU1020が定期的にログをデータ保安装置1010に送信するようにしてもよい。
【0062】
また、上述した
図5の例では、データ保安装置1010が統合ログを暗号化して車両情報収集装置2000に送信したが、データ保安装置1010は統合ログを暗号化しないでそのまま車両情報収集装置2000に送信してもよい。
【0063】
また、上述した
図5の例では、データ保安装置1010は統合ログのメッセージ認証符号(CMAC)を生成したが、データ保安装置1010は、暗号化統合ログのメッセージ認証符号(CMAC)を、自己の署名鍵Kbcを使用して生成してもよい。この場合、車両情報収集装置2000の暗号処理部2016は、データ保安装置1010のメッセージ認証符号付き暗号化統合ログの暗号化統合ログに対して、CMACを、記憶部2012に格納している該データ保安装置1010の署名鍵Kbcを使用して生成する。次いで、暗号処理部2016は、該生成結果のCMACと、メッセージ認証符号付き暗号化統合ログのCMACとを比較する。この比較の結果、両者が一致する場合にはメッセージ認証符号(CMAC)の検証が合格であり、両者が一致しない場合にはメッセージ認証符号(CMAC)の検証が不合格である。
【0064】
また、上述した
図5の例では、データ保安装置1010が複数のECU1020のログを統合する統合ログを車両情報収集装置2000に送信したが、データ保安装置1010は、各ECU1020のログを個別に該ログのメッセージ認証符号を付して車両情報収集装置2000に送信してもよい。
【0065】
また、上述した
図5の車両情報収集方法において、以下に示す変形例が単独又は複数の組合せで適用できる。
【0066】
<車両情報収集方法の変形例1>
ステップS104において、ECU1020は、SHE1022の暗号処理部52により、ログを記憶部1023に格納されている暗号鍵Keeで暗号化して、データ保安装置1010に送信する。データ保安装置1010は、ECU1020から受信した暗号化データを、HSM1012の暗号処理部32により、記憶部1013に格納されている暗号鍵Keeで復号して、ログを取得する。
【0067】
<車両情報収集方法の変形例2>
ステップS104において、ログは、CAN1030のパケットに格納されて、ECU1020からデータ保安装置1010に伝送される。ECU1020は、該パケットに、該パケットについてのメッセージ認証符号をさらに含める。本変形例2では、メッセージ認証符号の一例として、CMACを使用する。CMACの生成には、データ保安装置1010とECU1020間で共有される署名鍵Kbeが使用される。データ保安装置1010は、ECU1020から受信したパケットに含まれるCMACを、自己が保持する署名鍵Kbeで検証する。データ保安装置1010は、CMACの検証が合格したパケットに含まれるログを、車両情報収集装置2000に送信する。一方、データ保安装置1010は、CMACの検証が不合格であるパケットに含まれるログを、車両情報収集装置2000に送信しない。
【0068】
なお、ログを格納するパケットに含めるCMACとして、該ログの全て又は一部についてのCMACを使用してもよい。例えば、ログを一定サイズのブロックに分割し、ブロック毎にCMACを生成して、該ブロックと該CMACとをパケットに格納してもよい。データ保安装置1010は、ブロック毎にCMACを検証しながらログを取得する。
【0069】
<車両情報収集方法の変形例3>
データ保安装置1010の統合ログ生成部23は、インタフェース部20によりCAN1030からデータを収集し、自動車1001の複数の状態の記録を統合する統合ログを生成する。自動車1001の状態として、例えば、排気ガス、燃費、エアバッグの作動、撮像装置やレーダ装置などのセンシング装置の検知結果、車速、ブレーキの作動、ハンドリングなどがある。統合ログ生成部23は、自動車1001の複数の状態の記録について、順次、古い記録に新しい記録を上書きすることにより、一定期間分の記録を保持する。統合ログ生成部23は、所定の事故判定条件を満たした時に、該記録の上書きを停止する。事故判定条件は、事故が発生したこと又は事故が発生しそうな状態を判定する条件である。例えば、事故判定条件は、エアバッグが作動したことである。又は、例えば、事故判定条件は、アンチロック・ブレーキ・システム(Antilock Brake System:ABS)が作動したことである。統合ログ生成部23は、該事故判定条件を満たした時に保持している自動車1001の複数の状態の記録を統合する統合ログを生成する。データ保安装置1010は、該統合ログに対して、
図5のステップS106からステップS108までの処理を実行する。これにより、車両情報収集装置2000は、自動車1001が事故判定条件を満たした時点の近辺の自動車1001の複数の状態の記録を安全に収集することができる。
【0070】
<車両情報収集方法の変形例4>
データ保安装置1010の制御部21は、所定のログ送信条件を満たした時に、メッセージ認証符号付きログを、インタフェース部20により車両情報収集装置2000に送信する。ログ送信条件は、メッセージ認証符号付きログを無線通信により送信するのに適切な状態であることを判定する条件である。例えば、ログ送信条件は、自動車1001の走行モードが「パーキング(駐車)」であることである。自動車1001が走行中には無線通信環境が不安定になる可能性があるので、自動車1001が駐車している時にメッセージ認証符号付きログを無線通信により送信することは、無線通信の信頼性の点から好適である。又は、例えば、ログ送信条件は、自動車1001のエンジンが始動していることである。自動車1001のエンジンが停止すると、データ保安装置1010やECU1020、TCU1050などの車載装置への電力の供給が不安定になる可能性がある。このため、自動車1001のエンジンが始動している時にメッセージ認証符号付きログを無線通信により送信することは、無線通信の信頼性の点から好適である。又は、例えば、ログ送信条件は、自動車1001の走行モードが「パーキング(駐車)」であること、且つ、自動車1001のエンジンが始動していることである。自動車1001の走行モードが「パーキング(駐車)」であり、且つ、自動車1001のエンジンが始動している時にメッセージ認証符号付きログを無線通信により送信することは、無線通信の信頼性の点から好適である。
【0071】
上述した実施形態によれば、自動車1001のデータ保安装置1010は、車両情報収集装置2000と共有する署名鍵を使用してログについてのメッセージ認証符号を生成し、該メッセージ認証符号付きログを車両情報収集装置2000に送信する。車両情報収集装置2000は、自動車1001のデータ保安装置1010から受信したメッセージ認証符号付きログのメッセージ認証符号を、該データ保安装置1010の署名鍵を使用して検証する。車両情報収集装置2000は、メッセージ認証符号の検証が合格したログを保存する。これにより、車両情報収集装置2000と自動車1001間でログの受け渡しを安全に行うことができる。よって、本実施形態によれば、自動車1001のECUのログを安全に収集することができるという効果が得られる。
【0072】
なお、自動車1001のTCU1050が、データ保安装置1010の機能を有してもよい。
【0073】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【0074】
上述した実施形態では、データ保安装置1010やECU1020にHSMやSHEを使用したが、HSM及びSHE以外の暗号処理チップを使用してもよい。データ保安装置1010に対して、例えば「TPM(Trusted Platform Module)f」と呼ばれる暗号処理チップを使用してもよい。TPMfは耐タンパー性を有する。TPMfはセキュアエレメントの例である。ECU1020に対して、例えば「TPMt」と呼ばれる暗号処理チップを使用してもよい。TPMtは耐タンパー性を有する。TPMtはセキュアエレメントの例である。
【0075】
また、上述した実施形態を、自動車1001に搭載されたデータ保安装置1010のログの収集に適用してもよい。この場合、データ保安装置1010は、自動車1001に搭載される車載コンピュータの例である。また、上述した実施形態を、自動車1001のインフォテイメント機器1040やTCU1050等の車載装置のログの収集に適用してもよい。この場合、インフォテイメント機器1040やTCU1050は、自動車1001に搭載される車載コンピュータの例である。
【0076】
上述した実施形態では、車両として自動車を例に挙げたが、原動機付自転車や鉄道車両等の自動車以外の他の車両にも適用可能である。
【0077】
また、上述した各装置の機能を実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disc)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【0078】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。