(57)【要約】【課題】コンテンツの不正な取得や使用を防止することのできるサーバとＩＣカードを提供する。【解決手段】サーバは、ＩＣカードからカードＩＤを取得すると（ステップＳ２０１）、乱数（ＲＮＤ）を生成し、ＩＣカードへ送出する。ＩＣカードは乱数を、カードＩＤとサービスＩＤから算出された鍵データ（Ｋａ）を元に暗号化し、サーバへ送出する（ステップＳ１０４）。サーバは、自ら鍵データ（Ｋａ）を算出し（ステップＳ２０４）、暗号化された乱数（ＲＮＤ）を復号化し（ステップＳ２０５）、ＩＣカードの認証を行う。ＩＣカードが認証されると、コンテンツを鍵データ（Ｋａ）を用いて暗号化しＩＣカードへ送出する（ステップＳ２０７）。ＩＣカードは暗号化されたコンテンツを自ら算出した鍵データ（Ｋａ）を元に復号化する。【選択図】　　　図２
2004040209.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツを配信するサーバであって、
ネットワークに接続されたインターフェース用端末を介し、携帯型デバイスとデータの送受信を行う送受信部と、
前記携帯型デバイスから取得したデータおよび当該携帯型デバイスへ送出するデータを処理する演算処理部とを備え、
前記演算処理部は、
前記携帯型デバイスより取得した識別情報に基づいて鍵データを算出し、
乱数の前記携帯型デバイスへの送出を指示し、
前記携帯型デバイスにより前記乱数が暗号化された暗号コードを取得し、
前記暗号コードを前記鍵データに基づいて復号化し、
前記暗号コードが復号化された復号コードと前記乱数とが一致したとき、当該乱数と前記鍵データに基づいてコンテンツを暗号化し、
前記暗号化したコンテンツの前記携帯型デバイスへの送出を指示することを特徴とするサーバ。
【請求項２】
前記識別情報として前記携帯型デバイスの携帯型デバイスＩＤと、当該携帯型デバイスが受けることができるサービスのサービスＩＤを記録する認証情報データベースをさらに備え、
前記演算処理部は、前記鍵データを、前記携帯型デバイスより取得した前記携帯型デバイスＩＤと、当該携帯型デバイスＩＤに基づき認証情報データベースから抽出したサービスＩＤとから算出することを特徴とする請求項１記載のサーバ。
【請求項３】
コンテンツを外部から取得可能なＩＣカードであって、
外部とデータの送受信を行う送受信部と、
ＩＣカードのカードＩＤと、前記外部から取得したコンテンツとを記録するメモリと、
前記外部より取得したデータおよび当該外部へ送出するデータを制御する演算処理部とを備え、
前記演算処理部は、
前記メモリに記録された前記カードＩＤの前記外部への送出を指示し、
前記カードＩＤから鍵データを算出し、
前記外部より取得した乱数を、前記鍵データに基づき暗号化し、
前記暗号化された乱数の前記外部への送出を指示し、
前記外部より取得した暗号化されたコンテンツを、前記乱数と前記鍵データに基づき復号化することを特徴とするＩＣカード。
【請求項４】
前記演算処理部は、前記カードＩＤとともに、前記ＩＣカードが受けることができるサービスのサービスＩＤを用いて前記鍵データを算出することを特徴とする請求項３記載のＩＣカード。
【請求項５】
ネットワークに接続されたインターフェース用端末を介して携帯型デバイスへコンテンツを配信するサーバのコンテンツ配信方法であって、
前記携帯型デバイスが有する固定キー情報を取得するステップと、
第１のキー情報を前記携帯型デバイスへ送出するステップと、
前記携帯型デバイスにより前記第１のキー情報が暗号化された暗号コードを取得するステップと、
前記固定キー情報に基づいて第２のキー情報を算出するステップと、
算出された前記第２のキー情報に基づき、前記暗号コードを復号化するステップと、
前記暗号コードが復号化された復号コードと前記第１のキー情報とを比較するステップと、
前記復号コードと前記第１のキー情報が一致したとき、当該第１のキー情報と前記第２のキー情報に基づいてコンテンツを暗号化するステップと、
前記第１のキー情報に基づいて前記携帯型デバイスが自ら算出した第２のキー情報と、前記固定キー情報と、を有する当該携帯型デバイスへ、前記暗号化したコンテンツを送出するステップと
を有することを特徴とするコンテンツの配信方法。
【請求項６】
ＩＣカードにおけるコンテンツの取得処理方法であって、
固定キー情報をサーバへ送出するステップと、
前記サーバから第１のキー情報を取得するステップと、
前記固定キー情報から算出した第２のキー情報に基づき、前記第１のキー情報を暗号化した暗号コードを算出するステップと、
算出された前記暗号コードを前記サーバへ送出するステップと、
前記サーバにおいて前記第１のキー情報と当該サーバが自ら算出した第２のキー情報とに基づいて暗号化されたコンテンツを、当該サーバから取得するステップと、
前記暗号化されたコンテンツを、前記第１のキー情報と前記ＩＣカードが自ら算出した前記第２のキー情報とに基づき復号化するステップと
を有することを特徴とするコンテンツの取得処理方法。
【請求項７】
コンテンツを配信するサーバに実行させるプログラムであって、
前記携帯型デバイスの識別情報を取得する処理と、
乱数を前記携帯型デバイスへ送出する処理と、
前記乱数が暗号化された暗号コードを前記携帯型デバイスより取得する処理と、
前記識別情報に基づいて鍵データを算出する処理と、
前記暗号コードを前記鍵データに基づき復号化する処理と、
前記暗号コードが復号化された復号コードと前記乱数とを比較する処理と、
前記復号コードと前記乱数が一致したとき、当該乱数と前記鍵データに基づいてコンテンツを暗号化する処理と、
前記暗号化したコンテンツを前記携帯型デバイスに送出する処理と、
を前記サーバに実行させることを特徴とするプログラム。
【請求項８】
コンテンツを取得するＩＣカードに実行させるプログラムであって、
前記ＩＣカードのカードＩＤをサーバへ送出する処理と、
前記カードＩＤから鍵データを算出する処理と、
前記サーバから乱数を受信する処理と、
前記鍵データに基づき、前記乱数を暗号化した暗号コードを算出する処理と、
算出された前記暗号コードを前記サーバへ送出する処理と、
暗号化されたコンテンツを前記サーバから受信する処理と、
前記暗号化されたコンテンツを、前記乱数と前記鍵データに基づき復号化する処理と
を前記ＩＣカードに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンテンツを配信するためのサーバ、配信されたコンテンツを受信するためのＩＣカード等に関する。特に、コンテンツの不正な取得や使用を防止することのできるサーバ、ＩＣカード等に関する。
【０００２】
【従来の技術】
近年、インターネット等のネットワークの普及により、ユーザは様々なコンテンツを必要に応じて入手することが可能となりつつある。具体例として、マルチメディアキオスク端末（ＭＭＫ端末、以下「ＫＩＯＳＫ端末」という）と呼ばれるインターフェース用端末を介して音楽等のコンテンツを入手することが行われている。ＫＩＯＳＫ端末は、街角等の公共の場所に設置され、ネットワークを介してサーバに接続されている。ユーザは、ＫＩＯＳＫ端末にユーザの所有する記憶媒体を接続し、任意のコンテンツの取得を指示する。すると、ＫＩＯＳＫ端末はサーバにその旨を指示し、それに応じてサーバはＫＩＯＳＫ端末にコンテンツを送出する。そして、ユーザの記憶媒体にコンテンツがダウンロードされる。記憶媒体にコンテンツを取得したユーザは、所定の機器に記憶媒体を接続することにより、コンテンツを再生する。
【０００３】
【発明が解決しようとする課題】
ところで、このようなコンテンツの配信は、有償で行なわれることが多い。この場合、ユーザはコンテンツの取得に応じて、必要な対価を支払う。ここで問題となるのが、対価を払わずにコンテンツを不正に取得することが起こり得ることである。それを防止するため、例えばコンテンツの取得時に、ユーザの認証を行い、そのユーザが正当に登録されていることが確認された場合のみ、コンテンツの配信を行う方法が考えられる。
【０００４】
しかしながら、ＫＩＯＳＫ端末を改造することで、サーバから配信されたコンテンツが不正に取得されることも想定し得る。具体的には、コンテンツが記録媒体に書き込まれる過程で、他の記憶媒体（例えば、ＫＩＯＳＫ端末に設けられたメモリ等）に記憶させ、コンテンツを不正に取得される可能性がある。また、記憶媒体としてＩＣカードを利用する場合、ユーザの認証はＩＣカード毎に行われる。そこで、ユーザが正当に登録されたＩＣカードをＫＩＯＳＫ端末に接続し、そのＩＣカードについて認証を受けた直後、そのＩＣカードを他の認証を受けていないＩＣカードとすりかえることで、コンテンツを不正に取得されることも想定し得る。そして、このように一旦取得されたコンテンツは、その取得方法のいかんに関わらず、所定の機器において自由に再生することができてしまう。
【０００５】
本発明は、このような技術的課題に基づいてなされたもので、コンテンツの不正な取得や使用を防止することができるサーバ、ＩＣカード等を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記の課題を解決するために、本発明のサーバは、コンテンツを配信するサーバであって、ネットワークに接続されたインターフェース用端末を介し、携帯型デバイスとデータの送受信を行う送受信部と、前記携帯型デバイスから取得したデータおよび当該携帯型デバイスへ送出するデータを処理する演算処理部とを備え、前記演算処理部は、前記携帯型デバイスより取得した識別情報に基づいて鍵データを算出し、乱数の前記携帯型デバイスへの送出を指示し、前記携帯型デバイスにより前記乱数が暗号化された暗号コードを取得し、前記暗号コードを前記鍵データに基づいて復号化し、前記暗号コードが復号化された復号コードと前記乱数とが一致したとき、当該乱数と前記鍵データに基づいてコンテンツを暗号化し、前記暗号化したコンテンツの前記携帯型デバイスへの送出を指示することを特徴とする。
【０００７】
また、本発明のサーバは、前記識別情報として前記携帯型デバイスの携帯型デバイスＩＤと、当該携帯型デバイスが受けることができるサービスのサービスＩＤを記録する認証情報データベースをさらに備え、前記演算処理部は、前記鍵データを、前記携帯型デバイスより取得した前記携帯型デバイスＩＤと、当該携帯型デバイスＩＤに基づき認証情報データベースから抽出したサービスＩＤとから算出することを特徴とするものである。
【０００８】
また、本発明のＩＣカードは、コンテンツを外部から取得可能なＩＣカードであって、外部とデータの送受信を行う送受信部と、ＩＣカードのカードＩＤと、前記外部から取得したコンテンツとを記録するメモリと、前記外部より取得したデータおよび当該外部へ送出するデータを制御する演算処理部とを備え、前記演算処理部は、前記メモリに記録された前記カードＩＤの前記外部への送出を指示し、前記カードＩＤから鍵データを算出し、前記外部より取得した乱数を、前記鍵データに基づき暗号化し、前記暗号化された乱数の前記外部への送出を指示し、前記外部より取得した暗号化されたコンテンツを、前記乱数と前記鍵データに基づき復号化することを特徴とするものである。
【０００９】
また、本発明のＩＣカードは、前記演算処理部は、前記カードＩＤとともに、前記ＩＣカードが受けることができるサービスのサービスＩＤを用いて前記鍵データを算出することを特徴とするものである。
【００１０】
また、本発明のコンテンツの配信方法は、ネットワークに接続されたインターフェース用端末を介して携帯型デバイスへコンテンツを配信するサーバのコンテンツ配信方法であって、前記携帯型デバイスが有する固定キー情報を取得するステップと、第１のキー情報を前記携帯型デバイスへ送出するステップと、前記携帯型デバイスにより前記第１のキー情報が暗号化された暗号コードを取得するステップと、前記固定キー情報に基づいて第２のキー情報を算出するステップと、算出された前記第２のキー情報に基づき、前記暗号コードを復号化するステップと、前記暗号コードが復号化された復号コードと前記第１のキー情報とを比較するステップと、前記復号コードと前記第１のキー情報が一致したとき、当該第１のキー情報と前記第２のキー情報に基づいてコンテンツを暗号化するステップと、前記第１のキー情報に基づいて前記携帯型デバイスが自ら算出した第２のキー情報と、前記固定キー情報と、を有する当該携帯型デバイスへ、前記暗号化したコンテンツを送出するステップとを有すること特徴とするものである。
【００１１】
また、本発明のコンテンツの取得処理方法は、ＩＣカードにおけるコンテンツの取得処理方法であって、固定キー情報をサーバへ送出するステップと、前記サーバから第１のキー情報を取得するステップと、前記固定キー情報から算出した第２のキー情報に基づき、前記第１のキー情報を暗号化した暗号コードを算出するステップと、算出された前記暗号コードを前記サーバへ送出するステップと、前記サーバにおいて前記第１のキー情報と当該サーバが自ら算出した第２のキー情報とに基づいて暗号化されたコンテンツを、当該サーバから取得するステップと、前記暗号化されたコンテンツを、前記第１のキー情報と前記ＩＣカードが自ら算出した前記第２のキー情報とに基づき復号化するステップとを有することを特徴とするものである。
【００１２】
また、本発明のプログラムは、コンテンツを配信するサーバに実行させるプログラムであって、前記携帯型デバイスの識別情報を取得する処理と、乱数を前記携帯型デバイスへ送出する処理と、前記乱数が暗号化された暗号コードを前記携帯型デバイスより取得する処理と、前記識別情報に基づいて鍵データを算出する処理と、前記暗号コードを前記鍵データに基づき復号化する処理と、前記暗号コードが復号化された復号コードと前記乱数とを比較する処理と、前記復号コードと前記乱数が一致したとき、当該乱数と前記鍵データに基づいてコンテンツを暗号化する処理と、前記暗号化したコンテンツを前記携帯型デバイスに送出する処理とを前記サーバに実行させることを特徴とするものである。
【００１３】
また、本発明のプログラムは、コンテンツを取得するＩＣカードに実行させるプログラムであって、前記ＩＣカードのカードＩＤをサーバへ送出する処理と、前記カードＩＤから鍵データを算出する処理と、前記サーバから乱数を受信する処理と、前記鍵データに基づき、前記乱数を暗号化した暗号コードを算出する処理と、算出された前記暗号コードを前記サーバへ送出する処理と、暗号化されたコンテンツを前記サーバから受信する処理と、前記暗号化されたコンテンツを、前記乱数と前記鍵データに基づき復号化する処理とを前記ＩＣカードに実行させることを特徴とするものである。
【００１４】
【発明の実施の形態】
以下、添付図面に示す実施の形態に基づいてこの発明を詳細に説明する。
図１は、本実施の形態におけるコンテンツ配信システムを説明するためのＩＣカードおよびサーバの構成を示すブロック図である。
図１に示すコンテンツ配信システムは、ユーザが使用するＩＣカード（携帯型デバイス）１０と、ＩＣカード１０を接続可能なＫＩＯＳＫ端末（インターフェース用端末）２０と、ＫＩＯＳＫ端末（インターフェース用端末）２０にネットワークを介して接続し、コンテンツを配信するサーバ３０とを備えている。なお、ここで述べるコンテンツとは、ユーザが自分の好みに応じて取得する所定のデータであり、例えば音楽、画像、動画、音声、プログラム等のデータである。
【００１５】
ＩＣカード１０は、ユーザがサーバ３０からコンテンツを取得し、そのコンテンツを格納することができるカード形状物である。このＩＣカード１０は、ＫＩＯＳＫ端末２０との間でデータの送受信を行う送受信部１１と、ＣＰＵ等の演算処理部１２と、データを記録するためのメモリ１３とを備えている。メモリ１３は、書き換え不可能にデータを記録する書換不可メモリ１４と、書き換え可能にデータを記録する書換可能メモリ１５とを備えている。
【００１６】
ＫＩＯＳＫ端末２０は、ＩＣカード１０を接続することが可能であり、ＩＣカード１０およびサーバ３０間のデータの送受信を、インターフェース用端末として中継する。図示していないが、ＫＩＯＳＫ端末２０はＩＣカード１０とサーバ３０とデータの送受信を行う送受信部や、ＣＰＵ等の演算処理部や、ユーザに対してデータを表示する表示部等を備えている。なお、ＩＣカード１０とのデータの送受信はＩＣカード１０を直接接続することによって行なわれる他、磁気等によって間接的にデータの送受信を行うものであってもよい。このＫＩＯＳＫ端末２０は、例えば街角のような公共的なスペースやコンビニエンスストア等に設置され、ユーザが必要に応じて任意に自分で操作することが可能とされている。以上のような構成により、ＩＣカード１０とサーバ３０とのデータの送受信を、ＫＩＯＳＫ端末２０を介して行うことが可能となる。
【００１７】
サーバ３０は、ＩＣカード１０にコンテンツを配信することが可能な装置であり、ネットワークを介してデータの送受信を行う送受信部３１と、ＣＰＵ等の演算処理部３２と、データを記録するためのメモリ３３と、ＩＣカード１０の認証を行うためのデータを格納した認証情報データベース３４と、コンテンツデータを格納したコンテンツデータベース３５とを備えている。なお、認証情報データベース３４と、コンテンツデータベース３５はサーバ３０内ではなく、別のサーバに設けられてもよい。
【００１８】
図１に示すコンテンツ配信システムでは、ＫＩＯＳＫ端末２０に接続されたＩＣカード１０がコンテンツのダウンロードをＫＩＯＳＫ端末２０を介してサーバ３０に対して要求すると、サーバ３０においてＩＣカード１０の認証が行われる。認証の結果、そのＩＣカード１０はサーバ３０に予め登録された正規なＩＣカードであると判断されると、認証を受けたＩＣカードでなければ解読不可能なデータにコンテンツのデータが変換され、ＩＣカード１０へ送出される。
以下、このコンテンツ配信システムにおける処理を詳細に説明する。なお、以下の説明において、ＩＣカード１０とサーバ３０のデータの送受信は、全てＫＩＯＳＫ端末２０を介して行なわれる。
【００１９】
図２は、ＩＣカード１０およびサーバ３０における処理の流れを示すフロー図である。
なお、処理に先だって、ＩＣカード１０の書換不可メモリ１４には、カード毎に付与されるカードＩＤ（固定キー情報）が記録されており、さらに書換可能メモリ１５には、ＩＣカード１０によりサービスを受けることができる分野を特定するサービスＩＤが記録されている。なお、カードＩＤはカード毎に異なる番号が付与される。また、サービスＩＤとは、そのＩＣカードが受け取ることのできるサービスの種類を識別する情報である。例えばコンテンツが音楽のデータである場合、音楽の所定のジャンル等を指定するためのＩＤである。このサービスＩＤは、ＩＣカード１０の入手時や、ＩＣカード１０を接続したＫＩＯＳＫ端末２０において、ユーザの希望に応じて記録することができる。
【００２０】
まず、ＩＣカード１０は、ＫＩＯＳＫ端末２０に接続された状態で、書換不可メモリ１４に記録されているカードＩＤを送受信部１１によりネットワークを介してサーバ３０へ送出する（ステップＳ１０１）。具体的には、ＩＣカード１０のカードＩＤがＫＩＯＳＫ端末２０により読み込まれてサーバ３０へ送出される。なお、このとき、ユーザは希望するコンテンツのコンテンツＩＤをＫＩＯＳＫ端末２０上で指定し、ＫＩＯＳＫ端末２０はＩＣカード１０のカードＩＤと共にコンテンツＩＤをサーバ３０へ送出することができる。
【００２１】
続けて、ＩＣカード１０は、書換不可メモリ１４に記録されているカードＩＤと書換可能メモリ１５に記録されているサービスＩＤとに基づき、演算処理部１２により第２のキーデータとして鍵データ（Ｋａカード）を算出する（ステップＳ１０２）。鍵データ（Ｋａカード）は、所定の関数（ｆ）をカードＩＤとサービスＩＤに適用するとにより算出することとする。なお、関数（ｆ）としては例えばＥＸ−ＯＲ（排他的論理和）などの論理関数を用いるが、関数（ｆ）の種類は特に制限されない。関数（ｆ）の値を求める処理手順は、プログラムとしてＩＣカード１０の書換可能メモリ１５に予め記録されている。
【００２２】
一方、サーバ３０は、ＩＣカード１０からカードＩＤが送出されると、そのカードＩＤを送受信部３１により受信し、そのカードＩＤをキーとして認証情報データベース３４を参照し、対応するサービスＩＤを読み出す（ステップＳ２０１）。このときサーバ３０は、そのＩＣカード１０がコンテンツをダウンロードすることを許可されているかどうかの認証を行う。
図３は、サーバ３０の認証情報データベース３４に格納されているデータの一例を示す図である。図３に示すように、認証情報データベース３４には、ＩＣカードのカードＩＤと、そのカードＩＤのカードがサービスを受けることができるサービスＩＤと、ＩＣカードがすでにサーバ３０から取得したコンテンツのコンテンツＩＤが記録されている。ステップＳ２０１では、カードＩＤが一致するデータからサービスＩＤを抽出する。
【００２３】
さらに、サーバ３０は、演算処理部３２により第１のキー情報として乱数（ＲＮＤ）を生成し、送受信部３１によりＩＣカード１０へ送出する（ステップＳ２０２）。なお、このとき生成した乱数（ＲＮＤ）は、後に述べる処理で使用するため、サーバ３０のメモリ３３に一時的に記録される。
【００２４】
それに対し、ＩＣカード１０は、サーバ３０から送出された乱数（ＲＮＤ）を受信する（ステップＳ１０３）。そして、ＩＣカード１０は、取得した乱数（ＲＮＤ）に基づく暗号データ（Ｅ）を演算処理部１２により算出し、送受信部１２によりサーバ３０へ送出する（ステップＳ１０４）。暗号データ（Ｅ）は、暗号化用の下記式（１）を使用し、ステップＳ１０２において算出された鍵データ（Ｋａカード）に基づいて算出する。
【００２５】
【数１】
2004040209.tif 000003
【００２６】
この式（１）では、値ＲＮＤを鍵データ（Ｋａカード）によって暗号化し、算出された暗号データをＥとする。このとき、乱数（ＲＮＤ）の暗号化用の式、すなわち暗号化方法は特に制限されず、データを暗号化するための任意の方法を採用することができる。また、暗号データ（Ｅ）の値を求める処理手順は、プログラムとしてＩＣカード１０の書換可能メモリ１５に予め記録されている。なお、ステップＳ１０４においては、乱数（ＲＮＤ）とともにカードＩＤを再度送出することができる。
【００２７】
サーバ３０は、ＩＣカード１０により送出された暗号データ（Ｅ）を送受信部３１により受信する（ステップＳ２０３）。さらに、サーバ３０は、ステップＳ２０１において取得したカードＩＤと、カードＩＤに基づいて抽出されたサービスＩＤとから、サーバ３０のメモリ３３に予め登録された関数（ｆ）を用いて鍵データ（Ｋａサーバ）を算出する（ステップＳ２０４）。なお、サーバ３０で使用される関数（ｆ）は、ステップＳ１０２においてＩＣカード１０において使用される関数（ｆ）と同一のものである。
【００２８】
続けて、サーバ３０は、ステップＳ２０３において取得した暗号データ（Ｅ）を復号化した復号データ（Ｄ）を算出する（ステップＳ２０５）。復号データ（Ｄ）は、復号化用の下記式（２）を使用し、ステップＳ２０４において算出された鍵データ（Ｋａサーバ）に基づいて算出する。
【００２９】
【数２】
2004040209.tif 000004
【００３０】
この式（２）では、値Ｅを鍵データ（Ｋａサーバ）に基づいて暗号化し、算出された復号データをＤとする。また、復号データ（Ｄ）の値を求める処理手順は、プログラムとしてメモリ３３に予め記録されている。そして、サーバ３０は、算出された復号データ（Ｄ）と、ステップＳ２０２において生成した乱数（ＲＮＤ）とを比較し、復号データ（Ｄ）と乱数（ＲＮＤ）が一致するか否かを判断する（ステップＳ２０６）。
【００３１】
サーバ３０がステップＳ２０６において、復号化データ（Ｄ）と乱数（ＲＮＤ）は一致しないと判断した場合、本処理を終了する。一方、サーバ３０が復号化データ（Ｄ）と乱数（ＲＮＤ）は一致すると判断した場合、そのＩＣカード１０は登録された正規なＩＣカードであると認証し、ユーザによって指定されたコンテンツＩＤのコンテンツをコンテンツデータベース３５から抽出し、ＩＣカード１０へ送出する（ステップＳ２０７）。
そしてＩＣカード１０は、サーバ３０から送出されたコンテンツを送受信部１１により受信する（ステップＳ１０５）。
【００３２】
ここで、コンテンツの送受信におけるサーバ３０とＩＣカード１０の処理の流れをより詳細に説明する。
図４は、コンテンツの送受信におけるサーバ３０とＩＣカード１０の処理の流れを示すフロー図である。
まず、図２のステップＳ２０６の判断に基づいてコンテンツを送出する決定を行なったサーバ３０は、送出するコンテンツを所定のデータ長さ毎に分割する（ステップＳ２１０）。図５は、コンテンツデータベース３５に格納されたデータの一例を示す図である。図５に示すように、コンテンツデータベース３５には、コンテンツＩＤ毎にコンテンツのデータが格納されている。
【００３３】
続けて、サーバ３０は、分割されたコンテンツ（Ｄａｔａ）を演算処理部３２により暗号化する（ステップＳ２１１）。分割されたコンテンツ（Ｄａｔａ）が暗号化されたコンテンツ（Ｄａｔａ’）は、暗号化用の下記式（３）を使用して算出する。
【００３４】
【数３】
2004040209.tif 000005
【００３５】
この式（３）では値Ｄａｔａを暗号化し、暗号化されたコンテンツをＤａｔａ’とする。この暗号化用の式が示すように、Ｄａｔａ’を算出するには、関数（ｇ）によって算出された値を鍵とした暗号化の処理が行われる。なお、関数（ｇ）により得られる値は、図２に示すステップＳ２０２において生成した乱数（ＲＮＤ）と、ステップＳ２０４において算出した鍵データ（Ｋａサーバ）に基づいて計算される。したがって、暗号化されたコンテンツ（Ｄａｔａ’）は、乱数（ＲＮＤ）と鍵データ（Ｋａサーバ）に依存したデータとなる。なお、関数（ｇ）等のコンテンツ（Ｄａｔａ’）を求める処理手順は、プログラムとしてメモリ３３に予め記録されている。
【００３６】
そして、サーバ３０は、ステップＳ２１１において取得した暗号化されたコンテンツ（Ｄａｔａ’）と共に、その暗号化されたコンテンツ（Ｄａｔａ’）のデータ量を示す長さデータと、暗号化されたコンテンツ（Ｄａｔａ’）のチェックサムとを送受信部３１によりＩＣカード１０へ送出する（ステップＳ２１２）。
【００３７】
それに対して、ＩＣカード１０は、サーバ３０から送出されたデータを送受信部１１により受信する（ステップＳ１１１）。そして、受信したデータのうち、暗号化されたコンテンツ（Ｄａｔａ’）を復号化する（ステップＳ１１２）。暗号化されたコンテンツ（Ｄａｔａ’）を復号化したコンテンツ（Ｄａｔａ）は、復号化用の下記式（４）を使用して算出する。
【００３８】
【数４】
2004040209.tif 000006
【００３９】
この式（４）では値Ｄａｔａ’を復号化し、復号化されたコンテンツをＤａｔａとする。この復号化用の式が示すように、復号化されたコンテンツ（Ｄａｔａ’）を算出するには、関数（ｇ）によって算出される値が鍵として用いられる。そして、この関数（ｇ）は、サーバ３０におけるステップＳ２１１において使用される関数（ｇ）と同じものである。なお、関数（ｇ）により得られる値は、図２に示すステップＳ１０３において取得した乱数（ＲＮＤ）と、ステップＳ１０２において算出した鍵データ（Ｋａカード）に基づいて、暗号化されたコンテンツ（Ｄａｔａ’）により取得される。したがって複合化されたコンテンツ（Ｄａｔａ）は、乱数（ＲＮＤ）と鍵データ（Ｋａカード）に依存したデータとなる。なお、関数（ｇ）等のコンテンツ（Ｄａｔａ）を求める処理手順は、プログラムとしてメモリ１３に予め記録されている。
【００４０】
続けて、ＩＣカード１０は、ステップＳ１１１において受信したチェックサムをチェックするとともに、受信したデータが当該コンテンツの最後のデータであるかどうかをチェックする（ステップＳ１１３）。ステップＳ１１３では、チェックサムをチェックすることにより、サーバ３０から送出されたデータを正しく受信することができたがどうかを判断することができる。そして、ＩＣカード１０は、ステップＳ１１３のチェックの結果を送受信部１１によりサーバ３０へ送出する（ステップＳ１１４）。なお、受信したデータが当該コンテンツの最後のデータであった場合には修了コードを含んだチェック結果が送出される。
【００４１】
サーバ３０は、ＩＣカード１０から送出されたチェックの結果を送受信部３１により受信する（ステップＳ２１３）。そして、サーバ３０は、ＩＣカード１０から受信したチェックの結果が終了コードを含むか否かを、演算処理部３２において判断する（ステップＳ２１４）。終了コードを含まないと判断した場合、サーバ３０は、さらにそのチェックの結果が再送要求を含むか否かを判断する（ステップＳ２１５）。ステップＳ２１２においてＩＣカード１０へ送出したデータがネットワークとＫＩＯＳＫ端末２０を介して送信される際にエラーが発生した場合等、データが正確にＩＣカード１０に到達しなかったときには、ＩＣカード１０がサーバ３０へ送出するチェックの結果には、その分割され且つ暗号化されたコンテンツ（Ｄａｔａ’）を再度送出して欲しい旨の要求が含まれる。このような場合、ステップＳ２１５において、サーバ３０は再送要求が含まれると判断し、もう一度同じ分割されたコンテンツをＩＣカード１０へ送出するため、ステップＳ２１２からの処理を繰り返す。
【００４２】
一方、ステップＳ２１５において、チェックの結果には再送要求は含まれないと判断した場合、すなわち、チェックの結果に次の分割されたコンテンツの送出を要求するチェイン要求が含まれる場合、サーバ３０は、ステップＳ２１２において既に送出した分割されたコンテンツに連続する次の分割されたコンテンツについて、ステップＳ２１１の処理を行う。このようにしてサーバ３０は、分割されたコンテンツの全てをＩＣカード１０へ送出するが、最後に送出される分割されたコンテンツには、その分割されたコンテンツで全てのコンテンツの送出が終了する旨を通知するデータ（終了コード）を付与する。このように、ステップＳ２１４において、ＩＣカード１０から受信したチェックの結果は終了コードを含むとサーバ３０が判断すると、ダウンロードされたコンテンツのコンテンツＩＤをＩＣカード１０に関連させて認証情報データベースに記録し、本処理を終了する。
【００４３】
同様に、ＩＣカード１０は、ステップＳ１１３において取得したチェックの結果が終了コードを含むか否かを、演算処理部１２において判断する（ステップＳ１１５）。終了コードを含まないと判断した場合、ステップＳ１１１へ戻り、既に取得した分割されたコンテンツに続く、次の分割されたコンテンツを取得するため、または取得に失敗した分割されたコンテンツを再度取得するため、上記した処理を繰り返す。そして、ＩＣカード１０が、チェックの結果は終了コードを含むと判断した場合、本処理を終了する。
【００４４】
以上のように、本実施の形態では、サーバ３０がコンテンツをＩＣカードに送出する際にコンテンツを暗号化して送出するが、この暗号化においてカードＩＤに基づいて算出された鍵データ（Ｋａサーバ）を利用する。そして、ＩＣカード１０における暗号化されたコンテンツの復号化においても、カードＩＤから算出される鍵データ（Ｋａカード）を利用する。鍵データ（Ｋａカード）はＩＣカード１０からＫＩＯＳＫ端末２０等の外部へ送信されることはなく、またサーバ３０において算出される鍵データ（Ｋａサーバ）も、ネットワークを介して外部へ送信されることはない。しかしながら、鍵データ（Ｋａサーバ）と鍵データ（Ｋａカード）とは、同じカードＩＤおよび同じサービスＩＤ、並びに同じ間数（ｆ）を用いて算出されるため、同じ値（以下、鍵データ（Ｋａ）という）となる。したがって、サーバ３０からダウンロードされたコンテンツを不正にコピーしても、当該カードＩＤを有するＩＣカード１０以外、暗号化されたコンテンツを復号化させるために必要な鍵である鍵データ（Ｋａ）を有しないので、コンテンツを復号化することはできない。またＫＩＯＳＫ端末２０自身も、鍵データＫａを有しないため、コンテンツを複合化することはできない。
【００４５】
また、図２に示す処理においてＩＣカード１０の認証を行った後、ステップＳ１０５においてコンテンツを受信する前に、認証されたＩＣカード１０とは異なるＩＣカードをＫＩＯＳＫ端末２０へ接続させ、コンテンツを不正にダウンロードしても、ダウンロードされたコンテンツを復号化することはできない。ＩＣカード１０の代わりに接続された認証されていないＩＣカードは、コンテンツを復号化させるために必要な鍵である鍵データ（Ｋａ）を有しないので、コンテンツを復号化することはできない。また、もし認証されていないＩＣカードがＩＤデータを不正に有していても、認証の段階で正規なＩＣカードが取得する乱数（ＲＮＤ）を有しないので、暗号化されたコンテンツを復号化することはできない。以上のように、本実施の形態のコンテンツ配信システムでは、ＩＣカード毎に固有な鍵データ（Ｋａ）を利用することで、コンテンツが不正に使用されることを防止することができる。
【００４６】
上記実施の形態では、鍵データ（Ｋａ）の算出にサービスＩＤを利用しているが、本発明はこれに限定されず、サービスＩＤを利用しないものであってもよい。ただし、ＩＣカード１０の認証におけるセキュリティを高めるため、サービスＩＤを利用して鍵データ（Ｋａ）を算出することが好ましい。
【００４７】
また、上記実施の形態では、ＩＣカード１０は関数（ｆ）と関数（ｇ）とを予め書換可能メモリ１５に記録しているが、本発明はこれに限定されない。例えば、関数（ｆ）と関数（ｇ）は、コンテンツを取得する際にサーバ３０から取得するものであってもよい。この場合、ＩＣカード１０が１つのコンテンツを取得する毎に変化させてもよく、またカードＩＤ毎に異ならせてもよい。その他、関数（ｆ）と関数（ｇ）はＩＣカード１０の書換不可メモリ１４に記録されていてもよい。
【００４８】
その他、上記実施の形態では、ＫＩＯＳＫ端末２０に接続してＩＣカード１０へコンテンツをダウンロードするが、本発明はこれに限定されない。例えば、ＩＣカード１０の代わりに、携帯電話やＰＤＡ（Ｐｅｒｓｏｎａｌ　Ｄｉｇｉｔａｌ　Ａｓｓｉｓｔａｎｔ）等の携帯型デバイスにコンテンツをダウンロードさせるものであってもよい。また、携帯電話やＰＤＡ内部に設けられたＩＣカードにコンテンツをダウンロードさせるものであってもよい。
【００４９】
なお、本発明は、上記実施の形態で示したような処理を実行するためにサーバ３０としてコンピュータ装置や、ＩＣカード１０等のユーザが使用する携帯型デバイスに導入されるプログラムとして提供することができる。このプログラムは、以下のような記憶媒体の形態とすることもできる。すなわち、記憶媒体としては、コンピュータ装置に上記したような処理を実行させるプログラムを、ＣＤ−ＲＯＭ、ＤＶＤ、メモリ、ハードディスク等の記憶媒体に、コンピュータ装置が読み取り可能に記憶させれば良い。
これ以外にも、本発明の主旨を逸脱しない限り、上記実施の形態で挙げた構成を取捨選択したり、他の構成に適宜変更したりすることが可能である。
【００５０】
【発明の効果】
以上説明したように、請求項１、請求項５または請求項７記載の発明によれば、コンテンツを送出するサーバは、外部へ送出されることのない第２のキー情報（例えば鍵データ（Ｋａ））を用いてＩＣカードの認証と、コンテンツの暗号化を行うことができる。したがって、許可されていない偽造ＩＣカードに不正にコンテンツがダウンロードされることを防止できる。また、ＩＣカードを許可されていない方法で使用することにより、コンテンツが不正に取得されたとしても、暗号化されたコンテンツは認証されたＩＣカードのみが受け取る第１のキー情報（例えば乱数）を有さず、復号化することはできない。よって、不正に取得されたコンテンツが使用されることを防止することができる。
【００５１】
また、請求項２記載の発明によれば、ＩＣカードのコンテンツ取得要求時に、ネットワークを介してＩＣカードから取得することができない、すなわち、このとき外部へ送出されないサービスＩＤを、カードＩＤと共に用いて第２のキー情報としての鍵データ（Ｋａ）を算出する。したがって、偽造ＩＣカード等によるコンテンツの不正な取得や不正な使用をより効果的に防止することができる。
【００５２】
また、請求項３、請求項６または請求項８記載の発明によれば、ＩＣカードは、暗号化されたコンテンツを復号化する第２のキー情報（例えば鍵データ（Ｋａ））を外部へ送出せず、ＩＣカード内で算出して、暗号化されたコンテンツを復号化する。したがって、認証を受けたＩＣカード以外において暗号化されたコンテンツが取得されても、この暗号化されたコンテンツは復号化することはできないので、コンテンツの不正な使用を防止することができる。
【００５３】
また、請求項４記載の発明によれば、第２のキー情報としての鍵データ（Ｋａ）の算出に、外部へ送出しないサービスＩＤを用いることで、コンテンツの不正なダウンロードや不正な使用をより効果的に防止することができる。
【図面の簡単な説明】
【図１】本実施の形態におけるコンテンツ配信システムを説明するためのＩＣカードおよびサーバの構成を示すブロック図である。
【図２】ＩＣカードおよびサーバにおける処理の流れを示すフロー図である。
【図３】サーバの認証情報データベース３４に格納されているデータの一例を示す図である。
【図４】コンテンツの送受信におけるサーバとＩＣカードの処理の流れを示すフロー図である。
【図５】コンテンツデータベースに格納されたデータの一例を示す図である。
【符号の説明】
１０　ＩＣカード
１１　送受信部
１２　演算処理部
１３　メモリ
１４　書換不可メモリ
１５　書換可能メモリ
２０　ＫＩＯＳＫ端末
３０　サーバ
３１　送受信部
３２　演算処理部
３３　メモリ
３４　認証情報データベース
３５　コンテンツデータベース
【図１】
2004040209.tif 000007
【図２】
2004040209.tif 000008
【図３】
2004040209.tif 000009
【図４】
2004040209.tif 000010
【図５】
2004040209.tif 000011