JP2011060312A - Information recording medium, and data - Google Patents

Information recording medium, and data Download PDF

Info

Publication number
JP2011060312A
JP2011060312A JP2010248596A JP2010248596A JP2011060312A JP 2011060312 A JP2011060312 A JP 2011060312A JP 2010248596 A JP2010248596 A JP 2010248596A JP 2010248596 A JP2010248596 A JP 2010248596A JP 2011060312 A JP2011060312 A JP 2011060312A
Authority
JP
Japan
Prior art keywords
data
conversion
content
processing
information
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.)
Granted
Application number
JP2010248596A
Other languages
Japanese (ja)
Other versions
JP4905585B2 (en
Inventor
Yoshikazu Takashima
芳和 高島
Kenjiro Ueda
健二朗 上田
Takeo Oishi
丈於 大石
Katsumi Muramatsu
克美 村松
Jun Yonemitsu
潤 米満
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 JP2010248596A priority Critical patent/JP4905585B2/en
Publication of JP2011060312A publication Critical patent/JP2011060312A/en
Application granted granted Critical
Publication of JP4905585B2 publication Critical patent/JP4905585B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a device for effectively preventing unauthorized use of content, and to provide a recording medium and method. <P>SOLUTION: Content including broken data different from proper content configuration data is recorded in the information recording medium. Conversion data as the proper content configuration data to be replaced by the broken data and a conversion table storing set position information with respect to content of the conversion data are stored in the information recording medium. In a content reproduction process, the content configuration data is replaced by the conversion data in accordance with the conversion table recorded in the information recording medium. Even if there is leakage of an encryption key corresponding to encrypted content recorded in the information recording medium, the content is not reproduced in a device capable of acquiring the conversion data, and unauthorized use of the content is prevented. <P>COPYRIGHT: (C)2011,JPO&INPIT

Description

本発明は、情報記録媒体、およびデータに関する。さらに、詳細には、コンテンツ利用管理の要求される様々なコンテンツに対するデータ変換処理により、不正なコンテンツ利用を排除し、厳格なコンテンツ利用管理を実現する情報記録媒体、およびデータに関する。   The present invention relates to an information recording medium and data. More specifically, the present invention relates to an information recording medium and data that eliminates illegal use of content and realizes strict content use management by performing data conversion processing on various contents that require content use management.

音楽等のオーディオデータ、映画等の画像データ、ゲームプログラム、各種アプリケーションプログラム等、様々なソフトウエアデータ(以下、これらをコンテンツ(Content)と呼ぶ)は、記録メディア、例えば、青色レーザを適用したBlu−ray Disc(商標)、あるいはDVD(Digital Versatile Disc)、MD(Mini Disc)、CD(Compact Disc)にデジタルデータとして格納することができる。特に、青色レーザを利用したBlu−ray Disc(商標)は、高密度記録可能なディスクであり大容量の映像コンテンツなどを高画質データとして記録することができる。   Various software data such as audio data such as music, image data such as movies, game programs, and various application programs (hereinafter referred to as “Content”) are recorded on a recording medium such as a blue laser using a blue laser. -It can be stored as digital data on a Ray Disc (trademark), DVD (Digital Versatile Disc), MD (Mini Disc), or CD (Compact Disc). In particular, Blu-ray Disc (trademark) using a blue laser is a high-density recordable disc and can record a large volume of video content as high-quality data.

これら様々な情報記録媒体(記録メディア)にデジタルコンテンツが格納され、ユーザに提供される。ユーザは、所有するPC(Personal Computer)、ディスクプレーヤ等の再生装置においてコンテンツの再生、利用を行う。   Digital contents are stored in these various information recording media (recording media) and provided to users. A user plays back and uses content on a playback device such as a personal computer (PC) or disc player.

音楽データ、画像データ等、多くのコンテンツは、一般的にその作成者あるいは販売者に頒布権等が保有されている。従って、これらのコンテンツの配布に際しては、一定の利用制限、すなわち、正規なユーザに対してのみ、コンテンツの利用を許諾し、許可のない複製等が行われないようにする構成をとるのが一般的となっている。   Many contents, such as music data and image data, generally have distribution rights or the like held by the creator or seller. Therefore, when distributing these contents, it is common to adopt a configuration that restricts the use of the contents, that is, permits the use of the contents only to authorized users and prevents unauthorized copying or the like. It is the target.

デジタル記録装置および記録媒体によれば、例えば画像や音声を劣化させることなく記録、再生を繰り返すことが可能であり、不正コピーコンテンツのインターネットを介した配信や、コンテンツをCD−R等にコピーした、いわゆる海賊版ディスクの流通や、PC等のハードディスクに格納したコピーコンテンツの利用が蔓延しているといった問題が発生している。   According to the digital recording device and the recording medium, for example, recording and reproduction can be repeated without deteriorating images and sound, and illegally copied content is distributed via the Internet, and the content is copied to a CD-R or the like. Problems such as the distribution of so-called pirated discs and the use of copy contents stored on hard disks such as PCs have become widespread.

DVD、あるいは近年開発が進んでいる青色レーザを利用した記録媒体等の大容量型記録媒体は、1枚の媒体に例えば映画1本〜数本分の大量のデータをデジタル情報として記録することが可能である。このように映像情報等をデジタル情報として記録することが可能となってくると不正コピーを防止して著作権者の保護を図ることが益々重要な課題となっている。昨今では、このようなデジタルデータの不正なコピーを防ぐため、デジタル記録装置および記録媒体に違法なコピーを防止するための様々な技術が実用化されている。   A large-capacity recording medium such as a DVD or a recording medium using a blue laser that has been developed in recent years can record a large amount of data, for example, one movie to several movies as digital information on one medium. Is possible. As video information and the like can be recorded as digital information in this way, it is an increasingly important issue to prevent unauthorized copying and to protect the copyright holder. In recent years, in order to prevent such illegal copying of digital data, various techniques for preventing illegal copying in digital recording devices and recording media have been put into practical use.

例えば、DVDプレーヤでは、コンテンツ・スクランブルシステム(Content Scramble System)が採用されている。コンテンツ・スクランブルシステムでは、例えばDVD−ROM(Read Only Memory)にビデオデータやオーディオデータ等が暗号化されて記録されている構成において、スクランブルを解除することでコンテンツ再生を可能とするものである。   For example, a DVD player employs a content scramble system. In the content scramble system, for example, in a configuration in which video data, audio data, etc. are encrypted and recorded on a DVD-ROM (Read Only Memory), the content can be reproduced by releasing the scramble.

スクランブル解除処理には、ライセンスを受けたDVDプレーヤに与えられた鍵などの特定データを適用した処理を実行することが必要となる。ライセンスは、不正コピーを行わない等の所定の動作規定に従うように設計されたDVDプレーヤに対して与えられる。従って、ライセンスを受けたDVDプレーヤでは、与えられた鍵などの特定データを利用して、DVD−ROMに記録されたデータのスクランブル解除を行なうことにより、DVD−ROMから画像や音声を再生することができる。   In the descrambling process, it is necessary to execute a process to which specific data such as a key given to the licensed DVD player is applied. The license is given to a DVD player designed to comply with a predetermined operation rule such as not performing illegal copying. Therefore, a licensed DVD player uses a specific data such as a given key to re-scramble the data recorded on the DVD-ROM to reproduce images and sounds from the DVD-ROM. Can do.

一方、ライセンスを受けていないDVDプレーヤは、スクランブル処理されたデータのスクランブル解除に適用する鍵などの特定データを有していないため、DVD−ROMに記録されたデータの再生を行うことができない。このように、コンテンツ・スクランブルシステム構成では、ライセンス時に要求される条件を満たしていないDVDプレーヤは、デジタルデータを記録したDVD−ROMの再生を行なえないことになり、不正コピーが防止されるようになっている。   On the other hand, an unlicensed DVD player does not have specific data such as a key used for descrambling the scrambled data, and therefore cannot reproduce the data recorded on the DVD-ROM. As described above, in the content scramble system configuration, a DVD player that does not satisfy the conditions required at the time of license cannot reproduce a DVD-ROM on which digital data is recorded, so that unauthorized copying is prevented. It has become.

しかし、このようなコンテンツ・スクランブルシステムは、再生処理を実行するユーザデバイスとしての情報処理装置側の処理負荷が高くなるという問題がある。また、既存のスクランブルシステムの中には、既にスクランブル解除手法が解読され解読方法がインターネット等の通信手段を介して流通しているものも多く存在する。このように、一旦スクランブル手法が解読されてしまうと、不正なスクランブル解除処理によってコンテンツが不正に再生され、また複製されるなど、コンテンツの著作権、利用権の侵害という問題が発生する。
また、コンテンツを暗号化しても、暗号鍵の漏洩が発生してしまうと、不正に復号されたコンテンツが流出するという問題が発生する。このような問題を解決する1つの構成を開示した従来技術として、特許文献1に記載の構成がある。特許文献1は、セクタを単位としてデータの間にダミーデータを挿入して、コンテンツの不正再生を防止した構成を開示している。しかし、再生時にダミーデータを除去し再生しないという構成では、再生装置、再生アプリケーションソフトの識別データを出力データに埋め込むことはできない。
However, such a content scramble system has a problem in that the processing load on the information processing apparatus side as a user device that executes reproduction processing increases. In addition, among existing scramble systems, there are many systems in which the descrambling method has already been decoded and the decoding method is distributed via communication means such as the Internet. As described above, once the scramble technique is deciphered, there arises a problem of infringement of the copyright and use right of the content, such as illegal reproduction and copying of the content by an unauthorized descrambling process.
In addition, even if the content is encrypted, if an encryption key leaks, the content that has been decrypted illegally will flow out. As a prior art that discloses one configuration for solving such a problem, there is a configuration described in Patent Document 1. Patent Document 1 discloses a configuration in which dummy data is inserted between data in units of sectors to prevent unauthorized reproduction of content. However, in the configuration in which dummy data is removed during playback and playback is not performed, identification data of the playback device and playback application software cannot be embedded in output data.

特開平11−45508号公報JP-A-11-45508

本発明は、このような状況に鑑みてなされたものであり、データ置き換えを主としたデータ変換処理による簡易な処理構成を採用することで、情報処理装置側の負荷を少なくして、コンテンツの不正利用を防止可能とした情報記録媒体、およびデータを提供することを目的とするものである。   The present invention has been made in view of such a situation, and by adopting a simple processing configuration based on data conversion processing mainly for data replacement, the load on the information processing apparatus side can be reduced, and content can be reduced. An object of the present invention is to provide an information recording medium and data that can prevent unauthorized use.

本発明の第1の側面は、
記録データを有する情報記録媒体であり、
前記記録データの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、再生装置上で実行される前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ処理プログラムを、
記録データとして格納し、
前記変換テーブルは、
(1)前記変換データを含む登録情報と、
(2)前記登録情報が、
(2a)ブロークンデータを正当なコンテンツデータに変換するための変換データを含む登録情報であるか、または、
(2b)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための変換データを含む登録情報であるか、
を識別するタイプ識別子と、
(3)変換データの置き換え位置情報を記録したテーブルであり、
前記再生装置における前記データ処理プログラムの実行により、
前記変換テーブルを取得させて、変換テーブルに記録された変換データの置き換え位置情報の位置にあるコンテンツ構成データを前記変換データで置き換える処理の実行態様を、前記タイプ識別子に応じて変更させることを可能とした情報記録媒体にある。
The first aspect of the present invention is:
An information recording medium having recording data,
Processing for replacing conversion data to be replaced with a part of the recorded data, a conversion table in which setting position information for the content of the conversion data is recorded, and content configuration data applying the conversion table executed on a playback device The data processing program used for
Store as recorded data,
The conversion table is
(1) registration information including the conversion data;
(2) The registration information is
(2a) registration information including conversion data for converting broken data into legitimate content data, or
(2b) registration information including conversion data for embedding identification information of a playback device or a content playback application,
A type identifier that identifies
(3) A table in which replacement position information of conversion data is recorded,
By executing the data processing program in the playback device,
It is possible to change the execution mode of the process of acquiring the conversion table and replacing the content configuration data at the position of the replacement position information of the conversion data recorded in the conversion table with the conversion data according to the type identifier. It is in the information recording medium.

さらに、本発明の情報記録媒体の一実施例において、前記データ処理プログラムは、前記タイプ識別子が、変換テーブルの登録情報が、(2a)ブロークンデータを正当なコンテンツデータに変換するための変換データを含む登録情報であることを示している場合には、コンテンツ構成データである正当なコンテンツと異なるブロークンデータを、前記変換テーブルの登録情報に含まれる正当なコンテンツデータである変換データに置き換える処理を実行させるプログラムであることを特徴とする。   Furthermore, in an embodiment of the information recording medium of the present invention, the data processing program is characterized in that the type identifier is registered information in a conversion table, and (2a) conversion data for converting broken data into legitimate content data. If the registration information includes the broken data that is different from the valid content that is the content configuration data, the conversion data that is the valid content data included in the registration information of the conversion table is executed. It is a program to be made.

さらに、本発明の情報記録媒体の一実施例において、前記データ処理プログラムは、前記タイプ識別子が、変換テーブルの登録情報が、(2b)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための変換データを含む登録情報であることを示している場合には、コンテンツ再生装置またはコンテンツ再生アプリケーションの識別情報の構成ビットに基づき、コンテンツ構成データであるコンテンツの一部領域を、前記変換テーブルの登録情報に含まれる変換データに置き換える又は置き換えない処理を実行させるプログラムであることを特徴とする。   Furthermore, in one embodiment of the information recording medium of the present invention, the data processing program includes a conversion for embedding the type identifier, the registration information of the conversion table, and (2b) identifying information of the playback device or content playback application. If the registration information includes data, a partial area of the content, which is content configuration data, is registered in the conversion table registration information based on the configuration bits of the identification information of the content playback device or content playback application. It is a program that executes a process that replaces or does not replace the conversion data included in the data.

さらに、本発明の情報記録媒体の一実施例において、前記登録情報は、さらに前記再生装置またはコンテンツ再生アプリケーションの識別情報の構成ビットの参照すべきビット位置を示す参照ビット位置情報を含み、前記データ処理プログラムは、前記参照ビット位置情報の示すビット位置の値に応じて変換データによる置き換え処理の実行の有無を決定させる処理を実行させるプログラムであることを特徴とする。   Furthermore, in one embodiment of the information recording medium of the present invention, the registration information further includes reference bit position information indicating a bit position to be referred to of configuration bits of identification information of the playback device or content playback application, and the data The processing program is a program for executing a process for determining whether or not to perform a replacement process using conversion data according to a value of a bit position indicated by the reference bit position information.

さらに、本発明の情報記録媒体の一実施例において、前記データ処理プログラムは、前記コンテンツの一部構成データのみに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させるプログラムであることを特徴とする。   Furthermore, in an embodiment of the information recording medium of the present invention, the data processing program applies different parameters to each partial conversion table data in which conversion data corresponding to only partial configuration data of the content is recorded. It is a program that executes the above-described arithmetic processing or encryption processing, and executes conversion data acquisition processing that is replacement data.

さらに、本発明の情報記録媒体の一実施例において、前記データ処理プログラムは、前記1以上の変換テーブルに含まれる複数の変換データに対して、所定の再生単位で異なるパラメータを適用した排他論理和演算処理を実行し、置き換えデータである変換データの取得処理を実行させるプログラムであることを特徴とする。   Furthermore, in an embodiment of the information recording medium of the present invention, the data processing program applies an exclusive OR that applies different parameters to a plurality of conversion data included in the one or more conversion tables in a predetermined reproduction unit. The present invention is characterized in that the program executes calculation processing and executes conversion data acquisition processing as replacement data.

さらに、本発明の情報記録媒体の一実施例において、前記データ処理プログラムは、前記異なるパラメータの算出処理を、コンテンツの再生または外部出力に同期させた間欠的な処理として実行させ、間欠的に順次、算出する異なるパラメータに基づく演算処理または暗号処理によって、異なるコンテンツ構成データに対応する変換データの取得を行わせるプログラムであることを特徴とする。   Furthermore, in an embodiment of the information recording medium of the present invention, the data processing program causes the different parameter calculation processing to be executed as intermittent processing synchronized with content reproduction or external output, and intermittently sequentially. The program is characterized in that conversion data corresponding to different content configuration data is obtained by arithmetic processing or encryption processing based on different parameters to be calculated.

さらに、本発明の情報記録媒体の一実施例において、前記データ処理プログラムは、前記コンテンツの構成パケットに分散して分割記録された分割変換テーブルを順次取得して、該分割変換テーブルから、前記コンテンツの一部構成データのみに対応する置き換えデータである変換データと、該変換データの記録位置情報を取得する処理を実行させるプログラムであることを特徴とする。   Furthermore, in one embodiment of the information recording medium of the present invention, the data processing program sequentially acquires a divided conversion table that is divided and recorded in a configuration packet of the content and sequentially acquires the content from the divided conversion table. It is a program for executing conversion data which is replacement data corresponding to only a part of the configuration data, and a process of acquiring recording position information of the conversion data.

さらに、本発明の第2の側面は、
コンテンツを構成するコンテンツ構成データの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、再生装置上で実行される前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ処理プログラムを含むデータであり、
前記変換テーブルは、
(1)前記変換データを含む登録情報と、
(2)前記登録情報が、
(2a)ブロークンデータを正当なコンテンツデータに変換するための変換データを含む登録情報であるか、または、
(2b)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための変換データを含む登録情報であるか、
を識別するタイプ識別子と、
(3)変換データの置き換え位置情報を記録したテーブルであり、
情報処理装置における前記データ処理プログラムの実行により、
前記変換テーブルを取得させて、変換テーブルに記録された変換データの置き換え位置情報の位置にあるコンテンツ構成データを前記変換データで置き換える処理の実行態様を、前記タイプ識別子に応じて変更させることを可能としたデータにある。
Furthermore, the second aspect of the present invention provides
Content structure to which conversion data to be replaced of a part of content configuration data constituting content, a conversion table in which setting position information for the content of the conversion data is recorded, and the conversion table executed on the playback device are applied Data including a data processing program used for data replacement processing,
The conversion table is
(1) registration information including the conversion data;
(2) The registration information is
(2a) registration information including conversion data for converting broken data into legitimate content data, or
(2b) registration information including conversion data for embedding identification information of a playback device or a content playback application,
A type identifier that identifies
(3) A table in which replacement position information of conversion data is recorded,
By executing the data processing program in the information processing apparatus,
It is possible to change the execution mode of the process of acquiring the conversion table and replacing the content configuration data at the position of the replacement position information of the conversion data recorded in the conversion table with the conversion data according to the type identifier. It is in the data.

なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。   The computer program of the present invention is, for example, a storage medium or communication medium provided in a computer-readable format to a computer system capable of executing various program codes, such as a CD, FD, or MO. It is a computer program that can be provided by a recording medium or a communication medium such as a network. By providing such a program in a computer-readable format, processing corresponding to the program is realized on the computer system.

本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。   Other objects, features, and advantages of the present invention will become apparent from a more detailed description based on embodiments of the present invention described later and the accompanying drawings. In this specification, the system is a logical set configuration of a plurality of devices, and is not limited to one in which the devices of each configuration are in the same casing.

本発明の一実施例の構成によれば、変形データを含むコンテンツを情報記録媒体に記録し、さらに、変形データの置き換え対象となる正当コンテンツ構成データである変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルを情報記録媒体に格納する構成とし、コンテンツ再生処理に際して、情報記録媒体に記録された変換テーブルに従って、コンテンツ構成データを変換データに置き換える処理を行なう構成としたので、情報記録媒体に記録された暗号化コンテンツに対応する暗号鍵の漏洩が発生した場合でも、変換データの取得ができない装置においてはコンテンツの再生が実行されず、コンテンツの不正利用が防止される。   According to the configuration of an embodiment of the present invention, content including modified data is recorded on an information recording medium, and further, conversion data that is legitimate content configuration data to be replaced with the modified data, and the content of the converted data Since the conversion table in which the setting position information is recorded is stored in the information recording medium, and in the content reproduction process, the content configuration data is replaced with the conversion data in accordance with the conversion table recorded in the information recording medium. Even when the encryption key corresponding to the encrypted content recorded on the information recording medium is leaked, the content cannot be reproduced in an apparatus that cannot obtain the conversion data, and unauthorized use of the content is prevented.

また、本発明の一実施例の構成によれば、変換データとして、コンテンツ再生装置またはコンテンツ再生アプリケーションを識別可能とした識別情報の構成ビットを解析可能としたデータを含む変換データを適用したので、万が一不正コンテンツが流出した場合でも、変換データの解析によって、不正コンテンツの流出源を特定することが可能となる。   In addition, according to the configuration of the embodiment of the present invention, the conversion data including the data that can analyze the constituent bits of the identification information that can identify the content reproduction device or the content reproduction application is applied as the conversion data. Even if illegal contents are leaked, it is possible to identify the source of illegal contents by analyzing the conversion data.

また、本発明の一実施例の構成によれば、変換データを格納した変換テーブルを区分した分割テーブル毎に異なるパラメータを適用した演算処理または暗号化処理を施した設定としたので、ある特定のパラメータの漏洩が発生した場合でもコンテンツの一部のみの再生が許容するのみであり、コンテンツ全体の漏洩が発生する可能性を低減させることが可能となる。   In addition, according to the configuration of the embodiment of the present invention, since the calculation process or the encryption process using different parameters is set for each divided table obtained by dividing the conversion table storing the conversion data, Even when parameter leakage occurs, only a part of the content is allowed to be reproduced, and the possibility of leakage of the entire content can be reduced.

情報記録媒体の格納データおよびドライブ装置、情報処理装置の構成および処理について説明する図である。It is a figure explaining the structure and process of the storage data of an information recording medium, a drive apparatus, and information processing apparatus. 情報記録媒体の格納コンテンツに対して設定するコンテンツ管理ユニットの設定例について説明する図である。It is a figure explaining the example of a setting of the content management unit set with respect to the storage content of an information recording medium. 情報記録媒体の格納コンテンツに対して設定するコンテンツ管理ユニットとユニット鍵との対応について説明する図である。It is a figure explaining a response | compatibility with the content management unit and unit key set with respect to the storage content of an information recording medium. 情報記録媒体の格納コンテンツに対して設定されるディレクトリ構成について説明する図である。It is a figure explaining the directory structure set with respect to the storage content of an information recording medium. 変換テーブルおよびデータ変換処理プログラムのディレクトリ構成について説明する図である。It is a figure explaining the directory structure of a conversion table and a data conversion process program. コンテンツ再生処理の処理例1を示す図である。It is a figure which shows the process example 1 of a content reproduction process. ドライブとホスト間の相互認証処理シーケンスを説明する図である。It is a figure explaining the mutual authentication processing sequence between a drive and a host. コンテンツ再生の際に実行する変換データの適用処理について説明する図である。It is a figure explaining the application process of the conversion data performed in the case of content reproduction. 情報記録媒体に記録されるデータ変換テーブルのデータ構成について説明する図である。It is a figure explaining the data structure of the data conversion table recorded on an information recording medium. コンテンツ再生処理の処理例2を示す図である。It is a figure which shows the process example 2 of a content reproduction process. コンテンツ再生処理の処理例3を示す図である。It is a figure which shows the process example 3 of a content reproduction process. 変換テーブルブロック(FUTブロック)単位で難読化処理がなされている変換テーブルのデータ構成について説明する図である。It is a figure explaining the data structure of the conversion table in which the obfuscation process is made | formed by the conversion table block (FUT block) unit. 変換テーブルブロック(FUTブロック)単位で難読化処理がなされている変換テーブルのデータ構成について説明する図である。It is a figure explaining the data structure of the conversion table in which the obfuscation process is made | formed by the conversion table block (FUT block) unit. コンテンツ再生処理の処理例4を示す図である。It is a figure which shows the process example 4 of a content reproduction process. コンテンツ再生処理の処理例5を示す図である。It is a figure which shows the process example 5 of a content reproduction process. コンテンツ再生処理の処理例6を示す図である。It is a figure which shows the process example 6 of a content reproduction | regeneration process. 変換テーブルがコンテンツを含むトランスポートストリームパケット内に格納される場合のデータ構成について説明する図である。It is a figure explaining a data structure in case a conversion table is stored in the transport stream packet containing a content. コンテンツ再生処理の処理例7を示す図である。It is a figure which shows the process example 7 of a content reproduction | regeneration process. 分割された変換テーブルのデータ構成について説明する図である。It is a figure explaining the data structure of the divided | segmented conversion table. 暗号化コンテンツの構成データ中の特定パケットに分散されて変換テーブルが記録される構成例について説明する図である。It is a figure explaining the structural example by which it distributes to the specific packet in the structure data of encryption content, and a conversion table is recorded. 変換データの書き込み構成の一例について説明する図である。It is a figure explaining an example of the writing structure of conversion data. コンテンツ再生処理の処理例7の変形例を示す図である。It is a figure which shows the modification of the process example 7 of a content reproduction process. コンテンツ再生処理の処理例8を示す図である。It is a figure which shows the process example 8 of a content reproduction process. 変換テーブルの全体データ構成を示す図である。It is a figure which shows the whole data structure of a conversion table. 変換テーブル内に含まれる複数の変換テーブルブロック(FUTブロック)中の1つの変換テーブルブロック(FUTブロック)のデータ構成を示す図である。It is a figure which shows the data structure of one conversion table block (FUT block) in the some conversion table block (FUT block) contained in a conversion table. 変換テーブルブロック(FUT)内の変換データエントリのデータ構成を示す図である。It is a figure which shows the data structure of the conversion data entry in a conversion table block (FUT). コンテンツ再生処理の処理例8の変形例を示す図である。It is a figure which shows the modification of the process example 8 of a content reproduction process. 変換テーブルの変形例を示す図である。It is a figure which shows the modification of a conversion table. ホストとしてのアプリケーションを実行する情報処理装置のハードウェア構成例について説明する図である。FIG. 3 is a diagram for describing a hardware configuration example of an information processing apparatus that executes an application as a host.

以下、図面を参照しながら本発明の詳細について説明する。なお、説明は、以下の記載項目に従って行う。
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.情報記録媒体製造装置および情報記録媒体
Hereinafter, details of the present invention will be described with reference to the drawings. The description will be made according to the following description items.
1. 1. Outline of data stored in information recording medium and processing in drive and host 2. Content management unit (CPS unit) Content reproduction processing (3.1) Content reproduction processing example 1
(3.2) Content reproduction processing example 2
(3.3) Content reproduction processing example 3
(3.4) Content reproduction processing example 4
(3.5) Content reproduction processing example 5
(3.6) Content reproduction processing example 6
(3.7) Content Playback Processing Example 7
(3.8) Content Playback Processing Example 8
4). 4. Configuration of information processing apparatus Information recording medium manufacturing apparatus and information recording medium

