(57)【要約】【課題】情報処理装置内のリソース利用を考慮したコンテンツコピー処理を実行させ、処理の効率化を実現する。【解決手段】メディア間のコンテンツコピーを行う場合に、コピー許可情報のサーバからの取得処理等を実行する第１データ処理部と、コンテンツコピーに伴うデータ変換やコピー記録処理を実行する第２データ処理部での処理の処理シーケンスを情報処理装置内のリソース利用を考慮した設定とした。第１データ処理部での処理が完了後、第１データ処理部を構成するバーチャルマシンをシャットダウンしてメモリ領域を開放し、その後、第２データ処理部においてデータ変換やコピー記録処理を開始する。この設定により、各データ処理部が十分なメモリ領域を確保してデータ処理を実行可能となり、処理遅延を発生させることのない効率的な処理を実現する。【選択図】図９
2010009408.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツおよびデータ処理を実行するプログラムを記録した第１記録媒体から読み取ったプログラムを実行する仮想的なハードウェア環境としてのバーチャルマシンによって構成される第１データ処理部と、
前記コンテンツのデータ変換および第２記録媒体に対するコピー処理を実行する第２データ処理部を有し、
前記第１データ処理部は、前記プログラムの実行によって管理サーバからコピー許可情報の取得処理を実行し、該コピー許可情報の取得処理完了後に前記バーチャルマシンをシャットダウンし、
前記第２データ処理部は、前記バーチャルマシンのシャットダウンの後、前記第１記録媒体に記録されたコンテンツのデータ変換および第２記録媒体に対するコピー処理を実行する構成を有する情報処理装置。
【請求項２】
前記第１データ処理部は、前記バーチャルマシンのシャットダウン処理に際して、情報処理装置のメモリ領域の開放を実行し、
前記第２データ処理部は、前記第１データ処理部の開放した情報処理装置のメモリ領域を利用して、前記第１記録媒体に記録されたコンテンツのデータ変換および第２記録媒体に対するコピー処理を実行する構成を有する請求項１に記載の情報処理装置。
【請求項３】
前記第１データ処理部は、Ｊａｖａ（登録商標）アプリケーションプログラムを実行する仮想的なハードウェア環境としてのバーチャルマシンであるＪａｖａ（登録商標）−ＶＭ（バーチャルマシン）上でデータ処理を実行する構成である請求項１に記載の情報処理装置。
【請求項４】
前記第１データ処理部は、コピー許可情報の取得要求に必要となるデータを、前記第２データ処理部から取得して、取得データを前記管理サーバに送信する構成である請求項１に記載の情報処理装置。
【請求項５】
前記第１データ処理部は、前記管理サーバから取得したコピー許可情報の検証処理を、前記第２データ処理部に依頼する処理を実行し、前記第２データ処理部から、検証成立の応答を受領した後、前記バーチャルマシンをシャットダウンする構成である請求項１に記載の情報処理装置。
【請求項６】
前記第１データ処理部は、コピー許可情報の取得要求に必要となるデータを、前記第２データ処理部に依頼して取得する処理を実行する構成である請求項１に記載の情報処理装置。
【請求項７】
前記第１データ処理部は、実行すべき処理を定義したＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を適用して前記第２データ処理部に対する処理依頼を行う構成である請求項１に記載の情報処理装置。
【請求項８】
コンテンツと、
データ処理を実行するプログラムを記録データとして有する情報記録媒体であり、
前記プログラムは、情報処理装置において仮想的なハードウェア環境としてのバーチャルマシン上で実行され、前記コンテンツのデータ変換またはコピー記録処理の実行前のタイミングで前記バーチャルマシンをシャットダウンし、データ変換またはコピー記録処理を実行するデータ処理部に対して情報処理装置内のメモリ領域の開放を行わせるプログラムである情報記録媒体。
【請求項９】
前記プログラムは、Ｊａｖａ（登録商標）アプリケーションプログラムである請求項８に記載の情報記録媒体。
【請求項１０】
情報処理装置において実行するデータ処理方法であり、
第１データ処理部が、コンテンツおよびデータ処理を実行するプログラムを記録した第１記録媒体から読み取ったプログラムを、仮想的なハードウェア環境としてのバーチャルマシン上において実行し、管理サーバからコピー許可情報を取得して、コピー許可情報の取得処理完了後に前記バーチャルマシンをシャットダウンするステップと、
前記第２データ処理部が、前記バーチャルマシンのシャットダウンの後、前記第１記録媒体に記録されたコンテンツのデータ変換および第２記録媒体に対するコピー処理を実行するステップと、
を有するデータ処理方法。
【請求項１１】
情報処理装置にデータ処理を実行させるプログラムであり、
仮想的なハードウェア環境としてのバーチャルマシンにおいて、管理サーバからコピー許可情報を取得させ、コピー許可情報の取得処理完了後に前記バーチャルマシンをシャットダウンさせるステップと、
データ処理部において、前記バーチャルマシンのシャットダウンの後、第１記録媒体に記録されたコンテンツのデータ変換および第２記録媒体に対するコピー処理を実行させるステップと、
を有するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、およびデータ処理方法、並びにプログラムに関する。さらに、詳細には、記録媒体に対するコンテンツ記録処理やコピー処理を実行する情報処理装置、およびデータ処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
音楽、映画等様々なコンテンツの記録媒体として、ＤＶＤ(Digital Versatile Disc)、Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標）などが多く利用されている。これらの情報記録媒体（メディア）には、予めデータが記録され、新たなデータ書き込みを許容しない媒体（ＲＯＭ型）や、データ書き込み可能な媒体（Ｒ型、ＲＥ型など）がある。データ書き込み可能な情報記録媒体を利用することで、他のメディアに記録されたコンテンツをコピーあるいは移動（ムーブ）することが可能となる。また、例えば、ネットワークや、公共の場所に設置された装置を利用してコンテンツをダウンロードして記録するしいった処理も可能である。
【０００３】
コンテンツを記録する記録媒体（メディア）としては、上記のＤＶＤや、Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標）のみならず、ハードディスクやフラッシュメモリなども利用されている。
【０００４】
記録媒体にコンテンツを記録する処理態様としては、例えば以下のような態様がある。
（ａ）既にコンテンツの記録されたメディア（例えばＲＯＭディスク）からコピー（あるいはムーブ）する処理、
（ｂ）サーバからコンテンツをダウンロードして記録する処理、
（ｃ）店頭や公共スペースに置かれた端末を利用してコンテンツを記録する処理、
例えばこのような処理が想定される。
【０００５】
しかし、音楽データ、画像データ等、多くのコンテンツは、その作成者あるいは販売者に著作権、頒布権等が保有されている。従ってユーザにコンテンツを提供する場合には、一定の利用制限、すなわち正規な利用権を持つユーザのみにコンテンツの利用を許諾し、許可のない複製等が行われないようにする構成をとるのが一般的となっている。
【０００６】
例えば、コンテンツの利用制御に関する規格としてＡＡＣＳ(Advanced Access Content System)が知られている。ＡＡＣＳの規格によれば、上記（ａ）のメディア間のコンテンツコピーを実行する場合、管理サーバからコピー許可情報を取得することを条件としている。すなわち、所定の管理の下でのみコピーが許容される。このコピー処理はマネージドコピー（ＭＣ：Ｍａｎａｇｅｄ  Ｃｏｐｙ）と呼ばれている。
【０００７】
また、上記の（ｂ）のコンテンツ提供形態、すなわち、ダウンロード型コンテンツ提供処理は、ＥＳＴ（Ｅｌｅｃｔｒｉｃ  Ｓｅｌｌ  Ｔｈｒｏｕｇｈ）と呼ばれ、上記（ｃ）の共用端末利用コンテンツ提供処理は、ＭｏＤ（Ｍａｎｕｆａｃｔｕｒｉｎｇ  ｏｎ  Ｄｅｍａｎｄ）と呼ばれるが、ＡＡＣＳの規定では、これらの処理を行う際も、所定のルールに従うことが要請される。
【０００８】
以下に示す３つの処理の概要について図１〜図２を参照して説明する。
（ａ）マネージドコピー（ＭＣ：Ｍａｎａｇｅｄ  Ｃｏｐｙ）
（ｂ）ＥＳＴ（Ｅｌｅｃｔｒｉｃ  Ｓｅｌｌ  Ｔｈｒｏｕｇｈ）
（ｃ）ＭｏＤ（Ｍａｎｕｆａｃｔｕｒｉｎｇ  ｏｎ  Ｄｅｍａｎｄ）
【０００９】
（ａ）マネージドコピー（ＭＣ：Ｍａｎａｇｅｄ  Ｃｏｐｙ）
マネージドコピー（ＭＣ：Ｍａｎａｇｅｄ  Ｃｏｐｙ）は、例えば、図１（ａ）に示すように、ユーザ１が、既にコンテンツの記録された情報記録媒体（ディスク）３をデータ記録再生処理を行う情報処理装置２にセットして、情報記録媒体（ディスク）３から読み取られたコンテンツを例えばＲ型、ＲＥ型などのデータ書き込み可能なＲ／ＲＥディスクや、ハードディスク、フラッシュメモリなどの第２の情報記録媒体４にコピーを行なう処理である。
【００１０】
このコンテンツコピー処理を行なう場合、データ記録再生装置２は、管理サーバ５とネットワーク６を介して接続して、管理サーバ５からコンテンツコピーの許可を得ることが必要となる。
【００１１】
なお、図１には、１つの情報処理装置、すなわち装置単体で複数メディア間におけるコンテンツコピー処理を実行する構成として示してあるが、コピー元となるメディアを装着した装置と、コピー先となるメディアを装着した装置を別の装置として、２つの装置間を例えばＵＳＢケーブルなどで接続した構成としてもよい。
【００１２】
（ｂ）ＥＳＴ（Ｅｌｅｃｔｒｉｃ  Ｓｅｌｌ  Ｔｈｒｏｕｇｈ）
サーバからコンテンツをダウンロードして情報記録媒体（メディア）に記録する処理は、ＥＳＴ（Ｅｌｅｃｔｒｉｃ  Ｓｅｌｌ  Ｔｈｒｏｕｇｈ）と呼ばれる。ＥＳＴは、図２（ｂ）に示すように、ユーザ１１の保持するＰＣなどの情報処理装置１３にユーザの保持するメディア、例えばデータ書き込み可能なメディアであるＲ型またはＲＥ型のディスク１２を装着し、ネットワーク１５を介してコンテンツサーバ（ＥＳＴサーバ）１４からコンテンツを受信して記録する処理である。
【００１３】
（ｃ）ＭｏＤ（Ｍａｎｕｆａｃｔｕｒｉｎｇ  ｏｎ  Ｄｅｍａｎｄ）
共用端末利用型のコンテンツ提供処理はＭｏＤ（Ｍａｎｕｆａｃｔｕｒｉｎｇ  ｏｎ  Ｄｅｍａｎｄ）と呼ばれる。Ｍｏｄは、図２（ｃ）に示すように、ユーザ２１が、例えばコンビニや駅などの公共スペースに設置された端末としてのコンテンツサーバ２４を利用してコンテンツをメディアに記録して購入する。ユーザ２１の保持するデータ書き込み可能なメディアである例えばＲ型またはＲＥ型のディスク２２をコンビニ２３の端末としてのコンテンツサーバ（ＭｏＤサーバ）２４にセットして、ユーザ２１のコンテンツ選択などの操作によって、所望のコンテンツをディスク２２に記録する処理である。
【００１４】
なお、これら（ａ）〜（ｃ）の処理構成については、例えば特許文献１（特開２００８−９８７６５号公報）に記載されている。
【００１５】
このように、ユーザは、データ記録可能なメディアにコンテンツ記録を行ない、記録コンテンツを利用（再生など）することができる。しかし、コンテンツが例えば著作権保護対象コンテンツなどである場合、無秩序な利用を防止するための利用制御を行うことが必要となる。
【００１６】
前述したように、コンテンツの著作権保護技術に関する規格としてＡＡＣＳ(Advanced Access Content System)がある。ＡＡＣＳの規格では、コンテンツに対応する利用制御情報（Ｕｓａｇｅ  Ｒｕｌｅ）を規定して利用制御情報（Ｕｓａｇｅ  Ｒｕｌｅ）に従ったコンテンツの利用を実行させる制御構成を採用している。さらに、コンテンツをユニットに区分し、各ユニットに対応するユニット鍵を適用した暗号化コンテンツとして、ユニット鍵を特定利用者のみが取得できる設定として厳格な利用制御を実現している。
【００１７】
コンテンツを記録したディスクが再生のみを許容し新たなデータ記録を許容しないメディア、例えばＲＯＭ型ディスクなどである場合には、メディアに対する新たなコンテンツの追加記録や編集は行われないので、メディア記録済みコンテンツに対応するコンテンツ固有の利用制御情報（Ｕｓｅａｇｅ  Ｒｕｌｅ）や、ユニット鍵を・ディアに記録した状態でユーザに提供することが可能となる。
【００１８】
しかし、コンテンツがデータ書き込み可能なＲ型、ＲＥ型などのディスクやハードディスク、フラッシュメモリなどのメディアに記録されて利用する形態では、メディアの記録コンテンツは固定でなく新たなコンテンツの記録や、記録コンテンツの削除などのデータ更新が可能となる。このようなメディア格納コンテンツの更新に応じて、利用制御情報やユニット鍵の更新処理も必要となる。
【００１９】
このようにユーザがコンテンツをメディアに記録する場合、コンテンツの記録のみならず、記録コンテンツに対応する様々な付帯データの記録など複雑な処理が必要となる。従って、例えば上述したマネージドコピー（ＭＣ：Ｍａｎａｇｅｄ  Ｃｏｐｙ）を実行する場合には、一連の処理シーケンスを予め規定したプログラムを利用してコピー処理を実行させるのが一般的である。
【００２０】
例えばＡＡＣＳの規定に対応した情報処理装置には、上述したマネージドコピー（ＭＣ：Ｍａｎａｇｅｄ  Ｃｏｐｙ）を実行するためのプログラム（プレーヤアプリケーション）が格納されている。ＡＡＣＳの認定した機器を利用してマネージドコピー（ＭＣ：Ｍａｎａｇｅｄ  Ｃｏｐｙ）を行いたい場合、ユーザは機器に格納されたプレーヤアプリケーションを実行する。このプログムの実行により、管理サーバとの接続や、管理サーバからのコピー許可情報の取得処理などの一連の処理が行われ、その後、コピー許可情報の取得を条件としてコンテンツのコピー処理が行われる。
【００２１】
Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標）の記録コンテンツを他のメディアにコピーする場合にも、ＡＡＣＳ認定機器に格納されたプレーヤアプリケーションを起動してマネージドコピー（ＭＣ：Ｍａｎａｇｅｄ  Ｃｏｐｙ）を実行する。このプレーヤアプリケーションを起動する方法として以下の方法がＡＡＣＳにおいて認められている。
（ａ）機器のＵＩに提示されたメニューから行う方法、
（ｂ）コンテンツを記録したディスクに格納されているＪａｖａ（登録商標）アプリケーションプログラムであるＢＤ−Ｊ（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ  Ｊａｖａ（登録商標））アプリケーションをまず起動させて、ＢＤ−Ｊアプリケーション経由でプレーヤアプリケーションを起動させる方法、
上記（ａ），（ｂ）のいずれかを行うようにＡＡＣＳでは規定している。
【００２２】
プレーヤアプリケーションは、コンテンツ再生や記録を実行する機器に格納したプログラムであり、様々なコンテンツに共通に利用するプログラムとして作成される。一方、ＢＤ−Ｊアプリケーションは、ディスクに対して記録可能であり、ディスク記録コンテンツに対応させたコンテンツ固有の設定とすることもできる。すなわち、コンテンツ製作者がディスク記録コンテンツに併せて作成することができるプログラムである。
【００２３】
すなわちＢＤ−Ｊアプリケーションは、コンテンツ制作サイドにおいてある程度自由に作成できるプログラムであり、様々なコンテンツの構成に応じた様々な設定が可能となる。従って、ＢＤ−Ｊアプリケーションを適用してマネージドコピー（ＭＣ）を実行させる設定とすれば、コンテンツ製作者がコンテンツ構成などに応じたコンテンツ特有の処理などを実行させることも可能となる。
【００２４】
しかし、マネージドコピー（ＭＣ）を行うためには、コピー元に格納されたコンテンツデータを、コピー先のメディアに応じたフォーマットに変換する処理や、コピー先のメディアからの再生をＡＡＣＳ規定に従って実行できるようにＡＡＣＳ規定のディレクトリを設定するなど、ＡＡＣＳ規定のプログラムに従った処理が必要となる。これらの処理のためには、ＡＡＣＳの規定する管理されたプログラムの実行レイヤ（ＡＡＣＳレイヤ）での処理が不可欠となる。
【００２５】
従ってＢＤ−Ｊアプリケーションを、マネージドコピー（ＭＣ）実行プログラムとして設定した場合でも、少なくともその一部の処理はＡＡＣＳレイヤにおいて実行することが必要となる。
【００２６】
このようにマネージドコピー（ＭＣ）を実行するためには、情報処理装置において、ＢＤ−Ｊアプリケーションと、ＡＡＣＳレイヤの２つのデータ処理部での処理を実行させることが必要となる。しかし、情報処理装置のリソースは限られている。例えば、情報処理装置のメモリ容量は限られた容量しかない。
【００２７】
ＡＡＣＳレイヤでは、コピー元に格納されたコンテンツデータを、コピー先のメディアに応じたフォーマットに変換してコピー記録を行うことになるが、この処理は十分なメモリ領域が確保されない場合、多大な時間を要してしまう。
【００２８】
また、ＢＤ−Ｊアプリケーションは、Ｊａｖａ（登録商標）アプリケーションプログラムであり、Ｊａｖａ（登録商標）アプリケーションを実行するための仮想的なハードウェア環境としてのバーチャルマシンを設定して処理が行なわれる。この処理には、情報処理装置内のメモリ領域が多く利用される。
【００２９】
従って、ＢＤ−Ｊアプリケーションと、ＡＡＣＳレイヤの２つのデータ処理部での処理を同時に実行すると、情報処理装置内の限られたメモリスペースをＡＡＣＳレイヤとＢＤ−Ｊアプリケーションの双方で利用することになり、双方のデータ処理部の必要とするメモリスペースの確保が不十分となる恐れがあり、各データ処理部の処理の遅延が発生し、処理時間が長期化する可能性が発生する。
【特許文献１】特開２００８−９８７６５号公報
【発明の開示】
【発明が解決しようとする課題】
【００３０】
本発明は、このような状況に鑑みてなされたものであり、サーバ管理の下に実行されるメディア間のコンテンツコピー処理に伴う一連の処理を、ＢＤ−Ｊアプリケーションプログラムとその他のプログラムを利用して実行する場合に、適切な処理シーケンスを規定して情報処理装置内のリソースを効率的に利用して、遅延を発生させることなく高速処理を実現する情報処理装置、およびデータ処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００３１】
本発明の第１の側面は、
コンテンツおよびデータ処理を実行するプログラムを記録した第１記録媒体から読み取ったプログラムを実行する仮想的なハードウェア環境としてのバーチャルマシンによって構成される第１データ処理部と、
前記コンテンツのデータ変換および第２記録媒体に対するコピー処理を実行する第２データ処理部を有し、
前記第１データ処理部は、前記プログラムの実行によって管理サーバからコピー許可情報の取得処理を実行し、該コピー許可情報の取得処理完了後に前記バーチャルマシンをシャットダウンし、
前記第２データ処理部は、前記バーチャルマシンのシャットダウンの後、前記第１記録媒体に記録されたコンテンツのデータ変換および第２記録媒体に対するコピー処理を実行する構成を有する情報処理装置にある。
【００３２】
さらに、本発明の情報処理装置の一実施態様において、前記第１データ処理部は、前記バーチャルマシンのシャットダウン処理に際して、情報処理装置のメモリ領域の開放を実行し、前記第２データ処理部は、前記第１データ処理部の開放した情報処理装置のメモリ領域を利用して、前記第１記録媒体に記録されたコンテンツのデータ変換および第２記録媒体に対するコピー処理を実行する構成を有する。
【００３３】
さらに、本発明の情報処理装置の一実施態様において、前記第１データ処理部は、Ｊａｖａ（登録商標）アプリケーションプログラムを実行する仮想的なハードウェア環境としてのバーチャルマシンであるＪａｖａ（登録商標）−ＶＭ（バーチャルマシン）上でデータ処理を実行する構成である。
【００３４】
さらに、本発明の情報処理装置の一実施態様において、前記第１データ処理部は、コピー許可情報の取得要求に必要となるデータを、前記第２データ処理部から取得して、取得データを前記管理サーバに送信する構成である。
【００３５】
さらに、本発明の情報処理装置の一実施態様において、前記第１データ処理部は、前記管理サーバから取得したコピー許可情報の検証処理を、前記第２データ処理部に依頼する処理を実行し、前記第２データ処理部から、検証成立の応答を受領した後、前記バーチャルマシンをシャットダウンする構成である。
【００３６】
さらに、本発明の情報処理装置の一実施態様において、前記第１データ処理部は、コピー許可情報の取得要求に必要となるデータを、前記第２データ処理部に依頼して取得する処理を実行する構成である。
【００３７】
さらに、本発明の情報処理装置の一実施態様において、前記第１データ処理部は、実行すべき処理を定義したＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を適用して前記第２データ処理部に対する処理依頼を行う構成である。
【００３８】
さらに、本発明の第２の側面は、
コンテンツと、
データ処理を実行するプログラムを記録データとして有する情報記録媒体であり、
前記プログラムは、情報処理装置において仮想的なハードウェア環境としてのバーチャルマシン上で実行され、前記コンテンツのデータ変換またはコピー記録処理の実行前のタイミングで前記バーチャルマシンをシャットダウンし、データ変換またはコピー記録処理を実行するデータ処理部に対して情報処理装置内のメモリ領域の開放を行わせるプログラムである情報記録媒体にある。
【００３９】
さらに、本発明の情報記録媒体の一実施態様において、前記プログラムは、Ｊａｖａ（登録商標）アプリケーションプログラムである。
【００４０】
さらに、本発明の第３の側面は、
情報処理装置において実行するデータ処理方法であり、
第１データ処理部が、コンテンツおよびデータ処理を実行するプログラムを記録した第１記録媒体から読み取ったプログラムを、仮想的なハードウェア環境としてのバーチャルマシン上において実行し、管理サーバからコピー許可情報を取得して、コピー許可情報の取得処理完了後に前記バーチャルマシンをシャットダウンするステップと、
前記第２データ処理部が、前記バーチャルマシンのシャットダウンの後、前記第１記録媒体に記録されたコンテンツのデータ変換および第２記録媒体に対するコピー処理を実行するステップと、
を有するデータ処理方法にある。
【００４１】
さらに、本発明の第４の側面は、
情報処理装置にデータ処理を実行させるプログラムであり、
仮想的なハードウェア環境としてのバーチャルマシンにおいて、管理サーバからコピー許可情報を取得させ、コピー許可情報の取得処理完了後に前記バーチャルマシンをシャットダウンさせるステップと、
データ処理部において、前記バーチャルマシンのシャットダウンの後、第１記録媒体に記録されたコンテンツのデータ変換および第２記録媒体に対するコピー処理を実行させるステップと、
を有するプログラムにある。
【００４２】
なお、本発明のプログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【００４３】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００４４】
本発明の一実施例の構成によれば、情報処理装置においてメディア間におけるコンテンツコピー処理を行う場合に、コピー許可情報のサーバからの取得処理等を実行する第１データ処理部と、コンテンツコピーに伴うデータ変換やコピー記録処理を実行する第２データ処理部での処理の処理シーケンスを情報処理装置内のリソース利用を考慮した設定とした。具体的には、コピー許可情報のサーバからの取得処理等を実行する第１データ処理部での処理が完了後、第１データ処理部を構成するバーチャルマシンをシャットダウンしてメモリ領域を開放し、その後、第２データ処理部においてデータ変換やコピー記録処理を開始する設定とした。この設定により、第１データ処理部、第２データ処理部が十分なメモリ領域を確保して各々のデータ処理を実行することが可能となり、処理遅延を発生させることのない効率的な処理が実現される。
【発明を実施するための最良の形態】
【００４５】
以下、図面を参照しながら本発明の情報処理装置、およびデータ処理方法、並びにプログラムの詳細について説明する。
【００４６】
まず、図３を参照して、本発明の情報処理装置の実行するマネージドコピー（ＭＣ：Ｍａｎａｇｅｄ  Ｃｏｐｙ）の処理例について説明する。前述したように、マネージドコピー（ＭＣ：Ｍａｎａｇｅｄ  Ｃｏｐｙ）は、管理サーバからのコピー許可情報の受領を条件として、コンテンツを他のメディアにコピーする処理である。
【００４７】
図３には、左からコンテンツ記録済みのディスク１１０、ディスク１１０からコンテンツを読み取り、データ記録可能な第２の情報記録媒体（メディア）１５０に記録する処理を行なう情報処理装置１２０、コンテンツのコピー先であるデータ記録可能な第２の記録媒体１５０、さらに、このコンテンツコピー処理の許可情報や、管理データの提供処理を実行する管理サーバ１４０を示している。
【００４８】
ディスク１１０は、例えばＲＯＭディスクであり、Ｂｌｕ-ｒａｙ  Ｄｉｓｃ（登録商標）等のディスク１１０である。
コンテンツのコピー先であるデータ記録可能な第２の記録媒体１５０は、例えば、ハードディスク、Ｒ／ＲＥディスク、フラッシュメモリなどの記録媒体である。
【００４９】
情報処理装置１２０は、例えばＰＣ、記録再生装置などによって構成され、ディスク１１０からデータを読み取り、読み取りデータを第２の情報記録媒体（メディア）１５０に記録する機能を有する情報処理装置である。
【００５０】
ディスク１１０には、図に示すように、
Ｊａｖａ（登録商標）アプリケーションプログラムであるＢＤ−Ｊアプリケーション１１１
コピー処理管理ファイル（ＭＣＭＦ）１１２、
管理データ１１３、
暗号化コンテンツ１１４、
これらのデータが記録されている。
【００５１】
ＢＤ−Ｊアプリケーション１１１は、コンテンツコピー（ＭＣ：Ｍａｎａｇｅｄ  Ｃｏｐｙ）処理を行う際に情報処理装置１２０において実行されるプログラムであり、例えば管理サーバ１４０との通信などの処理を実行するためのプログラムである。なお、ＢＤ−Ｊアプリケーション１１１は単一のアプリケーションプログラムとして構成されていてもよいし、特定の処理を実行するＢＤ−Ｊアプリケーションの複数の組み合わせによって構成してもよい。
【００５２】
例えばサーバとの通信を実行するＢＤ−Ｊアプリケーション、課金処理専用のＢＤ−Ｊアプリケーションなどである。コンテンツコピーを実行する際には、これらの複数のＢＤ−Ｊアプリケーションが情報処理装置１２０において実行されることになる。
【００５３】
コピー処理管理ファイル（ＭＣＭＦ）１１２は、コンテンツコピー処理を実行する際に適用するファイルであり、例えば、以下の情報を含むＸＭＬ記述データファイルである。
（ａ）コンテンツＩＤ：情報記録媒体（ディスク１１０）に記録されたコンテンツを一意に示す識別子（ＩＤ）である。
（ｂ）ＵＲＩ（ＵＲＬ）：コンテンツコピーを実行する際にコピーの許可、バインド処理よるトークンの生成などを実行する管理サーバ接続用の情報である。例えば管理サーバ１４０に対するアクセス情報である。
（ｃ）ディレクトリ名、ファイル名（Ｄｉｒｅｃｔｏｒｙ  Ｎａｍｅ／Ｆｉｌｅ  Ｎａｍｅ）コピー処理を許容するデータを記録したディレクトリ、ファイル名に関する情報である。
【００５４】
管理データ１１３は、例えばコンテンツの著作権保護技術に関する規格管理システムであるＡＡＣＳ(Advanced Access Content System)の規定する管理データであり、暗号化コンテンツ１１４の復号に適用する鍵（ユニット鍵）を格納したＣＰＳユニット鍵ファイル、利用制御情報、コンテンツの正当性を示すコンテンツ証明書（ＣＣ：Content Certificate）、さらに、ＣＰＳユニット鍵を取得するための鍵情報（メディアキー）を格納した暗号鍵ブロックであるＭＫＢ（Media Key Block）等を含むデータである。
【００５５】
暗号化コンテンツ１１４は、例えばＡＡＣＳ規格に従った暗号化コンテンツである。例えば高精細動画像データであるＨＤ（High Definition）ムービーコンテンツなどの動画コンテンツのＡＶ(Audio Visual)ストリーム、あるいは音楽データ、ゲームプログラム、画像ファイル、音声データ、テキストデータなどからなるコンテンツである。
【００５６】
暗号化コンテンツ１１４は、例えばコンテンツ管理ユニット（ＣＰＳユニット）単位の利用管理が可能な構成を有し、コンテンツ管理ユニット（ＣＰＳユニット）単位で異なるユニット鍵（ＣＰＳユニット鍵）が適用された暗号化コンテンツである。ユニット毎に異なる鍵（ＣＰＳユニット鍵）が割り当てられ暗号化されて格納されている。
【００５７】
情報処理装置１２０には、２つのデータ処理部が設定される。
第１データ処理部は、ＢＤ−ＪＶＭ（ＢＤ−Ｊバーチャルマシン）１２１である。ＢＤ−ＪＶＭ（ＢＤ−Ｊバーチャルマシン）１２１は、ディスク１１０に記録されたＢＤ−Ｊアプリケーション１１１を実行する仮想的なハードウェア環境としてのバーチャルマシンとして設定される。
第２データ処理部は、ＡＡＣＳレイヤ１２２である。ＡＡＣＳレイヤ１２２は、ＡＡＣＳの規定に従った処理、例えばディスク１１０に記録されたＩＤの取得処理など、セキュリティの高い情報の取り扱いや、コンテンツコピー処理におけるデータ変換などのＡＡＣＳ規定に従ったデータ処理を実行するデータ処理部として設定される。
【００５８】
このように、ディスク１１０に記録されたコンテンツを他のメディアにコピーする処理を行う場合には、ディスク１１０に記録されたＢＤ−Ｊアプリケーション１１１の実行領域としてのＢＤ−ＪＶＭ（ＢＤ−Ｊバーチャルマシン）１２１と、ＡＡＣＳの規定に従った処理を実行するためのプログラム実行領域であるＡＡＣＳレイヤ１２２が設定され、相互に処理依頼、処理結果の受け渡しなどを行う。
【００５９】
このようなＢＤ−ＪアプリケーションとＡＡＣＳレイヤ間における処理依頼や、処理結果の受け渡しなどのためにＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）が利用される。ＡＰＩは、コンテンツコピー処理において必要となる様々な処理を実行させるための関数等の集合である。ＡＰＩは、ＢＤ−Ｊアプリケーション１１１内、あるいはその他、情報処理装置１２０が読み取り可能な領域に記録されている。ＡＰＩの具体例については後段で詳細に説明する。
【００６０】
情報処理装置１２０は、ＢＤ−ＪＶＭ１２１において、ＢＤ−Ｊアプリケーション１１１を実行して、管理サーバ１４０との通信を行い、コピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）１３２を取得する処理などを実行する。
【００６１】
ディスク１１０に格納されたコンテンツ１１４を第２の記録媒体（メディア）１５０にコピーする場合には、コンテンツや利用制御情報（Ｕｓａｇｅ  Ｒｕｌｅ）を記録先のメディアに対応させて変換する処理などが必要となる。これらの処理は、ＡＡＣＳの規定に従った処理を実行するためのプログラム実行領域（ＡＡＣＳレイヤ１２２）において実行される。
【００６２】
ＢＤ−Ｊアプリケーション１１１は、コンテンツコピー処理において必要となる処理を実行させるプログラムであり、情報処理装置１２０のＢＤ−ＪＶＭ１２１において実行される。ＢＤ−Ｊアプリケーションを適用した処理として例えば以下の処理が実行される。
（ａ）コピー処理管理ファイル（ＭＣＭＦ）のＵＲＩを利用したサーバアクセス処理、
（ｂ）サーバからの許容処理リストの取得処理、
（ｃ）ユーザによる処理選択情報のサーバへの送信処理
（ｄ）決済処理、
（ｅ）サーバからのコピー許可情報の取得処理、チェック処理、コピー許可情報の記録制御部への出力、
（ｆ）記録制御部の実行するコンテンツコピー処理の監視処理、
（ｇ）記録制御部の実行するサーバからのダウンロードデータの書き込み処理の監視処理、
これらの処理がＢＤ−Ｊアプリケーションを適用して実行される。
【００６３】
なお、前述したように、ＢＤ−Ｊアプリケーション１１１は単一のアプリケーションプログラムとして構成されていてもよいが、特定の処理を実行するＢＤ−Ｊアプリケーションの複数の組み合わせによって構成してもよい。例えば上述の（ａ）〜（ｇ）の処理が複数のＢＤ−Ｊアプリケーションによって実行される構成としてもよい。
【００６４】
ＢＤ−Ｊアプリケーションによる処理について、図３を参照して説明する。ＢＤ−Ｊアプリケーションは、図３に示すステップＳ１０１において、情報処理装置１２０に設定されるＢＤ−ＪＶＭ（ＢＤ−Ｊバーチャルマシン）１２１において開始される。
【００６５】
なお、この処理の実行に際しては、情報処理装置１２０のディスプレイに、ＢＤ−Ｊアプリケーションの提供するメニューなど、ユーザインタフェースとしての案内画面が提示される。ユーザの指示に従って、コンテンツのコピー（Ｍａｎａｇｅｄ  Ｃｏｐｙ）処理を実行するための一連の処理が開始されることになる。
【００６６】
ＢＤ−Ｊアプリケーションは、ユーザ指示に基づいて、まず、コピー処理管理ファイル（ＭＣＭＦ）１１２に含まれるサーバＵＲＩを適用して、管理サーバ１４０にアクセスする。この際、コピー処理対象となるコンテンツに対応するコンテンツＩＤが管理サーバ１４０に送信される。
【００６７】
管理サーバ１４０は、ステップＳ１０２において、情報処理装置１２０から受信するコンテンツＩＤに基づいて、そのコンテンツに対して許容される処理の一覧データである処理許容リストを生成して、情報処理装置１２０に送信する。例えば、コンテンツコピーが許容されるか否か、コピー処理の料金などの情報からなるリストである。
【００６８】
情報処理装置１２０は、管理サーバ１４０から処理許容リスト１２３を受信して、ステップＳ１０３において、許容処理リストをディスプレイに表示してユーザが実行する処理を選択する。
【００６９】
ユーザによって実行する処理が選択されると、情報処理装置１２０は、管理サーバ１４０との間で決済データ１３１の転送による決済処理を実行する。例えばユーザは、決済画面に例えばクレジットカード番号等の決済に必要なデータを入力して送信する。次に、ステップＳ１０４で管理サーバ１４０が処理を許可してコピー許可情報を情報処理装置１２０に送信する。
【００７０】
情報処理装置１２０は、管理サーバ１４０から受信したコピー許可情報１２４を、ＡＡＣＳレイヤ１２２に渡す。ＡＡＣＳレイヤ１２２では、ステップＳ１０５以下の処理が行われる。ＡＡＣＳレイヤ１２２は、ディスク１１０から読み込んだ管理データ１１３を、コピー先である例えば、ハードディスク、Ｒ／ＲＥディスク、フラッシュメモリなどの第２の記録媒体１５０のメディア種別に応じた管理データに変換する処理を実行する。例えば、コピーコンテンツ対応の暗号鍵（ユニット鍵）の追加や、利用制御情報、コンテンツ証明書等をコピーコンテンツ対応のデータに変更する処理を行なう。これらのデータ変換に必要な情報は、コピー許可情報１２４に含まれる。変換された管理データ１５１は第２の記録媒体１５０に記録される。
【００７１】
情報処理装置１２０は、さらに、ステップＳ１０６において、ディスク１１０に記録された暗号化コンテンツ１１４を入力し、例えばフォーマット変換などのデータ変換を実行したコンテンツコピーデータを出力する。このようにして、ディスク１１０に記録されたコンテンツのコピーデータが、第２の記録媒体１５０に暗号化コンテンツ１５２として記録される。なお、第２の記録媒体１５０に記録される管理データ１５１は、第２の記録媒体１５０に記録するコンテンツに対応する利用制御情報、コンテンツ証明書や、ＭＫＢ、ＣＰＳユニット鍵ファイル、トークンなどから構成される。
【００７２】
なお、コンテンツコピー処理に際しては、情報処理装置１２０と、管理サーバ１４０間で、例えば、第２の記録媒体１５０のメディア識別子（シリアルナンバー）の確認、メディア識別子に対する管理サーバ１４０の秘密鍵による署名処理によってトークンを生成し、トークンを管理データとして含める場合もある。このトークン等からなる管理データを図３では管理サーバ１４０内に示す管理データ１４１として示している。第２の記録メディア１５０に記録される管理データ（ＣＰデータ）１５１には、これらのトークン情報が含まれる場合がある。
【００７３】
このようなコンテンツコピー処理の概要について、図３を参照して説明した。上述したように、コンテンツコピー処理は、ＢＤ−ＪアプリケーションとＡＡＣＳレイヤにおいて実行するプログラムとを利用して行われる。
【００７４】
従って、ＢＤ−ＪアプリケーションとＡＡＣＳレイヤの実行プログラムとの間で、必要な情報の受け渡しなどが必要となる。この処理にＡＰＩが適用される。コンテンツコピー処理において利用されるＢＤ−ＪアプリケーションとＡＡＣＳレイヤ間のＡＰＩの例について、図４、図５を参照して説明する。
【００７５】
コンテンツコピー処理において利用されるＢＤ−ＪアプリケーションとＡＡＣＳレイヤ間のＡＰＩには、以下のＡＰＩがある。
【００７６】
（１）ｇｅｎｅｒａｔｅＯｆｆｅｒＲｅｑｕｅｓｔＩｎｆｏ（）
このＡＰＩは、ＢＤ−Ｊアプリケーションがコンテンツに対応して許容される許容処理リスト（Ｏｆｆｅｒ）の送信要求を管理サーバ１４０に対して実行する際に、管理サーバ１４０に送信すべきデータをＡＡＣＳレイヤに依頼して受領する処理を規定したＡＰＩである。
このＡＰＩを利用した処理におけるＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力と、ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は以下の通りである。
ＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力：なし、
ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力：乱数（ｍｃｍＮｏｎｃｅ），例えばＰＭＳＮからなるメディアＩＤ（Ｓｅｒｉａｌ  Ｎｕｍｂｅｒ）、
【００７７】
（２）ｖｅｒｉｆｙＯｆｆｅｒ（ｏｆｆｅｒ）
このＡＰＩは、ＢＤ−Ｊアプリケーションが管理サーバ１４０から受信した許容処理リスト（Ｏｆｆｅｒ）の検証をＡＡＣＳレイヤに依頼して、その検証結果を受領する処理を規定したＡＰＩである。検証作業は、セキュリティが確保されているＡＡＣＳレイヤにおいて実行する。検証成功した場合はセッションＩＤを保持しておく。
このＡＰＩを利用した処理におけるＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力と、ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は以下の通りである。
入力：許容処理リスト（Ｏｆｆｅｒ）
出力：ＯＫ／ＮＧ（検証処理（Ｖｅｒｉｆｉｃａｔｉｏｎ）の結果）
【００７８】
（３）ｓｅｔＭＣＵ（ＭＣＵｉ）
このＡＰＩは、１つのＢＤ−Ｊアプリケーションが、その他のＢＤ−Ｊアプリケーション（例えば課金処理を実行するためのアプリケーション）などに、ユーザが選択したコピー対象商品識別子（ＭＣＵｉ）などの商品識別情報を提示する処理を規定したＡＰＩである。
このＡＰＩを利用した処理におけるＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力と、ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は以下の通りである。
入力：Ｍａｎａｇｅｄ  Ｃｏｐｙ  Ｕｎｉｔ番号等（商品識別子（ＭＣＵｉ）および必要に応じて値段情報等）
出力：ＯＫ／ＮＧ（情報処理装置内のメモリ領域に情報を保持できたかどうかの結果）
【００７９】
（４）ｇｅｔＭＣＵ（）
このＡＰＩは、１つのＢＤ−Ｊアプリケーション（例えば許容処理リスト（Ｏｆｆｅｒ）を提示するアプリケーション）が保持したユーザ選択情報（例えばコピー対象商品識別子（ＭＣＵｉ））を、その他のＢＤ−Ｊアプリケーションに提示する処理を規定したＡＰＩである。
このＡＰＩを利用した処理におけるＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力と、ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は以下の通りである。
入力：なし
出力：コピー対象商品識別子（ＭＣＵｉ）
【００８０】
（５）ｇｅｎｅｒａｔｅＰｅｒｍｉｓｓｉｏｎＲｅｑｕｅｓｔＩｎｆｏ（）
このＡＰＩは、ＢＤ−Ｊアプリケーションが、管理サーバからコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）を取得するために、サーバに送信すべきデータをＡＡＣＳレイヤに依頼して受領する処理を規定したＡＰＩである。
このＡＰＩを利用した処理におけるＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力と、ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は以下の通りである。
入力：なし
出力：コピー対象商品識別子（ＭＣＵｉ）、セッションＩＤ(ｓｅｓｓｉｏｎ  ｉｄ)，コピー先メディア情報（ＭＣＭ＿ＭＣＯＴＩｎｆｏ（オプション））
【００８１】
（６）ｖｅｒｉｆｙＰｅｒｍｉｓｓｉｏｎ（ｐｅｒｍｉｓｓｉｏｎ）
このＡＰＩは、ＢＤ−Ｊアプリケーションが、管理サーバから受信したコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）の検証をＡＡＣＳレイヤに依頼して、検証結果を受領する処理を規定したＡＰＩである。
このＡＰＩを利用した処理におけるＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力と、ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は以下の通りである。
入力：コピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）
出力：ＯＫ／ＮＧ（検証（Ｖｅｒｉｆｉｃａｔｉｏｎ）の結果）
【００８２】
検証作業は、セキュリティが確保されているＡＡＣＳレイヤにおいて実行する。なお、検証に成功した場合は、コンテンツコピー処理に移行することが可能となり、ＢＤ−Ｊアプリケーションの処理は終了してもよいことになり、この時点で、ＢＤ−ＪＶＭをシャットダウンしてもよい。その後、コンテンツコピー処理が開始される。
【００８３】
このように、ＢＤ−ＪアプリケーションとＡＡＣＳレイヤの実行プログラムとの間ではＡＰＩにより、必要な情報の受け渡しなどがスムーズに行われ、マネージドコピー（ＭＣ）処理をＢＤ−Ｊアプリケーションの主導の下で実行することができる。
【００８４】
次に、図６〜図９に示すフローチャートを参照して、情報処理装置１２０において実行されるＡＰＩを利用したコンテンツコピー処理のシーケンスについて説明する。
【００８５】
まず、コピー対象となるコンテンツおよびＢＤ−Ｊアプリケーションの記録されたディスクを情報処理装置に挿入して再生可能な状態にセットした後、情報処理装置は、ステップＳ３０１において、ディスクに記録されたＢＤ−Ｊアプリケーションの読み取りを行い、ＢＤ−Ｊアプリケーションの実行を開始する。なお、この処理に際して、情報処理装置は、ＢＤ−Ｊアプリケーションの実行部としてのＢＤ−ＪＶＭ（バーチャルマシン）（図３に示すＢＤ−ＪＶＭ１２１）の立ち上げを行う。ＢＤ−Ｊアプリケーションは、ＢＤ−ＪＶＭ（バーチャルマシン）において実行される。
【００８６】
先に図３を参照して説明したように、ＢＤ−ＪＶＭ（ＢＤ−Ｊバーチャルマシン）１２１は、ディスク１１０に記録されたＢＤ−Ｊアプリケーション１１１を実行する仮想的なハードウェア環境としてのバーチャルマシンである。
【００８７】
ステップＳ３０２以下の処理は、ディスクに記録されたＢＤ−Ｊアプリケーションプログラムに記録されたシーケンスに従って実行される。ただし、一部のステップは、ＡＡＣＳレイヤにおいて実行されることになる。
【００８８】
ステップＳ３０２において情報処理装置がマネージドコピー（ＭＣ）を実行可能な装置であるか否かを判定する。具体的には、ＡＡＣＳの認定した機器であるか否かを判定する。ＢＤ−Ｊアプリケーションは、予め設定されたシーケンスに従って機器確認処理を実行して、自装置がＡＡＣＳの認定した機器でありマネージドコピーが許容された機器であるか否かの判定を行う。
【００８９】
自装置がマネージドコピーの許容された機器でないと判断した場合は、ステップＳ３０３以下の処理は中止する。すなわち、ステップＳ３５１に進み、マネージドコピー（ＭＣ）処理を中止して処理を終了する。
【００９０】
自装置がマネージドコピーの許容された機器であると判断した場合は、ステップＳ３０３に進む。ステップＳ３０３では、ＡＡＣＳレイヤ（図３に示すＡＡＣＳレイヤ１２２）を起動する。前述したように、ＡＡＣＳレイヤは、ＡＡＣＳの規定する管理されたプログラムの実行レイヤであり、マネージドコピー（ＭＣ）処理において必要となるセキュアデータの提供や、コピーデータの変換処理などを実行するレイヤとして情報処理装置に設定される。
【００９１】
ＡＡＣＳレイヤの起動後、ステップＳ３０４に進む。ステップＳ３０４では、管理サーバ（図３に示す管理サーバ１４０）に対する許容処理リスト（図３に示す許容処理リスト１２３）要求に際してサーバに送信する情報をＡＡＣＳレイヤに依頼する。すなわち、ＢＤ−ＪアプリケーションがＡＡＣＳレイヤに対して処理依頼を実行する。
【００９２】
この処理依頼は、ＡＰＩを適用した処理として実行される。このＡＰＩは、図４に示す［ｇｅｎｅｒａｔｅＯｆｆｅｒＲｅｑｕｅｓｔＩｎｆｏ（）］である。
このＡＰＩは、前述したように、ＢＤ−Ｊアプリケーションがコンテンツに対応して許容される許容処理リスト（Ｏｆｆｅｒ）の送信要求を管理サーバに対して実行する際に、管理サーバ１４０に送信すべきデータをＡＡＣＳレイヤに依頼して受領する処理を規定したＡＰＩである。ＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力は［なし］となる。ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は［乱数（ｍｃｍＮｏｎｃｅ），メディアＩＤ（Ｓｅｒｉａｌ  Ｎｕｍｂｅｒ）］となる。
【００９３】
ステップＳ３０５では、ステップＳ３０４におけるＡＰＩ適用処理によってＡＡＣＳレイヤが生成または取得した情報、すなわち、
「乱数（ｍｃｍＮｏｎｃｅ），メディアＩＤ（Ｓｅｒｉａｌ  Ｎｕｍｂｅｒ）」
これらの情報をＢＤ−Ｊアプリケーションが、ＡＡＣＳレイヤから取得する。
【００９４】
次に、ＢＤ−Ｊアプリケーションは、ステップＳ３０６において、ＡＡＣＳレイヤから取得した情報「乱数（ｍｃｍＮｏｎｃｅ），メディアＩＤ（Ｓｅｒｉａｌ  Ｎｕｍｂｅｒ）」、これらの情報を管理サーバに送信して、許容処理リスト（Ｏｆｆｅｒ）の送信要求を行って、管理サーバから許容処理リスト（Ｏｆｆｅｒ）を受信する。
【００９５】
ステップＳ３０７において、管理サーバから受信した許容処理リスト（Ｏｆｆｅｒ）の検証処理をＡＡＣＳレイヤに依頼する。すなわち許容処理リスト（Ｏｆｆｅｒ）が管理サーバの発行した改ざんのない正当なリストであるか否かの検証依頼をＡＡＣＳレイヤに対して行う。すなわち、ＢＤ−ＪアプリケーションがＡＡＣＳレイヤに対して処理依頼を実行する。
【００９６】
この処理依頼はＡＰＩを適用した処理として実行される。このＡＰＩは、図４に示す［ｖｅｒｉｆｙＯｆｆｅｒ］である。
このＡＰＩは、前述したように、ＢＤ−Ｊアプリケーションが管理サーバから受信した許容処理リスト（Ｏｆｆｅｒ）の検証をＡＡＣＳレイヤに依頼して、その検証結果を受領する処理を規定したＡＰＩである。検証作業は、セキュリティが確保されているＡＡＣＳレイヤにおいて実行する。検証に成功した場合はセッションＩＤを保持しておく。
【００９７】
このＡＰＩを利用した処理におけるＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力は、［許容処理リスト（Ｏｆｆｅｒ）］となる。ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は［ＯＫ／ＮＧ（検証処理（Ｖｅｒｉｆｉｃａｔｉｏｎ）の結果）］となる。
【００９８】
ステップＳ３０８では、ステップＳ３０７におけるＡＰＩ適用処理によってＡＡＣＳレイヤが実行した許容処理リスト（Ｏｆｆｅｒ）の検証処理（Ｖｅｒｉｆｉｃａｔｉｏｎ）の結果を取得する。すなわちＢＤ−Ｊアプリケーションが、[ＯＫ／ＮＧ]の検証結果をＡＡＣＳレイヤから取得する。
【００９９】
ステップＳ３０９において、ＢＤ−Ｊアプリケーションは、ＡＡＣＳレイヤから取得した許容処理リスト（Ｏｆｆｅｒ）の検証処理（Ｖｅｒｉｆｉｃａｔｉｏｎ）の結果を参照し、検証不成立（ＮＧ）である場合は処理を中止する。すなわち、ステップＳ３５１に進み、マネージドコピー（ＭＣ）処理を中止して処理を終了する。
【０１００】
一方、ステップＳ３０９において、ＡＡＣＳレイヤから取得した許容処理リスト（Ｏｆｆｅｒ）の検証処理（Ｖｅｒｉｆｉｃａｔｉｏｎ）の結果が成功（ＯＫ）であることが確認された場合は、ステップＳ３１０に進む。
【０１０１】
ステップＳ３１０では、ＢＤ−Ｊアプリケーションが、正当性の確認された許容処理リスト（Ｏｆｆｅｒ）を、ディスプレイ等を介してユーザに提示し、ユーザからの選択情報を入力する。許容処理リスト（Ｏｆｆｅｒ）は、マネージドコピーの対象となるコンテンツのリストである。例えば価格情報などが設定されたリストであり、複数のコピー許容コンテンツからユーザがコピーを実行するコンテンツを選択することができる。
【０１０２】
次に、ステップＳ３１１において、ＢＤ−Ｊアプリケーションは、許容処理リスト（Ｏｆｆｅｒ）に対するユーザ選択情報をＡＡＣＳレイヤに出力しＡＡＣＳレイヤの管理メモリに選択情報を保持させる。この処理もＡＰＩの適用処理として実行される。
【０１０３】
この処理に適用するＡＰＩは、図４に示す［ｓｅｔＭＣＵ（ＭＣＵｉ）である。
このＡＰＩは、前述したように、１つのＢＤ−Ｊアプリケーションが、その他のＢＤ−Ｊアプリケーション（例えば課金処理を実行するためのアプリケーション）などに、ユーザが選択したコピー対象商品識別子（ＭＣＵｉ）などの商品識別情報を提示する処理を規定したＡＰＩである。
このＡＰＩを利用した処理におけるＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力は［Ｍａｎａｇｅｄ  Ｃｏｐｙ  Ｕｎｉｔ番号等（商品識別子（ＭＣＵｉ）および必要に応じて値段情報等）］である。ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は［ＯＫ／ＮＧ（情報処理装置内のメモリ領域に情報を保持できたかどうかの結果）である。
【０１０４】
次に、ステップＳ３１２に進む。ステップＳ３１２では、課金処理に適用するＢＤ−Ｊアプリケーションをディスクから読み取り、ＢＤ−ＪＶＭにおいて実行開始する。なお、このフローは、課金処理を実行するアプリケーションを独立したＢＤ−Ｊアプリケーションとして設定した例である。アプリケーションの設定は様々な設定が可能であり、すべての処理を１つのＢＤ−Ｊアプリケーションが実行する構成としてもよいし、それぞれの処理を個別のＢＤ−Ｊアプリケーションが実行する構成とすることもできる。
【０１０５】
本処理例は、課金処理以外の一連の処理を実行するＢＤ−Ｊアプリケーションと、課金処理専用のＢＤ−ＪアブリケーションＢＤＪＶＭにおいて選択的に実行される処理例である。課金処理は課金処理専用のＢＤ−Ｊアブリケーションが実行する。ステップＳ３１２ではこの課金処理実行用のＢＤ−ＪアプリケーションをＢＤ−ＪＶＭにおいて実行開始する。
【０１０６】
次に、ステップＳ３１３において、課金処理用ＢＤ−Ｊアプリケーションが、ＡＡＣＳレイヤに対して、ユーザ選択情報の提供を依頼する。
【０１０７】
この処理依頼は、ＡＰＩを適用した処理として実行される。このＡＰＩは、図５に示す［ｇｅｔＭＣＵ（）］である。
このＡＰＩは、前述したように、１つのＢＤ−Ｊアプリケーション（例えば許容処理リスト（Ｏｆｆｅｒ）を提示するアプリケーション）が保持したユーザ選択情報（例えばコピー対象商品識別子（ＭＣＵｉ））を、その他のＢＤ−Ｊアプリケーション、本例では課金処理専用のＢＤ−Ｊアプリケーションに提示する処理を規定したＡＰＩである。
このＡＰＩを利用した処理におけるＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力は［なし］である。ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は［コピー対象商品識別子（ＭＣＵｉ）および必要に応じて値段情報等］である。
【０１０８】
ステップＳ３１４において、課金処理を実行するＢＤ−ＪアプリケーションはＡＡＣＳレイヤから［コピー対象商品識別子（ＭＣＵｉ）および必要に応じて値段情報等］を取得する。
【０１０９】
ステップＳ３１５において、課金処理を実行するＢＤ−ＪアプリケーションはＡＡＣＳレイヤから取得した情報［コピー対象商品識別子（ＭＣＵｉ）および必要に応じて値段情報等］を適用して課金処理を実行する。課金処理は、情報処理装置が、図３に示す管理サーバ１４０とは異なる課金処理を実行するサーバと接続して予め規定したシーケンスに従った決済処理を行うことになる。このサーバ接続処理、決済処理は課金処理専用のＢＤ−Ｊアプリケーションによって行われる。なお、この決済処理によって生成した決済データは、図３の決済データ１３１として示すように管理サーバ１４０に送信され、管理サーバ１４０は、決済処理の完了確認を行う。
【０１１０】
ステップＳ３１５において課金処理が完了すると、課金処理を実行するＢＤ−Ｊアプリケーションの処理は終了する。ステップＳ３１６以降の処理は、課金処理以外の一連の処理を実行するＢＤ−Ｊアプリケーションによって実行される。
【０１１１】
ステップＳ３１６では、コピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）を管理サーバから取得するために、管理サーバに送信すべき情報をＡＡＣＳレイヤから取得するための処理依頼をＡＡＣＳレイヤに対して実行する。
【０１１２】
この処理依頼はＡＰＩを適用した処理として実行される。このＡＰＩは、図５に示す［ｇｅｎｅｒａｔｅＰｅｒｍｉｓｓｉｏｎＲｅｑｕｅｓｔＩｎｆｏ（）］である。
このＡＰＩは、前述したように、ＢＤ−Ｊアプリケーションが、管理サーバからコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）を取得するために、サーバに送信すべきデータをＡＡＣＳレイヤに依頼して受領する処理を規定したＡＰＩである。このＡＰＩを利用した処理におけるＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力は［なし］である。ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は［コピー対象商品識別子（ＭＣＵｉ）、セッションＩＤ(ｓｅｓｓｉｏｎ  ｉｄ)，コピー先メディア情報（ＭＣＭ＿ＭＣＯＴＩｎｆｏ（オプション））］である。
【０１１３】
ステップＳ３１７において、ＢＤ−Ｊアプリケーションは、ＡＡＣＳレイヤから取得した情報を管理サーバに送信してコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）の取得要求を行う。
【０１１４】
すなわち、ＢＤ−Ｊアプリケーションは、コピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）の取得要求に際して、ＡＡＣＳレイヤから取得した情報、すなわち、［コピー対象商品識別子（ＭＣＵｉ）、セッションＩＤ(ｓｅｓｓｉｏｎ  ｉｄ)，コピー先メディア情報（ＭＣＭ＿ＭＣＯＴＩｎｆｏ（オプション））］、これらの情報を管理サーバに送信してコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）の取得要求を行う。その後、ＢＤ−Ｊアプリケーションは、管理サーバからコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）を受信する。
【０１１５】
次に、ステップＳ３１８において、ＢＤ−Ｊアプリケーションは、管理サーバから取得したコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）の検証処理をＡＡＣＳレイヤに依頼する。すなわちコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）が管理サーバの発行した改ざんのない正当なリストであるか否かの検証依頼をＡＡＣＳレイヤに対して行う。
【０１１６】
この処理依頼はＡＰＩを適用した処理として実行される。このＡＰＩは、図４に示す［ｖｅｒｉｆｙＰｅｒｍｉｓｓｉｏｎ］である。
このＡＰＩは、前述したように、ＢＤ−Ｊアプリケーションが、管理サーバから受信したコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）の検証をＡＡＣＳレイヤに依頼して、検証結果を受領する処理を規定したＡＰＩである。このＡＰＩを利用した処理におけるＢＤ−ＪアプリケーションからＡＡＣＳレイヤに対する入力は、管理サーバから受信した［コピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）］である。ＡＡＣＳレイヤからＢＤ−Ｊアプリケーションに対する出力は［ＯＫ／ＮＧ（検証（Ｖｅｒｉｆｉｃａｔｉｏｎ）の結果）］である。
【０１１７】
ステップＳ３１９では、ステップＳ３１８におけるＡＰＩ適用処理によってＡＡＣＳレイヤが実行したコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）の検証処理（Ｖｅｒｉｆｉｃａｔｉｏｎ）の結果を取得する。すなわちＢＤ−Ｊアプリケーションが、[ＯＫ／ＮＧ]の検証結果をＡＡＣＳレイヤから取得する。
【０１１８】
ステップＳ３２０において、ＢＤ−Ｊアプリケーションは、ＡＡＣＳレイヤから取得したコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）の検証処理（Ｖｅｒｉｆｉｃａｔｉｏｎ）の結果を参照し、検証不成立（ＮＧ）である場合は処理を中止する。すなわち、ステップＳ３５１に進み、マネージドコピー（ＭＣ）処理を中止して処理を終了する。
【０１１９】
一方、ステップＳ３２０において、ＡＡＣＳレイヤから取得したコピー許可情報（Ｐｅｒｍｉｓｓｉｏｎ）の検証処理（Ｖｅｒｉｆｉｃａｔｉｏｎ）の結果が成功（ＯＫ）であることが確認された場合は、ステップＳ３２１に進む。
【０１２０】
ステップＳ３２１では、ＢＤ−Ｊアプリケーションを終了する。以降の処理は、ＡＡＣＳレイヤにおいて行われる処理となるため、ＢＤ−Ｊアプリケーションを終了する。
【０１２１】
次に、ステップＳ３２２では、ＢＤ-Ｊアプリケーションの終了に伴いＢＤ-Ｊアプリケーションの実行部として設定していたＢＤ−ＪＶＭ（ＢＤ−Ｊバーチャルマシン）をシャットダウンする。
【０１２２】
次に、ステップＳ３２３では、ＢＤ-Ｊアプリケーションの終了に伴いＢＤ-Ｊアプリケーションが使用していたメモリ領域、すなわち情報処理装置１２０内のメモリ領域を開放する。
【０１２３】
次に、ステップＳ３２４において、ＡＡＣＳレイヤにおいて、ディスクに記録された管理データとコンテンツの読み出しが実行され、コピー先となるメディアに応じたデータ変換処理が実行されて、コピー先となるメディアに対するコピーデータの記録処理が実行される。
【０１２４】
この処理には、ステップＳ３２３において開放された情報処理装置のメモリ領域が利用される。本処理例では、ＡＡＣＳレイヤにおけるデータ変換およびコピー処理の開始前にＢＤ−Ｊアプリケーションを終了させてＢＤ-Ｊアプリケーションが使用していたメモリ領域を開放した後に、ＡＡＣＳレイヤでの処理が実行される。
【０１２５】
このように、ＢＤ−Ｊアプリケーションの処理と、ＡＡＣＳレイヤの処理を競合させないことで、情報処理装置１２０の限られたメモリ領域を有向に利用した効率的な処理が可能となる。結果として、ＡＡＣＳレイヤにおけるデータ変換およびコピー処理を高速に行うことが可能となる。
【０１２６】
ステップＳ３２４のＡＡＣＳレイヤによるデータ変換およびコピー処理が終了すると、ステップＳ３２５に進み、マネージドコピー（ＭＣ）処理を終了する。
【０１２７】
本発明の情報処理装置では、例えば図６〜図９に示すフローチャートに示すように、ＢＤ−ＪＶＭにおいて実行するＢＤ−Ｊアプリケーションが、コンテンツのマネージドコピー処理を主導的に実行する。ただし、以下の処理、すなわち、
管理サーバに対して送信するデータの生成、取得、
管理サーバから取得したデータの検証処理、
コンテンツおよび管理データの変換およびコピー記録処理、
これらの処理については、ＢＤ−Ｊアプリケーションにおいて取り扱うことができないので、ＡＡＣＳの管理の下に作成されるプログラムを実行するＡＡＣＳレイヤで実行されることになる。
【０１２８】
また、ＡＡＣＳレイヤにおけるデータ変換およびコピー処理を行う際、情報処理装置内に十分なメモリ領域を確保できないと、処理に多大な時間を要することになってしまう。ＢＤ−Ｊアプリケーションの処理も、仮想的なハードウェア構成としてのバーチャルマシンを設定した処理として実行されるものであり、情報処理装置内のメモリ領域を多く利用することが必要であり、十分なメモリ領域が釜穂できない場合には、処理が遅延してしまう可能性がある。
【０１２９】
このようにＡＡＣＳレイヤにおけるデータ変換およびコピー処理と、ＢＤ−Ｊアプリケーションの処理を並列に実行する設定としてしまうと、いずれの処理も処理速度が低下し効率的な処理が行えなくなる。
【０１３０】
しかし、本発明においては、上述したように、フローチャートのステップＳ３２１〜Ｓ３２３においてＢＤ−Ｊアブリケーションの終了、シャットダウン、メモリ領域の開放を行った後、ステップＳ３２４においてＡＡＣＳレイヤにおけるデータ変換とコピーを開始する構成としている。
【０１３１】
すなわち、ディスクに記録されたデータ処理プログラムであるＢＤ−Ｊアプリケーションは、図６〜図９のフローチャートを参照して説明したシーケンスを定義したプログラムとして設定されている。このシーケンスに従うことで、まず、仮想的なハードウェア環境としてのバーチャルマシンにおいて、管理サーバからコピー許可情報が取得され、コピー許可情報の取得処理完了後にバーチャルマシンがシャットダウンされる。その後、ＡＡＣＳレイヤにおいて、ディスクに記録されたコンテンツのデータ変換および他メディアに対するコピー処理を実行させることが可能となる。
【０１３２】
すなわち、ディスクに記録されたデータ処理プログラムであるＢＤ−Ｊアプリケーションは、所定の処理の終了後にバーチャルマシンのシャットダウンを行わせて、データ変換またはコピー記録処理を実行するデータ処理部に対して情報処理装置内のメモリ領域の開放を行わせる設定としたプログラムとして設定されたＪａｖａ（登録商標）アプリケーションプログラムである。
【０１３３】
このようなシーケンスで処理を実行することで、ＡＡＣＳレイヤにおけるデータ変換およびコピー処理と、ＢＤ−Ｊアプリケーションの処理、いずれの処理もメモリ領域を十分に利用して実行することが可能となり、いずれの処理も遅延を発生させることなく効率的に高速に実行することが可能となる。
【０１３４】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０１３５】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０１３６】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０１３７】
以上、説明したように、本発明の一実施例の構成によれば、情報処理装置においてメディア間におけるコンテンツコピー処理を行う場合に、コピー許可情報のサーバからの取得処理等を実行する第１データ処理部と、コンテンツコピーに伴うデータ変換やコピー記録処理を実行する第２データ処理部での処理の処理シーケンスを情報処理装置内のリソース利用を考慮した設定とした。具体的には、コピー許可情報のサーバからの取得処理等を実行する第１データ処理部での処理が完了後、第１データ処理部を構成するバーチャルマシンをシャットダウンしてメモリ領域を開放し、その後、第２データ処理部においてデータ変換やコピー記録処理を開始する設定とした。この設定により、第１データ処理部、第２データ処理部が十分なメモリ領域を確保して各々のデータ処理を実行することが可能となり、処理遅延を発生させることのない効率的な処理が実現される。
【図面の簡単な説明】
【０１３８】
【図１】所定の管理の下に実行される情報記録媒体（メディア）間のコンテンツコピーであるマネージドコピー（ＭＣ）の例について説明する図である。
【図２】コンテンツのサーバからのダウンロード処理であるＥＳＴと共用端末を利用したコンテンツ提供処理であるＭｏｄについて説明する図である。
【図３】本発明の一実施例に係るコンテンツコピーの処理例について説明する図である。
【図４】本発明の一実施例に係るコンテンツコピー処理において適用するＡＰＩについて説明する図である。
【図５】本発明の一実施例に係るコンテンツコピー処理において適用するＡＰＩについて説明する図である。
【図６】本発明の一実施例に係るコンテンツコピーの処理シーケンスについて説明するフローチャートを示す図である。
【図７】本発明の一実施例に係るコンテンツコピーの処理シーケンスについて説明するフローチャートを示す図である。
【図８】本発明の一実施例に係るコンテンツコピーの処理シーケンスについて説明するフローチャートを示す図である。
【図９】本発明の一実施例に係るコンテンツコピーの処理シーケンスについて説明するフローチャートを示す図である。
【符号の説明】
【０１３９】
１  ユーザ
２  情報処理装置
３  ＲＯＭディスク
４  第２の情報記録媒体
５  管理サーバ
６  ネットワーク
１１  ユーザ
１２  情報記録媒体（メディア）
１３  情報処理装置
１４  コンテンツサーバ
１５  ネットワーク
２１  ユーザ
２２  情報記録媒体（メディア）
２３  コンビニ
２４  コンテンツサーバ
１１０  ディスク
１１１  ＢＤ−Ｊアプリケーション
１１２  コピー処理管理ファイル
１１３  管理データ
１１４  暗号化コンテンツ
１２０  情報処理装置
１２１  ＢＤ−ＪＶＭ
１２２  ＡＡＣＳレイヤ
１２３  許容処理リスト
１２４  コピー許可情報
１３１  決済データ
１４０  管理サーバ
１４１  管理データ
１５０  第２の情報記録媒体（メディア）
１５１  管理データ
１５２  暗号化コンテンツ
【図３】
2010009408.tif 000003
【図４】
2010009408.tif 000004
【図５】
2010009408.tif 000005
【図６】
2010009408.tif 000006
【図７】
2010009408.tif 000007
【図８】
2010009408.tif 000008
【図９】
2010009408.tif 000009
【図１】
2010009408.tif 000010
【図２】
2010009408.tif 000011