JP2004040209A - サーバ、icカード、コンテンツの配信方法、コンテンツの取得処理方法およびプログラム - Google Patents
サーバ、icカード、コンテンツの配信方法、コンテンツの取得処理方法およびプログラム Download PDFInfo
- Publication number
- JP2004040209A JP2004040209A JP2002190842A JP2002190842A JP2004040209A JP 2004040209 A JP2004040209 A JP 2004040209A JP 2002190842 A JP2002190842 A JP 2002190842A JP 2002190842 A JP2002190842 A JP 2002190842A JP 2004040209 A JP2004040209 A JP 2004040209A
- Authority
- JP
- Japan
- Prior art keywords
- card
- server
- content
- data
- portable device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Storage Device Security (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
【課題】コンテンツの不正な取得や使用を防止することのできるサーバとICカードを提供する。
【解決手段】サーバは、ICカードからカードIDを取得すると(ステップS201)、乱数(RND)を生成し、ICカードへ送出する。ICカードは乱数を、カードIDとサービスIDから算出された鍵データ(Ka)を元に暗号化し、サーバへ送出する(ステップS104)。サーバは、自ら鍵データ(Ka)を算出し(ステップS204)、暗号化された乱数(RND)を復号化し(ステップS205)、ICカードの認証を行う。ICカードが認証されると、コンテンツを鍵データ(Ka)を用いて暗号化しICカードへ送出する(ステップS207)。ICカードは暗号化されたコンテンツを自ら算出した鍵データ(Ka)を元に復号化する。
【選択図】 図2
【解決手段】サーバは、ICカードからカードIDを取得すると(ステップS201)、乱数(RND)を生成し、ICカードへ送出する。ICカードは乱数を、カードIDとサービスIDから算出された鍵データ(Ka)を元に暗号化し、サーバへ送出する(ステップS104)。サーバは、自ら鍵データ(Ka)を算出し(ステップS204)、暗号化された乱数(RND)を復号化し(ステップS205)、ICカードの認証を行う。ICカードが認証されると、コンテンツを鍵データ(Ka)を用いて暗号化しICカードへ送出する(ステップS207)。ICカードは暗号化されたコンテンツを自ら算出した鍵データ(Ka)を元に復号化する。
【選択図】 図2
Description
【0001】
【発明の属する技術分野】
本発明は、コンテンツを配信するためのサーバ、配信されたコンテンツを受信するためのICカード等に関する。特に、コンテンツの不正な取得や使用を防止することのできるサーバ、ICカード等に関する。
【0002】
【従来の技術】
近年、インターネット等のネットワークの普及により、ユーザは様々なコンテンツを必要に応じて入手することが可能となりつつある。具体例として、マルチメディアキオスク端末(MMK端末、以下「KIOSK端末」という)と呼ばれるインターフェース用端末を介して音楽等のコンテンツを入手することが行われている。KIOSK端末は、街角等の公共の場所に設置され、ネットワークを介してサーバに接続されている。ユーザは、KIOSK端末にユーザの所有する記憶媒体を接続し、任意のコンテンツの取得を指示する。すると、KIOSK端末はサーバにその旨を指示し、それに応じてサーバはKIOSK端末にコンテンツを送出する。そして、ユーザの記憶媒体にコンテンツがダウンロードされる。記憶媒体にコンテンツを取得したユーザは、所定の機器に記憶媒体を接続することにより、コンテンツを再生する。
【0003】
【発明が解決しようとする課題】
ところで、このようなコンテンツの配信は、有償で行なわれることが多い。この場合、ユーザはコンテンツの取得に応じて、必要な対価を支払う。ここで問題となるのが、対価を払わずにコンテンツを不正に取得することが起こり得ることである。それを防止するため、例えばコンテンツの取得時に、ユーザの認証を行い、そのユーザが正当に登録されていることが確認された場合のみ、コンテンツの配信を行う方法が考えられる。
【0004】
しかしながら、KIOSK端末を改造することで、サーバから配信されたコンテンツが不正に取得されることも想定し得る。具体的には、コンテンツが記録媒体に書き込まれる過程で、他の記憶媒体(例えば、KIOSK端末に設けられたメモリ等)に記憶させ、コンテンツを不正に取得される可能性がある。また、記憶媒体としてICカードを利用する場合、ユーザの認証はICカード毎に行われる。そこで、ユーザが正当に登録されたICカードをKIOSK端末に接続し、そのICカードについて認証を受けた直後、そのICカードを他の認証を受けていないICカードとすりかえることで、コンテンツを不正に取得されることも想定し得る。そして、このように一旦取得されたコンテンツは、その取得方法のいかんに関わらず、所定の機器において自由に再生することができてしまう。
【0005】
本発明は、このような技術的課題に基づいてなされたもので、コンテンツの不正な取得や使用を防止することができるサーバ、ICカード等を提供することを目的とする。
【0006】
【課題を解決するための手段】
上記の課題を解決するために、本発明のサーバは、コンテンツを配信するサーバであって、ネットワークに接続されたインターフェース用端末を介し、携帯型デバイスとデータの送受信を行う送受信部と、前記携帯型デバイスから取得したデータおよび当該携帯型デバイスへ送出するデータを処理する演算処理部とを備え、前記演算処理部は、前記携帯型デバイスより取得した識別情報に基づいて鍵データを算出し、乱数の前記携帯型デバイスへの送出を指示し、前記携帯型デバイスにより前記乱数が暗号化された暗号コードを取得し、前記暗号コードを前記鍵データに基づいて復号化し、前記暗号コードが復号化された復号コードと前記乱数とが一致したとき、当該乱数と前記鍵データに基づいてコンテンツを暗号化し、前記暗号化したコンテンツの前記携帯型デバイスへの送出を指示することを特徴とする。
【0007】
また、本発明のサーバは、前記識別情報として前記携帯型デバイスの携帯型デバイスIDと、当該携帯型デバイスが受けることができるサービスのサービスIDを記録する認証情報データベースをさらに備え、前記演算処理部は、前記鍵データを、前記携帯型デバイスより取得した前記携帯型デバイスIDと、当該携帯型デバイスIDに基づき認証情報データベースから抽出したサービスIDとから算出することを特徴とするものである。
【0008】
また、本発明のICカードは、コンテンツを外部から取得可能なICカードであって、外部とデータの送受信を行う送受信部と、ICカードのカードIDと、前記外部から取得したコンテンツとを記録するメモリと、前記外部より取得したデータおよび当該外部へ送出するデータを制御する演算処理部とを備え、前記演算処理部は、前記メモリに記録された前記カードIDの前記外部への送出を指示し、前記カードIDから鍵データを算出し、前記外部より取得した乱数を、前記鍵データに基づき暗号化し、前記暗号化された乱数の前記外部への送出を指示し、前記外部より取得した暗号化されたコンテンツを、前記乱数と前記鍵データに基づき復号化することを特徴とするものである。
【0009】
また、本発明のICカードは、前記演算処理部は、前記カードIDとともに、前記ICカードが受けることができるサービスのサービスIDを用いて前記鍵データを算出することを特徴とするものである。
【0010】
また、本発明のコンテンツの配信方法は、ネットワークに接続されたインターフェース用端末を介して携帯型デバイスへコンテンツを配信するサーバのコンテンツ配信方法であって、前記携帯型デバイスが有する固定キー情報を取得するステップと、第1のキー情報を前記携帯型デバイスへ送出するステップと、前記携帯型デバイスにより前記第1のキー情報が暗号化された暗号コードを取得するステップと、前記固定キー情報に基づいて第2のキー情報を算出するステップと、算出された前記第2のキー情報に基づき、前記暗号コードを復号化するステップと、前記暗号コードが復号化された復号コードと前記第1のキー情報とを比較するステップと、前記復号コードと前記第1のキー情報が一致したとき、当該第1のキー情報と前記第2のキー情報に基づいてコンテンツを暗号化するステップと、前記第1のキー情報に基づいて前記携帯型デバイスが自ら算出した第2のキー情報と、前記固定キー情報と、を有する当該携帯型デバイスへ、前記暗号化したコンテンツを送出するステップとを有すること特徴とするものである。
【0011】
また、本発明のコンテンツの取得処理方法は、ICカードにおけるコンテンツの取得処理方法であって、固定キー情報をサーバへ送出するステップと、前記サーバから第1のキー情報を取得するステップと、前記固定キー情報から算出した第2のキー情報に基づき、前記第1のキー情報を暗号化した暗号コードを算出するステップと、算出された前記暗号コードを前記サーバへ送出するステップと、前記サーバにおいて前記第1のキー情報と当該サーバが自ら算出した第2のキー情報とに基づいて暗号化されたコンテンツを、当該サーバから取得するステップと、前記暗号化されたコンテンツを、前記第1のキー情報と前記ICカードが自ら算出した前記第2のキー情報とに基づき復号化するステップとを有することを特徴とするものである。
【0012】
また、本発明のプログラムは、コンテンツを配信するサーバに実行させるプログラムであって、前記携帯型デバイスの識別情報を取得する処理と、乱数を前記携帯型デバイスへ送出する処理と、前記乱数が暗号化された暗号コードを前記携帯型デバイスより取得する処理と、前記識別情報に基づいて鍵データを算出する処理と、前記暗号コードを前記鍵データに基づき復号化する処理と、前記暗号コードが復号化された復号コードと前記乱数とを比較する処理と、前記復号コードと前記乱数が一致したとき、当該乱数と前記鍵データに基づいてコンテンツを暗号化する処理と、前記暗号化したコンテンツを前記携帯型デバイスに送出する処理とを前記サーバに実行させることを特徴とするものである。
【0013】
また、本発明のプログラムは、コンテンツを取得するICカードに実行させるプログラムであって、前記ICカードのカードIDをサーバへ送出する処理と、前記カードIDから鍵データを算出する処理と、前記サーバから乱数を受信する処理と、前記鍵データに基づき、前記乱数を暗号化した暗号コードを算出する処理と、算出された前記暗号コードを前記サーバへ送出する処理と、暗号化されたコンテンツを前記サーバから受信する処理と、前記暗号化されたコンテンツを、前記乱数と前記鍵データに基づき復号化する処理とを前記ICカードに実行させることを特徴とするものである。
【0014】
【発明の実施の形態】
以下、添付図面に示す実施の形態に基づいてこの発明を詳細に説明する。
図1は、本実施の形態におけるコンテンツ配信システムを説明するためのICカードおよびサーバの構成を示すブロック図である。
図1に示すコンテンツ配信システムは、ユーザが使用するICカード(携帯型デバイス)10と、ICカード10を接続可能なKIOSK端末(インターフェース用端末)20と、KIOSK端末(インターフェース用端末)20にネットワークを介して接続し、コンテンツを配信するサーバ30とを備えている。なお、ここで述べるコンテンツとは、ユーザが自分の好みに応じて取得する所定のデータであり、例えば音楽、画像、動画、音声、プログラム等のデータである。
【0015】
ICカード10は、ユーザがサーバ30からコンテンツを取得し、そのコンテンツを格納することができるカード形状物である。このICカード10は、KIOSK端末20との間でデータの送受信を行う送受信部11と、CPU等の演算処理部12と、データを記録するためのメモリ13とを備えている。メモリ13は、書き換え不可能にデータを記録する書換不可メモリ14と、書き換え可能にデータを記録する書換可能メモリ15とを備えている。
【0016】
KIOSK端末20は、ICカード10を接続することが可能であり、ICカード10およびサーバ30間のデータの送受信を、インターフェース用端末として中継する。図示していないが、KIOSK端末20はICカード10とサーバ30とデータの送受信を行う送受信部や、CPU等の演算処理部や、ユーザに対してデータを表示する表示部等を備えている。なお、ICカード10とのデータの送受信はICカード10を直接接続することによって行なわれる他、磁気等によって間接的にデータの送受信を行うものであってもよい。このKIOSK端末20は、例えば街角のような公共的なスペースやコンビニエンスストア等に設置され、ユーザが必要に応じて任意に自分で操作することが可能とされている。以上のような構成により、ICカード10とサーバ30とのデータの送受信を、KIOSK端末20を介して行うことが可能となる。
【0017】
サーバ30は、ICカード10にコンテンツを配信することが可能な装置であり、ネットワークを介してデータの送受信を行う送受信部31と、CPU等の演算処理部32と、データを記録するためのメモリ33と、ICカード10の認証を行うためのデータを格納した認証情報データベース34と、コンテンツデータを格納したコンテンツデータベース35とを備えている。なお、認証情報データベース34と、コンテンツデータベース35はサーバ30内ではなく、別のサーバに設けられてもよい。
【0018】
図1に示すコンテンツ配信システムでは、KIOSK端末20に接続されたICカード10がコンテンツのダウンロードをKIOSK端末20を介してサーバ30に対して要求すると、サーバ30においてICカード10の認証が行われる。認証の結果、そのICカード10はサーバ30に予め登録された正規なICカードであると判断されると、認証を受けたICカードでなければ解読不可能なデータにコンテンツのデータが変換され、ICカード10へ送出される。
以下、このコンテンツ配信システムにおける処理を詳細に説明する。なお、以下の説明において、ICカード10とサーバ30のデータの送受信は、全てKIOSK端末20を介して行なわれる。
【0019】
図2は、ICカード10およびサーバ30における処理の流れを示すフロー図である。
なお、処理に先だって、ICカード10の書換不可メモリ14には、カード毎に付与されるカードID(固定キー情報)が記録されており、さらに書換可能メモリ15には、ICカード10によりサービスを受けることができる分野を特定するサービスIDが記録されている。なお、カードIDはカード毎に異なる番号が付与される。また、サービスIDとは、そのICカードが受け取ることのできるサービスの種類を識別する情報である。例えばコンテンツが音楽のデータである場合、音楽の所定のジャンル等を指定するためのIDである。このサービスIDは、ICカード10の入手時や、ICカード10を接続したKIOSK端末20において、ユーザの希望に応じて記録することができる。
【0020】
まず、ICカード10は、KIOSK端末20に接続された状態で、書換不可メモリ14に記録されているカードIDを送受信部11によりネットワークを介してサーバ30へ送出する(ステップS101)。具体的には、ICカード10のカードIDがKIOSK端末20により読み込まれてサーバ30へ送出される。なお、このとき、ユーザは希望するコンテンツのコンテンツIDをKIOSK端末20上で指定し、KIOSK端末20はICカード10のカードIDと共にコンテンツIDをサーバ30へ送出することができる。
【0021】
続けて、ICカード10は、書換不可メモリ14に記録されているカードIDと書換可能メモリ15に記録されているサービスIDとに基づき、演算処理部12により第2のキーデータとして鍵データ(Kaカード)を算出する(ステップS102)。鍵データ(Kaカード)は、所定の関数(f)をカードIDとサービスIDに適用するとにより算出することとする。なお、関数(f)としては例えばEX−OR(排他的論理和)などの論理関数を用いるが、関数(f)の種類は特に制限されない。関数(f)の値を求める処理手順は、プログラムとしてICカード10の書換可能メモリ15に予め記録されている。
【0022】
一方、サーバ30は、ICカード10からカードIDが送出されると、そのカードIDを送受信部31により受信し、そのカードIDをキーとして認証情報データベース34を参照し、対応するサービスIDを読み出す(ステップS201)。このときサーバ30は、そのICカード10がコンテンツをダウンロードすることを許可されているかどうかの認証を行う。
図3は、サーバ30の認証情報データベース34に格納されているデータの一例を示す図である。図3に示すように、認証情報データベース34には、ICカードのカードIDと、そのカードIDのカードがサービスを受けることができるサービスIDと、ICカードがすでにサーバ30から取得したコンテンツのコンテンツIDが記録されている。ステップS201では、カードIDが一致するデータからサービスIDを抽出する。
【0023】
さらに、サーバ30は、演算処理部32により第1のキー情報として乱数(RND)を生成し、送受信部31によりICカード10へ送出する(ステップS202)。なお、このとき生成した乱数(RND)は、後に述べる処理で使用するため、サーバ30のメモリ33に一時的に記録される。
【0024】
それに対し、ICカード10は、サーバ30から送出された乱数(RND)を受信する(ステップS103)。そして、ICカード10は、取得した乱数(RND)に基づく暗号データ(E)を演算処理部12により算出し、送受信部12によりサーバ30へ送出する(ステップS104)。暗号データ(E)は、暗号化用の下記式(1)を使用し、ステップS102において算出された鍵データ(Kaカード)に基づいて算出する。
【0025】
【数1】
【0026】
この式(1)では、値RNDを鍵データ(Kaカード)によって暗号化し、算出された暗号データをEとする。このとき、乱数(RND)の暗号化用の式、すなわち暗号化方法は特に制限されず、データを暗号化するための任意の方法を採用することができる。また、暗号データ(E)の値を求める処理手順は、プログラムとしてICカード10の書換可能メモリ15に予め記録されている。なお、ステップS104においては、乱数(RND)とともにカードIDを再度送出することができる。
【0027】
サーバ30は、ICカード10により送出された暗号データ(E)を送受信部31により受信する(ステップS203)。さらに、サーバ30は、ステップS201において取得したカードIDと、カードIDに基づいて抽出されたサービスIDとから、サーバ30のメモリ33に予め登録された関数(f)を用いて鍵データ(Kaサーバ)を算出する(ステップS204)。なお、サーバ30で使用される関数(f)は、ステップS102においてICカード10において使用される関数(f)と同一のものである。
【0028】
続けて、サーバ30は、ステップS203において取得した暗号データ(E)を復号化した復号データ(D)を算出する(ステップS205)。復号データ(D)は、復号化用の下記式(2)を使用し、ステップS204において算出された鍵データ(Kaサーバ)に基づいて算出する。
【0029】
【数2】
【0030】
この式(2)では、値Eを鍵データ(Kaサーバ)に基づいて暗号化し、算出された復号データをDとする。また、復号データ(D)の値を求める処理手順は、プログラムとしてメモリ33に予め記録されている。そして、サーバ30は、算出された復号データ(D)と、ステップS202において生成した乱数(RND)とを比較し、復号データ(D)と乱数(RND)が一致するか否かを判断する(ステップS206)。
【0031】
サーバ30がステップS206において、復号化データ(D)と乱数(RND)は一致しないと判断した場合、本処理を終了する。一方、サーバ30が復号化データ(D)と乱数(RND)は一致すると判断した場合、そのICカード10は登録された正規なICカードであると認証し、ユーザによって指定されたコンテンツIDのコンテンツをコンテンツデータベース35から抽出し、ICカード10へ送出する(ステップS207)。
そしてICカード10は、サーバ30から送出されたコンテンツを送受信部11により受信する(ステップS105)。
【0032】
ここで、コンテンツの送受信におけるサーバ30とICカード10の処理の流れをより詳細に説明する。
図4は、コンテンツの送受信におけるサーバ30とICカード10の処理の流れを示すフロー図である。
まず、図2のステップS206の判断に基づいてコンテンツを送出する決定を行なったサーバ30は、送出するコンテンツを所定のデータ長さ毎に分割する(ステップS210)。図5は、コンテンツデータベース35に格納されたデータの一例を示す図である。図5に示すように、コンテンツデータベース35には、コンテンツID毎にコンテンツのデータが格納されている。
【0033】
続けて、サーバ30は、分割されたコンテンツ(Data)を演算処理部32により暗号化する(ステップS211)。分割されたコンテンツ(Data)が暗号化されたコンテンツ(Data’)は、暗号化用の下記式(3)を使用して算出する。
【0034】
【数3】
【0035】
この式(3)では値Dataを暗号化し、暗号化されたコンテンツをData’とする。この暗号化用の式が示すように、Data’を算出するには、関数(g)によって算出された値を鍵とした暗号化の処理が行われる。なお、関数(g)により得られる値は、図2に示すステップS202において生成した乱数(RND)と、ステップS204において算出した鍵データ(Kaサーバ)に基づいて計算される。したがって、暗号化されたコンテンツ(Data’)は、乱数(RND)と鍵データ(Kaサーバ)に依存したデータとなる。なお、関数(g)等のコンテンツ(Data’)を求める処理手順は、プログラムとしてメモリ33に予め記録されている。
【0036】
そして、サーバ30は、ステップS211において取得した暗号化されたコンテンツ(Data’)と共に、その暗号化されたコンテンツ(Data’)のデータ量を示す長さデータと、暗号化されたコンテンツ(Data’)のチェックサムとを送受信部31によりICカード10へ送出する(ステップS212)。
【0037】
それに対して、ICカード10は、サーバ30から送出されたデータを送受信部11により受信する(ステップS111)。そして、受信したデータのうち、暗号化されたコンテンツ(Data’)を復号化する(ステップS112)。暗号化されたコンテンツ(Data’)を復号化したコンテンツ(Data)は、復号化用の下記式(4)を使用して算出する。
【0038】
【数4】
【0039】
この式(4)では値Data’を復号化し、復号化されたコンテンツをDataとする。この復号化用の式が示すように、復号化されたコンテンツ(Data’)を算出するには、関数(g)によって算出される値が鍵として用いられる。そして、この関数(g)は、サーバ30におけるステップS211において使用される関数(g)と同じものである。なお、関数(g)により得られる値は、図2に示すステップS103において取得した乱数(RND)と、ステップS102において算出した鍵データ(Kaカード)に基づいて、暗号化されたコンテンツ(Data’)により取得される。したがって複合化されたコンテンツ(Data)は、乱数(RND)と鍵データ(Kaカード)に依存したデータとなる。なお、関数(g)等のコンテンツ(Data)を求める処理手順は、プログラムとしてメモリ13に予め記録されている。
【0040】
続けて、ICカード10は、ステップS111において受信したチェックサムをチェックするとともに、受信したデータが当該コンテンツの最後のデータであるかどうかをチェックする(ステップS113)。ステップS113では、チェックサムをチェックすることにより、サーバ30から送出されたデータを正しく受信することができたがどうかを判断することができる。そして、ICカード10は、ステップS113のチェックの結果を送受信部11によりサーバ30へ送出する(ステップS114)。なお、受信したデータが当該コンテンツの最後のデータであった場合には修了コードを含んだチェック結果が送出される。
【0041】
サーバ30は、ICカード10から送出されたチェックの結果を送受信部31により受信する(ステップS213)。そして、サーバ30は、ICカード10から受信したチェックの結果が終了コードを含むか否かを、演算処理部32において判断する(ステップS214)。終了コードを含まないと判断した場合、サーバ30は、さらにそのチェックの結果が再送要求を含むか否かを判断する(ステップS215)。ステップS212においてICカード10へ送出したデータがネットワークとKIOSK端末20を介して送信される際にエラーが発生した場合等、データが正確にICカード10に到達しなかったときには、ICカード10がサーバ30へ送出するチェックの結果には、その分割され且つ暗号化されたコンテンツ(Data’)を再度送出して欲しい旨の要求が含まれる。このような場合、ステップS215において、サーバ30は再送要求が含まれると判断し、もう一度同じ分割されたコンテンツをICカード10へ送出するため、ステップS212からの処理を繰り返す。
【0042】
一方、ステップS215において、チェックの結果には再送要求は含まれないと判断した場合、すなわち、チェックの結果に次の分割されたコンテンツの送出を要求するチェイン要求が含まれる場合、サーバ30は、ステップS212において既に送出した分割されたコンテンツに連続する次の分割されたコンテンツについて、ステップS211の処理を行う。このようにしてサーバ30は、分割されたコンテンツの全てをICカード10へ送出するが、最後に送出される分割されたコンテンツには、その分割されたコンテンツで全てのコンテンツの送出が終了する旨を通知するデータ(終了コード)を付与する。このように、ステップS214において、ICカード10から受信したチェックの結果は終了コードを含むとサーバ30が判断すると、ダウンロードされたコンテンツのコンテンツIDをICカード10に関連させて認証情報データベースに記録し、本処理を終了する。
【0043】
同様に、ICカード10は、ステップS113において取得したチェックの結果が終了コードを含むか否かを、演算処理部12において判断する(ステップS115)。終了コードを含まないと判断した場合、ステップS111へ戻り、既に取得した分割されたコンテンツに続く、次の分割されたコンテンツを取得するため、または取得に失敗した分割されたコンテンツを再度取得するため、上記した処理を繰り返す。そして、ICカード10が、チェックの結果は終了コードを含むと判断した場合、本処理を終了する。
【0044】
以上のように、本実施の形態では、サーバ30がコンテンツをICカードに送出する際にコンテンツを暗号化して送出するが、この暗号化においてカードIDに基づいて算出された鍵データ(Kaサーバ)を利用する。そして、ICカード10における暗号化されたコンテンツの復号化においても、カードIDから算出される鍵データ(Kaカード)を利用する。鍵データ(Kaカード)はICカード10からKIOSK端末20等の外部へ送信されることはなく、またサーバ30において算出される鍵データ(Kaサーバ)も、ネットワークを介して外部へ送信されることはない。しかしながら、鍵データ(Kaサーバ)と鍵データ(Kaカード)とは、同じカードIDおよび同じサービスID、並びに同じ間数(f)を用いて算出されるため、同じ値(以下、鍵データ(Ka)という)となる。したがって、サーバ30からダウンロードされたコンテンツを不正にコピーしても、当該カードIDを有するICカード10以外、暗号化されたコンテンツを復号化させるために必要な鍵である鍵データ(Ka)を有しないので、コンテンツを復号化することはできない。またKIOSK端末20自身も、鍵データKaを有しないため、コンテンツを複合化することはできない。
【0045】
また、図2に示す処理においてICカード10の認証を行った後、ステップS105においてコンテンツを受信する前に、認証されたICカード10とは異なるICカードをKIOSK端末20へ接続させ、コンテンツを不正にダウンロードしても、ダウンロードされたコンテンツを復号化することはできない。ICカード10の代わりに接続された認証されていないICカードは、コンテンツを復号化させるために必要な鍵である鍵データ(Ka)を有しないので、コンテンツを復号化することはできない。また、もし認証されていないICカードがIDデータを不正に有していても、認証の段階で正規なICカードが取得する乱数(RND)を有しないので、暗号化されたコンテンツを復号化することはできない。以上のように、本実施の形態のコンテンツ配信システムでは、ICカード毎に固有な鍵データ(Ka)を利用することで、コンテンツが不正に使用されることを防止することができる。
【0046】
上記実施の形態では、鍵データ(Ka)の算出にサービスIDを利用しているが、本発明はこれに限定されず、サービスIDを利用しないものであってもよい。ただし、ICカード10の認証におけるセキュリティを高めるため、サービスIDを利用して鍵データ(Ka)を算出することが好ましい。
【0047】
また、上記実施の形態では、ICカード10は関数(f)と関数(g)とを予め書換可能メモリ15に記録しているが、本発明はこれに限定されない。例えば、関数(f)と関数(g)は、コンテンツを取得する際にサーバ30から取得するものであってもよい。この場合、ICカード10が1つのコンテンツを取得する毎に変化させてもよく、またカードID毎に異ならせてもよい。その他、関数(f)と関数(g)はICカード10の書換不可メモリ14に記録されていてもよい。
【0048】
その他、上記実施の形態では、KIOSK端末20に接続してICカード10へコンテンツをダウンロードするが、本発明はこれに限定されない。例えば、ICカード10の代わりに、携帯電話やPDA(Personal Digital Assistant)等の携帯型デバイスにコンテンツをダウンロードさせるものであってもよい。また、携帯電話やPDA内部に設けられたICカードにコンテンツをダウンロードさせるものであってもよい。
【0049】
なお、本発明は、上記実施の形態で示したような処理を実行するためにサーバ30としてコンピュータ装置や、ICカード10等のユーザが使用する携帯型デバイスに導入されるプログラムとして提供することができる。このプログラムは、以下のような記憶媒体の形態とすることもできる。すなわち、記憶媒体としては、コンピュータ装置に上記したような処理を実行させるプログラムを、CD−ROM、DVD、メモリ、ハードディスク等の記憶媒体に、コンピュータ装置が読み取り可能に記憶させれば良い。
これ以外にも、本発明の主旨を逸脱しない限り、上記実施の形態で挙げた構成を取捨選択したり、他の構成に適宜変更したりすることが可能である。
【0050】
【発明の効果】
以上説明したように、請求項1、請求項5または請求項7記載の発明によれば、コンテンツを送出するサーバは、外部へ送出されることのない第2のキー情報(例えば鍵データ(Ka))を用いてICカードの認証と、コンテンツの暗号化を行うことができる。したがって、許可されていない偽造ICカードに不正にコンテンツがダウンロードされることを防止できる。また、ICカードを許可されていない方法で使用することにより、コンテンツが不正に取得されたとしても、暗号化されたコンテンツは認証されたICカードのみが受け取る第1のキー情報(例えば乱数)を有さず、復号化することはできない。よって、不正に取得されたコンテンツが使用されることを防止することができる。
【0051】
また、請求項2記載の発明によれば、ICカードのコンテンツ取得要求時に、ネットワークを介してICカードから取得することができない、すなわち、このとき外部へ送出されないサービスIDを、カードIDと共に用いて第2のキー情報としての鍵データ(Ka)を算出する。したがって、偽造ICカード等によるコンテンツの不正な取得や不正な使用をより効果的に防止することができる。
【0052】
また、請求項3、請求項6または請求項8記載の発明によれば、ICカードは、暗号化されたコンテンツを復号化する第2のキー情報(例えば鍵データ(Ka))を外部へ送出せず、ICカード内で算出して、暗号化されたコンテンツを復号化する。したがって、認証を受けたICカード以外において暗号化されたコンテンツが取得されても、この暗号化されたコンテンツは復号化することはできないので、コンテンツの不正な使用を防止することができる。
【0053】
また、請求項4記載の発明によれば、第2のキー情報としての鍵データ(Ka)の算出に、外部へ送出しないサービスIDを用いることで、コンテンツの不正なダウンロードや不正な使用をより効果的に防止することができる。
【図面の簡単な説明】
【図1】本実施の形態におけるコンテンツ配信システムを説明するためのICカードおよびサーバの構成を示すブロック図である。
【図2】ICカードおよびサーバにおける処理の流れを示すフロー図である。
【図3】サーバの認証情報データベース34に格納されているデータの一例を示す図である。
【図4】コンテンツの送受信におけるサーバとICカードの処理の流れを示すフロー図である。
【図5】コンテンツデータベースに格納されたデータの一例を示す図である。
【符号の説明】
10 ICカード
11 送受信部
12 演算処理部
13 メモリ
14 書換不可メモリ
15 書換可能メモリ
20 KIOSK端末
30 サーバ
31 送受信部
32 演算処理部
33 メモリ
34 認証情報データベース
35 コンテンツデータベース
【発明の属する技術分野】
本発明は、コンテンツを配信するためのサーバ、配信されたコンテンツを受信するためのICカード等に関する。特に、コンテンツの不正な取得や使用を防止することのできるサーバ、ICカード等に関する。
【0002】
【従来の技術】
近年、インターネット等のネットワークの普及により、ユーザは様々なコンテンツを必要に応じて入手することが可能となりつつある。具体例として、マルチメディアキオスク端末(MMK端末、以下「KIOSK端末」という)と呼ばれるインターフェース用端末を介して音楽等のコンテンツを入手することが行われている。KIOSK端末は、街角等の公共の場所に設置され、ネットワークを介してサーバに接続されている。ユーザは、KIOSK端末にユーザの所有する記憶媒体を接続し、任意のコンテンツの取得を指示する。すると、KIOSK端末はサーバにその旨を指示し、それに応じてサーバはKIOSK端末にコンテンツを送出する。そして、ユーザの記憶媒体にコンテンツがダウンロードされる。記憶媒体にコンテンツを取得したユーザは、所定の機器に記憶媒体を接続することにより、コンテンツを再生する。
【0003】
【発明が解決しようとする課題】
ところで、このようなコンテンツの配信は、有償で行なわれることが多い。この場合、ユーザはコンテンツの取得に応じて、必要な対価を支払う。ここで問題となるのが、対価を払わずにコンテンツを不正に取得することが起こり得ることである。それを防止するため、例えばコンテンツの取得時に、ユーザの認証を行い、そのユーザが正当に登録されていることが確認された場合のみ、コンテンツの配信を行う方法が考えられる。
【0004】
しかしながら、KIOSK端末を改造することで、サーバから配信されたコンテンツが不正に取得されることも想定し得る。具体的には、コンテンツが記録媒体に書き込まれる過程で、他の記憶媒体(例えば、KIOSK端末に設けられたメモリ等)に記憶させ、コンテンツを不正に取得される可能性がある。また、記憶媒体としてICカードを利用する場合、ユーザの認証はICカード毎に行われる。そこで、ユーザが正当に登録されたICカードをKIOSK端末に接続し、そのICカードについて認証を受けた直後、そのICカードを他の認証を受けていないICカードとすりかえることで、コンテンツを不正に取得されることも想定し得る。そして、このように一旦取得されたコンテンツは、その取得方法のいかんに関わらず、所定の機器において自由に再生することができてしまう。
【0005】
本発明は、このような技術的課題に基づいてなされたもので、コンテンツの不正な取得や使用を防止することができるサーバ、ICカード等を提供することを目的とする。
【0006】
【課題を解決するための手段】
上記の課題を解決するために、本発明のサーバは、コンテンツを配信するサーバであって、ネットワークに接続されたインターフェース用端末を介し、携帯型デバイスとデータの送受信を行う送受信部と、前記携帯型デバイスから取得したデータおよび当該携帯型デバイスへ送出するデータを処理する演算処理部とを備え、前記演算処理部は、前記携帯型デバイスより取得した識別情報に基づいて鍵データを算出し、乱数の前記携帯型デバイスへの送出を指示し、前記携帯型デバイスにより前記乱数が暗号化された暗号コードを取得し、前記暗号コードを前記鍵データに基づいて復号化し、前記暗号コードが復号化された復号コードと前記乱数とが一致したとき、当該乱数と前記鍵データに基づいてコンテンツを暗号化し、前記暗号化したコンテンツの前記携帯型デバイスへの送出を指示することを特徴とする。
【0007】
また、本発明のサーバは、前記識別情報として前記携帯型デバイスの携帯型デバイスIDと、当該携帯型デバイスが受けることができるサービスのサービスIDを記録する認証情報データベースをさらに備え、前記演算処理部は、前記鍵データを、前記携帯型デバイスより取得した前記携帯型デバイスIDと、当該携帯型デバイスIDに基づき認証情報データベースから抽出したサービスIDとから算出することを特徴とするものである。
【0008】
また、本発明のICカードは、コンテンツを外部から取得可能なICカードであって、外部とデータの送受信を行う送受信部と、ICカードのカードIDと、前記外部から取得したコンテンツとを記録するメモリと、前記外部より取得したデータおよび当該外部へ送出するデータを制御する演算処理部とを備え、前記演算処理部は、前記メモリに記録された前記カードIDの前記外部への送出を指示し、前記カードIDから鍵データを算出し、前記外部より取得した乱数を、前記鍵データに基づき暗号化し、前記暗号化された乱数の前記外部への送出を指示し、前記外部より取得した暗号化されたコンテンツを、前記乱数と前記鍵データに基づき復号化することを特徴とするものである。
【0009】
また、本発明のICカードは、前記演算処理部は、前記カードIDとともに、前記ICカードが受けることができるサービスのサービスIDを用いて前記鍵データを算出することを特徴とするものである。
【0010】
また、本発明のコンテンツの配信方法は、ネットワークに接続されたインターフェース用端末を介して携帯型デバイスへコンテンツを配信するサーバのコンテンツ配信方法であって、前記携帯型デバイスが有する固定キー情報を取得するステップと、第1のキー情報を前記携帯型デバイスへ送出するステップと、前記携帯型デバイスにより前記第1のキー情報が暗号化された暗号コードを取得するステップと、前記固定キー情報に基づいて第2のキー情報を算出するステップと、算出された前記第2のキー情報に基づき、前記暗号コードを復号化するステップと、前記暗号コードが復号化された復号コードと前記第1のキー情報とを比較するステップと、前記復号コードと前記第1のキー情報が一致したとき、当該第1のキー情報と前記第2のキー情報に基づいてコンテンツを暗号化するステップと、前記第1のキー情報に基づいて前記携帯型デバイスが自ら算出した第2のキー情報と、前記固定キー情報と、を有する当該携帯型デバイスへ、前記暗号化したコンテンツを送出するステップとを有すること特徴とするものである。
【0011】
また、本発明のコンテンツの取得処理方法は、ICカードにおけるコンテンツの取得処理方法であって、固定キー情報をサーバへ送出するステップと、前記サーバから第1のキー情報を取得するステップと、前記固定キー情報から算出した第2のキー情報に基づき、前記第1のキー情報を暗号化した暗号コードを算出するステップと、算出された前記暗号コードを前記サーバへ送出するステップと、前記サーバにおいて前記第1のキー情報と当該サーバが自ら算出した第2のキー情報とに基づいて暗号化されたコンテンツを、当該サーバから取得するステップと、前記暗号化されたコンテンツを、前記第1のキー情報と前記ICカードが自ら算出した前記第2のキー情報とに基づき復号化するステップとを有することを特徴とするものである。
【0012】
また、本発明のプログラムは、コンテンツを配信するサーバに実行させるプログラムであって、前記携帯型デバイスの識別情報を取得する処理と、乱数を前記携帯型デバイスへ送出する処理と、前記乱数が暗号化された暗号コードを前記携帯型デバイスより取得する処理と、前記識別情報に基づいて鍵データを算出する処理と、前記暗号コードを前記鍵データに基づき復号化する処理と、前記暗号コードが復号化された復号コードと前記乱数とを比較する処理と、前記復号コードと前記乱数が一致したとき、当該乱数と前記鍵データに基づいてコンテンツを暗号化する処理と、前記暗号化したコンテンツを前記携帯型デバイスに送出する処理とを前記サーバに実行させることを特徴とするものである。
【0013】
また、本発明のプログラムは、コンテンツを取得するICカードに実行させるプログラムであって、前記ICカードのカードIDをサーバへ送出する処理と、前記カードIDから鍵データを算出する処理と、前記サーバから乱数を受信する処理と、前記鍵データに基づき、前記乱数を暗号化した暗号コードを算出する処理と、算出された前記暗号コードを前記サーバへ送出する処理と、暗号化されたコンテンツを前記サーバから受信する処理と、前記暗号化されたコンテンツを、前記乱数と前記鍵データに基づき復号化する処理とを前記ICカードに実行させることを特徴とするものである。
【0014】
【発明の実施の形態】
以下、添付図面に示す実施の形態に基づいてこの発明を詳細に説明する。
図1は、本実施の形態におけるコンテンツ配信システムを説明するためのICカードおよびサーバの構成を示すブロック図である。
図1に示すコンテンツ配信システムは、ユーザが使用するICカード(携帯型デバイス)10と、ICカード10を接続可能なKIOSK端末(インターフェース用端末)20と、KIOSK端末(インターフェース用端末)20にネットワークを介して接続し、コンテンツを配信するサーバ30とを備えている。なお、ここで述べるコンテンツとは、ユーザが自分の好みに応じて取得する所定のデータであり、例えば音楽、画像、動画、音声、プログラム等のデータである。
【0015】
ICカード10は、ユーザがサーバ30からコンテンツを取得し、そのコンテンツを格納することができるカード形状物である。このICカード10は、KIOSK端末20との間でデータの送受信を行う送受信部11と、CPU等の演算処理部12と、データを記録するためのメモリ13とを備えている。メモリ13は、書き換え不可能にデータを記録する書換不可メモリ14と、書き換え可能にデータを記録する書換可能メモリ15とを備えている。
【0016】
KIOSK端末20は、ICカード10を接続することが可能であり、ICカード10およびサーバ30間のデータの送受信を、インターフェース用端末として中継する。図示していないが、KIOSK端末20はICカード10とサーバ30とデータの送受信を行う送受信部や、CPU等の演算処理部や、ユーザに対してデータを表示する表示部等を備えている。なお、ICカード10とのデータの送受信はICカード10を直接接続することによって行なわれる他、磁気等によって間接的にデータの送受信を行うものであってもよい。このKIOSK端末20は、例えば街角のような公共的なスペースやコンビニエンスストア等に設置され、ユーザが必要に応じて任意に自分で操作することが可能とされている。以上のような構成により、ICカード10とサーバ30とのデータの送受信を、KIOSK端末20を介して行うことが可能となる。
【0017】
サーバ30は、ICカード10にコンテンツを配信することが可能な装置であり、ネットワークを介してデータの送受信を行う送受信部31と、CPU等の演算処理部32と、データを記録するためのメモリ33と、ICカード10の認証を行うためのデータを格納した認証情報データベース34と、コンテンツデータを格納したコンテンツデータベース35とを備えている。なお、認証情報データベース34と、コンテンツデータベース35はサーバ30内ではなく、別のサーバに設けられてもよい。
【0018】
図1に示すコンテンツ配信システムでは、KIOSK端末20に接続されたICカード10がコンテンツのダウンロードをKIOSK端末20を介してサーバ30に対して要求すると、サーバ30においてICカード10の認証が行われる。認証の結果、そのICカード10はサーバ30に予め登録された正規なICカードであると判断されると、認証を受けたICカードでなければ解読不可能なデータにコンテンツのデータが変換され、ICカード10へ送出される。
以下、このコンテンツ配信システムにおける処理を詳細に説明する。なお、以下の説明において、ICカード10とサーバ30のデータの送受信は、全てKIOSK端末20を介して行なわれる。
【0019】
図2は、ICカード10およびサーバ30における処理の流れを示すフロー図である。
なお、処理に先だって、ICカード10の書換不可メモリ14には、カード毎に付与されるカードID(固定キー情報)が記録されており、さらに書換可能メモリ15には、ICカード10によりサービスを受けることができる分野を特定するサービスIDが記録されている。なお、カードIDはカード毎に異なる番号が付与される。また、サービスIDとは、そのICカードが受け取ることのできるサービスの種類を識別する情報である。例えばコンテンツが音楽のデータである場合、音楽の所定のジャンル等を指定するためのIDである。このサービスIDは、ICカード10の入手時や、ICカード10を接続したKIOSK端末20において、ユーザの希望に応じて記録することができる。
【0020】
まず、ICカード10は、KIOSK端末20に接続された状態で、書換不可メモリ14に記録されているカードIDを送受信部11によりネットワークを介してサーバ30へ送出する(ステップS101)。具体的には、ICカード10のカードIDがKIOSK端末20により読み込まれてサーバ30へ送出される。なお、このとき、ユーザは希望するコンテンツのコンテンツIDをKIOSK端末20上で指定し、KIOSK端末20はICカード10のカードIDと共にコンテンツIDをサーバ30へ送出することができる。
【0021】
続けて、ICカード10は、書換不可メモリ14に記録されているカードIDと書換可能メモリ15に記録されているサービスIDとに基づき、演算処理部12により第2のキーデータとして鍵データ(Kaカード)を算出する(ステップS102)。鍵データ(Kaカード)は、所定の関数(f)をカードIDとサービスIDに適用するとにより算出することとする。なお、関数(f)としては例えばEX−OR(排他的論理和)などの論理関数を用いるが、関数(f)の種類は特に制限されない。関数(f)の値を求める処理手順は、プログラムとしてICカード10の書換可能メモリ15に予め記録されている。
【0022】
一方、サーバ30は、ICカード10からカードIDが送出されると、そのカードIDを送受信部31により受信し、そのカードIDをキーとして認証情報データベース34を参照し、対応するサービスIDを読み出す(ステップS201)。このときサーバ30は、そのICカード10がコンテンツをダウンロードすることを許可されているかどうかの認証を行う。
図3は、サーバ30の認証情報データベース34に格納されているデータの一例を示す図である。図3に示すように、認証情報データベース34には、ICカードのカードIDと、そのカードIDのカードがサービスを受けることができるサービスIDと、ICカードがすでにサーバ30から取得したコンテンツのコンテンツIDが記録されている。ステップS201では、カードIDが一致するデータからサービスIDを抽出する。
【0023】
さらに、サーバ30は、演算処理部32により第1のキー情報として乱数(RND)を生成し、送受信部31によりICカード10へ送出する(ステップS202)。なお、このとき生成した乱数(RND)は、後に述べる処理で使用するため、サーバ30のメモリ33に一時的に記録される。
【0024】
それに対し、ICカード10は、サーバ30から送出された乱数(RND)を受信する(ステップS103)。そして、ICカード10は、取得した乱数(RND)に基づく暗号データ(E)を演算処理部12により算出し、送受信部12によりサーバ30へ送出する(ステップS104)。暗号データ(E)は、暗号化用の下記式(1)を使用し、ステップS102において算出された鍵データ(Kaカード)に基づいて算出する。
【0025】
【数1】
【0026】
この式(1)では、値RNDを鍵データ(Kaカード)によって暗号化し、算出された暗号データをEとする。このとき、乱数(RND)の暗号化用の式、すなわち暗号化方法は特に制限されず、データを暗号化するための任意の方法を採用することができる。また、暗号データ(E)の値を求める処理手順は、プログラムとしてICカード10の書換可能メモリ15に予め記録されている。なお、ステップS104においては、乱数(RND)とともにカードIDを再度送出することができる。
【0027】
サーバ30は、ICカード10により送出された暗号データ(E)を送受信部31により受信する(ステップS203)。さらに、サーバ30は、ステップS201において取得したカードIDと、カードIDに基づいて抽出されたサービスIDとから、サーバ30のメモリ33に予め登録された関数(f)を用いて鍵データ(Kaサーバ)を算出する(ステップS204)。なお、サーバ30で使用される関数(f)は、ステップS102においてICカード10において使用される関数(f)と同一のものである。
【0028】
続けて、サーバ30は、ステップS203において取得した暗号データ(E)を復号化した復号データ(D)を算出する(ステップS205)。復号データ(D)は、復号化用の下記式(2)を使用し、ステップS204において算出された鍵データ(Kaサーバ)に基づいて算出する。
【0029】
【数2】
【0030】
この式(2)では、値Eを鍵データ(Kaサーバ)に基づいて暗号化し、算出された復号データをDとする。また、復号データ(D)の値を求める処理手順は、プログラムとしてメモリ33に予め記録されている。そして、サーバ30は、算出された復号データ(D)と、ステップS202において生成した乱数(RND)とを比較し、復号データ(D)と乱数(RND)が一致するか否かを判断する(ステップS206)。
【0031】
サーバ30がステップS206において、復号化データ(D)と乱数(RND)は一致しないと判断した場合、本処理を終了する。一方、サーバ30が復号化データ(D)と乱数(RND)は一致すると判断した場合、そのICカード10は登録された正規なICカードであると認証し、ユーザによって指定されたコンテンツIDのコンテンツをコンテンツデータベース35から抽出し、ICカード10へ送出する(ステップS207)。
そしてICカード10は、サーバ30から送出されたコンテンツを送受信部11により受信する(ステップS105)。
【0032】
ここで、コンテンツの送受信におけるサーバ30とICカード10の処理の流れをより詳細に説明する。
図4は、コンテンツの送受信におけるサーバ30とICカード10の処理の流れを示すフロー図である。
まず、図2のステップS206の判断に基づいてコンテンツを送出する決定を行なったサーバ30は、送出するコンテンツを所定のデータ長さ毎に分割する(ステップS210)。図5は、コンテンツデータベース35に格納されたデータの一例を示す図である。図5に示すように、コンテンツデータベース35には、コンテンツID毎にコンテンツのデータが格納されている。
【0033】
続けて、サーバ30は、分割されたコンテンツ(Data)を演算処理部32により暗号化する(ステップS211)。分割されたコンテンツ(Data)が暗号化されたコンテンツ(Data’)は、暗号化用の下記式(3)を使用して算出する。
【0034】
【数3】
【0035】
この式(3)では値Dataを暗号化し、暗号化されたコンテンツをData’とする。この暗号化用の式が示すように、Data’を算出するには、関数(g)によって算出された値を鍵とした暗号化の処理が行われる。なお、関数(g)により得られる値は、図2に示すステップS202において生成した乱数(RND)と、ステップS204において算出した鍵データ(Kaサーバ)に基づいて計算される。したがって、暗号化されたコンテンツ(Data’)は、乱数(RND)と鍵データ(Kaサーバ)に依存したデータとなる。なお、関数(g)等のコンテンツ(Data’)を求める処理手順は、プログラムとしてメモリ33に予め記録されている。
【0036】
そして、サーバ30は、ステップS211において取得した暗号化されたコンテンツ(Data’)と共に、その暗号化されたコンテンツ(Data’)のデータ量を示す長さデータと、暗号化されたコンテンツ(Data’)のチェックサムとを送受信部31によりICカード10へ送出する(ステップS212)。
【0037】
それに対して、ICカード10は、サーバ30から送出されたデータを送受信部11により受信する(ステップS111)。そして、受信したデータのうち、暗号化されたコンテンツ(Data’)を復号化する(ステップS112)。暗号化されたコンテンツ(Data’)を復号化したコンテンツ(Data)は、復号化用の下記式(4)を使用して算出する。
【0038】
【数4】
【0039】
この式(4)では値Data’を復号化し、復号化されたコンテンツをDataとする。この復号化用の式が示すように、復号化されたコンテンツ(Data’)を算出するには、関数(g)によって算出される値が鍵として用いられる。そして、この関数(g)は、サーバ30におけるステップS211において使用される関数(g)と同じものである。なお、関数(g)により得られる値は、図2に示すステップS103において取得した乱数(RND)と、ステップS102において算出した鍵データ(Kaカード)に基づいて、暗号化されたコンテンツ(Data’)により取得される。したがって複合化されたコンテンツ(Data)は、乱数(RND)と鍵データ(Kaカード)に依存したデータとなる。なお、関数(g)等のコンテンツ(Data)を求める処理手順は、プログラムとしてメモリ13に予め記録されている。
【0040】
続けて、ICカード10は、ステップS111において受信したチェックサムをチェックするとともに、受信したデータが当該コンテンツの最後のデータであるかどうかをチェックする(ステップS113)。ステップS113では、チェックサムをチェックすることにより、サーバ30から送出されたデータを正しく受信することができたがどうかを判断することができる。そして、ICカード10は、ステップS113のチェックの結果を送受信部11によりサーバ30へ送出する(ステップS114)。なお、受信したデータが当該コンテンツの最後のデータであった場合には修了コードを含んだチェック結果が送出される。
【0041】
サーバ30は、ICカード10から送出されたチェックの結果を送受信部31により受信する(ステップS213)。そして、サーバ30は、ICカード10から受信したチェックの結果が終了コードを含むか否かを、演算処理部32において判断する(ステップS214)。終了コードを含まないと判断した場合、サーバ30は、さらにそのチェックの結果が再送要求を含むか否かを判断する(ステップS215)。ステップS212においてICカード10へ送出したデータがネットワークとKIOSK端末20を介して送信される際にエラーが発生した場合等、データが正確にICカード10に到達しなかったときには、ICカード10がサーバ30へ送出するチェックの結果には、その分割され且つ暗号化されたコンテンツ(Data’)を再度送出して欲しい旨の要求が含まれる。このような場合、ステップS215において、サーバ30は再送要求が含まれると判断し、もう一度同じ分割されたコンテンツをICカード10へ送出するため、ステップS212からの処理を繰り返す。
【0042】
一方、ステップS215において、チェックの結果には再送要求は含まれないと判断した場合、すなわち、チェックの結果に次の分割されたコンテンツの送出を要求するチェイン要求が含まれる場合、サーバ30は、ステップS212において既に送出した分割されたコンテンツに連続する次の分割されたコンテンツについて、ステップS211の処理を行う。このようにしてサーバ30は、分割されたコンテンツの全てをICカード10へ送出するが、最後に送出される分割されたコンテンツには、その分割されたコンテンツで全てのコンテンツの送出が終了する旨を通知するデータ(終了コード)を付与する。このように、ステップS214において、ICカード10から受信したチェックの結果は終了コードを含むとサーバ30が判断すると、ダウンロードされたコンテンツのコンテンツIDをICカード10に関連させて認証情報データベースに記録し、本処理を終了する。
【0043】
同様に、ICカード10は、ステップS113において取得したチェックの結果が終了コードを含むか否かを、演算処理部12において判断する(ステップS115)。終了コードを含まないと判断した場合、ステップS111へ戻り、既に取得した分割されたコンテンツに続く、次の分割されたコンテンツを取得するため、または取得に失敗した分割されたコンテンツを再度取得するため、上記した処理を繰り返す。そして、ICカード10が、チェックの結果は終了コードを含むと判断した場合、本処理を終了する。
【0044】
以上のように、本実施の形態では、サーバ30がコンテンツをICカードに送出する際にコンテンツを暗号化して送出するが、この暗号化においてカードIDに基づいて算出された鍵データ(Kaサーバ)を利用する。そして、ICカード10における暗号化されたコンテンツの復号化においても、カードIDから算出される鍵データ(Kaカード)を利用する。鍵データ(Kaカード)はICカード10からKIOSK端末20等の外部へ送信されることはなく、またサーバ30において算出される鍵データ(Kaサーバ)も、ネットワークを介して外部へ送信されることはない。しかしながら、鍵データ(Kaサーバ)と鍵データ(Kaカード)とは、同じカードIDおよび同じサービスID、並びに同じ間数(f)を用いて算出されるため、同じ値(以下、鍵データ(Ka)という)となる。したがって、サーバ30からダウンロードされたコンテンツを不正にコピーしても、当該カードIDを有するICカード10以外、暗号化されたコンテンツを復号化させるために必要な鍵である鍵データ(Ka)を有しないので、コンテンツを復号化することはできない。またKIOSK端末20自身も、鍵データKaを有しないため、コンテンツを複合化することはできない。
【0045】
また、図2に示す処理においてICカード10の認証を行った後、ステップS105においてコンテンツを受信する前に、認証されたICカード10とは異なるICカードをKIOSK端末20へ接続させ、コンテンツを不正にダウンロードしても、ダウンロードされたコンテンツを復号化することはできない。ICカード10の代わりに接続された認証されていないICカードは、コンテンツを復号化させるために必要な鍵である鍵データ(Ka)を有しないので、コンテンツを復号化することはできない。また、もし認証されていないICカードがIDデータを不正に有していても、認証の段階で正規なICカードが取得する乱数(RND)を有しないので、暗号化されたコンテンツを復号化することはできない。以上のように、本実施の形態のコンテンツ配信システムでは、ICカード毎に固有な鍵データ(Ka)を利用することで、コンテンツが不正に使用されることを防止することができる。
【0046】
上記実施の形態では、鍵データ(Ka)の算出にサービスIDを利用しているが、本発明はこれに限定されず、サービスIDを利用しないものであってもよい。ただし、ICカード10の認証におけるセキュリティを高めるため、サービスIDを利用して鍵データ(Ka)を算出することが好ましい。
【0047】
また、上記実施の形態では、ICカード10は関数(f)と関数(g)とを予め書換可能メモリ15に記録しているが、本発明はこれに限定されない。例えば、関数(f)と関数(g)は、コンテンツを取得する際にサーバ30から取得するものであってもよい。この場合、ICカード10が1つのコンテンツを取得する毎に変化させてもよく、またカードID毎に異ならせてもよい。その他、関数(f)と関数(g)はICカード10の書換不可メモリ14に記録されていてもよい。
【0048】
その他、上記実施の形態では、KIOSK端末20に接続してICカード10へコンテンツをダウンロードするが、本発明はこれに限定されない。例えば、ICカード10の代わりに、携帯電話やPDA(Personal Digital Assistant)等の携帯型デバイスにコンテンツをダウンロードさせるものであってもよい。また、携帯電話やPDA内部に設けられたICカードにコンテンツをダウンロードさせるものであってもよい。
【0049】
なお、本発明は、上記実施の形態で示したような処理を実行するためにサーバ30としてコンピュータ装置や、ICカード10等のユーザが使用する携帯型デバイスに導入されるプログラムとして提供することができる。このプログラムは、以下のような記憶媒体の形態とすることもできる。すなわち、記憶媒体としては、コンピュータ装置に上記したような処理を実行させるプログラムを、CD−ROM、DVD、メモリ、ハードディスク等の記憶媒体に、コンピュータ装置が読み取り可能に記憶させれば良い。
これ以外にも、本発明の主旨を逸脱しない限り、上記実施の形態で挙げた構成を取捨選択したり、他の構成に適宜変更したりすることが可能である。
【0050】
【発明の効果】
以上説明したように、請求項1、請求項5または請求項7記載の発明によれば、コンテンツを送出するサーバは、外部へ送出されることのない第2のキー情報(例えば鍵データ(Ka))を用いてICカードの認証と、コンテンツの暗号化を行うことができる。したがって、許可されていない偽造ICカードに不正にコンテンツがダウンロードされることを防止できる。また、ICカードを許可されていない方法で使用することにより、コンテンツが不正に取得されたとしても、暗号化されたコンテンツは認証されたICカードのみが受け取る第1のキー情報(例えば乱数)を有さず、復号化することはできない。よって、不正に取得されたコンテンツが使用されることを防止することができる。
【0051】
また、請求項2記載の発明によれば、ICカードのコンテンツ取得要求時に、ネットワークを介してICカードから取得することができない、すなわち、このとき外部へ送出されないサービスIDを、カードIDと共に用いて第2のキー情報としての鍵データ(Ka)を算出する。したがって、偽造ICカード等によるコンテンツの不正な取得や不正な使用をより効果的に防止することができる。
【0052】
また、請求項3、請求項6または請求項8記載の発明によれば、ICカードは、暗号化されたコンテンツを復号化する第2のキー情報(例えば鍵データ(Ka))を外部へ送出せず、ICカード内で算出して、暗号化されたコンテンツを復号化する。したがって、認証を受けたICカード以外において暗号化されたコンテンツが取得されても、この暗号化されたコンテンツは復号化することはできないので、コンテンツの不正な使用を防止することができる。
【0053】
また、請求項4記載の発明によれば、第2のキー情報としての鍵データ(Ka)の算出に、外部へ送出しないサービスIDを用いることで、コンテンツの不正なダウンロードや不正な使用をより効果的に防止することができる。
【図面の簡単な説明】
【図1】本実施の形態におけるコンテンツ配信システムを説明するためのICカードおよびサーバの構成を示すブロック図である。
【図2】ICカードおよびサーバにおける処理の流れを示すフロー図である。
【図3】サーバの認証情報データベース34に格納されているデータの一例を示す図である。
【図4】コンテンツの送受信におけるサーバとICカードの処理の流れを示すフロー図である。
【図5】コンテンツデータベースに格納されたデータの一例を示す図である。
【符号の説明】
10 ICカード
11 送受信部
12 演算処理部
13 メモリ
14 書換不可メモリ
15 書換可能メモリ
20 KIOSK端末
30 サーバ
31 送受信部
32 演算処理部
33 メモリ
34 認証情報データベース
35 コンテンツデータベース
Claims (8)
- コンテンツを配信するサーバであって、
ネットワークに接続されたインターフェース用端末を介し、携帯型デバイスとデータの送受信を行う送受信部と、
前記携帯型デバイスから取得したデータおよび当該携帯型デバイスへ送出するデータを処理する演算処理部とを備え、
前記演算処理部は、
前記携帯型デバイスより取得した識別情報に基づいて鍵データを算出し、
乱数の前記携帯型デバイスへの送出を指示し、
前記携帯型デバイスにより前記乱数が暗号化された暗号コードを取得し、
前記暗号コードを前記鍵データに基づいて復号化し、
前記暗号コードが復号化された復号コードと前記乱数とが一致したとき、当該乱数と前記鍵データに基づいてコンテンツを暗号化し、
前記暗号化したコンテンツの前記携帯型デバイスへの送出を指示することを特徴とするサーバ。 - 前記識別情報として前記携帯型デバイスの携帯型デバイスIDと、当該携帯型デバイスが受けることができるサービスのサービスIDを記録する認証情報データベースをさらに備え、
前記演算処理部は、前記鍵データを、前記携帯型デバイスより取得した前記携帯型デバイスIDと、当該携帯型デバイスIDに基づき認証情報データベースから抽出したサービスIDとから算出することを特徴とする請求項1記載のサーバ。 - コンテンツを外部から取得可能なICカードであって、
外部とデータの送受信を行う送受信部と、
ICカードのカードIDと、前記外部から取得したコンテンツとを記録するメモリと、
前記外部より取得したデータおよび当該外部へ送出するデータを制御する演算処理部とを備え、
前記演算処理部は、
前記メモリに記録された前記カードIDの前記外部への送出を指示し、
前記カードIDから鍵データを算出し、
前記外部より取得した乱数を、前記鍵データに基づき暗号化し、
前記暗号化された乱数の前記外部への送出を指示し、
前記外部より取得した暗号化されたコンテンツを、前記乱数と前記鍵データに基づき復号化することを特徴とするICカード。 - 前記演算処理部は、前記カードIDとともに、前記ICカードが受けることができるサービスのサービスIDを用いて前記鍵データを算出することを特徴とする請求項3記載のICカード。
- ネットワークに接続されたインターフェース用端末を介して携帯型デバイスへコンテンツを配信するサーバのコンテンツ配信方法であって、
前記携帯型デバイスが有する固定キー情報を取得するステップと、
第1のキー情報を前記携帯型デバイスへ送出するステップと、
前記携帯型デバイスにより前記第1のキー情報が暗号化された暗号コードを取得するステップと、
前記固定キー情報に基づいて第2のキー情報を算出するステップと、
算出された前記第2のキー情報に基づき、前記暗号コードを復号化するステップと、
前記暗号コードが復号化された復号コードと前記第1のキー情報とを比較するステップと、
前記復号コードと前記第1のキー情報が一致したとき、当該第1のキー情報と前記第2のキー情報に基づいてコンテンツを暗号化するステップと、
前記第1のキー情報に基づいて前記携帯型デバイスが自ら算出した第2のキー情報と、前記固定キー情報と、を有する当該携帯型デバイスへ、前記暗号化したコンテンツを送出するステップと
を有することを特徴とするコンテンツの配信方法。 - ICカードにおけるコンテンツの取得処理方法であって、
固定キー情報をサーバへ送出するステップと、
前記サーバから第1のキー情報を取得するステップと、
前記固定キー情報から算出した第2のキー情報に基づき、前記第1のキー情報を暗号化した暗号コードを算出するステップと、
算出された前記暗号コードを前記サーバへ送出するステップと、
前記サーバにおいて前記第1のキー情報と当該サーバが自ら算出した第2のキー情報とに基づいて暗号化されたコンテンツを、当該サーバから取得するステップと、
前記暗号化されたコンテンツを、前記第1のキー情報と前記ICカードが自ら算出した前記第2のキー情報とに基づき復号化するステップと
を有することを特徴とするコンテンツの取得処理方法。 - コンテンツを配信するサーバに実行させるプログラムであって、
前記携帯型デバイスの識別情報を取得する処理と、
乱数を前記携帯型デバイスへ送出する処理と、
前記乱数が暗号化された暗号コードを前記携帯型デバイスより取得する処理と、
前記識別情報に基づいて鍵データを算出する処理と、
前記暗号コードを前記鍵データに基づき復号化する処理と、
前記暗号コードが復号化された復号コードと前記乱数とを比較する処理と、
前記復号コードと前記乱数が一致したとき、当該乱数と前記鍵データに基づいてコンテンツを暗号化する処理と、
前記暗号化したコンテンツを前記携帯型デバイスに送出する処理と、
を前記サーバに実行させることを特徴とするプログラム。 - コンテンツを取得するICカードに実行させるプログラムであって、
前記ICカードのカードIDをサーバへ送出する処理と、
前記カードIDから鍵データを算出する処理と、
前記サーバから乱数を受信する処理と、
前記鍵データに基づき、前記乱数を暗号化した暗号コードを算出する処理と、
算出された前記暗号コードを前記サーバへ送出する処理と、
暗号化されたコンテンツを前記サーバから受信する処理と、
前記暗号化されたコンテンツを、前記乱数と前記鍵データに基づき復号化する処理と
を前記ICカードに実行させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002190842A JP2004040209A (ja) | 2002-06-28 | 2002-06-28 | サーバ、icカード、コンテンツの配信方法、コンテンツの取得処理方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002190842A JP2004040209A (ja) | 2002-06-28 | 2002-06-28 | サーバ、icカード、コンテンツの配信方法、コンテンツの取得処理方法およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004040209A true JP2004040209A (ja) | 2004-02-05 |
Family
ID=31700649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002190842A Withdrawn JP2004040209A (ja) | 2002-06-28 | 2002-06-28 | サーバ、icカード、コンテンツの配信方法、コンテンツの取得処理方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004040209A (ja) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006154922A (ja) * | 2004-11-25 | 2006-06-15 | Mitsubishi Electric Corp | セキュリティシステム |
JP2008016001A (ja) * | 2006-10-17 | 2008-01-24 | Tourbillon:Kk | 情報記憶装置 |
JP2009516884A (ja) * | 2005-11-22 | 2009-04-23 | 北大方正集▲団▼有限公司 | ポータブルデバイスの特性に自動的に結合されるデジタル作品をダウンロードする方法 |
JP2009260725A (ja) * | 2008-04-17 | 2009-11-05 | Sony Corp | 通信装置、通信方法、プログラム、および通信システム |
CN101977073A (zh) * | 2010-10-28 | 2011-02-16 | 中国华录集团有限公司 | 卫星接收终端与接收天线的双向认证系统 |
JP4750695B2 (ja) * | 2004-04-21 | 2011-08-17 | パナソニック株式会社 | コンテンツ提供システム、情報処理装置及びメモリカード |
KR101162227B1 (ko) | 2010-07-08 | 2012-07-04 | 주식회사 비즈모델라인 | 알에프아이디 단말기 |
KR101162196B1 (ko) | 2005-07-08 | 2012-07-05 | 주식회사 비즈모델라인 | 알에프아이디 태그에 동적 아이디 할당방법 및 시스템과이를 위한 알에프아이디 태그, 알에프아이디 단말기,기록매체 |
JP2012531645A (ja) * | 2009-07-03 | 2012-12-10 | トムソン ライセンシング | ソフトウェアアプリケーションの取得方法 |
KR101346623B1 (ko) | 2007-10-12 | 2014-01-03 | 삼성전자주식회사 | 브로드캐스트암호화를 이용한 컨텐츠 서비스 제공 방법 및기기간 인증 방법 그리고 재생기기 및 저자원 디바이스 |
JP2017200165A (ja) * | 2016-04-28 | 2017-11-02 | エスケー プラネット カンパニー、リミテッド | 保安強化のための電子はんこシステム、その制御方法およびコンピュータプログラムが記録された記録媒体 |
JP2020205107A (ja) * | 2020-09-15 | 2020-12-24 | グーグル エルエルシーGoogle LLC | カスタムデジタルコンポーネント |
US11375044B2 (en) | 2017-02-02 | 2022-06-28 | Google Llc | Custom digital components |
-
2002
- 2002-06-28 JP JP2002190842A patent/JP2004040209A/ja not_active Withdrawn
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4750695B2 (ja) * | 2004-04-21 | 2011-08-17 | パナソニック株式会社 | コンテンツ提供システム、情報処理装置及びメモリカード |
JP2006154922A (ja) * | 2004-11-25 | 2006-06-15 | Mitsubishi Electric Corp | セキュリティシステム |
KR101162196B1 (ko) | 2005-07-08 | 2012-07-05 | 주식회사 비즈모델라인 | 알에프아이디 태그에 동적 아이디 할당방법 및 시스템과이를 위한 알에프아이디 태그, 알에프아이디 단말기,기록매체 |
JP2009516884A (ja) * | 2005-11-22 | 2009-04-23 | 北大方正集▲団▼有限公司 | ポータブルデバイスの特性に自動的に結合されるデジタル作品をダウンロードする方法 |
JP2008016001A (ja) * | 2006-10-17 | 2008-01-24 | Tourbillon:Kk | 情報記憶装置 |
KR101346623B1 (ko) | 2007-10-12 | 2014-01-03 | 삼성전자주식회사 | 브로드캐스트암호화를 이용한 컨텐츠 서비스 제공 방법 및기기간 인증 방법 그리고 재생기기 및 저자원 디바이스 |
JP2009260725A (ja) * | 2008-04-17 | 2009-11-05 | Sony Corp | 通信装置、通信方法、プログラム、および通信システム |
JP4591535B2 (ja) * | 2008-04-17 | 2010-12-01 | ソニー株式会社 | 通信装置、通信方法、プログラム、および通信システム |
US8185047B2 (en) | 2008-04-17 | 2012-05-22 | Sony Corporation | Near field communication apparatus for automated assigning of various functions |
US9171135B2 (en) | 2009-07-03 | 2015-10-27 | Thomson Licensing | Method for acquisition of software applications |
JP2012531645A (ja) * | 2009-07-03 | 2012-12-10 | トムソン ライセンシング | ソフトウェアアプリケーションの取得方法 |
KR101162227B1 (ko) | 2010-07-08 | 2012-07-04 | 주식회사 비즈모델라인 | 알에프아이디 단말기 |
CN101977073A (zh) * | 2010-10-28 | 2011-02-16 | 中国华录集团有限公司 | 卫星接收终端与接收天线的双向认证系统 |
JP2017200165A (ja) * | 2016-04-28 | 2017-11-02 | エスケー プラネット カンパニー、リミテッド | 保安強化のための電子はんこシステム、その制御方法およびコンピュータプログラムが記録された記録媒体 |
US11375044B2 (en) | 2017-02-02 | 2022-06-28 | Google Llc | Custom digital components |
US11743348B2 (en) | 2017-02-02 | 2023-08-29 | Google Llc | Custom digital components |
JP2020205107A (ja) * | 2020-09-15 | 2020-12-24 | グーグル エルエルシーGoogle LLC | カスタムデジタルコンポーネント |
JP7072619B2 (ja) | 2020-09-15 | 2022-05-20 | グーグル エルエルシー | カスタムデジタルコンポーネント |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11366878B2 (en) | Method and apparatus for delivering encoded content | |
US7836311B2 (en) | Information processing apparatus, information processing method, and computer program used therewith | |
US7155415B2 (en) | Secure digital content licensing system and method | |
AU2001253243B2 (en) | Secure digital content licensing system and method | |
US8671452B2 (en) | Apparatus and method for moving rights object from one device to another device via server | |
KR101194477B1 (ko) | 전자 콘텐츠의 디지털 저작권 관리 시스템 및 방법 | |
US7124297B2 (en) | Information providing apparatus and method, information processing apparatus and method, and program storage medium | |
KR100467929B1 (ko) | 디지털 컨텐츠의 보호 및 관리를 위한 시스템 | |
US20080209231A1 (en) | Contents Encryption Method, System and Method for Providing Contents Through Network Using the Encryption Method | |
KR101689351B1 (ko) | 디지털 저작권 관리용 디바이스 및 방법 | |
US20020157002A1 (en) | System and method for secure and convenient management of digital electronic content | |
US8255333B2 (en) | Method of generating license, and method and apparatus for providing contents using the same | |
JP2005078653A (ja) | コンテンツアクセスデータのユーザ配信システム及びその方法 | |
JP2008524681A (ja) | ネットワーク・クラスタ近接性要件を強化するシステムおよび方法 | |
AU2001253243A1 (en) | Secure digital content licensing system and method | |
JP2004520755A (ja) | デジタルコンテンツの保護及び管理のための方法並びにこれを利用したシステム | |
JP2000156676A (ja) | デジタルコンテント用の安全配布システム | |
JP2004040209A (ja) | サーバ、icカード、コンテンツの配信方法、コンテンツの取得処理方法およびプログラム | |
JP2005516278A (ja) | 情報を秘密保護して送信および分配し、中間情報記憶媒体において送信された情報の物理的な例示を行う方法およびシステム | |
US20100077486A1 (en) | Method and apparatus for digital content management | |
US20090063871A1 (en) | Method and device for managing proprietary data format content | |
KR100704701B1 (ko) | Drm을 이용한 사용자 컴퓨팅 장치에서 음원 편집 방법및 장치 | |
JP4089309B2 (ja) | オブジェクト利用管理システム、オブジェクトを利用し又は提供する情報処理装置又は情報処理方法、並びにコンピュータ・プログラム | |
KR100467570B1 (ko) | 디지털 콘텐츠를 위한 보안 서비스 방법 및 그를 위한시스템 | |
JP2005149437A (ja) | 情報配信システムおよび端末認証方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20050906 |