[1.情報記録媒体の格納データと、ドライブおよびホストにおける処理の概要]
まず、情報記録媒体の格納データと、ドライブおよびホストにおける処理の概要について説明する。図1に、コンテンツの格納された情報記録媒体100、ドライブ120およびホスト150の構成を示す。ホスト150は、例えばPC等の情報処理装置で実行されるデータ再生(または記録)アプリケーションであり、所定のデータ処理シーケンスに従ってPC等の情報処理装置のハードウェアを利用した処理を行なう。
[1. Overview of data stored in information recording medium and processing in drive and host]
First, data stored in the information recording medium and an outline of processing in the drive and the host will be described. FIG. 1 shows the configuration of the information recording medium 100, the drive 120, and the host 150 in which content is stored. The host 150 is a data reproduction (or recording) application executed by an information processing apparatus such as a PC, and performs processing using hardware of the information processing apparatus such as a PC in accordance with a predetermined data processing sequence.

情報記録媒体100は、例えば、Blu−rayディスク、DVDなどの情報記録媒体であり、正当なコンテンツ著作権、あるいは頒布権を持ついわゆるコンテンツ権利者の許可の下にディスク製造工場において製造された正当なコンテンツを格納した情報記録媒体(ROMディスクなど)、あるいはデータ記録可能な情報記録媒体(REディスクなど)である。なお、以下の実施例では、情報記録媒体の例としてディスク型の媒体を例として説明するが、本発明は様々な態様の情報記録媒体を用いた構成において適用可能である。   The information recording medium 100 is, for example, an information recording medium such as a Blu-ray disc, a DVD, and the like, which is a legitimate content manufactured at a disc manufacturing factory with the permission of a so-called content right holder having a copyright or distribution right. An information recording medium (ROM disk or the like) storing various contents or an information recording medium (RE disk or the like) capable of recording data. In the following embodiments, a disk-type medium will be described as an example of the information recording medium. However, the present invention can be applied to configurations using information recording media of various modes.

(1)暗号化コンテンツ101
情報記録媒体100には、様々なコンテンツが格納される。例えば高精細動画像データであるHD(High Definition)ムービーコンテンツなどの動画コンテンツのAV(Audio Visual)ストリームや特定の規格で規定された形式のゲームプログラム、画像ファイル、音声データ、テキストデータなどからなるコンテンツである。これらのコンテンツは、特定のAVフォーマット規格データであり、特定のAVデータフォーマットに従って格納される。具体的には、例えばBlu−rayディスクROM規格データとして、Blu−ray Disc(商標)ROM規格フォーマットに従って格納される。
(1) Encrypted content 101
Various contents are stored in the information recording medium 100. For example, it consists of an AV (Audio Visual) stream of moving image content such as HD (High Definition) movie content which is high-definition moving image data, a game program of a format defined by a specific standard, an image file, audio data, text data, etc. Content. These contents are specific AV format standard data and are stored according to a specific AV data format. Specifically, for example, Blu-ray Disc ROM standard data is stored in accordance with the Blu-ray Disc (trademark) ROM standard format.

(1)暗号化コンテンツ101
情報記録媒体100には、様々なコンテンツが格納される。例えば高精細動画像データであるHD(High Definition)ムービーコンテンツなどの動画コンテンツのAV(Audio Visual)ストリームや特定の規格で規定された形式のゲームプログラム、画像ファイル、音声データ、テキストデータなどからなるコンテンツである。これらのコンテンツは、特定のAVフォーマット規格データであり、特定のAVデータフォーマットに従って格納される。具体的には、例えばBlu−rayディスクROM規格データとして、Blu−rayディスクROM規格フォーマットに従って格納される。
(1) Encrypted content 101
Various contents are stored in the information recording medium 100. For example, it consists of an AV (Audio Visual) stream of moving image content such as HD (High Definition) movie content which is high-definition moving image data, a game program of a format defined by a specific standard, an image file, audio data, text data, etc. Content. These contents are specific AV format standard data and are stored according to a specific AV data format. Specifically, for example, it is stored as Blu-ray disc ROM standard data according to the Blu-ray disc ROM standard format.

さらに、例えばサービスデータとしてのゲームプログラムや、画像ファイル、音声データ、テキストデータなどが格納される場合もある。これらのコンテンツは、特定のAVデータフォーマットに従わないデータフォーマットを持つデータとして格納される場合もある。   Furthermore, for example, a game program as service data, an image file, audio data, text data, or the like may be stored. These contents may be stored as data having a data format that does not conform to a specific AV data format.

コンテンツの種類としては、音楽データ、動画、静止画等の画像データ、ゲームプログラム、WEBコンテンツなど、様々なコンテンツが含まれ、これらのコンテンツには、情報記録媒体100からのデータのみによって利用可能なコンテンツ情報と、情報記録媒体100からのデータと、ネットワーク接続されたサーバから提供されるデータとを併せて利用可能となるコンテンツ情報など、様々な態様の情報が含まれる。情報記録媒体に格納されるコンテンツは、区分コンテンツ毎の異なる利用制御を実現するため、区分コンテンツ毎に異なる鍵(CPSユニット鍵またはユニット鍵(あるいはタイトル鍵と呼ぶ場合もある))が割り当てられ暗号化されて格納される。1つのユニット鍵を割り当てる単位をコンテンツ管理ユニット(CPSユニット)と呼ぶ。さらに、コンテンツは、構成データの一部が、正しいコンテンツデータと異なるデータによって置き換えられたブロークンデータとして設定され、復号処理のみでは正しいコンテンツ再生が実行されず、再生を行なう場合は、ブロークンデータを変換テーブルに登録されたデータに置き換える処理が必要となる。これらの処理は後段で詳細に説明する。   The content types include various contents such as music data, image data such as moving images and still images, game programs, and WEB contents, and these contents can be used only by data from the information recording medium 100. Various types of information such as content information that can be used in combination with content information, data from the information recording medium 100, and data provided from a network-connected server are included. The content stored in the information recording medium is encrypted by assigning a different key (CPS unit key or unit key (or sometimes called a title key)) to each divided content in order to realize different usage control for each divided content. And stored. A unit for assigning one unit key is called a content management unit (CPS unit). Furthermore, the content is set as broken data in which a part of the configuration data is replaced with data different from the correct content data. The correct content playback is not executed only by the decryption process. If playback is performed, the broken data is converted. Processing to replace the data registered in the table is required. These processes will be described in detail later.

(2)MKB
MKB(Media Key Block)102は、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックである。MKB102は有効なライセンスを持つユーザの情報処理装置に格納されたデバイス鍵[Kd]に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵[Km]の取得を可能とした鍵情報ブロックである。これはいわゆる階層型木構造に従った情報配信方式を適用したものであり、ユーザデバイス(情報処理装置)が有効なライセンスを持つ場合にのみ、メディア鍵[Km]の取得を可能とし、無効化(リボーク処理)されたユーザデバイスにおいては、メディア鍵[Km]の取得が不可能となる。
(2) MKB
An MKB (Media Key Block) 102 is an encryption key block generated based on a tree-structured key distribution method known as one aspect of the broadcast encryption method. The MKB 102 can acquire the media key [Km], which is a key necessary for content decryption, only by processing (decryption) based on the device key [Kd] stored in the information processing apparatus of the user having a valid license. This is a key information block. This is an application of an information distribution method in accordance with a so-called hierarchical tree structure, which makes it possible to acquire and invalidate a media key [Km] only when the user device (information processing apparatus) has a valid license. In the revoked user device, the media key [Km] cannot be acquired.

ライセンスエンティテイとしての管理センタはMKBに格納する鍵情報の暗号化に用いるデバイス鍵の変更により、特定のユーザデバイスに格納されたデバイス鍵では復号できない、すなわちコンテンツ復号に必要なメディア鍵を取得できない構成を持つMKBを生成することができる。従って、任意タイミングで不正デバイスを排除(リボーク)して、有効なライセンスを持つデバイスに対してのみ復号可能な暗号化コンテンツを提供することが可能となる。コンテンツの復号処理については後述する。   The management center as a license entity cannot be decrypted with a device key stored in a specific user device due to a change in the device key used for encrypting key information stored in the MKB, that is, a media key necessary for content decryption cannot be obtained. An MKB having a configuration can be generated. Accordingly, it is possible to provide an encrypted content that can be decrypted only to a device having a valid license by removing (revoking) an unauthorized device at an arbitrary timing. The content decryption process will be described later.

(3)タイトル鍵ファイル
前述したように各コンテンツまたは複数コンテンツの集合は、コンテンツの利用管理のため、各々、個別の暗号鍵(タイトル鍵(CPSユニット鍵))を適用した暗号化がなされて情報記録媒体100に格納される。すなわち、コンテンツを構成するAV(Audio Visual)ストリーム、音楽データ、動画、静止画等の画像データ、ゲームプログラム、WEBコンテンツなどは、コンテンツ利用の管理単位としてのユニットに区分され、区分されたユニット毎に異なるタイトル鍵を生成して、復号処理を行なうことが必要となる。このタイトル鍵を生成するための情報がタイトル鍵データであり、例えばメディア鍵等によって生成された鍵で暗号化タイトル鍵を復号することによってタイトル鍵を得る。タイトル鍵データを適用した所定の暗号鍵生成シーケンスに従って、各ユニット対応のタイトル鍵が生成され、コンテンツの復号が実行される。
(3) Title Key File As described above, each content or a set of a plurality of contents is encrypted by applying an individual encryption key (title key (CPS unit key)) for content usage management. It is stored in the recording medium 100. That is, AV (Audio Visual) stream, image data such as music data, moving image, still image, game program, WEB content, etc. constituting the content are divided into units as management units for content use. It is necessary to generate a different title key and perform decryption processing. Information for generating the title key is title key data. For example, the title key is obtained by decrypting the encrypted title key with a key generated by a media key or the like. In accordance with a predetermined encryption key generation sequence to which the title key data is applied, a title key corresponding to each unit is generated and the content is decrypted.

(4)使用許諾情報
使用許諾情報には、例えばコピー・再生制御情報(CCI)が含まれる。すなわち、情報記録媒体100に格納された暗号化コンテンツ101に対応する利用制御のためのコピー制限情報や、再生制限情報である。このコピー・再生制御情報(CCI)は、コンテンツ管理ユニットとして設定されるCPSユニット個別の情報として設定される場合や、複数のCPSユニットに対応して設定される場合など、様々な設定が可能である。
(4) Use Permission Information The use permission information includes, for example, copy / playback control information (CCI). That is, the copy restriction information for use control corresponding to the encrypted content 101 stored in the information recording medium 100 and the reproduction restriction information. This copy / playback control information (CCI) can be set in various ways, for example, when it is set as individual CPS unit information set as a content management unit, or when it is set corresponding to a plurality of CPS units. is there.

(5)変換テーブル
前述したように、情報記録媒体100に格納された暗号化コンテンツ101は、所定の暗号化が施されているとともに、コンテンツ構成データの一部が、正しいデータと異なるブロークンデータによって構成されている。コンテンツ再生に際しては、このブロークンデータを正しいコンテンツデータである変換データに置き換えるデータ上書き処理が必要となる。この変換データを登録したテーブルが変換テーブル(Fix−up Table)105である。ブロークンデータはコンテンツ中に散在して多数設定され、コンテンツ再生に際しては、これらの複数のブロークンデータを変換テーブルに登録された変換データに置き換える(上書き)する処理が必要となる。この変換データを適用することにより、例えば、暗号鍵が漏洩しコンテンツの復号が不正に行なわれた場合であっても、コンテンツの復号のみでは、置き換えデータの存在によって正しいコンテンツの再生が不可能となり、不正なコンテンツ利用を防止することができる。
(5) Conversion Table As described above, the encrypted content 101 stored in the information recording medium 100 is subjected to predetermined encryption, and part of the content configuration data is based on broken data different from the correct data. It is configured. When reproducing the content, a data overwriting process is required to replace the broken data with conversion data that is correct content data. A table in which the conversion data is registered is a conversion table (Fix-up Table) 105. A large number of pieces of broken data are scattered and set in the content, and when reproducing the content, it is necessary to replace (overwrite) the plurality of broken data with the conversion data registered in the conversion table. By applying this conversion data, for example, even when the encryption key is leaked and the content is decrypted illegally, the content cannot be reproduced by the presence of the replacement data only by decrypting the content. Unauthorized use of content can be prevented.

なお、変換テーブル105には、通常の変換データに加え、コンテンツ再生装置またはコンテンツ再生アプリケーションを識別可能とした識別情報の構成ビットを解析可能としたデータを含む変換データが含まれる。具体的には、例えば、プレーヤ(ホストアプリケーションを実行する装置)の識別データとしてのプレーヤIDあるいはプレーヤIDに基づいて生成された識別情報が記録された「識別マークを含む変換データ」が含まれる。識別マークを含む変換データは、コンテンツの再生に影響を与えないレベルで、正しいコンテンツデータのビット値をわずかに変更したデータである。これらの変換データを利用した処理についての詳細は、後段で説明する。   The conversion table 105 includes conversion data including data that makes it possible to analyze the constituent bits of the identification information that can identify the content playback apparatus or the content playback application, in addition to the normal conversion data. Specifically, for example, a player ID as identification data of a player (an apparatus that executes a host application) or “conversion data including an identification mark” in which identification information generated based on the player ID is recorded is included. The conversion data including the identification mark is data in which the bit value of the correct content data is slightly changed at a level that does not affect the reproduction of the content. Details of processing using these conversion data will be described later.

なお、図1には、変換テーブル105を独立したデータファイルとして設定した例を示しているが、変換テーブルを独立ファイルとせずに、暗号化コンテンツ101の構成パケット中に散在させて含ませる構成としてもよい。これらの構成および処理については後段で説明する。   Although FIG. 1 shows an example in which the conversion table 105 is set as an independent data file, the conversion table is not included as an independent file, but is included in the configuration packet of the encrypted content 101 in a scattered manner. Also good. These configurations and processes will be described later.

(6)データ変換処理プログラム
データ変換処理プログラム106は、変換テーブル(Fix−up Table)105の登録データによるデータ変換処理を実行するための処理命令を含むプログラムであり、コンテンツ再生を実行するホストによって利用される。図1におけるホスト100のデータ変換処理部154において実行される。
(6) Data Conversion Processing Program The data conversion processing program 106 is a program including processing instructions for executing data conversion processing based on registered data in the conversion table (Fix-up Table) 105, and is executed by a host that executes content reproduction. Used. It is executed in the data conversion processing unit 154 of the host 100 in FIG.

ホストでは、データ変換処理を実行するバーチャルマシン(VM)を設定し、バーチャルマシン(VM)において、情報記録媒体100から読み出したデータ変換処理プログラム106を実行して、変換テーブル(Fix−up Table)105の登録データを適用して、復号コンテンツに対して、その一部構成データのデータ変換処理を実行する。これらの処理の詳細については後述する。   In the host, a virtual machine (VM) that executes data conversion processing is set, the data conversion processing program 106 read from the information recording medium 100 is executed in the virtual machine (VM), and a conversion table (Fix-up Table) is executed. The registration data 105 is applied, and the data conversion process of the partial configuration data is executed on the decrypted content. Details of these processes will be described later.

次に、ホスト150とドライブ120の構成、処理の概要について、図1を参照して説明する。情報記録媒体100に格納されたコンテンツの再生処理は、ドライブ120を介してホスト150にデータが転送されて実行される。コンテンツの利用に先立ち、ドライブ120と、ホスト150間では相互認証処理が実行され、この認証処理の成立によって双方の正当性が確認された後、ドライブからホストに暗号化コンテンツが転送され、ホスト側でコンテンツの復号処理が行なわれ、さらに上述の変換テーブルによるデータ変換処理が実行されてコンテンツ再生が行なわれる。   Next, configurations of the host 150 and the drive 120 and an outline of processing will be described with reference to FIG. The reproduction processing of the content stored in the information recording medium 100 is executed by transferring data to the host 150 via the drive 120. Prior to the use of the content, mutual authentication processing is executed between the drive 120 and the host 150. After the validity of both is confirmed by the establishment of this authentication processing, the encrypted content is transferred from the drive to the host, and the host side Then, the content is decrypted, and further the data conversion processing based on the above-described conversion table is executed to reproduce the content.

ホスト150と、ドライブ120間において実行する相互認証においては、各機器またはアプリケーションが不正な機器またはアプリケーションとして登録されていないかを示す管理センタの発行したリボケーション(無効化)リストを参照して、正当性を判定する処理を実行する。   In the mutual authentication executed between the host 150 and the drive 120, refer to a revocation (invalidation) list issued by the management center indicating whether each device or application is registered as an unauthorized device or application. A process for determining validity is executed.

ドライブ120は、ホストの証明書(公開鍵証明書)のリボーク(無効化)情報を格納したホストCRL(Certificate Revocation List)を格納するためのメモリ122を有する。一方、ホスト150は、ドライブの証明書(公開鍵証明書)のリボーク(無効化)情報を格納したドライブCRL(Certificate Revocation List)を格納するためのメモリ152を有する。メモリは不揮発性メモリ(NVRAM)であり、例えば、情報記録媒体100から読み出されるCRLがより新しいバージョンである場合には、それぞれのデータ処理部121,151は、メモリ122.152に新しいバージョンのホストCRLまたはドライブCRLを格納する更新処理を行なう。   The drive 120 has a memory 122 for storing a host CRL (Certificate Revocation List) storing revocation (invalidation) information of a host certificate (public key certificate). On the other hand, the host 150 has a memory 152 for storing a drive CRL (Certificate Revocation List) storing revocation (invalidation) information of a drive certificate (public key certificate). The memory is a non-volatile memory (NVRAM). For example, when the CRL read from the information recording medium 100 is a newer version, each data processing unit 121, 151 stores a new version host in the memory 122.152. Update processing for storing the CRL or the drive CRL is performed.

ホストCRL、ドライブCRL等のCRLは管理センタが逐次更新する。すなわち新たな不正機器が発覚した場合、その不正機器に対して発行された証明書のIDまたは機器IDなどを新規エントリとし追加した更新CRLを発行する。各CRLにはバージョン番号が付与されており、新旧比較が可能な構成となっている。例えばドライブが装着した情報記録媒体から読み出されたCRLが、ドライブ内のメモリ122に格納されたCRLより新しい場合、ドライブは、CRLの更新処理を実行する。ホスト150も同様に、ドライブCRLの更新を実行する。   The management center sequentially updates CRLs such as the host CRL and the drive CRL. That is, when a new unauthorized device is detected, an updated CRL is issued by adding the certificate ID or device ID issued to the unauthorized device as a new entry. Each CRL is assigned a version number, and can be compared with the old and new. For example, when the CRL read from the information recording medium loaded in the drive is newer than the CRL stored in the memory 122 in the drive, the drive executes a CRL update process. Similarly, the host 150 updates the drive CRL.

ドライブ120のデータ処理部121は、このCRLの更新処理の他、コンテンツ利用に際して実行されるホストとの認証処理、さらに、情報記録媒体からのデータ読み出し、ホストヘのデータ転送処理などを実行する。   In addition to the CRL update process, the data processing unit 121 of the drive 120 executes an authentication process with the host that is executed when the content is used, a data read process from the information recording medium, and a data transfer process to the host.

ホスト150は、前述したように、例えばPC等の情報処理装置で実行されるデータ再生(または記録)アプリケーションであり、所定のデータ処理シーケンスに従ってPC等の情報処理装置のハードウェアを利用した処理を行なう。   As described above, the host 150 is a data reproduction (or recording) application executed by an information processing apparatus such as a PC, and performs processing using hardware of the information processing apparatus such as a PC in accordance with a predetermined data processing sequence. Do.

ホスト150は、ドライブ120との相互認証処理や、データ転送制御などを実行するデータ処理部151、暗号化コンテンツの復号処理を実行する復号処理部153、前述の変換テーブル105の登録データに基づくデータ変換処理を実行するデータ変換処理部154、デコード(例えばMPEGデコード)処理を実行するデコード処理部155を有する。   The host 150 includes a data processing unit 151 that performs mutual authentication processing with the drive 120, data transfer control, and the like, a decryption processing unit 153 that performs decryption processing of the encrypted content, and data based on the registration data of the conversion table 105 described above. A data conversion processing unit 154 that executes conversion processing and a decoding processing unit 155 that executes decoding (for example, MPEG decoding) processing are included.

データ処理部151は、ホスト−ドライブ間の認証処理を実行し、認証処理においては、不揮発性メモリ(NVRAM)としてのメモリa152に格納されたドライブCRLを参照して、ドライブがリボークされたドライブでないことを確認する。ホストも、また、メモリa152に新しいバージョンのドライブCRLを格納する更新処理を行なう。   The data processing unit 151 executes a host-drive authentication process. In the authentication process, the drive is not a revoked drive with reference to the drive CRL stored in the memory a152 as a nonvolatile memory (NVRAM). Make sure. The host also performs an update process for storing a new version of the drive CRL in the memory a152.

