(57)【要約】  【課題】  不正ユーザによるコンテンツ再生ソフトウェアの改変を困難にした情報配信システムおよび端末認証方法を提供すること。  【解決手段】  端末へのコンテンツの配信サービスに先立って、ライセンス要求元の端末にコンテンツ再生用ソフトウェアを配信する情報配信システムにおいて、コンテンツの受信を許可された端末の識別子を秘密識別値で指定し、配信コンテンツを受信しようとする端末の識別子と上記秘密識別値とを照合するための関係式を指定した端末認証ルーチンを生成する手段と、上記端末認証ルーチンを含むコンテンツ再生用ソフトウェアをライセンス要求元の端末に送信するための手段とを備える。【選択図】  図１１
2005149437.tif 000002
【特許請求の範囲】
【請求項１】
端末へのコンテンツの配信サービスに先立って、ライセンス要求元の端末にコンテンツ再生用ソフトウェアを配信する情報配信システムにおいて、
コンテンツの受信を許可された端末の識別子を秘密識別値で指定し、配信コンテンツを受信しようとする端末の識別子と上記秘密識別値とを照合するための関係式を指定した端末認証ルーチンを生成する手段と、
上記端末認証ルーチンを含むコンテンツ再生用ソフトウェアをライセンス要求元の端末に送信するための手段とを備えたことを特徴とする情報配信システム。
【請求項２】
前記コンテンツ再生用ソフトウェアが、前記端末認証ルーチンの他に、暗号化された受信コンテンツを復号化するための復号処理ルーチンと、データ圧縮された受信コンテンツを元に戻すための伸張処理ルーチンとを含むことを特徴とする請求項１に記載の情報配信システム。
【請求項３】
前記端末認証ルーチンの生成手段が、前記コンテンツ受信許可端末の識別子を所定の関数で暗号化した値を前記秘密識別値とすることを特徴とする請求項１または請求項２に記載の情報配信システム。
【請求項４】
前記端末認証ルーチンの生成手段が、前記コンテンツ受信許可端末の識別子を所定のハッシュ関数で変換して得られたハッシュ値を前記秘密識別値とすることを特徴とする請求項１または請求項２に記載の情報配信システム。
【請求項５】
配信コンテンツの受信に先立って、ユーザ端末で予め情報配信システムからコンテンツ再生用ソフトウェアの一部として与えられた端末認証ルーチンを実行して、該端末による配信コンテンツの受信可否を判定するコンテンツ配信サービスにおける端末認証方法において、
上記ユーザ端末の識別子を取得するステップと、
上記ユーザ端末識別子と上記端末認証ルーチンで指定されたコンテンツ受信許可端末の秘密識別値との対応関係を上記端末認証ルーチンで指定された関係式に従って照合するステップとを有し、
上記ユーザ端末識別子と上記秘密識別値との対応関係が認証された時、上記情報配信システムからの配信コンテンツの受信を許容することを特徴とするコンテンツ配信サービスにおける端末認証方法。
【請求項６】
前記秘密識別値として、前記コンテンツ受信許可端末の識別子を所定の関数で暗号化した値を適用したことを特徴とする請求項５に記載のコンテンツ配信サービスにおける端末認証方法。
【請求項７】
前記秘密識別値として、前記コンテンツ受信許可端末の識別子を所定のハッシュ関数で変換して得られたハッシュ値を適用したことを特徴とする請求項５に記載のコンテンツ配信サービスにおける端末認証方法。
【請求項８】
端末認証用のルーチンと、暗号化および／またはデータ圧縮されたコンテンツを元のデータに復元するためのルーチンとからなり、ネットワークを介してコンテンツ配信システムに接続可能な端末上で実行されるコンテンツ再生プログラムであって、
上記端末認証用のルーチンが、コンテンツの受信を許可された端末を示す秘密識別値と、上記端末の識別子と上記秘密識別値とを照合するための関係式の記述とを含み、上記関係式に従って端末の識別子とコンテンツの受信許可端末の識別子との同一性を判定し、判定結果を示す情報を発生することを特徴とするコンテンツ再生プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報配信システムおよび端末認証方法に関し、更に詳しくは、テキスト、音声、映像などのコンテンツ情報の配信システムおよびコンテンツ配信サービスにおける端末認証方法に関する。
【背景技術】
【０００２】
通信ネットワークの高速化と通信ネットワークに接続される情報機器の性能高度化によって、通信ネットワークを介したテキスト、音声、映像などのコンテンツ情報の配信サービスが活発化している。
【０００３】
コンテンツ情報の配信システムは、通信ネットワークに接続されたコンテンツ配信サーバと、該通信ネットワークを介してコンテンツ配信サーバをアクセスする複数のユーザ端末とからなる。コンテンツ配信サーバは、通信ネットワークがもつ限られた通信帯域を効率的に利用してコンテンツ情報を伝送するために、データの圧縮伸張アルゴリズムによって配信コンテンツのデータ量を圧縮した形で伝送している。一方、ユーザ端末も、コンテンツ配信サーバ側で適用した圧縮伸張アルゴリズムに対応した圧縮伸張アルゴリズムをハードウェアまたはソフトウェアで実行し、通信ネットワークから受信した圧縮コンテンツを元のデータ形式に戻して、音声／映像出力装置に出力する。音楽や動画などのコンテンツに適用される代表的な圧縮伸張アルゴリズムとして、ＭＰＥＧ（Moving Picture Expert Group）が知られている。
【０００４】
インターネットのように誰でも簡単に接続できる通信ネットワークでは、コンテンツ配信サーバが配信コンテンツの受信を許可していないユーザ端末によって、配信コンテンツが無断で受信される盗聴問題が発生する。このようなネットワーク上の電子データの盗聴を防止するために、コンテンツ情報の配信システムでは、配信コンテンツを暗号化して送信し、受信側で復号化する機能と、コンテンツ情報の受信端末が予め許可された端末か否かを確認する端末認証機能とが必要となる。このため、配信コンテンツを復号化するために受信端末が必要とするコンテンツ再生ソフトウェアをコンテンツ配信サーバ側から受信許可端末に予め配布しておくコンテンツ配信サービス方式が採用されている。
【０００５】
ユーザ端末における上述したコンテンツ再生ソフトウェアの不正な複製を防止する方法として、例えば、特開２００１−１０９７１９号公報（特許文献１）では、コンテンツ配信サーバが、コンテンツ再生ソフトウェアに合成して、ユーザ環境の識別情報と、コンテンツ再生ソフトウェアとユーザ環境との間の適合判断プログラムを端末に配布している。特許文献１では、ユーザ端末でコンテンツを再生する前に、ユーザ環境から読み出したユーザ環境識別情報と、上記コンテンツ再生ソフトウェアに合成されたユーザ環境識別情報とを上記適合判断プログラムで比較し、両者が一致した場合に適正なユーザ環境と判断して、コンテンツデータの読み出しと再生を許容するようにしている。
【０００６】
【特許文献１】特開２００１−１０９７１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記特許文献１で提案されたコンテンツ再生ソフトウェアによれば、この再生ソフトウェアを適用可能なユーザ環境が、ソフトウェア内に合成されたユーザ環境識別情報によって指定されているため、このコンテンツ再生ソフトウェアを複製し、この複製ソフトウェアによって、他のユーザ環境（他のユーザ端末）でコンテンツを再生しようとしても、ユーザ環境識別情報の不一致によって、コンテンツ再生を阻止できるという利点がある。
【０００８】
しかしながら、上記特許文献１の方式では、例えば、不正ユーザが、複製されたコンテンツ再生ソフトウェアを解析して、サーバ側で指定したユーザ環境識別情報を特定し、これを自分の端末に適合した別の識別情報に書き換えた場合、コンテンツ再生ソフトウェアを不正端末に適合させることが可能となり、不正なコンテンツ再生を阻止できなくなると言う問題がある。
【０００９】
本発明の目的は、不正ユーザによるコンテンツ再生ソフトウェアの改変を困難にした情報配信システムおよび端末認証方法を提供することにある。
本発明の他の目的は、不正ユーザによる改変を困難にしたコンテンツ再生プログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明は、端末へのコンテンツの配信サービスに先立って、ライセンス要求元の端末にコンテンツ再生用ソフトウェアを配信する情報配信システムにおいて、コンテンツの受信を許可された端末の識別子を秘密識別値で指定し、配信コンテンツを受信しようとする端末の識別子と上記秘密識別値とを照合するための関係式を指定した端末認証ルーチンを生成する手段と、上記端末認証ルーチンを含むコンテンツ再生用ソフトウェアをライセンス要求元の端末に送信するための手段とを備えたことを特徴とする。上記コンテンツ再生用ソフトウェアには、端末認証ルーチンの他に、暗号化された受信コンテンツを復号化するための復号処理ルーチンと、データ圧縮された受信コンテンツを元に戻すための伸張処理ルーチンとを含み得る。
【００１１】
本発明は、ユーザ端末で予め情報配信システムからコンテンツ再生用ソフトウェアの一部として与えられた端末認証ルーチンを実行して、該端末による配信コンテンツの受信可否を判定するコンテンツ配信サービスにおける端末認証方法において、上記ユーザ端末の識別子を取得するステップと、上記ユーザ端末識別子と上記端末認証ルーチンで指定されたコンテンツ受信許可端末の秘密識別値との対応関係を上記端末認証ルーチンで指定された関係式に従って照合するステップとを有し、上記ユーザ端末識別子と上記秘密識別値との対応関係が認証された時、上記情報配信システムからの配信コンテンツの受信を許容することを特徴とする。
【００１２】
また、本発明によるコンテンツ再生プログラムは、端末認証用のルーチンと、暗号化および／またはデータ圧縮されたコンテンツを元のデータに復元するためのルーチンとからなり、上記端末認証用のルーチンが、コンテンツの受信を許可された端末を示す秘密識別値と、コンテンツを受信または再生しようとする端末の識別子と上記秘密識別値とを照合するための関係式の記述とを含み、上記関係式に従って端末識別子とコンテンツの受信許可端末の識別子との同一性を判定し、判定結果を示す情報を発生することを特徴とする。
【００１３】
本発明の１実施例によれば、上記秘密識別値として、コンテンツ受信許可端末の識別子を所定の関数で暗号化した値が適用される。また、別の実施例によれば、上記秘密識別値として、コンテンツ受信許可端末の識別子を所定のハッシュ関数で変換して得られたハッシュ値が適用される。
【発明の効果】
【００１４】
本発明によれば、端末認証ルーチンが、コンテンツの受信を許可された端末の識別子を秘密識別値で指定し、配信コンテンツを受信しようとする端末の識別子と上記秘密識別値とを照合するための関係式を指定しているため、端末認証ルーチンを解析しても、その記述内容からコンテンツ受信許可端末の識別子の値を把握することが困難となる。従って、コンテンツ再生ソフトウェアの改変による不正なコンテンツ再生の阻止することが可能となる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施例について、図面を参照して説明する。
図１は、本発明が適用される情報配信システムの構成を示す。情報配信システムは、通信網５に接続されたコンテンツサーバ１０によって構成される。端末２０（２０−１、２０−２、…）は、通信網５を介して上記コンテンツサーバ１０と交信し、コンテンツ再生ソフトウェアおよびコンテンツ情報を受信する。
【００１６】
各端末２０は、図２に示すように、プロセッサ２１と、音声／映像出力部（スピーカおよび表示画面）２２と、ユーザによって操作されるコマンドおよびデータの入力部２３と、外部記憶媒体に接続するための外部インタフェース２４と、通信網５に接続するためのネットワークインタフェース２５と、プログラム格納用のメモリ２６、データ格納用のメモリ２７およびＲＯＭ２８からなっている。
【００１７】
プログラム格納用のメモリ２６は、プロセッサ２１によって実行される本発明に関係するソフトウェア（プログラム）として、コンテンツサーバアクセス用のルーチン４００と、端末認証ルーチン４３０と、コンテンツサーバ１０から受信した暗号化コンテンツを復号化するための復号処理ルーチン４４０と、データ長を短くするために圧縮符号化されたコンテンツを伸張して元のデータに戻すための伸張処理ルーチン４５０とが格納される。後述するように、上記端末認証ルーチン４３０、復号処理ルーチン４４０、伸張処理ルーチン４５０は、端末からの要求に応じて、コンテンツサーバ１０からライセンス情報として配信されたソフトウェアである。また、コンテンツサーバアクセス用のルーチン４００は、後述するコンテンツ選択ルーチン４１０とコンテンツ再生ルーチン４２０とを含む。
【００１８】
データ格納用のメモリ２７は、プロセッサ２１によるデータ処理結果や各種のテーブル、コンテンツサーバ１０から受信したコンテンツ情報を一時的に蓄積するために利用される。ＲＯＭ２８には、端末装置に必須となる各種情報が格納されている。端末認証ルーチン４３０で必要となる端末識別子（端末ＩＤ）は、上記ＲＯＭから読み込まれる。
【００１９】
図３は、コンテンツサーバ１０のブロック構成図を示す。
コンテンツサーバ１０は、プロセッサ１１と、通信網５に接続するためのネットワークインタフェース１２と、入出力部１３と、プログラム格納用のメモリ１４と、データ格納用のメモリ１５と、コンテンツファイル１６と、コンテンツ配信サービスを許可されたユーザ（ライセンスド・ユーザ）に関する情報を記憶するライセンスド・ユーザ情報管理テーブル１７とからなっている。
【００２０】
プログラム格納用のメモリ１４には、本発明に関係するソフトウェアとして、コンテンツ管理ルーチン１００と、ライセンス管理ルーチン２００と、コンテンツ配信サービスルーチン３００と、データ圧縮ルーチン３２０およびコンテンツ暗号化ルーチン３３０とが格納されている。また、データ格納用のメモリ１５には、コンテンツ管理テーブル１５０、ユーザ情報管理テーブル１６０、端末認証ルーチン１７０、復号処理ルーチン１８０、伸張処理ルーチン１９０が用意されている。
【００２１】
図４は、コンテンツ情報の配信サービスにおいて、端末２０とコンテンツサーバ１０で実行される基本的なプログラムと、交信メッセージのシーケンス図を示す。
端末２０のユーザが、コンテンツサーバアクセスルーチン４００を起動し、端末２０をコンテンツサーバ１０に接続すると、コンテンツサーバ１０から端末２０にメニュー画面情報が送信され（１１０）、端末２０は、コンテンツ選択ルーチン４１０を実行して、出力部２２にメニュー画面を表示する。このメニュー画面で、ユーザが、コンテンツ検索条件を指定し、コンテンツ一覧要求の送信操作を行うと、コンテンツ一覧要求メッセージＭ１が生成される。上記要求メッセージＭ１は、コンテンツサーバ１０のアドレスを宛先アドレス、端末２０のアドレスを送信元アドレスとして含むパケットヘッダ（図示せず）を付加して、パケット形式でコンテンツサーバ１０に送信される。
【００２２】
コンテンツ一覧要求メッセージＭ１は、図５の（Ａ）に示すように、このメッセージがコンテンツ一覧要求であることを示すメッセージ種類５１と、検索条件５２とからなっている。検索条件５２には、例えば、メニュー画面で選択したコンテンツ分類（分野）情報や、ユーザが入力したタイトル、キーワード、期間等の要素情報を論理演算式で組み合せた内容となっている。
【００２３】
コンテンツサーバ１０は、上記コンテンツ一覧要求メッセージＭ１を受信すると、コンテンツ管理ルーチン１００によって、コンテンツ管理テーブル１５０から上記受信メッセージが示す検索条件に該当したコンテンツを検索し、検索結果を示すコンテンツ一覧メッセージＭ２を要求元の端末２０に送信する。コンテンツ一覧メッセージＭ２は、図５の（Ｂ）に示すように、このメッセージがコンテンツ一覧メッセージであることを示すメッセージ種類５１に続いて、このメッセージに含まれるレコード件数５３と、検索結果を示す複数件の属性レコード５４（５４−１、５４−２、…）を含んでいる。各属性レコード５４は、例えば、コンテンツ識別子５４１と、コンテンツ名称５４２と、コンテンツの分類５４３と、価格５４４と、有効期限５４５と、その他の情報５４６からなる。
【００２４】
端末２０は、上記コンテンツ一覧メッセージＭ２を受信すると、上記コンテンツ属性レコード５４の内容をリスト化したコンテンツ選択画面を生成し、これを表示画面に出力する。上記コンテンツ選択画面でユーザが何れかのコンテンツを選択し、ライセンス情報を発行を要求すると、端末２０からコンテンツサーバ１０にライセンス要求メッセージＭ３が送信される。
【００２５】
ライセンス要求メッセージＭ３は、図５の（Ｃ）に示すように、このメッセージがライセンス要求メッセージであることを示すメッセージ種別５１に続いて、コンテンツ識別子５５と、ユーザ識別子５６と、パスワード情報５７と、端末識別子５８を含んでいる。コンテンツ識別子５５は、コンテンツ選択画面でユーザが選択したコンテンツの属性レコードが示すコンテンツ識別子５４１であり、パスワード情報５７は、例えば、ユーザが予めコンテンツサーバ１０に登録した暗証番号、またはコンテンツ代金の支払い口座を示すクレジットカード番号である。また、端末識別子５８としては、ＲＯＭ２８から読み出された端末ＩＤの値が使用される。
【００２６】
コンテンツサーバ１０は、上記ライセンス要求メッセージＭ３を受信すると、ライセンス管理ルーチン２００によってユーザ認証し、認証結果に応じたライセンス発行メッセージＭ４を生成して、ライセンス要求元の端末２０に送信する。
【００２７】
ライセンス発行メッセージＭ４は、図５の（Ｄ）に示すように、このメッセージがライセンス発行メッセージであることを示すメッセージ種別５１に続いて、有効性表示ビット５９と、ライセンスの対象となるコンテンツの属性情報６０と、コンテンツ再生ソフト６１と、ライセンス番号６２を含む。コンテンツ属性情報６０は、ライセンス要求メッセージＭ３が示すコンテンツ識別子５５と対応したコンテンツ属性レコードの内容を示す。また、本実施例では、コンテンツ再生ソフト６１は、端末認証ルーチン１７０と、コンテンツ復号処理ルーチン１８０と、コンテンツ伸張処理ルーチン１９０とからなる。ライセンス番号６２は、例えば、ライセンス管理ルーチン２００が発行したライセンス発行メッセージＭ４の通し番号を示す。
【００２８】
有効性表示ビット５９は、例えば、３２ビットからなり、ユーザ認証の結果、コンテンツのサービスが許可された場合は、有効性表示ビット５９の全ビットが“１”で、コンテンツソフト６１を含んだライセンス発行メッセージＭ４が生成される。コンテンツのサービスが不許可になった場合は、有効性表示ビット５９の全ビットが“０”で、コンテンツソフト６０を含まないライセンス発行メッセージＭ４が生成される。
【００２９】
端末２０は、ライセンス発行メッセージＭ４を受信すると、ライセンス要求への応答結果として、有効性表示ビット５９に応じたユーザ宛メッセージを表示画面に出力する。もし、コンテンツサービスが許可されていた場合（有効性表示ビットの全ビットが“１”の場合）は、受信メッセージＭ４のコンテンツ再生ソフト６１の内容を端末認証ルーチン４３０、復号処理ルーチン４４０、伸張処理ルーチン４５０としてメモリ２６に格納する。
【００３０】
上記応答結果の表示画面で、ユーザがコンテンツの配信を要求した場合、端末２０は、コンテンツ再生ルーチン４２０を実行する。本実施例では、コンテンツ再生ルーチン４２０において、最初に、ライセンス発行メッセージＭ４で得た端末認証ルーチン４３０（１７０）を実行し、端末認証に成功した場合に、コンテンツサーバ１０に対してコンテンツ送信要求メッセージＭ５を発行する。もし、端末認証に成功しなかった場合は、コンテンツ送信要求メッセージＭ５の発行が抑制される。
【００３１】
コンテンツ送信要求メッセージＭ５は、図６の（Ａ）に示すように、このメッセージがコンテンツ送信要求であることを示すメッセージ種別５１に続いて、コンテンツ識別子５５と、このメッセージに応答して配信すべきコンテンツ範囲６３と、ユーザ識別子５６とを含んでいる。
【００３２】
コンテンツサーバ１０は、上記コンテンツ送信要求メッセージＭ５を受信すると、コンテンツ配信サービスルーチン３００を実行する。コンテンツ配信サービスルーチン３００は、ライセンスド・ユーザ管理情報テーブル１７を参照して、コンテンツ送信要求メッセージＭ５の正当性を確認した後、図６の（Ｂ）に示すように、受信メッセージＭ５で指定されたコンテンツ識別子５５をもつ指定範囲のコンテンツ７０をコンテンツファイル１６からブロック単位（ＣＢ−１、ＣＢ−２、…）で読み出し、これをコンテンツ送信メッセージＭ６として要求元端末に配信する。
【００３３】
コンテンツ送信メッセージＭ６は、このメッセージがコンテンツ送信用のものであることを示すメッセージ種別５１に続いて、有効性表示ビット６４と、ブロック番号６５と、コンテンツデータブロック６６とを含む。コンテンツサーバ１０は、コンテンツ送信要求Ｍ５で指定された送信範囲６３のコンテンツの配信が完了すると、コンテンツ配信サービスルーチン３００による端末２０へのコンテンツ配信サービスを一旦終了し、端末２０から新たなコンテンツ送信要求Ｍ５を受信した時、コンテンツ配信サービスを再開する。
【００３４】
ここで、図７〜図１３を参照して、本発明が適用される端末認証ルーチン４３０について説明する。
図７は、Ｃ言語で記述された従来の端末認証ルーチン４３０Ｐの一部を示し、図８は、図７に対応するプログラムフローチャートを示す。従来の端末認証ルーチン４３０Ｐには、ライセンス管理ルーチン２００がコンテンツの配信サービスを許可した端末の識別子（以下、許可端末ＩＤと言う）の値、図示した例では「0x11223344」が記述されている。
【００３５】
端末認証ルーチン４３０Ｐでは、図８に示すように、このルーチンを実行している端末２０の識別子（端末ＩＤ）を取得し（ステップ４３１）、この端末ＩＤを許可端末ＩＤとを照合し（４３３）、端末ＩＤと許可端末ＩＤが一致した場合は、コンテンツの再生を許可し（４３４）、不一致の場合は、再生不許可としている（４３５）。
従って、悪意をもつユーザが、端末認証ルーチン４３０Ｐを解析し、許可端末ＩＤの値を他の端末ＩＤの値に書き換えた場合、その端末ＩＤをもつ別の端末からコンテンツの送信要求を発行して、不正にコンテンツの配信サービスを受けることが可能となる。
【００３６】
本発明は、上述した許可端末ＩＤの書き換えを防止するために、端末認証ルーチン内では、上記許可端末ＩＤを秘密識別値に変換しておく。秘密識別値としては、例えば、許可端末ＩＤを暗号化、またはハッシュ変換した値を適用できる。
【００３７】
図９は、本発明の第１実施例となる端末認証ルーチン４３０Ａの主要部を示し、図１０は、上記端末認証ルーチン４３０Ａのフローチャートを示す。
本実施例では、ライセンス管理ルーチン２００において、許可端末ＩＤの値（「0x11223344」）を乱数を適用して暗号化しておき、端末認証ルーチン４３０Ａでは、上記暗号化に適用された乱数（rand）の値と、暗号化された許可端末ＩＤの値（xid）と、復号化の演算式（この例では、排他的論理和演算）を指定しておき、端末２０側で、上記暗号化された許可端末ＩＤを上記乱数で復号化して、許可端末ＩＤを再生し（４３２Ａ）、端末ＩＤと再生された許可端末ＩＤとを照合する（４３３）ようにしている。本実施例によれば、端末認証ルーチン４３０Ａには、許可端末ＩＤの値を直接的に示す記述がないため、端末認証ルーチン４３０Ａを解析して、許可端末ＩＤの値を不正に把握することが困難となる。
【００３８】
図１１は、本発明の第２実施例となる端末認証ルーチン４３０Ｂのフローチャートを示す。本実施例では、第１実施例と同様、ライセンス管理ルーチン２００において、許可端末ＩＤの値（「0x11223344」）を乱数を適用して暗号化しておき、端末認証ルーチン４３０Ｂでは、上記暗号化に適用された乱数（rand）の値と、暗号化された許可端末ＩＤの値（xid）と、暗号化の演算式を指定しておき、端末２０側で、端末ＩＤを上記乱数で暗号化して暗号化端末ＩＤを生成し（４３２Ｂ）、この暗号化端末ＩＤとライセンス管理ルーチン２００が指定した暗号化された許可端末ＩＤを照合する（４３３Ｂ）。本実施例によれば、暗号化された許可端末ＩＤを復号化する必要がないため、暗号化のための演算式として非可逆的な関数を適用することができ、安全性を更に向上できる。
【００３９】
図１２は、本発明の第３実施例となる端末認証ルーチン４３０Ｃの主要部を示し、図１３は、上記端末認証ルーチン４３０Ｃのフローチャートを示す。
本実施例では、ライセンス管理ルーチン２００において、許可端末ＩＤの値（「0x11223344」）をハッシュ関数を適用してハッシュ値に変換し、端末認証ルーチン４３０Ｃでは、上記ハッシュ関数（hash）と、許可端末ＩＤのハッシュ値（hid）を指定しておく。この場合、端末２０側では、上記ハッシュ関数を適用して端末ＩＤのハッシュ値を生成し（４３２Ｃ）、このハッシュ値と許可端末ＩＤのハッシュ値（hid）とを照合する（４３３Ｃ）。本実施例によれば、端末認証ルーチン４３０Ｃには、許可端末ＩＤの値を直接的に示す記述がなく、且つ、ハッシュ値（hid）から元の許可端末ＩＤを再生することは困難となるため、許可端末ＩＤの安全性を一層高めることが可能となる。
【００４０】
図１４は、端末２０で実行されるコンテンツ選択ルーチン４１０の詳細フローチャートを示す。
コンテンツ選択ルーチン４１０は、ユーザからのコンテンツ一覧要求入力に応答して、コンテンツ一覧要求メッセージＭ１を生成し、これをコンテンツサーバ１０に送信する（ステップ４１１）。コンテンツサーバからコンテンツ一覧メッセージＭ２を受信すると（４１２）、受信メッセージのコンテンツ属性の内容をコンテンツ選択画面として表示画面に出力し（４１３）、ユーザがコンテンツを指定してライセンス要求を入力するのを待つ（４１４）。ライセンス要求が入力されると、ライセンス要求メッセージＭ３を生成し、これをコンテンツサーバ２０に送信する（４１５）。コンテンツサーバからライセンス発行メッセージＭ４を受信すると（４１６）、受信メッセージの有効性表示ビットに応じたガイダンスメッセージを表示画面に出力し（４１７）、もし、有効性表示ビットがコンテンツサービスの許可を示していた場合は（４１８）、受信メッセージからコンテンツ再生ソフトを抽出して、メモリに格納する（４１９）。
【００４１】
図１５は、コンテンツサーバ１０が実行するコンテンツ管理ルーチン１００の詳細フローチャートを示す。
コンテンツ管理ルーチン１００では、端末から受信したコンテンツ一覧要求メッセージＭ１から検索条件を抽出し（１０１）、コンテンツ管理テーブル１５から上記検索条件に該当するエントリを検索し（１０２）、検索されたエントリからコンテンツ属性情報を抽出して、コンテンツ一覧メッセージＭ２を生成し、これを要求元に端末に送信する（１０３）。
【００４２】
図１６は、ライセンス要求メッセージＭ３を受信した時、コンテンツサーバ１０が実行するライセンス管理ルーチン２００の詳細フローチャートを示す。
ライセンス管理ルーチン２００は、ライセンス要求メッセージＭ３が示すユーザ識別子５６に基づいてユーザ情報管理テーブル１６０を参照し、パスワード５７をチェックして、ライセンス要求元ユーザにコンテンツの配信サービスを許容できるか否かのユーザ認証を行う（２０１）。
【００４３】
ユーザ認証の結果（２０２）、コンテンツ配信を許容できる場合は、図１７で説明するライセンス生成処理２１０を実行した後、有効性表示ビットが全ビット“１”のライセンス発行メッセージＭ４を生成し、これをライセンス要求元の端末２０に送信する（２２０）。一方、ユーザ認証の結果、コンテンツ配信を許容できない場合は、有効性表示ビットが全ビット“０”のライセンス発行メッセージＭ４を生成し、これを要求元端末２０に送信する（２２１）。
【００４４】
図１７は、ライセンス生成処理２１０の詳細フローチャートを示す。
ライセンス生成処理２１０では、ライセンス要求メッセージＭ３で指定されたコンテンツ識別子５５に基づいてコンテンツ管理テーブル１５を参照し、コンテンツ識別子５５と対応するコンテンツ属性情報を取得し、これをライセンス発行メッセージＭ４にコンテンツ属性情報６０として設定する（２１１）。次に、メモリ１５から端末認証ルーチン１７０を読み出し、要求メッセージ端末Ｍ３のＩＤ５８を暗号化またはキャッシュ値に変換して得られた許可端末ＩＤの秘密識別値を挿入し、これをコンテンツ再生ソフト６１用の端末認証ルーチン１７０として、ライセンス発行メッセージＭ４に設定する（２１１）。
【００４５】
更に、メモリ１５からコンテンツ識別子５５と対応した復号処理ルーチン１８０と伸張処理ルーチン１９０を読み出し、これらをコンテンツ再生ソフト６１用の復号処理ルーチン１８０と伸張処理ルーチン１９０としてライセンス発行メッセージＭ４に設定し（２１３、２１４）、新たな通し番号を生成して、ライセンス発行メッセージＭ４のライセンス番号６２とする（２１５）。この後、コンテンツ識別子５５、ユーザ識別子５６、ライセンス番号６２の対応関係をライセンスド・ユーザ情報管理テーブル１７に記憶して（２１６）、このルーチンを終了する。
【００４６】
図１８は、コンテンツ送信要求メッセージＭ５の応答してコンテンツサーバ１０が実行するコンテンツ配信サービスルーチン３００の詳細フローチャートを示す。
コンテンツ配信サービスルーチン３００では、ライセンスド・ユーザ情報管理テーブル１７を参照し、コンテンツ送信要求メッセージＭ５が示すコインテンツ識別子５５とユーザ識別子５６との対応関係がライセンス管理ルーチン２００によって許可されたものか否かをチェックする（３０１）。
【００４７】
上記チェックによって、コンテンツ配信サービス可と判定された場合（３０２）、コンテンツファイル１６から、上記要求メッセージＭ５で指定されたコンテンツ範囲６３のコンテンツデータをブロック単位で順次に読み出し（３０３）、これを有効性表示ビットの全ビットが“１”に設定されたコンテンツ送信メッセージＭ６として、要求元の端末２０に送信する（３０４）。送信したコンテンツデータブロックが指定範囲６３の最終ブロックか否かを判定し（３０５）、最終ブロックでなければ、ステップ３０３〜３０５を繰り返す。
【００４８】
送信したコンテンツブロックが指定範囲６３の最終ブロックの場合は、コンテンツ送信終了を示すメッセージを要求元端末に送信して（３０６）、このルーチンを終了する。また、ステップ３０２で、コンテンツ配信サービスが不可と判定された場合は、有効性表示ビットの全ビットが“０”で、ブロック番号６５とコンテンツブロック６６をもたないコンテンツ送信要求メッセージＭ５を生成し、これを要求元の端末２０に送信して（３０７）、このルーチンを終了する。尚、コンテンツ送信終了メッセージは、例えば、ブロック番号６５にデータ終了を意味する特定の番号、例えば、全ビットが“１”の値を設定したコンテンツ送信メッセージＭ６としてもよい。
【００４９】
図１９は、端末２０で実行するコンテンツ再生ルーチン４２０の詳細フローチャートを示す。
コンテンツ再生ルーチン４２０では、ライセンス要求に応答して配信された端末認証ルーチン４３０を実行し、端末認証に成功したか否かを判定する（４２１）。端末認証に成功しなかった場合は、表示画面にエラーメッセージを出力して（４２９）、このルーチンを終了する。端末認証に成功した場合は、コンテンツ送信要求メッセージＭ５を生成し、これをコンテンツサーバ１０に送信する（４２２）。
【００５０】
コンテンツサーバ１０からコンテンツ送信メッセージＭ６を受信すると（４２３）、受信メッセージの有効性表示ビットを判定する（４２４）。もし、有効性表示ビットの全ビットが“０”の場合は、表示画面にエラーメッセージを出力して（４２９）、このルーチンを終了する。有効性表示ビットの全ビットが“１”の場合、受信メッセージがコンテンツ送信終了メッセージか否かを判定し（４２５）、コンテンツ送信終了メッセージの場合は、このルーチンを終了する。
【００５１】
受信メッセージがコンテンツ送信終了メッセージでなければ、受信したコンテンツブロックを復号処理ルーチン４４０により復号化し（４２６）、復号化されたコンテンツブロックを伸張処理ルーチン４５０で伸張処理し（４２７）、伸張されたコンテンツデータを音声／映像出力部２２に出力して（４２８）、ステップ４２３で次のコンテンツ送信メッセージＭ６を待つ。尚、メモリ２７に伸張されたコンテンツデータを保持するための複数面のバッファ領域を用意しておき、コンテンツブロック毎にバッファ領域を切替えることにより、バッファ領域から音声／映像出力部２２へのデータ出力と、上述した復号化処理ルーチンおよび伸張処理ルーチンによる新たなコンテンツデータの変換処理とを並列的に実行することができる。
【００５２】
以上の実施例から明らかなように、本発明によれば、コンテンツ再生ソフトとしてコンテンツサーバから端末に配信される端末認証ルーチンにおいて、許可端末識別子の値をユーザには直接的に把握困難な秘密識別値で指定しているため、ライセンスを受けていないユーザが、他のユーザに配信されたコンテンツ再生ソフトを不正に使用し、端末認証ルーチンの許可端末識別子を書き換えることによって、配信コンテンツを不正に入手するのを防止することが可能となる。
【００５３】
実施例では、コンテンツ管理機能、ライセンス管理機能、コンテンツ配信サービス機能の３つの機能を１つのサーバ（コンテンツサーバ１０）に集中し、ユーザ端末からのコンテンツ一覧要求、ライセンス要求、コンテンツ送信要求を全て上記コンテンツサーバで処理するシステム構成としたが、本発明の情報配信システムは、これらの機能を複数のサーバに分散したシステム構成としてもよい。
【００５４】
例えば、コンテンツ一覧要求とライセンス要求を受付けるライセンスサーバ１０Ａと、コンテンツ送信要求を受付けるコンテンツ配信サーバ１０Ｂとからなる情報配信システムにおいて、ライセンスサーバ１０Ａが、ライセンス要求に応答して送信するライセンス発行メッセージＭ４で、例えば、図５の（Ｄ）に破線で示したように、コンテンツ配信サーバ１０Ｂのアドレス（コンテンツサーバアドレス）６８を要求元の端末２０に通知し、端末２０が、上記コンテンツサーバアドレス６８で指定されたサーバに対して、コンテンツ送信要求Ｍ５を送信するようにしてもよい。
【００５５】
この場合、図３に示したコンテンツファイルとライセンスド・ユーザ情報管理テーブル１７をコンテンツ配信サーバ側に設けておき、ライセンスサーバ１０Ａが、ライセンス発行メッセージＭ４を発行した時、ライセンスド・ユーザ情報管理テーブル１７に登録すべき情報をコンテンツ配信サーバ１０Ｂに通知し、サーバ１０Ｂが、コンテンツ送信要求Ｍ５の受信時に、上記ライセンスド・ユーザ情報管理テーブル１７を参照して、コンテンツ送信要求Ｍ５の受付可否を判断できるようにする。
【００５６】
また、実施例では、コンテンツ再生ルーチン４２０が、コンテンツサーバから配信されたコンテンツをリアルタイムで音声／映像出力部に出力する場合の動作について説明したが、端末ユーザが、受信コンテンツを指定ファイル名にローディングするモードでのコンテンツ送信要求を入力した場合は、図１９のステップ４２６、４２７を省略し、ステップ４２８で受信コンテンツブロックを指定ファイルに格納するようにすればよい。
【００５７】
本発明は、コンテンツサーバがライセンスを得た複数の端末に配信コンテンツをブロードキャストする放送型情報配信システムに対しても適用できる。放送型情報配信システムでは、各端末は、コンテンツサーバが現在ブロードキャスト中のコンテンツを受信処理すればよいため、コンテンツ再生処理ルーチン４２０は、ユーザから上述したコンテンツ送信要求に代わるコンテンツ再生要求が入力された時、端末認証ルーチン４３０を実行し、端末認証が不成功となった場合は、配信コンテンツの受信を拒否し、端末認証に成功した場合は、ブロードキャストコンテンツの受信と、それに続く受信コンテンツの復号、伸張、出力処理を実行するようにすればよい。
【図面の簡単な説明】
【００５８】
【図１】本発明が適用される情報配信システムを示す図。
【図２】図１に示した端末２０の１実施例を示すブロック構成図。
【図３】図１に示したコンテンツサーバ１０の１実施例を示すブロック構成図。
【図４】コンテンツ情報サービスにおいて、端末２０とコンテンツサーバ１０で実行される基本的なプログラムと交信メッセージのシーケンスを示す図。
【図５】端末２０とコンテンツサーバ１０との間で交信されるメッセージＭ１〜Ｍ４のフォーマットを示す図。
【図６】端末２０が発行するコンテンツ送信要求メッセージＭ５と、コンテンツサーバ１０から送信されるコンテンツ送信メッセージＭ６のフォーマットを示す図。
【図７】Ｃ言語で記述した従来の端末認証ルーチン４３０Ｐの主要部を示す図。
【図８】図７に対応するプログラムフローチャート。
【図９】Ｃ言語で記述した本発明の１実施例を示す端末認証ルーチンの主要部を示す図。
【図１０】図９に対応するプログラムフローチャート。
【図１１】本発明の他の実施例を示す端末認証ルーチン主要部のプログラムフローチャート。
【図１２】Ｃ言語で記述した本発明の更に他の実施例を示す端末認証ルーチンの主要部を示す図。
【図１３】図１２に対応するプログラムフローチャート。
【図１４】端末２０で実行されるコンテンツ選択ルーチン４１０の詳細を示すフローチャート。
【図１５】コンテンツサーバ１０で実行されるコンテンツ管理ルーチン１００の詳細を示すフローチャート。
【図１６】コンテンツサーバ１０で実行されるライセンス管理ルーチン２００の詳細を示すフローチャート。
【図１７】ライセンス管理ルーチン２００におけるライセンス生成処理２１０の詳細を示すフローチャート。
【図１８】コンテンツサーバ１０で実行されるコンテンツ配信サービスルーチン３００の詳細を示すフローチャート。
【図１９】端末２０で実行されるコンテンツ再生処理ルーチン３４２０の詳細を示すフローチャート。
【符号の説明】
【００５９】
５：通信網、１０：コンテンツサーバ、１１：プロセッサ、１２：ネットワークインタフェース、１３：入出力装置、１６：コンテンツファイル、１７：ライセンスド・ユーザ情報管理テーブル、２０：端末、２１：プロセッサ、２２：音声／映像出力部、
２３：入出力部、２４：外部インタフェース、２５：ネットワークインタフェース、
１００：コンテンツ管理ルーチン、１５０：コンテンツ管理テーブル、１６０：ユーザ情報管理テーブル、１７０、４３０：端末認証ルーチン、１８０、４４０：復号処理ルーチン、１９０、４５０：伸張処理ルーチン、２００：ライセンス管理ルーチン、
３００：コンテンツ配信サービスルーチン、３２０：データ圧縮ルーチン、
３３０：データ暗号化ルーチン、４００：コンテンツサーバアクセスルーチン。
【図１】
2005149437.tif 000003
【図２】
2005149437.tif 000004
【図３】
2005149437.tif 000005
【図４】
2005149437.tif 000006
【図５】
2005149437.tif 000007
【図６】
2005149437.tif 000008
【図７】
2005149437.tif 000009
【図８】
2005149437.tif 000010
【図９】
2005149437.tif 000011
【図１０】
2005149437.tif 000012
【図１１】
2005149437.tif 000013
【図１２】
2005149437.tif 000014
【図１３】
2005149437.tif 000015
【図１４】
2005149437.tif 000016
【図１５】
2005149437.tif 000017
【図１６】
2005149437.tif 000018
【図１７】
2005149437.tif 000019
【図１８】
2005149437.tif 000020
【図１９】
2005149437.tif 000021