JP4862957B2 - 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム - Google Patents

情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP4862957B2
JP4862957B2 JP2010248594A JP2010248594A JP4862957B2 JP 4862957 B2 JP4862957 B2 JP 4862957B2 JP 2010248594 A JP2010248594 A JP 2010248594A JP 2010248594 A JP2010248594 A JP 2010248594A JP 4862957 B2 JP4862957 B2 JP 4862957B2
Authority
JP
Japan
Prior art keywords
data
conversion
content
processing
conversion table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010248594A
Other languages
English (en)
Other versions
JP2011076615A (ja
Inventor
芳和 高島
健二朗 上田
丈於 大石
克美 村松
潤 米満
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2010248594A priority Critical patent/JP4862957B2/ja
Publication of JP2011076615A publication Critical patent/JP2011076615A/ja
Application granted granted Critical
Publication of JP4862957B2 publication Critical patent/JP4862957B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Storage Device Security (AREA)

Description

本発明は、情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、コンテンツ利用管理の要求される様々なコンテンツに対するデータ変換処理により、不正なコンテンツ利用を排除し、厳格なコンテンツ利用管理を実現する情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラムに関する。
音楽等のオーディオデータ、映画等の画像データ、ゲームプログラム、各種アプリケーションプログラム等、様々なソフトウエアデータ(以下、これらをコンテンツ(Content)と呼ぶ)は、記録メディア、例えば、青色レーザを適用したBlu−ray Disc(商標)、あるいはDVD(Digital Versatile Disc)、MD(Mini Disc)、CD(Compact Disc)にデジタルデータとして格納することができる。特に、青色レーザを利用したBlu−ray Disc(商標)は、高密度記録可能なディスクであり大容量の映像コンテンツなどを高画質データとして記録することができる。
これら様々な情報記録媒体(記録メディア)にデジタルコンテンツが格納され、ユーザに提供される。ユーザは、所有するPC(Personal Computer)、ディスクプレーヤ等の再生装置においてコンテンツの再生、利用を行う。
音楽データ、画像データ等、多くのコンテンツは、一般的にその作成者あるいは販売者に頒布権等が保有されている。従って、これらのコンテンツの配布に際しては、一定の利用制限、すなわち、正規なユーザに対してのみ、コンテンツの利用を許諾し、許可のない複製等が行われないようにする構成をとるのが一般的となっている。
デジタル記録装置および記録媒体によれば、例えば画像や音声を劣化させることなく記録、再生を繰り返すことが可能であり、不正コピーコンテンツのインターネットを介した配信や、コンテンツをCD−R等にコピーした、いわゆる海賊版ディスクの流通や、PC等のハードディスクに格納したコピーコンテンツの利用が蔓延しているといった問題が発生している。
DVD、あるいは近年開発が進んでいる青色レーザを利用した記録媒体等の大容量型記録媒体は、1枚の媒体に例えば映画1本〜数本分の大量のデータをデジタル情報として記録することが可能である。このように映像情報等をデジタル情報として記録することが可能となってくると不正コピーを防止して著作権者の保護を図ることが益々重要な課題となっている。昨今では、このようなデジタルデータの不正なコピーを防ぐため、デジタル記録装置および記録媒体に違法なコピーを防止するための様々な技術が実用化されている。
例えば、DVDプレーヤでは、コンテンツ・スクランブルシステム(Content Scramble System)が採用されている。コンテンツ・スクランブルシステムでは、例えばDVD−ROM(Read Only Memory)にビデオデータやオーディオデータ等が暗号化されて記録されている構成において、スクランブルを解除することでコンテンツ再生を可能とするものである。
スクランブル解除処理には、ライセンスを受けたDVDプレーヤに与えられた鍵などの特定データを適用した処理を実行することが必要となる。ライセンスは、不正コピーを行わない等の所定の動作規定に従うように設計されたDVDプレーヤに対して与えられる。従って、ライセンスを受けたDVDプレーヤでは、与えられた鍵などの特定データを利用して、DVD−ROMに記録されたデータのスクランブル解除を行なうことにより、DVD−ROMから画像や音声を再生することができる。
一方、ライセンスを受けていないDVDプレーヤは、スクランブル処理されたデータのスクランブル解除に適用する鍵などの特定データを有していないため、DVD−ROMに記録されたデータの再生を行うことができない。このように、コンテンツ・スクランブルシステム構成では、ライセンス時に要求される条件を満たしていないDVDプレーヤは、デジタルデータを記録したDVD−ROMの再生を行なえないことになり、不正コピーが防止されるようになっている。
しかし、このようなコンテンツ・スクランブルシステムは、再生処理を実行するユーザデバイスとしての情報処理装置側の処理負荷が高くなるという問題がある。また、既存のスクランブルシステムの中には、既にスクランブル解除手法が解読され解読方法がインターネット等の通信手段を介して流通しているものも多く存在する。このように、一旦スクランブル手法が解読されてしまうと、不正なスクランブル解除処理によってコンテンツが不正に再生され、また複製されるなど、コンテンツの著作権、利用権の侵害という問題が発生する。
また、コンテンツを暗号化しても、暗号鍵の漏洩が発生してしまうと、不正に復号されたコンテンツが流出するという問題が発生する。このような問題を解決する1つの構成を開示した従来技術として、特許文献1に記載の構成がある。特許文献1は、セクタを単位としてデータの間にダミーデータを挿入して、コンテンツの不正再生を防止した構成を開示している。しかし、再生時にダミーデータを除去し再生しないという構成では、再生装置、再生アプリケーションソフトの識別データを出力データに埋め込むことはできない。
特開平11−45508号公報
本発明は、このような状況に鑑みてなされたものであり、データ置き換えを主としたデータ変換処理による簡易な処理構成を採用することで、情報処理装置側の負荷を少なくして、コンテンツの不正利用を防止可能とした情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラムを提供することを目的とするものである。
本発明の第1の側面は、
コンテンツの再生処理を実行する再生装置であり、
前記コンテンツを構成するコンテンツ構成データの少なくとも一部を変換データに置き換えるデータ変換処理部を有し、
前記データ変換処理部は、変換テーブルの記録情報に従ったデータ変換処理を実行する構成であり、
前記変換テーブルは、
(1)前記変換データと、
(2)前記変換データの置き換え位置情報と、
を有し、
前記データ変換処理部は、
前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行する構成であることを特徴とする再生装置にある。
さらに、本発明の再生装置の一実施例において、前記部分的な変換テーブルデータは、前記パラメータ特定するためのパラメータ識別子をさらに有し、前記データ変換処理部は、前記パラメータ識別子に対応するパラメータを適用して演算処理または暗号処理を実行することを特徴とする。
さらに、本発明の再生装置の一実施例において、前記データ変換処理部は、前記1以上の変換テーブルに含まれる複数の変換データに対して、所定の再生単位で異なるパラメータを適用した排他論理和演算処理を実行し、置き換えデータである変換データの取得処理を実行する構成であることを特徴とする。
さらに、本発明の再生装置の一実施例において、前記データ変換処理部は、前記異なるパラメータの算出処理を、コンテンツの再生または外部出力に同期させた間欠的な処理として実行し、間欠的に順次、算出する異なるパラメータに基づく演算処理または暗号処理によって、異なるコンテンツ構成データに対応する変換データの取得を行なう構成であることを特徴とする。
さらに、本発明の再生装置の一実施例において、前記データ変換処理部は、前記パラメータ算出処理をバーチャルマシンによって実行する構成であることを特徴とする。
さらに、本発明の再生装置の一実施例において、前記データ変換処理部は、前記コンテンツの構成パケットに分散して分割記録された分割変換テーブルを順次取得して、該分割変換テーブルから、前記コンテンツの一部構成データのみに対応する置き換えデータである変換データと、該変換データの記録位置情報を取得する処理を実行する構成であることを特徴とする。
さらに、本発明の再生装置の一実施例において、前記再生装置は、さらに、前記コンテンツの復号処理を実行する復号処理部を有し、前記データ変換処理部は、前記復号処理部における復号コンテンツのコンテンツ構成データを前記変換データに置き換える処理を実行する構成であることを特徴とする。
さらに、本発明の第2の側面は、
情報記録媒体製造装置であり、
正当コンテンツ構成データと異なるブロークンデータを含むコンテンツと、
前記ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データを有し、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、
前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ変換処理プログラムとを取得するデータ処理部と、
前記ブロークンデータを含むコンテンツと、前記変換テーブルと、前記データ変換処理プログラムを情報記録媒体に記録するデータ記録部と、
を有し、
前記データ処理部の取得する変換テーブルは、
(1)前記変換データと、
(2)前記変換データの置き換え位置情報と、
を有する変換テーブルであり、
前記データ処理部の取得するデータ変換処理プログラムは、
前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させるプログラムであることを特徴とする情報記録媒体製造装置にある。
さらに、本発明の情報記録媒体製造装置の一実施例において、前記部分的な変換テーブルデータは、前記パラメータ特定するためのパラメータ識別子をさらに有し、前記データ変換処理プログラムは、前記パラメータ識別子に対応するパラメータを適用して演算処理または暗号処理を実行させるプログラムであることを特徴とする。
さらに、本発明の情報記録媒体製造装置の一実施例において、前記データ処理部は、コンテンツの一部構成データのみに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理による難読化した変換テーブルを取得し、前記データ記録部は、前記難読化した変換テーブルの記録処理を実行する構成であることを特徴とする。
さらに、本発明の情報記録媒体製造装置の一実施例において、前記データ処理部は、前記ブロークンデータを含むコンテンツを構成データとするストリームパケット中に、前記難読化した変換テーブルを散在させて配置したコンテンツデータを取得する構成であり、前記データ記録部は、前記難読化した変換テーブルを散在させて配置したコンテンツデータの記録処理を実行する構成であることを特徴とする。
さらに、本発明の第3の側面は、
記録データを有する情報記録媒体であり、
前記記録データの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、再生装置上で実行される前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ処理プログラムを、
記録データとして格納し、
前記変換テーブルは、
(1)前記変換データと、
(2)前記変換データの置き換え位置情報と、
を有し、
前記再生装置における前記データ処理プログラムの実行により、
前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させることを可能とした情報記録媒体にある。
さらに、本発明の第4の側面は、
コンテンツの再生処理を実行する再生装置において実行する情報処理方法であり、
データ変換処理部が、前記コンテンツを構成するコンテンツ構成データの少なくとも一部を変換データに置き換えるデータ変換ステップを有し、
前記データ変換ステップは、変換テーブルの記録情報に従ったデータ変換処理を実行するステップであり、
前記変換テーブルは、
(1)前記変換データと、
(2)前記変換データの置き換え位置情報と、
を有し、
前記データ変換ステップは、
前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行するステップである情報処理方法にある。
さらに、本発明の第5の側面は、
情報記録媒体製造装置において実行する情報記録媒体製造方法であり、
前記情報記録媒体製造装置のデータ処理部が、正当コンテンツ構成データと異なるブロークンデータを含むコンテンツと、
前記ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データを有し、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、
前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ変換処理プログラムとを取得するデータ処理ステップと、
前記情報記録媒体製造装置のデータ記録部が、前記ブロークンデータを含むコンテンツと、前記変換テーブルと、前記データ変換処理プログラムを情報記録媒体に記録するデータ記録ステップを実行し、
前記データ処理ステップにおいて取得する変換テーブルは、
(1)前記変換データと、
(2)前記変換データの置き換え位置情報と、
を有する変換テーブルであり、
前記データ処理ステップにおいて取得するデータ変換処理プログラムは、
前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させるプログラムであることを特徴とする情報記録媒体製造方法にある。
さらに、本発明の第6の側面は、
コンテンツの再生処理を実行する再生装置において情報処理を実行させる再生アプリケーション・プログラムであり、
データ変換処理部に、前記コンテンツを構成するコンテンツ構成データの少なくとも一部を変換データに置き換えさせデータ変換ステップを実行させ、
前記データ変換ステップは、変換テーブルの記録情報に従ったデータ変換処理を実行させるステップであり、
前記変換テーブルは、
(1)前記変換データと、
(2)前記変換データの置き換え位置情報と、
を有し、
前記データ変換ステップにおいて、
前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させる再生アプリケーション・プログラムにある。
さらに、本発明の第7の側面は、
オーサリング装置であり、
正当コンテンツ構成データと異なるブロークンデータを含むコンテンツと、
前記ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データを有し、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、
前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ変換処理プログラムを生成するデータ処理部を有し、
前記データ処理部の生成する変換テーブルは、
(1)前記変換データと、
(2)前記変換データの置き換え位置情報と、
を有する変換テーブルであり、
前記データ処理部の生成するデータ変換処理プログラムは、
前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させるプログラムであることを特徴とするオーサリング装置にある。
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
本発明の一実施例の構成によれば、変形データを含むコンテンツを情報記録媒体に記録し、さらに、変形データの置き換え対象となる正当コンテンツ構成データである変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルを情報記録媒体に格納する構成とし、コンテンツ再生処理に際して、情報記録媒体に記録された変換テーブルに従って、コンテンツ構成データを変換データに置き換える処理を行なう構成としたので、情報記録媒体に記録された暗号化コンテンツに対応する暗号鍵の漏洩が発生した場合でも、変換データの取得ができない装置においてはコンテンツの再生が実行されず、コンテンツの不正利用が防止される。
また、本発明の一実施例の構成によれば、変換データとして、コンテンツ再生装置またはコンテンツ再生アプリケーションを識別可能とした識別情報の構成ビットを解析可能としたデータを含む変換データを適用したので、万が一不正コンテンツが流出した場合でも、変換データの解析によって、不正コンテンツの流出源を特定することが可能となる。
また、本発明の一実施例の構成によれば、変換データを格納した変換テーブルを区分した分割テーブル毎に異なるパラメータを適用した演算処理または暗号化処理を施した設定としたので、ある特定のパラメータの漏洩が発生した場合でもコンテンツの一部のみの再生が許容するのみであり、コンテンツ全体の漏洩が発生する可能性を低減させることが可能となる。
情報記録媒体の格納データおよびドライブ装置、情報処理装置の構成および処理について説明する図である。 情報記録媒体の格納コンテンツに対して設定するコンテンツ管理ユニットの設定例について説明する図である。 情報記録媒体の格納コンテンツに対して設定するコンテンツ管理ユニットとユニット鍵との対応について説明する図である。 情報記録媒体の格納コンテンツに対して設定されるディレクトリ構成について説明する図である。 変換テーブルおよびデータ変換処理プログラムのディレクトリ構成について説明する図である。 コンテンツ再生処理の処理例1を示す図である。 ドライブとホスト間の相互認証処理シーケンスを説明する図である。 コンテンツ再生の際に実行する変換データの適用処理について説明する図である。 情報記録媒体に記録されるデータ変換テーブルのデータ構成について説明する図である。 コンテンツ再生処理の処理例2を示す図である。 コンテンツ再生処理の処理例3を示す図である。 変換テーブルブロック(FUTブロック)単位で難読化処理がなされている変換テーブルのデータ構成について説明する図である。 変換テーブルブロック(FUTブロック)単位で難読化処理がなされている変換テーブルのデータ構成について説明する図である。 コンテンツ再生処理の処理例4を示す図である。 コンテンツ再生処理の処理例5を示す図である。 コンテンツ再生処理の処理例6を示す図である。 変換テーブルがコンテンツを含むトランスポートストリームパケット内に格納される場合のデータ構成について説明する図である。 コンテンツ再生処理の処理例7を示す図である。 分割された変換テーブルのデータ構成について説明する図である。 暗号化コンテンツの構成データ中の特定パケットに分散されて変換テーブルが記録される構成例について説明する図である。 変換データの書き込み構成の一例について説明する図である。 コンテンツ再生処理の処理例7の変形例を示す図である。 コンテンツ再生処理の処理例8を示す図である。 変換テーブルの全体データ構成を示す図である。 変換テーブル内に含まれる複数の変換テーブルブロック(FUTブロック)中の1つの変換テーブルブロック(FUTブロック)のデータ構成を示す図である。 変換テーブルブロック(FUT)内の変換データエントリのデータ構成を示す図である。 コンテンツ再生処理の処理例8の変形例を示す図である。 変換テーブルの変形例を示す図である。 ホストとしてのアプリケーションを実行する情報処理装置のハードウェア構成例について説明する図である。
以下、図面を参照しながら本発明の情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラムの詳細について説明する。なお、説明は、以下の記載項目に従って行う。
1.情報記録媒体の格納データと、ドライブおよびホストにおける処理の概要
2.コンテンツ管理ユニット(CPSユニット)について
3.コンテンツ再生処理
(3.1)コンテンツ再生処理例1
(3.2)コンテンツ再生処理例2
(3.3)コンテンツ再生処理例3
(3.4)コンテンツ再生処理例4
(3.5)コンテンツ再生処理例5
(3.6)コンテンツ再生処理例6
(3.7)コンテンツ再生処理例7
(3.8)コンテンツ再生処理例8
4.情報処理装置の構成
5.情報記録媒体製造装置および情報記録媒体
[1.情報記録媒体の格納データと、ドライブおよびホストにおける処理の概要]
まず、情報記録媒体の格納データと、ドライブおよびホストにおける処理の概要について説明する。図1に、コンテンツの格納された情報記録媒体100、ドライブ120およびホスト150の構成を示す。ホスト150は、例えばPC等の情報処理装置で実行されるデータ再生(または記録)アプリケーションであり、所定のデータ処理シーケンスに従ってPC等の情報処理装置のハードウェアを利用した処理を行なう。
情報記録媒体100は、例えば、Blu−rayディスク、DVDなどの情報記録媒体であり、正当なコンテンツ著作権、あるいは頒布権を持ついわゆるコンテンツ権利者の許可の下にディスク製造工場において製造された正当なコンテンツを格納した情報記録媒体(ROMディスクなど)、あるいはデータ記録可能な情報記録媒体(REディスクなど)である。なお、以下の実施例では、情報記録媒体の例としてディスク型の媒体を例として説明するが、本発明は様々な態様の情報記録媒体を用いた構成において適用可能である。
(1)暗号化コンテンツ101
情報記録媒体100には、様々なコンテンツが格納される。例えば高精細動画像データであるHD(High Definition)ムービーコンテンツなどの動画コンテンツのAV(Audio Visual)ストリームや特定の規格で規定された形式のゲームプログラム、画像ファイル、音声データ、テキストデータなどからなるコンテンツである。これらのコンテンツは、特定のAVフォーマット規格データであり、特定のAVデータフォーマットに従って格納される。具体的には、例えばBlu−rayディスクROM規格データとして、Blu−ray Disc(商標)ROM規格フォーマットに従って格納される。
(1)暗号化コンテンツ101
情報記録媒体100には、様々なコンテンツが格納される。例えば高精細動画像データであるHD(High Definition)ムービーコンテンツなどの動画コンテンツのAV(Audio Visual)ストリームや特定の規格で規定された形式のゲームプログラム、画像ファイル、音声データ、テキストデータなどからなるコンテンツである。これらのコンテンツは、特定のAVフォーマット規格データであり、特定のAVデータフォーマットに従って格納される。具体的には、例えばBlu−rayディスクROM規格データとして、Blu−rayディスクROM規格フォーマットに従って格納される。
さらに、例えばサービスデータとしてのゲームプログラムや、画像ファイル、音声データ、テキストデータなどが格納される場合もある。これらのコンテンツは、特定のAVデータフォーマットに従わないデータフォーマットを持つデータとして格納される場合もある。
コンテンツの種類としては、音楽データ、動画、静止画等の画像データ、ゲームプログラム、WEBコンテンツなど、様々なコンテンツが含まれ、これらのコンテンツには、情報記録媒体100からのデータのみによって利用可能なコンテンツ情報と、情報記録媒体100からのデータと、ネットワーク接続されたサーバから提供されるデータとを併せて利用可能となるコンテンツ情報など、様々な態様の情報が含まれる。情報記録媒体に格納されるコンテンツは、区分コンテンツ毎の異なる利用制御を実現するため、区分コンテンツ毎に異なる鍵(CPSユニット鍵またはユニット鍵(あるいはタイトル鍵と呼ぶ場合もある))が割り当てられ暗号化されて格納される。1つのユニット鍵を割り当てる単位をコンテンツ管理ユニット(CPSユニット)と呼ぶ。さらに、コンテンツは、構成データの一部が、正しいコンテンツデータと異なるデータによって置き換えられたブロークンデータとして設定され、復号処理のみでは正しいコンテンツ再生が実行されず、再生を行なう場合は、ブロークンデータを変換テーブルに登録されたデータに置き換える処理が必要となる。これらの処理は後段で詳細に説明する。
(2)MKB
MKB(Media Key Block)102は、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックである。MKB102は有効なライセンスを持つユーザの情報処理装置に格納されたデバイス鍵[Kd]に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵[Km]の取得を可能とした鍵情報ブロックである。これはいわゆる階層型木構造に従った情報配信方式を適用したものであり、ユーザデバイス(情報処理装置)が有効なライセンスを持つ場合にのみ、メディア鍵[Km]の取得を可能とし、無効化(リボーク処理)されたユーザデバイスにおいては、メディア鍵[Km]の取得が不可能となる。
ライセンスエンティテイとしての管理センタはMKBに格納する鍵情報の暗号化に用いるデバイス鍵の変更により、特定のユーザデバイスに格納されたデバイス鍵では復号できない、すなわちコンテンツ復号に必要なメディア鍵を取得できない構成を持つMKBを生成することができる。従って、任意タイミングで不正デバイスを排除(リボーク)して、有効なライセンスを持つデバイスに対してのみ復号可能な暗号化コンテンツを提供することが可能となる。コンテンツの復号処理については後述する。
(3)タイトル鍵ファイル
前述したように各コンテンツまたは複数コンテンツの集合は、コンテンツの利用管理のため、各々、個別の暗号鍵(タイトル鍵(CPSユニット鍵))を適用した暗号化がなされて情報記録媒体100に格納される。すなわち、コンテンツを構成するAV(Audio Visual)ストリーム、音楽データ、動画、静止画等の画像データ、ゲームプログラム、WEBコンテンツなどは、コンテンツ利用の管理単位としてのユニットに区分され、区分されたユニット毎に異なるタイトル鍵を生成して、復号処理を行なうことが必要となる。このタイトル鍵を生成するための情報がタイトル鍵データであり、例えばメディア鍵等によって生成された鍵で暗号化タイトル鍵を復号することによってタイトル鍵を得る。タイトル鍵データを適用した所定の暗号鍵生成シーケンスに従って、各ユニット対応のタイトル鍵が生成され、コンテンツの復号が実行される。
(4)使用許諾情報
使用許諾情報には、例えばコピー・再生制御情報(CCI)が含まれる。すなわち、情報記録媒体100に格納された暗号化コンテンツ101に対応する利用制御のためのコピー制限情報や、再生制限情報である。このコピー・再生制御情報(CCI)は、コンテンツ管理ユニットとして設定されるCPSユニット個別の情報として設定される場合や、複数のCPSユニットに対応して設定される場合など、様々な設定が可能である。
(5)変換テーブル
前述したように、情報記録媒体100に格納された暗号化コンテンツ101は、所定の暗号化が施されているとともに、コンテンツ構成データの一部が、正しいデータと異なるブロークンデータによって構成されている。コンテンツ再生に際しては、このブロークンデータを正しいコンテンツデータである変換データに置き換えるデータ上書き処理が必要となる。この変換データを登録したテーブルが変換テーブル(Fix−up Table)105である。ブロークンデータはコンテンツ中に散在して多数設定され、コンテンツ再生に際しては、これらの複数のブロークンデータを変換テーブルに登録された変換データに置き換える(上書き)する処理が必要となる。この変換データを適用することにより、例えば、暗号鍵が漏洩しコンテンツの復号が不正に行なわれた場合であっても、コンテンツの復号のみでは、置き換えデータの存在によって正しいコンテンツの再生が不可能となり、不正なコンテンツ利用を防止することができる。
なお、変換テーブル105には、通常の変換データに加え、コンテンツ再生装置またはコンテンツ再生アプリケーションを識別可能とした識別情報の構成ビットを解析可能としたデータを含む変換データが含まれる。具体的には、例えば、プレーヤ(ホストアプリケーションを実行する装置)の識別データとしてのプレーヤIDあるいはプレーヤIDに基づいて生成された識別情報が記録された「識別マークを含む変換データ」が含まれる。識別マークを含む変換データは、コンテンツの再生に影響を与えないレベルで、正しいコンテンツデータのビット値をわずかに変更したデータである。これらの変換データを利用した処理についての詳細は、後段で説明する。
なお、図1には、変換テーブル105を独立したデータファイルとして設定した例を示しているが、変換テーブルを独立ファイルとせずに、暗号化コンテンツ101の構成パケット中に散在させて含ませる構成としてもよい。これらの構成および処理については後段で説明する。
(6)データ変換処理プログラム
データ変換処理プログラム106は、変換テーブル(Fix−up Table)105の登録データによるデータ変換処理を実行するための処理命令を含むプログラムであり、コンテンツ再生を実行するホストによって利用される。図1におけるホスト100のデータ変換処理部154において実行される。
ホストでは、データ変換処理を実行するバーチャルマシン(VM)を設定し、バーチャルマシン(VM)において、情報記録媒体100から読み出したデータ変換処理プログラム106を実行して、変換テーブル(Fix−up Table)105の登録データを適用して、復号コンテンツに対して、その一部構成データのデータ変換処理を実行する。これらの処理の詳細については後述する。
次に、ホスト150とドライブ120の構成、処理の概要について、図1を参照して説明する。情報記録媒体100に格納されたコンテンツの再生処理は、ドライブ120を介してホスト150にデータが転送されて実行される。コンテンツの利用に先立ち、ドライブ120と、ホスト150間では相互認証処理が実行され、この認証処理の成立によって双方の正当性が確認された後、ドライブからホストに暗号化コンテンツが転送され、ホスト側でコンテンツの復号処理が行なわれ、さらに上述の変換テーブルによるデータ変換処理が実行されてコンテンツ再生が行なわれる。
ホスト150と、ドライブ120間において実行する相互認証においては、各機器またはアプリケーションが不正な機器またはアプリケーションとして登録されていないかを示す管理センタの発行したリボケーション(無効化)リストを参照して、正当性を判定する処理を実行する。
ドライブ120は、ホストの証明書(公開鍵証明書)のリボーク(無効化)情報を格納したホストCRL(Certificate Revocation List)を格納するためのメモリ122を有する。一方、ホスト150は、ドライブの証明書(公開鍵証明書)のリボーク(無効化)情報を格納したドライブCRL(Certificate Revocation List)を格納するためのメモリ152を有する。メモリは不揮発性メモリ(NVRAM)であり、例えば、情報記録媒体100から読み出されるCRLがより新しいバージョンである場合には、それぞれのデータ処理部121,151は、メモリ122.152に新しいバージョンのホストCRLまたはドライブCRLを格納する更新処理を行なう。
ホストCRL、ドライブCRL等のCRLは管理センタが逐次更新する。すなわち新たな不正機器が発覚した場合、その不正機器に対して発行された証明書のIDまたは機器IDなどを新規エントリとし追加した更新CRLを発行する。各CRLにはバージョン番号が付与されており、新旧比較が可能な構成となっている。例えばドライブが装着した情報記録媒体から読み出されたCRLが、ドライブ内のメモリ122に格納されたCRLより新しい場合、ドライブは、CRLの更新処理を実行する。ホスト150も同様に、ドライブCRLの更新を実行する。
ドライブ120のデータ処理部121は、このCRLの更新処理の他、コンテンツ利用に際して実行されるホストとの認証処理、さらに、情報記録媒体からのデータ読み出し、ホストヘのデータ転送処理などを実行する。
ホスト150は、前述したように、例えばPC等の情報処理装置で実行されるデータ再生(または記録)アプリケーションであり、所定のデータ処理シーケンスに従ってPC等の情報処理装置のハードウェアを利用した処理を行なう。
ホスト150は、ドライブ120との相互認証処理や、データ転送制御などを実行するデータ処理部151、暗号化コンテンツの復号処理を実行する復号処理部153、前述の変換テーブル105の登録データに基づくデータ変換処理を実行するデータ変換処理部154、デコード(例えばMPEGデコード)処理を実行するデコード処理部155を有する。
データ処理部151は、ホスト−ドライブ間の認証処理を実行し、認証処理においては、不揮発性メモリ(NVRAM)としてのメモリa152に格納されたドライブCRLを参照して、ドライブがリボークされたドライブでないことを確認する。ホストも、また、メモリa152に新しいバージョンのドライブCRLを格納する更新処理を行なう。
復号処理部153では、メモリb156に格納された各種情報、および、情報記録媒体100からの読み取りデータを適用して、コンテンツの復号に適用する鍵を生成し、暗号化コンテンツ101の復号処理を実行する。データ変換処理部154は、情報記録媒体100から取得されるデータ変換処理プログラムに従って、情報記録媒体100から取得される変換テーブルに登録された変換データを適用してコンテンツの構成データの置き換え処理(上書き)を実行する。デコード処理部155は、デコード(例えばMPEGデコード)処理を実行する。
情報処理装置150のメモリb156には、デバイス鍵:Kdや、相互認証処理に適用する鍵情報や復号に適用する鍵情報などが格納される。なお、コンテンツの復号処理の詳細については後述する。デバイス鍵:Kdは、先に説明したMKBの処理に適用する鍵である。MKBは有効なライセンスを持つユーザの情報処理装置に格納されたデバイス鍵[Kd]に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵[Km]の取得を可能とした鍵情報ブロックであり、暗号化コンテンツの復号に際して、情報処理装置150は、メモリb156に格納されたデバイス鍵:Kdを適用してMKBの処理を実行することになる。なお、コンテンツの復号処理の詳細については後述する。
[2.コンテンツ管理ユニット(CPSユニット)について]
前述したように、情報記録媒体に格納されるコンテンツは、ユニット毎の異なる利用制御を実現するため、ユニット毎に異なる鍵が割り当てられ暗号化処理がなされて格納される。すなわち、コンテンツはコンテンツ管理ユニット(CPSユニット)に区分されて、個別の暗号化処理がなされ、個別の利用管理がなされる。
コンテンツ利用に際しては、まず、各ユニットに割り当てられたCPSユニット鍵(タイトル鍵とも呼ばれる)を取得することが必要であり、さらに、その他の必要な鍵、鍵生成情報等を適用して予め定められた復号処理シーケンスに基づくデータ処理を実行して再生を行う。コンテンツ管理ユニット(CPSユニット)の設定態様について、図2を参照して説明する。
図2に示すように、コンテンツは、(A)インデックス210、(B)ムービーオブジェクト220、(C)プレイリスト230、(D)クリップ240の階層構成を有する。再生アプリケーションによってアクセスされるタイトルなどのインデックスを指定すると、例えばタイトルに関連付けられた再生プログラムが指定され、指定された再生プログラムのプログラム情報に従ってコンテンツの再生順等を規定したプレイリストが選択される。
プレイリストには、再生対象データ情報としてのプレイアイテムが含まれる。プレイリストに含まれるプレイアイテムによって規定される再生区間としてのクリップ情報によって、コンテンツ実データとしてのAVストリームあるいはコマンドが選択的に読み出されて、AVストリームの再生、コマンドの実行処理が行われる。なお、プレイリスト、プレイアイテムは多数、存在し、それぞれに識別情報としてのプレイリストID、プレイアイテムIDが対応付けられている。
図2には、2つのCPSユニットを示している。これらは、情報記録媒体に格納されたコンテンツの一部を構成している。CPSユニット1,271、CPSユニット2,272の各々は、インデックスとしてのタイトルと、再生プログラムファイルとしてのムービーオブジェクトと、プレイリストと、コンテンツ実データとしてのAVストリームファイルを含むクリップを含むユニットとして設定されたCPSユニットである。
コンテンツ管理ユニット(CPSユニット)1,271には、タイトル1,211とタイトル2,212、再生プログラム221,222、プレイリスト231,232、クリップ241、クリップ242が含まれ、これらの2つのクリップ241,242に含まれるコンテンツの実データであるAVストリームデータファイル261,262が、少なくとも暗号化対象データであり、原則的にコンテンツ管理ユニット(CPSユニット)1,271に対応付けて設定される暗号鍵であるタイトル鍵(Kt1)(CPSユニット鍵とも呼ばれる)を適用して暗号化されたデータとして設定される。
コンテンツ管理ユニット(CPSユニット)2,272には、インデックスとしてアプリケーション1,213、再生プログラム224、プレイリスト233、クリップ243が含まれ、クリップ243に含まれるコンテンツの実データであるAVストリームデータファイル263がコンテンツ管理ユニット(CPSユニット)2,272に対応付けて設定される暗号鍵である暗号鍵であるタイトル鍵(Kt2)適用して暗号化される。
例えば、ユーザがコンテンツ管理ユニット1,271に対応するアプリケーションファイルまたはコンテンツ再生処理を実行するためには、コンテンツ管理ユニット(CPSユニット)1,271に対応付けて設定された暗号鍵としてのタイトル鍵:Kt1を取得して復号処理を実行することが必要となる。コンテンツ管理ユニット2,272に対応するアプリケーションファイルまたはコンテンツ再生処理を実行するためには、コンテンツ管理ユニット(CPSユニット)2,272に対応付けて設定された暗号鍵としてのタイトル鍵:Kt2を取得して復号処理を実行することが必要となる。
CPSユニットの設定構成、およびタイトル鍵の対応例を図3に示す。図3には、情報記録媒体に格納される暗号化コンテンツの利用管理単位としてのCPSユニット設定単位と、各CPSユニットに適用するタイトル鍵(CPSユニット鍵)の対応を示している。なお、予め後発データ用のCPSユニットおよびタイトル鍵を格納して設定しておくことも可能である。例えばデータ部281が後発データ用のエントリである。
CPSユニット設定単位は、コンテンツのタイトル、アプリケーション、データグループなど、様々であり、CPSユニット管理テーブルには、それぞれのCPSユニットに対応する識別子としてのCPSユニットIDが設定される。
図3において、例えばタイトル1はCPSユニット1であり、CPSユニット1に属する暗号化コンテンツの復号に際しては、タイトル鍵Kt1を生成し、生成したタイトル鍵Kt1に基づく復号処理を行なうことが必用となる。
このように、情報記録媒体100に格納されるコンテンツは、ユニット毎の異なる利用制御を実現するため、ユニット毎に異なる鍵が割り当てられ暗号化処理がなされて格納される。各コンテンツ管理ユニット(CPSユニット)に対する個別の利用管理のために、各コンテンツ管理ユニット(CPSユニット)に対する使用許諾情報(UR:Usage Rule)が設定されている。使用許諾情報は、前述したように、コンテンツに対する例えばコピー・再生制御情報(CCI)を含む情報であり、各コンテンツ管理ユニット(CPSユニット)に含まれる暗号化コンテンツのコピー制限情報や、再生制限情報である。
なお、タイトル鍵の生成には、情報記録媒体に格納された様々な情報を適用したデータ処理が必要となる。これらの処理の具体例についは、後段で詳細に説明する。
次に、図4を参照して、図2に示す階層構造を持つコンテンツに対応するディレクトリ構成について説明する。
(A)図2におけるインデックス210は、図3に示すディレクトリ中のindex.bdmvファイル
(B)図2におけるムービーオブジェクト220は図3に示すディレクトリ中のMovieObject.bdmvファイル
(C)図2におけるプレイリスト230は図3に示すディレクトリ中のPLAYLISTディレクトリ下のファイル、
(D)図2におけるクリップ240は図3に示すディレクトリ中のCLIPINFディレクトリ下のファイルとSTREAMディレクトリ下のファイルで同じファイル番号持つものの対に対応している。
情報記録媒体に格納されるコンテンツは、前述したように、コンテンツの構成データの一部が、正しいコンテンツデータと異なるデータによって置き換えられたブロークンデータとして設定され、復号処理のみでは正しいコンテンツ再生が実行されず、再生を行なう場合は、ブロークンデータを変換テーブルに登録されたデータに置き換える処理が必要となる。この置き換え処理には、情報記録媒体に格納されたデータ変換処理プログラム106を適用して、変換テーブル(Fix−up Table)105の登録データによるデータ変換処理を実行する。
前述したように、変換テーブル105、データ変換処理プログラム106を情報記録媒体に記録されている。図4に示すディレクトリ構成を持つコンテンツに対応する変換テーブルと、データ変換処理プログラムのディレクトリ構成を図5に示す。図5は、図4のディレクトリ構造を持つAVコンテンツに対して作成されるデータ変換処理プログラム、および変換テーブルのディレクトリ構成である。
図5に示す[ContentCode.svm]がデータ変換処理プログラムであり、
図5に示す[FixUpXXXXX.tbl]はクリップ1つごとに定義される変換テーブルである。(XXXXXはクリップ情報ファイルのファイル番号と一致している)
[3.コンテンツ再生処理]
以下、ドライブとホスト間の相互認証処理を実行し、認証の成立を条件として、ドライブに装着した情報記録媒体に格納されたコンテンツをドライブからホストに転送してコンテンツ再生処理を実行する場合の複数の処理例について説明する。
(3.1)コンテンツ再生処理例1
まずコンテンツ再生処理例1について、図6を参照して説明する。図6には、左から暗号化コンテンツの格納された情報記録媒体310、情報記録媒体310をセットし、データの読み取りを実行するドライブ330、ドライブとデータ通信可能に接続され、情報記録媒体310に格納されたコンテンツをドライブ330を介して取得して再生処理を実行する再生アプリケーションを実行するホスト350を示している。ホスト350は、例えばPC等の情報処理装置において実行される。
情報記録媒体310には、MKB(Media Key Block)311、タイトル鍵ファイル312、暗号化コンテンツ313、変換テーブル314、データ変換処理プログラム315が格納されている。ホスト350は、MKBの処理に適用するデバイス鍵351を保持している。
図6に示すホスト350がドライブ330を介して情報記録媒体310の格納コンテンツを取得して再生する処理シーケンスについて説明する。まず、情報記録媒体310の格納コンテンツの読み出しに先立ち、ホスト350とドライブ330は、ステップS101において、相互認証を実行する。この相互認証は、ホストおよびドライブがそれぞれ正当な機器またはアプリケーションソフトであるかを確認する処理である。この相互認証処理シーケンスとしては、様々な処理が適用可能である。その一例を図7を参照して説明する。
図7は、公開鍵暗号方式に従った相互認証シーケンスの1例である。まず、ステップS121において、ドライブ330は、自己のメモリ(NVRAM)に格納されたドライブ公開鍵証明書と、任意に生成した乱数をホストに送信する。ステップS122において、ホスト350も、自己のメモリ(NVRAM)に格納されたホスト公開鍵証明書と、任意に生成した乱数をドライブに送信する。
ステップS123において、ドライブ330は、ホストから受信したホスト公開鍵証明書の正当性と、ホストのリボーク状況をホスト証明書リボケーションリスト(ホストCRL:Certificate Revocation list)に基づいて検証する。ステップS123において、ドライブ330は、まず、ホスト公開鍵証明書に設定された署名検証を実行する。図7に示すECDSA_Vは、楕円曲線暗号に基づく署名検証(Verification)の実行を示している。この署名検証は、鍵管理エンティテイの秘密鍵に対応する公開鍵を適用して実行する。ドライブは、署名検証用の鍵管理エンティテイの公開鍵をメモリ(NVRAM)に保持しており、これを適用して署名検証を実行する。署名検証によって、ホスト公開鍵証明書が改ざんされていないものであることを確認する。署名検証によって、ホスト公開鍵証明書が改ざんされていることが判明した場合は処理を中止する。
さらに、ドライブ330は、改ざんのないことが明確になったホスト公開鍵証明書に基づいて、この証明書がリボーク(無効化)されているものでないことを、ホストCRLを参照して確認する。ホストCRLは、ホストに対して発行済みの公開鍵証明書について、無効化された証明書のIDをリスト化したものである。ホストCRLはドライブ内のメモリまたは情報記録媒体から取得する。
ドライブ330は、改ざんのないことが明確になったホスト公開鍵証明書からIDを取得し、このIDがホストCRLに登録されているIDと一致するか否かを判定する。一致するIDがホストCRLに存在する場合、そのホストは、リボーク(無効化)されたホストであると判定し、以降の処理を中止する。ホスト公開鍵証明書から取得したIDが、ホストCRLに記録されていない場合は、正当なリボークのなされていないホストであると判定して、処理を続ける。
一方、ホスト350においても、ステップS124において、ドライブ330から受領したドライブ公開鍵証明書に基づいて、ドライブ公開鍵証明書の正当性の確認(改ざん検証)と、ドライブCRLを適用したドライブのリボークの有無判定を実行する。ドライブの公開鍵証明書が正当なものであり、リボークされていないことが確認された場合にのみ、処理を継続する。ドライブCRLはホスト内のメモリまたは情報記録媒体から取得する。
次に、ドライブ330、ホスト350は、それぞれの認証結果をドライブレスポンス(S125)、ホストレスポンス(S126)として通知する。この認証結果の通知に際して、双方では、楕円曲線暗号を適用した値としてのECDH(Elliptic Curve Diffie Hellman)の値を生成して、双方に通知しあう。
ドライブ330は、ホスト350からのドライブ認証結果とECDHの値を受信すると、ステップS127において、ホストのレスポンスを検証し、ドライブ認証の成立を確認して、受信したECDHの値を適用して共通鍵としてのセッション鍵を生成する。ホスト350においても、ドライブ330からのホスト認証結果とECDHの値を受信すると、ステップS128において、ドライブレスポンスを検証し、ホスト認証の成立を確認して、ECDHの値に基づいて共通鍵としてのセッション鍵を生成する。
このような相互認証処理によって、ドライブ330とホスト350は共通鍵としてのセッション鍵を共有する。
図6に戻り、コンテンツ利用処理のシーケンスについての説明を続ける。ステップS101において、ホストドライブ間の相互認証が実行され、セッション鍵(Ks)を共有した後、ホスト350は、ステップS102において、情報記録媒体310に記録されたMKB311を、ドライブを介して取得して、メモリに格納されたデバイス鍵351を適用したMKB311の処理を実行して、MKBからメディア鍵(Km)を取得する。
前述したように、MKB(Media Key Block)311は、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックであり、有効なライセンスを持つ装置に格納されたデバイス鍵(Kd)に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵(Km)の取得を可能とした鍵情報ブロックである。
次に、ステップS103において、ステップS102におけるMKB処理で取得したメディア鍵(Km)を適用して、情報記録媒体310から読み取ったタイトル鍵ファイルの復号を実行して、タイトル鍵(Kt)を取得する。情報記録媒体310に格納されるタイトル鍵ファイルはメディア鍵によって暗号化されたデータを含むファイルであり、メディア鍵を適用した処理によってコンテンツ復号に適用するタイトル鍵(Kt)を取得することができる。なお、ステップS103の復号処理は、例えばAES暗号アルゴリズムが適用される。
次に、ホスト350は、ドライブ330を介して情報記録媒体310に格納された暗号化コンテンツ313を読み出して、トラックバッファ352に読み出しコンテンツを格納し、このバッファ格納コンテンツについて、ステップS104において、タイトル鍵(Kt)を適用した復号処理を実行し、復号コンテンツを取得する。
復号コンテンツは、平文TSバッファ353に格納する。(Plain TS)は復号された平文トランスポートストリームを意味する。ここで、平文TSバッファ353に格納される復号コンテンツは、前述したブロークンデータを含むコンテンツであり、このままでは再生できず、所定のデータ変換(上書きによるデータ置き換え)を行なう必要がある。
このデータ変換処理を示すのが、図6のブロック371である。図6のブロック371は図1に示したホスト150のデータ変換処理部154の処理に相当する。このデータ変換処理の概要について、図8を参照して説明する。
図6に示す暗号化コンテンツ313は、情報記録媒体に格納された暗号化コンテンツであり、この暗号化コンテンツが、一旦、ホスト側のトラックバッファ352に格納される。図8(1)に示すトラックバッファ格納データ401である。
ホスト側の復号処理によって、トラックバッファ格納データ401としての暗号化コンテンツの復号が実行されて、復号結果データが平文TSバッファ353に格納される。図8(2)に示す復号結果データ402である。
復号結果データ402には、正常なコンテンツ構成データではない、ブロークンデータ403が含まれる。ホストのデータ変換処理部は、このブロークンデータ403を、図6に示す情報記録媒体310に記録された変換テーブル314から取得される正しいコンテンツ構成データとしての変換データ404に置き換える処理を実行する。この置き換え処理は、例えば平文TSバッファ353に書き込み済みのデータに対する一部データの再書き込み(上書き)処理として実行される。
さらに、ホストの実行するデータ変換処理は、ブロークンデータを正常なコンテンツデータである変換データに置き換える処理のみならず、図8に示すように、識別マークを含む変換データ405によって、復号結果データ402の一部構成データを置き換える処理を実行する。
識別マークとは、コンテンツ再生装置またはコンテンツ再生アプリケーションを識別可能とした識別情報の構成ビットを解析可能としたデータである。具体的には例えば、ホストアプリケーションを実行するプレーヤとしての情報処理装置の識別情報(プレーヤID)の構成データまたは、プレーヤIDに基づいて生成される識別マークである。識別マークを含む変換データは、コンテンツの再生に影響を与えないレベルで、正しいコンテンツデータのビット値をわずかに変更したデータである。
識別マークを含む変換データ405は、コンテンツ中に多数設定され、これら複数の識別マークを含む変換データ405を集積して解析することで、例えばプレーヤIDが判別される。識別マークを含む変換データ405は、コンテンツとして通常再生可能なレベルで正常コンテンツデータの構成ビットを変更したデータであり、MPEGビットストリーム解析によりビット(識別マーク構成ビット)判別が可能なデータである。
情報記録媒体に格納される変換テーブルには、図8に示す変換データ404、識別マークを含む変換データ405が多数登録されており、さらに、これらの書き込み位置情報についても登録されている。この変換テーブル格納情報に基づくデータ変換処理を実行することで、平文TSバッファ353に格納されたデータは、図8(3)に示す変換処理済みデータ406に置き換えられることになる。
図6に戻り、点線ブロック371内の処理、すなわちホスト側のデータ変換処理について説明する。データ変換処理は、例えば、ホスト内にバーチャルマシンとして設定されるセキュアVM356によって実行される。バーチャルマシン(VM)は中間言語を直接解釈して実行する仮想コンピュータであり、プラットホームに依存しない中間言語での命令コード情報を解釈して実行する。
セキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して処理を実行する。セキュアVM356は、イベントハンドラ354による処理制御がなされ、また、ホストアプリケーションを実行しているプレーヤ(情報処理装置)のID情報などをプレーヤ情報355として入力して、情報記録媒体310から取得したデータ変換処理プログラム315を実行する。イベントハンドラ354は、処理監視を実行する。セキュアVM356によって実行される処理が正しく行なわれているか否かのエミュレータチェックや、その他のホストアプリケーションや、ホストアプリケーション実行機器としてのプレーヤ(情報処理装置)の処理、状態を監視し、処理エラー、不正処理などが検出された場合には、セキュアVM356によるデータ変換処理を中止させる。
セキュアVM356は、情報記録媒体310から読み出した変換テーブルを適用して、平文TSバッファ353に格納されたデータの変換処理を実行する。すなわち図6に示すステップS105のデータ変換処理であり、図8に示す復号結果データ402に対して、ブロークンデータ403を正当なコンテンツ構成データである変換データ404に置き換え、さらに、識別マークを含む変換データ405をコンテンツの一部データと入れ替えるデータ上書き処理を実行して、平文TSバッファ353の格納データを変換処理済みデータ406に変更する。
その後、変換済みのTS(トランスポートストリーム)は、ネットワークなどを介して外部出力され、外部の再生機器において再生される。あるいは、ステップS106において、デマルチプレクサによる処理によって、トランスポートストリーム(TS)からエレメンタリストリーム(ES)への変換が実行され、さらに、デコード処理(ステッブS107)が行なわれた後、ディスプレイスピーカを介して再生される。
情報記録媒体に記録されるデータ変換テーブルのデータ構成について、図9を参照して説明する。情報記録媒体に記録されるデータ変換テーブルは、例えば図9に示すデータ構成を持つ。すなわち、
Number of Fix-Up Entry:変換データエントリ数(Number of Fix-Up Entry)
Fix-Up Entry Length:1変換データエントリのバイト数(Byte Length of one Fix-Up Entry()=(N+6))
SPN(ソースパケットナンバー):変換データ書き込みパケットのAVストリームファイルの開始位置からのパケットナンバー(Absolute Transformed Packet Number from the beginning of AV Stream File)
Byte Offset:SPNで指定されたパケット中の変換データ書き込み開始位置を示すバイトオフセット(Start byte position of transformed data in the packet)
player_id_bit_position:識別マーク(プレーヤIDなど)のビット位置(Indicate bit position of Player ID for forensic)
Fix-Up Data:変換上書きデータ(Value to be overwritten (N byte is transformed in one TS Packet))
これらのデータを持つ。
1つのコンテンツ中には、多数のブロークンデータが散在して配置されており、このブロークンデータの位置に変換テーブルに記録された変換データを上書きする。また、プレーヤIDなどの識別マークを持つ変換データについても、1つのコンテンツデータ中に多数の書き込み位置が設定される。変換テーブルは、これらの
(a)変換データ
(b)識別マーク入り変換データ
の実体データとしての「変換上書きデータ」と、
これらのデータの書き込み位置の指定情報を記録したテーブルとして設定される。
なお、どの程度の頻度で、変換データ(識別マーク入り変換データも含む)の置き換え領域を設定するか、また変換データのサイズについては、様々な設定が可能であるが、各設定により変換テーブルサイズは異なるサイズとなる。例えばMPEGコンテンツを構成する1GOP(Group Of Pictures)あたり、2つの変換データまたは識別マーク入り変換データを設定する構成においては、変換データ(識別マーク入り変換データも含む)が8バイトである場合、約400KB程度のテーブル、16バイトである場合、約600KB程度のテーブルサイズとなる。
また、MPEGコンテンツを構成する1GOP(Group Of Pictures)あたり、5つの変換データまたは識別マーク入り変換データを設定する構成においては、変換データ(識別マーク入り変換データも含む)が8バイトである場合、約1MB程度のテーブル、16バイトである場合、約1,5MB程度のテーブルサイズとなる。
ホスト350のセキュアVMは、情報記録媒体310に記録された変換テーブル314に従って、
(a)変換データ
(b)識別マーク入り変換データ
を変換テーブルの指定位置に書き込む処理を実行する。データ書き込みは、平文TSバッファ253に格納されたデータに対する変換データ、または識別マーク入り変換データの上書き処理として実行され、この処理の結果、平文TSバッファ253に格納されたデータは、先に説明した図8(3)のデータに置き換えられることになる。
ホストを実装しているプレーヤ(PCなどの情報処理装置)からのコンテンツの外部出力、あるいはコンテンツ再生は、この図8(3)に示す変換処理済みデータに基づく処理として実行される。
変換データは正しいコンテンツ構成データであり、また識別マーク入り変換データも、正しいコンテンツの再生に適用されるデータであるので、これらのデータに基づくデコード再生によって正しいコンテンツ再生が可能となる。また、このコンテンツが、例えば不正にコピーされ、コピーデータが多数外部流出した場合には、識別マーク入り変換データを解析することで、プレーヤIDを取得することが可能であり、不正コンテンツデータの流出源を特定することが可能となる。
(3.2)コンテンツ再生処理例2
次に、コンテンツ再生処理例2について、図10を参照して説明する。図10は、左から暗号化コンテンツの格納された情報記録媒体310、情報記録媒体310をセットし、データの読み取りを実行するドライブ330、ドライブとデータ通信可能に接続され、情報記録媒体310に格納されたコンテンツをドライブ330を介して取得して再生処理を実行する再生アプリケーションを実行するホスト350を示している。ホスト350は、例えばPC等の情報処理装置において実行される。
図10には、情報記録媒体310に記録されているMKB(Media Key Block)と、タイトル鍵ファイルは省略してある。ホスト350は、MKBの処理に適用するデバイス鍵を保持し、情報記録媒体310に記録されているMKB(Media Key Block)と、タイトル鍵ファイルを適用して、図6を参照して説明したと全く同様の処理を実行してタイトル鍵(Kt)を算出する。これらの処理についても、図10においては省略してある。情報記録媒体には、さらに、暗号化コンテンツ313、変換テーブル314、データ変換処理プログラム315が格納されている。
図10に示すコンテンツ再生処理例2では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、ブロック382の処理を、コンテンツ再生あるいは出力前の一括処理として実行する点が特徴である。すなわち、セキュアVM356は、コンテンツの再生やコンテンツの外部出力の開始前などに、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出し、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310から読み出した変換テーブル314の復号処理などを実行する。
情報記録媒体310に記録された変換テーブル314は、例えばAES暗号や、排他論理和演算などの演算によって難読化処理が施されており、セキュアVM356は、データ変換処理プログラム315に従って、復号処理、あるいは所定の演算処理を実行して、平文データとしての変換テーブルを取得する。ここまでの処理は、コンテンツの再生やコンテンツの外部出力の開始前などに一括して実行する。
その後の処理は、コンテンツ再生やコンテンツ外部出力処理に並行して実行するリアルタイム処理として実行する。すなわち、ステップS201におけるコンテンツ復号処理、ステップS202におけるデータ変換処理、すなわち、情報記録媒体310に記録された変換テーブル314に登録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブル314に記録された指定位置に書き込むデータ変換処理、さらに、変換済みのTS(トランスポートストリーム)の外部出力処理、あるいは、ステップS203におけるデマルチプレクサ処理、すなわちトランスポートストリーム(TS)からエレメンタリストリーム(ES)への変換処理、ステップS204におけるデコード処理、これらの処理は、コンテンツ再生または外部出力に並行したリアルタイム処理として実行する。
このような処理シーケンスとすることで、セキュアVM356による変換テーブル314の処理に時間がかかる場合であっても、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。
(3.3)コンテンツ再生処理例3
次に、コンテンツ再生処理例3について、図11を参照して説明する。図11も図10と同様、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。図11も図10と同様、MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。
図11に示すコンテンツ再生処理例3では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、ブロック383の処理を、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に実行する間欠的低頻度処理として実行する点が特徴である。セキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310から読み出した変換テーブル314の復号処理などを実行する。
情報記録媒体310に記録された変換テーブル314は、変換テーブル314の部分構成データとしての変換テーブルブロック(FUT(Fix-Up Table)ブロック)単位で例えばAES暗号や、排他論理和演算などの演算によって難読化処理がなされている。セキュアVM356は、データ変換処理プログラム315に従って、各変換テーブルブロック(FUTブロック)単位で復号処理、あるいは所定の演算処理を実行して、平文データとしてのブロック単位の変換テーブルを取得する。これらの処理を、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に実行する。
変換テーブルブロック(FUTブロック)単位で難読化処理がなされている変換テーブルのデータ構成について、図12、図13を参照して説明する。情報記録媒体に記録されるデータ変換テーブルは、例えば図12に示すデータ構成を持つ。すなわち、
Number of FUT blocks:変換テーブルブロック数
Length of FUT block:1変換テーブルブロックのバイト数
Number of Fix-Up Entry in FUT block:1つのFUTブロック中の変換データエントリ数(Number of Fix-Up Entry)
Length of one Fix-Up Entry:1変換データエントリのバイト数
First SPN for FUT block:各変換テーブルブロックの第1エントリのデータ書き込み位置としてのパケットナンバー
FUT:個別に暗号化あるいは演算処理がなされ難読化された部分変換テーブルとしての変換テーブルブロック(FUTブロック)
これらのデータを持つ。
各部分変換テーブルとしての変換テーブルブロック(FUTブロック)のデータ構成例を、図13に示す。各テーブルブロックは、以下のデータを持つ。すなわち、
SPN(ソースパケットナンバー):変換データ書き込みパケットのAVストリームファイルの開始位置からのパケットナンバー(Absolute Transformed Packet Number from the beginning of AV Stream File)
Byte Offset:SPNで指定されたパケット中の変換データ書き込み開始位置を示すバイトオフセット(Start byte position of transformed data in the packet)
FM_flag:識別マーク入り変換データの適用による変換処理を行なうか否かを設定したフラグ、例えば、0:全てのプレーヤにおいて変換を実行、1:プレーヤIDの該当するビット位置のビット値が"1"である場合にのみ変換を実行、などの設定とされる。
player_id_bit_position:識別マーク(プレーヤIDなど)のビット位置(Indicate bit position of Player ID for forensic)
Fix-Up Data:変換上書きデータ(Value to be overwritten (N byte is transformed in one TS Packet))
これらのデータを持つ。
図13に示す各部分変換テーブルとしてのテーブルブロック(FUTブロック)は、個別に暗号化または演算処理が実行化されたデータとして設定される。図11に示すセキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310から読み出した変換テーブル314の復号処理あるいは演算処理を部分変換テーブルとしてのテーブルブロック(FUTブロック)単位で実行して、平文データとしての部分変換テーブルを取得する。これらの処理を、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に実行する。
その後の処理は、コンテンツ再生やコンテンツ外部出力処理に並行して実行するリアルタイム処理として実行する。すなわち、ステップS201におけるコンテンツ復号処理、ステップS202におけるデータ変換処理、すなわち、情報記録媒体310に記録された変換テーブル314に登録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブル314に記録された指定位置に書き込むデータ変換処理、さらに、変換済みのTS(トランスポートストリーム)の外部出力処理、あるいは、ステップS203におけるデマルチプレクサ処理、すなわちトランスポートストリーム(TS)からエレメンタリストリーム(ES)への変換処理、ステップS204におけるデコード処理、これらの処理は、コンテンツ再生または外部出力に並行したリアルタイム処理として実行する。
このような処理シーケンスとすることで、図10を参照して説明した処理例2と同様、セキュアVM356による変換テーブル314の処理に時間がかかる場合であっても、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。また、セキュアVMは、コンテンツ再生や外部出力に必要な変換データをまとめて生成することがなく、一定のコンテンツ部分データに対応する変換データを逐次生成する構成であるので、例えば、コンテンツ再生中に不正な処理が検出された場合、イベントハンドラ354の不正処理検出情報に基づきセキュアVM356の処理を中止することで、変換データの生成が中止され、不正なコンテンツ再生や外部出力を途中で終了させることが可能となる。
(3.4)コンテンツ再生処理例4
次に、コンテンツ再生処理例4について、図14を参照して説明する。図14も図10、図11と同様、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。情報記録媒体には、さらに、暗号化コンテンツ313、変換テーブル314、データ変換処理プログラム315が格納されている。
図14に示すコンテンツ再生処理例4では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、点線枠で示すブロック382の処理は、図10を参照して説明したように、コンテンツ再生あるいは外部出力処理前の一括処理として実行する。セキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310から読み出した変換テーブル314の復号処理を実行する。
セキュアVM356は、データ変換処理プログラム315に従って、復号処理、あるいは所定の演算処理を実行して、平文データとしての変換テーブルを取得する。この処理の結果、取得した平文変換テーブルをテーブル記憶部362に格納する。
ステップS202におけるデータ変換処理は、コンテンツ再生または外部出力に並行してリアルタイムイベントハンドラ361の制御によって実行される。リアルタイムイベントハンドラ361の制御により、テーブル記憶部362に格納された平文データとしての変換テーブルに登録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブルに記録された指定位置に書き込むデータ変換処理が実行される。
本処理例における処理シーケンスは、先に図10を参照して説明した処理シーケンスと同様であり、ステップS201におけるコンテンツ復号処理、ステップS202におけるデータ変換処理、ステップS203におけるデマルチプレクサ処理、ステップS204におけるデコード処理、これらの処理順に従った処理が、コンテンツ再生または外部出力に並行したリアルタイム処理として実行される。
本処理例における処理シーケンスとすることで、図10を参照して説明した処理例2と同様、セキュアVM356による変換テーブル314の処理に時間がかかる場合であっても、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。
(3.5)コンテンツ再生処理例5
次に、コンテンツ再生処理例5について、図15を参照して説明する。図15には、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。
図15に示すコンテンツ再生処理例5では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、点線枠で示すブロック383の処理は、図11を参照して説明したように、コンテンツ再生あるいは外部出力処理前および処理中に間欠的に行なう間欠的低頻度処理として実行する。セキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310から読み出した変換テーブル314の復号処理を部分的に間欠的に実行する。
変換テーブル314は、一旦ホスト350内のプリロードテーブル記憶部364に格納され、セキュアVM356は、プリロードテーブル記憶部364に格納されたテーブルデータを取得して、データ変換処理プログラム315に従って、復号処理、あるいは所定の演算処理を実行して、平文データとしての変換テーブルを部分的に、逐次生成する。
セキュアVM356は、コンテンツデータの一部分に適用する変換データを含む変換テーブルの一部構成データのみを復号して一部データからなる平文変換テーブルを間欠的に生成する。この処理の結果、取得した平文部分変換テーブルを部分テーブル記憶部363に格納する。
ステップS202におけるデータ変換処理は、コンテンツ再生または外部出力に並行してリアルタイムイベントハンドラ361の制御によって実行される。リアルタイムイベントハンドラ361の制御により、部分テーブル記憶部363に格納された平文データとしての部分変換テーブルに登録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブルに記録された指定位置に書き込むデータ変換処理がコンテンツ再生処理または外部出力処理に並行したリアルタイム処理として実行される。
本処理例における処理シーケンスは、先に図11を参照して説明した処理シーケンスと同様であり、ステップS201におけるコンテンツ復号処理、ステップS202におけるデータ変換処理、ステップS203におけるデマルチプレクサ処理、ステップS204におけるデコード処理、これらの処理順に従った処理が、コンテンツ再生または外部出力に並行したリアルタイム処理として実行される。
本処理例における処理シーケンスとすることで、図11を参照して説明した処理例3と同様、セキュアVM356による変換テーブル314の処理に時間がかかる場合であっても、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現され、また、セキュアVMは、コンテンツ再生や外部出力に必要な変換データをまとめて生成することがなく、一定のコンテンツ部分データに対応する変換データを逐次生成する構成であるので、例えば、コンテンツ再生中に不正な処理が検出された場合、不正処理検出情報に基づきセキュアVM356の処理を中止することで、変換データの生成が中止され、不正なコンテンツ再生や外部出力を途中で終了させることが可能となる。
(3.6)コンテンツ再生処理例6
次に、コンテンツ再生処理例6について、図16を参照して説明する。図16には、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。本処理例では、図16に示すように、情報記録媒体310には、変換テーブルを含む暗号化コンテンツ318と、データ変換処理プログラム315が格納されている。点線枠で示すブロック381の処理をリアルタイム処理として実行し、点線枠で示すブロック385の処理は、間欠的な処理として実行される。
すなわち、本処理例では、暗号化コンテンツの構成データ中の特定パケットに分散されて変換テーブルが記録される。例えば図17に示すような設定で変換テーブルがコンテンツを含むトランスポートストリームパケット内に格納される。図17(a)にコンテンツデータの構成を示す。このコンテンツ構成は、復号されたトランスポートストリーム(TS)パケットからなるコンテンツデータを示している。トランスポートストリームは、所定バイト数のTS(トランスポートストリーム)パケットから構成されている。これらのTSパケットの一部の複数パケットに、変換テーブルが分割されて記録されることになる。例えば、図に示すTSパケット391,392・・・に変換テーブルが記録される。変換テーブルを格納するTSパケットとしては、例えばコンテンツ中に分散して設定されるPMT(プログラムマップテーブル)を含むTSパケットなどが利用される。
分割された変換テーブルのデータは、例えば先に、図13を参照して説明した変換テーブルブロック(FUTブロック)と同様の構成を持つ。変換テーブルには、復号コンテンツに対して置き換え処理を行なう変換データ(または識別マーク入り変換データ)とその変換データの記録位置が記録されている。
各変換テーブルに記録された変換データは、例えば図17(b)に示すように、各変換テーブルを含むTSパケットの近傍位置に記録位置が設定される。例えば、図17(b)に示す例では、変換データの記録領域を持つパケット394,395は、変換テーブルを含むパケット391の近傍に設定される。このような設定とすることで、コンテンツの復号、再生をリアルタイムで実行する場合、変換データによるデータ置き換え処理を復号処理後の連続処理として実行することが可能であり、変換テーブルの記録されたTSパケットの検出、解析処理によって、変換データを取得し、テーブルに記録された位置に対して変換データを書き込む(上書き)処理を効率的に実行することができる。
図16に示すコンテンツ再生処理例6では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、ブロック383の処理を、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に実行する間欠的低頻度処理として実行する。
セキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310にコンテンツとともに記録された変換テーブルを平文変換テーブルにするために必要なパラメータ(P1,P2,P3・・・)を生成して出力する。この処理は間欠的に行なわれる。
パラメータP1,P2,P3・・・は所定のコンテンツデータ単位に対応する分割された変換テーブル、例えばコンテンツに分散記録された分割された変換テーブル1,2,3・・・に適用する演算または暗号処理パラメータである。分割された変換テーブル1,2,3・・・の各々は、それぞれ異なるパラメータP1,P2,P3・・・を適用した演算あるいは暗号処理が施されて情報記録媒体に記録されている。
例えば具体的には、分割された変換テーブル1,2,3・・・に適用する排他論理和(XOR)演算パラメータである。セキュアVM356は、データ変換処理プログラム315に従って、変換テーブル314を平文変換テーブルにするために必要なパラメータ(P1,P2,P3・・・)を間欠的に生成して出力する処理を実行する。
リアルタイム処理ブロック381では、ステップS301において、変換テーブルを含む暗号化コンテンツ318の復号が実行され、ステップS302におけるデマルチプレクサの処理によって、各変換テーブルが分離され、リアルタイムイベントハンドラ361の制御によって、ステップS303におけるテーブル復元&データ変換処理が実行される。リアルタイムイベントハンドラ361の制御により、セキュアVM356から間欠的に出力されるパラメータ(P1,P2,P3)を適用して、変換テーブルの復号または演算を実行して平文変換テーブルを取得し、取得した部分変換テーブルに登録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブルに記録された指定位置に書き込むデータ変換処理をコンテンツ再生処理または外部出力処理に並行したリアルタイム処理として実行する。
例えば、パラメータP1,P2,P3・・・は所定のコンテンツ部分データ単位に対応する変換データとの排他論理和(XOR)演算パラメータである場合、ステップS303におけるテーブル復元処理としては、
[変換テーブル1](XOR)[P1]、
[変換テーブル2](XOR)[P2]、
[変換テーブル3](XOR)[P3]、
: :
これらの排他論理和演算処理を実行して、各平文変換テーブルデータを取得する。なお、上記式において、[A](XOR)[B]は、AとBの排他論理和演算を意味するものとする。
このように、情報記録媒体に記録されたコンテンツ318に含まれる変換テーブルは、各コンテンツ部分に対応する変換データおよび変換データ位置情報を記録した変換テーブルに分割されており、それぞれが、固有のパラメータP1,P2,P3・・・と排他論理和演算されて格納されている。このパラメータは、セキュアVM356によって逐次、取得され出力される。
ステップS303のテーブル復元&データ変換処理以後の処理は、先に図11他を参照して説明した処理と同様であり、コンテンツ再生やコンテンツ外部出力処理に並行して実行するリアルタイム処理として行なわれる。すなわち、ステップS304におけるデマルチプレクサ処理、ステップS305におけるデコード処理、これらの処理が、コンテンツ再生または外部出力に並行したリアルタイム処理として実行される。
本処理例では、コンテンツ全体に対応する変換テーブルの構成データを分割して、各分割テーブルとされた変換テーブルごとに異なるパラメータを対応付け、これらのパラメータをセキュアVM356が、間欠的に出力する構成としたので、例えばパラメータの一部が漏洩しても、コンテンツの全体を復元することは不可能であり、より強固なコンテンツ利用管理が実現される。また、本処理例においても、図10他を参照して説明した処理例と同様、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。また、例えば、コンテンツ再生中に不正な処理が検出された場合、イベントハンドラ354の不正処理検出情報に基づきセキュアVM356の処理を中止することで、変換データの生成が中止され、不正なコンテンツ再生や外部出力を途中で終了させることが可能となる。
(3.7)コンテンツ再生処理例7
次に、コンテンツ再生処理例7について、図18を参照して説明する。図18には、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。本処理例では、先に図16を参照して説明したコンテンツ再生処理例6と同様、図18に示すように、情報記録媒体310には、変換テーブルを含む暗号化コンテンツ318と、データ変換処理プログラム315が格納されている。点線枠で示すブロック381の処理をリアルタイム処理として実行し、点線枠で示すブロック383の処理は、間欠的な処理として実行される。
すなわち、本処理例も、先に図16を参照して説明したコンテンツ再生処理例6と同様、暗号化コンテンツの構成データ中の特定パケットに分散されて変換テーブルが記録される。例えば図17に示すような設定で変換テーブルがコンテンツを含むトランスポートストリームパケット内に格納される。分割された変換テーブルのデータ構成について、図19を参照して説明する。
図19に示す変換テーブルは、分割された変換テーブルのデータ構成であり、特定のコンテンツ部分領域に対する変換データ(識別マーク入り変換データも含む)のみについてのデータ実体および記録位置情報を持つ。図19に示す変換テーブルのデータには、以下のデータが含まれる。
SP_No:シークレットパラメータ(SP)の識別子(ID)[XOR演算に適用]
type_indicator:タイプ識別子[00:変換なし,01b:変換データによる処理,10b,11b:識別マーク入り変換データによる処理]
FM_ID_bit_position:識別マーク入り変換データに対応するプレーヤIDの識別ビット位置
relative_SPN:変換データ適用パケット位置(プログラマブルマップテーブル(PMT)格納パケットからのパケット数)
byte_position:パケット内の変換データ記録位置
overwrite_value:変換データ(識別マーク入り変換データも含む)
relative_SPN_2:第2変換データ適用パケット位置(PMTパケットからのパケット数)
byte_position_2:パケット内の変換データ記録位置(第2変換データ対応)
overwrite_value_2:第2変換データ(識別マーク入り変換データも含む)
これらのデータによって構成される。
図19に示す変換テーブルは、先に説明した処理例6と同様、図20(a)に示すように、暗号化コンテンツの構成データ中の特定パケットに分散されて変換テーブルが記録される。例えば図20(a)に示すように、変換テーブルがコンテンツを含むトランスポートストリームパケット内に格納される。図20(a)は、復号されたトランスポートストリーム(TS)パケットからなるコンテンツデータを示している。トランスポートストリームは、所定バイト数のTS(トランスポートストリーム)パケットから構成されている。これらのTSパケットの一部の複数パケットに、変換テーブルが分割されて記録されることになる。例えば、図に示すTSパケット501,502・・・に変換テーブルが記録される。変換テーブルを格納するTSパケットとしては、例えばコンテンツ中に分散して設定されるPMT(プログラムマップテーブル)を含むTSパケットなどが利用される。
分割された変換テーブルのデータには、図19を参照して説明したように、復号コンテンツに対して置き換え処理を行なう変換データ(または識別マーク入り変換データ)とその変換データの記録位置が記録されている。
図19に示す変換テーブルは、コンテンツデータの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルとして設定され、この変換テーブルを適用して、コンテンツ構成データの置き換え処理実行命令を含むデータ変換処理プログラムを実行して、データ変換が行われる。
変換テーブルに含まれる情報[type_indicator]は、変換テーブルの登録情報が、
(a)ブロークンデータを正当なコンテンツデータに変換するための変換データに関する登録情報であるか、または、
(b)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報であるか、
上記(a)、(b)のいずれの登録情報であるかを識別するタイプ識別子である。
変換テーブルの登録情報領域が、再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報領域である場合には、テーブル登録情報として、コンテンツ再生装置またはコンテンツ再生アプリケーションの識別情報に基づいて選択的に適用する変換データ、すなわち、識別マーク入り変換データが登録される。
変換テーブルの登録情報[FM_ID_bit_position]は、複数ビットからなる再生装置又は再生アプリケーションの識別情報中、処理態様決定のために参照すべきビットの位置情報である。
例えば、複数ビットからなる再生装置又は再生アプリケーションの識別情報中、処理態様決定のために参照すべきビットのビット値が1である場合、変換テーブルに登録された識別マーク入り変換データによってコンテンツ構成データの置き換えを実行し、参照すべきビットのビット値が0である場合には置き換えを実行しないといった処理態様が決定されてデータ変換が実行される。
なお、参照ビットが0の場合に変換を実行し、1の場合に変換を実行しないとする設定も可能である。また参照ビットが0の場合の変換データと、1の場合の変換データをそれぞれ別の変換データとして設定し、参照ビットのビット値に応じて、適宜、変換データを選択して設定する構成としてもよい。
なお、変換テーブルは、コンテンツの一部構成データのみに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理による難読化した変換テーブルとして設定される。
各変換テーブルに記録された変換データは、例えば図20(b)に示すように、各変換テーブルを含むTSパケットの近傍位置に記録位置が設定される。例えば、図20(b)に示す例では、変換データの記録領域を持つパケット511,512は、変換テーブルを含むパケット501の近傍に設定される。例えば、これらの各パケットは1GOPを単位として設定される。
このような設定とすることで、コンテンツの復号、再生をリアルタイムで実行する場合、変換データによるデータ置き換え処理を復号処理後の連続処理として実行することが可能であり、変換テーブルの記録されたTSパケットの検出、解析処理によって、変換データを取得し、テーブルに記録された位置に対して変換データを書き込む(上書き)処理を効率的に実行することができる。
本処理例では、各変換テーブルは、個別に異なるシークレットパラメータ(SP1,SP2,SP3・・・)を適用した演算あるいは暗号処理が施されて情報記録媒体に記録されている。
例えば具体的には、各変換テーブルは、個別に異なるシークレットパラメータ(SP1,SP2,SP3・・・)を適用した排他論理和(XOR)演算処理がなされて各パケットに格納されている。シークレットパラメータは例えば128ビットデータからなる。図18に示すセキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310にコンテンツとともに記録された変換テーブルを平文変換テーブルにするために必要なシークレットパラメータ(SP1,SP2,SP3・・・)、すなわち排他論理和(XOR)演算パラメータ(SP1,SP2,SP3・・・)を生成して出力する。出力されたシークレットパラメータ(SP1,SP2,SP3・・・)は、SPレジスタ371に格納される。この処理は間欠的に、順次行なわれる。
図18に示すセキュアVM356は、シークレットパラメータ(SP1,SP2,SP3・・・)に加え、シークレットパラメータの指定ナンバー(SPNo.)と、プレーヤIDに対応して設定される識別マークのID(FM_ID)をデータ変換処理プログラム315に従って生成して、これらの値を出力する。これらの値もSPレジスタ371に格納される。
リアルタイム処理ブロック381では、ステップS401において、変換テーブルを含む暗号化コンテンツ318の復号が実行され、ステップS402におけるデマルチプレクサの処理によって、各変換テーブルが分離され、リアルタイムイベントハンドラ361の制御によって、ステップS403およびステップS404において、テーブル復元&データ変換処理が実行される。ステップS403およびステップS404において、テーブル復元&データ変換処理は、リアルタイムイベントハンドラ361が、コンテンツ再生あるいは外部出力中に発生するイベントを監視して処理制御がなされる。例えば不正処理が検出された場合には処理が中止される。
ステップS403では、セキュアVM356から間欠的に出力され、SPレジスタ371に格納されたシークレットパラメータ(SPn)を用いて、デマルチプレクサによってコンテンツから分離された変換テーブルとの演算(例えば排他論理和演算)を実行して、変換テーブルを取得する。
さらに、ステップS404において、シークレットパラメータ(SPn)とともに、セキュアVM356から間欠的に出力され、SPレジスタ371に格納されたシークレットパラメータの指定ナンバー(SPNo.)、識別マークのID(FM_ID)を取得して、これらの各値を参照し、変換テーブルを適用した処理態様を決定し、変換テーブルに記録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブルに記録された指定位置に書き込む処理を実行する。これらの処理は、コンテンツ再生処理または外部出力処理に並行したリアルタイム処理として実行する。
例えば、シークレットパラメータSP1,SP2,SP3・・・が、所定のコンテンツ部分データ単位に対応する変換データを含む分割された変換テーブル1,2,・・・との排他論理和(XOR)演算パラメータである場合、ステップS403における演算によるテーブル復元処理は、
[変換テーブル1](XOR)[SP1]、
[変換テーブル2](XOR)[SP2]、
[変換テーブル3](XOR)[SP3]、
: :
これらの排他論理和演算処理を順次、実行することになる。これらの演算によって、各平文変換テーブルデータを取得する。なお、上記式において、[A](XOR)[B]は、AとBの排他論理和演算を意味するものとする。
図21を参照して、変換データの書き込み構成の一例について説明する。シークレットパラメータSP1,SP2,SP3・・・は、例えばコンテンツのノーマル再生時間約10秒毎に切り替えられる。すなわち、1つの固定的なシークレットパラメータは約10秒間の再生コンテンツにのみ適用可能なパラメータとして設定される。図21のコンテンツ再生区間0〜T、T〜2T,2T〜3T・・・はそれぞれ同一のシークレットパラメータが適用可能なコンテンツ区間を示している。
このように、本処理例では、同一のシークレットパラメータが適用される区間は、ノーマル再生で約10秒間のコンテンツのみであり、万が一1つのシークレットパラメータが漏洩しても、わずか10秒のコンテンツの再生しかできないことになり、強固なコンテンツ漏洩防止が実現される。
ステップS403およびステップS404におけるテーブル復元&データ変換処理以後の処理は、先に図16を参照して説明した処理例と同様であり、コンテンツ再生やコンテンツ外部出力処理に並行して実行するリアルタイム処理として行なわれる。すなわち、ステップS405におけるデマルチプレクサ処理、ステップS406におけるデコード処理、これらの処理が、コンテンツ再生または外部出力に並行したリアルタイム処理として実行される。
なお、図18に示す処理例では、ステップS403およびステップS404におけるテーブル復元&データ変換処理をリアルタイムイベントハンドラ361を設定し、リアルタイムイベントハンドラ361が、コンテンツ再生あるいは外部出力中に発生するイベントを監視して、テーブル復元&データ変換処理を制御する構成としたが、このようなイベント監視を行なわず、データ変換処理をリアルタイムで実行させるような制御のみを可能とした構成でもよい。この場合は、例えば図22に示すように、図18に示す構成からリアルタイムイベントハンドラ361を省略した構成とすることができる。
本処理例では、コンテンツ全体に対応する変換テーブルの構成データを分割して、各分割テーブルとされた変換テーブルごとに異なるシークレットパラメータ(SPn)を対応付け、各分割変換テーブルごとに各シークレットパラメータによる排他論理和演算を施して情報記録媒体に格納するとともに、これらのシークレットパラメータをセキュアVM356が、間欠的に出力する構成としたので、例えばシークレットパラメータの一部が漏洩しても、変換テーブルに格納された変換データを全て取得することはできず、結果として、コンテンツの全体を復元することは不可能となり、より強固なコンテンツ利用管理が実現される。
また、本処理例においても、図10他を参照して説明した処理例と同様、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。また、例えば、コンテンツ再生中に不正な処理が検出された場合、イベントハンドラ354の不正処理検出情報に基づきセキュアVM356の処理を中止することで、変換データの生成が中止され、不正なコンテンツ再生や外部出力を途中で終了させることが可能となる
(3.8)コンテンツ再生処理例8
次に、コンテンツ再生処理例8について、図23を参照して説明する。図23には、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。情報記録媒体には、さらに、暗号化コンテンツ313、変換テーブル314、データ変換処理プログラム315が格納されている。
図23に示すコンテンツ再生処理例8は、先に説明した処理例7と同様、シークレットパラメータ(SP)を適用して、変換テーブルの一部分ずつを平文テーブルに復元して処理を行なう。先の処理例7では、複数に分割された変換テーブルを、個別に異なるシークレットパラメータ(SP1,SP2,SP3・・・)を適用した排他論理和(XOR)演算処理を施してパケットに格納した構成例であったが、本処理例では、暗号化コンテンツ313と、変換テーブル314は別ファイルとして情報記録媒体310に記録されている。
本処理例では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、点線枠で示すブロック385の処理は、間欠的な処理として実行される。すなわち、コンテンツの再生、または外部出力処理に間に合うように、セキュアVM356から、シークレットパラメータ(SP)などが、間欠的に逐次供給される。本処理例においては、セキュアVM356は、変換テーブルの情報記録媒体310からの取得および図に示すXORedテーブル記憶部372に対する格納処理も実行する。この、セキュアVM356による、変換テーブルのXORedテーブル記憶部372に対する格納処理は、出力するシークレットパラメータ(SP)に対応する変換テーブルの部分データを間欠的にXORedテーブル記憶部372に対して格納する処理として実行するか、あるいは、コンテンツ再生処理または外部出力前に一括してXORedテーブル記憶部372に格納してもよい。
本処理例では、変換テーブルは1つの独立したファイルデータとして設定されるが、変換テーブルファイルの中に複数の変換テーブルブロック(FUTブロック)が格納される。これらの複数の変換テーブルブロック(FUTブロック)の各々が、個別に異なるシークレットパラメータ(SP1,SP2,SP3・・・)を適用した排他論理和(XOR)演算処理を施して格納される。
図24〜図26を参照して、変換テーブルのデータ構成について説明する。
図24は、変換テーブルの全体データ構成を示し、
図25は、変換テーブル内に含まれる複数の変換テーブルブロック(FUTブロック)中の1つの変換テーブルブロック(FUTブロック)のデータ構成、
図26は、変換テーブルブロック(FUT)内の変換データエントリのデータ構成を示している。
図24に示すように、変換テーブルには、以下のデータが含まれる。
Number of FUT blocks:変換テーブルブロック数
Length of FUT block:変換テーブルブロックバイト長
SP_No:シークレットパラメータ(SP)ナンバー(VMによって生成されるSPに対応付けられる)
First SPN for FUT block:変換テーブルブロックの割り当てられたパケット位置
FUT block():変換テーブルブロック(各ブロックは異なるパラメータで処理(難読化)されている)
変換テーブルには、複数の変換テーブルブロック(FUT)が含まれ、これらの複数の変換テーブルブロック(FUT)が、それぞれ異なるシークレットパラメータ(SP1,SP2,SP3・・・)によって排他論理和(XOR)演算処理が施されて格納されている。
図25は、図24に示す変換テーブル中に複数含まれる変換テーブルブロック(FUTブロック)の1つのデータ構成例を示している。図25に示すように、変換テーブルブロック(FUTブロック)には以下のデータが含まれる。
Number of FixUpEntry in this block:変換データ数(識別マーク入り変換データも含む)
Base SPN for FixUpEntry:変換データの記録位置の指標となるベースパケットの位置(パケットNo.)
FixUpEntry():変換データエントリ(シークレットパラメータで処理(難読化)されている)
図26は、図25に示す変換テーブブロックに含まれる変換データエントリ(FixUpEntry)のデータ構成例を示している。図26に示すように、変換データエントリ(FixUpEntry)には以下のデータが含まれる。
type_indicator:タイプ識別子[00:変換なし,01b:変換データによる処理,10b,11b:識別マーク入り変換データによる処理]
FM_ID_bit_position:識別マーク入り変換データに対応するプレーヤIDの識別ビット位置
relative_SPN:変換データ適用パケット位置(プログラマブルマップテーブル(PMT)格納パケットからのパケット数)
byte_position:パケット内の変換データ記録位置
overwrite_value:変換データ(識別マーク入り変換データも含む)
relative_SPN_2:第2変換データ適用パケット位置(PMTパケットからのパケット数)
byte_position_2:パケット内の変換データ記録位置(第2変換データ対応)
overwrite_value_2:第2変換データ(識別マーク入り変換データも含む)
これらのデータによって構成される。
変換テーブルは、コンテンツデータの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルとして設定され、この変換テーブルを適用して、コンテンツ構成データの置き換え処理実行命令を含むデータ変換処理プログラムを実行して、データ変換が行われる。
図26に示す変換テーブブロックに含まれる変換データエントリ(FixUpEntry)情報に含まれる情報[type_indicator]は、変換テーブルの登録情報が、
(a)ブロークンデータを正当なコンテンツデータに変換するための変換データに関する登録情報であるか、または、
(b)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報であるか、
上記(a)、(b)のいずれの登録情報であるかを識別するタイプ識別子である。
変換テーブルの登録情報領域が、再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報領域である場合には、テーブル登録情報として、コンテンツ再生装置またはコンテンツ再生アプリケーションの識別情報に基づいて選択的に適用する変換データ、すなわち、識別マーク入り変換データが登録される。
登録情報[FM_ID_bit_position]は、複数ビットからなる再生装置又は再生アプリケーションの識別情報中、処理態様決定のために参照すべきビットの位置情報である。例えば、複数ビットからなる再生装置又は再生アプリケーションの識別情報中、処理態様決定のために参照すべきビットのビット値が1である場合、変換テーブルに登録された識別マーク入り変換データによってコンテンツ構成データの置き換えを実行し、参照すべきビットのビット値が0である場合には置き換えを実行しないといった処理態様が決定されてデータ変換が実行される。
なお、前述したように参照ビットが0の場合に変換を実行し、1の場合に変換を実行しないとする設定も可能である。また参照ビットが0の場合の変換データと、1の場合の変換データをそれぞれ別の変換データとして設定し、参照ビットのビット値に応じて、適宜、変換データを選択して設定する構成としてもよい。
なお、本処理例における変換テーブルは、複数の変換テーブルブロック(FUT)が含まれ、これらの複数の変換テーブルブロック(FUT)が、それぞれ異なるシークレットパラメータ(SP1,SP2,SP3・・・)によって排他論理和(XOR)演算処理が施されて格納されている。すなわち、本処理例では、変換テーブルは1つの独立したファイルデータとして情報記録媒体に格納されるが、図24〜図26を参照して説明したように、変換テーブル内に複数の変換テーブルブロック(FUT)を有し、これらの複数の変換テーブルブロック(FUT)の各々が、個別に異なるシークレットパラメータ(SP1,SP2,SP3・・・)を適用した排他論理和(XOR)演算処理がなされて格納される。シークレットパラメータは例えば128ビットデータからなる。
図23に示すセキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310に記録された変換テーブル314に含まれる変換テーブルブロック(FUTブロック)を平文変換テーブルにするために必要なシークレットパラメータ(SP1,SP2,SP3・・・)、すなわち排他論理和(XOR)演算パラメータ(SP1,SP2,SP3・・・)を生成して出力する。出力されたシークレットパラメータ(SP1,SP2,SP3・・・)は、SPレジスタ371に格納される。この処理は間欠的に、順次行なわれる。
各変換テーブルブロック(FUTブロック)は、先の処理例7において説明した分割された変換テーブルと同様、コンテンツの一部にのみ対応する変換データと、その変換データの書き込み位置情報を含むデータであり、図21を参照して説明したように、例えばノーマル再生において、10秒程度のコンテンツ部分に対応する変換データを含んでいる。
図23に示すセキュアVM356は、シークレットパラメータ(SP1,SP2,SP3・・・)に加え、シークレットパラメータの指定ナンバー(SPNo.)と、プレーヤIDに対応して設定される識別マークのID(FM_ID)をデータ変換処理プログラム315に従って生成して、これらの値を出力する。これらの値もSPレジスタ371に格納される。
リアルタイム処理ブロック381では、ステップS451において、暗号化コンテンツ318の復号が実行され、ステップS452において、XORedテーブル記憶部372に記憶された変換テーブルブロックの1つが取得され、SPレジスタ371に格納されたシークレットパラメータ(SPn)の排他論理和(XOR)演算が実行され、平文データとして、変換テーブルブロック(FUT)が取得される。
さらに、ステップS453において、シークレットパラメータ(SPn)とともに、セキュアVM356から間欠的に出力され、SPレジスタ371に格納されたシークレットパラメータの指定ナンバー(SPNo.)、識別マークのID(FM_ID)を取得して、これらの各値を参照し、変換テーブルを適用した処理態様を決定し、変換テーブルに記録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブルに記録された指定位置に書き込む処理を実行する。これらの処理は、リアルタイムハンドラ361の制御の下、コンテンツ再生処理または外部出力処理に並行したリアルタイム処理として実行される。リアルタイムイベントハンドラ361が、コンテンツ再生あるいは外部出力中に発生するイベントを監視して処理制御がなされる。例えば不正処理が検出された場合には処理が中止される。
具体的な変換テーブルの利用処理について説明する。まず、図26に示す変換テーブル中のタイプ識別子[type_indicator]を確認し、このタイプ識別子[type_indicator]が識別マーク入り変換データを挿入することを表している場合には(type_indicator==10b, 11b)、変換テーブル中の[FM_ID_bit_position]、すなわち、識別マーク入り変換データの処理態様を決定するIDのビット位置情報を参照し、複数のビットからなるID(FM_ID)の識別ビットの本テーブルで対象となる位置を特定する。この際、
タイプ識別子[type_indicator]が10bであれば0ビットを、
タイプ識別子[type_indicator]が11bであれば64ビットを、
FM_ID_bit_positionに加算する。このようにして、より少ないビットを割り当ててもFM_IDを表すことができる。そして、特定されたFM_IDのビット位置のデータを取得する。そして、
FM_IDビットが1の場合であれば変換データを適用したコンテンツの構成データの置き換えによる変形を行い、
FM_IDビットが0の場合であれば変形を行わないとする(又は、その逆。)
この処理により、プレーヤIDに相当するデータを再生データに埋めこむことができる。ここで、変形を行う場合には、変換テーブルに設定された第1変換データ[overwrite_value]及び、第2変換データ[overwrite_value_2]の2箇所の変形を共に行うことにより、FM_IDデータの除去をより困難とすることができるとともに、それぞれ[overwrite_value]の制限を行うよりも再生装置の負担を軽くすることができる。一方、タイプ識別子[type_indicator]が01bである場合には、識別マーク入りの変換データではない変換データ、例えばブロークンデータの置き換えに適用する変換データであるので、変換データの処理を行うに際して、再生装置のFM_IDの確認を行う必要は無い。
ステップS452における排他論理和演算(XOR)は、例えば、シークレットパラメータSP1,SP2,SP3・・・が、各変換テーブルブロック(FUTブロック)に対応して設定された排他論理和(XOR)演算パラメータである場合、ステップS452におけるテーブル復元処理は、
[変換テーブルブロック(FUTブロック)1](XOR)[SP1]、
[変換テーブルブロック(FUTブロック)2](XOR)[SP2]、
[変換テーブルブロック(FUTブロック)3](XOR)[SP3]、
: :
これらの排他論理和演算処理によって行なわれる。これらの演算によって、各平文変換テーブルブロックデータを取得する。なお、上記式において、[A](XOR)[B]は、AとBの排他論理和演算を意味するものとする。
これらの変換テーブルブロックに基づいて、コンテンツの一部構成データに対する変換データ書き込み、識別マーク入り変換データ書き込み処理が実行される。各変換テーブルブロックの適用可能なコンテンツ区間は、先の処理例7と同様であり、図21のコンテンツ再生区間0〜T、T〜2T,2T〜3T・・・の一部データ領域である。すなわち、これらの各区間は、同一のシークレットパラメータが適用可能なコンテンツ区間となる。
このように、本処理例では、先の処理例7と同様、同一のシークレットパラメータが適用される区間は、ノーマル再生で約10秒間のコンテンツのみであり、万が一1つのシークレットパラメータが漏洩しても、わずか10秒のコンテンツの再生しかできないことになり、強固なコンテンツ漏洩防止が実現される。
ステップS453におけるデータ変換処理以後の処理は、処理例7と同様であり、コンテンツ再生やコンテンツ外部出力処理に並行して実行するリアルタイム処理として行なわれる。すなわち、ステップS454におけるデマルチプレクサ処理、ステップS455におけるデコード処理、これらの処理が、コンテンツ再生または外部出力に並行したリアルタイム処理として実行される。
なお、図23に示す処理例では、ステップS452およびステップS453におけるテーブル復元とデータ変換処理をリアルタイムイベントハンドラ361を設定し、リアルタイムイベントハンドラ361が、コンテンツ再生あるいは外部出力中に発生するイベントを監視して、テーブル復元&データ変換処理を制御する構成としたが、このようなイベント監視を行なわず、データ変換処理をリアルタイムで実行させるような制御のみを可能とした構成でもよい。この場合は、例えば図27に示すように、図23に示す構成からリアルタイムイベントハンドラ361を省略した構成とすることができる。
本処理例では、コンテンツ全体に対応する変換テーブルの構成データを分割した変換データブロック(FUTブロック)ごとに異なるシークレットパラメータ(SPn)を対応付けて、変換データブロック(FUTブロック)ごとに各シークレットパラメータによる排他論理和演算を施して情報記録媒体に格納するとともに、これらのシークレットパラメータをセキュアVM356が、間欠的に出力する構成としたので、例えばシークレットパラメータの一部が漏洩しても、変換テーブルに格納された変換データを全て取得することはできず、結果として、コンテンツの全体を復元することは不可能となり、より強固なコンテンツ利用管理が実現される。
また、本処理例においても、図10他を参照して説明した処理例と同様、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。また、例えば、コンテンツ再生中に不正な処理が検出された場合、イベントハンドラ354の不正処理検出情報に基づきセキュアVM356の処理を中止することで、変換データの生成が中止され、不正なコンテンツ再生や外部出力を途中で終了させることが可能となる
なお、図24〜図26を参照して変換テーブルの一例としてのデータ構成を説明したが、変換テーブルは、様々なデータ構成とすることが可能である。例えば図24を参照して説明した変換テーブルの構成を図28に示すような構成としてもよい。図28は、図24と同様の構造を別の形式で記録する場合の例である。シークレットパラメータ(SP)ナンバーは、変換テーブルブロックのブロック番号で代用することができ、また、[First SPN for FUT block]は、図25で定義されている[FUT block()内の最初の"Base SPN for FixUpEntry"]の値で代用することができる。["Base SPN for FixUpEntry"]はシークレットパラメータ(SP)値との排他論理和(XOR)によって難読化されていないため、シークレットパラメータ(SP)値がない状態でも値を調べて、ランダムアクセス時などにどの変換テーブルブロック(FUTblock())を使用するかの判定に用いることができる。このように、図28に示すテーブルは、図24よりも単純な構造で、図24の変換テーブルと同様の情報を提供することができる。
[4.情報処理装置の構成]
次に、図29を参照して、ホストとしてのアプリケーションを実行する情報処理装置のハードウェア構成例について説明する。情報処理装置800は、OSやコンテンツ再生または記録アプリケーション・プログラム、相互認証処理プログラムなどの各種プログラムに従ったデータ処理を実行するCPU809、プログラム、パラメータ等の記憶領域としてのROM808、メモリ810、デジタル信号を入出力する入出力I/F802、アナログ信号を入出力し、A/D,D/Aコンバータ805を持つ入出力I/F804、MPEGデータのエンコード、デコード処理を実行するMPEGコーデック803、TS(Transport Stream)・PS(Program Stream)処理を実行するTS・PS処理手段806、相互認証、暗号化コンテンツの復号処理など各種の暗号処理を実行する暗号処理手段807、ハードディスクなどの記録媒体812、記録媒体812の駆動、データ記録再生信号の入出力を行なうドライブ811を有し、バス801に各ブロックが接続されている。
情報処理装置(ホスト)800は、例えばATAPI−BUS等の接続バスによってドライブと接続されている。変換テーブル、コンテンツなどをデジタル信号用入出力I/F802を介して入出力される。暗号化処理、復号処理は、暗号化処理手段807によって、例えば、AESアルゴリズムなどを適用して実行される。
なお、コンテンツ再生あるいは記録処理を実行するプログラムは例えばROM808内に保管されており、プログラムの実行処理中は必要に応じて、パラメータ、データの保管、ワーク領域としてメモリ810を使用する。
ROM808または記録媒体812には、例えば、管理センタの公開鍵、ホスト対応秘密鍵、ホスト対応の公開鍵証明書、さらに、リボケーションリストとしてのドライブCRLなどが格納される。
コンテンツ再生または外部出力に際しては、情報記録媒体から取得したデータ変換処理プログラムを適用して、暗号化コンテンツの復号と、変換テーブルの復元、変換テーブルの格納データに基づく変換データの書き込み処理など、先に説明した処理例1〜8の処理シーケンスに従った処理を実行する。
[5.情報記録媒体製造装置および情報記録媒体]
次に、情報記録媒体製造装置および情報記録媒体について説明する。すなわち、上述したコンテンツ再生処理において適用される情報記録媒体の製造装置、方法、および情報記録媒体について説明する。
情報記録媒体製造装置は、例えば、先に図1を参照して説明した記録データを格納した情報記録媒体100を製造する装置である。
情報記録媒体製造装置は、
正当コンテンツ構成データと異なるブロークンデータを含むコンテンツと、ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データを有し、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、変換テーブルを適用したコンテンツ構成データの置き換え処理実行命令を含むデータ変換処理プログラムを生成するデータ処理部と、
ブロークンデータを含むコンテンツと、変換テーブルと、データ変換処理プログラムを情報記録媒体に記録するデータ記録部と、
を有する。
情報記録媒体製造装置の一実施例構成におけるデータ処理部は、コンテンツ再生装置またはコンテンツ再生アプリケーションの識別情報に基づいて選択的に適用する変換データを設定した変換テーブルの生成を実行する構成であり、データ記録部は、識別情報に基づいて選択的に適用する変換データを含む変換テーブルの記録処理を実行する。また、情報記録媒体製造装置におけるデータ処理部は、コンテンツの一部構成データのみに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理による難読化した変換テーブルを生成し、データ記録部は、難読化した変換テーブルの記録処理を実行する。
さらに、情報記録媒体製造装置の一実施例構成におけるデータ処理部は、ブロークンデータを含むコンテンツを構成データとするストリームパケット中に、難読化した変換テーブルを散在させて配置したコンテンツデータを生成する構成であり、データ記録部は、難読化した変換テーブルを散在させて配置したコンテンツデータの記録処理を実行する。
このような、製造装置によって生成された情報記録媒体は、図1他を参照して説明したように、
(a)正当コンテンツ構成データと異なるブロークンデータを含むコンテンツと、
(b)ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データを有し、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、
(c)変換テーブルを適用したコンテンツ構成データの置き換え処理実行命令を含むデータ変換処理プログラムを、
記録データとして格納した情報記録媒体となる。
また、一実施例において、情報記録媒体に記録される変換テーブルは、コンテンツデータの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、変換テーブルを適用したコンテンツ構成データの置き換え処理実行命令を含むデータ変換処理プログラムを記録データとして格納し、変換テーブルの登録情報が、
(p)ブロークンデータを正当なコンテンツデータに変換するための変換データに関する登録情報であるか、または、
(q)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報であるか、
上記(p)、(q)のいずれの登録情報であるかを識別するタイプ識別子を有する。
また、変換テーブルの登録情報が、再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報である場合には、テーブル登録情報として、さらに、コンテンツ再生装置またはコンテンツ再生アプリケーションの識別情報に基づいて選択的に適用する変換データを含む構成となる。さらに、変換テーブルは、複数ビットからなる再生装置又は再生アプリケーションの識別情報中、処理態様決定のために参照すべきビットの位置情報を含む設定となる。
前述したように、変換テーブルは、1つの実施態様として、コンテンツの一部構成データのみに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理による難読化した変換テーブルであり、例えば、情報記録媒体に記録されるブロークンデータを含むコンテンツを構成データとするストリームパケット中に、難読化した変換テーブルが散在させて格納される。
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
以上、説明したように、本発明の一実施例の構成によれば、正当コンテンツ構成データと異なるブロークンデータを含むコンテンツを情報記録媒体に記録し、さらに、ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルを情報記録媒体に格納する構成とし、コンテンツ再生処理に際して、情報記録媒体に記録された変換テーブルに従って、コンテンツ構成データを変換データに置き換える処理を行なう構成としたので、情報記録媒体に記録された暗号化コンテンツに対応する暗号鍵の漏洩が発生した場合でも、変換データの取得ができない装置においてはコンテンツの再生が実行されず、コンテンツの不正利用が防止される。
また、本発明の一実施例の構成によれば、変換データとして、コンテンツ再生装置またはコンテンツ再生アプリケーションを識別可能とした識別情報の構成ビットを解析可能としたデータを含む変換データを適用したので、万が一不正コンテンツが流出した場合でも、変換データの解析によって、不正コンテンツの流出源を特定することが可能となる。
また、本発明の一実施例の構成によれば、変換データを格納した変換テーブルを区分した分割テーブル毎に異なるパラメータを適用した演算処理または暗号化処理を施した設定としたので、ある特定のパラメータの漏洩が発生した場合でもコンテンツの一部のみの再生が許容するのみであり、コンテンツ全体の漏洩が発生する可能性を低減させることが可能となる。
100 情報記録媒体
101 暗号化コンテンツ
102 MKB
103 タイトル鍵ファイル
104 使用許諾情報
105 変換テーブル
106 データ変換処理プログラム
120 ドライブ
121 データ処理部
122 メモリ
150 ホスト
151 データ処理部
152 メモリa
153 復号処理部
154 データ変換処理部
155 デコード処理部
156 メモリb
210 インデックス
220 ムービーオブジェクト
230 プレイリスト
240 クリップ
261,262,263 AVストリーム
271,272 コンテンツ管理ユニット(CPSユニット)
281 データ部
310 情報記録媒体
311 MKB
312 タイトル鍵ファイル
313 暗号化コンテンツ
314 変換テーブル
315 データ変換処理プログラム
330 ドライブ
350 ホスト
351 デバイス鍵
352 トラックバッファ
353 平文TSバッファ
354 イベントハンドラ
355 プレーヤ情報
356 セキュアVM
361 リアルタイムイベントハンドラ
363 部分テーブル記憶部
364 プリロードテーブル記憶部
371 SPレジスタ
372 XORedテーブル記憶部
391,392 TSパケット
394,395 変換データの記録領域を持つパケット
401 トラックバッファ格納データ
402 復号結果データ
403 ブロークンデータ
404 変換データ
405 識別マークを含む変換データ
406 変換処理済みデータ
501,502,511,512 パケット
800 情報処理装置
801 バス
802 入出力I/F
803 MPEGコーデック
804 入出力I/F
805 A/D,D/Aコンバータ
806 TS・PS処理手段
807 暗号処理手段
808 ROM
809 CPU
810 メモリ
811 ドライブ
812 記録媒体

Claims (16)

  1. コンテンツの再生処理を実行する再生装置であり、
    前記コンテンツを構成するコンテンツ構成データの少なくとも一部を変換データに置き換えるデータ変換処理部を有し、
    前記データ変換処理部は、変換テーブルの記録情報に従ったデータ変換処理を実行する構成であり、
    前記変換テーブルは、
    (1)前記変換データと、
    (2)前記変換データの置き換え位置情報と、
    を有し、
    前記データ変換処理部は、
    前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行する構成であることを特徴とする再生装置。
  2. 前記部分的な変換テーブルデータは、前記パラメータ特定するためのパラメータ識別子をさらに有し、
    前記データ変換処理部は、前記パラメータ識別子に対応するパラメータを適用して演算処理または暗号処理を実行することを特徴とする請求項1に記載の再生装置。
  3. 前記データ変換処理部は、
    前記1以上の変換テーブルに含まれる複数の変換データに対して、所定の再生単位で異なるパラメータを適用した排他論理和演算処理を実行し、置き換えデータである変換データの取得処理を実行する構成であることを特徴とする請求項1に記載の再生装置。
  4. 前記データ変換処理部は、
    前記異なるパラメータの算出処理を、コンテンツの再生または外部出力に同期させた間欠的な処理として実行し、
    間欠的に順次、算出する異なるパラメータに基づく演算処理または暗号処理によって、異なるコンテンツ構成データに対応する変換データの取得を行なう構成であることを特徴とする請求項1に記載の再生装置。
  5. 前記データ変換処理部は、
    前記パラメータ算出処理をバーチャルマシンによって実行する構成であることを特徴とする請求項1に記載の再生装置。
  6. 前記データ変換処理部は、
    前記コンテンツの構成パケットに分散して分割記録された分割変換テーブルを順次取得して、該分割変換テーブルから、前記コンテンツの一部構成データのみに対応する置き換えデータである変換データと、該変換データの記録位置情報を取得する処理を実行する構成であることを特徴とする請求項1に記載の再生装置。
  7. 前記再生装置は、さらに、
    前記コンテンツの復号処理を実行する復号処理部を有し、
    前記データ変換処理部は、
    前記復号処理部における復号コンテンツのコンテンツ構成データを前記変換データに置き換える処理を実行する構成であることを特徴とする請求項1乃至6いずれかに記載の再生装置。
  8. 情報記録媒体製造装置であり、
    正当コンテンツ構成データと異なるブロークンデータを含むコンテンツと、
    前記ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データを有し、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、
    前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ変換処理プログラムとを取得するデータ処理部と、
    前記ブロークンデータを含むコンテンツと、前記変換テーブルと、前記データ変換処理プログラムを情報記録媒体に記録するデータ記録部と、
    を有し、
    前記データ処理部の取得する変換テーブルは、
    (1)前記変換データと、
    (2)前記変換データの置き換え位置情報と、
    を有する変換テーブルであり、
    前記データ処理部の取得するデータ変換処理プログラムは、
    前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させるプログラムであることを特徴とする情報記録媒体製造装置。
  9. 前記部分的な変換テーブルデータは、前記パラメータ特定するためのパラメータ識別子をさらに有し、
    前記データ変換処理プログラムは、前記パラメータ識別子に対応するパラメータを適用して演算処理または暗号処理を実行させるプログラムであることを特徴とする請求項8に記載の情報記録媒体製造装置。
  10. 前記データ処理部は、
    コンテンツの一部構成データのみに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理による難読化した変換テーブルを取得し、
    前記データ記録部は、
    前記難読化した変換テーブルの記録処理を実行する構成であることを特徴とする請求項8に記載の情報記録媒体製造装置。
  11. 前記データ処理部は、
    前記ブロークンデータを含むコンテンツを構成データとするストリームパケット中に、前記難読化した変換テーブルを散在させて配置したコンテンツデータを取得する構成であり、
    前記データ記録部は、
    前記難読化した変換テーブルを散在させて配置したコンテンツデータの記録処理を実行する構成であることを特徴とする請求項10に記載の情報記録媒体製造装置。
  12. 記録データを有する情報記録媒体であり、
    前記記録データの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、再生装置上で実行される前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ処理プログラムを、
    記録データとして格納し、
    前記変換テーブルは、
    (1)前記変換データと、
    (2)前記変換データの置き換え位置情報と、
    を有し、
    前記再生装置における前記データ処理プログラムの実行により、
    前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させることを可能とした情報記録媒体。
  13. コンテンツの再生処理を実行する再生装置において実行する情報処理方法であり、
    データ変換処理部が、前記コンテンツを構成するコンテンツ構成データの少なくとも一部を変換データに置き換えるデータ変換ステップを有し、
    前記データ変換ステップは、変換テーブルの記録情報に従ったデータ変換処理を実行するステップであり、
    前記変換テーブルは、
    (1)前記変換データと、
    (2)前記変換データの置き換え位置情報と、
    を有し、
    前記データ変換ステップは、
    前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行するステップである情報処理方法。
  14. 情報記録媒体製造装置において実行する情報記録媒体製造方法であり、
    前記情報記録媒体製造装置のデータ処理部が、正当コンテンツ構成データと異なるブロークンデータを含むコンテンツと、
    前記ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データを有し、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、
    前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ変換処理プログラムとを取得するデータ処理ステップと、
    前記情報記録媒体製造装置のデータ記録部が、前記ブロークンデータを含むコンテンツと、前記変換テーブルと、前記データ変換処理プログラムを情報記録媒体に記録するデータ記録ステップを実行し、
    前記データ処理ステップにおいて取得する変換テーブルは、
    (1)前記変換データと、
    (2)前記変換データの置き換え位置情報と、
    を有する変換テーブルであり、
    前記データ処理ステップにおいて取得するデータ変換処理プログラムは、
    前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させるプログラムであることを特徴とする情報記録媒体製造方法。
  15. コンテンツの再生処理を実行する再生装置において情報処理を実行させる再生アプリケーション・プログラムであり、
    データ変換処理部に、前記コンテンツを構成するコンテンツ構成データの少なくとも一部を変換データに置き換えさせデータ変換ステップを実行させ、
    前記データ変換ステップは、変換テーブルの記録情報に従ったデータ変換処理を実行させるステップであり、
    前記変換テーブルは、
    (1)前記変換データと、
    (2)前記変換データの置き換え位置情報と、
    を有し、
    前記データ変換ステップにおいて、
    前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させる再生アプリケーション・プログラム。
  16. オーサリング装置であり、
    正当コンテンツ構成データと異なるブロークンデータを含むコンテンツと、
    前記ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データを有し、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、
    前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ変換処理プログラムを生成するデータ処理部を有し、
    前記データ処理部の生成する変換テーブルは、
    (1)前記変換データと、
    (2)前記変換データの置き換え位置情報と、
    を有する変換テーブルであり、
    前記データ処理部の生成するデータ変換処理プログラムは、
    前記コンテンツの一部構成データに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させるプログラムであることを特徴とするオーサリング装置。
JP2010248594A 2010-11-05 2010-11-05 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム Active JP4862957B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010248594A JP4862957B2 (ja) 2010-11-05 2010-11-05 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010248594A JP4862957B2 (ja) 2010-11-05 2010-11-05 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005207852A Division JP4654806B2 (ja) 2005-07-15 2005-07-15 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム

Publications (2)

Publication Number Publication Date
JP2011076615A JP2011076615A (ja) 2011-04-14
JP4862957B2 true JP4862957B2 (ja) 2012-01-25

Family

ID=44020473

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010248594A Active JP4862957B2 (ja) 2010-11-05 2010-11-05 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム

Country Status (1)

Country Link
JP (1) JP4862957B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3861392B2 (ja) * 1997-07-30 2006-12-20 ソニー株式会社 データ記録装置および方法、データ再生装置および方法、並びに伝送媒体
JP3688628B2 (ja) * 2001-11-09 2005-08-31 株式会社東芝 信号処理方法及び装置、信号再生方法及び装置、記録媒体
JP3941513B2 (ja) * 2002-01-11 2007-07-04 ソニー株式会社 記録方法、記録装置、再生方法及び再生装置
JP2004138933A (ja) * 2002-10-21 2004-05-13 Hitachi Ltd デジタル映像スクランブル装置、デスクランブル装置および該装置を実現するプログラム
JP4218539B2 (ja) * 2004-01-28 2009-02-04 沖電気工業株式会社 電子透かし埋め込み装置,電子透かし検出装置,電子透かし埋め込み方法,および電子透かし検出方法

Also Published As

Publication number Publication date
JP2011076615A (ja) 2011-04-14

Similar Documents

Publication Publication Date Title
JP4654806B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4321550B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
US8190910B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, and information recording medium
US8510852B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium, method, and computer program
JP4140624B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4765485B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP4862949B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4892900B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4862958B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP2007025913A (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4862957B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4905585B2 (ja) 情報記録媒体、およびプログラム
JP5170229B2 (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP4905587B2 (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP4905566B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP4941611B2 (ja) 情報処理装置、および方法、並びにコンピュータ・プログラム
JP4941607B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法
JP4973818B2 (ja) 情報処理装置、および情報処理方法

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111011

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111024

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141118

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4862957

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141118

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250