復号処理部153では、メモリb156に格納された各種情報、および、情報記録媒体100からの読み取りデータを適用して、コンテンツの復号に適用する鍵を生成し、暗号化コンテンツ101の復号処理を実行する。データ変換処理部154は、情報記録媒体100から取得されるデータ変換処理プログラムに従って、情報記録媒体100から取得される変換テーブルに登録された変換データを適用してコンテンツの構成データの置き換え処理(上書き)を実行する。デコード処理部155は、デコード(例えばMPEGデコード)処理を実行する。   The decryption processing unit 153 applies various information stored in the memory b 156 and data read from the information recording medium 100 to generate a key to be applied to content decryption, and executes decryption processing of the encrypted content 101. To do. The data conversion processing unit 154 applies the conversion data registered in the conversion table acquired from the information recording medium 100 according to the data conversion processing program acquired from the information recording medium 100, and replaces the content configuration data (overwrite) ). The decoding processing unit 155 executes decoding (for example, MPEG decoding) processing.

情報処理装置150のメモリb156には、デバイス鍵:Kdや、相互認証処理に適用する鍵情報や復号に適用する鍵情報などが格納される。なお、コンテンツの復号処理の詳細については後述する。デバイス鍵:Kdは、先に説明したMKBの処理に適用する鍵である。MKBは有効なライセンスを持つユーザの情報処理装置に格納されたデバイス鍵[Kd]に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵[Km]の取得を可能とした鍵情報ブロックであり、暗号化コンテンツの復号に際して、情報処理装置150は、メモリb156に格納されたデバイス鍵:Kdを適用してMKBの処理を実行することになる。なお、コンテンツの復号処理の詳細については後述する。   The memory b156 of the information processing apparatus 150 stores a device key: Kd, key information applied to mutual authentication processing, key information applied to decryption, and the like. The details of the content decryption process will be described later. The device key: Kd is a key applied to the MKB process described above. The MKB can acquire the media key [Km], which is a key necessary for content decryption, only by processing (decryption) based on the device key [Kd] stored in the information processing apparatus of the user having a valid license. When decrypting the encrypted content, the information processing apparatus 150 executes the MKB process by applying the device key: Kd stored in the memory b156. The details of the content decryption process will be described later.

[2.コンテンツ管理ユニット(CPSユニット)について]
前述したように、情報記録媒体に格納されるコンテンツは、ユニット毎の異なる利用制御を実現するため、ユニット毎に異なる鍵が割り当てられ暗号化処理がなされて格納される。すなわち、コンテンツはコンテンツ管理ユニット(CPSユニット)に区分されて、個別の暗号化処理がなされ、個別の利用管理がなされる。
[2. About content management unit (CPS unit)]
As described above, the content stored in the information recording medium is stored after being encrypted by being assigned a different key for each unit in order to realize different usage control for each unit. That is, the content is divided into content management units (CPS units), subjected to individual encryption processing, and individual usage management.

コンテンツ利用に際しては、まず、各ユニットに割り当てられたCPSユニット鍵(タイトル鍵とも呼ばれる)を取得することが必要であり、さらに、その他の必要な鍵、鍵生成情報等を適用して予め定められた復号処理シーケンスに基づくデータ処理を実行して再生を行う。コンテンツ管理ユニット(CPSユニット)の設定態様について、図2を参照して説明する。   When using content, it is necessary to obtain a CPS unit key (also referred to as a title key) assigned to each unit. In addition, other necessary keys, key generation information, etc. are applied in advance. Playback is performed by executing data processing based on the decoding processing sequence. A setting mode of the content management unit (CPS unit) will be described with reference to FIG.

図2に示すように、コンテンツは、(A)インデックス210、(B)ムービーオブジェクト220、(C)プレイリスト230、(D)クリップ240の階層構成を有する。再生アプリケーションによってアクセスされるタイトルなどのインデックスを指定すると、例えばタイトルに関連付けられた再生プログラムが指定され、指定された再生プログラムのプログラム情報に従ってコンテンツの再生順等を規定したプレイリストが選択される。   As shown in FIG. 2, the content has a hierarchical structure of (A) an index 210, (B) a movie object 220, (C) a playlist 230, and (D) a clip 240. When an index such as a title accessed by the playback application is specified, for example, a playback program associated with the title is specified, and a playlist that defines the playback order of contents is selected according to the program information of the specified playback program.

プレイリストには、再生対象データ情報としてのプレイアイテムが含まれる。プレイリストに含まれるプレイアイテムによって規定される再生区間としてのクリップ情報によって、コンテンツ実データとしてのAVストリームあるいはコマンドが選択的に読み出されて、AVストリームの再生、コマンドの実行処理が行われる。なお、プレイリスト、プレイアイテムは多数、存在し、それぞれに識別情報としてのプレイリストID、プレイアイテムIDが対応付けられている。   The play list includes play items as reproduction target data information. The AV stream or the command as the actual content data is selectively read out by the clip information as the playback section defined by the play item included in the playlist, and the AV stream playback and command execution processing are performed. There are a large number of playlists and play items, and a playlist ID and play item ID as identification information are associated with each.

図2には、2つのCPSユニットを示している。これらは、情報記録媒体に格納されたコンテンツの一部を構成している。CPSユニット1,271、CPSユニット2,272の各々は、インデックスとしてのタイトルと、再生プログラムファイルとしてのムービーオブジェクトと、プレイリストと、コンテンツ実データとしてのAVストリームファイルを含むクリップを含むユニットとして設定されたCPSユニットである。   FIG. 2 shows two CPS units. These constitute a part of the content stored in the information recording medium. Each of CPS units 1 and 271 and CPS units 2 and 272 is set as a unit including a clip including a title as an index, a movie object as a playback program file, a playlist, and an AV stream file as content actual data. CPS unit.

コンテンツ管理ユニット(CPSユニット)1,271には、タイトル1,211とタイトル2,212、再生プログラム221,222、プレイリスト231,232、クリップ241、クリップ242が含まれ、これらの2つのクリップ241,242に含まれるコンテンツの実データであるAVストリームデータファイル261,262が、少なくとも暗号化対象データであり、原則的にコンテンツ管理ユニット(CPSユニット)1,271に対応付けて設定される暗号鍵であるタイトル鍵(Kt1)(CPSユニット鍵とも呼ばれる)を適用して暗号化されたデータとして設定される。   The content management units (CPS units) 1 and 271 include titles 1 and 211 and titles 2 212, playback programs 221 and 222, playlists 231 and 232, clips 241 and clips 242, and these two clips 241. , 242, AV stream data files 261, 262, which are actual data of content, are at least encryption target data, and in principle are encryption keys set in association with the content management units (CPS units) 1, 271. Is set as data encrypted by applying a title key (Kt1) (also called a CPS unit key).

コンテンツ管理ユニット(CPSユニット)2,272には、インデックスとしてアプリケーション1,213、再生プログラム224、プレイリスト233、クリップ243が含まれ、クリップ243に含まれるコンテンツの実データであるAVストリームデータファイル263がコンテンツ管理ユニット(CPSユニット)2,272に対応付けて設定される暗号鍵である暗号鍵であるタイトル鍵(Kt2)適用して暗号化される。   The content management units (CPS units) 2, 272 include applications 1, 213, a playback program 224, a playlist 233, and a clip 243 as indexes, and an AV stream data file 263 that is actual data of the content included in the clip 243. Is encrypted by applying a title key (Kt2) that is an encryption key that is an encryption key set in association with the content management units (CPS units) 2 and 272.

例えば、ユーザがコンテンツ管理ユニット1,271に対応するアプリケーションファイルまたはコンテンツ再生処理を実行するためには、コンテンツ管理ユニット(CPSユニット)1,271に対応付けて設定された暗号鍵としてのタイトル鍵:Kt1を取得して復号処理を実行することが必要となる。コンテンツ管理ユニット2,272に対応するアプリケーションファイルまたはコンテンツ再生処理を実行するためには、コンテンツ管理ユニット(CPSユニット)2,272に対応付けて設定された暗号鍵としてのタイトル鍵:Kt2を取得して復号処理を実行することが必要となる。   For example, in order for the user to execute an application file or content reproduction process corresponding to the content management units 1 and 271, a title key as an encryption key set in association with the content management units (CPS units) 1 and 271: It is necessary to acquire Kt1 and execute the decoding process. In order to execute the application file or content reproduction process corresponding to the content management unit 2 272, the title key: Kt 2 as an encryption key set in association with the content management unit (CPS unit) 2 272 is acquired. Therefore, it is necessary to execute the decoding process.

CPSユニットの設定構成、およびタイトル鍵の対応例を図3に示す。図3には、情報記録媒体に格納される暗号化コンテンツの利用管理単位としてのCPSユニット設定単位と、各CPSユニットに適用するタイトル鍵(CPSユニット鍵)の対応を示している。なお、予め後発データ用のCPSユニットおよびタイトル鍵を格納して設定しておくことも可能である。例えばデータ部281が後発データ用のエントリである。   FIG. 3 shows a setting configuration of the CPS unit and a corresponding example of the title key. FIG. 3 shows a correspondence between CPS unit setting units as usage management units of encrypted content stored in the information recording medium and title keys (CPS unit keys) applied to each CPS unit. It is also possible to store and set a CPS unit for subsequent data and a title key in advance. For example, the data portion 281 is an entry for subsequent data.

CPSユニット設定単位は、コンテンツのタイトル、アプリケーション、データグループなど、様々であり、CPSユニット管理テーブルには、それぞれのCPSユニットに対応する識別子としてのCPSユニットIDが設定される。   There are various CPS unit setting units such as content titles, applications, data groups, and the like, and a CPS unit ID as an identifier corresponding to each CPS unit is set in the CPS unit management table.

図3において、例えばタイトル1はCPSユニット1であり、CPSユニット1に属する暗号化コンテンツの復号に際しては、タイトル鍵Kt1を生成し、生成したタイトル鍵Kt1に基づく復号処理を行なうことが必用となる。   In FIG. 3, for example, title 1 is CPS unit 1, and when decrypting encrypted content belonging to CPS unit 1, it is necessary to generate title key Kt1 and perform decryption processing based on the generated title key Kt1. .

このように、情報記録媒体100に格納されるコンテンツは、ユニット毎の異なる利用制御を実現するため、ユニット毎に異なる鍵が割り当てられ暗号化処理がなされて格納される。各コンテンツ管理ユニット(CPSユニット)に対する個別の利用管理のために、各コンテンツ管理ユニット(CPSユニット)に対する使用許諾情報(UR:Usage Rule)が設定されている。使用許諾情報は、前述したように、コンテンツに対する例えばコピー・再生制御情報(CCI)を含む情報であり、各コンテンツ管理ユニット(CPSユニット)に含まれる暗号化コンテンツのコピー制限情報や、再生制限情報である。   As described above, the content stored in the information recording medium 100 is stored after being encrypted by being assigned a different key for each unit in order to realize different usage control for each unit. For individual usage management for each content management unit (CPS unit), usage permission information (UR: Usage Rule) for each content management unit (CPS unit) is set. As described above, the use permission information is information including, for example, copy / reproduction control information (CCI) for content, and copy restriction information and reproduction restriction information of encrypted content included in each content management unit (CPS unit). It is.

なお、タイトル鍵の生成には、情報記録媒体に格納された様々な情報を適用したデータ処理が必要となる。これらの処理の具体例についは、後段で詳細に説明する。   Note that the generation of the title key requires data processing using various information stored in the information recording medium. Specific examples of these processes will be described in detail later.

次に、図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ディレクトリ下のファイルで同じファイル番号持つものの対に対応している。
Next, with reference to FIG. 4, the directory structure corresponding to the content having the hierarchical structure shown in FIG. 2 will be described.
(A) The index 210 in FIG. 2 is the index.bdmv file in the directory shown in FIG. 3. (B) The movie object 220 in FIG. 2 is the MovieObject.bdmv file in the directory shown in FIG. 3. (C) The playlist in FIG. 230 is a file under the PLAYLIST directory in the directory shown in FIG.
(D) The clip 240 in FIG. 2 corresponds to a pair of files under the CLIPINF directory and files under the STREAM directory in the directory shown in FIG. 3 having the same file number.

情報記録媒体に格納されるコンテンツは、前述したように、コンテンツの構成データの一部が、正しいコンテンツデータと異なるデータによって置き換えられたブロークンデータとして設定され、復号処理のみでは正しいコンテンツ再生が実行されず、再生を行なう場合は、ブロークンデータを変換テーブルに登録されたデータに置き換える処理が必要となる。この置き換え処理には、情報記録媒体に格納されたデータ変換処理プログラム106を適用して、変換テーブル(Fix−up Table)105の登録データによるデータ変換処理を実行する。   As described above, the content stored in the information recording medium is set as broken data in which part of the content data is replaced with data different from the correct content data, and correct content playback is executed only by the decryption process. In the case of reproduction, it is necessary to replace the broken data with the data registered in the conversion table. For this replacement process, the data conversion process program 106 stored in the information recording medium is applied, and the data conversion process based on the registered data in the conversion table (Fix-up Table) 105 is executed.

前述したように、変換テーブル105、データ変換処理プログラム106を情報記録媒体に記録されている。図4に示すディレクトリ構成を持つコンテンツに対応する変換テーブルと、データ変換処理プログラムのディレクトリ構成を図5に示す。図5は、図4のディレクトリ構造を持つAVコンテンツに対して作成されるデータ変換処理プログラム、および変換テーブルのディレクトリ構成である。
図5に示す[ContentCode.svm]がデータ変換処理プログラムであり、
図5に示す[FixUpXXXXX.tbl]はクリップ1つごとに定義される変換テーブルである。(XXXXXはクリップ情報ファイルのファイル番号と一致している)
As described above, the conversion table 105 and the data conversion processing program 106 are recorded on the information recording medium. FIG. 5 shows the conversion table corresponding to the content having the directory structure shown in FIG. 4 and the directory structure of the data conversion processing program. FIG. 5 shows the directory structure of the data conversion processing program created for the AV content having the directory structure of FIG. 4 and the conversion table.
[ContentCode.svm] shown in FIG. 5 is a data conversion processing program,
[FixUpXXXXX.tbl] shown in FIG. 5 is a conversion table defined for each clip. (XXXXX matches the file number of the clip information file)

[3.コンテンツ再生処理]
以下、ドライブとホスト間の相互認証処理を実行し、認証の成立を条件として、ドライブに装着した情報記録媒体に格納されたコンテンツをドライブからホストに転送してコンテンツ再生処理を実行する場合の複数の処理例について説明する。
[3. Content playback processing]
A plurality of cases in which mutual authentication processing between the drive and the host is executed, and content reproduction processing is executed by transferring content stored in the information recording medium attached to the drive from the drive to the host on the condition that authentication is established An example of the process will be described.

(3.1)コンテンツ再生処理例1
まずコンテンツ再生処理例1について、図6を参照して説明する。図6には、左から暗号化コンテンツの格納された情報記録媒体310、情報記録媒体310をセットし、データの読み取りを実行するドライブ330、ドライブとデータ通信可能に接続され、情報記録媒体310に格納されたコンテンツをドライブ330を介して取得して再生処理を実行する再生アプリケーションを実行するホスト350を示している。ホスト350は、例えばPC等の情報処理装置において実行される。
(3.1) Content playback processing example 1
First, content reproduction processing example 1 will be described with reference to FIG. In FIG. 6, the information recording medium 310 storing the encrypted content and the information recording medium 310 are set from the left, and the drive 330 for executing data reading is connected to the information recording medium 310 so as to be capable of data communication with the drive. A host 350 that executes a playback application that acquires stored content via a drive 330 and executes playback processing is shown. The host 350 is executed in an information processing apparatus such as a PC.

情報記録媒体310には、MKB(Media Key Block)311、タイトル鍵ファイル312、暗号化コンテンツ313、変換テーブル314、データ変換処理プログラム315が格納されている。ホスト350は、MKBの処理に適用するデバイス鍵351を保持している。   The information recording medium 310 stores an MKB (Media Key Block) 311, a title key file 312, encrypted content 313, a conversion table 314, and a data conversion processing program 315. The host 350 holds a device key 351 applied to MKB processing.

図6に示すホスト350がドライブ330を介して情報記録媒体310の格納コンテンツを取得して再生する処理シーケンスについて説明する。まず、情報記録媒体310の格納コンテンツの読み出しに先立ち、ホスト350とドライブ330は、ステップS101において、相互認証を実行する。この相互認証は、ホストおよびドライブがそれぞれ正当な機器またはアプリケーションソフトであるかを確認する処理である。この相互認証処理シーケンスとしては、様々な処理が適用可能である。その一例を図7を参照して説明する。   A processing sequence in which the host 350 shown in FIG. 6 acquires and reproduces the content stored in the information recording medium 310 via the drive 330 will be described. First, prior to reading the stored contents of the information recording medium 310, the host 350 and the drive 330 execute mutual authentication in step S101. This mutual authentication is a process for confirming whether the host and the drive are valid devices or application software. Various processes can be applied as the mutual authentication processing sequence. One example will be described with reference to FIG.

図7は、公開鍵暗号方式に従った相互認証シーケンスの1例である。まず、ステップS121において、ドライブ330は、自己のメモリ(NVRAM)に格納されたドライブ公開鍵証明書と、任意に生成した乱数をホストに送信する。ステップS122において、ホスト350も、自己のメモリ(NVRAM)に格納されたホスト公開鍵証明書と、任意に生成した乱数をドライブに送信する。   FIG. 7 is an example of a mutual authentication sequence according to the public key cryptosystem. First, in step S121, the drive 330 transmits a drive public key certificate stored in its own memory (NVRAM) and a randomly generated random number to the host. In step S122, the host 350 also transmits the host public key certificate stored in its own memory (NVRAM) and a randomly generated random number to the drive.

ステップS123において、ドライブ330は、ホストから受信したホスト公開鍵証明書の正当性と、ホストのリボーク状況をホスト証明書リボケーションリスト(ホストCRL:Certificate Revocation list)に基づいて検証する。ステップS123において、ドライブ330は、まず、ホスト公開鍵証明書に設定された署名検証を実行する。図7に示すECDSA_Vは、楕円曲線暗号に基づく署名検証(Verification)の実行を示している。この署名検証は、鍵管理エンティテイの秘密鍵に対応する公開鍵を適用して実行する。ドライブは、署名検証用の鍵管理エンティテイの公開鍵をメモリ(NVRAM)に保持しており、これを適用して署名検証を実行する。署名検証によって、ホスト公開鍵証明書が改ざんされていないものであることを確認する。署名検証によって、ホスト公開鍵証明書が改ざんされていることが判明した場合は処理を中止する。   In step S123, the drive 330 verifies the validity of the host public key certificate received from the host and the revocation status of the host based on the host certificate revocation list (host CRL: Certificate Revocation list). In step S123, the drive 330 first executes signature verification set in the host public key certificate. ECDSA_V shown in FIG. 7 indicates execution of signature verification (Verification) based on elliptic curve cryptography. This signature verification is executed by applying a public key corresponding to the secret key of the key management entity. The drive holds a public key of a key management entity for signature verification in a memory (NVRAM), and executes signature verification by applying this. The signature verification verifies that the host public key certificate has not been tampered with. If the signature verification reveals that the host public key certificate has been tampered with, the processing is stopped.

さらに、ドライブ330は、改ざんのないことが明確になったホスト公開鍵証明書に基づいて、この証明書がリボーク(無効化)されているものでないことを、ホストCRLを参照して確認する。ホストCRLは、ホストに対して発行済みの公開鍵証明書について、無効化された証明書のIDをリスト化したものである。ホストCRLはドライブ内のメモリまたは情報記録媒体から取得する。   Furthermore, the drive 330 confirms with reference to the host CRL that this certificate has not been revoked based on the host public key certificate that has been clearly determined not to be falsified. The host CRL is a list of revoked certificate IDs for public key certificates issued to the host. The host CRL is acquired from a memory in the drive or an information recording medium.

ドライブ330は、改ざんのないことが明確になったホスト公開鍵証明書からIDを取得し、このIDがホストCRLに登録されているIDと一致するか否かを判定する。一致するIDがホストCRLに存在する場合、そのホストは、リボーク(無効化)されたホストであると判定し、以降の処理を中止する。ホスト公開鍵証明書から取得したIDが、ホストCRLに記録されていない場合は、正当なリボークのなされていないホストであると判定して、処理を続ける。   The drive 330 obtains an ID from the host public key certificate that has been clarified that it has not been tampered with, and determines whether or not this ID matches the ID registered in the host CRL. When the matching ID exists in the host CRL, it is determined that the host is a revoked (invalidated) host, and the subsequent processing is stopped. If the ID acquired from the host public key certificate is not recorded in the host CRL, it is determined that the host is not properly revoked, and the processing is continued.

一方、ホスト350においても、ステップS124において、ドライブ330から受領したドライブ公開鍵証明書に基づいて、ドライブ公開鍵証明書の正当性の確認(改ざん検証)と、ドライブCRLを適用したドライブのリボークの有無判定を実行する。ドライブの公開鍵証明書が正当なものであり、リボークされていないことが確認された場合にのみ、処理を継続する。ドライブCRLはホスト内のメモリまたは情報記録媒体から取得する。   On the other hand, also in the host 350, based on the drive public key certificate received from the drive 330 in step S124, the validity of the drive public key certificate (tampering verification) and the revocation of the drive to which the drive CRL is applied are confirmed. Perform presence / absence determination. The processing is continued only when it is confirmed that the drive public key certificate is valid and has not been revoked. The drive CRL is acquired from a memory in the host or an information recording medium.

次に、ドライブ330、ホスト350は、それぞれの認証結果をドライブレスポンス(S125)、ホストレスポンス(S126)として通知する。この認証結果の通知に際して、双方では、楕円曲線暗号を適用した値としてのECDH(Elliptic Curve Diffie Hellman)の値を生成して、双方に通知しあう。   Next, the drive 330 and the host 350 notify the respective authentication results as a drive response (S125) and a host response (S126). When notifying the authentication result, both sides generate an ECDH (Elliptic Curve Diffie Hellman) value as a value to which the elliptic curve cryptography is applied, and notify each other.

ドライブ330は、ホスト350からのドライブ認証結果とECDHの値を受信すると、ステップS127において、ホストのレスポンスを検証し、ドライブ認証の成立を確認して、受信したECDHの値を適用して共通鍵としてのセッション鍵を生成する。ホスト350においても、ドライブ330からのホスト認証結果とECDHの値を受信すると、ステップS128において、ドライブレスポンスを検証し、ホスト認証の成立を確認して、ECDHの値に基づいて共通鍵としてのセッション鍵を生成する。   Upon receiving the drive authentication result and the ECDH value from the host 350, the drive 330 verifies the host response in step S127, confirms the establishment of the drive authentication, and applies the received ECDH value to the common key. Generate a session key as. Also in the host 350, when the host authentication result and the ECDH value are received from the drive 330, in step S128, the drive response is verified, the establishment of the host authentication is confirmed, and a session as a common key is determined based on the ECDH value. Generate a key.

このような相互認証処理によって、ドライブ330とホスト350は共通鍵としてのセッション鍵を共有する。   Through such mutual authentication processing, the drive 330 and the host 350 share a session key as a common key.

図6に戻り、コンテンツ利用処理のシーケンスについての説明を続ける。ステップS101において、ホストドライブ間の相互認証が実行され、セッション鍵(Ks)を共有した後、ホスト350は、ステップS102において、情報記録媒体310に記録されたMKB311を、ドライブを介して取得して、メモリに格納されたデバイス鍵351を適用したMKB311の処理を実行して、MKBからメディア鍵(Km)を取得する。   Returning to FIG. 6, the description of the sequence of content use processing will be continued. In step S101, mutual authentication between the host drives is performed and the session key (Ks) is shared. Then, in step S102, the host 350 acquires the MKB 311 recorded on the information recording medium 310 via the drive. Then, the processing of the MKB 311 to which the device key 351 stored in the memory is applied is executed, and the media key (Km) is acquired from the MKB.

前述したように、MKB(Media Key Block)311は、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックであり、有効なライセンスを持つ装置に格納されたデバイス鍵(Kd)に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵(Km)の取得を可能とした鍵情報ブロックである。   As described above, the MKB (Media Key Block) 311 is an encryption key block generated based on a tree-structured key distribution method known as one aspect of the broadcast encryption method, and is stored in a device having a valid license. This is a key information block that makes it possible to obtain a media key (Km), which is a key necessary for content decryption, only by processing (decryption) based on the device key (Kd).

