"第1記録媒体に記録された第1コンテンツを再生すると共に、前記第1記録媒体に記録された第2コンテンツを第2記録媒体にコピーする再生装置であって、前記第1記録媒体からバイトコードアプリケーションを読み出して、動作させるプラットフォーム部と、前記第2コンテンツの第1記録媒体から第2記録媒体へのコピーを制御するコピー制御部と、前記第1コンテンツの再生の進行に従って更新される前記第1コンテンツの再生位置を示すパラメータを格納するレジスタとを備え、前記プラットフォーム部は、前記バイトコードアプリケーションが利用可能な通信用プログラミングインターフェイスを有し、前記バイトコードアプリケーションは、前記レジスタから前記第1コンテンツの再生位置を示すパラメータを読み出し、前記通信用プログラミングインターフェイスを用いて前記コピー制御部を相手側としたソケット接続を行い、当該ソケット接続を通じて、前記第2コンテンツを第1記録媒体から第2記録媒体にコピーし、コピーした前記第2コンテンツの再生位置を前記レジスタから読み出した前記第1コンテンツの再生位置に基づき指定する制御をコピー制御部に命じることを特徴とする再生装置。前記第1記録媒体には、オンメディアライブラリが記録されており、オンメディアライブラリは、前記第1記録媒体に記録されたバイトコードアプリケーションに、コピー制御実行のためのプログラミングインターフェイスを提供するものであり、前記オンメディアライブラリは、前記バイトコードアプリケーションから、コピー制御実行用プログラミングインターフェイスのコールがなされた場合、当該プログラミングインターフェイスのコールをソケットコマンドに変換した上でコピー制御部に出力し、コピー制御部からのレスポンスを戻り値又はイベントに変換して、コールを行った前記バイトコードアプリケーションに返し、前記ソケット接続は、前記ソケットコマンド及びレスポンスを伝送するための通信路を構成することを特徴とする請求項1に記載の再生装置。前記第2記録媒体には、コピーしたコンテンツを格納する第1ディレクトリと、再生位置を示すパラメータを格納する第2ディレクトリがあり、前記バイトコードアプリケーションは、前記第2コンテンツを前記第1ディレクトリにコピーし、前記第1コンテンツの再生位置を前記第2ディレクトリに書き込む制御をコピー制御部に命じることを特徴とする請求項1に記載の再生装置。前記バイトコードアプリケーションは、前記第1コンテンツの再生位置を示すパラメータを、前記第2記録媒体に適した単位に変換し、前記第2コンテンツの再生位置を指定することを特徴とする請求項1に記載の再生装置。前記第1記録媒体は、前記第1コンテンツと前記第2コンテンツ間のオフセットを示すオフセットテーブルが記録されており、前記バイトコードアプリケーションは、前記レジスタに格納された前記第1コンテンツの再生位置を前記オフセットテーブルに基づき変換し、コピーした前記第2コンテンツの再生位置を、前記オフセットテーブルに基づき変換された再生位置に指定する制御をコピー制御部に命じることを特徴とする請求項1に記載の再生装置。前記オフセットテーブルは、前記第1コンテンツを構成するデジタルストリームに対して、前記第2コンテンツを構成するデジタルストリームに追加されたシーン及び削除されたシーンの位置情報を含み、前記バイトコードアプリケーションは、前記オフセットテーブルが示す追加されたシーン及び削除されたシーンの位置情報に基づき、前記レジスタに格納された前記第1コンテンツの再生位置の変換を行うことを特徴とする請求項5に記載の再生装置。前記第1記録媒体は、前記第1コンテンツの内容を識別するためのボリュームIDが記録されており、前記コピー制御部は、前記第2コンテンツを第1記録媒体から第2記録媒体へコピーする際に、前記第1記録媒体に記録されている前記ボリュームIDを前記第2記録媒体に記録し、前記再生制御部は、前記第1記録媒体が再生装置に挿入された際、前記第1記録媒体のボリュームIDと前記第2記録媒体に記録されたボリュームIDが一致するか判定し、ボリュームIDが一致する場合、前記第2記録媒体に記録された再生位置を示すパラメータを読み出し、前記レジスタに、読み出した再生位置に基づく前記第1コンテンツの再生位置を示すパラメータを格納し、当該再生位置から再生を開始することを特徴とする請求項1に記載の再生装置。前記第1記録媒体は、前記第1コンテンツと前記第2コンテンツの差分を示す差分情報が記録されており、前記再生制御部は、読み出した再生位置を前記差分情報に基づき変換し、前記レジスタに、変換した再生位置を示すパラメータを格納することを特徴とする請求項7に記載の再生装置。前記レジスタは、前記第1コンテンツを構成するデジタルストリームの音声言語コードと字幕言語コードを格納し、前記第2コンテンツは、異なる言語の複数のデジタルストリームから構成され、前記バイトコードアプリケーションは、前記レジスタから前記第1コンテンツを構成するデジタルストリームの音声言語コードと字幕言語コードを読み出し、前記レジスタから読み出した音声言語コードと字幕言語コードに対応する第2コンテンツのデジタルストリームをソケット接続を通じて前記コピー制御部に指定し、指定した第2コンテンツのデジタルストリームを第1記録媒体から第2記録媒体にコピーする制御をコピー制御部に命じることを特徴とする請求項1に記載の再生装置。前記第1記録媒体は、前記第2コンテンツを構成するデジタルストリームと音声言語と字幕言語との対応を示す言語情報が記録されており、前記バイトコードアプリケーションは、前記レジスタから読み出した音声言語コード及び字幕言語コード、並びに前記言語情報に基づき、前記レジスタから読み出した音声言語コードと字幕言語コードに対応する第2コンテンツのデジタルストリームを特定することを特徴とする請求項9に記載の再生装置。第1記録媒体に記録された第1コンテンツを再生すると共に、前記第1記録媒体に記録された第2コンテンツの第2記録媒体へのコピーをコンピュータに実行させるコンピュータが読み取り可能なプログラムであって、前記第1記録媒体からバイトコードアプリケーションを読み出して、コンピュータ内のプラットフォーム部に動作させる第1ステップと、バイトコードアプリケーションからの要求に従い、前記第2コンテンツの第1記録媒体から第2記録媒体へのコピーの制御をコンピュータ内のコピー制御部に実行させる第2ステップとを有し、前記バイトコードアプリケーションは、コンピュータ内のレジスタから前記第1コンテンツの再生の進行に従って更新される前記第1コンテンツの再生位置を示すパラメータを読み出し、コンピュータ内のプラットフォーム部が有する通信用プログラミングインターフェイスを用いてコンピュータ内のコピー制御部を相手側としたソケット接続を行い、当該ソケット接続を通じて、前記第2コンテンツを第1記録媒体から第2記録媒体にコピーし、コピーした前記第2コンテンツの再生位置を前記レジスタから読み出した前記第1コンテンツの再生位置に基づき指定する制御をコンピュータ内のコピー制御部に命じることを特徴とするプログラム。第1記録媒体に記録された第1コンテンツを再生すると共に、前記第1記録媒体に記録された第2コンテンツを第2記録媒体にコピーする再生方法であって、前記第1記録媒体からバイトコードアプリケーションを読み出して、コンピュータ内のプラットフォーム部に動作させる第1ステップと、バイトコードアプリケーションからの要求に従い、前記第2コンテンツの第1記録媒体から第2記録媒体へのコピーの制御をコンピュータ内のコピー制御部に実行させる第2ステップとを有し、前記バイトコードアプリケーションは、コンピュータ内のレジスタから前記第1コンテンツの再生の進行に従って更新される前記第1コンテンツの再生位置を示すパラメータを読み出しプラットフォーム部が有する通信用プログラミングインターフェイスを用いてコピー制御部を相手側としたソケット接続を行い、当該ソケット接続を通じて、前記第2コンテンツを第1記録媒体から第2記録媒体にコピーし、コピーした前記第2コンテンツの再生位置を前記レジスタから読み出した前記第1コンテンツの再生位置に基づき指定する制御をコンピュータ内のコピー制御部に命じることを特徴とする再生方法。記録媒体であって、再生制御の対象となる第1コンテンツと、コピー制御の対象となる、第1コンテンツとは異なるフォーマットの第2コンテンツと、バイトコードアプリケーションとが記録されており、再生装置のプラットフォーム部は、前記バイトコードアプリケーションが利用可能な通信用プログラミングインターフェイスを有し、前記バイトコードアプリケーションは、前記第1コンテンツの再生の進行に従って更新される前記第1コンテンツの再生位置を示すパラメータを読み出し、再生装置内のプラットフォーム部が有する通信用プログラミングインターフェイスを用いて再生装置内のコピー制御部を相手側としたソケット接続を行い、当該ソケット接続を通じて、前記第2コンテンツを別の記録媒体にコピーし、コピーした前記第2コンテンツの再生位置を前記レジスタから読み出した前記第1コンテンツの再生位置に基づき指定する制御を再生装置内のコピー制御部に命じることを特徴とする記録媒体。特許文献1に開示されるマネージドコピーを用いて、パッケージメディアに記録されているコンテンツを携帯端末等にコピーすることで、コンテンツの持ち出し視聴を実現することができる。しかし、携帯端末は据え置きの再生装置に比べ処理能力が劣るため、パッケージメディア全体をバックアップした場合、そこに含まれるアプリケーションの実行及びストリームのデコードを行う処理能力が携帯端末に備わっているとは限らず、正常に再生できない恐れがある。また、上記の問題点を回避するため、携帯端末側でアプリケーション実行及びストリーム再生ができるように、アプリケーションの再変換、ストリームの再エンコードを行いコピーした場合、コピー処理に時間がかかってしまい、すぐに持ち出したいというニーズに応えることができない。そこで、パッケージメディアに携帯端末向けのデジタルストリームを予め記録しておき、パッケージメディア上のアプリケーションからパッケージメディアに記録された携帯端末向けのデジタルストリームをコピーするという案が考えられる。これにより携帯端末向けに最適化されたコンテンツを短時間で持ち出すことが可能となる。しかし、据え置きの再生装置での再生中断位置から、持ち出し視聴を再開できないという課題がある。具体的に説明すると、据え置きの再生装置でコンテンツを途中まで視聴し、その後コピーを行った場合、据え置きの再生装置で途中まで視聴していたにもかかわらず、携帯端末では最初からコンテンツが再生される。従って中断位置から視聴を再開しようとする場合、手動で早送りもしくはスキップ等を行わなければならない。自宅等で途中まで視聴したコンテンツを持ち出して続きから視聴したいというニーズがあり、据え置きの再生装置で中断した位置から携帯端末での視聴を再開できないのでは、ユーザ利便性に欠く。上記課題の解決策として、パッケージメディアの再生装置が、上記コピーの際、当該再生装置に設定されていたレジューム情報、ブックマーク情報を携帯端末用の媒体にコピーすれば、携帯端末用の媒体が携帯端末に装填された場合、携帯端末で、パッケージメディア再生装置の再生の続きを視聴することができる。パッケージメディアにおけるコンテンツをそのまま携帯端末用の媒体にコピーするのであれば、レジューム情報、ブックマーク情報のコピーは有効となる。しかし、パッケージメディアにおけるコンテンツのファイル形式と、携帯端末用の媒体におけるコンテンツのファイル形式とが異なっており、パッケージメディア上のコンテンツと、携帯端末用の媒体上のコンテンツとに厳密な同一性が存在しないことが多い。この場合、再生装置が一律にレジューム情報、ブックマーク情報をコピーしたとしても、コピーしたレジューム情報、ブックマーク情報によって、パッケージメディア再生装置の続きが正しく再生できず、パッケージメディアにおける再生と、携帯端末における再生との引き継ぎが不自然になるケースが多発する。さらに、特許文献1に開示されるマネージドコピーは、再生装置に新たなAPIApplicationProgrammingInterfaceを導入して実現するものである。しかし、既存のAPIを拡張して、携帯端末向けコンテンツのコピーという特殊機能の制御を実現した場合、追加されたAPIを保持していない再生装置では、追加APIを利用するアプリケーションを正常に起動させることができなくなるという問題が発生する。具体的には、アプリケーションを起動する段階において、再生装置はアプリケーションが利用するAPIと再生装置が実装しているAPIのリンク処理が行われるが、再生装置が保持していないAPIをアプリケーションが利用していた場合、リンクエラーとなり、アプリケーションの起動自体に失敗するという問題がある。上記問題に対する一つの回避策は、既存APIのみを使うアプリケーションと、追加APIを使うアプリケーションを分けて用意しておき、再生装置のバージョン等を確認して、起動するアプリケーションを変えるという方法である。しかしながら、今後多種多様の機能が追加され、それら機能毎に各再生装置がAPIを拡張していくとなると、どの範囲までのAPIが安全に使え、どの範囲から別アプリケーションにすべきか管理が煩雑になり、異なるメーカ間の再生装置におけるアプリケーション互換性確保が極めて難しくなる。そのため、新機能を追加する際は、標準化団体等で互換性問題が起こらぬよう慎重にAPIを定義し、追加したAPIを機器メーカ、アプリケーション開発者に公開することで、どの範囲までのAPIが安全に使え、どの範囲から別アプリケーションにすべきかを明確にし、新しい機能が追加されたBD-ROMを過去機種で再生させた場合でも、問題なく再生できるよう配慮がなされている。しかしながら、新機能追加の際、常にこのようなプロセスが必要となると、追加APIの定義には慎重にならざるを得ないために、確定するまでに時間がかかり、再生装置とアプリケーションがもたらすサービス進化が滞るという問題が起こる。加えて、追加されたAPIは公開されてしまうことから、再生装置の独自サービスを考えていても、他者に容易に真似をされてしまい、再生装置自身の差別化ができないという課題がある。本発明は、上記事情に鑑みなされたものであり、既存のAPIを拡張することなく、再生装置で中断した位置を引き継いだ携帯端末向けコンテンツのコピーを行うことができる再生装置を提供することである。上記目的を達成するため、本発明にかかる再生装置は、第1記録媒体に記録された第1コンテンツを再生すると共に、第1記録媒体に記録された第2コンテンツを第2記録媒体にコピーする再生装置であって、第1記録媒体からバイトコードアプリケーションを読み出して、動作させるプラットフォーム部と、第2コンテンツの第1記録媒体から第2記録媒体へのコピーを制御するコピー制御部と、第1コンテンツの再生の進行に従って更新される第1コンテンツの再生位置を示すパラメータを格納するレジスタとを備え、プラットフォーム部は、バイトコードアプリケーションが利用可能な通信用プログラミングインターフェイスを有し、バイトコードアプリケーションは、レジスタから第1コンテンツの再生位置を示すパラメータを読み出し、通信用プログラミングインターフェイスを用いてコピー制御部を相手側としたソケット接続を行い、当該ソケット接続を通じて、第2コンテンツを第1記録媒体から第2記録媒体にコピーし、コピーした第2コンテンツの再生位置をレジスタから読み出した第1コンテンツの再生位置に基づき指定する制御をコピー制御部に命じることを特徴とする。本発明では、バイトコードアプリケーションが、コピー制御の際、再生位置の設定を行う。このバイトコードアプリケーションは、コンテンツの作り手であるオーサリング者が作成したものであるから、携帯端末用媒体のコンテンツに応じた再生位置を設定することができる。コピー制御を命じる際、再生位置をバイトコードアプリケーションに設定させるので、再生装置がレジューム情報、ブックマーク情報を一律にコピーするのとは異なる適切な再生位置設定が可能になる。よってパッケージメディアにおける再生と、携帯端末用の媒体における再生との自然な引き継ぎが可能になる。また、上記のバイトコードアプリケーションによるコピー制御の命令は、既存のAPIApplicationProgrammingInterfaceとしてサポートされている通信用プログラミングインターフェイスを用いたソケット接続を通じて行うものである。再生装置で中断した位置を引き継いだ携帯端末向けコンテンツのコピーという特殊機能を、既存のAPIを拡張することなく実現するので、既存のAPIを拡張することによる互換性問題等の課題が生じない。すなわちAPIの標準化を図ることなく、アプリケーションの安定的な起動を実現することができる。さらに本発明は、記録媒体上のバイトコードアプリケーションから再生装置のコピー制御機能を使用するものであるため、様々なコンテンツプロバイダにより多種多様なアプリケーションが開発されることが期待できる。コンテンツプロバイダは、自身が開発したアプリケーションを記録媒体に格納することで、コンテンツプロバイダ独自の付加価値を付けたコピー制御機能の実現が可能となる。例えば、コンテンツプロバイダは、コピー制御機能実行時における、独自のユーザインターフェイスを提供することができる。再生機器メーカーが作成したユーザインターフェイスに制限されないため、コンテンツプロバイダにより、より魅力的なユーザインターフェイスが提供されることが期待できる。ユーザは、パッケージメディアに記録されたコンテンツの携帯端末等へのコピーを、コンテンツプロバイダ独自の、より魅力あるユーザインターフェイスを用いて行うことができる。以下本発明の実施の形態について、図面を参照しながら説明する。実施の形態1先ず始めに、本発明に係る再生装置の実施行為のうち、使用行為についての形態を説明する。図1は、本発明に係る再生装置の、使用行為についての形態の一例を示す図である。図1において、本発明に係る再生装置は、再生装置101である。この再生装置101は例えば、リモコン102、テレビ103により形成されるホームシアターシステムに、映画作品を供給するという用途に供される。また、再生装置101にはSDメモリーカード、メモリースティック、コンパクトフラッシュ登録商標、スマートメディア、マルチメディアカード等のリムーバブルメディア104を挿入するための挿入口を備える。加えて携帯端末106と接続するためのUSB等の挿入口も備える。以上が本発明に係る再生装置の使用形態についての説明である。続いて本発明に係る再生装置が再生の対象としている、記録媒体メディアについて説明する。本発明に係る再生装置により、再生されるのは、この例では光ディスクであるBD-ROM105である。図2は、BD-ROM以降、BDと称する場合もあるの構成を示した図である。本実施の形態においては、映画等のAVコンテンツを再生するためのAVアプリケーションを主眼においてBD-ROMを説明するが、BD-ROMをCD-ROMやDVD-ROMのようにコンピュータ用途の記録媒体として利用することも当然ながら可能である。BD-ROMは、他の光ディスク、例えばDVDやCDなどと同様にその内周から外周に向けて螺旋状に記録領域を持ち、内周のリードインと外周のリードアウトの間に論理データを記録できる論理アドレス空間を有している。また、リードインの内側にはBCABurstCuttingAreaと呼ばれるドライブでしか読み出せない特別な領域がある。この領域はアプリケーションから読み出せないため、著作権保護技術などに利用され、記録媒体の物理的なシリアルIDを示すPMSNPrerecorderMediaSerialNumberが記録されている。論理アドレス空間には、ファイルシステム情報ボリュームを先頭に映像データなどのアプリケーションデータが記録されている。ファイルシステムとは、UDFやISO9660などのことであり、通常のPCと同じように記録されている論理データをディレクトリ、ファイル構造を使って読み出しする事が可能になっており、255文字のファイル名、ディレクトリ名を読み出すことが可能である。本実施の形態の場合、BD-ROM上のディレクトリ、ファイル構造は、ルートディレクトリROOT直下にBDMVディレクトリ、CERTIFICATEディレクトリ及びEMOVEディレクトリが置かれている。BDMVディレクトリはBD-ROMで扱うAVコンテンツや管理情報などのデータが記録されているディレクトリであり、CERTIFICATEディレクトリは配下にdiscroot.crtファイル名固定ファイルが存在し、アプリケーションの署名検証に用いられる証明書が記録されている。EMOVEディレクトリには携帯端末視聴用のAVコンテンツや管理情報が記録されている。BDMVディレクトリの配下には、PLAYLISTディレクトリ、CLIPINFディレクトリ、STREAMディレクトリ、BDJOディレクトリ、JARディレクトリと呼ばれる5つのサブディレクトリが存在し、BDMVディレクトリには、index.bdmv,MovieObject.bdmvの2種類のファイルが配置されている。STREAMディレクトリには、いわばデジタルストリーム本体となるファイルを格納しているディレクトリであり、拡張子m2tsが付与されたファイルxxx.m2ts[xxxは可変、拡張子m2tsは固定]が存在する。PLAYLISTディレクトリには、拡張子mplsが付与されたファイルxxx.mpls[xxxは可変、拡張子mplsは固定]が存在する。CLIPINFディレクトリには、拡張子clpiが付与されたファイルxxx.clpi[xxxは可変、拡張子clpiは固定]が存在する。JARディレクトリには、拡張子jarが付与されたファイルxxx.jar[xxxは可変、拡張子jarは固定]が存在する。BDJOディレクトリには、拡張子bdjoが付与されたファイルxxx.bdjo[xxxは可変、拡張子bdjoは固定]が存在する。拡張子m2tsが付与されたファイルは、MPEG-TSTransportStream形式のデジタルAVストリームであり、ビデオストリーム、1つ以上のオーディオストリーム、1つ以上の副映像ストリームを多重化することで得られる。ビデオストリームは映画の動画部分を、オーディオストリームは映画の音声部分を、副映像ストリームは、映画の字幕をそれぞれ示している。拡張子clpiが付与されたファイルは、デジタルAVストリームのそれぞれに1対1に対応するClip情報である。管理情報故に、Clip情報は、デジタルAVストリームの符号化形式、フレームレート、ビットレート、解像度等の情報や、GOPの先頭位置を示すEP_mapをもっている。拡張子mplsが付与されたファイルは、PlayList情報を格納したファイルであり、ストリームの再生区間InTime/OutTimeが記録されている。拡張子jarが付与されたファイルは、Javaアーカイブファイルであり、Java仮想マシンを用いて動的なシナリオ制御を行うBD-Jアプリケーションのプログラムが記述されている。BD-ROM上のコンテンツの再生単位を示す各タイトルの再生をBD-Jアプリケーションから制御したい場合は、このファイルを必要とする。拡張子bdjoが付与されたファイルは、BD-Jオブジェクトを格納したファイルである。BD-Jオブジェクトは、PlayList情報により示されるAVストリームと、アプリケーションとの関連付けにより、タイトルを定義する情報である。BD-Jオブジェクトは、アプリケーション管理テーブルと、そのタイトルにおいて再生可能なPlayList一覧を示す。アプリケーション管理テーブルは、アプリケーションの識別子アプリケーションIDとそのアプリケーションに属するJavaアーカイブファイルのIDを羅列することで、このタイトルを生存区間とするアプリケーションを示すテーブルである。つまり、一つのアプリケーションは一つ以上のJavaアーカイブファイルで構成される。index.bdmvファイル名固定は、BD-ROM全体に関するデータベースファイルであり、映画作品のプロバイダを特定する識別子であるorganizationID32bitや、プロバイダが提供するBD-ROMのそれぞれに割り当てられた識別子であるdiscID128bit等の情報を持ち、再生装置へのディスク挿入後に、index.bdmvが最初に読み出されることで、再生装置においてディスクが一意に認識される。加えて、index.bdmvにはBD-ROMにおいて再生可能となる複数のタイトルと、個々のタイトルを規定するBD-Jオブジェクトとを対応付けて示すテーブルが含まれる。MovieObject.bdmvファイル名固定は、HDMVモード後述での各タイトル再生で、再生進行を動的に変化させるためのシナリオが記述されたシナリオプログラムが含まれる。EMOVEディレクトリの配下には、BD-ROMに記録されているコンテンツを携帯端末で視聴するためのAVコンテンツや管理情報が記録されており、DATAxxxxは2桁の可変数字というサブディレクトリ毎に携帯端末向けコンテンツが記録される。DATAxxディレクトリの配下にはEMOV_INF、MGR_DATA、PRG_MGR、PRG001.PGI、MOV001.SD1の5つのファイルが存在する。EMOV_INFには携帯端末向けコンテンツをそれぞれ一意に識別するために割り当てられた128bitの識別子であるコンテンツID以降、CIDと称する場合もあるが記録されている。MGR_DATAには、携帯端末向けコンテンツの再生位置が記録されている。PRG_MGRには、携帯端末向けコンテンツのトータルの再生時間が記録されている。PRG001.PGIには、携帯端末向けコンテンツのタイトル名が記録されている。MOV001.SD1は暗号化された携帯端末向けデジタルAVストリームが記録されている。なお、MGR_DATA、PRG_MGR、PRG001.PGI及びMOV001.SD1の4ファイルはSDビデオ形式に準拠しており、デジタルストリームに対応するMOV001.SD1は例えば所定の暗号化方式例えば、CPRM方式で暗号化され、所定の暗号化方式例えば、CPRM方式で暗号化されたデジタルストリームを復号するためのキー情報タイトルキーはBD-ROM内には記録されていないので、不正に再生できないよう保護されている以降、これら4ファイルを合わせて保護コンテンツもしくは携帯端末向け保護コンテンツと称する。なお図2では、DATA01ディレクトリにSDVideoMobileVideoProfile形式の携帯端末向け保護コンテンツが格納されている例を示したが、他のDATAxxディレクトリは、その他の形式、例えばSDVideoISDBT形式やQuickTime形式やWindows登録商標MediaPlayer形式で、持ち出し視聴用ためのコピーソースユニットを格納してもよい。図3は再生制御のレイヤモデルを示した図である。図3の第1層は、物理層であり、処理対象たるストリーム本体の供給制御である。この第1層に示すように、処理対象たるストリームは、BD-ROMだけではなく、Built-Inメディアやリムーバブルメディア、ネットワーク、記録型ディスクといったあらゆる記録媒体、通信媒体を供給源としている。ここでBuilt-Inメディアとは、HDDハードディスクドライブなど、再生装置に予め組み込まれた記録媒体である。一方、リムーバブルメディアは、SDメモリーカード、メモリースティック、コンパクトフラッシュ、スマートメディア、マルチメディアカード等、可搬性がある記録媒体である。なお、リムーバブルメディアに関しては、再生装置に直接挿入する形態とUSBケーブル等を用いて接続する形態がある。これらBuilt-Inメディア、リムーバブルメディアは何れも、再生装置がローカルに利用する記録媒体であり、ローカルストレージとの総称で呼ばれる。これらローカルストレージ、ネットワークといった供給源に対する制御ディスクアクセス、カードアクセス、ネットワーク通信が第1層の制御である。第2層は、AVデータのレイアである。第1層で供給されたストリームを、どのような復号化方式を用いて復号するのかを規定しているのがこの第2層である。第3層BD管理データは、ストリームの静的なシナリオを規定するレイアである。静的なシナリオとは、ディスク制作者によって予め規定された再生経路情報、ストリーム管理情報であり、これらに基づく再生制御を規定しているのがこの第3層である。第4層BD再生プログラムは、ストリームにおける動的なシナリオを実現するレイヤである。動的なシナリオは、AVストリームの再生手順、及び、その再生に関する制御手順のうち少なくとも一方を実行するプログラムである。動的なシナリオによる再生制御は、装置に対するユーザ操作に応じて変化するものであり、プログラム的な性質をもつ。ここでの動的な再生制御には、2つのモードがある。2つのモードのうち1つは、AV機器特有の再生環境で、BD-ROMに記録された動画データを再生するモードHDMVモードであり、もう1つはBD-ROMに記録された動画データの付加価値を高めるモードBD-Jモードである。図3において第4層には、HDMVモードとBD-Jモードの2つのモードが記述されている。HDMVモードは、DVDライクな再生環境での再生モードであり、再生進行を動的に変化させるためのシナリオが記述されたシナリオプログラムが動作する。もう一つのBD-Jモードは、Java登録商標仮想マシンを主体とした再生モードであり、BD-Jアプリケーションから再生制御を行う。図4は、2つのモードの動的な再生制御にて作成される映画作品を示す図である。図4aは、HDMVモードで動的な再生制御を定義することにより、作成される映画作品の一場面を示す図である。HDMVモードはDVD再生装置が解釈可能なコマンドと良く似たコマンドで再生制御を記述することができるので、DVDと同じような再生制御、つまり、メニューに対する選択により再生が進行するような再生制御を定義することができる。図4bは、BD-Jモードで動的な再生制御を定義することにより、作成される映画作品である。BD-JモードはJava仮想マシンが解釈可能なJava言語で制御手順を記述することができる。この再生制御がコンピュ-タグラフィックスCGの動作を制御するものなら、BD-Jモードにあっては、動画を表示した画面の横でCG図中のフクロウの絵が動きまわっているような再生制御を定義することができる。図5は、再生装置の大まかな機能構成を示すブロック図である。図5に示すように、再生装置は、BD-ROMドライブ401、読込制御部402、デマルチプレクサ403、ビデオデコーダ404、ビデオプレーン405、オーディオデコーダ406、イメージメモリ407、イメージプレーン408、イメージデコーダ409、加算器410、静的シナリオメモリ411、動的シナリオメモリ412、HDMVモジュール413、BD-Jモジュール414、UO探知モジュール415、モード管理モジュール416、ディスパッチャ417、レンダリングエンジン418、書込制御部419、AV再生ライブラリ420、PSRセット421、ネットワークインターフェース422、ローカルストレージ423、デジタルコピーモジュール424から構成される。BD-ROMドライブ401は、BD-ROMのローディング/イジェクトを行い、BD-ROMに対するアクセスを実行する。読込制御部402は、BD-ROMドライブ401にローディングされているBD-ROM105及びローカルストレージ423に記録されているデータの読込み制御を行う。デマルチプレクサ403は、読込制御部402により、読み出されたトランスポートストリームの多重分離を行い、GOPを構成するビデオフレームと、オーディオフレームとを得てビデオフレームをビデオデコーダ404に出力し、オーディオフレームをオーディオデコーダ406に出力する。副映像ストリームはイメージメモリ407に格納し、NavigationButton情報は動的シナリオメモリ412に格納する。デマルチプレクサ403による多重分離は、TSパケットをPESパケットに変換するという変換処理を含む。ビデオデコーダ404は、デマルチプレクサ403から出力されたビデオフレームを復号して非圧縮形式のピクチャをビデオプレーン405に書き込む。ビデオプレーン405は、非圧縮形式のピクチャを格納しておくためのメモリである。オーディオデコーダ406は、デマルチプレクサ403から出力されたオーディオフレームを復号して、非圧縮形式のオーディオデータを出力する。イメージメモリ407は、デマルチプレクサ403から読み出された副映像ストリーム、NavigationButton情報内のPNGデータ、読出制御部402から直接読み込まれた画像ファイルを格納しておくバッファである。イメージプレーン408は、一画面分の領域をもったメモリであり、展開された副映像ストリーム、PNGデータ、画像ファイルが配置される。イメージデコーダ409は、イメージメモリ407に格納された副映像ストリーム、PNGデータ、画像ファイルを展開してイメージプレーン408に書き込む。副映像ストリームのデコードにより、各種メニュー、副映像が画面上に現れることになる。加算器410は、ピクチャプレーン405に格納された非圧縮形式のピクチャデータに、イメージプレーン408に展開されたイメージを合成して出力する。図4bに示した画面動画を表示した画面の横でCG図中のフクロウの絵が動きまわっているような画面は、この加算器410が、イメージプレーン408内のイメージと、ビデオプレーン405内のピクチャとを合成することで出力される。静的シナリオメモリ411は、カレントのPlayListやカレントのストリーム管理情報を格納しておくためのメモリである。カレントPlayListとは、BD-ROMもしくはローカルストレージ423に記録されている複数PlayListのうち、現在処理対象になっているものをいう。カレントストリーム管理情報とは、BD-ROMもしくはローカルストレージ423に記録されている複数ストリーム管理情報のうち、現在処理対象になっているものをいう。動的シナリオメモリ412は、カレント動的シナリオを格納しておき、HDMVモジュール413、BD-Jモジュール414による処理に供されるメモリである。カレント動的シナリオとは、BD-ROMもしくはローカルストレージ423に記録されている複数シナリオのうち、現在実行対象になっているものをいう。HDMVモジュール413は、HDMVモードの実行主体となるDVD仮想プレーヤであり、動的シナリオメモリ412に読み出されたカレントのシナリオプログラムを実行する。BD-Jモジュール414は、Javaプラットフォームであり、Java仮想マシン、コンフィグレーション、プロファイルからなる。BD-Jモジュール414は、動的シナリオメモリ412に読み出されたJavaクラスファイルからカレントのJavaオブジェクトを生成し、実行する。Java仮想マシンは、Java言語で記述されたJavaオブジェクトを、再生装置におけるCPUのネィティブコードに変換して、CPUに実行させる。UO探知モジュール415は、リモコンや再生装置のフロントパネルに対してなされたユーザ操作を検出して、ユーザ操作を示す情報以降UOUserOperationというをモード管理モジュール416に出力する。モード管理モジュール416は、BD-ROMもしくはローカルストレージ423から読み出されたモード管理テーブルを保持して、モード管理及び分岐制御を行う。モード管理モジュール416によるモード管理とは、動的シナリオをHDMVモジュール413、もしくはBD-Jモジュール414のどちらで実行させるかという、モジュールの割り当てである。ディスパッチャ417は、UOから、現在の再生装置におけるモードに適切なUOのみを選んで、そのモードを実行するモジュールに受け渡す。例えばHDMVモードの実行中に、上下左右、アクティベートといったUOを受け付けた場合、HDMVモードのモジュールにこれらのUOを出力するというのがディスパッチャ417の処理である。レンダリングエンジン418は、Java2D,OPEN-GLといった基盤ソフトウェアを備え、BD-Jモジュール414からの指示に従ってコンピュ-タグラフィックスの描画を行い、描画されたコンピュ-タグラフィックスをイメージプレーン408に出力する。書込制御部419は、ネットワークインターフェース422を介してダウンロードされたデータや、デジタルコピーモジュール424からの指示に従い、ローカルストレージ423にデータを書き込む。AV再生ライブラリ420はHDMVモジュール413、BD-Jモジュール414からの関数呼び出しに応じて、AV再生機能、プレイリストの再生機能を実行する。AV再生機能とは、DVDプレーヤ、CDプレーヤから踏襲した機能群であり、再生開始、再生停止、一時停止、一時停止の解除、静止画機能の解除、再生速度を即値で指定した早送り、再生速度を即値で指定した巻戻し、音声切り替え、副映像切り替え、アングル切り替えといった処理である。プレイリスト再生機能とは、このAV再生機能のうち、再生開始や再生停止をプレイリスト情報に従って行うことをいう。PSRセット421は、再生装置に内蔵されるレジスタであり、PlayerStatusRegisterPSRと、GeneralPurposeRegisterGPRとからなる。PSRは、それぞれ現在の再生時点等、再生装置における諸状態を示す。その詳細な内容については、後で詳細に説明する。ネットワークインターフェース422は、インターネット上に公開されたBD-ROM追加コンテンツのダウンロードやデジタルコピー実行に必要なプロトコルを処理するために用いる。BD-ROM追加コンテンツとは、オリジナルのBD-ROMにないコンテンツで、例えば追加の副音声、字幕、特典映像、アプリケーションなどである。BD-Jモジュール414は、ネットワークインターフェース422を制御することにより、インターネット上に公開された追加コンテンツをローカルストレージ423にダウンロードすることができる。ローカルストレージ423は、ダウンロードしてきた追加コンテンツやアプリケーションが使うデータなどの保存、及びデジタルコピーのコピー先として用いられる。追加コンテンツの保存領域はBD-ROM毎に分かれており、またアプリケーションがデータの保持に使用できる領域はアプリケーション毎に分かれている。また、ダウンロードした追加コンテンツをどのようにBD-ROM上のデータとマージするかを示すマージ規則が記載されたマージ管理情報も、このローカルストレージ423に保存される。デジタルコピーモジュール424は、BD-ROM上に記録されている携帯端末向け保護コンテンツを、ローカルストレージ423へコピーし、かつネットワークインターフェース422を通してデジタルコピーサーバと認証を行い、コピー先で再生可能にするために必要な復号鍵の取得を行う。デジタルコピーモジュール424の機能はHDMVモジュール413及びBD-Jモジュール414には公開されておらず、ネットワークインターフェース422を介した間接的な制御のみ可能である。以上が本発明に係る再生装置の構成である。続いてPSRセットにおける個々のPSRについて説明する。以下にPSRの一覧を示す。PSR0:メニューグラフィックスストリーム番号PSR1:音声ストリーム番号PSR2:字幕ストリーム番号PSR3:アングル番号PSR4:現在再生中のタイトル番号PSR5:現在再生中のチャプター番号PSR6:現在再生中のプレイリスト識別子PSR7:現在再生中のプレイアイテム識別子PSR8:再生時刻情報PSR9:ナビゲーションタイマーPSR10:選択キー情報PSR11:メニューグラフィックスストリームにおける現在のページ識別子PSR12:字幕ストリームにおけるユーザースタイル識別子PSR13:パレンタルレベルPSR14:字幕サポート情報PSR15:プレーヤ設定値オーディオPSR16:音声ストリーム用言語コードPSR17:字幕ストリーム用言語コードPSR18:メニュー用言語コードPSR19:プレーヤのバージョン情報PSR20:PSR0のバックアップPSR21:PSR1のバックアップPSR22:PSR2のバックアップPSR23:PSR3のバックアップPSR24:PSR4のバックアップPSR25:PSR5のバックアップPSR26:PSR6のバックアップPSR27:PSR7のバックアップPSR28:PSR8のバックアップPSR29:PSR9のバックアップPSR30:PSR10のバックアップPSR31:PSR11のバックアップPSR32:PSR12のバックアップPSR0からPSR12までは、再生状態を示すシステムパラメータを格納する。PSR13からPSR19までは、プリファレンスとしてプレーヤに設定されるシステムパラメータを格納している。また、PSR20からPSR32までは、PSR0からPSR12のバックアップ用レジスタバックアップレジスタである。HDMVモードにおいてCallコマンドによるタイトル切替が行われた場合、PSR0からPSR12の現在の再生状態を示すパラメータが、PSR20からPSR32に退避される。特にPSR8は、ピクチャデータが表示される度に更新され、0~OxFFFFFFFFの値に設定されることで、45kHzの時間精度を用いて現在の再生時点を示す。本編がBD-Jモードの場合、バックアップレジスタが利用されないため、PSR8に格納されているパラメータを読み出すことにより、現在の再生時刻情報を取得できる。一方本編がHDMVモードである場合、PSR8のパラメータはPSR28に退避されており、PSR28に格納されているパラメータを読み出すことにより、現在の再生時刻情報を取得できる。以上がPSRの内容についての説明である。続いて、ローカルストレージにおけるデータ構造について説明する。図6は、ローカルストレージにおけるデータ構造を示す図である。ローカルストレージには大きく3種類の領域が存在し、1つはユーザから自由に読み書きできユーザにとって可視である領域ユーザ領域、もう一つはユーザからは読み書き不可能で、ユーザにとって不可視であり、著作権保護に対応したシステムのみ読み書きが許される保護された領域保護領域、最後に、ユーザからは読み書き不可能、システムからも書き込み不可能で、システムによる読み込みのみが許される領域システム領域である。ユーザ領域は、さらに追加コンテンツ領域とSDビデオ領域の2種類に分けられる。追加コンテンツ領域はBD-ROM再生時に補助的用いられるコンテンツが格納され、SDビデオ領域には主に携帯端末での再生を目的としたSDビデオ準拠のコンテンツSDビデオコンテンツが格納される。追加コンテンツ領域とSDビデオ領域は共にローカルストレージのユーザ領域上のルートディレクトリ直下に存在する。追加コンテンツ領域を示すディレクトリ名は8文字以内の固定値BUDAである。このBUDAディレクトリ以下サブディレクトリとそれ以下のファイルも含むに、アプリケーションはサーバからダウンロードしてきた追加ファイル等、任意のファイルを格納することが可能である。BUDAディレクトリ以下にはさらにOrganizationIDディレクトリとDiscIDディレクトリが存在し、特定のプロバイダOrganizationに対応するディレクトリに、各BD-ROMに対応するディレクトリを設けることにより、各BD-ROMについてのダウンロードデータが個別に格納される。一方SDビデオ領域を示すディレクトリ名はSD_VIDEOであり、追加コンテンツ領域と同様、ユーザ領域上のルートディレクトリ直下に存在する。SD_VIDEOディレクトリ以下にはさらにSDビデオコンテンツ毎に分かれたSDビデオコンテンツディレクトリPRGxxx、xxxは可変とSDビデオ領域全体の管理ファイルが格納されたSDビデオ管理ディレクトリMGR_INFOが存在する。SDビデオコンテンツディレクトリには、上述のPRG001.PGI及びMOV001.SD1が記録され、SDビデオ管理ディレクトリには、上述のMGR_DATA及びPRG_MGRが記録される。ユーザからはアクセスできない保護領域上には、暗号化された携帯端末向け保護コンテンツを復号するための復号鍵VIDEO001.KEYが記録される。復号鍵へのアクセスは著作権保護に対応したシステムのみが可能である。ユーザからはアクセスできず、システムからも読み込みのみ許されるシステム領域には、前述の復号鍵生成に必要な鍵情報が記録されたメディアキーブロックMKBと、ローカルストレージに割り当てられているSDメモリーカード等の媒体を、媒体毎に一意に特定するための識別子であるメディアIDMIDが記録されている。メディアIDは同じ種類のメディアでも媒体毎に異なる値が割り振られている。図7は図5に示すBD-Jモジュールのより具体的な構成を示す図である。BD-Jモジュール414はメディア再生モジュール704、ファイルI/Oモジュール705、ネットワークモジュール706、アプリケーションマネージャ707から構成される。なお、本図におけるAV再生ライブラリ420、PSRセット421、ネットワークI/F422、ローカルストレージ423、デジタルコピーモジュール424は、図5に示したものと同一であり、メディア再生モジュール704~アプリケーションマネージャ707の説明のために便宜的に記載している。アプリケーションマネージャ707はBD-ROM上に記録されたアプリケーション管理情報を元にBD-Jアプリケーションの起動終了を管理する。また、アプリケーションマネージャがディスパッチャ417から受け取ったUOイベントを、現在動作中のBD-Jアプリケーション701に渡すといった処理も行う。メディア再生モジュール704はBD-Jアプリケーション701に対し、メディア再生制御のためのAPIを提供している。BD-Jアプリケーション701がメディア再生制御APIを呼び出すと、メディア再生モジュール704は対応するAV再生ライブラリ420の関数を呼び出し、AV再生制御を行う。ファイルI/Oモジュール705はBD-Jアプリケーション701からのBD-ROM、ローカルストレージ、記録型BDドライブ等の各メディアへのファイルアクセス要求の処理を行う。ネットワークモジュール706は、BD-Jアプリケーション701に対し、ネットワーク制御のためのAPIを提供している。BD-Jアプリケーション701からのネットワーク制御要求に従い、ネットワークインターフェース422を使って、ネットワーク接続を行う。BD-Jアプリケーション701はネットワークモジュール706を用いて、デジタルコピーサーバにアクセスし、公開されている追加コンテンツの検索ダウンロード等が可能である。加えて本実施の形態では、再生装置内のデジタルコピーモジュール424とのプロトコル通信のためにネットワークモジュール706が用いられる。図7に示す通り、デジタルコピーモジュールに対しての直接のAPIはBD-Jアプリケーション701には提供されていない。デジタルコピーモジュール424に対して何らかの処理を発行するときは、デジタルコピーモジュール424とネットワークモジュール706の間に形成されたローカルネットワークを介して必要なデータの送受信を行うことになる。ネットワークモジュール706は外部ネットワークアクセス及びローカルネットワークアクセスの両方のインターフェースをBD-Jアプリケーション701に提供する。なお、ローカルネットワークアクセスを用いたデジタルコピーモジュール424とのデータ送受信は、BD-Jアプリケーション701とは分離し、ライブラリ化することも考えられる。デジタルコピーモジュール424とのデータ送受信に用いるプロトコルを個々のBD-Jアプリケーションに依存したものではなく、共通のプロトコルを定義することで、そのプロトコル解析専用のライブラリを用意しデジタルコピーライブラリ702、BD-Jアプリケーションから分離させる。デジタルコピーライブラリ702は、BD-Jアプリケーションに対し、あたかもBD-JAPIを拡張したかのようなAPIデジタルコピーライブラリAPI、詳細は後述を提供し、プロトコルの詳細はデジタルコピーライブラリ702内に隠蔽する。このように構成することで、BD-Jアプリケーションはデジタルコピーモジュール424とのデータ送受信に用いるプロトコルを解析する必要がなくなり、プロトコル解析をライブラリで一元管理することが可能となるため、BD-Jアプリケーションの生産性を向上させることができる。なお、デジタルコピーライブラリ702とデジタルコピーモジュール424の双方でやりとりされるローカルネットワークアクセスを用いたプロトコルデジタルコピーソケットプロトコルの詳細については後述する。図8はindex.bdmvファイルとタイトルの関係の一例を示す図である。タイトルとはアプリケーションとAVストリームを組にした再生単位であり、index.bdmvファイルにはディスク上のタイトル構成が記載されており、ディスク上の各タイトルと、対応するアプリケーションBD-JモードタイトルであればBD-Jアプリケーション、HDMVモードタイトルであればシナリオプログラムの参照関係を管理している。図8に示す例では、TopMenu、FirstPlay、Title1、Title3がそれぞれBD-Jモードタイトル、Title2がHDMVタイトルであることを示している。Title1は、例えば本編映像のタイトルであり、このタイトルの選択がなされるとBD-Jオブジェクト00001bdjoに含まれるアプリケーション管理テーブルに示される再生可能なプレイリストに従うデジタルストリームの再生およびアプリケーション管理テーブルに示されるアプリケーションの実行が再生装置にて行われる。Title2は、例えば特典映像のタイトルであり、このタイトルの選択がなされるとMovieObject.bdmvに含まれるシナリオプログラムに従ったデジタルストリームの動的再生が行われる。Title3は、例えばデジタルコピーに対応するタイトルであり、このタイトルの選択がなされるとBD-Jオブジェクト88888bdjoに含まれるアプリケーション管理テーブルに示されるBD-Jアプリケーションおよびデジタルコピーライブラリの実行による後述するデジタルコピーが再生装置にて行われる。上述に示す例は単なる一例である。例えばTitle1に関連付けたBD-Jオブジェクトに含まれるアプリケーション管理テーブルにプレイリストが示されなければ、デジタルストリームの再生は行われない。また、Title3に関連付けたBD-Jオブジェクトに含まれるアプリケーション管理テーブルに再生可能なプレイリストを示すようにすれば、アプリケーション管理テーブルに示されるBD-Jアプリケーションおよびデジタルコピーライブラリの実行と並行して、アプリケーション管理テーブルに示される再生可能なプレイリストに従うデジタルストリームの再生が再生装置で行われることになる。また、特殊なタイトルとしてFirstPlayとTopMenuが存在する。FirstPlayはBD起動時に自動的に再生されるタイトルであり、主にBDの利用規約表示などに用いられる。TopMenuはリモコンのメニューキーを押したときやタイトル再生が終了したときに再生され、主にタイトルの選択や、字幕/音声の言語選択を行うことに用いられる。本実施形態では、デジタルコピーはBD-Jモードタイトルで行われることになる。デジタルコピータイトルは、デジタルコピーのGUI等を管理するBD-Jアプリケーションと、デジタルコピーモジュールとのデータ送受信を管理するデジタルコピーライブラリで構成される。BD-Jアプリケーション、デジタルコピーライブラリ共に、JARファイルとしてBD-ROM上に記録しておく必要がある。JARファイルは、BD-Jアプリケーションとデジタルコピーライブラリで分けて記録しても良いし、1つのJARファイルにまとめて記録しても良い。図9は、デジタルコピーモジュール424を詳細化した図である。デジタルコピーモジュール424は、通信管理部601、鍵情報読込部602、メディア状態管理部603、コピー実行部604、コピー状態通知部605、コピー進捗管理部606、鍵情報書込部608、空き容量判定部610で構成される。通信管理部601は、再生装置内の通信ポートの一つをデジタルコピー制御のために割り当て、このデジタルコピー通信ポートを用いて、BD-Jモジュールとのプロトコル通信を行う。具体的には、サーバソケットとしてデジタルコピー通信ポートを開いて、BD-Jモジュールからの要求が来るのを待ち、デジタルコピー通信ポートに対してデータが送られてくると、送られてきたデータを解析し、そのデータ対応する処理を行う。処理結果も同様にデジタルコピー通信ポートを介してBD-Jモジュールに送り返す。加えて、通信管理部601はデジタルコピーサーバ803とのデータ通信管理も行う。具体的には、暗号化された携帯端末向けデジタルAVストリームを復号するために必要な復号鍵をサーバから取得するために必要な通信処理を行う。鍵情報読込部602は、復号鍵生成に必要な情報をコピー元801及びコピー先802から読出す。具体的には、コピー元801からはBD-ROM上の特殊領域であるBCABurstCuttingAreaに記録されている記録媒体の物理的なシリアルIDを示すPMSNPrerecordedMediaSerialNumberを、コピー先802からはコピー先のメディアに記録されている、メディア毎にユニークに設定されるメディア固有の情報メディアID、及び復号鍵生成に必要な鍵情報が記録されたメディアキーブロックMKBの読出しを行う。メディア状態管理部603は、再生装置が現在コピー先として利用できるメディアの種類一覧を管理する。例えば、再生装置がSDカードスロットと、USBメモリスロットを備え、現在、SDカードのみが挿入されているのであれば、SDカードが現在のコピー先の対象と判断する。SDカードとUSBメモリもしくはUSB接続されている携帯端末の両方が挿入されていれば、コピー先としてSDカード、USBメモリの両方が可能と判断する。加えて、コピー先メディアの空き容量管理も行う。コピー実行部604は、BD-Jアプリケーション701から指示されたBD-ROM上の携帯端末向け保護コンテンツを別メディアへコピーする処理を行う。BD-Jアプリケーション701からの指示はデジタルコピーライブラリ702を経由し、デジタルコピー通信ポート上で行われる。なおコピー実行部604によるデータコピーだけでは、コピー先で携帯端末向け保護コンテンツを再生することはできない。後述の復号鍵書込部608によってコピー先へ復号鍵の書込みが完了した後にコピー先にて再生が可能となる。コピー状態通知部605はコピーの開始正常終了エラー終了等の状態遷移を管理し、デジタルコピー通信ポートを通じてデジタルコピーモジュール424とローカル通信接続中のBD-Jアプリケーション701に状態遷移を通知する。コピー進捗管理部606はコピー対象となっている残りバイト数、コピー済みバイト数の管理を行い、デジタルコピー通信ポートを介したBD-Jアプリケーションからの要求に応じて、現在の進捗情報を通知する。鍵情報書込部608は、鍵情報読込部602が取得したBD-ROMのシリアルID、コピー先メディアのメディアID、及びMKBから生成される復号鍵の書込みを行う。復号鍵の生成は、サーバにある秘密鍵を元に行われるため、デジタルコピーモジュール424は鍵情報読込部602が、BD-ROMのシリアルID、コピー先メディアのメディアID、及びMKBを取得した後、通信管理部601を経由してデジタルコピーサーバ803にこれらの値と、コピー対象コンテンツのコンテンツIDを送信する。デジタルコピーサーバ803は受け取った値とサーバが保持する秘密鍵から復号鍵を生成し、通信管理部601へ復号鍵を送信する。生成される復号鍵はコピー先メディアのMKBにより復号できるような暗号化がなされている。通信管理部601が復号鍵を受け取ると鍵情報書込部608はコピー先の保護領域に復号鍵の書込みを行う。復号鍵はキー情報タイトルキーを含んでおり、キー情報が暗号化された携帯端末向け保護コンテンツの復号に用いられる。このキー情報を含む復号鍵がなければ、たとえ、無断でコピー元の携帯端末向け保護コンテンツのみを別のメディアにコピーしたとしても再生することはできない。空き容量判定部610はコピー先メディアの空き残量及びコピー元コンテンツをもとにコピーに必要な空き容量がコピー先に存在するかを判定する。デジタルコピーモジュール424は以上の構成を持ち、これらの操作はデジタルコピー通信ポートにローカル通信接続を行っているBD-Jアプリケーションから制御できる。なお、これらの制御を操作できる直接のAPIはBD-Jモジュールに存在しないため、デジタルコピー通信ポートに接続できていないBD-Jアプリケーションからは制御ができないということになる。図10はBD-Jアプリケーション、デジタルコピーライブラリ、デジタルコピーモジュール、及びデジタルコピーサーバとのデータ送受信を示すシーケンス図である。本実施の形態において、デジタルコピーモジュール424とBD-Jアプリケーション701/デジタルコピーライブラリ702、デジタルコピーモジュール424とデジタルコピーサーバ803との間には2つの異なる通信経路が形成されることが特徴である。BD-Jアプリケーション701とデジタルコピーモジュール424の間には同一端末間のローカル通信が形成され、デジタルコピーモジュール424とデジタルコピーサーバ803の間には別端末間のグローバル通信が形成される。BD-Jアプリケーション701とデジタルコピーライブラリ702との間は、通信は発生せず、通常の同一アプリケーション内API呼び出しが行われる。まず、BD-Jアプリケーション701は、再生装置がデジタルコピーに対応しているかどうかの判断を行う。再生装置がデジタルコピーに対応しているかどうかの判断は、図11に示すフローチャートに基づいて行う。BD-Jアプリケーション701からデジタルコピーライブラリ702に対し、再生装置のデジタルコピー対応確認が要求されると、デジタルコピーライブラリ702は、デジタルコピーに割り当てられた通信ポートを示すシステムプロパティdigitalcopyportが存在するかどうかを確認するステップS101。システムプロパティdigitalcopyportが存在する場合は、そのプロパティが示す通信ポートをデジタルコピーモジュールとのデータ送受信に用いる。システムプロパティdigitalcopyportが存在しない場合は、予め決められた通信ポートをデジタルコピーモジュールとのデータ送受信に用いる。なお、デジタルコピーモジュールは通信ポートの1つをデジタルコピー用に占有することになるため、予め決められた通信ポートを用いる場合は、既存の通信ポートを利用したネットワークとの衝突を防ぐために、プライベートポートを使うことが望ましい。具体的には49152番ポート以上、65535番ポート以下が推奨される。システムプロパティdigitalcopyportを用いる場合、すなわちデジタルコピーに用いる通信ポートが毎回変わる可能性がある構成を取る場合は、フリーポートを利用することも考えられる。フリーポートとは、ポート0番を指定することにより、その時点で端末側が利用していないポートを自動的に割り当てる仕組みを指す。フリーポートを利用すれば、ポート衝突は避けられるが、都度ポート番号が変わるため、そのデジタルコピーに用いるポート番号をデジタルコピーライブラリ702に通知する必要がある。そのポート番号の通知にシステムプロパティdigitalcopyportを利用する。ステップS101でシステムプロパティが存在しなければ、デジタルコピーライブラリ702は、予め決められた固定ポートへ接続するステップS102。システムプロパティが存在する場合は、デジタルコピーライブラリ702は、システムプロパティが示すポートへ接続するステップS103。次にデジタルコピーライブラリ702は、通信ポートへの接続に成功したかどうかを確認するステップS104。通信ポートへの接続が失敗すれば、デジタルコピーライブラリ702は、現在の再生装置ではデジタルコピーに対応していないと判断するステップS108。ステップS104で通信ポートへの接続に成功した場合、デジタルコピーライブラリ702は、その通信ポートを経由してデジタルコピーモジュールへ初期化を要求するステップS105。そして、デジタルコピーライブラリ702は、ステップS105の初期化要求に対するデジタルコピーモジュールからの応答を接続中の通信ポートで受け取るステップS106。ステップS106で、初期化成功との応答を受け取った場合、デジタルコピーライブラリ702は、現在の再生装置でデジタルコピー可能と判断するステップS107。デジタルコピーモジュールからの応答がない、もしくは初期化失敗との応答を受け取った場合は、デジタルコピーライブラリ702は、現在の再生装置ではデジタルコピー不可と判断するステップS108。デジタルコピーライブラリ702は、デジタルコピー可否の結果をBD-Jアプリケーションに通知し、BD-Jアプリケーションはデジタルコピー可能であるという通知を受け取ると、続いてデジタルコピーに必要なパラメータをデジタルコピーライブラリ経由で、デジタルコピーモジュールへセットする。具体的には、シリアルID,コピー元のコンテンツの位置、デジタルコピーサーバのURL、コピー先のメディア、レジューム再生位置である。シリアルIDは、BCABurstCuttingAreaに記録されているPMSNPre-recordedMediaSerialNumberを利用することができるが、これ以外の値として、パッケージに同梱されている紙に記載されたクーポンIDをユーザに手入力させた値を代替することも可能である。PMSNを利用すれば、ユーザに手入力させる必要もなく自動で認証を行うことが可能であるが、一方でレンタルディスク等の場合にPMSNを利用するとなると、最初に借りたユーザだけが、このサービスを実施権が与えられることになり、二番目以降に借りるユーザに不公平となる。レンタルディスクの場合はクーポンIDの手入力が望ましく、市販ディスクの場合はPMSNの利用が望ましい。コピー元のコンテンツの位置は、携帯端末向けコンテンツが記録されているディレクトリまでの絶対パスで示される。例えば、mntbdromEMOVEDATA01等である。この場合、mntbdromはBD-ROMメディアのマウントポイントに当たる。デジタルコピーサーバのURLは、グローバルネットワーク上のサーバを示すURLが指定される。例えばhttpxxxyyyzzz等である。コピー先メディアは、再生装置がサポートしているコピー先メディア一覧の中から指定される。BD-Jアプリケーションはデジタルコピーモジュールに対し、現在の再生装置でサポートしているメディア一覧を要求すると、<メディアの種類>_<番号>の形のリストが送られてくる。例えば、再生装置がSDカードスロットとUSBメモリスロットの両方をそれぞれ1つずつサポートしていた場合、SD_1USB_1というリストが送られてくる。SDカードスロットなし、USBメモリスロットが2つ持つ場合はUSB_1USB_2というリストが送られることとなる。コピー先一覧を受け取ったBD-Jアプリケーションは、それらの一覧をユーザに提示し、どのメディアにコピーするか、ユーザの指示を受け、ユーザが選択したメディアを、コピー先メディアとして指定することになる。レジューム再生位置は、携帯端末視聴用のコンテンツの先頭からの再生再開位置レジュームポイントまでの経過時間ミリ秒が指定される。BD-Jアプリケーションは、本編がBD-Jモードの場合、PSRセット421のPSR8に格納された再生装置の再生時刻情報を読み出し、レジューム再生位置を指定する。本編がHDMVモードである場合、PSR28に格納された再生装置の再生時刻情報を読み出し、レジューム再生位置を指定する。PSR8またはPSR28から取得される再生時刻情報は、45kHzクロック単位であるため、再生時刻情報をミリ秒単位に変換したものがレジューム再生位置となる。例えば、再生装置にてすでに30分視聴していた場合、PSR8またはPSR28に格納されている値は81000000であり、レジューム再生位置は1800000となる。デジタルコピーライブラリはこれらのパラメータがBD-Jアプリケーションから指定されると、接続中の通信ポートを用いてデジタルコピーモジュールへ指定されたパラメータを送信する。パラメータのセットが完了すると、BD-Jアプリケーションは次に残コピー回数の確認を行う。残コピー回数の確認も、パラメータのセットと同様、デジタルコピーライブラリを経由し、接続中の通信ポートを用いてデジタルコピーモジュールへ問い合わせを行う。残コピー回数は、デジタルコピーサーバで管理されているため、デジタルコピーモジュールは残コピー回数の確認要求を受け取ると、現在セットされているパラメータから、コンテンツID,シリアルID,メディアIDを取り出しデジタルコピーサーバへ、これら3つの値を送る。コンテンツIDはコピー対象の携帯端末向け保護コンテンツのEMOV_INFファイルに記載されている値を、シリアルIDはBD-Jアプリケーションから指定された値を、メディアIDはコピー先メディアのシステム領域に記載されている値を用いる。BD-Jアプリケーション701、デジタルコピーライブラリ702及びデジタルコピーモジュール424の間は同一端末間通信であり、外部インターネット接続不要であったが、デジタルコピーモジュール424とデジタルコピーサーバ803との間はグローバルなインターネット接続が必要となる。デジタルコピーサーバは、受け取った値を元に残コピー回数を割り出し、デジタルコピーモジュールへ残コピー回数の値を返信する。デジタルコピーモジュールは、この残コピー回数をデジタルコピーライブラリ経由でBD-Jアプリケーションに通知する。BD-Jアプリケーションは残コピー回数を確認し、1回以上残っていれば、コピー開始をデジタルコピーモジュールへ要求する。このコピー開始要求も、これまでと同様、デジタルコピーライブラリを経由し、通信ポートを用いてデジタルコピーモジュールへ伝えられる。デジタルコピーモジュールはコピー開始要求を受け取ると、コピーを開始し、その間、BD-Jアプリケーションからの要求に応じてコピー進捗状況を随時通知する。なお、コピー中はI/O処理がデジタルコピー実行部604に占有されるため、BD-ROM上のコンテンツを正常に再生することができなく恐れがある。そのため、しばらくの間は、再生ができないということ、ディスクを取り出してはいけないということ、及び電源を落としてはいけないということを事前にユーザに通知しておくことが望ましい。とは言え、ユーザが誤ってディスクを取り出したり、電源を落としたりすることは大いに有り得る。しかしながら、復号鍵書込の処理は、この時点では完了しておらず、残コピー回数は減っていないため、ここでデータコピーに失敗しても残コピー回数が減るということはない。デジタルコピーサーバ側で管理している残コピー回数は、次のステップで復号鍵をデジタルコピーサーバからダウンロードした時点で減ることになる。BD-Jアプリケーションは、コピー完了通知を受け取ると、復号鍵の書込みをデジタルコピーモジュールへ要求する。デジタルコピーモジュールは復号鍵の書込み要求を受け取ると、現在セットされているパラメータから、コンテンツID,シリアルID,メディアID,MKBを取り出しデジタルコピーサーバへ、これら4つの値を送る。デジタルコピーサーバは、受け取った値を元に復号鍵を生成し、デジタルコピーモジュールへ復号鍵を返信する。デジタルコピーモジュールは、デジタルコピーサーバから受け取った復号鍵をコピー先メディアに書き込み、書き込みが完了すると、デジタルコピーライブラリを経由してBD-Jアプリケーションに書き込み完了を通知する。その後デジタルコピーモジュールは、コピー先のメディアの管理ファイルMGR_DATAに、BD-Jアプリケーションにより指定されたレジューム再生位置を上書きする。BD-Jアプリケーションによりレジューム再生位置が指定されていない場合、MGR_DATAの上書きは行わない。図12はデジタルコピーライブラリAPIを用いたデジタルコピーのシーケンスを示す図である。デジタルコピーライブラリはBD-Jアプリケーションに対し、あたかもBD-JAPIを拡張したかのようなAPIを提供している。実際は、これらのAPIが呼ばれると、デジタルコピーソケットプロトコルに変換し、デジタルコピー用の通信ポートを利用してデジタルコピーモジュールとデータの送受信を行い、APIに対応した処理を行う。デジタルコピーライブラリがBD-Jアプリケーションに提供する主なAPIを以下に示す。BCManagergetInstanceデジタルコピーモジュールを制御するための各種メソッドを持つBCManagerクラスのインスタンスを取得する。再生装置がデジタルコピーに対応していなかった場合はUnsupportedOperationExceptionをスローする。BCManageraddBCStatusChangeListenerデジタルコピーモジュールの状態変化をモニタリングする。デジタルコピーモジュールの状態変化を検知すると、変化した状態をBD-Jアプリケーションへ通知する。BCManagerinitializeBCデジタルコピーモジュールの初期化を行う。このAPIが呼ばれると、デジタルコピーライブラリは、図11に示すフローに従い、デジタルコピーモジュールとの接続を行う。接続に失敗した場合は、UnsupportedOperationExceptionをスローする。初期化が成功すれば、BCInitializedEventをBD-Jアプリケーションに通知する。BCManagergetDeviceList再生装置がコピー先としてサポートしているメディア一覧SDカード、USBメモリを取得する。それぞれのメディアはBCOutputDeviceクラスのインスタンスとして表現される。BCOutputDeviceクラスはインスタンスが示すメディアの種類と番号SD_1、USB_1を取得するメソッド、空き容量を取得するメソッドBCOutputDevicegetFreeSpace、及びトータル容量を取得するメソッドBCOutputDevicegetTotalSpaceを持つ。図12では、空き容量を取得するメソッドBCOutputDevicegetFreeSpaceの呼び出しに対する応答として、空き容量の一例として10737418240byteを返している。BCManagersetServerURLデジタルコピーモジュールへデジタルコピーサーバURLをセットする。BCManagersetSourceLocationデジタルコピーモジュールへコピー元のコンテンツ位置をセットする。コンテンツ位置は、携帯端末向けコンテンツが記録されているディレクトリまでの絶対パスで示されるmntbdromEMOVEDATA01等。BCManagersetOutputDeviceデジタルコピーモジュールへコピー先メディアをセットする。コピー先メディアはBCManagergetDeviceListで取得できたメディアリストの中から選択される。BCManagersetSerialIdデジタルコピーモジュールへシリアルIDをセットする。BCManagersetResumePointデジタルコピーモジュールへレジューム再生位置をセットする。なお、BCManagersetResumePointの呼び出しは、デジタルコピーモジュールが後述するNOT_INIT状態以外であれば可能である。BCManagercheckTicket残コピー回数確認をデジタルコピーモジュールへ要求する。デジタルコピーモジュールは残コピー回数の確認が要求されると、現在セットされているパラメータを用いてデジタルコピーサーバへ残コピー回数の問い合わせを行う。得られた残コピー回数はBCCheckResponseクラスのインスタンスとしてBD-Jアプリケーションにリターンされる。BD-JアプリケーションはBCCheckResponseremainingTimesOfCopyを呼び出すことで残コピー回数を確認することができる。また、残コピー回数が1回以上残っていれば、BCReadyEventがBD-Jアプリケーションに通知される。BCManagermakeCopyデジタルコピーモジュールへコピー開始を要求する。デジタルコピーライブラリはデジタルコピーモジュールへコピー開始を要求した後、BD-Jアプリケーションには進捗状況を示すBCProgressインスタンスをリターンし、コピー処理はデジタルコピーモジュールにおいて非同期で行われる。BD-JアプリケーションはBCProgresstotalを呼び出すことでトータルのコピーバイト数を、BCProgressremainingを呼び出すことで残りのコピーバイト数を確認することができる図12では、BCProgressremainingの呼び出しに対する応答としての残りのコピーバイト数の一例として524288000byteを返している。コピー処理が完了するとBCTransferredEventがBD-Jアプリケーションに通知される。BCManagerfinalizeBCデジタルコピーモジュールへ復号鍵の書込みを要求する。復号鍵の書込みが完了するとBCCompleteEventがBD-Jアプリケーションに通知される。BCManagercancelCopy:デジタルコピーモジュールのコピー処理をキャンセルする。キャンセルに成功するとBCCancelEventがBD-Jアプリケーションに通知される。BCManagerclose:デジタルコピーモジュールが確保しているリソースを開放し、デジタルコピープロセスを終了する。図13はデジタルコピーモジュールの状態遷移を示す図である。デジタルコピーモジュールはデジタルコピープロセスの進捗に応じて以下9個の状態を遷移する。NOT_INIT:この状態はデジタルコピーモジュールがまだ初期化されていないことを示す。この状態はBD-ROMがロードされた時点でのデジタルコピーモジュールの初期状態である。他の状態においてBD-JアプリケーションがBCManagercloseを呼び出し、デジタルコピープロセスを終了した場合、デジタルコピーモジュールは再びNOT_INIT状態に戻る。この状態でBCManagerinitializeBCが呼ばれると、INITIALIZED状態に遷移し、BD-JアプリケーションへはBCInitializedEventが通知される。INITIALIZED:この状態はデジタルコピーモジュールが初期化され、BD-Jアプリケーションからデジタルコピープロセスの機能を呼び出せる状態であることを示す。この状態で、BD-Jアプリケーションが必要パラメータ例えば、BCManagersetServerURLの呼び出しにより設定されるデジタルコピーサーバのURL、BCManagersetSourceLocationの呼び出しにより設定されるコピー元のコンテンツ位置、BCManagersetOutputDeviceの呼び出しにより設定されるコピー先メディア、BCManagersetSerialIdにより設定されるシリアルIDをセットし、BCManagercheckTicketを呼び出して残コピー回数が1回以上残っていた場合はREADY状態に遷移し、BD-JアプリケーションへはBCReadyEventが通知される。残コピー回数が残っていなかった場合は、READY状態には遷移せず、INITIALIZED状態のままとなる。デジタルコピープロセス実行後、READY,CANCELED,STOPPED,もしくはCOMPLETED状態においてBD-JアプリケーションからBCManagerinitializeBCが呼ばれると、再びINITIALIZED状態に遷移し、BD-JアプリケーションへはBCInitializedEventが通知される。READY:この状態はデジタルコピープロセスに必要なパラメータが全てセットされ、かつそれらが有効であり、デジタルコピーモジュールのコピー準備が整ったことを示す。この状態でBCManagermakeCopyが呼ばれると、TRANSFERRING状態へ遷移する。TRANSFERRING:この状態は携帯端末向け保護コンテンツのデータコピーが開始されたことを示す。携帯端末向け保護コンテンツのデータコピーが完了するとTRANSFERRED状態へ遷移し、BD-JアプリケーションへはBCTransferredEventが通知される。また、データコピー完了前にBCManagercancelCopyが呼ばれると、データコピーはキャンセルされ、CANCELED状態に遷移し、BD-JアプリケーションへはBCCancelEventが通知される。データコピー中にコピー先メディアが取り出される等により、エラーが発生した場合はSTOPPED状態に遷移し、BD-JアプリケーションへはBCStopByErrorEventが通知される。TRANSFERRED:この状態は携帯端末向け保護コンテンツのデータコピーが完了し、デジタルコピーモジュールにおいて復号鍵書込み準備が整ったことを示す。この状態でBCManagerfinalizeBCが呼ばれると、デジタルコピーモジュールはFINALIZING状態へ遷移する。また、この状態でBCManagercancelCopyが呼ばれると、CANCELED状態に遷移し、BD-JアプリケーションへはBCCancelEventが通知される。FINALIZING:この状態は、デジタルコピーサーバから復号鍵の取得、及びコピー先メディアへ取得した復号鍵の書込み処理が行われていることを示す。一旦この状態に入ると、BD-JアプリケーションはBCManagercancelCopyを呼んでもキャンセルできず、キャンセル要求は拒否されることになる。復号鍵書込み中にコピー先メディアが取り出される等により、エラーが発生した場合はSTOPPED状態に遷移し、BD-JアプリケーションへはBCStopByErrorEventが通知される。復号鍵の書込みが完了すると、デジタルコピーモジュールはCOMPLETED状態へ遷移し、BD-JアプリケーションへはBCCompleteEventが通知される。COMPLETED:この状態は、携帯端末向け保護コンテンツのデータコピー及び対応する復号鍵の書込みが完了し、デジタルコピープロセスが成功したことを示す。COMPLETED状態に遷移した際、デジタルコピーモジュールは、コピー先のメディアの管理ファイルMGR_DATAに、BD-Jアプリケーションにより指定されたレジューム再生位置を上書きする。またCOMPLETED状態でBD-Jアプリケーションからレジューム再生位置が指定された場合、デジタルコピーモジュールは、即座にコピー先のメディアの管理ファイルMGR_DATAに指定されたレジューム再生位置を上書きする。COMPLETED状態で、BCManagerinitializeBCが呼ばれると、再びINITIALIZED状態に遷移し、BD-JアプリケーションへはBCInitializedEventが通知される。CANCELED:この状態は、携帯端末向け保護コンテンツのデータコピーが途中でキャンセルされたことを示す。途中までコピー済みのデータは、CANCELED状態への遷移時にクリアされる。STOPPED:この状態は、エラー発生により、データコピーもしくは復号鍵書込みが失敗したことを示す。エラー発生の原因としては、空き容量不足、コピー先メディアが書き込み保護されているため、書込みできない、コピー先メディアが途中で取り出された、コピー先メディアが破損しておりI/Oエラーが発生した等が考えられる。どの原因でコピーに失敗したかは、STOPPED状態遷移時に発生するBCStopByErrorEventインスタンスに詳細情報が記録されており、BD-JアプリケーションはBCStopByErrorEventを通してエラー原因を把握することができる。以上がデジタルコピー実行の際に、BD-Jアプリケーションとデジタルコピーライブラリ間でやり取りされるAPI呼び出しの内容である。図14はデジタルコピーライブラリとデジタルコピーモジュール間でやり取りを行うデジタルコピーソケットプロトコルの一例を示す図である。デジタルコピーライブラリは、BD-Jアプリケーションに対して提供しているデジタルコピーライブラリAPIを対応するデジタルコピーソケットコマンドに変換し、ソケット通信によりデジタルコピーモジュールとデータの送受信を行う。図14では、例えば再生装置がSDカードスロットのみをサポートするような構成である場合を例に説明を行う。まず、BD-JアプリケーションからBCManagerinitializeBCが呼び出され、デジタルコピーモジュールの初期化要求が行われると、デジタルコピーライブラリは、図11に示すフローに従い、デジタルコピーモジュールとの通信に使うポート番号を特定する。ポートの特定ができれば、そのポートに対しREQUESTINITIALIZEという文字列のソケットコマンドを送信する。デジタルコピーモジュールはオープン中のポートを通じ、REQUESTINITIALIZEという文字列を受信すると、初期化要求が行われたと判断し、パラメータ例えば、以前に設定されたデジタルコピーサーバのURL、コピー元のコンテンツ位置、コピー先メディア、シリアルIDのクリアと状態遷移通知のための非同期イベント用ポートを新規にオープンした後、初期化が完了したという旨を知らせるため、ソケットコマンドを受け取ったポートを通じて、OKという文字列を送信する。デジタルコピーライブラリは、ソケットコマンドを送ったポートから、OKという文字列を受け取ると初期化が完了したとみなす。初期化完了後、デジタルコピーライブラリは、GETASYNCPORTコマンドを呼び出し、状態遷移通知のための非同期通知用に開かれたポート番号を取得する。すなわち、デジタルコピーソケットプロトコルは2種類のポートで構成され、一つはデジタルコピーソケットコマンド用同期コマンド、もう一つはデジタルコピーモジュールの状態遷移通知用非同期イベントである。デジタルコピーソケットコマンド用のポートは、デジタルコピーライブラリからデジタルコピーモジュールへコマンドを投げる形でやり取りが行われるが、状態遷移通知用のポートはデジタルコピーモジュールからデジタルコピーライブラリへ一方的にイベントが通知される形となる。BD-JアプリケーションからBCManageraddBCStateChangeListnerが呼ばれると、デジタルコピーライブラリは状態遷移通知用ポートのモニタリングを開始し、デジタルコピーモジュールから送られている状態遷移通知をデジタルコピーライブラリAPIのイベントに変換し、BD-Jアプリケーションに状態遷移を通知することになる。続いて、BD-Jアプリケーションから、BCManagergetDeviceListが呼ばれ再生装置がコピー先としてサポートしているメディアのリストが要求されると、デジタルコピーライブラリはGETDEVICELISTコマンドを呼び出し、デジタルコピーモジュールへサポートしているメディアのリストを要求する。デジタルコピーモジュールはGETDEVICELISTコマンドに対する応答として、サポートしているメディアのリストをソケットコマンド用のポートを通じて返す。サポートしているメディアのリストは、<メディアの種類>_<番号>という形で返され、複数メディアをサポートしている場合は、それぞれ空白文字で区切られる例:SD1USB1、は空白文字。図14では、再生装置が例えばSDカードスロットのみをサポートしている場合にはSD1が応答として返される例を示している。BD-JアプリケーションからBCOutputDevicegetTotalSpaceもしくはBCOutputDevicegetFreeSpaceが呼ばれ、トータル容量、空き容量の情報提供が要求されると、デジタルコピーライブラリはGETDEVICEINFOコマンドをソケットコマンド用ポートを通じてデジタルコピーモジュールへ送り、トータル容量、空き容量の情報を受け取る。GETDEVICEINFOコマンドは引数にメディアの種類を指定する。コマンド名と引数の間には空白文字を設ける。例えば、SD1種類:SDカード、番号:1の情報を要求する場合は、GETDEVICEINFOSD1という文字列をソケットコマンド用ポートを通じてデジタルコピーモジュールへ送ることになる。続いて、パラメータセットについて説明する。パラメータセットは、SETSERVERURLコマンドの送信とレスポンスの受信、SETSRCLOCATIONコマンドの送信とレスポンスの受信、SETOUTPUTDEVICEコマンドの送信とレスポンスの受信、SETSERIALIDコマンドの送信とレスポンスの受信、SETRESUMEコマンドの送信とレスポンスの受信から構成される。ただし、SETRESUMEコマンドはNOT_INIT状態以外であれば、いつでも呼び出すことが可能である。デジタルコピーに必要なパラメータをセットする場合も同様に、デジタルコピーソケットコマンドを通じてデジタルコピーライブラリからデジタルコピーモジュールへ値が伝わり、デジタルコピーモジュール内にパラメータがセットされる。既にパラメータがセット済みである場合、上記コマンドが成功完了した際、直前のパラメータは、新たなパラメータにより上書きされる。コマンド名と引数は空白文字で区切る。例えば、SETRESUME1000000というコマンドがデジタルコピーライブラリからデジタルコピーモジュールへ送られてきた場合、レジューム再生位置はコンテンツの先頭から1000秒経過の地点であることを意味する。必要なパラメータのセットが完了し、BD-JアプリケーションからBCManagercheckTicketが呼ばれると、デジタルコピーライブラリは、デジタルコピーモジュールへREQUESTCHECKTICKETコマンドを送る。デジタルコピーモジュールは、REQUESTCHECKTICKETコマンドを受け取ると、セットされたパラメータを元に、コンテンツID,シリアルID及びメディアIDを取り出し、デジタルコピーサーバへこれら3つの値を送って残コピー回数を確認する。デジタルコピーサーバから得られた残コピー回数は、REQUESTCHECKTICKETコマンドの戻り値として、デジタルコピーライブラリへ渡す。続いてBD-JアプリケーションからBCManagermakeCopyが呼ばれると、デジタルコピーライブラリは、デジタルコピーモジュールへREQUESTCOPYコマンドを送り、コピー開始を要求する。デジタルコピーモジュールは、残コピー回数が1回以上残っていることが確認できれば、データコピーを開始し、REQUESTCOPYコマンドの戻り値としてOKを返す。データコピー中にBCProgressremaining、もしくはBCProgresstotalがBD-Jアプリケーションから呼び出されると、デジタルコピーライブラリはGETPROGRESSコマンドをデジタルコピーモジュールに送り、デジタルコピーモジュールから、トータルのコピーバイト数と残りバイト数を得て、BD-Jアプリケーションへその値を返す。データコピーが完了すると、デジタルコピーモジュールはTRANSFERREDに遷移し、非同期イベント用のポートを通じて、デジタルコピーライブラリへTRANSFERREDに遷移したことが通知される。データコピー完了後、BD-JアプリケーションからBCManagerfinalizeBCが呼ばれると、デジタルコピーライブラリは、デジタルコピーモジュールへREQUESTFINALIZEコマンドを送る。デジタルコピーモジュールは、REQUESTFINALIZEコマンドを受け取ると、セットされたパラメータを元に、コンテンツID,シリアルID、メディアID及びMKBを取り出し、デジタルコピーサーバへこれら4つの値を送って復号鍵を得る。デジタルコピーモジュールは、得られた復号鍵をコピー先メディアの保護領域へ書き込み、書き込み処理が完了すると、非同期イベント用のポートを通じて、デジタルコピーライブラリへCOMPLETEDに遷移したことを通知する。その後、デジタルコピーモジュールは、コピー先のメディアの管理ファイルMGR_DATAに、SETRESUMEコマンドにより指定されたレジューム再生位置を上書きする。COMPLETED状態でSETRESUMEコマンドによりレジューム再生位置が指定された場合は、デジタルコピーモジュールは、即座にコピー先のメディアの管理ファイルMGR_DATAに指定されたレジューム再生位置を上書きする。以上がデジタルコピーライブラリとデジタルコピーモジュール間でやり取りされるデジタルコピーソケットプロトコルの内容である。上述したように、デジタルコピーライブラリとデジタルコピーモジュール間でやり取りされるコマンド、イベント通知は全て再生装置内のローカル通信ポートを用いたソケット通信で行われる。残コピー回数の確認及び復号鍵の取得に関しては、デジタルコピーモジュールとデジタルコピーサーバ間でグローバル通信が行われる。図15はデジタルコピープロセスにおけるデータの流れを示す図である。デジタルコピープロセスにおいて扱う主なデータは、シリアルID,コンテンツID,メディアIDMID、MKB、再生時刻情報、レジューム再生位置、携帯端末向け保護コンテンツ、及び復号鍵、である。シリアルIDはBD-Jアプリケーションが指定したものが、デジタルコピーライブラリに渡され、それがソケット通信APIを通じて、デジタルコピーモジュールに渡される。コンテンツIDに関しては、BD-Jアプリケーションが指定したディスク上の保護コンテンツ格納ディレクトリDATAxxディレクトリの配下にあるEMOV_INFファイルから読み取る。メディアID,MKBに関しては、BD-Jアプリケーションが指定したコピー先のリムーバブルメディアのシステム領域からデジタルコピーモジュールが読み取る。再生時刻情報は、BD-Jアプリケーションにより、PSRセットのPSR8またはPSR28から読み取られる。レジューム再生位置は、BD-Jアプリケーションにより、45kHzの再生時刻情報をミリ秒単位に変換して得られる。そしてレジューム再生位置は、デジタルコピーライブラリに渡され、ソケット通信APIを通じて、デジタルコピーモジュールに渡される。デジタルコピーモジュールは、BD-Jアプリケーションからセットされたパラメータを元に得られるシリアルID,コンテンツID,メディアIDMID、MKBをデジタルコピーサーバへ送り、デジタルコピーサーバから復号鍵を得て、その復号鍵をコピー先メディアの保護領域に書き込む。また、デジタルコピーモジュールは、ソケット通信APIを通じて指定されたレジューム再生位置を、コピー先メディアの管理ファイルMGR_DATAに書き込む。以上がデジタルコピープロセスにおいて扱う主なデータの流れである。また、コピー先のメディアの保護領域に書き込まれる復号鍵は例えばデジタルコピーによりコピー先のメディアのユーザ領域にコピーされた携帯端末向け保護コンテンツに含まれる暗号化されたデータを復号するためのキー情報タイトルキーが含まれている。復号鍵は、コピー先のメディアのシステム領域に記録されたMKBを用いて復号できるように暗号化されている。なお、携帯端末において、上述のコピー先のメディアにデジタルコピーがなされた携帯端末向け保護コンテンツを利用する場合には、コピー先のメディアの保護領域に書き込んだ暗号化された復号鍵をコピー先のメディアのシステム領域に記録されたMKBを用いて復号し、復号鍵に含まれるキー情報タイトルキーを取り出し、取り出したキー情報を用いて、携帯端末向け保護コンテンツに含まる暗号化されたデータデジタルストリームを必要に応じて復号して利用するこの場合、復号して再生する。図16はBD-JアプリケーションからネットワークAPIを使って通信を行う経路を示す図である。前述したように、本実施の形態においては、従来のネットワークAPIであるソケット通信APIを端末内部に向けることで、BD-JモジュールのAPIとしては規定されていない端末固有の機能を呼び出すことが可能となる。従来のBD-ROM上BD-JアプリケーションにおけるネットワークAPIの利用方法は、主に外部サーバとの接続に用いられ、特典映像や追加字幕アプリケーションなどの追加コンテンツのダウンロード用として使われてきた。これらのAPIを全く拡張するとなく同一端末間のローカル通信を形成することで、BD-Jアプリケーションから見れば、現在実行中の再生端末がまるでサーバのようにアクセスすることが可能となり、規定のAPIにとらわれない様々な機能を呼び出すことが可能となる。続いて、BD-Jアプリケーションによるレジューム再生位置指定について説明する。図17は、再生時刻情報のコピーの様子を示す図である。本図に示されるように、BD-Jアプリケーションは、デジタルコピーを行う際、再生時刻情報もコピーするかどうかをユーザに問い合わせる。再生時刻情報をコピーすることがユーザに選択された場合、BD-JアプリケーションはPSRセット421から再生時刻情報を読み出し、読み出したパラメータに基づきコピー先のレジューム再生位置をデジタルコピーモジュールに指定する。デジタルコピーモジュールは、BD-Jアプリケーションからの命令に基づき、コピー先のレジューム再生位置を指定したデジタルコピーを行う。再生時刻情報のコピーが選択されない場合、BD-Jアプリケーションは、コピー先のレジューム再生位置をデジタルコピーモジュールに指定しない。デジタルコピーモジュールは、BD-Jアプリケーションからの命令に基づき、コピー先のレジューム再生位置を指定せずデジタルコピーを行う。また、常にコピー先のレジューム再生位置を指定したデジタルコピーを行ってもよい。次に、レジューム再生位置の指定処理について説明する。図18は、BD-Jアプリケーションによるデジタルコピーモジュールへのレジューム再生位置の指定処理を示すフローチャートである。本図に示されるようにまず、BD-Jアプリケーションは、現在の再生時刻情報をPSRセット421のPSR8もしくはバックアップレジスタPSR28から再生時刻情報を取得するステップS201。本編がHDMVモードであれば、レジュームポイントはバックアップレジスタであるPSR28に設定されるため、PSR28の再生時刻情報を取得する。一方、本編がBD-Jモードの場合は、バックアップレジスタが利用されないため、PSR8に格納されている現在の再生時刻情報を取得する。再生時刻情報の取得後、BD-Jアプリケーションは、PSRセット421から取得した再生時刻情報の値をミリ秒単位に変換するステップS202。PSR8またはPSR28から取得される再生時刻情報が45kHzクロック単位であるのに対して、コピー先のMGR_DATAに指定するレジューム再生位置がミリ秒単位であるため、この単位変換処理が必要となる。単位変換処理後、BD-Jアプリケーションは、デジタルコピーモジュールにレジューム再生位置を指定するステップS203デジタルコピーモジュールへのレジューム再生位置の指定には、SETRESUMEコマンドを用いる。SETRESUMEコマンドで指定されたレジューム再生位置は、デジタルコピー実施時に、コピー先メディアの管理ファイルMGR_DATAに再生位置情報として記録される。なお、SETRESUMEコマンドはNOTINIT状態以外であれば、いつでも呼び出すことが可能である。ただし、コピー先SDメモリーカードのMGR_DATAに反映されるタイミングは、復号鍵書込み後、すなわちCOMPLETED状態への遷移時となる。もし、すでにCOMPLETED状態でSETRESUMEコマンドを呼び出した場合は、SETRESUMEコマンドで指定したレジューム再生位置が即座にコピー先メディアのMGR_DATAに反映されることになる。以上が、BD-Jアプリケーションによるデジタルコピーモジュールへのレジューム再生位置の指定処理についての説明である。続いて、上記処理により指定されたレジューム再生位置を用いたデジタルコピー処理について説明する。図19は、デジタルコピーモジュールにおけるデジタルコピー処理を示すフローチャートである。本図に示されるとおり、デジタルコピーモジュール424は、まず挿入されているディスク上に携帯端末向け保護コンテンツが存在するかどうかを確認するステップS301。携帯端末向け保護コンテンツは、ディスク上のルートディレクトリ直下のEMOVEディレクトリの配下に記録されている。デジタルコピーモジュール424は、このEMOVEディレクトリが存在するかどうかで、ディスク上に携帯端末向け保護コンテンツが存在するかどうかを判断する。なお、EMOVEディレクトリの有無で判断するのではなく、他に携帯端末向け保護コンテンツの存在を示すファイルを予め決めておき、そのファイルの有無でディスク上に携帯端末向け保護コンテンツが存在するかどうかを判断してもよい。携帯端末向け保護コンテンツが存在しなかった場合ステップS301,NOは、デジタルコピープロセスを中断する。携帯端末向け保護コンテンツが存在する場合ステップS301,YES、デジタルコピーモジュール424はデジタルコピーソケットコマンド用通信ポートを指定してサーバソケットを作成するステップS302。携帯端末向け保護コンテンツが存在する場合のみサーバソケットを作成する理由は、常にサーバソケットを開いた状態にしておくと、無駄にポートを空けている時間が長くなり、不必要なリソースを消費するということと不正アプリケーションからの攻撃の恐れがあるということから、ポートを開いている時間は極力短時間にするのが望ましい。そのため、ステップS301で携帯端末向け保護コンテンツが存在する場合のみ、サーバソケットを作成し、ポートを開く。ポートを開く時間を極小化する他の方法としては、BD-Jアプリケーション動作中のみすなわち、BD-Jタイトル再生中のみサーバソケットを作成しポートを開く、もしくはBD-Jアプリケーションからポートオープンの命令を受け取ってからポートを開く等が考えられる。ポートオープン命令はポートが閉じられた状態で行われることになるので、BD-Jアプリケーションからポートオープンの命令を受け取るには、ポート通信以外の方法で受け取らなければならない。そのためにAPIを追加するというのであれば、本発明の趣旨と矛盾する本発明の趣旨は互換性維持のため一切のAPI追加を行わないということであるため、APIの追加なしで命令を受け取る必要がある。ポートオープンの命令を示す案としては、例えば、汎用のシステムプロパティAPIを用い、BD-Jアプリケーションから、予め決められたプロパティにある値がセットされたとき、もしくは汎用レジスタの中から、ある一つに対して予め決められた値がセットされたときに、ポートオープンの要求がなされたとみなすことができる。システムプロパティAPIを用いる場合は例えば、digitalcopyportstatusというプロパティ名を用意しておき、そのプロパティ名の示す値にOPENを設定すると、ポートを開くという手段が考えられる。デジタルコピーモジュール424は、ステップS302でサーバソケットを作成し、デジタルコピーソケットコマンド用通信ポートを開くと、そのポートに対してBD-Jアプリケーションデジタルコピーライブラリを含むが接続してくるのを待つステップS303。BD-Jアプリケーションからの接続要求は図14で説明したように、予め決められたコマンド文字列もしくはバイナリデータでも良いをデジタルコピーモジュールとBD-Jアプリケーションデジタルコピーライブラリ間で相互に交換し、お互いが送り合うデータが期待値と一致しているかどうか、相互確認できたところで完了する。当然ながら、お互いが送り合うデータが期待値と一致していなかった場合は、不正とみなし、以後の処理を中断するステップS304。ステップS304でデジタルコピーモジュールはBD-Jアプリケーションとの接続に成功したと判断した場合、次にBD-Jアプリケーションからデジタルコピーのコピー先候補のリスト再生装置がサポートしているコピー先メディア一覧を要求してくるのを待ち、通信ポートを介してその要求を受け取ると、この再生装置において携帯端末向け保護コンテンツのコピー先としてサポートしているメディアの確認を行うステップS305。携帯端末向け保護コンテンツのコピー先としてサポートしているメディアがなければステップS305,NOデジタルコピーを中断する。サポートしているメディアがあればステップS305,YES、そのメディアのリストを同じく通信ポートを介してBD-Jアプリケーションに送信するステップS306。デジタルコピーモジュールはこの時点で空き容量が不足しているかどうかを先行して判断することができるが、ステップS306で返すメディアのリストには空き容量が不足しているメディア及びまだ挿入されていないメディアも含めてBD-Jアプリケーションに渡す。理由は、空き容量が不足しているものを除いて渡してしまうと、再生装置がサポートしていないから、リストにないのか空き容量が不足しているからリストにないのかの判断がつかないためである。再生装置はサポートしているが、空き容量が不足している場合はユーザがそのメディア上の不要ファイルを削除するなどして空き容量を確保するという選択を取ることができるため、ステップS306で返すリストには空き容量が不足しているものも含めるのが望ましい。同様の理由でリストには未挿入メディアも含めておけば、メディアの挿入し忘れをユーザに通知することができる。なお、空き容量が不足している、もしくはメディアが未挿入であると予め判断できたメディアには、空き容量が不足している、もしくはメディアが未挿入であるというマークもしくはフラグをつけてもよい。次に、BD-Jアプリケーションは得られたコピー先候補のリストをユーザに提示し、ユーザが選んだメディアをデジタルコピーモジュールに通知するステップS307。そしてデジタルコピーモジュールは、選択されたメディアにコピーを行うための十分な空き容量があるかどうか、及び残コピー回数が残っているかどうかを確認するステップS308。空き容量がない、もしくは残コピー回数が残っていない場合ステップS308,NO、デジタルコピーモジュールは、BD-Jアプリケーションに容量不足もしくは残コピー回数がない旨を通知する。残コピー回数の確認はデジタルコピーサーバへの問い合わせが必要となる。BD-Jアプリケーションは容量不足の通知をデジタルコピーモジュールから受け取った場合は、再度ステップS307に戻り、別のメディアの選択を行わせるか、ユーザに不要ファイルの削除を促す、もしくは同一種類のメディアでより容量の大きいものに交換する等のメッセージを表示する。なお、ステップS308の空き容量確認は、コピー先メディアのユーザ領域だけでなく、保護領域の空き容量も確認する必要がある。保護領域にすでに他のコンテンツ復号鍵が書き込まれており、復号鍵を追加で書き込む余地がなければ、ユーザ領域に空きがあったとしても、容量不足の通知をBD-Jアプリケーションに通知する必要がある。万一、保護領域の空き容量チェックを怠った場合は、デジタルコピープロセスの最後のステップである復号鍵の書き込み時点で失敗することになり、ユーザにとっては時間のロスとなるばかりか、デジタルコピーサーバから復号鍵のダウンロードが完了しているために最悪の場合コピー権利を無駄に一つ消費してしまうことになりかねない。よって、ステップS308の空き容量確認は、ユーザ領域だけでなく保護領域の空き容量チェックも不可欠である。ステップS308で残コピー回数が残っており、かつコピー先のメディアに十分な空き容量があると判断できればステップS308,YES、デジタルコピーモジュールはディスク上の携帯端末向け保護コンテンツを指定されたメディアへコピーするステップS309。この間、BD-Jアプリケーションはデジタルコピーモジュールにコピーの進捗を問い合わせることで、現在のコピー進捗を把握することができ、コピー進捗状況をユーザに表示することができる。携帯端末向け保護コンテンツのデータコピーが完了すると、デジタルコピーモジュールは携帯端末向け保護コンテンツを復号するための復号鍵をデジタルコピーサーバから取得するステップS310。具体的には、デジタルコピーモジュールは、シリアルID,コンテンツID,メディアID,MKBの4つのデータをネットワークI/Fを介してデジタルコピーサーバに送信する。デジタルコピーサーバは、サーバが持つ秘密鍵を元にコピー先メディアで携帯端末向け保護コンテンツを復号するための復号鍵をサーバ側で作成する。そして、デジタルコピーモジュールは、サーバ側で作成された復号鍵を取得する。その後デジタルコピーモジュールは、コピー先の保護領域に取得した復号鍵の書込みを行うステップS311。なお、デジタルコピーサーバへの接続URLは再生装置が保有する固定のものを利用してもよいし、BD-Jアプリケーションから指定されたURLを用いても良い。デジタルコピーサーバはコンテンツ提供者毎、地域毎に異なるサーバになる可能性がある。よって、BD-Jアプリケーションから通信ポートを介して指定されたURLを使ってデジタルコピーサーバへ接続するのが望ましい。復号鍵の書き込み後、デジタルコピーモジュールは、SETRESUMEコマンドによりBD-Jアプリケーションからレジューム再生位置がセットされているか確認するステップS312。BD-Jアプリからレジューム再生位置が指定されている場合ステップS312,YES、デジタルコピーモジュールは、コピー先のメディアの管理ファイルMGR_DATAに、BD-Jアプリケーションにより指定されたレジューム再生位置を上書きするステップS313。BD-Jアプリケーションからレジューム再生位置が指定されていない場合ステップS312,NO、MGR_DATAの上書きは行わず、デジタルコピー処理を終了する。このように、SETRESUMEコマンドは、NOTINIT状態以外であれば、いつでも呼び出すことが可能であるが、SETRESUMEコマンドにより指定されたレジューム再生位置がコピー先のメディアに反映されるのは、復号鍵書き込み後のCOMPLETED状態への遷移時となる。また、COMPLETED状態でSETRESUMEコマンドを呼び出した場合は、SETRESUMEコマンドで指定したレジューム再生位置が即座にコピー先SDメモリーカードのMGR_DATAに反映されることになる。以上のように本実施形態によれば、ディスク上のBD-Jアプリケーションから、PSRセットから再生時刻情報を読み出し、既存のAPIとしてサポートされている通信用プログラミングインターフェイスを用いてソケット接続を行い、ソケット接続を通じて、読み出したレジューム情報に基づく再生位置をコピー制御部に指定し、携帯端末向けデジタルストリームのコピーの制御を行うので、一切のAPI追加なしで、再生装置で中断した位置を引き継いだ携帯端末向けコンテンツのコピーという特殊機能の制御をBD-Jアプリケーションから制御することができる。実施の形態2実施の形態1では、APIを追加せず、再生装置で中断した位置を引き継いだ携帯端末向けコンテンツのコピーという特殊機能の制御をBD-Jアプリケーションから制御することを可能とする構成について述べたが、ディスク上のアプリケーションが制御できる範囲が拡大するとセキュリティの懸念が生まれてくるため、実施の形態2では、よりセキュリティを強化した実施の形態の変形例について説明する。なお、実施の形態2では前述の実施の形態1と同様の部分は省略し、実施の形態1との変更点のみを記載している。記載していない部分は実施の形態1と同様と捉えてよい。図18は従来におけるアプリケーションの署名検証を示す図である。BD-Jアプリケーション701が正当かどうかの検証は、BD-Jアプリケーションを構成するJARファイル内に記録されたデジタル署名とディスク上のルート証明書を元に署名検証を行うことで成される。具体的にはJARファイル内のデジタル署名をルート証明書を元に復号して得られるハッシュ値と、JARファイルを構成する個々のクラスファイルのハッシュ値が一致しているかどうかを確認し、一致していればJARファイルは正当であり、一致していなければ何らかの不正があったとみなされる。しかしながら、この検証方法では、ルート証明書とJARファイル内のデジタル署名の両方が対になっていれば、検証にパスするので、正当なルート証明書を保有するコンテンツ提供者が不正にJARファイルを作成した場合は、それを検知する術はなく、実施の形態1で述べたように、再生装置の固有機能を開放してしまうと、正当なルート証明書を保有する全てのコンテンツ提供者は自由に再生装置の固有機能を利用できてしまうことになる。図19は、再生装置が保有するデジタル証明書をベースとした署名検証を示す図である。BD-Jアプリケーションを構成するJarファイル内にディスク上のルート証明書をベースとしたデジタル署名に加え、再生装置固有のデジタル証明書をベースとしたデジタル署名も付与する。具体的にはJarファイル内に格納された個々のクラスファイルのハッシュ値がリスト化されたマニフェストファイルMANIFIEST.MFのハッシュ値を、再生装置固有のデジタル証明書に対応した秘密鍵で暗号化した値を再生装置固有のデジタル署名としてJarファイル内に記録する。再生装置側では、従来のルート証明書をベースとした署名検証に加え、再生装置固有の証明書をベースとした署名検証も実施する。図20は、署名検証の結果に応じた機能制限を示す図である。再生装置固有の機能をBD-Jアプリケーションから呼び出すためには、従来のルート証明書をベースとしたデジタル署名だけでは不十分であり、加えて再生装置固有のデジタル署名を用意しなければならない。再生装置固有のデジタル署名は、再生装置固有の証明書に対応した秘密鍵がなければ作成できないため、第三者が不正に再生装置固有のデジタル署名を用意して、再生装置固有の機能を悪用するということを防ぐことができる。しかも、たとえ再生装置固有のデジタル署名検証に失敗したとしても、従来の共通機能の呼び出しに関しては何ら影響を与えることはないので、共通機能部分に関しては互換性を保つことができる。図21は、装置固有機能を利用するため接続要求時における処理のフローチャートである。本フローチャートは実施の形態1におけるステップS303に対応しており、セキュリティ面で強化されている点が異なる。まず、デジタルコピーモジュールは接続要求を行っているBD-Jアプリケーションに装置固有のデジタル署名が付与されているかどうかを判断するステップS401。装置固有のデジタル署名が付与されていなければ、接続要求を拒否し、以降の通信ポートを介した要求には再生装置は何も応じない、もしくはポートを閉じて一切の通信を拒否してもよい。ステップS401で装置固有のデジタル署名が付与されていると判断できた場合、再生装置は各クラスファイルのハッシュ値の取得を行うステップS402。各クラスファイルのハッシュ値はJarファイルのマニフェストファイルに記載されているため、それらのハッシュ値がリスト化されているマニフェストファイルのハッシュ値を計算するだけでもよい。次に再生装置が持つ固有のデジタル証明書を用いて、BD-Jアプリケーションに付与された装置固有のデジタル署名を復号し、デジタル署名に記されたハッシュ値を導き出すステップS403。そして、ステップS402とステップS403で取得されたハッシュ値が一致していれば、デジタル署名は正しく付与されていると判断し、一致していなければ、不正なデジタル署名であると判断するステップS404。不正なデジタル署名と判断した場合、ステップS401でデジタル署名が付与されていなかった場合と同様、以降は通信ポートを介した再生装置固有の機能呼び出しには全く応じないことになる。デジタル署名が正しいと判断すると、暗号化通信路の生成を行うステップS405。具体的には、再生装置が持つデジタル証明書をBD-Jアプリケーション側に送り、BD-Jアプリケーションは送られてきたデジタル証明書で暗号化通信ソケットSSLソケットを作成する。通常のソケット例えばソケットコマンドおよびその応答は暗号化されず非暗号でデータがやりとりされるが、SSLソケットは送られてきたデジタル証明書で暗号化してデータをやりとりすることになる。すなわち、通信ポートを介した再生装置とBD-Jアプリケーション間の相互にやりとりするデータは通信路上において全て暗号化されることになる。なお、SSLソケット作成用に再生装置がBD-Jアプリケーションに送るデジタル証明書サーバ証明書は、装置固有機能を利用するために用いられるデジタル証明書とは別にしてもよい。この場合、再生装置は暗号化通信用と固有機能用の2種類のデジタル証明書を用意する。加えて、再生装置の不正を防ぐために、BD-Jアプリケーション側で再生装置から送られてくるサーバ証明書の正当性を検証してもよい。例えば、無秩序にコピー可能な再生装置が出回る恐れもあるため、BD-Jアプリケーション側でも再生装置の正当性を検証するのが望ましい。再生装置から送られてくるサーバ証明書を検証し、もしそのサーバ証明書がブラックリストに載っていれば、その再生装置ではデジタルコピー等の実施をBD-Jアプリケーション側で止めることができる。以上、再生装置側はBD-Jアプリケーションに付与されたデジタル署名を、BD-Jアプリケーション側は再生装置から送られてくるサーバ証明書を検証し、かつ、通信ポートを介したデータのやりとりはSSLによる暗号化が施されるため、不正なBD-Jアプリケーション、不正な再生装置を排除し、かつ通信路上のデータを不正取得利用とするハッカーからの攻撃を防ぐことができる。実施の形態3実施の形態1~2では、コピー元とコピー先の記録媒体が異なるケースについてデジタルコピーを実施するための構成について述べたが、実施の形態3では、コピー元とコピー先の記録媒体が同一の場合における実施の形態について説明する。なお、実施の形態3では前述の実施の形態1~2と同様の部分は省略し、実施の形態1~2との変更点のみを記載している。記載していない部分は実施の形態1~2と同様と捉えてよい。図24はコピー元とコピー先が同一記録媒体におけるデジタルコピーを示す図である。コピー元とコピー先が同一になるケースの一つとして、対象となる携帯端末向け保護コンテンツがBD-ROM上に存在せず、BD-Jアプリケーションが外部ネットワークを経由してサーバから携帯端末向け保護コンテンツをダウンロードすることが考えられる。しかしながら、図6で示したように、追加コンテンツ領域とビデオコンテンツ領域は分けられているため、BD-Jアプリケーションは直接ビデオコンテンツ領域にダウンロードすることはできない。BD-Jアプリケーションが自由にアクセスできる領域はアプリケーションが属するOrganizationと同一のOrganizationディレクトリ以下のみとなる。このようにアクセス範囲が決められているのは別のOrganizationのコンテンツを勝手に抜き取ったり削除したりすることを防ぐためである。したがって、BD-Jアプリケーションは追加で携帯端末向け保護コンテンツをダウンロードする場合、まずはOrganizationディレクトリ以下に一旦格納する。そして、Organizationディレクトリに格納されたデジタルコピーコンテンツを、同一端末間ローカル通信を介して端末固有機能を呼び出し、ビデオコンテンツ領域に移動させるという手順となる。図25はコピー元とコピー先が同一記録媒体におけるデジタルコピーに対応したフローチャートである。コピー元とコピー先が同一記録媒体となるデジタルコピーにおいては、ステップS301で行っていた、挿入されているディスク上に携帯端末向け保護コンテンツが存在するかどうかを確認するステップは不要となる。なぜならば、ディスク上に携帯端末向け保護コンテンツが存在しなくても対象となる携帯端末向け保護コンテンツがローカルストレージ上に記録されている可能性があるためである。本実施の形態においてポート開放時間を極小化する場合は、携帯端末向け保護コンテンツが存在するかどうかではなく、実施の形態1でも述べたようにBD-Jアプリケーション動作中のみすなわち、BD-Jタイトル再生中のみポートを開放する、もしくはBD-Jアプリケーションからポート開放の命令を受け取ってから開放する等の処理を行うことになる。ステップS304においてBD-Jアプリケーションとの接続に成功した場合、デジタルコピーモジュールは次にBD-Jアプリケーションからコピー対象となる携帯端末向け保護コンテンツの格納位置が指定されるのを待つステップS501。コピー対象となる携帯端末向け保護コンテンツの格納位置は、メディアの種類を含んだ絶対パスとなる。例えばBD-ROM上であれば、指定される絶対パスはmntbdromEMOVEDATA01等になり、ローカルストレージSDメモリカード等上であればmntsdcardBUDA081A24ED12345ABCEMOVEDATA01等になる。この場合、mntbdromはBDROMメディアのマウントポイントに当たり、mntsdcardはSDメモリカードのマウントポイントに当たる。すなわち、BD-Jアプリケーションより指定されるファイルパス情報の中にメディアのマウントポイントを含めることで、デジタルコピーモジュールはコピー対象の携帯端末向け保護コンテンツがどのメディア上にあるのか判断することができる。ステップS501で取得したコピー対象の位置情報、及びその位置情報から判断できるメディアの種類は、ステップS307において選択されたメディアの種類との比較に用いるステップS502。ステップS501で指定されたメディアすなわちコピー元のメディアとステップS307で指定されたメディアすなわちコピー先のメディアが同一でなければ、ステップS308で残コピー回数及び空き容量の確認を行い、同一の場合は空き容量の確認をスキップして残コピー回数の確認のみ行うステップS503。デジタルコピーモジュールはステップS503で残コピー回数が残っていると判断した場合、ステップS501で指定されたコピー対象を、同一メディア内のビデオ領域にムーブするステップS504。同一メディア内のムーブの場合、実際のデータコピーは不要であり、ファイルの管理情報書き換えだけで済むため、短時間で処理が終わる。そのため、BD-Jアプリケーションによるユーザへの進捗表示はスキップしてもよい。なお、本実施例では、同一メディアにおけるデジタルコピーについては、不必要にメディア容量を消費しない、かつデータコピーを短時間で終えることができるという観点からムーブを前提に記載したが、十分な空き容量が存在する場合、またはコピー対象となるコンテンツのサイズが小さい場合は、元となるファイルを残してコピーを行っても良い。以上の構成によれば、BD-ROM上に予め携帯端末向け保護コンテンツが記録されていなくとも、追加で携帯端末向け保護コンテンツをダウンロードし、かつデジタルコピー処理プロセスの中でコンテンツのムーブを行うことで、デジタルコピーを実施することが可能となる。また、ダウンロードした先とデジタルコピーのコピー先が同一メディアの場合は、不必要に容量を消費せず、かつコピー自体を高速に行うことができる。実施の形態4本実施形態では、実施の形態1で述べた続き視聴レジューム再生についてさらに改良を加えた実施の形態について説明する。なお、実施の形態4では前述の実施の形態1~3と同様の部分は省略し、実施の形態1~3との変更点のみを記載している。記載していない部分は実施の形態1~3と同様と捉えてよい。図26はオリジナル本編コンテンツとデジタルコピーコンテンツの再生時間軸を示す図である。図26で示すデジタルコピーコンテンツはオリジナル本編コンテンツには存在する一部のシーンが削除され削除シーン1、2、かつ追加でいくつかのシーンが加えられている追加シーン1、2。このように実際にデジタルコピーされるコンテンツは、オリジナルコンテンツと全く内容が同じであるとは限らない。例えば、コンテンツ冒頭の新作紹介の内容が、オリジナルコンテンツとデジタルコピーコンテンツで異なっていたり、ディレクターズカットシーンがデジタルコピーコンテンツでは省かれている等が考えられる。実施の形態4では、このようにオリジナルとデジタルコピーコンテンツで内容が異なる場合でも、レジューム再生を可能にする構成について述べる。図27は、実施の形態4におけるBD-ROM上のディレクトリ、ファイル構造を示す図である。前述の図2で述べた構成との違いは、メディアタイムオフセットテーブルが新たに加えられた点である。メディアタイムオフセットテーブルはEMOVEディレクトリ配下のDATAxxディレクトリxxは2桁の可変数字の中に存在し、デジタルコピーコンテンツに対し、オリジナルコンテンツから削除されたシーン一覧とそれぞれの削除区間及びデジタルコピーコンテンツに新たに追加されたシーン一覧とそれぞれの追加区間が記されている。削除区間として記載する時刻はオリジナルコンテンツの時間軸上の時刻を、追加区間として記載する時刻はデジタルコピーコンテンツの時間軸上の時刻を記載する。図27の例では、オリジナルコンテンツの時刻t1からt2まで削除シーン1と、時刻t3からt4まで削除シーン2が、デジタルコピーコンテンツでは削除されていることになり、デジタルコピーコンテンツの時刻t0からt1まで追加シーン1と時刻t4からt5まで追加シーン2が、デジタルコピーコンテンツで新たに追加されたシーンとなる。図28は、オリジナルコンテンツ上のレジューム再生位置をデジタルコピーコンテンツの時間軸上に変換する処理を示す図である。オリジナルコンテンツ上のレジューム再生位置をtrとすると、デジタルコピーコンテンツ上のレジューム再生位置trは、前述のメディアタイムオフセットテーブルに記載されている削除シーン区間と追加シーン区間を加減算することで得られる。具体的にはtrより前に設定されている削除シーンの総時間をtrから減算し、減算されたtrより前に設定されている追加シーンの総時間を加算することでtrが導かれる。図29はレジューム再生位置変換処理のフローチャートである。まず、レジューム再生用に割り当てられている再生装置内のレジスタから、オリジナルコンテンツのレジューム再生位置trを取得するステップS601。BD-Jアプリケーションから、オリジナルコンテンツ上のレジューム再生位置指定が事前にあった場合、レジスタの値を使う必要はなく、BD-Jアプリケーションから受け取った値をtrとする。次にオリジナルコンテンツ上のレジューム再生位置trが削除シーン内に設定されているかどうかを判断しステップS602、削除シーン内の値であれば、削除シーンの開始位置をtrに代入するステップS603。例えば、ステップS601で得られたtrが2000秒として、メディアタイムオフセットテーブルに記載されている削除シーンの一つに1900秒~2100秒の削除区間の削除シーンが含まれていたとした場合、trに設定されている位置は1900秒~2100秒の削除区間内にあるため、ステップS603の処理においてtrを削除区間の先頭地点である1900秒に再設定する。このようにtrを削除区間外の値に再設定する理由は、レジューム再生位置が削除区間内にあると、デジタルコピーコンテンツ上では、そのレジューム再生位置は存在しないことになり、以降の変換処理ができなくなるためである。選択肢の一つとして、レジューム再生位置が削除区間内に設定されている場合は、レジューム無効として持ち出し視聴時のレジューム再生は行わずに先頭から再生するということも可能である。本フローチャートでは、可能な限りレジューム再生を行う処理になっており、削除区間内にレジューム再生位置が設定されている場合は、ステップS603においてデジタルコピーコンテンツ上で有効な範囲に再設定するという処理を行っている。次にステップS601で得られたtr、もしくはステップS603で再設定されたtrを変換後のレジューム再生位置候補trに代入するステップS604。この時点では、変換後のレジューム再生位置trはまだ確定ではない。ステップS604完了後、trより前に削除シーンが存在するかどうかを確認する。例えば、trの値が1900秒で、この位置より前の削除区間として、0~100秒、1000~1200秒の2区間が存在した場合、2区間の総和300秒をtrから減算するステップS606。ステップS604でtrの値をtrに代入しているので、減算前のtrの値がtrと同じ1900秒だとすると、減算後のtrの値は1600秒となる。次に、trより前に追加シーンが存在するかを確認するステップS607。trが、ある追加シーンXの範囲内に位置していた場合は、その追加シーンXはtrよりも前に存在するとみなす。例えば、trの値が1600秒で、追加シーンとして0~200秒、1500~1700秒の2区間が存在する場合は、2区間ともtrよりも前に追加シーンが存在するとみなす。ステップS607において、trよりも前に追加シーンが存在すると判定した場合、それらの追加シーン区間の総和をtrに加算するステップS608。前述の例と同じく、追加シーンとして0~200秒、1500~1700秒の2区間が存在する場合、2区間の総和400秒をtrに加算する。加算後のtrは2000秒となる。ステップS608完了後、もう一度trと追加シーンの比較を行い、trより前にまだ加算されていない追加シーンが存在するかどうかを確認するステップS609。例えば、trより前に、追加シーンとして0~200秒、1500~1700秒、1900~2100秒の3区間が存在したとする。なおステップS609においても、ステップS607と同様にtrが、ある追加シーンXの範囲内に位置していた場合は、その追加シーンXはtrよりも前に存在するとみなす。つまり1900~2100秒は、2000秒として設定されているtrより前に追加シーンが存在すると判定される。0~200秒、1500~1700秒、1900~2100秒の3区間の内、0~200秒、1500~1700秒の追加シーンはすでに加算済みであるため、ここでの加算は1900~2100秒の追加シーンが対象となり、もう一度ステップS608による加算を実施し、trの値は20002200秒となる。ステップS608、S609を繰り返し、trよりも前に未加算の追加シーンがないと判定された時点で、その時点におけるtrの値を変換後のレジューム再生位置として採用する。図30はレジューム再生位置変換を行っている様子を示す図である。レジューム再生位置変換処理は、図30のようにBD-Jアプリケーション内で変換処理を行うパターンと図30のように再生装置内で変換処理を行うパターンが存在する。いずれの場合も、再生装置内のPSRセットに格納されている値からレジューム再生位置trを割り出し、図29で示したフローチャートに従って、変換後のレジューム再生位置trを算出することが可能である。まず、BD-Jアプリケーション内でレジューム再生位置の変換処理を行う場合について説明する。図31は、BD-Jアプリケーション内でレジューム再生位置変換処理を行うフローチャートである。本図に示されるようにまず、BD-Jアプリケーションは、現在の再生時刻情報をPSRセット421のPSR8もしくはバックアップレジスタPSR28から再生時刻情報を取得するステップS701。本編がHDMVモードであれば、レジュームポイントはバックアップレジスタであるPSR28に設定されるため、PSR28の再生時刻情報を取得する。一方、本編がBD-Jモードの場合は、バックアップレジスタが利用されないため、PSR8に格納されている現在の再生時刻情報を取得する。再生時刻情報の取得後、BD-Jアプリケーションは、PSRセット421から取得した再生時刻情報の値をミリ秒単位に変換するステップS702。PSR8またはPSR28から取得される再生時刻情報が45kHzクロック単位であるのに対して、コピー先のMGR_DATAに指定するレジューム再生位置がミリ秒単位であるため、この単位変換処理が必要となる。BD-Jアプリケーションは、ステップS702で得られた時刻を、オリジナルコンテンツ上のレジューム再生位置とし、変数trにセットするステップS703。次にBD-Jアプリケーションは、ファイルI/Oモジュール705を用い、ディスク上にメディアタイムオフセットテーブルが存在するかどうかの確認を行うステップS704。メディアタイムオフセットテーブルが存在しない場合ステップS704,NO、BD-Jアプリケーションはオリジナルコンテンツ上のレジューム再生位置trをそのままデジタルコピーコンテンツ上のレジューム再生位置として指定するステップS705。レジューム再生位置の指定にはソケットコマンドであるSETRESUMEコマンドを用いる。メディアタイムオフセットテーブルが存在すると判断した場合ステップS704,YES、BD-Jアプリケーションはメディアタイムオフセットテーブルを読み込むステップS706。そしてBD-Jアプリケーションは、読み込んだメディアタイムオフセットを用いてオリジナルコンテンツのレジューム再生位置trをデジタルコピーコンテンツのレジューム再生位置t’rに変換するステップS707。ステップS707では、図29で示したフローチャートに基づきレジューム再生位置の変換処理を行い、デジタルコピーコンテンツのレジューム再生位置t’rを導き出す。そして、BD-Jアプリケーションは、ステップS707で算出されたレジューム再生位置t‘rを、SETRESUMEコマンドを用いデジタルコピーコンテンツ上のレジューム再生位置として指定するステップS708。なお、レジューム再生位置の指定の際、指定の時刻がオリジナルコンテンツの時間軸上かレジューム再生位置の変換を行ったデジタルコピーコンテンツの時間軸上か再生装置側で判断ができるよう、再生時刻の指定には、どちらの時間軸上かを示すパラメータを用意してもよい。例えば、以下のように時刻指定と共に時間軸がオリジナルコンテンツかデジタルコピーコンテンツかどちらか選択できるようデジタルコピーライブラリとデジタルコピーモジュール間のプロトコルを決めておく。SETRESUMEレジューム再生時刻ORIGINALDIGITALCOPY上記プロトコルに従い、SETRESUME1000000ORIGINALというコマンドがデジタルコピーライブラリからデジタルコピーモジュールへ送られてきた場合、レジューム指定時刻はオリジナルコンテンツの時間軸上で1000秒の地点であることを意味し、SETRESUME1000000DIGITALCOPYというコマンドがデジタルコピーライブラリからデジタルコピーモジュールへ送られてきた場合、レジューム指定時刻はデジタルコピーコンテンツの時間軸上で1000秒の地点であることを意味する。すなわち、再生装置は時刻と共に指定されるパラメータの値を確認し、指定の時刻がオリジナルコンテンツの時間軸上か、デジタルコピーコンテンツの時間軸上かを判断することができる。以上が、BD-Jアプリケーション内でレジューム再生位置の変換処理を行う場合について説明である。続いて、デジタルコピーモジュールでレジューム再生位置の変換処理を行う場合について説明する。図32は、デジタルコピーモジュールでレジューム再生位置の変換処理を行うフローチャートである。本図に示されるとおり、デジタルコピーモジュールはまず、BD-Jアプリケーションからレジューム再生位置の指定があるかどうかを判断するスタップS801。BD-Jアプリケーションからのレジューム再生位置の指定には、SETRESUMEコマンドが用いられる。BD-Jアプリケーションからのレジューム再生位置の指定がない場合ステップS801,NO、デジタルコピーモジュールは、現在の再生時刻情報をPSRセット421のPSR8もしくはバックアップレジスタPSR28から再生時刻情報を取得するステップS802。再生時刻情報の取得後、デジタルコピーモジュールは、PSRセット421から取得した再生時刻情報の値をミリ秒単位に変換するステップS803。そしてデジタルコピーモジュールは、ステップS803で得られた時刻を、オリジナルコンテンツ上のレジューム再生位置とし、変数trにセットするステップS804。上記のステップS803、S804の処理は、デジタルコピーモジュールが行う点においてステップS702、S703の処理と異なる。BD-Jアプリケーションからのレジューム再生位置の指定がある場合ステップS801,YES、その指定がオリジナルコンテンツの時間軸に基づくものか、デジタルコピーコンテンツの時間軸に基づくものかを判断するステップS805。SETRESUMEORIGINALというコマンドがデジタルコピーライブラリからデジタルコピーモジュールへ送られてきた場合、指定のレジューム再生位置はオリジナルコンテンツの時間軸に基づくものである。SETRESUMEDIGITALCOPYというコマンドがデジタルコピーライブラリからデジタルコピーモジュールへ送られてきた場合、指定のレジューム再生位置はデジタルコピーコンテンツの時間軸に基づくものである。指定されたレジューム再生位置がオリジナルコンテンツの時間軸上である場合ステップS805,NO、指定されたレジューム再生位置をオリジナルコンテンツ上のレジューム再生位置を示す変数trにセットするステップS806。指定されたレジューム再生位置がデジタルコピーコンテンツの時間軸上である場合ステップS805,YES、指定されたレジューム再生位置をデジタルコピーコンテンツ上のレジューム再生位置を示す変数trとするステップS807。ステップS804、もしくはステップS806により、trにオリジナルコンテンツ上のレジューム再生位置をセットした後、BD-Jアプリケーションからメディアタイムオフセットテーブルの指定があるかどうかを確認するステップS808。例えば、SETOFFSETTABLESDROOTBUDA081a24ed12345abcMyMTOxml等、デジタルコピー通信ポートを介して、事前にメディアタイムオフセットテーブルの指定が行われていれば、指定されたメディアタイムオフセットテーブルを読み込む。指定するメディアタイムオフセットテーブルの位置は、ディスク上、ローカルストレージ上もしくはJARファイル内のいずれでもよい。BD-Jアプリケーションからメディアタイムオフセットテーブルの指定がある場合ステップS808,YES、デジタルコピーモジュールは指定されたメディアタイムオフセットテーブルの読み込みを行うステップS809。BD-Jアプリケーションからメディアタイムオフセットテーブルの指定がない場合ステップS808,NO、対象となるメディアタイムオフセットテーブルがディスク上に存在するかどうか確認するステップS810。具体的には、BD-Jアプリケーションがコピー元として指定したディレクトリにメディアタイムオフセットテーブルが存在するかどうかを確認する。例えば、BD-Jアプリケーションから、SETSRCLOCATIONmntbdromEMOVEDATA01として、BD-ROM上のルート直下から、EMOVEDATA01の位置をコピー元として指定していた場合、EMOVEDATA01ディレクトリ以下にメディアタイムオフセットテーブルMTOXMLが存在するかどうかを確認する。メディアタイムオフセットテーブルが指定ディレクトリに存在する場合ステップS810,YES、そのメディアタイムオフセットテーブルを読み込むステップS811。対象となるメディアタイムオフセットテーブルがディスク上に存在しない場合ステップS810,NO、レジューム再生位置変更不要として、オリジナルコンテンツのレジューム再生位置trをそのままデジタルコピーコンテンツのレジューム再生位置として指定するステップS812。ステップS809、またはステップS813のメディアタイムオフセットの読み込み後、読み込んだメディアタイムオフセットを用いてオリジナルコンテンツのレジューム再生位置trをデジタルコピーコンテンツのレジューム再生位置trに変換するステップS813。ステップS813では、図29で示したフローチャートに基づきレジューム再生位置の変換処理を行い、デジタルコピーコンテンツのレジューム再生位置trを導き出す。ステップS807、またはステップS813でtrを導出した後、デジタルコピーモジュールは、trをレジューム再生位置として指定するステップS814。以上が、デジタルコピーモジュールによるレジューム再生位置の変換処理についての説明である。以上の構成により、オリジナルコンテンツとデジタルコピーコンテンツ間でシーン削除追加が行われていたとしても、レジューム再生位置変換を行うことで、据え置きの再生装置で途中まで再生していた地点と同等の地点からデジタルコピー後に携帯端末で続き視聴ができるようになる。実施の形態5本実施形態では、実施の形態1及び実施の形態4で述べた続き視聴レジューム再生についての変形例であり、実施の形態1及び実施の形態4では、据え置き再生装置から持ち出し視聴を行うときのレジューム再生について述べたが、本実施形態では、持ち出し視聴から据え置き再生装置での視聴に戻したときに、続き視聴を行う実施の形態について説明する。なお、実施の形態6では前述の実施の形態1~4と同様の部分は省略し、実施の形態1~4との変更点のみを記載している。記載していない部分は実施の形態1~4と同様と捉えてよい。図33は持ち出し視聴から据え置き視聴に戻したときに続き視聴を行う様子を示す図である。本実施の形態では、外出中はデジタルコピーにより携帯端末で持ち出し視聴を行い、帰宅後は自宅の据え置き再生装置で続きを視聴するというユースケースを実現する実施の形態について述べる。図34は実施の形態5におけるリムーバブルメディアのファイル構成を示す図である。本実施の形態では、リムーバブルメディアにデジタルコピーコンテンツをコピーする際、加えてBDレジューム情報の書込みを行う。BDレジューム情報は、バックアップレジスタPSR20からPSR32に格納されている値及びレジューム対象タイトルのモードが記載されているレジューム状態格納ファイルBDRESUMEBDMと、BD-ROMのBCA内にPMSNと共に記録されているボリュームIDを記録したボリュームID格納ファイルVOLUMEIDTXT、及び据え置き再生装置からデジタルコピーで持ち出し視聴を行う際に利用したメディアタイムオフセットテーブルMTOXMLの3種類のファイルで構成されている。PMSNは物理的なシリアル番号を示すのに対し、ボリュームIDは論理的なシリアル番号を示す。すなわち、PMSNはBD-ROMに記録されている内容が同じでも、記録媒体毎に異なる値が割り振られるのに対し、ボリュームIDは記録されている内容が同じであれば、記録媒体が異なっても同じ値が割り振られる。レジューム状態格納ファイルは、必ずしもバックアップレジスタの値をそのまま記録する必要はなく、BD-Jモード等でBD-Jアプリケーションがレジューム状態を管理している場合、バックアップレジスタのパラメータに相当する値を、再生装置がBD-Jアプリケーションから受け取ることで、レジューム状態格納ファイルの作成を行うことになる。図35はレジューム状態格納ファイルに格納されるパラメータ一覧と値の一例を示している。格納される内容はバックアップレジスタPSR20からPSR32のパラメータに加え、タイトルのモードが含まれている。レジューム対象のタイトルがHDMVモードであれば、バックアップレジスタの内容がそのまま格納されることになり、レジューム対象のタイトルがBD-Jモードであれば、BD-Jアプリケーションから、レジューム状態格納ファイルに格納すべき値を取得することになる。メディアタイムオフセットテーブルは、据え置き再生装置から持ち出し視聴を行う際のデジタルコピーに利用したものが記録され、もしメディアタイムオフセットテーブルをデジタルコピー時に利用していなければ、MTOXMLは作成されないことになる。これらレジューム状態格納ファイルとボリュームID格納ファイル、及びメディアタイムオフセットテーブルはBDレジューム情報として、デジタルコピーコンテンツが格納されるディレクトリと対になるディレクトリ位置にデータコピー時に書き込まれる。具体的には、プログラムディレクトリ名が同じになる位置に書き込まれることになり、例えばデジタルコピーコンテンツがmntsdcardSDVIDEOPRG001に格納される場合は、プログラムディレクトリ名はPRG001なので、SDVIDEOディレクトリとは異なるディレクトリmntsdcardPRIVATEDCOPY等に同じプログラムディレクトリ名PRG001が作られ、そのディレクトリの中にBDレジューム情報が格納される。図36はBD-ROM再生要求受付からAV再生ライブラリによる再生が開始されるまでのフローチャートである。まず、BD-ROM再生要求を受け付けると、リムーバブルメディアが挿入済みかどうかを確認するステップS901。リムーバブルメディアが挿入されていなければ、通常再生を開始する。ステップS901でリムーバブルメディアが挿入されていることを確認すると、続いて現在挿入中のBD-ROMに対応するBDレジューム情報がリムーバブルメディア上に存在するかを確認するステップS902。具体的には、現在挿入中のBD-ROMのボリュームIDに一致するボリュームIDが記載されているBDレジューム情報をリムーバブルメディア上から検索する。ボリュームIDが一致するBDレジューム情報が見つからなかった場合は、通常再生を開始する。ステップS902において、現在挿入中のBD-ROMと一致するボリュームIDが記載されたBDレジューム情報があると判断した場合、そのBDレジューム情報の中にメディアタイムオフセットテーブルが存在するかどうかを確認するステップS903。ステップS903においてメディアタイムオフセットテーブルが存在すると判断した場合は、BDレジューム再生位置変換を行うステップS904。ステップS904におけるBDレジューム再生位置変換後、もしくはステップS903においてメディアタイムオフセットテーブルが存在しないという判断の後、BDレジューム情報に含まれるレジューム状態格納ファイルに記載されているタイトルモードを確認し、レジューム対象タイトルがHDMVモードかBD-Jモードかの判断を行うステップS905。ステップS905において、レジューム対象タイトルがHDMVモードであると判断した場合、BDレジューム情報のレジューム状態格納ファイルに記載されている内容をレジスタPSR0からPSR12にセットし、かつ、ステップS904においてレジューム再生位置が変換されていれば、変換されたレジューム再生位置をPSR8にセットするステップS906。レジスタへのセットが完了した後、HDMVタイトルのレジューム再生を開始する。ステップS905において、レジューム対象タイトルがBD-Jモードであると判断した場合、BDレジューム情報のレジューム状態格納ファイルに記載されている内容、及びステップS904においてレジューム再生位置が変換されていれば変換されたレジューム再生位置をBD-Jアプリケーションに通知し、再生装置から受け取ったレジューム情報を元にBD-Jアプリケーション側でレジューム再生の開始を行うステップS907。図37は、図36のフローチャートで述べたステップS904のBDレジューム再生位置変換のフローチャートである。基本的には、図29で述べたレジューム再生位置変換処理とは逆の処理を行うことで、デジタルコピーコンテンツ上のレジューム再生位置trから、オリジナルコンテンツ上のレジューム再生位置trを導き出すことが可能である。まず、現在挿入中のBD-ROMと一致するボリュームIDが記載されたBDレジューム情報に対応するデジタルコピーコンテンツを特定し、特定されたデジタルコピーコンテンツのシナリオファイルから、デジタルコピーコンテンツ上のレジューム再生位置trを取得するステップS1001。デジタルコピーコンテンツの特定は、BDレジューム情報が格納されているディレクトリ名と同じプログラムディレクトリ名のデジタルコピーコンテンツを探し出すことで成される。例えば、BDレジューム情報が格納されているディレクトリが、mntsdcardPRIVATEDCOPYPRG001であれば、PRG001というプログラムディレクトリ名のデジタルコピーコンテンツmntsdcardSDVIDEOPRG001が対応するデジタルコピーコンテンツとなる。次にデジタルコピーコンテンツ上のレジューム再生位置trが、メディアタイムオフセットテーブルに列挙されている追加シーン内に設定されているかどうかを判断しステップS1002、追加シーン内の値であれば、追加シーンの開始位置をtrに代入するステップS1003。例えば、ステップS1001で得られたtrが2000秒として、メディアタイムオフセットテーブルに記載されている追加シーンの一つに1900秒~2100秒の追加区間の追加シーンが含まれていたとした場合、trに設定されている位置は1900秒~2100秒の追加区間内にあるため、ステップS1003の処理においてtrを追加区間の先頭地点である1900秒に再設定する。このようにtrを追加区間外の値に再設定する理由は、レジューム再生位置が追加区間内にあると、オリジナルコンテンツ上では、そのレジューム再生位置は存在しないことになり、以降の変換処理ができなくなるためである。選択肢の一つとして、レジューム再生位置が追加区間内に設定されている場合は、レジューム無効として据え置き視聴に戻ったときのレジューム再生は行わずに先頭から再生するということも可能である。本フローチャートでは、可能な限りレジューム再生を行う処理になっており、追加区間内にレジューム再生位置が設定されている場合は、ステップS1003においてオリジナルコンテンツ上で有効な範囲に再設定するという処理を行っている。次にステップS1001で得られたtr、もしくはステップS1003で再設定されたtrを変換後のレジューム再生位置候補trに代入するステップS1004。この時点では、変換後のレジューム再生位置trはまだ確定ではない。ステップS1004完了後、trより前に追加シーンが存在するかどうかを確認する。例えば、trの値が1900秒で、この位置より前の追加区間として、0~100秒、1000~1200秒の2区間が存在した場合、2区間の総和300秒をtrから減算するステップS1006。ステップS1004でtrの値をtrに代入しているので、減算前のtrの値がtrと同じ1900秒だとすると、減算後のtrの値は1600秒となる。次に、trより前に削除シーンが存在するかを確認するステップS1007。trが、ある削除シーンXの範囲内に位置していた場合は、その削除シーンXはtrよりも前に存在するとみなす。例えば、trの値が1600秒で、削除シーンとして0~200秒、1500~1700秒の2区間が存在する場合は、2区間ともtrよりも前に削除シーンが存在するとみなす。ステップS1007において、trよりも前に削除シーンが存在すると判定された場合、それらの削除シーン区間の総和をtrに加算するステップS1008。前述の例と同じく、削除シーンとして0~200秒、1500~1700秒の2区間が存在する場合、2区間の総和400秒をtrに加算する。加算後のtrは2000秒となる。ステップS1008完了後、もう一度trと削除シーンの比較を行い、trより前にまだ加算されていない削除シーンが存在するかどうかを確認するステップS1009。例えば、trより前に、削除シーンとして0~200秒、1500~1700秒、1900~2100秒の3区間が存在したとする。なおステップS1009においても、ステップS1007と同様にtrが、ある削除シーンXの範囲内に位置していた場合は、その削除シーンXはtrよりも前に存在するとみなす。つまり1900~2100秒は、2000秒として設定されているtrより前に削除シーンが存在すると判定される。0~200秒、1500~1700秒、1900~2100秒の3区間の内、0~200秒、1500~1700秒の削除シーンはすでに加算済みであるため、ここでの加算は1900~2100秒の削除シーンが対象となり、もう一度ステップS1008による加算を実施し、trの値は20002200秒となる。ステップS1008、S1009を繰り返し、trよりも前に未加算の削除シーンがないと判定された時点で、その時点におけるtrの値を変換後のレジューム再生位置として採用する。以上の構成により、デジタルコピーにより、据え置き再生装置での視聴から持ち出し視聴へ移行したときのみならず、持ち出し視聴から据え置き再生装置での視聴に戻したときにも、続き視聴レジューム再生が可能となる。実施の形態6本実施形態では、多言語に対応したデジタルコピーについての実施の形態について説明する。なお、実施の形態6では前述の実施の形態1~5と同様の部分は省略し、実施の形態1~5との変更点のみを記載している。記載していない部分は実施の形態1~5と同様と捉えてよい。図38は実施の形態6におけるBD-ROMのファイル構成を示す図である。DATA01ディレクトリには、英語音声、日本語字幕のデジタルコピーコンテンツが格納されており、DATA02ディレクトリには、日本語音声、字幕なしのデジタルコピーコンテンツが格納されている。EMOVEディレクトリ直下に存在するLANGXMLはそれぞれのデジタルコピーコンテンツがどの言語に対応したものであるかを示す言語テーブルが記録されたファイルである。図39は言語テーブルの一例を示す図である。言語テーブルには、デジタルコピーコンテンツの格納位置と、それぞれのコンテンツがどの言語に対応しているかの情報が記されている。格納位置は、BD-ROM上以外にもローカルストレージ上のディレクトリを指し示すことができる。BD-ROM上のディレクトリを指し示すときは、BD-ROMのルートディレクトリからの相対パスを、ローカルストレージ上のディレクトリを指し示すときは、CertIDディレクトリからの相対パスを記載する。記載されている相対パスがBD-ROM上のものか、ローカルストレージ上のものか判断ができるよう、それぞれの相対パスには加えてストレージの種類BDorLSも記載する。言語情報には、それぞれのコンテンツが含んでいる音声及び字幕言語の種類が記されている。図40は、追加言語のデジタルコピーコンテンツをローカルストレージにダウンロードする様子を示す図である。最初からBD-ROM上に多数のデジタルコピーコンテンツを格納するとなると、BD-ROMの容量をデジタルコピーコンテンツが占める割合が多くなってしまい、オリジナルコンテンツに避ける割合が少なくなってしまう。オリジナルコンテンツに避ける割合が少なくなると、ストリームのビットレートを下げる等、コンテンツの品質低下を招いてしまう恐れがある。そのため、BD-ROM上には最低限の言語に対応したデジタルコピーコンテンツを置いておき、必要であれば追加でデジタルコピーコンテンツをダウンロードする形態が望ましい。追加でデジタルコピーコンテンツをダウンロードするときは、加えて更新版言語テーブルもダウンロードする。例えば、BD-ROM上には英語版と日本語版のデジタルコピーコンテンツが存在し、ローカルストレージに新たに韓国語版をダウンロードする場合、韓国語版を加えた更新版言語テーブルをダウンロードする。図41は、本実施の形態における多言語に対応したデジタルコピーの様子を示す図である。本図に示されるように、デジタルコピーモジュールは、BD-ROMまたはリムーバブルメディアの追加コンテンツ領域に格納されたデジタルコピーコンテンツを、リムーバブルメディアのビデオ領域にコピーする。コピー対象となる言語のコンテンツは、BD-Jアプリケーションまたはデジタルコピーモジュールが、PSRセット421に格納されている再生状態を示すシステムパラメータと言語テーブルに基づき選択する。具体的には、音声ストリーム用言語コードを示すPSR16、字幕ストリーム用言語コードを示すPSR17、メニュー用言語コードを示すPSR18を読み出し、各言語コードに対応する言語のコンテンツを、言語テーブルを参照して選択する。図42は、本実施の形態におけるコピー対象のコンテンツの選択の様子を示す図である。コピー対象のコンテンツの選択は、図42aに示すように、BD-Jアプリケーション内で言語テーブルおよびPSRセット421を参照して、所望の言語に対応したコンテンツの格納位置を特定し、デジタルコピーモジュールにSETSRCLOCATIONコマンドを用いてコンテンツの格納位置を指定するパターンと、図42bに示すように、BD-Jアプリケーションで、デジタルコピーモジュールにデジタルコピーに利用する言語テーブルを指定し、デジタルコピーモジュールが指定された言語テーブルとPSRセット421を参照して、所望の言語に対応したコンテンツの格納位置を特定し、デジタルコピーを行うパターンが存在する。BD-Jアプリケーションによるデジタルコピーモジュールに対する言語テーブルの指定には、例えば以下のようなコマンドを用いる。SETLANGTABLEmntsdcardBUDA081A24ED12345ABCDIGITALCOPYNEWLANGXML上記コードは、SDカード上のBUDA081A24ED12345ABCDIGITALCOPYNEWLANGXMLに記録されている言語テーブルを用いてデジタルコピーを行うよう要求する命令となる。デジタルコピーモジュールは、指定された言語テーブルと、PSRセット421に格納されている言語設定を比較し、コピーすべきデジタルコピーコンテンツの割り出しを行う。例えばPSRセット421に格納されている言語設定が英語であれば、英語版コンテンツを、言語設定が日本語であれば、日本語版コンテンツをデジタルコピー対象としてコピーすることとなる。まず、図42aに示した多言語に対応したデジタルコピーのパターンについて説明する。図43は、BD-Jアプリケーションによるコピー対象のコンテンツ選択のフローチャートである。BD-Jアプリケーション側においてコピーすべきデジタルコピーコンテンツの選択を行う際は、まずBD-JアプリケーションはファイルI/Oモジュール705を用い、言語テーブルが存在するかどうかの確認を行うステップS1101。言語テーブルは、BD-ROMまたはリムーバルメディアから探索する。追加でデジタルコピーコンテンツをリムーバルメディアにダウンロードした場合は、リムーバルメディアに存在する更新版言語テーブルを探索する。言語テーブルが存在しない場合、デジタルコピーコンテンツと対応言語とのマッピングができないため、BD-Jアプリケーションは、コピー可能なデジタルコピーコンテンツ一覧をユーザに提示し、ユーザからの選択指示を待つこととなるステップS1102。ユーザからの選択指示があれば、選択されたデジタルコピーコンテンツを、コピーの対象とするステップS1103。ステップS1101で言語テーブルが存在すると判断した場合、BD-JアプリケーションはファイルI/Oモジュール705を用い、言語テーブルを読み込むステップS1104。次にBD-Jアプリケーションは、ユーザが再生装置に設定している言語情報をPSRセット421から取得するステップS1105。PSRセット421からは、PSR16より音声ストリーム用言語コードを、PSR17より字幕ストリーム用言語コードを、PSR18よりメニュー用言語コードを取得することができる。次に、ステップS1104において読み込んだ言語テーブルとPSRセット421に格納されている言語設定との比較を行う。まずは、PSR16に格納されている音声ストリーム用言語コードと言語テーブルに記載の音声言語の一致確認、及びPSR17に格納されている字幕ストリーム用言語コードと言語テーブルに記載の字幕言語の一致確認を行い、音声字幕の両方の言語が一致するデジタルコピーコンテンツを検索するステップS1106。両方が一致していない場合は、音声もしくは字幕言語のいずれかが一致しているデジタルコピーコンテンツを検索するステップS1107。音声もしくは字幕のいずれも一致していない場合は、PSR18のメニュー用言語コードと言語テーブルに記載の字幕言語もしくは音声言語が一致するデジタルコピーコンテンツを検索するステップS1108。ステップS1106~S1108において、PSRセット421の設定と言語テーブルに記載の言語が一致するデジタルコピーコンテンツが見つかれば、そのデジタルコピーコンテンツをコピーの対象とするステップS1109。ステップS1106~S1108において、対象となるデジタルコピーコンテンツが見つからなかった場合は、BD-Jアプリケーション側でのデジタルコピーコンテンツの選択は行わず、BD-Jアプリケーションは、コピー可能なデジタルコピーコンテンツ一覧をユーザに提示し、ユーザからの選択指示を待つこととなるステップS1102。なお、音声字幕言語の一致確認に、ステップS1106~S1108の処理に加え、さらにPSR1の音声ストリーム番号、PSR2の字幕ストリーム番号、及びそれらのバックアップレジスタも検索の対象として加えても良い。また、言語が一致するデジタルコピーコンテンツが複数見つかった場合は、ユーザに選択させても良い。特に吹替版が良いか字幕版が良いかはユーザの好みに依存するため、ステップS1106~S1108をまとめて行い、そこで対象となるデジタルコピーコンテンツが複数見つかった場合は、それらの一覧をユーザに提示し、その中からユーザの好みで選択させても良い。ユーザの選択はデジタルコピーの都度行ってもよいし、予め吹替版が良いか字幕版が良いかユーザの好みを問い合わせておき、その結果をBD-Jアプリケーション内のローカル変数もしくはローカルストレージ上に記録し保持しておくことで、デジタルコピー時の選択はスキップし、BD-Jアプリケーション内に保持しているユーザの好みに応じて対象となるデジタルコピーコンテンツを決定しても良い。以上が、図42aに示した多言語に対応したデジタルコピーのパターンについての説明である。続いて図42bに示した多言語に対応したデジタルコピーのパターンについて説明する。図44は、デジタルコピーモジュールにおいてコピーコンテンツの選択を行う処理のフローチャートである。再生装置側においてコピーすべきデジタルコピーコンテンツの選択を行う際は、まずBD-Jアプリケーションから使用する言語テーブルの指定があるかどうかを判断するステップS1201。言語テーブルの指定には、SETLANGTABLEコマンドが用いられる。BD-Jアプリケーションから言語テーブルの指定があった場合は、指定された言語テーブルの読込みを行うステップS1202。ステップS1201において、BD-Jアプリケーションから言語テーブルの指定がなかったと判断した場合、BD-ROMまたはリムーバルメディア上に言語テーブルが存在するかどうかを判断するステップS1203。追加でデジタルコピーコンテンツをリムーバルメディアにダウンロードした場合は、リムーバルメディアに存在する更新版言語テーブルを探索する。言語テーブルが存在すれば、言語テーブルの読込みを行うステップS1204。言語テーブルが存在しない場合、デジタルコピーコンテンツと対応言語とのマッピングができないため、デジタルコピーモジュールは、コピー可能なデジタルコピーコンテンツ一覧をユーザに提示し、ユーザからの選択指示を待つこととなるステップS1205。ユーザからの選択指示があれば、選択されたデジタルコピーコンテンツを、コピーの対象とするステップS1206。ステップS1202またはステップS1204の言語テーブル読込み後、デジタルコピーモジュールは、読込んだ言語テーブルとPSR421に格納されている言語設定との比較を行う。まずは、PSR16に格納されている音声ストリーム用言語コードと言語テーブルに記載の音声言語の一致確認、及びPSR17に格納されている字幕ストリーム用言語コードと言語テーブルに記載の字幕言語の一致確認を行い、音声字幕の両方の言語が一致するデジタルコピーコンテンツを検索するステップS1207。両方が一致していない場合は、音声もしくは字幕言語のいずれかが一致しているデジタルコピーコンテンツを検索するステップS1208。音声もしくは字幕のいずれも一致していない場合は、PSR18のメニュー用言語コードと言語テーブルに記載の字幕言語もしくは音声言語が一致するデジタルコピーコンテンツを検索するステップS1209。ステップS1207~S1209において、PSRセット421の設定と言語テーブルに記載の言語が一致するデジタルコピーコンテンツが見つかれば、そのデジタルコピーコンテンツをコピーの対象とするステップS1210。ステップS1207~S1209において、対象となるデジタルコピーコンテンツが見つからなかった場合は、デジタルコピーモジュールは、デジタルコピーモジュールは、コピー可能なデジタルコピーコンテンツ一覧をユーザに提示し、ユーザからの選択指示を待つステップS1205。以上が、デジタルコピーモジュールにおいてコピーコンテンツの選択を行う処理についての説明である。以上の構成により、再生端末内の言語設定及びデジタルコピーコンテンツと共に付与される言語テーブルを用いて、対象となるデジタルコピーコンテンツを、言語を考慮しつつ特定することにより、多言語に対応したデジタルコピーが可能となる。補足なお、上記の実施の形態に基づいて説明してきたが、本発明は上記の実施の形態に限定されないことはもちろんである。以下のような場合も本発明に含まれる。a本発明は、各実施形態で説明した処理手順が開示するアプリケーション実行方法であるとしてもよい。また、前記処理手順でコンピュータを動作させるプログラムコードを含むコンピュータプログラムであるとしてもよい。b本発明は、アプリケーション実行制御を行うIC、LSIその他の集積回路のパッケージとして構成されるものとしてもよい。このパッケージは各種装置に組み込まれて利用に供され、これにより各種装置は、各実施形態で示したような各機能を実現するようになる。また、集積回路化の手法はLSIに限るものではなく、専用回路または、汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGAFieldProgrammableGateArrayやLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブルプロセッサを利用してもよい。さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。このような技術には、バイオ技術の適用等が可能性としてありえる。c上記実施形態では、記録媒体を再生する再生機能のみを持つ再生装置について説明したが、それに限らない。例えば、録画機能を持つ録画再生装置であっても良い。d上記実施形態では、仮想マシンのプログラミング言語としてJava登録商標を利用したが、Java登録商標ではなく、UNIX登録商標OSなどで使われているB-Shellや、PerlScript、ECMAScriptなど他のプログラミング言語であっても良い。e上述の実施の形態ではBD-ROMを再生する再生装置について説明をしたが、書き込み可能な光記録媒体に上述の実施の形態にて説明をしたBD-ROM上の必要なデータが記録されていた場合においても上述と同様の効果を奏することはもちろんのことである。f上述の形態ではコピー元の記録媒体として、BD-ROMまたは書き込み可能な光記録媒体を例に説明をしているが、これに限定をされる必要は無く、例えばSDメモリーカード、メモリースティック、コンパクトフラッシュ、スマートメディア、マルチメディアカード等の可搬性の記録媒体に相当するリムーバブルメディアを用いても構わない。コピー元の記録媒体としてリムーバブルメディアを用いる場合、このコピー元に用いるリムーバブルメディアには、例えば図2に示すボリューム領域に記録されているディレクトリ構造を有するデータに相当するものを記録する領域ユーザ領域、図6で説明をした保護領域およびシステム領域を有する構造である。この場合ではコピー元のリムーバブルメディアに記録された携帯端末向けコンテンツがコピー先のリムーバブルメディアへコピーされることになる。当然のことながら、コピー元のリムーバブルメディアとコピー先のリムーバブルメディアとは別である。コピー元の記録媒体にBDROMを用いた場合では、上述の実施の形態の説明において、例えば鍵情報生成部602では、コピー元801からはBD-ROM上の特殊領域であるBCABurstCuttingAreaに記録されている記録媒体の物理的なシリアルIDを示すPMSNPrerecordedMediaSerialNumberを、読み出す構成である。これに対し、コピー元の記録媒体にリムーバブルメディアを用いる場合には、PMSNを読み出す代りに、コピー元のリムーバブルメディア固有の情報メディアIDを読み出す構成とすればよい。このように上述の実施の形態の説明および図面において、コピー元の記録媒体であるBD-ROMをリムーバブルメディアと読み替えるとともに、コピー元の記録媒体であるBD-ROMのシリアルIDをリムーバブルメディアの固有の情報メディアIDと読み替えれば、コピー元の記録媒体にリムーバブルメディアを用いたときの動作の説明となる。また、コピー元の記録媒体としてリムーバブルメディア用いた場合、BDROMのボリューム領域に記録されているディレクトリ構造を有するデータに相当するものを記録する領域ユーザ領域に記録されるデータのうちの一部のデータ例えばストリームデータは、暗号化なされている。コピー元の記録媒体としてリムーバブルメディア用いた場合、ユーザ領域に記録されるデータというのはリムーバブルメディアを頒布時に予め記録されていても良い。この場合、リムーバブルメディアの頒布時において、ユーザ領域に記録されるデータの一部のデータが暗号化されている場合には、暗号化されたデータを復号するためのキー情報タイトルキーを含む復号鍵がコピー元の記録媒体の保護領域に予め記録されている。このとき、復号鍵は、コピー元の記録媒体のシステム領域のMKBを用いて復号ができるように暗号化がなされているものとする。または、コピー元の記録媒体としてリムーバブルメディア用いた場合、このリムーバブルメディアの頒布時にはユーザ領域にデータが記録されていないものの、頒布後、ダウンロード等の要求により、ユーザ領域に、BD-ROMのボリューム領域に記録されているディレクトリ構造を有するデータに相当ものを記録するようにしても良い。ダウンロード要求を行う装置というのは本実施の形態で説明をした再生装置を用いて行っても良いし、本実施の形態とは別のダウンロードを行うための端末装置を用いて行っても良い。この場合にはまず、ダウンロード要求を行う装置に頒布されたリムーバブルメディアを装填し電気的に接続をされた状態で、データのダウンロードの要求とともに、リムーバブルメディアのメディアIDおよびMKBを読み出して配信サーバへ送る。配信サーバにおいて、リムーバブルメディアのメディアIDおよびMKBを用いて生成される復号鍵と対応するデータをダウンロードの要求を行った装置へ送る。ダウンロードの要求を行った装置では、受信した対応するデータをリムーバブルメディアのユーザ領域へ記録し、受信した公開鍵ファイルをリムーバブルメディアの保護領域に記録する。ユーザ領域に記録されるデータの一部のデータが暗号化されている場合には、暗号化されたデータを復号するためのキー情報タイトルキーを含む復号鍵がコピー元の記録媒体の保護領域に記録されることになる。このとき、復号鍵は、コピー元の記録媒体のシステム領域のMKBを用いて復号ができるに暗号化がなされているものとする。以上のように構成をすれば、リムーバブルメディアをコピー元の記録媒体とすることができる。このようにすれば、ユーザ領域に記録される携帯端末向けコンテンツのみを本実施の形態とは異なる手法で別のリムーバブルメディアへ記録したとしても、別のリムーバブルメディアには復号鍵に関する情報が無いため、不正なコピーによる再生を抑止することができる。万が一にも、別のリムーバブルメディアに復号鍵をも記録できたとしても、別のリムーバブルメディアのMKBはコピー元のリムーバブルメディアのMKBと異なるため、暗号化された復号鍵の復号が行えないため、コピー元のリムーバブルメディアのユーザ領域に記録されたデータの不正な利用を抑止することができる。"