(57)【要約】【課題】正規の車載端末を装ったなりすましによるソフトウェアの不正な取得や、不正な手段を用いたソフトウェアの複製および頒布などの、ソフトウェアの不正な利用を防止すること。【課題手段】車載端末に固有な端末識別情報および端末固有鍵が記憶され、サーバには、その端末識別情報および端末固有鍵と同じ情報であるサーバ側端末識別情報およびサーバ側端末固有鍵が記憶される。そして、車載端末は、端末識別情報を通信端末を介してサーバに送信し、サーバは、サーバ側端末識別情報に基づき端末認証を行い、認証が成功した場合に、認証が成功した車載端末用の暗号化されたソフトウェアを通信端末に送信する。通信端末は、暗号化されたソフトウェアを車載端末に送信し、車載端末は、サーバにおいて、サーバ側端末固有鍵で暗号化されたソフトウェア固有鍵を、通信端末を介して取得し、そのソフトウェア固有鍵を用いて暗号化されたソフトウェアを復号し、インストールを行う。【選択図】図２
2015014910.tif 000002
【特許請求の範囲】
【請求項１】
通信端末と、前記通信端末と有線または無線で接続可能な車載端末と、サーバと、を含む情報配信システムであって、
前記車載端末は、
前記車載端末に固有の端末識別情報を記憶する車載端末識別情報記憶部と、
前記車載端末識別情報記憶部に記憶されている端末識別情報を含む前記車載端末の認証情報を生成する認証情報生成部と、
前記認証情報生成部で生成された認証情報を前記通信端末に送信する端末機器間通信部と、を備え、
前記通信端末は、
前記車載端末と有線または無線で接続可能な機器間通信部と、
前記機器間通信部で受信した前記車載端末の認証情報を記憶する記憶部と、
前記記憶部に記憶されている前記車載端末の認証情報を前記サーバへ送信可能なサーバ通信部と、を備え、
前記サーバは、
前記車載端末の認証情報を、前記通信端末から受信する端末通信部と、
前記端末通信部で受信した前記車載端末の認証情報を認証する認証情報検証処理部と、
前記認証情報検証処理部で認証が成功した日時を記憶しておく最終認証日時記憶部と、
前記最終認証日時記憶部に前記認証情報検証処理部で認証が成功した場合の日時を格納する認証情報管理部と、を備え、
前記サーバは、前記通信端末から前記車載端末の認証情報を受信した場合に、前記認証情報検証処理部で前記車載端末の認証情報の認証をするときの日時と、前記最終認証日時記憶部に記憶されている日時と、を用いて、前記車載端末の認証情報の認証すること、
を特徴とする情報配信システム。
【請求項２】
前記サーバは、
前記車載端末用のソフトウェアを配信するソフトウェア配信部を備え、
前記認証情報管理部は、前記最終認証日時記憶部に、前記車載端末用のソフトウェアの配信を完了した日時を記憶すること、
を特徴とする請求項１に記載の情報配信システム。
【請求項３】
前記サーバは、前記車載端末用のソフトウェアを暗号化して配信する暗号処理部と、前記車載端末用のソフトウェアを暗号化するソフトウェア固有鍵記憶部を備え、
前記認証情報管理部は、前記最終認証日時記憶部に、前記ソフトウェア固有鍵の配信を完了した日時を記憶すること、
を特徴とする請求項１乃至請求項２記載の情報配信システム。
【請求項４】
前記サーバは、
前記車載端末用のソフトウェアごとに前記最終認証日時を記憶する車載端末用ソフトウェア管理データベースを備え、
前記認証情報検証処理部は、前記車載端末用のソフトウェアごとに前記ソフトウェア管理データベースに記憶した前記車載端末用のソフトウェアに固有の最終認証日時を用いて、前記車載端末用のソフトウェアの有効期限を管理すること、
を特徴とする請求項１乃至請求項４記載の情報配信システム。
【請求項５】
前記サーバは、前記車載端末用のソフトウェアの配信回数を管理可能なこと、
を特徴とする請求項５記載の情報配信システム。
【請求項６】
前記サーバは、前記ソフトウェア固有鍵の配信回数を管理可能なこと、
を特徴とする請求項５乃至請求項６記載の情報配信システム。
【請求項７】
前記車載端末の認証情報には、乱数を含むこと、
を特徴とする請求項１乃至請求項７記載の情報配信システム。
【請求項８】
前記車載端末の認証情報には、前記車載端末および前記サーバで共有する数値を使用すること、
を特徴とする請求項１乃至請求項７記載の情報配信システム。
【請求項９】
通信端末と、前記通信端末と有線または無線で接続可能な車載端末であって、
前記車載端末は、
前記車載端末に固有の端末識別情報を記憶する車載端末識別情報記憶部と、
前記車載端末識別情報記憶部に記憶されている端末識別情報を含む前記車載端末の認証情報を生成する認証情報生成部と、
前記認証情報生成部で生成された認証情報を前記通信端末に送信する端末機器間通信部と、を備え、
前記認証情報生成部は、
前記車載端末と、前記通信端末とが接続された場合に、認証情報をワンタイム化するための情報と、前記車載端末の識別情報と、を用いて認証情報を生成し、
前記認証情報を、前記通信端末を介してサーバに送信すること、
を特徴とする車載端末。
【請求項１０】
サーバおよび車載端末と通信可能な通信端末であって、
前記車載端末から受信した前記車載端末の認証情報を記憶する記憶部と、
前記記憶部に記憶されている前記車載端末の認証情報と、前記暗号化ソフトウェアを復号するためのソフトウェア固有鍵の取得要求と、を前記サーバへ送信し、前記車載端末の暗号化ソフトウェアと、前記サーバにおいて前記復号鍵が配信可と判断された場合に前記ソフトウェア固有鍵を受信するサーバ通信部と、
を備えること、
を特徴とする通信端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯電話等の通信機器を外部接続することが可能なカーナビゲーション等の車載端末に対してサーバから情報を配信する、技術に関する。
【背景技術】
【０００２】
ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ Ｅｖｏｌｕｔｉｏｎ）回線網等の移動体通信網や無線ＬＡＮ（Local Area Network）を使用してデータ通信を行う、高機能携帯電話（いわゆる「スマートフォン」）等の通信端末が普及してきた。高機能携帯電話では、ＰＣ（Personal Computer）と同様に様々なソフトウェアを実行可能で、それらのソフトウェアをユーザが自由にインストール可能である。高機能携帯電話は、このような特徴を有するため、Ｗｅｂサービスとの親和性が高く多様なサービスが提供されている。
【０００３】
通信機能を具備しないことが多いカーナビゲーション等の車載端末においては、高機能携帯電話等を含む通信端末とＵＳＢ（Universal Serial Bus）やＢｌｕｅｔｏｏｔｈ（登録商標）等の機器間通信を使用し、通信端末側のＷｅｂサービス等のデータ通信が前提となるサービスを間接的に利用することが行われている。例えば、通信端末でインターネット検索機能により目的地の情報を検索し、その目的地へのルート検索を指示すると、その地点の情報がカーナビゲーション側に送信される。そして、カーナビゲーションにおいてルート検索が行われ、その結果がカーナビゲーションに表示される。
【０００４】
このような通信端末と車載端末との連携は、双方のソフトウェアの連携によって実現される。ソフトウェアによる連携機能の提供により、ユーザによるソフトウェアの追加を容易にし、例えば新サービスに対応するためのソフトウェアを後から追加可能となる。通信端末では、アプリケーションの配布やＯＳ（Operating System）の更新等、端末上で動作するソフトウェアの配信は、通信ネットワークを介してサーバから実行されることが一般的である。車載端末への車載端末上で動作するソフトウェアの配信の場合も、同様に通信端末との接続により、通信ネットワークを介してサーバから実行される。
【０００５】
この方法では、搭乗者が車両内の車載端末に通信端末を接続した状態でサーバに接続し、取得したいソフトウェアを選択、必要であれば購入手続きを行った後に、所望のソフトウェアをサーバから通信ネットワークおよび通信端末を介して車載端末に取得する。
【０００６】
しかしながら、上記従来の技術では、ソフトウェアの取得が終了するまで通信端末を車載端末に接続した状態にしておく必要があり、たとえば、大容量のソフトウェアを取得する場合には長時間を要することとなり、搭乗者はソフトウェアの取得が完了するまで車両を離れられないという問題があった。
【０００７】
これを解決する技術として、特許文献１に記載された技術がある。特許文献１に記載された技術では、ソフトウェアもしくはコンテンツのデータをオンライン販売するためのｅ−コマースサイトを備えたサーバと、通信端末用の識別情報を有する通信端末と、通信端末用の識別情報を記憶するとともに車載端末用の識別情報を有する車載端末と、を備えた車両用ダウンロードシステムにおいて、通信端末を介してサーバに車載端末用の識別情報および通信端末用の識別情報を送信し、その識別情報に基づきデータを購入し、購入したデータを携帯電話に記憶させ、その記憶したデータを車載端末で取得する。
【０００８】
このように、車載端末は通信端末を介して車載端末からサーバにアクセスし、サーバは車載端末用の識別情報を用いて車載端末を特定し、さらに特定された車載端末用のソフトウェアを特定して通信端末に送信し、通信端末はサーバから送信されるソフトウェアを一時的に記憶しておく。
【０００９】
これにより、ソフトウェアの取得が終了するまで通信端末を車載端末に接続した状態にしておく必要がなくなり、通信端末の所有者が通信端末を携帯して車両から離れたとしてもソフトウェアを取得し続けることができる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００７−１９９９７２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、特許文献１に記載の技術では、車載端末の識別情報およびソフトウェアに対するセキュリティ面での保護が実施されていないため、正規の車載端末を装ったなりすましによるソフトウェアの不正な取得や、不正な手段を用いたソフトウェアの複製および頒布などの、ソフトウェアの不正な利用を防止することができない。
【００１２】
このような背景に鑑みて本発明がなされたのであり、本発明は、ソフトウェアの不正利用を防止することが可能な、技術を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するための手段として、特許請求の範囲に記載の技術を用いる。
一例を挙げるならば、通信端末と、前記通信端末と有線または無線で接続可能な車載端末と、サーバと、を含む情報配信システムであって、前記車載端末は、前記車載端末に固有の端末識別情報を記憶する車載端末識別情報記憶部と、前記車載端末識別情報記憶部に記憶されている端末識別情報を含む前記車載端末の認証情報を生成する認証情報生成部と、前記認証情報生成部で生成された認証情報を前記通信端末に送信する端末機器間通信部と、を備え、前記通信端末は、前記車載端末と有線または無線で接続可能な機器間通信部と、前記機器間通信部で受信した前記車載端末の認証情報を記憶する記憶部と、前記記憶部に記憶されている前記車載端末の認証情報を前記サーバへ送信可能なサーバ通信部と、を備え、前記サーバは、前記車載端末の認証情報を、前記通信端末から受信する端末通信部と、前記端末通信部で受信した前記車載端末の認証情報を認証する認証情報検証処理部と、前記認証情報検証処理部で認証が成功した日時を記憶しておく最終認証日時記憶部と、前記最終認証日時記憶部に前記認証情報検証処理部で認証が成功した場合の日時を格納する認証情報管理部と、を備え、前記サーバは、前記通信端末から前記車載端末の認証情報を受信した場合に、前記認証情報検証処理部で前記車載端末の認証情報の認証をするときの日時と、前記最終認証日時記憶部に記憶されている日時と、を用いて、前記車載端末の認証情報の認証すること、を特徴とする情報配信システムである。
【発明の効果】
【００１４】
本発明によれば、ソフトウェアの不正利用を防止する情報配信方法、情報配信システムおよび車載端末を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施形態に係る情報配信システムの全体構成を説明するための図である。
【図２】本発明の第１の実施形態に係る車載端末の構成例を示す機能ブロック図である。
【図３】本発明の第１の実施形態に係る通信端末の構成例を示す機能ブロック図である。
【図４】本発明の第１の実施形態に係るサーバの構成例を示す機能ブロック図である。
【図５】本発明の第１の実施形態に係る車載端末管理ＤＢに記憶されるデータの構成を説明するための図である。
【図６】本発明の第１の実施形態に係る情報配信システムが行う端末認証処理の流れを示すシーケンス図である。
【図７】本発明の第１の実施形態に係る情報配信システムが行うソフトウェア取得処理の流れを示すシーケンス図である。
【図８】本発明の第１の実施形態に係る情報配信システムが行うソフトウェア固有鍵取得処理の流れを示すシーケンス図である。
【図９】本発明の第１の実施形態に係る車載端末および通信端末の端末認証処理中における画面表示の一例を示す図である。
【図１０】本発明の第１の実施形態に係る通信端末のソフトウェア取得処理中における画面表示の一例を示す図である。
【図１１】本発明の第１の実施形態に係る車載端末および通信端末のソフトウェア固有鍵取得処理中における画面表示の一例を示す図である。
【図１２】本発明の第２の実施形態に係る情報配信システムが行う端末認証処理の流れを示すシーケンス図である。
【図１３】本発明の第３の実施形態に係る情報配信システムが行うソフトウェア固有鍵取得処理の流れを示すシーケンス図である。
【図１４】本発明の第４の実施形態に関わる車載端末用ソフトウェア管理ＤＢに記憶されるデータの構成を説明するための図である。
【図１５】本発明の第５の実施形態に関わるユーザ管理ＤＢに記憶されるデータの構成を説明するための図である。
【発明を実施するための形態】
【００１６】
次に、本発明を実施するための形態（以下、「本発明の実施形態」という）に係る情報配信システム１等について説明する。なお、本発明の実施形態に係る通信端末２０は、例えば、高機能携帯電話であるが、車載端末１０およびサーバ３０と接続されソフトウェア等の送受信が可能な通信装置であればよい。
【００１７】
≪第１の実施形態≫
まず、本発明の第１の実施形態に係る情報配信システム１について説明する。本発明の第１の実施形態は、単一の車載端末１０が、通信端末２０を介してサーバ３０からソフトウェアを取得する例である。
図１は、本発明の第１の実施形態に係る情報配信システム１の全体構成を説明するための図である。
【００１８】
図１に示すように、本発明の第１の実施形態に係る情報配信システム１は、車載端末１０と、通信端末２０と、サーバ３０とを含んで構成される。車載端末１０は、通信回線等による通信機能を具備していない車載端末１０（例えば、カーナビゲーション）であり、機器間通信により通信端末２０と接続する。ここで機器間通信とは、ＵＳＢ、Ｂｌｕｅｔｏｏｔｈおよび無線ＬＡＮ（Local Area Network）といった、車載端末１０や通信端末２０が一般的に有している機器間での通信機能を指している。通信端末２０は、ＬＴＥ回線網等の移動体通信網や無線ＬＡＮを使用してデータ通信を行う高機能携帯電話等であり、例えば、スマートフォンである。この通信端末２０は、通信ネットワーク４０を介してインターネットに接続している。また、車載端末１０は、通信端末２０を介してインターネットに接続することができる。サーバ３０は、通信端末２０を介して車載端末１０にソフトウェアを配信する機能を備えており、通信端末２０とサーバ３０とは、インターネットを経由して接続している。以降の説明では、通信端末２０とサーバ３０とは、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を用いてインターネットに接続しているものとするが、本発明における通信端末２０とサーバ３０との接続は、ＨＴＴＰに限定されないものである。
【００１９】
次に、本発明の第１の実施形態に係る情報配信システム１を構成する各装置について、具体的に説明する。
【００２０】
＜車載端末＞
図２は、本発明の第１の実施形態に係る車載端末１０の構成例を示す機能ブロック図である。
図２に示すように、車載端末１０は、制御部１１と、記憶部１２と、ディスプレイ１３と、入力インタフェース１４と、スピーカ１５と、機器間通信部１６とを含んで構成される。
【００２１】
制御部１１は、車載端末１０全体の制御を司り、認証情報生成部１１１、認証情報検証部１１２、インストール処理部１１３、暗号化処理部１１４、時計部１１５、画像処理部１１６、入力処理部１１７、音声処理部１１８および乱数生成部１１９を含んで構成される。なお、この制御部１１の機能は、例えば、車載端末１０の記憶部１２に記憶されたプログラムを、ＣＰＵ（Central Processing Unit）が不図示のメモリ（ＲＡＭ等）に展開し実行することで実現される。
【００２２】
認証情報生成部１１１は、サーバ３０による車載端末１０の認証に使用する端末認証情報およびサーバ３０からの暗号化されたソフトウェアをインストール前に復号するため用いるソフトウェアの復号用の鍵（以下、「ソフトウェア固有鍵」とよぶ）を取得するためのソフトウェア固有鍵要求情報を生成する。
具体的には、認証情報生成部１１１は、端末認証情報（以下、「Ａ」情報とする）として、
（Ａ−１）記憶部１２内の後記する端末識別情報１０１と、
（Ａ−２）時計部１１５から取得する日時と、
（Ａ−３）端末識別情報１０１および日時を、暗号化処理部１１４が記憶部１２内の端末固有鍵１０２を用いて暗号化した情報（暗号化情報）と、
を含む情報を生成する。
【００２３】
また、認証情報生成部１１１は、ソフトウェア固有鍵要求情報（以下、「Ｂ」情報とする）として、
（Ｂ−１）記憶部１２内の後記する端末識別情報１０１と、
（Ｂ−２）時計部１１５から取得する日時と、
（Ｂ−３）通信端末２０を介してサーバ３０から取得したソフトウェアの識別情報と、
（Ｂ−４）端末識別情報１０１、日時およびソフトウェアの識別情報を、暗号化処理部１１４が記憶部１２内の端末固有鍵１０２を用いて暗号化した情報（暗号化情報）と、
を含む情報を生成する。
【００２４】
認証情報検証部１１２は、通信端末２０を介してサーバ３０から取得した、ソフトウェア固有鍵認証情報（以下、「Ｃ」情報とする）が改ざんされたものでないか否かの検証を行う。
なお、ソフトウェア固有鍵認証情報（「Ｃ」情報）は、後記するサーバ３０の認証情報生成処理部３１３で生成される情報である。
このソフトウェア固有鍵認証情報（「Ｃ」情報）は、
（Ｃ−１）ソフトウェアの識別情報と、
（Ｃ−２）ソフトウェアの識別情報およびソフトウェア固有鍵を、サーバ側端末固有鍵３０２（後記する図５参照）を用いて暗号化した情報（暗号化情報）と、
を含んで構成される。なお、このソフトウェア固有鍵認証情報の詳細は後記する。
【００２５】
認証情報検証部１１２は、具体的な処理として、ソフトウェア固有鍵認証情報（「Ｃ」情報）の（Ｃ−２）暗号化情報を、自身の記憶部１２に保存する端末固有鍵１０２で復号し、その復号したソフトウェアの識別情報と、ソフトウェア固有鍵認証情報の（Ｃ−１）ソフトウェアの識別情報と、が一致するか否かを検証する。そして、認証情報検証部１１２は、一致しない場合には、ソフトウェア固有鍵認証情報が改ざんされたものとして処理を終了する。一方、認証情報検証部１１２は、一致する場合には、ソフトウェア固有鍵認証情報（「Ｃ」情報）検証によって正当性が確認できた（認証をＰＡＳＳした）ものとして、復号時に同時に得られるソフトウェア固有鍵を用いて、記憶部１２に格納されている後記する暗号化された状態のソフトウェアを復号する。
【００２６】
インストール処理部１１３は、認証情報検証部１１２が復号したソフトウェアをインストールする。
【００２７】
暗号化処理部１１４は、認証情報生成部１１１からの指示に基づき、端末識別情報１０１および日時を、記憶部１２内の端末固有鍵１０２を用いて暗号化する。そしてその暗号化した情報を、認証情報生成部１１１に引き渡す。
また、暗号化処理部１１４は、同じく認証情報生成部１１１からの指示に基づき、端末識別情報１０１、日時およびソフトウェアの識別情報を、記憶部１２内の端末固有鍵１０２を用いて暗号化する。そしてその暗号化した情報を、認証情報生成部１１１に引き渡す。
【００２８】
時計部１１５は、認証情報生成部１１１からの指示を受け取ると、その時点の日時を、認証情報生成部１１１に引き渡す。
【００２９】
画像処理部１１６は、ソフトウェアのインストールの現時点における処理段階を示す表示画像を生成し、ディスプレイ１３に表示させる処理を行う。
入力処理部１１７は、入力インタフェース１４を介してユーザの入力情報を取得する。
音声処理部１１８は、ソフトウェアのインストールの現時点における処理段階をスピーカ１５に音声情報として出力させる処理を行う。
【００３０】
乱数生成部１１９は、ソフトウェアで数学的に生成される規則性および周期性が少ない疑似乱数を出力したり、不図示のハードウェア乱数生成器の制御により乱数を出力したりする処理を行う。
【００３１】
記憶部１２には、ハードディスクやフラッシュメモリ等の不揮発性メモリから構成され、端末識別情報１０１、端末固有鍵１０２およびカウンタ１０３が記憶されている。
端末識別情報１０１は、車載端末１０の製品番号やモデル番号、製造番号等の端末を一意に特定するための情報である。この端末識別情報１０１によりその車載端末１０を一意に特定し、また、製品番号や型式（機種）、バージョン等を示す車載端末１０の種別をサーバ３０が特定することができる。
また、端末固有鍵１０２は、暗号化処理に用いられる情報であり、車載端末１０ごと、つまり端末識別情報１０１ごとに異なる値を有する。なお、サーバ３０には、この端末識別情報１０１と端末固有鍵１０２との組について、同じ情報が、サーバ側端末識別情報３０１、サーバ側端末固有鍵３０２の組として記憶される。
カウンタ１０３は車載端末１０毎に固有の数値が格納される。車載端末１０毎に固有の数値は、後記するサーバ３０のカウンタ管理ＤＢ３５０に端末識別情報との組として同一の値が記憶される。
【００３２】
ディスプレイ１３は、経路や目的地等の情報を表示する表示装置であり、画像処理部１１６を介して、ソフトウェアのインストールの処理段階を示す情報が表示される。
入力インタフェース１４は、タッチパネルや入力ボタン、リモコン等の入力装置である。
スピーカ１５は、ソフトウェアのインストールの処理段階を示す情報を音声情報として出力する。
【００３３】
機器間通信部１６は、ＵＳＢ、Ｂｌｕｅｔｏｏｔｈ、無線ＬＡＮ等による通信を制御し、通信端末２０との間で、情報の送受信を行う。
【００３４】
＜通信端末＞
次に、本発明の第１の実施形態に係る通信端末２０について説明する。
図３は、本発明の第１の実施形態に係る通信端末２０の構成例を示す機能ブロック図である。
図３に示すように、通信端末２０は、制御部２１と、記憶部２２と、ディスプレイ２３と、入力インタフェース２４と、スピーカ２５と、機器間通信部２６と、通信部２７とを含んで構成される。
【００３５】
制御部２１は、通信端末２０全体の制御を司り、車載端末認証部２１１、ソフトウェア取得部２１２、ソフトウェア送信部２１３、暗号化処理部２１４、ＨＴＴＰクライアント処理部２１５、画像処理部２１６、入力処理部２１７および音声処理部２１８を含んで構成される。なお、この制御部２１の機能は、例えば、通信端末２０の記憶部２２に記憶されたプログラムを、ＣＰＵが不図示のメモリ（ＲＡＭ等）に展開し実行することで実現される。
【００３６】
車載端末認証部２１１は、機器間通信で接続された車載端末１０の端末認証処理の全般を制御する。
具体的には、車載端末認証部２１１は、入力処理部２１７を介して、ユーザから端末認証開始の指示を受け取ると、機器間通信で接続された車載端末１０に対して、端末認証情報（「Ａ」情報）を要求する認証情報要求メッセージを送信し、その車載端末１０から端末認証情報を受信する。
次に、車載端末認証部２１１は、端末認証情報を付した端末認証要求メッセージをサーバ３０に送信する。そして、サーバ３０において端末認証情報の検証が成功したことを示す認証成功メッセージを受信すると、その認証成功メッセージに付された端末認証情報（「Ａ」情報）を、記憶部２２に保存する。また、車載端末認証部２１１は、端末認証が完了したことを示す端末認証完了メッセージを、車載端末１０へ送信する。
【００３７】
ソフトウェア取得部２１２は、サーバ３０からソフトウェアを取得する処理の全般を制御する。
具体的には、ソフトウェア取得部２１２は、入力処理部２１７を介して、ユーザからソフトウェア取得開始が指示されると、通信ネットワーク４０を介してサーバ３０に、記憶部２２に保存した端末認証情報（「Ａ」情報）を付したソフトウェア取得要求メッセージを送信する。
そして、ソフトウェア取得部２１２は、サーバ３０から、ソフトウェアのダウンロード先となるＵＲＬを受信すると、ＨＴＴＰクライアント処理部２１５を介して、自身の記憶部２２に保存した端末認証情報（「Ａ」情報）を付して、ソフトウェアのダウンロード先のＵＲＬにアクセスする。
また、ソフトウェア取得部２１２は、ソフトウェア固有鍵で暗号化された状態のソフトウェア（以下、「暗号化ソフトウェア」とよぶ）を受信し、記憶部２２にその暗号化ソフトウェアを保存する。
【００３８】
ソフトウェア送信部２１３は、車載端末１０に暗号化ソフトウェアを送信し、その暗号化ソフトウェアを復号するためのソフトウェア固有鍵を、サーバ３０から車載端末１０が取得するために必要な一連の処理を行う。
具体的には、ソフトウェア送信部２１３は、入力処理部２１７を介して、ユーザからソフトウェアのインストール要求の指示がされると、機器間通信により接続された車載端末１０に対して、記憶部２２に記憶しておいた暗号化ソフトウェアを送信する。
そして、ソフトウェア送信部２１３は、車載端末１０からソフトウェア固有鍵要求情報（「Ｂ」情報）を受信すると、そのソフトウェア固有鍵要求情報を付したソフトウェア固有鍵要求メッセージを、通信ネットワーク４０を介して、サーバ３０に送信する。
また、ソフトウェア送信部２１３は、ソフトウェア固有鍵認証情報（「Ｃ」情報）をサーバ３０から受信し、そのソフトウェア固有鍵認証情報を車載端末１０へ送信する。
【００３９】
暗号化処理部２１４は、通信ネットワーク４０を介してサーバ３０との送受信を行う情報について、例えば、ＳＳＬ（Secure Sockets Layer）／ＴＳＬ（Transport Layer Security）等の暗号化処理を行う。後記においては、説明を省略するが、通信端末２０とサーバ３０との間の通信は、すべてこの暗号化処理部２１４により暗号化された情報として送受信される。
【００４０】
ＨＴＴＰクライアント処理部２１５は、ソフトウェア取得部２１２がサーバ３０から取得したＵＲＬに対して、ＨＴＴＰ（HyperText Transfer Protocol）に基づき情報を送受信する処理を司る。
【００４１】
画像処理部２１６は、車載端末１０へのソフトウェアのインストールの現時点における処理段階を示す表示画像を生成し、ディスプレイ２３に表示させる処理を行う。
入力処理部２１７は、入力インタフェース２４を介してユーザの入力情報を取得する。
音声処理部２１８は、車載端末１０へのソフトウェアのインストールの現時点における処理段階をスピーカ２５に音声情報として出力させる処理を行う。
【００４２】
また、機器間通信部２６は、ＵＳＢ、Ｂｌｕｅｔｏｏｔｈ、無線ＬＡＮ等による通信を制御し、車載端末１０との間で、情報の送受信を行う。
通信部２７は、移動体通信網や無線ＬＡＮ等の通信ネットワーク４０を介して、サーバ３０と送受信する情報の制御を行う。
【００４３】
＜サーバ＞
次に、本発明の第１の実施形態に係るサーバ３０について説明する。
図４は、本発明の第１の実施形態に係るサーバ３０の構成例を示す機能ブロック図である。
図４に示すように、サーバ３０は、制御部３１と、記憶部３２と、通信部３７とを含んで構成される。
【００４４】
記憶部３２には、車載端末管理ＤＢ（DataBase）３００、車載端末用ソフトウェアＤＢ３１０、ソフトウェア固有鍵ＤＢ３２０、車載端末用ソフトウェア管理ＤＢ３３０、ユーザ管理ＤＢ３４０およびカウンタ管理ＤＢ３５０が記憶されている。
【００４５】
図５は、本発明の第１の実施形態に係る車載端末管理ＤＢ３００に記憶されるデータの構成を説明するための図である。
図５に示すように、車載端末管理ＤＢ３００には、サーバ側端末識別情報３０１に対応付けて、サーバ側端末固有鍵３０２および最終認証日時３０３が格納される。
このサーバ側端末識別情報３０１およびサーバ側端末固有鍵３０２の組の情報は、車載端末１０に記憶される端末識別情報１０１および端末固有鍵１０２の組と同じ情報である。
最終認証日時３０３は、後記する認証情報管理部３１２により、端末認証またはソフトウェア固有鍵要求情報の認証が行われて、認証が成功する度に、その認証が成功した日時を記憶することで更新される情報である。
【００４６】
図４に戻り、車載端末用ソフトウェアＤＢ３１０には、その車載端末１０の機種やバージョン等の種別ごとに、対応したソフトウェアが格納される。また、車載端末用ソフトウェアＤＢ３１０に格納されるソフトウェアは、あらかじめ対応する後記のソフトウェア固有鍵にて暗号化された状態（暗号化ソフトウェア）で格納されてもよい。
ソフトウェア固有鍵ＤＢ３２０には、車載端末用ソフトウェアＤＢ３１０に格納されている各ソフトウェアの復号用の鍵であるソフトウェア固有鍵が格納される。なお、このソフトウェア固有鍵は、後記するソフトウェアの識別情報に対応づけて保存される。
車載端末用ソフトウェア管理ＤＢ３３０には、車載端末毎のソフトウェアの利用状況が格納される。
ユーザ管理ＤＢ３４０には、ユーザの識別情報、ユーザ識別情報の認証に利用するパスワード等の情報およびそのユーザが所有するソフトウェアのライセンス等が格納される。
カウンタ管理ＤＢ３５０には、端末識別情報と端末識別情報毎に固有の数値の組が格納される。端末識別情報毎に固有の数値列は、前記した車載端末１０のカウンタ１０３に格納された数値と同一の値が格納される。
【００４７】
制御部３１は、サーバ３０全体の制御を司り、認証情報検証処理部３１１、認証情報管理部３１２、認証情報生成処理部３１３、暗号処理部３１４、時計部３１５、ＨＴＴＰサーバ処理部３１６、ソフトウェア配信部３１７およびユーザ管理部３１８を含んで構成される。なお、この制御部３１の機能は、例えば、サーバ３０の記憶部３２に記憶されたプログラムを、ＣＰＵが不図示のメモリ（ＲＡＭ等）に展開し実行することで実現される。
【００４８】
認証情報検証処理部３１１は、車載端末１０の端末認証やソフトウェアの配信等に関する認証情報の検証全般を制御する。
具体的には、認証情報検証処理部３１１は、通信端末２０から端末認証情報（「Ａ」情報）が付された端末認証要求メッセージを受信すると、その端末認証情報から、（Ａ−１）端末識別情報１０１と、（Ａ−２）日時と、（Ａ−３）端末識別情報１０１および日時を、端末固有鍵１０２を用いて暗号化した情報（暗号化情報）とを取得する。そして、認証情報検証処理部３１１は、端末認証情報から取得した（Ａ−１）端末識別情報１０１をキーとして、記憶部３２内の車載端末管理ＤＢ３００の検索を行う。具体的には、まず、認証情報検証処理部３１１は、（Ａ−１）端末識別情報１０１に一致する、サーバ側端末識別情報３０１を検索し、その最終認証日時３０３を取得する。
【００４９】
次に、認証情報検証処理部３１１は、（Ａ−２）日時と、取得した最終認証日時３０３から所定の閾値を減算した値とを比較する。そして、認証情報検証処理部３１１は、最終認証日時３０３から閾値を減算した値の方が、（Ａ−２）日時より新しい場合は、リプレイ攻撃等の不正アクセスの可能性があるため認証ＮＧとして処理を終える。一方、認証情報検証処理部３１１は、最終認証日時３０３から閾値を減算した値の方が、（Ａ−２）日時より古い場合は、端末認証情報の（Ａ−１）端末識別情報１０１と、（Ａ−２）日時とを、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して暗号化する。そして、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ａ−３）暗号化情報と一致する場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）させる。
また、最終認証日時３０３から閾値を減算した値の方が（Ａ−２）日時より古い場合の上記処理では、暗号処理部３１４にて、サーバ側端末固有鍵３０２を用いて（Ａ−３）暗号化情報を復号することで得られた情報が、（Ａ−１）端末識別情報１０１および（Ａ−２）日時と一致した場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）としても良い。
なお、認証情報検証処理部３１１は、端末認証情報（「Ａ」情報）が、車載端末１０からのサーバ３０への最初の認証要求であり、最終認証日時３０３に情報が格納されていない場合には、（Ａ−２）日時と最終認証日時３０３との比較は行わず、端末認証情報の（Ａ−１）端末識別情報１０１と、（Ａ−２）日時とを、サーバ側端末固有鍵３０２を用いて暗号化し、（Ａ−３）暗号化情報と一致するか否かの判定に進む。
【００５０】
ここで、閾値を導入する理由を述べる。端末認証情報を車載端末１０の接続時に生成されて通信切断後には無効となる情報として扱うと、後記する図７に示すソフトウェア取得処理のように、車載端末１０を介さず、通信端末２０とサーバ３０のみで行う処理が不可能になりユーザの利便性を損なう。一方、端末認証情報を車載端末１０の接続時に生成されて以降永久に有効となる情報として扱うと、接続時にサーバ３０に送信される端末認証情報が固定値になるため、端末認証情報が漏洩した場合には永久的に不正アクセスが可能となる。これらの問題を解決のために、一定の期間すなわち閾値を設けて閾値の値を超える古い日時を持つ端末認証情報を無効な情報として処理することにより、ユーザの利便性を損なわずに、不正アクセスのリスクを低減することを目的としている。また、サーバ３０と車載端末１０とで各時計部３１５，１１５が示す日時にずれがある場合や、サーバ３０と車載端末１０との通信状態等により接続不可の場合もあることが想定されるため、閾値に用いてある程度の幅を持たせておくことにより、運用を容易にするためである。
なお、この閾値は、サービスを運用する管理者により、所定の時間（分単位、時間単位、日単位等）が設定される。閾値の設定時間が短い程、第３者による不正アクセスを防ぐことができるが、正規のユーザの処理が遅延した場合に、不正アクセスとして認証情報が無効となる可能性が高くなる。一方、閾値の設定時間が長い程、正規のユーザの認証が無効になる可能性は低くなるが、第３者による不正アクセスの可能性が高くなる関係にある。
【００５１】
また、認証情報検証処理部３１１は、通信端末２０からソフトウェア固有鍵要求情報（「Ｂ」情報）が付されたソフトウェア固有鍵要求メッセージを受信すると、ソフトウェア固有鍵要求情報から、（Ｂ−１）端末識別情報１０１と、（Ｂ−２）日時と、（Ｂ−３）ソフトウェアの識別情報と、（Ｂ−４）端末識別情報１０１、日時およびソフトウェアの識別情報を、端末固有鍵１０２を用いて暗号化した情報（暗号化情報）とを取得し、記憶部３２内の車載端末管理ＤＢ３００の検索を行う。具体的には、まず、認証情報検証処理部３１１は、ソフトウェア固有鍵要求情報から取得した（Ｂ−１）端末識別情報１０１に一致する、サーバ側端末識別情報３０１を検索し、その最終認証日時３０３を取得する。
【００５２】
次に、認証情報検証処理部３１１は、（Ｂ−２）日時と、車載端末管理ＤＢ３００の最終認証日時３０３から閾値を減算した値とを比較する。そして、認証情報検証処理部３１１は、最終認証日時３０３から閾値を減算した値の方が、（Ｂ−２）日時より新しい場合は、リプレイ攻撃等の不正アクセスの可能性があるため認証ＮＧとして処理を終える。一方、認証情報検証処理部３１１は、最終認証日時３０３から閾値を減算した値の方が、（Ｂ−２）日時より古い場合は、ソフトウェア固有鍵要求情報の（Ｂ−１）端末識別情報１０１と、（Ｂ−２）日時と、（Ｂ−３）ソフトウェアの識別情報とを、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して暗号化する。そして、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ｂ−４）暗号化情報と一致する場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）させる。
また、最終認証日時３０３から閾値を減算した値の方が（Ｂ−２）日時より古い場合の上記処理では、暗号処理部３１４にて、サーバ側端末固有鍵３０２を用いて（Ｂ−４）暗号化情報を復号することで得られた情報が、（Ｂ−１）端末識別情報１０１、（Ｂ−２）日時および（Ｂ−３）ソフトウェアの識別情報と一致した場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）としても良い。
【００５３】
認証情報管理部３１２は、認証情報検証処理部３１１において、受信した端末認証情報（「Ａ情報」）または通信端末２０へのソフトウェア配信処理の直前に受信した端末認証情報（「Ａ情報」）が認証ＯＫだった場合に、時計部３１５より日時を取得して、車載端末管理ＤＢ３００の最終認証日時３０３を更新する。
【００５４】
認証情報生成処理部３１３は、サーバ３０から車載端末１０に対してソフトウェア固有鍵を送信するための情報であるソフトウェア固有鍵認証情報（「Ｃ」情報）を生成する。
具体的には、認証情報生成処理部３１３は、ソフトウェアの識別情報を用いて、記憶部３２内のソフトウェア固有鍵ＤＢ３２０を検索し、対応するソフトウェア固有鍵を取得する。次に、認証情報生成処理部３１３は、（Ｃ−１）ソフトウェアの識別情報と、（Ｃ−２）ソフトウェアの識別情報および取得したソフトウェア固有鍵を、暗号処理部３１４が車載端末管理ＤＢ３００内のサーバ側端末固有鍵３０２を用いて暗号化した情報（暗号化情報）と、をソフトウェア固有鍵認証情報として生成する。そして、認証情報生成処理部３１３は、生成したソフトウェア固有鍵認証情報を、通信端末２０を介して車載端末１０に送信する。
【００５５】
暗号処理部３１４は、ソフトウェア配信部３１７の指示に基づき、車載端末用ソフトウェアＤＢ３１０に保存されたソフトウェアを、ソフトウェア固有鍵ＤＢ３２０に保存されたソフトウェア固有鍵を用いて暗号化する。
そして、暗号処理部３１４は、認証情報生成処理部３１３からの指示に基づき、ソフトウェアの識別情報およびソフトウェア固有鍵を、車載端末管理ＤＢ３００のサーバ側端末固有鍵３０２を用いて暗号化する。そしてその暗号化した情報を、認証情報生成処理部３１３に引き渡す。
また、暗号処理部３１４は、通信ネットワーク４０を介して通信端末２０との送受信を行う情報について、例えば、ＳＳＬ／ＴＳＬ等の暗号化処理を行う。
【００５６】
時計部３１５は、認証情報管理部３１２または認証情報生成処理部３１３からの指示を受け取ると、その時点の日時を引き渡す。
【００５７】
ＨＴＴＰサーバ処理部３１６は、ＨＴＴＰに基づき、通信端末２０がソフトウェアを取得するためのＵＲＬを生成し、通信端末２０へ送信する。また、ＨＴＴＰサーバ処理部３１６は、通信端末２０からのＵＲＬへのアクセスを受け付ける。
【００５８】
ソフトウェア配信部３１７は、認証情報検証処理部３１１が受信したソフトウェア固有鍵要求情報（「Ｂ」情報）が認証ＯＫだった場合に、記憶部３２内の車載端末用ソフトウェアＤＢ３１０を検索し、端末識別情報１０１を用いて、車載端末１０に適合するソフトウェアを検索して暗号化ソフトウェアを取得する。なお、ソフトウェア配信部３１７は、ソフトウェアが暗号化されていない場合には、暗号処理部３１４を介してソフトウェア固有鍵で暗号化された暗号化ソフトウェアを生成する。
また、ソフトウェア配信部３１７は、ソフトウェア固有鍵要求情報の（Ｂ−３）ソフトウェアの識別情報をキーとして、ソフトウェア固有鍵ＤＢ３２０を検索し、車載端末１０に送信すべきソフトウェア固有鍵を検索する。
ユーザ管理部３１８は、ユーザ管理ＤＢ３４０の管理および車載端末用ソフトウェア管理ＤＢ３３０へのデータの追加および書換え等を行う。
【００５９】
また、通信部３７は、移動体通信網や無線ＬＡＮ等の通信ネットワーク４０を介して、通信端末２０と送受信する情報の制御を行う。
【００６０】
次に、本発明の第１の実施形態に係る情報配信システム１が行う情報配信処理について説明する。この情報配信処理として、（１）車載端末１０の端末識別情報１０１を、通信端末２０を介して、サーバ３０に認証させる端末認証処理、（２）車載端末１０に適合したソフトウェアを通信端末２０がサーバ３０から取得するソフトウェア取得処理、（３）車載端末１０が、通信端末２０を介して、ソフトウェア固有鍵を取得し、ソフトウェアをインストールする処理（ソフトウェア固有鍵取得処理）、を行うことにより、車載端末１０がサーバ３０からソフトウェアを取得する。以下、各処理の流れについて具体的に説明する。
【００６１】
＜端末認証処理＞
図６は、本発明の第１の実施形態に係る情報配信システム１が行う端末認証処理の流れを示すシーケンス図である。この端末認証処理は、車載端末１０が生成した端末認証情報（「Ａ」情報）をサーバ３０に認証させ、認証が成功した場合に、通信端末２０がその端末認証情報（「Ａ」情報）を保存する処理である。
【００６２】
まず、ユーザの操作等により、通信端末２０の入力インタフェース２４を介して、車載端末１０の端末認証の開始が指示されると、通信端末２０の車載端末認証部２１１は、車載端末１０に対して端末認証情報（「Ａ」情報）を要求する認証情報要求メッセージを送信する（ステップＳ１０１）。
なお、この認証情報要求メッセージの送信は、ユーザの操作以外に、例えば、通信端末２０で車載端末１０の端末認証が必要となるソフトウェアイベントを検出した場合等に実行するようにしてもよい。
【００６３】
次に、車載端末１０は、認証情報要求メッセージを受信すると、認証情報生成部１１１が、端末認証情報（「Ａ」情報）を生成する（ステップＳ１０２）。
具体的には、認証情報生成部１１１は、記憶部１２内から端末識別情報１０１を取得し、時計部１１５から現時点の日時を取得する。そして、認証情報生成部１１１は、取得した（Ａ−１）端末識別情報１０１および（Ａ−２）日時を、暗号化処理部１１４に引き渡し、暗号化処理部１１４が、端末固有鍵１０２を用いて、（Ａ−１）端末識別情報１０１および（Ａ−２）日時を暗号化し、その暗号化情報を認証生成部１１１に引き渡す。そして、認証情報生成部１１１は、（Ａ−１）端末識別情報１０１と、（Ａ−２）日時と、（Ａ−３）端末識別情報１０１および日時を端末固有鍵１０２で暗号化した情報（暗号化情報）と、を含む端末認証情報（「Ａ」情報）を生成する。
【００６４】
続いて、車載端末１０の認証情報生成部１１１は、生成した端末認証情報（「Ａ」情報）を通信端末２０に送信する（ステップＳ１０３）。
【００６５】
そして、通信端末２０の車載端末認証部２１１は、受信した端末認証情報（「Ａ」情報）を付した端末認証要求メッセージを、サーバ３０に送信する（ステップＳ１０４）。
【００６６】
サーバ３０は、通信端末２０から受信した端末認証要求メッセージに付された端末認証情報に基づき、車載端末管理ＤＢ３００を検索する（ステップＳ１０５）。
具体的には、サーバ３０の認証情報検証処理部３１１は、端末認証情報から、（Ａ−１）端末識別情報１０１と、（Ａ−２）日時と、（Ａ−３）端末識別情報１０１および日時を、端末固有鍵１０２を用いて暗号化した情報（暗号化情報）とを取得する。そして、認証情報検証処理部３１１は、端末認証情報から取得した（Ａ−１）端末識別情報１０１をキーとして、車載端末管理ＤＢ３００の検索を行い、（Ａ−１）端末識別情報１０１に一致する、サーバ側端末識別情報３０１を検索し、その最終認証日時３０３を取得する。
【００６７】
次に、サーバ３０の認証情報検証処理部３１１は、端末認証情報の検証を行う（ステップＳ１０６）。
具体的には、認証情報検証処理部３１１は、取得した（Ａ−２）日時と、車載端末管理ＤＢ３００の最終認証日時３０３から所定の閾値を減算した値とを比較する。そして、認証情報検証処理部３１１は、最終認証日時３０３から閾値を減算した値の方が、（Ａ−２）日時より新しい場合は、リプレイ攻撃等の不正アクセスの可能性があるため認証ＮＧと判定し（ステップＳ１０７→Ｎｏ）、認証ＮＧを示す認証情報無効メッセージを通信端末２０に送信する（ステップＳ１０８）。そして、通信端末２０の車載端末認証部２１１が、その認証情報無効メッセージを車載端末１０に送信して処理を終える（ステップＳ１０９）。
【００６８】
一方、認証情報検証処理部３１１は、最終認証日時３０３から閾値を減算した値の方が、（Ａ−２）日時より古い場合は、端末認証情報の（Ａ−１）端末識別情報１０１と、（Ａ−２）日時とを、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して暗号化する。そして、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ａ−３）暗号化情報と一致する場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）させる（ステップＳ１０７→Ｙｅｓ）。
認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ａ−３）暗号化情報と一致しない場合には、前記した（Ａ−２）日時を用いた判定と同様に、認証ＮＧとし（ステップＳ１０７→Ｎｏ）、ステップＳ１０８、Ｓ１０９に進み処理を終了する。
なお、認証情報検証処理部３１１は、最終認証日時３０３から閾値を減算した値の方が、（Ａ−２）日時より古い場合に、（Ａ−３）暗号化情報を、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して復号して得られる情報と、（Ａ−１）端末識別情報１０１および（Ａ−２）日時の比較によって端末認証情報の検証を行っても良い。
また、認証情報検証処理部３１１は、端末認証情報（「Ａ」情報）が、車載端末１０からのサーバ３０への最初の認証要求であり、最終認証日時３０３に情報が格納されていない場合には、（Ａ−２）日時と最終認証日時３０３との比較は行わず、端末認証情報の（Ａ−１）端末識別情報１０１と、（Ａ−２）日時とを、サーバ側端末固有鍵３０２を用いて暗号化し、（Ａ−３）暗号化情報と一致するか否かの判定に進む。
【００６９】
続いて、認証情報管理部３１２は、ステップＳ１０７で受信した端末認証情報（「Ａ」情報）が認証ＯＫだった場合に、時計部３１５より現時点の日時を取得して、車載端末管理ＤＢ３００の最終認証日時３０３を更新する（ステップＳ１１０）。
【００７０】
次に、認証情報検証処理部３１１は、端末認証情報（「Ａ」情報）の認証ＯＫを示す認証成功メッセージに、その端末認証情報を付して通信端末２０に送信する（ステップＳ１１１）。
【００７１】
認証成功メッセージを受信した通信端末２０の車載端末認証部２１１は、認証成功メッセージから端末認証情報（「Ａ」情報）を取得し、記憶部２２に保存する（ステップＳ１１２）。そして、通信端末２０の車載端末認証部２１１は、端末認証処理が完了したことを示す端末認証完了メッセージを車載端末１０に送信する（ステップＳ１１３）。
【００７２】
＜ソフトウェア取得処理＞
次に、車載端末１０に適合したソフトウェアを通信端末２０がサーバ３０から取得するソフトウェア取得処理について説明する。
図７は、本発明の第１の実施形態に係る情報配信システム１が行うソフトウェア取得処理の流れを示すシーケンス図である。
【００７３】
まず、ユーザの操作等により、通信端末２０の入力インタフェース２４を介して、ソフトウェア取得処理の開始が指示されると、通信端末２０のソフトウェア取得部２１２は、図６のステップＳ１１２において、記憶部２２に保存した端末認証情報（「Ａ」情報）を付したソフトウェア取得要求メッセージを生成し、サーバ３０に送信する（ステップＳ２０１）。
なお、このソフトウェア取得要求メッセージの送信は、ユーザの操作以外に、例えば、通信端末２０で車載端末１０のソフトウェア取得が必要となるソフトウェアイベントを検出した場合等に実行するようにしてもよい。
【００７４】
次に、サーバ３０の認証情報検証処理部３１１は、ソフトウェア取得要求メッセージに付された端末認証情報（「Ａ」情報）を取得し、車載端末管理ＤＢ３００の検索（ステップＳ２０２）、端末認証情報の検証（ステップＳ２０３）、およびその検証の判定（「認証ＯＫ？」）（ステップＳ２０４）を行う。なお、このステップＳ２０２〜Ｓ２０４の処理は、前記した図６のステップＳ１０５〜Ｓ１０７の処理と同様のため、説明は省略する。
【００７５】
認証情報検証処理部３１１は、ステップＳ２０４において、端末認証情報（「Ａ」情報）が認証ＮＧの場合は（ステップＳ２０４→Ｎｏ）、認証ＮＧを示す認証情報無効メッセージを通信端末２０に送信してサーバ３０としての処理を終える（ステップＳ２０５）。
一方、認証情報検証処理部３１１は、ステップＳ２０４において、端末認証情報（「Ａ」情報）が認証ＯＫの場合は（ステップＳ２０４→Ｙｅｓ）、ステップＳ２０６に進む。
【００７６】
ステップＳ２０６において、ソフトウェア配信部３１７は、端末認証情報（「Ａ」情報）の（Ａ−１）端末識別情報１０１をキーとして、記憶部３２内の車載端末用ソフトウェアＤＢ３１０を検索し、車載端末１０に適合するソフトウェアを検索する。
その検索の結果、車載端末１０に適合するソフトウェアが存在しなかった場合（ステップＳ２０７→Ｎｏ）、ソフトウェア配信部３１７は、ソフトウェアの取得不能を示す取得不能メッセージを、通信端末２０に送信してサーバ３０としての処理を終える（ステップＳ２０８）。
一方、ソフトウェア配信部３１７が、その車載端末１０に適合するソフトウェアを検索できた場合、つまり、適合するソフトウェアが存在する場合は（ステップＳ２０７→Ｙｅｓ）、ステップＳ２０９に進み処理を続ける。
【００７７】
ステップＳ２０９において、ソフトウェア配信部３１７は、ＨＴＴＰサーバ処理部３１６を介して、通信端末２０が検索したソフトウェアをダウンロードするためのＵＲＬを作成する。そして、ソフトウェア配信部３１７は、そのＵＲＬを通信端末２０に通知する（ステップＳ２１０）。ここで生成されるＵＲＬには、ソフトウェアの識別情報が、サーバ３０によって特定可能なような形式で含まれる。
【００７８】
ＵＲＬを受け取った通信端末２０のソフトウェア取得部２１２は、ＨＴＴＰクライアント処理部２１５を介し、端末認証情報（「Ａ」情報）を付加して、ダウンロード先となるＵＲＬにアクセスする（ステップＳ２１１）。
【００７９】
続いて、サーバ３０の認証情報検証処理部３１１は、取得した端末認証情報（「Ａ」情報）について、車載端末管理ＤＢ３００の検索（ステップＳ２１２）、端末認証情報の検証（ステップＳ２１３）、およびその検証の判定（「認証ＯＫ？」）（ステップＳ２１４）を行う。なお、このステップＳ２１２〜Ｓ２１４の処理は、前記した図６のステップＳ１０５〜Ｓ１０７の処理と同様のため、説明は省略する。
【００８０】
認証情報検証処理部３１１は、ステップＳ２１４において、端末認証情報（「Ａ」情報）が認証ＮＧの場合は（ステップＳ２１４→Ｎｏ）、認証ＮＧを示す認証情報無効メッセージを通信端末２０に送信してサーバ３０としての処理を終える（ステップＳ２１５）。
一方、ステップＳ２１４において、端末認証情報（「Ａ」情報）が認証ＯＫの場合は（ステップＳ２１４→Ｙｅｓ）、認証情報管理部３１２は、時計部３１５より現時点の日時を取得して、車載端末管理ＤＢ３００の最終認証日時３０３を更新する（ステップＳ２１８）。続いて、ソフトウェア配信部３１７は、暗号化ソフトウェアを通信端末２０に送信する（ステップＳ２１６）。なお、この暗号化ソフトウェアには、後記の処理で利用するソフトウェアの識別情報が、ソフトウェア配信部３１７により付されて、通信端末２０に送信される。
そして、通信端末２０は、受信した暗号化ソフトウェアを記憶部２２に保存する（ステップＳ２１７）。
【００８１】
＜ソフトウェア固有鍵取得処理＞
次に、車載端末１０が、通信端末２０を介して、ソフトウェア固有鍵を取得し、ソフトウェアをインストールする処理（ソフトウェア固有鍵取得処理）について説明する。
図８は、本発明の第１の実施形態に係る情報配信システム１が行うソフトウェア固有鍵取得処理の流れを示すシーケンス図である。
【００８２】
まず、ユーザの操作等により、通信端末２０の入力インタフェース２４を介して、ソフトウェアの車載端末１０へのインストールが指示されると、通信端末２０のソフトウェア送信部２１３は、図７のステップＳ２１７で記憶部２２に保存した暗号化ソフトウェアを車載端末１０に送信する（ステップＳ３０１）。
なお、この暗号化ソフトウェアの送信は、ユーザの操作以外に、例えば、通信端末２０で車載端末１０への暗号化ソフトウェアの送信が必要となるソフトウェアイベントを検出した場合等に実行するようにしてもよい。
【００８３】
次に、暗号化ソフトウェアを受信した車載端末１０のインストール処理部１１３は、その暗号化ソフトウェアを記憶部１２に保存する。そして、車載端末１０の認証情報生成部１１１は、ソフトウェア固有鍵要求情報（「Ｂ」情報）を生成する（ステップＳ３０２）。
具体的には、認証情報生成部１１１は、記憶部１２内から端末識別情報１０１を取得し、時計部１１５から現時点の日時を取得し、記憶部１２に保存したソフトウェアの識別情報を取得する。そして、認証情報生成部１１１は、取得した（Ｂ−１）端末識別情報１０１、（Ｂ−２）日時、および（Ｂ−３）ソフトウェアの識別情報を、暗号化処理部１１４に引き渡し、暗号化処理部１１４が、端末固有鍵１０２を用いて、（Ｂ−１）端末識別情報１０１、（Ｂ−２）日時、および（Ｂ−３）ソフトウェアの識別情報を暗号化し、その暗号化情報を認証情報生成部１１１に引き渡す。そして、認証情報生成部１１１は、（Ｂ−１）端末識別情報１０１と、（Ｂ−２）日時と、（Ｂ−３）ソフトウェアの識別情報と、（Ｂ−４）端末識別情報１０１、日時およびソフトウェアの識別情報を、端末固有鍵１０２で暗号化した情報（暗号化情報）と、を含むソフトウェア固有鍵要求情報（「Ｂ」情報）を生成する。
【００８４】
続いて、インストール処理部１１３は、認証情報生成部１１１が生成したソフトウェア固有鍵要求情報（「Ｂ」情報）を通信端末２０に送信する（ステップＳ３０３）。
【００８５】
そして、通信端末２０のソフトウェア送信部２１３は、受信したソフトウェア固有鍵要求情報（「Ｂ」情報）を付したソフトウェア固有鍵要求メッセージを、サーバ３０に送信する（ステップＳ３０４）。
【００８６】
サーバ３０は、通信端末２０から受信したソフトウェア固有鍵要求メッセージに付されたソフトウェア固有鍵要求情報（「Ｂ」情報）に基づき、車載端末管理ＤＢ３００を検索する（ステップＳ３０５）。
具体的には、サーバ３０の認証情報検証処理部３１１は、ソフトウェア固有鍵要求情報から、（Ｂ−１）端末識別情報１０１と、（Ｂ−２）日時と、（Ｂ−３）ソフトウェアの識別情報と、（Ｂ−４）端末識別情報１０１、日時およびソフトウェアの識別情報を、端末固有鍵１０２で暗号化した情報（暗号化情報）とを取得する。そして、認証情報検証処理部３１１は、ソフトウェア固有鍵要求情報から取得した（Ｂ−１）端末識別情報１０１をキーとして、車載端末管理ＤＢ３００の検索を行い、（Ｂ−１）端末識別情報１０１に一致する、サーバ側端末識別情報３０１を検索し、その最終認証日時３０３を取得する。
【００８７】
次に、サーバ３０の認証情報検証処理部３１１は、ソフトウェア固有鍵要求情報の検証を行う（ステップＳ３０６）。
具体的には、認証情報検証処理部３１１は、取得した（Ｂ−２）日時と、車載端末管理ＤＢ３００の最終認証日時３０３から所定の閾値を減算した値とを比較する。そして、認証情報検証処理部３１１は、最終認証日時３０３から閾値を減算した値の方が、（Ｂ−２）日時より新しい場合は、リプレイ攻撃等の不正アクセスの可能性があるため認証ＮＧと判定し（ステップＳ３０７→Ｎｏ）、認証ＮＧを示す認証情報無効メッセージを通信端末２０に送信する（ステップＳ３０８）。そして、通信端末２０のソフトウェア送信部２１３が、その認証情報無効メッセージを車載端末１０に送信して、通信端末２０としての処理を終える（ステップＳ３０９）。
【００８８】
一方、認証情報検証処理部３１１は、最終認証日時３０３から閾値を減算した値の方が、（Ｂ−２）日時より古い場合は、ソフトウェア固有鍵要求情報の（Ｂ−１）端末識別情報１０１と、（Ｂ−２）日時と、（Ｂ−３）ソフトウェアの識別情報とを、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して暗号化する。そして、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ｂ−４）暗号化情報と一致する場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）させる（ステップＳ３０７→Ｙｅｓ）。
また、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ｂ−４）暗号化情報と一致しない場合には、前記した（Ｂ−２）日時を用いた判定と同様に、認証ＮＧとし（ステップＳ３０７→Ｎｏ）、ステップＳ３０８、Ｓ３０９に進み処理をサーバ３０としての処理を終了する。
なお、認証情報検証処理部３１１は、最終認証日時３０３から閾値を減算した値の方が、（Ｂ−２）日時より古い場合に、（Ｂ−４）暗号化情報を、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して復号して得られる情報と、（Ｂ−１）端末識別情報１０１、（Ｂ−２）日時および（Ｂ−３）ソフトウェアの識別情報との比較によってソフトウェア固有鍵要求情報の検証を行っても良い。
【００８９】
次に、ソフトウェア配信部３１７は、ソフトウェア固有鍵要求情報の（Ｂ−３）ソフトウェアの識別情報をキーとして、ソフトウェア固有鍵ＤＢ３２０を検索し、車載端末１０に送信すべきソフトウェア固有鍵を検索する（ステップＳ３１１）。
【００９０】
そして、認証情報生成処理部３１３は、サーバ３０から車載端末１０に対してソフトウェア固有鍵を送信するための情報であるソフトウェア固有鍵認証情報（「Ｃ」情報）を生成する（ステップＳ３１２）。
具体的には、認証情報生成処理部３１３は、（Ｃ−１）ソフトウェアの識別情報と、（Ｃ−２）ソフトウェアの識別情報およびステップＳ３１１で検索したソフトウェア固有鍵を、暗号処理部３１４が車載端末管理ＤＢ３００内のサーバ側端末固有鍵３０２を用いて暗号化した情報（暗号化情報）と、をソフトウェア固有鍵認証情報として生成する。そして、認証情報生成処理部３１３は、生成したソフトウェア固有鍵認証情報（「Ｃ」情報）を、通信端末２０に送信する（ステップＳ３１３）。
【００９１】
ソフトウェア固有鍵認証情報を受信した通信端末２０のソフトウェア送信部２１３は、そのソフトウェア固有鍵認証情報を車載端末１０に送信する（ステップＳ３１４）。
【００９２】
なお、ソフトウェア固有鍵認証情報は、通信端末２０が知り得ないサーバ側端末固有鍵３０２により暗号化されているため、通信端末２０および悪意有る第三者は、仮にソフトウェア固有鍵認証情報を取得できたとしても、その中に含まれるソフトウェア固有鍵を取得することができず、暗号化ソフトウェアを復号することは不可能となる。
【００９３】
次に、車載端末１０は、通信端末２０から受信したソフトウェア固有鍵認証情報（「Ｃ」情報）の検証を行う（ステップＳ３１５）。
具体的には、車載端末１０の認証情報検証部１１２は、ソフトウェア固有鍵認証情報の（Ｃ−２）暗号化情報を、自身の記憶部１２に保存する端末固有鍵１０２で復号し、その復号したソフトウェアの識別情報と、ソフトウェア固有鍵認証情報の（Ｃ−１）ソフトウェアの識別情報と、が一致するか否かを検証する。そして、認証情報検証部１１２は、一致しない場合には、ソフトウェア固有鍵認証情報が改ざんされたものとして認証ＮＧと判定し（ステップＳ３１６→Ｎｏ）、認証ＮＧを示す認証情報無効メッセージを通信端末２０に送信して、車載端末１０としての処理を終了する（ステップＳ３１７）。一方、認証情報検証部１１２は、一致する場合には（ステップＳ３１６→Ｙｅｓ）、認証をＰＡＳＳ（認証ＯＫ）したものとして、復号時に同時に得られるソフトウェア固有鍵を用いて、記憶部１２に格納されている暗号化ソフトウェアを復号する（ステップＳ３１８）。
【００９４】
続いて、インストール処理部１１３は、認証情報検証部１１２が復号したソフトウェアをインストールする（ステップＳ３１９）。そして、インストール処理部１１３は、インストールが完了すると、復号したソフトウェアを削除し（ステップＳ３２０）、ソフトウェア固有鍵を削除する（ステップＳ３２１）。これは、インストールが完了すると、復号したソフトウェアとソフトウェア固有鍵は不要であり、漏洩リスクを下げるために車載端末１０から削除するものである。
【００９５】
そして、インストール処理部１１３は、インストール完了メッセージを通信端末２０に送信して処理を終える（ステップＳ３２２）。
【００９６】
＜画面表示＞
次に、本発明の第１の実施形態に係る車載端末１０および通信端末２０の画面遷移の一例について説明する。以下、車載端末１０の画像処理部１１６の制御によるディスプレイ１３の画面表示と、通信端末２０の画像処理部２１６の制御によるディスプレイ２３の画面表示とを、上記において説明した、（１）端末認証処理、（２）ソフトウェア取得処理、（３）ソフトウェア固有鍵取得処理に対応させて説明する。
【００９７】
（端末認証処理における画面表示）
図９は、本発明の第１の実施形態に係る車載端末１０および通信端末２０の端末認証処理中における画面表示の一例を示す図である。
車載端末１０の画像処理部１１６および通信端末２０の画像処理部２１６は、図６に示した端末認証処理の各ステップの処理中において、図９に示す画面を表示させる。
【００９８】
車載端末１０は、図６の端末認証処理において、ステップＳ１０１の認証情報要求メッセージを通信端末２０から受信し、端末認証情報（「Ａ」情報）を生成するステップＳ１０２までは、画面Ｃ０１「通信端末と接続しています。」を表示する。
続いて、車載端末１０は、端末認証情報を通信端末２０に送信するステップＳ１０３以降は、画面Ｃ０２「サーバに接続し、車載端末を認証しています。」を表示する。そして、ステップＳ１０９で認証情報無効メッセージを受信した場合、車載端末１０は、画面Ｃ０３「車載端末の認証に失敗しました。」を表示する。また、車載端末１０は、ステップＳ１１３の端末認証完了メッセージを受信した場合、画面Ｃ０４「車載端末の認証を完了しました。」を表示する。
【００９９】
一方、通信端末２０は、図６の端末認証情報処理において、ステップＳ１０１の車載端末１０への認証情報要求メッセージの送信から、ステップＳ１０３の端末認証情報（「Ａ」情報）の受信までは、画面Ｐ０１「車載端末に接続し、端末の認証情報を取得しています。」を表示する。
続いて、通信端末２０は、端末認証要求メッセージをサーバ３０に送信するステップＳ１０４以降は、画面Ｐ０２「サーバに接続し、車載端末を認証しています。」を表示する。そして、ステップＳ１０８で認証情報無効メッセージを受信した場合、通信端末２０は、画面Ｐ０３「車載端末の認証に失敗しました。」を表示する。また、通信端末２０は、ステップＳ１１１の認証成功メッセージを受信した場合、画面Ｐ０４「車載端末の認証を完了しました。車載端末の認証情報を保存します。」を表示する。
【０１００】
（ソフトウェア取得処理における画面表示）
次に、ソフトウェア取得処理中における通信端末２０の画面表示について説明する。
図１０は、本発明の第１の実施形態に係る通信端末２０のソフトウェア取得処理中における画面表示の一例を示す図である。
通信端末２０の画像処理部２１６は、図７に示したソフトウェア取得処理の各ステップの処理中において、図１０に示す画面を表示させる。
【０１０１】
通信端末２０は、図７のソフトウェア取得処理において、ステップＳ２０１のソフトウェア取得要求メッセージの送信をすると、画面Ｐ１１「ソフトウェアの取得を開始しました。」を表示する。そして、通信端末２０は、ステップＳ２０５で認証情報無効メッセージを受信した場合、および、ステップＳ２０８で取得不能メッセージを受信した場合、画面Ｐ１２「ソフトウェアの取得に失敗しました。」を表示する。
【０１０２】
続いて、通信端末２０は、サーバ３０からＵＲＬを受け取り、ステップＳ２１１でそのＵＲＬにアクセスすると、画面Ｐ１３「下記サイトに接続し、ソフトウェアを取得しています。http:///・・・」を表示する。そして、ステップＳ２１５の認証情報無効メッセージを受信した場合、通信端末２０は、画面Ｐ１４「ソフトウェアの取得に失敗しました。」を表示する。また、通信端末２０は、ステップＳ２１６で暗号化ソフトウェアをサーバ３０から受信し、ステップＳ２１７で記憶部２２にその暗号化ソフトウェアを保存し終えると、画面Ｐ１５「ソフトウェアの取得を完了しました。」を表示する。
【０１０３】
（ソフトウェア固有鍵取得処理における画面表示）
次に、ソフトウェア固有鍵取得処理中における車載端末１０および通信端末２０の画面表示について説明する。
図１１は、本発明の第１の実施形態に係る車載端末１０および通信端末２０のソフトウェア固有鍵取得処理中における画面表示の一例を示す図である。
車載端末１０の画像処理部１１６および通信端末２０の画像処理部２１６は、図８に示したソフトウェア固有鍵取得処理の各ステップの処理中において、図１１に示す画面を表示させる。
【０１０４】
車載端末１０は、図８のソフトウェア固有鍵取得処理において、ステップＳ３０１で暗号化ソフトウェアを通信端末２０から受信すると、画面Ｃ２１「通信端末に接続し、ソフトウェアを受信しています。」を表示する。そして、車載端末１０は、ステップＳ３０３のソフトウェア固有鍵要求情報（「Ｂ」情報）を通信端末２０に送信すると、画面Ｃ２２「サーバに接続し、ソフトウェアをインストールするための情報を取得しています。」を表示する。そして、ステップＳ３０９で認証情報無効メッセージを受信した場合、車載端末１０は、画面Ｃ２３「ソフトウェアをインストールするための情報を取得できませんでした。」を表示する。
【０１０５】
車載端末１０は、ステップＳ３１４で、ソフトウェア固有鍵認証情報（「Ｃ」情報）を受信すると、画面Ｃ２４「ソフトウェアをインストールしています」を表示する。そして、ソフトウェア固有鍵認証情報の検証で認証ＮＧだった場合（ステップＳ３１６→Ｎｏ）、車載端末１０は、画面Ｃ２５「ソフトウェアをインストールするための情報を取得できませんでした。」を表示する。一方、車載端末１０は、ソフトウェア固有鍵認証情報の検証で認証ＯＫだった場合で（ステップＳ３１６→Ｙｅｓ）、ソフトウェアのインストール（ステップＳ３１９）を完了すると、画面Ｃ２６「ソフトウェアのインストールを完了しました。」を表示する。
【０１０６】
一方、通信端末２０は、図８のソフトウェア固有鍵取得処理において、ステップＳ３０１の車載端末１０への暗号化ソフトウェアの送信から、ステップＳ３０３のソフトウェア固有鍵要求情報（「Ｂ」情報）の受信までは、画面Ｐ２１「車載端末に接続し、ソフトウェアを送信しています。」を表示する。
【０１０７】
続いて、通信端末２０は、ソフトウェア固有鍵要求メッセージをサーバ３０に送信するステップＳ３０４以降は、画面Ｐ２２「サーバに接続し、ソフトウェアをインストールするための情報を取得しています。」を表示する。そして、ステップＳ３０８で認証情報無効メッセージを受信した場合、通信端末２０は、画面Ｐ２３「ソフトウェアをインストールするための情報を取得できませんでした。」を表示する。また、通信端末２０は、ステップＳ３１３でソフトウェア固有鍵認証情報（「Ｃ」情報）を受信し、そのソフトウェア固有鍵認証情報を車載端末１０に送信すると（ステップＳ３１４）、画面Ｐ２４「ソフトウェアをインストールしています。」を表示する。
【０１０８】
そして、通信端末２０は、ステップＳ３１７で認証情報無効メッセージを受信した場合、画面Ｐ２５「ソフトウェアをインストールするための情報を取得できませんでした。」を表示する。一方、通信端末２０は、インストール完了メッセージを受信した場合には（ステップＳ３２２）、画面Ｐ２６「ソフトウェアのインストールを完了しました。」を表示する。
【０１０９】
なお、上記では、各処理内容の画面表示の遷移例について説明したが、車載端末１０は、画面表示される処理内容を、音声処理部１１８がスピーカ１５を介して、音声情報としてユーザに提供してもよい。また、通信端末２０においても、画面表示される処理内容を、音声処理部２１８がスピーカ２５を介して、音声情報としてユーザに提供してもよい。
【０１１０】
以上説明したように、本発明の第１の実施形態によれば、端末固有鍵を用いて、車載端末およびサーバのみが端末認証情報およびソフトウェア固有鍵要求情報を生成可能となる構成とすることで、正規の車載端末を装ったなりすましによるソフトウェアの不正な取得を防ぐことができる。また、通信端末で保持される端末識別情報（「Ａ情報」）は、日時を含むことで車載端末と通信端末が接続されるたびに異なる値、すなわち、ワンタイム化されることおよびサーバによる閾値を用いた端末識別情報の有効期限管理によって、仮に端末識別情報が不正に取得されたとしても、閾値の期間の経過により不正に取得された端末識別情報を無効とすることができる。さらに、ソフトウェアの配信日時を起点とした有効期限管理および端末固有鍵によるソフトウェア固有鍵の暗号化により、不正な手段を用いたソフトウェアの複製および頒布などの、ソフトウェアの不正な利用を防止することができる。
【０１１１】
≪第２の実施形態≫
次に、本発明の第２の実施形態に係る情報配信システム１について説明する。本発明の第２の実施形態に係る情報配信システム１は、本発明の第１の実施形態における端末認証処理において、通信端末２０が車載端末１０より端末認証情報（「Ａ」情報）を取得して保存する例である。
【０１１２】
本発明の第２の実施形態に係る情報配信システム１の全体構成は、図１に示した本発明の第１の実施形態に係る情報配信システム１と同様である。
また、本発明の第２の実施形態に係る情報配信システム１の各装置の構成は、図２〜図４に示した本発明の第１の実施形態に係る各装置の構成と同様である。但し、通信端末２０の車載端末認証部２１１（図３参照）は、第１の実施形態における機能に加えて、以下の機能を備えるものである。
通信端末２０の車載端末認証部２１１は、車載端末１０より受信した端末認証情報（「Ａ」情報）を付した端末認証要求メッセージより、端末認証情報（「Ａ」情報）を取得して、通信端末２０の記憶部２２に保存する（図１２のステップＳ１２０１）。
【０１１３】
また、サーバ３０の認証情報検証処理部（図４参照）は、第１の実施例における機能と以下の機能が異なる。
サーバ３０の認証情報検証処理部３１１は、端末認証情報（「Ａ」情報）の認証ＯＫを示す認証成功メッセージを通信端末２０に送信する。このとき、端末認証情報（「Ａ」情報）は付加しない（図１２のステップＳ１１１）。
【０１１４】
以上説明したように、本発明の第２の実施形態によれば、地下駐車場に駐車中の車両内等、通信端末が移動体通信網等の通信ネットワークに接続できない場合において、端末認証情報を通信端末に記憶することが可能になり、通信端末が車両の外に出て通信ネットワークに接続可能な状態にあるときに、サーバによる端末認証情報の認証を受けることが可能となる。
【０１１５】
≪第３の実施形態≫
次に、本発明の第３の実施形態に係る情報配信システム１について説明する。本発明の第３の実施形態に係る情報配信システム１は、本発明の第１の実施形態乃至第２の実施形態におけるソフトウェアの有効期限管理の起点となる日時を、ソフトウェアをインストールする時点とする例である。
本発明の第３の実施形態に係る情報配信システム１が行う処理の前提として、本発明の第１の実施形態乃至第２の実施形態における図６の端末認証処理と図７のソフトウェア取得処理が行われており、第１の車載端末１０の端末認証情報（「Ａ」情報）も用いて行われている。
【０１１６】
本発明の第３の実施形態に係る情報配信システム１の全体構成は、図１に示した本発明の第１の実施形態乃至第２の実施形態に係る情報配信システム１と同様である。
また、本発明の第３の実施形態に係る情報配信システム１の各装置の構成は、図２〜図４に示した本発明の第１の実施形態乃至第２の実施形態に係る各装置の構成と同様である。但し、サーバ３０の認証情報管理部３１２（図４参照）は、第１の実施形態乃至第２の実施形態における機能に加えて、以下の機能を備えるものである。
【０１１７】
サーバ３０の認証情報管理部３１２は、ステップＳ３０７において、受信したソフトウェア固有鍵要求情報（「Ｂ」情報）が認証ＯＫだった場合に、時計部３１５より現時点の日時を取得して、車載端末管理ＤＢ３００の最終認証日時３０３を更新する（図１３のステップＳ３１０）。
【０１１８】
以上説明したように、本発明の第３の実施形態によれば、ソフトウェアのインストール直前の日時となるソフトウェア固有鍵要求情報の認証が成功した日時を起点とした有効期限管理によって、第１の実施形態で説明した端末認証情報を認証した日時を起点とする場合、ソフトウェアを配信した日時を起点とする場合を含めた３箇所の時点からソフトウェアに最適な有効期限管理の起点となる日時の選択を提供することにより、ソフトウェア配信の柔軟な運用を可能とする。
【０１１９】
≪第４の実施形態≫
次に、本発明の第４の実施形態に係る情報配信システム１について説明する。本発明の第４の実施形態に係る情報配信システム１は、本発明の第１の実施形態乃至第３の実施形態において、ソフトウェア毎に有効期限を管理する例である。
【０１２０】
本発明の第４の実施形態に係る情報配信システム１の全体構成は、図１に示した本発明の第１の実施形態乃至第３の実施形態に係る情報配信システム１と同様である。
また、本発明の第４の実施形態に係る情報配信システム１の各装置の構成は、図２〜図４に示した本発明の第１の実施形態乃至第３の実施形態に係る各装置の構成と同様である。但し、サーバ３０の認証情報管理部３１２（図４参照）は、第１の実施形態乃至第３の実施形態における機能に加えて、以下の機能を備えるものである。
【０１２１】
サーバ３０の認証情報管理部３１２は、端末認証情報（「Ａ」情報）またはソフトウェア固有鍵要求情報（「Ｂ」情報）の検証に、車載端末用ソフトウェア管理ＤＢ３３０に記憶された情報を使用する。
【０１２２】
図１４は、本発明の第４の実施形態に係る車載端末用ソフトウェア管理ＤＢ３３０に記憶されるデータの構成を説明するための図である。
図１４に示すように、車載端末用ソフトウェア管理ＤＢ３３０には、サーバ側端末識別情報３３１、ソフトウェア識別情報３３２、有効期限起点３３３、有効期限閾値３３４、ソフトウェア取得可能回数３３５、ソフトウェア固有鍵取得可能回数３３６および最終認証日時３３７が格納される。
サーバ側端末識別情報３３１は図５を用いて説明したサーバ側端末識別情報３０１と同じである。ソフトウェア識別情報３３２には、サーバ側端末識別情報３３１に格納された識別情報を有する車載端末で利用可能なソフトウェアの識別情報が格納される。
【０１２３】
有効期限起点３３３は、ソフトウェアの有効期限確認時の起点となる処理が格納される。本実施例では、「認証情報生成時」「ソフト配信時」「固有鍵配信時」の３種類が格納される。
「認証情報生成時」は、端末認証処理における端末認証情報の検証において、認証ＯＫと判定された日時を示す（図６のステップＳ１１０または図１２のステップＳ１１０）。「ソフト配信時」は、ソフトウェア取得処理における端末認証情報の検証において、認証ＯＫと判定された日時を示す（図７のステップＳ２１８）。「固有鍵配信時」は、ソフトウェア固有鍵取得処理におけるソフトウェア固有鍵要求情報の検証において、認証ＯＫと判定された日時を示す（図１３のステップＳ３１０）。
【０１２４】
有効期限閾値３３４は、ソフトウェア配信処理直前の端末認証処理における端末認証情報の検証時（図７のステップＳ２１３）およびソフトウェア固有鍵取得処理におけるソフトウェア固有鍵要求情報の検証時（図１３のステップＳ３０６）に使用する閾値が格納される。有効期限起点３３３が「認証情報生成時」の場合の閾値は、情報配信システム１として特定の値を持つため、有効期限閾値３３４には値を格納しない。
【０１２５】
ソフトウェア取得可能回数３３５は、サーバ側端末識別情報３３１に格納された識別情報を有する車載端末において、ソフトウェア識別情報３３２に格納された識別情報を有するソフトウェアの取得可能回数が格納される。ソフトウェアの取得回数に制限が無い場合には、「無制限」が格納される。ソフトウェアの取得ができない状態の場合には「０」が格納される。
【０１２６】
ソフトウェア固有鍵取得可能回数３３６は、サーバ側端末識別情報３３１に格納された識別情報を有する車載端末において、ソフトウェア識別情報３３２に格納された識別情報を有するソフトウェアのソフトウェア固有鍵の取得可能回数が格納される。ソフトウェア固有鍵の取得回数に制限が無い場合には、「無制限」が格納される。ソフトウェア固有鍵の取得ができない状態の場合には「０」が格納される。
【０１２７】
最終認証日時３３７は、有効期限起点３３３が「ソフト配信時」または「固有鍵配信時」である場合の最終認証日時が格納される。なお、有効期限起点３３３が「認証情報生成時」である場合の最終認証日時は、ソフトウェアの取得またはソフトウェア固有鍵の取得といったソフトウェアの管理とは無関係な処理であることから、車載端末管理ＤＢ３００の最終認証日時３０３に格納される。
【０１２８】
なお、有効期限起点３３３、有効期限閾値３３４、ソフトウェア取得可能回数３３５およびソフト固有鍵取得可能回数３３６に格納される値は、ソフトウェア毎に異なっても良いし共通でも良い。また、車載端末毎に異なっても良いし共通であっても良い。
【０１２９】
続いて、サーバ３０の認証情報管理部３１２の処理について説明する。認証情報管理部３１２における端末認証処理は、図６または図１２に示す第１の実施形態乃至第３の実施形態における端末認証処理と同様である。
【０１３０】
認証情報管理部３１２におけるソフトウェア取得処理では、図７のステップＳ２１３における端末認証情報の検証時に、車載端末用ソフトウェア管理ＤＢ３３０を参照する。この時、端末認証情報（「Ａ」情報）に付された車載端末１０の（Ａ−１）端末識別情報１０１および通信端末２０のＵＲＬアクセス（図７のステップＳ２１１）に付されたソフトウェア識別情報をキーとして車載端末用ソフトウェア管理ＤＢ３３０を検索し、有効期限起点３３３、有効期限閾値３３４、ソフトウェア取得可能回数３３５、ソフトウェア固有鍵取得可能回数３３６および最終認証日時３３７を特定する。
【０１３１】
ソフトウェア取得可能回数３３５が０の場合には、認証ＮＧと判定して認証ＮＧを示す認証情報無効メッセージを通信端末２０に送信する（図７のステップＳ２１５）。
【０１３２】
ソフトウェア取得可能回数３３５が０以外の場合で、かつ、有効期限起点３３３が「認証情報生成時」または「固有鍵配信時」の場合には、第１の実施形態乃至第３の実施形態に記載の方法により端末認証情報の検証を実施する。
【０１３３】
ソフトウェア取得可能回数３３５が０以外の場合で、かつ、有効期限起点３３３が「ソフト配信時」の場合には、有効期限閾値３３４に格納された値を閾値として利用し、さらに、最終認証日時３３７に格納された日時を使用して認証情報の検証を行う。
具体的には、認証情報検証処理部３１１は認証情報管理部３１２より有効期限閾値３３４および最終認証日時３３７に格納された値を取得し、最終認証日時３３７の値と、時計部３１５より取得した現時点の日時から有効期限閾値３３４の値を減算した値とを比較する。そして、認証情報検証処理部３１１は、時計部３１５より取得した現時点の日時から有効期限閾値３３４の値を減算した値の方が、最終認証日時３３７の値より新しい場合は、有効期限切れのため認証ＮＧと判定し（図７のステップＳ２１４→Ｎｏ）、認証ＮＧを示す認証情報無効メッセージを通信端末２０に送信する（図７のステップＳ２１５）。
【０１３４】
一方、認証情報検証処理部３１１は、時計部３１５より取得した現時点の日時から有効期限閾値３３４の値を減算した値の方が、最終認証日時３３７の値より古い場合は、ソフトウェア固有鍵要求情報の（Ａ−１）端末識別情報１０１および（Ａ−２）日時を、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して暗号化する。そして、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ａ−３）暗号化情報と一致する場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）させる（図７のステップＳ２１４→Ｙｅｓ）。
認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ａ−３）暗号化情報と一致しない場合には、前記した（Ａ−２）日時を用いた判定と同様に、認証ＮＧとし（図７のステップＳ２１４→Ｎｏ）、図７のステップＳ２１５に進み処理を終了する。
なお、認証情報検証処理部３１１は、時計部３１５より取得した現時点の日時から有効期限閾値３３４の値を減算した値の方が、最終認証日時３３７の値より古い場合に、（Ａ−３）暗号化情報を、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して復号して得られる情報と、（Ａ−１）端末識別情報１０１および（Ａ−２）日時との比較によって端末認証情報の検証を行っても良い。
また、最終認証日時３３７に情報が格納されていない場合には、最終認証日時３３７の値と、時計部３１５より取得した現時点の日時から有効期限閾値３３４の値を減算した値との比較は行わず、端末認証情報の検証を実施する。
【０１３５】
さらに、認証情報管理部３１２は、車載端末用ソフトウェア管理ＤＢ３３０の有効期限起点３３３が「ソフト配信時」の場合には、図７のステップＳ２１８において車載端末用ソフトウェア管理ＤＢ３３０の最終認証日時３３７に時計部３１５より取得した現時点の日時を格納する。続いて、図７のステップＳ２１７における通信端末２０によるソフトウェアの保存処理が終了すると、車載端末用ソフトウェア管理ＤＢ３３０のソフトウェア取得可能回数３３５から１を減算して格納する。なお、ソフトウェア取得可能回数が無制限の場合には、前記減算は行わない。
【０１３６】
認証情報管理部３１２におけるソフトウェア固有鍵取得処理では、図１３のステップＳ３０６におけるソフトウェア固有鍵要求情報の検証時に、車載端末用ソフトウェア管理ＤＢ３３０を参照する。この時、ソフトウェア固有鍵要求情報（「Ｂ」情報）に付された車載端末１０の（Ｂ−１）端末識別情報１０１および（Ｂ−３）ソフトウェアの識別情報をキーとして車載端末用ソフトウェア管理ＤＢ３３０を検索し、有効期限起点３３３、有効期限閾値３３４、ソフトウェア取得可能回数３３５、ソフトウェア固有鍵取得可能回数３３６および最終認証日時３３７を特定する。
【０１３７】
ソフトウェア固有鍵取得可能回数３３６が０の場合には、認証ＮＧと判定して認証ＮＧを示す認証情報無効メッセージを通信端末２０に送信する（図１３のステップＳ３０８）。そして、通信端末２０のソフトウェア送信部２１３が、その認証情報無効メッセージを車載端末１０に送信して、通信端末２０としての処理を終える（図１３のステップＳ３０９）。
【０１３８】
ソフトウェア固有鍵取得可能回数３３６が０以外の場合で、かつ、有効期限起点３３３が「認証情報生成時」の場合には、第１の実施形態乃至第３の実施形態に記載の方法により端末認証情報の検証を実施する。
【０１３９】
ソフトウェア固有鍵取得可能回数３３６が０以外の場合で、かつ、有効期限起点３３３が「ソフト配信時」または「固有鍵配信時」の場合には、有効期限閾値３３４に格納された値を閾値として利用し、さらに、最終認証日時３３７に格納された日時を使用して認証情報の検証を行う。
具体的には、認証情報検証処理部３１１は認証情報管理部３１２より有効期限閾値３３４および最終認証日時３３７に格納された値を取得し、最終認証日時３３７の値と、時計部３１５より取得した現時点の日時から有効期限閾値３３４の値を減算した値とを比較する。そして、認証情報検証処理部３１１は、時計部３１５より取得した現時点の日時から有効期限閾値３３４の値を減算した値の方が、最終認証日時３３７の値より新しい場合は、有効期限切れのため認証ＮＧと判定し（ステップＳ３０７→Ｎｏ）、認証ＮＧを示す認証情報無効メッセージを通信端末２０に送信する（ステップＳ３０８）。そして、通信端末２０のソフトウェア送信部２１３が、その認証情報無効メッセージを車載端末１０に送信して、通信端末２０としての処理を終える（ステップＳ３０９）。
【０１４０】
一方、認証情報検証処理部３１１は、時計部３１５より取得した現時点の日時から有効期限閾値３３４の値を減算した値の方が、最終認証日時３３７の値より古い場合は、ソフトウェア固有鍵要求情報の（Ｂ−１）端末識別情報１０１と、（Ｂ−２）日時と、（Ｂ−３）ソフトウェアの識別情報とを、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して暗号化する。そして、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ｂ−４）暗号化情報と一致する場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）させる（ステップＳ３０７→Ｙｅｓ）。
また、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ｂ−４）暗号化情報と一致しない場合には、認証ＮＧとし（ステップＳ３０７→Ｎｏ）、ステップＳ３０８、Ｓ３０９に進み処理をサーバ３０としての処理を終了する。
なお、認証情報検証処理部３１１は、最終認証日時３０３から閾値を減算した値の方が、（Ｂ−２）日時より古い場合に、（Ｂ−４）暗号化情報を、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して復号して得られる情報と、（Ｂ−１）端末識別情報１０１、（Ｂ−２）日時および（Ｂ−３）ソフトウェアの識別情報との比較によってソフトウェア固有鍵要求情報の検証を行っても良い。
また、最終認証日時３３７に情報が格納されていない場合には、最終認証日時３３７の値と、時計部３１５より取得した現時点の日時から有効期限閾値３３４の値を減算した値との比較は行わず、ソフトウェア固有鍵要求情報の検証を実施する。
【０１４１】
さらに、認証情報管理部３１２は、車載端末用ソフトウェア管理ＤＢ３３０の有効期限起点３３３が「固有鍵配信時」の場合には、図１３のステップＳ３１０において車載端末用ソフトウェア管理ＤＢ３３０の最終認証日時３３７に時計部３１５より取得した現時点の日時を格納する。続いて、図１３のステップＳ３１４における車載端末１０へのソフトウェア固有鍵認証情報の送信が終了すると、車載端末用ソフトウェア管理ＤＢ３３０のソフトウェア固有鍵取得可能回数３３６から１を減算して格納する。なお、ソフトウェア取得可能回数が無制限の場合には、前記減算は行わない。
【０１４２】
以上説明したように、本発明の第４の実施形態によれば、ソフトウェア毎の有効期限管理を実現するとともに、ソフトウェアの不正な利用を防止することができる。
【０１４３】
≪第５の実施形態≫
次に、本発明の第５の実施形態に係る情報配信システム１について説明する。本発明の第５の実施形態に係る情報配信システム１は、本発明の第４の実施形態において、ユーザによるソフトウェアの購入等による車載端末で実行可能なソフトウェアを追加およびサービス停止等による車載端末で実行可能なソフトウェアの削除を実施する例である。
【０１４４】
本発明の第５の実施形態に係る情報配信システム１の全体構成は、図１に示した本発明の第４の実施形態に係る情報配信システム１と同様である。
また、本発明の第５の実施形態に係る情報配信システム１の各装置の構成は、図２〜図４に示した本発明の第４の実施形態に係る各装置の構成と同様である。
【０１４５】
本発明の第５の実施形態に係る車載端末で実行可能なソフトウェアの追加および削除は、サーバ３０のユーザ管理部３１８により実行される。ユーザ管理部３１８は、ユーザ管理ＤＢ３４０を管理する。図１５は、ユーザ管理ＤＢ３４０に記憶されるデータの構成を説明するための図である。
図１５に示すように、ユーザ管理ＤＢ３４０には、ユーザ識別情報３４１、ユーザパスワード３４２、所有端末識別情報Ａ乃至Ｃ（３４３乃至３４５）等が格納される。
ユーザ識別情報３４１およびユーザパスワード３４２は、ユーザを一意に特定するための情報である。所有端末識別情報Ａ乃至Ｃ（３４３乃至３４５）は、ユーザ識別情報３４１で識別されるユーザが所有する車載端末１０の端末識別情報１０１と同じ値が格納される。
【０１４６】
ユーザ管理部３１８は、ユーザによるソフトウェアの購入等により、車載端末１０で利用可能なソフトウェアが追加されると、ユーザ管理ＤＢ３４０を参照し、所有端末識別情報Ａ乃至Ｃ（３４３乃至３４５）を取得することで、そのユーザが利用可能な車載端末を特定する。続いて、車載端末用ソフトウェア管理ＤＢ３３０に対して、そのユーザが利用可能な車載端末識別情報および追加するソフトウェアの識別情報の組をそれぞれサーバ側端末識別情報３３１、ソフトウェア識別情報３３２にあらたな属性として格納する。また、ソフトウェアの識別情報により特定される有効期限起点３３３、有効期限閾値３３４、ソフトウェア取得可能回数３３５およびソフトウェア固有鍵取得可能回数３３６をあわせて格納する。
なお、所有端末識別情報Ａ乃至Ｃ（３４３乃至３４５）の確認により、ユーザが複数の車載端末を所有していることが判明した場合には、所有する車載端末識別情報分の属性を追加しても良いし、特定の車載端末識別情報のみの属性を追加しても良い。
【０１４７】
また、ユーザ管理部３１８は、ユーザによるソフトウェアの購入等により、車載端末用ソフトウェア管理ＤＢ３３０内のソフトウェア取得可能回数３３５に０が格納されており取得不可能な状態のソフトウェアや、ソフトウェア固有鍵取得可能回数３３６に０が格納されており車載端末１０へのインストールが不可能な状態のソフトウェアを利用可能な状態に変更する。
この場合も、前記車載端末１０で利用可能なソフトウェアを追加する場合と同様に、ユーザ管理ＤＢ３４０を参照し、所有端末識別情報Ａ乃至Ｃ（３４３乃至３４５）を取得することで、そのユーザが利用可能な車載端末を特定する。続いて、車載端末用ソフトウェア管理ＤＢ３３０に対して、そのユーザが利用可能な車載端末識別情報および追加するソフトウェアの識別情報の組をそれぞれサーバ側端末識別情報３３１、ソフトウェア識別情報３３２にあらたな属性として格納する。また、追加取得された内容に応じてソフトウェア取得可能回数３３５またはソフトウェア固有鍵取得可能回数３３６の値を変更するする。
【０１４８】
ユーザ管理部３１８は、ソフトウェアそのものの配信中止やサービス廃止等、何らかの理由により車載端末１０で利用可能なソフトウェアを削除する場合には、サーバ側端末識別情報３３１とソフトウェア識別情報３３２の組またはソフトウェア識別情報３３２のみをキーとして削除対象のソフトウェアを検索して削除する。
【０１４９】
ユーザ管理部３１８は、車載端末１０の廃棄等により、車載端末１０が使用不能になった場合には、サーバ側端末識別情報３３１をキーとして削除対象の車載端末を検索して削除する。あわせて、ユーザ管理Ｄ３４０の所有端末識別情報Ａ乃至Ｃ（３４３乃至３４５）に格納された当該車載端末の識別情報もあわせて削除する。
【０１５０】
以上説明したように、本発明の第５の実施形態によれば、ユーザによるソフトウェアの購入等による車載端末で実行可能なソフトウェアを追加およびサービス停止等による車載端末で実行可能なソフトウェアの削除を実施することができる。
【０１５１】
≪第６の実施形態≫
次に、本発明の第６の実施形態に係る情報配信システム１について説明する。本発明の第６の実施形態に係る情報配信システム１は、本発明の第１の実施形態乃至第５の実施形態において、乱数を用いて端末識別情報およびソフトウェア固有鍵要求情報を生成する例である。
【０１５２】
本発明の第６の実施形態に係る情報配信システム１の全体構成は、図１に示した本発明の第１の実施形態乃至第５の実施形態に係る情報配信システム１と同様である。
また、本発明の第６の実施形態に係る情報配信システム１の各装置の構成は、図２〜図４に示した本発明の第１の実施形態乃至第５の実施形態に係る各装置の構成と同様である。但し、車載端末１０の認証情報生成部１１１（図２参照）は、第１の実施形態乃至第５の実施形態における機能との相違点を以下で説明する。
【０１５３】
本発明の第６の実施形態に係る車載端１０の認証情報生成部１１１は、サーバ３０からのソフトウェアのインストールのために用いる、端末認証情報およびソフトウェア固有鍵要求情報を生成する際に、乱数を使用する。
具体的には、認証情報生成部１１１は、端末認証情報（以下、「Ａａ」情報とする）として、
（Ａａ−１）記憶部１２内の後記する端末識別情報１０１と、
（Ａａ−２）乱数生成部１１９から取得する乱数と、
（Ａａ−３）端末識別情報１０１および乱数を、暗号化処理部１１４が記憶部１２内の端末固有鍵１０２を用いて暗号化した情報（暗号化情報）と、
を含む情報を生成する。
【０１５４】
また、認証情報生成部１１１は、ソフトウェア固有鍵要求情報（以下、「Ｂａ」情報とする）として、
（Ｂａ−１）記憶部１２内の後記する端末識別情報１０１と、
（Ｂａ−２）乱数生成部１１９から取得する乱数と、
（Ｂａ−３）通信端末２０を介してサーバ３０から取得したソフトウェアの識別情報と、
（Ｂａ−４）端末識別情報１０１、乱数およびソフトウェアの識別情報を、暗号化処理部１１４が記憶部１２内の端末固有鍵１０２を用いて暗号化した情報（暗号化情報）と、
を含む情報を生成する。
【０１５５】
サーバ３０の認証情報検証処理部３１１における端末認証情報（「Ａａ」情報）の検証処理は以下の通りである。認証情報検証処理部３１１は、通信端末２０から端末認証情報（「Ａａ」情報）が付された端末認証要求メッセージを受信すると（図６のステップＳ１０５および図１２のステップＳ１０５）、その端末認証情報から、（Ａa−１）端末識別情報１０１と、（Ａａ−２）乱数と、（Ａａ−３）端末識別情報１０１および乱数を、端末固有鍵１０２を用いて暗号化した情報（暗号化情報）とを取得する。そして、認証情報検証処理部３１１は、端末認証情報から取得した（Ａａ−１）端末識別情報１０１をキーとして、記憶部３２内の車載端末管理ＤＢ３００の検索を行う。具体的には、まず、認証情報検証処理部３１１は、（Ａａ−１）端末識別情報１０１に一致する、サーバ側端末識別情報３０１を検索し、その最終認証日時３０３を取得する。
【０１５６】
次に、認証情報検証処理部３１１は、最終認証日時３０３と、時計部３１５から取得した現時点の日時から所定の閾値を減算した値とを比較する。そして、認証情報検証処理部３１１は、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が、最終認証日時３０３より新しい場合は、認証ＮＧとして処理を終える。一方、認証情報検証処理部３１１は、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が、最終認証日時３０３より古い場合は、端末認証情報の（Ａａ−１）端末識別情報１０１と、（Ａａ−２）乱数とを、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して暗号化する。そして、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ａａ−３）暗号化情報と一致する場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）させる。
また、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が最終認証日時３０３より古い場合の上記処理では、暗号処理部３１４にて、サーバ側端末固有鍵３０２を用いて（Ａａ−３）暗号化情報を復号することで得られた情報が、（Ａａ−１）端末識別情報１０１および（Ａａ−２）乱数と一致した場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）としても良い。
なお、認証情報検証処理部３１１は、端末認証情報（「Ａａ」情報）が、車載端末１０からのサーバ３０への最初の認証要求であり、最終認証日時３０３に情報が格納されていない場合には、時計部３１５より取得した現時点の日時と最終認証日時３０３との比較は行わず、端末認証情報の（Ａａ−１）端末識別情報１０１と、（Ａａ−２）乱数とを、サーバ側端末固有鍵３０２を用いて暗号化し、（Ａａ−３）暗号化情報と一致するか否かの判定に進む。
【０１５７】
また、図７のソフトウェア取得処理における端末認証情報の検証処理においても上記と同様の処理を行う。
【０１５８】
サーバ３０の認証情報検証処理部３１１における端末認証情報（「Ｂａ」情報）の検証処理は以下の通りである。具体的には、サーバ３０の認証情報検証処理部３１１は、ソフトウェア固有鍵要求情報（「Ｂａ」情報）を受信すると（図８のステップＳ３０５および図１３のステップＳ３０５）、ソフトウェア固有鍵要求情報から、（Ｂａ−１）端末識別情報１０１と、（Ｂａ−２）乱数と、（Ｂａ−３）ソフトウェアの識別情報と、（Ｂａ−４）端末識別情報１０１、乱数およびソフトウェアの識別情報を、端末固有鍵１０２で暗号化した情報（暗号化情報）とを取得する。そして、認証情報検証処理部３１１は、ソフトウェア固有鍵要求情報から取得した（Ｂａ−１）端末識別情報１０１をキーとして、車載端末管理ＤＢ３００の検索を行い、（Ｂａ−１）端末識別情報１０１に一致する、サーバ側端末識別情報３０１を検索し、その最終認証日時３０３を取得する。
【０１５９】
次に、サーバ３０の認証情報検証処理部３１１は、ソフトウェア固有鍵要求情報の検証を行う（図８のステップＳ３０６および図１３のステップＳ３０６）。
具体的には、認証情報検証処理部３１１は、最終認証日時３０３と、時計部３１５から取得した現時点の日時から所定の閾値を減算した値とを比較する。そして、認証情報検証処理部３１１は、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が、最終認証日時３０３より新しい場合は、認証ＮＧと判定し（図８および図１３のステップＳ３０７→Ｎｏ）、認証ＮＧを示す認証情報無効メッセージを通信端末２０に送信する（図８および図１３のステップＳ３０８）。そして、通信端末２０のソフトウェア送信部２１３が、その認証情報無効メッセージを車載端末１０に送信して、通信端末２０としての処理を終える（図８および図１３のステップＳ３０９）。
【０１６０】
一方、認証情報検証処理部３１１は、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が、最終認証日時３０３より古い場合は、ソフトウェア固有鍵要求情報の（Ｂａ−１）端末識別情報１０１と、（Ｂａ−２）乱数と、（Ｂａ−３）ソフトウェアの識別情報とを、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して暗号化する。そして、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ｂａ−４）暗号化情報と一致する場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）させる（図８および図１３のステップＳ３０７→Ｙｅｓ）。
また、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ｂａ−４）暗号化情報と一致しない場合には認証ＮＧとし（図８および図１３のステップＳ３０７→Ｎｏ）、ステップＳ３０８、Ｓ３０９に進み処理をサーバ３０としての処理を終了する。
なお、認証情報検証処理部３１１は、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が、最終認証日時３０３より古い場合に、（Ｂａ−４）暗号化情報を、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して復号して得られる情報と、（Ｂａ−１）端末識別情報１０１、（Ｂａ−２）乱数および（Ｂａ−３）ソフトウェアの識別情報との比較によってソフトウェア固有鍵要求情報の検証を行っても良い。
【０１６１】
以上説明したように、本発明の第６の実施形態によれば、通信端末で保持される端末識別情報（「Ａａ情報」）は、乱数を含むことで車載端末と通信端末が接続されるたびに異なる値、すなわち、ワンタイム化されることおよびサーバによる閾値を用いた端末識別情報の有効期限管理によって、仮に端末識別情報が不正に取得されたとしても、閾値の期間の経過により不正に取得された端末識別情報を無効とすることができる。
【０１６２】
≪第７の実施形態≫
次に、本発明の第７の実施形態に係る情報配信システム１について説明する。本発明の第７の実施形態に係る情報配信システム１は、本発明の第１の実施形態乃至第６の実施形態において、カウンタを用いて端末識別情報およびソフトウェア固有鍵要求情報を生成する例である。
【０１６３】
本発明の第７の実施形態に係る情報配信システム１の全体構成は、図１に示した本発明の第１の実施形態乃至第６の実施形態に係る情報配信システム１と同様である。
また、本発明の第７の実施形態に係る情報配信システム１の各装置の構成は、図２〜図４に示した本発明の第１の実施形態乃至第６の実施形態に係る各装置の構成と同様である。但し、車載端末１０の認証情報生成部１１１（図２参照）は、第１の実施形態乃至第６の実施形態における機能との相違点を以下で説明する。
【０１６４】
本発明の第７の実施形態に係る車載端１０の認証情報生成部１１１は、サーバ３０からのソフトウェアのインストールのために用いる、端末認証情報およびソフトウェア固有鍵要求情報を生成する際に、乱数を使用する。
具体的には、認証情報生成部１１１は、端末認証情報（以下、「Ａｂ」情報とする）として、
（Ａｂ−１）記憶部１２内の後記する端末識別情報１０１と、
（Ａｂ−３）端末識別情報１０１およびカウンタ１０３に格納された数値を、暗号化処理部１１４が記憶部１２内の端末固有鍵１０２を用いて暗号化した情報（暗号化情報）と、
を含む情報を生成する。
【０１６５】
また、認証情報生成部１１１は、ソフトウェア固有鍵要求情報（以下、「Ｂｂ」情報とする）として、
（Ｂｂ−１）記憶部１２内の後記する端末識別情報１０１と、
（Ｂｂ−３）通信端末２０を介してサーバ３０から取得したソフトウェアの識別情報と、
（Ｂｂ−４）端末識別情報１０１、カウンタ１０３に格納された数値およびソフトウェアの識別情報を、暗号化処理部１１４が記憶部１２内の端末固有鍵１０２を用いて暗号化した情報（暗号化情報）と、
を含む情報を生成する。
【０１６６】
サーバ３０の認証情報検証処理部３１１における端末認証情報（「Ａｂ」情報）の検証処理は以下の通りである。認証情報検証処理部３１１は、通信端末２０から端末認証情報（「Ａｂ」情報）が付された端末認証要求メッセージを受信すると（図６のステップＳ１０５および図１２のステップＳ１０５）、その端末認証情報から、（Ａｂ−１）端末識別情報１０１と、（Ａｂ−３）端末識別情報１０１およびカウンタ１０３に格納された数値を、端末固有鍵１０２を用いて暗号化した情報（暗号化情報）とを取得する。そして、認証情報検証処理部３１１は、端末認証情報から取得した（Ａｂ−１）端末識別情報１０１をキーとして、記憶部３２内の車載端末管理ＤＢ３００の検索を行う。具体的には、まず、認証情報検証処理部３１１は、（Ａｂ−１）端末識別情報１０１に一致する、サーバ側端末識別情報３０１を検索し、その最終認証日時３０３を取得する。
【０１６７】
次に、認証情報検証処理部３１１は、最終認証日時３０３と、時計部３１５から取得した現時点の日時から所定の閾値を減算した値とを比較する。そして、認証情報検証処理部３１１は、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が、最終認証日時３０３より新しい場合は、認証ＮＧとして処理を終える。一方、認証情報検証処理部３１１は、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が、最終認証日時３０３より古い場合は、端末認証情報の（Ａｂ−１）端末識別情報１０１と、カウンタ管理ＤＢ３５０に格納された（Ａｂ−１）端末識別情報１０１との組として格納された数値とをサーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して暗号化する。そして、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ａｂ−３）暗号化情報と一致する場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）させる。
また、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が最終認証日時３０３より古い場合の上記処理では、暗号処理部３１４にて、サーバ側端末固有鍵３０２を用いて（Ａｂ−３）暗号化情報を復号することで得られた情報が、（Ａｂ−１）端末識別情報１０１およびカウンタ管理ＤＢ３５０に格納された（Ａｂ−１）端末識別情報１０１との組として格納された数値と一致した場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）としても良い。
なお、認証情報検証処理部３１１は、端末認証情報（「Ａｂ」情報）が、車載端末１０からのサーバ３０への最初の認証要求であり、最終認証日時３０３に情報が格納されていない場合には、時計部３１５より取得した現時点の日時と最終認証日時３０３との比較は行わず、端末認証情報の（Ａｂ−１）端末識別情報１０１と、カウンタ管理ＤＢ３５０に格納された（Ａｂ−１）端末識別情報１０１との組として格納された数値とを、サーバ側端末固有鍵３０２を用いて暗号化し、（Ａｂ−３）暗号化情報と一致するか否かの判定に進む。
【０１６８】
さらに、端末認証処理が認証ＯＫとなり認証処理が完了した場合（図６および図１２のステップＳ１１３）には、車載端末１０のカウンタ１０３に格納された数値およびカウンタ管理ＤＢ３５０に格納された（Ａｂ−１）端末識別情報１０１との組として格納された数値それぞれに１を加算する。
また、図７のソフトウェア取得処理における端末認証情報の検証処理においても上記と同様の処理を行う。
【０１６９】
サーバ３０の認証情報検証処理部３１１における端末認証情報（「Ｂｂ」情報）の検証処理は以下の通りである。具体的には、サーバ３０の認証情報検証処理部３１１は、ソフトウェア固有鍵要求情報（「Ｂｂ」情報）を受信すると（図８のステップＳ３０５および図１３のステップＳ３０５）、ソフトウェア固有鍵要求情報から、（Ｂｂ−１）端末識別情報１０１と、（Ｂｂ−３）ソフトウェアの識別情報と、（Ｂｂ−４）端末識別情報１０１、カウンタ１０３に格納された数値およびソフトウェアの識別情報を、端末固有鍵１０２で暗号化した情報（暗号化情報）とを取得する。そして、認証情報検証処理部３１１は、ソフトウェア固有鍵要求情報から取得した（Ｂｂ−１）端末識別情報１０１をキーとして、車載端末管理ＤＢ３００の検索を行い、（Ｂｂ−１）端末識別情報１０１に一致する、サーバ側端末識別情報３０１を検索し、その最終認証日時３０３を取得する。
【０１７０】
次に、サーバ３０の認証情報検証処理部３１１は、ソフトウェア固有鍵要求情報の検証を行う（図８のステップＳ３０６および図１３のステップＳ３０６）。
具体的には、認証情報検証処理部３１１は、最終認証日時３０３と、時計部３１５から取得した現時点の日時から所定の閾値を減算した値とを比較する。そして、認証情報検証処理部３１１は、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が、最終認証日時３０３より新しい場合は、認証ＮＧと判定し（図８および図１３のステップＳ３０７→Ｎｏ）、認証ＮＧを示す認証情報無効メッセージを通信端末２０に送信する（図８および図１３のステップＳ３０８）。そして、通信端末２０のソフトウェア送信部２１３が、その認証情報無効メッセージを車載端末１０に送信して、通信端末２０としての処理を終える（図８および図１３のステップＳ３０９）。
【０１７１】
一方、認証情報検証処理部３１１は、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が、最終認証日時３０３より古い場合は、ソフトウェア固有鍵要求情報の（Ｂｂ−１）端末識別情報１０１と、カウンタ管理ＤＢ３５０に格納された（Ｂｂ−１）端末識別情報１０１との組として格納された数値と、（Ｂｂ−３）ソフトウェアの識別情報とを、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して暗号化する。そして、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ｂｂ−４）暗号化情報と一致する場合には、正しい端末固有鍵１０２を有する車載端末１０からの認証要求と判定し、認証をＰＡＳＳ（認証ＯＫ）させる（図８および図１３のステップＳ３０７→Ｙｅｓ）。
また、認証情報検証処理部３１１は、この暗号化した結果が、車載端末１０で暗号化された（Ｂｂ−４）暗号化情報と一致しない場合には認証ＮＧとし（図８および図１３のステップＳ３０７→Ｎｏ）、ステップＳ３０８、Ｓ３０９に進み処理をサーバ３０としての処理を終了する。
なお、認証情報検証処理部３１１は、時計部３１５から取得した現時点の日時から所定の閾値を減算した値の方が、最終認証日時３０３より古い場合に、（Ｂｂ−４）暗号化情報を、サーバ側端末固有鍵３０２を用いて暗号処理部３１４を介して復号して得られる情報と、（Ｂｂ−１）端末識別情報１０１、カウンタ管理ＤＢ３５０に格納された（Ｂｂ−１）端末識別情報１０１との組として格納された数値および（Ｂｂ−３）ソフトウェアの識別情報との比較によってソフトウェア固有鍵要求情報の検証を行っても良い。
【０１７２】
さらに、ソフトウェア固有鍵要求情報の認証処理が認証ＯＫとなりソフトウェア固有鍵認証情報の配信が完了した場合（図８および図１３のステップＳ３１４）には、車載端末１０のカウンタ１０３に格納された数値およびカウンタ管理ＤＢ３５０に格納された（Ｂｂ−１）端末識別情報１０１との組として格納された数値それぞれに１を加算する。
【０１７３】
以上説明したように、本発明の第７の実施形態によれば、通信端末で保持される端末識別情報（「Ａｂ情報」）は、乱数を含むことで車載端末と通信端末が接続されるたびに異なる値、すなわち、ワンタイム化されることおよびサーバによる閾値を用いた端末識別情報の有効期限管理によって、仮に端末識別情報が不正に取得されたとしても、閾値の期間の経過により不正に取得された端末識別情報を無効とすることができる。
【０１７４】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。  また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１７５】
１      情報配信システム
１０    車載端末
１１，２１，３１  制御部
１２，２２，３２  記憶部
１３，２３  ディスプレイ
１４，２４  入力インタフェース
１５，２５  スピーカ
１６，２６  機器間通信部
２０    通信端末
２７，３７  通信部
３０    サーバ
４０    通信ネットワーク
１０１  端末識別情報
１０２  端末固有鍵
１０３  カウンタ
１１１  認証情報生成部
１１２  認証情報検証部
１１３  インストール処理部
１１４，２１４，３１４  暗号化処理部
１１５，３１５  時計部
１１６，２１６  画像処理部
１１７，２１７  入力処理部
１１８，２１８  音声処理部
１１９  乱数生成部
２１１  車載端末認証部
２１２  ソフトウェア取得部
２１３  ソフトウェア送信部
２１５  ＨＴＴＰクライアント処理部
３００  車載端末管理ＤＢ
３０１，３３１  サーバ側端末識別情報
３０２  サーバ側端末固有鍵
３０３，３３７  最終認証日時
３１０  車載端末用ソフトウェアＤＢ
３１１  認証情報検証処理部
３１２  認証情報管理部
３１３  認証情報生成処理部
３１６  ＨＴＴＰサーバ処理部
３１７  ソフトウェア配信部
３１８  ユーザ管理部
３２０  ソフトウェア固有鍵ＤＢ
３３０  車載端末用ソフトウェア管理ＤＢ
３３２  ソフトウェア識別情報
３３３  有効期限起点
３３４  有効期限閾値
３３５  ソフトウェア取得可能回数
３３６  ソフトウェア固有鍵取得可能回数
３４０  ユーザ管理ＤＢ
３４１  ユーザ識別情報
３４２  ユーザパスワード
３４３  所有端末識別情報Ａ
３４４  所有端末識別情報Ｂ
３４５  所有端末識別情報Ｃ
３５０  カウンタ管理ＤＢ
【図１】
2015014910.tif 000003
【図２】
2015014910.tif 000004
【図３】
2015014910.tif 000005
【図４】
2015014910.tif 000006
【図５】
2015014910.tif 000007
【図６】
2015014910.tif 000008
【図７】
2015014910.tif 000009
【図８】
2015014910.tif 000010
【図９】
2015014910.tif 000011
【図１０】
2015014910.tif 000012
【図１１】
2015014910.tif 000013
【図１２】
2015014910.tif 000014
【図１３】
2015014910.tif 000015
【図１４】
2015014910.tif 000016
【図１５】
2015014910.tif 000017