次に、ステップS103において、ステップS102におけるMKB処理で取得したメディア鍵(Km)を適用して、情報記録媒体310から読み取ったタイトル鍵ファイルの復号を実行して、タイトル鍵(Kt)を取得する。情報記録媒体310に格納されるタイトル鍵ファイルはメディア鍵によって暗号化されたデータを含むファイルであり、メディア鍵を適用した処理によってコンテンツ復号に適用するタイトル鍵(Kt)を取得することができる。なお、ステップS103の復号処理は、例えばAES暗号アルゴリズムが適用される。   Next, in step S103, the media key (Km) acquired in the MKB process in step S102 is applied, the title key file read from the information recording medium 310 is decrypted, and the title key (Kt) is acquired. . The title key file stored in the information recording medium 310 is a file including data encrypted by a media key, and a title key (Kt) to be applied to content decryption can be acquired by processing using the media key. For example, an AES encryption algorithm is applied to the decryption process in step S103.

次に、ホスト350は、ドライブ330を介して情報記録媒体310に格納された暗号化コンテンツ313を読み出して、トラックバッファ352に読み出しコンテンツを格納し、このバッファ格納コンテンツについて、ステップS104において、タイトル鍵(Kt)を適用した復号処理を実行し、復号コンテンツを取得する。   Next, the host 350 reads the encrypted content 313 stored in the information recording medium 310 via the drive 330, stores the read content in the track buffer 352, and the title key is stored in step S104 in step S104. A decryption process to which (Kt) is applied is executed to obtain decrypted content.

復号コンテンツは、平文TSバッファ353に格納する。(Plain TS)は復号された平文トランスポートストリームを意味する。ここで、平文TSバッファ353に格納される復号コンテンツは、前述したブロークンデータを含むコンテンツであり、このままでは再生できず、所定のデータ変換(上書きによるデータ置き換え)を行なう必要がある。   The decrypted content is stored in the plaintext TS buffer 353. (Plain TS) means a decrypted plaintext transport stream. Here, the decrypted content stored in the plaintext TS buffer 353 is content including the above-described broken data, and cannot be reproduced as it is, and it is necessary to perform predetermined data conversion (data replacement by overwriting).

このデータ変換処理を示すのが、図6のブロック371である。図6のブロック371は図1に示したホスト150のデータ変換処理部154の処理に相当する。このデータ変換処理の概要について、図8を参照して説明する。   This data conversion process is indicated by block 371 in FIG. A block 371 in FIG. 6 corresponds to the process of the data conversion processing unit 154 of the host 150 shown in FIG. An outline of the data conversion process will be described with reference to FIG.

図6に示す暗号化コンテンツ313は、情報記録媒体に格納された暗号化コンテンツであり、この暗号化コンテンツが、一旦、ホスト側のトラックバッファ352に格納される。図8(1)に示すトラックバッファ格納データ401である。   The encrypted content 313 shown in FIG. 6 is encrypted content stored in the information recording medium, and this encrypted content is temporarily stored in the track buffer 352 on the host side. This is the track buffer storage data 401 shown in FIG.

ホスト側の復号処理によって、トラックバッファ格納データ401としての暗号化コンテンツの復号が実行されて、復号結果データが平文TSバッファ353に格納される。図8(2)に示す復号結果データ402である。   By decryption processing on the host side, decryption of the encrypted content as the track buffer storage data 401 is executed, and decryption result data is stored in the plaintext TS buffer 353. This is the decoding result data 402 shown in FIG.

復号結果データ402には、正常なコンテンツ構成データではない、ブロークンデータ403が含まれる。ホストのデータ変換処理部は、このブロークンデータ403を、図6に示す情報記録媒体310に記録された変換テーブル314から取得される正しいコンテンツ構成データとしての変換データ404に置き換える処理を実行する。この置き換え処理は、例えば平文TSバッファ353に書き込み済みのデータに対する一部データの再書き込み(上書き)処理として実行される。   The decryption result data 402 includes broken data 403 that is not normal content configuration data. The host data conversion processing unit executes a process of replacing the broken data 403 with converted data 404 as correct content configuration data acquired from the conversion table 314 recorded in the information recording medium 310 shown in FIG. This replacement process is executed, for example, as a rewrite (overwrite) process of a part of the data already written in the plaintext TS buffer 353.

さらに、ホストの実行するデータ変換処理は、ブロークンデータを正常なコンテンツデータである変換データに置き換える処理のみならず、図8に示すように、識別マークを含む変換データ405によって、復号結果データ402の一部構成データを置き換える処理を実行する。   Further, the data conversion process executed by the host is not only the process of replacing the broken data with the conversion data that is normal content data, but also the conversion data 405 including the identification mark as shown in FIG. A process of replacing some configuration data is executed.

識別マークとは、コンテンツ再生装置またはコンテンツ再生アプリケーションを識別可能とした識別情報の構成ビットを解析可能としたデータである。具体的には例えば、ホストアプリケーションを実行するプレーヤとしての情報処理装置の識別情報(プレーヤID)の構成データまたは、プレーヤIDに基づいて生成される識別マークである。識別マークを含む変換データは、コンテンツの再生に影響を与えないレベルで、正しいコンテンツデータのビット値をわずかに変更したデータである。   The identification mark is data that makes it possible to analyze the constituent bits of the identification information that makes it possible to identify the content playback apparatus or content playback application. Specifically, for example, configuration information of identification information (player ID) of an information processing apparatus as a player executing a host application, or an identification mark generated based on the player ID. The conversion data including the identification mark is data in which the bit value of the correct content data is slightly changed at a level that does not affect the reproduction of the content.

識別マークを含む変換データ405は、コンテンツ中に多数設定され、これら複数の識別マークを含む変換データ405を集積して解析することで、例えばプレーヤIDが判別される。識別マークを含む変換データ405は、コンテンツとして通常再生可能なレベルで正常コンテンツデータの構成ビットを変更したデータであり、MPEGビットストリーム解析によりビット(識別マーク構成ビット)判別が可能なデータである。   A large number of pieces of conversion data 405 including identification marks are set in the content, and, for example, the player ID is determined by collecting and analyzing the conversion data 405 including the plurality of identification marks. The conversion data 405 including the identification mark is data in which the constituent bits of the normal content data are changed at a level that can be normally reproduced as the content, and the bit (identification mark constituent bits) can be determined by MPEG bit stream analysis.

情報記録媒体に格納される変換テーブルには、図8に示す変換データ404、識別マークを含む変換データ405が多数登録されており、さらに、これらの書き込み位置情報についても登録されている。この変換テーブル格納情報に基づくデータ変換処理を実行することで、平文TSバッファ353に格納されたデータは、図8(3)に示す変換処理済みデータ406に置き換えられることになる。   In the conversion table stored in the information recording medium, a large number of conversion data 404 and conversion data 405 including identification marks shown in FIG. 8 are registered, and the writing position information is also registered. By executing the data conversion process based on the conversion table storage information, the data stored in the plaintext TS buffer 353 is replaced with the converted data 406 shown in FIG. 8 (3).

図6に戻り、点線ブロック371内の処理、すなわちホスト側のデータ変換処理について説明する。データ変換処理は、例えば、ホスト内にバーチャルマシンとして設定されるセキュアVM356によって実行される。バーチャルマシン(VM)は中間言語を直接解釈して実行する仮想コンピュータであり、プラットホームに依存しない中間言語での命令コード情報を解釈して実行する。   Returning to FIG. 6, processing in the dotted line block 371, that is, data conversion processing on the host side will be described. The data conversion process is executed by, for example, the secure VM 356 set as a virtual machine in the host. A virtual machine (VM) is a virtual computer that directly interprets and executes an intermediate language, and interprets and executes instruction code information in an intermediate language that does not depend on the platform.

セキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して処理を実行する。セキュアVM356は、イベントハンドラ354による処理制御がなされ、また、ホストアプリケーションを実行しているプレーヤ(情報処理装置)のID情報などをプレーヤ情報355として入力して、情報記録媒体310から取得したデータ変換処理プログラム315を実行する。イベントハンドラ354は、処理監視を実行する。セキュアVM356によって実行される処理が正しく行なわれているか否かのエミュレータチェックや、その他のホストアプリケーションや、ホストアプリケーション実行機器としてのプレーヤ(情報処理装置)の処理、状態を監視し、処理エラー、不正処理などが検出された場合には、セキュアVM356によるデータ変換処理を中止させる。   The secure VM 356 reads the data conversion processing program 315 including the instruction code information from the information recording medium 310 and executes the processing. The secure VM 356 is controlled by the event handler 354 and converts the data obtained from the information recording medium 310 by inputting the ID information of the player (information processing apparatus) executing the host application as the player information 355. The processing program 315 is executed. The event handler 354 executes process monitoring. Emulator check to determine whether the process executed by the secure VM 356 is correctly performed, monitor the process and status of other host applications and the player (information processing apparatus) as the host application execution device, and process errors and fraud If processing or the like is detected, the data conversion processing by the secure VM 356 is stopped.

セキュアVM356は、情報記録媒体310から読み出した変換テーブルを適用して、平文TSバッファ353に格納されたデータの変換処理を実行する。すなわち図6に示すステップS105のデータ変換処理であり、図8に示す復号結果データ402に対して、ブロークンデータ403を正当なコンテンツ構成データである変換データ404に置き換え、さらに、識別マークを含む変換データ405をコンテンツの一部データと入れ替えるデータ上書き処理を実行して、平文TSバッファ353の格納データを変換処理済みデータ406に変更する。   The secure VM 356 applies the conversion table read from the information recording medium 310 and executes the conversion process of the data stored in the plaintext TS buffer 353. That is, in the data conversion process in step S105 shown in FIG. 6, the broken data 403 is replaced with the conversion data 404 which is valid content configuration data for the decryption result data 402 shown in FIG. A data overwriting process for replacing the data 405 with the partial data of the content is executed to change the data stored in the plaintext TS buffer 353 to the converted data 406.

その後、変換済みのTS(トランスポートストリーム)は、ネットワークなどを介して外部出力され、外部の再生機器において再生される。あるいは、ステップS106において、デマルチプレクサによる処理によって、トランスポートストリーム(TS)からエレメンタリストリーム(ES)への変換が実行され、さらに、デコード処理(ステッブS107)が行なわれた後、ディスプレイスピーカを介して再生される。   Thereafter, the converted TS (transport stream) is output to the outside via a network or the like and is played back on an external playback device. Alternatively, in step S106, conversion from the transport stream (TS) to the elementary stream (ES) is performed by processing by the demultiplexer, and further, decoding processing (step S107) is performed, and then via the display speaker. Played.

情報記録媒体に記録されるデータ変換テーブルのデータ構成について、図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))
これらのデータを持つ。
The data structure of the data conversion table recorded on the information recording medium will be described with reference to FIG. The data conversion table recorded on the information recording medium has a data configuration shown in FIG. 9, for example. That is,
Number of Fix-Up Entry: Number of converted data entries (Number of Fix-Up Entry)
Fix-Up Entry Length: Number of bytes of conversion data entry (Byte Length of one Fix-Up Entry () = (N + 6))
SPN (Source Packet Number): Absolute Transformed Packet Number from the beginning of AV Stream File
Byte Offset: Byte offset indicating the start position of writing the converted data in the packet specified by SPN (Start byte position of transformed data in the packet)
player_id_bit_position: Indicate bit position of Player ID for forensic
Fix-Up Data: Value to be overwritten (N byte is transformed in one TS Packet)
Have these data.

1つのコンテンツ中には、多数のブロークンデータが散在して配置されており、このブロークンデータの位置に変換テーブルに記録された変換データを上書きする。また、プレーヤIDなどの識別マークを持つ変換データについても、1つのコンテンツデータ中に多数の書き込み位置が設定される。変換テーブルは、これらの
(a)変換データ
(b)識別マーク入り変換データ
の実体データとしての「変換上書きデータ」と、
これらのデータの書き込み位置の指定情報を記録したテーブルとして設定される。
In one content, a lot of broken data is scattered and the conversion data recorded in the conversion table is overwritten at the position of the broken data. In addition, for conversion data having an identification mark such as a player ID, a large number of writing positions are set in one content data. The conversion table includes (a) conversion data (b) “conversion overwrite data” as entity data of conversion data with an identification mark,
These are set as a table in which the designation information of the writing position of these data is recorded.

なお、どの程度の頻度で、変換データ(識別マーク入り変換データも含む)の置き換え領域を設定するか、また変換データのサイズについては、様々な設定が可能であるが、各設定により変換テーブルサイズは異なるサイズとなる。例えばMPEGコンテンツを構成する1GOP(Group Of Pictures)あたり、2つの変換データまたは識別マーク入り変換データを設定する構成においては、変換データ(識別マーク入り変換データも含む)が8バイトである場合、約400KB程度のテーブル、16バイトである場合、約600KB程度のテーブルサイズとなる。   It should be noted that how often the replacement area for conversion data (including conversion data including identification marks) is set and the size of the conversion data can be set in various ways. Are different sizes. For example, in a configuration in which two conversion data or conversion data with an identification mark is set per 1 GOP (Group Of Pictures) constituting MPEG content, if the conversion data (including conversion data with an identification mark) is 8 bytes, about In the case of a table of about 400 KB and 16 bytes, the table size is about 600 KB.

また、MPEGコンテンツを構成する1GOP(Group Of Pictures)あたり、5つの変換データまたは識別マーク入り変換データを設定する構成においては、変換データ(識別マーク入り変換データも含む)が8バイトである場合、約1MB程度のテーブル、16バイトである場合、約1,5MB程度のテーブルサイズとなる。   Further, in a configuration in which five conversion data or conversion data with an identification mark is set per 1 GOP (Group Of Pictures) constituting the MPEG content, when the conversion data (including conversion data with an identification mark) is 8 bytes, When the table is about 1 MB and 16 bytes, the table size is about 1.5 MB.

ホスト350のセキュアVMは、情報記録媒体310に記録された変換テーブル314に従って、
(a)変換データ
(b)識別マーク入り変換データ
を変換テーブルの指定位置に書き込む処理を実行する。データ書き込みは、平文TSバッファ253に格納されたデータに対する変換データ、または識別マーク入り変換データの上書き処理として実行され、この処理の結果、平文TSバッファ253に格納されたデータは、先に説明した図8(3)のデータに置き換えられることになる。
The secure VM of the host 350 follows the conversion table 314 recorded on the information recording medium 310.
(A) Conversion data (b) Processing for writing identification mark-containing conversion data at a specified position in the conversion table. The data writing is executed as the overwriting process of the conversion data for the data stored in the plaintext TS buffer 253 or the conversion data with the identification mark. As a result of this processing, the data stored in the plaintext TS buffer 253 is described above. The data shown in FIG. 8 (3) is replaced.

ホストを実装しているプレーヤ(PCなどの情報処理装置)からのコンテンツの外部出力、あるいはコンテンツ再生は、この図8(3)に示す変換処理済みデータに基づく処理として実行される。   External output of content or content playback from a player (information processing apparatus such as a PC) equipped with a host is executed as processing based on the converted data shown in FIG.

変換データは正しいコンテンツ構成データであり、また識別マーク入り変換データも、正しいコンテンツの再生に適用されるデータであるので、これらのデータに基づくデコード再生によって正しいコンテンツ再生が可能となる。また、このコンテンツが、例えば不正にコピーされ、コピーデータが多数外部流出した場合には、識別マーク入り変換データを解析することで、プレーヤIDを取得することが可能であり、不正コンテンツデータの流出源を特定することが可能となる。   Since the conversion data is correct content configuration data, and the conversion data with an identification mark is also data that is applied to playback of the correct content, correct content playback is possible by decoding playback based on these data. In addition, for example, when this content is illegally copied and a large amount of copy data is leaked to the outside, it is possible to obtain the player ID by analyzing the conversion data with the identification mark, and the illegal content data is leaked. The source can be specified.

(3.2)コンテンツ再生処理例2
次に、コンテンツ再生処理例2について、図10を参照して説明する。図10は、左から暗号化コンテンツの格納された情報記録媒体310、情報記録媒体310をセットし、データの読み取りを実行するドライブ330、ドライブとデータ通信可能に接続され、情報記録媒体310に格納されたコンテンツをドライブ330を介して取得して再生処理を実行する再生アプリケーションを実行するホスト350を示している。ホスト350は、例えばPC等の情報処理装置において実行される。
(3.2) Content reproduction processing example 2
Next, content reproduction processing example 2 will be described with reference to FIG. FIG. 10 shows, from the left, an information recording medium 310 in which encrypted content is stored, an information recording medium 310 that is set, and a drive 330 that executes data reading. It shows a host 350 that executes a playback application that acquires the recorded content via the drive 330 and executes playback processing. The host 350 is executed in an information processing apparatus such as a PC.

図10には、情報記録媒体310に記録されているMKB(Media Key Block)と、タイトル鍵ファイルは省略してある。ホスト350は、MKBの処理に適用するデバイス鍵を保持し、情報記録媒体310に記録されているMKB(Media Key Block)と、タイトル鍵ファイルを適用して、図6を参照して説明したと全く同様の処理を実行してタイトル鍵(Kt)を算出する。これらの処理についても、図10においては省略してある。情報記録媒体には、さらに、暗号化コンテンツ313、変換テーブル314、データ変換処理プログラム315が格納されている。   In FIG. 10, an MKB (Media Key Block) recorded on the information recording medium 310 and a title key file are omitted. The host 350 holds a device key to be applied to the MKB processing, applies an MKB (Media Key Block) recorded on the information recording medium 310 and a title key file, and has been described with reference to FIG. The title key (Kt) is calculated by executing exactly the same processing. These processes are also omitted in FIG. The information recording medium further stores an encrypted content 313, a conversion table 314, and a data conversion processing program 315.

図10に示すコンテンツ再生処理例2では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、ブロック382の処理を、コンテンツ再生あるいは出力前の一括処理として実行する点が特徴である。すなわち、セキュアVM356は、コンテンツの再生やコンテンツの外部出力の開始前などに、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出し、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310から読み出した変換テーブル314の復号処理などを実行する。   The content reproduction processing example 2 shown in FIG. 10 is characterized in that the processing of the block 381 indicated by the dotted frame is executed as real-time processing, and the processing of the block 382 is executed as batch processing before content reproduction or output. That is, the secure VM 356 reads the data conversion processing program 315 including the instruction code information from the information recording medium 310 before starting the reproduction of the content or the external output of the content, and controls the event handler 354 and inputs the player information 355. Based on this, the decoding process of the conversion table 314 read from the information recording medium 310 is executed.

情報記録媒体310に記録された変換テーブル314は、例えばAES暗号や、排他論理和演算などの演算によって難読化処理が施されており、セキュアVM356は、データ変換処理プログラム315に従って、復号処理、あるいは所定の演算処理を実行して、平文データとしての変換テーブルを取得する。ここまでの処理は、コンテンツの再生やコンテンツの外部出力の開始前などに一括して実行する。   The conversion table 314 recorded in the information recording medium 310 is obfuscated by an operation such as AES encryption or exclusive OR operation, and the secure VM 356 performs decryption processing or data conversion according to the data conversion processing program 315, or A predetermined calculation process is executed to obtain a conversion table as plain text data. The processing up to this point is executed in a lump before starting the reproduction of the content or the external output of the content.

その後の処理は、コンテンツ再生やコンテンツ外部出力処理に並行して実行するリアルタイム処理として実行する。すなわち、ステップS201におけるコンテンツ復号処理、ステップS202におけるデータ変換処理、すなわち、情報記録媒体310に記録された変換テーブル314に登録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブル314に記録された指定位置に書き込むデータ変換処理、さらに、変換済みのTS(トランスポートストリーム)の外部出力処理、あるいは、ステップS203におけるデマルチプレクサ処理、すなわちトランスポートストリーム(TS)からエレメンタリストリーム(ES)への変換処理、ステップS204におけるデコード処理、これらの処理は、コンテンツ再生または外部出力に並行したリアルタイム処理として実行する。
Subsequent processing is executed as real-time processing executed in parallel with content reproduction and content external output processing. That is, the content decryption process in step S201, the data conversion process in step S202, that is, the conversion data registered in the conversion table 314 recorded in the information recording medium 310, that is,
(A) Conversion data (b) Data conversion processing for writing conversion data with an identification mark at a designated position recorded in the conversion table 314, and further, external output processing of converted TS (transport stream), or step S203 The demultiplexer processing in FIG. 1, that is, the conversion processing from the transport stream (TS) to the elementary stream (ES), the decoding processing in step S204, and these processing are executed as real-time processing in parallel with content reproduction or external output.

このような処理シーケンスとすることで、セキュアVM356による変換テーブル314の処理に時間がかかる場合であっても、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。   By adopting such a processing sequence, real-time processing that does not affect content reproduction and external output processing is realized even when the processing of the conversion table 314 by the secure VM 356 takes time.

(3.3)コンテンツ再生処理例3
次に、コンテンツ再生処理例3について、図11を参照して説明する。図11も図10と同様、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。図11も図10と同様、MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。
(3.3) Content reproduction processing example 3
Next, content reproduction processing example 3 will be described with reference to FIG. FIG. 11 also shows the information recording medium 310, the drive 330, and the host 350 in which encrypted content is stored from the left as in FIG. In FIG. 11, as in FIG. 10, the MKB (Media Key Block), the title key file, and the processing to which these are applied are the same as those in the processing example 1 described above with reference to FIG.

図11に示すコンテンツ再生処理例3では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、ブロック383の処理を、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に実行する間欠的低頻度処理として実行する点が特徴である。セキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310から読み出した変換テーブル314の復号処理などを実行する。   In the content reproduction processing example 3 shown in FIG. 11, the processing of the block 381 indicated by the dotted frame is executed as real-time processing, and the processing of the block 383 is intermittently executed before and during the content reproduction or output processing. It is characterized by being executed as a low-frequency process. The secure VM 356 reads the data conversion processing program 315 including the instruction code information from the information recording medium 310 and intermittently controls the event handler 354 and inputs the player information 355 before and during the content reproduction or output processing. Based on this, the decoding process of the conversion table 314 read from the information recording medium 310 is executed.

情報記録媒体310に記録された変換テーブル314は、変換テーブル314の部分構成データとしての変換テーブルブロック(FUT(Fix-Up Table)ブロック)単位で例えばAES暗号や、排他論理和演算などの演算によって難読化処理がなされている。セキュアVM356は、データ変換処理プログラム315に従って、各変換テーブルブロック(FUTブロック)単位で復号処理、あるいは所定の演算処理を実行して、平文データとしてのブロック単位の変換テーブルを取得する。これらの処理を、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に実行する。   The conversion table 314 recorded in the information recording medium 310 is converted into a partial conversion table block (FUT (Fix-Up Table) block) as partial configuration data of the conversion table 314, for example, by an operation such as AES encryption or exclusive OR operation. Obfuscation has been done. In accordance with the data conversion processing program 315, the secure VM 356 executes a decryption process or a predetermined calculation process in units of each conversion table block (FUT block), and acquires a block unit conversion table as plain text data. These processes are executed intermittently before and during the content reproduction or output process.

変換テーブルブロック(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ブロック)
これらのデータを持つ。
The data structure of the conversion table that has been obfuscated in conversion table block (FUT block) units will be described with reference to FIGS. The data conversion table recorded on the information recording medium has a data configuration shown in FIG. 12, for example. That is,
Number of FUT blocks: Number of conversion table blocks
Length of FUT block: Number of bytes in one conversion table block
Number of Fix-Up Entry in FUT block: Number of conversion data entries in one FUT block
Length of one Fix-Up Entry: Number of bytes in one conversion data entry
First SPN for FUT block: Packet number as the data write position of the first entry of each conversion table block
FUT: Conversion table block (FUT block) as a partial conversion table that is individually encrypted or arithmetically processed and obfuscated
Have these data.

