(57)【要約】【課題】自動車等の車両に保持される鍵の管理や更新に寄与すること。【解決手段】自動車１に備わる管理装置１０とＥＣＵ５０を備え、管理装置１０とＥＣＵ５０が制御用車載ネットワーク４０を介して通信する管理システムであって、管理装置１０とＥＣＵ５０とが、Ｒｏｏｔ秘密鍵と該Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを記憶する鍵記憶部を共通して備え、該鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行する。【選択図】図１
2017011482.tif 000002
【特許請求の範囲】
【請求項１】
車両に備わる管理装置と車載コンピュータを備え、前記管理装置と前記車載コンピュータとが前記車両に備わる通信ネットワークを介して通信する管理システムであって、
前記管理装置と前記車載コンピュータとが、Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを記憶する鍵記憶部を、共通して備え、
前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行する、
管理システム。
【請求項２】
前記管理装置は、
公開鍵と秘密鍵のペアを生成する鍵生成部と、
前記管理装置の鍵記憶部に記憶されるＲｏｏｔ秘密鍵を使用して、前記鍵生成部により生成された公開鍵の電子署名を生成する暗号処理部と、を備え、
前記鍵生成部により生成された公開鍵と前記暗号処理部により生成された電子署名とから構成される公開鍵証明書を前記車載コンピュータへ送信し、
前記車載コンピュータは、
前記管理装置から受信した公開鍵証明書を、前記車載コンピュータの鍵記憶部に記憶されるＲｏｏｔ証明書を使用して検証する検証部を備える、
請求項１に記載の管理システム。
【請求項３】
前記車載コンピュータは、
公開鍵と秘密鍵のペアを生成する鍵生成部と、
前記車載コンピュータの鍵記憶部に記憶されるＲｏｏｔ秘密鍵を使用して、前記車載コンピュータの鍵生成部により生成された公開鍵の電子署名を生成する暗号処理部と、を備え、
前記車載コンピュータの鍵生成部により生成された公開鍵と前記車載コンピュータの暗号処理部により生成された電子署名とから構成される公開鍵証明書を前記管理装置へ送信し、
前記管理装置は、
前記車載コンピュータから受信した公開鍵証明書を、前記管理装置の鍵記憶部に記憶されるＲｏｏｔ証明書を使用して検証する検証部を備える、
請求項２に記載の管理システム。
【請求項４】
前記管理装置の鍵生成部は鍵を生成し、
前記管理装置の暗号処理部は、前記車載コンピュータへ送信した公開鍵証明書の公開鍵とペアの秘密鍵を使用して、前記管理装置の鍵生成部により生成された鍵の電子署名を生成し、当該鍵と当該電子署名とから構成される鍵証明書を前記車載コンピュータから受信した公開鍵証明書の公開鍵で暗号化し、
前記管理装置は前記鍵証明書の暗号化データを前記車載コンピュータへ送信し、
前記車載コンピュータの暗号処理部は、前記管理装置から受信した鍵証明書の暗号化データを、前記管理装置へ送信した公開鍵証明書の公開鍵とペアの秘密鍵で復号化し、
前記車載コンピュータの検証部は、前記鍵証明書の暗号化データの復号化データを、前記管理装置から受信した公開鍵証明書の公開鍵を使用して検証する、
請求項３に記載の管理システム。
【請求項５】
前記管理装置の鍵生成部は、新Ｒｏｏｔ公開鍵と新Ｒｏｏｔ秘密鍵のペアを生成し、
前記管理装置の暗号処理部は、前記管理装置の鍵記憶部に記憶されるＲｏｏｔ秘密鍵を使用して前記新Ｒｏｏｔ公開鍵の電子署名を生成し、
前記管理装置の鍵記憶部は、前記新Ｒｏｏｔ秘密鍵と、前記新Ｒｏｏｔ公開鍵と当該新Ｒｏｏｔ公開鍵の電子署名とから構成される公開鍵証明書である新Ｒｏｏｔ証明書とを記憶し、
前記管理装置は、前記新Ｒｏｏｔ秘密鍵と前記新Ｒｏｏｔ証明書を、前記車載コンピュータとの間で共有する暗号路鍵で暗号化して前記車載コンピュータへ送信し、
前記車載コンピュータは、前記管理装置から受信した前記新Ｒｏｏｔ秘密鍵と前記新Ｒｏｏｔ証明書の暗号化データを前記暗号路鍵で復号化し、
前記車載コンピュータの検証部は、復号化された前記新Ｒｏｏｔ証明書を、前記車載コンピュータの鍵記憶部に記憶されるＲｏｏｔ証明書を使用して検証し、
前記車載コンピュータの鍵記憶部は、前記新Ｒｏｏｔ証明書の検証が成功である場合に、前記新Ｒｏｏｔ秘密鍵と前記新Ｒｏｏｔ証明書を記憶する、
請求項１から４のいずれか１項に記載の管理システム。
【請求項６】
請求項１から５のいずれか１項に記載の管理システムを備える車両。
【請求項７】
車両に備わる通信ネットワークを介して前記車両に備わる車載コンピュータと通信する前記車両に備わる管理装置であって、
Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを記憶する鍵記憶部を、前記車載コンピュータと共通して備え、
前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行する、
管理装置。
【請求項８】
車両に備わる通信ネットワークを介して前記車両に備わる管理装置と通信する前記車両に備わる車載コンピュータであって、
Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを記憶する鍵記憶部を、前記管理装置と共通して備え、
前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行する、
車載コンピュータ。
【請求項９】
車両に備わる管理装置と車載コンピュータを備え、前記管理装置と前記車載コンピュータとが前記車両に備わる通信ネットワークを介して通信する管理システムの管理方法であって、
前記管理装置と前記車載コンピュータとが、Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを、共通して各々の鍵記憶部に記憶するステップと、
前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行するステップと、
を含む管理方法。
【請求項１０】
車両に備わる通信ネットワークを介して前記車両に備わる車載コンピュータと通信する前記車両に備わる管理装置のコンピュータに、
Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを、前記車載コンピュータと共通して鍵記憶部に記憶するステップと、
前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行するステップと、
を実行させるためのコンピュータプログラム。
【請求項１１】
車両に備わる通信ネットワークを介して前記車両に備わる管理装置と通信する前記車両に備わる車載コンピュータに、
Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを、前記管理装置と共通して鍵記憶部に記憶するステップと、
前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行するステップと、
を実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、管理システム、車両、管理装置、車載コンピュータ、管理方法、及びコンピュータプログラムに関する。
【背景技術】
【０００２】
近年、自動車は、ＥＣＵ（Electronic Control Unit）を有し、ＥＣＵによってエンジン制御等の機能を実現する。ＥＣＵは、コンピュータの一種であり、コンピュータプログラムによって所望の機能を実現する。既に使用されている自動車について、ＥＣＵのコンピュータプログラムの更新は、通常、自動車の検査時や定期点検時などに、一般の自動車整備工場で行われる。
【０００３】
従来、ＥＣＵのコンピュータプログラムの更新では、作業者が、自動車のＯＢＤ（On-board Diagnostics）ポートと呼ばれる診断ポートにメンテナンス専用の診断端末を接続し、該診断端末から更新プログラムのインストール及びデータの設定変更などを行う。これに関し例えば非特許文献１、２にはセキュリティについて記載されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】C. Miller、C. Valasek、“Adventures in Automotive Networks and Control Units”、DEF CON 21、2013年8月
【非特許文献２】高田広章、松本勉、“車載組込みシステムの情報セキュリティ強化に関する提言”、2013年9月、インターネット＜ＵＲＬ：https://www.ipa.go.jp/files/000034668.pdf＞
【非特許文献３】Trusted Computing Group、インターネット＜ＵＲＬ：http://www.trustedcomputinggroup.org/＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述した非特許文献１、２では、セキュリティの向上を実現する手段については記載されない。このため、自動車等の車両に備わるＥＣＵ等の車載コンピュータに使用されるコンピュータプログラム等のデータの適用についての信頼性を向上させることが望まれる。例えば、ＥＣＵが起動した後に、ＥＣＵが保持する鍵を使用してデータの交換相手を相互認証することによって、車載コンピュータシステムの防御能力を向上させることが考えられる。また、例えば、ＥＣＵが保持する鍵を使用して、ＥＣＵ間で交換するデータの正当性を検証することが考えられる。また、例えば、ＥＣＵに使用されるコンピュータプログラム等のデータに電子署名を付して自動車の管理装置へ配布し、管理装置が保持する鍵を使用して、配布されたデータの電子署名を検証することにより、ＥＣＵに使用されるコンピュータプログラム等のデータを検査することが考えられる。ここで、自動車に保持される鍵の管理や更新をどのようにして実現するのかが、鍵の保安上の課題である。
【０００６】
本発明は、このような事情を考慮してなされたものであり、自動車等の車両に保持される鍵の管理や更新に寄与できる、管理システム、車両、管理装置、車載コンピュータ、管理方法、及びコンピュータプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００７】
（１）本発明の一態様は、車両に備わる管理装置と車載コンピュータを備え、前記管理装置と前記車載コンピュータとが前記車両に備わる通信ネットワークを介して通信する管理システムであって、前記管理装置と前記車載コンピュータとが、Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを記憶する鍵記憶部を、共通して備え、前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行する、管理システムである。
（２）本発明の一態様は、上記（１）の管理システムにおいて、前記管理装置は、公開鍵と秘密鍵のペアを生成する鍵生成部と、前記管理装置の鍵記憶部に記憶されるＲｏｏｔ秘密鍵を使用して、前記鍵生成部により生成された公開鍵の電子署名を生成する暗号処理部と、を備え、前記鍵生成部により生成された公開鍵と前記暗号処理部により生成された電子署名とから構成される公開鍵証明書を前記車載コンピュータへ送信し、前記車載コンピュータは、前記管理装置から受信した公開鍵証明書を、前記車載コンピュータの鍵記憶部に記憶されるＲｏｏｔ証明書を使用して検証する検証部を備える、管理システムである。
（３）本発明の一態様は、上記（２）の管理システムにおいて、前記車載コンピュータは、公開鍵と秘密鍵のペアを生成する鍵生成部と、前記車載コンピュータの鍵記憶部に記憶されるＲｏｏｔ秘密鍵を使用して、前記車載コンピュータの鍵生成部により生成された公開鍵の電子署名を生成する暗号処理部と、を備え、前記車載コンピュータの鍵生成部により生成された公開鍵と前記車載コンピュータの暗号処理部により生成された電子署名とから構成される公開鍵証明書を前記管理装置へ送信し、前記管理装置は、前記車載コンピュータから受信した公開鍵証明書を、前記管理装置の鍵記憶部に記憶されるＲｏｏｔ証明書を使用して検証する検証部を備える、管理システムである。
（４）本発明の一態様は、上記（３）の管理システムにおいて、前記管理装置の鍵生成部は鍵を生成し、前記管理装置の暗号処理部は、前記車載コンピュータへ送信した公開鍵証明書の公開鍵とペアの秘密鍵を使用して、前記管理装置の鍵生成部により生成された鍵の電子署名を生成し、当該鍵と当該電子署名とから構成される鍵証明書を前記車載コンピュータから受信した公開鍵証明書の公開鍵で暗号化し、前記管理装置は前記鍵証明書の暗号化データを前記車載コンピュータへ送信し、前記車載コンピュータの暗号処理部は、前記管理装置から受信した鍵証明書の暗号化データを、前記管理装置へ送信した公開鍵証明書の公開鍵とペアの秘密鍵で復号化し、前記車載コンピュータの検証部は、前記鍵証明書の暗号化データの復号化データを、前記管理装置から受信した公開鍵証明書の公開鍵を使用して検証する、管理システムである。
（５）本発明の一態様は、上記（１）から（４）のいずれかの管理システムにおいて、前記管理装置の鍵生成部は、新Ｒｏｏｔ公開鍵と新Ｒｏｏｔ秘密鍵のペアを生成し、前記管理装置の暗号処理部は、前記管理装置の鍵記憶部に記憶されるＲｏｏｔ秘密鍵を使用して前記新Ｒｏｏｔ公開鍵の電子署名を生成し、前記管理装置の鍵記憶部は、前記新Ｒｏｏｔ秘密鍵と、前記新Ｒｏｏｔ公開鍵と当該新Ｒｏｏｔ公開鍵の電子署名とから構成される公開鍵証明書である新Ｒｏｏｔ証明書とを記憶し、前記管理装置は、前記新Ｒｏｏｔ秘密鍵と前記新Ｒｏｏｔ証明書を、前記車載コンピュータとの間で共有する暗号路鍵で暗号化して前記車載コンピュータへ送信し、前記車載コンピュータは、前記管理装置から受信した前記新Ｒｏｏｔ秘密鍵と前記新Ｒｏｏｔ証明書の暗号化データを前記暗号路鍵で復号化し、前記車載コンピュータの検証部は、復号化された前記新Ｒｏｏｔ証明書を、前記車載コンピュータの鍵記憶部に記憶されるＲｏｏｔ証明書を使用して検証し、前記車載コンピュータの鍵記憶部は、前記新Ｒｏｏｔ証明書の検証が成功である場合に、前記新Ｒｏｏｔ秘密鍵と前記新Ｒｏｏｔ証明書を記憶する、管理システムである。
【０００８】
（６）本発明の一態様は、上記（１）から（５）のいずれかの管理システムを備える車両。
【０００９】
（７）本発明の一態様は、車両に備わる通信ネットワークを介して前記車両に備わる車載コンピュータと通信する前記車両に備わる管理装置であって、Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを記憶する鍵記憶部を、前記車載コンピュータと共通して備え、前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行する、管理装置である。
【００１０】
（８）本発明の一態様は、車両に備わる通信ネットワークを介して前記車両に備わる管理装置と通信する前記車両に備わる車載コンピュータであって、Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを記憶する鍵記憶部を、前記管理装置と共通して備え、前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行する、車載コンピュータである。
【００１１】
（９）本発明の一態様は、車両に備わる管理装置と車載コンピュータを備え、前記管理装置と前記車載コンピュータとが前記車両に備わる通信ネットワークを介して通信する管理システムの管理方法であって、前記管理装置と前記車載コンピュータとが、Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを、共通して各々の鍵記憶部に記憶するステップと、前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行するステップと、を含む管理方法である。
【００１２】
（１０）本発明の一態様は、車両に備わる通信ネットワークを介して前記車両に備わる車載コンピュータと通信する前記車両に備わる管理装置のコンピュータに、Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを、前記車載コンピュータと共通して鍵記憶部に記憶するステップと、前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行するステップと、を実行させるためのコンピュータプログラムである。
【００１３】
（１１）本発明の一態様は、車両に備わる通信ネットワークを介して前記車両に備わる管理装置と通信する前記車両に備わる車載コンピュータに、Ｒｏｏｔ秘密鍵と前記Ｒｏｏｔ秘密鍵のペアのＲｏｏｔ公開鍵の公開鍵証明書であるＲｏｏｔ証明書とを、前記管理装置と共通して鍵記憶部に記憶するステップと、前記鍵記憶部に記憶されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを使用して、公開鍵暗号方式に使用される公開鍵証明書を発行するステップと、を実行させるためのコンピュータプログラムである。
【発明の効果】
【００１４】
本発明によれば、自動車等の車両に保持される鍵の管理や更新に寄与できるという効果が得られる。
【図面の簡単な説明】
【００１５】
【図１】第１実施形態に係る自動車１を示す図である。
【図２】第１実施形態に係る管理装置１０を示す構成図である。
【図３】図２に示す鍵記憶部２２の構成を示す図である。
【図４】第１実施形態に係るＥＣＵ５０を示す構成図である。
【図５】図４に示す鍵記憶部６２の構成を示す図である。
【図６】第１の実施形態に係る管理方法のシーケンスチャートである。
【図７】第１の実施形態に係る管理方法のシーケンスチャートである。
【図８】第１の実施形態に係る管理方法のシーケンスチャートである。
【図９】第１の実施形態に係る管理方法のシーケンスチャートである。
【図１０】第２実施形態に係る管理システムを示す図である。
【図１１】第２実施形態に係る管理装置１０ａを示す構成図である。
【発明を実施するための形態】
【００１６】
以下、図面を参照し、本発明の実施形態について説明する。なお、以下に示す実施形態では、車両として自動車を例に挙げて説明する。
【００１７】
［第１実施形態］
図１は、第１実施形態に係る自動車１を示す図である。図１において、自動車１は管理装置１０とＥＣＵ５０を備える。管理装置１０は制御用車載ネットワーク４０に接続される。制御用車載ネットワーク４０として、例えばＣＡＮ（Controller Area Network）が使用される。ＣＡＮは車両に搭載される通信ネットワークの一つとして知られている。本実施形態では、制御用車載ネットワーク４０はＣＡＮである。制御用車載ネットワーク４０には、各種のＥＣＵ５０が接続される。ＥＣＵ５０は、自動車１に備わる車載コンピュータである。ＥＣＵ５０は、例えば、駆動系ＥＣＵ、車体系ＥＣＵ、安全制御系ＥＣＵなどである。管理装置１０は、制御用車載ネットワーク４０を介して、各ＥＣＵ５０との間でデータを交換する。ＥＣＵ５０は、制御用車載ネットワーク４０を介して、他のＥＣＵ５０との間でデータを交換する。
【００１８】
管理装置１０はセキュアエレメント２０を備える。ＥＣＵ５０はセキュアエレメント６０を備える。
【００１９】
図２は、第１実施形態に係る管理装置１０を示す構成図である。図２において、管理装置１０は、制御部１１とＣＡＮインタフェース１２とセキュアエレメント２０を備える。これら各部はデータを交換できるように構成される。セキュアエレメント２０は、鍵生成部２１と鍵記憶部２２と検証部２３と暗号処理部２４を備える。
【００２０】
制御部１１は管理装置１０の制御機能を有する。ＣＡＮインタフェース１２は、ＥＣＵ５０と通信する通信部である。ＣＡＮインタフェース１２は、制御用車載ネットワーク４０と接続し、制御用車載ネットワーク４０を介して各ＥＣＵ５０とデータを交換する。セキュアエレメント２０は耐タンパー性（Tamper Resistant）を有する。
【００２１】
セキュアエレメント２０において、鍵生成部２１は鍵を生成する。鍵記憶部２２は鍵を記憶する。検証部２３は、データの交換についての検証を行う。暗号処理部２４は、データの暗号化と暗号化データの復号化とを行う。
【００２２】
図３は、図２に示す鍵記憶部２２の構成を示す図である。図３において、鍵記憶部２２は、Ｒｏｏｔ証明書記憶部３１とＲｏｏｔ秘密鍵記憶部３２とＳ公開鍵証明書記憶部３３とＳ秘密鍵記憶部３４とＣ公開鍵証明書記憶部３５とＭＡＣ鍵記憶部３６を備える。
【００２３】
Ｒｏｏｔ証明書記憶部３１はＲｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐを記憶する。Ｒｏｏｔ秘密鍵記憶部３２はＲｏｏｔ秘密鍵ＫＲｓを記憶する。Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐは公開鍵の証明書である。Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐが証明する公開鍵はＲｏｏｔ公開鍵ＫＲｐである。Ｒｏｏｔ秘密鍵ＫＲｓは、Ｒｏｏｔ公開鍵ＫＲｐとペアの秘密鍵である。Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐとＲｏｏｔ秘密鍵ＫＲｓとは、例えば管理装置１０の製造時などに、安全にセキュアエレメント２０に書き込まれる。セキュアエレメント２０に書き込まれたＲｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐは、Ｒｏｏｔ証明書記憶部３１に記憶される。セキュアエレメント２０に書き込まれたＲｏｏｔ秘密鍵ＫＲｓは、Ｒｏｏｔ秘密鍵記憶部３２に記憶される。Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ及びＲｏｏｔ秘密鍵ＫＲｓについては、平文のままでセキュアエレメント２０から外部に出力させないように管理し秘匿することが好ましい。
【００２４】
Ｓ公開鍵証明書記憶部３３はＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐを記憶する。Ｓ秘密鍵記憶部３４はＳ秘密鍵ＫＳｓを記憶する。Ｓ公開鍵証明書ＫＳｐは公開鍵の証明書である。Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐが証明する公開鍵はＳ公開鍵ＫＳｐである。Ｓ秘密鍵ＫＳｓは、Ｓ公開鍵ＫＳｐとペアの秘密鍵である。Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐとＳ秘密鍵ＫＳｓとは鍵生成部２１によって生成される。鍵生成部２１によって生成されたＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐは、Ｓ公開鍵証明書記憶部３３に記憶される。鍵生成部２１によって生成されたＳ秘密鍵ＫＳｓは、Ｓ秘密鍵記憶部３４に記憶される。
【００２５】
Ｃ公開鍵証明書記憶部３５はＣ公開鍵証明書を記憶する。Ｃ公開鍵証明書は、ＥＣＵ５０毎に存在する。Ｃ公開鍵証明書記憶部３５は、各ＥＣＵ５０のＣ公開鍵証明書を記憶する。あるＥＣＵ５０のＣ公開鍵証明書は、当該ＥＣＵ５０の公開鍵の証明書である。例えば、自動車１に備わるＥＣＵ５０のうちの一つである第１のＥＣＵ５０のＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐが証明する公開鍵はＣ公開鍵ＫＣ１ｐである。Ｃ公開鍵ＫＣ１ｐは、第１のＥＣＵ５０の公開鍵である。Ｃ公開鍵ＫＣ１ｐは、第１のＥＣＵ５０の秘密鍵であるＣ秘密鍵ＫＣ１ｓとペアである。各ＥＣＵ５０から受信されたＣ公開鍵証明書は、Ｃ公開鍵証明書記憶部３５に記憶される。
【００２６】
ＭＡＣ鍵記憶部３６はＭＡＣ鍵Ｋｍを記憶する。ＭＡＣ鍵Ｋｍは鍵生成部２１によって生成される共通鍵である。鍵生成部２１によって生成されたＭＡＣ鍵Ｋｍは、ＭＡＣ鍵記憶部３６に記憶される。ＭＡＣ鍵Ｋｍは、例えば、ＥＣＵ５０間のデータ交換の際に使用される。
【００２７】
図４は、第１実施形態に係るＥＣＵ５０を示す構成図である。図４において、ＥＣＵ５０は、制御部５１とＣＡＮインタフェース５２とセキュアエレメント６０を備える。これら各部はデータを交換できるように構成される。セキュアエレメント６０は、鍵生成部６１と鍵記憶部６２と検証部６３と暗号処理部６４を備える。
【００２８】
制御部５１は、ＥＣＵ５０に対応する所定の制御機能を備える。ＣＡＮインタフェース５２は、管理装置１０や他のＥＣＵ５０と通信する通信部である。ＣＡＮインタフェース５２は、制御用車載ネットワーク４０と接続し、制御用車載ネットワーク４０を介して管理装置１０や他のＥＣＵ５０とデータを交換する。セキュアエレメント６０は耐タンパー性を有する。
【００２９】
セキュアエレメント６０において、鍵生成部６１は鍵を生成する。鍵記憶部６２は鍵を記憶する。検証部６３は、データの交換についての検証を行う。暗号処理部６４は、データの暗号化と暗号化データの復号化とを行う。
【００３０】
図５は、図４に示す鍵記憶部６２の構成を示す図である。図５において、鍵記憶部６２は、Ｒｏｏｔ証明書記憶部７１とＲｏｏｔ秘密鍵記憶部７２とＣ公開鍵証明書記憶部７３とＣ秘密鍵記憶部７４とＳ公開鍵証明書記憶部７５とＭＡＣ鍵記憶部７６を備える。
【００３１】
Ｒｏｏｔ証明書記憶部７１は、管理装置１０と同じＲｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐを記憶する。Ｒｏｏｔ秘密鍵記憶部７２は、管理装置１０と同じＲｏｏｔ秘密鍵ＫＲｓを記憶する。したがって、管理装置１０と各ＥＣＵ５０とは、同一のＲｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐとＲｏｏｔ秘密鍵ＫＲｓのペアを備える。Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐとＲｏｏｔ秘密鍵ＫＲｓとは、例えばＥＣＵ５０の製造時などに、安全にセキュアエレメント６０に書き込まれる。セキュアエレメント６０に書き込まれたＲｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐは、Ｒｏｏｔ証明書記憶部７１に記憶される。セキュアエレメント６０に書き込まれたＲｏｏｔ秘密鍵ＫＲｓは、Ｒｏｏｔ秘密鍵記憶部７２に記憶される。Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ及びＲｏｏｔ秘密鍵ＫＲｓについては、平文のままでセキュアエレメント６０から外部に出力させないように管理し秘匿することが好ましい。
【００３２】
Ｃ公開鍵証明書記憶部７３はＣ公開鍵証明書を記憶する。Ｃ秘密鍵記憶部７４はＣ秘密鍵を記憶する。Ｃ公開鍵証明書は公開鍵の証明書である。Ｃ秘密鍵は、Ｃ公開鍵証明書の公開鍵とペアの秘密鍵である。Ｃ公開鍵証明書とＣ秘密鍵とは鍵生成部６１によって生成される。鍵生成部６１によって生成されたＣ公開鍵証明書は、Ｃ公開鍵証明書記憶部７３に記憶される。鍵生成部６１によって生成されたＣ秘密鍵は、Ｃ秘密鍵記憶部７４に記憶される。例えば、第１のＥＣＵ５０のＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐは、第１のＥＣＵ５０のＣ公開鍵ＫＣ１ｐの証明書である。Ｃ公開鍵ＫＣ１ｐは、第１のＥＣＵ５０のＣ秘密鍵ＫＣ１ｓとペアである。第１のＥＣＵ５０の鍵生成部６１によって生成されたＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐは、第１のＥＣＵ５０のＣ公開鍵証明書記憶部７３に記憶される。第１のＥＣＵ５０の鍵生成部６１によって生成されたＣ秘密鍵ＫＣ１ｓは、第１のＥＣＵ５０のＣ秘密鍵記憶部７４に記憶される。
【００３３】
Ｓ公開鍵証明書記憶部７５は管理装置１０のＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐを記憶する。管理装置１０から受信されたＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐは、Ｓ公開鍵証明書記憶部７５に記憶される。
【００３４】
ＭＡＣ鍵記憶部７６はＭＡＣ鍵Ｋｍを記憶する。管理装置１０から受信されたＭＡＣ鍵Ｋｍは、ＭＡＣ鍵記憶部７６に記憶される。
【００３５】
次に、図６から図９を参照して第１実施形態に係る管理方法を説明する。なお、以下の説明において、管理装置１０とＥＣＵ５０とは、制御用車載ネットワーク４０を介してデータを送受する。管理装置１０のセキュアエレメント２０は、ＣＡＮインタフェース１２を介して、ＥＣＵ５０のセキュアエレメント６０とデータを送受する。ＥＣＵ５０のセキュアエレメント６０は、ＣＡＮインタフェース５２を介して、管理装置１０のセキュアエレメント２０とデータを送受する。これにより、管理装置１０のセキュアエレメント２０とＥＣＵ５０のセキュアエレメント６０との間でデータの交換が行われる。
【００３６】
［公開鍵証明書の更新段階］
図６を参照して、公開鍵証明書の更新段階を説明する。図６は、第１の実施形態に係る管理方法のシーケンスチャートである。ここでは、説明の便宜上、自動車１に備わるＥＣＵ５０のうちの一つである第１のＥＣＵ５０を例に挙げて説明するが、他のＥＣＵ５０についても同様である。
【００３７】
（ステップＳ１）管理装置１０のセキュアエレメント２０において、鍵生成部２１が、Ｓ公開鍵ＫＳｐとＳ秘密鍵ＫＳｓのペアを生成する。公開鍵と秘密鍵のペアの生成方法として、例えば、ＲＳＡ（Rivest Shamir Adleman）やＥＣＣ（Elliptic Curve Cryptosystems）などが利用可能である。さらに、鍵生成部２１が、生成したＳ公開鍵ＫＳｐのＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐを生成する。Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐは、Ｓ公開鍵ＫＳｐと、Ｓ公開鍵ＫＳｐの電子署名とから構成される。Ｓ公開鍵ＫＳｐの電子署名は、Ｓ公開鍵ＫＳｐのハッシュ値をＲｏｏｔ秘密鍵ＫＲｓで暗号化した結果の暗号化データである。
【００３８】
Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐの生成において、まず鍵生成部２１が、Ｓ公開鍵ＫＳｐのハッシュ値ｈａｓｈ（ＫＳｐ）を算出する。次いで、暗号処理部２４が、鍵生成部２１により算出されたハッシュ値ｈａｓｈ（ＫＳｐ）を、Ｒｏｏｔ秘密鍵記憶部３２に記憶されるＲｏｏｔ秘密鍵ＫＲｓで暗号化する。この暗号化データＫＲｓ（ｈａｓｈ（ＫＳｐ））はＳ公開鍵ＫＳｐの電子署名である。次いで、鍵生成部２１が、Ｓ公開鍵ＫＳｐとＳ公開鍵ＫＳｐの電子署名ＫＲｓ（ｈａｓｈ（ＫＳｐ））とからＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」を構成する。
【００３９】
Ｓ公開鍵証明書記憶部３３は、鍵生成部２１により生成されたＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」を記憶する。Ｓ秘密鍵記憶部３４は、鍵生成部２１により生成されたＳ秘密鍵ＫＳｓを記憶する。また、Ｓ公開鍵証明書記憶部３３に記憶されるＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」とＳ秘密鍵記憶部３４に記憶されるＳ秘密鍵ＫＳｓとがペアであることを示す関連付け情報を設定する。
【００４０】
（ステップＳ２）第１のＥＣＵ５０のセキュアエレメント６０において、鍵生成部６１が、Ｃ公開鍵ＫＣ１ｐとＣ秘密鍵ＫＣ１ｓのペアを生成する。さらに、鍵生成部６１が、生成したＣ秘密鍵ＫＣ１ｓのＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐを生成する。Ｃ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐは、Ｃ公開鍵ＫＣ１ｐと、Ｃ公開鍵ＫＣ１ｐの電子署名とから構成される。Ｃ公開鍵ＫＣ１ｐの電子署名は、Ｃ公開鍵ＫＣ１ｐのハッシュ値をＲｏｏｔ秘密鍵ＫＲｓで暗号化した結果の暗号化データである。
【００４１】
Ｃ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐの生成において、まず鍵生成部６１が、Ｃ公開鍵ＫＣ１ｐのハッシュ値ｈａｓｈ（ＫＣ１ｐ）を算出する。次いで、暗号処理部６４が、鍵生成部６１により算出されたハッシュ値ｈａｓｈ（ＫＣ１ｐ）を、Ｒｏｏｔ秘密鍵記憶部７２に記憶されるＲｏｏｔ秘密鍵ＫＲｓで暗号化する。この暗号化データＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））はＣ公開鍵ＫＣ１ｐの電子署名である。次いで、鍵生成部６１が、Ｃ公開鍵ＫＣ１ｐとＣ公開鍵ＫＣ１ｐの電子署名ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））とからＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」を構成する。
【００４２】
Ｃ公開鍵証明書記憶部７３は、鍵生成部６１により生成されたＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」を記憶する。Ｃ秘密鍵記憶部７４は、鍵生成部６１により生成されたＣ秘密鍵ＫＣ１ｓを記憶する。また、Ｃ公開鍵証明書記憶部７３に記憶されるＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」とＣ秘密鍵記憶部７４に記憶されるＣ秘密鍵ＫＣ１ｓとがペアであることを示す関連付け情報を設定する。
【００４３】
（ステップＳ３）管理装置１０のセキュアエレメント２０が、ＣＡＮインタフェース１２により、上記のステップＳ１で生成されたＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」を第１のＥＣＵ５０のセキュアエレメント６０へ送信する。
【００４４】
（ステップＳ４）第１のＥＣＵ５０のセキュアエレメント６０が、ＣＡＮインタフェース５２により、管理装置１０のセキュアエレメント２０からＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」を受信する。第１のＥＣＵ５０のセキュアエレメント６０において、検証部６３が、管理装置１０のセキュアエレメント２０から受信したＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」を検証する。
【００４５】
Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」の検証において、まず検証部６３が、Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」からＳ公開鍵ＫＳｐを取得し、取得したＳ公開鍵ＫＳｐのハッシュ値ｈａｓｈ（ＫＳｐ）を算出する。次いで、検証部６３が、Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」から電子署名ＫＲｓ（ｈａｓｈ（ＫＳｐ））を取得し、取得した電子署名ＫＲｓ（ｈａｓｈ（ＫＳｐ））を、Ｒｏｏｔ証明書記憶部７１に記憶されるＲｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐのＲｏｏｔ公開鍵ＫＲｐで復号化する。この復号化により、復号化データ「ＫＲｐ・ＫＲｓ（ｈａｓｈ（ＫＳｐ））」が得られる。次いで、検証部６３が、算出したハッシュ値ｈａｓｈ（ＫＳｐ）と、復号化データ「ＫＲｐ・ＫＲｓ（ｈａｓｈ（ＫＳｐ））」とが一致するかを判定する。この判定の結果、一致する場合にはＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」の検証が成功であり、不一致する場合にはＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」の検証が失敗である。
【００４６】
Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」の検証が成功である場合には、検証部６３が、Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」をＳ公開鍵証明書記憶部７５に記憶させる。この後、ステップＳ５に進む。
【００４７】
一方、Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」の検証が失敗である場合には、図６の処理を終了する。よって、Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」は、Ｓ公開鍵証明書記憶部７５に記憶されない。また、Ｓ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」の検証が失敗である場合に、制御部５１が所定のエラー処理を実行してもよい。
【００４８】
（ステップＳ５）第１のＥＣＵ５０のセキュアエレメント６０が、ＣＡＮインタフェース５２により、上記のステップＳ２で生成されたＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」を管理装置１０のセキュアエレメント２０へ送信する。
【００４９】
（ステップＳ６）管理装置１０のセキュアエレメント２０が、ＣＡＮインタフェース１２により、第１のＥＣＵ５０のセキュアエレメント６０からＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」を受信する。管理装置１０のセキュアエレメント２０において、検証部２３が、第１のＥＣＵ５０のセキュアエレメント６０から受信したＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」を検証する。
【００５０】
Ｃ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」の検証において、まず検証部２３が、Ｃ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」からＣ公開鍵ＫＣ１ｐを取得し、取得したＣ公開鍵ＫＣ１ｐのハッシュ値ｈａｓｈ（ＫＣ１ｐ）を算出する。次いで、検証部２３が、Ｃ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」から電子署名ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））を取得し、取得した電子署名ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））を、Ｒｏｏｔ証明書記憶部３１に記憶されるＲｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐのＲｏｏｔ公開鍵ＫＲｐで復号化する。この復号化により、復号化データ「ＫＲｐ・ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」が得られる。次いで、検証部２３が、算出したハッシュ値ｈａｓｈ（ＫＣ１ｐ）と、復号化データ「ＫＲｐ・ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」とが一致するかを判定する。この判定の結果、一致する場合にはＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」の検証が成功であり、不一致する場合にはＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」の検証が失敗である。
【００５１】
Ｃ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」の検証が成功である場合には、検証部２３が、Ｃ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」をＣ公開鍵証明書記憶部３５に記憶させる。この後、図６の処理を終了する。
【００５２】
一方、Ｃ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」の検証が失敗である場合には、図６の処理を終了する。よって、Ｃ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」は、Ｃ公開鍵証明書記憶部３５に記憶されない。また、Ｃ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」の検証が失敗である場合に、制御部１１が所定のエラー処理を実行してもよい。
【００５３】
上述した公開鍵証明書の更新段階によれば、自動車１の内部に閉じて、管理装置１０がＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐを発行し、また、ＥＣＵ５０がＣ公開鍵証明書を発行することができる。このため、一般のＰＫＩ（Public Key Infrastructure、公開鍵基盤）を使用することなく、自動車１の内部に閉じて公開鍵証明書の発行を行うことができる。これにより、一般のＰＫＩを使用することなく自動車１の内部に閉じた公開鍵暗号方式を実現することができる。また、公開鍵暗号方式を使用して自動車１の内部のデータの秘匿を図る際に、自動車１の外部に存在するＰＫＩを使用するための通信が不要となるので、通信装置を削減すること、通信ができない環境に適用すること、公開鍵証明書の発行頻度を容易に増加させることなどの効果が得られる。
【００５４】
なお、管理装置１０及びＥＣＵ５０は、比較的短い周期で繰り返し公開鍵と秘密鍵のペアを生成して公開鍵証明書を発行し、公開鍵証明書の発行の度に公開鍵証明書を新しいものに交換するようにしてもよい。これにより、公開鍵の失効リスト（リボケーションリスト）の管理を省略してもよい。
【００５５】
［ＭＡＣ鍵の更新段階］
図７を参照して、ＭＡＣ鍵の更新段階を説明する。図７は、第１の実施形態に係る管理方法のシーケンスチャートである。ここでは、説明の便宜上、自動車１に備わるＥＣＵ５０のうちの一つである第１のＥＣＵ５０を例に挙げて説明するが、他のＥＣＵ５０についても同様である。
【００５６】
（ステップＳ１１）管理装置１０のセキュアエレメント２０において、鍵生成部２１が、ＭＡＣ鍵Ｋｍを生成する。次いで、鍵生成部２１が、生成したＭＡＣ鍵Ｋｍに対して電子署名を施す。ＭＡＣ鍵Ｋｍに対する電子署名では、まず鍵生成部２１が、ＭＡＣ鍵Ｋｍのハッシュ値ｈａｓｈ（Ｋｍ）を算出する。次いで、暗号処理部２４が、鍵生成部２１により算出されたハッシュ値ｈａｓｈ（Ｋｍ）を、Ｓ秘密鍵記憶部３４に記憶されるＳ秘密鍵ＫＳｓで暗号化する。この暗号化データＫＳｓ（ｈａｓｈ（Ｋｍ））はＭＡＣ鍵Ｋｍの電子署名である。次いで、鍵生成部２１が、ＭＡＣ鍵ＫｍとＭＡＣ鍵Ｋｍの電子署名ＫＳｓ（ｈａｓｈ（Ｋｍ））とからＭＡＣ鍵証明書「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」を構成する。ＭＡＣ鍵記憶部３６は、鍵生成部２１により生成されたＭＡＣ鍵Ｋｍを記憶する。
【００５７】
（ステップＳ１２）管理装置１０のセキュアエレメント２０において、暗号処理部２４が、Ｃ公開鍵証明書記憶部３５に記憶されるＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」からＣ公開鍵ＫＣ１ｐを取得する。次いで、暗号処理部２４が、取得したＣ公開鍵ＫＣ１ｐで、鍵生成部２１により生成されたＭＡＣ鍵証明書「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」を暗号化する。この暗号化データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）は暗号路鍵の送付データである。次いで、管理装置１０のセキュアエレメント２０が、ＣＡＮインタフェース１２により、暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）を第１のＥＣＵ５０のセキュアエレメント６０へ送信する。
【００５８】
（ステップＳ１３）第１のＥＣＵ５０のセキュアエレメント６０が、ＣＡＮインタフェース５２により、管理装置１０のセキュアエレメント２０から暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）を受信する。第１のＥＣＵ５０のセキュアエレメント６０において、検証部６３が、管理装置１０のセキュアエレメント２０から受信した暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）を検証する。
【００５９】
暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）の検証において、まず暗号処理部６４が、Ｃ秘密鍵記憶部７４に記憶されるＣ秘密鍵ＫＣ１ｓで、暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）を復号化する。この復号化により、復号化データ「ＫＣ１ｓ・ＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）」が得られる。次いで、検証部６３が、復号化データ「ＫＣ１ｓ・ＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）」からＭＡＣ鍵Ｋｍを取得し、取得したＭＡＣ鍵Ｋｍのハッシュ値ｈａｓｈ（Ｋｍ）を算出する。
【００６０】
次いで、検証部６３が、Ｓ公開鍵証明書記憶部７５に記憶されるＳ公開鍵証明書Ｃｅｒｔ＿ＫＳｐ「ＫＳｐ，ＫＲｓ（ｈａｓｈ（ＫＳｐ））」からＳ公開鍵ＫＳｐを取得する。次いで、検証部６３が、復号化データ「ＫＣ１ｓ・ＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）」から電子署名ＫＳｓ（ｈａｓｈ（Ｋｍ））を取得し、取得した電子署名ＫＳｓ（ｈａｓｈ（Ｋｍ））をＳ公開鍵ＫＳｐで復号化する。この復号化により、復号化データ「ＫＳｐ・ＫＳｓ（ｈａｓｈ（Ｋｍ））」が得られる。
【００６１】
次いで、検証部６３が、算出したハッシュ値ｈａｓｈ（Ｋｍ）と、復号化データ「ＫＳｐ・ＫＳｓ（ｈａｓｈ（Ｋｍ））」とが一致するかを判定する。この判定の結果、一致する場合には暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）の検証が成功であり、不一致する場合には暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）の検証が失敗である。
【００６２】
暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）の検証が成功である場合には、検証部６３が、暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）から取得したＭＡＣ鍵ＫｍをＭＡＣ鍵記憶部７６に記憶させる。この後、図７の処理を終了する。
【００６３】
一方、暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）の検証が失敗である場合には、図７の処理を終了する。よって、暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）に含まれるＭＡＣ鍵Ｋｍは、ＭＡＣ鍵記憶部７６に記憶されない。また、暗号路鍵の送付データＫＣ１ｐ（「Ｋｍ，ＫＳｓ（ｈａｓｈ（Ｋｍ））」）の検証が失敗である場合に、制御部５１が所定のエラー処理を実行してもよい。
【００６４】
上述したＭＡＣ鍵の更新段階によれば、自動車１で使用されるＭＡＣ鍵Ｋｍの更新を、自動車１の内部に閉じて、公開鍵暗号方式により安全に行うことができる。
【００６５】
［Ｒｏｏｔ証明書の更新段階］
図８及び図９を参照して、Ｒｏｏｔ証明書の更新段階を説明する。図８及び図９は、第１の実施形態に係る管理方法のシーケンスチャートである。
【００６６】
（Ｒｏｏｔ証明書の初回更新段階）
まず図８を参照して、Ｒｏｏｔ証明書の初回更新段階を説明する。ここでは、説明の便宜上、管理装置１０及びＥＣＵ５０に最初に保持されるＲｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐとＲｏｏｔ秘密鍵ＫＲｓのペアにおいて、Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐを初期Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐと称し、Ｒｏｏｔ公開鍵ＫＲｐを初期Ｒｏｏｔ公開鍵ＫＲｐと称し、Ｒｏｏｔ秘密鍵ＫＲｓを初期Ｒｏｏｔ秘密鍵ＫＲｓと称する。また、新規に生成されるＲｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐとＲｏｏｔ秘密鍵ＫＲｓのペアにおいて、Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐを新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗと称し、Ｒｏｏｔ公開鍵ＫＲｐを新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗと称し、Ｒｏｏｔ秘密鍵ＫＲｓを新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗと称する。また、ここでは、自動車１に備わるＥＣＵ５０のうちの一つである第１のＥＣＵ５０を例に挙げて説明するが、他のＥＣＵ５０についても同様である。
【００６７】
（ステップＳ２１）管理装置１０のセキュアエレメント２０において、鍵生成部２１が、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗと新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗのペアを生成する。さらに、鍵生成部２１が、生成した新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗの証明書である新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗを生成する。新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗは、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗと、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗの電子署名とから構成される。新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗの電子署名は、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗのハッシュ値を初期Ｒｏｏｔ秘密鍵ＫＲｓで暗号化した結果の暗号化データである。
【００６８】
新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗの生成において、まず鍵生成部２１が、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗのハッシュ値ｈａｓｈ（ＫＲｐ＿ｎｅｗ）を算出する。次いで、暗号処理部２４が、鍵生成部２１により算出されたハッシュ値ｈａｓｈ（ＫＲｐ＿ｎｅｗ）を、Ｒｏｏｔ秘密鍵記憶部３２に記憶される初期Ｒｏｏｔ秘密鍵ＫＲｓで暗号化する。この暗号化データＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））は新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗの電子署名である。次いで、鍵生成部２１が、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗと新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗの電子署名ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））とから新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」を構成する。
【００６９】
Ｒｏｏｔ証明書記憶部３１は、鍵生成部２１により生成された新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」を記憶する。Ｒｏｏｔ秘密鍵記憶部３２は、鍵生成部２１により生成された新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗを記憶する。また、Ｒｏｏｔ証明書記憶部３１に記憶される新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とＲｏｏｔ秘密鍵記憶部３２に記憶される新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗとがペアであることを示す関連付け情報を設定する。
【００７０】
（ステップＳ２２）管理装置１０のセキュアエレメント２０において、鍵生成部２１が、暗号路鍵Ｋｃを生成する。次いで、暗号処理部２４が、Ｃ公開鍵証明書記憶部３５に記憶されるＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」からＣ公開鍵ＫＣ１ｐを取得する。次いで、暗号処理部２４が、取得したＣ公開鍵ＫＣ１ｐで、鍵生成部２１により生成された暗号路鍵Ｋｃを暗号化する。この暗号化データＫＣ１ｐ（Ｋｃ）は暗号路鍵の送付データである。次いで、管理装置１０のセキュアエレメント２０が、ＣＡＮインタフェース１２により、暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）を第１のＥＣＵ５０のセキュアエレメント６０へ送信する。
【００７１】
第１のＥＣＵ５０のセキュアエレメント６０が、ＣＡＮインタフェース５２により、管理装置１０のセキュアエレメント２０から暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）を受信する。第１のＥＣＵ５０のセキュアエレメント６０において、暗号処理部６４が、管理装置１０のセキュアエレメント２０から受信した暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）を、Ｃ秘密鍵記憶部７４に記憶されるＣ秘密鍵ＫＣ１ｓで復号化する。この復号化により、復号化データ「ＫＣ１ｓ・ＫＣ１ｐ（Ｋｃ）」が得られる。暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）の復号化が成功すれば、復号化データ「ＫＣ１ｓ・ＫＣ１ｐ（Ｋｃ）」は暗号路鍵Ｋｃである。ここでは、暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）の復号化が成功し、暗号路鍵Ｋｃが得られたとする。
【００７２】
（ステップＳ２３）管理装置１０のセキュアエレメント２０において、暗号処理部２４が、上記のステップＳ２２で鍵生成部２１により生成された暗号路鍵Ｋｃで、新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗと、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とを暗号化する。これにより、暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）が得られる。次いで、管理装置１０のセキュアエレメント２０が、ＣＡＮインタフェース１２により、暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）を第１のＥＣＵ５０のセキュアエレメント６０へ送信する。
【００７３】
（ステップＳ２４）第１のＥＣＵ５０のセキュアエレメント６０が、ＣＡＮインタフェース５２により、管理装置１０のセキュアエレメント２０から暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）を受信する。第１のＥＣＵ５０のセキュアエレメント６０において、暗号処理部６４が、管理装置１０のセキュアエレメント２０から受信した暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）を、上記のステップＳ２２で暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）の復号化により得られた暗号路鍵Ｋｃで復号化する。この復号化により、復号化データ「Ｋｃ・Ｋｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）」が得られる。暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）の復号化が成功すれば、復号化データ「Ｋｃ・Ｋｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）」から、新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗと、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とが得られる。ここでは、暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）の復号化が成功し、新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗと、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とが得られたとする。次いで、検証部６３が、得られた新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」を検証する。
【００７４】
新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証において、まず検証部６３が、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」から新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗを取得し、取得した新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗのハッシュ値ｈａｓｈ（ＫＲｐ＿ｎｅｗ）を算出する。次いで、検証部６３が、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」から電子署名ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））を取得し、取得した電子署名ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））を、Ｒｏｏｔ証明書記憶部７１に記憶される初期Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐの初期Ｒｏｏｔ公開鍵ＫＲｐで復号化する。この復号化により、復号化データ「ＫＲｐ・ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」が得られる。
【００７５】
次いで、検証部６３が、算出したハッシュ値ｈａｓｈ（ＫＲｐ＿ｎｅｗ）と、復号化データ「ＫＲｐ・ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とが一致するかを判定する。この判定の結果、一致する場合には新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証が成功であり、不一致する場合には新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証が失敗である。
【００７６】
新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証が成功である場合には、Ｒｏｏｔ証明書記憶部７１が、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」を記憶する。Ｒｏｏｔ秘密鍵記憶部７２が、新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗを記憶する。また、Ｒｏｏｔ証明書記憶部７１に記憶される新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とＲｏｏｔ秘密鍵記憶部７２に記憶される新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗとがペアであることを示す関連付け情報を設定する。この後、図８の処理を終了する。
【００７７】
一方、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証が失敗である場合には、図８の処理を終了する。よって、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」は、Ｒｏｏｔ証明書記憶部７１に記憶されない。また、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証が失敗である場合に、制御部５１が所定のエラー処理を実行してもよい。
【００７８】
（Ｒｏｏｔ証明書の２回目以降の更新段階）
次に図９を参照して、Ｒｏｏｔ証明書の２回目以降の更新段階を説明する。ここでは、説明の便宜上、管理装置１０及びＥＣＵ５０に保持される更新前のＲｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐとＲｏｏｔ秘密鍵ＫＲｓのペアにおいて、Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐを旧Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｏｌｄと称し、Ｒｏｏｔ公開鍵ＫＲｐを旧Ｒｏｏｔ公開鍵ＫＲｐ＿ｏｌｄと称し、Ｒｏｏｔ秘密鍵ＫＲｓを旧Ｒｏｏｔ秘密鍵ＫＲｓ＿ｏｌｄと称する。また、新規に生成されるＲｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐとＲｏｏｔ秘密鍵ＫＲｓのペアにおいて、Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐを新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗと称し、Ｒｏｏｔ公開鍵ＫＲｐを新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗと称し、Ｒｏｏｔ秘密鍵ＫＲｓを新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗと称する。また、ここでは、自動車１に備わるＥＣＵ５０のうちの一つである第１のＥＣＵ５０を例に挙げて説明するが、他のＥＣＵ５０についても同様である。
【００７９】
（ステップＳ３１）管理装置１０のセキュアエレメント２０において、鍵生成部２１が、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗと新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗのペアを生成する。さらに、鍵生成部２１が、生成した新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗの証明書である新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗを生成する。新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗは、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗと、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗの電子署名とから構成される。新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗの電子署名は、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗのハッシュ値を旧Ｒｏｏｔ秘密鍵ＫＲｓ＿ｏｌｄで暗号化した結果の暗号化データである。
【００８０】
新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗの生成において、まず鍵生成部２１が、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗのハッシュ値ｈａｓｈ（ＫＲｐ＿ｎｅｗ）を算出する。次いで、暗号処理部２４が、鍵生成部２１により算出されたハッシュ値ｈａｓｈ（ＫＲｐ＿ｎｅｗ）を、Ｒｏｏｔ秘密鍵記憶部３２に記憶される旧Ｒｏｏｔ秘密鍵ＫＲｓ＿ｏｌｄで暗号化する。この暗号化データＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））は新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗの電子署名である。次いで、鍵生成部２１が、新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗと新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗの電子署名ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））とから新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」を構成する。
【００８１】
Ｒｏｏｔ証明書記憶部３１は、鍵生成部２１により生成された新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」を記憶する。Ｒｏｏｔ秘密鍵記憶部３２は、鍵生成部２１により生成された新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗを記憶する。また、Ｒｏｏｔ証明書記憶部３１に記憶される新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とＲｏｏｔ秘密鍵記憶部３２に記憶される新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗとがペアであることを示す関連付け情報を設定する。
【００８２】
（ステップＳ３２）管理装置１０のセキュアエレメント２０において、鍵生成部２１が、暗号路鍵Ｋｃを生成する。次いで、暗号処理部２４が、Ｃ公開鍵証明書記憶部３５に記憶されるＣ公開鍵証明書Ｃｅｒｔ＿ＫＣ１ｐ「ＫＣ１ｐ，ＫＲｓ（ｈａｓｈ（ＫＣ１ｐ））」からＣ公開鍵ＫＣ１ｐを取得する。次いで、暗号処理部２４が、取得したＣ公開鍵ＫＣ１ｐで、鍵生成部２１により生成された暗号路鍵Ｋｃを暗号化する。この暗号化データＫＣ１ｐ（Ｋｃ）は暗号路鍵の送付データである。次いで、管理装置１０のセキュアエレメント２０が、ＣＡＮインタフェース１２により、暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）を第１のＥＣＵ５０のセキュアエレメント６０へ送信する。
【００８３】
第１のＥＣＵ５０のセキュアエレメント６０が、ＣＡＮインタフェース５２により、管理装置１０のセキュアエレメント２０から暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）を受信する。第１のＥＣＵ５０のセキュアエレメント６０において、暗号処理部６４が、管理装置１０のセキュアエレメント２０から受信した暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）を、Ｃ秘密鍵記憶部７４に記憶されるＣ秘密鍵ＫＣ１ｓで復号化する。この復号化により、復号化データ「ＫＣ１ｓ・ＫＣ１ｐ（Ｋｃ）」が得られる。暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）の復号化が成功すれば、復号化データ「ＫＣ１ｓ・ＫＣ１ｐ（Ｋｃ）」は暗号路鍵Ｋｃである。ここでは、暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）の復号化が成功し、暗号路鍵Ｋｃが得られたとする。
【００８４】
（ステップＳ３３）管理装置１０のセキュアエレメント２０において、暗号処理部２４が、上記のステップＳ３２で鍵生成部２１により生成された暗号路鍵Ｋｃで、新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗと、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とを暗号化する。これにより、暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）が得られる。次いで、管理装置１０のセキュアエレメント２０が、ＣＡＮインタフェース１２により、暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）を第１のＥＣＵ５０のセキュアエレメント６０へ送信する。
【００８５】
（ステップＳ３４）第１のＥＣＵ５０のセキュアエレメント６０が、ＣＡＮインタフェース５２により、管理装置１０のセキュアエレメント２０から暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）を受信する。第１のＥＣＵ５０のセキュアエレメント６０において、暗号処理部６４が、管理装置１０のセキュアエレメント２０から受信した暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）を、上記のステップＳ３２で暗号路鍵の送付データＫＣ１ｐ（Ｋｃ）の復号化により得られた暗号路鍵Ｋｃで復号化する。この復号化により、復号化データ「Ｋｃ・Ｋｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）」が得られる。暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）の復号化が成功すれば、復号化データ「Ｋｃ・Ｋｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）」から、新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗと、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とが得られる。ここでは、暗号化データＫｃ（ＫＲｓ＿ｎｅｗ，「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」）の復号化が成功し、新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗと、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とが得られたとする。次いで、検証部６３が、得られた新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」を検証する。
【００８６】
新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証において、まず検証部６３が、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」から新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗを取得し、取得した新Ｒｏｏｔ公開鍵ＫＲｐ＿ｎｅｗのハッシュ値ｈａｓｈ（ＫＲｐ＿ｎｅｗ）を算出する。次いで、検証部６３が、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」から電子署名ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））を取得し、取得した電子署名ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））を、Ｒｏｏｔ証明書記憶部７１に記憶される旧Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｏｌｄの旧Ｒｏｏｔ公開鍵ＫＲｐ＿ｏｌｄで復号化する。この復号化により、復号化データ「ＫＲｐ＿ｏｌｄ・ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」が得られる。
【００８７】
次いで、検証部６３が、算出したハッシュ値ｈａｓｈ（ＫＲｐ＿ｎｅｗ）と、復号化データ「ＫＲｐ＿ｏｌｄ・ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とが一致するかを判定する。この判定の結果、一致する場合には新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証が成功であり、不一致する場合には新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証が失敗である。
【００８８】
新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証が成功である場合には、Ｒｏｏｔ証明書記憶部７１が、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」を記憶する。Ｒｏｏｔ秘密鍵記憶部７２が、新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗを記憶する。また、Ｒｏｏｔ証明書記憶部７１に記憶される新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」とＲｏｏｔ秘密鍵記憶部７２に記憶される新Ｒｏｏｔ秘密鍵ＫＲｓ＿ｎｅｗとがペアであることを示す関連付け情報を設定する。この後、図９の処理を終了する。
【００８９】
一方、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証が失敗である場合には、図９の処理を終了する。よって、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」は、Ｒｏｏｔ証明書記憶部７１に記憶されない。また、新Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐ＿ｎｅｗ「ＫＲｐ＿ｎｅｗ，ＫＲｓ＿ｏｌｄ（ｈａｓｈ（ＫＲｐ＿ｎｅｗ））」の検証が失敗である場合に、制御部５１が所定のエラー処理を実行してもよい。
【００９０】
上述したＲｏｏｔ証明書の更新段階によれば、自動車１の内部に閉じて、Ｒｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを更新することができる。このため、Ｒｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを定期的に更新することにより、Ｒｏｏｔ証明書とＲｏｏｔ秘密鍵のペアの信頼性を高めることができるので、一般のＰＫＩを使用することなく自動車１の内部に閉じた公開鍵暗号方式を実現する際の安全性が向上する。例えば、初期Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐと初期Ｒｏｏｔ秘密鍵ＫＲｓのペアを更新することなく使い続ける場合、耐タンパー性を有するセキュアエレメントであっても、漏洩電磁波解析の結果として初期Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐと初期Ｒｏｏｔ秘密鍵ＫＲｓのペアが漏洩する可能性を否定できない。このため、Ｒｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを定期的に更新することは好ましい。また、初期Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐと初期Ｒｏｏｔ秘密鍵ＫＲｓのペアについては、信頼性の向上のために、できる限り使用回数を少なくすることは好ましい。例えば、初期Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐと初期Ｒｏｏｔ秘密鍵ＫＲｓのペアの使用は、所定回数（例えば１回のみ）に限定してもよい。
【００９１】
また、Ｒｏｏｔ証明書とＲｏｏｔ秘密鍵のペアは自動車１毎に異なることが好ましい。上述したＲｏｏｔ証明書の更新段階によれば、自動車１の内部に閉じてＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを更新することができるので、初期Ｒｏｏｔ証明書Ｃｅｒｔ＿ＫＲｐと初期Ｒｏｏｔ秘密鍵ＫＲｓのペアが各自動車１に共通であったとしても、Ｒｏｏｔ証明書とＲｏｏｔ秘密鍵のペアの更新により、各自動車１のＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアが異なるようにすることができる。
【００９２】
［第２実施形態］
図１０は、第２実施形態に係る管理システムを示す図である。図１０において図１の各部に対応する部分には同一の符号を付け、その説明を省略する。図１０において、管理システムは、管理装置１０ａと管理サーバ装置８０を備える。管理装置１０ａは自動車１に備わる。管理サーバ装置８０は、無線通信ネットワーク２の通信事業者に備わる。
【００９３】
無線通信ネットワーク２を利用するためには、無線通信ネットワーク２の契約者情報が書き込まれたＳＩＭ（Subscriber Identity Module）又はｅＳＩＭ（Embedded Subscriber Identity Module）が必要である。管理装置１０ａは、ＳＩＭ＿２０ａを備える。ＳＩＭ＿２０ａは、無線通信ネットワーク２の契約者情報が書き込まれたＳＩＭである。よって、管理装置１０ａは、ＳＩＭ＿２０ａを使用することにより無線通信ネットワーク２を利用できる。管理装置１０ａは、ＳＩＭ＿２０ａを使用して確立される無線通信回線３により無線通信ネットワーク２に接続する。ＳＩＭ＿２０ａはセキュアエレメントである。
【００９４】
管理サーバ装置８０は、無線通信ネットワーク２の通信事業者の通信回線４により無線通信ネットワーク２に接続する。管理装置１０ａと管理サーバ装置８０とは、無線通信ネットワーク２を介して通信する。
【００９５】
なお、管理装置１０ａと管理サーバ装置８０との間に無線通信ネットワーク２を介した専用線を確立し、管理装置１０ａと管理サーバ装置８０とが専用線を介してデータを送受するようにしてもよい。
【００９６】
自動車１において、管理装置１０ａは制御用車載ネットワーク４０に接続される。本実施形態では、制御用車載ネットワーク４０はＣＡＮである。制御用車載ネットワーク４０には、各種のＥＣＵ５０が接続される。管理装置１０ａは、制御用車載ネットワーク４０を介して、各ＥＣＵ５０との間でデータを交換する。
【００９７】
図１１は、第２実施形態に係る管理装置１０ａを示す構成図である。図１１において図２の各部に対応する部分には同一の符号を付け、その説明を省略する。図１１において、管理装置１０ａは、制御部１１とＣＡＮインタフェース１２と無線通信部１３とＳＩＭ＿２０ａを備える。これら各部はデータを交換できるように構成される。ＳＩＭ＿２０ａは、鍵生成部２１と鍵記憶部２２と検証部２３と暗号処理部２４を備える。第２実施形態においても、鍵記憶部２２の構成は上記の図３に示される構成と同じである。
【００９８】
ＳＩＭ＿２０ａは、セキュアエレメントであり、耐タンパー性を有する。なお、セキュアエレメントとして、ＳＩＭ＿２０ａの代わりにｅＳＩＭを利用してもよい。ＳＩＭ及びｅＳＩＭは、コンピュータの一種であり、コンピュータプログラムによって所望の機能を実現する。
【００９９】
無線通信部１３は無線通信によりデータを送受する。ＳＩＭ＿２０ａは、無線通信ネットワーク２の契約者情報が書き込まれたＳＩＭである。よって、無線通信部１３は、ＳＩＭ＿２０ａを使用することにより、無線通信回線３を介して無線通信ネットワーク２に接続する。
【０１００】
ＳＩＭ＿２０ａは、上記の図２に示すセキュアエレメント２０と同様の機能を実現する。これにより、上記の図６から図９を参照して説明した第１実施形態の管理方法が実現される。
【０１０１】
本実施形態では、ＳＩＭ＿２０ａは、無線通信部１３により、無線通信ネットワーク２を介して管理サーバ装置８０とデータを交換する。管理サーバ装置８０は、ＳＩＭ＿２０ａへ、Ｒｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを送信する。管理サーバ装置８０からＳＩＭ＿２０ａへＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを送信する際には、管理装置１０ａと管理サーバ装置８０との間に無線通信ネットワーク２を介した専用線を確立し、確立した専用線を介してデータを送受することが好ましい。
【０１０２】
ＳＩＭ＿２０ａは、管理サーバ装置８０から受信したＲｏｏｔ証明書を、Ｒｏｏｔ証明書記憶部３１に記憶させる。ＳＩＭ＿２０ａは、管理サーバ装置８０から受信したＲｏｏｔ秘密鍵を、Ｒｏｏｔ秘密鍵記憶部３２に記憶させる。
【０１０３】
本実施形態によれば、無線通信により、管理サーバ装置８０から自動車１へＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを送信することができる。これにより、自動車１に保持されるＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを、管理サーバ装置８０から更新することができる。
【０１０４】
なお、無線通信ネットワーク２の電波が届かない等の理由により管理装置１０ａが無線通信ネットワーク２を介して管理サーバ装置８０と通信できない場合には、必要に応じて、自動車１に対し、新たなＲｏｏｔ証明書とＲｏｏｔ秘密鍵のペアを保持する管理装置１０ａ及びＥＣＵ５０に交換してもよい。
【０１０５】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【０１０６】
例えば、セキュアエレメントとして、ＳＩＭ又はｅＳＩＭを使用する例を挙げたが、これに限定されない。セキュアエレメントとして、例えば、耐タンパー性のある暗号処理チップを使用してもよい。耐タンパー性のある暗号処理チップとして、例えば、ＨＳＭ（Hardware Security Module）やＴＰＭ（Trusted Platform Module）と呼ばれる暗号処理チップが知られている。ＴＰＭについては、例えば非特許文献３に記載されている。例えば、管理装置１０のセキュアエレメント２０及びＥＣＵ５０のセキュアエレメント６０にＨＳＭ又はＴＰＭを使用してもよい。又は、管理装置１０，１０ａのセキュアエレメント２０，２０ａ及びＥＣＵ５０のセキュアエレメント６０にＳＩＭ又はｅＳＩＭを使用してもよい。又は、管理装置１０，１０ａのセキュアエレメント２０，２０ａとしてＳＩＭ又はｅＳＩＭを使用し、ＥＣＵ５０のセキュアエレメント６０としてＨＳＭ又はＴＰＭを使用してもよい。
【０１０７】
また、自動車１に備わるいずれかのＥＣＵ５０を管理装置１０又は管理装置１０ａとして機能させてもよい。
【０１０８】
また、車両として自動車を例に挙げたが、原動機付自転車や鉄道車両等の自動車以外の他の車両にも適用可能である。
【０１０９】
また、上述した管理装置１０、管理装置１０ａ又はＥＣＵ５０が実行する管理方法の各ステップを実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＤＶＤ（Digital Versatile Disk）等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【０１１０】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【０１１１】
１…自動車、２…無線通信ネットワーク、３…無線通信回線、４…通信回線、１０，１０ａ…管理装置、１１，５１…制御部、１２，５２…ＣＡＮインタフェース、１３…無線通信部、２０，６０…セキュアエレメント、２０ａ…ＳＩＭ（セキュアエレメント）、２１，６１…鍵生成部、２２，６２…鍵記憶部、２３，６３…検証部、２４，６４…暗号処理部、３１，７１…Ｒｏｏｔ証明書記憶部、３２，７２…Ｒｏｏｔ秘密鍵記憶部、３３，７５…Ｓ公開鍵証明書記憶部、３４…Ｓ秘密鍵記憶部、３５，７３…Ｃ公開鍵証明書記憶部、３６，７６…ＭＡＣ鍵記憶部、８０…管理サーバ装置
【図１】
2017011482.tif 000003
【図２】
2017011482.tif 000004
【図３】
2017011482.tif 000005
【図４】
2017011482.tif 000006
【図５】
2017011482.tif 000007
【図６】
2017011482.tif 000008
【図７】
2017011482.tif 000009
【図８】
2017011482.tif 000010
【図９】
2017011482.tif 000011
【図１０】
2017011482.tif 000012
【図１１】
2017011482.tif 000013