以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外には対応しないものであることを意味するものでもない。
本発明の一側面の記録装置(例えば、図1のUFD1)は、他の装置に着脱可能な記録装置であって、暗号化されたコンテンツと、ネットワークを介して接続されるサーバから、暗号化された前記コンテンツを復号するための鍵を取得する機能を前記他の装置において実現させるアプリケーションプログラムとを記録する記録手段(例えば、図5のNAND-フラッシュメモリ32)を備え、前記記録手段には、前記他の装置により取得された、記録装置自身の識別情報を用いて暗号化された前記鍵が、前記他の装置によりさらに記録される。
本発明の他の側面の情報処理装置(例えば、図1のクライアントPC2)は、暗号化されたコンテンツと、アプリケーションプログラムとが記録されている記録装置が着脱可能とされ、前記アプリケーションプログラムを前記記録装置から読み出して実行する情報処理装置において、暗号化された前記コンテンツを復号するための鍵を、ネットワークを介して接続されるサーバから取得する取得手段(例えば、図7の鍵取得部72)と、前記取得手段により取得された、前記記録装置の識別情報を用いて暗号化された前記鍵を前記記録装置に記録させる記録制御手段(例えば、図7の記録制御部73)とを備える。
この情報処理装置には、前記記録制御手段により記録された前記鍵と、設定されている前記識別情報を前記記録装置から読み出し、前記識別情報を用いて復号した前記鍵を用いて、前記コンテンツを復号する復号手段(例えば、図7の復号部74)をさらに設けることができる。
この情報処理装置には、前記記録装置に記録されている、暗号化された前記コンテンツに関する情報を表示する表示制御手段(例えば、図7の出力制御部75)をさらに設けることができる。
この情報処理装置には、前記コンテンツの代金の課金を行う課金手段(例えば、図7の課金処理部71)をさらに設けることができる。
本発明の他の側面の情報処理方法は、暗号化されたコンテンツと、アプリケーションプログラムとが記録されている記録装置が着脱可能とされ、前記アプリケーションプログラムを前記記録装置から読み出して実行する情報処理装置(例えば、図1のクライアントPC2)の情報処理方法において、暗号化された前記コンテンツを復号するための鍵を、ネットワークを介して接続されるサーバから取得し、取得した、前記記録装置の識別情報を用いて暗号化された前記鍵を前記記録装置に記録させるステップ(例えば、図11のステップS17)を含む。
以下、本発明の実施の形態について図を参照して説明する。
図1は、本発明の一実施形態に係るコンテンツ提供システムの構成例を示す図である。
図1のコンテンツ提供システムは、UFD(USB Flash Disk)1、クライアントPC2、およびコンテンツサーバ3から構成される。UFD1はその筐体にUSB端子1Aが設けられており、クライアントPC2に設けられるUSB端子に着脱可能とされている。クライアントPC2とコンテンツサーバ3はインターネット4を介して接続され、相互に通信を行うことができるようになされている。
UFD1に内蔵されるフラッシュメモリには、図2に示されるように、暗号化された曲データなどであるコンテンツ11と、UFD1から読み出し、実行するクライアントPC2において各種の機能を実現させるアプリケーションプログラム12が記録されている。
例えば、UFD1は、暗号化された複数の曲が記録された形で商品として販売されており、記録されている曲を聴きたいユーザは、UFD1を購入して自分のクライアントPC2に差し込む。すなわち、図1のコンテンツ提供システムにおいては、ユーザへのコンテンツの提供はUFD1を介して行われ、コンテンツ自体のダウンロードは行われない。
ユーザがUFD1をクライアントPC2のUSB端子に差し込み、UFD1に記録されている情報を確認したとき、クライアントPC2のディスプレイには、コンテンツ11を表すアイコンと、アプリケーションプログラム12を起動させるときに操作されるアイコンが表示される。
図3は、クライアントPC2に表示されるアイコンの例を示す図である。
図3のアイコン21は、アプリケーションプログラム12を起動させるときに操作されるアイコンである。図3の例においては、「ContentsViewer.exe」の名前がアイコン21に設定されている。
図3のアイコン22は、UFD1に記録されているコンテンツ11を格納するフォルダを表すアイコンである。図3の例においては、UFD1にはコンテンツ#1乃至#nのn曲の音楽コンテンツが格納されているものとされている。
例えば、図3に示されるような画面が表示されている状態で、マウスなどを用いてユーザがアイコン21を操作したとき、クライアントPC2にはUFD1に記録されているコンテンツのリストが表示される。コンテンツのリストは、アイコン21が操作されることによって起動したアプリケーションプログラム12によって表示される。
図4は、コンテンツのリストの例を示す図である。
図4に示されるように、リストには、それぞれのコンテンツの番号(Contents No.)、題名、歌手名、コメント、価格、および、注文が済んでいるか否かを表す情報などが表示される。ユーザは、所定のコンテンツを選択し、選択したコンテンツを購入することができる。
注文の欄に「未」が表示されていることは、そのコンテンツをユーザがまだ購入していないことを表し、「済み」が表示されていることは、そのコンテンツをユーザが既に購入していることを表す。UFD1を購入することによってユーザは暗号化されたコンテンツを既に取得しているから、ここでいう「購入」は、暗号化されているコンテンツを復号するのに用いる鍵をコンテンツサーバ3からダウンロードすることによって、コンテンツの利用権限を取得することをいう。UFD1に記録されているコンテンツは、それぞれ異なる鍵で暗号化されている。
リストから所定のコンテンツがユーザにより選択され、コンテンツの購入が指示されたとき、クライアントPC2は、コンテンツの代金を支払う課金処理をコンテンツサーバ3との間で行い、課金処理が終了したときにコンテンツサーバ3から送信されてくる鍵を受信し、取得する。課金処理を行ったり、鍵を取得する機能は、アプリケーションプログラム12によって実現される。アプリケーションプログラム12には、コンテンツサーバ3のアドレスなどの情報があらかじめ設定されている。
クライアントPC2は、コンテンツサーバ3から送信されてきた鍵を取得したとき、取得した鍵を、その鍵によって復号することができるコンテンツと対応付けてUFD1に記録させる。購入済みのコンテンツの中から、所定のコンテンツの再生がユーザにより指示されたとき、クライアントPC2は、再生対象とするコンテンツと、そのコンテンツを復号するのに用いる鍵をUFD1から読み出し、鍵を用いて復号したコンテンツを再生する。
後に詳述するように、コンテンツサーバ3から取得された鍵は、UFD1に設定されている識別情報を用いてコンテンツサーバ3により暗号化されており、暗号化された状態のまま、UFD1に記録される。コンテンツを復号するとき、クライアントPC2は、UFD1に設定されている識別情報を用いて鍵を復号し、復号して得られた鍵をコンテンツの復号に用いる。
このように、UFD1には暗号化されたコンテンツがあらかじめ記録されているから、コンテンツをユーザに利用させるためにコンテンツサーバ3から提供されるようにしておく必要があるのは鍵だけで済み、コンテンツ自体もダウンロードによって提供する場合に較べてコンテンツサーバ3の負担を軽減することができる。近年、フラッシュメモリの容量が増加し、価格も安くなってきていることから、このようなことが可能になる。
また、UFD1には、UFD1に記録されているコンテンツのリストを表示させる機能をクライアントPC2において実現させるアプリケーションプログラム12も記録されているから、ユーザは、クライアントPC2がオフラインの環境にある場合であっても、どのコンテンツを購入するかを検討することができる。曲の一部を試聴することができるようにしておいてもよく、この場合、ユーザは、クライアントPC2がオフラインの環境にある場合であっても、曲を試聴し、どのコンテンツを購入するかを決めることができる。
さらに、コンテンツサーバ3からダウンロードされた鍵はUFD1に記録されるようになされているから、ユーザは、UFD1を差し替えることによって、USB端子が設けられている機器であれば、クライアントPC2以外の他の機器を利用しても、購入したコンテンツを聴くことができる。
コンテンツサーバ3からダウンロードされた鍵はUFD1に設定されている識別情報によって暗号化されており、コンテンツの復号の前に鍵の復号が行われるようになされているから、仮に、UFD1に記録されているコンテンツと、コンテンツサーバ3から取得され、UFD1に記録された鍵が他の記録媒体にコピーされた場合であっても、そのコピーされた鍵は復号することができない。従って、コンテンツの購入時にクライアントPC2に差し込まれていたUFD1以外の記録媒体にコピーされたコンテンツが再生されるといった不正な利用を防ぐことが可能となる。
クライアントPC2とコンテンツサーバ3により行われる処理の詳細についてはフローチャートを参照して後述する。
図5は、UFD1の構成例を示すブロック図である。
図5に示されるように、UFD1は、UFDコントローラ31とNAND-フラッシュメモリ32から構成される。UFDコントローラ31は、MPU(Micro Processing Unit)41、ROM(Read Only Memory)42、SRAM(Static Random Access Memory)43、USBドライバ44、およびNAND-フラッシュメモリコントローラ45がバス46を介して接続されることによって構成される。
UFDコントローラ31のMPU41は、ROM42に記録されているプログラムを実行し、UFD1の全体の動作を制御する。ワーキング用のメモリであるSRAM43には、MPU41が実行するプログラムやデータなどが適宜記録される。例えば、MPU41は、クライアントPC2から送信されてきたコマンドに従って各部を制御し、NAND-フラッシュメモリ32に記録されているコンテンツ11やアプリケーションプログラム12の読み出し、クライアントPC2により取得された鍵の書き込みなどを行う。
USBドライバ44はUSB規格に従ってクライアントPC2との間で通信を行う。例えば、USBドライバ44は、NAND-フラッシュメモリ32から読み出され、バス46を介して供給されたコンテンツ11やアプリケーションプログラム12をクライアントPC2に送信したり、クライアントPC2により取得され、クライアントPC2から送信されてきた鍵を受信し、バス46上に出力したりする。バス46上に出力された鍵はNAND-フラッシュメモリコントローラ45に供給され、NAND-フラッシュメモリ32に記録される。
NAND-フラッシュメモリコントローラ45は、MPU41による制御に従って、NAND-フラッシュメモリ32に記録されているデータを管理する。例えば、NAND-フラッシュメモリコントローラ45は、コンテンツ11やアプリケーションプログラム12をNAND-フラッシュメモリ32から読み出し、読み出したそれらのデータをバス46上に出力する。また、NAND-フラッシュメモリコントローラ45は、クライアントPC2により取得された鍵がバス46を介して供給されたとき、それをNAND-フラッシュメモリ32に記録させる。
NAND-フラッシュメモリ32には、図2を参照して説明したように、UFD1の出荷の時点でコンテンツ11とアプリケーションプログラム12が記録されている。NAND-フラッシュメモリ32には、クライアントPC2により取得された鍵も適宜記録される。
また、NAND-フラッシュメモリ32には、UFD1の製造時に割り当てられた識別情報であるPID(Product ID)、VID(Vender ID)、シリアルナンバーが記録されている。PIDは製品を識別する情報であり、VIDはベンダー(販売元)を識別する情報である。シリアルナンバーはUFD1に固有のものとして設定された識別情報である。PID、VID、シリアルナンバーは、他の記録媒体にコピーすることができないように所定の方法によって管理される。
PID、VID、シリアルナンバーは、コンテンツの購入時にクライアントPC2により読み出され、コンテンツサーバ3に送信される。コンテンツサーバ3においては、クライアントPC2から送信されてきたPID、VID、シリアルナンバーを用いて、クライアントPC2に送信する鍵に対して暗号化が施される。
図6は、クライアントPC2のハードウエア構成例を示すブロック図である。
CPU(Central Processing Unit)51は、ROM52、または記録部58に記録されているプログラムに従って各種の処理を実行する。RAM53には、CPU51が実行するプログラムやデータなどが適宜記録される。CPU51、ROM52、およびRAM53は、バス54により相互に接続されている。
例えば、CPU51は、クライアントPC2のUSB端子に差し込まれたUFD1からコンテンツ11やアプリケーションプログラム12を読み出し、読み出したアプリケーションプログラム12を実行して、鍵の取得やコンテンツ11の再生などの各種の処理を行う。
CPU51にはまた、バス54を介して入出力インタフェース55が接続されている。入出力インタフェース55には、キーボード、マウスなどよりなる入力部56、ディスプレイ、スピーカなどよりなる出力部57が接続されている。CPU51は、入力部56から入力されるユーザの操作に対応して鍵の取得などの各種の処理を実行する。また、CPU51は、再生した曲の音を出力部57を構成するスピーカから出力させる。
入出力インタフェース55には、記録部58、通信部59、USBコントローラ60、ドライブ61も接続されている。
記録部58は、例えばハードディスクからなり、CPU51が実行するプログラムや各種のデータを記録する。通信部59は、インターネット4を介してコンテンツサーバ3と通信を行う。
USBコントローラ60は、クライアントPC2に設けられるUSB端子に差し込まれたUFD1との間でUSB規格に従って通信を行う。例えば、USBコントローラ60は、UFD1から読み出したコンテンツ11やアプリケーションプログラム12を、入出力インタフェース55、バス54を介してCPU51に出力したり、通信部59により受信され、入出力インタフェース55を介して供給された鍵をUFD1に出力したりする。
ドライブ61は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア62が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記録部58に転送され、記録される。
以上のようなクライアントPC2の構成と同様の構成をコンテンツサーバ3も有している。以下、適宜、図6に示される構成をコンテンツサーバ3の構成としても引用して説明する。
図7は、クライアントPC2の機能構成例を示すブロック図である。図7に示す機能部のうちの少なくとも一部は、UFD1から読み出されたアプリケーションプログラム12が図6のCPU51により実行されることによって実現される。
図7に示されるように、クライアントPC2においては、課金処理部71、鍵取得部72、記録制御部73、復号部74、および出力制御部75が実現される。
課金処理部71は、入力部56が操作されることによってユーザにより購入するコンテンツが選択されたとき、USBコントローラ60を制御してPID、VID、シリアルナンバーをUFD1から読み出し、読み出したPID、VID、シリアルナンバーをコンテンツサーバ3に送信して、コンテンツの購入を要求する。コンテンツの購入を要求したとき、課金処理部71は、そのことを表す情報を鍵取得部72に出力する。
また、課金処理部71は、購入するコンテンツの代金を支払う課金処理をコンテンツサーバ3との間で行う。課金処理においては、例えば、購入するコンテンツの識別情報や、ユーザによりあらかじめ登録されているクレジットカードの番号がコンテンツサーバ3に送信される。
鍵取得部72は、コンテンツサーバ3から送信され、通信部59において受信された鍵を取得する。UFD1の認証が成功し、課金処理が終了したとき、コンテンツサーバ3からは、ユーザにより選択されたコンテンツを復号するのに用いる鍵が送信されてくる。鍵取得部72は、取得した鍵を記録制御部73に出力する。
記録制御部73は、USBコントローラ60を制御して、鍵取得部72から供給された鍵をUFD1に記録させる。鍵取得部72から供給された鍵は、その鍵によって復号することができるコンテンツと対応付けてUFD1に記録される。上述したように、コンテンツサーバ3から送信されてきた鍵は、UFD1に設定されているPID、VID、シリアルナンバーによって暗号化されており、暗号化された状態のまま、UFD1に記録される。
復号部74は、購入済みのコンテンツの再生がユーザにより指示されたとき、USBコントローラ60を制御して、暗号化された状態で記録されている再生対象のコンテンツと、それに対応付けて記録されている鍵をUFD1から読み出す。また、復号部74は、PID、VID、シリアルナンバーをもUFD1から読み出す。
復号部74は、UFD1から読み出したPID、VID、シリアルナンバーを用いて鍵を復号し、復号して得られた鍵を用いて再生対象のコンテンツを復号する。復号部74は、復号して得られたコンテンツを出力制御部75に出力する。
出力制御部75は、復号部74から供給されたコンテンツをRAM53上に作成された擬似ドライブに展開することによって再生し、出力部57を構成するスピーカから音を出力させる。すなわち、ハードディスクなどよりなる記録部58に記録させるようなことは行われず、UFD1から読み出されたコンテンツが直接再生される。コンテンツを再生する出力制御部75の機能は、例えば、Media Player(商標)などの所定のアプリケーションが実行されることによって実現される。
出力制御部75は、UFD1に記録されているコンテンツを参照し、図4に示されるようなコンテンツのリストを、出力部57を構成するディスプレイに表示させることなども行う。
図8は、コンテンツサーバ3の機能構成例を示すブロック図である。図8に示す機能部のうちの少なくとも一部は、コンテンツサーバ3のCPU51(図6)により所定のプログラムが実行されることによって実現される。
図8に示されるように、コンテンツサーバ3においては、鍵管理部81、鍵DB(Data Base)82、および課金処理部83が実現される。
鍵管理部81は、UFD1の認証が成功し、課金処理が終了したことを表す情報が課金処理部83から供給されたとき、購入が要求されたコンテンツの復号に用いる鍵を鍵DB82から読み出す。鍵管理部81は、クライアントPC2から送信されてきたPID、VID、シリアルナンバーを用いて、読み出した鍵に暗号化を施し、暗号化された鍵をクライアントPC2に送信する。
鍵DB82は、UFD1に記録されているそれぞれのコンテンツの復号に用いる鍵を記録する。
図9は、鍵DB82に記録されている鍵の例を示す図である。
図9の例においては、コンテンツ#1乃至#nのそれぞれのコンテンツの復号に用いる鍵として鍵K1乃至Knが示されている。このように、UFD1に記録されているコンテンツはそれぞれ異なる鍵によって暗号化されている。
図8の説明に戻り、課金処理部83は、コンテンツの購入がクライアントPC2から要求されたとき、クライアントPC2から送信されてきたPID、VID、シリアルナンバーのうちの例えばPID、VIDを用いて、UFD1が、鍵の提供先として正当な機器であるか否かを確認する認証を行う。課金処理部83に対しては、鍵の提供先として正当な機器のPID、VIDがあらかじめ設定されている。
課金処理部83は、クライアントPC2から送信されてきたPID、VIDが、あらかじめ設定されているPID、VIDと一致することから、UFD1が正当な機器であり、認証が成功したと判定した場合、クライアントPC2から送信されてきたクレジットカード番号などの情報に基づいて課金処理を行う。課金処理部83は、認証が成功し、課金処理も終了したとき、そのことを表す情報を鍵管理部81に出力する。
ここで、以上のような構成を有するそれぞれの装置の処理について説明する。
はじめに、図10のフローチャートを参照して、UFD1を製造するときに行われる処理について説明する。この処理は、ベンダやサービスの提供者により行われる。
ステップS1において、UFD1に記録させるコンテンツ11の暗号化が行われ、ステップS2に進み、暗号化されたコンテンツ11が、アプリケーションプログラム12とともにUFD1に記録される。コンテンツ11とアプリケーションプログラム12が記録されたUFD1は商品として販売される。
ステップS3において、コンテンツ11の暗号化に用いられた鍵がコンテンツサーバ3の鍵DB82に記録され、処理が終了される。
次に、図11のフローチャートを参照して、コンテンツサーバ3から鍵を取得するクライアントPC2の処理について説明する。
この処理は、クライアントPC2にUFD1が差し込まれ、図3に示されるようにして表示されるアイコン21がユーザにより操作されたときに開始される。
ステップS11において、クライアントPC2のCPU51は、アプリケーションプログラム12をUFD1から読み出し、読み出したアプリケーションプログラム12を起動させる。これにより、図7の各部が実現される。
ステップS12において、出力制御部75は、UFD1に記録されているコンテンツを参照し、図4に示されるようなコンテンツのリストをディスプレイに表示させる。
ステップS13において、課金処理部71は、入力部56に対するユーザの操作に基づいて、コンテンツの注文を受け付ける。
ステップS14において、課金処理部71は、PID、VID、シリアルナンバーをUFD1から読み出し、読み出したPID、VID、シリアルナンバーをコンテンツサーバ3に送信して、コンテンツの購入を要求する。また、課金処理部14は、コンテンツの代金を支払う課金処理をコンテンツサーバ3との間で行う。コンテンツサーバ3においてはUFD1の認証や課金処理が行われ、認証が成功し、課金処理が終了したとき、ユーザが注文したコンテンツを復号するのに用いられる鍵が、暗号化が施された形で送信される。
ステップS15において、鍵取得部72は、コンテンツサーバ3から鍵が送信されてきたか否かを判定し、送信されてこないと判定した場合、処理を終了させる。一方、ステップS15において、鍵取得部72は、鍵が送信されてきたと判定した場合、ステップS16に進む。
ステップS16において、鍵取得部72は、通信部59において受信された鍵を取得し、取得した鍵を記録制御部73に出力する。
ステップS17において、記録制御部73は、鍵取得部72から供給された鍵を、その鍵によって復号することができるコンテンツと対応付けてUFD1に記録させ、処理を終了させる。
次に、図12のフローチャートを参照して、鍵を提供するコンテンツサーバ3の処理について説明する。
この処理は、図11のステップS14の処理がクライアントPC2において行われ、UFD1のPID、VID、シリアルナンバーや、購入するコンテンツの識別情報、クレジットカードの番号などの情報がクライアントPC2から送信されてきたときに行われる。
ステップS21において、課金処理部83は、クライアントPC2から送信されてきたPID、VID、シリアルナンバーのうちのPID、VIDを用いて、UFD1が、鍵の提供先として正当な機器であるか否かを確認する認証を行う。また、課金処理部83は、クライアントPC2から送信されてきたクレジットカード番号などの情報に基づいて課金処理を行う。
ステップS22において、課金処理部83は、UFD1の認証が成功し、課金処理が終了したか否かを判定し、UFD1の認証が成功していないと判定した場合、または課金処理を行うことができなかったと判定した場合、処理を終了させる。
一方、ステップS22において、課金処理部83は、UFD1の認証が成功し、かつ、課金処理が終了したと判定した場合、そのことを表す情報を鍵管理部81に出力する。
ステップS23において、鍵管理部81は、要求されたコンテンツの復号に用いる鍵を鍵DB82から読み出し、クライアントPC2から送信されてきたPID、VID、シリアルナンバーを用いて、読み出した鍵に暗号化を施す。
ステップS24において、鍵管理部81は、暗号化を施した鍵をクライアントPC2に送信し、処理を終了させる。コンテンツサーバ3から送信された鍵はクライアントPC2において受信され、暗号化されたまま、UFD1に記録される(図11のステップS17)。
次に、図13のフローチャートを参照して、コンテンツを再生するクライアントPC2の処理について説明する。
この処理は、図11に示される処理が行われ、再生対象とするコンテンツの復号に用いる鍵がUFD1に記録されているときに行われる。
ステップS31において、復号部74は、再生対象とするコンテンツが購入済みのコンテンツの中から選択されたとき、その選択を受け付け、ステップS32に進み、暗号化された状態で記録されている再生対象のコンテンツと、それに対応付けて記録されている鍵をUFD1から読み出す。また、復号部74は、PID、VID、シリアルナンバーをもUFD1から読み出す。
ステップS33において、復号部74は、UFD1から読み出したPID、VID、シリアルナンバーを用いて鍵を復号し、ステップS34に進み、復号して得られた鍵を用いて、コンテンツを復号する。復号部74は、復号して得られたコンテンツを出力制御部75に出力する。
ステップS35において、出力制御部75は、復号部74から供給されたコンテンツを再生し、出力部57を構成するスピーカから音を出力させる。ユーザにより選択された曲の再生が終了したとき、処理は終了される。
UFD1に記録されているコンテンツの再生が以上のようにして行われるようにすることにより、UFD1を他の機器に差し替えたりすることによって、ユーザは、購入したコンテンツを他の機器でも聴くことができ、購入したコンテンツを容易に取り扱うことができる。また、このことを、不正な利用を防ぎつつ実現することができる。
以上においては、コンテンツサーバ3から提供される鍵はPID、VID、シリアルナンバーの3つの識別情報によって暗号化されるものとしたが、シリアルナンバーだけによって暗号化され、クライアントPC2に提供されるようにしてもよい。これによっても、UFD1に記録されている鍵が他の記録媒体にコピーされた場合でも、コピー先の記録媒体に記録されている鍵は復号することができない。
また、以上においては、UFD1に記録され、再生されるコンテンツが音楽コンテンツである場合について説明したが、静止画、動画などの電子化された様々なデータが記録されたUFD1がユーザに提供され、音楽コンテンツと同様にして利用されるようにしてもよい。
さらに、コンテンツサーバ3から提供される鍵を工夫することによって、暗号化されたコンテンツ自体を変更することなく、サービスの形態を多様なものにすることができる。例えば、期限付きの鍵、指定される日時のみ有効とされる鍵、使用に際してパスワードの入力が必要とされる鍵、予告編や概要のみの復号を許可する鍵、コンテンツのコピーまで許可する鍵、鍵に例えばユーザ名を添付することで、動画などのコンテンツ内に自分を登場させるなどのストーリの変更を許可する鍵などの各種の鍵が提供されるようにしてもよい。
例えば、期限付きの鍵を提供することにより、視聴期限が制限されたコンテンツを、そのような制限のないコンテンツに較べて安い価格で提供したりすることができる。視聴期限が切れたコンテンツは、鍵を再度購入することによって、再び視聴可能とされる。ユーザが支払った価格に応じて、視聴期限の長さが設定されるようにしてもよい。
さらに、以上においては、UFD1に設定されているPID、VID、シリアルナンバーを用いてコンテンツサーバ3により暗号化された鍵がUFD1に記録されるものとしたが、それらの識別情報を用いた鍵の暗号化はクライアントPC2により行われるようにしてもよい。
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図6に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア62、または、プログラムが一時的もしくは永続的に格納されるROM52や、記録部58を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部59を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
なお、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
1 UFD, 2 クライアントPC, 3 コンテンツサーバ, 4 インターネット, 31 UFDコントローラ, 32 NAND-フラッシュメモリ, 71 課金処理部, 72 鍵取得部, 73 記録制御部, 74 復号部, 75 出力制御部, 81 鍵管理部, 82 鍵DB, 83 課金処理部