各部分変換テーブルとしての変換テーブルブロック(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))
これらのデータを持つ。
An example of the data structure of a conversion table block (FUT block) as each partial conversion table is shown in FIG. Each table block has the following data. That is,
SPN (Source Packet Number): Absolute Transformed Packet Number from the beginning of AV Stream File
Byte Offset: Byte offset indicating the start position of writing the converted data in the packet specified by SPN (Start byte position of transformed data in the packet)
FM_flag: flag that sets whether or not to perform conversion processing by applying conversion data with an identification mark, for example, 0: conversion is performed in all players, 1: the bit value of the corresponding bit position of the player ID is “1” For example, the conversion is performed only when it is.
player_id_bit_position: Indicate bit position of Player ID for forensic
Fix-Up Data: Value to be overwritten (N byte is transformed in one TS Packet)
Have these data.

図13に示す各部分変換テーブルとしてのテーブルブロック(FUTブロック)は、個別に暗号化または演算処理が実行化されたデータとして設定される。図11に示すセキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310から読み出した変換テーブル314の復号処理あるいは演算処理を部分変換テーブルとしてのテーブルブロック(FUTブロック)単位で実行して、平文データとしての部分変換テーブルを取得する。これらの処理を、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に実行する。   The table block (FUT block) as each partial conversion table shown in FIG. 13 is set as data that has been individually encrypted or arithmetically processed. The secure VM 356 shown in FIG. 11 reads out the data conversion processing program 315 including the instruction code information from the information recording medium 310, intermittently before the content reproduction or output processing and during the processing execution, the control of the event handler 354, the player information Based on the input of 355, the decoding process or the calculation process of the conversion table 314 read from the information recording medium 310 is executed in units of table blocks (FUT blocks) as a partial conversion table to obtain a partial conversion table as plain text data. To do. These processes are executed intermittently before and during the content reproduction or output process.

その後の処理は、コンテンツ再生やコンテンツ外部出力処理に並行して実行するリアルタイム処理として実行する。すなわち、ステップS201におけるコンテンツ復号処理、ステップS202におけるデータ変換処理、すなわち、情報記録媒体310に記録された変換テーブル314に登録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブル314に記録された指定位置に書き込むデータ変換処理、さらに、変換済みのTS(トランスポートストリーム)の外部出力処理、あるいは、ステップS203におけるデマルチプレクサ処理、すなわちトランスポートストリーム(TS)からエレメンタリストリーム(ES)への変換処理、ステップS204におけるデコード処理、これらの処理は、コンテンツ再生または外部出力に並行したリアルタイム処理として実行する。
Subsequent processing is executed as real-time processing executed in parallel with content reproduction and content external output processing. That is, the content decryption process in step S201, the data conversion process in step S202, that is, the conversion data registered in the conversion table 314 recorded in the information recording medium 310, that is,
(A) Conversion data (b) Data conversion processing for writing conversion data with an identification mark at a designated position recorded in the conversion table 314, and further, external output processing of converted TS (transport stream), or step S203 The demultiplexer processing in FIG. 1, that is, the conversion processing from the transport stream (TS) to the elementary stream (ES), the decoding processing in step S204, and these processing are executed as real-time processing in parallel with content reproduction or external output.

このような処理シーケンスとすることで、図10を参照して説明した処理例2と同様、セキュアVM356による変換テーブル314の処理に時間がかかる場合であっても、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。また、セキュアVMは、コンテンツ再生や外部出力に必要な変換データをまとめて生成することがなく、一定のコンテンツ部分データに対応する変換データを逐次生成する構成であるので、例えば、コンテンツ再生中に不正な処理が検出された場合、イベントハンドラ354の不正処理検出情報に基づきセキュアVM356の処理を中止することで、変換データの生成が中止され、不正なコンテンツ再生や外部出力を途中で終了させることが可能となる。   By adopting such a processing sequence, similarly to the processing example 2 described with reference to FIG. 10, even when the processing of the conversion table 314 by the secure VM 356 takes a long time, the content playback and external output processing can be performed. Real-time processing without impact is realized. In addition, the secure VM does not collectively generate conversion data necessary for content reproduction or external output, and is configured to sequentially generate conversion data corresponding to certain content partial data. If an unauthorized process is detected, the generation of the conversion data is stopped by stopping the process of the secure VM 356 based on the unauthorized process detection information of the event handler 354, and the unauthorized content reproduction or external output is terminated halfway. Is possible.

(3.4)コンテンツ再生処理例4
次に、コンテンツ再生処理例4について、図14を参照して説明する。図14も図10、図11と同様、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。情報記録媒体には、さらに、暗号化コンテンツ313、変換テーブル314、データ変換処理プログラム315が格納されている。
(3.4) Content reproduction processing example 4
Next, content reproduction processing example 4 will be described with reference to FIG. FIG. 14 also shows the information recording medium 310, the drive 330, and the host 350 storing the encrypted content from the left as in FIGS. The MKB (Media Key Block), the title key file, and the processing to which these are applied are the same as those in the processing example 1 described above with reference to FIG. The information recording medium further stores an encrypted content 313, a conversion table 314, and a data conversion processing program 315.

図14に示すコンテンツ再生処理例4では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、点線枠で示すブロック382の処理は、図10を参照して説明したように、コンテンツ再生あるいは外部出力処理前の一括処理として実行する。セキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310から読み出した変換テーブル314の復号処理を実行する。   In the content reproduction processing example 4 shown in FIG. 14, the processing of the block 381 indicated by the dotted line frame is executed as real time processing, and the processing of the block 382 indicated by the dotted line frame is the content reproduction or the processing as described with reference to FIG. Execute as batch processing before external output processing. The secure VM 356 reads the data conversion processing program 315 including the instruction code information from the information recording medium 310, and decodes the conversion table 314 read from the information recording medium 310 based on the control of the event handler 354 and the input of the player information 355. Execute the process.

セキュアVM356は、データ変換処理プログラム315に従って、復号処理、あるいは所定の演算処理を実行して、平文データとしての変換テーブルを取得する。この処理の結果、取得した平文変換テーブルをテーブル記憶部362に格納する。   The secure VM 356 executes decryption processing or predetermined calculation processing according to the data conversion processing program 315, and acquires a conversion table as plain text data. As a result of this processing, the acquired plaintext conversion table is stored in the table storage unit 362.

ステップS202におけるデータ変換処理は、コンテンツ再生または外部出力に並行してリアルタイムイベントハンドラ361の制御によって実行される。リアルタイムイベントハンドラ361の制御により、テーブル記憶部362に格納された平文データとしての変換テーブルに登録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブルに記録された指定位置に書き込むデータ変換処理が実行される。
The data conversion process in step S202 is executed under the control of the real-time event handler 361 in parallel with content reproduction or external output. Under the control of the real-time event handler 361, conversion data registered in the conversion table as plain text data stored in the table storage unit 362, that is,
(A) Conversion data (b) Data conversion processing for writing the identification mark-containing conversion data into the designated position recorded in the conversion table is executed.

本処理例における処理シーケンスは、先に図10を参照して説明した処理シーケンスと同様であり、ステップS201におけるコンテンツ復号処理、ステップS202におけるデータ変換処理、ステップS203におけるデマルチプレクサ処理、ステップS204におけるデコード処理、これらの処理順に従った処理が、コンテンツ再生または外部出力に並行したリアルタイム処理として実行される。   The processing sequence in this processing example is the same as the processing sequence described above with reference to FIG. 10, and the content decoding processing in step S201, the data conversion processing in step S202, the demultiplexer processing in step S203, and the decoding in step S204. The processing according to the processing order is executed as real-time processing in parallel with content reproduction or external output.

本処理例における処理シーケンスとすることで、図10を参照して説明した処理例2と同様、セキュアVM356による変換テーブル314の処理に時間がかかる場合であっても、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。   By using the processing sequence in this processing example, as in the processing example 2 described with reference to FIG. 10, even when the processing of the conversion table 314 by the secure VM 356 takes time, the content playback and external output processing Real-time processing that does not affect the process is realized.

(3.5)コンテンツ再生処理例5
次に、コンテンツ再生処理例5について、図15を参照して説明する。図15には、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。
(3.5) Content reproduction processing example 5
Next, content reproduction processing example 5 will be described with reference to FIG. FIG. 15 shows the information recording medium 310, the drive 330, and the host 350 in which encrypted content is stored from the left. The MKB (Media Key Block), the title key file, and the processing to which these are applied are the same as those in the processing example 1 described above with reference to FIG.

図15に示すコンテンツ再生処理例5では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、点線枠で示すブロック383の処理は、図11を参照して説明したように、コンテンツ再生あるいは外部出力処理前および処理中に間欠的に行なう間欠的低頻度処理として実行する。セキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310から読み出した変換テーブル314の復号処理を部分的に間欠的に実行する。   In the content reproduction processing example 5 shown in FIG. 15, the processing of the block 381 indicated by the dotted frame is executed as real-time processing, and the processing of the block 383 indicated by the dotted frame is performed as shown in FIG. It is executed as an intermittent low frequency process performed intermittently before and during the external output process. The secure VM 356 reads the data conversion processing program 315 including the instruction code information from the information recording medium 310, and decodes the conversion table 314 read from the information recording medium 310 based on the control of the event handler 354 and the input of the player information 355. The process is partially intermittently executed.

変換テーブル314は、一旦ホスト350内のプリロードテーブル記憶部364に格納され、セキュアVM356は、プリロードテーブル記憶部364に格納されたテーブルデータを取得して、データ変換処理プログラム315に従って、復号処理、あるいは所定の演算処理を実行して、平文データとしての変換テーブルを部分的に、逐次生成する。   The conversion table 314 is temporarily stored in the preload table storage unit 364 in the host 350, and the secure VM 356 acquires the table data stored in the preload table storage unit 364, and performs decryption processing or A predetermined calculation process is executed to partially and sequentially generate a conversion table as plain text data.

セキュアVM356は、コンテンツデータの一部分に適用する変換データを含む変換テーブルの一部構成データのみを復号して一部データからなる平文変換テーブルを間欠的に生成する。この処理の結果、取得した平文部分変換テーブルを部分テーブル記憶部363に格納する。   The secure VM 356 intermittently generates a plaintext conversion table composed of partial data by decoding only partial configuration data of the conversion table including conversion data applied to a part of the content data. As a result of this processing, the acquired plaintext partial conversion table is stored in the partial table storage unit 363.

ステップS202におけるデータ変換処理は、コンテンツ再生または外部出力に並行してリアルタイムイベントハンドラ361の制御によって実行される。リアルタイムイベントハンドラ361の制御により、部分テーブル記憶部363に格納された平文データとしての部分変換テーブルに登録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブルに記録された指定位置に書き込むデータ変換処理がコンテンツ再生処理または外部出力処理に並行したリアルタイム処理として実行される。
The data conversion process in step S202 is executed under the control of the real-time event handler 361 in parallel with content reproduction or external output. Under the control of the real-time event handler 361, conversion data registered in the partial conversion table as plaintext data stored in the partial table storage unit 363, that is,
(A) Conversion data (b) Data conversion processing for writing identification mark-added conversion data at a designated position recorded in the conversion table is executed as real-time processing in parallel with content reproduction processing or external output processing.

本処理例における処理シーケンスは、先に図11を参照して説明した処理シーケンスと同様であり、ステップS201におけるコンテンツ復号処理、ステップS202におけるデータ変換処理、ステップS203におけるデマルチプレクサ処理、ステップS204におけるデコード処理、これらの処理順に従った処理が、コンテンツ再生または外部出力に並行したリアルタイム処理として実行される。   The processing sequence in this processing example is the same as the processing sequence described above with reference to FIG. 11, and the content decoding processing in step S201, the data conversion processing in step S202, the demultiplexer processing in step S203, and the decoding in step S204. The processing according to the processing order is executed as real-time processing in parallel with content reproduction or external output.

本処理例における処理シーケンスとすることで、図11を参照して説明した処理例3と同様、セキュアVM356による変換テーブル314の処理に時間がかかる場合であっても、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現され、また、セキュアVMは、コンテンツ再生や外部出力に必要な変換データをまとめて生成することがなく、一定のコンテンツ部分データに対応する変換データを逐次生成する構成であるので、例えば、コンテンツ再生中に不正な処理が検出された場合、不正処理検出情報に基づきセキュアVM356の処理を中止することで、変換データの生成が中止され、不正なコンテンツ再生や外部出力を途中で終了させることが可能となる。   By adopting the processing sequence in this processing example, even in the case where processing of the conversion table 314 by the secure VM 356 takes time as in the processing example 3 described with reference to FIG. Real-time processing that does not affect the content is realized, and the secure VM does not generate conversion data necessary for content reproduction and external output in a batch, and sequentially generates conversion data corresponding to certain content partial data. For example, when an unauthorized process is detected during content playback, the process of the secure VM 356 is stopped based on the unauthorized process detection information, so that the generation of conversion data is stopped and unauthorized content playback is performed. And external output can be terminated halfway.

(3.6)コンテンツ再生処理例6
次に、コンテンツ再生処理例6について、図16を参照して説明する。図16には、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。本処理例では、図16に示すように、情報記録媒体310には、変換テーブルを含む暗号化コンテンツ318と、データ変換処理プログラム315が格納されている。点線枠で示すブロック381の処理をリアルタイム処理として実行し、点線枠で示すブロック385の処理は、間欠的な処理として実行される。
(3.6) Content reproduction processing example 6
Next, content reproduction processing example 6 will be described with reference to FIG. FIG. 16 shows the information recording medium 310, the drive 330, and the host 350 in which encrypted content is stored from the left. The MKB (Media Key Block), the title key file, and the processing to which these are applied are the same as those in the processing example 1 described above with reference to FIG. In this processing example, as shown in FIG. 16, the information recording medium 310 stores encrypted content 318 including a conversion table and a data conversion processing program 315. The process of the block 381 indicated by the dotted line frame is executed as a real-time process, and the process of the block 385 indicated by the dotted line frame is executed as an intermittent process.

すなわち、本処理例では、暗号化コンテンツの構成データ中の特定パケットに分散されて変換テーブルが記録される。例えば図17に示すような設定で変換テーブルがコンテンツを含むトランスポートストリームパケット内に格納される。図17(a)にコンテンツデータの構成を示す。このコンテンツ構成は、復号されたトランスポートストリーム(TS)パケットからなるコンテンツデータを示している。トランスポートストリームは、所定バイト数のTS(トランスポートストリーム)パケットから構成されている。これらのTSパケットの一部の複数パケットに、変換テーブルが分割されて記録されることになる。例えば、図に示すTSパケット391,392・・・に変換テーブルが記録される。変換テーブルを格納するTSパケットとしては、例えばコンテンツ中に分散して設定されるPMT(プログラムマップテーブル)を含むTSパケットなどが利用される。   That is, in this processing example, the conversion table is recorded by being distributed to specific packets in the configuration data of the encrypted content. For example, the conversion table is stored in the transport stream packet including the content with the settings as shown in FIG. FIG. 17A shows the structure of content data. This content structure indicates content data including a decoded transport stream (TS) packet. The transport stream is composed of TS (transport stream) packets having a predetermined number of bytes. The conversion table is divided and recorded in a plurality of some of these TS packets. For example, the conversion table is recorded in TS packets 391, 392,. As the TS packet for storing the conversion table, for example, a TS packet including a PMT (program map table) set in a distributed manner in the content is used.

分割された変換テーブルのデータは、例えば先に、図13を参照して説明した変換テーブルブロック(FUTブロック)と同様の構成を持つ。変換テーブルには、復号コンテンツに対して置き換え処理を行なう変換データ(または識別マーク入り変換データ)とその変換データの記録位置が記録されている。   The divided conversion table data has, for example, the same configuration as the conversion table block (FUT block) described above with reference to FIG. In the conversion table, conversion data (or conversion data with an identification mark) for performing a replacement process on the decrypted content and a recording position of the conversion data are recorded.

各変換テーブルに記録された変換データは、例えば図17(b)に示すように、各変換テーブルを含むTSパケットの近傍位置に記録位置が設定される。例えば、図17(b)に示す例では、変換データの記録領域を持つパケット394,395は、変換テーブルを含むパケット391の近傍に設定される。このような設定とすることで、コンテンツの復号、再生をリアルタイムで実行する場合、変換データによるデータ置き換え処理を復号処理後の連続処理として実行することが可能であり、変換テーブルの記録されたTSパケットの検出、解析処理によって、変換データを取得し、テーブルに記録された位置に対して変換データを書き込む(上書き)処理を効率的に実行することができる。   For example, as shown in FIG. 17B, the recording position of the conversion data recorded in each conversion table is set in the vicinity of the TS packet including each conversion table. For example, in the example shown in FIG. 17B, packets 394 and 395 having a conversion data recording area are set in the vicinity of the packet 391 including the conversion table. With this setting, when content is decrypted and played back in real time, the data replacement process using the converted data can be executed as a continuous process after the decryption process, and the TS in which the conversion table is recorded. The conversion data can be acquired by the packet detection and analysis process, and the process of writing (overwriting) the conversion data to the position recorded in the table can be efficiently executed.

図16に示すコンテンツ再生処理例6では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、ブロック383の処理を、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に実行する間欠的低頻度処理として実行する。   In the content reproduction processing example 6 shown in FIG. 16, the processing of the block 381 indicated by the dotted frame is executed as real-time processing, and the processing of the block 383 is intermittently executed before and during the content reproduction or output processing. Run as a low-frequency process.

セキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310にコンテンツとともに記録された変換テーブルを平文変換テーブルにするために必要なパラメータ(P1,P2,P3・・・)を生成して出力する。この処理は間欠的に行なわれる。   The secure VM 356 reads the data conversion processing program 315 including the instruction code information from the information recording medium 310 and intermittently controls the event handler 354 and inputs the player information 355 before and during the content reproduction or output processing. Based on this, parameters (P1, P2, P3...) Necessary for converting the conversion table recorded together with the content on the information recording medium 310 into a plaintext conversion table are generated and output. This process is performed intermittently.

パラメータP1,P2,P3・・・は所定のコンテンツデータ単位に対応する分割された変換テーブル、例えばコンテンツに分散記録された分割された変換テーブル1,2,3・・・に適用する演算または暗号処理パラメータである。分割された変換テーブル1,2,3・・・の各々は、それぞれ異なるパラメータP1,P2,P3・・・を適用した演算あるいは暗号処理が施されて情報記録媒体に記録されている。   Parameters P1, P2, P3,... Are operations or ciphers applied to divided conversion tables corresponding to a predetermined content data unit, for example, divided conversion tables 1, 2, 3,. It is a processing parameter. Each of the divided conversion tables 1, 2, 3... Is subjected to computation or encryption processing using different parameters P 1, P 2, P 3.

例えば具体的には、分割された変換テーブル1,2,3・・・に適用する排他論理和(XOR)演算パラメータである。セキュアVM356は、データ変換処理プログラム315に従って、変換テーブル314を平文変換テーブルにするために必要なパラメータ(P1,P2,P3・・・)を間欠的に生成して出力する処理を実行する。   For example, specifically, an exclusive OR (XOR) operation parameter applied to the divided conversion tables 1, 2, 3,... The secure VM 356 executes processing for intermittently generating and outputting parameters (P1, P2, P3...) Necessary for making the conversion table 314 into a plaintext conversion table in accordance with the data conversion processing program 315.

リアルタイム処理ブロック381では、ステップS301において、変換テーブルを含む暗号化コンテンツ318の復号が実行され、ステップS302におけるデマルチプレクサの処理によって、各変換テーブルが分離され、リアルタイムイベントハンドラ361の制御によって、ステップS303におけるテーブル復元&データ変換処理が実行される。リアルタイムイベントハンドラ361の制御により、セキュアVM356から間欠的に出力されるパラメータ(P1,P2,P3)を適用して、変換テーブルの復号または演算を実行して平文変換テーブルを取得し、取得した部分変換テーブルに登録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブルに記録された指定位置に書き込むデータ変換処理をコンテンツ再生処理または外部出力処理に並行したリアルタイム処理として実行する。
In the real-time processing block 381, the encrypted content 318 including the conversion table is decrypted in step S301, each conversion table is separated by the processing of the demultiplexer in step S302, and step S303 is controlled by the real-time event handler 361. The table restoration & data conversion process is executed. Under the control of the real-time event handler 361, the parameters (P1, P2, P3) intermittently output from the secure VM 356 are applied, the conversion table is decrypted or calculated, the plaintext conversion table is acquired, and the acquired part Conversion data registered in the conversion table, that is,
(A) Conversion data (b) Data conversion processing for writing conversion data with an identification mark at a designated position recorded in the conversion table is executed as real-time processing in parallel with content reproduction processing or external output processing.

例えば、パラメータP1,P2,P3・・・は所定のコンテンツ部分データ単位に対応する変換データとの排他論理和(XOR)演算パラメータである場合、ステップS303におけるテーブル復元処理としては、
[変換テーブル1](XOR)[P1]、
[変換テーブル2](XOR)[P2]、
[変換テーブル3](XOR)[P3]、
: :
これらの排他論理和演算処理を実行して、各平文変換テーブルデータを取得する。なお、上記式において、[A](XOR)[B]は、AとBの排他論理和演算を意味するものとする。
For example, when the parameters P1, P2, P3,... Are exclusive OR (XOR) operation parameters with conversion data corresponding to a predetermined content part data unit, the table restoration processing in step S303 is as follows:
[Conversion table 1] (XOR) [P1],
[Conversion table 2] (XOR) [P2],
[Conversion table 3] (XOR) [P3],
::
These exclusive OR operation processes are executed to acquire each plaintext conversion table data. In the above formula, [A] (XOR) [B] means an exclusive OR operation of A and B.

このように、情報記録媒体に記録されたコンテンツ318に含まれる変換テーブルは、各コンテンツ部分に対応する変換データおよび変換データ位置情報を記録した変換テーブルに分割されており、それぞれが、固有のパラメータP1,P2,P3・・・と排他論理和演算されて格納されている。このパラメータは、セキュアVM356によって逐次、取得され出力される。   As described above, the conversion table included in the content 318 recorded on the information recording medium is divided into the conversion table in which the conversion data corresponding to each content part and the conversion data position information are recorded. P1, P2, P3... Are stored by being subjected to an exclusive OR operation. This parameter is sequentially acquired and output by the secure VM 356.

ステップS303のテーブル復元&データ変換処理以後の処理は、先に図11他を参照して説明した処理と同様であり、コンテンツ再生やコンテンツ外部出力処理に並行して実行するリアルタイム処理として行なわれる。すなわち、ステップS304におけるデマルチプレクサ処理、ステップS305におけるデコード処理、これらの処理が、コンテンツ再生または外部出力に並行したリアルタイム処理として実行される。   The processing after the table restoration & data conversion processing in step S303 is the same as the processing described above with reference to FIG. 11 and others, and is performed as real-time processing executed in parallel with content reproduction and content external output processing. That is, the demultiplexer process in step S304, the decode process in step S305, and these processes are executed as real-time processes in parallel with content reproduction or external output.

本処理例では、コンテンツ全体に対応する変換テーブルの構成データを分割して、各分割テーブルとされた変換テーブルごとに異なるパラメータを対応付け、これらのパラメータをセキュアVM356が、間欠的に出力する構成としたので、例えばパラメータの一部が漏洩しても、コンテンツの全体を復元することは不可能であり、より強固なコンテンツ利用管理が実現される。また、本処理例においても、図10他を参照して説明した処理例と同様、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。また、例えば、コンテンツ再生中に不正な処理が検出された場合、イベントハンドラ354の不正処理検出情報に基づきセキュアVM356の処理を中止することで、変換データの生成が中止され、不正なコンテンツ再生や外部出力を途中で終了させることが可能となる。   In this processing example, the configuration data of the conversion table corresponding to the entire content is divided, different parameters are associated with each conversion table, and the secure VM 356 intermittently outputs these parameters. Therefore, for example, even if a part of parameters is leaked, it is impossible to restore the entire content, and more robust content usage management is realized. Also in this processing example, as in the processing example described with reference to FIG. 10 and others, real-time processing that does not affect the content reproduction and external output processing is realized. Also, for example, when an unauthorized process is detected during content playback, the generation of conversion data is stopped by canceling the processing of the secure VM 356 based on the unauthorized process detection information of the event handler 354, and unauthorized content playback or External output can be terminated halfway.

