JP6192673B2 - 鍵管理システム、鍵管理方法およびコンピュータプログラム - Google Patents

鍵管理システム、鍵管理方法およびコンピュータプログラム Download PDF

Info

Publication number
JP6192673B2
JP6192673B2 JP2015042509A JP2015042509A JP6192673B2 JP 6192673 B2 JP6192673 B2 JP 6192673B2 JP 2015042509 A JP2015042509 A JP 2015042509A JP 2015042509 A JP2015042509 A JP 2015042509A JP 6192673 B2 JP6192673 B2 JP 6192673B2
Authority
JP
Japan
Prior art keywords
key
mcu
master
key management
computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015042509A
Other languages
English (en)
Other versions
JP2016163265A (ja
Inventor
秀明 川端
秀明 川端
竹森 敬祐
敬祐 竹森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KDDI Corp filed Critical KDDI Corp
Priority to JP2015042509A priority Critical patent/JP6192673B2/ja
Publication of JP2016163265A publication Critical patent/JP2016163265A/ja
Application granted granted Critical
Publication of JP6192673B2 publication Critical patent/JP6192673B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、鍵管理システム、鍵管理方法およびコンピュータプログラムに関する。
近年、自動車に組み込まれている車載制御システムには、20個〜100個程度のMCU(Micro Controller Unit;車載制御マイコン)が搭載されている。MCUとは、コンピュータの一種であり、コンピュータプログラムによって、MCUは所望の機能を実現する。これらのMCUが、ネットワークデバイス用のシリアルバスであるCAN(Controller Area Network)に繋がり、各MCUが互いに連携をすることで、車載制御システムは、走る、止まる、曲がるといった自動車の基本的な制御や、その他の応用的な制御を行っている。CANとは、自動車などの機械の内部で電子回路や各装置を接続するためのネットワーク規格であり、ISO(国際標準化機構)によって標準化されている。
また、自動車には、MCUに繋がるOBD(On−Board Diagnostics;自己故障診断)ポートと呼ばれる診断ポートのインタフェースが設けられている。このOBDポートに、メンテナンス専用の診断端末を接続して、該診断端末から更新プログラムのインストールおよびデータの設定変更などを行うことができる。すでに使用されている自動車について、MCUのコンピュータプログラムの更新等をする場合には、通常、車検時や自動車の定期点検時などに、正規販売店(ディーラー)や一般の自動車整備工場の工員によって更新がなされる。
C.Miller、C.Valasek、"Adventures in Automotive Networks and Control Units"、DEF CON 21、2013年8月. 吉岡顕、小熊寿、西川真、繁富利恵、大塚玲、今井秀樹、"構成証明機能を持つ車内通信プロトコルの提案"、情報処理学会、DICOMO2008、2008年7月.
従来の車載制御システムには、MCUのコンピュータプログラムの不正書き換え防止機能、CANに流れるパケットの送信元認証機能、等のセキュリティ機能が備わっていない。そのため、MCUの制御プログラムの改ざん、なりすましパケットによる制御機能の乗っ取り、悪意によるMCU自体の取り替え、等の問題がある。これらの問題が発生した場合には、人命に影響する可能性もある。したがって、自動車等の車両に備わるコンピュータで使用されるコンピュータプログラム等のデータの適用については、信頼性を向上させることが望まれる。
信頼性を向上させる手段の1つとして、例えば、各MCUが、起動後に、自己のMCUが保持する認証用の鍵を用いて、データの交換相手と相互に認証をするようにすることが考えられる。それによって、車両外部からの攻撃に対する車載制御システムの防御能力を向上させることができる。または、MCUに使用されるコンピュータプログラム等のデータに電子署名を付してMCUへ配布し、該MCUが保持する検証用の鍵を用いて該データの電子署名を検証することによって、MCUに使用されるコンピュータプログラム等のデータの検査をすることが考えられる。上記のような場面等においては、車載制御システムのコンピュータに保持される鍵の管理や更新をどのような手段で実現するのかという点が、保安上の課題となっている。
非特許文献1では、OBDポートからMCUへ偽のコードを送信することで、車載制御システムへの攻撃が可能であることを実証している。非特許文献2では、システム全体のMCUを統括するマスタとしての役割を持つマスタMCUを設けることによって、マスタMCUがその他のMCU(エンドMCU)の制御コードに関するハッシュの期待値を管理する。そして、エンジン始動時に、マスタMCUがハッシュの期待値を測定・比較する手法が提示されている。しかしながら非特許文献2では、ハッシュの期待値の測定において、ハッシュの期待値を安全に計算すること、およびハッシュの期待値を安全に管理すること、が保証されていないという問題がある。
上記の従来技術では、マスタMCUが認証用の鍵を用いてエンドMCUを認証している。そのためマスタMCUは、エンドMCUを認証するための共通鍵または公開鍵を、事前に入手しておく必要がある。しかしながら従来技術では、このエンドMCUを認証すするための共通鍵または公開鍵をマスタMCUへ配布する方法、および配布された共通鍵または公開鍵の正しさを保証する方法、については言及されていない。すなわち従来技術では、自動車等の車両の車載制御システムに保持される鍵の管理や更新を実現することができないという課題がある。
本発明は上記の点に鑑みてなされたものであり、複数のMCUで構成される車載制御システムにおける認証用の鍵を管理するための、鍵管理システムに関するものである。本発明では、車載制御システムにおいて、各MCU(エンドMCU)の認証用の鍵の更新時に新しい鍵(更新鍵)を生成および管理したりする、マスタの役割を持ったマスタMCUを設ける。また、本発明におけるマスタMCUは、車両を特定するIDが記憶されたeSIM(Embedded SubscriberIdentity Module)またはSIM(Subscriber Identity Module)を有している。また、本発明における鍵管理システムは、マスタMCUおよびエンドMCUの初回鍵の生成と、マスタMCUの更新鍵の生成および管理と、を行うための、車両外部に設置されたリモートサーバを有する。
以上によって、本発明は、自動車等の車両に保持される鍵の更新や管理を実現できる、鍵管理システム、鍵管理方法およびコンピュータプログラムを提供する。
(1)本発明は上記の課題を解決するためになされたものであり、本発明の一態様は、 車両に備わる第2のコンピュータとデータを送受信する前記車両に備わる第1のコンピュータと、前記第1のコンピュータと無線通信ネットワークを介してデータを送受信する鍵管理サーバ装置と、を備える鍵管理システムであり、前記第1のコンピュータは、前記第2のコンピュータの認証に用いる第2の鍵を記憶する第2の鍵記憶部と、前記第2の鍵の更新鍵を生成して前記第2の鍵記憶部に記憶された前記第2の鍵を更新する第2の鍵管理部と、を備え、前記鍵管理サーバ装置は、前記第1のコンピュータの認証に用いる第1の鍵および前記第2の鍵を記憶する第1の鍵記憶部と、前記第1の鍵を生成して前記第1の鍵記憶部に記憶された前記第1の鍵を更新し、前記第2の鍵の初回鍵を生成して前記第1の鍵記憶部に記憶された前記第2の鍵を更新する第1の鍵管理部と、を備える鍵管理システムである。
(2)本発明の一態様は、車両に備わる第2のコンピュータとデータを送受信する前記車両に備わる第1のコンピュータと、前記第1のコンピュータと無線通信ネットワークを介してデータを送受信する鍵管理サーバ装置と、を備える鍵管理システムであり、前記第1のコンピュータは、前記第2のコンピュータの認証に用いる第2の鍵を記憶する第2の鍵記憶部と、前記鍵管理サーバ装置から送付された前記第2の鍵で前記第2の鍵記憶部に記憶された前記第2の鍵を更新する第2の鍵管理部と、を備え、前記鍵管理サーバ装置は、 前記第1のコンピュータの認証に用いる第1の鍵および前記第2の鍵を記憶する第1の鍵記憶部と、前記第1の鍵を生成して前記第1の鍵記憶部に記憶された前記第1の鍵を更新し、前記第2の鍵を生成して前記第1の鍵記憶部に記憶された前記第2の鍵を更新する第1の鍵管理部と、を備える鍵管理システムである。
(3)本発明の一態様は、車両に備わる第2のコンピュータとデータを送受信する前記車両に備わる第1のコンピュータと、前記第1のコンピュータと無線通信ネットワークを介してデータを送受信する鍵管理サーバ装置と、を備える鍵管理システムにおいて、前記第1のコンピュータは、前記第2のコンピュータの認証に用いる第2の鍵を記憶する第2の鍵記憶ステップと、前記第2の鍵の更新鍵を生成して前記第2の鍵記憶ステップにおいて記憶された前記第2の鍵を更新する第2の鍵管理ステップと、を含み、前記鍵管理サーバ装置は、前記第1のコンピュータの認証に用いる第1の鍵および前記第2の鍵を記憶する第1の鍵記憶ステップと、前記第1の鍵を生成して前記第1の鍵記憶ステップにおいて記憶された前記第1の鍵を更新し、前記第2の鍵の初回鍵を生成して前記第1の鍵記憶ステップにおいて記憶された前記第2の鍵を更新する第1の鍵管理ステップと、を含む鍵管理方法である。
(4)本発明の一態様は、車両に備わる第2のコンピュータとデータを送受信する前記車両に備わる第1のコンピュータに、前記第2のコンピュータの認証に用いる第2の鍵を記憶する第2の鍵記憶機能と、前記第2の鍵の更新鍵を生成して前記第2の鍵記憶機能によって記憶された前記第2の鍵を更新する第2の鍵管理機能と、を実現するためのコンピュータプログラムである。
(5)本発明の一態様は、第1のコンピュータと無線通信ネットワークを介してデータを送受信する鍵管理サーバコンピュータに、前記第1のコンピュータの認証に用いる第1の鍵および第2の鍵を記憶する第1の鍵記憶機能と、前記第1の鍵を生成して前記第1の鍵記憶機能によって記憶された前記第1の鍵を更新し、前記第2の鍵の初回鍵を生成して前記第1の鍵記憶機能によって記憶された前記第2の鍵を更新する第1の鍵管理機能と、 を実現するためのコンピュータプログラムである。
本発明によれば、自動車等の車両に保持される鍵の更新や管理を実現できる。
本発明の一実施形態に係る鍵管理システムの構成図である。 本発明の一実施形態に係る鍵管理サーバ装置の構成を示すブロック図である。 本発明の一実施形態に係るマスタMCUおよびエンドMCUの構成を示すブロック図である。 本発明の一実施形態に係る鍵管理サーバ装置とマスタMCUとの間の認証方法の手順を示すシーケンスチャートである。 本発明の一実施形態に係るマスタMCUへの初回鍵の配布方法の手順を示すシーケンスチャートである。 本発明の一実施形態に係るエンドMCUへの初回鍵の配布方法の手順を示すシーケンスチャートである。 本発明の一実施形態に係るマスタMCU鍵の更新方法の手順を示すシーケンスチャートである。 本発明の一実施形態に係るエンドMCU鍵の更新方法の手順を示すシーケンスチャートである。
以下、図面を参照し、本発明の実施形態について説明する。なお、以下に示す実施形態では、車両として自動車を例に挙げて説明する。
図1は、本発明の一実施形態に係る鍵管理システムの構成図である。
図1において、鍵管理システムは、鍵管理サーバ装置10と、1つのマスタMCU_20と、複数のエンドMCU_50と、を備える。なお、エンドMCU_50は、1つだけであってもかまわない。鍵管理サーバ装置10は、自動車1の製造会社(車メーカとも称する)に備わる。マスタMCU_20および各エンドMCU_50は、自動車1に備わる。鍵管理サーバ装置10とマスタMCU_20とは、無線通信ネットワーク2を介して通信をする。無線通信ネットワーク2は、通信事業者によって運用される。無線通信ネットワーク2を利用するためには、無線通信ネットワーク2の契約者情報が書き込まれたeSIMまたはSIMが必要である。
自動車1において、マスタMCU_20は制御用車載ネットワーク40に接続される。制御用車載ネットワーク40として、例えばCAN(Controller Area Network)が使用される。本実施形態では、制御用車載ネットワーク40はCANである。
制御用車載ネットワーク40には、マスタMCU_20および各種のエンドMCU_50が接続される。各エンドMCU_50は、例えば、駆動系MCU、車体系MCU、安全制御系MCUなどである。マスタMCU_20は、制御用車載ネットワーク40を介して、各エンドMCU_50との間でデータを交換する。
図2は、本発明の一実施形態に係る鍵管理サーバ装置の構成を示すブロック図である。
図2において、鍵管理サーバ装置10は、無線通信部11とeSIM_12と鍵管理部13と暗号処理部14と鍵管理データ記憶部15とを備える。これら各部はデータを交換できるように構成されている。
無線通信部11は無線通信によりデータを送受信する。eSIM_12は、無線通信ネットワーク2の契約者情報が書き込まれたeSIMである。よって、無線通信部11は、eSIM_12を使用することにより無線通信ネットワーク2を利用できる。なお、eSIM_12の代わりにSIMを利用してもよい。
鍵管理部13は、自動車1の鍵の管理を行う。ここで管理する鍵とは、マスタMCU鍵、エンドMCU鍵、および全てのマスタMCUおよびエンドMCUが予め持っているメーカMCU鍵である。
マスタMCU鍵は、鍵管理サーバ装置10で生成および管理され、マスタMCUに配布される鍵である。マスタMCU鍵は、マスタMCUと各エンドMCUとの間の認証、またはマスタMCUと鍵管理サーバ装置との間の認証等に用いられる
エンドMCU鍵は、初回(初回鍵)は鍵管理サーバ装置で生成され、2回目以降(更新鍵)はマスタMCUで生成され、エンドMCU_50に配布される鍵である。エンドMCU鍵は、マスタMCU_20および鍵管理サーバ装置10によって管理される。エンドMCU鍵は、エンドMCUとマスタMCUとの間の認証、または各エンドMCU間の認証等に用いられる。
メーカMCU鍵は、MCUの製造者が、MCUの製造時に予め、MCUが有するセキュアROMに記憶させている。全てのマスタMCU_20およびエンドMCU_50は、メーカMCU鍵を予め持っている。車メーカは、各メーカMCU鍵の内容について、何らかの方法(メール等により電子データとして送付、または書類による送付など)によって、予め情報を得ているものとする。メーカMCU鍵の内容は、MCUの製造者と車メーカとだけが知り得るものであるとする。
暗号処理部14は、鍵管理データ記憶部15に記憶されたマスタMCU鍵またはエンドMCU鍵またはメーカ鍵MCU鍵を用いて、マスタMCU_20との認証およびデータの送受信において必要な暗号化、複合化の暗号処理を行う。
鍵管理データ記憶部15は、MCUを一意に特定するMCU_IDと該MCUが持つ鍵とが紐付られた鍵管理データを記憶する。ここで言う鍵管理データとは、例えば、マスタMCU_20のMCU_ID(マスタMCU_IDとも称する)に紐付られた、マスタMCU_20のマスタMCU鍵およびメーカMCU鍵のデータである。また例えば、エンドMCU_50のMCU_ID(エンドMCU_IDとも称する)に紐付られた、エンドMCU_50のエンドMCU鍵およびメーカMCU鍵のデータである。
なお、MCU_IDとは、MCUを一意に特定するためのIDである。このMCU_IDから、車載制御システムは、車両におけるどのMCUであるかを特定できるものとする。また、ここで言う車載制御システムとは、自動車1に搭載されている、マスタMCU_20と、各エンドMCU_50と、およびそれらの各MCUをつなぐ制御用車載ネットワーク40と、を含んで構成される。
図3は、本発明の一実施形態に係るマスタMCUおよびエンドMCUの構成を示すブロック図である。図3に示されるマスタMCU_20および各エンドMCU_50は、自動車等の車両の車載制御システムに搭載される。
図3において、マスタMCU_20およびエンドMCU_50は、コンピュータの一種である。マスタMCU_20は、制御用車載ネットワーク40に、1つだけ接続される。一方、エンドMCU_50は、制御用車載ネットワーク40に、複数個(エンドMCU_50−a,50−b等)接続されている。なお、エンドMCU_50は1つだけあってもかまわない。制御用車載ネットワーク40は、マスタMCU_20と各エンドMCU_50との間、またはエンドMCU_50と他のエンドMCU_50との間で交換されるデータを伝送する。
制御用車載ネットワーク40として、本実施形態ではCANを使用する。マスタMCU_20および各エンドMCU_50は、制御用車載ネットワーク40を介して、相互にデータを送受信する。マスタMCU_20および各エンドMCU_50は、車両内の機器を制御する電子制御ユニット(MCU)として利用される。
マスタMCU_20は、制御用車載ネットワーク40に接続される各エンドMCU_50を認証する処理において、マスタとして動作する。
まず、図3を参照して、マスタMCU_20の構成を説明する。
マスタMCU_20は、CPU(Central Processing Unit;中央演算処理装置)_21と、フラッシュメモリ(flash memory)22と、RAM(ランダムアクセスメモリ)_23と、ブートローダ(boot loader)24と、セキュアエレメント(secure element)25と、eSIM27と、無線通信部26と、を有する。
セキュアエレメント25は、セキュアRAM_31と、セキュアROM(Read Only Memory;リードオンリメモリ)_32と、を有する。
セキュアRAM_31は、暗号処理部34と、鍵更新部35と、鍵保持部36と、鍵管理部37と、鍵管理データ記憶部38と、を有する。
CPU_21はコンピュータプログラムを実行することにより、車両内の機器を制御する制御ユニットとして機能する。
フラッシュメモリ22は、CPU_21で実行されるコンピュータプログラムと該コンピュータプログラムについての署名とを記憶する。
RAM_23はデータを記憶する。RAM_23は、CPU_21がコンピュータプログラムを実行する際の実行領域となる。
ブートローダ24は、マスタMCU_20の電源投入に伴ってブート処理を行う。ブートローダ24は、該ブート処理の内容を変更できないようにROM化されている。
セキュアエレメント25は、セキュアエレメント25の内部で保持されるデータに対して、セキュアエレメント25の外部からはアクセスをすることができない安全な要素として構成される。
無線通信部26は、無線通信ネットワーク2と接続し、無線通信によりデータを送受信する。
eSIM_27は、無線通信ネットワーク2の契約者情報が書き込まれたeSIMである。無線通信部26は、eSIM_27を使用することにより無線通信ネットワーク2を利用できる。なお、eSIM_27の代わりにSIMを利用してもよい。eSIMおよびSIMは、コンピュータの一種であり、コンピュータプログラムによって所望の機能を実現する。
セキュアRAM_31は、セキュアエレメント25の内部で保持されるデータの一時記憶領域である。セキュアRAM_31に対してセキュアエレメント25の外部からはアクセスをすることができないように構成される。
セキュアROM_32は、セキュアエレメント25の内部で使用される鍵を記憶する。セキュアROM_32に対してセキュアエレメント25の外部からはアクセスをすることができないように構成される。セキュアROM_32には、マスタMCU_20の製造時などに、予め安全に鍵(メーカMCU鍵)が書き込まれる。
暗号処理部34は、自己のマスタMCU_20と各エンドMCU_50との間、または自己のマスタMCU_20と鍵管理サーバ装置10との間で交換される情報についての暗号処理を、鍵保持部36または鍵管理データ記憶部38またはセキュアROM_32にそれぞれ記憶されている、マスタMCU鍵またはエンドMCU鍵またはメーカMCU鍵を使用して行う。該暗号処理は、暗号化処理または復号化処理である。暗号処理部34は、該暗号処理において、セキュアRAM_31を一時記憶領域として使用する。
また、暗号処理部34は、ブートローダ24によるブート処理におけるプログラム正当性検証処理を、セキュアROM_32に保持されるメーカMCU鍵を使用して行う。暗号処理部34は、該プログラム正当性検証処理において、セキュアRAM_31を一時記憶領域として使用する。
鍵更新部35は、鍵保持部36に保持しているマスタMCU鍵を、鍵管理サーバ装置10から送られてくる新しいマスタMCU鍵(新規マスタMCU鍵とも称する)で更新(上書き)する。
鍵保持部36は、最新のマスタMCU鍵を保持する。
鍵管理部37は、各エンドMCU_50のエンドMCU鍵の鍵管理を行う。
鍵管理データ記憶部38は、各エンドMCU_50のエンドMCU鍵の鍵管理データを記憶する。
次に、図3を参照して、エンドMCU_50の構成を説明する。
エンドMCU_50は、CPU_51と、フラッシュメモリ52と、RAM_53と、ブートローダ54と、セキュアエレメント55と、を有する。
セキュアエレメント55は、セキュアRAM_61と、セキュアROM_62と、を有する。
セキュアRAM_61は、暗号処理部64と、鍵更新部65と、鍵保持部66と、を有する。
CPU_51、フラッシュメモリ52、RAM_53は、それぞれ、マスタMCU_20のCPU_21、フラッシュメモリ22、RAM_23と同様の構成であるので、説明を省略する。
ブートローダ54は、エンドMCU_50の電源投入に伴ってブート処理を行う。ブートローダ54は、該ブート処理の内容を変更できないようにROM化されている。
セキュアエレメント55は、セキュアエレメント55の内部で保持されるデータに対してセキュアエレメント55の外部からアクセスできない安全な要素として構成される。
セキュアRAM_61は、セキュアエレメント55の内部で保持されるデータの一時記憶領域である。セキュアRAM_61に対してセキュアエレメント55の外部からはアクセスをすることができないように構成される。
セキュアROM_62は、セキュアエレメント55の内部で使用される鍵を記憶する。セキュアROM_62に対してセキュアエレメント55の外部からはアクセスをすることができないように構成される。セキュアROM_62には、各エンドMCU_50の製造時などに、予め安全に鍵(メーカMCU鍵)が書き込まれる。
暗号処理部64は、自己のエンドMCU_50とマスタMCU_20との間、または自己のエンドMCU_50と他の各エンドMCU_50との間で交換される情報についての暗号処理を、鍵保持部66またはセキュアROM_62にそれぞれ記憶されているエンドMCU鍵またはメーカMCU鍵を使用して行う。該暗号処理は、暗号化処理または復号化処理である。暗号処理部64は、該暗号処理において、セキュアRAM_61を一時記憶領域として使用する。
また、暗号処理部64は、ブートローダ54によるブート処理におけるプログラム正当性検証処理を、セキュアROM_62に保持されるメーカMCU鍵を使用して行う。暗号処理部64は、該プログラム正当性検証処理において、セキュアRAM_61を一時記憶領域として使用する。
鍵更新部65は、鍵保持部66に保持しているエンドMCU鍵を、マスタMCU_20から送られてくる新しいエンドMCU鍵(新規エンドMCU鍵とも称する)で更新(上書き)する。
鍵保持部66は、最新のエンドMCU鍵を保持する。
次に、本実施形態に係る鍵管理システムの動作を説明する。なお、以下の説明において、鍵管理サーバ装置10とマスタMCU_20とは、無線通信ネットワーク2を介して、データを送受信する。
まず、本実施形態に係る車載制御システムの初回起動時における、鍵管理システムの動作の概要を説明し、その後で各動作について詳細な説明をする。
[車載制御システムの初回起動時における鍵管理システムの動作の概要]
(ステップS001)自動車1の車載制御システムに電源が入り、マスタMCU_20および各エンドMCU_50が起動する。その後、ステップS002へ進む。
(ステップS002)マスタMCU_20が鍵管理サーバ装置10と、無線通信ネットワーク2を介して、通信接続をする。このとき、マスタMCU_20が有するeSIM_27(またはSIMでもよい)が、チャレンジ&レスポンスの認証方法で鍵管理サーバ装置10と認証を行う。そして、鍵管理サーバ装置10は、車載制御システムとeSIMとの紐付けをした後、鍵管理サーバ装置10とマスタMCU_20との間の通信セッションを確立する。その後、ステップS003へ進む。
(ステップS003)鍵管理サーバ装置10は、マスタMCU_20が正規のMCUであるか否かの判定をする。正規のMCUであると判定した場合には、鍵管理サーバ装置10は、マスタMCU_20のマスタMCU鍵を生成し、そのマスタMCU鍵をマスタMCU_20へ送信する。マスタMCU_20は、鍵管理サーバ装置10から送られてきたマスタMCU鍵を保管する。その後、ステップS004へ進む。
(ステップS004)マスタMCU_20は、エンドMCU_50の初回起動命令を受けて、無線通信ネットワーク2を介し、鍵管理サーバ装置10に問い合わせを行う。その後、ステップS005へ進む。
(ステップS005)鍵管理サーバ装置10は、エンドMCU_50が正規のMCUであるか否かの判定をする。正規のMCUであると判定した場合には、鍵管理サーバ装置10は、エンドMCU_50のエンドMCU鍵を生成し、そのエンドMCU鍵をマスタMCU_20へ送信する。その後、ステップS006へ進む。
(ステップS006)マスタMCU_20は、鍵管理サーバ装置10から送られてきたエンドMCU鍵を保管する。また、マスタMCU_20は、該エンドMCU鍵をエンドMCU_50へ送信(転送)する。
(ステップS007)エンドMCU_50は、マスタMCU_20から送られてきたエンドMCU鍵を保管する。そして、その後、エンドMCU_50は、該エンドMCU鍵を利用してマスタMCU_20または他の各エンドMCU_50と認証を行う。以上が、車載制御システムの初回起動時における、鍵管理システムの動作の概要である。
次に、鍵管理システムの各動作について、詳細な説明をする。
[鍵管理サーバ装置とマスタMCUとの認証方法]
図4を参照して、本発明の一実施形態に係る鍵管理サーバ装置とマスタMCUとの認証方法について説明する。
本実施形態では、車載制御システムのマスタMCU_20に、eSIM_27を搭載する。これは、車両外部との通信手段として搭載しているだけではなく、自己の自動車1の車載制御システムを一意に特定して、成りすましによる攻撃に対する防御のために搭載しているという意味も持っている。
車載制御システムを一意に特定するため、eSIM_27には、自己の自動車1を特定するための車IDと、鍵管理サーバ装置10(車メーカサーバ)と認証するための鍵と、を保管しているものとする。eSIM_27と鍵管理サーバ装置10との間の認証手順としては、例えば、一般的なチャレンジ&レスポンスの認証方法を使用することが挙げられる。なお、本実施形態ではeSIM_27を用いているが、代わりにSIMを用いてもよい。
図4は、本発明の一実施形態に係る鍵管理サーバ装置とマスタMCUとの間の認証方法の手順を示すシーケンスチャートである。
(ステップS101)マスタMCU_20のCPU_21が、eSIM_27に通信要求をする。その後、ステップS102へ進む。
(ステップS102)マスタMCUの_20のeSIM_27は、無線通信部26により、鍵管理サーバ装置10(車メーカサーバ)へ、認証要求メッセージを送信する。その際、車載制御システムを一意に特定するため、自己の自動車1の車載制御システムを特定するための車IDを、無線通信部26により、認証要求メッセージとともに送信する。その後、ステップS103へ進む。
(ステップS103)鍵管理サーバ装置10の暗号処理部14は、乱数を生成し、該生成された乱数をチャレンジ値とする。暗号処理部14は、認証要求メッセージの応答として、マスタMCU_20に対して、該チャレンジ値(乱数)を、無線通信部11により送信する。その後、ステップS104へ進む。
(ステップS104)マスタMCU_20は、無線通信部26により、チャレンジ値(乱数)を受信し、暗号処理部34へ送る。暗号処理部34は、チャレンジ値(乱数)を、鍵保持部36に記憶されているマスタMCU鍵(または、セキュアROM32に記憶されるメーカMCU鍵)で暗号化し、データ(乱数)を生成する。暗号処理部34は、生成されたデータ(乱数)をレスポンス値として、無線通信部26により鍵管理サーバ装置10へ送信する。その後、ステップS105へ進む。
(ステップS105)鍵管理サーバ装置10の暗号処理部14は、無線通信部11により、レスポンス値(乱数)を受信し、暗号処理部14へ送る。暗号処理部14は、チャレンジ&レスポンスの認証方法の一例であるレスポンスマッチ処理を実行する。このレスポンスマッチ処理では、鍵管理データ記憶部15に格納された鍵管理データに記憶されているマスタMCU_20に対応付けられたマスタMCU鍵(またはマスタMCU_20に対応付けられたメーカMCU鍵)でレスポンス値(乱数)を復号化し、各復号結果がチャレンジ値(乱数)に一致するかを判定する。したがって、鍵管理データ記憶部15の鍵管理データは、発行済みの全てのマスタMCU鍵、エンドMCU鍵、メーカMCU鍵、のデータを記憶していることが好ましい。
該判定の結果、チャレンジ値(乱数)に一致する復号結果が一つだけある場合には、レスポンス値(乱数)の検証が成功である。レスポンス値(乱数)の検証が成功である場合には、鍵管理サーバ装置10とマスタMCU_20との間の、セキュアチャネルの構築が完了する。
一方、該判定の結果、チャレンジ値(乱数)に一致する復号結果がない場合、およびチャレンジ値(乱数)に一致する復号結果が複数ある場合には、レスポンス値(乱数)の検証が失敗である。レスポンス値(乱数)の検証が失敗である場合には、図4の処理を終了する。なお、レスポンス値(乱数)の検証が失敗である場合には、所定のエラー処理を行ってもよい。
以上により、鍵管理サーバ装置10とマスタMCU_20とが認証をし、セキュアチャネルの構築をすることができる。
[マスタMCUへの初回鍵の配布方法]
図5を参照して、本発明の一実施形態に係るマスタMCUへの初回鍵の配布方法について説明する。
図5は、本発明の一実施形態に係るマスタMCUへの初回鍵の配布方法の手順を示すシーケンスチャートである。
(ステップS201)マスタMCU_20は、初回起動であるか否かのフラグを持ち、そのフラグによって、自己のマスタMCU_20の今回の起動が、初回起動であるか否かを判定する。その後、ステップS202へ進む。
(ステップS202)マスタMCU_20は、鍵管理サーバ装置10(車メーカサーバ)に対して、アクティベート要求を送信する。なお、アクティベートとは、機能を有効な状態にすることであり、主に、サーバ側でクライアントの機器が正規のライセンスを所有しているかどうかを認証すること、を意味する。該アクティベート要求には、アクティベートを要求するメッセージと、自己のマスタMCU_20のマスタMCU_IDと、セキュアROM_32に格納されたメーカMCU鍵で暗号化した自己のマスタMCUのマスタMCU_IDと、が含まれている。その後、ステップS203へ進む。
(ステップS203)鍵管理サーバ装置10は、鍵管理データ記憶部_15に記憶されている、マスタMCU_IDに紐づくマスタMCU_20のメーカMCU鍵を利用して、暗号化データを復号する。復号できた場合は、正規のマスタMCU_20からのアクティベート要求であると判断をする。その後、ステップS204へ進む。
なお、復号できなかった場合は、図5の処理を終了する。その場合、所定のエラー処理を行ってもよい。
(ステップS204)鍵管理サーバ装置10は、マスタMCU_20のマスタMCU鍵を生成する。その後、ステップS205へ進む。
(ステップS205)鍵管理サーバ装置10は、マスタMCU_IDに紐づくメーカMCU鍵で暗号化した、アクティベート完了を示すメッセージと生成したマスタMCU鍵とを、無線通信部11により送信する。その後、ステップS206へ進む。
(ステップS206)マスタMCU_20は、無線通信部26により受信した、暗号化されたデータをセキュアROM32に格納されたメーカMCU鍵で復号し、マスタMCU鍵を取得する。その後、ステップS207へ進む。
(ステップS207)マスタMCU_20は、安全な領域であるセキュアエレメント25において、鍵更新部35により、ステップS206で復号して得られたマスタMCU鍵を鍵保持部36に保持する。以上で、処理を終了する。
なお、ステップ207において、マスタMCU鍵が鍵保持部36に保持されるまでは、自動車1の該マスタMCU_20はマスタMCU鍵を持っておらず、鍵保持部36は空の状態である。例えば、自動車1が完成したばかりの新車の状態であって、工場から出荷される前の時点等において、上記にて説明したマスタMCU_20への初回鍵の配布の処理が行われる。
上述した鍵管理サーバ装置10からマスタMCU_20への初回鍵の配布方法によれば、鍵管理サーバ装置10が生成し保管したマスタMCU鍵を、マスタMCU_20が搭載された自動車1に初回鍵として鍵を配布することができる。この初回鍵の配布方法により、鍵管理サーバ装置10の鍵管理データ記憶部15に記憶された鍵管理データが示す自動車1の管理内容と、該自動車1に備わるマスタMCU_20の鍵保持部36に保持されるマスタMCU鍵と、を一致させることができる。
以上により、鍵管理サーバ装置10は、マスタMCU_20への初回鍵の配布を行うことができる。
[エンドMCUへの初回鍵の配布方法]
図6を参照して、本発明の一実施形態に係るエンドMCUへの初回鍵の配布方法について説明する。
図6は、本発明の一実施形態に係るエンドMCUへの初回鍵の配布方法の手順を示すシーケンスチャートである。
(ステップS301)エンドMCU_50は、初回起動であるか否かのフラグを持ち、そのフラグによって、自己のエンドMCU_50の今回の起動が、初回起動かあるか否かを判定する。その後、ステップS302へ進む。
(ステップS302)エンドMCU_50は、マスタMCU_20に対して、アクティベート要求を送信する。該アクティベート要求には、アクティベートを要求するメッセージと、自己のエンドMCU_50のエンドMCU_IDと、自己のエンドMCU_50のセキュアROM_62に格納されたメーカMCU鍵で暗号化した自己のエンドMCUのエンドMCU_IDが含まれている。その後、ステップS303へ進む。
(ステップS303)マスタMCU_20は、エンドMCU_50からアクティベート要求を受信する。マスタMCU_20は、エンドMCUから受信したアクティベートを要求するメッセージと、エンドMCU_50のエンドMCU_IDと、マスタMCU_20のマスタMCU_IDと、エンドMCU_50が自己のメーカMCU鍵で暗号化したエンドMCU_IDと、を鍵管理サーバ装置10に対して、無線通信部26により、送信する。なお、その際、エンドMCU_50が自己のメーカMCU鍵で暗号化したエンドMCU_IDについては、マスタMCU_20は、自己のマスタMCU鍵で更に暗号化をしてから、鍵管理サーバ装置10へ送信する。その後、ステップS304へ進む。
(ステップS304)鍵管理サーバ装置10は、鍵管理データ記憶部_15に記憶されている、エンドMCU_IDに紐づくエンドMCU_50のメーカMCU鍵、およびマスタMCU_IDに紐づくマスタMCU_20のマスタMCU鍵を利用して、暗号化データを復号する。復号できた場合は、正規のエンドMCU_50からのアクティベート要求であると判断をする。その後、ステップS305へ進む。
なお、復号できなかった場合は、図6の処理を終了する。その場合、所定のエラー処理を行ってもよい。
(ステップS305)鍵管理サーバ装置10は、該エンドMCU_20のエンドMCU鍵を生成する。その後、ステップS306へ進む。
(ステップS306)鍵管理サーバ装置10は、該マスタMCU_IDに紐づくマスタMCU鍵で暗号化した、アクティベート完了を示すメッセージとエンドMCU_IDと(ステップS305で生成した)エンドMCU鍵と、を無線通信部11により送信する。また、それと併せて、該エンドMCU_IDに紐づくメーカMCU鍵で暗号化した(ステップS305で生成した)エンドMCU鍵を、無線通信部11により送信する。その後、ステップS307へ進む。
(ステップS307)マスタMCU_20は、無線通信部26により受信したデータのうち、鍵管理サーバ装置10によりマスタMCU鍵で暗号化されたデータについて、復号をする。復号により、マスタMCU_20は、アクティベート完了を示すメッセージと、エンドMCU_IDと、エンドMCU鍵と、を取得する。マスタMCU_20は、安全な領域であるセキュアエレメント25において、鍵管理部37により、取得したエンドMCU_IDおよびエンドMCU鍵を互いに紐づけて、鍵管理データ記憶部38に記憶する。その後、ステップS308へ進む。
(ステップS308)マスタMCU_20は、無線通信部26により受信したデータのうち、鍵管理サーバ装置10によりエンドMCUのメーカMCU鍵で暗号化されたデータを、エンドMCU_50へ転送する。その後、ステップS309へ進む。
(ステップS309)エンドMCU_50は、マスタMCU_20から送られてきたデータを、セキュアROM62に格納されたメーカMCU鍵で復号し、エンドMCU鍵を取得する。その後、ステップS310へ進む。
(ステップS310)エンドMCU_50は、安全な領域であるセキュアエレメント55において、鍵更新部65により、ステップS309での復号によって取得したエンドMCU鍵を鍵保持部66に保持する。以上で、処理を終了する。
なお、ステップ310において、エンドMCU鍵が鍵保持部66に保持されるまでは、自動車1の該エンドMCU_50はエンドMCU鍵を持っておらず、鍵保持部66は空の状態である。例えば、自動車1が完成したばかりの新車の状態であって、工場から出荷される前の時点等において、上記にて説明したエンドMCU_50への初回鍵の配布の処理が行われる。
上述した鍵管理サーバ装置10からマスタMCU_20を介しての、エンドMCU_50への初回鍵の配布方法によれば、鍵管理サーバ装置10が生成し保管したエンドMCU鍵を、マスタMCU_20が搭載された自動車1のエンドMCU_50に初回鍵として鍵を配布することができる。この初回鍵の配布方法により、鍵管理サーバ装置10の鍵管理データ記憶部15に記憶された鍵管理データが示す自動車1の各エンドMCU_50の管理内容と、該自動車1に備わるマスタMCU_20の鍵管理データ記憶部38に記憶された鍵管理データが示す各エンドMCU_50の管理内容と、各エンドMCU_50の鍵保持部66に記憶されるエンドMCU鍵と、を一致させることができる。
以上により、鍵管理サーバ装置10は、各エンドMCU_50およびマスタMCU_20への、エンドMCU鍵の初回鍵の配布を行うことができる。
[マスタMCU鍵の更新方法]
図7を参照して、本発明の一実施形態に係るマスタMCU鍵の更新方法について説明する。上述の図5の説明において、マスタMCU鍵の初回鍵の配布方法について説明をした。以下においては、既にマスタMCU_20の鍵保持部36に保管されているマスタMCU鍵を、新規のマスタMCU鍵に更新する場合について説明をする。マスタMCU鍵の更新は、実際には例えば、予めマスタMCU鍵に設定されている有効期限を過ぎることによって、マスタMCU鍵が失効してしまうような場面等において行われる。
図7は、本発明の一実施形態に係るマスタMCU鍵の更新方法の手順を示すシーケンスチャートである。
(ステップS401)鍵管理サーバ装置10は、マスタMCU鍵の有効期限が近づいたタイミング、あるいは任意のタイミングで、新規のマスタMCU鍵(新規マスタMCU鍵と称する)を生成する。その後、ステップS402へ進む。
(ステップS402)鍵管理サーバ装置10は、マスタMCU_20に対し、マスタMCU鍵の鍵更新要求通知を、無線通信部11により送信する。この鍵更新要求通知には、マスタMCU鍵から新規マスタMCU鍵への更新を要求する鍵更新要求メッセージと、鍵管理サーバ装置10がマスタMCU鍵で暗号化したマスタMCU_IDおよび新規マスタMCU鍵と、を含むデータが含まれている。その後、ステップS403へ進む。
(ステップS403)マスタMCU_20は、無線通信部26により、鍵更新要求メッセージおよび暗号化されたデータが含まれた鍵更新要求通知を受信する。マスタMCU_20は、鍵保持部36に格納されたマスタMCU鍵で、暗号化されたデータを復号し、マスタMCU_IDおよび新規マスタMCU鍵を取得する。その後ステップS404へ進む。
(ステップS404)マスタMCU_20は、安全な領域であるセキュアエレメント25において、鍵更新部35により、ステップS403で復号して得られた新規マスタMCU鍵で、鍵保持部36に保持されているマスタMCU鍵を更新(上書き保存)する。その後、ステップS405へ進む。
(ステップS405)マスタMCU_20は、マスタMCU鍵から新規マスタMCU鍵への更新が完了したことを知らせる鍵更新完了通知を、無線通信部26により、鍵管理サーバ装置10に送信する。この鍵更新完了通知には、鍵更新完了を知らせるメッセージと、鍵保持部36に保管した新規マスタMCU鍵で暗号化したマスタMCU_IDを含むデータと、が含まれている。その後、ステップS406へ進む。
(ステップS406)鍵管理サーバ装置10は、無線通信部11により、マスタMCU_20が送信した鍵更新完了を知らせるメッセージと暗号化されたデータとを含む鍵更新完了通知を受信する。鍵管理サーバ装置10は、暗号処理部14により、鍵管理データ記憶部15に記憶された新規マスタMCU鍵を用いて暗号化されたデータを復号する。鍵管理サーバ装置10は、復号によって得られたデータと、自己の鍵管理サーバ装置が鍵更新要求通知を送った送信先であるマスタMCU_20のマスタMCU_IDと、が一致していた場合には、マスタMCU_20におけるマスタMCU鍵から新規マスタMCU鍵への更新が正しく完了したものと判断をする。その後、ステップS407へ進む。
もし、復号によって得られたデータと、鍵更新要求通知を送った送信先であるマスタMCU_20のマスタMCU_IDと、が一致していなかった場合には、図7の処理を終了する。その場合、所定のエラー処理を行ってから、再度、鍵更新要求通知を送信するようにしてもよい。
(ステップS407)鍵管理サーバ装置10は、鍵管理部13によって、取得したマスタMCU_IDを検索キーとして、鍵管理データ記憶部15に格納されている鍵管理データを検索する。鍵管理部13は、取得したマスタMCU_IDに紐づくマスタMCU鍵を、新規マスタMCU鍵に更新(上書き保存)する。以上で、処理を終了する。
上述した鍵管理サーバ装置10からマスタMCU_20への鍵更新方法によれば、鍵管理サーバ装置10にて生成した新規マスタMCU鍵によって、マスタMCU_20が搭載された自動車1に保管されているマスタMCU鍵を更新(上書き保存)することができる。この鍵更新方法により、鍵管理サーバ装置10の鍵管理データ記憶部15内の鍵管理データによる自動車1の管理内容と、該自動車1に備わるマスタMCU_20に保持される(新規)マスタMCU鍵とを一致させることができる。
以上により、鍵管理サーバ装置10は、新規マスタMCU鍵をマスタMCU_20へ配布することができ、マスタMCU鍵を更新することができる。
[エンドMCU鍵の更新方法]
図8を参照して、本発明の一実施形態に係るエンドMCU鍵の更新方法について説明する。上述の図6の説明において、エンドMCU鍵の初回鍵の配布方法について説明をした。以下においては、既にエンドMCU_50の鍵保持部66に保管されているエンドMCU鍵を、新規のエンドMCU鍵に更新する場合について説明をする。エンドMCU鍵の更新は、実際には例えば、予めエンドMCU鍵に設定されている有効期限を過ぎることによって、エンドMCU鍵が失効してしまうような場面等において行われる。
図8は、本発明の一実施形態に係るエンドMCU鍵の更新方法の手順を示すシーケンスチャートである。
(ステップS501)マスタMCU_20は、エンドMCU鍵の有効期限が近づいたタイミング、あるいは任意のタイミングで、新規のエンドMCU鍵(新規エンドMCU鍵と称する)を生成する。その後、ステップS502へ進む。
(ステップS502)マスタMCU_20は、エンドMCU_50に対し、エンドMCU鍵から新規エンドMCU鍵への更新を要求する鍵更新要求通知を送信する。この鍵更新要求通知には、エンドMCU鍵から新規エンドMCU鍵への更新を要求する鍵更新要求メッセージと、鍵更新要求通知を送る送信先のエンドMCU_50のエンドMCU_IDと、マスタMCU_20が鍵管理データ記憶部38に記憶しているエンドMCU鍵で暗号化したエンドMCU_IDおよび新規エンドMCU鍵と、を含むデータが含まれている。その後、ステップS503へ進む。
(ステップS503)エンドMCU_50は、マスタMCU_20から鍵更新要求メッセージおよびエンドMCU_IDおよび暗号化されたデータを含む鍵更新要求通知を受信する。エンドMCU_50は、鍵保持部66に格納されたエンドMCU鍵で、暗号化されたデータを復号し、新規エンドMCU鍵を取得する。その後ステップS504へ進む。
(ステップS504)エンドMCU_50は、安全な領域であるセキュアエレメント55において、鍵更新部65により、ステップS503で復号して得られた新規エンドMCU鍵で、鍵保持部66に記憶されているエンドMCU鍵を更新(上書き保存)する。その後、ステップS505へ進む。
(ステップS505)エンドMCU_50は、エンドMCU鍵から新規エンドMCU鍵への更新が完了したことを知らせる鍵更新完了通知を、マスタMCU_20へ送信する。この鍵更新完了通知には、鍵更新完了を知らせるメッセージと、自己のエンドMCU_IDと、鍵保持部66に保管した新規エンドMCU鍵で暗号化したエンドMCU_IDを含むデータと、が含まれている。その後、ステップS506へ進む。
(ステップS506)マスタMCU_20は、エンドMCU_50が送信した鍵更新完了を知らせるメッセージとエンドMCU_50と暗号化されたデータとを含む鍵更新完了通知を受信する。マスタMCU_20は、暗号処理部34により、暗号化されたデータを復号する。マスタMCU_20は、復号によって得られたデータと、自己のマスタMCU_20が鍵更新要求通知を送った送信先であるエンドMCU_50のエンドMCU_IDと、が一致していた場合には、エンドMCU_50におけるエンドMCU鍵から新規エンドMCU鍵への更新が正しく完了したものと判断をする。その後、ステップS507へ進む。
もし、復号によって得られたデータと、鍵更新要求通知を送った送信先であるエンドMCU_50のエンドMCU_IDと、が一致していなかった場合には、図8の処理を終了する。その場合、所定のエラー処理を行ってから、再度、鍵更新要求通知を送信するようにしてもよい。
(ステップS507)マスタMCU_20は、鍵管理部37によって、取得したエンドMCU_IDを検索キーとして、鍵管理データ記憶部38に格納されている鍵管理データを検索する。鍵管理部37は、取得したエンドMCU_IDに紐づくエンドMCU鍵を、新規エンドMCU鍵で更新(上書き保存)する。その後、ステップS508へ進む。
(ステップS508)マスタMCU_20は、鍵管理サーバ装置10に対し、無線通信部26により、エンドMCU鍵から新規エンドMCU鍵への更新を要求する鍵更新要求通知を送信する。この鍵更新要求通知には、エンドMCU鍵から新規エンドMCU鍵への更新を要求する鍵更新要求メッセージと、マスタMCU_20が鍵保持部36に記憶しているマスタMCU鍵で暗号化したエンドMCU_50(エンドMCU鍵を更新したエンドMCU_50)のエンドMCU_IDおよび新規エンドMCU鍵と、を含むデータが含まれている。その後、ステップS509へ進む。
(ステップS509)鍵管理サーバ装置10は、無線通信部11により、マスタMCU_20が送信した鍵更新要求メッセージと暗号化されたデータとを含む鍵更新要求通知を受信する。鍵管理サーバ装置10は、暗号処理部14により、鍵管理データ記憶部15に記憶されたマスタMCU鍵を用いて暗号化されたデータを復号し、エンドMCU_IDおよび新規エンドMCU鍵を取得する。その後、ステップS510へ進む。
(ステップS510)鍵管理サーバ装置10は、鍵管理部13によって、取得したエンドMCU_IDを検索キーとして、鍵管理データ記憶部15に格納されている鍵管理データを検索する。鍵管理部13は、取得したエンドMCU_IDに紐づくエンドMCU鍵を、新規エンドMCU鍵で更新(上書き保存)する。以上で、処理を終了する。
上述したマスタMCU_20からエンドMCU_50への鍵更新方法によれば、マスタMCU_20にて生成した新規エンドMCU鍵によって、マスタMCU_20が搭載された自動車1に搭載されている各エンドMCU_50に保管されているエンドMCU鍵を更新(上書き保存)することができる。この鍵更新方法により、マスタMCU_20の鍵管理データ記憶部38内の鍵管理データによる自動車1に搭載された各エンドMCU_50の管理内容と、該自動車1に備わるエンドMCU_50に保持される(新規)エンドMCU鍵と、さらには、鍵管理サーバ装置10の鍵管理データ記憶部15内の鍵管理データによる自動車1の管理内容と、を一致させることができる。
以上により、マスタMCU_20は、新規エンドMCU鍵を各エンドMCU_50へ配布することができ、エンドMCU鍵を更新することができる。
このように、本実施形態によれば、自動車等の車両に保持される鍵の更新や管理を実現できる。これにより、車両外部から車載制御システムへの攻撃を防御し、車載制御システムをセキュアな状態に保つことができる。
上述の通り、本発明は、マスタMCUまたはエンドMCUの初回起動時に、マスタMCUが、自己のマスタMCUが有するeSIM(またはSIM)を利用して、無線通信ネットワークを介し、車メーカ等が運用するリモートサーバである鍵管理サーバ装置と認証して通信をする。そして、鍵管理サーバ装置が、初回のマスタMCU鍵またはエンドMCU鍵を生成して、その鍵を無線通信ネットワークを介して安全に配布する。
また、鍵の更新時においては、新規マスタMCU鍵は鍵管理サーバ装置によって、新規エンドMCU鍵はマスタMCUによって生成され安全に配布される。
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
なお、上述した実施形態では、マスタMCU_20が、自己の自動車1の各エンドMCU_50のエンドMCU鍵の更新を行ったが、例えば、鍵管理サーバ装置10が、各エンドMCU_50のエンドMCU鍵の更新を行うようにしてもよい。
また、さらに、例えば、マスタMCU_20のeSIM_27と同様のeSIMまたはSIMおよび無線通信部を、各エンドMCU_50に備えてもよい。この場合、エンドMCU_50は、制御用車載ネットワーク40およびマスタMCU_20を経由することなく、直接、自己の無線通信部により無線通信ネットワーク2を介して鍵管理サーバ装置10との間で、認証およびデータの送受信することができる。各エンドMCU_50は、直接、鍵管理サーバ装置10と通信接続し、エンドMCU鍵の取得および更新を行うことができる。
自動車1の車IDは、自動車1内で安全に管理されていることが好ましい。例えば、eSIM_21のセキュア領域に車IDを保持することが好ましい。
セキュアエレメントとして、eSIMまたはSIMのいずれかを使用してもよい。eSIMは、通常、電子基板にハンダ付け(ハードウェア・バインド(H/Wバインド))される。SIMは、通常、電子基板にプログラム的に紐付けられる(ソフトウェア・バインド(S/Wバインド))。
マスタMCU鍵、エンドMCU鍵、メーカMCU鍵は、対称鍵(共通鍵)であってもよいし、非対称鍵(公開鍵)であってもよい。
マスタMCU_20およびエンドMCU_50において、セキュアブート(Secure Boot)を行うことも好ましい。セキュアブートによれば、コンピュータの起動時に当該コンピュータのオペレーティングシステム(Operating System:OS)の正当性を検証することができる。
上述した実施形態に係る鍵管理システムは、自動車1の販売、定期点検、車両検査、転売、廃車など、自動車1の様々な管理の場面に適用可能である。
上述した実施形態では、車両として自動車を例に挙げたが、原動機付自転車や鉄道車両等の自動車以外の他の車両にも適用が可能である。また、その他、旅客機や船舶等の乗り物全般にも適用が可能である。
上述した実施形態では、本発明に係るコンピュータシステムの一態様として、車両に搭載されるコンピュータシステムを例に挙げて説明したが、本発明に係るコンピュータシステムは、乗り物以外も含む様々な分野に適用が可能である。例えば、家電製品を制御するコンピュータとしてマスタMCU_20を適用し、宅内の各家電製品の各エンドMCU_50を宅内ネットワークで接続するように構成してもよい。また、スマートメーターとしてマスタMCU_20を適用し、各スマートメーターの各エンドMCU_50を通信ネットワークで接続するように構成してもよい。
例えば、マスタMCU_20および各エンドMCU_50が、一つの半導体装置として構成されてもよい。一つの半導体集積回路としてワンチップ化されることにより、安全性がさらに向上する。
また上記のとおり、eSIMおよびSIMはコンピュータの一種であり、コンピュータプログラムによって所望の機能を実現できるため、eSIM_27またはSIMにマスタMCU_20の鍵管理機能を持たせるようにしてもよい。すなわち、上記の実施形態において、マスタMCU_20のセキュアエレメント_25に含まれるセキュアRAM_31及びセキュアROM_32、そしてセキュアRAM_31に含まれる暗号処理部34、鍵更新部35、鍵保持部36、鍵管理部37、及び鍵管理データ記憶部38、をeSIM_27またはSIMが備える構成にしてもよい。
また、上述した実施形態における鍵管理サーバ装置10、マスタMCU_20、エンドMCU_50の機能の一部または全部をコンピュータで実現するようにしてもよい。その場合、上記の機能を実現するためのコンピュータプログラムを、コンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにして実現してもよい。
なお、ここでいう「コンピュータシステム」とは、鍵管理サーバ装置10、マスタMCU_20、エンドMCU_50に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disk)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。
さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
また、上述した実施形態における鍵管理サーバ装置10、マスタMCU_20、エンドMCU_50の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現しても良い。鍵管理サーバ装置10、マスタMCU_20、エンドMCU_50の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化しても良い。
また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現しても良い。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いても良い。
1・・・自動車、2・・・無線通信ネットワーク、10・・・鍵管理サーバ装置、11・・・無線通信部、12・・・eSIM、13・・・鍵管理部、14・・・暗号処理部、15・・・鍵管理データ記憶部、20・・・マスタMCU、21・・・CPU、22・・・フラッシュメモリ、23・・・RAM、24・・・ブートローダ、25・・・セキュアエレメント、26・・・無線通信部、27・・・eSIM、31・・・セキュアRAM、32・・・セキュアROM、34・・・暗号処理部、35・・・鍵更新部、36・・・鍵保持部、37・・・鍵管理部、38・・・鍵管理データ記憶部、40・・・制御用車載ネットワーク、50,50−a,50−b・・・エンドMCU、51・・・CPU、52・・・フラッシュメモリ、53・・・RAM、54・・・ブートローダ、55・・・セキュアエレメント、61・・・セキュアRAM、62・・・セキュアROM、64・・・暗号処理部、65・・・鍵更新部、66・・・鍵保持部

