以下、実施形態について、図面を参照しながら詳細に説明する。説明の順序は次のとおりである。
まず、第1〜3実施形態の共通点について図1〜3を参照して説明する。次に、図4〜5を参照して第1実施形態における装置の動作について説明し、図6〜8Bを参照して第1実施形態で使われる情報の具体例を説明する。なお、図示の都合上、図8Bには一部、第2〜3実施形態で使われる情報も含まれる。
その後、第1実施形態との違いを中心に、図9〜10を参照して第2実施形態について説明し、図11〜12を参照して第3実施形態について説明する。なお、第1実施形態と同様の点については説明を適宜省略する。最後に、第1〜3実施形態に関連するコンピュータのハードウェア構成について図13を参照して説明し、第1〜3実施形態に関するいくつかの変形例についても説明する。
さて、図1は車載装置の構成図である。図1の車載装置100は、自動車に搭載され、例えば何らかのサービスを受けるにあたっての認証のために用いられる端末装置である。車載装置100は、認証用情報を送信し、認証に成功したか否かの結果を受信する。以下ではまず車載装置100の用途と動作の概要を説明し、その後で図1を参照しながら車載装置100の具体的な構成を説明する。
近年ではElectronic Toll Collection(ETC)システムやVehicle Information and Communication System(VICS)など、Intelligent Transport System(ITS)サービスの普及が進みつつある。今後も、各種のITSサービスの利用が広まってゆくと予想され、サービスの種類によってはユーザ認証をともなう。
車載装置100は、ITSサービスにおけるユーザ認証に使われる。例えば、警察車両などの緊急車両に対して進路上の信号機を青に設定するサービスや、カーシェアリングにおける課金のために、車載装置100を介したユーザ認証が利用可能である。
ところで、コンピュータシステムにおけるユーザ認証では、キーボードやテンキーなどから入力される文字によるユーザ名とパスワードの組み合わせが使われることが多い。しかし、ユーザの入力の手間と時間を削減するために、図形的な情報(換言すれば空間的な情報)を利用したパスワードが使われることもある。図形的な情報としては、例えばユーザの手書き署名などが利用可能である。
一般に、セキュリティを高めるためには、他者に類推されにくいパスワードを利用することが有効だが、文字によるパスワードでは、他者に類推されにくいパスワードは得てしてユーザ本人も記憶しにくく、忘れやすい。それに対して、図形的な情報を利用したパスワードは、ユーザ本人にとって覚えやすく、他者には真似しにくい。また、図形的な情報は、例えばタッチスクリーンを介して簡便に入力することができる。
そして、ITSサービスの受益者たるユーザは、車両の運転者でもあるので、車両の運転以外の操作であるパスワード入力操作などは、なるべく簡便に済ませられることが好ましい。よって、入力の簡便性とパスワードの安全性を両立させるため、車載装置100では、図形的な情報を利用したパスワードが利用される。
なお、車載装置100には予め一意なIDentification(ID)が割り当てられている。以下では当該IDを「車載装置ID」という。そして、第1〜3実施形態では、車載装置IDが認証対象のアカウントの識別に用いられる。また、車載装置100が送信する上記「認証用情報」とは、図形的な情報を利用したパスワードに対応する情報であって、パスワードを加工することで得られる。
また、車載装置100と他の装置(具体的には路側機)との間の通信は、当然ながら無線通信により行われる。そして、無線通信は傍受可能なので、車載装置100を介したユーザ認証のためには、セキュリティ向上のための工夫を行うことが望ましい。具体的には、ワンタイム・パスワードのように認証のたびに異なる情報を用いる手法が、リプレイ攻撃によるなりすましの防止に役立ち、高いセキュリティ実現のために有効である。
そこで、車載装置100は、認証のたびに異なる認証用情報を生成することで高いセキュリティを実現する。具体的には、車載装置100は、認証用情報の生成のたびに異なる情報(以下、説明の便宜上「鍵情報」という)を用いて認証用情報を生成することで、認証のたびに異なる認証用情報が使われるようにする。
ところで、認証用情報の生成のたびに異なる鍵情報を用いるには、2つの方法が考えられる。1つ目の方法は、チャレンジ・レスポンス方式でのワンタイム・パスワードの生成と同様に、認証を行う装置(以下「認証サーバ」という)から車載装置100が認証のたびに新たな鍵情報を取得する方法である。そして、2つ目の方法は、タイム・シンクロナス方式でのワンタイム・パスワードの生成と同様に、認証サーバと車載装置100が同期して認証のたびに同じ新たな鍵情報をそれぞれ生成する方法である。
車載装置100は、具体的には1つ目の方法をとることで、認証用情報の生成のたびに異なる鍵情報を用いることを可能とする。しかし、もし「車載装置100が認証を要求しようとする段になってから、新たな鍵情報を認証サーバに要求し、認証サーバが要求に応じて新たな鍵情報を送信する」と仮定すれば、ユーザからの入力の受け付けから認証の完了までの時間が長くなるおそれがある。その理由は、車載装置100が、高速に移動可能な移動体である車両に搭載されており、車載装置100の無線通信環境が急激に変わることがあるためである。
つまり、上記の仮定のもとでは、認証に際して、新たな鍵情報の要求、新たな鍵情報の通知、新たな鍵情報を用いて生成された認証情報による認証の要求、および認証結果の通知という一連の通信が、車載装置100と認証サーバとの間で行われる。換言すれば、認証のために2往復の通信が行われる。
しかし、車載装置100を搭載する車両は、車載装置100が路側機を介して認証サーバと通信している間にも高速に移動しているかもしれない。すると、通信断が生じ、その結果、通信のリトライが生じるかもしれない。
また、道路上には他の多くの車両が存在するかもしれないので、車載装置100が路側機を介して認証サーバと通信している最中に、車載装置100を搭載した車両と路側機の間が他の車両により遮蔽されるかもしれない。すると、やはり通信断が生じ、その結果、通信のリトライが生じるかもしれない。
さらに、「通信環境の悪化を防ぐために、あらゆる道路において通信不可領域が生じないように、大量の路側機を設置する」といった対策は非現実的であり、路側機同士の間はある程度離れている。よって、車載装置100を搭載している車両自体の走行や他の車両による遮蔽などの影響で通信断が生じた場合、次の路側機と車載装置100の間で通信のリトライが行われるまでには、ある程度の時間が経過してしまう。
以上のような理由から、車載装置100と認証サーバの間の通信は、場合によっては時間がかかることがある。つまり、認証に比較的長い時間がかかってしまう可能性がある。他方で、ITSサービスの中には、車両のエンジンがかけられてすぐにでもサービスを開始することが好ましいものもあり、認証はなるべく短時間で終えることが好ましい。
そこで、車載装置100は、上記の仮定のように認証を要求しようとする段になってから認証サーバとの間で2往復の通信を行う代わりに、最初の1往復の通信を予め済ませておくことで、認証にかかる時間を短縮する。つまり、車載装置100は、予め新たな鍵情報を認証サーバに要求し、認証サーバから新たな鍵情報を取得して記憶しておく。そして、車載装置100は、ユーザから図形的な情報の入力を受け付けて認証を要求するときには、予め記憶しておいた新たな鍵情報(すなわち、認証用情報の生成には未使用の鍵情報)を用いて認証用情報を生成する。
すると、車載装置100がユーザから入力を受け付けてから認証が完了するまでの間に、車載装置100と認証サーバとの間で行われる通信は、新たな鍵情報を用いて生成された認証情報による認証の要求と認証結果の通知という1往復の通信のみでよい。よって、上記の仮定のように2往復の通信を行う場合と比べて、車載装置100は認証にかかる時間を短縮することができる。
また、新たな鍵情報の要求と新たな鍵情報の通知という1往復の通信が行われるタイミングは、当該新たな鍵情報を使って生成される認証用情報による認証より前であれば任意である。しかし、好適なタイミングは、「当該新たな鍵情報を使って生成される認証用情報による認証の前回の認証が完了した直後、『通信品質が良好であろう』という判定が得られ次第」というタイミングか、「前回の認証と同時」というタイミングである。
その理由の1つは、いつ認証が行われるかが予測不能なためであり、もう1つの理由は、車載装置100の無線通信環境は変動が大きいからである。よって、車載装置100は、現在の鍵情報を用いて生成した認証用情報による認証が完了した直後、「通信品質が良好であろう」という判定が得られ次第、次の認証のための新たな鍵情報を認証サーバに要求する。あるいは、車載装置100は、現在の鍵情報を用いて生成した認証用情報による認証と同時に、次の認証のための新たな鍵情報を認証サーバに要求する。
換言すれば、車載装置100は、現在の鍵情報を使用した直後に、「通信品質が悪そうだ」といった阻害要因さえなければすぐに、次の認証のための新たな鍵情報を認証サーバに要求する。すると、たとえすぐに次の認証を行うことになったとしても、車載装置100は既に未使用の新たな鍵情報を保持しているので、認証は短時間で完了する。
以上のとおり、車載装置100は、車両に搭載される装置に適した様々な利点を有する。続いて、図1を参照しながら車載装置100の具体的構成について説明する。なお、各部の具体的動作については、実施形態ごとにフローチャートを参照して後述する。
図1の車載装置100は、外部とのインタフェースとして、画面インタフェース部101と上位機器インタフェース部102を有する。また、車載装置100は、情報受信処理部103と情報送信処理部104と格納部105と画面エリア判定部106と画面乱数処理部107と車両状態判定部108をさらに有する。そして、車載装置100は、同じ車両に搭載されている外部センサ110と接続されている。
画面インタフェース部101は、タッチスクリーンを含むユーザインタフェース装置である。画面インタフェース部101は、車載装置100のユーザからのタッチスクリーンへの入力を受け取り、入力された内容を情報受信処理部103へ出力する。つまり、画面インタフェース部101は、画面への接触を感知し、接触を感知した画面上の位置を表す情報を情報受信処理部103へ出力する。さらに、画面インタフェース部101は、画面上に入力プロンプトなどを表示してもよい。なお、ユーザからの入力は、タッチスクリーンの種類に応じて、ユーザの指による入力でもよいし、スタイラスペンなどの装置を介した入力でもよい。
また、以下ではタッチスクリーンを単に「画面」ということがある。そして、以下では説明の便宜上、画面インタフェース部101が接触を感知した位置を表す情報とは、具体的には画面上の位置を表す2次元座標であるものとする。
上位機器インタフェース部102は、無線通信インタフェース装置であり、アナログ・ディジタル変換、変復調、符号化・復号化などの各種処理を行う回路や、アンテナなどのハードウェアを含む。なお、「上位機器」とは、具体的には、図2を参照して後述する路側機201、認証サーバ202および交通管制サーバ203のことである。
上位機器インタフェース部102は、無線フレームを受信し、無線フレームにおいて暗号化されているペイロードの復号などの処理を適宜行い、受信した無線フレームのデータ(例えばヘッダと復号されたペイロードの内容)を情報受信処理部103に出力する。また、上位機器インタフェース部102は、情報送信処理部104から出力されるデータに対して、無線フレームのヘッダの設定、ペイロードの暗号化、同期用プリアンブルの追加などの処理を行うことで無線フレームを生成し、生成した無線フレームを送信する。
なお、上位機器インタフェース部102が無線通信に用いる無線通信プロトコルは実施形態に応じて任意である。例えば、Institute of Electrical and Electronics Engineers(IEEE)802.11p規格にしたがって無線通信が行われてもよい。IEEE802.11p規格は、Wireless Access in Vehicular Environments(WAVE)方式と呼ばれる無線Local Area Network(LAN)規格である。また、記載の簡略化のため、以下では「無線フレーム」を単に「フレーム」という。
情報受信処理部103は、画面インタフェース部101または上位機器インタフェース部102から出力される情報を受け取り、情報の種類に応じて、受け取った情報を格納部105に格納するか、または画面エリア判定部106に出力する。また、詳しくは図4とともに説明するが、情報受信処理部103は、上位機器インタフェース部102を介したフレームの受信をトリガとして検出し、トリガの検出を情報送信処理部104に通知することがある。
他方、情報送信処理部104は、画面インタフェース部101に対して、画面に出力する情報を指示する。また、情報送信処理部104は、上位機器インタフェース部102に対して、上位機器インタフェース部102から送信するフレームに含める情報を指示する。情報送信処理部104は、上記のような指示を、情報受信処理部103、画面乱数処理部107または車両状態判定部108からの入力に応じて行う。
格納部105は、情報を格納するための不揮発性の記憶装置を含む。例えば、ハードディスク装置や、フラッシュメモリなどの不揮発性の半導体メモリ装置などが、格納部105として利用可能である。
なお、格納部105として使われる記憶装置は、耐タンパ性を備えたものでもよい。また、格納部105は、不揮発性の記憶装置に格納された情報を一時的に格納するための、Random Access Memory(RAM)などの揮発性の記憶装置をさらに含んでもよい。
詳しくは後述するが、格納部105は、画面をメッシュ状に複数のエリアに細分化する仕方を規定する細分化エリア情報と、複数のエリアにそれぞれランダムな値を対応づける乱数情報を格納する。なお、細分化エリア情報は、予め固定的に決められた情報でもよいし、更新可能な可変の情報でもよい。
乱数情報と細分化エリア情報は、認証用情報の生成のために使われる情報である。すなわち、上記の鍵情報とは、具体的には乱数情報と細分化エリア情報を含む情報である。
乱数情報は、上位機器インタフェース部102において受信されるフレームに含まれ、上位機器インタフェース部102から情報受信処理部103に出力され、情報受信処理部103によって格納部105に書き込まれる。そして、乱数情報は画面乱数処理部107により読み出される。
固定的な場合の細分化エリア情報は、予め格納部105に格納される。他方、可変な場合の細分化エリア情報は、上位機器インタフェース部102において受信されるフレームに含まれ、上位機器インタフェース部102から情報受信処理部103に出力され、情報受信処理部103によって格納部105に書き込まれる。そして、固定的であるにしろ可変であるにしろ、細分化エリア情報は、画面エリア判定部106により読み出される。
さらに、格納部105は、信号機の位置などを表す地図情報も格納する。地図情報は、予め用意されて格納部105に格納され、車両状態判定部108により参照される。
画面エリア判定部106は、画面インタフェース部101を介して入力される図形を描く軌跡が、画面(厳密には、画面内においてユーザからの入力を受け付ける入力領域)を細分化する複数のエリアのうち、どのエリアを通るのかを判定する。あるいは、実施形態によっては、画面エリア判定部106は、画面インタフェース部101を介して順次指定される複数の位置のそれぞれが、複数のエリアのうちどのエリアにあるのかを判定してもよい。画面エリア判定部106は、細分化エリア情報を参照して上記のような判定を行う。
また、画面エリア判定部106は、時間の経過と入力の進行との間の関係をさらに判定してもよい。時間の経過と入力の進行との間の関係としては、例えば、時間の経過にともなう軌跡の変化が利用可能であり、具体的にはエリアの通過順や各エリアの通過にかかる時間により表すことができる。あるいは、時間の経過と入力の進行との間の関係は、画面上の複数の位置が指定される順序、間隔、または順序と間隔の組み合わせにより表すこともできる。
画面乱数処理部107は、画面エリア判定部106による判定結果と、格納部105に格納されている乱数情報とを用いて、車載装置100のユーザの認証に使うための認証用情報を生成する。そして、画面乱数処理部107は、生成した認証用情報を情報送信処理部104に出力する。
車両状態判定部108は、車載装置100と接続された外部センサ110からの入力と格納部105に格納された地図情報に基づいて、車載装置100が搭載されている車両の状態を判定する。そして、車両状態判定部108は、上位機器インタフェース部102からの送信のタイミングを車両の状態に応じて制御するためのタイミング制御情報を情報送信処理部104に出力する。
なお、車両状態判定部108は、第3実施形態では省略されてもよい。また、外部センサ110は、第1〜2実施形態では、具体的には、車速センサと位置センサを含む。第3実施形態では、外部センサ110は、なくてもよいし、車速センサと位置センサの一方のみを含んでもよいし、車速センサと位置センサの双方を含んでもよい。
位置センサとしては、具体的には、Global Positioning System(GPS)受信機や、GPS受信機とその他のセンサ(例えばジャイロセンサや加速度センサ)を含むカーナビゲーション装置などが利用可能である。
車速センサからの車両状態判定部108への入力は、例えば車速パルスでもよいし、車速パルスから計算された車速を示す数値でもよい。また、位置センサから車両状態判定部108への入力は、例えば、車載装置100が搭載された車両が位置する緯度と経度を表す測位情報でもよい。車両状態判定部108は、車速と車両の位置と地図情報を用いて車両の状態を判定する。なお、外部センサ110または車両状態判定部108は、マップマッチングなどの手法を用いて、車両の位置を示す情報を補正してもよい。
図2はシステム構成図である。図2に示すシステム200は、複数の車載装置100a〜100c、複数の路側機201a〜201c、認証サーバ202、および交通管制サーバ203を含む。また、システム200において、路側機201a〜201cと認証サーバ202と交通管制サーバ203は、ネットワーク204に接続されている。
なお、本実施形態において複数の路側機201a〜201cは互いに同様の構成を有するので、以下の説明において路側機一般について述べるときは、「201」という参照符号を使う。また、図2の複数の車載装置100a〜100cは図1の車載装置100と同様の構成を有するので、以下の説明において車載装置一般について述べるときは、図1に示した「100」という参照符号を使う。
路側機201は、道路の近傍に設置される中継装置である。なお、「道路の近傍」には路面上空の空間を含むものとする。路側機201は車載装置100との間で無線通信を行うことで、車載装置100と認証サーバ202の間または車載装置100と交通管制サーバ203の間の通信を中継する。
認証サーバ202は、車載装置100からいずれかの路側機201を介して送信された認証用情報を、ネットワーク204を介して受信し、受信した認証用情報を用いて車載装置100の認証を行う。そして、認証サーバ202は、ネットワーク204と路側機201を介して、認証結果を車載装置100に送信する。さらに、認証に成功した場合は、認証サーバ202は、ネットワーク204を介して交通管制サーバ203にも認証結果を送信する。
また、認証サーバ202は、鍵情報の更新を要求する鍵情報更新要求を、路側機201とネットワーク204を介して、車載装置100から受信する。そして、認証サーバ202は、新たな鍵情報を生成し、ネットワーク204と路側機201を介して、新たな鍵情報を車載装置100に送信する。
交通管制サーバ203は、認証サーバ202から通知された認証結果を利用して、車載装置100に各種サービスを提供する。例えば、車載装置100が搭載されている車両が救急車、消防車、警察車両などの緊急車両である場合、認証サーバ202による認証が成功すると、交通管制サーバ203は車載装置100に対して、進路上の信号機を青にするといったサービスを提供してもよい。あるいは、交通管制サーバ203は、緊急車両に搭載された車載装置100に対して「この経路上の信号機は青に設定してあるのでこの経路を通るとよい」と経路を指定する情報を提供してもよい。
ネットワーク204は、例えば、LAN、Wide Area Network(WAN)、インターネット、またはそれらの任意の組み合わせである。また、ネットワーク204は有線ネットワークでもよいし、一部に無線通信路を含むネットワークであってもよい。
また、第1〜3実施形態において、ネットワーク204はInternet Protocol(IP)ネットワークである。また、上記のとおり、上位機器インタフェース部102が無線通信に用いる無線通信プロトコルは実施形態に応じて任意である。
よって、中継装置である路側機201は、車載装置100からフレームを受信した場合は、フレームから適宜のフィールドのデータを取り出し、取り出したデータをペイロードに含むIPパケットを生成する。例えば、路側機201は、車載装置100から受信したフレームのヘッダとペイロードの全体をカプセル化してIPパケットのペイロードに含めてもよい。そして、路側機201は、生成したIPパケットを、ネットワーク204を介して認証サーバ202または交通管制サーバ203に送信する。
なお、車載装置100と路側機201の間の通信は暗号化される。そこで、路側機201は、車載装置100から受信したフレーム(すなわち暗号化されたペイロードを含むフレーム)の適宜の範囲(例えばヘッダとペイロードの全体)をそのままカプセル化したIPパケットを生成してもよい。あるいは、路側機201は、車載装置100から受信した暗号化フレームを一旦復号して適宜のフィールドのデータを取り出し、取り出したデータを再度暗号化してIPパケットのペイロードに含めてもよい。
なお、IPパケットの生成にあたり、路側機201は、フレームの種別を示す種別情報をIPパケットに設定する。路側機201は、車載装置100から受信したフレーム内にもともと含まれているフィールドを、そのまま種別情報として利用してIPパケットに含めてもよい。
また、路側機201は、自らのIPアドレスを送信元IPアドレスとして設定する。また、路側機201は、車載装置100から受信したフレームの種別に応じて宛先を認証サーバ202または交通管制サーバ203と決め、決めた宛先のIPアドレスを送信先IPアドレスとして設定する。
逆に、路側機201は、認証サーバ202または交通管制サーバ203からネットワーク204を介してIPパケットを受信した場合は、IPパケットのペイロードから適宜のデータを取り出し、取り出したデータを使ってフレームを生成して送信する。
なお、IPパケットのペイロードも適宜暗号化されている。例えば、認証サーバ202または交通管制サーバ203から路側機201へ送信されるIPパケットには、路側機201が送信する無線フレームで使われるヘッダと、同じく無線フレームで使われる暗号化されたペイロードがカプセル化されていてもよい。その場合、路側機201は、IPパケットのペイロードにカプセル化されているデータを取り出し、無線通信の同期用プリアンブルを付加することでフレームを生成することができる。あるいは、路側機201は、受信したIPパケットにおいて暗号化されているデータを一旦復号し、復号したデータを再度暗号化してフレームのペイロードに設定してもよい。
以上のように、路側機201における中継時に、中継されるデータの形式は変更され、必要に応じてヘッダの設定などが行われる。しかし、中継されるデータの内容自体は変わらない。よって、以下では形式の違いに取り立てて注目する場合以外は、「認証要求」のようなデータの内容を示す名前によってデータを名指すこととし、形式の違いを明示的に示す場合に「認証要求のフレーム」のように表現することにする。また、車載装置100における暗号化と復号の処理と、路側機201において実施形態に応じて行われることがある復号と再暗号化の処理については、以下では説明の簡略化のため特に明記しないこともある。
なお、図2において、車載装置100aの矩形と路側機201aの矩形の間の直線は、車載装置100aと路側機201aの間の無線通信路を示す。しかし、車載装置100aは車両の走行にともなって移動し、路側機201aは路側に固定的に設置されているので、車載装置100aと路側機201aの間の無線通信路は恒久的なものではない。つまり、車載装置100aと路側機201aの間の無線通信路は、路側機201aと無線通信可能な位置に車載装置100aが存在する間だけ一時的に確立されるものである。
同様に、図2に示した車載装置100bと路側機201bの間の無線通信路も、一時的に確立されるものであり、車載装置100cと路側機201cの間の無線通信路も、一時的に確立されるものである。このように、システム200内においてどの車載装置100とどの路側機201の間に無線通信路が存在するかは、時々刻々と動的に変化する。
さて、図3は、システムが適用される環境の例を示す図である。図3には、紙面縦方向に延びる道路301a〜301bと紙面横方向に延びる道路301c〜301gが図示されている。
道路301aと301cは交差点302aにおいて丁字路をなしており、道路301aと301dは交差点302bにおいて丁字路をなしている。また、道路301aと301eは交差点302cで十字路をなしており、道路301eと301bは交差点302dで丁字路をなしている。そして、道路301aと301fは交差点302eで丁字路をなしており、道路301aと301gは交差点302fで十字路をなしている。
また、交差点302aには、道路301c上に設置された信号機303aと道路301a上に設置された信号機303bがある。そして、信号機303bには路側機201bが取り付けられている。さらに、交差点302bには、道路301a上に設置された信号機303cがあり、信号機303cには路側機201cが取り付けられている。
そして、道路301e上には、交差点302cのところに信号機303dが、交差点302dのところに信号機303eが、それぞれ設置されている。また、交差点302cには、道路301a上に設置された信号機303fもある。しかし、これらの信号機303d、303eおよび303fには、路側機201は取り付けられていない。
また、交差点302dには、道路301b上に設置された信号機303gもある。信号機303gには路側機201gが取り付けられている。
そして、交差点302eには、道路301f上に設置された信号機303hと道路301a上に設置された信号機303iがある。なお、信号機303hには路側機201hが取り付けられているが、信号機303iには路側機201は取り付けられていない。
また、交差点302fには、道路301g上に設置された信号機303jと道路301a上に設置された信号機303kがある。信号機303kには路側機201kが取り付けられているが信号機303jには路側機201は取り付けられていない。
以上例示したように、路側機201は、例えば信号機に取り付けられてもよいが、すべての信号機に必ず路側機201が取り付けられているわけではない。また、路側機201は、信号機に取り付けられるのでなくてもよく、例えば歩道上に設置されてもよいし、道路沿いの建物の壁面などに設置されてもよい。
また、図3には、道路301d沿いに存在する駐車場304と、駐車場304に駐車中の車両305も図示してある。以下では特に断らない限り、図1の車載装置100が車両305に搭載されている場合を例にして説明する。
以上、図1〜3を参照して第1〜3実施形態の共通点について説明したので、続いて、第1〜3実施形態についてそれぞれ具体的に説明する。
図4は、第1実施形態における車載装置の動作のフローチャートである。図4の処理は、車載装置100に電源が入れられると開始される。なお、車載装置100は、車載装置100が搭載される車両305のエンジンがかけられると自動的に電源が入れられるように設定されていてもよい。
さて、ステップS101で情報受信処理部103は、画面インタフェース部101を介した図形の入力を受け付ける。ステップS101で受け付けられる図形は、予めユーザごとに決められて認証サーバ202に登録された図形である。例えば、ユーザの手書き署名などがステップS101での図形として好適だが、署名以外の図形ももちろん利用可能である。また、第1実施形態では、説明の簡単化のため、ユーザと車載装置100が1対1に対応し、車載装置IDによりユーザが識別されるものとする。
具体的には、画面インタフェース部101は、画面上で接触を感知すると、接触を感知した位置の2次元座標を情報受信処理部103に出力する。すると、情報受信処理部103は、画面インタフェース部101から出力された2次元座標と、2次元座標が画面インタフェース部101から情報受信処理部103に入力されたタイミングの組み合わせから軌跡情報を生成する。軌跡情報は、時間の経過とともに入力がどのような軌跡を描いていくのかを示す情報である。情報受信処理部103は、軌跡情報を画面エリア判定部106に出力する。
つまり、ステップS101は、ユーザからの入力から得られる軌跡情報を、画面エリア判定部106の一部としてのRAMに記憶するステップである。そして、画面エリア判定部106が軌跡情報を受け取ってRAMに記憶すると、処理はステップS101からS102へ移行する。
なお、ステップS101における入力の完了は、ユーザから明示的に指示されてもよいし、暗黙的な状況の変化に応じて情報受信処理部103が自動的に判断してもよい。
例えば、情報送信処理部104は、終了ボタンを画面上に表示するよう画面インタフェース部101に指示してもよい。そして、情報受信処理部103は、画面インタフェース部101から入力された2次元座標が終了ボタンの範囲内に含まれるか否かを判断してもよい。この場合、情報受信処理部103は、入力された2次元座標が終了ボタンの範囲内に含まれれば、「ステップS101における入力が完了した」と判断することができる。
あるいは、情報受信処理部103は、画面インタフェース部101からの2次元座標の入力が一旦始まった後、所定の時間以上にわたって2次元座標の入力が途切れたとき、「ステップS101における入力が完了した」と判断してもよい。入力される図形は必ずしも一筆書きが可能な図形とは限らないので、図形の入力の途中で画面インタフェース部101からの2次元座標の入力が途切れることもある。しかし、例えば2秒間などの所定の時間以上の中断が生じれば、情報受信処理部103は、「図形の入力の途中でスタイラスペン(あるいは指)が一時的に画面から離れたのではなく、図形の入力が終了した」と判断してもよい。
いずれにせよ、情報受信処理部103は上記のようにして図形の入力の完了を検知することができる。よって、情報受信処理部103は、入力の完了を検知した段階で軌跡情報を完成させ、完成させた軌跡情報を画面エリア判定部106に出力することができる。
そして、ステップS102では、以上のようにして入力された図形から得られる軌跡情報と、格納部105に予め記憶されている鍵情報とを使って、車載装置100が認証用情報を生成する。
なお、上記のとおり、第1実施形態において鍵情報は細分化エリア情報と乱数情報を含む。認証用情報の生成は、具体的には以下のようにして行われる。まず、画面エリア判定部106が、細分化エリア情報と軌跡情報に基づいて、下記(a1)、(a2)、または(a1)と(a2)の双方を判定する。
(a1)入力された軌跡を描いて移動する点が、細分化エリア情報により規定される複数のエリアのうち、どのエリアをどういう順序で通過していったか。
(a2)入力された軌跡を描いて移動する点が、細分化エリア情報により規定される各エリアを通過するのにかかった時間。
なお、(a1)は入力された軌跡が描く形状と書き順(描き順)を表し、(a2)はユーザの入力スピードとユーザの入力癖を表す。例えば、入力する図形として手書きの署名が登録されているユーザの場合、ユーザ本人が書きなれた自分の署名を入力する時間と、悪意のある他人が真似をしながら慎重に当該ユーザの署名を入力する時間とでは差がある。よって、(a2)の時間は、ユーザ認証に利用するのに好適な情報である。
そして、画面エリア判定部106は、判定結果を画面乱数処理部107に出力する。すると、画面乱数処理部107は、格納部105から乱数情報を読み出し、画面エリア判定部106による判定結果と乱数情報から、認証用情報を作成する。あるいは、画面乱数処理部107は、乱数情報を使わずに画面エリア判定部106による判定結果から、認証用情報を作成してもよい。いずれにせよ、ステップS102では画面エリア判定部106と画面乱数処理部107が協働して、軌跡情報と鍵情報を用いて認証用情報を生成する第1の生成手段として機能する。
認証用情報の作成のためのアルゴリズムは任意である。ここで、認証用情報の作成のためのアルゴリズムについて説明するため、以下の(b1)〜(b4)のような記法を導入することにする。
(b1)細分化エリア情報により規定される複数のエリアを、area1,area2,……,areanとする(n>1)。細分化エリア情報は、画面においてユーザからの入力がなされる入力領域をn個の分割領域(つまりn個のエリア)に分割するパターンを表す情報であれば、形式は任意である。
例えば、各エリアが矩形の場合は、細分化エリア情報は、各エリアareaj(1≦j≦n)についての、上端、下端、左端および右端の座標の組により表されていてもよい。あるいは、「画面を水平方向に何等分し、垂直方向に何等分するか」という分割の数によって細分化エリア情報が表されていてもよい。
あるいは、画面を何行・何列に細分化するかということが固定的に決められていてもよい。その場合、細分化エリア情報は、各行の高さと各列の幅を指定する情報であってもよい。すると、行ごとに高さが異なっていたり、列ごとに幅が異なっていたりする細分化の仕方を細分化エリア情報により規定することができる。もちろん、行の高さと列の幅の一方のみが可変という実施形態も可能である。
さらに、エリアの形状は実施形態に応じて任意であり、エリアは例えば三角形や六画形でもよい。また、細分化エリア情報において各エリアは、頂点の座標により表されてもよいし、重心の座標と大きさにより表されてもよい。
(b2)乱数情報において、エリアareajに対応づけられているランダムな値をrandjとする(1≦j≦n)。ランダムな値randjは、数値でもよいし、文字列でもよい。乱数情報は、画面においてユーザからの入力がなされる入力領域をn個の分割領域に分割するパターンに対応するn個のランダムな値を表現することができる情報であれば、どのような形式でもよい。
例えば、エリアareajとランダムな値randjは、ランダムな値randjの乱数情報内での順序を介して対応づけられていてもよい。例えば、エリアareajの頂点の座標の組によりエリアareajを定義する情報が細分化エリア情報内でj番目にあり、ランダムな値randjが乱数情報内で同じくj番目にあるのでもよい。
または、エリアareajとランダムな値randjは、エリアareajに割り当てられるIDを介して対応づけられていてもよい。例えば、細分化エリア情報においてはエリアareajを定義する座標などの情報がエリアareajのIDと対応づけられており、乱数情報においてはランダムな値randjがエリアareajのIDと対応づけられていてもよい。
(b3)入力された軌跡は、重複も含めて延べm個のエリアを通過したとする。このとき、入力された軌跡を描いて移動する点がk番目(1≦k≦m)に通過したエリアをareat(k)とする。
この表記によれば、細分化エリア情報と軌跡情報に基づいて得られる上記(a1)の判定結果は、〈areat(1),areat(2),……,areat(m)〉というエリアの並びとして表すことができる。なお、エリアareat(k)に対応づけられているランダムな値は、上記(b2)より、randt(k)と表記することができる。
(b4)入力された軌跡を描いて移動する点が、k番目のエリアareat(k)を通過するのにかかった時間をpasst(k)とする。
この表記によれば、細分化エリア情報と軌跡情報に基づいて得られる上記(a2)の判定結果は、〈passt(1),passt(2),……,passt(m)〉という時間の並びとして表すことができる。
さてここで、認証用情報をαと記すことにして、以上の(b1)〜(b4)の記法を用いて説明すると、ステップS102において画面乱数処理部107は、実施形態に応じて下記の式(1)〜(3)のいずれかにしたがって認証用情報αを生成する。
α=fA(randt(1),……,randt(m)) (1)
α=fB(passt(1),……,passt(m)) (2)
α=fC(randt(1),passt(1),……,
randt(m),passt(m)) (3)
式(1)の関数fAと式(2)のfBはいずれも、例えば、m個の引数を文字列としてそのまま連結する関数でもよいし、所定のデリミタで区切りながらm個の引数を文字列として連結する関数でもよい。あるいは、関数fAとfBは、m個の各引数を所定の関数gで変換した結果を、文字列としてそのまま(あるいは所定のデリミタで区切りながら)連結する関数でもよい。なお、関数gには逆関数g−1が存在するものとする。
また、関数fAとfBはいずれも、所定の規則にしたがってm個の引数の順序を入れ換えてから、上記いずれかの連結を行う関数でもよい。所定の規則による順序の入れ換えは、逆変換が存在する変換であれば任意であり、例えば、「順序を逆にする」、「最初から2個ずつ組にして組の中で順序を逆にする」などの入れ換えが利用可能である。
同様に、式(3)の関数fCは、2m個の引数を、文字列としてそのまま(あるいは所定のデリミタで区切りながら)連結する関数でもよい。あるいは、関数fCは、奇数番目の各引数を所定の関数gAで変換してから連結を行う関数であってもよいし、偶数番目の各引数を所定の関数gBで変換してから連結を行う関数であってもよい。なお、関数gAとgBにはそれぞれ逆関数gA −1とgB −1が存在するものとする。また、関数fCは、所定の規則にしたがって2m個の引数の順序を入れ換えてから、上記いずれかの連結を行う関数でもよい。
また、関数fA、fBおよびfCは、認証用情報αから元の引数を一意に求めることができるように定義される。デリミタを使うことにより、あるいは各引数(もしくは引数を関数gなどによって変換した結果)を固定長の文字列とすることにより、認証用情報αから元の引数を一意に求めることができるように関数fA、fBおよびfCを定義することが可能である。
さて、画面乱数処理部107は、ステップS102において以上のようにして式(1)〜(3)のいずれかにしたがって認証用情報αを生成すると、生成した認証用情報αを情報送信処理部104に出力する。
すると、次のステップS103で情報送信処理部104は、認証用情報と車載装置100自身の車載装置IDを含む認証要求のフレーム用のデータ(例えばヘッダと、暗号化する前のペイロードのデータ)を生成する。そして、情報送信処理部104は、生成したデータを上位機器インタフェース部102に出力し、フレームの送信を上位機器インタフェース部102に命じる。
すると、上位機器インタフェース部102は命令にしたがって、ペイロードを暗号化したりフレームの先頭にプリアンブルを付加したりする適宜の処理を行い、認証要求のフレームを生成する。そして、上位機器インタフェース部102は認証要求のフレームを送信する。
また、情報送信処理部104は、タイマをタイムアウト検出用の所定の時間に設定する。なお、認証要求の再送に備えて、情報送信処理部104は、認証用情報か、または生成した認証要求のフレーム用のデータを保持する。
なお、車載装置100のユーザである運転者は、ステップS101における図形の入力を行った後は運転に専念していてよい。例えば、図3のように駐車場304に駐車されている車両305にエンジンがかけられ、車載装置100に電源が入れられたとすると、ステップS103の時点で車両305は、まだ駐車場304内で停止したままかもしれないし、既に走り出しているかもしれない。
続いて、ステップS104で情報送信処理部104は、後続の処理を行うためのトリガとなるイベントの発生を待つ。そして、トリガとなるイベントが発生すると、処理はステップS105に移行する。本実施形態ではステップS104でトリガとなるイベントには、認証通知の受信と、拒否通知の受信と、タイムアウトの3種類があり、具体的には以下のようにして検出される。
ステップS103で上位機器インタフェース部102から送信された認証要求のフレームは、車載装置100と路側機201との間の通信品質が良好であれば、路側機201に受信される。そして、認証要求は、路側機201からネットワーク204を介して、認証サーバ202に送信され、認証サーバ202に到達する。
例えば、駐車場304を出た車両305が信号機303c付近で徐行あるいは停止しているときにステップS103が実行されるとする。この場合、大型車両などの遮蔽物によって車両305と路側機201cとの間が遮られていなければ、上位機器インタフェース部102と、信号機303cに取り付けられた路側機201cとの間の通信品質は良好であることが多い。
上位機器インタフェース部102と路側機201cとの間の通信品質が良好なとき、認証要求のフレームは、路側機201cにおいて成功裡に受信される。すると、認証要求は路側機201cにより中継され、ネットワーク204を介して認証サーバ202に送信される。
そして、認証要求が認証サーバ202に到達すると、詳しくは図5とともに後述するように、認証サーバ202は認証要求に含まれる認証用情報と車載装置IDに基づいて認証処理を行う。
認証サーバ202は、認証処理の結果、認証用情報が正当な情報か不正な情報かを判断する。そして、認証用情報が正当な情報であると判断した場合、認証サーバ202は認証通知を送信する。他方、認証用情報が不正な情報であると判断した場合、認証サーバ202は拒否通知を送信する。そして、認証通知または拒否通知は、ネットワーク204と路側機201を介して車載装置100に到達し、上位機器インタフェース部102において受信される。
例えば、上記のように路側機201cを介して認証要求が送信された場合、車両305は認証要求の送信後にもまだ路側機201cの付近に位置しているかもしれないし、既に路側機201cから離れているかもしれない。そこで、詳しくは図5とともに後述するように、認証サーバ202は、路側機201cだけでなく、路側機201cから所定の範囲内にある他の路側機201(例えば路側機201bなど)にも宛てて、認証通知または拒否通知を送信する。
そして、認証サーバ202から認証通知または拒否通知を受信した路側機201cや路側機201bなどは、所定の長さの期間にわたり、認証通知または拒否通知のフレームの送信を適宜の間隔で繰り返す。
例えば、上記の「所定の範囲」を規定する距離あるいは道のりを、適宜に想定された平均的な車速で移動するのにかかる時間が、30秒であるとする。すると、上記「所定の長さ」とは、30秒間でもよいし、30秒に適宜のマージンを加えた長さでもよい。また、上記「適宜の間隔」とは、例えば、1台の路側機201の通信可能範囲を、上記の適宜に想定された平均的な車速で端から端まで移動するのにかかる時間よりも短い時間である。
よって、認証サーバ202が宛先に路側機201を適切に選択し、かつ上記の期間と間隔が適切に設定されていれば、車載装置100の上位機器インタフェース部102は、認証通知または拒否通知のフレームを受信することができる。例えば、上位機器インタフェース部102は、車両305が信号機303bの付近で停止したとき、あるいは信号機303bの付近を通過するときに、路側機201bから認証通知または拒否通知のフレームを受信するかもしれない。
すると、上位機器インタフェース部102は、受信した認証通知または拒否通知のフレームに対して、例えば同期用のプリアンブルを除いたり、ペイロードにおいて暗号化されている部分を復号したりする処理を行う。そして、上位機器インタフェース部102は、認証通知または拒否通知のフレームの処理後のデータを情報受信処理部103に出力する。
また、情報受信処理部103は、上位機器インタフェース部102からのデータの入力を、認証通知または拒否通知の受信というトリガの発生として検出し、トリガの検出を情報送信処理部104に通知する。すると、情報送信処理部104は、ステップS103で設定したタイマを無効化し、再送用に保持していた認証用情報または認証要求のフレーム用のデータを破棄する。
なお、タイマに設定される上記所定の時間は、ネットワーク204の構成、認証サーバ202のスループット、もしくは路側機201の設置間隔などに応じて適切に決められているものとする。ネットワーク204の構成と認証サーバ202のスループットは、認証のためのラウンドトリップタイムに影響する。
また、例えば、認証サーバ202が宛先の路側機201を決めるのに用いる上記の「所定の範囲」を規定する距離あるいは道のりは、路側機201の設置間隔を考慮して決められてもよい。そして、上記の「所定の範囲」を規定する距離あるいは道のりを、適宜に想定された平均的な車速で移動するのにかかる時間が、例えば30秒であるとする。すると、タイマに設定されるのに適切な時間は、30秒以上の時間である。つまり、タイマに設定されるのに適切な時間は、路側機201の設置間隔を間接的に考慮に入れて決められてもよい。
タイマに適切な時間が設定されれば、認証通知または拒否通知の受信というトリガは、もし発生するならば、例外的な場合を除いて、タイマがタイムアウトする前に発生することになる。以下では、タイマに設定される時間は予め適切に決められているものとする。
他方、ステップS103において車載装置100と路側機201との間の通信品質が良好でなければ、ステップS103で上位機器インタフェース部102から送信された認証要求のフレームは、どの路側機201にも受信されず、認証サーバ202にも到達しない。この場合、当然、認証サーバ202が認証処理を行うこともなく、認証通知または拒否通知が認証サーバ202から車載装置100へと送信されることもない。
例えば、車両305がまだ駐車場304に位置しているときにステップS103が実行された場合、車両305の付近(つまり車両305に搭載された車載装置100と無線通信が可能な範囲内)には路側機201が存在しない。よって、車載装置100はどの路側機201との間の通信品質も良好とは言えず、送信された認証要求は認証サーバ202に到達しない。
よって、この場合は、情報送信処理部104がステップS103でタイマに設定した時間以内に認証通知のフレームも拒否通知のフレームも受信されずに、タイマがタイムアウトする。そして、情報送信処理部104はタイムアウトをトリガの発生として検出する。例えば、タイムアウトが検出された時点で、車両305は、既に駐車場304から出て交差点302e付近を走行しているかもしれない。
以上のようにして、情報送信処理部104がトリガの発生を、情報受信処理部103からの通知またはタイマのタイムアウトにより認識すると、処理はステップS105に移行する。
そして、ステップS105で情報送信処理部104は、トリガとして検出されたイベントの種類を判断する。検出されたトリガが拒否通知の受信であれば、図4の処理が終了し、検出されたトリガが認証通知の受信であれば、処理はステップS106に移行する。また、検出されたトリガがタイムアウトであれば、処理はステップS103に戻る。
以上のステップS103〜S105の処理により、通信環境が悪ければ必要に応じて認証要求のフレームの再送が繰り返される。よって、いずれは結局、認証通知と拒否通知のいずれかの受信がトリガとして検出される。
つまり、ステップS101で入力された図形が正当な図形であれば、遅かれ早かれ認証通知の受信がトリガとして検出され、処理がステップS106に移行する。また、ステップS101で入力された図形が不正な図形であれば、遅かれ早かれ拒否通知の受信がトリガとして検出され、図4の処理が終了する。
ステップS106〜S111の処理は、次回の認証に備えて鍵情報の更新を認証サーバ202に要求し、鍵情報を更新するための処理である。
ステップS106で情報送信処理部104は、地図情報と車速から推測される通信品質が良好であるか否かを判断する。なお、第1実施形態では、車両状態判定部108が地図情報と車速から車両305の状態を判定し、通信品質は車両305の状態から推測される。
具体的には、車載装置100が搭載されている車両305が信号機の付近で停車していると見なせる状態か否かを車両状態判定部108が判定する。
つまり、車両状態判定部108は、格納部105から地図情報を読み出し、外部センサ110からの出力が示す車両305の位置との距離が閾値D以下の範囲に信号機があるか否かを、地図情報から判定する。そして、車両状態判定部108は、車両305の位置との距離が閾値D以下の範囲に信号機があれば、「車両305は信号機の付近にある」と判定し、車両305の位置との距離が閾値D以下の範囲に信号機がなければ、「車両305は信号機の付近にはない」と判定する。閾値Dは、上位機器インタフェース部102が良好な通信品質で路側機201との間で無線通信を行うことが可能な距離に基づいて決められる。
なお、この例に限らず、閾値との比較は、実施形態により「閾値を超えるか、それとも閾値以下か」でもよいし、「閾値以上か、それとも閾値未満か」でもよく、適宜方針を定めることができる。
また、車両状態判定部108は、外部センサ110からの出力が示す車速と閾値Vを比較し、車速が閾値V以下であれば「車両305は停止していると見なせる」と判定し、車速が閾値Vを超えていれば「車両305は停止しているとは見なせない」と判定する。なお、閾値Vはゼロでもよいし、小さな正の値でもよい。
そして、車両状態判定部108は、「車両305は信号機の付近にあり、かつ停止していると見なせる」という条件が成立するか否かを判定し、判定結果を情報送信処理部104に出力する。車両状態判定部108による判定結果は、以下の説明から明らかなように、ある種のフレームの送信のタイミングを車両305の状態に応じて制御するためのタイミング制御情報として利用される。
なお、車両状態判定部108は、例えば定期的に車両305の状態を判定し、判定のたびに判定結果を情報送信処理部104に出力してもよい。あるいは、ステップS106において、車両305の状態の判定を行うよう情報送信処理部104が車両状態判定部108に明示的な指示を与え、車両状態判定部108が指示にしたがって車両305の状態を判定してもよい。いずれにしろ、車両状態判定部108は、車両305が信号機の付近で停止していると見なせる状態か否かを示す情報を、情報送信処理部104に出力する。
そして、車両状態判定部108から「車両305が信号機の付近で停止していると見なせる状態である」と示す情報が入力された場合、情報送信処理部104は、「通信品質が良好だろう」と推測する。逆に、車両状態判定部108から「車両305は信号機の付近で停止していると見なせる状態ではない」と示す情報が入力された場合、情報送信処理部104は、「通信品質が良好ではないだろう」と推測する。情報送信処理部104がこのような推測を行う理由は次のとおりである。
第1に、例えば図3の例のように、路側機201は信号機に取り付けられることが多い。よって、車両305が信号機の付近にあれば車両305の付近に路側機201が存在する場合が多い。つまり、車両305が信号機の付近にあれば、車載装置100と路側機201との間に通信品質の良い無線通信路を確立することができる蓋然性が高い。
第2に、無線通信においては、移動局の移動速度が速いほど通信路は不安定であり、通信断などが発生しやすい。他方、移動局が停止していれば、通信路は安定した通信品質を保ちやすい。しかも、車両305が信号機の付近で停止していれば、車両305は、赤信号のために停止している蓋然性が高く、信号機が赤の間しばらくは動かないと推測される。つまり、通信が途中で切断されるおそれがあまりない。
したがって、上記の第1と第2の理由から、車両305が信号機の付近で停車した状態であれば、車両305と路側機201との間に、フレームの受信が完了するまでにかかる時間の間、通信品質の良好な無線通信路が安定的に確立される蓋然性が高い。つまり、車載装置100と路側機201の間の通信が成功する蓋然性が高い。
また、付加的な第3の理由として、カーナビゲーション装置などのための既存の地図情報は信号機の位置を示す情報を含むことが多いことが挙げられる。つまり、車両305が信号機の付近に存在するか否かという判定のためには、既存の地図情報を流用することが可能であり、地図情報作成のための初期コストは不要である。コストの抑制は車載装置100の普及にとって有利な点である。
さて、以上のようにしてステップS106において情報送信処理部104は、通信品質を推測する。そして、情報送信処理部104は、通信が成功する蓋然性の高いタイミングを見計らって通信を行うために、推測される通信品質が良好になるまで待機する。推測される通信品質が良好であれば、処理はステップS107に移行する。
ステップS107の処理は、推測される通信品質が良好なとき、すなわち路側機201との通信に成功する蓋然性の高いときに実行される。
具体的には、ステップS107で情報送信処理部104は、鍵情報の更新を認証サーバ202に要求するための鍵情報更新要求のフレーム用のデータ(例えばヘッダとペイロード)を生成し、生成したデータを上位機器インタフェース部102に出力する。そして、情報送信処理部104は、フレームの送信を上位機器インタフェース部102に命じる。すると、上位機器インタフェース部102は命令にしたがって、必要に応じてフレームの先頭にプリアンブルを付加するなどの処理を行い、鍵情報更新要求のフレームを送信する。
このように、ステップS107において情報送信処理部104と上位機器インタフェース部102は、協働して、更新要求を生成する第2の生成手段として機能する。また、車両状態判定部108と情報送信処理部104と上位機器インタフェース部102は、協働して、車載装置100を搭載した車両305の状態に基づいたタイミングで無線通信により更新要求を送信する送信手段としても機能する。つまり、車両状態判定部108と情報送信処理部104は、送信手段の一部としてタイミングの制御を行い、上位機器インタフェース部102は、送信手段の一部としてフレームの送信を実現する。
また、情報送信処理部104は、フレームの送信を上位機器インタフェース部102に命じた後、タイマをタイムアウト検出用の所定の時間に設定する。なお、フレームの再送に備えて、情報送信処理部104は、生成した鍵情報更新要求のフレーム用のデータを保持してもよい。
また、ステップS107でタイマに設定される値は、ステップS103でタイマに設定される値と同じでもよいし、違っていてもよいが、適切な値が定められているものとする。つまり、ステップS107でタイマに設定される値も、ネットワーク204の構成、認証サーバ202のスループット、路側機201の設置間隔などに応じて適切に決められているものとする。
続いて、ステップS108で情報送信処理部104は、後続の処理を行うためのトリガとなるイベントの発生を待つ。そして、トリガとなるイベントが発生すると、処理はステップS109に移行する。本実施形態ではステップS108でトリガとなるイベントには、鍵情報更新通知の受信とタイムアウトの2種類があり、具体的には以下のようにして検出される。
ステップS107で上位機器インタフェース部102から送信された鍵情報更新要求は、車載装置100と路側機201との間の通信品質が良好であれば、路側機201とネットワーク204を介して、認証サーバ202に到達する。その場合、詳しくは図5とともに後述するが、認証サーバ202は車載装置100用の新たな鍵情報を生成し、新たな鍵情報を含む鍵情報更新通知を車載装置100に返信する。
そして、鍵情報更新通知は、ネットワーク204と路側機201を介して車載装置100に到達し、上位機器インタフェース部102において受信される。
すると、上位機器インタフェース部102は受信した鍵情報更新通知のフレームのデータ(例えばヘッダとペイロード)を情報受信処理部103に出力する。つまり、上位機器インタフェース部102と情報受信処理部103は、協働して、更新要求に応じて無線通信により送信される新たな鍵情報を受信する受信手段として機能する。また、情報受信処理部103は、上位機器インタフェース部102からのデータの入力を、鍵情報更新通知の受信というトリガの発生として検出し、トリガの検出を情報送信処理部104に通知する。
すると、情報送信処理部104は、ステップS107で設定したタイマを無効化する。また、情報送信処理部104は、もし再送用に鍵情報更新要求のフレーム用のデータを保持しているのであれば、鍵情報更新要求のフレーム用のデータを破棄する。
例えば、ステップS106において、「車両305が信号機303hの付近で停止していると見なせる」と車両状態判定部108が判定したとする。すると、特に遮蔽物などがなければ、ステップS107で送信された鍵情報更新要求のフレームは、信号機303hに取り付けられた路側機201hにおいて成功裡に受信される。
すると、鍵情報更新要求が路側機201hからネットワーク204を介して認証サーバ202に送信されるので、認証サーバ202は、新たな鍵情報を生成し、路側機201hに鍵情報更新通知を送信する。よって、車両305がしばらく信号機303hの付近にとどまっていれば、車載装置100は路側機201hから鍵情報更新通知のフレームを受信することができる。
あるいは、車載装置100が鍵情報更新要求のフレームを送信した直後に車両305が動き出してしまい、鍵情報更新通知を受信しないうちに(あるいは受信の途中で)路側機201hと無線通信が可能な範囲から車載装置100が出てしまうこともありうる。しかし、そのような場合にも、車載装置100は鍵情報更新通知のフレームを受信することができることがある。
なぜなら、第1に、認証サーバ202は、路側機201hだけでなく、例えば路側機201kなどの路側機201hの近くの他の路側機201にも、鍵情報更新通知を送信するからである。そして、第2に、路側機201は、認証通知または拒否通知のフレームの場合と同様に他の種別のフレームの場合でも、所定の長さの期間にわたり適宜の間隔でフレームの送信を繰り返すからである。例えば、車両305が信号機303kの付近まで来たときに、ステップS108で上位機器インタフェース部102が鍵情報更新通知のフレームを路側機201kから受信することもある。
他方、ステップS106における「通信品質が良好であろう」という推測にもかかわらず、実際の通信品質が良好ではない場合、ステップS107で送信された鍵情報更新要求のフレームは、どの路側機201にも受信されない。よって、鍵情報更新要求は認証サーバ202に到達しない。
例えば、車両305が交差点302cで停止しているとき、車両状態判定部108は、「車両305は信号機303dの付近で停止していると見なせる」と判定する。その結果、情報送信処理部104は、「通信品質は良好であろう」と推測する。しかし、図3のように信号機303dには路側機201が取り付けられていないので、ステップS107で送信された鍵情報更新要求のフレームは、どの路側機201にも受信されない。
よって、この場合は、情報送信処理部104がステップS107でタイマに設定した時間以内に鍵情報更新要求のフレームが受信されることなく、タイマがタイムアウトする。そして、ステップS108において情報送信処理部104はタイムアウトをトリガの発生として検出する。
以上のようにして、情報送信処理部104がトリガの発生を、情報受信処理部103からの通知またはタイマのタイムアウトにより認識すると、処理はステップS109に移行する。
そして、ステップS109で情報送信処理部104は、トリガとして検出されたイベントの種類を判断する。検出されたトリガが鍵情報更新通知の受信であれば、処理はステップS110に移行する。また、検出されたトリガがタイムアウトであれば、処理はステップS106に戻る。
以上のステップS106〜S109の処理により、情報送信処理部104は、通信環境が良さそうなタイミングを見計らって鍵情報更新要求のフレームを送信するための制御を行う。そして、たとえ情報送信処理部104による通信品質の推測が間違っていたとしても、必要に応じて鍵情報更新要求のフレームの再送が繰り返される。よって、いずれは結局、鍵情報更新通知の受信がトリガとして検出される。
なお、ほとんどの信号機に路側機201が取り付けられているような、路側機201が十分に整備された環境においては、ステップS106における推測が当たる確率が高い。そして、ステップS106における推測が正しい場合、タイムアウト用の時間が適切に設定されていれば、ステップS108でトリガとしてタイムアウトが検出されることはほとんどない。よって、路側機201が十分に整備された環境においては、フレームの再送はあまり生じず、ステップS106の処理により無線リソースの無駄な消費を抑えることができる。
さて、次のステップS110では、情報受信処理部103が、ステップS108で上位機器インタフェース部102から出力された鍵情報更新通知から新たな鍵情報を取り出し、格納部105に格納されている現在の鍵情報を新たな鍵情報で上書き更新する。
具体的には、新たな鍵情報には新たな乱数情報が含まれるので、情報受信処理部103は格納部105内の乱数情報を新たな乱数情報で上書きする。また、細分化エリア情報が可変の場合は、新たな鍵情報には新たな細分化エリア情報が含まれるので、情報受信処理部103は格納部105内の細分化エリア情報を新たな細分化エリア情報で上書きする。
そして、次のステップS111で情報送信処理部104は、鍵情報を更新したことを認証サーバ202に通知するための鍵情報受領通知のフレーム用のデータ(例えばヘッダとペイロード)を生成し、生成したデータを上位機器インタフェース部102に出力する。さらに、情報送信処理部104は、フレームの送信を上位機器インタフェース部102に命じる。
すると、上位機器インタフェース部102は命令にしたがって必要に応じてフレームの先頭にプリアンブルを付加するなどの処理を行い、鍵情報受領通知のフレームを送信する。そして、図4の処理は終了する。
なお、ステップS110とS111の実行順は逆でもよい。あるいは、ステップS110とS111の処理が並行して行われてもよい。
また、鍵情報更新通知のフレームが受信可能ということは、上位機器インタフェース部102がいずれかの路側機201と通信可能ということである。そして、鍵情報更新通知のフレームの受信からステップS111の実行までの時間は非常に短い。さらに、一種の制御フレームである鍵情報更新通知のフレーム長は短いので、より長いフレームの送受信には失敗する場合であっても、鍵情報更新通知のフレームの送受信は成功することも大いにありうる。
よって、第1実施形態では、「鍵情報更新通知のフレームの受信の直後に送信される鍵情報受領通知のフレームは、成功裡に路側機201において受信され、認証サーバ202に鍵情報受領通知が届く」と仮定している。まれにこの仮定が成立しない場合の対策については、後述の(f12)の観点からの変形例として述べる。
続いて、第1実施形態における認証サーバ202の動作を説明する。認証サーバ202は、任意のタイミングで任意の車載装置100から任意の路側機201を介して情報を受信する可能性があり、情報の受信を契機として各種処理を行う。
図5は、第1実施形態において、認証サーバ202が車載装置100から情報を受信したときの処理のフローチャートである。なお、図5に関する説明においては、図5の処理の開始の契機となった情報の送信元の車載装置100を「送信元の車載装置100」という。
ステップS201で認証サーバ202は、送信元の車載装置100から路側機201とネットワーク204を介して受信した情報の内容が、認証要求、鍵情報更新要求、鍵情報受領通知のいずれであるかを判断する。
上記のとおり、路側機201は、認証サーバ202に送信するIPパケットのペイロードに、送信元の車載装置100から路側機201が受信したフレームの種別を示す種別情報を含める。よって、認証サーバ202は、ネットワーク204を介して路側機201から受信したIPパケットから種別情報を取り出して、種別情報に基づいてステップS201の判断を行うことができる。
認証要求が受信された場合、処理はステップS202に移行する。鍵情報更新要求が受信された場合、処理はステップS208に移行する。また、鍵情報受領通知が受信された場合、処理はステップS211に移行する。
ステップS202で認証サーバ202は、認証要求に含まれる認証用情報からパスワードを取り出す。
具体的には、認証サーバ202は、ネットワーク204を介して路側機201から受信した認証要求のIPパケットから、送信元の車載装置100の車載装置IDと認証用情報を取り出す。また、認証サーバ202は、必要に応じて、送信元の車載装置100の車載装置IDと対応づけて「認証利用版」として記憶している鍵情報を読み出す。
なお、後述のステップS208およびS211とも関連するが、認証サーバ202は、各車載装置100の車載装置IDと対応づけて、「最新送信版」と「認証利用版」の鍵情報を記憶する。その理由は、認証サーバ202が単に新たな鍵情報を含む鍵情報更新通知を送信するだけでは、「鍵情報更新通知が車載装置100で正常に受信されて、認証サーバ202と車載装置100の間で新たな鍵情報が共有される」とは保証されないからである。
そこで、認証サーバ202は、車載装置100との間での共有が確認された鍵情報を認証利用版として記憶するとともに、車載装置100に送信済みだが車載装置100との間での共有がまだ確認されていない鍵情報を最新送信版として記憶する。よって、ステップS202で認証サーバ202が参照するのは、認証利用版の鍵情報である。
ステップS202において認証サーバ202はさらに、必要に応じて鍵情報を使い、認証用情報からパスワードを取り出す。なお、「パスワード」とは、具体的には下記(c1)〜(c3)いずれかの情報のことである。
(c1)画面乱数処理部107が式(1)により認証用情報αを生成することに決められている場合は、パスワードは、上記(b3)に示した〈areat(1),areat(2),……,areat(m)〉というエリアの並びを示す情報である。例えば、パスワードは、各エリアareat(1),areat(2),……,areat(m)を識別するID(あるいは行と列の組)の並びとして表されてもよい。
この場合、認証サーバ202は、認証要求のIPパケットから認証用情報αを取り出し、送信元の車載装置100の車載装置IDと対応づけて認証利用版として記憶している鍵情報を読み出す。ここで、上記のとおり、式(1)の関数fAは、認証用情報αから元の引数を一意に求めることができるように定義されている。よって、認証サーバ202は、認証用情報αから関数fAのm個の引数(すなわちm個のランダムな値)randt(1),……,randt(m)を求めることができる。
そして、認証サーバ202は、読み出した鍵情報を用いて、求めたm個のランダムな値randt(1),……,randt(m)にそれぞれ対応するエリアareat(1),areat(2),……,areat(m)を特定する。以上の処理により、認証サーバ202はパスワードを得ることができる。
(c2)画面乱数処理部107が式(2)により認証用情報αを生成することに決められている場合は、パスワードは、上記(b4)に示した〈passt(1),passt(2),……,passt(m)〉という時間の並びである。
この場合、認証サーバ202は、認証要求のIPパケットから認証用情報αを取り出す。上記のとおり、式(2)の関数fBは、認証用情報αから元の引数を一意に求めることができるように定義されている。よって、認証サーバ202は、認証用情報αから関数fBのm個の引数passt(1),passt(2),……,passt(m)を求めることができる。つまり、認証サーバ202はパスワードを得ることができる。
(c3)画面乱数処理部107が式(3)により認証用情報αを生成することに決められている場合は、パスワードは、上記(c1)と(c2)の組み合わせである。つまり、パスワードは上記(b3)に示した〈areat(1),areat(2),……,areat(m)〉というエリアの並びを示す情報と上記(b4)に示した〈passt(1),passt(2),……,passt(m)〉という時間の並びの組み合わせである。
上記のとおり、式(3)の関数fCは、認証用情報αから元の引数を一意に求めることができるように定義されている。よって、認証サーバ202は、認証用情報αから関数fCの2m個の引数randt(1),passt(1),……,randt(m),passt(m)を求めることができる。そして、認証サーバ202は、求めた2m個の引数のうちで奇数番目に当たるm個のランダムな値randt(1),……,randt(m)にそれぞれ対応するエリアareat(1),areat(2),……,areat(m)を、読み出した鍵情報を用いて特定する。以上の処理により、認証サーバ202はパスワードを得ることができる。
以上のように、パスワードが(c1)〜(c3)のいずれの情報であれ、認証サーバ202はステップS202でパスワードを取り出すことができる。そして、次のステップS203で認証サーバ202は、受信した情報が経由してきた路側機201(以下「送信元路側機」という)とその近傍の路側機201(以下「送信元近傍路側機」という)を、返信時の中継点として選択する。
具体的には、認証サーバ202は、受信した認証要求のIPパケットのヘッダから、送信元IPアドレスを取り出す。送信元IPアドレスには、車載装置100からの認証要求を中継した送信元路側機のIPアドレスが設定されているので、こうして認証サーバ202は送信元路側機を特定することができる。
また、認証サーバ202は、どの路側機201同士が近傍にあるのかを表す路側機配置情報を保持している。よって、認証サーバ202は、路側機配置情報を参照することで、送信元近傍路側機を特定することができる。なお、送信元近傍路側機は複数台のこともある。路側機配置情報は、例えば下記(d1)〜(d3)のいずれかであってもよい。
(d1)路側機配置情報は、路側機201のIPアドレスに対応づけて、各路側機201の位置を、例えば緯度と経度の組により示す情報でもよい。その場合、認証サーバ202は、送信元路側機の位置からの距離が所定の閾値以下の位置にある路側機201を送信元近傍路側機として特定し、送信元近傍路側機のIPアドレスを得ることができる。例えば、送信元路側機が図3の路側機201cであり、路側機201cからの距離が所定の閾値以下の位置にあるのが路側機201bのみであれば、認証サーバ202は、路側機201bのみを送信元近傍路側機として特定する。
(d2)路側機配置情報は、上記(d1)の情報に加えてさらに、道路地図の情報を含んでいてもよい。その場合、認証サーバ202は、送信元路側機からの道路沿いの道のりが所定の閾値以下となる路側機201を送信元近傍路側機として特定してもよい。例えば、送信元路側機が図3の路側機201cであり、路側機201cからの道のりが所定の閾値以下となるのが路側機201bのみであれば、認証サーバ202は、路側機201bのみを送信元近傍路側機として特定してもよい。
または、認証サーバ202は、「送信元路側機からの道路に沿った経路上に通信可能範囲が重なる他の路側機201の個数が所定の閾値Q以下」という条件を満たす路側機201を、送信元近傍路側機として特定してもよい。例えば、送信元路側機が図3の路側機201cであり、Q=0とする。その場合、図3が示すように、送信元近傍路側機の条件を満たすのは、路側機201b、201g、および201hである。
例えば、路側機201cから路側機201hまでの経路上には、他の路側機201が設置されておらず、他の路側機201の通信可能範囲も重なっていない。よって、路側機201hは上記の条件を満たす。
また、道路301a上には、路側機201cと路側機201kの間に他の路側機201はない。しかし、交差点302e付近の路側機201hの通信可能範囲が、路側機201cから路側機201kまでの経路上に一部重なるので、路側機201kは上記の条件を満たさない。
(d3)路側機配置情報は、任意の2つの路側機201について互いに近傍にあるか否かを示す情報であってもよい。また、路側機配置情報において、各路側機201はIPアドレスにより識別されていてもよい。各路側機201は固定されているので、任意の2つの路側機201について互いに近傍にあるか否かを示す情報を、例えば認証サーバ202が予め作成することも可能である。
つまり、認証サーバ202は、任意の2つの路側機201間の距離もしくは道のり、または2つの路側機201間の道路沿いの経路上に通信可能範囲が重なる他の路側機201の個数を所定の閾値と比較してもよい。そして、認証サーバ202は比較結果に基づいて、当該2つの路側機201同士が近傍にあるか否かを判断し、判断の結果を路側機配置情報として記憶してもよい。
以上の(d1)〜(d3)に例示したように、路側機配置情報は実施形態によって様々であってよいが、いずれにせよ認証サーバ202は、路側機配置情報を参照することで送信元近傍路側機を特定することができる。そして、認証サーバ202は、送信元路側機と送信元近傍路側機を、返信時の中継点として選択する。
なお、ステップS202とS203は実行順が逆でもよい。あるいは、認証サーバ202はステップS202とS203の処理を並行して行ってもよい。
続いて、次のステップS204で認証サーバ202は、ステップS202で取り出したパスワードが正しいか否かを判断する。パスワードが正しい場合、処理はステップS205に移行し、パスワードが正しくない場合、処理はステップS207に移行する。認証サーバ202は、例えば適宜のパターンマッチングアルゴリズムを用いてパスワード照合を行うこともできる。
すなわち、認証サーバ202は、各車載装置100の車載装置IDに対応づけて、当該車載装置100のユーザにより予め登録された図形の軌跡情報を記憶している。よって、認証サーバ202は、記憶している軌跡情報と、車載装置IDに対応づけて認証利用版として記憶している鍵情報内の細分化エリア情報から、正しいパスワードを認識することができる。
つまり、認証サーバ202は、ステップS202で取り出した車載装置IDに対応づけてそれぞれ記憶している軌跡情報と細分化エリア情報から、当該軌跡情報が表す軌跡上を移動する点が、どのエリアをどういう順序で通過するのかを認識することができる。また、認証サーバ202は、当該軌跡情報が表す軌跡上を移動する点が、各エリアを通過するのにかかる時間も、軌跡情報と細分化エリア情報から認識することができる。したがって、認証サーバ202は、正しいパスワードを表すエリアの並び、時間の並び、またはその組み合わせを取得することができる。
そこで、認証サーバ202はステップS204において、正しいパスワードと、ステップS202で取り出したパスワードを比較する。比較に際しては、認証サーバ202は適宜のパターンマッチングアルゴリズムを用いることができる。
図形的な情報の入力においては、図形の描き出し位置が入力のたびに少々ずれたり、入力される図形の大きさに揺れがあったり、入力スピードに揺れがあったりするのが普通である。よって、認証サーバ202は、一定範囲内のずれまたは揺れを誤差として許容するために、適宜のパターンマッチングアルゴリズムを用いることができる。つまり、認証サーバ202は、パスワード同士をパターン同士として、適宜のパターンマッチングアルゴリズムにより比較する。
比較の結果、両パスワードが許容範囲内の誤差で一致すれば、認証サーバ202は、「ステップS202で取り出したパスワードが正しい」と判断する。逆に、両パスワードが許容範囲内の誤差で一致しなければ、認証サーバ202は、「ステップS202で取り出したパスワードは不正である」と判断する。
なお、実施形態によっては、書き順を反映した軌跡ではなく、図形の形状だけに基づいて認証サーバ202がパスワード照合を行ってもよい。つまり、式(1)によって認証用情報αを得る実施形態において、パスワードは、{areat(1),areat(2),……,areat(m)}というエリアの集合(正確には重複を許す多重集合)を示す情報であってもよい。すると、軌跡が各エリアを通過する順序は無視され、形状のみがパスワード照合において考慮される。なぜなら、集合を示す情報では要素の並び順が無視されるからである。
さて、ステップS204において「パスワードは正しい」と判断した場合、次のステップS205で認証サーバ202は、送信元の車載装置100へのサービス提供者である交通管制サーバ203に、ネットワーク204を介して、認証結果を知らせる。すなわち、認証サーバ202は、「送信元の車載装置100の車載装置IDについて認証が成功した」ということを交通管制サーバ203に通知する。
そして、次のステップS206で認証サーバ202は、ネットワーク204とステップS203で選択した路側機201とを介して、送信元の車載装置100へ認証通知を返信する。
具体的には、認証サーバ202は、ステップS203で中継点として選択した送信元路側機と送信元近傍路側機のそれぞれについて、以下の処理を行う。すなわち、認証サーバ202は、当該中継点となる路側機201のIPアドレスを送信先IPアドレスとして設定し、送信元の車載装置100の認証に成功したことを示す情報をペイロードに設定したIPパケットを生成する。そして、認証サーバ202は、生成したIPパケットをネットワーク204へ送出する。なお、送信元の車載装置100の認証に成功したことを示す情報は、送信元の車載装置100の車載装置IDを含む。
以上のようにして、中継点として選択した送信元路側機と送信元近傍路側機それぞれへのIPパケットの送信が完了すると、図5の処理も終了する。
また、ステップS204において「パスワードが不正である」と判断した場合、認証サーバ202は、ステップS207において、ネットワーク204とステップS203で選択した路側機201とを介して、送信元の車載装置100へ拒否通知を返信する。つまり、認証サーバ202は、送信元の車載装置100の認証に失敗したことを示す情報をペイロードに設定する以外はステップS206と同様の処理を行う。なお、送信元の車載装置100の認証に失敗したことを示す情報も、送信元の車載装置100の車載装置IDを含む。
そして、ステップS207において、以上のようにして、中継点として選択した送信元路側機と送信元近傍路側機それぞれへのIPパケットの送信が完了すると、図5の処理は終了する。
また、受信したIPパケットが鍵情報更新要求のIPパケットであった場合、認証サーバ202はステップS208において、新たな鍵情報を作成する。そして、認証サーバ202は、送信元の車載装置100の車載装置IDと対応づけて、作成した鍵情報を最新送信版として記憶する。なお、認証サーバ202は、鍵情報更新要求のIPパケットのペイロードから車載装置IDを取り出し、認識することができる。
また、実施形態に応じて、認証サーバ202は、ステップS208において細分化エリア情報と乱数情報の双方を新たに作成してもよいし、一方のみを新たに作成してもよい。例えば、認証サーバ202が細分化エリア情報のみを新たに作成する場合、新たな鍵情報とは、現在認証利用版として記憶している乱数情報と、新たに作成した細分化エリア情報の組み合わせである。また、認証サーバ202が乱数情報のみを新たに作成する場合、新たな鍵情報とは、現在認証利用版として記憶している細分化エリア情報と、新たに作成した乱数情報の組み合わせである。
続いて、次のステップS209で認証サーバ202は、ステップS203と同様に、受信した情報が経由してきた路側機201とその近傍の路側機201を、返信時の中継点として選択する。
さらに、続くステップS210で認証サーバ202は、ネットワーク204とステップS209で選択した路側機201とを介して、最新送信版の鍵情報を送信元の車載装置100に返信する。つまり、認証サーバ202は、最新送信版の鍵情報と送信元の車載装置100の車載装置IDを含む情報をペイロードに設定する以外はステップS206と同様の処理を行う。
そして、ステップS210において、以上のようにして、中継点として選択した送信元路側機と送信元近傍路側機それぞれへのIPパケットの送信が完了すると、図5の処理は終了する。
また、受信したIPパケットが鍵情報受領通知のIPパケットであった場合、認証サーバ202はステップS211において、送信元の車載装置100の車載装置IDに対応する認証利用版の鍵情報を更新する。つまり、認証サーバ202は、送信元の車載装置100の車載装置IDに対応する最新送信版の鍵情報を、当該車載装置IDに対応する認証利用版の鍵情報としてコピーする。なお、認証サーバ202は、鍵情報受領通知のIPパケットのペイロードから車載装置IDを取り出し、認識することができる。
ステップS211の処理により、認証サーバ202は、「送信元の車載装置100に対して認証サーバ202が最新送信版として以前送信した鍵情報を、送信元の車載装置100が確かに受信した」と認識することができる。つまり、認証サーバ202は、「送信元の車載装置100が将来再度認証要求を送信してくる場合に、認証のためには、認証利用版の鍵情報としてコピーした最新送信版の鍵情報を使えばよい」と認識することができる。そして、最新送信版の鍵情報のコピーの後、図5の処理は終了する。
続いて、図6〜8Bを参照して、上記の車載装置100と認証サーバ202の動作の説明における各種情報の具体例を説明する。
さて、図6と7は、乱数とエリアの対応づけの例を示す図である。図6と7では、「鍵情報に含まれる細分化エリア情報と乱数情報が、エリアを介してどのように対応づけられるのか」ということが模式的に示されている。図6と7ではさらに、「画面と鍵情報がエリアを介してどのように対応づけられるのか」ということも、模式的に示されている。
図6には、鍵情報401を模式的に図示した説明図と、画面と鍵情報の対応づけ402の例が示されている。
鍵情報401は、乱数情報のバージョンを示す“R20091231103547”という値と、細分化エリア情報のバージョンを示す“S20091231103547”という値を含む。なお、乱数情報と細分化エリア情報のバージョンは、認証サーバ202が図5のステップS208で鍵情報401を生成するときに割り当てられる。例えば生成日時に基づく値を使うことで、認証サーバ202は鍵情報の生成のたびに異なる値をバージョンとして割り当てることができる。また、実施形態によっては、乱数情報と細分化エリア情報のバージョンとして共通の値が使われてもよい。
さらに、鍵情報401は、水平方向に5列、垂直方向に8行の、計40(=5×8)個のエリアに画面を等分することを示す細分化エリア情報と、40個の4桁の乱数を40個のエリアそれぞれに対応づける乱数情報を含む。鍵情報401によれば、例えば3行目の2列目のエリアには、1882という乱数が対応づけられている。
また、図4のステップS101において、以上のように40個のエリアに細分化される画面上で、軌跡403を描くように三角形が入力されたとする。図6によれば、軌跡403は、1行目の1列目のエリアから始まり、2行目の1列目のエリア、3行目の1列目のエリア、3行目の2列目のエリア、2行目の2列目のエリア、2行目の1列目のエリアを経由し、1行目の1列目のエリアで終わる。よって、画面エリア判定部106は、軌跡403を示す軌跡情報と、鍵情報401に含まれる細分化エリア情報から、「軌跡403を描いて移動する点は、上記の延べ7つのエリアを順に通過する」と判定することができる。
そして、軌跡403が通過する上記の延べ7つのエリアにそれぞれ乱数情報において対応づけられている延べ7つの乱数は、図6によれば、順に、2615、3673、5732、1882、9433、3673、2615である。
なお、以下では説明の便宜上、入力された軌跡を描いて移動する点が上記の延べ7つのエリアの各々を通過するのにかかった時間が、順に、0.3秒、0.4秒、0.6秒、1.0秒、0.4秒、0.2秒、0.1秒であったとする。よって、画面エリア判定部106は、軌跡403を示す軌跡情報と、鍵情報401に含まれる細分化エリア情報から、軌跡403を描いて移動する点が上記の延べ7つのエリアをそれぞれ通過するのにかかった時間が上記のとおりであったことも認識する。
もちろん、画面上には40個のエリアに細分化する分割線や各乱数は表示されないが、図6では説明の便宜上、画面上の軌跡403と鍵情報401との対応づけを、画面と鍵情報の対応づけ402として図示してある。
以上の図6の例を、(b1)〜(b4)の表記を用いて表すと、以下の式(4)〜(18)のとおりである。
m=7 (4)
randt(1)=2615 (5)
randt(2)=3673 (6)
randt(3)=5732 (7)
randt(4)=1882 (8)
randt(5)=9433 (9)
randt(6)=3673 (10)
randt(7)=2615 (11)
passt(1)=0.3 (12)
passt(2)=0.4 (13)
passt(3)=0.6 (14)
passt(4)=1.0 (15)
passt(5)=0.4 (16)
passt(6)=0.2 (17)
passt(7)=0.1 (18)
例えば、画面乱数処理部107が式(1)の関数fAにより認証用情報αを求める実施形態において、関数fAが、所定のデリミタ“−”で区切りながらm個の引数を連結する関数であるとする。この場合、式(4)〜(11)より、図6の鍵情報401と軌跡403から得られる認証用情報αは、式(19)のとおりである。
α=“2615−3673−5732−1882−9433−3673−2615”
(19)
なお、式(19)から明らかなとおり、認証サーバ202は、式(19)で表される認証用情報αから、認証用情報αを得るのに用いた関数fAの7つの引数の値を一意に得ることができる。具体的には、認証サーバ202は、認証用情報αを所定のデリミタ“−”で分割するだけで、関数fAの7つの引数の値(すなわち式(5)〜(11)に示した7つの値)を得ることができる。
また、画面乱数処理部107が式(2)の関数fBにより認証用情報αを求める実施形態において、関数fBが、m個の各引数を所定の関数gで変換した結果を、所定のデリミタ“−”で区切りながら連結する関数であるとする。そして、関数gは、秒単位で表された数値を100倍して切り捨てにより整数に変換し、得られた整数を4桁の数字で表す関数であるとする。この場合、式(4)、(12)〜(18)より、図6の鍵情報401と軌跡403から得られる認証用情報αは、式(20)のとおりである。
α=“0030−0040−0060−0100−0040−0020−0010”
(20)
なお、式(20)から明らかなとおり、認証サーバ202は、式(20)で表される認証用情報αから、認証用情報αを得るのに用いた関数fBの7つの引数の値を一意に得ることができる。具体的には、認証サーバ202は、認証用情報αを所定のデリミタ“−”で分割し、分割により得られる7つの文字列を関数gの逆関数g−1で変換することで、関数fBの7つの引数の値(すなわち式(12)〜(18)に示した7つの値)を得ることができる。
また、画面乱数処理部107が式(3)の関数fCにより認証用情報αを求める実施形態において、関数fCが、奇数番目の引数はそのままの文字列として、偶数番目の引数は関数gBで変換してから、デリミタ“−”で区切りながら連結する関数であるとする。そして、関数gBは、秒単位で表された数値を100倍して切り捨てにより整数に変換し、得られた整数を4桁の数字列で表す関数であるとする。この場合、式(4)〜(18)より、図6の鍵情報401と軌跡403から得られる認証用情報αは、式(21)のとおりである。
α=“2615−0030−3673−0040−5732−0060−1882−0100−9433−0040−3673−0020−2615−0010”
(21)
なお、式(21)から明らかなとおり、認証サーバ202は、式(21)で表される認証用情報αから、認証用情報αを得るのに用いた関数fCの14個の引数の値を一意に得ることができる。具体的には、認証サーバ202は、認証用情報αを所定のデリミタ“−”で分割し、分割により得られる14個の値のうち偶数番目の文字列をそれぞれ関数gBの逆関数gB −1で変換する。すると、認証サーバ202は、関数fCの14個の引数の値(すなわち式(5)〜(18)に示した14個の値)を得ることができる。
また、上記の式(19)〜(21)の例から容易に理解されるように、認証用情報αは、人間が見ても一貫性を感じにくく覚えにくい内容となっており、かつ、適切な鍵情報と適切な関数fA、fBまたはfCを使うことで、十分に長くすることができる。このような認証用情報αの性質は、セキュリティの観点から見て好ましい性質である。そして、ユーザ自身は、長くて複雑かつ不規則な認証用情報αそのものを記憶する必要がないので、ユーザにとっての利便性が損なわれることはない。
続いて、図7に示す別の具体例についても説明する。図7には、水平方向に5列、垂直方向に4行の、計20(=5×4)個のエリアに画面を細分化することを示す細分化エリア情報が使われる場合の例が示されている。図7の例では、乱数情報により、例えば3行目の4列目のエリアには、9496という乱数が対応づけられている。
図7に示すように、「水平方向に5列、垂直方向に4行の、計20(=5×4)個のエリアに画面を細分化する」という点では同じでも、細分化エリア情報の具体的内容によって、20個のエリアの大きさが違うことがある。
例えば、図7の上半分に示した画面と鍵情報の対応づけ404の図では、細分化エリア情報が、20個のエリアをすべて同じ大きさに定義している。よって、画面と鍵情報の対応づけ404によれば、軌跡405は、4行目の4列目、3行目の4列目、4行目の4列目、4行目の5列目、3行目の5列目、3行目の4列目、4行目の4列目、4行目の5列目、3行目の5列目という延べ9個のエリアを通過する。
他方、図7の下半分に示した画面と鍵情報の対応づけ406の図では、20個のエリアの間で大きさの違いがあるように、細分化エリア情報が細分化の仕方を規定している。具体的には、細分化エリア情報により、1〜2行目の高さは3〜4行目の高さより高く定義され、1列目の幅は2〜5列目より広く定義されている。換言すれば、細分化エリア情報は、3〜4行目の2〜5列目の8個のエリアが他の12個のエリアよりも小さくなるように画面の細分化の仕方を規定している。
そして、画面と鍵情報の対応づけ406によれば、軌跡405と同じ軌跡407が通過するエリアは、4行目の3列目、3行目の3列目、3行目の4列目、4行目の4列目、3行目の4列目、4行目の4列目、4行目の5列目、3行目の5列目という延べ8個である。
すなわち、細分化エリア情報が異なれば、同じ軌跡405と407でも、画面エリア判定部106による判定結果が異なり、したがって、得られる認証用情報αも異なる。そして、図7の例では行数と列数は変わらないが、もちろん、行数、列数、またはエリアの形状が異なる細分化エリア情報が使われれば、同じ軌跡でも画面エリア判定部106による判定結果が異なる。
例えば、あるユーザに対応して登録されている図形が、軌跡405や407のように、画面の右下に固まっているとする。あるいは、あるユーザに対応して登録されている図形が、画面の右下以外の部分にも広がってはいるが、画面の右下において相対的に複雑な形状であり、右下以外の部分において相対的に簡単な形状であるとする。
その場合、例えば画面と鍵情報の対応づけ406として図7に例示されているような、画面の右下のエリアを小さく定義する細分化エリア情報が好適である。なぜなら、もし逆に画面の右下のエリアが大きいとすれば、他の図形との区別がつかなくなる(あるいは区別がつきづらくなる)からである。
例えば、画面の右下のエリアを大きく定義する細分化エリア情報が使われると、軌跡407は、最下行の最右列にある1つのエリアしか通過しないかもしれない。すると、画面の最下行の最右列にある1つのエリアの範囲内に収まる図形であれば、たとえ軌跡407とはまったく異なる形状の図形が入力されても、「入力される軌跡はどのエリアを通過したか」という点ではまったく軌跡407と区別がつかない。そのため、画面乱数処理部107が認証用情報αを例えば式(1)によって求める場合は、軌跡407を描く図形が入力されるか軌跡407とはまったく異なる図形が入力されるかにかかわらず、まったく同じ認証用情報αが得られるおそれがある。
よって、あるユーザに対応して登録されている図形が、画面内の特定の部分(例えば右下の部分)に固まっていたり、特定の部分において他の部分よりも複雑であったりする場合には、特定の部分のエリアを小さく定義する細分化エリア情報が好ましい。つまり、ユーザごとの図形の特徴を判別するのに十分な程度に細かな粒度で、特定の部分においてエリアを細分化する細分化エリア情報が使われることが好ましい。
続いて、車載装置100と路側機201との間で送受信されるフレームの具体例を説明する。
図8Aと8Bは、フレームの例を説明する図である。図示の便宜のため、図8Aと8Bの双方に、第1実施形態におけるフレーム500一般の形式が示されている。フレーム500は、プリアンブルと、プリアンブルに続くヘッダと、ヘッダに続くペイロードを有する。
また、以下では、車載装置100から路側機201へ送信される方向を「UpLink(UL)方向」といい、逆方向を「DownLink(DL)」方向という。図8Aと8Bには、各フレームの横に、どちらの方向に送信されるフレームなのかを示す文字が示されている。
プリアンブルは、無線通信路で送受信されるフレーム500の先頭に同期用に付加される所定パターンのビット列である。
また、ヘッダには、データマップ情報と車載装置IDが含まれる。データマップ情報は、フレーム500のどの位置に何のフィールドのデータがあるかを示す情報である。
例えば、ペイロード内の各フィールドの長さがフレーム500の種別ごとに固定されている実施形態では、データマップ情報としては、フレーム500の種別を示す値が利用可能である。あるいは、可変長のフィールドがペイロードに含まれる実施形態では、フレーム500の種別を示す値と、可変長のフィールドの長さを示す値がデータマップ情報に含まれてもよい。
車載装置IDは、フレーム500がDL方向に送信される場合は送信先の車載装置100を指定するフィールドとして使われる。また、フレーム500がUL方向に送信される場合は、車載装置IDは送信元の車載装置100を表すフィールドとして使われる。
そして、ペイロードには、平文の部分と暗号化された部分があり、フレーム500の種別に応じて一部のフィールドは省略可能である。平文の部分には公開DL情報が含まれ、暗号化された部分には、認証フラグと、秘密DL情報と、乱数情報と、細分化エリア情報と、秘密UL情報が含まれる。なお、実施形態によっては、ペイロードのすべてのフィールドが暗号化されていてもよい。
また、暗号化方式は任意だが、例えば車載装置100ごとに固有の暗号化鍵を利用した対称鍵暗号化方式が利用可能である。車載装置100ごとに固有の暗号化鍵は、予め決められた固定されたものでもよいし、適宜の鍵交換アルゴリズムにしたがって適宜のタイミングで更新されるものでもよい。
公開DL情報は、DL方向に送信されるフレーム500の場合に使われる。公開DL情報は、車載装置100宛の、秘密にする必要のないオープンな情報である。公開DL情報の具体的内容は実施形態に応じて任意だが、例えば、公開DL情報は、渋滞が生じている地点に関する情報、交通規制に関する情報、天気予報に関する情報などを含んでもよい。
認証フラグは2ビットのフィールドである。1ビット目は、認証プロセス自体と関係のあるフレーム500か否かを示し、認証プロセス自体と関係がある場合の値は“0”、認証プロセス自体と関係がない場合の値は“1”である。例えば、認証に成功した後に、認証済みの車載装置100に対して送信されるフレーム500では、認証フラグの1ビット目の値は“1”である。また、認証フラグの2ビット目は、“0”のとき、認証が済んでいないか認証に失敗したことを示し、“1”のとき、認証に成功したことを示す。なお、フレーム500の種別は、データマップ情報と認証フラグの一方または双方から判別可能である。
ペイロード内のその他のフィールドは、フレーム500の種類に応じて具体的な内容が異なるので、詳細は後述する。また、図8Aと8Bでは省略されているが、実施形態によっては、ペイロードの後にさらに、例えば誤り検出のためのFrame Check Sequence(FCS)あるいは電子署名などのトレイラがあってもよい。
以上のようなフレーム500には、具体的には以下のような様々な種類がある。なお、図8Aと8Bにおいて、使われないフィールドは斜線で示されている。
さて、図8Aの認証要求501は、例えば、図4のステップS103で送信される。認証要求501は、所定パターンのビット列が指定されたプリアンブルに続いて、ヘッダとして、認証要求501におけるフィールドの配置を示すデータマップ情報と、車載装置IDを含む。また、図8Aの認証要求501は、“123456789”という車載装置IDを持つ車載装置100から送信される場合の例である。
認証要求501はUL方向に送信されるフレーム500なので、認証要求501において公開DL情報は使われない。また、図8Aの認証要求501では、暗号化されるフィールドのうちでは、認証フラグと秘密UL情報以外のフィールドは使われない。
なお、認証要求501は、認証プロセス自体に関係があり、まだ認証が済んでいないときに認証を要求するために送信されるので、認証要求501における認証フラグの値は“00”である。そして、秘密UL情報には、秘密の情報である認証用情報が設定される。
また、認証通知502は、認証に成功したときに、認証に対する肯定応答(acknowledgement;ACK)としてDL方向に送信され、例えば図4のステップS104で受信される。認証通知502は、所定パターンのビット列が指定されたプリアンブルに続いて、ヘッダとして、認証通知502におけるフィールドの配置を示すデータマップ情報と、車載装置IDを含む。また、図8Aの認証通知502は、“123456789”という車載装置IDを持つ車載装置100の認証に成功した場合の例である。
認証通知502は、DL方向に送信されるフレーム500なので、公開DL情報を含んでいてもよい。もちろん、公開DL情報は省略されてもよい。
なお、認証通知502は、認証プロセス自体に関係があり、認証に成功したときに送信されるので、認証通知502における認証フラグの値は“01”である。そして、ペイロード内の他のフィールドは、認証通知502では省略される。
また、拒否通知503は、認証に失敗したときに、認証に対する否定応答(negative acknowledgement;NACK)としてDL方向に送信され、例えば図4のステップS104で受信される。拒否通知503は、所定パターンのビット列が指定されたプリアンブルに続いて、ヘッダとして、拒否通知503におけるフィールドの配置を示すデータマップ情報と、車載装置IDを含む。また、図8Aの拒否通知503は、“123456789”という車載装置IDを持つ車載装置100の認証に失敗した場合の例である。
拒否通知503は、DL方向に送信されるフレーム500なので、公開DL情報を含んでいてもよい。もちろん、公開DL情報は省略されてもよい。
なお、拒否通知503は、認証プロセス自体に関係があり、認証に失敗したときに送信されるので、拒否通知503における認証フラグの値は“00”である。そして、ペイロード内の他のフィールドは、拒否通知503では省略される。
また、鍵情報更新要求504は、例えば図4のステップS107において、鍵情報の更新を要求するためにUL方向に送信される。鍵情報更新要求504は、所定パターンのビット列が指定されたプリアンブルに続いて、ヘッダとして、鍵情報更新要求504におけるフィールドの配置を示すデータマップ情報と、車載装置IDを含む。また、図8Aの鍵情報更新要求504は、“123456789”という車載装置IDを持つ車載装置100が鍵情報の更新を要求する場合の例である。
鍵情報更新要求504はUL方向に送信されるフレーム500なので、鍵情報更新要求504において公開DL情報は使われない。また、図8Aの鍵情報更新要求504では、認証フラグ以外のペイロード内のフィールドは使われない。
なお、鍵情報更新要求504は、認証が成功した後に送信されるものであり、認証プロセス自体とは関係がない。よって、鍵情報更新要求504における認証フラグの値は“11”である。
また、鍵情報更新通知505は、例えば図4のステップS108で受信される。鍵情報更新通知505は、所定パターンのビット列が指定されたプリアンブルに続いて、ヘッダとして、鍵情報更新通知505におけるフィールドの配置を示すデータマップ情報と、車載装置IDを含む。また、図8Aの鍵情報更新通知505は、“123456789”という車載装置IDを持つ車載装置100に新たな鍵情報が通知される場合の例である。
鍵情報更新通知505は、DL方向に送信されるフレーム500なので、公開DL情報を含んでいてもよい。もちろん、公開DL情報は省略されてもよい。
なお、鍵情報更新通知505は、認証が成功した後に送信されるものであり、認証プロセス自体とは関係がない。よって、鍵情報更新通知505における認証フラグの値は“11”である。
そして鍵情報更新通知505のペイロードのうち、乱数情報のフィールドには新たな乱数情報が設定され、細分化エリア情報のフィールドには新たな細分化エリア情報が設定される。ペイロード内の他のフィールドは、鍵情報更新通知505では省略される。
また、鍵情報受領通知506は、例えば図4のステップS111において、新たな鍵情報を受領したことを認証サーバ202に通知するためにUL方向に送信される。鍵情報受領通知506は、所定パターンのビット列が指定されたプリアンブルに続いて、ヘッダとして、鍵情報受領通知506におけるフィールドの配置を示すデータマップ情報と、車載装置IDを含む。また、図8Aの鍵情報受領通知506は、“123456789”という車載装置IDを持つ車載装置100が新たな鍵情報を受領した場合の例である。
鍵情報受領通知506はUL方向に送信されるフレーム500なので、鍵情報受領通知506において公開DL情報は使われない。
なお、鍵情報受領通知506は、認証が成功した後に送信されるものであり、認証プロセス自体とは関係がない。よって、鍵情報受領通知506における認証フラグの値は“11”である。
そしてペイロードのうち、乱数情報のフィールドには、受領した新たな乱数情報のバージョンが設定され、細分化エリア情報のフィールドには受領した新たな細分化エリア情報のバージョンが設定される。ペイロード内の他のフィールドは、鍵情報受領通知506では省略される。
なお、情報送信処理部104は、格納部105内の鍵情報を参照することで鍵情報のバージョンを認識することもできるし、情報受信処理部103が情報送信処理部104に新たな鍵情報のバージョンを通知してもよい。よって、情報送信処理部104は、図4のステップS111において、細分化エリア情報と乱数情報のバージョンを含むデータを、鍵情報受領通知506用のデータとして上位機器インタフェース部102に出力することができる。
そして、鍵情報受領通知506が図8Bの鍵情報受領通知506のように新たな鍵情報のバージョンを示す情報を含む場合は、図5のステップS211で認証サーバ202は、バージョンの確認を行ってもよい。
つまり、認証サーバ202は、最新送信版として保持している鍵情報のバージョンと、受信した鍵情報受領通知506に含まれるバージョンが一致するか否かを確認してもよい。そして、認証サーバ202は、バージョンが一致すれば最新送信版の鍵情報を認証利用版の鍵情報としてコピーし、逆に、バージョンが不一致であれば適宜のエラー処理を行ってもよい。
例えば、認証サーバ202は、エラー処理として、最新送信版の鍵情報を含む鍵情報更新通知を車載装置100に再送してもよい。そして、車載装置100は、自ら送信した鍵情報更新要求504に対する直接の返信としてではなくエラー処理の結果として再送されてくる鍵情報更新通知505に関しても、受信を契機として図4のステップS110およびS111と同様の処理を行ってもよい。
また、図8Bサービス中通信507は、認証に成功した後に交通管制サーバ203から車両305が受けるサービスにおいて、DL方向に送信されるフレーム500である。なお、サービスを受けるためのクライアントは、車載装置100に含まれていてもよいし、車載装置100と同じ車両305に搭載された車載装置100以外の装置であってもよい。後者の場合、サービス中通信507の受信とサービス中通信508の送信は、クライアントたる装置が行ってもよい。
サービス中通信507は、所定パターンのビット列が指定されたプリアンブルに続いて、ヘッダとして、サービス中通信507におけるフィールドの配置を示すデータマップ情報と、車載装置IDを含む。また、図8Bのサービス中通信507は、“123456789”という車載装置IDで識別されるアカウントに対するサービスにおいて送信されるフレーム500の例である。
サービス中通信507は、DL方向に送信されるフレーム500なので、サービス中通信507は公開DL情報を含んでいてもよい。図8Bには、サービス中通信507における公開DL情報の例として、渋滞、事故、交通規制などについて示す一般的交通情報を示してある。
なお、サービス中通信507は、認証が成功した後に送信されるものであり、認証プロセス自体とは関係がない。よって、サービス中通信507における認証フラグの値は“11”である。
そして、ペイロードのうち秘密DL情報のフィールドには、交通管制サーバ203からのサービスに関する情報が含まれる。図8Bのサービス中通信507は、具体的には、警察車両、消防車、救急車などの緊急車両向けのサービスにおいて送信されるフレーム500の例である。
よって、サービス中通信507の秘密DL情報のフィールドには、交通管制サーバ203により信号が青に制御される経路を案内するための緊急車両用案内情報が設定されている。また、ペイロード内の他のフィールドは、サービス中通信507では省略される。もちろん、サービスの内容に応じて、秘密DL情報のフィールドの内容も様々であってよい。
また、サービス中通信508は、認証に成功した後に交通管制サーバ203から車両305がサービスを受けるためにUL方向に送信されるフレーム500である。サービス中通信508は、所定パターンのビット列が指定されたプリアンブルに続いて、ヘッダとして、サービス中通信508におけるフィールドの配置を示すデータマップ情報と、車載装置IDを含む。また、図8Bのサービス中通信508は、“123456789”という車載装置IDで識別されるアカウントに対するサービスにおいて送信されるフレーム500の例である。
サービス中通信508は、UL方向に送信されるフレーム500なので、サービス中通信508において公開DL情報は使われない。
なお、サービス中通信508は、認証が成功した後に送信されるものであり、認証プロセス自体とは関係がない。よって、サービス中通信508における認証フラグの値は“11”である。
そして、ペイロードのうち秘密UL情報のフィールドが使われ、他のフィールドは省略される。図8Bには、サービスを受けるにあたってユーザの個人情報(例えばクレジットカード番号などでもよい)が秘密UL情報として設定される場合の例が示されている。もちろん、秘密UL情報は個人情報以外の情報であってもよい。
なお、図8Bの認証要求兼更新要求509と認証通知兼更新通知510は、第2実施形態で使われるフレーム500である。また、位置通知511は、第3実施形態で使われるフレーム500である。よって、これら3種類のフレーム500についての詳細な説明はここでは省略し、後述する。
さて、続いて図9〜10を参照して、第1実施形態との違いを中心に、第2実施形態について説明する。第2実施形態では、図8Aの認証要求501と鍵情報更新要求504の役割を兼ねる図8Bの認証要求兼更新要求509が使われ、図8Aの認証通知502と鍵情報更新通知505の役割を兼ねる図8Bの認証通知兼更新通知510が使われる。
図9は、第2実施形態における車載装置の動作のフローチャートである。
ステップS301で情報受信処理部103は、図4のステップS101と同様にして、画面インタフェース部101を介した図形の入力を受け付け、軌跡情報を生成し、軌跡情報を画面エリア判定部106に出力する。
そして、次のステップS302で車載装置100は、図4のステップS102と同様にして、入力された図形から得られる軌跡情報と、格納部105に予め記憶されている鍵情報とを使って、認証用情報を生成する。
つまり、細分化エリア情報と軌跡情報に基づいて画面エリア判定部106は上記(a1)、(a2)、または(a1)と(a2)の双方を判定し、判定結果を画面乱数処理部107に出力する。そして、画面乱数処理部107は、格納部105から乱数情報を読み出し、画面エリア判定部106による判定結果と乱数情報から認証用情報を作成する。あるいは、画面乱数処理部107は、乱数情報を使わずに画面エリア判定部106による判定結果から、認証用情報を作成してもよい。いずれにせよ、画面乱数処理部107は生成した認証用情報を情報送信処理部104に出力する。
すると、次のステップS303で情報送信処理部104は、図4のステップS106と同様に、地図情報と車速から推測される通信品質が良好であるか否かを判断する。具体的には、車両状態判定部108が「車載装置100が搭載されている車両305が信号機の付近で停止していると見なせる状態か否か」ということを判定する。
そして、車両状態判定部108から「車両305が信号機の付近で停止していると見なせる状態である」と示す情報が入力された場合、情報送信処理部104は、「通信品質が良好だろう」と推測する。逆に、車両状態判定部108から「車両305は信号機の付近で停止していると見なせる状態ではない」と示す情報が入力された場合、情報送信処理部104は、「通信品質が良好ではないだろう」と推測する。そして、情報送信処理部104は、推測される通信品質が良好になるまで待機する。推測される通信品質が良好であれば、処理はステップS304に移行する。
ステップS304で情報送信処理部104は、認証と鍵情報の更新をあわせて認証サーバ202に要求するための認証要求兼更新要求のフレーム用のデータ(例えばヘッダとペイロード)を生成し、生成したデータを上位機器インタフェース部102に出力する。そして、情報送信処理部104は、フレームの送信を上位機器インタフェース部102に命じる。すると、上位機器インタフェース部102は命令にしたがって、必要に応じて暗号化やプリアンブルの付加などの処理を行い、認証要求兼更新要求のフレームを送信する。
ステップS304で送信される認証要求兼更新要求のフレームは、例えば、図8Bの認証要求兼更新要求509のような形式である。認証要求兼更新要求509は、図8Aの認証要求501と鍵情報更新要求504の役割を兼ねる。
具体的には、認証要求兼更新要求509は、所定パターンのビット列が指定されたプリアンブルに続いて、ヘッダとして、認証要求兼更新要求509におけるフィールドの配置を示すデータマップ情報と、車載装置IDを含む。図8Bの認証要求兼更新要求509は、“123456789”という車載装置IDを持つ車載装置100から送信される場合の例である。
認証要求兼更新要求509はUL方向に送信されるフレーム500なので、認証要求兼更新要求509において公開DL情報は使われない。また、図8Bの認証要求兼更新要求509ではペイロードのフィールドのうちでは認証フラグと秘密UL情報以外のフィールドは使われない。
なお、認証要求兼更新要求509は認証プロセス自体に関係があり、まだ認証が済んでいないときに送信されるので、認証要求兼更新要求509における認証フラグの値は、認証要求501と同様に“00”である。そして、秘密UL情報には、秘密の情報である認証用情報が認証要求501と同様に設定される。
さて、ここで図9の説明に戻る。ステップS304において、認証要求兼更新要求のフレームの送信を上位機器インタフェース部102に命じた後、情報送信処理部104は、タイマをタイムアウト検出用の所定の時間に設定する。なお、フレームの再送に備えて、情報送信処理部104は、認証用情報または認証要求兼更新要求のフレーム用のデータを保持する。また、第1実施形態における想定と同様に、第2実施形態においても、ステップS304でタイマに設定される値は、ネットワーク204の構成、認証サーバ202のスループット、路側機201の設置間隔などに応じて適切に定められているものとする。
続いて、ステップS305で情報送信処理部104は、後続の処理を行うためのトリガとなるイベントの発生を待つ。そして、トリガとなるイベントが発生すると、処理はステップS306に移行する。本実施形態ではステップS305でトリガとなるイベントには認証通知兼更新通知の受信と、拒否通知の受信と、タイムアウトの3種類があり、具体的には以下のようにして検出される。
ステップS304で上位機器インタフェース部102から送信された認証要求兼更新要求のフレームは、車載装置100と路側機201との間の通信品質が良好であれば、路側機201に受信される。そして、認証要求兼更新要求は、路側機201からネットワーク204を介して、認証サーバ202に送信される。
そして、認証要求兼更新要求が認証サーバ202に到達すると、認証サーバ202は認証要求兼更新要求に含まれる認証用情報と車載装置IDに基づいて認証処理を行い、認証用情報が正当な情報か不正な情報かを判断する。認証サーバ202による認証処理と判断は、図5のステップS202およびS204と同様である。また、認証サーバ202は図5のステップS203と同様に、返信時の中継点となる路側機201の選択も行う。
そして、認証用情報が正当な情報であると判断した場合、認証サーバ202は、図5のステップS205と同様に交通管制サーバ203に対して認証結果を知らせ、図5のステップS208と同様に新たな鍵情報を作成して最新送信版として記憶する。そして、認証サーバ202は、認証通知兼更新通知を作成し、選択した路側機201に宛てて送信する。他方、認証用情報が不正な情報であると判断した場合、認証サーバ202は図5のステップS207と同様にして、選択した路側機201に宛てて拒否通知を送信する。
そして、認証通知兼更新通知または拒否通知は、ネットワーク204と路側機201を介して車載装置100に到達し、上位機器インタフェース部102において受信される。例えば、上位機器インタフェース部102において受信される拒否通知は、第1実施形態における図8Aの拒否通知503と同様である。また、上位機器インタフェース部102において受信される認証通知兼更新通知は、例えば図8Bに示す認証通知兼更新通知510のような形式である。
図8Bの認証通知兼更新通知510は、図8Aの認証通知502と鍵情報更新通知505の役割を兼ねる。具体的には、認証通知兼更新通知510は、所定パターンのビット列が指定されたプリアンブルに続いて、ヘッダとして、認証通知兼更新通知510におけるフィールドの配置を示すデータマップ情報と、車載装置IDを含む。図8Bの認証通知兼更新通知510は、“123456789”という車載装置IDを持つ車載装置100の認証に成功し、当該車載装置100に新たな鍵情報を通知する場合の例である。
認証通知兼更新通知510は、DL方向に送信されるフレーム500なので、公開DL情報を含んでいてもよい。もちろん、公開DL情報は省略されてもよい。
なお、認証通知兼更新通知510は、認証プロセス自体に関係があり、認証に成功したときに送信されるので、認証通知兼更新通知510における認証フラグの値は認証通知502と同様に“01”である。
そして、認証通知兼更新通知510では、鍵情報更新通知505と同様に、ペイロードのうち、乱数情報のフィールドには新たな乱数情報が設定され、細分化エリア情報のフィールドには新たな細分化エリア情報が設定される。ペイロード内の他のフィールドは、認証通知兼更新通知510では省略される。
さて、認証通知兼更新通知または拒否通知を上位機器インタフェース部102が受信すると、上位機器インタフェース部102は認証通知兼更新通知または拒否通知のデータを情報受信処理部103に出力する。そして、情報受信処理部103は、上位機器インタフェース部102からのデータの入力を、認証通知兼更新通知または拒否通知の受信というトリガの発生として検出し、トリガの検出を情報送信処理部104に通知する。すると、情報送信処理部104は、ステップS304で設定したタイマを無効化し、再送用に保持していた認証用情報または認証要求兼更新要求のフレーム用のデータを破棄する。
他方、ステップS303における「通信品質が良好であろう」という推測にもかかわらず、実際の通信品質が良好ではない場合、ステップS304で送信された認証要求兼更新要求のフレームは、どの路側機201にも受信されない。よって、認証要求兼更新要求は認証サーバ202には到達しない。よって、この場合は、情報送信処理部104がステップS304でタイマに設定した時間以内に認証通知兼更新通知のフレームが受信されることなく、タイマがタイムアウトする。そして、ステップS305において情報送信処理部104はタイムアウトをトリガの発生として検出する。
以上のようにして、情報送信処理部104がトリガの発生を、情報受信処理部103からの通知またはタイマのタイムアウトにより認識すると、処理はステップS306に移行する。
そして、ステップS306で情報送信処理部104は、トリガとして検出されたイベントの種類を判断する。検出されたトリガが拒否通知の受信であれば、図9の処理が終了し、検出されたトリガが認証通知兼更新通知の受信であれば、処理はステップS307に移行する。また、検出されたトリガがタイムアウトであれば、処理はステップS303に戻る。
以上のステップS303〜S306の処理により、通信環境が悪ければ必要に応じて認証要求兼更新要求のフレームの再送が繰り返される。よって、いずれは結局、認証通知兼更新通知と拒否通知のいずれかの受信がトリガとして検出される。
つまり、ステップS301で入力された図形が正当な図形であれば、遅かれ早かれ認証通知兼更新通知の受信がトリガとして検出され、処理がステップS307に移行する。また、ステップS301で入力された図形が不正な図形であれば、遅かれ早かれ拒否通知の受信がトリガとして検出され、図9の処理が終了する。
そして、認証通知兼更新通知の受信がトリガとして検出された場合、ステップS307で情報受信処理部103が、図4のステップS110と同様にして鍵情報の更新を行う。すなわち、情報受信処理部103は、ステップS305で上位機器インタフェース部102から出力された認証通知兼更新通知から新たな鍵情報を取り出し、格納部105に格納されている現在の鍵情報を新たな鍵情報で上書き更新する。
そして、次のステップS308で車載装置100は、図4のステップS111と同様にして鍵情報受領通知のフレームを送信する。つまり、情報送信処理部104が鍵情報受領通知のフレーム用のデータ(例えばヘッダとペイロード)を生成し、生成したデータを上位機器インタフェース部102に出力し、上位機器インタフェース部102にフレームの送信を命じる。そして、上位機器インタフェース部102は命令にしたがって、必要に応じて暗号化やプリアンブルの付加などの処理を行い、鍵情報受領通知のフレームを送信し、図9の処理が終了する。
なお、ステップS307とS308の実行順は逆でもよい。あるいは、ステップS307とS308の処理が並行して行われてもよい。また、鍵情報受領通知を受信したときに認証サーバ202が行う処理は第1実施形態と同様である。
以上説明した第2実施形態では、第1実施形態と比較して車載装置100と認証サーバ202の間のトラフィックが少ない。よって、ネットワーク204の負荷が第1実施形態よりも軽くて済む。
続いて、図9の処理の具体例について図10を参照して説明する。図10は、第2実施形態で認証に成功する場合のタイミングチャートの例である。
ステップS401において、ユーザが、図3の駐車場304に駐車されている車両305のエンジンをかけ、車載装置100の電源をオンにする。すると、車載装置100は図9の処理を開始する。
続くステップS402は、図9のステップS301に相当する。ステップS402でユーザが予め決められた図形を入力し、車載装置100は画面インタフェース部101を介して図形の入力を受け付ける。
そして、次のステップS403は図9のステップS302に相当し、車載装置100は認証用情報を生成する。
ところで、ユーザは、ステップS401での図形の入力後は、運転に専念することができる。よって、車載装置100がステップS403で認証用情報を生成するのと並行して、ユーザは車両305を運転して駐車場304から道路301dに向かっているかもしれない。
具体的には、図10の例では、ユーザの運転操作にしたがって車両305は次の経路に沿って移動するものとする。すなわち、車両305は、駐車場304から道路301dに出た後、交差点302bに向かい、交差点302bを右折し、次の交差点302cも右折し、さらに次の交差点302dを左折するものとする。
上記の経路に沿って車両305が移動する場合、図3に示すとおり、車両305にとって初めて近傍を通過することになる信号機は、交差点302bの信号機303cである。また、図10の例では、車両305が、交差点302bを右折する前に一時停止したとする。
すると、車両305が停止した際に、図9のステップS303において情報送信処理部104が「地図情報と車速から推測される通信品質が良好である」と判断する。よって、図10にステップS404として示すように、車載装置100は図9のステップS304で図8Bの認証要求兼更新要求509を送信する。
そして、図3に示すように交差点302bに設置された信号機303cには、路側機201cが取り付けられている。よって、ステップS404で送信された認証要求兼更新要求509は、ステップS405において路側機201cに無事に受信される。
すると、路側機201cは、受信した認証要求兼更新要求509から、認証サーバ202宛の認証要求兼更新要求のIPパケットを生成し、生成したIPパケットをネットワーク204に送出する。具体的には、路側機201cは、認証要求兼更新要求509から車載装置IDの値と秘密UL情報として設定された認証用情報を取り出してIPパケットのペイロードに含める。また、路側機201cは、送信元IPアドレスに路側機201c自身のIPアドレスを設定し、送信先IPアドレスに認証サーバ202のIPアドレスを設定する。
なお、路側機201cは、送信するIPパケットが認証要求兼更新要求であることを示すため、認証要求兼更新要求509からデータマップ情報を取り出してIPパケットのペイロードに含めてもよい。あるいは、路側機201cは、認証要求兼更新要求という種別を示す特定の値をIPパケットのペイロードに含めてもよい。
以上のようにして路側機201cで生成されたIPパケットは、ネットワーク204を介して認証サーバ202に送信され、ステップS406で認証サーバ202において受信される。すると、認証サーバ202はIPパケットのペイロードから、車載装置100の車載装置IDと認証用情報を取り出し、認証処理を行う。図10の例は、認証に成功する場合の例である。また、認証サーバ202は図5のステップS203と同様に返信時の中継点となる路側機201の選択を行う。
そして、次のステップS407で認証サーバ202は、認証通知兼更新通知のIPパケットを生成し、送信する。
具体的には、認証サーバ202は、送信元路側機が路側機201cであると認識する。また、認証サーバ202は、上記(d1)〜(d3)に例示したような路側機配置情報を保持している。図10の例では、認証サーバ202が路側機配置情報から、路側機201bと201gと201hを送信元近傍路側機として特定したとする。すると、認証サーバ202は、ステップS407で、送信元路側機と送信元近傍路側機のそれぞれに宛てて、認証通知兼更新通知のIPパケットを送信する。
そして、ステップS408において、路側機201gは、認証通知兼更新通知のIPパケットを受信し、受信したIPパケットに基づいて図8Bの認証通知兼更新通知510を送信する。
ここで、車両305は、上記の経路上を交差点302dの付近まで進んできたとする。すると、車両305に搭載されている車載装置100は、交差点302dに設置された信号機303gに取り付けられた路側機201gから送信された認証通知兼更新通知510を、ステップS409において受信する。つまり、ステップS409は、図9のステップS305においてトリガとして認証通知兼更新通知が検出される場合の例である。
なお、ステップS407で認証サーバ202から送信された認証通知兼更新通知のIPパケットは、ステップS410において、送信元近傍送信機である路側機201bに受信される。そして、路側機201bは認証通知兼更新通知510を送信する。しかし、車載装置100を搭載した車両305は路側機201bの付近にはないので、路側機201bが送信した認証通知兼更新通知510は車載装置100に受信されない。
同様に、ステップS407で認証サーバ202から送信された認証通知兼更新通知のIPパケットは、ステップS411において、送信元送信機である路側機201cに受信される。そして、路側機201cは認証通知兼更新通知510を送信する。
しかし、図10の例では、ステップS411の時点で、車載装置100を搭載した車両305は既にステップS404にいた位置から離れており、路側機201cとの通信範囲から出てしまっている。そのため、路側機201cが送信した認証通知兼更新通知510は車載装置100に受信されない。
また、ステップS407で認証サーバ202から送信された認証通知兼更新通知のIPパケットは、ステップS412において、送信元近傍送信機である路側機201hに受信される。そして、路側機201hは認証通知兼更新通知510を送信する。しかし、車載装置100を搭載した車両305は路側機201hの付近にはないので、路側機201hが送信した認証通知兼更新通知510は車載装置100に受信されない。
さて、車載装置100においては、ステップS409での認証通知兼更新通知510の受信を契機として、ステップS413において図9のステップS307の処理が行われる。すなわち、ステップS413で車載装置100は鍵情報を更新する。
そして、続くステップS414は図9のステップS308に相当し、ステップS414で車載装置100は、鍵情報受領通知506を送信する。なお、ステップS409からステップS414までの時間は、実際には非常に短いので、ステップS414の時点でも、車両305はまだ交差点302dの付近にあり、車載装置100は路側機201gの通信範囲内にある。
よって、ステップS414で送信された鍵情報受領通知506は、ステップS415で無事に路側機201gに受信される。そして、路側機201gは、ネットワーク204を介して鍵情報受領通知のIPパケットを認証サーバ202に送信する。
すると、ステップS416で認証サーバ202は、ステップS407で送信した認証通知兼更新通知に対する返信としての鍵情報受領通知を受信する。そして、認証サーバ202は図5のステップS211と同様に、最新送信版の鍵情報を認証利用版としてコピーする。
したがって、車両305がいずれ走行を終えて車載装置100の電源が切られ、次に再び車載装置100の電源が入れられたとき、車載装置100は認証に使うための新たな鍵情報を既に格納部105に保持していることになる。よって、次回の認証を行おうとする段になって改めて車載装置100が新たな鍵情報を要求する必要はない。
つまり、次に再び車載装置100の電源が入れられたとき、車載装置100は、格納部105に格納済みの鍵情報を用いて図9の処理を行うことができる。換言すれば、車載装置100への電源投入から認証結果の受信までの時間は、鍵情報の更新にかかる時間が含まれない分だけ、短くて済む。なお、この時間短縮の効果は、他の実施形態においても同様に得られる。
さて、続いて第3実施形態について、第1実施形態との違いを中心に説明する。第3実施形態は、無線通信路の通信品質に関して車載装置100ではなく認証サーバ202が推測を行う実施形態である。
つまり、第3実施形態における車載装置100は、UL方向のフレームの送信に関して、特に通信品質を考慮することなく単純にフレームの送信を行い、認証サーバ202からの返信がなければタイムアウトしてフレームを再送するだけである。他方、認証サーバ202は、車載装置100の位置を把握し、把握した位置に基づいて、車載装置100がいずれかの路側機201との間で無線通信可能な状態か否かを推測する。
具体的には、車載装置100は、車載装置100自身の位置を示す情報を位置通知として送信する。そして、認証サーバ202は、車載装置100から送信されてきた位置通知を利用して、車載装置100がいずれかの路側機201との間で無線通信可能な状態か否かを推測する。認証サーバ202は、推測結果にしたがい、車載装置100への鍵情報の送信のタイミングを決定し、送信時の中継点となる路側機201を選択する。
なお、車載装置100からの位置通知の送信は、定期的に行われてもよいし、不定期に行われてもよい。以下では説明の便宜上、車載装置100が、電源投入後から、認証に関する処理とは独立して、位置通知の送信を繰り返すものとする。
例えば、外部センサ110が位置センサを含む場合、車載装置100の情報送信処理部104は、位置センサから出力される位置情報(例えば緯度と経度の組)を含む位置通知のフレームのデータを定期的に作成してもよい。そして、情報送信処理部104は、上位機器インタフェース部102にフレームの送信を命じ、上位機器インタフェース部102が位置通知のフレームを送信してもよい。
あるいは、路側機201がビーコンフレームをブロードキャストしてもよい。そして、車載装置100がビーコンフレームの受信に反応して返すフレームが位置通知として使われてもよい。
なお、路側機201によるビーコンフレームの送信間隔は任意だが、路側機201は、例えば所定の間隔でビーコンフレームを送信してもよい。送信間隔は、例えば、信号機が赤の期間中に複数回の送信が行われる程度の間隔でもよい。
また、ビーコンフレームには、送信元の路側機201を識別する路側機識別情報が含まれてもよい。路側機識別情報は、例えば下記(e1)〜(e4)のような情報であり、認証サーバ202にも予め登録されている。
(e1)路側機201に予め割り当てられているID。
(e2)路側機201のIPアドレス。
(e3)路側機201の位置を示す緯度と経度の組。
(e4)上記(e1)〜(e3)のうち2つ以上の任意の組み合わせ。
例えば、車載装置100を搭載した車両305が図3の交差点302bを通過するとき、車載装置100は、路側機201cからのビーコンフレームを受信するかもしれない。そして、車両305が道路301aを直進して交差点302fに至り、そのとき信号機303kが赤になっていれば、車両305はしばらく停止し、車載装置100は路側機201kからのビーコンフレームを複数回受信するかもしれない。車載装置100は、具体的には以下のようにして、ビーコンフレームの受信のたびに位置通知のフレームを送信することができる。
すなわち、車載装置100において上位機器インタフェース部102は、ビーコンフレームを受信すると、ビーコンフレームに含まれる路側機識別情報を情報受信処理部103に出力する。すると、情報受信処理部103は路側機識別情報を情報送信処理部104に出力し、情報送信処理部104は路側機識別情報から位置通知のフレームのデータを生成する。そして、情報送信処理部104はフレームの送信を上位機器インタフェース部102に命じ、上位機器インタフェース部102はフレームを送信する。
以上のように、外部センサ110である位置センサの出力または路側機201からのビーコンフレームに含まれる路側機識別情報に基づいて、車載装置100は位置通知のフレームを送信することができる。車載装置100が送信する位置通知のフレームの具体例は、例えば、図8Bの位置通知511である。
位置通知511は、車載装置100の位置を認証サーバ202に通知するためにUL方向に送信される。位置通知511は、所定パターンのビット列が指定されたプリアンブルに続いて、ヘッダとして、位置通知511におけるフィールドの配置を示すデータマップ情報と、車載装置IDを含む。また、図8Bの位置通知511は、“123456789”という車載装置IDを持つ車載装置100が位置を通知する場合の例である。
位置通知511はUL方向に送信されるフレーム500なので、位置通知511において公開DL情報は使われない。
なお、位置通知511は、認証とは独立して送信されるので、認証フラグの2ビット目の値は便宜的に“0”に設定され、認証フラグ全体の値は“10”である。また、ペイロードのうち、秘密UL情報のフィールドには、車両305の位置を示す位置情報が設定される。位置情報は、外部センサ110である位置センサから出力される緯度と経度の組でもよいし、車両305の位置を近似的に示す路側機識別情報でもよい。ペイロード内の他のフィールドは、位置通知511では省略される。
以上のような位置情報を含む位置通知が路側機201により中継されると、認証サーバ202は位置情報から車載装置100の位置を把握することができる。あるいは、より単純に、認証サーバ202は次のようにして車載装置100の位置を把握してもよい。
すなわち、路側機201はビーコンフレームを送信する。このビーコンフレームには路側機識別情報が含まれなくてもよい。車載装置100は、ビーコンフレームを受信すると、ビーコンフレームの受信を通知する受信通知のフレームを、位置通知のフレームとして送信する。この場合、位置通知のフレームは、図8Bの位置通知511とは異なり、秘密UL情報を持たなくてもよい。その理由は次のとおりである。
もし位置通知のフレームが路側機201において無事受信されるならば、路側機201は位置通知を認証サーバ202に中継する。その際、位置通知のIPパケットの送信元IPアドレスとして、路側機201は路側機201自身のIPアドレスを設定する。すると、位置通知のIPパケットを受信した認証サーバ202は、送信元IPアドレスから、車載装置100がどの路側機201の近傍にいるときに位置通知のフレームを送信したのかを把握することができる。つまり、認証サーバ202は、送信元IPアドレスに基づいて、車載装置100の位置を路側機201の位置により近似して把握することができる。
よって、車載装置100が位置通知として送信するフレームおよび路側機201が位置通知として中継するIPパケットには、図8Bの位置通知511に含まれるような位置情報があってもよいし、なくてもよい。いずれにしろ、認証サーバ202は位置通知から車載装置100の位置を把握することができる。
以下、第3実施形態において車載装置100と認証サーバ202がそれぞれ行う処理について、図11〜12を参照してさらに詳しく説明する。
図11は、第3実施形態における車載装置の動作のフローチャートである。
ステップS501〜S505は、図4のステップS101〜S105とそれぞれ同じなので、説明を省略する。なお、検出されたトリガが拒否通知の受信であるとステップS505で判断されれば、図11の処理が終了し、検出されたトリガが認証通知の受信であれば、処理はステップS505からステップS506に移行する。また、検出されたトリガがタイムアウトであれば、処理はステップS505からステップS503に戻る。
以上のステップS501〜S505の処理により、通信環境が悪ければ必要に応じて認証要求のフレームの再送が繰り返される。よって、いずれは結局、認証通知と拒否通知のいずれかの受信がトリガとして検出される。
ステップS506で情報送信処理部104は、図4のステップS107と同様に、鍵情報更新要求のフレーム用のデータを生成し、生成したデータを上位機器インタフェース部102に出力する。そして、情報送信処理部104は、フレームの送信を上位機器インタフェース部102に命じる。すると、上位機器インタフェース部102は命令にしたがって、必要に応じて暗号化やプリアンブルの付加などの処理を行い、鍵情報更新要求のフレームを送信する。
また、情報送信処理部104は、フレームの送信を上位機器インタフェース部102に命じた後、タイマをタイムアウト検出用の所定の時間に設定する。なお、フレームの再送に備えて、情報送信処理部104は、鍵情報更新要求のフレーム用のデータを保持してもよい。また、タイムアウト検出用の時間の長さに関しては、ステップS508の説明の後で説明する。
続いて、ステップS507で情報送信処理部104は、後続の処理を行うためのトリガとなるイベントの発生を待つ。そして、トリガとなるイベントが発生すると、処理はステップS508に移行する。本実施形態ではステップS507でトリガとなるイベントには、鍵情報更新通知の受信とタイムアウトの2種類がある。
もしステップS506においていずれかの路側機201との間に良好な品質の無線通信路が確立されていれば、ステップS506で送信した鍵情報更新要求は認証サーバ202に到達する。その場合、タイムアウト検出用の所定の時間が適切に設定されていれば、タイマがタイムアウトする前に、上位機器インタフェース部102は鍵情報更新通知のフレームを受信する。
すると、上位機器インタフェース部102は受信した鍵情報更新通知のフレームのデータを情報受信処理部103に出力する。また、情報受信処理部103は、上位機器インタフェース部102からのデータの入力を、鍵情報更新通知の受信というトリガの発生として検出し、トリガの検出を情報送信処理部104に通知する。
すると、情報送信処理部104は、ステップS506で設定したタイマを無効化する。また、情報送信処理部104は、もし再送用に鍵情報更新要求のフレーム用のデータを保持しているのであれば、鍵情報更新要求のフレーム用のデータを破棄する。
他方、鍵情報更新通知の受信というトリガの発生が情報受信処理部103から通知される前にタイマがタイムアウトすると、情報送信処理部104は、ステップS507においてタイムアウトをトリガの発生として検出する。
以上のようにして、情報送信処理部104がトリガの発生を、情報受信処理部103からの通知またはタイマのタイムアウトにより認識すると、処理はステップS508に移行する。
ステップS508で情報送信処理部104は、トリガとして検出されたイベントの種類を判断する。検出されたトリガが鍵情報更新通知の受信であれば、処理はステップS509に移行する。また、検出されたトリガがタイムアウトであれば、処理はステップS506に戻る。
以上のステップS506〜S508の処理により、必要に応じて鍵情報更新要求のフレームの再送が繰り返される。よって、いずれは結局、鍵情報更新通知の受信がトリガとして検出される。なお、ステップS507でのタイムアウトの時間は、第1実施形態の図4のステップS107で設定されるタイムアウトの時間と同じでもよいし、それより長くてもよいし、それより短くてもよい。
例えば、車両305が走行している最中に車載装置100がステップS506で鍵情報更新要求504を送信することがある。その場合でも、鍵情報更新要求504はペイロードが非常に短いフレームなので、たまたま近傍に路側機201があれば、路側機201が鍵情報更新要求504の受信に成功することがある。すると、認証サーバ202に鍵情報更新要求が到達する。
他方、車両305はなかなか赤信号に遭遇せずに走行を続けるかもしれない。そして、鍵情報更新通知505のように、鍵情報更新要求504と比べてペイロードのデータ量が多く、フレーム長の長いフレームの受信が成功するのは、ある程度安定した良好な通信品質の通信環境においてである。よって、もし車両305が赤信号に遭遇せずに高速で走行し続けている場合、なかなか安定した良好な通信品質の通信環境にはならないかもしれない。
以上のような場合を考慮に入れて重視するならば、ステップS506で設定されるタイムアウトの時間は、ステップS107で設定されるタイムアウトの時間より長くてもよい。
逆に、「車両305が走行している最中に送信した鍵情報更新要求504を路側機201が偶然うまく受信するような場合は無視する」という方針も考えられる。この方針にしたがうならば、ステップS506で設定されるタイムアウトの時間は、ステップS107で設定されるタイムアウトの時間より短くてもよい。
ステップS506で設定されるタイムアウトの時間が適切に短ければ、鍵情報更新要求504の送信から鍵情報更新通知505の受信までの間、同じ路側機201との間で安定して良好な通信品質が保てるような環境でない限り、車載装置100はタイムアウトする。そして、車載装置100は、タイムアウトのたびに鍵情報更新要求504を再送する。
さて、ステップS509では、情報受信処理部103が、図4のステップS110と同様にして鍵情報の更新を行う。また、第3実施形態においては鍵情報更新通知の送信タイミングを認証サーバ202が制御するために位置通知が使われるので、鍵情報の更新後は位置通知の送信は不要である。よって、情報受信処理部103は、位置通知の送信を停止させる。
さらに、次のステップS510では、情報送信処理部104と上位機器インタフェース部102が協働して、図4のステップS111と同様にして鍵情報受領通知のフレームを送信する。そして、図11の処理は終了する。
なお、ステップS509とS510の実行順は逆でもよい。あるいは、ステップS509とS510の処理が並行して行われてもよい。
続いて、第3実施形態における認証サーバ202の動作を説明する。第3実施形態においても、認証サーバ202は、任意のタイミングで任意の車載装置100から任意の路側機201を介して情報を受信する可能性があり、情報の受信を契機として各種処理を行う。
図12は、第3実施形態において、認証サーバが車載装置から情報を受信したときの処理のフローチャートである。なお、図12に関する説明においては、図12の処理の開始の契機となった情報の送信元の車載装置100を「送信元の車載装置100」という。
ステップS601で認証サーバ202は、送信元の車載装置100から受信した情報の内容が認証要求、鍵情報更新要求、位置通知、鍵情報受領通知のいずれであるかを判断する。認証要求が受信された場合、処理はステップS602に移行し、鍵情報更新要求が受信された場合、処理はステップS608に移行し、位置通知が受信された場合、処理はステップS612に移行し、鍵情報受領通知が受信された場合、処理はステップS613に移行する。
ステップS602〜S607はそれぞれ図5のステップS202〜S207と同じなので説明を省略する。
また、受信したIPパケットが鍵情報更新要求のIPパケットであった場合、認証サーバ202はステップS608において、図5のステップS208と同様にして、新たな鍵情報を作成する。そして、認証サーバ202は、送信元の車載装置100の車載装置IDと対応づけて、作成した鍵情報を最新送信版として記憶する。
続いて、次のステップS609で認証サーバ202は、送信元の車載装置100を搭載した車両305の位置から推測される通信品質が良好になるまで待機する。第3実施形態において認証サーバ202は、位置通知に基づいて送信元の車載装置100の位置(つまり車両305の位置)を認識しているので、位置から通信品質を推測することができる。
例えば、位置通知に、位置センサの出力した緯度と経度により表される位置情報が含まれる場合、認証サーバ202は、車載装置100から直近に受信した位置通知に含まれる位置情報が示す位置と、鍵情報更新要求を中継した路側機201の位置を比較してもよい。車載装置100による位置通知の送信間隔が適宜に定められていれば、認証サーバ202は、2つの位置が所定の距離内にあるとき、通信品質が良好であると推測することができる。
なぜなら、2つの位置が所定の距離内にあれば、「車両305がしばらく1箇所で停止しているか、速度が遅いためにせいぜい上記の所定の距離しか移動することができない間に、直近の位置通知と今回受信した鍵情報更新要求が送信された」と見なせるからである。車両305が停止ないし徐行していれば通信環境が安定していると期待され、また、停止ないし徐行している最中に直近の位置通知と今回受信した鍵情報更新要求が送信されたとすれば、車載装置100はいずれかの路側機201と通信可能な位置にある。よって、認証サーバ202は、比較した2つの位置が所定の距離内にあるとき、通信品質が良好であると推測してもよい。なお、ここでの「所定の距離」は、例えば路側機201の通信可能範囲の大きさに応じて定められることが望ましい。
あるいは、認証サーバ202は、送信元の車載装置100から直近の位置通知を受信した受信時刻と現在時刻の差から、通信品質を推測してもよい。すなわち、認証サーバ202は、受信時刻と現在時刻の差が所定の閾値以下のとき、通信品質が良好であると推測してもよい。
例えば、車載装置100が10秒間隔で位置通知のフレームを送信する場合に、直近の位置通知を受信した受信時刻と現在時刻の差が25秒あったとする。この場合、車載装置100が位置通知のフレームを送信したにもかかわらず、いずれの路側機201によっても中継されず、認証サーバ202に到達しなかった位置通知が2回あったということである。
この場合、車載装置100を搭載した車両305は、例えば路側機201の存在しないところを走行中なのかもしれないし、他の車両によって路側機201との間が遮蔽されてしまったのかもしれない。いずれにせよ、車載装置100と路側機201との間の通信品質は良好でないと推測される。つまり、鍵情報更新要求は、通信品質が安定していて良好だったから受信可能だったというよりも、偶然、受信されたのかもしれない。
他方、直近の位置通知を受信した受信時刻と現在時刻の差が例えば1秒といった短い時間であれば、車載装置100はまだ路側機201の付近に位置していると推測される。つまり、車載装置100と路側機201との間で通信可能な状態がまだ持続していると推測される。そこで、認証サーバ202は、直近の位置通知を受信した受信時刻と現在時刻の差が所定の閾値以下のとき、通信品質が良好であると推測してもよい。
あるいは、認証サーバ202は、受信した位置通知の履歴を使って通信品質を推測してもよい。例えば、直近の2回あるいはそれ以上の位置通知が同じ路側機201を介して認証サーバ202に中継された場合、車両305は、中継点の路側機201の付近で停止ないし徐行していると推測される。したがって、車載装置100と中継点の路側機201との間の無線通信路の通信品質は、安定した良好なものだと推測される。よって、認証サーバ202は、受信した直近の所定回数(例えば2回)の位置通知を中継した路側機201が同じとき、通信品質が良好であると推測してもよい。
また、認証サーバ202は、信号機の状態を表す信号機情報を交通管制サーバ203から受け取り、信号機情報と受信した位置通知の履歴を使って通信品質を推測してもよい。位置通知の送信間隔が適切に定められていれば、受信した位置通知の履歴から、認証サーバ202は、車両305の走行方向を認識することができる。よって、信号機情報を用いることで、認証サーバ202は、車両305が赤信号で停止するタイミングを推測することができる。
例えば、車両305が、図3の道路301aを交差点302aから交差点302fに向かって走行するとする。この場合、認証サーバ202は、順に、路側機201b、201c、201h、201kを介して位置通知を受信するかもしれない。そして、路側機201kを介した位置通知の受信と前後して、認証サーバ202は、同じく路側機201kを介して鍵情報更新要求を受信するかもしれない。
この場合、認証サーバ202は、位置通知の受信履歴から、車両305は道路301a上を走行していることを認識することができる。また、認証サーバ202は、交通管制サーバ203から信号機情報を得て、車両305の走行方向の進行の可否を示す信号機303kの状態を認識することができる。
もし信号機303kが赤信号であれば、認証サーバ202は、「車両305は、路側機201kの近傍で赤信号による停止中であるから、車載装置100と路側機201kとの間の通信路の通信品質は良好である」と推測する。他方、信号機303kが青信号であれば、認証サーバ202は、「たまたま路側機201kを介した通信が成功したが、車両305は停止中とは限らず、したがって、通信品質も良好であるとは限らない」と推測する。黄信号に関しては、実施形態に応じて認証サーバ202は「通信品質が良好」と推測することにしてもよいし、「通信品質が良好であるとは限らない」と推測することにしてもよい。
以上、ステップS609における認証サーバ202の判断基準についていくつか例示したが、いずれの判断基準にしたがうにしろ、認証サーバ202は、送信元の車載装置100の位置から推測される通信品質が良好になるまで待機する。そして、通信品質が良好だという推測結果を認証サーバ202が得ると、処理はステップS610に移行する。
そして、次のステップS610で認証サーバ202は、車両305の近傍の路側機201を、返信時の中継点として選択する。具体的には、認証サーバ202は、直近の位置通知を中継した路側機201を、返信時の中継点として選択する。
続くステップS611では、認証サーバ202が、ネットワーク204とステップS610で選択した路側機201とを介して、最新送信版の鍵情報を送信元の車載装置100に返信する。そして、図12の処理は終了する。
また、認証サーバ202は、位置通知を受信したとき、ステップS612において送信元の車載装置100の車載装置IDに対応づけて、受信した位置通知が示す位置情報を記憶する。上記のように、認証サーバ202が受信する位置通知は、実施形態に応じて、緯度と経度の組により車載装置100の位置を示す位置情報を含んでいることもある。あるいは、位置通知は、実施形態に応じて、当該位置通知を中継した路側機201のIDやIPアドレスなどにより近似的に車載装置100の位置を表していてもよい。
よって、認証サーバ202は、ステップS612において、位置通知の形式に応じて、例えば、車載装置IDと緯度と経度を対応づけて記憶してもよい。あるいは、認証サーバ202は、車載装置IDと、位置通知を中継した路側機201のIPアドレスとを対応づけて記憶してもよい。また、認証サーバ202は、さらに、位置通知を受信した受信時刻を記憶してもよい。
なお、緯度と経度の組により車載装置100の位置を示す位置情報を位置通知が含む場合、認証サーバ202は、マップマッチングを行うことで位置情報を補正し、補正した位置情報を記憶してもよい。
また、実施形態に応じて、認証サーバ202は各車載装置IDごとに最新の位置通知についてのみ記憶してもよいし、位置通知の履歴を取ってもよい。位置通知の履歴を取る場合、認証サーバ202は、必要に応じて古い履歴を削除する処理も行う。
以上のようにして位置通知の受信を契機として認証サーバ202が車載装置100の位置を記憶すると、図12の処理も終了する。
なお、認証サーバ202が鍵情報受領通知を受信したときに行うステップS613の処理は、図5のステップS211の処理と同じなので、説明を省略する。
ところで、上記のどの実施形態においても、車載装置100はコンピュータを使って実現することができる。また、認証サーバ202と交通管制サーバ203は、それぞれ、汎用的なコンピュータなどの適宜の情報処理装置により実現することができる。
また、認証サーバ202と交通管制サーバ203が物理的には1台の同じコンピュータにより実現されていてもよい。あるいは逆に、複数のコンピュータにより認証サーバ202が実現されてもよいし、複数のコンピュータにより交通管制サーバ203が実現されてもよい。
そこで、次に図13を参照してコンピュータの構成例について説明する。また、図1の車載装置100および図2の認証サーバ202と図13のコンピュータの各部との関係についても説明する。
図13のコンピュータ600は、Central Processing Unit(CPU)601、Read Only Memory(ROM)602、RAM603および通信インタフェース604を有する。また、コンピュータ600は、入力装置605、出力装置606、記憶装置607および可搬型記憶媒体610の駆動装置608を有する。そして、CPU601、ROM602、RAM603、通信インタフェース604、入力装置605、出力装置606、記憶装置607および駆動装置608は、バス609により互いに接続されている。
通信インタフェース604は、コンピュータ600がネットワーク204を介して他の装置と通信するためのインタフェースであり、有線通信インタフェース、無線通信インタフェース、またはその双方である。ネットワーク204には、プログラム提供者611である他のコンピュータがさらに接続されていてもよい。また、車載装置100に使われるコンピュータ600においては、通信インタフェース604は、ネットワーク204との間のインタフェースに加えて、路側機201との間の無線通信のためのインタフェースを含む。
また、図13では入力装置605と出力装置606が別々に図示されているが、入力装置605と出力装置606は、タッチスクリーンとして統合されていてもよい。もちろん、コンピュータ600は、入力装置605としてさらに、キーボード、あるいはマウスなどのポインティングデバイスを有していてもよい。また、コンピュータ600は、出力装置606としてさらに、スピーカやプリンタを有していてもよいし、タッチスクリーンではないディスプレイ装置を出力装置606として有していてもよい。
記憶装置607は、ハードディスク装置、フラッシュメモリなどの不揮発性の半導体メモリ装置、またはその組み合わせである。記憶装置607の少なくとも一部が耐タンパ性を有していてもよい。耐タンパ性の記憶装置607は、鍵情報の保持に好適である。
また、可搬型記憶媒体610としては、Compact Disc(CD)やDigital Versatile Disk(DVD)などの光ディスク、光磁気ディスク、磁気ディスク、フラッシュメモリなどの不揮発性の半導体メモリカードなどが利用可能である。
CPU601は、RAM603にプログラムをロードしてRAM603をワークエリアとして用いながらプログラムを実行する。そして、CPU601が実行する上記プログラムは、予めROM602または記憶装置607にインストールされていてもよいし、可搬型記憶媒体610に格納されて提供され、駆動装置608により読み取られて記憶装置607にコピーされてもよい。あるいは、上記プログラムは、プログラム提供者611からネットワーク204を介して記憶装置607にダウンロードされてもよい。
そして、以上のようなコンピュータ600は、図2の認証サーバ202を実現することもできるし、交通管制サーバ203を実現することもできる。例えば、認証サーバ202がコンピュータ600により実現される場合、記憶装置607には、車載装置IDと対応づけられた認証利用版と最新送信版の鍵情報や、路側機配置情報が記憶される。また、第3実施形態の場合はさらに、記憶装置607に、車載装置IDと対応づけられた位置情報が記憶される。
また、図1の車載装置100は、専用のハードウェアを使って実現することもできるが、少なくとも一部についてはプログラムを実行する汎用のコンピュータ600を用いて実現することができる。もちろん、車載装置100は、専用のハードウェアとコンピュータ600の両者によって実現されていてもよい。
例えば、図13のコンピュータ600を用いて図1の車載装置100を次のように実現することが可能である。
画面インタフェース部101は、入力装置605と、出力装置606と、入力装置605と出力装置606を制御するプログラム(つまりデバイスドライバ)を実行するCPU601と、ワークエリアとしてのRAM603によって実現することができる。また、上位機器インタフェース部102は、通信インタフェース604に対応する。
そして、情報受信処理部103と、情報送信処理部104と、画面エリア判定部106と、画面乱数処理部107は、プログラムを実行するCPU601と、ワークエリアとしてのRAM603により実現することができる。なお、RAM603は、ユーザからの入力から得られる第1の情報(具体的には例えば軌跡情報)を記憶する第1の記憶手段としても機能する。
また、格納部105は、例えば鍵情報を格納する記憶装置607により実現されてもよい。あるいは、メモリカードなどの可搬型記憶媒体610に鍵情報が格納され、格納部105が可搬型記憶媒体610と駆動装置608により実現されてもよい。いずれにせよ、格納部105は、第2の情報(具体的には例えば鍵情報)を記憶する第2の記憶手段の一例である。
なお、細分化エリア情報が固定されている場合、細分化エリア情報は、画面エリア判定部106を実現するためのプログラム内において各種定数として定義されていてもよい。その場合も、プログラムはROM602、記憶装置607、または駆動装置608を介して参照される可搬型記憶媒体610に格納されているので、細分化エリア情報を格納する格納部105は、ROM602、記憶装置607、または可搬型記憶媒体610と駆動装置608により実現されていると言える。
また、車両状態判定部108は、外部センサ110とコンピュータ600との間の不図示のインタフェースと、当該インタフェースを介して受け取ったデータを使ってプログラムを実行するCPU601と、RAM603により実現することができる。外部センサ110とコンピュータ600との間のインタフェースは、専用のインタフェースカードなどを含んでもよいし、Universal Serial Bus(USB)などの汎用的なインタフェースでもよい。
なお、上記実施形態は様々に変形可能である。以下に、上記実施形態を変形するいくつかの観点を例示する。例えば、上記実施形態は、下記(f1)〜(f15)の観点から様々に変形することができ、上記実施形態および下記の変形は、相互に矛盾しない限り、任意に組み合わせることが可能である。
(f1)鍵情報の更新の契機に関する変形
上記第1〜3実施形態では、鍵情報の更新は、車載装置100からの鍵情報更新要求(あるいは鍵情報更新要求の役割を兼ねている認証要求兼更新要求)の送信を契機として行われる。しかし、実施形態によっては、車載装置100から鍵情報の更新を要求することなく、認証サーバ202が鍵情報の更新のタイミングを制御してもよい。また、上記第1〜3実施形態では、鍵情報の更新は、認証に成功したときにのみ行われるが、鍵情報の更新は、認証の成否とは独立していてもよい。
例えば、第1実施形態は、次のように変形されてもよい。すなわち、車載装置100は、図4のステップS105において、検出されたトリガの種類が認証通知の受信であると判断した場合、図4の処理を終えてもよい。そして、車載装置100は、図4の処理とは独立して、認証サーバ202からの鍵情報更新通知の受信の有無を監視し、鍵情報更新通知を受信したら図4のステップS110とS111の処理を行ってもよい。
また、この場合、認証サーバ202は、車載装置100の位置を考慮に入れずに鍵情報更新通知を送信してもよいし、車載装置100の位置を考慮に入れて鍵情報更新通知を送信してもよい。
例えば、認証サーバ202は、車載装置100の位置を考慮に入れずに、システム200内のすべての路側機201に対して定期的に車載装置100に対する鍵情報更新通知を送信してもよい。すると、車載装置100は、もしいずれかの路側機201からたまたま鍵情報更新通知を受信することができれば、受信を契機として、図4のステップS110とS111のように鍵情報の更新と鍵情報受領通知の送信を行う。この場合、認証サーバ202は車載装置100の位置を考慮する必要がないので、車載装置100からの位置通知も不要である。
あるいは、車載装置100が位置通知を送信し、認証サーバ202は鍵情報更新通知の送信のタイミングの制御および中継点となる路側機201の選択を位置通知に基づいて行い、鍵情報更新通知を送信してもよい。つまり、認証サーバ202は、図12のステップS608〜S611の処理を、鍵情報更新要求の受信を契機として行うのではなく、例えば定期的なスケジュールにしたがって行ってもよい。
なお、ステップS608〜S611の処理を行う契機が何であれ、通信インタフェース604とCPU601とRAM603は、協働して、車載装置100から車両305の位置を示す位置情報を受信する受信手段として機能する。また、ステップS609において、CPU601とRAM603は、複数の送信機(すなわち複数の路側機201)にそれぞれ対応する複数の範囲のいずれかに車両305の位置が含まれるか否かを位置情報に基づいて判断する判断手段として機能する。そして、ステップS610とS611では、通信インタフェース604とCPU601とRAM603は、協働して、車両305の位置を含むと判断された範囲に対応する送信機に対して鍵情報を送信する送信手段として機能する。なおここで、「車両305の位置を含むと判断された範囲に対応する送信機」とは、換言すれば、通信範囲内に車載装置100があると判断され、中継点として選択された路側機201のことである。
(f2)鍵情報の更新タイミングに関する変形
実施形態によっては、車載装置100に電源が入れられてから電源が切断されるまでの間に、1回だけ認証が行われるかもしれないし、複数回の認証が行われるかもしれない。
例えば、交通管制サーバ203が異なる種類の複数のサービスを提供し、複数のサービスの認証をいずれも認証サーバ202が担う場合、認証サーバ202はサービスごとに認証を行ってもよい。そして、車載装置100に電源が入れられてから電源が切断されるまでの間に、車両305が複数のサービスを受けることもありうる。また、例えば駐車場の料金支払いのようにユーザへの課金をともなうサービスの場合は、課金のたびに認証が行われてもよい。
このように、車載装置100に電源が入れられてから電源が切断されるまでの間に複数回の認証が行われる場合、ユーザからの入力は車載装置100への電源投入直後の最初の1回だけに限ることがユーザビリティの観点から好ましい。しかし、鍵情報の更新は、認証が済むたびに行われることが望ましい。そのために、画面乱数処理部107は、画面エリア判定部106から出力された判定結果を、車載装置100の電源が切断されるまでの間、RAM603に保持し続けてもよい。
また、複数回の認証のために、上記実施形態は次のように変形されてもよい。例えば、車載装置100は、図4のステップS101とS102の処理を行った後、ステップS103〜S111の処理を認証のたびに繰り返してもよい。あるいは、車載装置100は、図9のステップS301とS302の処理を行った後、ステップS303〜S308の処理を認証のたびに繰り返してもよい。また、車載装置100は、図11のステップS501とS502の処理を行った後、ステップS503〜S510の処理を認証のたびに繰り返してもよい。
ただし、車載装置100が拒否通知を受信した場合は、ステップS101、S301、またはS501での入力が不正だったと認証サーバ202により判断されたということである。よって、拒否通知を受信した場合、たとえ車載装置100がステップS103〜S111、S303〜S308、またはS503〜S510の処理を繰り返したとしても、認証は再度失敗することが明らかである。したがって、車載装置100は、拒否通知を受信した場合は上記の繰り返しを行うことなく、処理を終えてよい。
また、上記(f1)でも述べたが、鍵情報の更新のタイミングは、認証の成否とは独立していてもよい。あるいは、1回認証が成功した後で、車載装置100の電源がオンになっている間は、車載装置100は鍵情報の更新を繰り返し行ってもよい。
例えば、車載装置100は、図4のステップS101〜S105の処理を行った後、認証が成功したか否かによらず、ステップS106〜S111の処理を繰り返してもよい。ステップS106〜S111の処理の繰り返しは、所定の間隔で行われてもよいし、ステップS111の処理の直後にステップS106の処理が行われてもよい。
同様に、車載装置100は、図11のステップS501〜S505の処理を行った後、認証が成功したか否かによらず、ステップS506〜S510の処理を繰り返してもよい。ステップS506〜S510の処理の繰り返しは、所定の間隔で行われてもよいし、ステップS510の処理の直後にステップS506の処理が行われてもよい。
あるいは、車載装置100は、認証が成功した場合に、図4のステップS111または図9のステップS308の送信を行った後に、ステップS106〜S111の処理を繰り返してもよい。ステップS106〜S111の処理の繰り返しは、所定の間隔で行われてもよいし、ステップS111の処理の直後にステップS106の処理が行われてもよい。
例えば上記のように鍵情報を繰り返し更新することにより、ある認証から次の認証までの時間が比較的長い場合にも、できるだけ新しい鍵情報が次の認証用情報の生成において使われることになる。このように、古い情報の使用をできるだけ避けることで、古い情報が盗まれることによるセキュリティ低下のリスクを減らすことができる。
このように、上記実施形態は様々に変形することができるが、図4のステップS106とS107は、いずれの変形例においても、車両305の状態に基づいたタイミングで無線通信により更新要求を送信するステップに相当する。より詳しくは、ステップS106が、車両305が信号機から所定の範囲内で停止していると見なせる停止状態のときに更新要求を送信するよう、タイミングを決定する決定ステップに相当する。
同様に、図9のステップS303とS304も、いずれの変形例においても、車両305の状態に基づいたタイミングで無線通信により更新要求(具体的には認証要求兼更新要求)を送信するステップに相当する。より詳しくは、ステップS303がステップS106と同様に上記決定ステップに相当する。
また、ステップS108とS305は、いずれも、更新要求に応じて無線通信により送信される新たな鍵情報を受信する受信ステップを含む。
(f3)更新対象の鍵情報に関する変形
鍵情報のうち、細分化エリア情報と乱数情報の双方が更新対象でもよいし、細分化エリア情報のみが更新対象でもよいし、乱数情報のみが更新対象でもよい。図7から明らかなように、細分化エリア情報のみが更新されるだけでも、細分化エリア情報の更新に応じて異なる認証用情報αが生成されることになる。また、式(1)と(3)から明らかなように、乱数情報のみが更新されるだけでも、画面乱数処理部107が例えば関数fAまたはfCを用いて認証用情報αを生成する場合には、乱数情報の更新に応じて異なる認証用情報αが生成されることになる。
(f4)認証サーバ202による中継点の路側機201の選択に関する変形
認証サーバ202は、車載装置100への通信の中継点となる路側機201を選択する際に、路側機は位置情報と車載装置100の位置の双方を考慮に入れてもよい。
例えば、車載装置100からの位置通知を何回か認証サーバ202が受信している場合、認証サーバ202は、車載装置100を搭載した車両305がどの道路をどの方向に走行中かを認識することができる。つまり、認証サーバ202は、位置通知により通知された車載装置100の位置を必要に応じてマップマッチングなどの処理により補正し、複数の位置通知でそれぞれ通知された位置の変化から、車両305が走行中の道路と走行方向を認識することができる。そこで、認証サーバ202は、複数の送信元近傍路側機のうち、送信元路側機から見て車両305の走行方向と逆側にあるものは、IPパケットの送信先から除外してもよい。
(f5)認証要求の送信タイミングに関する変形
第1実施形態において車載装置100は、図4に示すように、認証要求501に関しては通信品質の良さの推測を行わずに単に送信を行い、鍵情報更新要求504に関しては通信品質の良さの推測を行って送信タイミングを調整する。しかし、実施形態によっては、車載装置100は、認証要求501に関しても図4のステップS106と同様に通信品質の良さの推測を行って送信タイミングを調整してもよい。それにより、結果的に失敗に終わる無駄な送信を減らすことができる。
(f6)入力支援に関する変形
画面インタフェース部101がユーザからの入力を受け付けるにあたり、情報送信処理部104は、入力支援のための情報を画面に表示するよう、画面インタフェース部101を制御してもよい。入力支援により、ユーザビリティが向上する。
例えば、情報送信処理部104は、図形の入力を開始する位置を、矢印や丸などによりハイライト表示するよう、画面インタフェース部101を制御してもよい。すると、「入力位置のずれが原因で、正しい入力が不正な入力と判断される」といった事態が避けやすくなる。
なお、ハイライト表示する対象となる入力開始位置が、ユーザが図形を認証サーバ202に登録したときの入力開始位置に固定される場合は、格納部105には予め、固定される当該入力開始位置を示す情報が登録されるものとする。そして、情報送信処理部104は、格納部105に登録された情報を読み出して、上記のように画面インタフェース部101にハイライト表示の指示を与える。
逆に、情報送信処理部104は、ユーザからの入力の受け付けのたびにランダムな位置を選び、選んだ位置をハイライト表示するよう、画面インタフェース部101を制御してもよい。このようにハイライト表示する対象となる入力開始位置が可変の場合は、情報受信処理部103は、入力開始位置として選んだ位置の座標を、認証用情報とあわせて認証要求のフレームに含め、認証サーバ202に通知する。
また、「入力位置のずれが原因で、正しい入力が不正な入力と判断される」といった事態を避けるためには、情報受信処理部103は、ガイド表示として画面上に例えば格子を表示するよう、画面インタフェース部101を制御してもよい。すると、ユーザは、格子を頼りに、ユーザが図形を認証サーバ202に登録したときの入力開始位置に近い位置から入力を開始することができるようになるので、ユーザビリティが向上する。
(f7)ユーザからの入力の内容に関する変形
上記実施形態においては、ユーザから入力される図形的な情報として、手書きの署名、図6の軌跡403、図7の軌跡405、および軌跡407を例示した。しかし、実施形態によっては、ユーザから入力される図形的な情報は、上記の例が示すような連続的な軌跡を描くものでなくてもよい。
例えば、画面インタフェース部101はソフトウェアキーボード機能を有していてもよい。なお、画面インタフェース部101は、キーの位置を固定して画面に表示してもよいし、表示のたびにキーの位置をランダムに入れ換えて画面上にキーボードあるいはテンキーなどを表示してもよい。
具体的には、画面インタフェース部101は、画面上にキーボードあるいはテンキーなどを表示し、画面上に表示されたどのキーをユーザが指定したか、そして、キーが指定された順序と間隔はどうだったかを検出してもよい。つまり、画面インタフェース部101は、空間内の複数の位置がユーザからの入力により指定される順序、間隔、またはその組み合わせを情報受信処理部103に出力してもよい。
この場合、細分化エリア情報は各キーが表示されるエリアを規定する情報であり、乱数情報は、各キーが表示されるエリアにそれぞれランダムな値を対応づける情報である。また、画面乱数処理部107は、認証用情報αの生成にあたり、エリアの通過にかかった時間の代わりに、キーが指定される間隔またはキーに接触されていた時間を使うことができる。
例えば、ソフトウェアキーボード機能により画面上に表示される“X”と“Y”と“Z”という3つのキーがこの順で指定され、“X”と“Y”の指定の間隔は1.0秒、“Y”と“Z”の指定の間隔は0.7秒であったとする。また、“X”と“Y”と“Z”という3つのキーが表示されるエリアにそれぞれ対応する乱数が、1935と4018と6253であるとする。
すると、画面乱数処理部107は、実施形態に応じて、1935と4018と6253という3つの乱数を引数とする関数により認証用情報αを生成してもよいし、1.0と0.7という2つの時間を引数とする関数により認証用情報αを生成してもよい。あるいは、画面乱数処理部107は、1935と1.0と4018と0.7と6253という計5つの値を引数とする関数により認証用情報αを生成してもよい。
また、画面乱数処理部107は、認証用情報αの生成において、キーが指定される間隔の代わりに、またはキーが指定される間隔とともに、キーが表示されるエリア内での画面への接触が持続していた時間を用いてもよい。
そして、上記のソフトウェアキーボードに関する変形例と同様に、画面インタフェース部101がハードウェアキーボードを介してユーザから文字による入力を受け付ける変形例も可能である。この場合、鍵情報は細分化エリア情報を含まなくてよい。そして、乱数情報は、各キーにそれぞれランダムな値を対応づける情報である。また、画面乱数処理部107は、認証用情報αの生成にあたり、エリアの通過にかかった時間の代わりに、キーの押されていた時間、キーが押される間隔、またはその組み合わせを使うことができる。
(f8)鍵情報に関する変形
例えば、認証サーバ202は、あるとき、画面を8行・5列に40分割する図6の鍵情報401を車載装置100に通知してもよい。そして、車載装置100の画面エリア判定部106は、いくつかのエリアを併合することで、鍵情報401が規定する細分化よりも粗く画面を細分化するパターンを作成し、作成したパターンにおいて定義したエリアに基づいて、上記(a1)と(a2)の判定を行ってもよい。
例えば、画面エリア判定部106は、1〜4行目を併合し、5〜8行目を併合することで、画面を2行・5列に10分割するパターンを作成してもよい。すると、図6の軌跡403は、併合後の1行目の1列目のエリア、併合後の1行目の2列目のエリア、併合後の1行目の1列目のエリア、という延べ3つのエリアを通ると判定される。
そして、軌跡403が併合後の1行目の1列目のエリアを最初に通過するときの通過時間は、式(12)〜(14)によれば1.3(=0.3+0.4+0.6)秒である。また、併合後の1行目の2列目のエリアの通過時間は、式(15)と(16)によれば1.4(=1.0+0.4)秒である。そして、軌跡403が併合後の1行目の1列目のエリアを最後に通過するときの通過時間は、式(17)と(18)によれば0.3(=0.2+0.1)秒である。
また、画面エリア判定部106は、併合後の各エリアに対応する乱数を、併合前のエリアの乱数を連結することで求めることができる。例えば、元の鍵情報401における1列目において1〜4行目の4つのエリアを併合したエリアに対応する乱数は、元の4つのエリアに対応する4つの乱数を文字列として連結した2615367357320044である。同様に、併合後の1行目の2列目のエリアに対応する乱数は、5499943318825812である。
したがって、この場合、画面乱数処理部107は下記の式(22)〜(28)を用いて認証用情報αを求める。
m=3 (22)
randt(1)=2615367357320044 (23)
randt(2)=5499943318825812 (24)
randt(3)=2615367357320044 (25)
passt(1)=1.3 (26)
passt(2)=1.4 (27)
passt(3)=0.3 (28)
また、画面乱数処理部107は、「1〜4行目を併合し、5〜8行目を併合することで、画面を2行・5列に10分割するパターンを用いた」ということを示す情報(以下「細分化変更情報」という)を、認証用情報αとあわせて、情報送信処理部104に出力する。すると、情報送信処理部104は、認証用情報αだけでなく細分化変更情報も認証要求501の秘密UL情報のフィールドに設定する。
その結果、認証サーバ202も細分化変更情報を認識することができ、細分化変更情報を考慮に入れて、パスワードを抽出することができる。なお、以上のように、認証サーバ202から通知された細分化エリア情報に対して、車載装置100が粗い分割の仕方を定めることには、次のような効果がある。すなわち、「細分化エリア情報によって定義されているエリアが小さいために、ユーザの入力の微妙なずれが原因で、認証に失敗してしまう」といった事態が防ぎやすくなる。
また、この場合、認証のたびに鍵情報の更新を行うのではなく、鍵情報の更新は何回かの認証ごとに1度でもよい。その代わりに、エリアの併合の仕方(換言すれば細分化変更情報の内容)を認証のたびに適宜変えれば、認証のたびに異なる認証用情報αが生成される。
あるいは、実施形態によっては、上記とは逆に、認証サーバ202が細分化変更情報を指定してもよい。
例えば、認証サーバ202は、ある鍵情報更新要求の受信を契機に、鍵情報401のような40分割の鍵情報401とともに細分化変更情報も含む鍵情報更新通知を車載装置100に返信してもよい。そして、認証サーバ202は、次の鍵情報更新要求の受信したときは、エリアの併合の仕方を変えた細分化変更情報のみを車載装置100に返信してもよい。さらに次の鍵情報更新要求を受信したときも、認証サーバ202は同様にエリアの併合の仕方を変えた細分化変更情報のみを車載装置100に返信してもよい。そして、さらに次の鍵情報更新要求を受信したとき、認証サーバ202は新たな鍵情報を生成し、新たな細分化変更情報とともに車載装置100に通知してもよい。
以上の例は、「鍵情報自体の更新が3回の認証ごとに1回だけ行われ、残りの2回は細分化変更情報の更新のみが行われる」という例である。もちろん、この「3回」という数値は単なる例示であり、実施形態に応じて適宜変更されてよい。
(f9)画面インタフェース部101に関する変形
第1〜3実施形態の画面インタフェース部101はタッチスクリーンを用いて実現される。しかし、実施形態によっては、タッチスクリーン以外の、空間的情報の入力用の他のユーザインタフェース装置により、画面インタフェース部101が実現されてもよい。
例えば、画面インタフェース部101が、ペンタブレットやマウスなどのポインティングデバイスと、ディスプレイとを含んでもよい。そして、画面インタフェース部101は、ディスプレイ上にカーソルを表示し、ポインティングデバイスからの入力に応じてカーソルを移動させてもよい。そして、画面インタフェース部101は、ポインティングデバイスを介して指定される画面上の位置を表す2次元座標を、情報受信処理部103に出力してもよい。
また、ポインティングデバイスとしては、データグローブなどの3次元の空間的情報の入力用の装置が使われてもよい。その場合は、画面インタフェース部101が情報受信処理部103に出力する情報は3次元座標を含み、細分化エリア情報は3次元空間を複数のエリアに細分化する仕方を表し、各エリアは2次元ではなく3次元のエリアである。
(f10)フレーム500に関する変形
図8Aと8Bに示した各種フレームの形式と、“123456789”や“00”などの値は、例示に過ぎない。各種情報は、実施形態に応じたその他の任意の形式の無線通信フレームとして送受信されてもよい。また、図8Aと8Bに例示した2ビットの認証フラグは、データマップ情報によりフレーム500の種別が一意に特定可能な場合は省略されてもよい。
また、第3実施形態に関連して、位置通知のフレームは位置通知511の形式に限らず、位置通知のフレームに位置情報が明示的に含まれていなくてもよいと説明したが、逆に、位置通知のフレームは、車両305の速度を示す速度情報をさらに含んでいてもよい。この場合、路側機201を介して認証サーバ202に速度情報も通知されるので、認証サーバ202は図12のステップS612で速度情報も記憶することができる。
すると、認証サーバ202はステップS609において、直近に受信した位置通知に含まれていた速度情報に基づいて、車両305が停止していると見なせるか否かを判断することができる。そこで、認証サーバ202は、車両305の位置(あるいは位置の履歴)だけからステップS609の判断を行う代わりに、車両305が停止していると見なせるときに鍵情報を送信するよう、送信タイミングを制御してもよい。
(f11)路側機201の配置と車両状態判定部108に関する変形
例えば、高速道路など、信号機が存在しない区間が長い道路においては、路側機201は信号機とは無関係に適宜の間隔で道路沿いに設置されてもよい。その場合も、車両状態判定部108は、路側機201が設置された位置に関する情報を含む地図情報を参照することにより、車載装置100が搭載されている車両305が路側機201の近傍に位置しているか否かを判断することができる。
また、車両状態判定部108は車両305の状態を判定するのに車速を用いなくてもよい。つまり、実施形態によっては、車両状態判定部108は、路側機201の近傍に車両305が位置しているか否かだけを判定してもよい。
あるいは、外部センサ110が電波受信状態を感知することができる場合、車両状態判定部108は、位置と車速から無線通信路の通信品質を推測する代わりに、電波受信状態から直接的に通信品質を判定してもよい。例えば、外部センサ110が、スペクトラムアナライザを含んでいたり、路側機201との間の通信に使われる特定の周波数の電波の受信強度を感知するセンサを含んでいたりする場合、外部センサ110は電波受信状態を感知することができる。
(f12)鍵情報受領通知と鍵情報の版管理に関する変形
まれに、「路側機201から送信される鍵情報更新通知のフレームが車載装置100に受信されるにもかかわらず、車載装置100から送信される鍵情報受領通知のフレームを路側機201が受信することができない」という場合が起こりうる。
そこで、認証サーバ202は、図5のステップS204または図12のステップS604において認証利用版の鍵情報を使って認証に失敗した場合は、最新送信版の鍵情報を使って認証を再度試してもよい。そして、最新送信版の鍵情報を使った認証に成功すれば、認証サーバ202は「パスワードは正しい」と判断してもよい。
なお、車載装置100と認証サーバ202との間での鍵情報の同期を確実にするために、例えば、認証サーバ202は、最新送信版の鍵情報を使った認証に成功した場合は、図5のステップS211や図12のステップS613と同様の処理を行ってもよい。あるいは、認証サーバ202は、鍵情報更新通知または認証通知兼更新通知の送信後、一定時間が経過しても鍵情報受領通知を受信することができなければ、最新送信版の鍵情報を再度車載装置100に送信してもよい。
(f13)認証処理において用いられる情報に関する変形
図8Aと8Bに例示した各種フレームのヘッダには、車載装置IDが指定されている。しかし、実施形態に応じて、車載装置IDの代わりに、あるいは車載装置IDとともに、ユーザID、車両ID、またはその双方がフレームに含まれていてもよい。
ユーザと車載装置100と車両305は、実施形態によって1対1対1に対応することもあるし、n対1対1など、それ以外の対応関係の場合もある。ユーザと車載装置100と車両305の対応関係に応じて、適宜のIDが認証対象のアカウントの識別のために利用可能である。
つまり、画面インタフェース部101は、必要に応じて、ユーザからユーザIDの入力をさらに受け付けてもよい。また、格納部105は、必要に応じて、車載装置100が搭載される車両305に予め割り当てられている車両IDを格納していてもよい。
(f14)装置の種類に関する変形
車載装置100は、例えばカーナビゲーション装置を兼ねていてもよい。その場合、格納部105が格納する地図情報は、カーナビゲーション装置で使われる既存の地図情報であってよい。また、図1では車載装置100の外部に外部センサ110があるが、もちろん、実施形態によっては、車載装置100が外部センサ110を含んでいてもよい。
また、上記の各種実施形態に関して、車載装置100における鍵情報の更新について詳細に説明したが、車載装置100以外の装置に上記の各種実施形態を適用することもできる。例えば、認証をともなう何らかのサービスを受けようとする携帯端末装置は、上記の実施形態における車載装置100と同様にして、認証の前に予め新たな鍵情報を取得することで認証にかかる時間を短縮することができる。なお、その場合、携帯端末装置は、鍵情報更新要求または認証要求兼更新要求を送信するタイミングを決めるのに、地図情報と移動速度から通信品質を推測する代わりに、受信電波強度から直接的に通信品質を判断すればよい。
また、他の装置と有線接続される有線端末装置に対しても、上記の各種実施形態を適用することができる。その場合も、認証時に認証サーバとの間で2往復の通信が生じるのではなく1往復の通信で済む分だけ、時間短縮の効果が得られる。
(f15)認証の結果通知を契機とする車載装置100の動作に関する変形
認証通知、拒否通知、または認証通知兼更新通知を受信したとき、車載装置100は、さらに、何らかの処理を行ってもよい。例えば、サービスを受けるためのクライアントが、認証の成否を外部から受け取る仕様になっている場合、情報受信処理部103は、認証通知、拒否通知、または認証通知兼更新通知の受信を契機として、認証の成否をクライアントに通知してもよい。あるいは、情報受信処理部103は、認証通知または認証通知兼更新通知の受信を契機として、サービスを受けるためのクライアントを起動してもよい。
以上、(f1)〜(f15)の観点から様々な変形を例示したが、いずれにしろ、車載装置100がユーザからの入力を受け付けた段階では既に、まだ認証用情報の生成に用いていない新たな鍵情報が格納部105に格納されている。よって、車載装置100は、ユーザからの入力を受け付けてから改めて鍵情報の更新を行う必要なしに、すぐさま認証用情報を生成することができる。なお、例えば車載装置100の製造時に製造工場において格納部105に初回用の鍵情報を格納することで、ユーザが車載装置100の購入後に初めて認証を行う場合にも、「未使用の鍵情報が格納部105に格納されている」という条件を成立させることができる。
したがって、上記の各種の実施形態によれば、ユーザからの入力の受け付けから認証の完了までの時間が短くて済む。このように短時間で認証が終了すると、車両305あるいはそこに搭載されている機器は、車両305のエンジン始動からできるだけすぐに交通管制サーバ203からのサービスの提供が受けられるようになる。そのため、エンジン始動からサービス開始までの時間が短いほど好ましいITSシステムにとって、上記の各種の実施形態による鍵情報の更新と認証は有益である。
また、上記の各種の実施形態によれば認証のたびに異なる鍵情報が使われ、認証サーバ202に送られる認証用情報も認証のたびに異なる。認証用情報が認証のたびに異なることは、無線通信を介した認証を行う車載装置100にとって、セキュリティ強度の向上のために有益である。
最後に、上記の種々の実施形態に関して、さらに下記の付記を開示する。
(付記1)
コンピュータに、
ユーザからの入力から得られる第1の情報を記憶する第1の記憶ステップと、
前記第1の情報と、予め記憶装置に記憶されている第2の情報とを用いて、認証用の第3の情報を生成する第1の生成ステップと、
無線通信により前記第3の情報を送信する第1の送信ステップと、
前記第2の情報の更新を要求する更新要求を生成する第2の生成ステップと、
前記コンピュータを搭載した車両の状態に基づいたタイミングで前記無線通信により前記更新要求を送信する第2の送信ステップと、
前記更新要求に応じて前記無線通信により送信される新たな第2の情報を受信する受信ステップと、
受信した前記新たな第2の情報を前記記憶装置に記憶する第2の記憶ステップと、
を実行させるプログラム。
(付記2)
前記第2の送信ステップは、
前記車両が信号機から所定の範囲内で停止していると見なせる停止状態のときに前記更新要求を送信するよう、前記タイミングを決定する決定ステップを含む
ことを特徴とする付記1に記載のプログラム。
(付記3)
前記第1の情報は、
前記ユーザからの入力が描く軌跡の形状、
時間の経過にともなう前記軌跡の変化、または
空間内の複数の位置が前記ユーザからの入力により指定される順序、間隔、もしくは前記順序と前記間隔の組み合わせ
を示し、
前記第2の情報は、
前記ユーザからの入力がなされる入力領域を第1の個数の分割領域に分割する第1のパターンに対応する前記第1の個数のランダムな値、
前記入力領域を第2の個数の分割領域に分割する第2のパターン、または
前記入力領域を第3の個数の分割領域に分割する第3のパターンと前記第3のパターンに対応する前記第3の個数のランダムな値との組み合わせ
を示す
ことを特徴とする付記1または2に記載のプログラム。
(付記4)
前記第2の送信ステップが前記第1の送信ステップを兼ねており、前記第3の情報が前記更新要求とともに送信される
ことを特徴とする付記1から3のいずれか1項に記載のプログラム。
(付記5)
車載装置であって、
ユーザからの入力から得られる第1の情報を記憶する第1の記憶手段と、
第2の情報を記憶する第2の記憶手段と、
前記第1の情報と前記第2の情報を用いて、認証用の第3の情報を生成する第1の生成手段と、
第2の情報の更新を要求する更新要求を生成する第2の生成手段と、
無線通信により前記第3の情報を送信し、前記車載装置を搭載した車両の状態に基づいたタイミングで前記無線通信により前記更新要求を送信する送信手段と、
前記更新要求に応じて前記無線通信により送信される新たな第2の情報を受信する受信手段とを備え、
前記受信手段が受信した前記新たな第2の情報を前記第2の記憶手段に記憶する
ことを特徴とする車載装置。
(付記6)
コンピュータに、
車両に搭載された車載装置から前記車両の位置を示す位置情報を受信する第1の受信ステップと、
複数の送信機にそれぞれ対応する複数の範囲のいずれかに前記車両の前記位置が含まれるか否かを、前記位置情報に基づいて判断する第1の判断ステップと、
前記車両の前記位置が前記複数の範囲のいずれかに含まれると判断した場合に、前記複数の送信機のうち、前記車両の前記位置を含むと判断された当該範囲に対応する送信機を送信先として選択し、前記送信先の前記送信機に対して、前記車載装置が認証用情報を生成するのに用いる情報である鍵情報を送信する送信ステップと、
を実行させるプログラム。
(付記7)
前記車両の速度を示す速度を前記車載装置から受信する第2の受信ステップと、
前記速度情報に基づいて、前記車両が停止していると見なせるか否かを判断する第2の判断ステップ
をさらに前記コンピュータに実行させ、
前記車両が停止していると見なせると判断された場合に、前記送信ステップにおいて前記送信先への前記鍵情報の送信を前記コンピュータに行わせる
ことを特徴とする付記6に記載のプログラム。
(付記8)
前記鍵情報は、
前記車載装置が前記認証用情報を生成するのに前記鍵情報とともに利用する空間的情報が入力される入力領域を第1の個数の分割領域に分割する第1のパターンに対応する前記第1の個数のランダムな値、
前記入力領域を第2の個数の分割領域に分割する第2のパターン、または
前記入力領域を第3の個数の分割領域に分割する第3のパターンと前記第3のパターンに対応する前記第3の個数のランダムな値との組み合わせ
を示す
ことを特徴とする付記6または7に記載のプログラム。
(付記9)
車両に搭載された車載装置から前記車両の位置を示す位置情報を受信する受信手段と、
複数の送信機にそれぞれ対応する複数の範囲のいずれかに前記車両の前記位置が含まれるか否かを、前記位置情報に基づいて判断する判断手段と、
前記車両の前記位置が前記複数の範囲のいずれかに含まれると前記判断手段が判断した場合に、前記複数の送信機のうち前記車両の前記位置を含むと判断された当該範囲に対応する送信機に対して、前記車載装置が認証用情報を生成するのに用いる情報である鍵情報を送信する送信手段と、
を備えることを特徴とする情報処理装置。