(3.7)コンテンツ再生処理例7
次に、コンテンツ再生処理例7について、図18を参照して説明する。図18には、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。本処理例では、先に図16を参照して説明したコンテンツ再生処理例6と同様、図18に示すように、情報記録媒体310には、変換テーブルを含む暗号化コンテンツ318と、データ変換処理プログラム315が格納されている。点線枠で示すブロック381の処理をリアルタイム処理として実行し、点線枠で示すブロック383の処理は、間欠的な処理として実行される。
(3.7) Content Playback Processing Example 7
Next, content reproduction processing example 7 will be described with reference to FIG. FIG. 18 shows the information recording medium 310, the drive 330, and the host 350 in which encrypted content is stored from the left. The MKB (Media Key Block), the title key file, and the processing to which these are applied are the same as those in the processing example 1 described above with reference to FIG. In this processing example, as in the content reproduction processing example 6 described above with reference to FIG. 16, as shown in FIG. 18, the information recording medium 310 includes an encrypted content 318 including a conversion table, and data conversion processing. A program 315 is stored. The process of the block 381 indicated by the dotted line frame is executed as a real time process, and the process of the block 383 indicated by the dotted line frame is executed as an intermittent process.

すなわち、本処理例も、先に図16を参照して説明したコンテンツ再生処理例6と同様、暗号化コンテンツの構成データ中の特定パケットに分散されて変換テーブルが記録される。例えば図17に示すような設定で変換テーブルがコンテンツを含むトランスポートストリームパケット内に格納される。分割された変換テーブルのデータ構成について、図19を参照して説明する。   That is, in the present processing example as well as the content reproduction processing example 6 described above with reference to FIG. 16, the conversion table is recorded by being distributed in specific packets in the configuration data of the encrypted content. For example, the conversion table is stored in the transport stream packet including the content with the settings as shown in FIG. The data structure of the divided conversion table will be described with reference to FIG.

図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変換データ(識別マーク入り変換データも含む)
これらのデータによって構成される。
The conversion table shown in FIG. 19 has a data structure of a divided conversion table, and has a data entity and recording position information for only conversion data (including conversion data with an identification mark) for a specific content partial area. The data of the conversion table shown in FIG. 19 includes the following data.
SP_No: Secret parameter (SP) identifier (ID) [applied to XOR operation]
type_indicator: Type identifier [00: No conversion, 01b: Processing by conversion data, 10b, 11b: Processing by conversion data with identification mark]
FM_ID_bit_position: identification bit position of player ID corresponding to conversion data with identification mark
relative_SPN: Conversion data application packet position (number of packets from the programmable map table (PMT) storage packet)
byte_position: Conversion data recording position in the packet
overwrite_value: Conversion data (including conversion data with identification mark)
relative_SPN_2: Second conversion data application packet position (number of packets from the PMT packet)
byte_position_2: Conversion data recording position in the packet (corresponding to the second conversion data)
overwrite_value_2: Second conversion data (including conversion data with identification mark)
It consists of these data.

図19に示す変換テーブルは、先に説明した処理例6と同様、図20(a)に示すように、暗号化コンテンツの構成データ中の特定パケットに分散されて変換テーブルが記録される。例えば図20(a)に示すように、変換テーブルがコンテンツを含むトランスポートストリームパケット内に格納される。図20(a)は、復号されたトランスポートストリーム(TS)パケットからなるコンテンツデータを示している。トランスポートストリームは、所定バイト数のTS(トランスポートストリーム)パケットから構成されている。これらのTSパケットの一部の複数パケットに、変換テーブルが分割されて記録されることになる。例えば、図に示すTSパケット501,502・・・に変換テーブルが記録される。変換テーブルを格納するTSパケットとしては、例えばコンテンツ中に分散して設定されるPMT(プログラムマップテーブル)を含むTSパケットなどが利用される。   The conversion table shown in FIG. 19 is distributed and recorded in specific packets in the configuration data of the encrypted content, as shown in FIG. 20A, as in the processing example 6 described above. For example, as shown in FIG. 20A, the conversion table is stored in a transport stream packet including content. FIG. 20A shows content data composed of a decoded transport stream (TS) packet. The transport stream is composed of TS (transport stream) packets having a predetermined number of bytes. The conversion table is divided and recorded in a plurality of some of these TS packets. For example, the conversion table is recorded in the TS packets 501, 502,. As the TS packet for storing the conversion table, for example, a TS packet including a PMT (program map table) set in a distributed manner in the content is used.

分割された変換テーブルのデータには、図19を参照して説明したように、復号コンテンツに対して置き換え処理を行なう変換データ(または識別マーク入り変換データ)とその変換データの記録位置が記録されている。   In the divided conversion table data, as described with reference to FIG. 19, conversion data (or conversion data with an identification mark) for performing a replacement process on the decrypted content and a recording position of the conversion data are recorded. ing.

図19に示す変換テーブルは、コンテンツデータの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルとして設定され、この変換テーブルを適用して、コンテンツ構成データの置き換え処理実行命令を含むデータ変換処理プログラムを実行して、データ変換が行われる。   The conversion table shown in FIG. 19 is set as a conversion table in which conversion data to be replaced in part of content data and setting position information for the content of the conversion data are recorded. Data conversion is performed by executing a data conversion processing program including a data replacement processing execution instruction.

変換テーブルに含まれる情報[type_indicator]は、変換テーブルの登録情報が、
(a)ブロークンデータを正当なコンテンツデータに変換するための変換データに関する登録情報であるか、または、
(b)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報であるか、
上記(a)、(b)のいずれの登録情報であるかを識別するタイプ識別子である。
The information [type_indicator] included in the conversion table is the registration information of the conversion table,
(A) registration information regarding conversion data for converting broken data into legitimate content data, or
(B) registration information regarding conversion data with an identification mark for embedding identification information of a playback device or content playback application,
This is a type identifier for identifying which of the registration information items (a) and (b).

変換テーブルの登録情報領域が、再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報領域である場合には、テーブル登録情報として、コンテンツ再生装置またはコンテンツ再生アプリケーションの識別情報に基づいて選択的に適用する変換データ、すなわち、識別マーク入り変換データが登録される。   When the registration information area of the conversion table is a registration information area related to conversion data with an identification mark for embedding the identification information of the playback device or content playback application, the table registration information includes the content playback device or content playback application. Conversion data to be selectively applied based on the identification information, that is, conversion data with an identification mark is registered.

変換テーブルの登録情報[FM_ID_bit_position]は、複数ビットからなる再生装置又は再生アプリケーションの識別情報中、処理態様決定のために参照すべきビットの位置情報である。   The registration information [FM_ID_bit_position] of the conversion table is position information of bits to be referred for determining the processing mode in the identification information of the playback device or playback application consisting of a plurality of bits.

例えば、複数ビットからなる再生装置又は再生アプリケーションの識別情報中、処理態様決定のために参照すべきビットのビット値が1である場合、変換テーブルに登録された識別マーク入り変換データによってコンテンツ構成データの置き換えを実行し、参照すべきビットのビット値が0である場合には置き換えを実行しないといった処理態様が決定されてデータ変換が実行される。   For example, when the bit value of the bit to be referred to for determining the processing mode is 1 in the identification information of the playback device or playback application consisting of a plurality of bits, the content configuration data is converted by the conversion data with the identification mark registered in the conversion table. Is replaced, and when the bit value of the bit to be referred to is 0, the processing mode is determined such that the replacement is not executed, and the data conversion is executed.

なお、参照ビットが0の場合に変換を実行し、1の場合に変換を実行しないとする設定も可能である。また参照ビットが0の場合の変換データと、1の場合の変換データをそれぞれ別の変換データとして設定し、参照ビットのビット値に応じて、適宜、変換データを選択して設定する構成としてもよい。   It is also possible to set so that conversion is executed when the reference bit is 0 and conversion is not executed when the reference bit is 1. Alternatively, the conversion data when the reference bit is 0 and the conversion data when the reference bit are 1 are set as different conversion data, and the conversion data is appropriately selected and set according to the bit value of the reference bit. Good.

なお、変換テーブルは、コンテンツの一部構成データのみに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理による難読化した変換テーブルとして設定される。   Note that the conversion table is set as an obfuscated conversion table by arithmetic processing or encryption processing in which different parameters are applied to each partial conversion table data in which conversion data corresponding to only partial configuration data of content is recorded. The

各変換テーブルに記録された変換データは、例えば図20(b)に示すように、各変換テーブルを含むTSパケットの近傍位置に記録位置が設定される。例えば、図20(b)に示す例では、変換データの記録領域を持つパケット511,512は、変換テーブルを含むパケット501の近傍に設定される。例えば、これらの各パケットは1GOPを単位として設定される。   For example, as shown in FIG. 20B, the recording position of the conversion data recorded in each conversion table is set in the vicinity of the TS packet including each conversion table. For example, in the example shown in FIG. 20B, the packets 511 and 512 having the conversion data recording area are set in the vicinity of the packet 501 including the conversion table. For example, each of these packets is set in units of 1 GOP.

このような設定とすることで、コンテンツの復号、再生をリアルタイムで実行する場合、変換データによるデータ置き換え処理を復号処理後の連続処理として実行することが可能であり、変換テーブルの記録されたTSパケットの検出、解析処理によって、変換データを取得し、テーブルに記録された位置に対して変換データを書き込む(上書き)処理を効率的に実行することができる。   With this setting, when content is decrypted and played back in real time, the data replacement process using the converted data can be executed as a continuous process after the decryption process, and the TS in which the conversion table is recorded. The conversion data can be acquired by the packet detection and analysis process, and the process of writing (overwriting) the conversion data to the position recorded in the table can be efficiently executed.

本処理例では、各変換テーブルは、個別に異なるシークレットパラメータ(SP1,SP2,SP3・・・)を適用した演算あるいは暗号処理が施されて情報記録媒体に記録されている。   In this processing example, each conversion table is recorded on the information recording medium after being subjected to computation or encryption processing to which different secret parameters (SP1, SP2, SP3...) Are applied.

例えば具体的には、各変換テーブルは、個別に異なるシークレットパラメータ(SP1,SP2,SP3・・・)を適用した排他論理和(XOR)演算処理がなされて各パケットに格納されている。シークレットパラメータは例えば128ビットデータからなる。図18に示すセキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310にコンテンツとともに記録された変換テーブルを平文変換テーブルにするために必要なシークレットパラメータ(SP1,SP2,SP3・・・)、すなわち排他論理和(XOR)演算パラメータ(SP1,SP2,SP3・・・)を生成して出力する。出力されたシークレットパラメータ(SP1,SP2,SP3・・・)は、SPレジスタ371に格納される。この処理は間欠的に、順次行なわれる。   For example, specifically, each conversion table is stored in each packet after being subjected to exclusive OR (XOR) operation processing to which different secret parameters (SP1, SP2, SP3...) Are applied. The secret parameter is composed of, for example, 128-bit data. The secure VM 356 shown in FIG. 18 reads the data conversion processing program 315 including the instruction code information from the information recording medium 310, intermittently controls the event handler 354, player information before content reproduction or output processing and during processing execution. Based on the input of 355, secret parameters (SP1, SP2, SP3...) Necessary for making the conversion table recorded together with the content on the information recording medium 310 into a plaintext conversion table, that is, exclusive OR (XOR) calculation Parameters (SP1, SP2, SP3...) Are generated and output. The output secret parameters (SP1, SP2, SP3...) Are stored in the SP register 371. This process is performed intermittently and sequentially.

図18に示すセキュアVM356は、シークレットパラメータ(SP1,SP2,SP3・・・)に加え、シークレットパラメータの指定ナンバー(SPNo.)と、プレーヤIDに対応して設定される識別マークのID(FM_ID)をデータ変換処理プログラム315に従って生成して、これらの値を出力する。これらの値もSPレジスタ371に格納される。   The secure VM 356 shown in FIG. 18 includes a secret parameter designation number (SPNo.) In addition to the secret parameters (SP1, SP2, SP3...) And an identification mark ID (FM_ID) set corresponding to the player ID. Are generated according to the data conversion processing program 315, and these values are output. These values are also stored in the SP register 371.

リアルタイム処理ブロック381では、ステップS401において、変換テーブルを含む暗号化コンテンツ318の復号が実行され、ステップS402におけるデマルチプレクサの処理によって、各変換テーブルが分離され、リアルタイムイベントハンドラ361の制御によって、ステップS403およびステップS404において、テーブル復元&データ変換処理が実行される。ステップS403およびステップS404において、テーブル復元&データ変換処理は、リアルタイムイベントハンドラ361が、コンテンツ再生あるいは外部出力中に発生するイベントを監視して処理制御がなされる。例えば不正処理が検出された場合には処理が中止される。   In the real-time processing block 381, the encrypted content 318 including the conversion table is decrypted in step S401, each conversion table is separated by the demultiplexer process in step S402, and step S403 is controlled by the real-time event handler 361. In step S404, table restoration & data conversion processing is executed. In step S403 and step S404, the table restoration & data conversion process is controlled by the real-time event handler 361 monitoring events that occur during content playback or external output. For example, when an unauthorized process is detected, the process is stopped.

ステップS403では、セキュアVM356から間欠的に出力され、SPレジスタ371に格納されたシークレットパラメータ(SPn)を用いて、デマルチプレクサによってコンテンツから分離された変換テーブルとの演算(例えば排他論理和演算)を実行して、変換テーブルを取得する。   In step S403, using the secret parameter (SPn) intermittently output from the secure VM 356 and stored in the SP register 371, an operation (for example, exclusive OR operation) with the conversion table separated from the content by the demultiplexer is performed. Execute to get the conversion table.

さらに、ステップS404において、シークレットパラメータ(SPn)とともに、セキュアVM356から間欠的に出力され、SPレジスタ371に格納されたシークレットパラメータの指定ナンバー(SPNo.)、識別マークのID(FM_ID)を取得して、これらの各値を参照し、変換テーブルを適用した処理態様を決定し、変換テーブルに記録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブルに記録された指定位置に書き込む処理を実行する。これらの処理は、コンテンツ再生処理または外部出力処理に並行したリアルタイム処理として実行する。
Furthermore, in step S404, together with the secret parameter (SPn), the secret parameter designation number (SPNo.) And identification mark ID (FM_ID) that are intermittently output from the secure VM 356 and stored in the SP register 371 are acquired. Then, referring to each of these values, the processing mode to which the conversion table is applied is determined, and the conversion data recorded in the conversion table, that is,
(A) Conversion data (b) Processing for writing identification mark-containing conversion data at a designated position recorded in the conversion table. These processes are executed as a real-time process in parallel with the content reproduction process or the external output process.

例えば、シークレットパラメータSP1,SP2,SP3・・・が、所定のコンテンツ部分データ単位に対応する変換データを含む分割された変換テーブル1,2,・・・との排他論理和(XOR)演算パラメータである場合、ステップS403における演算によるテーブル復元処理は、
[変換テーブル1](XOR)[SP1]、
[変換テーブル2](XOR)[SP2]、
[変換テーブル3](XOR)[SP3]、
: :
これらの排他論理和演算処理を順次、実行することになる。これらの演算によって、各平文変換テーブルデータを取得する。なお、上記式において、[A](XOR)[B]は、AとBの排他論理和演算を意味するものとする。
For example, secret parameters SP1, SP2, SP3... Are exclusive OR (XOR) operation parameters with divided conversion tables 1, 2,... Including conversion data corresponding to a predetermined content part data unit. If there is, the table restoration process by the calculation in step S403 is:
[Conversion table 1] (XOR) [SP1],
[Conversion Table 2] (XOR) [SP2],
[Conversion Table 3] (XOR) [SP3],
::
These exclusive OR operation processes are sequentially executed. By these operations, each plaintext conversion table data is acquired. In the above formula, [A] (XOR) [B] means an exclusive OR operation of A and B.

図21を参照して、変換データの書き込み構成の一例について説明する。シークレットパラメータSP1,SP2,SP3・・・は、例えばコンテンツのノーマル再生時間約10秒毎に切り替えられる。すなわち、1つの固定的なシークレットパラメータは約10秒間の再生コンテンツにのみ適用可能なパラメータとして設定される。図21のコンテンツ再生区間0〜T、T〜2T,2T〜3T・・・はそれぞれ同一のシークレットパラメータが適用可能なコンテンツ区間を示している。   An example of the conversion data writing configuration will be described with reference to FIG. The secret parameters SP1, SP2, SP3,... Are switched, for example, every about 10 seconds of normal content playback time. That is, one fixed secret parameter is set as a parameter that can be applied only to playback content for about 10 seconds. In FIG. 21, content playback sections 0 to T, T to 2T, 2T to 3T,... Indicate contents sections to which the same secret parameter can be applied.

このように、本処理例では、同一のシークレットパラメータが適用される区間は、ノーマル再生で約10秒間のコンテンツのみであり、万が一1つのシークレットパラメータが漏洩しても、わずか10秒のコンテンツの再生しかできないことになり、強固なコンテンツ漏洩防止が実現される。   As described above, in the present processing example, the section to which the same secret parameter is applied is only about 10 seconds of content in normal playback, and even if one secret parameter leaks, playback of content of only 10 seconds is possible. As a result, strong content leakage prevention is realized.

ステップS403およびステップS404におけるテーブル復元&データ変換処理以後の処理は、先に図16を参照して説明した処理例と同様であり、コンテンツ再生やコンテンツ外部出力処理に並行して実行するリアルタイム処理として行なわれる。すなわち、ステップS405におけるデマルチプレクサ処理、ステップS406におけるデコード処理、これらの処理が、コンテンツ再生または外部出力に並行したリアルタイム処理として実行される。   The processing after the table restoration & data conversion processing in step S403 and step S404 is the same as the processing example described above with reference to FIG. 16, and is a real-time processing executed in parallel with the content reproduction and content external output processing. Done. That is, the demultiplexer process in step S405, the decode process in step S406, and these processes are executed as real-time processes in parallel with content reproduction or external output.

なお、図18に示す処理例では、ステップS403およびステップS404におけるテーブル復元&データ変換処理をリアルタイムイベントハンドラ361を設定し、リアルタイムイベントハンドラ361が、コンテンツ再生あるいは外部出力中に発生するイベントを監視して、テーブル復元&データ変換処理を制御する構成としたが、このようなイベント監視を行なわず、データ変換処理をリアルタイムで実行させるような制御のみを可能とした構成でもよい。この場合は、例えば図22に示すように、図18に示す構成からリアルタイムイベントハンドラ361を省略した構成とすることができる。   In the processing example shown in FIG. 18, the table restoration & data conversion processing in step S403 and step S404 is set in the real-time event handler 361, and the real-time event handler 361 monitors events that occur during content playback or external output. Thus, the table restoration & data conversion process is controlled. However, the event monitoring may not be performed and only the control for executing the data conversion process in real time may be used. In this case, for example, as shown in FIG. 22, the real-time event handler 361 can be omitted from the configuration shown in FIG.

本処理例では、コンテンツ全体に対応する変換テーブルの構成データを分割して、各分割テーブルとされた変換テーブルごとに異なるシークレットパラメータ(SPn)を対応付け、各分割変換テーブルごとに各シークレットパラメータによる排他論理和演算を施して情報記録媒体に格納するとともに、これらのシークレットパラメータをセキュアVM356が、間欠的に出力する構成としたので、例えばシークレットパラメータの一部が漏洩しても、変換テーブルに格納された変換データを全て取得することはできず、結果として、コンテンツの全体を復元することは不可能となり、より強固なコンテンツ利用管理が実現される。   In this processing example, the configuration data of the conversion table corresponding to the entire content is divided, a different secret parameter (SPn) is associated with each conversion table, and each secret conversion parameter is determined for each divided conversion table. The exclusive logical sum operation is performed and stored in the information recording medium, and these secret parameters are output intermittently by the secure VM 356. For example, even if a part of the secret parameter leaks, it is stored in the conversion table. All of the converted data cannot be acquired, and as a result, it is impossible to restore the entire content, and more robust content usage management is realized.

また、本処理例においても、図10他を参照して説明した処理例と同様、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。また、例えば、コンテンツ再生中に不正な処理が検出された場合、イベントハンドラ354の不正処理検出情報に基づきセキュアVM356の処理を中止することで、変換データの生成が中止され、不正なコンテンツ再生や外部出力を途中で終了させることが可能となる   Also in this processing example, as in the processing example described with reference to FIG. 10 and others, real-time processing that does not affect the content reproduction and external output processing is realized. Also, for example, when an unauthorized process is detected during content playback, the generation of conversion data is stopped by canceling the processing of the secure VM 356 based on the unauthorized process detection information of the event handler 354, and unauthorized content playback or External output can be terminated halfway

(3.8)コンテンツ再生処理例8
次に、コンテンツ再生処理例8について、図23を参照して説明する。図23には、左から暗号化コンテンツの格納された情報記録媒体310、ドライブ330、ホスト350を示している。MKB(Media Key Block)と、タイトル鍵ファイルおよびこれらを適用した処理は、先に図6を参照して説明した処理例1と同様であるので省略してある。情報記録媒体には、さらに、暗号化コンテンツ313、変換テーブル314、データ変換処理プログラム315が格納されている。
(3.8) Content Playback Processing Example 8
Next, content reproduction processing example 8 will be described with reference to FIG. FIG. 23 shows the information recording medium 310, the drive 330, and the host 350 in which encrypted content is stored from the left. The MKB (Media Key Block), the title key file, and the processing to which these are applied are the same as those in the processing example 1 described above with reference to FIG. The information recording medium further stores an encrypted content 313, a conversion table 314, and a data conversion processing program 315.

図23に示すコンテンツ再生処理例8は、先に説明した処理例7と同様、シークレットパラメータ(SP)を適用して、変換テーブルの一部分ずつを平文テーブルに復元して処理を行なう。先の処理例7では、複数に分割された変換テーブルを、個別に異なるシークレットパラメータ(SP1,SP2,SP3・・・)を適用した排他論理和(XOR)演算処理を施してパケットに格納した構成例であったが、本処理例では、暗号化コンテンツ313と、変換テーブル314は別ファイルとして情報記録媒体310に記録されている。   In the content reproduction processing example 8 shown in FIG. 23, similarly to the processing example 7 described above, the secret parameter (SP) is applied, and a part of the conversion table is restored to the plaintext table for processing. In the previous processing example 7, the conversion table divided into a plurality of pieces is subjected to exclusive OR (XOR) calculation processing to which different secret parameters (SP1, SP2, SP3...) Are individually applied and stored in the packet. In this processing example, the encrypted content 313 and the conversion table 314 are recorded in the information recording medium 310 as separate files.

本処理例では、点線枠で示すブロック381の処理をリアルタイム処理として実行し、点線枠で示すブロック385の処理は、間欠的な処理として実行される。すなわち、コンテンツの再生、または外部出力処理に間に合うように、セキュアVM356から、シークレットパラメータ(SP)などが、間欠的に逐次供給される。本処理例においては、セキュアVM356は、変換テーブルの情報記録媒体310からの取得および図に示すXORedテーブル記憶部372に対する格納処理も実行する。この、セキュアVM356による、変換テーブルのXORedテーブル記憶部372に対する格納処理は、出力するシークレットパラメータ(SP)に対応する変換テーブルの部分データを間欠的にXORedテーブル記憶部372に対して格納する処理として実行するか、あるいは、コンテンツ再生処理または外部出力前に一括してXORedテーブル記憶部372に格納してもよい。   In this processing example, the processing of the block 381 indicated by the dotted line frame is executed as real-time processing, and the processing of the block 385 indicated by the dotted line frame is executed as intermittent processing. That is, the secret parameter (SP) and the like are intermittently and sequentially supplied from the secure VM 356 in time for content reproduction or external output processing. In this processing example, the secure VM 356 also executes acquisition processing of the conversion table from the information recording medium 310 and storage processing for the XORed table storage unit 372 shown in the figure. The secure VM 356 stores the conversion table in the XORed table storage unit 372 as a process for intermittently storing partial data of the conversion table corresponding to the secret parameter (SP) to be output in the XORed table storage unit 372. It may be executed, or may be stored in the XORed table storage unit 372 in a lump before content reproduction processing or external output.

