(57)【要約】【課題】通信ネットワークを介してデジタルデータを配信する場合に、複製等の不正利用を確実に防止しつつ、配信されたデジタルデータのタイムリーな利用を可能とする。【解決手段】データ配信サーバと通信可能に構成される第１の装置と、該第１の装置に電気的に接続可能に構成され、固有の識別情報を記憶する第２の装置とを含む。第１の装置は、ユーザからデータを指定して取得要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報を読み出してデータ配信サーバに送信し、該識別情報に基づき暗号化された指定データ（以下、「暗号データ」と呼ぶ。）を受信する機能と、ユーザからデータを指定して利用要求があった場合に、該第１の装置と接続されている第２の装置から読み出した識別情報に基づき暗号データを復号して指定データを生成し、利用が終了した場合に該生成した指定データを削除する機能とを備える。【選択図】図１
2004046448.tif 000002
【特許請求の範囲】
【請求項１】
データ配信サーバと通信ネットワークを介して通信可能に構成される第１の装置と、該第１の装置に電気的に接続可能に構成され、固有の識別情報を記憶する第２の装置とを含む、配信データ管理システムであって、
第１の装置は、
ユーザからデータを指定して取得要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報をデータ配信サーバに送信し、データ配信サーバから該識別情報に基づき暗号化された指定データ（以下、「暗号データ」と呼ぶ。）を受信する機能と、
ユーザからデータを指定して利用要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報に基づき暗号データを復号して指定データを生成し、利用が終了した場合に該生成した指定データを削除する機能と、を備えることを特徴とする配信データ管理システム。
【請求項２】
暗号データは、データ配信サーバにおいて決定した乱数情報と前記識別情報とに基づいて暗号化されており、
第１の装置は、
暗号データを受信する際に、その暗号化に用いた乱数情報を受信し、前記受信した乱数情報を第２の装置へ書き込む機能と、
ユーザからデータを指定して利用要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報及び対応する乱数情報を読み出し、該識別情報及び乱数情報に基づき暗号データを復号して指定データを生成し、利用が終了した場合に該生成した指定データを削除する機能と、を備えることを特徴とする請求項１記載の配信データ管理システム。
【請求項３】
第１の装置は、
暗号データを受信する際に、該暗号データの利用制限情報を受信し、前記受信した利用制限情報を第２の装置へ書き込む機能を備え、
ユーザからデータを指定して利用要求があった場合に、該第１の装置と接続されている第２の装置から対応する利用制限情報を読み出し、利用制限を満たしていることを条件として指定データを生成することを特徴とする請求項１又は２記載の配信データ管理システム。
【請求項４】
第２の装置は、第１の装置のチェック情報を記憶しており、第１の装置は、起動する際に、該第１の装置と接続されている第２の装置からチェック情報を読み出し、該チェック情報に基づき第１の装置に変更が加えられていないかどうかを判断する機能を備えることを特徴とする請求項１乃至３のいずれか１項に記載の配信データ管理システム。
【請求項５】
データ配信サーバと通信ネットワークを介して通信可能に構成される第１の装置を含む配信データ管理システムであって、
第１の装置は、
該第１の装置に電気的に接続可能に構成され、固有の識別情報を記憶する第２の装置と組み合わせて用いられ、
ユーザからデータを指定して取得要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報をデータ配信サーバに送信し、データ配信サーバから該識別情報に基づき暗号化された指定データ（以下、「暗号データ」と呼ぶ。）を受信する機能と、
ユーザからデータを指定して利用要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報に基づき暗号データを復号して指定データを生成し、利用が終了した場合に該生成した指定データを削除する機能と、を備えることを特徴とする配信データ管理システム。
【請求項６】
データ配信サーバと通信ネットワークを介して通信可能に構成される第１の装置と組み合わせて用いる配信データ管理システムであって、
前記配信データ管理システムは、第１の装置と電気的に接続可能に構成され、固有の識別情報を記憶する第２の装置を含み、
前記識別情報は、
ユーザからデータを指定して取得要求があった場合に、第１の装置によって読み出され、データ配信サーバに送信され、データ配信サーバにおいて該指定データを暗号化して暗号データを生成するために用いられ、
ユーザからデータを指定して利用要求があった場合に、第１の装置によって読み出され、データ配信サーバから受信した該指定データの暗号化データを復号するために用いられる、ことを特徴とする配信データ管理システム。
【請求項７】
第２の装置は、第１の装置に対する入力装置として機能することを特徴とする請求項１乃至６のいずれか１項に記載の配信データ管理システム。
【請求項８】
第２の装置は、第１の装置とＵＳＢ規格に基づき電気的に接続可能に構成されていることを特徴とする請求項１乃至７のいずれか１項に記載の配信データ管理システム。
【請求項９】
請求項１乃至８のいずれか１項に記載の配信データ管理システムであって、
更に、ユーザからデータを指定して取得要求があった場合に、第１の装置と接続されている第２の装置の識別情報を該第１の装置から受信し、前記識別情報に基づきユーザが指定したデータを暗号化して暗号データを生成し、前記暗号データを第１の装置へ送信する機能を備えるデータ配信サーバを含むことを特徴とする配信データ管理システム。
【請求項１０】
第１の装置及び該第１の装置に電気的に接続可能に構成される固有の識別情報を記憶する第２の装置と組み合わせて用いる配信データ管理システムであって、
前記配信データ管理システムは、第１の装置と通信ネットワークを介して通信可能に構成されるデータ配信サーバを含み、
データ配信サーバは、ユーザからデータを指定して取得要求があった場合に、第１の装置と接続されている第２の装置の識別情報を該第１の装置から受信し、前記識別情報に基づきユーザが指定したデータを暗号化して暗号データを生成し、前記生成した暗号データを第１の装置へ送信する機能を備える、ことを特徴とする配信データ管理システム。
【請求項１１】
データ配信サーバは、第１の装置から前記識別情報を受信した場合に、前記識別情報に対応するユーザに対し指定データに応じて課金処理を実行する機能を備える、ことを特徴とする請求項９又は１０記載の配信データ管理システム。
【請求項１２】
前記データはゲームプログラムであることを特徴とする請求項１乃至１１のいずれか１項に記載の配信データ管理システム。
【請求項１３】
データ配信サーバと、該データ配信サーバと通信ネットワークを介して通信可能に構成される第１の装置と、該第１の装置に電気的に接続可能に構成され、固有の識別情報を記憶する第２の装置とを用いた、配信データ管理方法であって、
第１の装置が、ユーザからデータを指定して取得要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報をデータ配信サーバに送信する工程と、
データ配信サーバが、第１の装置と接続されている第２の装置の識別情報を該第１の装置から受信し、前記識別情報に基づきユーザが指定したデータを暗号化して暗号データを生成し、前記生成した暗号データを第１の装置へ送信する工程と、
第１の装置が、データ配信サーバから該識別情報に基づき暗号化された指定データ（以下、「暗号データ」と呼ぶ。）を受信する工程と、
第１の装置が、ユーザからデータを指定して利用要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報に基づき暗号データを復号して指定データを生成し、利用が終了した場合に該生成した指定データを削除する工程と、を備えることを特徴とする配信データ管理方法。
【請求項１４】
請求項１３記載の配信データ管理方法の工程をコンピュータで実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信ネットワークを介して配信されるデジタルデータについて、複製等の不正利用を防止するための管理技術に関する。
【０００２】
【従来の技術】
近年、通信ネットワークのブロードバンド化にともない、店頭においてＣＤ−ＲＯＭなどに格納した状態でソフトウェア等を販売するパッケージ販売に代えて、インターネット等の通信ネットワークを介してソフトウェア等のみを配信するダウンロード販売が広く普及し始めている。
【０００３】
ダウンロード販売は、パッケージ販売に比べて、場所的、時間的制約を受けずにタイムリーに利用できる点、梱包や記憶媒体に要する費用がかからないため販売価格が安価に設定される点など、ユーザにとってもメリットが多いため、今後とも利用者の増加が見込まれている。
【０００４】
【発明が解決しようとする課題】
ソフトウェア等のデジタルデータは消耗劣化することなく容易に複製することが可能であるため、これを販売対象とする場合、正規購入ユーザ以外による複製データの利用（不正利用）を効果的に防止するために何らかの枠組みを設ける必要がある。
【０００５】
この枠組みとして、従来は、デジタルデータを利用するためのライセンスキー（文字データ等から成るパスワードなど）を別途に作成し、これを正規に購入したユーザにのみ知らせることで、ライセンスキーを有さないユーザの不正利用を排除する、という枠組みを採用している場合が多い。
【０００６】
しかし、かかる枠組みのもとでは、ライセンスキーが流出したり公開されたりして、ライセンスキー自体が複製されてしまった場合は、もはや不正利用を防止することはできないという問題がある。
【０００７】
かかる問題への一つの対応策として、文字データ等によってライセンスキーを構成するのではなく、ハードウェアキー（又はドングル）と呼ばれる物理的な装置によってライセンスキーを構成する方法がある。この方法は、デジタルデータと共にハードウェアキーをユーザに提供し、これをコンピュータ本体に接続しておかないとデジタルデータを利用できない（例えばプログラムが正常に動作しない）ように構成しておくことで、複製データ単体の不正利用を防止するものである。かかる方法は、ハードウェアキーの複製が困難である点を利用したもので、複製が容易な文字データ等のライセンスキーに比べて、より不正利用の抑止効果が高いと言える。
【０００８】
しかし、ダウンロード販売において、このようなハードウェアキー方式を採用しようとすると、次のような問題が生じる。
【０００９】
一つ目は、ハードウェアキーの配布に関わる問題である。例えばパッケージ販売の場合は、ソフトウェア等に対応するハードウェアキーをパッケージに同梱して販売すればよいため、その配布が問題となることはない。しかし、ダウンロード販売の場合は、配信の都度、配信データに対応するハードウェアキーを郵送等によりユーザに配布しなければならず、販売側やユーザの双方にとって取り扱いが煩雑になるのに加え、配信データをタイムリーに利用できるというダウンロード販売の利点が大きく損なわれてしまうことになる。
【００１０】
二つ目は、既存のプログラム等をダウンロード販売する場合には適用が困難であるという問題である。従来のハードウェアキー方式では、例えばプログラムの工程中にハードウェアキーを参照するようなソフトウェアロックを挿入するなど、プログラム等をハードウェアキーに対応させる必要がある。しかし、当初からハードウェアキー向けに開発されたものを除き、既存のプログラム等の多くはハードウェアキーに対応していないのが普通であり、そのような既存のプログラム等について後からハードウェアキーに対応させることは、プログラム等の解析など現実的でない高負荷な作業が必要となるため、実質的に不可能と考えられるからである。
【００１１】
そこで、本発明は、通信ネットワークを介してデジタルデータを配信する場合に、特に既存のプログラム等を配信する場合に、複製等の不正利用を確実に防止しつつ、配信されたデジタルデータのタイムリーな利用を可能とする、新しい枠組みを提供することを目的とする。
【００１２】
【課題を解決するための手段】
本発明の配信データ管理システムは、データ配信サーバと通信ネットワークを介して通信可能に構成される第１の装置と、該第１の装置に電気的に接続可能に構成され、固有の識別情報を記憶する第２の装置とを含む、配信データ管理システムであって、第１の装置は、ユーザからデータを指定して取得要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報をデータ配信サーバに送信し、データ配信サーバから該識別情報に基づき暗号化された指定データ（以下、「暗号データ」と呼ぶ。）を受信する機能と、ユーザからデータを指定して利用要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報に基づき暗号データを復号して指定データを生成し、利用が終了した場合に該生成した指定データを削除する機能と、を備えることを特徴とする。
【００１３】
前記暗号データは、データ配信サーバにおいて決定した乱数情報と前記識別情報とに基づいて暗号化されており、第１の装置は、暗号データを受信する際に、その暗号化に用いた乱数情報を受信し、前記受信した乱数情報を第２の装置へ書き込む機能と、ユーザからデータを指定して利用要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報及び対応する乱数情報を読み出し、該識別情報及び乱数情報に基づき暗号データを復号して指定データを生成し、利用が終了した場合に該生成した指定データを削除する機能と、を備えることが望ましい。
【００１４】
第１の装置は、暗号データを受信する際に、該暗号データの利用制限情報を受信し、前記受信した利用制限情報を第２の装置へ書き込む機能を備え、ユーザからデータを指定して利用要求があった場合に、該第１の装置と接続されている第２の装置から対応する利用制限情報を読み出し、利用制限を満たしていることを条件として指定データを生成することが望ましい。
【００１５】
第２の装置は、第１の装置のチェック情報を記憶しており、第１の装置は、起動する際に、該第１の装置と接続されている第２の装置からチェック情報を読み出し、該チェック情報に基づき第１の装置に変更が加えられていないかどうかを判断する機能を備えることが望ましい。
【００１６】
更に、ユーザからデータを指定して取得要求があった場合に、第１の装置と接続されている第２の装置の識別情報を該第１の装置から受信し、前記識別情報に基づきユーザが指定したデータを暗号化して暗号データを生成し、前記暗号データを第１の装置へ送信する機能を備えるデータ配信サーバを含むことが望ましい。
【００１７】
また本発明の配信データ管理システムは、データ配信サーバと通信ネットワークを介して通信可能に構成される第１の装置を含むことを特徴とする。この場合、　第１の装置は、該第１の装置に電気的に接続可能に構成され、固有の識別情報を記憶する第２の装置と組み合わせて用いられ、ユーザからデータを指定して取得要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報をデータ配信サーバに送信し、データ配信サーバから該識別情報に基づき暗号化された指定データ（以下、「暗号データ」と呼ぶ。）を受信する機能と、ユーザからデータを指定して利用要求があった場合に、該第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報に基づき暗号データを復号して指定データを生成し、利用が終了した場合に該生成した指定データを削除する機能と、を備えることを特徴とする。
【００１８】
また本発明の配信データ管理システムは、データ配信サーバと通信ネットワークを介して通信可能に構成される第１の装置と組み合わせて用いる配信データ管理システムであって、第１の装置と電気的に接続可能に構成され、固有の識別情報を記憶する第２の装置を含むことを特徴とする。この場合、前記識別情報は、ユーザからデータを指定して取得要求があった場合に、第１の装置によって読み出され、データ配信サーバに送信され、データ配信サーバにおいて該指定データを暗号化して暗号データを生成するために用いられることが望ましい。また、前記識別情報は、ユーザからデータを指定して利用要求があった場合に、第１の装置によって読み出され、データ配信サーバから受信した該指定データの暗号化データを復号するために用いられることを特徴とする。
【００１９】
また本発明の配信データ管理システムは、第１の装置及び該第１の装置に電気的に接続可能に構成される固有の識別情報を記憶する第２の装置と組み合わせて用いる配信データ管理システムであって、第１の装置と通信ネットワークを介して通信可能に構成されるデータ配信サーバを含むことを特徴とする。この場合、データ配信サーバは、ユーザからデータを指定して取得要求があった場合に、第１の装置と接続されている第２の装置の識別情報を該第１の装置から受信し、前記識別情報に基づきユーザが指定したデータを暗号化して暗号データを生成し、前記生成した暗号データを第１の装置へ送信する機能を備えることを特徴とする。
【００２０】
本発明の配信データ管理システムにおいて、第２の装置は、第１の装置に対する入力装置として機能することが望ましい。また、第２の装置は、第１の装置とＵＳＢ規格に基づき電気的に接続可能に構成されていることが望ましい。また、データ配信サーバは、第１の装置から前記識別情報を受信した場合に、前記識別情報に対応するユーザに対し指定データに応じて課金処理を実行する機能を備えることが望ましい。また、前記データはゲームプログラムであることが望ましい。
【００２１】
本発明の配信データ管理方法は、データ配信サーバと、該データ配信サーバと通信ネットワークを介して通信可能に構成される第１の装置と、該第１の装置に電気的に接続可能に構成され、固有の識別情報を記憶する第２の装置とを用いた、配信データ管理方法であって、第１の装置が、ユーザからデータを指定して取得要求があった場合に、第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報をデータ配信サーバに送信する工程と、データ配信サーバが、第１の装置と接続されている第２の装置の識別情報を該第１の装置から受信し、前記識別情報に基づきユーザが指定したデータを暗号化して暗号データを生成し、前記生成した暗号データを第１の装置へ送信する工程と、第１の装置が、データ配信サーバから該識別情報に基づき暗号化された指定データ（以下、「暗号データ」と呼ぶ。）を受信する工程と、第１の装置が、ユーザからデータを指定して利用要求があった場合に、第１の装置と接続されている第２の装置からその識別情報を読み出し、該識別情報に基づき暗号データを復号して指定データを生成し、利用が終了した場合に該生成した指定データを削除する工程と、を備えることを特徴とする。
【００２２】
本発明のプログラムは、本発明の配信データ管理方法の工程をコンピュータ上で実行させることを特徴とする。本発明のプログラムは、ＣＤ−ＲＯＭ、磁気ディスク、半導体メモリなどの各種の記録媒体を通じてコンピュータにインストールまたはロードすることができる。
【００２３】
【発明の実施の形態】
（第１実施形態）
以下に本発明の実施の形態について図面を用いて説明する。
【００２４】
図１は、本発明の第１の実施形態である配信データ管理システムの構成を表わすブロック図である。図１に示すように、配信データ管理システム１は、データ配信サーバ１０、第１装置２０、第２装置３０を含んで構成される。
【００２５】
データ配信サーバ１０と第１装置２０とは、通信ネットワーク（ＬＡＮ、インターネット、専用線、パケット通信網、それらの組み合わせ等のいずれであってもよく、有線、無線の両方を含む）を介して、互いに通信可能に構成されている。
【００２６】
第１装置２０と第２装置３０とは、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ　Ｓｅｒｉａｌ　Ｂｕｓ）規格などに基づいて電気的に接続可能に構成されている。第１装置２０は、第２装置３０と接続されている場合、第２装置に記憶される情報を参照することができる。なお、図１では、第１装置２０、第２装置３０についてそれぞれ１つのみしか示していないが、これらの装置はユーザ数に応じて複数設けることが可能である。
【００２７】
ここで、本発明において、どのようなデジタルデータを配信対象とするかは設計に応じて定めることができるが、以下、本実施形態ではゲームプログラムを対象とした場合を例として説明を行う。
【００２８】
データ配信サーバ１０は、制御手段（ＣＰＵ）、入出力手段（キーボード、マウス、ディスプレイなど）、記憶手段（ＲＡＭ、ＲＯＭ、ハードディスクなど）等を備えた一般的な構成の情報処理装置によって構成することができる。
【００２９】
データ配信サーバ１０は、ユーザデータベース１１、ゲームデータベース１２にアクセス可能に構成される。各データベース１１、１２は、データ配信サーバ１０によって直接又は間接にアクセスできるように構成されていればよく、図ではデータ配信サーバ１０の一部として構成しているが、他の情報処理装置の制御下にあってもよい。
【００３０】
ユーザデータベース１１は、後述する第２装置３０に記憶される固有の識別情報（以下、「識別ＩＤ」と呼ぶ。）に対応付けて、該第２装置３０を利用するユーザの個人情報などを記憶している（図２（ａ）参照）。
【００３１】
本実施形態では、ユーザは原則として毎回同じ第２装置３０を利用することを想定しているため、識別ＩＤによってユーザが特定されることになる。ただし、設計によっては、１人のユーザが複数の第２装置３０を利用することや、複数のユーザが同じ第２装置３０を共同利用することを許容するように、ユーザデータベース１１を構成してもよい。
【００３２】
個人情報としては、例えば、氏名、住所、ｅ−ｍａｉｌアドレス、年齢、職業、性別、電話番号、配信したゲームの情報、課金処理に必要な情報（クレジットカード番号やプリペイドカード番号、残金情報など）などが考えられる。なお、個人情報は、ユーザが第１装置２０等を介して入力できるように構成することが望ましいが、本システム１の管理者等が代わりに入力するように構成してもよい。
【００３３】
ゲームデータベース１２は、ゲームを識別するための識別情報（以下、「ゲームＩＤ」と呼ぶ。）に対応づけて、ゲームプログラム、ゲーム関連情報などを記憶している（図２（ｂ）参照）。
【００３４】
ゲームプログラムは、パソコン用ゲーム、家庭用ゲーム機器のゲーム、アーケードゲーム、第２装置２０専用のゲームなど、種々のゲームプログラムであってよい。ただし、第１装置２０に、そのゲームプログラムを実行できる環境（例えば、家庭用ゲーム機器であれば、そのエミュレータなど）が実装されていることが前提となる。
【００３５】
ゲーム関連情報は、例えばゲーム名称、単価情報などを含んで構成される。単価情報は、例えば１日あたりの利用料金などとすることが考えられる。
【００３６】
データ配信サーバ１０は、第１装置２０を介して送られるユーザからの要求に応じて、これら各データベースを参照して、ゲームプログラムの暗号化処理、配信処理、課金処理等を実行する。これらの各処理については、第１装置２０が実行する処理の説明において、併せて説明する。
【００３７】
第１装置２０は、制御手段（ＣＰＵ）、入出力手段（キーボード、マウス、ディスプレイなど）、記憶手段（ＲＡＭ、ＲＯＭ、ハードディスクなど）等を備えた一般的な構成の情報処理装置（例えば、各ユーザが保有する一般的なパソコンや携帯端末）によって構成することができる。ただし、第１装置２０を本システム１の専用装置として構成してもよい。
【００３８】
第１装置２０は、その記憶手段に、ゲームＩＤに対応づけて、暗号化されたゲームプログラム（以下、「暗号ゲームデータ」と呼ぶ。）、ゲーム関連情報などを記憶している（図３（ａ）参照）。後述するように、暗号ゲームデータ等は、データ配信サーバ１０から送信され、第１装置２０の記憶手段に記憶されることになる。
【００３９】
また、第１装置２０は、その記憶手段に、初期チェック処理、ゲーム取得処理、ゲーム実行処理等の各処理に対応するプログラム（ランチャープログラム、エミュレータプログラムなど）を記憶している。エミュレータプログラムはランチャープログラムの一部として構成してもよい。図１では、第１装置２０の制御手段が各プログラムを実行した場合に実現される機能の一部を図示している。
【００４０】
第２装置３０は、原則として本システム１の専用装置として構成され、接続した状態で第１装置２０から参照可能な記憶手段を少なくとも備えている。
【００４１】
第２装置３０について、更に操作ボタンや十字キーなどの入力手段を備えた構成とし、第１装置２０でゲームを実行する場合のコントローラ（操作入力装置）として機能させてもよい。この場合、操作ボタンや十字キーの操作状況は定期的にコードに変換され、第１装置２０から読み出されることになる。
【００４２】
第２装置３０は、その記憶手段に、上述した識別ＩＤを記憶している。識別ＩＤとしては、例えば第２装置２０に付与されたシリアル番号などを用いることができる。
【００４３】
また、第２装置３０は、その記憶手段に、ゲームＩＤに対応づけて、ゲームを暗号化する際に用いた乱数情報、ゲームの利用を制限するための利用期限情報などを記憶している（図３（ｂ）参照）。後述するように、乱数情報、利用期限情報は、データ配信サーバ１０から送信され、第１装置２０によって第２装置３０の記憶手段に書き込まれることになる。
【００４４】
また、第２装置３０は、その記憶手段に、ランチャープログラムのチェック情報を記憶している。後述するように、チェック情報はランチャープログラムの更新時等のタイミングで第１装置２０によって算出され、第２装置３０の記憶手段に書き込まれることになる。
【００４５】
なお、第２装置３０は独立してＣＰＵを備えていてもよく、その場合、第１装置２０が第２装置３０からデータを読み出す処理（第２装置３０へデータを書き込む処理）は、第１装置２０が第２装置３０からデータを受信する処理（第２装置３０へデータを送信する処理）として把握されることになる。
【００４６】
次に、本システム１を利用して実現される、配信データを管理する枠組みについて、図４〜図６に示す処理フローを参照して説明する。なお、各ステップは処理内容に矛盾を生じない範囲で任意に順番を変更して、又は並列して実行することができる。
【００４７】
（初期チェック処理：図４）
第１装置２０は、ユーザから起動コマンド等が入力された場合、装置内に記憶するランチャープログラムを実行（起動）する（Ｓ１００）。ただし、第１装置２０の電源が入れられた場合や、第１装置２０に第２装置３０を電気的に接続した場合に、自動的にランチャープログラムを実行するように構成してもよい。
【００４８】
まず第１装置２０は、ランチャープログラムに基づいて、第１の装置２０（ランチャープログラム）に変更が加えられていないかどうかを判断する初期チェック処理を実行する（Ｓ１０１〜Ｓ１０９）。
【００４９】
具体的には、第１装置２０は、装置内に記憶するランチャープログラムについてチェック情報を算出する（Ｓ１０１）。このようなチェック情報としては、例えばチェックサム（ランチャープログラムのコードを数字として総計した値）を用いることができる。
【００５０】
また第１装置２０は、該第１装置２０と接続されている第２装置３０の記憶手段から記憶されているチェック情報を読み出す（Ｓ１０２）。
【００５１】
そして、第１装置２０は、Ｓ１０１で算出したチェック情報とＳ１０２で読み出したチェック情報とを比較し（Ｓ１０３）、一致しない場合には、「起動できません」等のメッセージを出力して、処理を終了する（Ｓ１０４）。
【００５２】
一方、一致する場合は、第１装置２０は、データ配信サーバ１０にアクセスし、現在時刻情報を要求する（Ｓ１０５）。なおこのとき、データ配信サーバ１０との接続が有料となる場合などを考慮して、予めユーザにデータ配信サーバ１０にアクセスしても良いかどうかを問い合わせ、ユーザが許可を示す入力をした場合にのみアクセスを開始するように構成してもよい。
【００５３】
このように本実施形態では、第１装置２０にランチャープログラムを記憶する一方、そのランチャープログラム自体のチェック情報（チェックサム等）について第１装置２０と物理的に異なる第２装置３０に記憶しておき、初期チェック処理において両者が一致する場合（すなわち、第１装置２０の記憶内容に変更が加えられていない場合）にのみ以降の処理を実行する構成としているため、ランチャープログラム自体を不正に改竄することによる暗号ゲームデータの不正利用を防止することができる。
【００５４】
データ配信サーバ１０は、現在時刻情報の要求を受けた場合、該サーバ１０（又は他の信頼がおけるサーバ等）が管理・記憶する現在時刻情報を第１装置２０に送信する（Ｓ１０６）。
【００５５】
第１装置２０は、データ配信サーバ１０から現在時刻情報を受信する一方（Ｓ１０７）、該第１装置２０に記憶されている暗号ゲームデータのゲームＩＤを抽出し、該第１装置２０と接続されている第２装置３０の記憶手段から、前記抽出したゲームＩＤに対応する利用期限情報を読み出す（Ｓ１０８）。
【００５６】
そして、第１装置２０は、各暗号ゲームデータごとに、前記受信した現在時刻情報と前記読み出した利用期限情報とを比較し、現在時刻が利用期限を経過している場合、その暗号ゲームデータを削除する（Ｓ１０９）。このとき、ユーザの注意を喚起すべく削除する前に所定のメッセージ等を出力するように構成してもよい。
【００５７】
このように本実施形態では、配信した暗号ゲームデータの削除について第２装置３０に記憶する利用期限情報に基づき管理する構成としているため、ゲーム提供側はゲームプログラムをいわゆる売り切りではなくレンタル形式で提供することができ、より自由度の高い料金体系を設定すること等が可能となる。また、データ配信サーバ１０から現在時刻情報を取得する構成としているため、第１装置２０が管理・記憶する現在時刻が不正に変更された場合でも、暗号ゲームデータが利用期限を超えて利用されることを防止することができる。
【００５８】
なお、利用期限に代えて／とともに、利用回数等の利用制限情報に基づいて暗号ゲームデータの削除を管理するように構成してもよい。
【００５９】
第１装置２０は、初期チェック処理後、所定のメニュー画面をディスプレイ等に表示する（Ｓ１１０）。ユーザは、かかるメニュー画面に基づいて「ゲーム取得」、「ゲーム実行」、「終了」等を選択することができる。
【００６０】
（ゲーム取得処理：図５）
第１装置２０は、メニュー画面において「ゲーム取得」が選択された場合、ランチャープログラムに基づいて、ゲーム取得処理を実行する（Ｓ２００〜Ｓ２０２、Ｓ２０９）。
【００６１】
具体的には、まず第１装置２０は、取得可能なゲームについて、ゲーム名称、利用料金などを含む一覧画面をディスプレイ等に表示する（Ｓ２００）。このとき、データ配信サーバ１０（ゲームデータベース１２）にアクセスし、取得可能なゲームのゲーム関連情報を取得して一覧画面に表示するように構成してもよい。ユーザは、かかる一覧画面に基づいて所望のゲームを指定して取得を要求することができる。
【００６２】
第１装置２０は、かかる一覧画面においてゲーム（ゲームＩＤ）が指定された場合、該第１装置２０と接続されている第２装置３０の記憶手段から記憶されている識別ＩＤを読み出す（Ｓ２０１）。
【００６３】
そして、第１装置２０は、前記指定されたゲームＩＤ及び前記読み出した識別ＩＤをデータ配信サーバ１０に送信し、ゲーム取得を要求する（Ｓ２０２）。
【００６４】
データ配信サーバ１０は、ゲーム取得要求、識別ＩＤ、ゲームＩＤを受信した場合、ゲームデータベース１１にアクセスして、前記受信したゲームＩＤに対応するゲームプログラム、ゲーム関連情報を取得する（Ｓ２０３）。なお、ゲームデータベース１１が第１装置２０からゲームＩＤ等を受信し、これに対応するゲームプログラム等をデータ配信サーバ１０に送信する構成としてもよい。
【００６５】
また、データ配信サーバ１０は、暗号化に用いる乱数情報を決定する（Ｓ２０４）。乱数情報の決定には従来のアルゴリズムを用いることができる。
【００６６】
また、データ配信サーバ１０は、取得要求のあったゲームについて、利用期限及び課金額を決定する（Ｓ２０５）。利用期限は、例えばデフォルトとして定めた利用期間（１日、１週間など）や、ゲームに応じて定めた利用期間や、ユーザからの要求に応じて定めた利用期間などを、現在時刻に加算して決定する。また課金額は、前記定めた利用期間に前記取得したゲーム関連情報に含まれる単価情報を積算して決定する。なお、利用期間に関係なく課金額を決定するように構成してもよい。
【００６７】
そして、データ配信サーバ１０は、前記受信した識別ＩＤと前記決定した乱数情報とに基づき、所定のアルゴリズムに従ってゲームプログラムを暗号化し、暗号ゲームデータを生成する（Ｓ２０６）。暗号化アルゴリズムとしては、例えばＲＣ２、ＲＣ５、ＤＥＳ、Ｔｒｉｐｌｅ−ＤＥＳ、ＩＤＥＡなど、一般的な共通鍵暗号アルゴリズムを用いることが考えられる。
【００６８】
次に、データ配信サーバ１０は、ゲーム取得要求を送信してきた第１装置２０に対し、前記決定した乱数情報、前記決定した利用期限、前記生成した暗号ゲームデータ、前記取得したゲーム関連情報を送信する（Ｓ２０７）。
【００６９】
また、データ配信サーバ１０は、ユーザデータベース１１にアクセスして、前記受信した識別ＩＤに対応するユーザの個人情報を取得し、該個人情報に含まれる課金処理に必要な情報、及び前記決定した課金額に基づき、所定の課金処理を実行するとともに、該個人情報に含まれる配信したゲームの情報を更新する（Ｓ２０８）。
【００７０】
課金処理には、いわゆるクレジットカード会社の決済システム、インターネットを利用したプリペイド課金システム、コンビニエンスストア等の店舗で支払うことにより決済を行うシステムなど、外部にある決済処理システムを用いることができる。これらを利用する場合、データ配信サーバ１０は、各システム運営会社の課金・決済サーバ等と送受信を行って課金手続を要求することになる。
【００７１】
第１装置２０は、データ配信サーバ１０から暗号ゲームデータ、乱数情報、利用期限、ゲーム関連情報を受信した場合、前記受信した暗号ゲームデータ及びゲーム関連情報を前記指定されたゲームＩＤ（前記受信した暗号ゲームデータのゲームＩＤ）に対応づけて第１装置２０の記憶手段に記憶するとともに、かかるゲームＩＤに対応づけて前記受信した乱数情報及び利用期限を第２装置３０の記憶手段に書き込み（Ｓ２０９）、Ｓ１０９のメニュー画面やＳ２００の一覧画面の表示等に戻る。
【００７２】
（ゲーム実行処理：図６）
第１装置２０は、メニュー画面において「ゲーム実行」が選択された場合、ランチャープログラムに基づいて、ゲーム実行処理を実行する（Ｓ３００〜Ｓ３０７）。
【００７３】
具体的には、第１装置２０は、まず利用期限を満たしているかどうかをチェックする（利用期限チェック処理）（Ｓ３００〜Ｓ３０１）。すなわち、該第１装置２０に記憶されている暗号ゲームデータのゲームＩＤを抽出し、該第１装置２０と接続されている第２装置３０の記憶手段から、前記抽出したゲームＩＤに対応する利用期限情報を読み出す（Ｓ３００）。次に、各暗号ゲームデータごとに、初期チェック処理において受信した現在時刻情報と前記読み出した利用期限情報とを比較し、現在時刻が利用期限を経過している場合、その暗号ゲームデータを削除する（Ｓ３０１）。このとき、ユーザの注意を喚起すべく削除する前に所定のメッセージ等を出力するように構成してもよい。
【００７４】
次に、第１装置２０は、削除されずに残存している暗号ゲームデータ（利用期限を満たしている暗号ゲームデータ）について、ゲーム名称、利用期限などを含む一覧画面をディスプレイ等に表示する（Ｓ３０２）。ユーザは、かかる一覧画面に基づいて所望のゲームを指定して実行（利用）を要求することができる。
【００７５】
第１装置２０は、かかる一覧画面においてゲーム（ゲームＩＤ）が指定された場合、該第１装置２０と接続されている第２装置３０の記憶手段から記憶されている識別ＩＤ、及び前記指定されたゲームＩＤに対応する乱数情報を読み出す（Ｓ３０３）。
【００７６】
そして、第１装置２０は、その記憶手段から前記指定されたゲームＩＤに対応する暗号ゲームデータを読み出し、前記読み出した識別ＩＤと乱数情報に基づいて該暗号ゲームデータを復号してゲームプログラムを生成する（ゲームプログラムについて利用可能な状態とする）（Ｓ３０４）。このとき、ゲームプログラムの一部（例えば全体の５％程度）について、ファイル操作により容易に複製することができるハードディスク等の記憶手段ではなく、ＲＡＭ等の記憶手段に記憶させるように構成することが望ましい。
【００７７】
このように本実施形態では、第２装置３０から読み出した識別ＩＤに基づいて自動的に暗号ゲームデータの復号が行われるため、ユーザは復号のためのパスワード等を入力する必要はなく、操作負担の軽減が図られている。
【００７８】
次に、第１装置２０は、前記生成したゲームプログラムに基づきゲームを実行する（Ｓ３０５）。例えば、ゲームプログラムが家庭用ゲーム機器のゲームのものである場合、ゲームプログラムの格納アドレス等をパラメータとして家庭用ゲーム機器のエミュレータを起動する（エミュレータプログラムを実行する）。
【００７９】
これにより、ユーザは、第２装置３０の入力手段（操作ボタンや十字キーなど）等を用いてゲームをプレイすることができる。
【００８０】
第１装置２０は、所定条件が満たされた場合（例えば、ユーザが終了等の操作を入力した場合など）、ゲームの実行を終了し、ランチャープログラムの実行に復帰する（Ｓ３０６）。
【００８１】
ここで、ランチャープログラムについて、ゲーム実行中（又はエミュレータプログラムの実行中）、それらを実行する処理とは並列に、定期的に利用期限をチェックする処理を実行するように構成してもよい。このような処理としては、例えば、現在実行しているゲームの利用期限情報を現在時刻情報と比較して、利用期限の一定時間前（例えば３０分前）となったらその旨のメッセージ等を出力する、利用期限から一定時間経過（例えば５分経過）したらゲームを強制的に中断する、ユーザが所定の入力操作を行うことで利用期限を延長する（継続購入）、などが考えられる。
【００８２】
最後に、第１装置２０は、復帰したランチャープログラムに基づいて、生成したゲームプログラムをハードディスク、ＲＡＭ等の記憶手段から削除し（Ｓ３０７）、Ｓ１０９のメニュー画面やＳ３０２の一覧画面の表示等に戻る。
【００８３】
このように本実施形態では、ゲームプログラムを利用するユーザ側の装置を第１装置２０と第２装置３０との分離構成とし、第１装置２０に配信された暗号ゲームデータを記憶する一方、その暗号ゲームデータを生成する際の暗号キー（識別ＩＤ、乱数情報）については第１装置２０と物理的に異なる第２装置３０が記憶する構成としているため、ゲーム取得処理実行時の第１装置２０と第２装置３０との組み合わせが維持されていなければ、暗号ゲームデータを復号してゲームを実行することはできない枠組みとなっている。従って、不正にゲームを実行するためには、暗号ゲームデータのみならず、第２装置の暗号キーについても複製しなければならないが、専用装置として構成される第２装置３０を解析して暗号キーを抽出することは容易でなく、また第２装置３０そのものを物理的に複製することも容易でないため、結果として不正利用を効果的に抑止することができる。すなわち、本発明によって実現される枠組みは、従来のハードウェアキー方式と同等に堅牢な不正防止効果を備えていると言える。
【００８４】
更に、上記枠組みのもとでは、第２装置３０は正規に配信を受けた暗号ゲームデータについて共通のハードウェアキーとして機能するため、配信の都度、暗号ゲームデータに対応するハードウェアキーをユーザに配布する必要はなく、従って、ユーザはタイムリーにゲームを実行することが可能となる。
【００８５】
また、上記枠組みのもとでは、配信対象のゲームプログラムは暗号処理／復号処理が施されるだけであり、プログラム自体について修正や改変を加える必要はない。従って、既存のゲームプログラムについても容易に上記枠組みを利用して配信することが可能となる。
【００８６】
（変形例）
本発明は、上記各実施の形態に限定されることなく種々に変形して適用することが可能である。
【００８７】
例えば第１実施形態において、ランチャープログラム自体を更新できるように構成することが考えられる。
【００８８】
この場合、まず第１装置２０は、その記憶手段に記憶するランチャープログラムのバージョン情報を、ランチャープログラム配信サーバに送信する。ランチャープログラム配信サーバはデータ配信サーバ１０によって兼ねてもよい。
【００８９】
ランチャープログラム配信サーバは、ランチャープログラムのバージョン情報を記憶する記憶手段にアクセスして最新のランチャープログラムのバージョン情報を読み出し、該読み出したバージョン情報と第１装置２０から受信したバージョン情報とを比較する。そして、両者が異なる場合にランチャープログラムを記憶する記憶手段にアクセスして最新のランチャープログラムを読み出し、第１装置２０に送信する。
【００９０】
第１装置２０は、最新ランチャープログラムを受信した場合、そのチェック情報を算出し、該第１装置２０と接続されている第２装置３０の記憶手段に前記算出したチェック情報を書き込む。
【００９１】
また、第１装置２０は、装置内に記憶する古いランチャープログラムを最新ランチャープログラムによって更新し、必要に応じてランチャープログラムを再起動する。
【００９２】
かかる更新処理は、初期チェック処理に先立って自動的に実行されるように構成してもよく、また初期チェック処理後に表示されるメニュー画面においてユーザが選択して実行を要求できるように構成してもよい。
【００９３】
【発明の効果】
本発明によれば、通信ネットワークを介してデジタルデータを配信する場合に、特に既存のプログラム等を配信する場合に、複製等の不正利用を確実に防止しつつ、配信されたデジタルデータのタイムリーな利用を可能とする、新しい枠組みを提供するができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態である配信データ管理システムの構成を示すブロック図である。
【図２】ユーザデータベース１１、ゲームデータベース１２におけるデータ構造を説明するための図である。
【図３】第１装置２０、第２装置３０に記憶されるデータのデータ構造を説明するための図である。
【図４】初期チェック処理を説明するためのフローチャートである。
【図５】ゲーム取得処理を説明するためのフローチャートである。
【図６】ゲーム実行処理を説明するためのフローチャートである。
【符号の説明】
１　配信データ管理システム
１０　データ配信サーバ
１１　ユーザデータベース
１２　ゲームデータベース
２０　第１装置
３０　第２装置
【図１】
2004046448.tif 000003
【図２】
2004046448.tif 000004
【図３】
2004046448.tif 000005
【図４】
2004046448.tif 000006
【図５】
2004046448.tif 000007
【図６】
2004046448.tif 000008