(57)【特許請求の範囲】
【請求項１】
共通鍵を記憶する鍵管理サーバ、路側機、車載機で構成する車車間通信及び路車間通信システムにおいて、
前記鍵管理サーバが、エリア毎に共通鍵を生成し、生成した前記共通鍵を前記エリアに属する前記路側機に送付し、
前記路側機は、受信した前記共通鍵を前記エリアに属する車載機へ送付し
前記路側機又は前記車載機は、受信した前記共通鍵を使ってメッセージの暗号化を行い、暗号化された前記メッセージを送信し、
前記共通鍵には、前記共通鍵が前記共通鍵として有効な期間である利用期間と前記共通鍵を路側機から車載機に配布することが可能な期間である配布期間がほぼ同じ本来鍵と、前記利用期間より前記配布期間が長い事前鍵との2種類が存在し、
前記路側機又は前記車載機は、本来鍵を有している場合は本来鍵を利用し、本来鍵を有していない場合は事前鍵を用いてメッセージの暗号化を行い、
前記車載機は、１つのエリアに対して、１つの本来鍵と複数の事前鍵を有する
ことを特徴とする車車間通信及び路車間通信システム。
【請求項２】
請求項１に記載の車車間通信及び路車間通信システムであって、
鍵管理サーバが各エリアの共通鍵を生成し、路側機に対して、路側機が属するエリアおよび近隣エリアの共通鍵を配布する
ことを特徴とする車車間通信及び路車間通信システム。
【請求項３】
請求項１または２に記載の車車間通信及び路車間通信システムであって、
車載機は路側機と通信可能になると、車載機と路側機の間で認証をおこない、認証が成功した場合、路側機が、車載機に、路側機が属するエリアおよび近隣エリアの共通鍵を配布する
ことを特徴とする路側機から車車間通信及び路車間通信システム。
【請求項４】
請求項３に記載の車車間通信及び路車間通信システムにおいて、
車載機が目的地までの経路情報または走行履歴情報を路側機に送信し、路側機は車載機から受信した情報から車載機に送信する近隣エリアの共通鍵を選択する、または路側機は全ての近隣エリアの共通鍵を車載機に送信し、車載機が目的地までの経路情報または走行履歴情報から車載機に記憶する近隣エリアの共通鍵を選択する
ことを特徴とする車車間通信及び路車間通信システム。
【請求項５】
請求項４に記載の車車間通信及び路車間通信システムであって、
鍵管理サーバが各エリアの本来鍵と事前鍵の2種類の共通鍵を生成し、各路側機に対して、路側機が存在するエリアの本来鍵と事前鍵、近隣エリアの本来鍵と事前鍵を配布することを特徴とする車車間通信及び路車間通信システム。
【請求項６】
請求項５に記載の車車間通信及び路車間通信システムであって、
車載機が路側機と通信可能になると、車載機と路側機の間で認証をおこない、認証が成功した場合、路側機が、車載機に、路側機が属するエリアの本来鍵と事前鍵、近隣エリアの本来鍵と事前鍵を配布する
ことを特徴とする車車間通信及び路車間通信システム。
【請求項７】
請求項６に記載の車車間通信及び路車間通信システムにおいて、
車載機が走行履歴情報を路側機に送信し、路側機は車載機から受信した走行履歴情報から車載機に送信する路側機が属するエリアの事前鍵のバージョンを選択する、または、車載機が走行履歴情報から必要となる可能性が高い事前鍵のバージョンを判断し、路側機が車載機に送信する事前鍵のバージョンを車載機が要求する
ことを特徴とする車車間通信及び路車間通信システム。
【請求項８】
請求項１に記載の車車間通信及び路車間通信システムに用いる路側機であって、
前記装置が属するエリアの共通鍵および近隣エリアの共通鍵を記憶し、前記車載機に共通鍵を配布する際には、前記車載機が属するエリアおよび近隣エリアの共通鍵を配布する機能を有する
ことを特徴とする路側機。
【請求項９】
請求項８に記載の路側機であって、
前記車載機から目的地までの経路情報や走行履歴情報を取得し、共通鍵を取得する装置が利用する可能性の高い近隣エリアの共通鍵を選択し、配布する機能を有することを特徴とする路側機。
【請求項１０】
請求項１に記載の車車間通信及び路車間通信システムに用いる車載機であって、
前記路側機から、装置が存在するエリアおよび近隣エリアの共通鍵を取得する機能を有する
ことを特徴とする車載機。
【請求項１１】
請求項１０に記載の車載機であって、
前記路側機に、目的地までの経路情報や走行履歴情報を送信し、利用する可能性が低い近隣エリアの共通鍵は受信せずに利用する可能性が高い近隣エリアの共通鍵を
受信する、または共通鍵を配布する装置が属するエリアの全ての近隣エリアの共通鍵を取得し、目的地までの経路情報や走行履歴情報から記憶する近隣エリアの共通鍵を選択する機能を有する
ことを特徴とする車載機。
【請求項１２】
請求項９に記載の路側機であって、
前記車載機から走行履歴情報を取得し、利用される可能性が高いバージョンの事前鍵を選択し、送信する機能を有する
ことを特徴とする路側機。
【請求項１３】
請求項１１に記載の車載機であって、
前記路側機から1つ以上のバージョンの事前鍵を取得し、走行履歴情報をもとに利用する可能性が高いバージョンの事前鍵を記憶する機能を有する
ことを特徴とする車載機。
【請求項１４】
請求項１０、１１、１３のいずれか一に記載の車載機であって、
前記車載機が属するエリアを検知し、該当するエリアの共通鍵を使って、メッセージの暗号化またはMAC生成、もしくはその両方をおこなう機能を有する
ことを特徴とする車載機。
【請求項１５】
請求項１０、１１、１３、１４のいずれか一に記載の車載機であって、
利用可能な本来鍵を記憶している場合は本来鍵を利用し、利用可能な本来鍵は記憶していないが利用可能な事前鍵を記憶している場合は事前鍵を利用してメッセージの暗号化またはMAC生成、もしくはその両方をおこなう機能を有する
ことを特徴とする車載機。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で開示される主題は、共通鍵暗号方式を用いる車車／路車間通信システムおよびその装置に関する。
【背景技術】
【０００２】
近年、交通事故死者数の減少を目指し、予防安全を目的とした車車／路車間通信の検討が進められている。予防安全に関わるサービスは、危険情報または危険情報を作成するために必要な情報をメッセージとして周囲に通知することが多いため、ユニキャストではなく、ブロードキャストまたはジオキャストをおこなうことが多い。予防安全に関わるサービスは、メッセージの内容が車の運転に影響を与えるため、1つの誤ったメッセージから大事故につながる場合もある。したがって、正しい装置（路側機または車載機）が送ったメッセージであること、および正しい装置が送ったメッセージが、悪意ある者によって、改ざんされていないことを確認すること、すなわちメッセージの完全性を保証することが重要である。
【０００３】
メッセージの完全性を保証する方法としては、暗号を用いるのが一般的である。暗号には、メッセージの送受信者で異なる鍵を用いて暗号化／復号をおこなう公開鍵暗号と、メッセージの送受信者が同じ鍵を用いて暗号化／復号をおこなう共通鍵暗号がある。公開鍵暗号で利用する鍵は、秘密鍵と公開鍵のペアであり、秘密鍵は第三者に公開してはいけないが、公開鍵は第三者に公開してよい。一方、共通鍵暗号で利用する鍵は、メッセージの送受信者以外に公開してはいけない。
【０００４】
車車／路車間通信におけるメッセージの完全性を保証する仕組みとしては、以下の非特許文献がある。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】IEEE Standards 1609.2, IEEE Trial-Use Standard for Wireless Access in Vehicular Environments - Security Services for Applications and Management Messages, July,2006
【特許文献】
【０００６】
【特許文献１】特開2008-228051号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
非特許文献1では、公開鍵暗号を用いてメッセージの完全性を保証する。各装置は自身の公開鍵と秘密鍵のペアを保有する。メッセージ送信装置は、秘密鍵を用いてメッセージの署名を生成し、メッセージとともに署名および公開鍵を送信する。メッセージ受信装置は、受信した公開鍵を用いて署名を検証する。署名を検証するための鍵は公開可能なため、メッセージや署名とともに公開鍵を配布しても問題ないが、一般的に公開鍵暗号は処理時間がかかるため、車車／路車間通信のようなリアルタイム性が求められる通信には適さない。しかし、共通鍵暗号を用いる場合、メッセージ送受信装置間で鍵を安全に共有する仕組みが必要である。路車間通信において共通鍵を共有する仕組みとしては特許文献1がある。
【０００８】
特許文献1では、車載機が路側機と通信可能なエリアに入るたびに、車載機の位置情報を車載機に記憶するとともに、路側機を介してサーバにも送信する。サーバは、受信した車載機の位置情報を蓄積しておく。サーバと車載機が通信する際には、車載機とサーバが、それぞれ蓄積された位置情報から鍵を生成し、生成した鍵を使って暗号化通信をおこなう。
【０００９】
上記方式を車車間通信に適用する場合、車載機は路側機と通信可能なエリアに入るたびに、サーバを介して通信相手の車載機に車載機自身の位置情報を送信する。サーバは路側機を介して通信相手の車載機へ位置情報を送信するが、このとき通信相手の車載機が路側機と通信可能なエリアに存在するとは限らないため、通信する車載機間で同じ位置情報を共有することが難しい。
【００１０】
また、メッセージをブロードキャストまたはジオキャストする場合、メッセージを受信する複数の車載機がメッセージを復号できる必要があるため、全ての車載機で同じ共通鍵を共有する、またはメッセージを受信する車載機ごとに共有した共通鍵を使って暗号化メッセージを送る必要がある。
【００１１】
前者を上記方式で実現する場合、位置情報を受信できない車載機が存在する可能性もある上、いつどの車載機からメッセージを受信するか分からないため、各車載機は全ての車載機の位置情報を蓄積しておく必要があり、車載機に必要なメモリが増加するという問題もある。後者を上記方式で実現する場合も、位置情報を受信できない車載機が存在する可能性もある上、メッセージを受信する車載機の数分、メッセージを送信する必要があり、ネットワーク帯域を圧迫するという問題がある。
【課題を解決するための手段】
【００１２】
本明細書では、このような事情に鑑みて、車車／路車間通信を用いて、メッセージを送受信する装置間で共通鍵を共有するシステム、装置、方法が開示される。
【００１３】
開示される、通信路を流れるメッセージの完全性または機密性、もしくはその両方を保証するための共通鍵を管理する車車／路車間通信システムは、鍵管理サーバ、路側機、車載機で構成される。鍵管理サーバは、エリアの管理をおこなう。鍵管理サーバが分割したエリアに存在する路側機および車載機で、共通鍵を共有する。共通鍵は、本来鍵と事前鍵の2種類が存在し、それぞれ利用可能な期間と車載機への配布可能な期間が定められている。本来鍵は、本来鍵の利用開始時間の少し前から本来鍵の利用終了時間の少し後まで車載機に配布することができる。事前鍵は、事前鍵の利用開始時間よりもずっと前から事前鍵の利用終了時間の少し後まで車載機に配布することができる。鍵管理サーバは、エリア毎の共通鍵を生成する。各エリアに対して、複数のバージョンの共通鍵を事前に生成する。以下、現在のバージョンとは、その時点で利用可能な共通鍵のことを指し、次のバージョンとは、現在のバージョンの次に利用可能となる共通鍵のことを指す。
【００１４】
路側機を設置した時や鍵更新が発生した時に、鍵管理サーバと路側機との間で、互いの装置が正しいことを確認し、鍵管理サーバは、路側機に、路側機が属するエリアの複数バージョンの共通鍵と近隣エリアの現在のバージョンの共通鍵を配布する。車載機が路側機と通信可能になると、車載機と路側機との間で、互いの装置が正しいことを確認し、路側機は、車載機に、路側機が属するエリアの現在のバージョンの共通鍵、路側機が属するエリアの次のバージョンの事前鍵、および近隣エリアの現在のバージョンの共通鍵を配布する。
【００１５】
車載機は、近隣エリアの共通鍵も路側機から取得することで、次のエリアに入ったが、路側機と通信ができない場合でも、前のエリアで次のエリアの共通鍵を取得済みのため、メッセージの完全性または機密性、もしくはその両方が保証された車車間通信が可能となる。また、路側機から現在のバージョンの共通鍵と次のバージョンの事前鍵を取得することで、車載機が停止している間に共通鍵の更新が発生し、車載機が再び起動したときに路側機と通信ができない場合や、路側機と通信ができない間に共通鍵の更新が発生した場合でも、事前鍵を使って、完全性または機密性、もしくはその両方が保証されたメッセージを生成することができる。
【００１６】
また、車載機が路側機から共通鍵を取得する場合、車載機が利用可能な情報によって、車載機に必要なメモリサイズの抑制やメッセージの完全性または機密性、もしくはその両方を保証したメッセージの送信確率の向上を図ることができる。例えば、目的地までの経路情報が利用可能な場合は、路側機から近隣エリアの共通鍵を取得する際に、目的地までの経路が属しているエリアの共通鍵を取得すれば、目的地までの経路が属していないエリアの共通鍵は取得しなくてもよい。走行履歴情報が利用可能な場合は、次に走行する確率の高いエリアの共通鍵を取得すれば、次に走行する確率の低いエリアの共通鍵は取得しなくてもよい。このように、取得する近隣エリアの共通鍵を絞ることで、車載機に必要なメモリのサイズを抑えることができる。
【００１７】
さらに、走行履歴情報が利用できる場合は、次のバージョンの事前鍵ではなく、どのバージョンの事前鍵を取得すべきかを判断することにより、完全性または機密性、もしくはその両方が保証されたメッセージを送信できる可能性が高まる。
【００１８】
車載機がメッセージを送信する場合、現在のバージョンの本来鍵を保有している場合は、本来鍵を利用し、本来鍵を保有していない場合は、事前鍵を利用して、メッセージのMAC（Message Authentication Code）生成や暗号化をおこなう。そして、メッセージとともに、共通鍵のバージョンや鍵の種別を送信する。メッセージを受信した場合、共通鍵のバージョンや鍵の種別をもとに、メッセージのMAC検証や復号をおこなう。
【００１９】
上記態様によれば、あるエリアに存在する路側機および車載機は同じ共通鍵を使ってメッセージの完全性または機密性、もしくはその両方を保証する場合、路側機が、路側機が属するエリアの共通鍵と近隣するエリアの共通鍵を車載機に配布することにより、次のエリアに入ったときに、路側機と通信ができない場合でも、メッセージの完全性または機密性、もしくはその両方が保証された車車間通信をおこなうことができる。また、配布期間が異なる事前鍵と本来鍵の2種類の共通鍵を用意し、常に次のバージョンの事前鍵を取得しておくことで、共通鍵の更新が発生した時に路側機と通信ができない車載機も、完全性または機密性、もしくはその両方が保証されたメッセージを作成できる。さらに、車載機は、車載機が保有する目的地までの経路情報や走行履歴情報を利用し、車載機から取得する共通鍵を選択することで、車載機に必要なメモリサイズの抑制や、完全性または機密性、もしくはその両方が保証されたメッセージの送信確率を向上させることができる。
【発明の効果】
【００２０】
開示によれば、完全性または機密性、もしくはその両方が保証されたメッセージの送受信ができる車車／路車間通信システムおよびその装置を実現可能になる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態のシステムの構成を例示する図である。
【図２】本実施形態の鍵管理サーバの機能構成を例示するブロック図である。
【図３】本実施形態の鍵管理サーバが記憶するエリア管理テーブルのデータ構成を例示する図である。
【図４】本実施形態の鍵管理サーバが記憶する路側機管理テーブルのデータ構成を例示する図である。
【図５】本実施形態の鍵管理サーバが記憶する鍵情報テーブルのデータ構成を例示する図である。
【図６】本実施形態の路側機の機能構成を例示するブロック図である。
【図７】本実施形態の路側機が記憶する近隣エリア情報テーブルのデータ構成を例示する図である。
【図８】本実施形態の路側機が記憶する鍵情報のデータ構成を例示する図である。
【図９】本実施形態の路側機が記憶する近隣エリアの鍵情報のデータ構成を例示する図である。
【図１０】本実施形態の車載機の機能構成を例示するブロック図である。
【図１１】本実施形態の車載機が記憶するエリア情報テーブルのデータ構成を例示する図である。
【図１２】本実施形態の車載機が記憶する鍵情報テーブルのデータ構成を例示する図である。
【図１３】本実施形態の鍵管理サーバの鍵管理処理例を表すフローチャートである。
【図１４】本実施形態の鍵管理サーバおよび路側機の鍵配布処理例を表すフローチャートである。
【図１５】本実施形態の鍵配布時に鍵管理サーバから路側機へ、または路側機から車載機へ送信するメッセージのデータフォーマットを例示する図である。
【図１６】本実施形態の路側機の鍵取得処理例を表すフローチャートである。
【図１７】本実施形態の車載機の鍵取得処理例を表すフローチャートである。
【図１８】本実施形態の路側機および車載機がメッセージを送信する際の処理例を表すフローチャートである。
【図１９】本実施形態の車車／路車間通信をおこなう際のメッセージのデータフォーマットを例示する図である。
【図２０】本実施形態の路側機および車載機がメッセージを受信する際の処理例を表すフローチャートである。
【発明を実施するための形態】
【００２２】
以下に、実施形態を説明する。
【００２３】
図１は、本実施形態のシステムの構成を表した図である。本実施形態は、鍵管理サーバ１０１、路側機１０２、車載機１０３で構成する。鍵管理サーバ１０１は、路側機１０２とネットワークを介した通信が可能である。また、鍵管理サーバは交通情報を管理するサーバなど他のサーバともネットワークを介した通信をおこなってもよい。通信手段は、無線通信でも有線通信でもよい。路側機１０２は、鍵管理サーバ１０１とネットワークを介した通信が可能であり、通信可能な車載機１０３と無線通信をおこなう。
【００２４】
路側機は屋外に設置しても屋内に設置してもよいし、信号機や給油スタンドなどの装置に搭載してもよい。図１において、各路側機１０２の通信可能な範囲は重なり合っていないが、重なり合ってもよい。車載機１０３は、路側機１０２および車載機１０３と無線通信をおこなう。車載機１０３は、車両以外の装置に搭載してもよい。
【００２５】
図２は、本実施形態の鍵管理サーバ１０１の機能構成を示すブロック図である。以下に述べる鍵管理サーバ１０１の機能は、ＣＰＵ、記憶装置、通信装置などを備えた情報処理装置において、ＣＰＵが記憶装置に格納されたプログラムを実行することにより、実現可能である。プログラムは予め、記憶装置に格納されていても良いし、必要に応じて、記憶媒体から、または、通信媒体を介した他の装置から導入されても良い。通信媒体とは、図１に示すネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号を指す。
【００２６】
鍵管理サーバ１０１は、通信制御処理部２１０、エリア管理処理部２２０、鍵生成処理部２３０、鍵配布処理部２４０、エリア情報記憶部２５０、セキュリティ情報記憶部２６０で構成する。通信制御処理部２１０は、路側機１０２や他のサーバと通信するための処理をおこなう。エリア管理処理部２２０は、共通鍵を共有するエリアの管理をおこなう。
【００２７】
具体的には、エリアの追加、エリア範囲の変更などが発生した場合、エリア管理処理部２２０が、エリア情報記憶部２５０のエリア管理テーブル２５１の更新をおこなう。エリア管理テーブル２５１については、後述するエリア情報記憶部２５０の中で説明する。また、路側機１０２の新規設置、設置位置の変更、撤去などが発生した場合、エリア管理処理部２２０が、エリア情報記憶部２５０の路側機管理テーブル２５２の更新をおこなう。
【００２８】
路側機管理テーブル２５２については、後述するエリア情報記憶部２５０の中で説明する。鍵生成処理部２３０は、エリア毎の共通鍵を生成する。鍵配布処理部２４０は、鍵生成処理部２３０で生成した共通鍵を路側機１０２に配布する。エリア情報記憶部２５０は、エリア管理テーブル２５１、路側機管理テーブル２５２を記憶する。
【００２９】
エリア管理テーブル２５１は、エリアを管理するテーブルであり、図３に示すように、エリアID３０１、エリア範囲３０２、近隣エリア３０３で構成される。エリアID３０１はエリアを示す識別子である。エリア範囲３０２は、エリアの範囲を示すものである。図３では、緯度／経度で示しているが、エリアが一意に決まるものであればよい。近隣エリア３０３は、エリア識別子３０１の近隣に存在するエリア識別子３０１を示す。エリア同士は重なる部分が合ってもよい。
【００３０】
路側機管理テーブル２５２は、路側機が設置されているエリアを管理するテーブルであり、図４に示すとおり、路側機ID４０１、設置位置情報４０２、エリアID４０３で構成される。路側機ID４０１は、路側機を示す識別子である。設置位置情報４０２は、路側機１０２を設置している場所を示すものである。図４では、緯度／経度で示しているが、設置位置が一意に定まり、エリア管理テーブル２５１のどのエリアに属するかがわかればよい。
【００３１】
エリアID４０３は、路側機ID４０１を設置した場所が属するエリアの識別子であり、エリア管理テーブルのエリアID３０１の値を指す。路側機１０２が複数のエリアに属している場合は、複数のエリアを記載する。セキュリティ情報記憶部２６０は、鍵情報テーブル２６１、路側機／鍵管理サーバ間認証情報２６２を記憶する。
【００３２】
鍵情報テーブル２６１は、各エリアの共通鍵情報を管理するものであり、図５に示すとおり、エリアID５０１、種別５０２、バージョン５０３、値５０４、有効期間５０５、配布期間５０６で構成される。エリアID５０１は、エリアを示す識別子であり、図３に示すエリア管理テーブルのエリアID３０１と同じ値を指す。種別５０２は事前鍵か本来鍵かを示す識別子である。暗号化／復号に使う鍵とMAC生成／検証に利用する鍵を分ける場合は、暗号化／復号用事前鍵、MAC生成／検証用事前鍵、暗号化／復号用本来鍵、MAC生成／検証用本来鍵の4種類が存在する。バージョン５０３は、共通鍵のバージョンを示す。
【００３３】
値５０４は、共通鍵の値である。有効機期間５０５は、値５０４が共通鍵として有効である期間を示す。配布期間５０６は、値５０４を路側機１０２から車載機１０３に配布可能な期間を示す。路側機／鍵管理サーバ間認証情報２６２は、路側機１０２と通信を始める際に、路側機１０２と鍵管理サーバ１０１が互いの装置が正しいことを確認するために必要な情報である。認証の方法は、パスワード、公開鍵証明書、共通鍵を利用した認証などが考えられる。
【００３４】
図６は、本実施形態の路側機１０２の機能構成を示すブロック図である。以下に述べる路側機１０２の機能は、ＣＰＵ、記憶装置、通信装置などを備えた情報処理装置において、ＣＰＵが記憶装置に格納されたプログラムを実行することにより、実現可能である。プログラムは予め、記憶装置に格納されていても良いし、必要に応じて、記憶媒体から、または、通信媒体を介した他の装置から導入されても良い。通信媒体とは、図１に示すネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号を指す。
【００３５】
路側機１０２は、通信制御処理部６１０、鍵取得処理部６２０、鍵配布処理部６３０、MAC生成／検証処理部６４０、暗号化／復号処理部６５０、エリア情報記憶部６６０、セキュリティ情報記憶部６７０で構成する。通信制御処理部６１０は、鍵管理サーバ１０１および車載機１０２と通信するための処理をおこなう。鍵取得処理部６２０は、鍵管理サーバ１０１から共通鍵を取得するための処理をおこなう。
【００３６】
鍵配布処理部６３０は、車載機１０３へ共通鍵を配布するための処理をおこなう。MAC生成／検証処理部６４０は、共通鍵を用いて、送信するメッセージのMAC生成や受信したメッセージのMAC検証をおこなう。暗号化／復号処理部６５０は、共通鍵を用いて、送信するメッセージの暗号化や受信したメッセージの復号をおこなう。エリア情報記憶部６６０は、設置位置情報６６１、エリアID６６２、エリア範囲６６３、近隣エリア情報テーブル６６４を記憶する。
【００３７】
設置位置情報６６１は、路側機１０２を設置した場所を示すものであり、鍵管理サーバ１０１の路側機管理テーブル２５２の設置位置情報４０２と同じである。エリアID６６２は、路側機１０２を設置した場所が属するエリアの識別子であり、鍵管理サーバ１０１のエリア管理テーブル２５１のエリアID３０１と同じである。エリア範囲６６３は、路側機１０２が属しているエリアの範囲を示すものであり、鍵管理サーバ１０１のエリア管理テーブル２５１のエリア範囲３０２と同じである。
【００３８】
近隣エリア情報テーブル６６４は、路側機１０２が属するエリアの近隣エリアの情報を登録したテーブルであり、図７に示すとおり、近隣エリアID７０１とエリア範囲７０２から構成される。近隣エリアID７０１は、路側機１０２が属するエリアの近隣エリアの識別子である。エリア範囲７０２は、近隣エリアID７０１のエリア範囲である。近隣エリア情報テーブル６６４は、鍵管理サーバ１０１から配布されてもよいし、その他の手段を用いて設定されてもよい。また、エリアID３０１に多数の路側機１０２が存在する場合、近隣エリアに近い位置に設置されている路側機１０２が近隣エリア情報テーブル６６４を記憶すれば、近隣エリアに遠い位置に設置されている路側機１０２は近隣エリア情報テーブル６６４を記憶しなくてもよい。
【００３９】
セキュリティ情報記憶部６７０は、路側機ID６７１、路側機／鍵管理サーバ間認証情報６７２、車載機／路側機間認証情報６７３、鍵情報６７４、近隣エリア鍵情報テーブル６７５を記憶する。路側機ID６７１は、路側機を示す識別子である。路側機／鍵管理サーバ間認証情報６７２は、鍵管理サーバ１０１が路側機１０２に鍵を配布する際に、互いの装置が正しいことを確認するのに必要な情報である。車載機／路側機間認証情報６７３は、路側機１０２が車載機１０３に共通鍵を配布する際に、互いの装置が正しいことを確認するのに必要な情報である。認証の方法は、パスワード、公開鍵証明書、共通鍵などを利用した認証が考えられる。
【００４０】
鍵情報６７４は、路側機１０２が属するエリアの鍵情報であり、図８に示すとおり、種別８０１、バージョン８０２、値８０３、有効期間８０４、配布期間８０５で構成される。種別８０１は、共通鍵が事前鍵か本来鍵であるかを示す。暗号化／復号に使う鍵とMAC生成／検証に利用する鍵を分ける場合は、暗号化／復号用事前鍵、MAC生成／検証用事前鍵、暗号化／復号用本来鍵、MAC生成／検証用本来鍵の4種類が存在する。バージョン８０２は、共通鍵のバージョンを示すものである。値８０３は、共通鍵の値である。有効期間８０４は、共通鍵が有効になる期間を示す。配布期間８０５は、車載機への共通鍵配布が可能な期間を示す。
【００４１】
近隣エリア鍵情報テーブル６７５は、図９に示すとおり、近隣エリアID９０１、種別９０２、バージョン９０３、有効期間９０５、配布期間９０６から構成される。近隣エリアID９０１は、路側機１０２が属するエリアの近隣エリアの識別子であり、路側機１０２の近隣エリア情報テーブル６６４の近隣エリアID７０１と同じである。種別９０２は、共通鍵が事前鍵か本来鍵かを示す。暗号化／復号に使う鍵とMAC生成／検証に利用する鍵を分ける場合は、暗号化／復号用事前鍵、MAC生成／検証用事前鍵、暗号化／復号用本来鍵、MAC生成／検証用本来鍵の4種類が存在する。
【００４２】
バージョン９０３は共通鍵のバージョンを示す。近隣エリアのいくつのバージョンの共通鍵情報を保存するかは鍵管理サーバ１０１に依存する。値９０４は、共通鍵の値を示す。有効期間９０５は、共通鍵の利用が有効である期間を示す。配布期間９０６は、車載機への共通鍵の配布が可能な期間を示す。エリアID３０１に多数の路側機１０２が存在する場合、近隣エリアに近い位置に設置されている路側機１０２が近隣エリア鍵情報テーブル６７５を記憶すれば、近隣エリアに遠い位置に設置されている路側機１０２は近隣エリア鍵情報テーブル６７５を記憶しなくてもよい。
【００４３】
図１０は、本実施形態の車載機１０３の機能構成を示すブロック図である。以下に述べる車載機１０３の機能は、ＣＰＵ、記憶装置、通信装置などを備えた情報処理装置において、ＣＰＵが記憶装置に格納されたプログラムを実行することにより、実現可能である。プログラムは予め、記憶装置に格納されていても良いし、必要に応じて、記憶媒体から、または、通信媒体を介した他の装置から導入されても良い。通信媒体とは、図１に示すネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号を指す。
【００４４】
車載機１０３は、通信制御処理部１０１０、鍵取得処理部１０２０、MAC生成／検証処理部１０３０、暗号化／復号処理部１０４０、位置検知処理部１０５０、車両の他装置との通信制御処理部１０６０、エリア情報記憶部１０７０、セキュリティ情報記憶部１０８０で構成される。通信制御処理部１０１０は、路側機１０２や車載機１０３と通信するための処理をおこなう。鍵取得処理部１０２０は、路側機から共通鍵を取得するための処理をおこなう。
【００４５】
MAC生成／検証処理部１０３０は、路側機１０２から取得した共通鍵を用いて、送信するメッセージのMAC生成や受信したメッセージのMAC検証をおこなう。暗号化／復号処理部１０４０は、路側機１０２から取得した共通鍵を用いて、送信するメッセージの暗号化や受信したメッセージの復号をおこなう。位置検知処理部１０５０は、車載機１０３の現在の位置情報を取得する。位置情報は、車載機１０３がどのエリアIDに存在するかが分かるものであればよい。車両の他装置との通信制御処理部１０６０は、車載機を搭載する車両にあるカーナビなど他の装置と通信するための処理をおこなう。エリア情報記憶部１０７０は、エリア情報テーブル１０７１を記憶する。
【００４６】
エリア情報テーブル１０７１は、図１１に示すとおり、エリアID１１０１、エリア範囲１１０２で構成する。エリアID１１０１は、車載機１０３が存在するエリアおよび近隣するエリアの識別子を示す。エリア範囲１１０２は、エリアID１１０１のエリアの範囲を示す。エリア情報テーブル１０７１は、あらかじめ車載機に設定されていてもよいし、ネットワーク経由で鍵管理サーバ１０１から取得してもよい。また、路側機１０２から共通鍵情報を取得する際に、共通鍵情報とともに、路側機１０２が属するエリアおよび路側機１０２が属するエリアの近隣エリアの情報を取得し、エリア情報テーブル１０７１に登録してもよい。エリア情報テーブル１０７１に登録する際に、路側１０２が属するエリアおよび路側機１０２が属するエリアの近隣エリア以外の情報は削除し、エリア情報テーブル１０７１には、車載機１０３がその時点で存在するエリアおよびその近隣エリアの情報以外は記憶しないようにしてもよい。
【００４７】
セキュリティ情報記憶部１０８０は、車載機ID１０８１、車載機／路側機間認証情報１０８２、鍵情報テーブル１０８３を記憶する。車載機ID１０８１は、車載機を示す識別子である。車載機／路側機間認証情報１０８２は、車載機１０３が路側機１０２から共通鍵を取得する際に、互いの装置が正しいことを確認するための情報である。
【００４８】
鍵情報テーブル１０８３は、車載機１０３が存在するエリアおよび近隣エリアの共通鍵の情報であり、図１２に示すとおり、エリアID１２０１、種別１２０２、バージョン１２０３、値１２０４、有効期間１２０５、配布期間１２０６で構成される。エリアID１２０１は、車載機１０３が存在するエリアを示す識別子である。種別１２０２は、共通鍵が事前鍵か本来鍵かを示す識別子である。暗号化／復号に使う鍵とMAC生成／検証に利用する鍵を分ける場合は、暗号化／復号用事前鍵、MAC生成／検証用事前鍵、暗号化／復号用本来鍵、MAC生成／検証用本来鍵の4種類が存在する。バージョン１２０３は、共通鍵のバージョンを示す。値１２０４は、共通鍵の値を示す。有効期間１２０５は、共通鍵が利用可能な時間を示す。配布期間１２０６は、車載機１０３への共通鍵の配布が可能な時間を示す。
【００４９】
図１３に、鍵管理サーバ１０１における鍵管理の仕組みを示す。鍵管理サーバ１０１は、ステップ１３１０で、鍵情報テーブル２６１の共通鍵情報（エリアID、バージョン、種別、値、有効期間、配布期間）を監視し、共通鍵情報を送信する必要があるかを確認し、必要がある場合は、ステップ１３２０に進み、ない場合は、再度、鍵情報テーブル２６１を監視する。共通鍵情報の送信が必要な場合とは、路側機１０２へ送信した共通鍵情報の有効期間や配布期間の終了時刻が近付いている場合または路側機１０２へ送信した近隣エリアの共通鍵情報の有効期間や配布期間の終了時刻が近付いている場合である。
【００５０】
ステップ１３２０では、新しい共通鍵情報を生成する必要があるか、または既に生成済みの共通鍵情報を送信する必要があるかを判断する。新しい共通鍵情報を生成する必要がある場合は、ステップ１３３０に進み、そうでない場合は、ステップ１３５０に進む。ステップ１３３０では、鍵生成処理部２３０で、新しい共通鍵情報を生成し、ステップ１３４０では、生成した共通鍵情報を鍵情報テーブル２６１の該当箇所に登録し、有効期間が過ぎた共通鍵情報など削除可能な共通鍵情報は削除する。
【００５１】
次に、ステップ１３５０で、路側機管理テーブル２５２とエリア管理テーブル２５１を使って共通鍵情報を送信する路側機１０２を探し、ステップ１３７０の鍵配布処理を開始する。鍵配布処理については後述する。ステップ１３６０において、ステップ１３５０で共通鍵情報の送信が必要と判断した全ての路側機にステップ１３７０の鍵配布処理が終了したかを確認し、終了していない場合は、ステップ１３７０の鍵配布処理を繰り返す。
【００５２】
図１４に、鍵管理サーバ１０１から路側機１０２への鍵配布処理の手順を示す。鍵配布処理は、鍵管理サーバ１０１の鍵配布処理部２４０でおこなわれる。ステップ１４１０において、鍵管理サーバは、共通鍵情報を送信する路側機１０２と路側機／鍵管理サーバ間認証情報２６２を使って認証をおこない、認証に成功した場合は、ステップ１４２０において、送信する共通鍵情報の暗号化と完全性保証コードの生成をおこなう。暗号化は公開鍵暗号でも共通鍵暗号を用いてもよい。また、完全性保証コードは、公開鍵による署名でも共通鍵によるMACでもよい。暗号化や完全性保証コードの生成に使用する鍵は、認証時に共有してもよいし、事前に設定しておいてもよい。ステップ１４２０の処理が終了した後、共通鍵情報メッセージとして、ステップ１４３０で暗号化された共通鍵情報、完全性保証コード、セキュリティ情報を該当路側機１０２へ送信する。
【００５３】
図１５に、ステップ１４３０で鍵管理サーバ１０１から路側機１０２へ送信する共通鍵情報メッセージのフォーマット例を示す。共通鍵情報メッセージは、メッセージタイプ１５０１、セキュリティ情報１５０２、共通鍵情報の数１５０３、共通鍵情報１５０４、完全性保証コード１５０５で構成する。メッセージタイプ１５０１は、共通鍵情報メッセージであることを示す識別子である。セキュリティ情報は、路側機１０２が、メッセージの復号やメッセージの完全性保証をおこなうのに必要な情報であり、セキュリティ情報の種類は、暗号化や完全性保証コードに用いた手段に依存する。共通鍵情報の数１５０３は、送信する共通鍵情報の数を示す。共通鍵情報１５０４は、エリアID１５０６、種別１５０７、バージョン１５０８、値１５０９、有効期間１５１０、配布期間１５１１で構成する。
【００５４】
エリアID１５０６は、共通鍵が利用可能なエリアの識別子である。種別１５０７は、共通鍵が本来鍵か事前鍵かを示す。暗号化／復号に使う鍵とMAC生成／検証に利用する鍵を分ける場合は、暗号化／復号用事前鍵、MAC生成／検証用事前鍵、暗号化／復号用本来鍵、MAC生成／検証用本来鍵の4種類が存在する。バージョン１５０８は、共通鍵のバージョンを示す。値１５０９は、共通鍵の値を示す。有効期間１５１０は、共通鍵が利用可能な期間を示す。配布期間１５１１は、車載機１０３への共通鍵配布が可能な期間を示す。共通鍵情報１５０４は、ステップ１４２０で暗号化されている。完全性保証コード１５０５は、共通鍵情報メッセージのメッセージタイプ１５０１から共通鍵情報１５０４の完全性を保証する値である。
【００５５】
図１６に、路側機１０２の鍵取得処理の手順を示す。鍵取得処理は、路側機１０２の鍵取得処理部６２０でおこなわれる。路側機１０２は、ステップ１６１０で、路側機／鍵管理サーバ間認証情報６７２を使って鍵管理サーバ１０１と認証をおこない、認証に成功した場合、ステップ１６２０に進み、鍵管理サーバ１０１から共通鍵情報メッセージを受信する。
【００５６】
ステップ１６３０において、共通鍵情報の復号および完全性保証コードの検証をおこなう。完全性保証コードの検証に失敗した場合は、鍵取得処理を終了する（ステップ１６４０）。完全性保証コードの検証に失敗した場合の処理として、鍵管理サーバ１０１へ共通鍵情報の再送要求を出してもよい。完全性保証コードの検証に成功した場合は、ステップ１６５０で、復号した共通鍵情報が、路側機１０２が属するエリアの共通鍵情報であるか確認する。
【００５７】
路側機１０２が属するエリアの共通鍵情報である場合は、ステップ１６６０に進み、そうでない場合は、ステップ１６７０に進む。ステップ１６６０では、取得した共通鍵情報を鍵情報６７４に追加し、有効期間が過ぎた共通鍵情報など削除可能な共通鍵情報がある場合は、削除し、ステップ１６７０に進む。ステップ１６７０で、復号した共通鍵情報が、近隣エリアの共通鍵情報であるか確認する。近隣エリアの共通鍵情報である場合は、ステップ１６８０に進む、そうでない場合は、鍵取得処理を終了する。ステップ１６８０では、取得した共通鍵情報を近隣エリア鍵情報テーブル６７５に追加し、有効期間が過ぎた共通鍵情報など削除可能な共通鍵情報がある場合は、削除し、鍵取得処理を終了する。
【００５８】
次に、路側機１０２が車載機１０３への鍵配布処理をおこなう場合について述べる。鍵配布処理は、路側機１０２の鍵配布処理部６３０でおこなわれる。鍵配布処理の手順は、鍵管理サーバ１０１が路側機１０２へ鍵配布処理をおこなう場合と同様であり、図１４で示す。鍵配布処理は、車載機１０３から路側機１０２への共通鍵取得要求を機に開始する。ステップ１４１０で、路側機１０２は車載機１０３と車載機／路側機間認証情報６７３を使って認証をおこなう。認証に成功した場合は、ステップ１４２０で、エリアID６６２、鍵情報６７４から車載機１０３へ送信する共通鍵情報、近隣エリア鍵情報テーブル６７５から車載機１０３へ送信する共通鍵情報を取得し、暗号化と完全性保証コードの生成をおこなう。
【００５９】
鍵管理サーバ１０１から路側機１０２への鍵配布処理と同様、暗号化は公開鍵暗号でも共通鍵暗号を用いてもよい。また、完全性保証コードは、公開鍵による署名でも共通鍵によるMACでもよい。暗号化や完全性保証コードの生成に使用する鍵は、認証時に共有してもよいし、事前に設定しておいてもよい。ステップ１４２０の処理が終わった後、共通鍵情報メッセージとして、ステップ１４３０で暗号化した共通鍵情報、完全性保証コード、セキュリティ情報を該当車載機１０３へ送信する。
【００６０】
図１７に、車載機１０３の鍵取得処理の手順を示す。鍵取得処理は、車載機１０３の鍵取得処理部１０２０でおこなわれる。車載機１０３は、ステップ１７１０で、車載機／路側機間認証情報１０８２を使って路側機１０２と認証をおこない、認証に成功した場合、ステップ１７２０に進み、路側機１０２から共通鍵情報メッセージを受信する。その際に、車両の他装置との通信制御処理部１０６０を使って、目的地までの経路情報または走行履歴情報が利用可能な場合は、路側機１０２に経路情報または走行履歴情報を送信し、取得する事前鍵のバージョンや近隣エリアの共通鍵情報を絞ってもよいし、取得した共通鍵情報メッセージから保存する共通鍵情報を選択してもよい。
【００６１】
ステップ１７３０において、共通鍵情報の復号および完全性保証コードの検証をおこなう。完全性保証コードの検証に成功した場合は、ステップ１７５０に進み、失敗した場合は、鍵取得処理を終了する（ステップ１７４０）。完全性保証コードの検証に失敗した場合の処理として、路側機１０２へ共通鍵情報の再送要求を出してもよい。ステップ１７５０で、鍵情報テーブル１０８３を更新する必要があるかを判断し、更新する必要がある場合はステップ１７６０に進み、更新する必要がない場合は、共通鍵取得処理を終了する。ステップ１７６０で、復号した共通鍵情報を鍵情報テーブル１０８３に登録し、有効期間が過ぎた共通鍵情報など削除可能な共通鍵情報がある場合は、削除し、鍵取得処理を終了する。
【００６２】
図１８に、エリアに存在する路側機および車載機で共有した共通鍵を使って、メッセージの送受信をおこなう場合の手順を示す。メッセージを送信する路側機または車載機は、ステップ１８１０で、メッセージの暗号化またはMAC生成、もしくはその両方に使用する現在利用可能な本来鍵が存在するかを確認する。路側機の場合は鍵情報６７４で確認する。車載機の場合は、位置検知処理部１０５０で検知した現在位置が属するエリアIDをエリア情報テーブル１０７１で確認した後に、鍵情報テーブル１０８３に該当エリアIDの本来鍵が存在するかを確認する。利用可能な本来鍵が存在する場合は、ステップ１８３０に進み、そうでない場合は、ステップ１８２０に進む。
【００６３】
ステップ１８２０では、現在利用可能な事前鍵が存在するかを、路側機の場合は鍵情報６７４、車載機の場合は鍵情報テーブル１０８３で確認する。事前鍵が存在した場合は、ステップ１８３０に進み、そうでない場合は、処理を終了する。ステップ１８３０で、メッセージを暗号化する必要があるかを確認する。必要がある場合はステップ１８４０に進み、必要がない場合はステップ１８５０に進む。
【００６４】
ステップ１８４０では、ステップ１６１０で本来鍵があると判断された場合は本来鍵を用いて、ステップ１６２０で事前鍵があると判断された場合は事前鍵を用いて、メッセージの暗号化をおこない、ステップ１８５０に進む。ステップ１８５０では、MAC生成の必要があるかを確認し、必要がある場合は、ステップ１８６０に進み、必要がない場合はステップ１８７０に進む。ステップ１８６０では、ステップ１６１０で本来鍵があると判断された場合は本来鍵を用いて、ステップ１６２０で事前鍵があると判断された場合は事前鍵を用いて、メッセージのMACを生成し、ステップ１８７０に進み、メッセージを送信する。
【００６５】
図１９に送信メッセージのフォーマット例を示す。送信メッセージは、メッセージタイプ１９０１、セキュリティ処理の有無１９０２、エリアID１９０３、種別１９０４、バージョン１９０５、メッセージ１９０６、MAC１９０７で構成する。メッセージタイプ１９０１は、メッセージのタイプを示す。セキュリティ処理の有無１９０２は、暗号化の有無やMACの有無を示す。エリアID１９０３は、メッセージの暗号化やMAC生成に使用した共通鍵のエリアIDを示す。種別１９０４は、使用した共通鍵が本来鍵か事前鍵かを示す。
【００６６】
バージョン１９０５は使用した共通鍵のバージョンを示す。エリアID１９０３、種別１９０４、バージョン１９０５は、暗号化やMAC生成に利用した共通鍵を識別するための情報である。メッセージを受信した路側機または車載機が、セキュリティ情報記憶部６７０またはセキュリティ情報記憶部１０８０に記憶している全ての共通鍵でMAC検証を試みるという方法をとる場合は、エリアID１９０３、種別１９０４、バージョン１９０５を送信する必要はない。
【００６７】
ただし、メッセージに対して、MACは生成しないが、暗号化をおこなう場合は、暗号化に利用した共通鍵を識別するための情報として、エリアID１０９３、種別１９０４、バージョン１９０５を送信する必要がある。エリアIDメッセージ１９０６は、本来、送信したいメッセージであり、ステップ１９３０で暗号化が必要と判断した場合は、暗号化されている。MAC１９０７は、メッセージタイプ１９０１からメッセージ１９０５までの完全性を保証するコードであり、ステップ１８５０でMAC生成の必要なしと判断した場合は、存在しない。
【００６８】
図２０に、車載機または路側機がメッセージを受信した場合の手順を示す。メッセージを受信すると、ステップ２０１０において、セキュリティ処理の有無１９０２を確認し、メッセージの暗号化もMACもない場合は、処理を終了する。セキュリティ処理がある場合は、送信メッセージのエリアID１９０３、種別１９０４、バージョン１９０５から該当する共通鍵があるかを、車載機は鍵情報テーブル１０８３で、路側機は鍵情報６７２で確認する。
【００６９】
該当する共通鍵が存在する場合は、ステップ２０３０に進み、存在しない場合は、メッセージ受信処理を終了する。ステップ２０３０では、セキュリティ処理の有無１９０２がMACありになっているかを確認し、MACがある場合はステップ２０４０に進み、そうでない場合はステップ２０５０に進む。ステップ２０４０では、ステップ２０２０で確認した共通鍵を使ってMACの検証をおこない、MAC検証に成功した場合は、ステップ２０５０に進み、そうでない場合はメッセージ受信処理を終了する。
【００７０】
ステップ２０５０では、セキュリティ処理の有無１９０２が暗号化ありになっているかを確認し、暗号化ありの場合はステップ２０６０に進み、そうでない場合は、メッセージ受信処理を終了する。ステップ２０６０では、ステップ２０２０で確認した共通鍵を使ってメッセージの復号をおこない、メッセージ受信処理を終了する。
【００７１】
本実施形態においては、鍵管理サーバ１０１が鍵生成処理部２３０を保有し、共通鍵情報の生成をおこなっているが、路側機１０２が鍵生成処理部を保有し、共有鍵情報を生成した後、生成した共通鍵情報を鍵管理サーバ１０１に送信し、鍵情報テーブルに登録してもよい。
【００７２】
また、鍵管理サーバ１０１は、他のサーバと連携し、車の走行履歴情報を取得し、路側機１０２に近隣エリアの共通鍵情報を送信する際に、路側機１０２が属するエリアから次に進む確率が高いエリアの順位付けをおこない、その情報を共通鍵情報とともに路側機に送信してもよい。そして、車載機１０３は、次に進む確率が高い近隣エリアの共通鍵を取得すれば、次に進む確率が低い近隣エリアの共通鍵は取得しなくてもよい。
【符号の説明】
【００７３】
１０１：鍵管理サーバ、１０２：路側機、１０３：車載機
【図１】
0005587239.tif 000002
【図２】
0005587239.tif 000003
【図３】
0005587239.tif 000004
【図４】
0005587239.tif 000005
【図５】
0005587239.tif 000006
【図６】
0005587239.tif 000007
【図７】
0005587239.tif 000008
【図８】
0005587239.tif 000009
【図９】
0005587239.tif 000010
【図１０】
0005587239.tif 000011
【図１１】
0005587239.tif 000012
【図１２】
0005587239.tif 000013
【図１３】
0005587239.tif 000014
【図１４】
0005587239.tif 000015
【図１５】
0005587239.tif 000016
【図１６】
0005587239.tif 000017
【図１７】
0005587239.tif 000018
【図１８】
0005587239.tif 000019
【図１９】
0005587239.tif 000020
【図２０】
0005587239.tif 000021