本処理例では、変換テーブルは1つの独立したファイルデータとして設定されるが、変換テーブルファイルの中に複数の変換テーブルブロック(FUTブロック)が格納される。これらの複数の変換テーブルブロック(FUTブロック)の各々が、個別に異なるシークレットパラメータ(SP1,SP2,SP3・・・)を適用した排他論理和(XOR)演算処理を施して格納される。   In this processing example, the conversion table is set as one independent file data, but a plurality of conversion table blocks (FUT blocks) are stored in the conversion table file. Each of the plurality of conversion table blocks (FUT blocks) is subjected to exclusive OR (XOR) operation processing to which different secret parameters (SP1, SP2, SP3...) Are individually applied and stored.

図24〜図26を参照して、変換テーブルのデータ構成について説明する。
図24は、変換テーブルの全体データ構成を示し、
図25は、変換テーブル内に含まれる複数の変換テーブルブロック(FUTブロック)中の1つの変換テーブルブロック(FUTブロック)のデータ構成、
図26は、変換テーブルブロック(FUT)内の変換データエントリのデータ構成を示している。
The data structure of the conversion table will be described with reference to FIGS.
FIG. 24 shows the entire data structure of the conversion table.
FIG. 25 shows a data configuration of one conversion table block (FUT block) among a plurality of conversion table blocks (FUT blocks) included in the conversion table.
FIG. 26 shows the data structure of the conversion data entry in the conversion table block (FUT).

図24に示すように、変換テーブルには、以下のデータが含まれる。
Number of FUT blocks:変換テーブルブロック数
Length of FUT block:変換テーブルブロックバイト長
SP_No:シークレットパラメータ(SP)ナンバー(VMによって生成されるSPに対応付けられる)
First SPN for FUT block:変換テーブルブロックの割り当てられたパケット位置
FUT block():変換テーブルブロック(各ブロックは異なるパラメータで処理(難読化)されている)
As shown in FIG. 24, the conversion table includes the following data.
Number of FUT blocks: Number of conversion table blocks
Length of FUT block: Conversion table block byte length
SP_No: Secret parameter (SP) number (corresponding to SP generated by VM)
First SPN for FUT block: The packet position to which the translation table block is assigned
FUT block (): Conversion table block (each block is processed (obfuscated) with different parameters)

変換テーブルには、複数の変換テーブルブロック(FUT)が含まれ、これらの複数の変換テーブルブロック(FUT)が、それぞれ異なるシークレットパラメータ(SP1,SP2,SP3・・・)によって排他論理和(XOR)演算処理が施されて格納されている。   The conversion table includes a plurality of conversion table blocks (FUT), and these conversion table blocks (FUT) are exclusive ORed (XOR) with different secret parameters (SP1, SP2, SP3,...). Arithmetic processing is performed and stored.

図25は、図24に示す変換テーブル中に複数含まれる変換テーブルブロック(FUTブロック)の1つのデータ構成例を示している。図25に示すように、変換テーブルブロック(FUTブロック)には以下のデータが含まれる。
Number of FixUpEntry in this block:変換データ数(識別マーク入り変換データも含む)
Base SPN for FixUpEntry:変換データの記録位置の指標となるベースパケットの位置(パケットNo.)
FixUpEntry():変換データエントリ(シークレットパラメータで処理(難読化)されている)
FIG. 25 illustrates one data configuration example of a plurality of conversion table blocks (FUT blocks) included in the conversion table illustrated in FIG. As shown in FIG. 25, the conversion table block (FUT block) includes the following data.
Number of FixUpEntry in this block: Number of conversion data (including conversion data with identification mark)
Base SPN for FixUpEntry: Base packet position (packet No.) serving as an index of conversion data recording position
FixUpEntry (): Conversion data entry (processed with the secret parameter (obfuscated))

図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変換データ(識別マーク入り変換データも含む)
これらのデータによって構成される。
FIG. 26 shows a data configuration example of the conversion data entry (FixUpEntry) included in the conversion table block shown in FIG. As shown in FIG. 26, the conversion data entry (FixUpEntry) includes the following data.
type_indicator: Type identifier [00: No conversion, 01b: Processing by conversion data, 10b, 11b: Processing by conversion data with identification mark]
FM_ID_bit_position: identification bit position of player ID corresponding to conversion data with identification mark
relative_SPN: Conversion data application packet position (number of packets from the programmable map table (PMT) storage packet)
byte_position: Conversion data recording position in the packet
overwrite_value: Conversion data (including conversion data with identification mark)
relative_SPN_2: Second conversion data application packet position (number of packets from the PMT packet)
byte_position_2: Conversion data recording position in the packet (corresponding to the second conversion data)
overwrite_value_2: Second conversion data (including conversion data with identification mark)
It consists of these data.

変換テーブルは、コンテンツデータの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルとして設定され、この変換テーブルを適用して、コンテンツ構成データの置き換え処理実行命令を含むデータ変換処理プログラムを実行して、データ変換が行われる。   The conversion table is set as a conversion table in which conversion data that is a part of the content data to be replaced and setting position information for the content of the conversion data is recorded, and content conversion data replacement processing by applying this conversion table Data conversion is performed by executing a data conversion processing program including an execution instruction.

図26に示す変換テーブブロックに含まれる変換データエントリ(FixUpEntry)情報に含まれる情報[type_indicator]は、変換テーブルの登録情報が、
(a)ブロークンデータを正当なコンテンツデータに変換するための変換データに関する登録情報であるか、または、
(b)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報であるか、
上記(a)、(b)のいずれの登録情報であるかを識別するタイプ識別子である。
The information [type_indicator] included in the conversion data entry (FixUpEntry) information included in the conversion table block shown in FIG.
(A) registration information regarding conversion data for converting broken data into legitimate content data, or
(B) registration information regarding conversion data with an identification mark for embedding identification information of a playback device or content playback application,
This is a type identifier for identifying which of the registration information items (a) and (b).

変換テーブルの登録情報領域が、再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報領域である場合には、テーブル登録情報として、コンテンツ再生装置またはコンテンツ再生アプリケーションの識別情報に基づいて選択的に適用する変換データ、すなわち、識別マーク入り変換データが登録される。   When the registration information area of the conversion table is a registration information area related to conversion data with an identification mark for embedding the identification information of the playback device or content playback application, the table registration information includes the content playback device or content playback application. Conversion data to be selectively applied based on the identification information, that is, conversion data with an identification mark is registered.

登録情報[FM_ID_bit_position]は、複数ビットからなる再生装置又は再生アプリケーションの識別情報中、処理態様決定のために参照すべきビットの位置情報である。例えば、複数ビットからなる再生装置又は再生アプリケーションの識別情報中、処理態様決定のために参照すべきビットのビット値が1である場合、変換テーブルに登録された識別マーク入り変換データによってコンテンツ構成データの置き換えを実行し、参照すべきビットのビット値が0である場合には置き換えを実行しないといった処理態様が決定されてデータ変換が実行される。   The registration information [FM_ID_bit_position] is position information of bits to be referred for determining the processing mode in the identification information of the playback device or playback application composed of a plurality of bits. For example, when the bit value of the bit to be referred to for determining the processing mode is 1 in the identification information of the playback device or playback application consisting of a plurality of bits, the content configuration data is converted by the conversion data with the identification mark registered in the conversion table. Is replaced, and when the bit value of the bit to be referred to is 0, the processing mode is determined such that the replacement is not executed, and the data conversion is executed.

なお、前述したように参照ビットが0の場合に変換を実行し、1の場合に変換を実行しないとする設定も可能である。また参照ビットが0の場合の変換データと、1の場合の変換データをそれぞれ別の変換データとして設定し、参照ビットのビット値に応じて、適宜、変換データを選択して設定する構成としてもよい。   As described above, it is also possible to set so that conversion is performed when the reference bit is 0 and conversion is not performed when the reference bit is 1. Alternatively, the conversion data when the reference bit is 0 and the conversion data when the reference bit are 1 are set as different conversion data, and the conversion data is appropriately selected and set according to the bit value of the reference bit. Good.

