(57)【要約】【課題】  柔軟な動作を確保しながら、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存する。【解決手段】  入力されたコンテンツ・データを解析し、コピー・モードや再生タイミング、データ長、先頭からのオフセット値などのコンテンツ制御情報を取得し、コンテンツ制御情報と対応付けて暗号化コンテンツ・データを外部記憶装置に保存する。ユーザ・アプリケーションがコンテンツ・データの一部が要求されたとき、コンテンツ制御情報を基に要求された範囲のオリジナル・コンテンツを含む暗号化コンテンツ・データを容易に探し、それを復号化して出力する。【選択図】  図２
2007034903.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツ・データを外部記憶装置に保存する情報処理装置であって、
外部からオリジナル・コンテンツ・データを入力するデータ入力部と、
入力されたオリジナル・コンテンツ・データのコピー・モードを判定するコピー・モード判定部と、
オリジナル・コンテンツ・データの再生時間を判定する再生タイミング情報判定部と、
オリジナル・コンテンツ・データの先頭からのオフセットとなるデータ位置を判定するデータ位置情報判定部と、
オリジナル・コンテンツ・データを暗号化し、前記コピー・モード判定部、前記再生タイミング判定部、及び前記データ位置情報判定部により取得されたオリジナル・コンテンツ・データに関するコピー・モード、再生タイミング情報、データ位置情報を含んだコンテンツ制御情報を付随させて該暗号化コンテンツ・データを前記外部記憶装置に保存する出力部と、
を具備することを特徴とする情報処理装置。
【請求項２】
外部から入力されるコンテンツ・データが暗号化されている場合には、前記データ入力部において復号してオリジナル・コンテンツ・データを得た後、前記コピー・モード判定部、前記再生タイミング判定部、及び前記データ位置情報判定部における判定処理をそれぞれ行なう、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
オリジナル・コンテンツ・データは、コピー・モードの切り替わり点、入力されるコンテンツ・データの復号鍵の変更点、所定時間間隔、所定データ長、又はその他の区切りにより分割される複数の復号化単位で構成され、
前記コピー・モード判定部、前記再生タイミング判定部、及び前記データ位置情報判定部はそれぞれ復号化単位毎にコピー・モード、再生タイミング情報、データ位置情報を判定して、復号化単位毎の判定結果のレコードからなるコンテンツ制御情報を得る、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記出力部は、暗号化コンテンツと付随するコンテンツ制御情報をそれぞれ別のファイルにして前記外部記憶装置に保存する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記出力部は、暗号化コンテンツ・データと付随するコンテンツ制御情報を同じファイルにして前記外部記憶装置に保存する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記出力部は、暗号化コンテンツ・データを保存するファイルの所定位置にコンテンツ制御情報をまとめて配置する、
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記出力部は、コンテンツ制御情報の各レコードを暗号化コンテンツ・データ中の対応する復号化単位の位置にそれぞれ挿入し、１つのファイルとして保存する、
ことを特徴とする請求項５に記載の情報処理装置。
【請求項８】
前記出力部は、暗号化コンテンツ・データを復号化単位毎に分割し、個々の復号化単位を対応するコンテンツ制御情報とペアにして１つのファイルを構成し、全体として複数のファイルに分けて保存する、
ことを特徴とする請求項５に記載の情報処理装置。
【請求項９】
前記出力部は、コピー・モードとしてＣｏｐｙ  Ｆｒｅｅが設定されているコンテンツ・データを暗号化せずに前記外部記憶装置に保存する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項１０】
前記出力部は、コピー・モードとしてＣｏｐｙ  Ｎｅｖｅｒが設定されているコンテンツ・データを破棄して前記外部記憶装置に保存しないようにする、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項１１】
コンテンツ・データを外部記憶装置に保存する情報処理方法であって、
外部からオリジナル・コンテンツ・データを入力するデータ入力ステップと、
入力されたオリジナル・コンテンツ・データのコピー・モードを判定するコピー・モード判定ステップと、
オリジナル・コンテンツ・データの再生時間を判定する再生タイミング情報判定ステップと、
オリジナル・コンテンツ・データの先頭からのオフセットとなるデータ位置を判定するデータ位置情報判定ステップと、
オリジナル・コンテンツ・データを暗号化し、前記コピー・モード判定ステップ、前記再生タイミング判定ステップ、及び前記データ位置情報判定ステップにより取得されたオリジナル・コンテンツ・データに関するコピー・モード、再生タイミング情報、データ位置情報を含んだコンテンツ制御情報を付随させて該暗号化コンテンツ・データを前記外部記憶装置に保存する出力ステップと、
を具備することを特徴とする情報処理方法。
【請求項１２】
外部から入力されるコンテンツ・データが暗号化されている場合には、前記データ入力ステップにおいて復号してオリジナル・コンテンツ・データを得た後、前記コピー・モード判定ステップ、前記再生タイミング判定ステップ、及び前記データ位置情報判定ステップにおいて判定処理をそれぞれ行なう、
ことを特徴とする請求項１１に記載の情報処理方法。
【請求項１３】
オリジナル・コンテンツ・データは、コピー・モードの切り替わり点、入力されるコンテンツ・データの復号鍵の変更点、所定時間間隔、所定データ長、又はその他の区切りにより分割される複数の復号化単位で構成され、
前記コピー・モード判定ステップ、前記再生タイミング判定ステップ、及び前記データ位置情報判定ステップではそれぞれ復号化単位毎にコピー・モード、再生タイミング情報、データ位置情報を判定して、復号化単位毎の判定結果のレコードからなるコンテンツ制御情報を得る、
ことを特徴とする請求項１１に記載の情報処理方法。
【請求項１４】
前記出力ステップでは、暗号化コンテンツと付随するコンテンツ制御情報をそれぞれ別のファイルにして前記外部記憶装置に保存する、
ことを特徴とする請求項１１に記載の情報処理方法。
【請求項１５】
前記出力ステップでは、暗号化コンテンツ・データと付随するコンテンツ制御情報を同じファイルにして前記外部記憶装置に保存する、
ことを特徴とする請求項１１に記載の情報処理方法。
【請求項１６】
前記出力ステップでは、暗号化コンテンツ・データを保存するファイルの所定位置にコンテンツ制御情報をまとめて配置する、
ことを特徴とする請求項１５に記載の情報処理方法。
【請求項１７】
前記出力ステップでは、コンテンツ制御情報の各レコードを暗号化コンテンツ・データ中の対応する復号化単位の位置にそれぞれ挿入し、１つのファイルとして保存する、
ことを特徴とする請求項１５に記載の情報処理方法。
【請求項１８】
前記出力ステップでは、暗号化コンテンツ・データを復号化単位毎に分割し、個々の復号化単位を対応するコンテンツ制御情報とペアにして１つのファイルを構成し、全体として複数のファイルに分けて保存する、
ことを特徴とする請求項１５に記載の情報処理方法。
【請求項１９】
前記出力ステップでは、コピー・モードとしてＣｏｐｙ  Ｆｒｅｅが設定されているコンテンツ・データを暗号化せずに前記外部記憶装置に保存する、
ことを特徴とする請求項１１に記載の情報処理方法。
【請求項２０】
前記出力ステップでは、コピー・モードとしてＣｏｐｙ  Ｎｅｖｅｒが設定されているコンテンツ・データを破棄して前記外部記憶装置に保存しないようにする、
ことを特徴とする請求項１１に記載の情報処理方法。
【請求項２１】
外部記憶装置に保存されている暗号化コンテンツ・データを利用する情報処理装置であって、各暗号化コンテンツ・データに付随してコンテンツ制御情報が保存されており、
利用するコンテンツ・データに関するコンテンツ制御情報を指定する入力部と、
該指定されたコンテンツ制御情報の条件を判定して、条件が合う、又は条件が近いコンテンツ・データを前記外部記憶装置内で探索して読み出す判定部と、
該読み出された暗号化コンテンツ・データを復号して再生出力する出力部と、
を具備することを特徴とする情報処理装置。
【請求項２２】
前記外部記憶装置に暗号化コンテンツ・データに付随して保存されるコンテンツ制御情報として、オリジナル・コンテンツ・データに関するコピー・モード、再生タイミング情報、データ位置情報が含まれ、
前記判定部は、指定されたコンテンツ・データについてのコピー・モード判定、前記入力部により指定された再生時間の始点に最も近い又は指定された再生範囲をカバーするコンテンツ・データを判定する再生タイミング判定、並びに前記入力部により指定されたデータ位置に最も近い又は指定されたデータ位置の範囲を含むコンテンツ・データを判定するデータ位置情報判定を行ない、
前記出力部は、判定されたコピー・モード、再生タイミング情報、データ位置情報に基づいて暗号化コンテンツ・データを選択的に復号する、
ことを特徴とする請求項２１に記載の情報処理装置。
【請求項２３】
前記出力部は、コピー・モードとしてＣｏｐｙ  Ｎｅｖｅｒが設定されているコンテンツ・データの出力をスキップする、
ことを特徴とする請求項２２に記載の情報処理装置。
【請求項２４】
前記出力部は、復号したコンテンツ・データをＤＴＣＰ−ＩＰを用いて他の機器へ伝送する場合は、ＤＴＣＰ−ＩＰで規定された暗号化手順を経てネットワークへ出力する、
ことを特徴とする請求項２１に記載の情報処理装置。
【請求項２５】
前記外部記憶装置から読み出したコンテンツ・データに付随するコンテンツ制御情報と前記入力部で指定したコンテンツ制御情報が一致しない場合には読み出したコンテンツ・データ又はコンテンツ制御情報を補正する補正手段をさらに備える、
ことを特徴とする請求項２１に記載の情報処理装置。
【請求項２６】
外部記憶装置に保存されている暗号化コンテンツ・データを利用する情報処理方法であって、各暗号化コンテンツ・データに付随してコンテンツ制御情報が保存されており、
利用するコンテンツ・データに関するコンテンツ制御情報を指定する入力ステップと、
該指定されたコンテンツ制御情報の条件を判定して、条件が合う、又は条件が近いコンテンツ・データを前記外部記憶装置内で探索して読み出す判定ステップと、
該読み出された暗号化コンテンツ・データを復号して再生出力する出力ステップと、
を具備することを特徴とする情報処理方法。
【請求項２７】
前記外部記憶装置に暗号化コンテンツ・データに付随して保存されるコンテンツ制御情報として、オリジナル・コンテンツ・データに関するコピー・モード、再生タイミング情報、データ位置情報が含まれ、
前記判定ステップでは、指定されたコンテンツ・データについてのコピー・モード判定、前記入力ステップにおいて指定された再生時間の始点に最も近い又は指定された再生範囲をカバーするコンテンツ・データを判定する再生タイミング判定、並びに前記入力部により指定されたデータ位置に最も近い又は指定されたデータ位置の範囲を含むコンテンツ・データを判定するデータ位置情報判定を行ない、
前記出力ステップでは、判定されたコピー・モード、再生タイミング情報、データ位置情報に基づいて暗号化コンテンツ・データを選択的に復号する、
ことを特徴とする請求項２６に記載の情報処理方法。
【請求項２８】
前記出力ステップでは、コピー・モードとしてＣｏｐｙ  Ｎｅｖｅｒが設定されているコンテンツ・データの出力をスキップする、
ことを特徴とする請求項２６に記載の情報処理方法。
【請求項２９】
復号したコンテンツ・データをＤＴＣＰ−ＩＰを用いて他の機器へ伝送する際に、前記出力ステップではＤＴＣＰ−ＩＰで規定された暗号化手順を経てネットワークへ出力する、
ことを特徴とする請求項２６に記載の情報処理方法。
【請求項３０】
前記外部記憶装置から読み出したコンテンツ・データに付随するコンテンツ制御情報と前記入力ステップにおいて指定したコンテンツ制御情報が一致しない場合には読み出したコンテンツ・データ又はコンテンツ制御情報を補正する補正ステップをさらに備える、
ことを特徴とする請求項２６に記載の情報処理方法。
【請求項３１】
コンテンツ・データを外部記憶装置に保存するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
外部からオリジナル・コンテンツ・データを入力するデータ入力手順と、
入力されたオリジナル・コンテンツ・データのコピー・モードを判定するコピー・モード判定手順と、
オリジナル・コンテンツ・データの再生時間を判定する再生タイミング情報判定手順と、
オリジナル・コンテンツ・データの先頭からのオフセットとなるデータ位置を判定するデータ位置情報判定手順と、
オリジナル・コンテンツ・データを暗号化し、前記コピー・モード判定手順、前記再生タイミング判定手順、及び前記データ位置情報判定手順により取得されたオリジナル・コンテンツ・データに関するコピー・モード、再生タイミング情報、データ位置情報を含んだコンテンツ制御情報を付随させて該暗号化コンテンツ・データを前記外部記憶装置に保存する出力手順と、
を実行させることを特徴とするコンピュータ・プログラム。
【請求項３２】
外部記憶装置に保存されている暗号化コンテンツ・データを利用するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、各暗号化コンテンツ・データに付随してコンテンツ制御情報が保存されており、前記コンピュータ・システムに対し、
利用するコンテンツ・データに関するコンテンツ制御情報を指定する入力手順と、
該指定されたコンテンツ制御情報の条件を判定して、条件が合う、又は条件が近いコンテンツ・データを前記外部記憶装置内で探索して読み出す判定手順と、
該読み出された暗号化コンテンツ・データを復号して再生出力する出力手順と、
を実行させることを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、著作権保護若しくはその他の目的で暗号化されたコンテンツを処理する情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに係り、特に、コピー制限を課せられたコンテンツ・データをユーザにより自由に読み出しや修正、コピーが行なわれないように保護する情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに関する。
【０００２】
さらに詳しくは、本発明は、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存し、コピー制限を遵守しながら復号動作を行なう情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに係り、特に、ユーザビリティを向上させるための柔軟な動作を確保しながら、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存する情報処理装置及び情報処理方法、並びにコンピュータ・プログラムに関する。
【背景技術】
【０００３】
最近、ネットワークを経由した映像や音楽などのコンテンツの流通・配信サービスが盛んに行なわれる。この種のサービスでは、ＣＤやＤＶＤなどのメディアの移動を必要とせず、ネットワークを経由して遠隔端末間でコンテンツ配信を行なうことができる。一方、ネットワーク経由で取り扱われるコンテンツは、著作物の１つとして、著作権法の下で無断の複製や改竄などの不正使用から保護を受ける。著作権法では、同法第３０条において、個人的に又は家庭内などを使用目的とした場合の使用者本人の複製を許容する一方、同法第４９条第１項においては、私的使用以外での複製物の使用を禁止している。また、デジタル・コンテンツはコピーや改竄などの不正な操作が比較的容易であることから、法的な整備だけでなく技術的な側面からも、個人的又は家庭的なコンテンツの使用を許容しながら不正使用に対する防御が必要である。
【０００４】
例えば、デジタル伝送コンテンツの保護に関する業界標準であるＤＴＣＰ（Ｄｉｇｉｔａｌ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）では、著作権が保護された形でコンテンツを伝送させるための仕組みについて規定している（例えば、非特許文献１を参照のこと）。ＤＴＣＰでは、コンテンツ伝送時における機器間の認証プロトコルと、暗号化コンテンツの伝送プロトコル、すなわち暗号化コンテンツを復号するために必要となる鍵交換を所定の相互認証及び鍵交換（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ：ＡＫＥ）アルゴリズムに従って行なうことなどを取り決めている。
【０００５】
コンテンツ提供元であるサーバ（ＤＴＣＰ  Ｓｏｕｒｃｅ）とコンテンツ提供先であるクライアント（ＤＴＣＰ  Ｓｉｎｋ）は、ＡＫＥコマンドの送受信により、認証手続きを経て鍵を共有化し、その鍵を用いて伝送路を暗号化してコンテンツの伝送を行なう。したがって、不正なクライアントは、サーバとの認証に成功しないと暗号鍵を取得できないから、コンテンツを享受することはできない。また、ＡＫＥコマンドを送受信する機器の台数や範囲を制限することによって、コンテンツが使用される範囲を著作権法で言うところの個人的又は家庭の範囲内に抑えることができる。
【０００６】
ＤＴＣＰは、原初的には、ＩＥＥＥ１３９４などを伝送路に用いたホーム・ネットワーク上におけるデジタル・コンテンツの伝送について規定している。最近では、ＩＥＥＥ１３９４ベースで規定されたＤＴＣＰ技術をＩＰネットワークに移植した技術の開発が進められている（以降、この技術をＤＴＣＰ−ＩＰと呼ぶ）。ＤＴＣＰ−ＩＰでは、伝送路にＩＰネットワークを使用し、暗号化されたコンテンツの伝送にＨＴＴＰやＲＴＰプロトコルを使用する。また、ＩＰネットワーク上にはＰＣを主としたさまざまな機器が接続され、データの盗聴、改竄が簡単に行なわれてしまう危険が高いことから、ＤＴＣＰ−ＩＰは、コンテンツを保護しながらネットワーク伝送するためのさらなる方法を規定している（例えば、非特許文献２を参照のこと）。
【０００７】
図１４には、ＤＴＣＰ＿ＩＰに準拠するＳｏｕｒｃｅ機器とＳｉｎｋ機器の間でＡＫＥに基づく鍵交換手続き、及び鍵交換により共有した鍵を利用した暗号化コンテンツ伝送を行なう仕組みを図解している。同図に示す例では、コンテンツ伝送にはＨＴＴＰプロトコルが利用される。
【０００８】
ＤＴＣＰ＿ＳｏｕｒｃｅとＤＴＣＰ＿Ｓｉｎｋはまず１つのＴＣＰ／ＩＰコネクションを確立し、機器同士の認証を行なう。この認証をＤＴＣＰ認証、若しくはＡＫＥ（Ａｕｔｈｅｎｔｉｃａｔｉｏｎ ａｎｄ Ｋｅｙ Ｅｘｃｈａｎｇｅ）と言う。ＤＴＣＰ準拠機器には、ＤＴＬＡ（Ｄｉｇｉｔａｌ Ｔｒａｎｓｍｉｓｓｉｏｎ Ｌｉｃｅｎｓｉｎｇ Ａｄｍｉｎｉｓｔｒａｔｏｒ）と呼ばれる認可組織によりユニークな機器ＩＤや認証鍵Ｋauthが埋め込まれている。ＤＴＣＰ認証手続きでは、このような情報を用いて互いが正規のＤＴＣＰ準拠機器であることを確かめた後、コンテンツを暗号化若しくは復号するためのＤＴＣＰ＿Ｓｏｕｒｃｅが管理している認証鍵ＫauthをＤＴＣＰ＿Ｓｉｎｋ機器と共有することができる。
【０００９】
ＡＫＥ手続きが成功すると、ＤＴＣＰ＿Ｓｏｕｒｃｅ機器とＤＴＣＰ＿Ｓｉｎｋ機器は、それぞれ内部で同様の処理を行なってＫauthからコンテンツ鍵の種となる種鍵Ｋxを生成する。種鍵Ｋxは、コンテンツ伝送時にコンテンツ鍵Ｋcを生成するために使用される（後述）。
【００１０】
そして、ＤＴＣＰ準拠の機器間でＡＫＥによる認証及び鍵交換手続きが済んだ後、ＤＴＣＰ＿ＳｉｎｋはＤＴＣＰ＿Ｓｏｕｒｃｅ上のコンテンツを要求する。ＤＴＣＰ＿Ｓｏｕｒｃｅは、ＣＤＳ（Ｃｏｎｔｅｎｔｓ Ｄｉｒｅｃｔｏｒｙ Ｓｅｒｖｉｃｅ）などを通じてＤＴＣＰ＿ＳｉｎｋにＤＴＣＰ＿Ｓｏｕｒｃｅ上のコンテンツへのアクセス先を示すコンテンツ場所をあらかじめ伝えることができる。ＨＴＴＰの手続きに従ってコンテンツを要求する場合、ＤＴＣＰ＿ＳｏｕｒｃｅがＨＴＴＰサーバとなり、ＤＴＣＰ＿ＳｉｎｋがＨＴＴＰクライアントとなって、コンテンツの伝送を開始する。また、ＲＴＰによる伝送を要求するとき、ＤＴＣＰ＿ＳｏｕｒｃｅがＲＴＰ Ｓｅｎｄｅｒとなり、ＤＴＣＰ＿ＳｉｎｋがＲＴＰ Ｒｅｃｅｉｖｅｒとなってコンテンツの伝送を開始する。あるいは、ＲＳＴＰ（Ｒｅａｌ  Ｔｉｍｅ  Ｓｔｒｅａｍｉｎｇ  Ｐｒｏｔｏｃｏｌ）などの伝送プロトコルも適用が可能である。
【００１１】
ＨＴＴＰでコンテンツ伝送を行なう際、ＤＴＣＰ認証のためのＴＣＰ／ＩＰコネクションとは別に、ＨＴＴＰのためのＴＣＰ／ＩＰコネクションがＨＴＴＰクライアントより作成される。そして、ＨＴＴＰクライアントは、通常のＨＴＴＰと全く同様の動作手順によりＨＴＴＰサーバ上のコンテンツを要求する。これに対し、ＨＴＴＰサーバは、要求通りのコンテンツをＨＴＴＰレスポンスとして返す。
【００１２】
ここで、ＨＴＴＰレスポンスとして伝送されるデータは、ＨＴＴＰサーバすなわちＤＴＣＰ＿Ｓｏｕｒｃｅ機器がＡＫＥ認証をした後に共有した鍵を用いてコンテンツを暗号化したデータとなっている。
【００１３】
具体的には、ＤＴＣＰ＿Ｓｏｕｒｃｅ機器は、乱数を用いてノンスＮcを生成して、ＫxとＮcを基にコンテンツ鍵Ｋcを生成する。そして、ＤＴＣＰ＿Ｓｉｎｋ機器から要求されているコンテンツを、コンテンツ鍵Ｋcを用いて暗号化し、暗号化コンテンツとノンスＮcからなるＰＣＰ（Ｐｒｏｔｅｃｔｅｄ  Ｃｏｎｔｅｎｔ  Ｐａｃｋｅｔ）をＴＣＰストリーム上に乗せてＤＴＣＰ＿Ｓｉｎｋ機器に送信する。そして、ＩＰプロトコルは、ＴＣＰストリームを所定の単位となるパケットの大きさに分割し、さらにヘッダ部を付加したＩＰパケットにし、指定されたＩＰアドレス宛てに届ける。
【００１４】
ＤＴＣＰ＿Ｓｉｎｋ機器側では、ＤＴＣＰ＿Ｓｏｕｒｃｅ機器からの各ＩＰパケットを受信すると、これをＴＣＰストリームに組み立てる。そして、ストリームからノンスＮcを取り出すと、これと認証鍵Ｋauthから求めた鍵Ｋxを用いて同様にコンテンツ鍵Ｋcを算出し、暗号化コンテンツを復号することができる。そして、復号化した後の平文のコンテンツに対し再生若しくは記録などの処理を実施することができる。
【００１５】
そして、ＨＴＴＰプロトコルを利用したコンテンツ伝送が終了すると、使用したＴＣＰコネクションを適宜切断することができる。
【００１６】
ここで、長大なＴＣＰストリーム全体に渡り同じ暗号鍵を使用し続けると、鍵が解読される危険は高くなる。このため、ＤＴＣＰ−ＩＰでは、Ｓｏｕｒｃｅ機器は１２８ＭＢのコンテンツ毎にノンスＮcすなわちコンテンツ鍵Ｋcを更新するよう取り決められている。バイト・ストリーム中で、同じノンスＮcから生成されたコンテンツ鍵Ｋcを用いて暗号化されたデータの範囲は、同じ鍵を用いて復号することができる復号化単位となる。
【００１７】
また、このようにバイト・ストリームの途中で復号鍵が動的に変更されることから、コンテンツ鍵の確認手続きが必要となる。そこで、ＤＴＣＰ＿Ｓｉｎｋ機器は、コンテンツ伝送用のＴＣＰコネクションとは別に、コンテンツ鍵の確認用のＴＣＰコネクションをさらに確立し、ＤＴＣＰ＿Ｓｏｕｒｃｅ機器に対しコンテンツ鍵確認のための手続きを行なう。ＤＴＣＰ＿Ｓｉｎｋ機器は、コンテンツ鍵の確認が必要になると、適宜このＴＣＰコネクションを確立する。
【００１８】
このように、ＤＴＣＰ−ＩＰは、ＤＴＣＰに準拠した機器同士で認証を行ない、ＤＴＣＰ認証が完了した機器同士で鍵を共有し、コンテンツを伝送する際に暗号化及び復号をすることにより、伝送路途中におけるコンテンツの盗聴、改竄を防ぐという、ＩＰネットワーク上においても安全なコンテンツ伝送手法を提供することができる。
【００１９】
【非特許文献１】ＤＴＣＰ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｖｏｌｕｍｅ  １  Ｖｅｒｓｉｏｎ  １．３  （Ｉｎｆｏｒｍａｔｉｏｎａｌ  Ｖｅｒｓｉｏｎ）ｈｔｔｐ：／／ｗｗｗ．ｄｔｃｐ．ｃｏｍ／ｄａｔａ／ｉｎｆｏ＿２００４０１０７＿ｄｔｃｐ＿Ｖｏｌ＿１＿１ｐ３．ｐｄｆ
【非特許文献２】ＤＴＣＰ  Ｖｏｌｕｍｅ  １  Ｓｕｐｐｌｅｍｅｎｔ  Ｅ  Ｍａｐｐｉｎｇ  ＤＴＣＰ  ｔｏ  ＩＰ，  Ｖｅｒｓｉｏｎ  １．０  （Ｉｎｆｏｒｍａｔｉｏｎａｌ  Ｖｅｒｓｉｏｎ）ｈｔｔｐ：／／ｗｗｗ．ｄｔｃｐ．ｃｏｍ／ｄａｔａ／ｉｎｆｏ＿２００３１１２４＿ｄｔｃｐ＿ＶＩＳＥ＿１ｐ０．ｐｄｆ／
【発明の開示】
【発明が解決しようとする課題】
【００２０】
コピー制限を課せられたコンテンツなどのデータ（以下、「コンテンツ・データ」とも呼ぶ）はユーザにより自由に読み出しや修正、コピーが行なわれないように保護される必要がある。上述したＤＴＣＰでは、同規格に準拠する機器はＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）など取り扱いが容易な圧縮コンテンツを非暗号の状態で機器外に送出しない（並びに、盗聴が可能な伝送路上に送出しない）ことと取り決められている。
【００２１】
コンテンツ・データを保護する主な手法として、元のコンテンツ・データ（以下、「オリジナル・コンテンツ・データ」とも呼ぶ）を（耐タンパ性のある）ハードウェアで暗号化を施してから、ハード・ディスクなどの汎用の外部記憶装置に保存する方法が挙げられる。この仕組みを一般的な構成の情報処理装置上で実現する手順について考察する。情報処理装置は、例えば、プロセッサがバス経由で外部記憶装置やその他に周辺装置と相互接続されており、コンテンツ・データの入力元として、チューナやネットワーク・インターフェースを備えている。
【００２２】
チューナからは放送などのコンテンツ・データが入力され、ネットワーク・インターフェースからはＤＴＣＰ−ＩＰで保護されたコンテンツ・データが入力される。入力されるコンテンツ・データは例えば暗号化されたＭＰＥＧデータであり、暗号化復号装置は復号した後、さらに圧縮映像データと圧縮音声データとに分離し、映像データに対してはＭＰＥＧ方式に従い伸長処理して元の映像信号をディスプレイで映像出力し、音声データに対してはＰＣＭ（Ｐｕｌｓｅ Ｃｏｄｅ Ｍｏｄｕｌａｔｉｏｎ）デコードした後に付加音と合成してスピーカから音響出力する。
【００２３】
ここで、入力されたコンテンツ・データを外部記憶装置に保存する際、バス上にオリジナル・コンテンツ・データを伝送すると、バスの盗聴によりオリジナル・コンテンツ・データがコピーされてしまうおそれがある。このため、暗号化復号装置によりコンテンツ・データを暗号化してから（以下、「暗号化コンテンツ・データ」とも呼ぶ）、外部記憶装置に保存する。これによって、バス経由で外部記憶装置に伝送する際の不正コピーの問題を排除することができる。
【００２４】
外部記憶装置に保存されている暗号化コンテンツ・データは、ユーザによりアクセス可能であるが、暗号化されているためにそのままの状態では利用できず、暗号化復号装置で復号する必要がある。また、暗号化復号装置で復号する際には、コピー制限を遵守するように動作するソフトウェアを用いて制御することによって、復号したコンテンツ・データのコピー制限が守られている。
【００２５】
ところが、上述した機構によれば、コンテンツ・データ全体を暗号化しているため、ユーザビリティを向上させるための柔軟な動作を行ない難くなる、という問題がある。
【００２６】
例えば、コンテンツ・データには“Ｃｏｐｙ  Ｆｒｅｅｌｙ”や“Ｎｏ  Ｍｏｒｅ  Ｃｏｐｙ”といったコピー・モードが設定されているが、保存した暗号化コンテンツ・データを復号しなければコピー・モードを判定することができない。ＤＴＣＰ−ＩＰではＭＰＥＧなどの取り扱いが容易な圧縮コンテンツを外部出力（若しくはバス伝送）する際には暗号化を施すことを義務付けているが、暗号化の手順はコピー・モードにより変化する。このような場合、コンテンツ・データを常に操作する必要がある。
【００２７】
また、ユーザ・アプリケーションがオリジナル・コンテンツの数バイト目からのデータが欲しいといった、コンテンツの部分出力を要求することがある。このような場合、外部記憶装置に保存したコンテンツ・データが暗号化されたデータであるため、その位置情報の整合を取り難い。正確に動作するためには、暗号化コンテンツ・データを先頭から復号した後、該当箇所から出力する動作をしなければならない。
【００２８】
あるいは、ユーザ・アプリケーションが再生時間の範囲指定でデータを要求したとき、外部記憶装置に保存したコンテンツ・データが暗号化されたデータであるため再生タイミング情報を取得することはできない。この場合も同様に、暗号化コンテンツ・データを先頭から復号し該当箇所から出力する動作をしなければならない。
【００２９】
このように、コンテンツ・データ全体が暗号化されているため、コンテンツ・データの任意の場所から再生したいというユーザからのデータ要求に対し、柔軟な動作で対応することが難しい。
【００３０】
本発明は上述した技術的課題を勘案したものであり、その主な目的は、コピー制限を課せられたコンテンツ・データをユーザにより自由に読み出しや修正、コピーが行なわれないように好適に保護することができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することにある。
【００３１】
本発明のさらなる目的は、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存し、コピー制限を遵守しながら復号動作を好適に行なうことができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することにある。
【００３２】
本発明のさらなる目的は、ユーザビリティを向上させるための柔軟な動作を確保しながら、オリジナル・コンテンツ・データをハードウェアで暗号化を施して好適に保存することができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することにある。
【００３３】
本発明のさらなる目的は、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存するとともに、任意の場所からコンテンツ・データを出力する動作を実現することができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【００３４】
本発明は、上記課題を参酌してなされたものであり、その第１の側面は、コンテンツ・データを外部記憶装置に保存する情報処理装置であって、
外部からオリジナル・コンテンツ・データを入力するデータ入力部と、
入力されたオリジナル・コンテンツ・データのコピー・モードを判定するコピー・モード判定部と、
オリジナル・コンテンツ・データの再生時間を判定する再生タイミング情報判定部と、
オリジナル・コンテンツ・データの先頭からのオフセットとなるデータ位置を判定するデータ位置情報判定部と、
オリジナル・コンテンツ・データを暗号化し、前記コピー・モード判定部、前記再生タイミング判定部、及び前記データ位置情報判定部により取得されたオリジナル・コンテンツ・データに関するコピー・モード、再生タイミング情報、データ位置情報を含んだコンテンツ制御情報を付随させて該暗号化コンテンツ・データを前記外部記憶装置に保存する出力部と、
を具備することを特徴とする情報処理装置である。
【００３５】
また、本発明の第２の側面は、外部記憶装置に保存されている暗号化コンテンツ・データを利用する情報処理装置であって、各暗号化コンテンツ・データに付随してコンテンツ制御情報が保存されており、
利用するコンテンツ・データに関するコンテンツ制御情報を指定する入力部と、
該指定されたコンテンツ制御情報の条件を判定して、条件が合う、又は条件が近いコンテンツ・データを前記外部記憶装置内で探索して読み出す判定部と、
該読み出された暗号化コンテンツ・データを復号して再生出力する出力部と、
を具備することを特徴とする情報処理装置である。
【００３６】
本発明は、ＤＴＣＰ−ＩＰ若しくはその他の仕組みにより著作権保護されたコンテンツ・データを扱う情報処理装置に関するものであり、ネットワーク・インターフェースやチューナなどを介して入力されるコンテンツ・データを外部記憶装置に保存するように構成されている。
【００３７】
入力されたコンテンツ・データを外部記憶装置に保存する際には、バス上にオリジナル・コンテンツ・データを伝送すると、バスの盗聴によりオリジナル・コンテンツ・データがコピーされてしまうおそれがある。このため、暗号化復号装置によりコンテンツ・データを暗号化してから外部記憶装置に保存することによって、バス経由で外部記憶装置に伝送する際の不正コピーの問題を排除するという対策が一般的に講じられている。
【００３８】
しかしながら、コンテンツ・データ全体を暗号化してから保存を行なう場合、ユーザビリティを向上させるための柔軟な動作を行ない難くなる、という問題がある。そこで、本発明に係る情報処理装置では、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存する際に、コピー・モードなどの関連するコンテンツ制御情報を読み取り可能な形式で付随させておくことにより、ユーザ・アプリケーションの実用性向上を図るようにした。
【００３９】
具体的には、暗号化復号装置は、保存用のコンテンツ・データが入力されると、そのデータを解析して、指定されているコピー・モードや再生タイミング、コンテンツ・データの長さ、データの先頭からのオフセット値などからなるコンテンツ制御情報を取得する。そして、コンテンツ制御情報と対応付けて暗号化コンテンツ・データを外部記憶装置に保存する。
【００４０】
オリジナル・コンテンツについてのコンテンツ制御情報を保存する方法として、暗号化コンテンツ・データとは別のファイルとして保存する方法と、暗号化コンテンツ・データと同じファイルとしてまとめて保存する方法がある。
【００４１】
例えば、暗号化コンテンツ・データ全体のコンテンツ制御情報をまとめて１つのファイルとし、暗号化コンテンツ・データとは別のファイルとしてコンテンツ制御情報を保存するようにしてもよい。
【００４２】
あるいは、暗号化コンテンツ・データと同じファイルとしてまとめて保存する方法として暗号化コンテンツ・データを保存するファイルの先頭にコンテンツ制御情報をまとめて１つのファイルとして保存したり、暗号化コンテンツ・データを格納するファイルの内部にコンテンツ制御情報をインターリーブして埋め込んで保存したりする方法などが挙げられる。また、暗号化コンテンツ・データを複数の復号化単位に分割して個々の復号化単位を対応するコンテンツ制御情報とペアにして１つのファイルを構成し、全体として複数のファイルに分けて保存するようにしてもよい。
【００４３】
ユーザ・アプリケーションがコンテンツ・データの一部を要求する、すなわちコンテンツ・データの部分出力を要求することがある。本発明によれば、暗号化コンテンツ・データを保存する際にはコンテンツ制御情報を付随させているので、部分出力要求などに対し、ユーザビリティを向上させるための柔軟な動作を実現することができる。
【００４４】
例えば、再生タイミングで指定してオリジナル・コンテンツの一部が要求されたときに、コンテンツ制御情報を基に要求された範囲のオリジナル・コンテンツを含む暗号化コンテンツ・データを容易に探し、それを復号化して出力することができる。具体的には、コンテンツ制御情報から要求されたオリジナル・コンテンツ・データの位置に近い暗号化コンテンツ・データの位置をまず割り出して、その位置から復号を開始し、復号されたデータに補正をかけることで、正確な範囲のオリジナル・コンテンツ・データを取得することができる。
【００４５】
また、ユーザ・アプリケーションがコンテンツ・データの部分出力を要求する他の形態として、オリジナル・コンテンツ・データの一部をバイト指定で指定して要求する場合がある。本発明によれば、コンテンツ制御情報を基に要求された範囲のオリジナル・コンテンツ・データを含む暗号化コンテンツ・データを容易に探し、それを復号化して出力することができる。具体的には、コンテンツ制御情報から要求されたオリジナル・コンテンツ・データのバイト位置に近い暗号化コンテンツ・データの位置を割り出し、その位置から復号を開始し、復号されたデータに補正をかけることで、正しい範囲のオリジナル・コンテンツ・データを取得することができる。
【００４６】
また、本発明の第３の側面は、コンテンツ・データを外部記憶装置に保存するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記コンピュータ・システムに対し、
外部からオリジナル・コンテンツ・データを入力するデータ入力手順と、
入力されたオリジナル・コンテンツ・データのコピー・モードを判定するコピー・モード判定手順と、
オリジナル・コンテンツ・データの再生時間を判定する再生タイミング情報判定手順と、
オリジナル・コンテンツ・データの先頭からのオフセットとなるデータ位置を判定するデータ位置情報判定手順と、
オリジナル・コンテンツ・データを暗号化し、前記コピー・モード判定手順、前記再生タイミング判定手順、及び前記データ位置情報判定手順により取得されたオリジナル・コンテンツ・データに関するコピー・モード、再生タイミング情報、データ位置情報を含んだコンテンツ制御情報を付随させて該暗号化コンテンツ・データを前記外部記憶装置に保存する出力手順と、
を実行させることを特徴とするコンピュータ・プログラムである。
【００４７】
また、本発明の第４の側面は、外部記憶装置に保存されている暗号化コンテンツ・データを利用するための処理をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、各暗号化コンテンツ・データに付随してコンテンツ制御情報が保存されており、前記コンピュータ・システムに対し、
利用するコンテンツ・データに関するコンテンツ制御情報を指定する入力手順と、
該指定されたコンテンツ制御情報の条件を判定して、条件が合う、又は条件が近いコンテンツ・データを前記外部記憶装置内で探索して読み出す判定手順と、
該読み出された暗号化コンテンツ・データを復号して再生出力する出力手順と、
を実行させることを特徴とするコンピュータ・プログラムである。
【００４８】
本発明の第３及び第４の各側面に係るコンピュータ・プログラムは、コンピュータ・システム上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第３及び第４の各側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第１及び第２の各側面に係る情報処理装置と同様の作用効果を得ることができる。
【発明の効果】
【００４９】
本発明によれば、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存し、コピー制限を遵守しながら復号動作を好適に行なうことができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することができる。
【００５０】
また、本発明によれば、ユーザビリティを向上させるための柔軟な動作を確保しながら、オリジナル・コンテンツ・データをハードウェアで暗号化を施して好適に保存することができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することができる。
【００５１】
また、本発明によれば、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存するとともに、任意の場所からコンテンツ・データを出力する動作を実現することができる、優れた情報処理装置及び情報処理方法、並びにコンピュータ・プログラムを提供することができる。
【００５２】
本発明に係る情報処理装置は、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存する際に、関連するコンテンツ制御情報を伴わせて暗号化コンテンツを保存するようにした。これによって、暗号化コンテンツ・データの任意の場所から出力するというコンテンツの部分出力を大幅に容易化し、精度を向上することができる。また、コンテンツ制御情報を基に、コンテンツ出力時の暗号化処理を効率化することができるとともに、オリジナル・コンテンツのコピー・モードを容易に照会することができる。また、外部記憶に保存されている暗号化コンテンツのうちＣｏｐｙ  Ｆｒｅｅｌｙの部分のみを任意のユーザ・アプリケーションが参照するという動作を容易に実現することができる。
【００５３】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【発明を実施するための最良の形態】
【００５４】
以下、図面を参照しながら本発明の実施形態について詳解する。
【００５５】
本発明は、入力したコンテンツ・データを外部記憶装置に保存しさらに再生利用する情報処理装置に関する。入力されたコンテンツ・データを外部記憶装置に保存する際、バス上にオリジナル・コンテンツ・データを伝送すると、バスの盗聴によりオリジナル・コンテンツ・データがコピーされてしまうおそれがある。そこで、本発明に係る情報処理装置では、暗号化復号装置によりコンテンツ・データを暗号化してから外部記憶装置に保存することによって、バス経由で外部記憶装置に伝送する際の不正コピーの問題を排除するようにしている。このような情報処理装置の具体例は、ＤＴＣＰ−ＩＰに準拠したＤＴＣＰ機器であり、ネットワーク・インターフェースからはＤＴＣＰ−ＩＰで保護されたコンテンツ・データが入力される。
【００５６】
Ａ．装置構成
図１には、本発明の一実施形態に係る情報処理装置のハードウェア構成を模式的に示している。図示の情報処理装置は、プロセッサ１１がＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）などのバス１２経由で外部記憶装置やその他に周辺装置と相互接続されている。プロセッサ１１は、オペレーティング・システム（ＯＳ）が提供する実行環境下で、ユーザ・アプリケーションを実行する。
【００５７】
また、バス１２に接続されている周辺装置として、プログラムをインストールしたりデータを保存したりするために使用するハード・ディスクなどの外部記憶装置や、コンテンツ・データの入力元としてチューナ１３やネットワーク・インターフェース１４、コンテンツ・データの暗号化並びに復号処理を行なう暗号化復号装置１５を備えている。
【００５８】
チューナ１３からは放送などのコンテンツ・データが入力され、ネットワーク・インターフェース１４からはＤＴＣＰ−ＩＰで保護されたコンテンツ・データが入力される。入力されるコンテンツ・データは例えば暗号化されたＭＰＥＧデータであり、暗号化復号装置１５は、受理した暗号化コンテンツを復号してオリジナル・コンテンツ・データを得た後、さらに圧縮映像データと圧縮音声データとに分離し、映像データに対してはＭＰＥＧ２方式に従い伸長処理して元の映像信号をディスプレイ（図示しない）で映像出力し、音声データに対してはＰＣＭ（Ｐｕｌｓｅ Ｃｏｄｅ Ｍｏｄｕｌａｔｉｏｎ）デコードした後に付加音と合成してスピーカ（図示しない）から音響出力する。
【００５９】
また、チューナ１３やネットワーク・インターフェース１４から入力されたコンテンツ・データを外部記憶装置１６に保存する際、バス１２上にオリジナル・コンテンツ・データを伝送すると、バス１２の盗聴によりオリジナル・コンテンツ・データがコピーされてしまうおそれがある。そこで、暗号化復号装置１５によりオリジナル・コンテンツ・データを暗号化してから外部記憶装置１６に保存することによって、バス１２経由で外部記憶装置１６に伝送する際の不正コピーの問題を排除するようにしている。
【００６０】
外部記憶装置１６に保存されている暗号化コンテンツ・データは、そのままの状態では利用できず、暗号化復号装置１５で復号する必要がある。また、暗号化復号装置で復号する際には、コピー制限を遵守するように動作するソフトウェアを用いて制御することによって、復号したコンテンツ・データのコピー制限が守られている。
【００６１】
ここで、外部記憶装置１６にコンテンツ・データを保存する際、コンテンツ・データ全体を暗号化しているため、ユーザビリティを向上させるための柔軟な動作を行ない難くなる、という問題がある。そこで、本実施形態に係る情報処理装置では、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存する際に、コピー・モードなどの関連するコンテンツ制御情報を読み取り可能な形式で付随させておくことにより、ユーザ・アプリケーションの実用性向上を図っている。
【００６２】
暗号化復号装置１５は、コンテンツ・データからコピー・モードを解析するコピー・モード解析部を備えている。また、外部記憶装置１６に保存するときのコンテンツ・フォーマットの変更を行なう。
【００６３】
暗号化復号装置１５は、保存用のオリジナル・コンテンツ・データを解析して、指定されているコピー・モードや再生タイミング、コンテンツ・データの長さなどからなるコンテンツ制御情報を取得する。
【００６４】
ここで、コピー・モードとして、「コピー可能［Ｃｏｐｙ Ｆｒｅｅｌｙ（Ｆｒｅｅｌｙｌｙ）］」や「一度のみのコピー［Ｃｏｐｙ Ｏｎｃｅ］」、「コピー禁止［Ｃｏｐｙ Ｎｅｖｅｒ， Ｎｏ Ｍｏｒｅ Ｃｏｐｉｅｓ］」、「移動［Ｍｏｖｅ］」などを指定することができる。コンテンツのコピー・モードは１つのコンテンツ・データで一定である場合と、１つのコンテンツ内で区間毎に動的に変更される場合がある。例えば、あるテレビ番組において、番組そのものはＣｏｐｙ Ｏｎｃｅで放送されるが、番組途中の各場所に挿入されているＣＭや予告編はＣｏｐｙ Ｆｒｅｅｌｙｌｙに設定されることもあり、コピー・モードが動的に変化する。
【００６５】
また、コンテンツ・データは再生するための再生タイミングが指定されており、その再生タイミングを取得し、コンテンツ制御情報として記述する。最後に、オリジナル・コンテンツの解析時の累積データ量、すなわち、データの先頭からのオフセット値を取得する。暗号化復号装置１５は、このようにコンテンツを入力したときに解析して３つの情報をコンテンツ制御情報として取得し、暗号化コンテンツとともに外部記憶装置１６に出力して記憶する。
【００６６】
Ｂ．暗号化コンテンツ・データの保存方法
暗号化コンテンツ・データを外部記憶装置１６に保存するのに伴って、コンテンツ制御情報を保存する方法として、暗号化コンテンツ・データとは別のファイルとして保存する方法と、暗号化コンテンツ・データと同じファイルとしてまとめて保存する方法がある。
【００６７】
暗号化コンテンツ・データとは別のファイルとしてコンテンツ制御情報を保存する場合、暗号化コンテンツ・データ全体のコンテンツ制御情報をまとめて１つのファイルとして保存する方法などが挙げられる。図２には、暗号化コンテンツ・データ全体のコンテンツ制御情報をまとめて１つのファイルとして構成し、暗号化コンテンツ・データとは別のファイルとして保存する仕組みを図解している。コンテンツ制御情報は、例えば暗号化コンテンツ・データを構成する復号化単位毎にレコードを設け、各レコードには対応する復号化単位についての、コンテンツ・データの先頭からのオフセット値、コピー・モード、再生するための再生タイミング、位置情報といった暗号化復号装置１５によるコンテンツ・データ解析結果を記述して、すべてのレコードを集めて１つのファイルをする。
【００６８】
なお、ここで言う復号化単位とは、暗号化復号装置１５においてコンテンツ・データを暗号化や復号処理を行なう際に単一の処理対象として取り扱うことができるデータの単位であり、その構成方法は必ずしも本発明の要旨を限定するものではない。例えば、途中でコピー・モードが変化するコンテンツ・データにおけるコピー・モードの切替り点や、コンテンツ鍵の変更点などで復号化単位として区切ることができる。（長大なＴＣＰストリーム全体に渡り同じ暗号鍵を使用し続けると鍵が解読される危険は高くなることから、ＤＴＣＰ−ＩＰでは、１２８ＭＢのコンテンツ毎にコンテンツ鍵を更新するよう取り決められている（例えば、非特許文献２を参照のこと）。）あるいは、所定時間毎、所定バイト長毎にコンテンツ・データを区切って復号化単位とするようにしてもよい。
【００６９】
また、暗号化コンテンツ・データと同じファイルとしてコンテンツ制御情報を保存する場合には、そのファイルの先頭にすべてのコンテンツ制御情報をまとめて配置して保存する方法や、暗号化コンテンツ・データを格納するファイルの内部にインターリーブして埋め込んで保存する方法、暗号化コンテンツ・データを復号化単位毎に分割し、個々の復号化単位を対応するコンテンツ制御情報とペアにして１つのファイルを構成し、全体として複数のファイルに分けて保存する方法などが挙げられる。
【００７０】
図３には、暗号化コンテンツ・データを保存するファイルの先頭にすべてのコンテンツ制御情報をまとめて、暗号化コンテンツ・データと同じファイルとしてコンテンツ制御情報を保存する仕組みを図解している。コンテンツ制御情報は、例えば暗号化コンテンツ・データの復号化単位毎に設けられたレコードの集合として構成される。そして、各レコードには、対応する復号化単位についての、コンテンツ・データの先頭からのオフセット値、コピー・モード、再生するための再生タイミング、位置情報といった、暗号化復号装置１５によるコンテンツ・データ解析結果が記述されている。図３に示す例では、これらレコードのリストからなるコンテンツ制御情報がファイルの先頭に配置されている。
【００７１】
また、図４には、暗号化コンテンツ・データを格納するファイルの内部にコンテンツ制御情報をインターリーブして埋め込んで保存する仕組みを図解している。暗号化コンテンツが複数の復号化単位で構成される場合、暗号化復号装置１５はコンテンツ・データを解析して、コンテンツ・データの先頭からのオフセット値、コピー・モード、再生するための再生タイミング、位置情報といったコンテンツ制御情報のレコードを復号化単位毎に生成する。そして、各復号化単位の先頭にコンテンツ制御情報レコードを挿入し、コンテンツ制御情報を内部にインターリーブする格好で１つのファイルを構成する。
【００７２】
また、図５には、暗号化コンテンツ・データを復号化単位毎に分割し、個々の復号化単位を対応するコンテンツ制御情報とペアにして１つのファイルを構成し、全体として複数のファイルに分けて保存する仕組みを図解している。同図に示すように、暗号化コンテンツが複数の復号化単位で構成される場合、暗号化復号装置１５は復号化単位毎にコンテンツ・データを解析し、コンテンツ・データの先頭からのオフセット値、コピー・モード、再生するための再生タイミング、位置情報といったコンテンツ制御情報レコードを復号化単位毎に生成する。そして、復号化単位となるそれぞれの暗号化コンテンツ・データに対応するコンテンツ制御情報レコードを先頭に付加し、各復号化単位をそれぞれ別のファイルに分けて保存する。
【００７３】
Ｃ．暗号化コンテンツ・データの出力方法
図２〜図５に示したように、本実施形態に係る情報処理装置は、関連するコンテンツ制御情報を読み取り可能な形式で付随させて暗号化コンテンツ・データを保存している。したがって、暗号化コンテンツを保存先の外部記憶装置１６から取り出して復号並びに再生出力する際には、コンテンツ制御情報を利用することによって、暗号化コンテンツ・データの部分出力といった、ユーザビリティを向上させるための柔軟な動作が可能となる。
【００７４】
ユーザ・アプリケーションがオリジナル・コンテンツ・データの先頭から出力することを要求されたとき、暗号化復号装置１５は、暗号化コンテンツ・データを通常通り先頭から復号して出力する。このとき、例えばＤＴＣＰ−ＩＰで他の機器に伝送する場合で、ＰＣＰのようにコピー・モードが変化するときに特定のヘッダ情報を加えなければならない場合、コピー・モード情報を利用すると効率的に伝送することが可能になる。
【００７５】
また、ＤＴＣＰ−ＩＰに従ってコンテンツ・データを伝送するとき、コピー・モード情報をＰＣＰヘッダと呼ばれる１４バイトに載せ、その後にＤＴＣＰ−ＩＰで暗号化したデータを付ける。ＤＴＣＰ−ＩＰで暗号化したデータの元のサイズはＰＣＰヘッダに記述しなければならず、そのサイズから導かれるＤＴＣＰ−ＩＰで暗号化したデータの後には次のＰＣＰヘッダが記述されている。
【００７６】
ここで、外部記憶装置１６に保持されている暗号化コンテンツ・データを先頭から復号したとき、従来の手法では、初めに判明したコピー・モードがあとどのくらい継続するのかが残りの暗号化コンテンツ・データを復号しなければ判らない。しかしながら、暗号復号化装置１５がハードウェアで実現されている場合は潤沢なメモリ領域を保持することができず、そこにあるバッファ量に一杯になった時点でＰＣＰヘッダにコピー・モード情報と続くＤＴＣＰ−ＩＰ暗号化データのサイズを指定して出力している。ＰＣＰを区切る度に元のデータにはない１４バイトのＰＣＰヘッダを加える必要があるので、暗号復号化装置１５のバッファ容量が小さいと多くのＰＣＰヘッダを含む出力データのサイズが大きくなり、結果的にネットワーク上のトラフィックを増大させてしまう。
【００７７】
これに対し、本実施形態では、図２〜図５で示したように、外部記憶装置１６に暗号化コンテンツ・データを保存する際にはコンテンツ制御情報を付随させているので、各暗号化コンテンツ・データのコピー・モード情報の遷移を容易に判定することができる。したがって、コピー・モードの変化点（あるいはＤＴＣＰ−ＩＰの規格として１２８ＭＢ）までは１つのＰＣＰとして暗号化復号装置１５に送ることができ、出力データを増大させることはない。
【００７８】
また、ユーザ・アプリケーションがコンテンツ・データの一部を要求する、すなわちコンテンツ・データの部分出力を要求することがある。例えば、再生タイミングで指定してオリジナル・コンテンツの一部を要求する場合であり、ＤＬＮＡ（Ｄｉｇｉｔａｌ  Ｌｉｖｉｎｇ  Ｎｅｔｗｏｒｋ  Ａｌｌｉａｎｃｅ）では“Ｔｉｍｅ−Ｂａｓｅｄ Ｓｅｅｋ”を用いてオリジナル・コンテンツの部分再生を要求することを機器のユース・ケース・シナリオとして規定している。（ＤＬＮＡに関しては、例えばＵＲＩ＝ｈｔｔｐ：／／ｗｗｗ．ｄｌｎａ．ｏｒｇ／を参照されたい。また、Ｔｉｍｅ−Ｂａｓｅｄ  Ｓｅｅｋに関しては、例えばＤＬＮＡ  Ｈｏｍｅ  Ｎｅｔｗｏｒｋｅｄ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  Ｇｕｉｄｅｌｉｎｅ  ｖ１．０を参照されたい。）
【００７９】
従来方式では、暗号化したコンテンツ・データから直接オリジナル・コンテンツ・データの再生タイミングを探す術がないため、暗号化コンテンツ・データを復号して該当部分を探す必要がある。これに対し、本実施形態では、コンテンツ制御情報を基に要求された範囲のオリジナル・コンテンツ・データを含む暗号化コンテンツ・データを容易に探し、それを復号化して出力することができる。具体的には、コンテンツ制御情報から要求されたオリジナル・コンテンツ・データの位置に近い暗号化コンテンツ・データの位置をまず割り出して、その位置から復号を開始し、復号されたデータに補正をかけることで、正確な範囲のオリジナル・コンテンツ・データを取得することができる。
【００８０】
また、ユーザ・アプリケーションがコンテンツ・データの部分出力を要求する他のユース・ケース・シナリオとして、オリジナル・コンテンツ・データの一部をバイト指定で指定して要求される場合が挙げられる。例えば、ＤＴＣＰ−ＩＰでは、コンテンツを要求するときにＲａｎｇｅ．ｄｔｃｐ．ｃｏｍヘッダを用いてオリジナル・コンテンツ・データの一部をバイト指定で要求することを規定している。（Ｒａｎｇｅ．ｄｔｃｐ．ｃｏｍヘッダに関しては、例えば、ＤＴＣＰ  Ｖｏｌｕｍｅ  １  Ｓｕｐｐｌｅｍｅｎｔ  Ｅ  ＳｅｖｔｉｏｎＶ１ＳＥ．１０．３．１を参照されたい。）
【００８１】
しかしながら、暗号化したデータの位置と本来のデータの位置が同じとなる保証はない。例えば、暗号化とデータ圧縮を同時に行なうようなアルゴリズムを用いた場合、暗号化したデータの位置と本来のデータの位置が一致することはない。従来方式では、暗号化コンテンツ・データを復号して該当部分を探す必要がある。これに対し、本実施形態では、コンテンツ制御情報を基に要求された範囲のオリジナル・コンテンツ・データを含む暗号化コンテンツ・データを容易に探し、それを復号化して出力することができる。具体的には、コンテンツ制御情報から要求されたオリジナル・コンテンツ・データの位置に近い暗号化コンテンツ・データの位置を割り出し、その位置から復号を開始し、復号されたデータに補正をかけることで、正しい範囲のオリジナル・コンテンツ・データを取得することができる。
【００８２】
Ｄ．コンテンツ・データの保存
この項では、ネットワーク・インターフェースやチューナなどから入力されたコンテンツ・データを暗号化して外部記憶装置１６に保存するための処理動作について詳解する。
【００８３】
上述したように、情報処理装置は、チューナ１３やネットワーク・インターフェース１４からコンテンツ・データを受信すると、その解析を行なってコピー・モードや再生タイミングなどを含んだコンテンツ制御情報を取得して、暗号化コンテンツ・データとともに保存を行なう。
【００８４】
図６には、情報処理装置に入力されたコンテンツ・データの解析を行なってコンテンツ制御情報を取得して、暗号化コンテンツ・データとともに保存を行なうための機能的構成を模式的に示している。以下、各機能ブロックについて説明する。
【００８５】
入力部２１は、チューナ１３やネットワーク・インターフェース１４に相当し、受信したコンテンツ・データを後段の判定部２２に送出する。また、入力部２１は、暗号化復号装置１５における復号機能も備え、ＤＴＣＰ−ＩＰのようにコンテンツ・データが暗号化されて送られてくる場合には、それを復号する処理を施し、復号されたデータを判定部２２へ送出する。若しくは、入力部２１において途中までの復号結果を判定部へ送り、復号しながら判定結果を得るという実装形態もあり得る。
【００８６】
入力部２１の実態はハードウェアに限定されず、例えば、プロセッサ１１（若しくはそのメモリ空間）やネットワーク・インターフェース１４を用いてコンテンツ・データが入力される場合、プロセッサ１１上で動作するソフトウェアが入力部２１の機能を実現することもある。
【００８７】
判定部２２では、コピー・モード判定部２３、再生タイミング判定部２４、データ位置情報判定部２５などを備え、入力部２１から受理したコンテンツ・データを解析して、コピー・モードや再生タイミング、コンテンツ・データの長さなどからなる各種のコンテンツ制御情報を取得する。判定部２２に相当する処理機能は、オリジナル・コンテンツ・データの盗聴や改竄を回避するために、暗号化復号装置１５など耐タンパ性のあるハードウェア・モジュール内で閉じた処理として実行される。
【００８８】
コピー・モード判定部２３では、コンテンツ・データに設定されているコピー・モード若しくはコピー制御情報を取得する。コピー・モード判定部２３は、例えば、放送データに含まれるコピー制御情報を解析する。コンテンツのコピー・モードは１つのコンテンツ・データで一定である場合と、１つのコンテンツ内で区間毎に動的に変更される場合がある（前述）。また、ＤＴＣＰ−ＩＰから入力されるコンテンツ・データの場合、コピー・モード判定部２３は、ＰＣＰヘッダに含まれるＥ−ＥＭＩの値を調査したり、復号したオリジナル・コンテンツ・データに含まれるＤＴＣＰ−Ｄｅｓｃｒｉｐｔｏｒを参照したりして、コピー制御情報を取得することができる。（ＤＴＣＰ−Ｄｅｓｃｒｉｐｔｏｒについては、例えば、ＤＴＣＰ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｖｏｌｕｍｅ１  Ｖｅｒｓｉｏｎ１．４（Ｉｎｆｏｒｍａｔｉｏｎ  Ｖｅｒｓｉｏｎ）．Ａｐｐｅｎｄｉｘ  Ｂを参照されたい。）
【００８９】
再生タイミング判定部２４は、オリジナル・コンテンツ・データを解析して、そのデータの再生時間を取得する。再生時間を取得できないコンテンツ・データの場合、無効な再生タイミング情報となる。
【００９０】
データ位置情報判定部２５は、オリジナル・コンテンツ・データを解析して、データ位置情報を取得する。ここで言うデータ位置情報とは、オリジナル・コンテンツにおける先頭からのオフセットで、これまで判定部２１が受理したデータの総量をその値として扱う。
【００９１】
このように、判定部２２によって、入力されたコンテンツ・データについてのコンテンツ制御情報を取得することができる。コンテンツ制御情報は、例えば暗号化コンテンツ・データを構成する復号化単位毎に設けられたレコードからなるデータ構造である。各レコードには、対応する復号化単位についての、コンテンツ・データの先頭からのオフセット値、コピー・モード、再生するための再生タイミング、位置情報が記述されている。
【００９２】
出力部２６は、暗号化復号装置１５の出力ポートに相当し、判定部２２から受理したコンテンツ・データ並びにコンテンツ制御情報をバス１２経由で外部記憶装置１６へ出力する。出力部２６から外部記憶装置１６にコンテンツ・データを出力する際、バス１２上でのコンテンツ・データの盗聴を防ぐために、オリジナル・コンテンツ・データに暗号をかけて出力する。そして、外部記憶装置１６では、暗号化コンテンツ・データとは別のファイルとしてコンテンツ制御情報を保存したり、あるいは暗号化コンテンツ・データとそのコンテンツ制御情報を１つのファイルとしてまとめて保存したりする。
【００９３】
出力部２６から外部記憶装置１６へのデータ出力はプロセッサ１１の介在により行なってもよい。この場合、出力部２６はプロセッサ１１上で実行されるソフトウェアと暗号化復号装置１５で構成される。外部記憶装置１６への出力方法はユーザによって、あるいは、システムの特性によって設定される。
【００９４】
図７には、入力部２１においてコンテンツ・データを読み取る処理手順をフローチャートの形式で示している。
【００９５】
まず、チューナ１３やネットワーク・インターフェース１４などからのコンテンツ・データの入力を決定し、その処理を開始する（ステップＳ１）。ユーザ・アプリケーションから指定されても、入力部２１で静的に決定されていても良い。そして、入力部２１は、決定された入力元からデータを読み出す（ステップＳ２）。
【００９６】
ここで、入力部２１が読み出しに失敗したり、入力データをすべて読み出したりした場合には（ステップＳ３）、終了処理へ進む。また、読み出しに成功した場合は次ステップＳ４へ進む。
【００９７】
ステップＳ４では、入力されたデータが暗号化されたコンテンツ・データかどうかを判断する。暗号化されているかどうかは入力元に基づいて判断するか、若しくはデータを解析することで判断することができる。ＤＴＣＰ−ＩＰでネットワークから入力されたコンテンツ・データの場合、コピー・フリーで暗号化されていなくてもＰＣＰに包まれて転送される。このため、ＤＴＣＰ−ＩＰで伝送されたデータの入力は暗号化されたデータとして扱う。
【００９８】
そして 暗号化された入力データを復号して（ステップＳ５）、オリジナル・コンテンツ・データとして扱えるようにして、次ステップＳ６へ進む。但し、“Ｃｏｐｙ Ｎｅｖｅｒ”と指定されたコンテンツは記録することができないので、復号時にＣｏｐｙ Ｎｅｖｅｒであることが判っている場合は読み出したデータを破棄し、サイズがゼロの入力データとして、次ステップＳ６へ進む。
【００９９】
ステップＳ６では、入力データを判定部２２へ転送し、次の入力データの読み出しをするため、ステップＳ２に戻る。
【０１００】
図８には、判定部２２においてコンテンツ・データのコンテンツ制御情報を取得する処理手順をフローチャートの形式で示している。
【０１０１】
まず、判定部２２は、入力部２１からコンテンツ・データを受理する（ステップＳ１１）。そして、コンテンツ・データを受理したときには、次ステップＳ１３へ進む。ここで、入力部２１からのコンテンツ・データの入力が終了したか、又はエラーが発生した場合には（ステップＳ１２）、終了処理へ進む。
【０１０２】
ステップＳ１３では、コピー・モード判定部２３により、受理したコンテンツ・データを解析してコピー・モードを取得する。コピー・モードが常にコンテンツ・データに記されている訳ではない場合には、前回の値を利用する。
【０１０３】
次いで、再生タイミング判定部２４により、受理したコンテンツ・データを解析して、その再生タイミングを取得する（ステップＳ１４）。再生タイミングを取得できない場合は、例えばゼロや負数を時間として指定するなどして、無効であることを示すようにする。
【０１０４】
データ位置情報判定部２５では、これまでに受理したコンテンツ・データの累積サイズをデータ位置として保持する。そして、今回受理したコンテンツ・データのサイズを新たな累積サイズとして加算する（ステップＳ１５）。
【０１０５】
そして、上記ステップＳ１３〜Ｓ１５で取得した情報をコンテンツ制御情報として構成し（ステップＳ１６）、このコンテンツ制御情報とステップＳ１１で受理したコンテンツ・データを一組にして、出力部２６へ渡す（ステップＳ１７）。
【０１０６】
図９には、出力部２６がコンテンツ・データを外部記憶装置１６に記録する処理手順をフローチャートの形式で示している。
【０１０７】
出力部２６では、まず、ファイル名などの出力先を決定しその処理を開始する（ステップＳ２１）。ファイルの出力先はユーザ・アプリケーションから指定するようにしても、入力部で動的に決定しても良い。
【０１０８】
そして、ステップＳ２１で決定された出力先に、図２〜図５に示したいずれかの形式でコンテンツ・データ並びにコンテンツ制御情報のファイルを出力するかを決定する（ステップＳ２２）。ファイルの出力形式は、ユーザ・アプリケーションから指定してもよいし、出力部２６で静的に決定するようにしてもよい。
【０１０９】
次いで、判定部２２からコンテンツ制御情報とコンテンツ・データを受理する（ステップＳ２３）。
【０１１０】
ここで、判定部２２で処理が既に終了しており、すべてのコンテンツ制御情報とコンテンツ・データを受理していたり、エラーが発生していたりした場合は（ステップＳ２４）、終了処理を行なう。また、コンテンツ制御情報とコンテンツ・データを受理できたならば、次ステップＳ２５へ進む。
【０１１１】
ステップＳ２５では、受理したコンテンツ制御情報とコンテンツ・データを、ステップＳ２２において決定した出力形式で外部記憶装置１６に出力する。このとき、盗聴や改竄を防ぐため、コンテンツ・データは暗号化されている。
【０１１２】
図７〜図９に示したような処理を行ない、チューナ１３やネットワーク・インターフェース１４から入力されたコンテンツ・データを外部記憶装置１６に記憶することができる。
【０１１３】
Ｅ．暗号化コンテンツ・データの再生利用
この項では、外部記憶装置１６に保存されている暗号化コンテンツ・データを出力（部分出力を含む）して再生その他のコンテンツ利用を行なうための処理動作について詳解する。
【０１１４】
前項Ｄで説明したように、本実施形態に係る情報処理装置では、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存する際に、コピー・モードなどの関連するコンテンツ制御情報を読み取り可能な形式で付随させている。したがって、外部記憶装置１６から暗号化コンテンツ・データを読み出して、再生時に利用する際には、ユーザ・アプリケーションが再生タイミングやバイト位置により出力範囲を指定するなどのコンテンツ・データの部分出力要求に対応するなど、ユーザビリティを向上させるための柔軟な動作が可能である。
【０１１５】
図１０には、情報処理装置において、外部記憶装置１６に記録されている暗号化コンテンツ・データを読み出して再生時に利用するための機能的構成を模式的に示している。以下、各機能ブロックについて説明する。
【０１１６】
入力部３１は、暗号化コンテンツ・データの入力、すなわち外部記憶装置１６から暗号化コンテンツ・データの読み出し要求を行なう。入力部３１では、ユーザ・アプリケーションからコンテンツ・データの出力範囲に関する指示を受けると、その指示内容を判定部３２へ設定する。出力範囲に関する指示の内容は、再生時間を範囲で指定されたり、オリジナル・コンテンツの特定部分をバイト範囲で指定されたりするような再生要求を示す。その後、判定部３２から送られてくる暗号化コンテンツ・データが暗号化復号装置１５によりオリジナル・コンテンツ・データへ復号されると、そのオリジナル・コンテンツ・データを出力部３６へ転送する。このデータ転送の際に、コンテンツ制御情報も同時に転送する。
【０１１７】
判定部３２は、入力部３１から指定された条件に合致する、若しくはその条件に近い、コピー制御情報を外部記憶装置１６内の対象コンテンツから各種判定して探し出し、その部分のデータを読み出して、入力部３１へ転送する。判定部３２は、コピー・モード判定部３３と、再生タイミング判定部３４と、データ位置情報判定部３５からなる。
【０１１８】
コピー・モード判定部３３では、外部記憶装置１６から読み出された暗号化コンテンツ・データのコピー・モードを、関連するコンテンツ制御情報に基づいて判定する。コンテンツ・データの出力の目的が出力先として指定された外部記憶装置１６における記録動作であることが明示的に分かっている場合には、コピー・モードがＣｏｐｙ Ｎｅｖｅｒと記されたコンテンツ・データの出力をスキップする。
【０１１９】
再生タイミング判定部３４は、関連するコンテンツ制御情報を参照して、外部記憶装置１６から読み出された暗号化コンテンツ・データから、入力部３１で指定された再生範囲（時間）の始点に最も近い、再生範囲をカバーすることのできる暗号化コンテンツ・データの位置を探し出す。
【０１２０】
データ位置情報判定部３５は、関連するコンテンツ制御情報を参照して、入力部３１で指定された再生範囲（バイト）の始点に最も近い、再生範囲をカバーすることのできる暗号化コンテンツ・データの位置を探し出す。
【０１２１】
出力部３６は、入力部３１から与えられたコンテンツ制御情報とオリジナル・コンテンツ・データを所定の手順で出力する。例えば、付属モニタでの再生の場合は、そのオリジナル・コンテンツを順次暗号化復号装置１５内の復号部に入力し、再生を開始する。
【０１２２】
また、情報処理装置がＤＴＣＰ−ＩＰに準拠するＳｏｕｒｃｅ機器として動作して、ＤＴＣＰ−ＩＰを用いてネットワーク上の他の機器（Ｓｉｎｋ機器）へ伝送することができる。このような場合、出力部３６は、一旦復号化したコンテンツ・データを、ＤＴＣＰ−ＩＰで規定された暗号化手順を経てネットワークへ出力する。なお、ＤＴＣＰ−ＩＰに準拠するＳｏｕｒｃｅ機器とＳｉｎｋ機器間でのデータ伝送については、例えば、本出願人に既に譲渡されている特願２００４−１１３４５９号明細書に記述されている。
【０１２３】
図１１には、入力部３１が外部記憶装置１６に蓄積されたコンテンツ・データの読み込みを行なう処理手順をフローチャートの形式で示している。
【０１２４】
入力部３１では、アプリケーションが再生する時間帯を指定したり、オリジナル・コンテンツ・データのどこからどこまでを必要としているかをバイト数で指定したりして、出力する範囲を決定する（ステップＳ３１）。出力範囲の指定がない場合は先頭からの逐次再生とし、指定されたコンテンツ・データ全体を出力範囲とする。
【０１２５】
そして、入力部３１は、判定部３２に対し、ステップＳ３１で指定された内容を設定し、外部記憶装置１６からのデータの読み出しを開始させる（ステップＳ３２）。
【０１２６】
そして、判定部３２から、判定部３２が外部記憶装置１６から読み出したコンテンツ制御情報と暗号化コンテンツ・データを受理する（ステップＳ３３）。
【０１２７】
ここで、判定部３２からのコンテンツ・データの入力が終了したか、エラーが発生した場合には（ステップＳ３４）、終了処理へ進む。また、コンテンツ制御情報とコンテンツ・データを受理した場合には次ステップＳ３５へ進む。
【０１２８】
ステップＳ３５では、受理したコンテンツ・データは暗号化されているので、それを復号する。このとき、判定部３２へ設定した範囲と異なるコンテンツ制御情報であったとき、それを補正する。例えば、あるオリジナル・コンテンツの１０バイト目から２０バイトまでの範囲を判定部３２に設定したのに、受理したコンテンツ制御情報に含まれるデータの位置情報が９バイト目から１５バイトを示していた場合には、最初の１バイトを削除し、コンテンツ制御情報も１０バイト目から１５バイトを指しているように変更する。また、受理したコンテンツ制御情報のデータの位置情報が１６バイト目から２５バイト目となっていた場合、末端の５バイトを消去し、コンテンツ制御情報も１６バイト目から２０バイトを指しているように変更する。
【０１２９】
そして、入力部３１は、コンテンツ制御情報と復号したオリジナル・コンテンツ・データを出力部３６へ渡す。
【０１３０】
図１２には、暗号化コンテンツ・データを入力部３１により指定された範囲で読み出すための判定部３２に関する処理手順をフローチャートの形式で示している。
【０１３１】
判定部３２には、処理開始時に、どの範囲のコンテンツ・データを出力すべきかの指定が入力部３１からなされるので、その値を保持する（ステップＳ４１）。
【０１３２】
そして、入力部３１より示されたコンテンツ・データの範囲を含むデータを示すコンテンツ制御情報群を、外部記憶装置１６内で探索する（ステップＳ４２）。例えば、コンテンツの先頭から１０分のところから２０分目までの出力がアプリケーションから要求されその範囲指定がされているときに、再生タイミングとして９分を指すコンテンツ制御情報と２１分を指すコンテンツ制御情報とがあるならば、９分から２１分未満のコンテンツ・データを指すコンテンツ制御情報とそれに対応する暗号化コンテンツ・データが出力の対象として導き出される。
【０１３３】
次いで、判定部３２は、出力範囲に該当する暗号化コンテンツ・データを外部記憶装置１６から順次読み出して、コンテンツ制御情報とともに入力部３１へ転送する（ステップＳ４３）。
【０１３４】
そして、指定された範囲の暗号化コンテンツ・データをすべて転送したか、又は途中でエラーが生じていたら、終了処理を行なう（ステップＳ４４）。
【０１３５】
図１３には、出力部３６がコンテンツ・データを適切な方式で出力する処理手順をフローチャートの形式で示している。
【０１３６】
出力部３６は、デコーダやＤＴＣＰ−ＩＰでの伝送などの出力先を決定し、その処理を開始する（ステップＳ５１）。コンテンツ・データの出力先は、アプリケーションから指定されるか、又は入力部３１で動的に決定される。
【０１３７】
そして、出力部３６は、入力部３１からコンテンツ制御情報とコンテンツ・データを受理する（ステップＳ５２）。
【０１３８】
ここで、入力部３１からのデータ転送が終了していて、出力部３６がすべてのコンテンツ制御情報とコンテンツ・データを受理していたり、あるいはエラーが発生していたりした場合には、終了処理を行なう（ステップＳ５３）。一方、出力部３５がコンテンツ制御情報とコンテンツ・データを受理できたならば、次ステップＳ５４へ進む。
【０１３９】
ステップＳ５４では、受理したコンテンツ制御情報とコンテンツ・データを出力する。このとき、出力する際に暗号化が必要とされるならば、その暗号化処理を施します。例えば、ＤＴＣＰ−ＩＰで規定された暗号化手順を経てネットワークへ出力する場合（前述）などである。
【０１４０】
上述したような処理を行ない、外部記憶装置１６に記録された暗号化コンテンツ・データをデコーダやネットワーク上の機器に出力することができる。
【０１４１】
Ｆ．補足
コンテンツ制御情報を作成するために、判定部２１でコンテンツ・データを解析するときに、再生タイミングが存在していない場合は、再生タイミング判定部２４は、その解析時刻を再生タイミングとして判定しても良いし、あるいは再生タイミングが無効であるとして保存しても良い。
【０１４２】
図１に示した装置構成では、コンテンツ・データを暗号化・復号する暗号化復号装置１５と、コンテンツ・データの入力先となるネットワーク・インターフェース１４がバス１２で接続されているが、暗号化復号装置１５にネットワーク・インターフェース１４が直接（ローカル）接続され、暗号化復号装置１５自身がネットワーク・インターフェース１４を制御してコンテンツ・データの入出力を行なうという装置形態も実現可能である。暗号化復号装置１５が自律的に動作する装置構成とプロセッサ１１によりネットワーク・インターフェース１４を制御する装置構成では、バス１２を介してデータを受け渡しするという違いしかなく、本発明の要旨には直接関連しない。また、図１に示したように暗号化復号装置１５にチューナ１３がローカル接続されるのではなく、チューナ１３がバス１２に結び付けられ、バス１２上を保護されてデータ伝送される場合も同様である。
【０１４３】
また、図２には、暗号化コンテンツ・データとそのコンテンツ制御情報を別のファイルにして保存する仕組みを示した。コンテンツ制御情報とそれが対応する暗号化コンテンツ・データの一部を複数ファイルに分けて保存するとき、順番が判るようにしておかなければ正しく復号することができない。そのため、ファイル名に番号を付けたり、コンテンツ制御情報に順番を示すフィールドを足したりする必要がある。
【０１４４】
図２〜図５で示した例では、コンテンツ制御情報はコンテンツ・データの先頭からのオフセット値、コピー・モード、再生するための再生タイミング、位置情報を含んでいるが、コンテンツ制御情報として持つ情報はコンテンツ・データのフォーマットによって多様であり、コンテンツ制御情報の種別は上記に限定されるものではない。
【０１４５】
暗号化復号装置１５がコンテンツ・データを暗号化して外部記憶装置１６にコンテンツ制御情報と暗号化コンテンツ・データを出力するときに、コピー・モードが同じで再生時間がユーザ・アプリケーションによって指定される、あるいは既定の閾値内であるコンテンツ・データが連続する場合、複数のコンテンツ・データをまとめてコピー・モードの変わらないコンテンツ・データの一部として出力する。このようにすると、小さいデータが断続的に入力部２１へ到達するときであっても、コンテンツ制御情報の数が減少して管理単位をまとめることができ、効率よく出力することができる。但し、図４で示される保存形式を選択して暗号化コンテンツ・データを保存した場合、コンテンツ制御情報を出力するときのデータ長は出力時あるいは出力後に変更される。
【０１４６】
また、外部記憶装置１６に保存した暗号化コンテンツ・データを外部へ出力するときにも同様に、コピー・モードが同じであるコンテンツ・データが連続する場合、複数のコンテンツ・データをまとめてコピー・モードの変わらないコンテンツ・データの一部として出力するようにしてもよい。このようにすると、ＤＴＣＰ−ＩＰにおける伝送において、１つのＰＣＰに可能な限り大きなコンテンツ・データを格納することが可能である。すなわち、ＰＣＰヘッダ分のトラフィック量を減らすことができるとともに、ＤＴＣＰ−ＩＰの暗号化に関する一連の処理をコピー・モードが変化するまで停止させる必要もなくなる。
【０１４７】
また、コンテンツ制御情報に含まれるオフセット、データ長、位置情報などの数値は、図２〜図５に示したコンテンツ制御情報のデータ構成例では３２ビット長のデータであるように例示されている、４ＧＢ以上のデータを扱えるようにするため３２ビット長には限定しない。
【０１４８】
ＤＴＣＰ−ＩＰで出力するコンテンツはＤＴＣＰ＿ｄｅｓｃｒｉｐｔｏｒというコピー制御識別子がオリジナル・コンテンツに埋め込まれているが、放送などから取得したオリジナル・コンテンツにはこの識別子は含まれていない。この識別子を埋め込むとオリジナル・コンテンツのサイズが変化するので、本発明を適用した場合、チューナ１３からオリジナル・コンテンツが入力された際に先に埋め込むようにすればよい。
【０１４９】
コンテンツ制御情報は暗号化されずに外部記憶装置１６に保存されるので、任意のユーザ・アプリケーションからもその情報を読むことができる。したがって、コンテンツのコピー情報の照会が容易であり、およそのコンテンツの構成を認識することができる。これにより、そのコンテンツの情報をユーザや他の機器に再生処理をしなくても知らせることが可能となる。
【０１５０】
また、オリジナル・コンテンツを暗号化コンテンツに変換するとき、Ｃｏｐｙ Ｆｒｅｅｌｙである箇所を暗号化せず、コピー制御情報とともに保存するようにすることもできる。このようにすると、任意のユーザ・アプリケーションはコピー制御情報を自由に参照しＣｏｐｙ Ｆｒｅｅｌｙの箇所を知ることができるので、Ｃｏｐｙ Ｆｒｅｅｌｙの部分に限って暗号化復号装置１５を使用せずに再生することができる。これは、例えば、番組の紹介や予告編のコピー・モードはＣｏｐｙ Ｆｒｅｅｌｙで配信されるので、これらのオリジナル・コンテンツを保存したときに有効に使える機能となる。
【０１５１】
以上説明してきたように、本発明に係る情報処理装置によれば、オリジナル・コンテンツ・データをハードウェアで暗号化を施して保存する際に、コピー・モードなどの関連するコンテンツ制御情報を読み取り可能な形式で付随させておくので、以下のようにユーザ・アプリケーションの実用性向上を実現することができる。
【０１５２】
（１）暗号化コンテンツ・データの任意の場所から出力するというコンテンツの部分出力を大幅に容易化し、精度を向上することができる。
（２）コンテンツ制御情報を基に、コンテンツ出力時の暗号化処理を効率化することができる。
（３）オリジナル・コンテンツのコピー・モードを容易に照会することができる。
（４）外部記憶に保存されている暗号化コンテンツのうちＣｏｐｙ  Ｆｒｅｅｌｙの部分のみを任意のユーザ・アプリケーションが参照するという動作を容易に実現することができる。
【産業上の利用可能性】
【０１５３】
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
【０１５４】
本発明は、例えばＤＴＣＰ−ＩＰに準拠したＤＴＣＰ機器がネットワーク・インターフェース経由で入力された、ＤＴＣＰ−ＩＰで保護されたコンテンツ・データを外部記憶装置に保存する場合に好適に適用することができるが、本発明の要旨はこれに限定されるものではない。
【０１５５】
デジタル・コンテンツを保護するための他の技術仕様、若しくはいかなる技術仕様にも依らず、情報処理装置がコンテンツ・データを暗号化してから外部記憶装置に保存する際に、本発明を適用することにより、暗号化コンテンツ・データから部分出力を行なうといった、ユーザビリティを向上させるための柔軟な動作を実現することができる。
【０１５６】
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【図面の簡単な説明】
【０１５７】
【図１】図１は、本発明の一実施形態に係る情報処理装置のハードウェア構成を模式的に示した図である。
【図２】図２は、暗号化コンテンツ・データ全体のコンテンツ制御情報をまとめて１つのファイルとして構成し、暗号化コンテンツ・データとは別のファイルとして保存する仕組みを説明するための図である。
【図３】図３は、暗号化コンテンツ・データを保存するファイルの先頭にコンテンツ制御情報をまとめて、暗号化コンテンツ・データと同じファイルとしてコンテンツ制御情報を保存する仕組みを説明するための図である。
【図４】図４は、暗号化コンテンツ・データを格納するファイルの内部にコンテンツ制御情報をインターリーブして埋め込んで保存する仕組みを説明するための図である。
【図５】図５は、暗号化コンテンツ・データを復号化単位毎に分割し、個々の復号化単位を対応するコンテンツ制御情報とペアにして１つのファイルを構成し、全体として複数のファイルに分けて保存する仕組みを説明するための図である。
【図６】図６は、情報処理装置に入力されたコンテンツ・データの解析を行なってコンテンツ制御情報を取得して、暗号化コンテンツ・データとともに保存を行なうための機能的構成を示したブロック図である。
【図７】図７は、入力部２１においてコンテンツ・データを読み取る処理手順を示したフローチャートである。
【図８】図８は、判定部２２においてコンテンツ・データのコンテンツ制御情報を取得する処理手順を示したフローチャートである。
【図９】図９は、出力部２６がコンテンツ・データを外部記憶装置１６に記録する処理手順を示したフローチャートである。
【図１０】図１０は、情報処理装置において、外部記憶装置１６に記録されている暗号化コンテンツ・データを再生時に利用するための機能的構成を模式的に示した図である。
【図１１】図１１は、入力部３１が外部記憶装置１６に蓄積されたコンテンツ・データの読み込みを行なう処理手順を示したフローチャートである。
【図１２】図１２は、暗号化コンテンツ・データを入力部３１により指定された範囲で読み出すための判定部３２に関する処理手順を示したフローチャートである。
【図１３】図１３は、出力部３６がコンテンツ・データを適切な方式で出力する処理手順を示したフローチャートである。
【図１４】図１４は、ＤＴＣＰ＿ＩＰに準拠するＳｏｕｒｃｅ機器とＳｉｎｋ機器の間でＡＫＥに基づく鍵交換手続き、及び鍵交換により共有した鍵を利用した暗号化コンテンツ伝送を行なう仕組みを示した図である。
【符号の説明】
【０１５８】
１１…ＣＰＵ
１２…バス
１３…チューナ
１４…ネットワーク・インターフェース
１５…暗号化復号装置
１６…外部記憶装置
２１…入力部
２２…判定部
２３…コピー・モード判定部
２４…再生タイミング判定部
２５…データ位置情報判定部
２６…出力部
３１…入力部
３２…判定部
３３…コピー・モード判定部
３４…再生タイミング判定部
３５…データ位置情報判定部
３６…出力部
【図１】
2007034903.tif 000003
【図２】
2007034903.tif 000004
【図３】
2007034903.tif 000005
【図４】
2007034903.tif 000006
【図５】
2007034903.tif 000007
【図６】
2007034903.tif 000008
【図７】
2007034903.tif 000009
【図８】
2007034903.tif 000010
【図９】
2007034903.tif 000011
【図１０】
2007034903.tif 000012
【図１１】
2007034903.tif 000013
【図１２】
2007034903.tif 000014
【図１３】
2007034903.tif 000015
【図１４】
2007034903.tif 000016