Claims (3)

  1. 車両に備わる第2のコンピュータとデータを送受信する前記車両に備わる第1のコンピュータと、前記第1のコンピュータと無線通信ネットワークを介してデータを送受信する鍵管理サーバ装置と、を備える鍵管理システムであり、
    前記第1のコンピュータは、
    前記第2のコンピュータの認証に用いる第2の鍵を記憶する第2の鍵記憶部と、
    前記第2の鍵の更新鍵を生成して前記第2の鍵記憶部に記憶された前記第2の鍵を更新する第2の鍵管理部と、を備え、
    前記鍵管理サーバ装置は、
    前記第1のコンピュータの認証に用いる第1の鍵および前記第2の鍵を記憶する第1の鍵記憶部と、
    前記第1の鍵を生成して前記第1の鍵記憶部に記憶された前記第1の鍵を更新し、前記第2の鍵の初回鍵を生成して前記第1のコンピュータへ送信し、前記第1のコンピュータから前記更新鍵を受信して前記第1の鍵記憶部に記憶された前記第2の鍵を更新する第1の鍵管理部と、
    を備える鍵管理システム。
  2. 車両に備わる第2のコンピュータとデータを送受信する前記車両に備わる第1のコンピュータと、前記第1のコンピュータと無線通信ネットワークを介してデータを送受信する鍵管理サーバ装置と、を備える鍵管理システムにおいて、
    前記第1のコンピュータは、
    前記第2のコンピュータの認証に用いる第2の鍵を記憶する第2の鍵記憶ステップと、
    前記第2の鍵の更新鍵を生成して前記第2の鍵記憶ステップにおいて記憶された前記第2の鍵を更新する第2の鍵管理ステップと、を含み、
    前記鍵管理サーバ装置は、
    前記第1のコンピュータの認証に用いる第1の鍵および前記第2の鍵を記憶する第1の鍵記憶ステップと、
    前記第1の鍵を生成して前記第1の鍵記憶ステップにおいて記憶された前記第1の鍵を更新し、前記第2の鍵の初回鍵を生成して前記第1のコンピュータへ送信し、前記第1のコンピュータから前記更新鍵を受信して前記第1の鍵記憶ステップにおいて記憶された前記第2の鍵を更新する第1の鍵管理ステップと、
    を含む鍵管理方法。
  3. 第1のコンピュータと無線通信ネットワークを介してデータを送受信する鍵管理サーバコンピュータに、
    前記第1のコンピュータの認証に用いる第1の鍵および第2の鍵を記憶する第1の鍵記憶機能と、
    前記第1の鍵を生成して前記第1の鍵記憶機能によって記憶された前記第1の鍵を更新し、前記第2の鍵の初回鍵を生成して前記第1のコンピュータへ送信し、前記第1のコンピュータから前記更新鍵を受信して前記第1の鍵記憶機能によって記憶された前記第2の鍵を更新する第1の鍵管理機能と、
    を実現するためのコンピュータプログラム。