なお、本処理例における変換テーブルは、複数の変換テーブルブロック(FUT)が含まれ、これらの複数の変換テーブルブロック(FUT)が、それぞれ異なるシークレットパラメータ(SP1,SP2,SP3・・・)によって排他論理和(XOR)演算処理が施されて格納されている。すなわち、本処理例では、変換テーブルは1つの独立したファイルデータとして情報記録媒体に格納されるが、図24〜図26を参照して説明したように、変換テーブル内に複数の変換テーブルブロック(FUT)を有し、これらの複数の変換テーブルブロック(FUT)の各々が、個別に異なるシークレットパラメータ(SP1,SP2,SP3・・・)を適用した排他論理和(XOR)演算処理がなされて格納される。シークレットパラメータは例えば128ビットデータからなる。   The conversion table in this processing example includes a plurality of conversion table blocks (FUT), and these conversion table blocks (FUT) are mutually exclusive by different secret parameters (SP1, SP2, SP3...). A logical sum (XOR) operation process is performed and stored. That is, in this processing example, the conversion table is stored as one independent file data in the information recording medium. However, as described with reference to FIGS. 24 to 26, a plurality of conversion table blocks ( Each of the plurality of conversion table blocks (FUT) is subjected to exclusive OR (XOR) operation processing to which different secret parameters (SP1, SP2, SP3...) Are individually applied and stored. Is done. The secret parameter is composed of, for example, 128-bit data.

図23に示すセキュアVM356は、命令コード情報を含むデータ変換処理プログラム315を情報記録媒体310から読み出して、コンテンツ再生あるいは出力処理前および処理実行中に間欠的に、イベントハンドラ354の制御、プレーヤ情報355の入力に基づいて、情報記録媒体310に記録された変換テーブル314に含まれる変換テーブルブロック(FUTブロック)を平文変換テーブルにするために必要なシークレットパラメータ(SP1,SP2,SP3・・・)、すなわち排他論理和(XOR)演算パラメータ(SP1,SP2,SP3・・・)を生成して出力する。出力されたシークレットパラメータ(SP1,SP2,SP3・・・)は、SPレジスタ371に格納される。この処理は間欠的に、順次行なわれる。   The secure VM 356 shown in FIG. 23 reads out the data conversion processing program 315 including the instruction code information from the information recording medium 310, intermittently controls the event handler 354, player information before content reproduction or output processing and during processing execution. Based on the input of 355, secret parameters (SP1, SP2, SP3...) Necessary for converting the conversion table block (FUT block) included in the conversion table 314 recorded on the information recording medium 310 into a plaintext conversion table. That is, exclusive OR (XOR) operation parameters (SP1, SP2, SP3...) Are generated and output. The output secret parameters (SP1, SP2, SP3...) Are stored in the SP register 371. This process is performed intermittently and sequentially.

各変換テーブルブロック(FUTブロック)は、先の処理例7において説明した分割された変換テーブルと同様、コンテンツの一部にのみ対応する変換データと、その変換データの書き込み位置情報を含むデータであり、図21を参照して説明したように、例えばノーマル再生において、10秒程度のコンテンツ部分に対応する変換データを含んでいる。   Each conversion table block (FUT block) is data including conversion data corresponding to only a part of the content and writing position information of the conversion data, as in the case of the divided conversion table described in the previous processing example 7. As described with reference to FIG. 21, for example, in normal reproduction, conversion data corresponding to a content portion of about 10 seconds is included.

図23に示すセキュアVM356は、シークレットパラメータ(SP1,SP2,SP3・・・)に加え、シークレットパラメータの指定ナンバー(SPNo.)と、プレーヤIDに対応して設定される識別マークのID(FM_ID)をデータ変換処理プログラム315に従って生成して、これらの値を出力する。これらの値もSPレジスタ371に格納される。   The secure VM 356 shown in FIG. 23 has a secret parameter designation number (SPNo.) In addition to the secret parameters (SP1, SP2, SP3...), And an identification mark ID (FM_ID) set corresponding to the player ID. Are generated according to the data conversion processing program 315, and these values are output. These values are also stored in the SP register 371.

リアルタイム処理ブロック381では、ステップS451において、暗号化コンテンツ318の復号が実行され、ステップS452において、XORedテーブル記憶部372に記憶された変換テーブルブロックの1つが取得され、SPレジスタ371に格納されたシークレットパラメータ(SPn)の排他論理和(XOR)演算が実行され、平文データとして、変換テーブルブロック(FUT)が取得される。   In the real-time processing block 381, the encrypted content 318 is decrypted in step S451, and one of the conversion table blocks stored in the XORed table storage unit 372 is acquired in step S452, and the secret stored in the SP register 371 is acquired. An exclusive OR (XOR) operation of the parameter (SPn) is executed to obtain a conversion table block (FUT) as plain text data.

さらに、ステップS453において、シークレットパラメータ(SPn)とともに、セキュアVM356から間欠的に出力され、SPレジスタ371に格納されたシークレットパラメータの指定ナンバー(SPNo.)、識別マークのID(FM_ID)を取得して、これらの各値を参照し、変換テーブルを適用した処理態様を決定し、変換テーブルに記録された変換データ、すなわち、
(a)変換データ
(b)識別マーク入り変換データ
を、変換テーブルに記録された指定位置に書き込む処理を実行する。これらの処理は、リアルタイムハンドラ361の制御の下、コンテンツ再生処理または外部出力処理に並行したリアルタイム処理として実行される。リアルタイムイベントハンドラ361が、コンテンツ再生あるいは外部出力中に発生するイベントを監視して処理制御がなされる。例えば不正処理が検出された場合には処理が中止される。
In step S453, together with the secret parameter (SPn), the secret parameter designation number (SPNo.) And identification mark ID (FM_ID) that are intermittently output from the secure VM 356 and stored in the SP register 371 are acquired. Then, referring to each of these values, the processing mode to which the conversion table is applied is determined, and the conversion data recorded in the conversion table, that is,
(A) Conversion data (b) Processing for writing identification mark-containing conversion data at a designated position recorded in the conversion table. These processes are executed as a real-time process in parallel with the content reproduction process or the external output process under the control of the real-time handler 361. A real-time event handler 361 monitors an event that occurs during content playback or external output, and controls processing. For example, when an unauthorized process is detected, the process is stopped.

具体的な変換テーブルの利用処理について説明する。まず、図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の確認を行う必要は無い。
A specific conversion table utilization process will be described. First, the type identifier [type_indicator] in the conversion table shown in FIG. 26 is confirmed, and when this type identifier [type_indicator] indicates that conversion data with an identification mark is inserted (type_indicator == 10b, 11b) Referring to [FM_ID_bit_position] in the conversion table, that is, the bit position information of the ID that determines the processing mode of the conversion data with the identification mark, this is the target of the identification bit of the ID (FM_ID) consisting of a plurality of bits. Identify the location. On this occasion,
If the type identifier [type_indicator] is 10b, 0 bit is set.
If the type identifier [type_indicator] is 11b, 64 bits
Add to FM_ID_bit_position. In this way, FM_ID can be expressed even if fewer bits are allocated. Then, the data of the bit position of the specified FM_ID is acquired. And
If the FM_ID bit is 1, perform transformation by replacing the content data to which the conversion data is applied,
If the FM_ID bit is 0, no transformation is performed (or vice versa).
By this processing, data corresponding to the player ID can be embedded in the reproduction data. Here, when the transformation is performed, it is more difficult to remove the FM_ID data by performing the transformation at two locations of the first conversion data [overwrite_value] and the second conversion data [overwrite_value_2] set in the conversion table. In addition, the burden on the playback device can be reduced as compared with the case where each [overwrite_value] is restricted. On the other hand, when the type identifier [type_indicator] is 01b, it is conversion data that is not conversion data with an identification mark, for example, conversion data applied to replacement of broken data. There is no need to check the 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の排他論理和演算を意味するものとする。
The exclusive OR operation (XOR) in step S452 is, for example, an exclusive OR (XOR) operation parameter in which the secret parameters SP1, SP2, SP3,... Are set corresponding to each conversion table block (FUT block). If there is, the table restoration process in step S452 is:
[Conversion table block (FUT block) 1] (XOR) [SP1],
[Conversion table block (FUT block) 2] (XOR) [SP2],
[Conversion table block (FUT block) 3] (XOR) [SP3],
::
The exclusive OR operation process is performed. Through these operations, each plaintext conversion table block data is acquired. In the above formula, [A] (XOR) [B] means an exclusive OR operation of A and B.

これらの変換テーブルブロックに基づいて、コンテンツの一部構成データに対する変換データ書き込み、識別マーク入り変換データ書き込み処理が実行される。各変換テーブルブロックの適用可能なコンテンツ区間は、先の処理例7と同様であり、図21のコンテンツ再生区間0〜T、T〜2T,2T〜3T・・・の一部データ領域である。すなわち、これらの各区間は、同一のシークレットパラメータが適用可能なコンテンツ区間となる。   Based on these conversion table blocks, conversion data writing and conversion data writing processing with an identification mark are executed for the partial configuration data of the content. The applicable content section of each conversion table block is the same as in the previous processing example 7, and is a partial data area of the content playback sections 0 to T, T to 2T, 2T to 3T,. That is, each of these sections is a content section to which the same secret parameter can be applied.

このように、本処理例では、先の処理例7と同様、同一のシークレットパラメータが適用される区間は、ノーマル再生で約10秒間のコンテンツのみであり、万が一1つのシークレットパラメータが漏洩しても、わずか10秒のコンテンツの再生しかできないことになり、強固なコンテンツ漏洩防止が実現される。   In this way, in this processing example, as in the previous processing example 7, the section to which the same secret parameter is applied is only about 10 seconds of content in normal playback, and even if one secret parameter leaks by any chance Only 10 seconds of content can be played back, and strong content leakage prevention is realized.

ステップS453におけるデータ変換処理以後の処理は、処理例7と同様であり、コンテンツ再生やコンテンツ外部出力処理に並行して実行するリアルタイム処理として行なわれる。すなわち、ステップS454におけるデマルチプレクサ処理、ステップS455におけるデコード処理、これらの処理が、コンテンツ再生または外部出力に並行したリアルタイム処理として実行される。   The processing after the data conversion processing in step S453 is the same as processing example 7, and is performed as real-time processing executed in parallel with content reproduction and content external output processing. That is, the demultiplexer process in step S454, the decode process in step S455, and these processes are executed as real-time processes in parallel with content reproduction or external output.

なお、図23に示す処理例では、ステップS452およびステップS453におけるテーブル復元とデータ変換処理をリアルタイムイベントハンドラ361を設定し、リアルタイムイベントハンドラ361が、コンテンツ再生あるいは外部出力中に発生するイベントを監視して、テーブル復元&データ変換処理を制御する構成としたが、このようなイベント監視を行なわず、データ変換処理をリアルタイムで実行させるような制御のみを可能とした構成でもよい。この場合は、例えば図27に示すように、図23に示す構成からリアルタイムイベントハンドラ361を省略した構成とすることができる。   In the processing example shown in FIG. 23, the real-time event handler 361 is set for table restoration and data conversion processing in steps S452 and S453, and the real-time event handler 361 monitors events that occur during content playback or external output. Thus, the table restoration & data conversion process is controlled. However, the event monitoring may not be performed and only the control for executing the data conversion process in real time may be used. In this case, for example, as shown in FIG. 27, the real-time event handler 361 can be omitted from the configuration shown in FIG.

本処理例では、コンテンツ全体に対応する変換テーブルの構成データを分割した変換データブロック(FUTブロック)ごとに異なるシークレットパラメータ(SPn)を対応付けて、変換データブロック(FUTブロック)ごとに各シークレットパラメータによる排他論理和演算を施して情報記録媒体に格納するとともに、これらのシークレットパラメータをセキュアVM356が、間欠的に出力する構成としたので、例えばシークレットパラメータの一部が漏洩しても、変換テーブルに格納された変換データを全て取得することはできず、結果として、コンテンツの全体を復元することは不可能となり、より強固なコンテンツ利用管理が実現される。   In this processing example, a different secret parameter (SPn) is associated with each converted data block (FUT block) obtained by dividing the configuration data of the conversion table corresponding to the entire content, and each secret parameter is converted for each converted data block (FUT block). Since the secure VM 356 intermittently outputs these secret parameters while performing an exclusive OR operation according to the above, the secure VM 356 intermittently outputs these secret parameters, for example, even if a part of the secret parameters leaks. It is not possible to acquire all the stored conversion data, and as a result, it is impossible to restore the entire content, and more robust content usage management is realized.

また、本処理例においても、図10他を参照して説明した処理例と同様、コンテンツ再生、外部出力の処理に影響を与えることのないリアルタイム処理が実現される。また、例えば、コンテンツ再生中に不正な処理が検出された場合、イベントハンドラ354の不正処理検出情報に基づきセキュアVM356の処理を中止することで、変換データの生成が中止され、不正なコンテンツ再生や外部出力を途中で終了させることが可能となる   Also in this processing example, as in the processing example described with reference to FIG. 10 and others, real-time processing that does not affect the content reproduction and external output processing is realized. Also, for example, when an unauthorized process is detected during content playback, the generation of conversion data is stopped by canceling the processing of the secure VM 356 based on the unauthorized process detection information of the event handler 354, and unauthorized content playback or External output can be terminated halfway

なお、図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の変換テーブルと同様の情報を提供することができる。   Although the data configuration as an example of the conversion table has been described with reference to FIGS. 24 to 26, the conversion table can have various data configurations. For example, the configuration of the conversion table described with reference to FIG. 24 may be configured as shown in FIG. FIG. 28 shows an example in which the same structure as in FIG. 24 is recorded in another format. The secret parameter (SP) number can be substituted with the block number of the conversion table block, and [First SPN for FUT block] is defined by [First "Base in FUT block ()" defined in FIG. The value of “SPN for FixUpEntry”] can be substituted. Since ["Base SPN for FixUpEntry"] is not obfuscated by exclusive OR (XOR) with the secret parameter (SP) value, the value is checked even when there is no secret parameter (SP) value, and at random access, etc. Can be used to determine which conversion table block (FUTblock ()) is used. As described above, the table shown in FIG. 28 has a simpler structure than that of FIG. 24 and can provide the same information as the conversion table of FIG.

[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に各ブロックが接続されている。
[4. Configuration of information processing apparatus]
Next, a hardware configuration example of an information processing apparatus that executes an application as a host will be described with reference to FIG. The information processing apparatus 800 includes a CPU 809 that executes data processing in accordance with various programs such as an OS, a content reproduction or recording application program, and a mutual authentication processing program, a ROM 808 as a storage area for programs, parameters, and the like, a memory 810, and a digital signal Input / output I / F 802, an analog signal input / output I / F 804 having an A / D / D / A converter 805, MPEG data encoding / decoding processing MPEG codec 803, TS ( TS / PS processing means 806 for executing Transport Stream) / PS (Program Stream) processing, encryption processing means 807 for executing various encryption processing such as mutual authentication and decryption processing of encrypted content, recording medium 812 such as a hard disk, recording Drive media 812, re-record data It has a drive 811 for performing input and output of signals, each block being connected to a bus 801.

情報処理装置(ホスト)800は、例えばATAPI−BUS等の接続バスによってドライブと接続されている。変換テーブル、コンテンツなどをデジタル信号用入出力I/F802を介して入出力される。暗号化処理、復号処理は、暗号化処理手段807によって、例えば、AESアルゴリズムなどを適用して実行される。   The information processing apparatus (host) 800 is connected to the drive by a connection bus such as ATAPI-BUS. A conversion table, content, and the like are input / output via the digital signal input / output I / F 802. The encryption process and the decryption process are executed by the encryption processing unit 807 by applying, for example, an AES algorithm.

なお、コンテンツ再生あるいは記録処理を実行するプログラムは例えばROM808内に保管されており、プログラムの実行処理中は必要に応じて、パラメータ、データの保管、ワーク領域としてメモリ810を使用する。   Note that a program for executing content reproduction or recording processing is stored in, for example, the ROM 808, and a memory 810 is used as a parameter, data storage, and work area as needed during execution of the program.

ROM808または記録媒体812には、例えば、管理センタの公開鍵、ホスト対応秘密鍵、ホスト対応の公開鍵証明書、さらに、リボケーションリストとしてのドライブCRLなどが格納される。   The ROM 808 or the recording medium 812 stores, for example, a management center public key, a host-compatible secret key, a host-compatible public key certificate, and a drive CRL as a revocation list.

コンテンツ再生または外部出力に際しては、情報記録媒体から取得したデータ変換処理プログラムを適用して、暗号化コンテンツの復号と、変換テーブルの復元、変換テーブルの格納データに基づく変換データの書き込み処理など、先に説明した処理例1〜8の処理シーケンスに従った処理を実行する。   For content playback or external output, apply a data conversion processing program obtained from an information recording medium to decrypt encrypted content, restore conversion tables, write conversion data based on conversion table storage data, etc. The processing according to the processing sequence of the processing examples 1 to 8 described above is executed.

[5.情報記録媒体製造装置および情報記録媒体]
次に、情報記録媒体製造装置および情報記録媒体について説明する。すなわち、上述したコンテンツ再生処理において適用される情報記録媒体の製造装置、方法、および情報記録媒体について説明する。
[5. Information recording medium manufacturing apparatus and information recording medium]
Next, an information recording medium manufacturing apparatus and an information recording medium will be described. That is, an information recording medium manufacturing apparatus, method, and information recording medium applied in the above-described content reproduction process will be described.

情報記録媒体製造装置は、例えば、先に図1を参照して説明した記録データを格納した情報記録媒体100を製造する装置である。
情報記録媒体製造装置は、
正当コンテンツ構成データと異なるブロークンデータを含むコンテンツと、ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データを有し、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、変換テーブルを適用したコンテンツ構成データの置き換え処理実行命令を含むデータ変換処理プログラムを生成するデータ処理部と、
ブロークンデータを含むコンテンツと、変換テーブルと、データ変換処理プログラムを情報記録媒体に記録するデータ記録部と、
を有する。
The information recording medium manufacturing apparatus is an apparatus that manufactures the information recording medium 100 that stores the recording data described above with reference to FIG.
The information recording medium manufacturing apparatus
A conversion table that includes content including broken data different from the legitimate content configuration data, and conversion data that is legitimate content configuration data to be replaced with the broken data, and records setting position information for the content of the conversion data; and a conversion table A data processing unit that generates a data conversion processing program including a replacement processing execution instruction for content configuration data to which
Content including broken data, a conversion table, a data recording unit for recording a data conversion processing program on an information recording medium,
Have

情報記録媒体製造装置の一実施例構成におけるデータ処理部は、コンテンツ再生装置またはコンテンツ再生アプリケーションの識別情報に基づいて選択的に適用する変換データを設定した変換テーブルの生成を実行する構成であり、データ記録部は、識別情報に基づいて選択的に適用する変換データを含む変換テーブルの記録処理を実行する。また、情報記録媒体製造装置におけるデータ処理部は、コンテンツの一部構成データのみに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理による難読化した変換テーブルを生成し、データ記録部は、難読化した変換テーブルの記録処理を実行する。   The data processing unit in one embodiment of the information recording medium manufacturing apparatus is configured to execute generation of a conversion table in which conversion data to be selectively applied is set based on identification information of the content playback apparatus or the content playback application. The data recording unit executes conversion table recording processing including conversion data to be selectively applied based on the identification information. In addition, the data processing unit in the information recording medium manufacturing apparatus obfuscates an arithmetic process or a cryptographic process in which different parameters are applied to each partial conversion table data in which conversion data corresponding to only partial content data of the content is recorded. The converted conversion table is generated, and the data recording unit executes the obfuscated conversion table recording process.

さらに、情報記録媒体製造装置の一実施例構成におけるデータ処理部は、ブロークンデータを含むコンテンツを構成データとするストリームパケット中に、難読化した変換テーブルを散在させて配置したコンテンツデータを生成する構成であり、データ記録部は、難読化した変換テーブルを散在させて配置したコンテンツデータの記録処理を実行する。   Further, the data processing unit in one embodiment of the information recording medium manufacturing apparatus generates content data in which obfuscated conversion tables are scattered and arranged in a stream packet having content including broken data as configuration data. The data recording unit executes a recording process of content data arranged by interspersing the obfuscated conversion table.

このような、製造装置によって生成された情報記録媒体は、図1他を参照して説明したように、
(a)正当コンテンツ構成データと異なるブロークンデータを含むコンテンツと、
(b)ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データを有し、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、
(c)変換テーブルを適用したコンテンツ構成データの置き換え処理実行命令を含むデータ変換処理プログラムを、
記録データとして格納した情報記録媒体となる。
Such an information recording medium generated by the manufacturing apparatus is as described with reference to FIG.
(A) content including broken data different from legitimate content configuration data;
(B) a conversion table having conversion data that is legitimate content configuration data to be replaced with broken data, and recording setting position information for the content of the conversion data;
(C) A data conversion processing program including a content processing data replacement processing execution instruction to which the conversion table is applied,
The information recording medium is stored as recording data.

また、一実施例において、情報記録媒体に記録される変換テーブルは、コンテンツデータの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、変換テーブルを適用したコンテンツ構成データの置き換え処理実行命令を含むデータ変換処理プログラムを記録データとして格納し、変換テーブルの登録情報が、
(p)ブロークンデータを正当なコンテンツデータに変換するための変換データに関する登録情報であるか、または、
(q)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報であるか、
上記(p)、(q)のいずれの登録情報であるかを識別するタイプ識別子を有する。
In one embodiment, the conversion table recorded on the information recording medium includes conversion data that is a part of the content data to be replaced, a conversion table that records setting position information for the content of the conversion data, and a conversion table. The data conversion processing program including the content processing data replacement processing execution instruction to which is applied is stored as recorded data, and the registration information of the conversion table is
(P) registration information regarding conversion data for converting broken data into legitimate content data, or
(Q) registration information regarding conversion data with an identification mark for embedding identification information of a playback device or content playback application,
It has a type identifier for identifying which of the registration information (p) and (q).

また、変換テーブルの登録情報が、再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための識別マーク入り変換データに関する登録情報である場合には、テーブル登録情報として、さらに、コンテンツ再生装置またはコンテンツ再生アプリケーションの識別情報に基づいて選択的に適用する変換データを含む構成となる。さらに、変換テーブルは、複数ビットからなる再生装置又は再生アプリケーションの識別情報中、処理態様決定のために参照すべきビットの位置情報を含む設定となる。   Further, when the registration information of the conversion table is registration information regarding conversion data with an identification mark for embedding the identification information of the playback device or content playback application, the content playback device or content playback is further added as the table registration information. The conversion data to be selectively applied based on the application identification information is included. Further, the conversion table is set to include position information of bits to be referred for determining the processing mode in the identification information of the playback device or playback application composed of a plurality of bits.

前述したように、変換テーブルは、1つの実施態様として、コンテンツの一部構成データのみに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理による難読化した変換テーブルであり、例えば、情報記録媒体に記録されるブロークンデータを含むコンテンツを構成データとするストリームパケット中に、難読化した変換テーブルが散在させて格納される。   As described above, as one embodiment, the conversion table is an arithmetic process or an encryption process in which different parameters are applied to each partial conversion table data in which conversion data corresponding to only part of the content configuration data is recorded. For example, the obfuscated conversion tables are interspersed and stored in the stream packet having the content including the broken data recorded on the information recording medium as the constituent data.

以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。   The present invention has been described in detail above with reference to specific embodiments. However, it is obvious that those skilled in the art can make modifications and substitutions of the embodiments without departing from the gist of the present invention. In other words, the present invention has been disclosed in the form of exemplification, and should not be interpreted in a limited manner. In order to determine the gist of the present invention, the claims should be taken into consideration.

なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。   The series of processes described in the specification can be executed by hardware, software, or a combined configuration of both. When executing processing by software, the program recording the processing sequence is installed in a memory in a computer incorporated in dedicated hardware and executed, or the program is executed on a general-purpose computer capable of executing various processing. It can be installed and run.

例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。   For example, the program can be recorded in advance on a hard disk or ROM (Read Only Memory) as a recording medium. Alternatively, the program is temporarily or permanently stored on a removable recording medium such as a flexible disk, a CD-ROM (Compact Disc Read Only Memory), an MO (Magneto optical) disk, a DVD (Digital Versatile Disc), a magnetic disk, or a semiconductor memory. It can be stored (recorded). Such a removable recording medium can be provided as so-called package software.

なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。   The program is installed on the computer from the removable recording medium as described above, or is wirelessly transferred from the download site to the computer, or is wired to the computer via a network such as a LAN (Local Area Network) or the Internet. The computer can receive the program transferred in this manner and install it on a recording medium such as a built-in hard disk.

なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。   Note that the various processes described in the specification are not only executed in time series according to the description, but may be executed in parallel or individually according to the processing capability of the apparatus that executes the processes or as necessary. Further, in this specification, the system is a logical set configuration of a plurality of devices, and the devices of each configuration are not limited to being in the same casing.

以上、説明したように、本発明の一実施例の構成によれば、正当コンテンツ構成データと異なるブロークンデータを含むコンテンツを情報記録媒体に記録し、さらに、ブロークンデータの置き換え対象となる正当コンテンツ構成データである変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルを情報記録媒体に格納する構成とし、コンテンツ再生処理に際して、情報記録媒体に記録された変換テーブルに従って、コンテンツ構成データを変換データに置き換える処理を行なう構成としたので、情報記録媒体に記録された暗号化コンテンツに対応する暗号鍵の漏洩が発生した場合でも、変換データの取得ができない装置においてはコンテンツの再生が実行されず、コンテンツの不正利用が防止される。   As described above, according to the configuration of the embodiment of the present invention, the content including the broken data different from the valid content configuration data is recorded on the information recording medium, and the valid content configuration to be replaced with the broken data is further recorded. Data conversion data and a conversion table in which setting position information for the content of the conversion data is recorded are stored in an information recording medium, and content configuration data according to the conversion table recorded in the information recording medium during content playback processing Is converted to converted data, so even if the encryption key corresponding to the encrypted content recorded on the information recording medium is leaked, the content is played back on the device that cannot acquire the converted data. And unauthorized use of the content is prevented.

また、本発明の一実施例の構成によれば、変換データとして、コンテンツ再生装置またはコンテンツ再生アプリケーションを識別可能とした識別情報の構成ビットを解析可能としたデータを含む変換データを適用したので、万が一不正コンテンツが流出した場合でも、変換データの解析によって、不正コンテンツの流出源を特定することが可能となる。   In addition, according to the configuration of the embodiment of the present invention, the conversion data including the data that can analyze the constituent bits of the identification information that can identify the content reproduction device or the content reproduction application is applied as the conversion data. Even if illegal contents are leaked, it is possible to identify the source of illegal contents by analyzing the conversion data.

また、本発明の一実施例の構成によれば、変換データを格納した変換テーブルを区分した分割テーブル毎に異なるパラメータを適用した演算処理または暗号化処理を施した設定としたので、ある特定のパラメータの漏洩が発生した場合でもコンテンツの一部のみの再生が許容するのみであり、コンテンツ全体の漏洩が発生する可能性を低減させることが可能となる。   In addition, according to the configuration of the embodiment of the present invention, since the calculation process or the encryption process using different parameters is set for each divided table obtained by dividing the conversion table storing the conversion data, Even when parameter leakage occurs, only a part of the content is allowed to be reproduced, and the possibility of leakage of the entire content can be reduced.

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 記録媒体
100 Information recording medium 101 Encrypted content 102 MKB
103 Title Key File 104 License Information 105 Conversion Table 106 Data Conversion Processing Program 120 Drive 121 Data Processing Unit 122 Memory 150 Host 151 Data Processing Unit 152 Memory a
153 Decoding processing unit 154 Data conversion processing unit 155 Decoding processing unit 156 Memory b
210 Index 220 Movie object 230 Playlist 240 Clip 261, 262, 263 AV stream 271, 272 Content management unit (CPS unit)
281 Data section 310 Information recording medium 311 MKB
312 Title key file 313 Encrypted content 314 Conversion table 315 Data conversion processing program 330 Drive 350 Host 351 Device key 352 Track buffer 353 Plain text TS buffer 354 Event handler 355 Player information 356 Secure VM
361 Real-time event handler 363 Partial table storage unit 364 Preload table storage unit 371 SP register 372 XORed table storage unit 391, 392 TS packet 394, 395 Packet having conversion data recording area 401 Track buffer storage data 402 Decoding result data 403 Broken data 404 Conversion data 405 Conversion data including identification mark 406 Conversion processed data 501, 502, 511, 512 Packet 800 Information processing device 801 Bus 802 Input / output I / F
803 MPEG codec 804 I / O I / F
805 A / D, D / A converter 806 TS / PS processing means 807 Cryptographic processing means 808 ROM
809 CPU
810 Memory 811 Drive 812 Recording medium

Claims (9)

記録データを有する情報記録媒体であり、
前記記録データの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、再生装置上で実行される前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ処理プログラムを、
記録データとして格納し、
前記変換テーブルは、
(1)前記変換データを含む登録情報と、
(2)前記登録情報が、
(2a)ブロークンデータを正当なコンテンツデータに変換するための変換データを含む登録情報であるか、または、
(2b)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための変換データを含む登録情報であるか、
を識別するタイプ識別子と、
(3)変換データの置き換え位置情報を記録したテーブルであり、
前記再生装置における前記データ処理プログラムの実行により、
前記変換テーブルを取得させて、変換テーブルに記録された変換データの置き換え位置情報の位置にあるコンテンツ構成データを前記変換データで置き換える処理の実行態様を、前記タイプ識別子に応じて変更させることを可能とした情報記録媒体。
An information recording medium having recording data,
Processing for replacing conversion data to be replaced with a part of the recorded data, a conversion table in which setting position information for the content of the conversion data is recorded, and content configuration data applying the conversion table executed on a playback device The data processing program used for
Store as recorded data,
The conversion table is
(1) registration information including the conversion data;
(2) The registration information is
(2a) registration information including conversion data for converting broken data into legitimate content data, or
(2b) registration information including conversion data for embedding identification information of a playback device or a content playback application,
A type identifier that identifies
(3) A table in which replacement position information of conversion data is recorded,
By executing the data processing program in the playback device,
It is possible to change the execution mode of the process of acquiring the conversion table and replacing the content configuration data at the position of the replacement position information of the conversion data recorded in the conversion table with the conversion data according to the type identifier. Information recording medium.
前記データ処理プログラムは、
前記タイプ識別子が、変換テーブルの登録情報が、
(2a)ブロークンデータを正当なコンテンツデータに変換するための変換データを含む登録情報であることを示している場合には、
コンテンツ構成データである正当なコンテンツと異なるブロークンデータを、前記変換テーブルの登録情報に含まれる正当なコンテンツデータである変換データに置き換える処理を実行させるプログラムであることを特徴とする請求項1に記載の情報記録媒体。
The data processing program is
The type identifier is registered information of the conversion table,
(2a) If the registration information includes conversion data for converting broken data into legitimate content data,
The program according to claim 1, wherein the program executes a process of replacing broken data different from valid content that is content configuration data with conversion data that is valid content data included in registration information of the conversion table. Information recording media.
前記データ処理プログラムは、
前記タイプ識別子が、変換テーブルの登録情報が、
(2b)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための変換データを含む登録情報であることを示している場合には、
コンテンツ再生装置またはコンテンツ再生アプリケーションの識別情報の構成ビットに基づき、コンテンツ構成データであるコンテンツの一部領域を、前記変換テーブルの登録情報に含まれる変換データに置き換える又は置き換えない処理を実行させるプログラムであることを特徴とする請求項1に記載の情報記録媒体。
The data processing program is
The type identifier is registered information of the conversion table,
(2b) When the registration information includes conversion data for embedding the identification information of the playback device or content playback application,
A program for executing a process of replacing or not replacing a partial area of content, which is content configuration data, with conversion data included in registration information of the conversion table based on a configuration bit of identification information of a content playback device or content playback application The information recording medium according to claim 1, wherein the information recording medium is provided.
前記登録情報は、さらに前記再生装置またはコンテンツ再生アプリケーションの識別情報の構成ビットの参照すべきビット位置を示す参照ビット位置情報を含み、
前記データ処理プログラムは、
前記参照ビット位置情報の示すビット位置の値に応じて変換データによる置き換え処理の実行の有無を決定させる処理を実行させるプログラムであることを特徴とする請求項3に記載の情報記録媒体。
The registration information further includes reference bit position information indicating a bit position to be referred to of configuration bits of identification information of the playback device or content playback application,
The data processing program is
The information recording medium according to claim 3, wherein the information recording medium is a program that executes a process of determining whether or not to execute a replacement process using conversion data according to a value of a bit position indicated by the reference bit position information.
前記データ処理プログラムは、
前記コンテンツの一部構成データのみに対応する変換データを記録した部分的な変換テーブルデータ各々に対して異なるパラメータを適用した演算処理または暗号処理を実行し、置き換えデータである変換データの取得処理を実行させるプログラムであることを特徴とする請求項1〜4いずれかに記載の情報記録媒体。
The data processing program is
An arithmetic process or an encryption process applying different parameters to each partial conversion table data in which conversion data corresponding to only a part of the content data is recorded, and obtaining conversion data as replacement data The information recording medium according to claim 1, wherein the information recording medium is a program to be executed.
前記データ処理プログラムは、
前記1以上の変換テーブルに含まれる複数の変換データに対して、所定の再生単位で異なるパラメータを適用した排他論理和演算処理を実行し、置き換えデータである変換データの取得処理を実行させるプログラムであることを特徴とする請求項1〜4いずれかに記載の情報記録媒体。
The data processing program is
A program that executes an exclusive OR operation process that applies different parameters in a predetermined reproduction unit to a plurality of conversion data included in the one or more conversion tables, and executes an acquisition process of conversion data that is replacement data The information recording medium according to claim 1, wherein the information recording medium is provided.
前記データ処理プログラムは、
前記異なるパラメータの算出処理を、コンテンツの再生または外部出力に同期させた間欠的な処理として実行させ、
間欠的に順次、算出する異なるパラメータに基づく演算処理または暗号処理によって、異なるコンテンツ構成データに対応する変換データの取得を行わせるプログラムであることを特徴とする請求項5または6に記載の情報記録媒体。
The data processing program is
The calculation processing of the different parameters is executed as intermittent processing synchronized with content reproduction or external output,
7. The information recording according to claim 5, wherein the information recording is a program for acquiring conversion data corresponding to different content configuration data by arithmetic processing or encryption processing based on different parameters to be calculated sequentially and intermittently. Medium.
前記データ処理プログラムは、
前記コンテンツの構成パケットに分散して分割記録された分割変換テーブルを順次取得して、該分割変換テーブルから、前記コンテンツの一部構成データのみに対応する置き換えデータである変換データと、該変換データの記録位置情報を取得する処理を実行させるプログラムであることを特徴とする請求項1〜4いずれかに記載の情報記録媒体。
The data processing program is
The division conversion table distributed and recorded in the content configuration packet is sequentially obtained, and conversion data that is replacement data corresponding to only part of the content configuration data is converted from the division conversion table, and the conversion data The information recording medium according to claim 1, wherein the information recording medium is a program for executing a process of acquiring the recording position information.
コンテンツを構成するコンテンツ構成データの一部の置き換え対象となる変換データと、該変換データのコンテンツに対する設定位置情報を記録した変換テーブルと、再生装置上で実行される前記変換テーブルを適用したコンテンツ構成データの置き換え処理に用いられるデータ処理プログラムを含むデータであり、
前記変換テーブルは、
(1)前記変換データを含む登録情報と、
(2)前記登録情報が、
(2a)ブロークンデータを正当なコンテンツデータに変換するための変換データを含む登録情報であるか、または、
(2b)再生装置又はコンテンツ再生アプリケーションの識別情報を埋めこむための変換データを含む登録情報であるか、
を識別するタイプ識別子と、
(3)変換データの置き換え位置情報を記録したテーブルであり、
情報処理装置における前記データ処理プログラムの実行により、
前記変換テーブルを取得させて、変換テーブルに記録された変換データの置き換え位置情報の位置にあるコンテンツ構成データを前記変換データで置き換える処理の実行態様を、前記タイプ識別子に応じて変更させることを可能としたデータ。
Content structure to which conversion data to be replaced of a part of content configuration data constituting content, a conversion table in which setting position information for the content of the conversion data is recorded, and the conversion table executed on the playback device are applied Data including a data processing program used for data replacement processing,
The conversion table is
(1) registration information including the conversion data;
(2) The registration information is
(2a) registration information including conversion data for converting broken data into legitimate content data, or
(2b) registration information including conversion data for embedding identification information of a playback device or a content playback application,
A type identifier that identifies
(3) A table in which replacement position information of conversion data is recorded,
By executing the data processing program in the information processing apparatus,
It is possible to change the execution mode of the process of acquiring the conversion table and replacing the content configuration data at the position of the replacement position information of the conversion data recorded in the conversion table with the conversion data according to the type identifier. Data.
JP2010248596A 2010-11-05 2010-11-05 Information recording medium and program Active JP4905585B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010248596A JP4905585B2 (en) 2010-11-05 2010-11-05 Information recording medium and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010248596A JP4905585B2 (en) 2010-11-05 2010-11-05 Information recording medium and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005207852A Division JP4654806B2 (en) 2005-07-15 2005-07-15 Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program

Publications (2)

Publication Number Publication Date
JP2011060312A true JP2011060312A (en) 2011-03-24
JP4905585B2 JP4905585B2 (en) 2012-03-28

Family

ID=43947789

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010248596A Active JP4905585B2 (en) 2010-11-05 2010-11-05 Information recording medium and program

Country Status (1)

Country Link
JP (1) JP4905585B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1145508A (en) * 1997-07-30 1999-02-16 Sony Corp Device and method for recording data, device and method for reproducing data, and transmission medium
JP2003151210A (en) * 2001-11-09 2003-05-23 Toshiba Corp Method and system for signal processing, method and system for signal reproducing and recording medium
JP2003208755A (en) * 2002-01-11 2003-07-25 Sony Corp Recording method, recording apparatus, reproducing method, and reproducing apparatus
JP2004138933A (en) * 2002-10-21 2004-05-13 Hitachi Ltd Digital image scrambling system, descrambling system, and program realizing the system
JP2005217598A (en) * 2004-01-28 2005-08-11 Oki Electric Ind Co Ltd Device for embedding digital watermark, digital watermark detector, method for embedding digital watermark, and method for detecting digital watermark

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1145508A (en) * 1997-07-30 1999-02-16 Sony Corp Device and method for recording data, device and method for reproducing data, and transmission medium
JP2003151210A (en) * 2001-11-09 2003-05-23 Toshiba Corp Method and system for signal processing, method and system for signal reproducing and recording medium
JP2003208755A (en) * 2002-01-11 2003-07-25 Sony Corp Recording method, recording apparatus, reproducing method, and reproducing apparatus
JP2004138933A (en) * 2002-10-21 2004-05-13 Hitachi Ltd Digital image scrambling system, descrambling system, and program realizing the system
JP2005217598A (en) * 2004-01-28 2005-08-11 Oki Electric Ind Co Ltd Device for embedding digital watermark, digital watermark detector, method for embedding digital watermark, and method for detecting digital watermark

Also Published As

Publication number Publication date
JP4905585B2 (en) 2012-03-28

Similar Documents

Publication Publication Date Title
JP4654806B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP4321550B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
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 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP4765485B2 (en) Information processing apparatus, information recording medium, information processing method, and computer program
JP4862949B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP4892900B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP4862958B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP2007025913A (en) Information processor, information storage medium manufacturing device, information storage medium, method and computer program
JP4905585B2 (en) Information recording medium and program
JP4862957B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP5170229B2 (en) Information processing apparatus, information processing method, and computer program
JP4905587B2 (en) Information processing apparatus, information processing method, and computer program
JP4905566B2 (en) Information processing apparatus, information recording medium, information processing method, and computer program
JP4941607B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium, and method
JP4973818B2 (en) Information processing apparatus and information processing method
JP4941611B2 (en) Information processing apparatus and method, and computer program

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111011

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111122

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: 20111213

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: 20111226

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

Free format text: PAYMENT UNTIL: 20150120

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4905585

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: 20150120

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