再生装置および再生制御方法
【課題】専用のバッファ領域を設けることなく、リソースファイルをセキュアに扱うことができる再生装置を実現する。
【解決手段】コンテントチェック部14は、ファイルキャッシュ13に格納されている暗号化されたリソースファイルを復号し、その復号されたリソースファイルを、ファイルキャッシュ13内の暗号化されたリソースファイル上に上書きする。そして、コンテントチェック部14は、復号されたリソースファイルを、ファイルキャッシュ13から読み出して再生処理部15に送出する。さらに、コンテントチェック部14は、復号済みのリソースファイルを再度暗号化し、その暗号化されたリソースファイルを、ファイルキャッシュ13内の復号済みのリソースファイル上に上書きする。そして、コンテントチェック部14は、暗号化されたリソースファイルを外部ストレージデバイス17にコピーする。
【解決手段】コンテントチェック部14は、ファイルキャッシュ13に格納されている暗号化されたリソースファイルを復号し、その復号されたリソースファイルを、ファイルキャッシュ13内の暗号化されたリソースファイル上に上書きする。そして、コンテントチェック部14は、復号されたリソースファイルを、ファイルキャッシュ13から読み出して再生処理部15に送出する。さらに、コンテントチェック部14は、復号済みのリソースファイルを再度暗号化し、その暗号化されたリソースファイルを、ファイルキャッシュ13内の復号済みのリソースファイル上に上書きする。そして、コンテントチェック部14は、暗号化されたリソースファイルを外部ストレージデバイス17にコピーする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記憶メディアに格納されたデジタルコンテントを再生する再生装置および再生方法に関する。
【背景技術】
【0002】
近年、動画像のデジタル圧縮符号化技術の進展に伴い、HD(High Definition)規格の高精細映像を扱うことが可能な再生装置(プレーヤ)の開発が進められている。
【0003】
このようなプレーヤにおいては、HD DVD(High Definition Digital Versatile Disc)のような記憶メディアが用いられる。HD DVD(High Definition Digital Versatile Disc)のような記憶メディアを用いることにより、HD映像データと高品質のサラウンドオーディオデータとを一枚の記憶メディアにパッケージ化することができる。
【0004】
記憶メディアに格納されたデジタルコンテンツをその不正コピーから保護するための技術としては、従来から、CSS(Content Scramble System)のような暗号化技術が知られている。
【0005】
特許文献1には、コピー制御情報が埋め込まれた、映像データのようなデジタルコンテントのストリームが開示されている。コピー制御情報は、映像データのようなデジタルコンテントのコピーを制限するためのコピープロテクト機能を実現するために使用される。
【特許文献1】特許第3162046号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
ところで、最近では、デジタルコンテントのインタラクティブ性を高めるため、デジタルコンテントは、映像データのようなビデオオブジェクトのみならず、例えば、効果音、イメージデータといった各種リソースファイルをも含んでいる。リソースファイルは、ビデオオブジェクトをインタラクティブに再生するためのデータである。ビデオオブジェクトは暗号化されている。同様に、リソースファイルにも暗号化が施されている。
【0007】
デジタルコンテンツトの再生に先立ち、各リソースファイルは記憶メディアからプレーヤ内のファイルキャッシュにロードされる。そして、ファイルキャッシュから必要なリソースファイルが読み出されて再生される。ファイルキャッシュの使用により、記憶メディアからのビデオオブジェクトのリード処理中に、リソースファイルのリードのために記憶メディアをアクセスする必要がなくなる。
【0008】
通常、各リソースファイルは暗号化されたままの状態でファイルキャッシュに格納されている。なぜなら、各リソースファイルの複製をファイルキャッシュからプレーヤに設けられたストレージデバイス等に転送するといったユースケースにおいても、リソースファイルをセキュアに扱うことを可能にするためである。
【0009】
しかし、このように各リソースファイルを暗号化されたままの状態でファイルキャッシュに格納した場合においては、ファイルキャッシュ上のリソースファイルが使用される度に、そのリソースファイルを復号することが必要となる。ファイルキャッシュとは別のバッファ領域を用意すれば、復号された各リソースファイルをバッファ領域に保存しておくことができる。しかし、このような専用のバッファ領域を使用することは、プレーヤに実装することが要求されるメモリサイズの増大を招き、これによってプレーヤのコストアップを引き起こすことになる。
【0010】
したがって、専用のバッファ領域を設けることなく、リソースファイルをセキュアに扱うことができる新たな機能の実現が必要である。
【0011】
本発明は上述の事情を考慮してなされたものであり、専用のバッファ領域を設けることなく、リソースファイルをセキュアに扱うことができる再生装置および再生制御方法を提供することを目的とする。
【課題を解決するための手段】
【0012】
上述の課題を解決するため、本発明は、記憶メディアに格納され、暗号化されたビデオオブジェクトと前記ビデオオブジェクトをインタラクティブに再生するための暗号化されたリソースファイルとを含むデジタルコンテントを再生する再生装置であって、前記記憶メディアから読み出される前記リソースファイルを一時的に格納するファイルキャッシュ領域を含むメモリと、前記記憶メディアから読み出される前記ビデオオブジェクトを復号する第1の処理モジュールと、前記復号されたビデオオブジェクトを再生し、前記ビデオオブジェクトの再生中に前記リソースファイルの取得を要求するリソースファイル取得要求を出力する再生処理部と、前記リソースファイル取得要求に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを、前記メモリに格納されている、前記リソースファイルが復号済みであるか否かを示す管理情報を参照することによって判定し、前記リソースファイルが復号済みではない場合には、前記リソースファイルを復号して前記復号されたリソースファイルを前記暗号化されたリソースファイル上に上書きし、前記管理情報を復号済みを示す値に更新し、且つ前記復号されたリソースファイルを前記ファイルキャッシュ領域から前記再生処理部に送出する第2の処理モジュールと、前記リソースファイルのコピーをストレージデバイスに保存することを指示するコピー要求の発生に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを前記管理情報を参照することによって判定し、前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを暗号化して前記暗号化されたリソースファイルを前記復号済みのリソースファイル上に上書きし、前記管理情報を復号済みでは無いことを示す値に更新し、且つ前記暗号化されたリソースファイルを前記ファイルキャッシュ領域から前記ストレージデバイスに送出する第3の処理モジュールとを具備することを特徴とする。
【0013】
また、本発明は、記憶メディアに格納され、暗号化されたビデオオブジェクトと前記ビデオオブジェクトをインタラクティブに再生するための暗号化されたリソースファイルとを含むデジタルコンテントを再生する再生装置の動作を制御する再生制御方法であって、前記記憶メディアから読み出される前記リソースファイルを、前記再生装置に設けられたメモリ内に定義されたファイルキャッシュ領域に一時的に格納するステップと、前記記憶メディアから読み出される前記ビデオオブジェクトを復号するステップと、前記復号されたビデオオブジェクトを前記再生装置に設けられた再生処理部によって再生し、前記ビデオオブジェクトの再生中に前記リソースファイルの取得を要求するリソースファイル取得要求を出力するステップと、前記リソースファイル取得要求に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを、前記メモリに格納されている、前記リソースファイルが復号済みであるか否かを示す管理情報を参照することによって判定するステップと、前記リソースファイルが復号済みではない場合、前記リソースファイルを復号して前記復号されたリソースファイルを前記暗号化されたリソースファイル上に上書きし、前記管理情報を復号済みを示す値に更新し、且つ前記復号されたリソースファイルを前記ファイルキャッシュ領域から前記再生処理部に送出する復号処理ステップと、前記リソースファイルのコピーをストレージデバイスに保存することを指示するコピー要求の発生に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを前記管理情報を参照することによって判定し、前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを暗号化して前記暗号化されたリソースファイルを前記復号済みのリソースファイル上に上書きし、前記管理情報を復号済みでは無いことを示す値に更新し、且つ前記暗号化されたリソースファイルを前記ファイルキャッシュ領域から前記ストレージデバイスに送出するコピー制御ステップとを具備することを特徴とする。
【発明の効果】
【0014】
本発明によれば、専用のバッファ領域を設けることなく、リソースファイルをセキュアに扱うことができる。
【発明を実施するための最良の形態】
【0015】
以下、図面を参照して本発明の実施形態を説明する。
【0016】
図1には、本発明の一実施形態に係る再生装置の構成例が示されている。この再生装置は映像データ(オーディオビジュアルデータ)のようなデータストリームから構成されるデジタルコンテントを再生するプレーヤである。この再生装置は、例えばHD DVD(High Definition Digital Versatile Disc)のような記憶メディアに予め格納された、ビデオタイトルのようなデジタルコンテントを再生するHD DVDプレーヤ10として実現されている。HD DVDプレーヤ10は、記憶メディアである光ディスクメディア100に格納されたデジタルコンテントを再生するのみならず、インターネットのようなネットワークを介してネットワークサーバからダウンロードしたデジタルコンテントを再生することもできる。
【0017】
このHD DVDプレーヤ10は、図1に示されているように、HD DVDドライブ11、データ読み取り部12、ファイルキャッシュ13、コンテントチェック部14、再生処理部15、ネットワークインタフェース16およびストレージデバイス(外部ストレージデバイスとも云う)17を備えている。
【0018】
HD DVDドライブ11によって駆動される光ディスクメディア(HD DVDメディア)100には、暗号化されたデジタルコンテント101、鍵管理情報102、およびコンテンツ暗号化鍵ファイル103などが格納されている。
【0019】
デジタルコンテント101は、例えば、映画、アニメーションといったオーディオビジュアルコンテントである。オーディオビジュアルコンテントは、ビデオデータとオーディオデータとが多重化されたストリームである。もちろん、オーディオデータのみから構成されるオーディオコンテントが光ディスクメディア100に格納されていても良い。
【0020】
デジタルコンテント101は、HD DVD規格で規定されたエンハンスドビデオオブジェクトEVOB(プライマリーエンハンスドビデオオブジェクトP−EVOB、またはセカンダリーエンハンスドビデオオブジェクトS−EVOB)のようなビデオオブジェクトVOBを含んでいる。ビデオオブジェクトVOBは、複数のビデオオブジェクトユニットVOBU(HD DVD規格で規定された、プライマリーエンハンスドビデオオブジェクトユニットP−EVOBU、セカンダリーエンハンスドビデオオブジェクトS−EVOBU等)から構成されている。ビデオオブジェクトユニットVOBUは所定の再生時間に対応するデータストリームであり、圧縮符号化されたビデオデータおよび圧縮符号化されたオーディオデータ等を含んでいる。デジタルコンテントは、例えば、P−EVOBU、S−EVOBUのようなビデオオブジェクトユニットVOBUを単位として暗号化されている。
【0021】
さらに、デジタルコンテント101は、エンハンスドビデオオブジェクトEVOBのようなビデオオブジェクトVOBに加え、幾つかのリソースファイルも含んでいる。各リソースファイルは、ビデオオブジェクトVOBをインタラクティブに再生するために必要なデータである。リソースファイルは、例えば、イメージデータ(静止画、動画、アニメーション、フォント)、効果音、スクリプト、などから構成される。デジタルコンテント101の再生時においては、イメージデータ等のリソースファイルが必要に応じて再生され、そのイメージデータ等が、例えばビデオオブジェクトVOBの前面に表示される。また、ビデオオブジェクトVOBを補完するための、サブビデオデータのようなサブビデオオブジェクトを、リソースファイルとして使用することもできる。
【0022】
光ディスクメディア100上にそれぞれ格納された、リソースファイル群およびビデオオブジェクトVOBが、デジタルコンテント101を構成する。
【0023】
なお、リソースファイルはインターネットのような外部ネットワークからダウンロードすることもできる。
【0024】
鍵管理情報102は、プレーヤ単体またはプレーヤグループに固有の鍵(第1の鍵)に対するアクセスを提供するデータブロックである。すなわち、鍵管理情報102は、各プレーヤが、自身に固有の鍵のセット(第2のキーのセット)を使用することによって、当該プレーヤ単体または当該プレーヤが属するプレーヤグループに固有の第1の鍵を算出することを許可するデータブロックである。
【0025】
コンテンツ暗号化鍵ファイル103は暗号化された幾つかのコンテンツ暗号化鍵を含むファイルである。コンテント101は1以上のコンテンツ暗号化鍵によって暗号化されている。この1以上のコンテンツ暗号化鍵は、コンテント101を復号(暗号化解除)するための鍵情報として使用される。
【0026】
第2の鍵のセットは、各プレーヤに与えられた秘密の鍵群であり、プレーヤ単体毎にまたはプレーヤグループ毎に異なっている。例えば、同一の製造メーカによって製造されたプレーヤそれぞれは、同一のプレーヤグループに属する。
【0027】
第2の鍵のセットは、プレーヤ10の製造時等に当該プレーヤ10に予め保持されている。プレーヤ10の有する第2の鍵のセットは、鍵管理情報102を処理して第1の鍵を導出するために使用される。第1の鍵によってコンテンツ暗号化鍵ファイル103を復号することにより、コンテント101を復号するための鍵情報であるコンテンツ暗号化鍵を得ることができる。
【0028】
データ読み取り部12は、HD DVDドライブ11をアクセスして、光ディスクメディア100に格納されたデータ(デジタルコンテント101、鍵管理情報102およびコンテンツ暗号化鍵ファイル103など)を読み取る。
【0029】
ファイルキャッシュ13は、データ読み取り部12によって光ディスクメディア100からリードされた各リソースファイルを一時的に格納するキャッシュ領域である。このファイルキャッシュ(ファイルキャッシュ領域とも云う)13は、プレーヤ10内に設けられたメモリ内の記憶領域の一部によって実現されている。ファイルキャッシュ13の記憶サイズは例えば64Mバイトである。
【0030】
コンテント101の再生に使用されるリソースファイルそれぞれは、エンハンスドビデオオブジェクトEVOBのようなビデオオブジェクトVOBの再生が開始される前に、光ディスクメディア100からファイルキャッシュ13にロードされる。もちろん、インターネットのような外部ネットワークからダウンロードしたリソースファイルをファイルキャッシュ13に一時的に格納するようにしてもよい。また、外部ストレージデバイス17に格納されているリソースファイルをファイルキャッシュ13に一時的に格納するようにしてもよい。
【0031】
一方、エンハンスドビデオオブジェクトEVOBのようなビデオオブジェクトVOBのストリームは、ファイルキャッシュ13には格納されない。データ読み取り部12によって光ディスクメディア100からリードされたビデオオブジェクトVOBのストリームは、コンテントチェック部14を介して再生処理部15に送られる。
【0032】
コンテントチェック部14は、著作権保護機能を実現するための処理モジュールであり、データ読み取り部12およびファイルキャッシュ13の各々と再生処理部15との間に配置されている。コンテントチェック部14はTRS(タンパ・レジスタント・ソフトウェア)等の技術によって耐タンパ化されたモジュールであり、暗号化されたビデオオブジェクトVOB(暗号化されたプライマリーエンハンスドビデオオブジェクトユニットP−EVOBU、暗号化されたセカンダリーエンハンスドビデオオブジェクトS−EVOBU)を復号する機能、暗号化された各リソースファイルを復号する機能、およびファイルキャッシュ13を管理するファイルキャッシュ管理処理を実行する機能等を有している。
【0033】
ファイルキャッシュ管理処理においては、コンテントチェック部14は、ファイルキャッシュ13に格納されている暗号化されたリソースファイルを復号し、その復号されたリソースファイルを、ファイルキャッシュ13内の暗号化されたリソースファイル上に上書きする。この場合、コンテントチェック部14は、例えば128ビット長の部分データ毎に、リソースファイルを復号する処理と、復号された部分データをファイルキャッシュ13内の暗号化されたリソースファイル上に上書きする処理とを実行する。そして、コンテントチェック部14は、復号されたリソースファイルを、ファイルキャッシュ13から読み出して再生処理部15に送出する。
【0034】
このように、復号されたリソースファイルを、その復号前のオリジナルのリソースファイルが格納されているファイルキャッシュ13内の記憶領域と同じ記憶領域に上書きすることにより、ファイルキャッシュ13を設けるだけでリソースファイルの復号結果をも保持することが可能となり、リソースファイルの復号結果を保持するための専用のバッファを設ける必要がなくなる。
【0035】
このファイルキャッシュ管理処理は、例えば、再生処理部15から送出されるリソースファイル取得要求に応じて実行される。リソースファイル取得要求によって要求された、ファイルキャッシュ13内のリソースファイルがコンテントチェック部14によって既に復号されているならば、コンテントチェック部14は、その復号済みのリソースファイルをファイルキャッシュ13から再生処理部15に送出する。一方、リソースファイル取得要求によって要求された、ファイルキャッシュ13内のリソースファイルが復号済みでないならば、コンテントチェック部14は、上述の復号及び上書き処理を実行する。
【0036】
さらに、コンテントチェック部14は、ファイルキャッシュ13内のあるリソースファイルのコピーを外部ストレージデバイス17のようなストレージデバイスに保存するというコピー制御処理を実行する機能も有している。
【0037】
コピー制御処理においては、コピー対象のリソースファイルが復号済みであるならば、コンテントチェック部14は、コピー対象のリソースファイルを再度暗号化し、その暗号化されたリソースファイルを、ファイルキャッシュ13内の復号済みのコピー対象のリソースファイル上に上書きする。この場合、コンテントチェック部14は、例えば128ビット長の部分データ毎に、リソースファイルを暗号化する処理と暗号化された部分データをファイルキャッシュ13内の復号済みのコピー対象のリソースファイル上に上書きする処理とを実行する。そして、コンテントチェック部14は、暗号化されたリソースファイルを、ファイルキャッシュ13から読み出して外部ストレージデバイス17のような保存先のストレージデバイスに送出する。
【0038】
このコピー制御処理は、例えば、再生処理部15によって実行されるスクリプト等から送出されるコピー要求に応じて実行される。このコピー要求は、ファイルキャッシュ13に格納されているあるリソースファイルのコピーを、外部ストレージデバイス17またはネットワークに接続されたネットワークアタッチドストレージデバイス(NAS)のようなストレージデバイスに保存することを要求する。コピー要求によって指定されたファイルキャッシュ13内のリソースファイルが暗号化されていないならば、コンテントチェック部14は、その暗号化されているリソースファイルをファイルキャッシュ13から外部ストレージデバイス17のようなストレージデバイスに送出する。一方、コピー要求によって指定されたファイルキャッシュ13内のリソースファイルが復号済みであるならば、コンテントチェック部14は、上述の再暗号化及び上書き処理を実行する。
【0039】
本実施形態においては、上述のファイルキャッシュ管理処理およびコピー制御処理により、ファイルキャッシュ13とは別の専用のバッファ領域を設けることなく、ビデオオブジェクトのインタラクティブ性を高めるためのリソースファイルをセキュアに扱うことが可能となる。
【0040】
再生処理部15は、コンテントチェック部14によって復号されたビデオオブジェクトおよびコンテントチェック部14によって復号されたリソースファイルを再生するための再生処理を実行する。再生処理においては、P−EVOBU、S−EVOBUのような各ビデオオブジェクトユニットVOBUに含まれるビデオデータおよびオーディオデータをそれぞれデコードする処理、およびリソースファイルをデコードする処理等が実行される。
【0041】
図3には、HD DVDメディアの物理的なデータ構造の例が示されている。
【0042】
HD DVDメディアにおいては、その最内周から順に、バーストカッティングエリア(Burst Cutting Area)、リードインエリア(Lead-in Area)、データエリアが設けられている。データエリアには、暗号化されたコンテンツ暗号化鍵ファイル、コンテンツ利用情報、および暗号化されたデジタルコンテント等が記録されている。コンテンツ暗号化鍵ファイルは、暗号化されたコンテンツ暗号化鍵をそれぞれ含む複数のエントリから構成されている。
【0043】
図3には、暗号化されたデジタルコンテントの構造が示されている。
【0044】
HD DVDメディアにおいては、プライマリービデオセット211とセカンダリービデオセット212とリソースファイル213とを含む、暗号化されたデジタルコンテントを記録することができる。
【0045】
プライマリービデオセット211は圧縮符号化された主ビデオデータおよび圧縮符号化された主オーディオデータ等を含むタイトルセットであり、1以上のプライマリーエンハンスドビデオオブジェクト(P−EVOB)から構成されている。すなわち、P−EVOBは、主AVデータストリームである。
【0046】
セカンダリービデオセット212はプライマリービデオセットを補完するためのビデオセットであり、圧縮符号化された副ビデオデータおよび圧縮符号化された副オーディオデータ等を含むタイトルセットであり、1以上のセカンダリーエンハンスドビデオオブジェクト(S−EVOB)から構成されている。すなわち、S−EVOBは、副AVデータストリームである。
【0047】
リソースファイル213はアドバンスドナビゲーションと、アドバンスドエレメントとから構成されている。アドバンスドナビゲーションはデジタルコンテントの再生手順を制御するためのナビゲーションデータであり、XML(eXtensible Markup Language)ドキュメント、およびECMA(International-European association for standardizing information and communication systems)スクリプトを含んでいる。このナビゲーションデータは、再生シーケンスの記述、メニューの記述、メニューボタンに対するアクションの記述、等を含む。また、ナビゲーションデータは、プレイリスト(PLAY LIST)も含む。プレイリストは、デジタルコンテント101を構成するP−EVOB、S−EVOB、および各リソースファイルそれぞれの再生タイミングを制御する記述を含む。また、このプレイリストには、ファイルキャッシュ13にロードすべきリソースファイルそれぞれを指定するための記述を含むローディング情報も含まれている。デジタルコンテント101の再生時には、まず、プレイリストが光ディスク100からリードされ、そのプレイリストのローディング情報に記述された各リソースファイルがデータ読み取り部12によってファイルキャッシュ13にロードされる。
【0048】
アドバンスドエレメントは、インタラクティブなコンテント再生を実現するために使用されるデータであり、静止画、アニメーション、フォント、効果音などから構成されている。
【0049】
次に、図4を参照して、プレーヤ10の具体的な機能構成の例を説明する。
【0050】
プレーヤ10は、データアクセスマネージャ401、第1の処理モジュール501、第2の処理モジュール502、第3の処理モジュール503、ナビゲーションマネージャ601、およびプレゼンテーションエンジン602を備えている。
【0051】
データアクセスマネージャ401は、HD DVDドライブ11、不揮発性メモリのようなストレージデバイス(Persistent Storage)17、または、ネットワークを介してネットワークサーバ18からデジタルコンテンツを取得する。このデータアクセスマネージャ401は、上述のデータ読み出し部12に相当するものである。
【0052】
第1の処理モジュール501、第2の処理モジュール502、および第3の処理モジュール503は上述のコンテントチェック部14を構成するモジュール群である。
【0053】
第1の処理モジュール501は、P−EBOBおよびS−EVOBそれぞれのストリームに対して、その暗号化を解除するための復号処理、およびその正当性を検証するための正当性チェック処理等を実行する。また、第1の処理モジュール501は、ファイルキャッシュ13を介さずにデータアクセスマネージャ401から送出されるリソースファイルに対しても、その暗号化を解除するための復号処理、およびその正当性を検証するための正当性チェック処理等を実行する。
【0054】
第2の処理モジュール502は、上述のファイルキャッシュ管理処理を実行する。第2の処理モジュール502は、ナビゲーションマネージャ601から送出されるリソースファイル取得要求に応答して、ファイルキャッシュ13に格納されている、リソースファイル取得要求によって要求されたリソースファイルが復号済みであるか否かを判定する。この判定処理は、ファイルキャッシュ13として利用されるメモリ内に用意されたファイル管理領域内に格納されている管理情報(復号済みフラグ)を参照することによって行われる。管理情報(復号済みフラグ)は、ファイルキャッシュ13に格納されているリソースファイル毎にそのリソースファイルが復号済みであるか否かを示す。
【0055】
リソースファイル取得要求によって要求されたリソースファイルが復号済みではない場合には、第2の処理モジュール502は、当該リソースファイルを復号して、その復号されたリソースファイルを、暗号化されているオリジナルのリソースファイル上に上書きする。そして、第2の処理モジュール502は、復号済みフラグを復号済みを示す値に更新し、そして復号されたリソースファイルをファイルキャッシュ13から再生処理部15に送出する。
【0056】
リソースファイル取得要求によって要求されたリソースファイルが復号済みである場合には、第2の処理モジュール502は、復号済みのリソースファイルをファイルキャッシュ13から再生処理部15に送出する。
【0057】
第3の処理モジュール503は、上述のコピー制御処理を実行する。第3の処理モジュール503は、例えばナビゲーションマネージャ601から送出されるコピー要求に応答して、ファイルキャッシュ13に格納されている、コピー要求によって指定されたリソースファイルが復号済みであるか否かを判定する。この判定は、コピー要求によって指定されたリソースファイルに対応する復号済みフラグを参照することによって行われる。
【0058】
コピー要求によって指定されたリソースファイルが復号済みである場合には、第3の処理モジュール503は、当該リソースファイルを暗号化して、その暗号化されたリソースファイルを復号済みのリソースファイル上に上書きする。そして、第3の処理モジュール503は、コピー要求によって指定されたリソースファイルに対応する復号済みフラグを、復号済みでは無いことを示す値に更新し、そして、暗号化されたリソースファイルをファイルキャッシュ13からストレージデバイス17に送出する。
【0059】
一方、コピー要求によって指定されたリソースファイルが復号済みではない場合には、第3の処理モジュール503は、当該リソースファイルをファイルキャッシュ13からストレージデバイス17に送出する。
【0060】
ナビゲーションマネージャ601およびプレゼンテーションエンジン602は、上述の再生処理部15として機能する。プレゼンテーションエンジン602は、ビデオオブジェクト(P/S−EBOB)のストリームをデコードして再生すると共に、リソースファィル内のアドバンスドエレメントのようなリソースデータをデコードして再生する。ナビゲーションマネージャ601は、リソースファイル内のアドバンスドナビゲーションを解釈し、その解釈結果に基づいてプレゼンテーションエンジン404の動作を制御する。また、ナビゲーションマネージャ601は、アドバンスドナビゲーションに含まれるスクリプトに従って、上述のリソースファイル取得要求およびコピー要求等を発行する処理も実行する。
【0061】
次に、本実施形態におけるファイルキャッシュ管理方法を、専用のバッファ領域を使用してファイルキャッシュを管理する方法と対比して説明する。
【0062】
まず、図5および図6を参照して、専用のバッファ領域を用いてファイルキャッシュ13を管理する処理の例について説明する。
【0063】
図5のシステムにおいては、プレーヤ内のメモリ上には、ファイルキャッシュ13の他に専用のバッファ領域131が設けられている。各リソースファイルは暗号化を含む何種類かの保護フォーマットの内の1つによって保護されており、デジタルコンテント101の再生開始前までに、ファィルキャッシュ13にロードされた状態となっている。バッファ領域131の記憶サイズは、ファイルキャッシュ13の記憶サイズと同じ例えば64MBである。
【0064】
デジタルコンテント101の再生が開始されると、ファィルキャッシュ13上にロードされたリソースファイルは、それぞれ必要なときに復号される。このとき、復号されたリソースデータはバッファ領域131上に格納される。そして、復号されたリソースデータは、そのバッファ領域131から、再生処理部15内のコンポーネント(PNGデコーダ、XMLパーサ等)に送られる。
【0065】
図5のファィルキャッシュ13上においては、画像データ(xxxx.png)とXMLファイル(xxxx.xml)とが格納されている。
【0066】
画像データ(xxxx.png)は、例えば、暗号化によって保護化されている。この場合、画像データ(xxxx.png)の本体部(ボディー)は、所定のコンテンツ暗号化鍵によって暗号化されている。また、この画像データ(xxxx.png)には、ヘッダ(コンテンツ保護 Header)が付加されている。このヘッダ内には、画像データ(xxxx.png)に対応するコンテンツ暗号化鍵が格納されている、コンテンツ暗号化鍵ファイル内のエントリを示すポインタも含まれている。
【0067】
また、XMLファイル(xxxx.xml)は、ハッシュ値のような検証用データによって保護されている。検証用データはXMLファイル(xxxx.xml)に付加されている。
【0068】
画像データ(xxxx.png)については、その本体部が復号された後にバッファ領域131に格納される。またXMLファイル(xxxx.xml)については、その正当性が検証用データを用いて確認された後にバッファ領域131に格納される。
【0069】
図6は、ファイルキャッシュ13上のリソースファイルをPersistent Storage(P-Storage)のような外部ストレージデバイス17にコピーする処理の例を示している。
【0070】
コンテンツ保護を実現するためには、復号後のリソースファイルをコピーするのではなく、復号前のリソースファィル(オリジナルデータ)をコピーすることが要求される。このため、コピー要求が発生した場合には、バッファ領域131ではなく、ファイルキャッシュ13上からコピー要求されたリソースファイルのオリジナルデータが読み出され、それが外部ストレージデバイス17に格納される。
【0071】
しかし、図5および図6で説明したように、専用のバッファ領域131を使用する構成では、メモリ管理が容易な代わりに、多くのメモリ容量を確保しなければならず、組み込み機器などのように使用可能なメモリに関する制約の大きい機器の実装に対しては、不向きである。
【0072】
図7は、本実施形態のファイルキャッシュ管理処理を示している。
【0073】
デジタルコンテント101の再生に必要な各リソースファイルが、ファィルキャッシュ103にロードされるところまでは、図5の実装と同じである。
【0074】
本実施形態では、暗号化を伴う保護フォーマットと、暗号化を伴わない保護フォーマット(検証用データを利用した保護フォーマット)とが利用される。検証用データを利用した保護フォーマットによって保護されたリソースファイルについては、上述の復号処理および上書き処理は実行されずに、ファィルキャッシュ103から再生処理部15に直接的に送られる。
【0075】
暗号化を伴う保護フォーマットが適用されたリソースファイルについては、そのデータが暗号化されているので、上述の復号処理および上書き処理が実行される。図5のシステムでは復号後のデータを専用のバッファ領域131に格納したが、本実施形態では、復号後のデータは、暗号化されているオリジナルのデータ上に上書きされる。すなわち、画像データ(xxxx.png)の暗号化されている本体部内のデータは、第2の処理モジュール502によって例えば128ビット長の部分データ単位で順次復号される。ある部分データが復号される度に、その復号された128ビット長の部分データが、ファィルキャッシュ103上の対応する128ビット長のオリジナルの部分データと同じアドレス領域に書き込まれる。
【0076】
また、第2の処理モジュール502は、ファィルキャッシュ103上の暗号化された各リソースデータ毎に、当該リソースデータが復号済みか否かを示す上述の復号済みフラグと、当該リソースデータを復号および暗号するための鍵情報(鍵情報は何らかの暗号化がなされている)とを、ファィルキャッシュ103として使用されるメモリ上のファイル管理領域内に格納する。
【0077】
図8は、本実施形態のコピー制御処理を示している。
【0078】
上述したように、コンテンツ保護を実現するためには、外部ストレージデバイス17にコピーされるリソースファイルは、保護されたオリジナルのファイルであることが要求されている。従って、復号されたデータのコピーをそのまま外部ストレージデバイス17に格納することはできない。したがって、第3の処理モジュール503は、コピー要求によって指定されたコピー対象のリソースファイルに付随する2つの管理情報(復号済みフラグと、鍵情報)を使用して、コピー対象のリソースファイルが復号済みであるか否かを判定し、コピー対象のリソースファイルが復号済みであるならば、コピー対象のリソースファイル内の復号済みのデータを再度暗号化し、その暗号化されたデータを、復号済みのオリジナルのデータ上に上書きする。
【0079】
例えば、もしファイルキャッシュ13に格納されている複数のリソースファイルの内で復号済みの画像データ(xxxx.png)がコピー要求によって指定されたならば、画像データ(xxxx.png)の復号済みの本体部内のデータは、第3の処理モジュール503によって例えば128ビット長の部分データ単位で順次暗号化される。ある部分データが暗号化される度に、その暗号化された128ビット長の部分データが、ファィルキャッシュ103上の対応する128ビット長の復号済みの部分データと同じアドレス領域に書き込まれる。
【0080】
リソースファイルに付随する管理情報は、外部ストレージ17に格納する必要はない。したがって、第3の処理モジュール503は、コピー対象のリソースファイルから管理情報を削除して、オリジナルの保護されたデータのみを外部ストレージ17に格納する。
【0081】
このような実装方法を採用することで、バッファ領域131を設ける必要が無くなり、プレーヤ10のコストを削減することが可能となる。また、ファィルキャッシュ103として使用されるメモリ上のファイル管理領域内には、復号済みのリソースファイルに対応する鍵情報が保持されているので、第3の処理モジュール503は、コピー対象のリソースファイルに対応する鍵情報を生成する処理を行うことなく、容易にコピー対象のリソースファイルを再暗号化することができる。
【0082】
次に、図9のフローチャートを参照して、デジタルコンテント101の再生処理中に実行されるファィルキャッシュ管理処理の手順を説明する。
【0083】
デジタルコンテント101の再生シーケンスにおいては、まず最初に、そのデジタルコンテント101内のビデオオブジェクトの再生の開始に先だって、プレイリストが光ディスク100からリードされてナビゲーションマネージャ601に送られる。そして、ナビゲーションマネージャ601の制御の下、必要なリソースファイルそれぞれが、データアクセスマネージャ401によってファィルキャッシュ103にロードされる。
【0084】
ビデオオブジェクトの再生中においては、ナビゲーションマネージャ601は、処理対象のリソースファイルの取得を要求するリソースファイル取得要求を発行する。このリソースファイル取得要求を受信する度に、第2の処理モジュール502は以下の処理を実行する。
【0085】
すなわち、第2の処理モジュール502は、まず、ファイルキャッシュ13に格納されている複数のリソースファイルの内でリソースファイル取得要求よって要求されたリソースファイルを選択し、そのリソースファイルに適用されている保護フォーマットが、暗号化を伴うフォーマットであるか否かを判定する(ステップS101)。暗号化を伴うフォーマットではないならば(ステップS101のNO)、第2の処理モジュール502は、リソースファイル取得要求よって要求されたリソースファイルをファィルキャッシュ103からリードし、そのリードしたリソースファイルを再生処理部15に送信する(ステップS102)。再生処理部15は、第2の処理モジュール502によってファィルキャッシュ103から読み出されたリソーファイルを再生する。この場合、再生処理部15においては、リソースファイルがアドバンストエレメントであれば、そのリソースファイルはプレゼンテーションエンジン602によって処理される。一方、リソースファイルがアドバンスドナビゲーションであれば、そのリソースファイルはナビゲーションマネージャ601によって処理される。
【0086】
リソースファイル取得要求よって要求されたリソースファイルに適用されている保護フォーマットが暗号化を伴うフォーマットであれば(ステップS101のYES)、第2の処理モジュール502は、リソースファイル取得要求よって要求されたリソースファイルに対応する復号済みフラグを参照して、当該リソースファイルが既に復号されているか否かを判定する(ステップS103)。
【0087】
リソースファイル取得要求よって要求されたリソースファイルが復号済みであるならば(ステップS103のYES)、第2の処理モジュール502は、その復号済みのリソースファイルをファィルキャッシュ103からリードし、そのリードしたリソースファイルを再生処理部15に送信する(ステップS102)。再生処理部15は、第2の処理モジュール502によってファィルキャッシュ103から読み出されたリソーファイルを再生する。この場合、再生処理部15においては、リソースファイルがアドバンストエレメントであれば、そのリソースファイルはプレゼンテーションエンジン602によって処理される。一方、リソースファイルがアドバンスドナビゲーションであれば、そのリソースファイルはナビゲーションマネージャ601によって処理される。
【0088】
一方、リソースファイル取得要求よって要求されたリソースファイルが復号済みでないならば(ステップS103のNO)、第2の処理モジュール502は、当該リソースファイルを復号し、その復号されたリソースファイルを、ファィルキャッシュ103上の暗号化されている当該リソースファイル上に上書きする(ステップS105)。このステップS105では、要求されたリソースファイルに対応する、コンテンツ暗号化鍵ファイル内のコンテンツ暗号化鍵が復号され、これによって要求されたリソースファイルを復号するための鍵情報(復号されたコンテンツ暗号化鍵)が生成される。そして、この鍵情報によって、要求されたリソースファイルが復号される。具体的には、図10に示すように、コンテンツ暗号化鍵ファイルには暗号化された複数のコンテンツ暗号化鍵が含まれており、リソースファイルのヘッダ部に含まれるポインタによって指定されるコンテンツ暗号化鍵が復号される。
【0089】
この後、第2の処理モジュール502は、生成した鍵情報を、ステップS104で復号したリソースファイルに対応するファィル管理領域に格納する(ステップS105)。そして、第2の処理モジュール502は、要求されたリソースファイルに対応する復号済みフラグを、復号済みを示す値(=True)に更新する(ステップS106)。次いで、第2の処理モジュール502は、要求されたリソースファイル、つまりステップS104で復号したリソースファイルをファィルキャッシュ103からリードし、そのリードしたリソースファイルを再生処理部15に送信する(ステップS107)。再生処理部15は、第2の処理モジュール502によってファィルキャッシュ103から読み出されたリソーファイルを再生する。この場合、再生処理部15においては、リソースファイルがアドバンストエレメントであれば、そのリソースファイルはプレゼンテーションエンジン602によって処理される。一方、リソースファイルがアドバンスドナビゲーションであれば、そのリソースファイルはナビゲーションマネージャ601によって処理される。
【0090】
なお、鍵情報を生成する処理および生成した鍵情報をファィル管理領域に格納する処理は、一度も復号されたことがないリソースファイル、つまり対応する鍵情報がファイル管理領域に保存されていないリソースファイルの取得が要求された場合にのみ実行すればよい。
【0091】
次に、図11のフローチャートを参照して、コピー制御処理の手順を説明する。
【0092】
このコピー制御処理は、例えば、ファィルキャッシュ103にロードされたリソースファイルのコピーを外部ストレージデバイス17に保存するといったユースケースにおいて実行される。この場合、例えば、ビデオオブジェクトの再生中または再生終了時などにおいて、ナビゲーションマネージャ601は、コピー要求を発生する。
【0093】
このコピー要求に応答して、第3の処理モジュール503は以下の処理を実行する。
【0094】
すなわち、第3の処理モジュール503は、まず、コピー要求よって指定されたリソースファイルに適用されている保護フォーマットが、暗号化を伴うフォーマットであるか否かを判定する(ステップS201)。暗号化を伴うフォーマットではないならば(ステップS201のNO)、第3の処理モジュール503は、コピー要求よって指定されたリソースファイルのコピーを外部ストレージデバイス17に格納する(ステップS202)。このステップS202では、第3の処理モジュール503は、コピー要求よって指定されたリソースファイルをファィルキャッシュ103からリードし、そしてそのリードしたリソースファイルを外部ストレージデバイス17に送出する。
【0095】
コピー要求よって指定されたリソースファイルに適用されている保護フォーマットが暗号化を伴うフォーマットであれば(ステップS201のYES)、第3の処理モジュール503は、コピー要求よって指定されたリソースファイルに対応する復号済みフラグを参照して、当該リソースファイルが既に復号されているか否かを判定する(ステップS203)。
【0096】
コピー要求よって指定されたリソースファイルが復号済みでないならば、つまり暗号化されているならば(ステップS203のNO)、第3の処理モジュール503は、その暗号化されているリソースファイルのコピーを外部ストレージデバイス17に格納する(ステップS202)。
【0097】
一方、コピー要求よって指定されたリソースファイルが復号済みであるならば(ステップS203のYES)、第3の処理モジュール503は、当該リソースファイルに対応する鍵情報をファイル管理領域からリードする(ステップS204)。そして、第3の処理モジュール503は、コピー要求よって指定されたリソースファイルを、リードした鍵情報によって再度暗号化し、その暗号化されたリソースファイルを、ファィルキャッシュ103上の復号済みのリソースファイル上に上書きする(ステップS205)。
【0098】
この後、第3の処理モジュール503は、コピー要求よって指定されたリソースファイルに対応する復号済みフラグを、復号済みでは無いことを示す値(=False)に更新する(ステップS206)。次いで、第3の処理モジュール503は、コピー要求よって指定されたリソースファイル、つまりステップS205で暗号化したリソースファイルのコピーを外部ストレージデバイス17に格納する(ステップS207)。このステップS207では、第3の処理モジュール503は、ステップS205で暗号化したリソースファイルをファィルキャッシュ103からリードし、そのリードしたリソースファイルを外部ストレージデバイス17に送出する。
【0099】
以上のように、本実施形態によれば、専用のバッファ領域を設けることなく、リソースファイルをセキュアに扱うことができ、これによってプレーヤのコストの低減を図ることが可能となる。
【0100】
なお、図1のプレーヤ10の機能はすべてコンピュータプログラムによって実現することができるので、このコンピュータプログラムをコンピュータ読み取り可能な記憶媒体を通じて通常のコンピュータに導入するだけで、通常のコンピュータをプレーヤとして機能させることができる。この場合、デコード処理の全てをソフトウェアによって実行してもよいが、デコード処理の一部または全てをハードウェアによって実行することもできる。
【0101】
また、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【0102】
【図1】本発明の一実施形態に係る再生装置の構成を示すブロック図。
【図2】同実施形態の再生装置で用いられる記憶メディアの物理データ構造を示す図。
【図3】同実施形態の再生装置で再生されるコンテントの構成を示す図。
【図4】同実施形態の再生装置の機能構成の例を示すブロック図。
【図5】ファイルキャッシュと別のバッファ領域を用いてファイルキャッシュ管理処理を行うシステム構成の例を示す図。
【図6】図5のシステム構成で用いられるコピー制御処理を説明するための図。
【図7】同実施形態の再生装置におけるファイルキャッシュ管理処理を説明するための図。
【図8】同実施形態の再生装置におけるコピー制御処理を説明するための図。
【図9】同実施形態の再生装置によって実行されるファイルキャッシュ管理処理の手順を示すフローチャート。
【図10】同実施形態の再生装置で用いられるリソースファイルを復号するための鍵情報を生成する処理を説明するための図。
【図11】同実施形態の再生装置によって実行されるコピー制御処理の手順を示すフローチャート。
【符号の説明】
【0103】
10…再生装置、11…HD DVDドライブ、12…データ読み取り部、13…ファイルキャッシュ、14…コンテントチェック部、15…再生処理部、501…第1の処理モジュール、502…第2の処理モジュール、503…第3の処理モジュール。
【技術分野】
【0001】
本発明は、記憶メディアに格納されたデジタルコンテントを再生する再生装置および再生方法に関する。
【背景技術】
【0002】
近年、動画像のデジタル圧縮符号化技術の進展に伴い、HD(High Definition)規格の高精細映像を扱うことが可能な再生装置(プレーヤ)の開発が進められている。
【0003】
このようなプレーヤにおいては、HD DVD(High Definition Digital Versatile Disc)のような記憶メディアが用いられる。HD DVD(High Definition Digital Versatile Disc)のような記憶メディアを用いることにより、HD映像データと高品質のサラウンドオーディオデータとを一枚の記憶メディアにパッケージ化することができる。
【0004】
記憶メディアに格納されたデジタルコンテンツをその不正コピーから保護するための技術としては、従来から、CSS(Content Scramble System)のような暗号化技術が知られている。
【0005】
特許文献1には、コピー制御情報が埋め込まれた、映像データのようなデジタルコンテントのストリームが開示されている。コピー制御情報は、映像データのようなデジタルコンテントのコピーを制限するためのコピープロテクト機能を実現するために使用される。
【特許文献1】特許第3162046号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
ところで、最近では、デジタルコンテントのインタラクティブ性を高めるため、デジタルコンテントは、映像データのようなビデオオブジェクトのみならず、例えば、効果音、イメージデータといった各種リソースファイルをも含んでいる。リソースファイルは、ビデオオブジェクトをインタラクティブに再生するためのデータである。ビデオオブジェクトは暗号化されている。同様に、リソースファイルにも暗号化が施されている。
【0007】
デジタルコンテンツトの再生に先立ち、各リソースファイルは記憶メディアからプレーヤ内のファイルキャッシュにロードされる。そして、ファイルキャッシュから必要なリソースファイルが読み出されて再生される。ファイルキャッシュの使用により、記憶メディアからのビデオオブジェクトのリード処理中に、リソースファイルのリードのために記憶メディアをアクセスする必要がなくなる。
【0008】
通常、各リソースファイルは暗号化されたままの状態でファイルキャッシュに格納されている。なぜなら、各リソースファイルの複製をファイルキャッシュからプレーヤに設けられたストレージデバイス等に転送するといったユースケースにおいても、リソースファイルをセキュアに扱うことを可能にするためである。
【0009】
しかし、このように各リソースファイルを暗号化されたままの状態でファイルキャッシュに格納した場合においては、ファイルキャッシュ上のリソースファイルが使用される度に、そのリソースファイルを復号することが必要となる。ファイルキャッシュとは別のバッファ領域を用意すれば、復号された各リソースファイルをバッファ領域に保存しておくことができる。しかし、このような専用のバッファ領域を使用することは、プレーヤに実装することが要求されるメモリサイズの増大を招き、これによってプレーヤのコストアップを引き起こすことになる。
【0010】
したがって、専用のバッファ領域を設けることなく、リソースファイルをセキュアに扱うことができる新たな機能の実現が必要である。
【0011】
本発明は上述の事情を考慮してなされたものであり、専用のバッファ領域を設けることなく、リソースファイルをセキュアに扱うことができる再生装置および再生制御方法を提供することを目的とする。
【課題を解決するための手段】
【0012】
上述の課題を解決するため、本発明は、記憶メディアに格納され、暗号化されたビデオオブジェクトと前記ビデオオブジェクトをインタラクティブに再生するための暗号化されたリソースファイルとを含むデジタルコンテントを再生する再生装置であって、前記記憶メディアから読み出される前記リソースファイルを一時的に格納するファイルキャッシュ領域を含むメモリと、前記記憶メディアから読み出される前記ビデオオブジェクトを復号する第1の処理モジュールと、前記復号されたビデオオブジェクトを再生し、前記ビデオオブジェクトの再生中に前記リソースファイルの取得を要求するリソースファイル取得要求を出力する再生処理部と、前記リソースファイル取得要求に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを、前記メモリに格納されている、前記リソースファイルが復号済みであるか否かを示す管理情報を参照することによって判定し、前記リソースファイルが復号済みではない場合には、前記リソースファイルを復号して前記復号されたリソースファイルを前記暗号化されたリソースファイル上に上書きし、前記管理情報を復号済みを示す値に更新し、且つ前記復号されたリソースファイルを前記ファイルキャッシュ領域から前記再生処理部に送出する第2の処理モジュールと、前記リソースファイルのコピーをストレージデバイスに保存することを指示するコピー要求の発生に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを前記管理情報を参照することによって判定し、前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを暗号化して前記暗号化されたリソースファイルを前記復号済みのリソースファイル上に上書きし、前記管理情報を復号済みでは無いことを示す値に更新し、且つ前記暗号化されたリソースファイルを前記ファイルキャッシュ領域から前記ストレージデバイスに送出する第3の処理モジュールとを具備することを特徴とする。
【0013】
また、本発明は、記憶メディアに格納され、暗号化されたビデオオブジェクトと前記ビデオオブジェクトをインタラクティブに再生するための暗号化されたリソースファイルとを含むデジタルコンテントを再生する再生装置の動作を制御する再生制御方法であって、前記記憶メディアから読み出される前記リソースファイルを、前記再生装置に設けられたメモリ内に定義されたファイルキャッシュ領域に一時的に格納するステップと、前記記憶メディアから読み出される前記ビデオオブジェクトを復号するステップと、前記復号されたビデオオブジェクトを前記再生装置に設けられた再生処理部によって再生し、前記ビデオオブジェクトの再生中に前記リソースファイルの取得を要求するリソースファイル取得要求を出力するステップと、前記リソースファイル取得要求に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを、前記メモリに格納されている、前記リソースファイルが復号済みであるか否かを示す管理情報を参照することによって判定するステップと、前記リソースファイルが復号済みではない場合、前記リソースファイルを復号して前記復号されたリソースファイルを前記暗号化されたリソースファイル上に上書きし、前記管理情報を復号済みを示す値に更新し、且つ前記復号されたリソースファイルを前記ファイルキャッシュ領域から前記再生処理部に送出する復号処理ステップと、前記リソースファイルのコピーをストレージデバイスに保存することを指示するコピー要求の発生に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを前記管理情報を参照することによって判定し、前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを暗号化して前記暗号化されたリソースファイルを前記復号済みのリソースファイル上に上書きし、前記管理情報を復号済みでは無いことを示す値に更新し、且つ前記暗号化されたリソースファイルを前記ファイルキャッシュ領域から前記ストレージデバイスに送出するコピー制御ステップとを具備することを特徴とする。
【発明の効果】
【0014】
本発明によれば、専用のバッファ領域を設けることなく、リソースファイルをセキュアに扱うことができる。
【発明を実施するための最良の形態】
【0015】
以下、図面を参照して本発明の実施形態を説明する。
【0016】
図1には、本発明の一実施形態に係る再生装置の構成例が示されている。この再生装置は映像データ(オーディオビジュアルデータ)のようなデータストリームから構成されるデジタルコンテントを再生するプレーヤである。この再生装置は、例えばHD DVD(High Definition Digital Versatile Disc)のような記憶メディアに予め格納された、ビデオタイトルのようなデジタルコンテントを再生するHD DVDプレーヤ10として実現されている。HD DVDプレーヤ10は、記憶メディアである光ディスクメディア100に格納されたデジタルコンテントを再生するのみならず、インターネットのようなネットワークを介してネットワークサーバからダウンロードしたデジタルコンテントを再生することもできる。
【0017】
このHD DVDプレーヤ10は、図1に示されているように、HD DVDドライブ11、データ読み取り部12、ファイルキャッシュ13、コンテントチェック部14、再生処理部15、ネットワークインタフェース16およびストレージデバイス(外部ストレージデバイスとも云う)17を備えている。
【0018】
HD DVDドライブ11によって駆動される光ディスクメディア(HD DVDメディア)100には、暗号化されたデジタルコンテント101、鍵管理情報102、およびコンテンツ暗号化鍵ファイル103などが格納されている。
【0019】
デジタルコンテント101は、例えば、映画、アニメーションといったオーディオビジュアルコンテントである。オーディオビジュアルコンテントは、ビデオデータとオーディオデータとが多重化されたストリームである。もちろん、オーディオデータのみから構成されるオーディオコンテントが光ディスクメディア100に格納されていても良い。
【0020】
デジタルコンテント101は、HD DVD規格で規定されたエンハンスドビデオオブジェクトEVOB(プライマリーエンハンスドビデオオブジェクトP−EVOB、またはセカンダリーエンハンスドビデオオブジェクトS−EVOB)のようなビデオオブジェクトVOBを含んでいる。ビデオオブジェクトVOBは、複数のビデオオブジェクトユニットVOBU(HD DVD規格で規定された、プライマリーエンハンスドビデオオブジェクトユニットP−EVOBU、セカンダリーエンハンスドビデオオブジェクトS−EVOBU等)から構成されている。ビデオオブジェクトユニットVOBUは所定の再生時間に対応するデータストリームであり、圧縮符号化されたビデオデータおよび圧縮符号化されたオーディオデータ等を含んでいる。デジタルコンテントは、例えば、P−EVOBU、S−EVOBUのようなビデオオブジェクトユニットVOBUを単位として暗号化されている。
【0021】
さらに、デジタルコンテント101は、エンハンスドビデオオブジェクトEVOBのようなビデオオブジェクトVOBに加え、幾つかのリソースファイルも含んでいる。各リソースファイルは、ビデオオブジェクトVOBをインタラクティブに再生するために必要なデータである。リソースファイルは、例えば、イメージデータ(静止画、動画、アニメーション、フォント)、効果音、スクリプト、などから構成される。デジタルコンテント101の再生時においては、イメージデータ等のリソースファイルが必要に応じて再生され、そのイメージデータ等が、例えばビデオオブジェクトVOBの前面に表示される。また、ビデオオブジェクトVOBを補完するための、サブビデオデータのようなサブビデオオブジェクトを、リソースファイルとして使用することもできる。
【0022】
光ディスクメディア100上にそれぞれ格納された、リソースファイル群およびビデオオブジェクトVOBが、デジタルコンテント101を構成する。
【0023】
なお、リソースファイルはインターネットのような外部ネットワークからダウンロードすることもできる。
【0024】
鍵管理情報102は、プレーヤ単体またはプレーヤグループに固有の鍵(第1の鍵)に対するアクセスを提供するデータブロックである。すなわち、鍵管理情報102は、各プレーヤが、自身に固有の鍵のセット(第2のキーのセット)を使用することによって、当該プレーヤ単体または当該プレーヤが属するプレーヤグループに固有の第1の鍵を算出することを許可するデータブロックである。
【0025】
コンテンツ暗号化鍵ファイル103は暗号化された幾つかのコンテンツ暗号化鍵を含むファイルである。コンテント101は1以上のコンテンツ暗号化鍵によって暗号化されている。この1以上のコンテンツ暗号化鍵は、コンテント101を復号(暗号化解除)するための鍵情報として使用される。
【0026】
第2の鍵のセットは、各プレーヤに与えられた秘密の鍵群であり、プレーヤ単体毎にまたはプレーヤグループ毎に異なっている。例えば、同一の製造メーカによって製造されたプレーヤそれぞれは、同一のプレーヤグループに属する。
【0027】
第2の鍵のセットは、プレーヤ10の製造時等に当該プレーヤ10に予め保持されている。プレーヤ10の有する第2の鍵のセットは、鍵管理情報102を処理して第1の鍵を導出するために使用される。第1の鍵によってコンテンツ暗号化鍵ファイル103を復号することにより、コンテント101を復号するための鍵情報であるコンテンツ暗号化鍵を得ることができる。
【0028】
データ読み取り部12は、HD DVDドライブ11をアクセスして、光ディスクメディア100に格納されたデータ(デジタルコンテント101、鍵管理情報102およびコンテンツ暗号化鍵ファイル103など)を読み取る。
【0029】
ファイルキャッシュ13は、データ読み取り部12によって光ディスクメディア100からリードされた各リソースファイルを一時的に格納するキャッシュ領域である。このファイルキャッシュ(ファイルキャッシュ領域とも云う)13は、プレーヤ10内に設けられたメモリ内の記憶領域の一部によって実現されている。ファイルキャッシュ13の記憶サイズは例えば64Mバイトである。
【0030】
コンテント101の再生に使用されるリソースファイルそれぞれは、エンハンスドビデオオブジェクトEVOBのようなビデオオブジェクトVOBの再生が開始される前に、光ディスクメディア100からファイルキャッシュ13にロードされる。もちろん、インターネットのような外部ネットワークからダウンロードしたリソースファイルをファイルキャッシュ13に一時的に格納するようにしてもよい。また、外部ストレージデバイス17に格納されているリソースファイルをファイルキャッシュ13に一時的に格納するようにしてもよい。
【0031】
一方、エンハンスドビデオオブジェクトEVOBのようなビデオオブジェクトVOBのストリームは、ファイルキャッシュ13には格納されない。データ読み取り部12によって光ディスクメディア100からリードされたビデオオブジェクトVOBのストリームは、コンテントチェック部14を介して再生処理部15に送られる。
【0032】
コンテントチェック部14は、著作権保護機能を実現するための処理モジュールであり、データ読み取り部12およびファイルキャッシュ13の各々と再生処理部15との間に配置されている。コンテントチェック部14はTRS(タンパ・レジスタント・ソフトウェア)等の技術によって耐タンパ化されたモジュールであり、暗号化されたビデオオブジェクトVOB(暗号化されたプライマリーエンハンスドビデオオブジェクトユニットP−EVOBU、暗号化されたセカンダリーエンハンスドビデオオブジェクトS−EVOBU)を復号する機能、暗号化された各リソースファイルを復号する機能、およびファイルキャッシュ13を管理するファイルキャッシュ管理処理を実行する機能等を有している。
【0033】
ファイルキャッシュ管理処理においては、コンテントチェック部14は、ファイルキャッシュ13に格納されている暗号化されたリソースファイルを復号し、その復号されたリソースファイルを、ファイルキャッシュ13内の暗号化されたリソースファイル上に上書きする。この場合、コンテントチェック部14は、例えば128ビット長の部分データ毎に、リソースファイルを復号する処理と、復号された部分データをファイルキャッシュ13内の暗号化されたリソースファイル上に上書きする処理とを実行する。そして、コンテントチェック部14は、復号されたリソースファイルを、ファイルキャッシュ13から読み出して再生処理部15に送出する。
【0034】
このように、復号されたリソースファイルを、その復号前のオリジナルのリソースファイルが格納されているファイルキャッシュ13内の記憶領域と同じ記憶領域に上書きすることにより、ファイルキャッシュ13を設けるだけでリソースファイルの復号結果をも保持することが可能となり、リソースファイルの復号結果を保持するための専用のバッファを設ける必要がなくなる。
【0035】
このファイルキャッシュ管理処理は、例えば、再生処理部15から送出されるリソースファイル取得要求に応じて実行される。リソースファイル取得要求によって要求された、ファイルキャッシュ13内のリソースファイルがコンテントチェック部14によって既に復号されているならば、コンテントチェック部14は、その復号済みのリソースファイルをファイルキャッシュ13から再生処理部15に送出する。一方、リソースファイル取得要求によって要求された、ファイルキャッシュ13内のリソースファイルが復号済みでないならば、コンテントチェック部14は、上述の復号及び上書き処理を実行する。
【0036】
さらに、コンテントチェック部14は、ファイルキャッシュ13内のあるリソースファイルのコピーを外部ストレージデバイス17のようなストレージデバイスに保存するというコピー制御処理を実行する機能も有している。
【0037】
コピー制御処理においては、コピー対象のリソースファイルが復号済みであるならば、コンテントチェック部14は、コピー対象のリソースファイルを再度暗号化し、その暗号化されたリソースファイルを、ファイルキャッシュ13内の復号済みのコピー対象のリソースファイル上に上書きする。この場合、コンテントチェック部14は、例えば128ビット長の部分データ毎に、リソースファイルを暗号化する処理と暗号化された部分データをファイルキャッシュ13内の復号済みのコピー対象のリソースファイル上に上書きする処理とを実行する。そして、コンテントチェック部14は、暗号化されたリソースファイルを、ファイルキャッシュ13から読み出して外部ストレージデバイス17のような保存先のストレージデバイスに送出する。
【0038】
このコピー制御処理は、例えば、再生処理部15によって実行されるスクリプト等から送出されるコピー要求に応じて実行される。このコピー要求は、ファイルキャッシュ13に格納されているあるリソースファイルのコピーを、外部ストレージデバイス17またはネットワークに接続されたネットワークアタッチドストレージデバイス(NAS)のようなストレージデバイスに保存することを要求する。コピー要求によって指定されたファイルキャッシュ13内のリソースファイルが暗号化されていないならば、コンテントチェック部14は、その暗号化されているリソースファイルをファイルキャッシュ13から外部ストレージデバイス17のようなストレージデバイスに送出する。一方、コピー要求によって指定されたファイルキャッシュ13内のリソースファイルが復号済みであるならば、コンテントチェック部14は、上述の再暗号化及び上書き処理を実行する。
【0039】
本実施形態においては、上述のファイルキャッシュ管理処理およびコピー制御処理により、ファイルキャッシュ13とは別の専用のバッファ領域を設けることなく、ビデオオブジェクトのインタラクティブ性を高めるためのリソースファイルをセキュアに扱うことが可能となる。
【0040】
再生処理部15は、コンテントチェック部14によって復号されたビデオオブジェクトおよびコンテントチェック部14によって復号されたリソースファイルを再生するための再生処理を実行する。再生処理においては、P−EVOBU、S−EVOBUのような各ビデオオブジェクトユニットVOBUに含まれるビデオデータおよびオーディオデータをそれぞれデコードする処理、およびリソースファイルをデコードする処理等が実行される。
【0041】
図3には、HD DVDメディアの物理的なデータ構造の例が示されている。
【0042】
HD DVDメディアにおいては、その最内周から順に、バーストカッティングエリア(Burst Cutting Area)、リードインエリア(Lead-in Area)、データエリアが設けられている。データエリアには、暗号化されたコンテンツ暗号化鍵ファイル、コンテンツ利用情報、および暗号化されたデジタルコンテント等が記録されている。コンテンツ暗号化鍵ファイルは、暗号化されたコンテンツ暗号化鍵をそれぞれ含む複数のエントリから構成されている。
【0043】
図3には、暗号化されたデジタルコンテントの構造が示されている。
【0044】
HD DVDメディアにおいては、プライマリービデオセット211とセカンダリービデオセット212とリソースファイル213とを含む、暗号化されたデジタルコンテントを記録することができる。
【0045】
プライマリービデオセット211は圧縮符号化された主ビデオデータおよび圧縮符号化された主オーディオデータ等を含むタイトルセットであり、1以上のプライマリーエンハンスドビデオオブジェクト(P−EVOB)から構成されている。すなわち、P−EVOBは、主AVデータストリームである。
【0046】
セカンダリービデオセット212はプライマリービデオセットを補完するためのビデオセットであり、圧縮符号化された副ビデオデータおよび圧縮符号化された副オーディオデータ等を含むタイトルセットであり、1以上のセカンダリーエンハンスドビデオオブジェクト(S−EVOB)から構成されている。すなわち、S−EVOBは、副AVデータストリームである。
【0047】
リソースファイル213はアドバンスドナビゲーションと、アドバンスドエレメントとから構成されている。アドバンスドナビゲーションはデジタルコンテントの再生手順を制御するためのナビゲーションデータであり、XML(eXtensible Markup Language)ドキュメント、およびECMA(International-European association for standardizing information and communication systems)スクリプトを含んでいる。このナビゲーションデータは、再生シーケンスの記述、メニューの記述、メニューボタンに対するアクションの記述、等を含む。また、ナビゲーションデータは、プレイリスト(PLAY LIST)も含む。プレイリストは、デジタルコンテント101を構成するP−EVOB、S−EVOB、および各リソースファイルそれぞれの再生タイミングを制御する記述を含む。また、このプレイリストには、ファイルキャッシュ13にロードすべきリソースファイルそれぞれを指定するための記述を含むローディング情報も含まれている。デジタルコンテント101の再生時には、まず、プレイリストが光ディスク100からリードされ、そのプレイリストのローディング情報に記述された各リソースファイルがデータ読み取り部12によってファイルキャッシュ13にロードされる。
【0048】
アドバンスドエレメントは、インタラクティブなコンテント再生を実現するために使用されるデータであり、静止画、アニメーション、フォント、効果音などから構成されている。
【0049】
次に、図4を参照して、プレーヤ10の具体的な機能構成の例を説明する。
【0050】
プレーヤ10は、データアクセスマネージャ401、第1の処理モジュール501、第2の処理モジュール502、第3の処理モジュール503、ナビゲーションマネージャ601、およびプレゼンテーションエンジン602を備えている。
【0051】
データアクセスマネージャ401は、HD DVDドライブ11、不揮発性メモリのようなストレージデバイス(Persistent Storage)17、または、ネットワークを介してネットワークサーバ18からデジタルコンテンツを取得する。このデータアクセスマネージャ401は、上述のデータ読み出し部12に相当するものである。
【0052】
第1の処理モジュール501、第2の処理モジュール502、および第3の処理モジュール503は上述のコンテントチェック部14を構成するモジュール群である。
【0053】
第1の処理モジュール501は、P−EBOBおよびS−EVOBそれぞれのストリームに対して、その暗号化を解除するための復号処理、およびその正当性を検証するための正当性チェック処理等を実行する。また、第1の処理モジュール501は、ファイルキャッシュ13を介さずにデータアクセスマネージャ401から送出されるリソースファイルに対しても、その暗号化を解除するための復号処理、およびその正当性を検証するための正当性チェック処理等を実行する。
【0054】
第2の処理モジュール502は、上述のファイルキャッシュ管理処理を実行する。第2の処理モジュール502は、ナビゲーションマネージャ601から送出されるリソースファイル取得要求に応答して、ファイルキャッシュ13に格納されている、リソースファイル取得要求によって要求されたリソースファイルが復号済みであるか否かを判定する。この判定処理は、ファイルキャッシュ13として利用されるメモリ内に用意されたファイル管理領域内に格納されている管理情報(復号済みフラグ)を参照することによって行われる。管理情報(復号済みフラグ)は、ファイルキャッシュ13に格納されているリソースファイル毎にそのリソースファイルが復号済みであるか否かを示す。
【0055】
リソースファイル取得要求によって要求されたリソースファイルが復号済みではない場合には、第2の処理モジュール502は、当該リソースファイルを復号して、その復号されたリソースファイルを、暗号化されているオリジナルのリソースファイル上に上書きする。そして、第2の処理モジュール502は、復号済みフラグを復号済みを示す値に更新し、そして復号されたリソースファイルをファイルキャッシュ13から再生処理部15に送出する。
【0056】
リソースファイル取得要求によって要求されたリソースファイルが復号済みである場合には、第2の処理モジュール502は、復号済みのリソースファイルをファイルキャッシュ13から再生処理部15に送出する。
【0057】
第3の処理モジュール503は、上述のコピー制御処理を実行する。第3の処理モジュール503は、例えばナビゲーションマネージャ601から送出されるコピー要求に応答して、ファイルキャッシュ13に格納されている、コピー要求によって指定されたリソースファイルが復号済みであるか否かを判定する。この判定は、コピー要求によって指定されたリソースファイルに対応する復号済みフラグを参照することによって行われる。
【0058】
コピー要求によって指定されたリソースファイルが復号済みである場合には、第3の処理モジュール503は、当該リソースファイルを暗号化して、その暗号化されたリソースファイルを復号済みのリソースファイル上に上書きする。そして、第3の処理モジュール503は、コピー要求によって指定されたリソースファイルに対応する復号済みフラグを、復号済みでは無いことを示す値に更新し、そして、暗号化されたリソースファイルをファイルキャッシュ13からストレージデバイス17に送出する。
【0059】
一方、コピー要求によって指定されたリソースファイルが復号済みではない場合には、第3の処理モジュール503は、当該リソースファイルをファイルキャッシュ13からストレージデバイス17に送出する。
【0060】
ナビゲーションマネージャ601およびプレゼンテーションエンジン602は、上述の再生処理部15として機能する。プレゼンテーションエンジン602は、ビデオオブジェクト(P/S−EBOB)のストリームをデコードして再生すると共に、リソースファィル内のアドバンスドエレメントのようなリソースデータをデコードして再生する。ナビゲーションマネージャ601は、リソースファイル内のアドバンスドナビゲーションを解釈し、その解釈結果に基づいてプレゼンテーションエンジン404の動作を制御する。また、ナビゲーションマネージャ601は、アドバンスドナビゲーションに含まれるスクリプトに従って、上述のリソースファイル取得要求およびコピー要求等を発行する処理も実行する。
【0061】
次に、本実施形態におけるファイルキャッシュ管理方法を、専用のバッファ領域を使用してファイルキャッシュを管理する方法と対比して説明する。
【0062】
まず、図5および図6を参照して、専用のバッファ領域を用いてファイルキャッシュ13を管理する処理の例について説明する。
【0063】
図5のシステムにおいては、プレーヤ内のメモリ上には、ファイルキャッシュ13の他に専用のバッファ領域131が設けられている。各リソースファイルは暗号化を含む何種類かの保護フォーマットの内の1つによって保護されており、デジタルコンテント101の再生開始前までに、ファィルキャッシュ13にロードされた状態となっている。バッファ領域131の記憶サイズは、ファイルキャッシュ13の記憶サイズと同じ例えば64MBである。
【0064】
デジタルコンテント101の再生が開始されると、ファィルキャッシュ13上にロードされたリソースファイルは、それぞれ必要なときに復号される。このとき、復号されたリソースデータはバッファ領域131上に格納される。そして、復号されたリソースデータは、そのバッファ領域131から、再生処理部15内のコンポーネント(PNGデコーダ、XMLパーサ等)に送られる。
【0065】
図5のファィルキャッシュ13上においては、画像データ(xxxx.png)とXMLファイル(xxxx.xml)とが格納されている。
【0066】
画像データ(xxxx.png)は、例えば、暗号化によって保護化されている。この場合、画像データ(xxxx.png)の本体部(ボディー)は、所定のコンテンツ暗号化鍵によって暗号化されている。また、この画像データ(xxxx.png)には、ヘッダ(コンテンツ保護 Header)が付加されている。このヘッダ内には、画像データ(xxxx.png)に対応するコンテンツ暗号化鍵が格納されている、コンテンツ暗号化鍵ファイル内のエントリを示すポインタも含まれている。
【0067】
また、XMLファイル(xxxx.xml)は、ハッシュ値のような検証用データによって保護されている。検証用データはXMLファイル(xxxx.xml)に付加されている。
【0068】
画像データ(xxxx.png)については、その本体部が復号された後にバッファ領域131に格納される。またXMLファイル(xxxx.xml)については、その正当性が検証用データを用いて確認された後にバッファ領域131に格納される。
【0069】
図6は、ファイルキャッシュ13上のリソースファイルをPersistent Storage(P-Storage)のような外部ストレージデバイス17にコピーする処理の例を示している。
【0070】
コンテンツ保護を実現するためには、復号後のリソースファイルをコピーするのではなく、復号前のリソースファィル(オリジナルデータ)をコピーすることが要求される。このため、コピー要求が発生した場合には、バッファ領域131ではなく、ファイルキャッシュ13上からコピー要求されたリソースファイルのオリジナルデータが読み出され、それが外部ストレージデバイス17に格納される。
【0071】
しかし、図5および図6で説明したように、専用のバッファ領域131を使用する構成では、メモリ管理が容易な代わりに、多くのメモリ容量を確保しなければならず、組み込み機器などのように使用可能なメモリに関する制約の大きい機器の実装に対しては、不向きである。
【0072】
図7は、本実施形態のファイルキャッシュ管理処理を示している。
【0073】
デジタルコンテント101の再生に必要な各リソースファイルが、ファィルキャッシュ103にロードされるところまでは、図5の実装と同じである。
【0074】
本実施形態では、暗号化を伴う保護フォーマットと、暗号化を伴わない保護フォーマット(検証用データを利用した保護フォーマット)とが利用される。検証用データを利用した保護フォーマットによって保護されたリソースファイルについては、上述の復号処理および上書き処理は実行されずに、ファィルキャッシュ103から再生処理部15に直接的に送られる。
【0075】
暗号化を伴う保護フォーマットが適用されたリソースファイルについては、そのデータが暗号化されているので、上述の復号処理および上書き処理が実行される。図5のシステムでは復号後のデータを専用のバッファ領域131に格納したが、本実施形態では、復号後のデータは、暗号化されているオリジナルのデータ上に上書きされる。すなわち、画像データ(xxxx.png)の暗号化されている本体部内のデータは、第2の処理モジュール502によって例えば128ビット長の部分データ単位で順次復号される。ある部分データが復号される度に、その復号された128ビット長の部分データが、ファィルキャッシュ103上の対応する128ビット長のオリジナルの部分データと同じアドレス領域に書き込まれる。
【0076】
また、第2の処理モジュール502は、ファィルキャッシュ103上の暗号化された各リソースデータ毎に、当該リソースデータが復号済みか否かを示す上述の復号済みフラグと、当該リソースデータを復号および暗号するための鍵情報(鍵情報は何らかの暗号化がなされている)とを、ファィルキャッシュ103として使用されるメモリ上のファイル管理領域内に格納する。
【0077】
図8は、本実施形態のコピー制御処理を示している。
【0078】
上述したように、コンテンツ保護を実現するためには、外部ストレージデバイス17にコピーされるリソースファイルは、保護されたオリジナルのファイルであることが要求されている。従って、復号されたデータのコピーをそのまま外部ストレージデバイス17に格納することはできない。したがって、第3の処理モジュール503は、コピー要求によって指定されたコピー対象のリソースファイルに付随する2つの管理情報(復号済みフラグと、鍵情報)を使用して、コピー対象のリソースファイルが復号済みであるか否かを判定し、コピー対象のリソースファイルが復号済みであるならば、コピー対象のリソースファイル内の復号済みのデータを再度暗号化し、その暗号化されたデータを、復号済みのオリジナルのデータ上に上書きする。
【0079】
例えば、もしファイルキャッシュ13に格納されている複数のリソースファイルの内で復号済みの画像データ(xxxx.png)がコピー要求によって指定されたならば、画像データ(xxxx.png)の復号済みの本体部内のデータは、第3の処理モジュール503によって例えば128ビット長の部分データ単位で順次暗号化される。ある部分データが暗号化される度に、その暗号化された128ビット長の部分データが、ファィルキャッシュ103上の対応する128ビット長の復号済みの部分データと同じアドレス領域に書き込まれる。
【0080】
リソースファイルに付随する管理情報は、外部ストレージ17に格納する必要はない。したがって、第3の処理モジュール503は、コピー対象のリソースファイルから管理情報を削除して、オリジナルの保護されたデータのみを外部ストレージ17に格納する。
【0081】
このような実装方法を採用することで、バッファ領域131を設ける必要が無くなり、プレーヤ10のコストを削減することが可能となる。また、ファィルキャッシュ103として使用されるメモリ上のファイル管理領域内には、復号済みのリソースファイルに対応する鍵情報が保持されているので、第3の処理モジュール503は、コピー対象のリソースファイルに対応する鍵情報を生成する処理を行うことなく、容易にコピー対象のリソースファイルを再暗号化することができる。
【0082】
次に、図9のフローチャートを参照して、デジタルコンテント101の再生処理中に実行されるファィルキャッシュ管理処理の手順を説明する。
【0083】
デジタルコンテント101の再生シーケンスにおいては、まず最初に、そのデジタルコンテント101内のビデオオブジェクトの再生の開始に先だって、プレイリストが光ディスク100からリードされてナビゲーションマネージャ601に送られる。そして、ナビゲーションマネージャ601の制御の下、必要なリソースファイルそれぞれが、データアクセスマネージャ401によってファィルキャッシュ103にロードされる。
【0084】
ビデオオブジェクトの再生中においては、ナビゲーションマネージャ601は、処理対象のリソースファイルの取得を要求するリソースファイル取得要求を発行する。このリソースファイル取得要求を受信する度に、第2の処理モジュール502は以下の処理を実行する。
【0085】
すなわち、第2の処理モジュール502は、まず、ファイルキャッシュ13に格納されている複数のリソースファイルの内でリソースファイル取得要求よって要求されたリソースファイルを選択し、そのリソースファイルに適用されている保護フォーマットが、暗号化を伴うフォーマットであるか否かを判定する(ステップS101)。暗号化を伴うフォーマットではないならば(ステップS101のNO)、第2の処理モジュール502は、リソースファイル取得要求よって要求されたリソースファイルをファィルキャッシュ103からリードし、そのリードしたリソースファイルを再生処理部15に送信する(ステップS102)。再生処理部15は、第2の処理モジュール502によってファィルキャッシュ103から読み出されたリソーファイルを再生する。この場合、再生処理部15においては、リソースファイルがアドバンストエレメントであれば、そのリソースファイルはプレゼンテーションエンジン602によって処理される。一方、リソースファイルがアドバンスドナビゲーションであれば、そのリソースファイルはナビゲーションマネージャ601によって処理される。
【0086】
リソースファイル取得要求よって要求されたリソースファイルに適用されている保護フォーマットが暗号化を伴うフォーマットであれば(ステップS101のYES)、第2の処理モジュール502は、リソースファイル取得要求よって要求されたリソースファイルに対応する復号済みフラグを参照して、当該リソースファイルが既に復号されているか否かを判定する(ステップS103)。
【0087】
リソースファイル取得要求よって要求されたリソースファイルが復号済みであるならば(ステップS103のYES)、第2の処理モジュール502は、その復号済みのリソースファイルをファィルキャッシュ103からリードし、そのリードしたリソースファイルを再生処理部15に送信する(ステップS102)。再生処理部15は、第2の処理モジュール502によってファィルキャッシュ103から読み出されたリソーファイルを再生する。この場合、再生処理部15においては、リソースファイルがアドバンストエレメントであれば、そのリソースファイルはプレゼンテーションエンジン602によって処理される。一方、リソースファイルがアドバンスドナビゲーションであれば、そのリソースファイルはナビゲーションマネージャ601によって処理される。
【0088】
一方、リソースファイル取得要求よって要求されたリソースファイルが復号済みでないならば(ステップS103のNO)、第2の処理モジュール502は、当該リソースファイルを復号し、その復号されたリソースファイルを、ファィルキャッシュ103上の暗号化されている当該リソースファイル上に上書きする(ステップS105)。このステップS105では、要求されたリソースファイルに対応する、コンテンツ暗号化鍵ファイル内のコンテンツ暗号化鍵が復号され、これによって要求されたリソースファイルを復号するための鍵情報(復号されたコンテンツ暗号化鍵)が生成される。そして、この鍵情報によって、要求されたリソースファイルが復号される。具体的には、図10に示すように、コンテンツ暗号化鍵ファイルには暗号化された複数のコンテンツ暗号化鍵が含まれており、リソースファイルのヘッダ部に含まれるポインタによって指定されるコンテンツ暗号化鍵が復号される。
【0089】
この後、第2の処理モジュール502は、生成した鍵情報を、ステップS104で復号したリソースファイルに対応するファィル管理領域に格納する(ステップS105)。そして、第2の処理モジュール502は、要求されたリソースファイルに対応する復号済みフラグを、復号済みを示す値(=True)に更新する(ステップS106)。次いで、第2の処理モジュール502は、要求されたリソースファイル、つまりステップS104で復号したリソースファイルをファィルキャッシュ103からリードし、そのリードしたリソースファイルを再生処理部15に送信する(ステップS107)。再生処理部15は、第2の処理モジュール502によってファィルキャッシュ103から読み出されたリソーファイルを再生する。この場合、再生処理部15においては、リソースファイルがアドバンストエレメントであれば、そのリソースファイルはプレゼンテーションエンジン602によって処理される。一方、リソースファイルがアドバンスドナビゲーションであれば、そのリソースファイルはナビゲーションマネージャ601によって処理される。
【0090】
なお、鍵情報を生成する処理および生成した鍵情報をファィル管理領域に格納する処理は、一度も復号されたことがないリソースファイル、つまり対応する鍵情報がファイル管理領域に保存されていないリソースファイルの取得が要求された場合にのみ実行すればよい。
【0091】
次に、図11のフローチャートを参照して、コピー制御処理の手順を説明する。
【0092】
このコピー制御処理は、例えば、ファィルキャッシュ103にロードされたリソースファイルのコピーを外部ストレージデバイス17に保存するといったユースケースにおいて実行される。この場合、例えば、ビデオオブジェクトの再生中または再生終了時などにおいて、ナビゲーションマネージャ601は、コピー要求を発生する。
【0093】
このコピー要求に応答して、第3の処理モジュール503は以下の処理を実行する。
【0094】
すなわち、第3の処理モジュール503は、まず、コピー要求よって指定されたリソースファイルに適用されている保護フォーマットが、暗号化を伴うフォーマットであるか否かを判定する(ステップS201)。暗号化を伴うフォーマットではないならば(ステップS201のNO)、第3の処理モジュール503は、コピー要求よって指定されたリソースファイルのコピーを外部ストレージデバイス17に格納する(ステップS202)。このステップS202では、第3の処理モジュール503は、コピー要求よって指定されたリソースファイルをファィルキャッシュ103からリードし、そしてそのリードしたリソースファイルを外部ストレージデバイス17に送出する。
【0095】
コピー要求よって指定されたリソースファイルに適用されている保護フォーマットが暗号化を伴うフォーマットであれば(ステップS201のYES)、第3の処理モジュール503は、コピー要求よって指定されたリソースファイルに対応する復号済みフラグを参照して、当該リソースファイルが既に復号されているか否かを判定する(ステップS203)。
【0096】
コピー要求よって指定されたリソースファイルが復号済みでないならば、つまり暗号化されているならば(ステップS203のNO)、第3の処理モジュール503は、その暗号化されているリソースファイルのコピーを外部ストレージデバイス17に格納する(ステップS202)。
【0097】
一方、コピー要求よって指定されたリソースファイルが復号済みであるならば(ステップS203のYES)、第3の処理モジュール503は、当該リソースファイルに対応する鍵情報をファイル管理領域からリードする(ステップS204)。そして、第3の処理モジュール503は、コピー要求よって指定されたリソースファイルを、リードした鍵情報によって再度暗号化し、その暗号化されたリソースファイルを、ファィルキャッシュ103上の復号済みのリソースファイル上に上書きする(ステップS205)。
【0098】
この後、第3の処理モジュール503は、コピー要求よって指定されたリソースファイルに対応する復号済みフラグを、復号済みでは無いことを示す値(=False)に更新する(ステップS206)。次いで、第3の処理モジュール503は、コピー要求よって指定されたリソースファイル、つまりステップS205で暗号化したリソースファイルのコピーを外部ストレージデバイス17に格納する(ステップS207)。このステップS207では、第3の処理モジュール503は、ステップS205で暗号化したリソースファイルをファィルキャッシュ103からリードし、そのリードしたリソースファイルを外部ストレージデバイス17に送出する。
【0099】
以上のように、本実施形態によれば、専用のバッファ領域を設けることなく、リソースファイルをセキュアに扱うことができ、これによってプレーヤのコストの低減を図ることが可能となる。
【0100】
なお、図1のプレーヤ10の機能はすべてコンピュータプログラムによって実現することができるので、このコンピュータプログラムをコンピュータ読み取り可能な記憶媒体を通じて通常のコンピュータに導入するだけで、通常のコンピュータをプレーヤとして機能させることができる。この場合、デコード処理の全てをソフトウェアによって実行してもよいが、デコード処理の一部または全てをハードウェアによって実行することもできる。
【0101】
また、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【0102】
【図1】本発明の一実施形態に係る再生装置の構成を示すブロック図。
【図2】同実施形態の再生装置で用いられる記憶メディアの物理データ構造を示す図。
【図3】同実施形態の再生装置で再生されるコンテントの構成を示す図。
【図4】同実施形態の再生装置の機能構成の例を示すブロック図。
【図5】ファイルキャッシュと別のバッファ領域を用いてファイルキャッシュ管理処理を行うシステム構成の例を示す図。
【図6】図5のシステム構成で用いられるコピー制御処理を説明するための図。
【図7】同実施形態の再生装置におけるファイルキャッシュ管理処理を説明するための図。
【図8】同実施形態の再生装置におけるコピー制御処理を説明するための図。
【図9】同実施形態の再生装置によって実行されるファイルキャッシュ管理処理の手順を示すフローチャート。
【図10】同実施形態の再生装置で用いられるリソースファイルを復号するための鍵情報を生成する処理を説明するための図。
【図11】同実施形態の再生装置によって実行されるコピー制御処理の手順を示すフローチャート。
【符号の説明】
【0103】
10…再生装置、11…HD DVDドライブ、12…データ読み取り部、13…ファイルキャッシュ、14…コンテントチェック部、15…再生処理部、501…第1の処理モジュール、502…第2の処理モジュール、503…第3の処理モジュール。
【特許請求の範囲】
【請求項1】
記憶メディアに格納され、暗号化されたビデオオブジェクトと前記ビデオオブジェクトをインタラクティブに再生するための暗号化されたリソースファイルとを含むデジタルコンテントを再生する再生装置であって、
前記記憶メディアから読み出される前記リソースファイルを一時的に格納するファイルキャッシュ領域を含むメモリと、
前記記憶メディアから読み出される前記ビデオオブジェクトを復号する第1の処理モジュールと、
前記復号されたビデオオブジェクトを再生し、前記ビデオオブジェクトの再生中に前記リソースファイルの取得を要求するリソースファイル取得要求を出力する再生処理部と、
前記リソースファイル取得要求に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを、前記メモリに格納されている、前記リソースファイルが復号済みであるか否かを示す管理情報を参照することによって判定し、前記リソースファイルが復号済みではない場合には、前記リソースファイルを復号して前記復号されたリソースファイルを前記暗号化されたリソースファイル上に上書きし、前記管理情報を復号済みを示す値に更新し、且つ前記復号されたリソースファイルを前記ファイルキャッシュ領域から前記再生処理部に送出する第2の処理モジュールと、
前記リソースファイルのコピーをストレージデバイスに保存することを指示するコピー要求の発生に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを前記管理情報を参照することによって判定し、前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを暗号化して前記暗号化されたリソースファイルを前記復号済みのリソースファイル上に上書きし、前記管理情報を復号済みでは無いことを示す値に更新し、且つ前記暗号化されたリソースファイルを前記ファイルキャッシュ領域から前記ストレージデバイスに送出する第3の処理モジュールとを具備することを特徴とする再生装置。
【請求項2】
前記リソースファイルは特定の鍵情報によって暗号化されており、
前記第2の処理モジュールは、前記記憶メディアに格納された、前記リソースファイルに対応するコンテンツ暗号化鍵を復号することによって前記鍵情報を生成し、前記生成した鍵情報によって前記リソースファイルを復号すると共に、前記生成した鍵情報を前記メモリに保存するように構成されており、
前記第3の処理モジュールは、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを前記メモリに保存されている鍵情報によって暗号化するように構成されていることを特徴とする請求項1記載の再生装置。
【請求項3】
前記第2の処理モジュールは、前記リソースファイルが復号済みである場合には、前記復号済みのリソースファイルを前記ファイルキャッシュ領域から前記再生処理部に送出することを特徴とする請求項1記載の再生装置。
【請求項4】
前記第3の処理モジュールは、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みで無い場合、前記ファイルキャッシュ領域に格納されている前記リソースファイルを前記ストレージデバイスに送出することを特徴とする請求項1記載の再生装置。
【請求項5】
記憶メディアに格納され、暗号化されたビデオオブジェクトと前記ビデオオブジェクトをインタラクティブに再生するための暗号化されたリソースファイルとを含むデジタルコンテントを再生する再生装置の動作を制御する再生制御方法であって、
前記記憶メディアから読み出される前記リソースファイルを、前記再生装置に設けられたメモリ内に定義されたファイルキャッシュ領域に一時的に格納するステップと、
前記記憶メディアから読み出される前記ビデオオブジェクトを復号するステップと、
前記復号されたビデオオブジェクトを前記再生装置に設けられた再生処理部によって再生し、前記ビデオオブジェクトの再生中に前記リソースファイルの取得を要求するリソースファイル取得要求を出力するステップと、
前記リソースファイル取得要求に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを、前記メモリに格納されている、前記リソースファイルが復号済みであるか否かを示す管理情報を参照することによって判定するステップと、
前記リソースファイルが復号済みではない場合、前記リソースファイルを復号して前記復号されたリソースファイルを前記暗号化されたリソースファイル上に上書きし、前記管理情報を復号済みを示す値に更新し、且つ前記復号されたリソースファイルを前記ファイルキャッシュ領域から前記再生処理部に送出する復号処理ステップと、
前記リソースファイルのコピーをストレージデバイスに保存することを指示するコピー要求の発生に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを前記管理情報を参照することによって判定し、前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを暗号化して前記暗号化されたリソースファイルを前記復号済みのリソースファイル上に上書きし、前記管理情報を復号済みでは無いことを示す値に更新し、且つ前記暗号化されたリソースファイルを前記ファイルキャッシュ領域から前記ストレージデバイスに送出するコピー制御ステップとを具備することを特徴とする再生制御方法。
【請求項6】
前記リソースファイルは特定の鍵情報によって暗号化されており、
前記復号処理ステップは、前記記憶メディアに格納された、前記リソースファイルに対応するコンテンツ暗号化鍵を復号することによって前記鍵情報を生成するステップと、前記生成した鍵情報によって前記リソースファイルを復号すると共に、前記生成した鍵情報を前記メモリに保存するステップとを含み、
前記コピー制御ステップは、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを前記メモリに保存されている鍵情報によって暗号化するステップを含むことを特徴とする請求項5記載の再生制御方法。
【請求項7】
記憶メディアに格納され、暗号化されたビデオオブジェクトと前記ビデオオブジェクトをインタラクティブに再生するための暗号化されたリソースファイルとを含むデジタルコンテントを再生する処理をコンピュータに実行させるプログラムであって、
前記記憶メディアから読み出される前記リソースファイルを、前記コンピュータに設けられたメモリ内に定義されたファイルキャッシュ領域に一時的に格納する手順と、
前記記憶メディアから読み出される前記ビデオオブジェクトを復号するステップと、
前記復号されたビデオオブジェクトを再生し、前記ビデオオブジェクトの再生中に前記リソースファイルの取得を要求するリソースファイル取得要求を出力する手順と、
前記リソースファイル取得要求に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを、前記メモリに格納されている、前記リソースファイルが復号済みであるか否かを示す管理情報を参照することによって判定する手順と、
前記リソースファイルが復号済みではない場合、前記リソースファイルを復号して前記復号されたリソースファイルを前記暗号化されたリソースファイル上に上書きし、前記管理情報を復号済みを示す値に更新し、且つ前記復号されたリソースファイルを前記ファイルキャッシュ領域から読み出す復号処理手順と、
前記ファイルキャッシュ領域から読み出された前記復号されたリソースファイルを再生する手順と、
前記リソースファイルのコピーをストレージデバイスに保存することを指示するコピー要求の発生に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを前記管理情報を参照することによって判定し、前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを暗号化して前記暗号化されたリソースファイルを前記復号済みのリソースファイル上に上書きし、前記管理情報を復号済みでは無いことを示す値に更新し、且つ前記暗号化されたリソースファイルを前記ファイルキャッシュ領域から前記ストレージデバイスに送出するコピー制御手順とを前記コンピュータに実行させるプログラム。
【請求項8】
前記リソースファイルは特定の鍵情報によって暗号化されており、
前記復号処理手順は、前記記憶メディアに格納された、前記リソースファイルに対応するコンテンツ暗号化鍵を復号することによって前記鍵情報を生成する手順と、前記生成した鍵情報によって前記リソースファイルを復号すると共に、前記生成した鍵情報を前記メモリに保存する手順とを含み、
前記コピー制御手順は、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを前記メモリに保存されている鍵情報によって暗号化する手順を含むことを特徴とする請求項7記載のプログラム。
【請求項1】
記憶メディアに格納され、暗号化されたビデオオブジェクトと前記ビデオオブジェクトをインタラクティブに再生するための暗号化されたリソースファイルとを含むデジタルコンテントを再生する再生装置であって、
前記記憶メディアから読み出される前記リソースファイルを一時的に格納するファイルキャッシュ領域を含むメモリと、
前記記憶メディアから読み出される前記ビデオオブジェクトを復号する第1の処理モジュールと、
前記復号されたビデオオブジェクトを再生し、前記ビデオオブジェクトの再生中に前記リソースファイルの取得を要求するリソースファイル取得要求を出力する再生処理部と、
前記リソースファイル取得要求に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを、前記メモリに格納されている、前記リソースファイルが復号済みであるか否かを示す管理情報を参照することによって判定し、前記リソースファイルが復号済みではない場合には、前記リソースファイルを復号して前記復号されたリソースファイルを前記暗号化されたリソースファイル上に上書きし、前記管理情報を復号済みを示す値に更新し、且つ前記復号されたリソースファイルを前記ファイルキャッシュ領域から前記再生処理部に送出する第2の処理モジュールと、
前記リソースファイルのコピーをストレージデバイスに保存することを指示するコピー要求の発生に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを前記管理情報を参照することによって判定し、前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを暗号化して前記暗号化されたリソースファイルを前記復号済みのリソースファイル上に上書きし、前記管理情報を復号済みでは無いことを示す値に更新し、且つ前記暗号化されたリソースファイルを前記ファイルキャッシュ領域から前記ストレージデバイスに送出する第3の処理モジュールとを具備することを特徴とする再生装置。
【請求項2】
前記リソースファイルは特定の鍵情報によって暗号化されており、
前記第2の処理モジュールは、前記記憶メディアに格納された、前記リソースファイルに対応するコンテンツ暗号化鍵を復号することによって前記鍵情報を生成し、前記生成した鍵情報によって前記リソースファイルを復号すると共に、前記生成した鍵情報を前記メモリに保存するように構成されており、
前記第3の処理モジュールは、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを前記メモリに保存されている鍵情報によって暗号化するように構成されていることを特徴とする請求項1記載の再生装置。
【請求項3】
前記第2の処理モジュールは、前記リソースファイルが復号済みである場合には、前記復号済みのリソースファイルを前記ファイルキャッシュ領域から前記再生処理部に送出することを特徴とする請求項1記載の再生装置。
【請求項4】
前記第3の処理モジュールは、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みで無い場合、前記ファイルキャッシュ領域に格納されている前記リソースファイルを前記ストレージデバイスに送出することを特徴とする請求項1記載の再生装置。
【請求項5】
記憶メディアに格納され、暗号化されたビデオオブジェクトと前記ビデオオブジェクトをインタラクティブに再生するための暗号化されたリソースファイルとを含むデジタルコンテントを再生する再生装置の動作を制御する再生制御方法であって、
前記記憶メディアから読み出される前記リソースファイルを、前記再生装置に設けられたメモリ内に定義されたファイルキャッシュ領域に一時的に格納するステップと、
前記記憶メディアから読み出される前記ビデオオブジェクトを復号するステップと、
前記復号されたビデオオブジェクトを前記再生装置に設けられた再生処理部によって再生し、前記ビデオオブジェクトの再生中に前記リソースファイルの取得を要求するリソースファイル取得要求を出力するステップと、
前記リソースファイル取得要求に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを、前記メモリに格納されている、前記リソースファイルが復号済みであるか否かを示す管理情報を参照することによって判定するステップと、
前記リソースファイルが復号済みではない場合、前記リソースファイルを復号して前記復号されたリソースファイルを前記暗号化されたリソースファイル上に上書きし、前記管理情報を復号済みを示す値に更新し、且つ前記復号されたリソースファイルを前記ファイルキャッシュ領域から前記再生処理部に送出する復号処理ステップと、
前記リソースファイルのコピーをストレージデバイスに保存することを指示するコピー要求の発生に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを前記管理情報を参照することによって判定し、前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを暗号化して前記暗号化されたリソースファイルを前記復号済みのリソースファイル上に上書きし、前記管理情報を復号済みでは無いことを示す値に更新し、且つ前記暗号化されたリソースファイルを前記ファイルキャッシュ領域から前記ストレージデバイスに送出するコピー制御ステップとを具備することを特徴とする再生制御方法。
【請求項6】
前記リソースファイルは特定の鍵情報によって暗号化されており、
前記復号処理ステップは、前記記憶メディアに格納された、前記リソースファイルに対応するコンテンツ暗号化鍵を復号することによって前記鍵情報を生成するステップと、前記生成した鍵情報によって前記リソースファイルを復号すると共に、前記生成した鍵情報を前記メモリに保存するステップとを含み、
前記コピー制御ステップは、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを前記メモリに保存されている鍵情報によって暗号化するステップを含むことを特徴とする請求項5記載の再生制御方法。
【請求項7】
記憶メディアに格納され、暗号化されたビデオオブジェクトと前記ビデオオブジェクトをインタラクティブに再生するための暗号化されたリソースファイルとを含むデジタルコンテントを再生する処理をコンピュータに実行させるプログラムであって、
前記記憶メディアから読み出される前記リソースファイルを、前記コンピュータに設けられたメモリ内に定義されたファイルキャッシュ領域に一時的に格納する手順と、
前記記憶メディアから読み出される前記ビデオオブジェクトを復号するステップと、
前記復号されたビデオオブジェクトを再生し、前記ビデオオブジェクトの再生中に前記リソースファイルの取得を要求するリソースファイル取得要求を出力する手順と、
前記リソースファイル取得要求に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを、前記メモリに格納されている、前記リソースファイルが復号済みであるか否かを示す管理情報を参照することによって判定する手順と、
前記リソースファイルが復号済みではない場合、前記リソースファイルを復号して前記復号されたリソースファイルを前記暗号化されたリソースファイル上に上書きし、前記管理情報を復号済みを示す値に更新し、且つ前記復号されたリソースファイルを前記ファイルキャッシュ領域から読み出す復号処理手順と、
前記ファイルキャッシュ領域から読み出された前記復号されたリソースファイルを再生する手順と、
前記リソースファイルのコピーをストレージデバイスに保存することを指示するコピー要求の発生に応答して、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みであるか否かを前記管理情報を参照することによって判定し、前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを暗号化して前記暗号化されたリソースファイルを前記復号済みのリソースファイル上に上書きし、前記管理情報を復号済みでは無いことを示す値に更新し、且つ前記暗号化されたリソースファイルを前記ファイルキャッシュ領域から前記ストレージデバイスに送出するコピー制御手順とを前記コンピュータに実行させるプログラム。
【請求項8】
前記リソースファイルは特定の鍵情報によって暗号化されており、
前記復号処理手順は、前記記憶メディアに格納された、前記リソースファイルに対応するコンテンツ暗号化鍵を復号することによって前記鍵情報を生成する手順と、前記生成した鍵情報によって前記リソースファイルを復号すると共に、前記生成した鍵情報を前記メモリに保存する手順とを含み、
前記コピー制御手順は、前記ファイルキャッシュ領域に格納されている前記リソースファイルが復号済みである場合、前記復号済みのリソースファイルを前記メモリに保存されている鍵情報によって暗号化する手順を含むことを特徴とする請求項7記載のプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2009−110636(P2009−110636A)
【公開日】平成21年5月21日(2009.5.21)
【国際特許分類】
【出願番号】特願2008−35267(P2008−35267)
【出願日】平成20年2月15日(2008.2.15)
【特許番号】特許第4234770号(P4234770)
【特許公報発行日】平成21年3月4日(2009.3.4)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
【公開日】平成21年5月21日(2009.5.21)
【国際特許分類】
【出願日】平成20年2月15日(2008.2.15)
【特許番号】特許第4234770号(P4234770)
【特許公報発行日】平成21年3月4日(2009.3.4)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
[ Back to top ]