JP2015042509A 2015-03-04 2015-03-04 鍵管理システム、鍵管理方法およびコンピュータプログラム Active JP6192673B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015042509A JP6192673B2 (ja) 2015-03-04 2015-03-04 鍵管理システム、鍵管理方法およびコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015042509A JP6192673B2 (ja) 2015-03-04 2015-03-04 鍵管理システム、鍵管理方法およびコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2016163265A JP2016163265A (ja) 2016-09-05
JP6192673B2 true JP6192673B2 (ja) 2017-09-06

Family

ID=56847351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015042509A Active JP6192673B2 (ja) 2015-03-04 2015-03-04 鍵管理システム、鍵管理方法およびコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP6192673B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110024324B (zh) 2016-09-23 2022-09-20 苹果公司 网络通信业务的安全传送装置
JP6218914B1 (ja) * 2016-11-30 2017-10-25 Kddi株式会社 配信システム、データ保安装置、配信方法、及びコンピュータプログラム
WO2018100789A1 (ja) * 2016-11-30 2018-06-07 Kddi株式会社 配信システム、鍵生成装置、車載コンピュータ、データ保安装置、配信方法、及びコンピュータプログラム
JP6174229B1 (ja) * 2016-12-09 2017-08-02 Kddi株式会社 配信システム、データ保安装置、配信方法、及びコンピュータプログラム
JP6830877B2 (ja) * 2017-09-25 2021-02-17 Kddi株式会社 配信システム、鍵生成装置、配信方法、及びコンピュータプログラム
CN111572493B (zh) * 2020-05-08 2021-04-13 郑州信大捷安信息技术股份有限公司 一种基于车联网的车辆无钥匙进入及启动系统与方法
EP4322467A4 (en) * 2021-04-28 2024-05-08 Huawei Technologies Co., Ltd. KEY PROCESSING METHOD AND APPARATUS

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009147734A1 (ja) * 2008-06-04 2009-12-10 株式会社ルネサステクノロジ 車両、メンテナンス装置、メンテナンスサービスシステム及びメンテナンスサービス方法
JP2010011400A (ja) * 2008-06-30 2010-01-14 National Institute Of Advanced Industrial & Technology 共通鍵方式の暗号通信システム
JP2011170530A (ja) * 2010-02-17 2011-09-01 Tokai Rika Co Ltd 認証システムの暗号演算式設定装置
US9464905B2 (en) * 2010-06-25 2016-10-11 Toyota Motor Engineering & Manufacturing North America, Inc. Over-the-air vehicle systems updating and associate security protocols
CN104429018B (zh) * 2012-06-29 2017-09-26 富士通株式会社 通信装置以及通信方法

