(57)【要約】【課題】自動車等の車両が外部のサーバ装置と通信を行う際の安全性を向上させること。【解決手段】第２演算処理装置が車両とサーバ装置との間の通信に使用される第１鍵及び第２鍵を格納する鍵記憶ステップと、第２演算処理装置が第１鍵を使用してサーバ装置との間で認証処理を行う認証処理ステップと、第２演算処理装置が第２鍵を使用する暗号通信によりサーバ装置との間で第３鍵を送信又は受信する鍵送受ステップと、第１演算処理装置が第３鍵を使用してサーバ装置との間で暗号通信を行う通信ステップと、を含む。【選択図】図８
2018082439.tif 000002
【特許請求の範囲】
【請求項１】
車両とサーバ装置との間の通信を行う通信システムであり、
前記サーバ装置と、前記車両に搭載される第１演算処理装置と、前記車両に搭載されるセキュアエレメントである第２演算処理装置とを備え、
前記第２演算処理装置は、
前記車両と前記サーバ装置との間の通信に使用される第１鍵及び第２鍵を格納する車両鍵記憶部と、
前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理部と、
前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受部と、を備え、
前記第１演算処理装置は、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信部を備え、
前記サーバ装置は、
前記車両と同じ前記第１鍵及び前記第２鍵を格納するサーバ鍵記憶部と、
前記第１鍵を使用して前記車両の前記車両認証処理部との間で認証処理を行うサーバ認証処理部と、
前記第２鍵を使用する暗号通信により、前記車両の前記車両鍵送受部との間で前記第３鍵を送信又は受信するサーバ鍵送受部と、
前記第３鍵を使用して、前記車両の前記車両通信部との間で暗号通信を行うサーバ通信部と、を備える、
通信システム。
【請求項２】
車両とサーバ装置との間の通信を行う通信システムであり、
前記サーバ装置と、前記車両に搭載される第１演算処理装置と、前記車両に搭載されるセキュアエレメントである第２演算処理装置とを備え、
前記第２演算処理装置は、
前記車両と前記サーバ装置との間の通信に使用される第１鍵を格納する第２車両鍵記憶部と、
前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理部と、を備え、
前記第１演算処理装置は、
前記車両と前記サーバ装置との間の通信に使用される第２鍵を格納する第１車両鍵記憶部と、
前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受部と、
前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信部と、を備え、
前記サーバ装置は、
前記車両と同じ前記第１鍵及び前記第２鍵を格納するサーバ鍵記憶部と、
前記第１鍵を使用して前記車両の前記車両認証処理部との間で認証処理を行うサーバ認証処理部と、
前記第２鍵を使用する暗号通信により、前記車両の前記車両鍵送受部との間で前記第３鍵を送信又は受信するサーバ鍵送受部と、
前記第３鍵を使用して、前記車両の前記車両通信部との間で暗号通信を行うサーバ通信部と、を備える、
通信システム。
【請求項３】
前記第２演算処理装置は、
マスタ鍵を格納する車両マスタ鍵記憶部と、
前記マスタ鍵と前記車両に対応する車両対応識別子とを使用して前記第１鍵及び前記第２鍵を生成する車両鍵生成部と、
をさらに備える請求項１又は２のいずれか１項に記載の通信システム。
【請求項４】
前記サーバ装置は、
前記車両と同じマスタ鍵を格納するサーバマスタ鍵記憶部と、
前記マスタ鍵と前記車両に対応する車両対応識別子とを使用して前記第１鍵及び前記第２鍵を生成するサーバ鍵生成部と、
をさらに備える請求項１から３のいずれか１項に記載の通信システム。
【請求項５】
前記第１演算処理装置は、前記車両対応識別子を前記第２演算処理装置と前記サーバ装置とに通知する車両対応識別子通知部、
をさらに備える請求項３又は４のいずれか１項に記載の通信システム。
【請求項６】
サーバ装置と通信を行う車両であり、
第１演算処理装置と、セキュアエレメントである第２演算処理装置とを備え、
前記第２演算処理装置は、
前記車両と前記サーバ装置との間の通信に使用される第１鍵及び第２鍵を格納する車両鍵記憶部と、
前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理部と、
前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受部と、を備え、
前記第１演算処理装置は、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信部を備える、
車両。
【請求項７】
サーバ装置と通信を行う車両であり、
第１演算処理装置と、セキュアエレメントである第２演算処理装置とを備え、
前記第２演算処理装置は、
前記車両と前記サーバ装置との間の通信に使用される第１鍵を格納する第２車両鍵記憶部と、
前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理部と、を備え、
前記第１演算処理装置は、
前記車両と前記サーバ装置との間の通信に使用される第２鍵を格納する第１車両鍵記憶部と、
前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受部と、
前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信部と、を備える、
車両。
【請求項８】
車両と通信を行うサーバ装置であり、
前記車両と同じ第１鍵及び第２鍵を格納するサーバ鍵記憶部と、
前記第１鍵を使用して前記車両のセキュアエレメントである第２演算処理装置の車両認証処理部との間で認証処理を行うサーバ認証処理部と、
前記第２鍵を使用する暗号通信により、前記車両の車両鍵送受部との間で第３鍵を送信又は受信するサーバ鍵送受部と、
前記第３鍵を使用して、前記車両の車両通信部との間で暗号通信を行うサーバ通信部と、
を備えるサーバ装置。
【請求項９】
車両とサーバ装置との間の通信方法であり、
前記車両は、第１演算処理装置と、セキュアエレメントである第２演算処理装置とを備え、
前記第２演算処理装置が、前記車両と前記サーバ装置との間の通信に使用される第１鍵及び第２鍵を格納する鍵記憶ステップと、
前記第２演算処理装置が、前記第１鍵を使用して前記サーバ装置との間で認証処理を行う認証処理ステップと、
前記第２演算処理装置が、前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する鍵送受ステップと、
前記第１演算処理装置が、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う通信ステップと、
を含む通信方法。
【請求項１０】
車両とサーバ装置との間の通信方法であり、
前記車両は、第１演算処理装置と、セキュアエレメントである第２演算処理装置とを備え、
前記第２演算処理装置が、前記車両と前記サーバ装置との間の通信に使用される第１鍵を格納する第１鍵記憶ステップと、
前記第２演算処理装置が、前記第１鍵を使用して前記サーバ装置との間で認証処理を行う認証処理ステップと、
前記第１演算処理装置が、前記車両と前記サーバ装置との間の通信に使用される第２鍵を格納する第２鍵記憶ステップと、
前記第１演算処理装置が、前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する鍵送受ステップと、
前記第１演算処理装置が、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う通信ステップと、
を含む通信方法。
【請求項１１】
サーバ装置と通信を行う車両に備わる、セキュアエレメントである第２コンピュータに、
前記車両と前記サーバ装置との間の通信に使用される第１鍵及び第２鍵を格納する車両鍵記憶機能と、
前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理機能と、
前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受機能と、を実現させ、
前記車両に備わる第１コンピュータに、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信機能を実現させるためのコンピュータプログラム。
【請求項１２】
サーバ装置と通信を行う車両に備わる、セキュアエレメントである第２コンピュータに、
前記車両と前記サーバ装置との間の通信に使用される第１鍵を格納する第２車両鍵記憶機能と、
前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理機能と、を実現させ、
前記車両に備わる第１コンピュータに、
前記車両と前記サーバ装置との間の通信に使用される第２鍵を格納する第１車両鍵記憶機能と、
前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受機能と、
前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信機能と、を実現させるためのコンピュータプログラム。
【請求項１３】
車両と通信を行うサーバ装置のコンピュータに、
前記車両と同じ第１鍵及び第２鍵を格納するサーバ鍵記憶機能と、
前記第１鍵を使用して前記車両のセキュアエレメントである第２演算処理装置の車両認証処理部との間で認証処理を行うサーバ認証処理機能と、
前記第２鍵を使用する暗号通信により、前記車両の車両鍵送受部との間で第３鍵を送信又は受信するサーバ鍵送受機能と、
前記第３鍵を使用して、前記車両の車両通信部との間で暗号通信を行うサーバ通信機能と、
を実現させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、車両、サーバ装置、通信方法、及びコンピュータプログラムに関する。
【背景技術】
【０００２】
従来、自動車は、ＥＣＵ（Electronic Control Unit：電子制御装置）を有し、ＥＣＵによってエンジン制御等の機能を実現する。ＥＣＵは、コンピュータの一種であり、コンピュータプログラムによって所望の機能を実現する。複数のＥＣＵをＣＡＮ（Controller Area Network）に接続して構成される車載制御システムについてのセキュリティ技術が例えば非特許文献１に記載されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】竹森敬祐、“セキュアエレメントを基点とした車載制御システムの保護  −要素技術の整理と考察−”、電子情報通信学会、信学技報、vol. 114、no. 508、pp. 73-78、2015年3月
【非特許文献２】日本工業規格、ＪＩＳＤ４９０１、“車両識別番号（ＶＩＮ）”
【非特許文献３】STMicroelectronics、“AN4240 Application note”、［平成２８年１１月８日検索］、インターネット＜ＵＲＬ：http://www.st.com/web/en/resource/technical/document/application_note/DM00075575.pdf＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えばコネクテッドカー（Connected Car）と称される自動車が外部のサーバ装置と通信を行う際の安全性を向上させることが一つの課題であった。
【０００５】
本発明は、このような事情を考慮してなされたものであり、自動車等の車両が外部のサーバ装置と通信を行う際の安全性を向上させることができる、通信システム、車両、サーバ装置、通信方法、及びコンピュータプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００６】
（１）本発明の一態様は、車両とサーバ装置との間の通信を行う通信システムであり、前記サーバ装置と、前記車両に搭載される第１演算処理装置と、前記車両に搭載されるセキュアエレメントである第２演算処理装置とを備え、前記第２演算処理装置は、前記車両と前記サーバ装置との間の通信に使用される第１鍵及び第２鍵を格納する車両鍵記憶部と、前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理部と、前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受部と、を備え、前記第１演算処理装置は、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信部を備え、前記サーバ装置は、前記車両と同じ前記第１鍵及び前記第２鍵を格納するサーバ鍵記憶部と、前記第１鍵を使用して前記車両の前記車両認証処理部との間で認証処理を行うサーバ認証処理部と、前記第２鍵を使用する暗号通信により、前記車両の前記車両鍵送受部との間で前記第３鍵を送信又は受信するサーバ鍵送受部と、前記第３鍵を使用して、前記車両の前記車両通信部との間で暗号通信を行うサーバ通信部と、を備える、通信システムである。
【０００７】
（２）本発明の一態様は、車両とサーバ装置との間の通信を行う通信システムであり、前記サーバ装置と、前記車両に搭載される第１演算処理装置と、前記車両に搭載されるセキュアエレメントである第２演算処理装置とを備え、前記第２演算処理装置は、前記車両と前記サーバ装置との間の通信に使用される第１鍵を格納する第２車両鍵記憶部と、前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理部と、を備え、前記第１演算処理装置は、前記車両と前記サーバ装置との間の通信に使用される第２鍵を格納する第１車両鍵記憶部と、前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受部と、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信部と、を備え、前記サーバ装置は、前記車両と同じ前記第１鍵及び前記第２鍵を格納するサーバ鍵記憶部と、前記第１鍵を使用して前記車両の前記車両認証処理部との間で認証処理を行うサーバ認証処理部と、前記第２鍵を使用する暗号通信により、前記車両の前記車両鍵送受部との間で前記第３鍵を送信又は受信するサーバ鍵送受部と、前記第３鍵を使用して、前記車両の前記車両通信部との間で暗号通信を行うサーバ通信部と、を備える、通信システムである。
【０００８】
（３）本発明の一態様は、上記（１）又は（２）のいずれかの通信システムにおいて、前記第２演算処理装置は、マスタ鍵を格納する車両マスタ鍵記憶部と、前記マスタ鍵と前記車両に対応する車両対応識別子とを使用して前記第１鍵及び前記第２鍵を生成する車両鍵生成部と、をさらに備える通信システムである。
（４）本発明の一態様は、上記（１）から（３）のいずれかの通信システムにおいて、前記サーバ装置は、前記車両と同じマスタ鍵を格納するサーバマスタ鍵記憶部と、前記マスタ鍵と前記車両に対応する車両対応識別子とを使用して前記第１鍵及び前記第２鍵を生成するサーバ鍵生成部と、をさらに備える通信システムである。
（５）本発明の一態様は、上記（３）又は（４）のいずれかの通信システムにおいて、前記第１演算処理装置は、前記車両対応識別子を前記第２演算処理装置と前記サーバ装置とに通知する車両対応識別子通知部、をさらに備える通信システムである。
【０００９】
（６）本発明の一態様は、サーバ装置と通信を行う車両であり、第１演算処理装置と、セキュアエレメントである第２演算処理装置とを備え、前記第２演算処理装置は、前記車両と前記サーバ装置との間の通信に使用される第１鍵及び第２鍵を格納する車両鍵記憶部と、前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理部と、前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受部と、を備え、前記第１演算処理装置は、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信部を備える、車両である。
【００１０】
（７）本発明の一態様は、サーバ装置と通信を行う車両であり、第１演算処理装置と、セキュアエレメントである第２演算処理装置とを備え、前記第２演算処理装置は、前記車両と前記サーバ装置との間の通信に使用される第１鍵を格納する第２車両鍵記憶部と、前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理部と、を備え、前記第１演算処理装置は、前記車両と前記サーバ装置との間の通信に使用される第２鍵を格納する第１車両鍵記憶部と、前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受部と、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信部と、を備える、車両である。
【００１１】
（８）本発明の一態様は、車両と通信を行うサーバ装置であり、前記車両と同じ第１鍵及び第２鍵を格納するサーバ鍵記憶部と、前記第１鍵を使用して前記車両のセキュアエレメントである第２演算処理装置の車両認証処理部との間で認証処理を行うサーバ認証処理部と、前記第２鍵を使用する暗号通信により、前記車両の車両鍵送受部との間で第３鍵を送信又は受信するサーバ鍵送受部と、前記第３鍵を使用して、前記車両の車両通信部との間で暗号通信を行うサーバ通信部と、を備えるサーバ装置である。
【００１２】
（９）本発明の一態様は、車両とサーバ装置との間の通信方法であり、前記車両は、第１演算処理装置と、セキュアエレメントである第２演算処理装置とを備え、前記第２演算処理装置が、前記車両と前記サーバ装置との間の通信に使用される第１鍵及び第２鍵を格納する鍵記憶ステップと、前記第２演算処理装置が、前記第１鍵を使用して前記サーバ装置との間で認証処理を行う認証処理ステップと、前記第２演算処理装置が、前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する鍵送受ステップと、前記第１演算処理装置が、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う通信ステップと、を含む通信方法である。
【００１３】
（１０）本発明の一態様は、車両とサーバ装置との間の通信方法であり、前記車両は、第１演算処理装置と、セキュアエレメントである第２演算処理装置とを備え、前記第２演算処理装置が、前記車両と前記サーバ装置との間の通信に使用される第１鍵を格納する第１鍵記憶ステップと、前記第２演算処理装置が、前記第１鍵を使用して前記サーバ装置との間で認証処理を行う認証処理ステップと、前記第１演算処理装置が、前記車両と前記サーバ装置との間の通信に使用される第２鍵を格納する第２鍵記憶ステップと、前記第１演算処理装置が、前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する鍵送受ステップと、前記第１演算処理装置が、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う通信ステップと、を含む通信方法である。
【００１４】
（１１）本発明の一態様は、サーバ装置と通信を行う車両に備わる、セキュアエレメントである第２コンピュータに、前記車両と前記サーバ装置との間の通信に使用される第１鍵及び第２鍵を格納する車両鍵記憶機能と、前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理機能と、前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受機能と、を実現させ、前記車両に備わる第１コンピュータに、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信機能を実現させるためのコンピュータプログラムである。
【００１５】
（１２）本発明の一態様は、サーバ装置と通信を行う車両に備わる、セキュアエレメントである第２コンピュータに、前記車両と前記サーバ装置との間の通信に使用される第１鍵を格納する第２車両鍵記憶機能と、前記第１鍵を使用して前記サーバ装置との間で認証処理を行う車両認証処理機能と、を実現させ、前記車両に備わる第１コンピュータに、前記車両と前記サーバ装置との間の通信に使用される第２鍵を格納する第１車両鍵記憶機能と、前記第２鍵を使用する暗号通信により、前記サーバ装置との間で第３鍵を送信又は受信する車両鍵送受機能と、前記第３鍵を使用して、前記サーバ装置との間で暗号通信を行う車両通信機能と、を実現させるためのコンピュータプログラムである。
【００１６】
（１３）本発明の一態様は、車両と通信を行うサーバ装置のコンピュータに、前記車両と同じ第１鍵及び第２鍵を格納するサーバ鍵記憶機能と、前記第１鍵を使用して前記車両のセキュアエレメントである第２演算処理装置の車両認証処理部との間で認証処理を行うサーバ認証処理機能と、前記第２鍵を使用する暗号通信により、前記車両の車両鍵送受部との間で第３鍵を送信又は受信するサーバ鍵送受機能と、前記第３鍵を使用して、前記車両の車両通信部との間で暗号通信を行うサーバ通信機能と、を実現させるためのコンピュータプログラムである。
【発明の効果】
【００１７】
本発明によれば、自動車等の車両が外部のサーバ装置と通信を行う際の安全性を向上させることができるという効果が得られる。
【図面の簡単な説明】
【００１８】
【図１】一実施形態に係る通信システム及び自動車１００１の構成例を示す図である。
【図２】一実施形態に係るサーバ装置２０００の構成例を示す図である。
【図３】一実施形態に係るインフォテイメント機器１０４０のハードウェア構成例を示すブロック図である。
【図４】一実施形態に係るＴＣＵ１０５０のハードウェア構成例を示すブロック図である。
【図５】一実施形態に係る第１演算処理装置５００の機能構成例を示す図である。
【図６】一実施形態に係る第２演算処理装置６００の機能構成例を示す図である。
【図７】一実施形態に係るインフォテイメント機器１０４０の他のハードウェア構成例を示すブロック図である。
【図８】一実施形態に係る通信方法の例１を示すシーケンスチャートである。
【図９】一実施形態に係る通信方法の例２を示すシーケンスチャートである。
【図１０】一実施形態に係る通信方法の例３を示すシーケンスチャートである。
【図１１】一実施形態に係る通信方法の例４を示すシーケンスチャートである。
【発明を実施するための形態】
【００１９】
以下、図面を参照し、本発明の実施形態について説明する。なお、以下に示す実施形態では、車両として自動車を例に挙げて説明する。
【００２０】
図１は、本実施形態に係る通信システム及び自動車１００１の構成例を示す図である。図１において、自動車１００１は、データ保安装置１０１０と複数のＥＣＵ（電子制御装置）１０２０とインフォテイメント（Infotainment）機器１０４０とＴＣＵ（Tele Communication Unit）１０５０とを備える。ＥＣＵ１０２０は、自動車１００１に備わる車載コンピュータである。ＥＣＵ１０２０は、自動車１００１のエンジン制御等の制御機能を有する。ＥＣＵ１０２０として、例えば、エンジン制御機能を有するＥＣＵ、ハンドル制御機能を有するＥＣＵ、ブレーキ制御機能を有するＥＣＵなどがある。データ保安装置１０１０は、自動車１００１に搭載されたＥＣＵ１０２０に適用されるデータのセキュリティ（保安）の機能を有する。なお、自動車１００１に搭載されたいずれかのＥＣＵをデータ保安装置１０１０として機能させてもよい。
【００２１】
データ保安装置１０１０と複数のＥＣＵ１０２０は、自動車１００１に備わるＣＡＮ（Controller Area Network）１０３０に接続される。ＣＡＮ１０３０は通信ネットワークである。ＣＡＮは車両に搭載される通信ネットワークの一つとして知られている。データ保安装置１０１０は、ＣＡＮ１０３０を介して、各ＥＣＵ１０２０との間でデータを交換する。ＥＣＵ１０２０は、ＣＡＮ１０３０を介して、他のＥＣＵ１０２０との間でデータを交換する。
【００２２】
なお、車両に搭載される通信ネットワークとして、ＣＡＮ以外の通信ネットワークを自動車１００１に備え、ＣＡＮ以外の通信ネットワークを介して、データ保安装置１０１０とＥＣＵ１０２０との間のデータの交換、及び、ＥＣＵ１０２０同士の間のデータの交換が行われてもよい。例えば、ＬＩＮ（Local Interconnect Network）を自動車１００１に備えてもよい。また、ＣＡＮとＬＩＮとを自動車１００１に備えてもよい。また、自動車１００１において、ＬＩＮに接続するＥＣＵ１０２０を備えてもよい。また、データ保安装置１０１０は、ＣＡＮとＬＩＮとに接続されてもよい。また、データ保安装置１０１０は、ＣＡＮを介して該ＣＡＮに接続されるＥＣＵ１０２０との間でデータを交換し、また、ＬＩＮを介して該ＬＩＮに接続されるＥＣＵ１０２０との間でデータを交換してもよい。また、ＥＣＵ１０２０同士が、ＬＩＮを介してデータを交換してもよい。
【００２３】
自動車１００１に備わる車載コンピュータシステム１００２は、データ保安装置１０１０と複数のＥＣＵ１０２０とがＣＡＮ１０３０に接続されて構成される。本実施形態において、車載コンピュータシステム１００２は、自動車１００１の車載制御システムとして機能する。
【００２４】
データ保安装置１０１０は、車載コンピュータシステム１００２の内部と外部の間の通信を監視する。データ保安装置１０１０は、車載コンピュータシステム１００２の外部の装置の例として、インフォテイメント機器１０４０、ＴＣＵ１０５０及び診断ポート１０６０と接続される。ＥＣＵ１０２０は、データ保安装置１０１０を介して、車載コンピュータシステム１００２の外部の装置と通信を行う。
【００２５】
なお、ＣＡＮ１０３０の構成として、ＣＡＮ１０３０が複数のバス（通信線）を備え、該複数のバスをデータ保安装置１０１０に接続してもよい。この場合、一つのバスに、一つのＥＣＵ１０２０又は複数のＥＣＵ１０２０が接続される。
【００２６】
自動車１００１は診断ポート１０６０を備える。診断ポート１０６０として、例えばＯＢＤ（On-board Diagnostics）ポートを使用してもよい。診断ポート１０６０には、自動車１００１の外部の装置を接続可能である。診断ポート１０６０に接続可能な自動車１００１の外部の装置として、例えば、図１に示されるメンテナンスツール２１００などがある。データ保安装置１０１０と、診断ポート１０６０に接続された装置、例えばメンテナンスツール２１００とは、診断ポート１０６０を介して、データを交換する。メンテナンスツール２１００は、ＯＢＤポートに接続される従来の診断端末の機能を有していてもよい。
【００２７】
自動車１００１はインフォテイメント機器１０４０を備える。インフォテイメント機器１０４０として、例えば、ナビゲーション機能、位置情報サービス機能、音楽や動画などのマルチメディア再生機能、音声通信機能、データ通信機能、インターネット接続機能などを有するものが挙げられる。インフォテイメント機器１０４０は、一般に、車載インフォテイメント（In-Vehicle Infotainment：ＩＶＩ）システムと称されたりする。
【００２８】
自動車１００１はＴＣＵ１０５０を備える。ＴＣＵ１０５０は通信装置である。ＴＣＵ１０５０は通信モジュール１０５１を備える。通信モジュール１０５１は、無線通信ネットワークを利用して無線通信を行う。通信モジュール１０５１は、ＳＩＭ（Subscriber Identity Module）１０５２を備える。ＳＩＭ１０５２は、無線通信ネットワークを利用するための情報が書き込まれたＳＩＭである。通信モジュール１０５１は、ＳＩＭ１０５２を使用することにより該無線通信ネットワークに接続して無線通信を行うことができる。なお、ＳＩＭ１０５２として、ｅＳＩＭ（Embedded Subscriber Identity Module）を使用してもよい。ＳＩＭ及びｅＳＩＭはセキュアエレメント（Secure Element：ＳＥ）の例である。ＳＩＭ及びｅＳＩＭは耐タンパー性（Tamper Resistant）を有する。
【００２９】
インフォテイメント機器１０４０とＴＣＵ１０５０とはデータを交換する。例えば、インフォテイメント機器１０４０とＴＣＵ１０５０とを通信ケーブルで接続し、インフォテイメント機器１０４０とＴＣＵ１０５０とは該通信ケーブルを介してデータを送受してもよい。インフォテイメント機器１０４０とＴＣＵ１０５０との間の通信方式として、例えば、ユニバーサル・シリアル・バス（Universal Serial Bus：ＵＳＢ）を使用してもよい。又は、インフォテイメント機器１０４０とＴＣＵ１０５０とをＣＡＮで接続してもよい。
【００３０】
データ保安装置１０１０はＴＣＵ１０５０とデータを交換する。例えば、データ保安装置１０１０とＴＣＵ１０５０とを通信ケーブルで接続し、データ保安装置１０１０とＴＣＵ１０５０とは該通信ケーブルを介してデータを送受してもよい。例えば、データ保安装置１０１０とＴＣＵ１０５０とをＣＡＮで接続してもよい。又は、データ保安装置１０１０とＴＣＵ１０５０との間の通信方式として、例えば、ＵＳＢを使用してもよい。
【００３１】
なお、データ保安装置１０１０が、インフォテイメント機器１０４０を介して、ＴＣＵ１０５０とデータを交換してもよい。又は、ＴＣＵ１０５０を診断ポート１０６０に接続し、データ保安装置１０１０が、診断ポート１０６０を介して、該診断ポート１０６０に接続されたＴＣＵ１０５０とデータを交換してもよい。又は、データ保安装置１０１０が、ＳＩＭ１０５２を含む通信モジュール１０５１を備えてもよい。データ保安装置１０１０がＳＩＭ１０５２を含む通信モジュール１０５１を備える場合には、自動車１００１はＴＣＵ１０５０を備えなくてもよい。
【００３２】
又は、インフォテイメント機器１０４０が、ＳＩＭ１０５２を含む通信モジュール１０５１を備えてもよい。インフォテイメント機器１０４０がＳＩＭ１０５２を含む通信モジュール１０５１を備える場合には、自動車１００１はＴＣＵ１０５０を備えなくてもよい。インフォテイメント機器１０４０がＳＩＭ１０５２を含む通信モジュール１０５１を備える場合には、データ保安装置１０１０は、インフォテイメント機器１０４０に備わる通信モジュール１０５１とデータを交換してもよい。
【００３３】
データ保安装置１０１０は、メイン演算器１０１１とＨＳＭ（Hardware Security Module）１０１２を備える。メイン演算器１０１１は、データ保安装置１０１０の機能を実現させるためのコンピュータプログラムを実行する。ＨＳＭ１０１２は暗号処理機能等を有する。ＨＳＭ１０１２は耐タンパー性を有する。ＨＳＭ１０１２はセキュアエレメントの例である。ＨＳＭ１０１２は、データを記憶する記憶部１０１３を備える。メイン演算器１０１１はＨＳＭ１０１２を使用する。
【００３４】
ＥＣＵ１０２０は、メイン演算器１０２１とＳＨＥ（Secure Hardware Extension）１０２２を備える。メイン演算器１０２１は、ＥＣＵ１０２０の機能を実現させるためのコンピュータプログラムを実行する。ＳＨＥ１０２２は暗号処理機能等を有する。ＳＨＥ１０２２は耐タンパー性を有する。ＳＨＥ１０２２はセキュアエレメントの例である。ＳＨＥ１０２２は、データを記憶する記憶部１０２３を備える。メイン演算器１０２１はＳＨＥ１０２２を使用する。なお、ＳＨＥについては、例えば非特許文献３に記載されている。
【００３５】
なお、本実施形態では、データ保安装置１０１０にＨＳＭを使用しているが、データ保安装置１０１０においてＨＳＭの代わりにＳＨＥを使用してもよい。
【００３６】
サーバ装置２０００は、通信回線を介して、自動車１００１のＴＣＵ１０５０の通信モジュール１０５１とデータを送受する。サーバ装置２０００は、自動車１００１のＴＣＵ１０５０の通信モジュール１０５１が利用する無線通信ネットワークを介して、該通信モジュール１０５１とデータを送受する。又は、サーバ装置２０００は、インターネット等の通信ネットワークと該無線通信ネットワークとを介して、該通信モジュール１０５１とデータを送受してもよい。また、例えば、サーバ装置２０００と通信モジュール１０５１との間をＶＰＮ（Virtual Private Network）回線等の専用回線で接続し、該専用回線でデータを送受してもよい。例えば、ＳＩＭ１０５２に対応する無線通信ネットワークによって、ＶＰＮ回線等の専用回線が提供されてもよい。
【００３７】
サーバ装置２０００は、自動車１００１のＴＣＵ１０５０と通信を行い、ＴＣＵ１０５０を介して、自動車１００１のデータ保安装置１０１０及びインフォテイメント機器１０４０との間でデータを送受する。
【００３８】
なお、データ保安装置１０１０がＳＩＭ１０５２を含む通信モジュール１０５１を備える場合には、サーバ装置２０００は、該データ保安装置１０１０の通信モジュール１０５１と通信を行ってもよい。また、インフォテイメント機器１０４０がＳＩＭ１０５２を含む通信モジュール１０５１を備える場合には、サーバ装置２０００は、該インフォテイメント機器１０４０の通信モジュール１０５１と通信を行ってもよい。
【００３９】
また、サーバ装置２０００と自動車１００１とを通信ケーブルで接続してもよい。例えば、サーバ装置２０００と自動車１００１のデータ保安装置１０１０とを通信ケーブルで接続するように構成してもよい。又は、サーバ装置２０００と自動車１００１とは、有線又は無線の通信ネットワークを介して通信を行うように構成してもよい。例えば、サーバ装置２０００と自動車１００１とを、有線又は無線のＬＡＮ（Local Area Network）で接続してもよい。
【００４０】
図２は、本実施形態に係るサーバ装置２０００の構成例を示す図である。図２において、サーバ装置２０００は、通信部１１と、記憶部１２と、鍵生成部１５と、鍵送受部１６と、認証処理部１８とを備える。通信部１１は、通信回線を介して、他の装置と通信を行う。記憶部１２は、データを記憶する。鍵生成部１５は、鍵を生成する。鍵送受部１６は、自動車１００１との間で鍵の送信又は受信を行う。認証処理部１８は、自動車１００１との間で認証処理を行う。
【００４１】
サーバ装置２０００の機能は、該サーバ装置２０００が備えるＣＰＵ（Central Processing Unit：中央演算処理装置）がコンピュータプログラムを実行することにより実現される。なお、サーバ装置２０００として、汎用のコンピュータ装置を使用して構成してもよく、又は、専用のハードウェア装置として構成してもよい。
【００４２】
図３は、本実施形態に係るインフォテイメント機器１０４０のハードウェア構成例を示すブロック図である。図３において、インフォテイメント機器１０４０は、ＣＰＵ１１０と、記憶部１１２と、インタフェース部１１６と、タッチパネル１１８と、マイクロフォン（マイク）１２０と、スピーカ１２２とを備える。これら各部はデータを交換できるように構成されている。
【００４３】
ＣＰＵ１１０はインフォテイメント機器１０４０の制御を行う。この制御機能は、ＣＰＵ１１０がコンピュータプログラムを実行することにより実現される。記憶部１１２は、ＣＰＵ１１０で実行されるコンピュータプログラムや各種のデータを記憶する。記憶部１１２は、インフォテイメント機器１０４０の各種の機能を実現させるためのコンピュータプログラムを記憶する。ＣＰＵ１１０が該コンピュータプログラムを実行することにより、インフォテイメント機器１０４０の各種の機能が実現される。
【００４４】
インタフェース部１１６は、自インフォテイメント機器１０４０の外部の装置とデータを送受する。インタフェース部１１６は、ＴＣＵ１０５０とデータを送受するインタフェースと、データ保安装置１０１０とデータを送受するインタフェースとを備える。タッチパネル１１８は、液晶パネル等の表示画面を備え、表示画面へのデータ表示と、利用者による表示画面へのタッチ操作に応じたデータ入力とを行う。マイク１２０は音声の入力を行う。スピーカ１２２は音声の再生を行う。
【００４５】
図４は、本実施形態に係るＴＣＵ１０５０のハードウェア構成例を示すブロック図である。図４において、ＴＣＵ１０５０は、ＣＰＵ２１０と、記憶部２１２と、インタフェース部２１６と、通信モジュール１０５１とを備える。これら各部はデータを交換できるように構成されている。通信モジュール１０５１は、ＳＩＭ１０５２を備える。
【００４６】
ＣＰＵ２１０はＴＣＵ１０５０の制御を行う。この制御機能は、ＣＰＵ２１０がコンピュータプログラムを実行することにより実現される。記憶部２１２は、ＣＰＵ２１０で実行されるコンピュータプログラムや各種のデータを記憶する。記憶部２１２は、ＴＣＵ１０５０の各種の機能を実現させるためのコンピュータプログラムを記憶する。ＣＰＵ２１０が該コンピュータプログラムを実行することにより、ＴＣＵ１０５０の各種の機能が実現される。
【００４７】
インタフェース部２１６は、自ＴＣＵ１０５０の外部の装置とデータを送受する。インタフェース部２１６は、インフォテイメント機器１０４０とデータを送受するインタフェースと、データ保安装置１０１０とデータを送受するインタフェースとを備える。通信モジュール１０５１及びＳＩＭ１０５２は上述した通りである。
【００４８】
図５は、本実施形態に係る第１演算処理装置５００の機能構成例を示す図である。図５において、第１演算処理装置５００は、通信部５０１と、記憶部５０２と、鍵送受部５０３と、識別子通知部５０４とを備える。通信部５０１は、第１演算処理装置５００の外部の装置との間で通信を行う。記憶部５０２は、データを記憶する。鍵送受部５０３は、サーバ装置２０００との間で鍵の送信又は受信を行う。識別子通知部５０４は、車両対応識別子の通知を行う。
【００４９】
本実施形態では、自動車１００１のインフォテイメント機器１０４０が第１演算処理装置５００の機能を備えてもよい。又は、自動車１００１のＴＣＵ１０５０が第１演算処理装置５００の機能を備えてもよい。又は、自動車１００１のデータ保安装置１０１０が第１演算処理装置５００の機能を備えてもよい。
【００５０】
図６は、本実施形態に係る第２演算処理装置６００の機能構成例を示す図である。図６において、第２演算処理装置６００は、鍵生成部６０１と、記憶部６０２と、鍵送受部６０３と、認証処理部６０４とを備える。鍵生成部６０１は、鍵を生成する。記憶部６０２は、データを記憶する。鍵送受部６０３は、サーバ装置２０００との間で鍵の送信又は受信を行う。認証処理部６０４は、サーバ装置２０００との間で認証処理を行う。
【００５１】
第２演算処理装置６００はセキュアエレメントである。第２演算処理装置６００は、耐タンパー性を有する半導体製品であってもよい。例えば、ＳＩＭ、ｅＳＩＭ、ＨＳＭ、ＳＨＥ又はＩＣ（Integrated Circuit）チップを使用して第２演算処理装置６００を構成してもよい。
【００５２】
本実施形態では、自動車１００１のＴＣＵ１０５０の通信モジュール１０５１のＳＩＭ１０５２が第２演算処理装置６００の機能を備えてもよい。ＳＩＭ１０５２はセキュアエレメントである。ＳＩＭ１０５２は耐タンパー性を有する。又は、自動車１００１のデータ保安装置１０１０のＨＳＭ１０１２が第２演算処理装置６００の機能を備えてもよい。ＨＳＭ１０１２はセキュアエレメントである。ＨＳＭ１０１２は耐タンパー性を有する。又は、自動車１００１のインフォテイメント機器１０４０にセキュアエレメントであり耐タンパー性を有するＩＣチップを備え、該ＩＣチップが第２演算処理装置６００の機能を備えてもよい。
【００５３】
［第１演算処理装置と第２演算処理装置との構成例］
本実施形態に係る第１演算処理装置と第２演算処理装置との構成例を説明する。
【００５４】
（第１演算処理装置と第２演算処理装置との構成例１）
第１演算処理装置と第２演算処理装置との構成例１では、第１演算処理装置５００の一例としてインフォテイメント機器１０４０が第１演算処理装置５００の機能を備え、第２演算処理装置６００の一例としてＴＣＵ１０５０の通信モジュール１０５１のＳＩＭ１０５２が第２演算処理装置６００の機能を備える。インフォテイメント機器１０４０のＣＰＵ１１０が第１演算処理装置５００の機能を実現させるためのコンピュータプログラムを実行することにより、第１演算処理装置５００の機能が実現される。ＴＣＵ１０５０の通信モジュール１０５１のＳＩＭ１０５２が第２演算処理装置６００の機能を実現させるためのコンピュータプログラムを実行することにより、第２演算処理装置６００の機能が実現される。
【００５５】
第１演算処理装置５００（インフォテイメント機器１０４０）と第２演算処理装置６００（ＳＩＭ１０５２）との間の通信は、インフォテイメント機器１０４０のインタフェース部１１６とＴＣＵ１０５０のインタフェース部２１６とがデータを送受することにより実現される。第１演算処理装置５００（インフォテイメント機器１０４０）は、本実施形態に係る一例としてＴＣＵ１０５０を介して、サーバ装置２０００と通信を行う。
【００５６】
（第１演算処理装置と第２演算処理装置との構成例２）
第１演算処理装置と第２演算処理装置との構成例２では、第１演算処理装置５００の一例としてデータ保安装置１０１０が第１演算処理装置５００の機能を備え、第２演算処理装置６００の一例としてＴＣＵ１０５０の通信モジュール１０５１のＳＩＭ１０５２が第２演算処理装置６００の機能を備える。データ保安装置１０１０のメイン演算器１０１１が第１演算処理装置５００の機能を実現させるためのコンピュータプログラムを実行することにより、第１演算処理装置５００の機能が実現される。ＴＣＵ１０５０の通信モジュール１０５１のＳＩＭ１０５２が第２演算処理装置６００の機能を実現させるためのコンピュータプログラムを実行することにより、第２演算処理装置６００の機能が実現される。
【００５７】
第１演算処理装置５００（データ保安装置１０１０）と第２演算処理装置６００（ＳＩＭ１０５２）との間の通信は、データ保安装置１０１０のインタフェース部（図示せず）とＴＣＵ１０５０のインタフェース部２１６とがデータを送受することにより実現される。データ保安装置１０１０のインタフェース部は、自データ保安装置１０１０の外部の装置とデータを送受する。データ保安装置１０１０のインタフェース部は、ＣＡＮ１０３０を介してデータを送受するインタフェースと、インフォテイメント機器１０４０とデータを送受するインタフェースと、ＴＣＵ１０５０とデータを送受するインタフェースと、診断ポート１０６０を介してデータを送受するインタフェースとを備える。メイン演算器１０１１は、該インタフェース部を介して、データ保安装置１０１０以外の他の装置とデータの送受を行う。第１演算処理装置５００（データ保安装置１０１０）は、本実施形態に係る一例としてＴＣＵ１０５０を介して、サーバ装置２０００と通信を行う。
【００５８】
（第１演算処理装置と第２演算処理装置との構成例３）
第１演算処理装置と第２演算処理装置との構成例３では、第１演算処理装置５００の一例としてデータ保安装置１０１０が第１演算処理装置５００の機能を備え、第２演算処理装置６００の一例としてデータ保安装置１０１０のＨＳＭ１０１２が第２演算処理装置６００の機能を備える。データ保安装置１０１０のメイン演算器１０１１が第１演算処理装置５００の機能を実現させるためのコンピュータプログラムを実行することにより、第１演算処理装置５００の機能が実現される。データ保安装置１０１０のＨＳＭ１０１２が第２演算処理装置６００の機能を実現させるためのコンピュータプログラムを実行することにより、第２演算処理装置６００の機能が実現される。
【００５９】
第１演算処理装置５００（データ保安装置１０１０）と第２演算処理装置６００（ＨＳＭ１０１２）との間の通信は、メイン演算器１０１１とＨＳＭ１０１２とがデータを送受することにより実現される。第１演算処理装置５００（データ保安装置１０１０）は、本実施形態に係る一例としてＴＣＵ１０５０を介して、サーバ装置２０００と通信を行う。
【００６０】
（第１演算処理装置と第２演算処理装置との構成例４）
図７は、本実施形態に係るインフォテイメント機器１０４０の他のハードウェア構成例を示すブロック図である。図７において、図３の各部に対応する部分には同一の符号を付している。図７に示すインフォテイメント機器１０４０は、図３の構成においてさらに通信モジュール１０５１を備える。通信モジュール１０５１は、ＳＩＭ１０５２を備える。通信モジュール１０５１は、ＳＩＭ１０５２を使用することにより該ＳＩＭ１０５２に対応する無線通信ネットワークに接続して無線通信を行うことができる。なお、ＳＩＭ１０５２として、ｅＳＩＭを使用してもよい。ＳＩＭ及びｅＳＩＭはセキュアエレメントの例である。ＳＩＭ及びｅＳＩＭは耐タンパー性を有する。
【００６１】
図７に示すインフォテイメント機器１０４０は、自己の通信モジュール１０５１を使用して、自動車１００１の外部の装置と通信を行う。例えば、図７に示すインフォテイメント機器１０４０は、自己の通信モジュール１０５１を使用して、サーバ装置２０００と通信を行ってもよい。
【００６２】
第１演算処理装置と第２演算処理装置との構成例４では、図７に示すインフォテイメント機器１０４０を適用する。第１演算処理装置５００の一例としてインフォテイメント機器１０４０が第１演算処理装置５００の機能を備え、第２演算処理装置６００の一例としてインフォテイメント機器１０４０の通信モジュール１０５１のＳＩＭ１０５２が第２演算処理装置６００の機能を備える。インフォテイメント機器１０４０のＣＰＵ１１０が第１演算処理装置５００の機能を実現させるためのコンピュータプログラムを実行することにより、第１演算処理装置５００の機能が実現される。インフォテイメント機器１０４０の通信モジュール１０５１のＳＩＭ１０５２が第２演算処理装置６００の機能を実現させるためのコンピュータプログラムを実行することにより、第２演算処理装置６００の機能が実現される。
【００６３】
第１演算処理装置５００（インフォテイメント機器１０４０）と第２演算処理装置６００（インフォテイメント機器１０４０の通信モジュール１０５１のＳＩＭ１０５２）との間の通信は、インフォテイメント機器１０４０のＣＰＵ１１０とインフォテイメント機器１０４０の通信モジュール１０５１とがデータを送受することにより実現される。第１演算処理装置５００（インフォテイメント機器１０４０）は、本実施形態に係る一例としてインフォテイメント機器１０４０の通信モジュール１０５１を介して、サーバ装置２０００と通信を行う。なお、第１演算処理装置５００（インフォテイメント機器１０４０）は、本実施形態に係る一例としてＴＣＵ１０５０を介して、サーバ装置２０００と通信を行ってもよい。また、インフォテイメント機器１０４０がＳＩＭ１０５２を含む通信モジュール１０５１を備える場合には、自動車１００１はＴＣＵ１０５０を備えなくてもよい。
【００６４】
（第１演算処理装置と第２演算処理装置との構成例５）
第１演算処理装置と第２演算処理装置との構成例５では、第１演算処理装置５００の一例としてＴＣＵ１０５０が第１演算処理装置５００の機能を備え、第２演算処理装置６００の一例としてＴＣＵ１０５０の通信モジュール１０５１のＳＩＭ１０５２が第２演算処理装置６００の機能を備える。ＴＣＵ１０５０のＣＰＵ２１０が第１演算処理装置５００の機能を実現させるためのコンピュータプログラムを実行することにより、第１演算処理装置５００の機能が実現される。ＴＣＵ１０５０の通信モジュール１０５１のＳＩＭ１０５２が第２演算処理装置６００の機能を実現させるためのコンピュータプログラムを実行することにより、第２演算処理装置６００の機能が実現される。
【００６５】
第１演算処理装置５００（ＴＣＵ１０５０）と第２演算処理装置６００（ＳＩＭ１０５２）との間の通信は、ＣＰＵ２１０と通信モジュール１０５１とがデータを送受することにより実現される。第１演算処理装置５００（ＴＣＵ１０５０）は、本実施形態に係る一例として通信モジュール１０５１により、サーバ装置２０００と通信を行う。
【００６６】
［車両対応識別子の構成例］
本実施形態に係る車両対応識別子の構成例を説明する。車両対応識別子は、自動車１００１に対応する識別子である。
【００６７】
（車両対応識別子の構成例１）
車両対応識別子の構成例１では、車両対応識別子は、自動車１００１の車両識別番号（Vehicle Identification Number：ＶＩＮ）を使用して構成される。車両対応識別子は、車両識別番号であってもよく、又は、車両識別番号と他の情報とから構成される情報であってもよい。車両識別番号（ＶＩＮ）については、例えば非特許文献２に記載されている。
【００６８】
（車両対応識別子の構成例２）
車両対応識別子の構成例２では、車両対応識別子は、自動車１００１に搭載されるＳＩＭ１０５２に格納されるＩＭＳＩ（International Mobile Subscriber Identity）又はＩＣＣＩＤ（Integrated Circuit Card ID）を使用して構成される。車両対応識別子は、ＩＭＳＩであってもよく、若しくは、ＩＭＳＩと他の情報とから構成される情報であってもよい。又は、車両対応識別子は、ＩＣＣＩＤであってもよく、若しくは、ＩＣＣＩＤと他の情報とから構成される情報であってもよい。例えば、車両対応識別子は、ＩＭＳＩとＩＣＣＩＤと車両識別番号とのうち複数を含む情報であってもよい。
【００６９】
（車両対応識別子の構成例３）
車両対応識別子の構成例３では、車両対応識別子は、自動車１００１に搭載される機器（車載機器）の識別情報（車載機器識別情報）を使用して構成される。車両対応識別子に使用される車載機器識別情報として、例えば、通信モジュール１０５１の識別情報、ＴＣＵ１０５０の識別情報、インフォテイメント機器１０４０の識別情報、データ保安装置１０１０の識別情報などの車載機器の車載機器識別情報を適用できる。また、それら各車載機器の車載機器識別情報のうち一つ又は複数の車載機器識別情報を使用して車両対応識別子を構成してもよい。車両対応識別子は、車載機器識別情報であってもよく、又は、車載機器識別情報と他の情報とから構成される情報であってもよい。例えば、車両対応識別子は、ＩＭＳＩとＩＣＣＩＤと車両識別番号とのうち一つ又は複数と、車載機器識別情報とを含む情報であってもよい。
【００７０】
［鍵生成方法の例］
本実施形態に係る鍵生成方法の例を説明する。本実施形態では、鍵の例として、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを生成する。ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎは、認証処理に使用される鍵である。ＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎは、鍵の送信又は受信における暗号通信に使用される鍵である。本実施形態では、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎは第１鍵に対応し、ＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎは第２鍵に対応する。
【００７１】
本実施形態では、所定の鍵生成関数を使用して共通鍵を生成する。鍵生成関数の例を以下に説明する。
【００７２】
（鍵生成関数の例１）
共通鍵＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、Ｖ＿ＩＤ、Ｋｅｙ＿ＩＤ（Ｎｋ））
但し、Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔはマスタ鍵である。Ｖ＿ＩＤは車両対応識別子である。Ｋｅｙ＿ＩＤ（Ｎｋ）は鍵種別識別子である。Ｎｋは鍵の種別を表す変数である。ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、Ｖ＿ＩＤ、Ｋｅｙ＿ＩＤ（Ｎｋ））は、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと車両対応識別子Ｖ＿ＩＤと鍵種別識別子Ｋｅｙ＿ＩＤ（Ｎｋ）とから生成されるダイジェスト値である。ダイジェスト値として、例えば、ハッシュ（hash）関数により算出される値、又は、排他的論理和演算により算出される値などが挙げられる。例えば、共通鍵は、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと車両対応識別子Ｖ＿ＩＤと鍵種別識別子Ｋｅｙ＿ＩＤ（Ｎｋ）とを入力値に使用して算出されるハッシュ関数値である。
【００７３】
鍵種別識別子Ｋｅｙ＿ＩＤ（Ｎｋ）の値が異なれば、ダイジェスト値は異なる。鍵種別識別子Ｋｅｙ＿ＩＤ（Ｎｋ）の値を変えることによって、同じマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと車両対応識別子Ｖ＿ＩＤとから、異なる共通鍵を生成することができる。例えば、ＭＡＣ鍵の鍵種別識別子をＫｅｙ＿ＩＤ（ｍａｃ）とし、ＥＮＣ鍵の鍵種別識別子をＫｅｙ＿ＩＤ（ｅｎｃ）とする。この場合、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、車両対応識別子Ｖ＿ＩＤと、鍵種別識別子Ｋｅｙ＿ＩＤ（ｍａｃ），Ｋｅｙ＿ＩＤ（ｅｎｃ）とを使用して、
ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、Ｖ＿ＩＤ、Ｋｅｙ＿ＩＤ（ｍａｃ））、
ＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎ＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、Ｖ＿ＩＤ、Ｋｅｙ＿ＩＤ（ｅｎｃ））、
により、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを異なる鍵として生成することができる。
【００７４】
（鍵生成関数の例２）
鍵生成関数の例２では、共通鍵としてＣＭＡＣ（Cipher-based Message Authentication Code）を生成する。
共通鍵＝ＣＭＡＣ（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ；Ｖ＿ＩＤ、Ｋｅｙ＿ＩＤ（Ｎｋ））
但し、ＣＭＡＣ（Ａ；Ｂ）において、鍵ＡはＣＭＡＣの生成に使用される鍵であり、データＢはＣＭＡＣの生成対象のデータである。これにより、鍵生成関数の例２では、共通鍵は、鍵Ａを使用して生成される「データＢのＣＭＡＣ」である。ＣＭＡＣ（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ；Ｖ＿ＩＤ、Ｋｅｙ＿ＩＤ（Ｎｋ））において、マスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔはＣＭＡＣの生成に使用される鍵であり、車両対応識別子Ｖ＿ＩＤと鍵種別識別子Ｋｅｙ＿ＩＤ（Ｎｋ）との連結データはＣＭＡＣの生成対象のデータである。これにより、鍵生成関数の例２では、共通鍵は、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを使用して生成される「車両対応識別子Ｖ＿ＩＤと鍵種別識別子Ｋｅｙ＿ＩＤ（Ｎｋ）との連結データ、のＣＭＡＣ」である。
【００７５】
鍵生成関数の例２において、鍵種別識別子Ｋｅｙ＿ＩＤ（Ｎｋ）の値が異なればＣＭＡＣは異なる。このため、鍵生成関数の例２においても、鍵生成関数の例１と同様に、鍵種別識別子Ｋｅｙ＿ＩＤ（Ｎｋ）の値を変えることによって、同じマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと車両対応識別子Ｖ＿ＩＤとから、異なる共通鍵を生成することができる。
【００７６】
［通信方法の例］
次に本実施形態に係る通信方法の例を説明する。なお、以下の通信方法の例の説明では、車両対応識別子の一例として車両識別番号を使用する。自動車１００１の車両対応識別子は、該自動車１００１の車両識別番号ＶＩＮである。
【００７７】
また、サーバ装置２０００と第１演算処理装置５００との間の通信路として、暗号化通信路を使用してもよい。例えば、サーバ装置２０００と第１演算処理装置５００は、暗号化通信路の一例として、ｈｔｔｐｓ（hypertext transfer protocol secure）通信を行ってもよい。また、サーバ装置２０００と第１演算処理装置５００は、ＶＰＮ回線等の専用回線を使用して通信を行ってもよい。
【００７８】
＜通信方法の例１＞
図８を参照して本実施形態に係る通信方法の例１を説明する。図８は、本実施形態に係る通信方法の例１を示すシーケンスチャートである。
【００７９】
図８において、サーバ装置２０００は、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを予め記憶部１２に格納する。第２演算処理装置６００は、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを予め記憶部６０２に格納する。サーバ装置２０００が記憶部１２に格納するマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、第２演算処理装置６００が記憶部６０２に格納するマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔとは、同じである。記憶部１２はサーバマスタ鍵記憶部に対応する。記憶部６０２は車両マスタ鍵記憶部に対応する。
【００８０】
第２演算処理装置６００の一例としてのＳＩＭ１０５２には、例えば、ＳＩＭ１０５２の製造工場でマスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔがＳＩＭ１０５２に格納される。又は、自動車１００１、通信モジュール１０５１若しくはＴＣＵ１０５０の製造工場などで、マスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔがＳＩＭ１０５２に格納されてもよい。
【００８１】
通信方法の例１は、自動車１００１の生産又は保守の段階（生産保守フェーズ）と、自動車１００１の一般の走行の段階（市場走行フェーズ）とから構成される。
【００８２】
（生産保守フェーズ）
通信方法の例１の生産保守フェーズを説明する。生産保守フェーズは、自動車製造会社での自動車１００１の生産時、又は、自動車整備工場や自動車販売店等での自動車１００１の保守時に実施される。
【００８３】
（ステップＳ１）第１演算処理装置５００は、自動車１００１の車両識別番号ＶＩＮを取得する。自動車１００１の車両識別番号ＶＩＮは、予め第１演算処理装置５００に格納されてもよく、又は、所定の契機で外部から第１演算処理装置５００に車両識別番号ＶＩＮが通知されてもよい。
【００８４】
例えば、自動車１００１のエンジン制御機能を有するＥＣＵ１０２０が該自動車１００１の車両識別番号ＶＩＮを格納している場合、該ＥＣＵ１０２０の起動後に該ＥＣＵ１０２０から第１演算処理装置５００に該自動車１００１の車両識別番号ＶＩＮを通知してもよい。
【００８５】
又は、自動車１００１の車両識別番号ＶＩＮは、例えば自動車１００１の自動車製造会社や自動車販売店などで管理されている車両識別番号ＶＩＮが第１演算処理装置５００に供給されてもよい。例えば、自動車１００１の自動車製造会社が車両識別番号ＶＩＮのデータベースを備え、該データベースから通信により車両識別番号ＶＩＮを自動車１００１の第１演算処理装置５００に通知してもよい。
【００８６】
（ステップＳ２）第１演算処理装置５００の識別子通知部５０４は、自動車１００１の車両識別番号ＶＩＮを第２演算処理装置６００に通知する。
【００８７】
（ステップＳ３）第２演算処理装置６００の鍵生成部６０１は、記憶部６０２に格納するマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、第１演算処理装置５００から通知された自動車１００１の車両識別番号ＶＩＮと、鍵種別識別子Ｋｅｙ＿ＩＤ（ｍａｃ），Ｋｅｙ＿ＩＤ（ｅｎｃ）とを使用して、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを生成する。この鍵生成方法には、上述した鍵生成方法の例を適用する。鍵生成関数は、予め、鍵生成部６０１に設定される。鍵種別識別子Ｋｅｙ＿ＩＤ（ｍａｃ），Ｋｅｙ＿ＩＤ（ｅｎｃ）は、予め、鍵生成部６０１に設定される。鍵生成部６０１は車両鍵生成部に対応する。
【００８８】
鍵生成部６０１は、鍵生成関数の一例として鍵生成関数の例１「共通鍵＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、Ｖ＿ＩＤ、Ｋｅｙ＿ＩＤ（Ｎｋ））」を使用して、
ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＶＩＮ、Ｋｅｙ＿ＩＤ（ｍａｃ））、
ＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎ＝ダイジェスト（Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔ、ＶＩＮ、Ｋｅｙ＿ＩＤ（ｅｎｃ））、
により、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを生成する。ここでは、車両対応識別子Ｖ＿ＩＤは自動車１００１の車両識別番号ＶＩＮである。また、ダイジェスト値は、その一例として、ハッシュ関数により算出される値である。
【００８９】
記憶部６０２は、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを格納する。通信方法の例１では、記憶部６０２は車両鍵記憶部に対応する。
【００９０】
なお、第２演算処理装置６００は、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを生成した後に、記憶部６０２からマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを削除してもよい。これにより、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔが漏洩する可能性を低減することができる。
【００９１】
以上が通信方法の例１の生産保守フェーズの説明である。
【００９２】
（市場走行フェーズ）
通信方法の例１の市場走行フェーズを説明する。市場走行フェーズは、自動車１００１の一般の走行の段階において、例えば、自動車１００１のエンジン始動時や、自動車１００１とサーバ装置２０００との通信の開始時などに実施される。
【００９３】
（ステップＳ１１）第１演算処理装置５００は、自動車１００１の車両識別番号ＶＩＮとチャレンジ（乱数ｃ）とをサーバ装置２０００に送信する。第１演算処理装置５００は、乱数ｃを発生し、該乱数ｃをチャレンジに使用する。第１演算処理装置５００は、該チャレンジ（乱数ｃ）を保持しておく。
【００９４】
（ステップＳ１２）サーバ装置２０００の鍵生成部１５は、記憶部１２に格納するマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、第１演算処理装置５００から受信した自動車１００１の車両識別番号ＶＩＮと、鍵種別識別子Ｋｅｙ＿ＩＤ（ｍａｃ），Ｋｅｙ＿ＩＤ（ｅｎｃ）とを使用して、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを生成する。この鍵生成方法は、上記したステップＳ３における第２演算処理装置６００の鍵生成部６０１の鍵生成方法と同じである。鍵生成関数は、予め、鍵生成部１５に設定される。鍵種別識別子Ｋｅｙ＿ＩＤ（ｍａｃ），Ｋｅｙ＿ＩＤ（ｅｎｃ）は、予め、鍵生成部１５に設定される。鍵生成部１５はサーバ鍵生成部に対応する。
【００９５】
記憶部１２は、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを自動車１００１の車両識別番号ＶＩＮに対応付けて格納する。記憶部１２はサーバ鍵記憶部に対応する。
【００９６】
（ステップＳ１３）サーバ装置２０００の認証処理部１８は、記憶部１２に格納されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎと、第１演算処理装置５００から受信したチャレンジ（乱数ｃ）とを使用して、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）を生成する。このレスポンス生成方法は、予め、認証処理部１８に設定される。レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）は、本実施形態に係る一例として、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎで乱数ｃを暗号化した暗号化データである。
【００９７】
なお、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）は、本実施形態に係る一例として、ＣＭＡＣ（Ｋ＿ｍａｃ＿ｇｅｎ；乱数ｃ）、つまり、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎを使用して生成される「乱数ｃのＣＭＡＣ」であってもよい。
【００９８】
（ステップＳ１４）サーバ装置２０００の認証処理部１８は、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）とチャレンジ（乱数ｓ）とを自動車１００１の第１演算処理装置５００に送信する。認証処理部１８は、乱数ｓを発生し、該乱数ｓをチャレンジに使用する。認証処理部１８は、該チャレンジ（乱数ｓ）を保持しておく。
【００９９】
（ステップＳ１５）第１演算処理装置５００は、サーバ装置２０００に送信したチャレンジ（乱数ｃ）と、サーバ装置２０００から受信したレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）及びチャレンジ（乱数ｓ）とを第２演算処理装置６００に送信する。
【０１００】
（ステップＳ１６）第２演算処理装置６００の認証処理部６０４は、第１演算処理装置５００から受信したレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）の検証を行う。このレスポンス検証方法として、サーバ装置２０００の認証処理部１８におけるレスポンス生成方法に対応する方法が、予め、認証処理部６０４に設定される。レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）の検証において、認証処理部６０４は、第１演算処理装置５００から受信したチャレンジ（乱数ｃ）と、記憶部６０２に格納されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎと、を使用する。
【０１０１】
例えば、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）がＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎによる乱数ｃの暗号化データである場合、認証処理部６０４は、記憶部６０２に格納されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎを使用して、第１演算処理装置５００から受信したチャレンジ（乱数ｃ）を暗号化し、該暗号化により生成した暗号化データとレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）とを比較する。この比較の結果、両者が一致する場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）の検証が合格であり、両者が不一致の場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）の検証が不合格である。
【０１０２】
なお、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）がＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎによる乱数ｃの暗号化データである場合の他の検証方法として、認証処理部６０４は、記憶部６０２に格納されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎを使用して、第１演算処理装置５００から受信したレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）を復号し、該復号の結果と第１演算処理装置５００から受信したチャレンジ（乱数ｃ）とを比較してもよい。この比較の結果、両者が一致する場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）の検証が合格であり、両者が不一致の場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）の検証が不合格である。
【０１０３】
例えば、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）がＣＭＡＣ（Ｋ＿ｍａｃ＿ｇｅｎ；乱数ｃ）である場合、認証処理部６０４は、記憶部６０２に格納されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎを使用して、第１演算処理装置５００から受信したチャレンジ（乱数ｃ）のＣＭＡＣを生成し、生成したＣＭＡＣとレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）とを比較する。この比較の結果、両者が一致する場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）の検証が合格であり、両者が不一致の場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）の検証が不合格である。
【０１０４】
レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）の検証が合格である場合には、ステップＳ１７に進む。一方、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）の検証が不合格である場合には、図８の処理を終了する。レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｃ）の検証が不合格である場合には、第２演算処理装置６００は所定のエラー処理を実行してもよい。
【０１０５】
（ステップＳ１７）第２演算処理装置６００の認証処理部６０４は、記憶部６０２に格納されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎと、第１演算処理装置５００から受信したチャレンジ（乱数ｓ）とを使用して、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）を生成する。このレスポンス生成方法は、予め、認証処理部６０４に設定される。レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）は、本実施形態に係る一例として、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎで乱数ｓを暗号化した暗号化データである。
【０１０６】
なお、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）は、本実施形態に係る一例として、ＣＭＡＣ（Ｋ＿ｍａｃ＿ｇｅｎ；乱数ｓ）、つまり、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎを使用して生成される「乱数ｓのＣＭＡＣ」であってもよい。
【０１０７】
（ステップＳ１８）第２演算処理装置６００の認証処理部６０４は、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）を第１演算処理装置５００に送信する。
【０１０８】
（ステップＳ１９）第１演算処理装置５００は、第２演算処理装置６００から受信したレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）をサーバ装置２０００に送信する。
【０１０９】
（ステップＳ２０）サーバ装置２０００の認証処理部１８は、自動車１００１の第１演算処理装置５００から受信したレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）の検証を行う。このレスポンス検証方法として、自動車１００１の第２演算処理装置６００の認証処理部６０４におけるレスポンス生成方法に対応する方法が、予め、認証処理部１８に設定される。レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）の検証において、認証処理部１８は、自動車１００１の第１演算処理装置５００に送信したチャレンジ（乱数ｓ）と、記憶部１２に格納されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎと、を使用する。
【０１１０】
例えば、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）がＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎによる乱数ｓの暗号化データである場合、認証処理部１８は、記憶部１２に格納されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎを使用して、自動車１００１の第１演算処理装置５００に送信したチャレンジ（乱数ｓ）を暗号化し、該暗号化により生成した暗号化データとレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）とを比較する。この比較の結果、両者が一致する場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）の検証が合格であり、両者が不一致の場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）の検証が不合格である。
【０１１１】
なお、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）がＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎによる乱数ｓの暗号化データである場合の他の検証方法として、認証処理部１８は、記憶部１２に格納されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎを使用して、自動車１００１の第１演算処理装置５００から受信したレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）を復号し、該復号の結果と第１演算処理装置５００に送信したチャレンジ（乱数ｓ）とを比較してもよい。この比較の結果、両者が一致する場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）の検証が合格であり、両者が不一致の場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）の検証が不合格である。
【０１１２】
例えば、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）がＣＭＡＣ（Ｋ＿ｍａｃ＿ｇｅｎ；乱数ｓ）である場合、認証処理部１８は、記憶部１２に格納されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎを使用して、自動車１００１の第１演算処理装置５００に送信したチャレンジ（乱数ｓ）のＣＭＡＣを生成し、生成したＣＭＡＣとレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）とを比較する。この比較の結果、両者が一致する場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）の検証が合格であり、両者が不一致の場合にはレスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）の検証が不合格である。
【０１１３】
レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）の検証が合格である場合には、ステップＳ２１に進む。一方、レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）の検証が不合格である場合には、図８の処理を終了する。レスポンスＫ＿ｍａｃ＿ｇｅｎ（乱数ｓ）の検証が不合格である場合には、サーバ装置２０００は所定のエラー処理を実行してもよい。
【０１１４】
サーバ装置２０００の認証処理部１８はサーバ認証処理部に対応する。自動車１００１の第２演算処理装置６００の認証処理部６０４は車両認証処理部に対応する。
【０１１５】
（ステップＳ２１）サーバ装置２０００の鍵送受部１６は、セッション鍵Ｋ＿ｃｏｍを生成する。例えば、鍵送受部１６は、乱数を発生し、該乱数に基づいてセッション鍵Ｋ＿ｃｏｍを生成してもよい。記憶部１２は、セッション鍵Ｋ＿ｃｏｍを自動車１００１の車両識別番号ＶＩＮに対応付けて格納する。セッション鍵Ｋ＿ｃｏｍは第３鍵に対応する。
【０１１６】
（ステップＳ２２）サーバ装置２０００の鍵送受部１６は、記憶部１２に格納されるＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎを使用してセッション鍵Ｋ＿ｃｏｍを暗号化し、暗号化セッション鍵Ｋ＿ｅｎｃ＿ｇｅｎ（Ｋ＿ｃｏｍ）を生成する。鍵送受部１６は、暗号化セッション鍵Ｋ＿ｅｎｃ＿ｇｅｎ（Ｋ＿ｃｏｍ）を自動車１００１の第１演算処理装置５００に送信する。
【０１１７】
（ステップＳ２３）第１演算処理装置５００は、サーバ装置２０００から受信した暗号化セッション鍵Ｋ＿ｅｎｃ＿ｇｅｎ（Ｋ＿ｃｏｍ）を第２演算処理装置６００に送信する。
【０１１８】
（ステップＳ２４）第２演算処理装置６００の鍵送受部６０３は、第１演算処理装置５００から受信した暗号化セッション鍵Ｋ＿ｅｎｃ＿ｇｅｎ（Ｋ＿ｃｏｍ）を、記憶部６０２に格納されるＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎで復号する。この復号の結果としてセッション鍵Ｋ＿ｃｏｍが取得される。これにより、サーバ装置２０００と自動車１００１とは同じセッション鍵Ｋ＿ｃｏｍを保持する。
【０１１９】
（ステップＳ２５）第２演算処理装置６００の鍵送受部６０３は、セッション鍵Ｋ＿ｃｏｍを第１演算処理装置５００に送信する。第１演算処理装置５００の記憶部５０２は、第２演算処理装置６００から受信したセッション鍵Ｋ＿ｃｏｍを格納する。
【０１２０】
通信方法の例１では、自動車１００１の第２演算処理装置６００の鍵送受部６０３は車両鍵送受部に対応する。サーバ装置２０００の鍵送受部１６はサーバ鍵送受部に対応する。
【０１２１】
（ステップＳ２６）サーバ装置２０００の通信部１１と、自動車１００１の第１演算処理装置５００の通信部５０１とは、セッション鍵Ｋ＿ｃｏｍを使用して暗号通信を行う。この暗号通信では、セッション鍵Ｋ＿ｃｏｍを使用してデータが暗号化された暗号化データＫ＿ｃｏｍ（データ）が、サーバ装置２０００の通信部１１と、自動車１００１の第１演算処理装置５００の通信部５０１との間で送受される。これにより、サーバ装置２０００の通信部１１と、自動車１００１の第１演算処理装置５００の通信部５０１との間で、セッション鍵Ｋ＿ｃｏｍを使用した暗号通信路が構築される。
【０１２２】
サーバ装置２０００の通信部１１は、サーバ通信部に対応する。自動車１００１の第１演算処理装置５００の通信部５０１は、車両通信部に対応する。
【０１２３】
なお、自動車１００１の第２演算処理装置６００の鍵送受部６０３がセッション鍵Ｋ＿ｃｏｍを生成してサーバ装置２０００に供給してもよい。
【０１２４】
以上が通信方法の例１の市場走行フェーズの説明である。
【０１２５】
上述した通信方法の例１によれば、サーバ装置２０００と自動車１００１の第２演算処理装置６００とは、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ（第１鍵）を使用して認証処理を行い、ＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎ（第２鍵）を使用する暗号通信によりセッション鍵Ｋ＿ｃｏｍ（第３鍵）を送受する。これにより、サーバ装置２０００と自動車１００１の第１演算処理装置５００との間の暗号通信に使用されるセッション鍵Ｋ＿ｃｏｍ（第３鍵）の安全性が向上する。このことは、自動車１００１が外部のサーバ装置２０００と通信を行う際の安全性を向上させる効果を奏する。
【０１２６】
また、サーバ装置２０００と自動車１００１との間の認証処理に使用されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ（第１鍵）は、自動車１００１においてセキュアエレメントである第２演算処理装置６００で保管される。これにより、サーバ装置２０００と自動車１００１との間の認証の信頼性を向上させることができる。
【０１２７】
＜通信方法の例２＞
図９を参照して本実施形態に係る通信方法の例２を説明する。図９は、本実施形態に係る通信方法の例２を示すシーケンスチャートである。図９において図８の各ステップに対応する部分には同一の符号を付している。
【０１２８】
図９において、サーバ装置２０００は、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを予め記憶部１２に格納する。第２演算処理装置６００は、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを予め記憶部６０２に格納する。サーバ装置２０００が記憶部１２に格納するマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔと、第２演算処理装置６００が記憶部６０２に格納するマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔとは、同じである。記憶部１２はサーバマスタ鍵記憶部に対応する。通信方法の例２では、記憶部６０２は車両マスタ鍵記憶部及び第２車両鍵記憶部に対応する。
【０１２９】
第２演算処理装置６００の一例としてのＳＩＭ１０５２には、例えば、ＳＩＭ１０５２の製造工場でマスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔがＳＩＭ１０５２に格納される。又は、自動車１００１、通信モジュール１０５１若しくはＴＣＵ１０５０の製造工場などで、マスタ鍵Ｍａｓｔｅｒ＿ＳｅｃｒｅｔがＳＩＭ１０５２に格納されてもよい。
【０１３０】
通信方法の例２は、通信方法の例１と同様に生産保守フェーズと市場走行フェーズとから構成される。
【０１３１】
（生産保守フェーズ）
通信方法の例２の生産保守フェーズを説明する。通信方法の例２の生産保守フェーズにおいて、ステップＳ１、ステップＳ２及びステップＳ３が実行される。ステップＳ１、ステップＳ２及びステップＳ３は、通信方法の例１と同じである。次いでステップＳ４が実行される。
【０１３２】
（ステップＳ４）第２演算処理装置６００は、ＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎを第１演算処理装置５００に送信する。第１演算処理装置５００の記憶部５０２は、第２演算処理装置６００から受信したＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎを格納する。通信方法の例２では、記憶部５０２は第１車両鍵記憶部に対応する。
【０１３３】
以上が通信方法の例２の生産保守フェーズの説明である。
【０１３４】
（市場走行フェーズ）
通信方法の例２の市場走行フェーズを説明する。通信方法の例２の市場走行フェーズにおいて、ステップＳ１１からステップＳ２２までが実行される。ステップＳ１１からステップＳ２２までは、通信方法の例１と同じである。
【０１３５】
（ステップＳ２４ａ）第１演算処理装置５００の鍵送受部５０３は、サーバ装置２０００から受信した暗号化セッション鍵Ｋ＿ｅｎｃ＿ｇｅｎ（Ｋ＿ｃｏｍ）を、記憶部５０２に格納されるＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎで復号する。この復号の結果としてセッション鍵Ｋ＿ｃｏｍが取得される。これにより、サーバ装置２０００と自動車１００１とは同じセッション鍵Ｋ＿ｃｏｍを保持する。第１演算処理装置５００の記憶部５０２は、セッション鍵Ｋ＿ｃｏｍを格納する。
【０１３６】
通信方法の例２では、自動車１００１の第１演算処理装置５００の鍵送受部５０３は車両鍵送受部に対応する。サーバ装置２０００の鍵送受部１６はサーバ鍵送受部に対応する。
【０１３７】
なお、自動車１００１の第１演算処理装置５００の鍵送受部５０３がセッション鍵Ｋ＿ｃｏｍを生成してサーバ装置２０００に供給してもよい。
【０１３８】
次いでステップＳ２６が実行される。ステップＳ２６は通信方法の例１と同じである。
【０１３９】
以上が通信方法の例２の市場走行フェーズの説明である。
【０１４０】
上述した通信方法の例２によれば、サーバ装置２０００と自動車１００１の第２演算処理装置６００とは、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ（第１鍵）を使用して認証処理を行う。また、サーバ装置２０００と自動車１００１の第１演算処理装置５００とは、ＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎ（第２鍵）を使用する暗号通信によりセッション鍵Ｋ＿ｃｏｍ（第３鍵）を送受する。これにより、サーバ装置２０００と自動車１００１の第１演算処理装置５００との間の暗号通信に使用されるセッション鍵Ｋ＿ｃｏｍ（第３鍵）の安全性が向上する。このことは、自動車１００１が外部のサーバ装置２０００と通信を行う際の安全性を向上させる効果を奏する。
【０１４１】
また、サーバ装置２０００と自動車１００１との間の認証処理に使用されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ（第１鍵）は、自動車１００１においてセキュアエレメントである第２演算処理装置６００で保管される。これにより、サーバ装置２０００と自動車１００１との間の認証の信頼性を向上させることができる。
【０１４２】
また、サーバ装置２０００と自動車１００１との間の暗号通信に使用されるＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎ（第２鍵）は、自動車１００１において第１演算処理装置５００で保管される。セキュアエレメントに限定されない第１演算処理装置５００には、比較的処理能力の高いＣＰＵを使用することにより、サーバ装置２０００と自動車１００１との間の暗号通信の通信速度を向上させることができる。
【０１４３】
＜通信方法の例３＞
図１０を参照して本実施形態に係る通信方法の例３を説明する。図１０は、本実施形態に係る通信方法の例３を示すシーケンスチャートである。図１０において図８の各ステップに対応する部分には同一の符号を付している。
【０１４４】
通信方法の例３は、通信方法の例１と同様に生産保守フェーズと市場走行フェーズとから構成される。通信方法の例３では、生産保守フェーズにおいてサーバ装置２０００が鍵を生成する。以下、通信方法の例１と異なる点を主に説明する。
【０１４５】
サーバ装置２０００と第２演算処理装置６００とは、通信方法の例１と同様に、同じマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを予め格納する。
【０１４６】
（生産保守フェーズ）
通信方法の例３の生産保守フェーズを説明する。通信方法の例３の生産保守フェーズにおいて、ステップＳ１、ステップＳ２及びステップＳ３が実行される。ステップＳ１、ステップＳ２及びステップＳ３は、通信方法の例１と同じである。また、ステップＳ２ａが実行される。
【０１４７】
（ステップＳ２ａ）第１演算処理装置５００の識別子通知部５０４は、自動車１００１の車両識別番号ＶＩＮをサーバ装置２０００に送信する。通信方法の例３では、識別子通知部５０４は車両対応識別子通知部に対応する。
【０１４８】
次いでステップＳ１２が実行される。該ステップＳ１２は、通信方法の例１の市場走行フェーズのステップＳ１２と同じである。サーバ装置２０００の記憶部１２は、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを自動車１００１の車両識別番号ＶＩＮに対応付けて格納する。
【０１４９】
以上が通信方法の例３の生産保守フェーズの説明である。
【０１５０】
（市場走行フェーズ）
通信方法の例３の市場走行フェーズを説明する。通信方法の例３の市場走行フェーズにおいて、ステップＳ１１及びステップＳ１３からステップＳ２６までが実行される。ステップＳ１１及びステップＳ１３からステップＳ２６までは、通信方法の例１と同じである。
【０１５１】
なお、通信方法の例１と同様に、自動車１００１の第２演算処理装置６００の鍵送受部６０３がセッション鍵Ｋ＿ｃｏｍを生成してサーバ装置２０００に供給してもよい。
【０１５２】
以上が通信方法の例３の市場走行フェーズの説明である。
【０１５３】
上述した通信方法の例３によれば、サーバ装置２０００と自動車１００１の第２演算処理装置６００とは、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ（第１鍵）を使用して認証処理を行い、ＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎ（第２鍵）を使用する暗号通信によりセッション鍵Ｋ＿ｃｏｍ（第３鍵）を送受する。これにより、サーバ装置２０００と自動車１００１の第１演算処理装置５００との間の暗号通信に使用されるセッション鍵Ｋ＿ｃｏｍ（第３鍵）の安全性が向上する。このことは、自動車１００１が外部のサーバ装置２０００と通信を行う際の安全性を向上させる効果を奏する。
【０１５４】
また、通信方法の例３によれば、サーバ装置２０００は生産保守フェーズにおいてＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ（第１鍵）及びＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎ（第２鍵）を生成する。これにより、市場走行フェーズにおける処理時間の短縮を図ることができる。
【０１５５】
また、サーバ装置２０００と自動車１００１との間の認証処理に使用されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ（第１鍵）は、自動車１００１においてセキュアエレメントである第２演算処理装置６００で保管される。これにより、サーバ装置２０００と自動車１００１との間の認証の信頼性を向上させることができる。
【０１５６】
＜通信方法の例４＞
図１１を参照して本実施形態に係る通信方法の例４を説明する。図１１は、本実施形態に係る通信方法の例４を示すシーケンスチャートである。図１１において図９の各ステップに対応する部分には同一の符号を付している。
【０１５７】
通信方法の例４は、通信方法の例２と同様に生産保守フェーズと市場走行フェーズとから構成される。通信方法の例４では、通信方法の例３と同様に、生産保守フェーズにおいてサーバ装置２０００が鍵を生成する。以下、通信方法の例２と異なる点を主に説明する。
【０１５８】
サーバ装置２０００と第２演算処理装置６００とは、通信方法の例２と同様に、同じマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを予め格納する。
【０１５９】
（生産保守フェーズ）
通信方法の例４の生産保守フェーズを説明する。通信方法の例４の生産保守フェーズにおいて、ステップＳ１、ステップＳ２、ステップＳ３及びステップＳ４が実行される。ステップＳ１、ステップＳ２、ステップＳ３及びステップＳ４は、通信方法の例２と同じである。また、ステップＳ２ａ及びステップＳ１２が実行される。ステップＳ２ａ及びステップＳ１２は、通信方法の例３と同じである。サーバ装置２０００の記憶部１２は、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを自動車１００１の車両識別番号ＶＩＮに対応付けて格納する。
【０１６０】
以上が通信方法の例４の生産保守フェーズの説明である。
【０１６１】
（市場走行フェーズ）
通信方法の例４の市場走行フェーズを説明する。通信方法の例４の市場走行フェーズにおいて、ステップＳ１１と、ステップＳ１３からステップＳ２２までと、ステップＳ２４ａと、ステップＳ２６とが実行される。ステップＳ１１と、ステップＳ１３からステップＳ２２までと、ステップＳ２６とは、通信方法の例１と同じである。ステップＳ２４ａは、通信方法の例２と同じである。
【０１６２】
なお、通信方法の例２と同様に、自動車１００１の第１演算処理装置５００の鍵送受部５０３がセッション鍵Ｋ＿ｃｏｍを生成してサーバ装置２０００に供給してもよい。
【０１６３】
以上が通信方法の例４の市場走行フェーズの説明である。
【０１６４】
上述した通信方法の例４によれば、サーバ装置２０００と自動車１００１の第２演算処理装置６００とは、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ（第１鍵）を使用して認証処理を行う。また、サーバ装置２０００と自動車１００１の第１演算処理装置５００とは、ＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎ（第２鍵）を使用する暗号通信によりセッション鍵Ｋ＿ｃｏｍ（第３鍵）を送受する。これにより、サーバ装置２０００と自動車１００１の第１演算処理装置５００との間の暗号通信に使用されるセッション鍵Ｋ＿ｃｏｍ（第３鍵）の安全性が向上する。このことは、自動車１００１が外部のサーバ装置２０００と通信を行う際の安全性を向上させる効果を奏する。
【０１６５】
また、通信方法の例４によれば、サーバ装置２０００は生産保守フェーズにおいてＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ（第１鍵）及びＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎ（第２鍵）を生成する。これにより、市場走行フェーズにおける処理時間の短縮を図ることができる。
【０１６６】
また、サーバ装置２０００と自動車１００１との間の認証処理に使用されるＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎ（第１鍵）は、自動車１００１においてセキュアエレメントである第２演算処理装置６００で保管される。これにより、サーバ装置２０００と自動車１００１との間の認証の信頼性を向上させることができる。
【０１６７】
また、サーバ装置２０００と自動車１００１との間の暗号通信に使用されるＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎ（第２鍵）は、自動車１００１において第１演算処理装置５００で保管される。セキュアエレメントに限定されない第１演算処理装置５００には、比較的処理能力の高いＣＰＵを使用することにより、サーバ装置２０００と自動車１００１との間の暗号通信の通信速度を向上させることができる。
【０１６８】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【０１６９】
車両対応識別子の一例としてＩＭＳＩ又はＩＣＣＩＤを使用する場合、例えば車両対応識別子がＩＭＳＩである場合には、ＳＩＭ１０５２は、ＩＭＳＩを格納した時点以降であれば任意のタイミングで、ＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを生成し、生成したＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを保持してもよい。例えば、ＳＩＭ１０５２の製造時に、該ＳＩＭ１０５２にＩＭＳＩを書き込んで、該ＳＩＭ１０５２がＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを生成して保持してもよい。
【０１７０】
また、車両対応識別子の一例としてＩＭＳＩ又はＩＣＣＩＤを使用する場合、例えば車両対応識別子がＩＭＳＩである場合には、ＳＩＭ１０５２は、自己のＩＭＳＩを第１演算処理装置５００に通知する。第１演算処理装置５００の識別子通知部５０４は、ＳＩＭ１０５２から通知されたＩＭＳＩをサーバ装置２０００に通知する。
【０１７１】
また、車両対応識別子の一例としてＩＭＳＩ又はＩＣＣＩＤを使用する場合、例えば車両対応識別子がＩＭＳＩである場合においてＳＩＭ１０５２が別の自動車１００１で再利用されるときには、該ＳＩＭ１０５２が保持しているＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを、該別の自動車１００１で使用してもよい。
【０１７２】
なお、上述した実施形態では、第２演算処理装置６００がマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを保持するが、第２演算処理装置６００はマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを保持しなくてもよい。第２演算処理装置６００は、マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを保持せず、外部で生成されたＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを保持してもよい。例えば、第２演算処理装置６００としてＳＩＭ１０５２を使用する場合、ＳＩＭ１０５２の製造工場の鍵生成装置が、サーバ装置２０００と同じマスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを保持する。該鍵生成装置は、該マスタ鍵Ｍａｓｔｅｒ＿Ｓｅｃｒｅｔを使用してＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとを生成し、生成したＭＡＣ鍵Ｋ＿ｍａｃ＿ｇｅｎとＥＮＣ鍵Ｋ＿ｅｎｃ＿ｇｅｎとをＳＩＭ１０５２に書き込む。この場合、車両対応識別子には、ＳＩＭ１０５２のＩＭＳＩ又はＩＣＣＩＤを使用してもよい。
【０１７３】
なお、第１演算処理装置５００がＪＴＡＧ（Joint Test Action Group）等のデバッグポートを備える場合、該デバッグポートに対してＩＤ（識別子）による認証機能を設けてもよい。これにより、第１演算処理装置５００に対するメモリダンプやタッピング攻撃などの攻撃によってセッション鍵Ｋ＿ｃｏｍが漏洩することを抑制することができる。例えば、インフォテイメント機器１０４０やデータ保安装置１０１０のデバッグポートに対してＩＤによる認証機能を設けてもよい。
【０１７４】
上述した実施形態では、データ保安装置１０１０やＥＣＵ１０２０にＨＳＭやＳＨＥを使用したが、ＨＳＭ及びＳＨＥ以外の暗号処理チップを使用してもよい。データ保安装置１０１０に対して、例えば「ＴＰＭ（Trusted Platform Module）ｆ」と呼ばれる暗号処理チップを使用してもよい。ＴＰＭｆは耐タンパー性を有する。ＴＰＭｆはセキュアエレメントの例である。ＥＣＵ１０２０に対して、例えば「ＴＰＭｔ」と呼ばれる暗号処理チップを使用してもよい。ＴＰＭｔは耐タンパー性を有する。ＴＰＭｔはセキュアエレメントの例である。
【０１７５】
上述した実施形態は、例えば、自動車の製造工場や整備工場、販売店等において、自動車１００１に適用してもよい。
【０１７６】
上述した実施形態では、車両として自動車を例に挙げたが、原動機付自転車や鉄道車両等の自動車以外の他の車両にも適用可能である。
【０１７７】
また、上述した各装置の機能を実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＤＶＤ（Digital Versatile Disc）等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【０１７８】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【０１７９】
１１，５０１…通信部、１２，１１２，２１２，５０２，６０２…記憶部、１５，６０１…鍵生成部、１６，５０３，６０３…鍵送受部、１８，６０４…認証処理部、１１０，２１０…ＣＰＵ、１１６，２１６…インタフェース部、１１８…タッチパネル、１２０…マイクロフォン、１２２…スピーカ、５０４…識別子通知部、１００１…自動車、１００２…車載コンピュータシステム、１０１０…データ保安装置、１０１１，１０２１…メイン演算器、１０１２…ＨＳＭ、１０１３，１０２３…記憶部、１０２０…ＥＣＵ、１０２２…ＳＨＥ、１０３０…ＣＡＮ、１０４０…インフォテイメント機器、１０５０…ＴＣＵ、１０５１…通信モジュール、１０５２…ＳＩＭ、１０６０…診断ポート、２０００…サーバ装置、２１００…メンテナンスツール
【図１】
2018082439.tif 000003
【図２】
2018082439.tif 000004
【図３】
2018082439.tif 000005
【図４】
2018082439.tif 000006
【図５】
2018082439.tif 000007
【図６】
2018082439.tif 000008
【図７】
2018082439.tif 000009
【図８】
2018082439.tif 000010
【図９】
2018082439.tif 000011
【図１０】
2018082439.tif 000012
【図１１】
2018082439.tif 000013