Also Published As

Publication number Publication date
JP2016163265A (ja) 2016-09-05

Similar Documents

Publication Publication Date Title
JP6192673B2 (ja) 鍵管理システム、鍵管理方法およびコンピュータプログラム
JP6197000B2 (ja) システム、車両及びソフトウェア配布処理方法
JP6228093B2 (ja) システム
JP6731887B2 (ja) 保守システム及び保守方法
JP6188672B2 (ja) 鍵管理システム
JP6190443B2 (ja) 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
US20110083161A1 (en) Vehicle, maintenance device, maintenance service system, and maintenance service method
WO2017022821A1 (ja) 管理装置、管理システム、鍵生成装置、鍵生成システム、鍵管理システム、車両、管理方法、鍵生成方法、及びコンピュータプログラム
JP6178390B2 (ja) 管理装置、管理システム、車両、管理方法、及びコンピュータプログラム
JP6262681B2 (ja) 管理装置、車両、管理方法、及びコンピュータプログラム
JP2010011400A (ja) 共通鍵方式の暗号通信システム
JP6238939B2 (ja) 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
JP2008271506A (ja) 機密保護装置
TW201735578A (zh) 受控的安全碼認證
JP6440334B2 (ja) システム、車両及びソフトウェア配布処理方法
CN114095919A (zh) 一种基于车联网的证书授权处理方法及相关设备
JP7143744B2 (ja) 機器統合システム及び更新管理システム
JP6476462B2 (ja) 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
KR20160093764A (ko) Otp rom을 활용하는 ecu 보안 통신 시스템
JP6860464B2 (ja) システム及び管理方法
JP2020088836A (ja) 車両メンテナンスシステム、メンテナンスサーバ装置、管理サーバ装置、車載装置、メンテナンスツール、コンピュータプログラム及び車両メンテナンス方法
US10263976B2 (en) Method for excluding a participant from a group having authorized communication
JP6188744B2 (ja) 管理システム、車両及び管理方法
JP7003832B2 (ja) 車両用電子制御システムおよび車両用電子制御装置
JP6830877B2 (ja) 配信システム、鍵生成装置、配信方法、及びコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170509

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170706

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170707

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170801

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170808

R150 Certificate of patent or registration of utility model

Ref document number: 6192673

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150