JP2012085320A - Information processor, information processing method, and computer program - Google Patents

Information processor, information processing method, and computer program Download PDF

Info

Publication number
JP2012085320A
JP2012085320A JP2011254037A JP2011254037A JP2012085320A JP 2012085320 A JP2012085320 A JP 2012085320A JP 2011254037 A JP2011254037 A JP 2011254037A JP 2011254037 A JP2011254037 A JP 2011254037A JP 2012085320 A JP2012085320 A JP 2012085320A
Authority
JP
Japan
Prior art keywords
content
data
player
key
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
JP2011254037A
Other languages
Japanese (ja)
Other versions
JP4941611B2 (en
Inventor
Yoshikazu Takashima
芳和 高島
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 JP2011254037A priority Critical patent/JP4941611B2/en
Publication of JP2012085320A publication Critical patent/JP2012085320A/en
Application granted granted Critical
Publication of JP4941611B2 publication Critical patent/JP4941611B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a configuration for performing rigorous validity check of a player to execute processing of a content code.SOLUTION: A secure VM executing content reproduction acquires a content code recorded on an information recording medium, and executes processing, e.g. security check according to the content code, conversion of content data, embedding of player information in the content. Furthermore, the secure VM executes digital signature generation processing by applying a secret key set for each player to the configuration data of a content code, and executes verification processing for the digital signature by applying a public key set for each player when the data processing program in the content code is executed.

Description

本発明は、情報処理装置、および方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、コンテンツの利用制御プログラムとしてコンテンツと共に情報記録媒体に記録されるコンテンツコードを適用したデータ処理に際して、各情報処理装置や再生アプリケーションなどのプレーヤに対応した適正なコンテンツコードを確実に選択して実行させる構成とした情報処理装置、および方法、並びにコンピュータ・プログラムに関する。   The present invention relates to an information processing apparatus and method, and a computer program. Further, in detail, in the data processing using the content code recorded on the information recording medium together with the content as the content usage control program, it is ensured that an appropriate content code corresponding to each information processing apparatus or a player such as a reproduction application is obtained. The present invention relates to an information processing apparatus and method configured to be selected and executed, and a computer program.

音楽等のオーディオデータ、映画等の画像データ、ゲームプログラム、各種アプリケーションプログラム等、様々なソフトウエアデータ(以下、これらをコンテンツ(Content)と呼ぶ)は、記録メディア、例えば、青色レーザを適用したBlu−rayディスク、あるいはDVD(Digital Versatile Disc)、MD(Mini Disc)、CD(Compact Disc)にデジタルデータとして格納することができる。特に、青色レーザを利用したBlu−rayディスクは、高密度記録可能なディスクであり大容量の映像コンテンツなどを高画質データとして記録することができる。   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, DVD (Digital Versatile Disc), MD (Mini Disc), or CD (Compact Disc). In particular, a Blu-ray disc using a blue laser is a disc capable of high-density recording, 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.

コンテンツの不正コピーを防止して著作権者の保護を図る1つの手法としてコンテンツの暗号化処理がある。しかし、コンテンツを暗号化しても、暗号鍵の漏洩が発生してしまうと、不正に復号されたコンテンツが流出するという問題が発生する。このような問題を解決する1つの構成を開示した従来技術として、特許文献1に記載の構成がある。特許文献1は、コンテンツの一部をダミーデータに置き換えて記録することで、コンテンツの不正再生を防止した構成を開示している。   One technique for protecting the copyright holder by preventing unauthorized copying of content is content encryption processing. However, 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 unauthorized reproduction of content is prevented by recording part of the content replaced with dummy data.

コンテンツをダミーデータに置き換えたコンテンツの再生処理に際しては、ダミーデータを正常なコンテンツデータに再度、置き換える処理が必要になる。このデータ変換処理は、正常コンテンツの外部への漏洩を発生させることなく行なわれることが必要であり、またダミーデータの配置位置などや変換方法などの処理情報についても漏洩を防止することが好ましい。   When reproducing the content in which the content is replaced with dummy data, it is necessary to replace the dummy data with normal content data again. This data conversion processing needs to be performed without causing leakage of normal content to the outside, and it is preferable to prevent leakage of processing information such as the arrangement position of dummy data and a conversion method.

このように、コンテンツの再生に際しては、コンテンツの復号処理やデータ変換処理などを実行することが必要であり、また、コンテンツを利用しようとする情報処理装置や再生(プレーヤ)プログラムが正当なライセンスを受けた機器やプログラムであるかといった正当性確認処理などのセキュリティチェックを行なう場合がある。このようなデータ処理は、コンテンツの利用制御プログラムとして、コンテンツと共に情報記録媒体に記録されるコンテンツコードを実行することで行なわれる。なお、コンテンツコードを利用したコンテンツ利用処理例については、例えば特許文献1に記載がある。   As described above, when playing back content, it is necessary to execute content decryption processing, data conversion processing, and the like, and an information processing apparatus or playback (player) program that intends to use the content must have a valid license. There may be a case where a security check such as a legitimacy confirmation process such as a received device or program is performed. Such data processing is performed by executing a content code recorded on an information recording medium together with the content as a content usage control program. An example of content use processing using a content code is described in Patent Document 1, for example.

コンテンツコードは、コンテンツとは独立したファイルとして設定し、情報記録媒体に記録される。従って、コンテンツコードのみを他の情報記録媒体に移動させる処理や、コピーするといった処理も可能となる。コンテンツコードの漏洩が発生し、不正に流通し、不正な利用が行なわれると、多くのコンテンツが不正に再生、利用される可能性があり、大きな損害を発生させる可能性がある。   The content code is set as a file independent of the content and is recorded on the information recording medium. Accordingly, it is possible to perform a process of moving only the content code to another information recording medium or a process of copying. If a content code is leaked, illegally distributed, and illegally used, many contents may be illegally reproduced and used, which may cause great damage.

また、コンテンツ再生を実行する装置や、アプリケーションとしては、様々なメーカの異なる装置やアプリケーションが適用されることが想定されるが、コンテンツコードを利用したセキュリティチェックやデータ変換処理を実行する場合、様々なメーカの異なる装置やアプリケーション等のプレーヤに対応させた適正なコンテンツコードを選択させて、それぞれのシーケンスに従ったセキュリティチェックを行ない、また、プレーヤ対応の固有なデータ変換処理を行なわせる設定とすることが好ましい。特にデータ変換においては、プレーヤ識別情報をコンテンツ中に埋め込む処理を行なう場合があり、プレーヤ対応の正しいコンテンツコードの選択が行なわれない場合は、正しいプレーヤ識別情報の埋め込みが実行されなくなるという問題がある。   In addition, it is assumed that devices and applications of various manufacturers are applied as devices and applications for executing content reproduction. However, when performing security checks and data conversion processing using content codes, there are various types of devices and applications. Select the appropriate content code that is compatible with players such as devices and applications from different manufacturers, perform security checks in accordance with the respective sequences, and perform a unique data conversion process corresponding to the player It is preferable. In particular, in data conversion, there is a case where processing for embedding player identification information in content is performed, and there is a problem in that embedding of correct player identification information is not executed if a correct content code corresponding to the player is not selected. .

特開2002−311998JP 2002-311998 A

本発明は、このような状況に鑑みてなされたものであり、コンテンツの利用制御プログラムとしてコンテンツと共に情報記録媒体に記録されるコンテンツコードの厳格な管理構成を実現し、コンテンツコードを適用したデータ処理に際して、各情報処理装置や再生アプリケーションなどのプレーヤに対応した適正なコンテンツコードを確実に選択して実行させる構成とした情報処理装置、および方法、並びにコンピュータ・プログラムを提供することを目的とするものである。   The present invention has been made in view of such a situation, and realizes a strict management configuration of a content code recorded on an information recording medium together with content as a content usage control program, and data processing using the content code An object of the present invention is to provide an information processing apparatus, method, and computer program configured to surely select and execute an appropriate content code corresponding to each information processing apparatus and a player such as a reproduction application. It is.

本発明の第1の側面は、
情報処理装置であり、
情報記録媒体に記録されたデータ処理プログラムを含むコンテンツコードを取得し、第1メモリに取得したコンテンツコードを格納し、該コンテンツコードに従ったデータ処理を実行するデータ処理部と、
前記情報処理装置において実行するコンテンツ利用アプリケーションであるプレーヤに対応して設定され公開鍵と秘密鍵を格納した第2メモリを有し、
前記データ処理部は、
前記第1メモリに格納された前記コンテンツコードの構成データに対して、前記秘密鍵を適用したデジタル署名生成処理を実行し、
さらに、前記コンテンツコード中のデータ処理プログラムの実行に際して、前記デジタル署名に対する前記公開鍵を適用した検証処理を実行する情報処理装置にある。
The first aspect of the present invention is:
An information processing device,
A data processing unit that acquires a content code including a data processing program recorded in the information recording medium, stores the acquired content code in the first memory, and executes data processing according to the content code;
A second memory that stores a public key and a secret key that are set in correspondence with a player that is a content-use application executed in the information processing apparatus;
The data processing unit
Executing digital signature generation processing applying the secret key to the configuration data of the content code stored in the first memory;
Furthermore, the information processing apparatus executes a verification process using the public key for the digital signature when the data processing program in the content code is executed.

さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記コンテンツコードの少なくとも一部構成データを、前記第2メモリから取得した暗号鍵を適用して復号し、復号の結果取得したコンテンツコードに従ったデータ処理を実行する構成である。   Furthermore, in an embodiment of the information processing apparatus of the present invention, the data processing unit decrypts at least part of the configuration data of the content code by applying an encryption key acquired from the second memory, and the result of the decryption In this configuration, data processing according to the acquired content code is executed.

さらに、本発明の情報処理装置の一実施態様において、前記コンテンツコードは、情報処理装置に対応するセキュリティチェックコードを含み、前記データ処理部は、前記コンテンツコードに基づくセキュリティチェック処理を実行する構成であることを特徴とする。   Furthermore, in an embodiment of the information processing apparatus of the present invention, the content code includes a security check code corresponding to the information processing apparatus, and the data processing unit executes a security check process based on the content code. It is characterized by being.

さらに、本発明の情報処理装置の一実施態様において、前記データ処理部は、前記公開鍵を格納したプレーヤ証明書を前記第2メモリから取得し、該プレーヤ証明書の正当性検証処理を実行し、正当性が確認されたことを条件として、該プレーヤ証明書の記録情報から、情報処理装置またはコンテンツ利用アプリケーションに対応する識別情報を取得し、該取得情報に従って、処理対象のコンテンツコードを選択する処理を実行する構成であることを特徴とする。   Furthermore, in one embodiment of the information processing apparatus of the present invention, the data processing unit acquires a player certificate storing the public key from the second memory, and executes a validity verification process of the player certificate. On the condition that the validity is confirmed, identification information corresponding to the information processing apparatus or the content use application is acquired from the record information of the player certificate, and the content code to be processed is selected according to the acquired information It is the structure which performs a process.

さらに、本発明の第2の側面は、
情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、前記情報処理装置において実行するコンテンツ利用アプリケーションであるプレーヤに対応して設定され公開鍵と秘密鍵を格納した第2メモリを有し、
前記情報処理装置のデータ処理部が、
情報記録媒体に記録されたデータ処理プログラムを含むコンテンツコードを取得し、第1メモリに取得したコンテンツコードを格納する処理と、
前記第1メモリに格納された前記コンテンツコードの構成データに対して、前記秘密鍵を適用したデジタル署名生成処理と、
さらに、前記コンテンツコード中のデータ処理プログラムの実行に際して、前記デジタル署名に対する前記公開鍵を適用した検証処理を実行する情報処理方法にある。
Furthermore, the second aspect of the present invention provides
An information processing method executed in an information processing apparatus,
The information processing apparatus has a second memory that is set in correspondence with a player that is a content use application executed in the information processing apparatus and stores a public key and a secret key;
A data processing unit of the information processing apparatus;
A process of acquiring a content code including a data processing program recorded in the information recording medium and storing the acquired content code in the first memory;
A digital signature generation process in which the secret key is applied to the configuration data of the content code stored in the first memory;
Further, the present invention is an information processing method for executing a verification process using the public key for the digital signature when executing a data processing program in the content code.

さらに、本発明の第3の側面は、
情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、前記情報処理装置において実行するコンテンツ利用アプリケーションであるプレーヤに対応して設定され公開鍵と秘密鍵を格納した第2メモリを有し、
前記プログラムは、前記情報処理装置のデータ処理部に、
情報記録媒体に記録されたデータ処理プログラムを含むコンテンツコードを取得し、第1メモリに取得したコンテンツコードを格納する処理と、
前記第1メモリに格納された前記コンテンツコードの構成データに対して、前記秘密鍵を適用したデジタル署名の生成処理と、
さらに、前記コンテンツコード中のデータ処理プログラムの実行に際して、前記デジタル署名に対する前記公開鍵を適用した検証処理を実行させるプログラムにある。
Furthermore, the third aspect of the present invention provides
A program for executing information processing in an information processing apparatus;
The information processing apparatus has a second memory that is set in correspondence with a player that is a content use application executed in the information processing apparatus and stores a public key and a secret key;
The program is stored in the data processing unit of the information processing apparatus.
A process of acquiring a content code including a data processing program recorded in the information recording medium and storing the acquired content code in the first memory;
A digital signature generation process in which the secret key is applied to the configuration data of the content code stored in the first memory;
Furthermore, when executing the data processing program in the content code, there is a program for executing a verification process using the public key for the digital signature.

なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、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 one embodiment of the present invention, a configuration for executing content code execution processing based on strict player validity confirmation is realized.
Specifically, the configuration of the content code in the configuration in which the content code recorded in the information recording medium is acquired and processing such as security check according to the content code, conversion of content data, and embedding of the player information in the content is executed. A digital signature generation process using a player-compatible secret key is executed for the data, and a verification process using a player-compatible public key for the digital signature is executed when the data processing program in the content code is executed. The configuration.
With this configuration, a configuration for executing content code execution processing based on strict player legitimacy confirmation is realized.

情報記録媒体の格納データおよびドライブ装置、情報処理装置の構成および処理について説明する図である。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 data recorded on the information recording medium, and the data conversion process required in content reproduction. コンテンツ再生処理の処理例について説明する図である。It is a figure explaining the process example of a content reproduction process. コンテンツ再生の際に実行するデータ変換処理について説明する図である。It is a figure explaining the data conversion process performed in the case of content reproduction. 情報記録媒体に記録されるデータのディレクトリ構成を示す図である。It is a figure which shows the directory structure of the data recorded on an information recording medium. 情報記録媒体に記録されるコンテンツ、管理データ等のディレクトリ構成を示す図である。It is a figure which shows the directory structure of the content, management data, etc. which are recorded on an information recording medium. 情報記録媒体に記録されるコンテンツコードのディレクリ構成を示す図である。It is a figure which shows the directory structure of the content code recorded on an information recording medium. 情報記録媒体に記録されるコンテンツコードの生成、記録プロセスの詳細について説明する図である。It is a figure explaining the detail of the production | generation of a content code recorded on an information recording medium, and a recording process. プレーヤ証明書のデータ構成例について説明する図である。It is a figure explaining the example of a data structure of a player certificate. プレーヤに対して配布される暗号鍵の設定例について説明する図である。It is a figure explaining the example of a setting of the encryption key distributed with respect to a player. 情報記録媒体に格納するコンテンツコードの生成処理、暗号化処理構成について説明する図である。It is a figure explaining the production | generation process of the content code stored in an information recording medium, and an encryption process structure. 情報記録媒体に格納するコンテンツコードの生成処理、暗号化処理構成について説明する図である。It is a figure explaining the production | generation process of the content code stored in an information recording medium, and an encryption process structure. 情報処理装置におけるコンテンツコードの利用処理シーケンスについて説明する図である。It is a figure explaining the utilization processing sequence of the content code in an information processing apparatus. 情報処理装置におけるコンテンツコードの利用処理シーケンスについて説明する図である。It is a figure explaining the utilization processing sequence of the content code in an information processing apparatus. プレーヤに対して配布される暗号鍵の設定例について説明する図である。It is a figure explaining the example of a setting of the encryption key distributed with respect to a player. プレーヤに対して配布される暗号鍵の設定例について説明する図である。It is a figure explaining the example of a setting of the encryption key distributed with respect to a player. 情報処理装置におけるコンテンツ再生に伴う処理の実行シーケンスについて説明するフローチャートを示す図である。FIG. 10 is a diagram illustrating a flowchart for explaining an execution sequence of processing accompanying content reproduction in the information processing apparatus. 情報処理装置のハードウェア構成例について説明する図である。FIG. 25 is a diagram for describing an example hardware configuration of an information processing device. 情報記録媒体製造装置の構成について説明するブロック図であるIt is a block diagram explaining the structure of an information recording medium manufacturing apparatus.

以下、図面を参照しながら本発明の情報処理装置、および方法、並びにコンピュータ・プログラムの詳細について説明する。なお、説明は、以下の記載項目に従って行う。
1.情報記録媒体の格納データと、ドライブおよびホストにおける処理の概要
2.コンテンツ管理ユニット(CPSユニット)について
3.変形データを含むコンテンツのデータ構成およびデータ変換処理の概要
4,コンテンツ再生処理
5.セキュリティチェックコードを適用した処理
6.情報処理装置に対する暗号鍵配布構成とコンテンツコードの暗号化および利用処理構成
7.情報処理装置の構成
8.情報記録媒体製造装置および情報記録媒体
Details of the information processing apparatus, method, and computer program of the present invention will be described below 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) 4. Outline of data structure and data conversion processing of content including modified data 4. Content reproduction processing Processing applying security check code 6. 6. Encryption key distribution configuration for information processing device and content code encryption and usage processing configuration Configuration of information processing apparatus 8. Information recording medium manufacturing apparatus and information recording medium

[1.情報記録媒体の格納データと、ドライブおよびホストにおける処理の概要]
まず、情報記録媒体の格納データと、ドライブおよびホストにおける処理の概要について説明する。図1に、コンテンツの格納された情報記録媒体100、ドライブ120およびホスト140の構成を示す。ホスト140は、例えば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 140 in which content is stored. The host 140 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に示すように、情報記録媒体100には、暗号化処理および一部データの置き換え処理の施された暗号化コンテンツ101と、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックとしてのMKB(Media Key Block)102、コンテンツ復号処理に適用するタイトル鍵を暗号化したデータ(Encrypted CPS Unit Key)等から構成されるタイトル鍵ファイル103、コンテンツのコピー・再生制御情報としてのCCI(Copy Control Information)等を含む使用許諾情報104、暗号化コンテンツ101の利用に際して実行されるデータ処理プログラムを含むコンテンツコード105が格納される。   As shown in FIG. 1, an information recording medium 100 includes an encrypted content 101 that has been subjected to encryption processing and partial data replacement processing, and a tree-structured key distribution method known as one aspect of the broadcast encryption method. MKB (Media Key Block) 102 as an encryption key block generated based on the content key, title key file 103 composed of data (Encrypted CPS Unit Key) encrypted title key applied to content decryption processing, etc. The license information 104 including CCI (Copy Control Information) as copy / playback control information and the content code 105 including the data processing program executed when the encrypted content 101 is used are stored.

コンテンツコード105には、コンテンツ中の所定領域の置き換えデータに対応する変換データを登録した変換テーブル(Fix−up Table)106が含まれ、さらに、コンテンツ再生を実行するプレーヤ(再生装置)の正当性などを検証するためのプログラムなどによって構成されるセキュリティチェックコード107が含まれる。   The content code 105 includes a conversion table (Fix-up Table) 106 in which conversion data corresponding to replacement data of a predetermined area in the content is registered. Further, the validity of the player (playback apparatus) that executes content playback is included. A security check code 107 configured by a program for verifying the above and the like is included.

コンテンツの再生を実行する情報処理装置は、まず、コンテンツコード105に含まれるセキュリティチェックコード107に従って、プレーヤ(再生装置)の正当性などの検証処理を実行し、検証処理の後、コンテンツコード105に含まれるデータ変換処理プログラムに従って、コンテンツコード105に含まれる変換テーブル(Fix−up Table)106に記録された変換データを取り出して、コンテンツの構成データの置き換え処理を行なう。   The information processing apparatus that executes content playback first executes verification processing such as the validity of the player (playback device) in accordance with the security check code 107 included in the content code 105. In accordance with the included data conversion processing program, the conversion data recorded in the conversion table (Fix-up Table) 106 included in the content code 105 is extracted, and the content configuration data replacement processing is performed.

なお、変換テーブル(Fix−up Table)106や、セキュリティチェックコード107には、様々な再生装置や再生アプリケーション種別などに応じた処理、すなわちセキュリティチェック処理や変換処理を実行可能とするため、様々な種類のコードが含まれる。例えばA社製のプレーヤに対応するセキュリティチェックコード、変換テーブル、B社製のプレーヤに対応するセキュリティチェックコード、変換テーブルなどである。コンテンツを利用しようとするプレーヤは、これらのセキュリティチャックコードや変換テーブルから、自己のプレーヤに対応するセキュリティチェックコードや変換テーブルを選択して処理を実行することになる。   Note that the conversion table (Fix-up Table) 106 and the security check code 107 have various types of processing in accordance with various playback devices and playback application types, that is, security check processing and conversion processing. Contains types of code. For example, a security check code and conversion table corresponding to a player made by company A, a security check code corresponding to a player made by company B, a conversion table, and the like. A player who intends to use the content selects a security check code or conversion table corresponding to his / her player from these security chuck codes and conversion tables, and executes processing.

このように、コンテンツコード105には、変換データを適用した変換処理プログラムの他、スタートアップ処理や、セキュリティチェック処理などの様々な処理を実行するための情報やプログラムが含まれる。コンテンツコードの詳細については、後段で詳細に説明する。なお、図に示す情報記録媒体格納データ例は一例であり、格納データは、ディスクの種類などによって多少異なる。以下、これらの各種情報の概要について説明する。   As described above, the content code 105 includes information and programs for executing various processes such as a startup process and a security check process in addition to the conversion process program to which the conversion data is applied. Details of the content code will be described in detail later. Note that the information storage medium stored data example shown in the figure is an example, and the stored data is slightly different depending on the type of the disk. Hereinafter, an overview of these various types of information will be described.

(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)コンテンツコード
コンテンツコード105は、コンテンツ中の所定領域の置き換えデータに対応する変換データを登録した変換テーブル(Fix−up Table)106と、コンテンツ再生を実行するプレーヤ(再生装置)の正当性などを検証するプログラムであるセキュリティチェックコード107が含まれる。
(5) Content code The content code 105 includes a conversion table (Fix-up Table) 106 in which conversion data corresponding to replacement data of a predetermined area in the content is registered, and legitimacy of a player (playback apparatus) that executes content playback. A security check code 107 which is a program for verifying the above is included.

前述したように、変換テーブルやセキュリティチェックコードには、様々な再生装置としてのプレーヤの種別に応じた処理を可能とするため、様々な種類のコードが含まれる。コンテンツを利用しようとするプレーヤは、自己のプレーヤに対応するセキュリティチャックコードや変換テーブルを選択してセキュリティチェック処理とデータ変換処理を実行する。   As described above, the conversion table and the security check code include various types of codes in order to enable processing according to the types of players as various playback devices. A player who intends to use the content selects a security chuck code or a conversion table corresponding to his / her player and executes a security check process and a data conversion process.

コンテンツ再生を実行する再生装置の再生アプリケーションとしてのホストは、データ変換処理を実行するバーチャルマシン(VM)を設定し、バーチャルマシン(VM)において、情報記録媒体100から読み出したコンテンツコードに従って、セキュリティチェック処理およびデータ変換処理を実行して、変換テーブル(Fix−up Table)106の登録エントリを適用して、コンテンツの一部構成データのデータ変換処理を実行する。   A host as a playback application of a playback device that executes content playback sets a virtual machine (VM) that executes data conversion processing, and in the virtual machine (VM), a security check is performed according to the content code read from the information recording medium 100. Processing and data conversion processing are executed, and a registered entry of the conversion table (Fix-up Table) 106 is applied to execute data conversion processing of partial configuration data of content.

情報記録媒体100に格納された暗号化コンテンツ101は、所定の暗号化が施されているとともに、コンテンツ構成データの一部が、正しいデータと異なるブロークンデータによって構成されている。コンテンツ再生に際しては、このブロークンデータを正しいコンテンツデータである変換データに置き換えるデータ上書き処理が必要となる。この変換データを登録したテーブルが変換テーブル(Fix−up Table)106である。ブロークンデータはコンテンツ中に散在して多数設定され、コンテンツ再生に際しては、これらの複数のブロークンデータを変換テーブルに登録された変換データに置き換える(上書き)する処理が必要となる。この変換データを適用することにより、例えば、暗号鍵が漏洩しコンテンツの復号が不正に行なわれた場合であっても、コンテンツの復号のみでは、置き換えデータの存在によって正しいコンテンツの再生が不可能となり、不正なコンテンツ利用を防止することができる。   The encrypted content 101 stored in the information recording medium 100 is subjected to predetermined encryption, and part of the content configuration data is composed of broken data different from correct data. 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) 106. 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.

なお、変換テーブル106には、通常の変換データに加え、コンテンツ再生装置またはコンテンツ再生アプリケーションを識別可能とした識別情報の構成ビットを解析可能としたデータを含む変換データ(Forensic Mark)が含まれる。具体的には、例えば、プレーヤ(ホストアプリケーションを実行する装置)の識別データとしてのプレーヤIDあるいはプレーヤIDに基づいて生成された識別情報が記録された「識別マークを含む変換データ(Forensic Mark)」が含まれる。識別マークを含む変換データは、コンテンツの再生に影響を与えないレベルで、正しいコンテンツデータのビット値をわずかに変更したデータである。   The conversion table 106 includes conversion data (Forensic Mark) including data that enables analysis of the constituent bits of identification information that can identify the content playback apparatus or the content playback application, in addition to normal conversion data. Specifically, for example, “conversion data including identification marks (Forensic Mark)” in which identification information generated based on a player ID or player ID as identification data of a player (a device that executes a host application) 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.

なお、コンテンツコード105には、上述した変換テーブル106を適用したデータ変換処理プログラムの他、スタートアップ処理や、セキュリティチェック処理などの様々な処理を実行するための情報やプログラムが含まれる。コンテンツコードの詳細については、後段で詳細に説明する。   The content code 105 includes information and programs for executing various processes such as a startup process and a security check process in addition to the data conversion process program to which the conversion table 106 is applied. Details of the content code will be described in detail later.

次に、ホスト140とドライブ120の構成、処理の概要について、図1を参照して説明する。情報記録媒体100に格納されたコンテンツの再生処理は、ドライブ120を介してホスト140にデータが転送されて実行される。   Next, configurations of the host 140 and the drive 120 and an outline of processing will be described with reference to FIG. The reproduction process of the content stored in the information recording medium 100 is executed by transferring data to the host 140 via the drive 120.

ホスト140には、再生(プレーヤ)アプリケーション150と、セキュアVM160が設定される。再生(プレーヤ)アプリケーション150は、コンテンツ再生処理部であり、コンテンツ再生処理において実行するドライブとの認証処理、コンテンツ復号、デコード処理などの処理を実行する。   A reproduction (player) application 150 and a secure VM 160 are set in the host 140. The reproduction (player) application 150 is a content reproduction processing unit, and executes processing such as authentication processing with a drive, content decoding, and decoding processing executed in the content reproduction processing.

セキュアVM160は、コンテンツコード105を適用した処理を実行する。コンテンツコード105には、変換テーブル106、セキュリティチェックコード107が含まれ、セキュアVM160は、自己のプレーヤに対応するセキュリティチェックコード107を選択して、セキュリティチェック処理を実行し、さらに、変換テーブル106を利用したコンテンツの一部データの置き換え処理を実行する。なお、セキュアVM160は、ホスト140内にバーチャルマシンとして設定される。バーチャルマシン(VM)は中間言語を直接解釈して実行する仮想コンピュータであり、プラットフォームに依存しない中間言語での命令コード情報を情報記録媒体100から読み出して解釈実行する。   The secure VM 160 executes processing to which the content code 105 is applied. The content code 105 includes a conversion table 106 and a security check code 107. The secure VM 160 selects the security check code 107 corresponding to its own player, executes security check processing, and further stores the conversion table 106. Execute replacement processing of partial data of used content. The secure VM 160 is set as a virtual machine in the host 140. A virtual machine (VM) is a virtual computer that directly interprets and executes an intermediate language, reads instruction code information in an intermediate language independent of the platform from the information recording medium 100, and interprets and executes it.

セキュアVM160は、情報記録媒体100に記録された暗号化コンテンツ101の利用に適用するプログラムまたは適用情報を含むコンテンツコード105を取得して、取得したコンテンツコード105に従ってデータ処理を実行するデータ処理部として機能する。   The secure VM 160 is a data processing unit that acquires a content code 105 including a program or application information applied to use of the encrypted content 101 recorded on the information recording medium 100 and executes data processing according to the acquired content code 105. Function.

セキュアVM160は、セキュアVMのアクセス可能なメモリであるメモリb161からプレーヤ情報を取得し、プレーヤ情報に対応するコンテンツコードを情報記録媒体から選択して実行する。なお、コンテンツコードの一部は、暗号化データとして設定されており、この暗号化データを復号するための暗号鍵(ノード鍵)がメモリb161に格納されている。セキュアVM160は、メモリb161から選択した鍵を適用してコンテンツコードの復号処理を実行する。   The secure VM 160 acquires player information from the memory b161, which is a memory accessible by the secure VM, and selects and executes a content code corresponding to the player information from the information recording medium. A part of the content code is set as encrypted data, and an encryption key (node key) for decrypting the encrypted data is stored in the memory b161. The secure VM 160 applies the key selected from the memory b 161 and executes content code decryption processing.

メモリb161には、階層構成を持つ鍵ツリーにおいて、情報処理装置の対応付けられた最下層ノードとしてのリーフから頂点ノードに至るルート上の各ノードに対応して設定されたノード鍵を含む暗号鍵セットを格納している。セキュアVM160は、コンテンツコードに対応する鍵指定情報に従ってメモリb161からノード鍵を選択して選択した鍵を適用してコンテンツコードの復号処理を実行する。なお、メモリb161に格納される暗号鍵セットの詳細、およびセキュアVM160の実行する処理の詳細については後段で説明する。   In the memory b161, an encryption key including a node key set corresponding to each node on the route from the leaf as the lowest layer node associated with the information processing device to the vertex node in the key tree having a hierarchical structure Stores the set. The secure VM 160 selects a node key from the memory b 161 according to the key designation information corresponding to the content code, and applies the selected key to execute the decryption process of the content code. Details of the encryption key set stored in the memory b161 and details of processing executed by the secure VM 160 will be described later.

再生(プレーヤ)アプリケーション150と、セキュアVM160間の情報伝達、あるいは処理要求は、再生(プレーヤ)アプリケーション150からセキュアVM160に対する割り込み(INTRP)と、セキュアVM160から再生(プレーヤ)アプリケーション150に対する応答(Call)処理のシーケンスによって実行される。アプリケーション150からセキュアVM160に対する割り込み(INTRP)と、セキュアVM160から再生(プレーヤ)アプリケーション150に対する応答(Call)処理のシーケンスによって行なわれる。   An information transmission or processing request between the playback (player) application 150 and the secure VM 160 includes an interrupt (INTRP) from the playback (player) application 150 to the secure VM 160, and a response (Call) from the secure VM 160 to the playback (player) application 150. It is executed by a sequence of processing. This is performed by a sequence of an interrupt (INTRP) from the application 150 to the secure VM 160 and a response (Call) process from the secure VM 160 to the playback (player) application 150.

ホスト140の実行する主な処理について説明する。コンテンツの利用に先立ち、ドライブ120と、ホスト140間では相互認証処理が実行され、この認証処理の成立によって双方の正当性が確認された後、ドライブからホストに暗号化コンテンツが転送され、ホスト側でコンテンツの復号処理が行なわれ、さらに上述の変換テーブルによるデータ変換処理が実行されてコンテンツ再生が行なわれる。   The main processing executed by the host 140 will be described. Prior to the use of the content, mutual authentication processing is executed between the drive 120 and the host 140. 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.

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

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

ホスト140は、ドライブ120との相互認証処理や、データ転送制御などを実行するデータ処理部151、暗号化コンテンツの復号処理を実行する復号処理部153、前述の変換テーブル105の登録データに基づくデータ変換処理を実行するデータ変換処理部154、デコード(例えばMPEGデコード)処理を実行するデコード処理部155を有する。   The host 140 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.

復号処理部153では、メモリa156に格納された各種情報、および、情報記録媒体100からの読み取りデータを適用して、コンテンツの復号に適用する鍵を生成し、暗号化コンテンツ101の復号処理を実行する。データ変換処理部154は、情報記録媒体100から取得されるデータ変換処理プログラムに従って、情報記録媒体100から取得される変換テーブルに登録された変換データを適用してコンテンツの構成データの置き換え処理(上書き)を実行する。デコード処理部155は、デコード(例えばMPEGデコード)処理を実行する。   The decryption processing unit 153 applies various information stored in the memory a 156 and data read from the information recording medium 100, generates 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のメモリa156には、デバイス鍵:Kdや、相互認証処理に適用する鍵情報や復号に適用する鍵情報などが格納される。なお、コンテンツの復号処理の詳細については後述する。デバイス鍵:Kdは、先に説明したMKBの処理に適用する鍵である。MKBは有効なライセンスを持つユーザの情報処理装置に格納されたデバイス鍵[Kd]に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵[Km]の取得を可能とした鍵情報ブロックであり、暗号化コンテンツの復号に際して、情報処理装置150は、メモリa156に格納されたデバイス鍵:Kdを適用してMKBの処理を実行することになる。なお、コンテンツの復号処理の詳細については後述する。   The memory a156 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 a156. 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 correspondence example of title keys. 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.

[3.変形データを含むコンテンツのデータ構成およびデータ変換処理の概要]
次に、変形データを含むコンテンツの構成およびデータ変換処理の概要について説明する。情報記録媒体100に含まれる暗号化コンテンツ101は、前述したように、構成データの一部が、正しいコンテンツデータと異なるデータによって置き換えられたブロークンデータとして設定され、復号処理のみでは正しいコンテンツ再生が実行されず、再生を行なう場合は、ブロークンデータを変換テーブルに登録された変換データに置き換える処理が必要となる。
[3. Overview of content data structure including transformation data and data conversion process]
Next, the configuration of content including deformation data and an outline of data conversion processing will be described. As described above, the encrypted content 101 included in the information recording medium 100 is set as broken data in which a part of the configuration data is replaced with data different from the correct content data, and correct content reproduction is executed only by the decryption process. However, when playing back, it is necessary to replace the broken data with the conversion data registered in the conversion table.

図4を参照して、情報記録媒体に格納されるコンテンツの構成および再生処理の概要について説明する。情報記録媒体100には例えば映画などのAV(Audio Visual)コンテンツが格納される。これらのコンテンツは暗号化が施され、所定のライランスを持つ再生装置においてのみ取得可能な暗号鍵を適用した処理によって復号の後、コンテンツ再生が可能となる。具体的なコンテンツ再生処理については後段で説明する。情報記録媒体100に格納されるコンテンツは、暗号化のみならず、コンテンツの構成データが変形データによって置き換えられた構成を持つ。   With reference to FIG. 4, an outline of a configuration of content stored in the information recording medium and reproduction processing will be described. The information recording medium 100 stores AV (Audio Visual) content such as a movie. These contents are encrypted and can be reproduced after being decrypted by a process using an encryption key that can be obtained only by a reproducing apparatus having a predetermined license. Specific content reproduction processing will be described later. The content stored in the information recording medium 100 has not only encryption but also a configuration in which content configuration data is replaced with modified data.

図4には、情報記録媒体100に格納される記録コンテンツ291の構成例を示している。記録コンテンツ291は変形のされていない正常なコンテンツデータ292と、変形が加えられ破壊されたコンテンツであるブロークンデータ293によって構成される。ブロークンデータ293は、本来のコンテンツに対してデータ処理によって破壊が施されたデータである。従って、このブロークンデータを含むコンテンツ291を適用して正常なコンテンツ再生は実行できない。   FIG. 4 shows a configuration example of the recorded content 291 stored in the information recording medium 100. The recorded content 291 includes normal content data 292 that is not deformed and broken data 293 that is content that has been deformed and destroyed. Broken data 293 is data in which the original content is destroyed by data processing. Therefore, normal content reproduction cannot be performed by applying the content 291 including the broken data.

コンテンツ再生を行なうためには、記録コンテンツ291に含まれるブロークンデータ293を正常なコンテンツデータに置き換える処理を行なって再生コンテンツ296を生成することが必要となる。各ブロークンデータ領域に対応する正常なコンテンツデータとしての変換用のデータ(変換データ)は、情報記録媒体100に記録されたコンテンツコード105内の変換テーブル(FUT(Fix-Up Table))106(図1参照)に登録された変換エントリ295から変換データを取得して、ブロークンデータ領域のデータを置き換える処理を実行して、再生コンテンツ296を生成して再生を実行する。   In order to perform content playback, it is necessary to generate the playback content 296 by performing processing for replacing the broken data 293 included in the recorded content 291 with normal content data. Data for conversion (conversion data) as normal content data corresponding to each broken data area is converted into a conversion table (FUT (Fix-Up Table)) 106 in the content code 105 recorded in the information recording medium 100 (FIG. 1), conversion data is acquired from the conversion entry 295 registered in (1), and the process of replacing the data in the broken data area is executed to generate playback content 296 and execute playback.

なお、再生コンテンツ296の生成に際しては、ブロークンデータ293を正常なコンテンツデータとしての変換データ297に置き換える処理に加え、記録コンテンツ291の一部領域を、コンテンツ再生装置またはコンテンツ再生アプリケーションを識別可能とした識別情報(例えばプレーヤID)の構成ビットを解析可能としたデータ(Forensic Mark)を含む識別子設定変換データ298によって置き換える処理を行なう。例えば、不正にコピーされたコンテンツが流出した場合、流出コンテンツ中の識別子設定変換データ298の解析によって、不正コンテンツの流出源を特定することが可能となる。   When generating the playback content 296, in addition to the process of replacing the broken data 293 with the conversion data 297 as normal content data, a part of the recorded content 291 can be identified by the content playback device or the content playback application. A process of replacing the constituent bits of the identification information (for example, player ID) with identifier setting conversion data 298 including data (Forensic Mark) that can be analyzed is performed. For example, when illegally copied content is leaked, it is possible to identify the source of illegal content by analyzing the identifier setting conversion data 298 in the leaked content.

なお、変換データを含む変換テーブルの構成データとしての変換エントリは、コンテンツの構成データ中の特定パケットに分散して重複記録する構成としてもよい。すなわち、変換データは、図1に示す変換テーブル106に格納されるとともに、暗号化コンテンツ101にも分散記録され、重複して記録される。コンテンツ再生を実行する情報処理装置は、変換テーブル106に格納された変換データを取得してデータ置き換えを実行するか、あるいはコンテンツに分散は記録された変換エントリを取得してデータ置き換えを実行するかのいずれかの処理を行なう。   Note that the conversion entries as the configuration data of the conversion table including the conversion data may be distributed and recorded in a specific packet in the content configuration data. That is, the conversion data is stored in the conversion table 106 shown in FIG. 1 and is also distributed and recorded in the encrypted content 101 and is recorded in duplicate. Whether the information processing apparatus that executes content reproduction acquires the conversion data stored in the conversion table 106 and executes data replacement, or whether the distribution is recorded in the content and acquires the conversion entry to execute data replacement One of the processes is performed.

[4.コンテンツ再生処理]
次に、図5を参照して、ホストの実行するコンテンツ再生処理について説明する。図5には、左から暗号化コンテンツの格納された情報記録媒体330、情報記録媒体330をセットし、データの読み取りを実行するドライブ340、ドライブとデータ通信可能に接続され、情報記録媒体330に格納されたコンテンツをドライブ340を介して取得して再生処理を実行する再生アプリケーションを実行するホスト345を示している。
[4. Content playback processing]
Next, content reproduction processing executed by the host will be described with reference to FIG. In FIG. 5, the information recording medium 330 storing the encrypted content and the information recording medium 330 are set from the left, and the drive 340 for reading data is connected to the information recording medium 330 so as to be able to perform data communication with the drive. A host 345 that executes a playback application that acquires stored content via the drive 340 and executes playback processing is shown.

なお、図5に示すホスト345は、コンテンツの復号、デコード、データ変換処理などを実行する再生(プレーヤ)アプリケーションブロック350と、情報記録媒体に記録されたコンテンツコードに含まれるセキュリティチェックコードに基づくセキュリティチェック処理および変換テーブルに基づく変換処理に適用するパラメータ算出処理などを実行するセキュアVM360を有するセキュアVM360ブロックを区分して示してある。   The host 345 shown in FIG. 5 performs security based on a playback (player) application block 350 that executes content decryption, decoding, data conversion processing, and the like, and a security check code included in the content code recorded on the information recording medium. A secure VM 360 block having a secure VM 360 that executes a parameter calculation process applied to a check process and a conversion process based on a conversion table is shown separately.

情報記録媒体330は、MKB(Media Key Block)331、タイトル鍵ファイル332、暗号化コンテンツ333、コンテンツコード334を記録データとして含む。暗号化コンテンツ333は、先に、図4を参照して説明したように、一部を変換テーブルから取得するデータに置き換える必要のあるコンテンツである。   The information recording medium 330 includes an MKB (Media Key Block) 331, a title key file 332, an encrypted content 333, and a content code 334 as recording data. As described above with reference to FIG. 4, the encrypted content 333 is content that needs to be partially replaced with data acquired from the conversion table.

コンテンツコード334には、コンテンツ再生を実行するプレーヤ(再生装置)の正当性などを検証するためのプログラムなどによって構成されるセキュリティチェックコード335と、コンテンツ中の所定領域の置き換えデータに対応する変換データを登録した変換テーブル(Fix−up Table)336が含まれる。ホスト345は、MKBの処理に適用するデバイス鍵351を保持している。   The content code 334 includes a security check code 335 configured by a program for verifying the legitimacy of a player (playback apparatus) that executes content playback, and conversion data corresponding to replacement data of a predetermined area in the content. Is included in the conversion table (Fix-up Table) 336. The host 345 holds a device key 351 applied to MKB processing.

図5に示すホスト345がドライブ340を介して情報記録媒体330の格納コンテンツを取得して再生する処理シーケンスについて説明する。まず、情報記録媒体330の格納コンテンツの読み出しに先立ち、ホスト345とドライブ340は、ステップS101において、相互認証を実行する。この相互認証は、ホストおよびドライブがそれぞれ正当な機器またはアプリケーションソフトであるかを確認する処理である。この相互認証処理シーケンスとしては、様々な処理が適用可能である。相互認証処理によって、ドライブ340とホスト345は共通の秘密鍵としてのセッション鍵(Ks)を共有する。   A processing sequence in which the host 345 shown in FIG. 5 acquires and reproduces the stored content of the information recording medium 330 via the drive 340 will be described. First, prior to reading the content stored in the information recording medium 330, the host 345 and the drive 340 perform 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. Through the mutual authentication process, the drive 340 and the host 345 share a session key (Ks) as a common secret key.

ステップS101において、ホストドライブ間の相互認証が実行され、セッション鍵(Ks)を共有した後、ホスト345の再生(プレーヤ)アプリケーション350は、ステップS102において、情報記録媒体330に記録されたMKB331を、ドライブを介して取得して、メモリに格納されたデバイス鍵351を適用したMKB331の処理を実行して、MKBからメディア鍵(Km)を取得する。   In step S101, mutual authentication between the host drives is performed, and after sharing the session key (Ks), the playback (player) application 350 of the host 345 reads the MKB 331 recorded on the information recording medium 330 in step S102. The media key (Km) is acquired from the MKB by executing the process of the MKB 331 to which the device key 351 obtained by the drive and stored in the memory is applied.

前述したように、MKB(Media Key Block)331は、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックであり、有効なライセンスを持つ装置に格納されたデバイス鍵(Kd)に基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディア鍵(Km)の取得を可能とした鍵情報ブロックである。   As described above, the MKB (Media Key Block) 331 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)を適用して、情報記録媒体330から読み取ったタイトル鍵ファイル332の復号を実行して、タイトル鍵(Kt)を取得する。情報記録媒体330に格納されるタイトル鍵ファイル332はメディア鍵によって暗号化されたデータを含むファイルであり、メディア鍵を適用した処理によってコンテンツ復号に適用するタイトル鍵(Kt)を取得することができる。なお、ステップS103の復号処理は、例えばAES暗号アルゴリズムが適用される。   Next, in step S103, the title key file 332 read from the information recording medium 330 is decrypted by applying the media key (Km) obtained in the MKB process in step S102, and the title key (Kt) is obtained. To do. The title key file 332 stored in the information recording medium 330 is a file including data encrypted with 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.

次に、ホスト345の再生(プレーヤ)アプリケーション350は、ドライブ340を介して情報記録媒体330に格納された暗号化コンテンツ333を読み出して、トラックバッファ352に読み出しコンテンツを格納し、このバッファ格納コンテンツについて、ステップS104において、タイトル鍵(Kt)を適用した復号処理を実行し、復号コンテンツを取得する。   Next, the playback (player) application 350 of the host 345 reads the encrypted content 333 stored in the information recording medium 330 via the drive 340, stores the read content in the track buffer 352, and the buffer stored content. In step S104, decryption processing using the title key (Kt) 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).

ステップS105において、セキュアVM361は、データ変換に必要となるパラメータなどをコンテンツコード334から生成する処理を実行する。その後、ステップS106において、リアルタイムイベントハンドラ356の制御によって、テーブル復元&データ変換処理が実行される。リアルタイムイベントハンドラ356の制御により、再生(プレーヤ)アプリケーション350は、コンテンツの構成データとしてのセグメントの切り替えに応じてパラメータ算出要求をセキュアVM361に割り込み(INTRP)として出力し、セキュアVM361からパラメータを、順次受領し、変換テーブルブロックの復号または演算を実行して平文変換テーブルブロックを取得し、取得した変換テーブルブロックに含まれる変換エントリを取得する。   In step S105, the secure VM 361 executes a process of generating parameters and the like necessary for data conversion from the content code 334. Thereafter, in step S106, the table restoration & data conversion process is executed under the control of the real-time event handler 356. Under the control of the real-time event handler 356, the playback (player) application 350 outputs a parameter calculation request to the secure VM 361 as an interrupt (INTRP) in response to the switching of the segment as the content configuration data, and sequentially receives the parameters from the secure VM 361. Receiving, executing decoding or calculation of the conversion table block to acquire a plaintext conversion table block, and acquiring a conversion entry included in the acquired conversion table block.

変換エントリには、変換データ、すなわち、
(a)変換データ
(b)識別子設定変換データ(Forensic Mark)
と、これらの変換データのコンテンツにおける記録位置指定情報が記録されており、再生(プレーヤ)アプリケーション350は、ステップS106において、指定位置に書き込むデータ変換処理をコンテンツ再生処理または外部出力処理に並行したリアルタイム処理として実行する。
The conversion entry contains conversion data, that is,
(A) Conversion data (b) Identifier setting conversion data (Forensic Mark)
The recording position designation information in the contents of the converted data is recorded, and in step S106, the reproduction (player) application 350 performs the data conversion process to be written in the designated position in real time in parallel with the content reproduction process or the external output process. Run as a process.

セキュアVM361は、例えばコンテンツの構成データとしてのセグメントごとに適用する異なるパラメータを、コンテンツコードに従って生成して出力する。例えば、パラメータ(SP1,SP2,SP3・・・)は所定のコンテンツ部分データ単位であるセグメントに対応する変換エントリとの排他論理和(XOR)演算パラメータである場合、ステップS303におけるテーブル復元処理としては、
[変換エントリ1](XOR)[SP1]、
[変換エントリ2](XOR)[SP2]、
[変換エントリ3](XOR)[SP3]、
: :
これらの排他論理和演算処理を実行して、変換テーブルブロックデータに含まれる変換エントリを取得する。なお、上記式において、[A](XOR)[B]は、AとBの排他論理和演算を意味するものとする。
The secure VM 361 generates and outputs different parameters according to the content code, for example, applied to each segment as content configuration data. For example, when the parameter (SP1, SP2, SP3...) Is an exclusive OR (XOR) operation parameter with a conversion entry corresponding to a segment that is a predetermined content partial data unit, the table restoration processing in step S303 is as follows. ,
[Conversion entry 1] (XOR) [SP1],
[Conversion entry 2] (XOR) [SP2],
[Conversion entry 3] (XOR) [SP3],
::
These exclusive OR operations are executed to obtain conversion entries included in the conversion table block data. In the above formula, [A] (XOR) [B] means an exclusive OR operation of A and B.

このように、情報記録媒体に記録されたコンテンツ333に含まれる変換エントリは、パラメータ(SP1,SP2,SP3・・・)と排他論理和演算されて格納されている。このパラメータは、セキュアVM361によって逐次、取得され出力される。   In this way, the conversion entry included in the content 333 recorded on the information recording medium is stored by performing an exclusive OR operation with the parameters (SP1, SP2, SP3...). This parameter is sequentially acquired and output by the secure VM 361.

ステップS106のテーブル復元&データ変換処理においては、パラメータ(SP1,SP2,SP3・・・)を適用した演算または暗号処理よって取得した復元された変換エントリから変換データを取得して、コンテンツに含まれるブロークンデータを正当なコンテンツ構成データである変換データに置き換え、さらに、識別子設定変換データをコンテンツの一部データと入れ替えるデータ上書き処理を実行し、平文TSバッファ353の格納データを変換処理済みデータに変更する。このデータ変換処理の概要について、図6を参照して説明する。   In the table restoration & data conversion process in step S106, the conversion data is obtained from the restored conversion entry obtained by the operation applying the parameters (SP1, SP2, SP3...) Or the encryption process, and included in the content. Replace the broken data with the conversion data that is valid content configuration data, and execute the data overwrite process to replace the identifier setting conversion data with the partial data of the content, and change the data stored in the plaintext TS buffer 353 to the converted data To do. An outline of the data conversion process will be described with reference to FIG.

情報記録媒体に格納された暗号化コンテンツ333が、一旦、ホスト側のトラックバッファ352に格納される。図6(1)に示すトラックバッファ格納データ401である。ホスト側の復号処理によって、トラックバッファ格納データ401としての暗号化コンテンツの復号が実行されて、復号結果データが平文TSバッファ353に格納される。図6(2)に示す復号結果データ402である。   The encrypted content 333 stored in the information recording medium is temporarily stored in the track buffer 352 on the host side. This is the track buffer storage data 401 shown in FIG. 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を、正しいコンテンツ構成データとしての変換データ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 processing for replacing the broken data 403 with converted data 404 as correct content configuration data. 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.

さらに、ホストの実行するデータ変換処理は、ブロークンデータを正常なコンテンツデータである変換データに置き換える処理のみならず、図6に示すように、識別子設定変換データ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 which is normal content data, but also a part of the decryption result data 402 by the identifier setting conversion data 405 as shown in FIG. Execute processing to replace configuration data.

識別子は、前述したようにコンテンツ再生装置またはコンテンツ再生アプリケーションを識別可能とした識別情報の構成ビットを解析可能としたデータである。具体的には例えば、ホストアプリケーションを実行するプレーヤとしての情報処理装置の識別情報(プレーヤID)の構成データまたは、プレーヤIDに基づいて生成される識別マークである。識別子設定変換データは、先に説明したようにコンテンツの再生に影響を与えないレベルで、正しいコンテンツデータのビット値をわずかに変更したデータである。   The identifier 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 the content playback application as described above. 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 identifier setting conversion data 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 as described above.

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

情報記録媒体に格納される変換テーブルには、図6に示す変換データ404、識別子設定変換データ405が多数登録されており、さらに、これらの書き込み位置情報についても登録されている。この変換テーブル格納情報に基づくデータ変換処理を実行することで、平文TSバッファ353に格納されたデータは、図6(3)に示す変換処理済みデータ406に置き換えられることになる。   In the conversion table stored in the information recording medium, a large number of conversion data 404 and identifier setting conversion data 405 shown in FIG. 6 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.

その後、変換済みのTS(トランスポートストリーム)は、ネットワークなどを介して外部出力され、外部の再生機器において再生される。あるいは、ステップS107において、デマルチプレクサによる処理によって、トランスポートストリーム(TS)からエレメンタリストリーム(ES)への変換が実行され、さらに、デコード処理(ステッブS108)が行なわれた後、ディスプレイスピーカを介して再生される。   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 S107, conversion from the transport stream (TS) to the elementary stream (ES) is performed by processing by the demultiplexer, and further, decoding processing (step S108) is performed, and then via the display speaker. Played.

[5.セキュリティチェックコードを適用した処理]
上述したコンテンツ再生処理の開始前に、セキュアVM361は、コンテンツコード334中のセキュリティチェックコード335を適用したセキュリティチェックを実行する。なお、セキュアVM361は、さらに必要に応じてコンテンツ再生処理の実行期間においてもセキュリティチェックコード335を適用したセキュリティチェックを実行する。
[5. Processing with security check code applied]
Prior to the start of the content reproduction process described above, the secure VM 361 performs a security check to which the security check code 335 in the content code 334 is applied. Note that the secure VM 361 further executes a security check to which the security check code 335 is applied even during the execution period of the content reproduction process as necessary.

セキュアVM361は、イベントハンドラ354の制御の下、コンテンツコード334に含まれるセキュリティチェックコード335に従って、プレーヤ(再生装置)の正当性などの検証処理を実行する。なお、前述したように、変換テーブル(Fix−up Table)336や、セキュリティチェックコード335は、再生装置としてのプレーヤの種別に応じた処理を実行可能とするため、様々な種類のコードを含む設定とされる。   Under the control of the event handler 354, the secure VM 361 executes verification processing such as the validity of the player (playback device) according to the security check code 335 included in the content code 334. As described above, the conversion table (Fix-up Table) 336 and the security check code 335 are set to include various types of codes in order to execute processing according to the type of player as a playback device. It is said.

セキュアVM361は、プレーヤ情報355として再生装置の記憶部に格納されたプレーヤ証明書(Player Certificate)や、プレーヤ構成、例えば再生装置の有するポートに関する情報などのプレーヤ構成情報などを取得して、コンテンツコード334中に含まれるセキュリティチェックコード335から、自己のプレーヤに対応するセキュリティチェックコードを選択して、セキュリティチェック処理を実行する。すなわち、情報処理装置またはコンテンツ利用アプリケーションに対応する識別情報または属性情報の少なくともいずれかをプレーヤ情報として取得し、このようなプレーヤ情報に対応するセキュリティチェックコードを選択して、選択コードに基づくセキュリティチェック処理を実行する。   The secure VM 361 acquires a player certificate (Player Certificate) stored in the storage unit of the playback device as the player information 355, player configuration information such as information about a port of the playback device, for example, a port of the playback device, and the like. The security check code corresponding to the player is selected from the security check codes 335 included in 334, and the security check process is executed. That is, at least one of identification information and attribute information corresponding to the information processing apparatus or the content use application is acquired as player information, a security check code corresponding to such player information is selected, and a security check based on the selected code is performed. Execute the process.

このように、情報記録媒体に格納されるコンテンツを利用する場合は、セキュアVM361においてセキュリティチェックが実行される。セキュアVM361におけるセキュリティチェックにおいてコンテンツの利用が許容された正当な機器であることが証明され、また、不正なコンテンツの外部出力などが行なわれないことを機器構成情報などに基づいて検証した後、コンテンツの再生が行なわれることになる。   As described above, when the content stored in the information recording medium is used, a security check is executed in the secure VM 361. In the security check in the secure VM 361, it is proved that the device is a legitimate device in which the use of the content is permitted, and after verifying based on the device configuration information that the illegal output of the content is not performed, the content Will be played.

このようなセキュリティチェックは、再生装置の構成、再生アプリケーションの種類などに応じて異なる処理が要求されることがあり、このため、セキュリティチェックコードは、様々な機器やアプリケーションに対応したコードのセットとしてコンテンツコード中に記録されている。   Such a security check may require different processing depending on the configuration of the playback device, the type of playback application, etc. For this reason, the security check code is a set of codes corresponding to various devices and applications. It is recorded in the content code.

情報記録媒体におけるコンテンツコードの記録態様について、図を参照して説明する。図7は、情報記録媒体に格納されるデータ全体のディレクトリ構成を示す図である。情報記録媒体の格納データは、大きく2つのデータに区分される。1つは、コンテンツ管理データ、CPSユニット鍵、コンテンツ利用制御情報(CCI)、コンテンツなどを含むコンテンツ関連データを設定したBDMVディレクトリと、セキュリティチェックコード、変換テーブル等を含むコンテンツコードを設定したBDSVMディレクトリを有する。   The recording mode of the content code in the information recording medium will be described with reference to the drawings. FIG. 7 is a diagram showing a directory structure of the entire data stored in the information recording medium. Data stored in the information recording medium is roughly divided into two types of data. One is a BDMV directory in which content related data including content management data, CPS unit key, content usage control information (CCI), content, etc. is set, and a BDSVM directory in which content codes including security check code, conversion table, etc. are set. Have

これらの各ディレクトリの詳細例について、図8、図9を参照して説明する。先に、図2を参照して説明した階層構造を持つコンテンツを情報記録媒体に格納する場合、様々なデータ、あるいはコンテンツコード等のプログラムなどは、個別のファイルとして記録され、例えば図8に示すディレクトリ設定に従って情報記録媒体に格納される。
(A)図2におけるインデックス210は、図8に示すディレクトリ中のindex.bdmvファイル
(B)図2におけるムービーオブジェクト220は図8に示すディレクトリ中のMovieObject.bdmvファイル
(C)図2におけるプレイリスト230は図8に示すディレクトリ中のPLAYLISTディレクトリ下のファイル、
(D)図2におけるクリップ240は図8に示すディレクトリ中のCLIPINFディレクトリ下のファイルとSTREAMディレクトリ下のファイルで同じファイル番号持つものの対に対応する。
(E)その他、音声データやフォントデータを格納したAUXDATAファイル、メタデータを格納したMETAファイル、BD−Jオブジェクトを格納したBDOJファイルなどが情報記録媒体に格納される。
Detailed examples of these directories will be described with reference to FIGS. When content having the hierarchical structure described above with reference to FIG. 2 is stored in an information recording medium, various data or programs such as content codes are recorded as individual files, for example, as shown in FIG. It is stored in the information recording medium according to the directory setting.
(A) Index 210 in FIG. 2 is an index.bdmv file in the directory shown in FIG. 8 (B) Movie object 220 in FIG. 2 is a MovieObject.bdmv file in the directory shown in FIG. 8 (C) 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 having the same file number in the directory shown in FIG.
(E) In addition, an AUXDATA file storing audio data and font data, a META file storing metadata, a BDOJ file storing BD-J objects, and the like are stored in the information recording medium.

情報記録媒体に格納されるコンテンツは、前述したように、コンテンツの構成データの一部が、正しいコンテンツデータと異なるデータによって置き換えられたブロークンデータとして設定され、復号処理のみでは正しいコンテンツ再生が実行されず、再生を行なう場合は、ブロークンデータを変換テーブルに登録されたデータ(変換データ)に置き換える処理が必要となる。この置き換え処理には、情報記録媒体に格納されたコンテンツコードを適用して、変換テーブル(Fix−up Table)の登録データによるデータ変換処理を実行する。   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 broken data with data (conversion data) registered in the conversion table. In this replacement process, a content code stored in the information recording medium is applied, and a data conversion process using registration data of a conversion table (Fix-up Table) is executed.

この変換テーブル、およびセキュリティチェックコードを含むコンテンツコードについても、個別のファイルとして情報記録媒体に格納される。コンテンツコードを設定したディレクトリ構成を図9に示す。図9は、例えば、図8のディレクトリ構造を持つAVコンテンツに対して作成されるコンテンツコードのディレクトリ構成である。   The conversion table and the content code including the security check code are also stored in the information recording medium as individual files. FIG. 9 shows the directory structure in which the content code is set. FIG. 9 shows a directory structure of content codes created for the AV content having the directory structure of FIG. 8, for example.

コンテンツコードは、前述したようにセキュリティチェックコードと、変換テーブルを含む。情報記録媒体に格納されるコンテンツコードは、図9に示すように、BDSVMディレクテリに設定された複数の個別のファイル[nnnnn.svm]に格納される。さらに、BACKUPディレクトリにコピーデータとしてのバックアップデータが設定される。   As described above, the content code includes a security check code and a conversion table. As shown in FIG. 9, the content code stored in the information recording medium includes a plurality of individual files [nnnnn. svm]. Further, backup data as copy data is set in the BACKUP directory.

これらのコンテンツコードの各々のファイルは、例えば、
(a)全コンテンツ&全プレーヤ(装置または再生アプリ)共通のコンテンツコード
(b)コンテンツ固有のコンテンツコード
(c)プレーヤ(装置または再生アプリ)固有のコンテンツコード
(d)コンテンツ&プレーヤ(装置または再生アプリ)固有のコンテンツコード
などの各カテゴリに分類される。
Each file of these content codes is, for example,
(A) Content code common to all contents & all players (device or playback application) (b) Content code specific to content (c) Content code specific to player (device or playback application) (d) Content & player (device or playback) App) It is classified into each category such as unique content code.

上記の(a)〜(d)のカテゴリ分類とすることで、コンテンツコードは、それぞれ独立したデータファイルとして設定可能であり、これらのコンテンツコードファイルは、再利用可能である。すなわち、異なるコンテンツや異なるプレーヤ(装置または再生アプリケーション)に対しても共通に利用可能な場合がある。このようなコンテンツコードの再利用構成について、図10を参照して説明する。   By using the above category classifications (a) to (d), the content codes can be set as independent data files, and these content code files can be reused. In other words, it may be used in common for different contents and different players (devices or playback applications). Such a content code reuse configuration will be described with reference to FIG.

図10において、例えばコンテンツコードファイル601〜604は、各コンテンツコード制作エンティテイまたは提供エンティテイが保持するコンテンツコードファイルであり、それぞれ、
コンテンツ,プレーヤ共通コンテンツコードファイル[00000.svm]601、
プレーヤ固有コンテンツコードファイル[00001.svm][00002.svm]603、
コンテンツ固有コンテンツコードファイル[00003.svm]602、
コンテンツ,プレーヤ固有コンテンツコードファイル[00004.svm]604、
これらのコンテンツコードファイルを示している。
In FIG. 10, for example, content code files 601 to 604 are content code files held by each content code production entity or providing entity,
Content and player common content code file [00000. svm] 601,
Player-specific content code file [00001. svm] [00002. svm] 603,
Content-specific content code file [00003. svm] 602,
Content, player-specific content code file [00004. svm] 604,
These content code files are shown.

これらのコンテンツコードファイル601〜604には、各コンテンツコード制作エンティテイまたは提供エンティテイによる電子署名が付与されて、各エンティテイにおいて保管される。   These content code files 601 to 604 are given an electronic signature by each content code production entity or providing entity and stored in each entity.

新たなコンテンツを記録した情報記録媒体を制作する場合、各エンティテイは、既に他のコンテンツ記録情報記録媒体において利用したこれらのコンテンツコードファイル601〜604を再利用することができる。   When producing an information recording medium in which new content is recorded, each entity can reuse these content code files 601 to 604 already used in other content recording information recording media.

なお、コンテンツコードは改竄を防止するめため、各コンテンツコードファイルは、管理センタに提供され、管理センタにおいて、電子署名を設定して、情報記録媒体610に格納する。情報記録媒体610に記録されるコンテンツコードには、管理センタ(KIC)による電子署名、および管理センタの設定した固有IDが付与される。情報記録媒体610に記録されるコンテンツコード620には、図に示すようにセキュリティチェックコード621、および変換テーブル622が含まれる。具体的なディレクトリ構成は、ディレクトリ構成630に示すように、各エンティテイの生成したコンテンツコードが個別に設定された構成とされる。   In order to prevent falsification of the content code, each content code file is provided to the management center, and an electronic signature is set and stored in the information recording medium 610 in the management center. The content code recorded on the information recording medium 610 is given an electronic signature by the management center (KIC) and a unique ID set by the management center. The content code 620 recorded on the information recording medium 610 includes a security check code 621 and a conversion table 622 as shown in the figure. As a specific directory structure, as shown in a directory structure 630, a content code generated by each entity is individually set.

このように、コンテンツコードは、様々なコンテンツに対応して再利用可能であり、各コンテンツに応じて変更の必要なコンテンツコードと、再利用可能なコンテンツコードを、適宜、組み合わせて、情報記録媒体に記録されることになる。   As described above, the content code can be reused corresponding to various contents, and an information recording medium is appropriately combined with a content code that needs to be changed according to each content and a reusable content code. Will be recorded.

さらに、図9に示すように、各コンテンツコードファイルは、以下のような分類によって設定する構成とすることも可能である。
コンテンツコードファイル[00000.svm]:プレーヤ情報の判別に適用するコード
コンテンツコードファイル[00001.svm],[00002.svm]:プレーヤ情報に応じて選択されるコード(たとえば00001.svmはプレーヤA用のコード、
00002.svmはプレーヤB用のコードなど)
コンテンツコードファイル[00003.svm]:プレーヤ情報によらない処理(たとえばコンテンツ発売時よりも後に発売される機器については、00003.svmに記載されたデフォルトのコードを実行する)
Furthermore, as shown in FIG. 9, each content code file may be set according to the following classification.
Content code file [00000. svm]: code applied to discriminating player information content code file [00001. svm], [00002. svm]: a code selected according to the player information (for example, 00001.svm is a code for player A,
00002.svm is the code for player B)
Content code file [00003. svm]: Processing that does not depend on player information (for example, for a device that is released after the content is released, the default code described in 00003.svm is executed)

このように、情報記録媒体には、様々な種類に区分された異なるコンテンツコードが格納され、コンテンツコードを利用したセキュリティチェックを実行するプレーヤ(再生装置)は、自己のプレーヤに対応するセキュリティチェックコードを選択してセキュリティチェックを実行する。   As described above, different content codes classified into various types are stored in the information recording medium, and a player (playing device) that performs a security check using the content code has a security check code corresponding to his / her player. Select to perform a security check.

図5に示すセキュアVM361は、自装置に対応したセキュリティチェックコードを選択してセキュリティチェック処理を実行する。この場合、セキュアVM361は、プレーヤ情報355を入力して、セキュリティチェックコードによるセキュリティチェック処理を行なうことになる。   The secure VM 361 shown in FIG. 5 selects a security check code corresponding to its own device and executes a security check process. In this case, the secure VM 361 inputs the player information 355 and performs security check processing using a security check code.

プレーヤ情報355には、例えば、再生装置のメモリに格納されたプレーヤ証明書(Player Certificate)や、例えば再生装置の有するポートに関する情報などのプレーヤの構成情報などが含まれる。なお、これらの情報には、セキュアVM361が直接メモリから取得することが可能な情報と、再生アプリケーションによって取得可能な情報や、あるいはOSによって取得可能な情報など、様々な種類の情報が含まれる。   The player information 355 includes, for example, a player certificate (Player Certificate) stored in the memory of the playback device, player configuration information such as information about a port of the playback device, and the like. Note that these types of information include various types of information such as information that the secure VM 361 can directly acquire from the memory, information that can be acquired by the playback application, and information that can be acquired by the OS.

セキュアVMによって実行されるセキュリティチェック処理の1つは、装置が正当なプレーヤ証明書(Player Certificate)を有していることの確認である。プレーヤ証明書は、コンテンツの利用権現を証明する証明書であり、コンテンツの管理を実行する管理エンティテイが発行する。   One of the security check processes executed by the secure VM is confirmation that the device has a valid player certificate. The player certificate is a certificate that proves the right to use the content, and is issued by a management entity that executes content management.

プレーヤ証明書のデータ構成例を図11に示す。プレーヤ証明書は、図11に示すように、
*プレーヤ証明書サイズ、
*証明書バージョン、
*プレーヤ製造者識別子、
*シリアル番号、
*署名日時、
*デバイス(プレーヤ)属性情報、
*プレーヤ公開鍵、
*電子署名、
これらのデータを有する。これらのデータの他にも、例えば、プレーヤモデル名や、プレーヤモデルのバージョン情報などを含める構成としてもよい。
An example of the data structure of the player certificate is shown in FIG. As shown in FIG.
* Player certificate size,
* Certificate version,
* Player manufacturer identifier,
*Serial number,
* Signing date,
* Device (player) attribute information,
* Player public key,
*Electronic signature,
Have these data. In addition to these data, for example, a player model name, player model version information, and the like may be included.

セキュアVM361は、情報記録媒体から読み出したセキュリティチェックコードに従って、このプレーヤ証明書の検証処理を実行し、正当性を確認した後、その後のセキュリティチェックに必要な情報をこの証明書から取得することができる。具体的な処理としては、まず、セキュアVM361は、プレーヤ証明書の署名検証処理を実行する。例えば、プレーヤ証明書の署名の実行エンティテイである管理センタの公開鍵を適用した署名検証を実行する。管理センタの公開鍵は、予め取得して装置のメモリに保持したものを適用してもよいし、情報記録媒体から取得あるいはネットワークを介して取得してもよい。   The secure VM 361 executes verification processing of the player certificate in accordance with the security check code read from the information recording medium, and after confirming the validity, can acquire information necessary for the subsequent security check from the certificate. it can. As a specific process, first, the secure VM 361 executes a player certificate signature verification process. For example, signature verification is executed by applying the public key of the management center that is the execution entity of the signature of the player certificate. The public key of the management center may be acquired in advance and stored in the memory of the device, or may be acquired from an information recording medium or acquired via a network.

署名検証により、プレーヤ証明書の正当性が確認されなかった場合は、その後のデータ変換を伴うコンテンツ再生への移行が停止される。プレーヤ証明書の正当性が確認された場合は、さらに、プレーヤに対応するセキュリティチェックが実行される。製造メーカなどの基本的なプレーヤ情報は、プレーヤ証明書から取得できる。   If the validity of the player certificate is not confirmed by the signature verification, the transition to the content reproduction with subsequent data conversion is stopped. When the validity of the player certificate is confirmed, a security check corresponding to the player is further executed. Basic player information such as the manufacturer can be obtained from the player certificate.

すなわちセキュアVM361は、プレーヤ証明書の正当性検証処理を実行し、正当性が確認されたことを条件として、該プレーヤ証明書の記録情報から、情報処理装置またはコンテンツ利用アプリケーションに対応する識別情報または属性情報、すなわち装置やアプリケーションのメーカ、種別、バージョン、シリアル番号などを取得する処理を実行する。これらの取得情報に基づいて、取得情報に対応するセキュリティチェックコードを選択して、選択コードに基づくセキュリティチェック処理を実行する。なお、セキュリティチェック処理に必要となる装置構成情報などのプレーヤ情報は、例えば再生アプリケーションやセキュアVMの情報取得処理によって取得される。   In other words, the secure VM 361 executes the validity verification process of the player certificate, and on the condition that the validity is confirmed, the secure VM 361 uses the identification information corresponding to the information processing apparatus or the content use application from the record information of the player certificate. Processing for acquiring attribute information, that is, the manufacturer, type, version, serial number, etc. of the device or application is executed. Based on the acquired information, a security check code corresponding to the acquired information is selected, and a security check process based on the selected code is executed. Note that player information such as device configuration information required for the security check process is acquired by, for example, a playback application or secure VM information acquisition process.

[6.情報処理装置に対する暗号鍵配布構成とコンテンツコードの暗号化および利用処理構成]
先に説明したように、セキュアVM361は、情報記録媒体に記録されたコンテンツコードに含まれるセキュリティチェックコードに基づくセキュリティチェック処理および変換テーブルに基づく変換処理に適用するパラメータ算出処理などを実行する。この処理に際して、セキュアVM361は、プレーヤ証明書の正当性検証処理を実行し、正当性が確認されたことを条件として、該プレーヤ証明書の記録情報から、情報処理装置またはコンテンツ利用アプリケーションを判別し、判別情報に対応するセキュリティチェックコードを選択して、選択コードに基づくセキュリティチェック処理を実行し、前述した変換テーブル(Fixup−Table)を適用したデータ変換処理において、コンテンツの変換に際して必要なパラメータ算出を実行する。
[6. Encryption key distribution configuration for information processing device and content code encryption and usage processing configuration]
As described above, the secure VM 361 executes a parameter calculation process applied to a security check process based on a security check code included in a content code recorded on an information recording medium and a conversion process based on a conversion table. In this process, the secure VM 361 executes a validity verification process of the player certificate, and determines the information processing apparatus or the content use application from the record information of the player certificate on the condition that the validity is confirmed. The security check code corresponding to the discrimination information is selected, the security check process based on the selected code is executed, and in the data conversion process to which the conversion table (Fixup-Table) described above is applied, the parameters required for content conversion are calculated. Execute.

変換テーブルに従って実行されるデータの置き換えは、先に説明したように、
(a)変換データ
(b)識別子設定変換データ(Forensic Mark)
これらのデータを適用した変換が実行される。
The replacement of data executed according to the conversion table is as described above.
(A) Conversion data (b) Identifier setting conversion data (Forensic Mark)
Conversion applying these data is executed.

セキュリティチェックコードによるセキュリティチェックや、変換テーブルに従って実行されるデータ変換処理は、正しいプレーヤ情報に基づいて選択されたコンテンツコードに従って実行されるべき処理である。しかし、不正な再生装置が、プレーヤ証明書を他の装置からコピーするなどして、不正なプレーヤ情報を使用した処理が行なわれる可能性がある。プレーヤ証明書の検証のみによって、情報処理装置や再生アプリケーションに対応するプレーヤ種別を判定し、プレーヤ対応のコンテンツコードに基づくセキュリティチェック処理やデータ変換処理を行なうと、本来必要なセキュリティチェックをすり抜けてコンテンツ利用が行なわれ場合があり、また、本来コンテンツに埋め込むべき識別子設定変換データ(Forensic Mark)が正しいものと異なるプレーヤ情報を含むデータとなってしまう場合が発生し得る。このような不正なプレーヤ情報が埋め込まれたコンテンツを追跡しても、不正プレーヤをつきとめることはできないという問題が発生する。   The security check using the security check code and the data conversion process executed according to the conversion table are processes that should be executed according to the content code selected based on the correct player information. However, there is a possibility that an unauthorized reproduction device may perform processing using unauthorized player information, for example, by copying a player certificate from another device. If the player type corresponding to the information processing device or the playback application is determined only by verifying the player certificate, and the security check process and data conversion process based on the content code corresponding to the player are performed, the contents that pass through the originally required security check are passed. In some cases, the identifier setting conversion data (Forensic Mark) that should be embedded in the content may be data including player information that is different from the correct one. There is a problem that even if such content embedded with illegal player information is tracked, an illegal player cannot be found.

また、例えば、極めて厳しいセキュリティチェックが要求されるPCなどの情報処理装置が、甘いセキュリティチェックのみでコンテンツ利用を許容される再生専用機器のプレーヤ証明書をコピーしてPCに格納し、PCにおいて、再生専用機器のプレーヤ証明書を適用してプレーヤ判別を実行させて、甘いセキュリティチェックのみを実行してコンテンツを利用してしまうといった事態も発生する可能性がある。   Also, for example, an information processing device such as a PC that requires extremely strict security checks copies a player certificate of a reproduction-only device that is allowed to use content only with a sparse security check, and stores it in the PC. There is also a possibility that the player certificate is executed by applying the player certificate of the reproduction-only device, and the content is used only by executing a sweet security check.

このように、情報処理装置が正しいプレーヤ情報を提供しない場合には、コンテンツの利用が不正に行なわれ、また不正追跡も困難になる。すなわち、誤ったプレーヤ情報を提示すると、正しいセキュリティチェックが実行されず、また変換テーブルに基づく正しいデータ変換がなされず、コンテンツに対するプレーヤ情報の埋め込みも正しく行われない可能性がある。以下では、このような不正行為を防止する構成について説明する。   As described above, when the information processing apparatus does not provide correct player information, content is illegally used and illegal tracking becomes difficult. That is, if incorrect player information is presented, correct security check may not be executed, correct data conversion based on the conversion table may not be performed, and player information may not be correctly embedded in content. Below, the structure which prevents such an unauthorized act is demonstrated.

すなわち、装置側において不正なプレーヤ情報を提示する場合においても、各プレーヤに応じた正しいコンテンツコードを選択させて、コンテンツを利用する情報処理装置や再生アプリケーションに対応する正規のセキュリティチェック処理を実行させ、さらに、前述した変換テーブルを適用したデータ変換処理においても正しいプレーヤ情報の埋め込みを実行させる構成について説明する。   In other words, even when unauthorized player information is presented on the device side, the correct content code corresponding to each player is selected, and regular security check processing corresponding to the information processing device or playback application that uses the content is executed. Further, a configuration for executing correct player information embedding even in the data conversion processing to which the conversion table described above is applied will be described.

プレーヤ対応の正しいコンテンツコードを選択して実行させるため、本処理例では、コンテンツ再生を実行する多数の情報処理装置の各々に対して、特定のルールに従った固有の暗号鍵のセットを配布し、さらに、情報記録媒体に記録しセキュアVMによって実行されるコンテンツコードの少なくとも一部を、情報処理装置に配布した暗号鍵を適用した暗号化データとする。以下、暗号鍵配布構成および処理例について説明する。   In order to select and execute the correct content code corresponding to the player, in this processing example, a unique set of encryption keys according to a specific rule is distributed to each of a large number of information processing apparatuses that execute content playback. Furthermore, at least a part of the content code recorded on the information recording medium and executed by the secure VM is assumed to be encrypted data to which the encryption key distributed to the information processing apparatus is applied. The encryption key distribution configuration and processing example will be described below.

まず、暗号鍵配布構成について図12以下を参照して説明する。鍵管理センタは、各プレーヤ、すなわちコンテンツ再生を実行する再生アプリケーションを実行する情報処理装置に対して、所定の暗号鍵セットを配布する。なお、暗号鍵セットの配布対象は、再生アプリケーション、あるいは再生アプリケーションを実行する情報処理装置、いずれの設定も可能である。ただし、鍵管理センタは、暗号鍵セットの配布先についての登録情報を保持する。たとえば各再生アプリケーションの固有識別子、あるいは情報処理装置の固有識別子と配布暗号鍵セットとを対応付けた登録テーブルを保持し管理する。   First, the encryption key distribution configuration will be described with reference to FIG. The key management center distributes a predetermined encryption key set to each player, that is, an information processing apparatus that executes a playback application that executes content playback. The distribution target of the encryption key set can be set to either a reproduction application or an information processing apparatus that executes the reproduction application. However, the key management center holds registration information regarding the distribution destination of the encryption key set. For example, a registration table in which the unique identifier of each playback application or the unique identifier of the information processing apparatus is associated with the distributed encryption key set is held and managed.

図12(a)は、鍵管理センタが各プレーヤに配付する鍵セットを説明する図である。なお、以下の説明において、「プレーヤ」は、再生アプリケーション、あるいは再生アプリケーションを実行する情報処理装置いずれをも含む概念であり、鍵管理センタが配付する暗号鍵セットの配布対象である。   FIG. 12A illustrates a key set distributed to each player by the key management center. In the following description, “player” is a concept including both a reproduction application and an information processing apparatus that executes the reproduction application, and is a distribution target of an encryption key set distributed by the key management center.

鍵管理センタは、図12(a)に示すように、情報処理装置あるいは再生アプリケーションであるプレーヤの製造を行なうプレーヤ製造エンティテイに対応して設定される鍵[プレーヤ製造エンティテイ鍵(Manufacture鍵)]を頂点とする鍵ツリーを設定し、1つの頂点または分岐点(ノード)からn個(図の例ではn=256)の下位鍵を設定する。例えば、鍵ツリーの頂点にあるプレーヤ製造エンティテイ鍵の直下の2段目の鍵は、例えばプレーヤ製造エンティテイの製造販売するプレーヤのモデル毎にG1−1〜G1−256まで、256個の異なるグループ鍵G1が設定される。   As shown in FIG. 12 (a), the key management center obtains a key [player manufacturing entity key (Manufacturing key)] set corresponding to a player manufacturing entity that manufactures a player that is an information processing apparatus or a playback application. A key tree is set as a vertex, and n (n = 256 in the example in the figure) subkeys are set from one vertex or branch point (node). For example, the second level key immediately below the player manufacturing entity key at the top of the key tree is 256 different group keys from G1-1 to G1-256 for each player model manufactured and sold by the player manufacturing entity. G1 is set.

さらに、3段目の鍵は、さらに各G1レイヤのモデルから派生した、例えば後継機器としてのG2モデルについて、G2−1〜G2−256*256の鍵、すなわち256個の異なるグループ鍵G2が設定される。以下、3段目では、各モデルに対するバージョンごとに256の異なるグループ鍵G3、4段目では、256個の異なるグループ鍵G4と続き、最下層のノード(リーフ)は、各プレーヤ1台ごとに割り当てられ、各プレーヤに対応するプレーヤ固有鍵[Player_Specific_Key]が設定される。 Furthermore, the key of the third stage, and further derived from a model of the G1 layer, for example, the G2 model as a successor device, G2-1~G2-256 * 256 key, i.e. 256 two different group key G2 Is set. In the third row, 256 3 different group keys G3 for each version for each model are followed by 256 4 different group keys G4 in the fourth row, and the lowest layer node (leaf) is one player. A player unique key [Player_Specific_Key] corresponding to each player is set.

各プレーヤは、自プレーヤに対応する最下層の1つのノード(リーフ)から階層構成の頂点ノードに至るルートにある各ノード対応の鍵を保有する。例えばグループ鍵G1,631は、図に示す階層構成中、最下層のリーフに対応するプレーヤ中、右半分のリーフ対応のプレーヤには配付されるが、左半分のリーフ対応のフレーヤには配付されない。また、グループ鍵G2,632は、図に示す階層構成中、最下層のリーフに対応するプレーヤ中、右側1/4のリーフ対応のプレーヤには配付されるが、それ以外の左側3/4のリーフ対応のフレーヤには配付されない。このように、各プレーヤに対して配付される暗号鍵のセットは異なる設定とされる。具体的なプレーヤの格納鍵設定については、図12(c)を参照して後段で説明する。なお、各プレーヤはプレーヤ秘密鍵[Private_Key]と、プレーヤ対応の公開鍵を格納した公開鍵証明書[Player_Cert]も割り当てられる。   Each player has a key corresponding to each node in the route from one node (leaf) at the lowest layer corresponding to the player to the vertex node in the hierarchical structure. For example, the group keys G1 and 631 are distributed to the right half leaf compatible player among the players corresponding to the lowermost leaf in the hierarchical structure shown in the figure, but are not distributed to the left half leaf compatible framer. . The group keys G2 and 632 are distributed to the player corresponding to the leaf on the right 1/4 in the player corresponding to the lowermost leaf in the hierarchical structure shown in FIG. It is not distributed to leaf-compatible flares. In this way, the encryption key set distributed to each player is set differently. A specific player storage key setting will be described later with reference to FIG. Each player is also assigned a player private key [Private_Key] and a public key certificate [Player_Cert] storing a player-compatible public key.

なお、図12(a)に示す階層構成中の頂点ノード〜リーフに設定される鍵を階層鍵またはノード鍵と呼ぶ。なお、各階層に対応するモデルやバージョンの設定例は一例であり、モデルやバージョンに限らず、たとえばライセンシ、プラットフォーム、モデル、バージョン、などより多層の区分による階層設定も可能であり、さらに販売地域でグループ分けしたり、製造日時でグループ分けをするなどの設定も可能である。このように、各階層の設定は、様々な設定が可能である。   Note that the keys set in the vertex nodes to leaves in the hierarchical structure shown in FIG. 12A are called hierarchical keys or node keys. The example of setting models and versions corresponding to each hierarchy is only an example, not limited to models and versions. For example, it is possible to set hierarchies by multiple layers such as licensees, platforms, models, versions, etc. You can also make settings such as grouping by, or grouping by manufacturing date and time. As described above, various settings can be made for each layer.

プレーヤ対応の公開鍵を格納した公開鍵証明書[Player_Cert]には、プレーヤ識別子[PlayerID]が格納される。プレーヤ識別子は各プレーヤ個々に異なる識別子であり、例えば0x00000000〜0xFFFFFFFFの各値が、各プレーヤに対応するプレーヤIDとして設定される。   A player identifier [PlayerID] is stored in a public key certificate [Player_Cert] that stores a player-compatible public key. The player identifier is an identifier that is different for each player. For example, each value of 0x0000000 to 0xFFFFFFFF is set as a player ID corresponding to each player.

図12(b)は、プレーヤ製造エンティテイが管理する鍵であり、これらは、プレーヤ製造エンティテイが製造するプレーヤ毎に設定するなど、プレーヤ製造エンティテイにおいて決定したルールに従って生成される鍵である。プレーヤ製造エンティテイは、各鍵とその鍵の対応するプレーやのモデルやバージョンを対応付けた管理情報を保持する。   FIG. 12B shows keys managed by the player manufacturing entity, which are generated according to the rules determined in the player manufacturing entity, such as setting for each player manufactured by the player manufacturing entity. The player manufacturing entity holds management information in which each key is associated with the model and version of the play corresponding to the key.

図12(c)は、プレーヤが保持する鍵セットを示している。先に説明したように、各プレーヤは、自プレーヤに対応する最下層の1つのノード(リーフ)から階層構成の頂点ノードに至るルートにある各ノード対応の鍵を保有する。図12(c)に示す鍵セット中、プレーヤ製造エンティテイ鍵(Manufacture鍵)〜プレーヤ固有鍵(Player_Specific_Key)、さらに、プレーヤ秘密鍵(Private_Key)およびプレーヤ公開鍵証明書(PLAYER_CERT)は鍵管理センタから配布される鍵データである。さらに、プレーヤは、プレーヤ製造エンティテイの管理するプレーヤ製造エンティテイ鍵(Manufacture鍵#n)を保持する。なお、これらの各鍵情報は、プレーヤとしての情報処理装置の製造段階で情報処理装置のメモリに記憶格納される。あるいは、ネットワークを介して取得する構成としてもよい。   FIG. 12C shows a key set held by the player. As described above, each player holds a key corresponding to each node in the route from the lowest node (leaf) corresponding to the player to the top node of the hierarchical structure. In the key set shown in FIG. 12 (c), the player manufacturing entity key (Manufacture key) to the player unique key (Player_Specific_Key), and the player private key (Private_Key) and player public key certificate (PLAYER_CERT) are distributed from the key management center. Key data. Further, the player holds a player manufacturing entity key (Manufacture key #n) managed by the player manufacturing entity. Each key information is stored and stored in the memory of the information processing apparatus at the manufacturing stage of the information processing apparatus as a player. Or it is good also as a structure acquired via a network.

なお、図12(c)に示すプレーヤが保持する鍵セット中、[*]印を付与した鍵、すなわち、鍵管理センタが配付するプレーヤ製造エンティテイ鍵(Manufacture鍵)〜プレーヤ固有鍵(Player_Specific_Key)、およびプレーヤ秘密鍵(Private_Key)と、プレーヤ製造エンティテイが配付するプレーヤ製造エンティテイ鍵(Manufacture鍵#n)は、プレーヤがセキュアに保持する必要がある鍵であり、漏洩を防止することが必要である。公開鍵証明書については、特に秘密に保持する必要はない。   Note that in the key set held by the player shown in FIG. 12C, a key to which a [*] mark is given, that is, a player manufacturing entity key (Manufacturer key) to a player specific key (Player_Specific_Key) distributed by the key management center, The player secret key (Private_Key) and the player manufacturing entity key (Manufacture key #n) distributed by the player manufacturing entity are keys that the player needs to hold securely, and it is necessary to prevent leakage. Public key certificates do not need to be kept secret.

各プレーヤに対して配付される暗号鍵のセットは、先に説明したように、階層構成のプレーヤ対応のリーフから頂点ノードに至る各ノードのグループ鍵、プレーヤ固有鍵であり、異なる設定とされる。具体的なプレーヤの格納鍵設定については、図12(c)を参照して後段で説明する。なお、各プレーヤはプレーヤ秘密鍵[Private_Key]と、プレーヤ対応の公開鍵を格納した公開鍵証明書[Player_Cert]も割り当てられる。   As described above, the set of encryption keys distributed to each player is a group key and a player specific key of each node from the leaf corresponding to the player in the hierarchical structure to the vertex node, and is set differently. . A specific player storage key setting will be described later with reference to FIG. Each player is also assigned a player private key [Private_Key] and a public key certificate [Player_Cert] storing a player-compatible public key.

次に、図13を参照して情報記録媒体に格納するコンテンツコードの暗号化処理態様について説明する。先に、図10を参照して説明したように、コンテンツコードは、以下の4つのカテゴリに分類可能である。
(a)全コンテンツ&全プレーヤ(装置または再生アプリ)共通に利用されるコンテンツコード
(b)コンテンツ固有のコンテンツコード
(c)プレーヤ(装置または再生アプリ)固有のコンテンツコード
(d)コンテンツ&プレーヤ(装置または再生アプリ)固有のコンテンツコード
Next, a description will be given of an encryption processing mode of the content code stored in the information recording medium with reference to FIG. As described above with reference to FIG. 10, the content codes can be classified into the following four categories.
(A) Content code used in common for all contents & all players (device or playback application) (b) Content code specific to content (c) Content code specific to player (device or playback application) (d) Content & player ( Device or playback app) specific content code

これらの各々のコンテンツコードは、先に図9を参照して説明したように、個別のファイル、あるいは集積されて1つのファイルとして情報記録媒体に格納される。これらの各カテゴリのコンテンツコードは、それぞれコードの制作を行なうエンティテイが異なる場合がある。例えば、(b)コンテンツ固有データに対応するコンテンツコードは、コンテンツの製作者であるスタジオなどが設定する。また、(c)プレーヤ(装置または再生アプリ)固有データについては、プレーヤとしての再生装置や、再生アプリケーションを制作するエンティテイが生成する場合が多い。   As described above with reference to FIG. 9, each of these content codes is stored in an information recording medium as an individual file or integrated and stored as one file. The content code of each category may have a different entity for producing the code. For example, (b) a content code corresponding to content-specific data is set by a studio as a content producer. In addition, (c) player (device or playback application) specific data is often generated by a playback device as a player or an entity that produces a playback application.

このように、異なるエンティテイによって生成されるコンテンツコードが、情報記録媒体に記録されるまでのシーケンスについて、図13を参照して説明する。図13には、上述した4つのカテゴリに対応するコンテンツコードの構成データの情報記録媒体に対する記録過程を示している。すなわち、
(a)全コンテンツ&全プレーヤ(装置または再生アプリ)共通に利用されるコンテンツコード:例えば、スタートアップルーチン、共通ルーチン(外部記録へのアクセスなど)、プレーヤ識別ルーチン用のコードなどが含まれる。
(b)コンテンツ固有のコンテンツコード:例えば、変換テーブル(Fix Up Table)情報、タイトル初期化(Fix Up Table生成処理を含む)処理コードなどが含まれる。
(c)プレーヤ(装置または再生アプリ)固有のコンテンツコード:例えば、ランネィティブ(Run Native)実行部分、ネィティブコード(Native Code)、プレーヤ固有のチェックルーチンに適用するコードなどが含まれる。
(d)コンテンツ&プレーヤ(装置または再生アプリ)固有のコンテンツコード:例えば、ディスカバリRAM(Discovery RAM実行部分)、ディスカバリラム(Discovery RAM)用比較データなどのコードが含まれる。
これら4つの異なるカテゴリのコンテンツコードである。
A sequence until content codes generated by different entities are recorded on the information recording medium will be described with reference to FIG. FIG. 13 shows a process of recording content code configuration data corresponding to the above four categories on an information recording medium. That is,
(A) Content code used in common for all contents & all players (device or playback application): For example, a startup routine, a common routine (such as access to an external recording), a code for a player identification routine, and the like are included.
(B) Content code specific to content: For example, conversion table (Fix Up Table) information, title initialization (including Fix Up Table generation processing) processing code, and the like are included.
(C) Content code specific to the player (device or playback application): For example, a run native execution part, a native code, a code applied to a player specific check routine, and the like are included.
(D) Content code unique to the content & player (device or playback application): For example, codes such as discovery RAM (Discovery RAM execution part), discovery ram (Discovery RAM) comparison data, and the like are included.
These four different categories of content codes.

これらのコンテンツコードは、それぞれ異なるエンティテイ、すなわち、コンテンツの制作、編集を行なうスタジオ、オーサリング会社、また、プレーヤ(装置または再生アプリ)の製造メーカなど、異なるエンティテイによって制作される場合がある。   These content codes may be produced by different entities such as studios for creating and editing content, authoring companies, and manufacturers of players (devices or playback applications).

これらの各コンテンツコード構成部品生成エンティテイは、ステップS201において、先に図12を参照して説明したライセンシ/プラットフォーム/モデル/バージョン/などに固有な鍵、すなわち先に図12を参照して説明したノード鍵(グループ鍵[Gn]やプレーヤ固有鍵)を用いてコンテンツコードの一部を暗号化する前提でコンテンツコードを準備する。   Each of these content code component generation entities is a key unique to the licensee / platform / model / version / etc. described above with reference to FIG. 12 in step S201, that is, previously described with reference to FIG. A content code is prepared on the assumption that a part of the content code is encrypted using a node key (group key [Gn] or player specific key).

さらに、各コンテンツコード構成部品生成エンティテイは、各コンテンツコードの暗号化構成情報を持つコンテンツコード暗号構成情報642を生成して、生成したコンテンツコードとともに、鍵管理センタへ送付する。コンテンツコード暗号構成情報642は、図に示すように、コンテンツコード識別情報としてのコンテンツコード番号と、暗号化区間情報と、暗号化区間に適用する鍵の指定情報との対応データによって構成される。   Further, each content code component generation entity generates content code encryption configuration information 642 having encryption configuration information of each content code, and sends the content code encryption information together with the generated content code to the key management center. As shown in the figure, the content code encryption configuration information 642 is configured by correspondence data of a content code number as content code identification information, encryption section information, and key designation information applied to the encryption section.

鍵管理センタでは、各コンテンツコード構成部品生成エンティテイから受領したコンテンツコードに対して、コンテンツコード暗号構成情報642に基づく暗号化を実行する。すなわち、鍵管理センタは、図12(a)を参照して説明した階層構成の鍵情報からなる発行済みの鍵データベースから、コンテンツコード暗号構成情報642において指定された鍵を取得し、コンテンツコード暗号構成情報642において指定されたコンテンツコードの指定部分を暗号化する。   The key management center executes encryption based on the content code encryption configuration information 642 for the content code received from each content code component generation entity. That is, the key management center acquires the key specified in the content code encryption configuration information 642 from the issued key database including the key information of the hierarchical configuration described with reference to FIG. The specified part of the content code specified in the configuration information 642 is encrypted.

このようにして、図13に示す暗号化済みコンテンツコード641が生成され、この暗号化済みコンテンツコード641が情報記録媒体製造エンティテイであるディスク工場に送付され、ディスクに記録される。なお、コンテンツコード暗号構成情報642についても、ディスク工場に送付され、ディスクに記録される。なお、コンテンツコード暗号構成情報642は、コンテンツコードの構成データに含めて情報記録媒体に記録するか、あるいは固有の独立ファイルとして情報記録媒体に記録する設定とする。   In this way, the encrypted content code 641 shown in FIG. 13 is generated, and this encrypted content code 641 is sent to the disc factory, which is an information recording medium manufacturing entity, and recorded on the disc. The content code encryption configuration information 642 is also sent to the disc factory and recorded on the disc. The content code encryption configuration information 642 is set to be included in the content code configuration data and recorded on the information recording medium, or to be recorded on the information recording medium as a unique independent file.

暗号化済みコンテンツコード641として、図13には4つのコンテンツコードファイル[00000.svm]〜[00003.svm]を示している。これらのコンテンツコードは、それぞれ部分的に暗号化された暗号化データを含む。これらの暗号化に適用した暗号鍵は、例えば図12(a)を参照して説明したグループ鍵Gnであり、コンテンツコード暗号構成情報642に基づいて選択された鍵を適用して暗号化がなされている。   As the encrypted content code 641, four content code files [00000. svm] to [00003. svm]. Each of these content codes includes encrypted data that is partially encrypted. The encryption key applied to these encryptions is, for example, the group key Gn described with reference to FIG. 12A, and encryption is performed by applying the key selected based on the content code encryption configuration information 642. ing.

例えば、コンテンコードファイル00000.svmが、図12(a)に示すグループ鍵G1,631を適用して暗号化されているとすると、この暗号化データを復号できるのは、グループ鍵G1,631を保持しているプレーヤのみとなり、図12に示す階層構成の最下層のリーフに対応するプレーヤ中、右半分のリーフ対応のプレーヤのみがコンテンツコード00000.svmの暗号化部データを利用することができる。左半分のリーフ対応のプレーヤは、グループ鍵G1,631を保持していないので、コンテンツコード00000.svmの暗号化部データを利用することができない。   For example, the content code file 00000. If svm is encrypted by applying the group keys G1 and 631 shown in FIG. 12A, only the player holding the group keys G1 and 631 can decrypt the encrypted data. Among the players corresponding to the lowermost leaf of the hierarchical structure shown in FIG. The encryption part data of svm can be used. Since the player corresponding to the leaf on the left half does not hold the group key G1, 631, the content code 00000. The encryption part data of svm cannot be used.

同様に、例えばコンテンコードファイル00001.svmが、図12(a)に示すグループ鍵G2,632を適用して暗号化されているとすると、この暗号化データを復号できるのは、グループ鍵G2,632を保持しているプレーヤのみとなり、図12に示す階層構成の最下層のリーフに対応するプレーヤ中、右側の1/4のリーフ対応のプレーヤのみがコンテンツコード00001.svmの暗号化部データを利用することができる。   Similarly, for example, a content code file 00001. Assuming that svm is encrypted by applying the group keys G2 and 632 shown in FIG. 12A, only the player holding the group keys G2 and 632 can decrypt the encrypted data. Of the players corresponding to the lowermost leaf of the hierarchical structure shown in FIG. 12, only the player corresponding to the ¼ leaf on the right side has the content code 00001. The encryption part data of svm can be used.

このように、コンテンツコードを、グループ鍵Gnあるいはプレーヤ固有鍵を適用して暗号化することで、コンテンツコードを復号して利用可能なプレーヤを限定することが可能となる。コンテンツコードには、前述したようにセキュリティチェック用のセキュリティチェックコードや、コンテンツのデータ変換に適用する変換テーブルが含まれており、セキュリティチェック処理や、データ変換処理を、特定のプレーヤに対してのみ実行可能な設定とすることができる。   As described above, by encrypting the content code by applying the group key Gn or the player unique key, it is possible to limit the players that can be used by decrypting the content code. As described above, the content code includes a security check code for security check and a conversion table applied to content data conversion. Security check processing and data conversion processing are performed only for a specific player. It can be an executable setting.

従って、プレーヤ証明書を他のプレーヤからコピーするなどの処理によって、不正なプレーヤ証明書を適用したプレーヤ情報提示処理を行なった場合、そのプレーヤ情報対応のプレーヤ固有のコンテンツコードを取得して処理を実行しようとしても、そのコンテンツコードは、プレーヤに格納された暗号鍵セットに含まれるグループ鍵によって復号することが不可能となり、不正なプレーヤ証明書によって識別されたプレーヤ情報に対応するプレーヤ固有のコンテンツコードが不正に適用されることが防止される。   Therefore, when a player information presentation process using an invalid player certificate is performed by copying the player certificate from another player, the player-specific content code corresponding to the player information is acquired and processed. Even if it is attempted to execute, the content code cannot be decrypted by the group key included in the encryption key set stored in the player, and the player-specific content corresponding to the player information identified by the illegal player certificate The code is prevented from being improperly applied.

次に、図14を参照してコンテンツコードの異なる生成手法について説明する。各コンテンツコード構成部品生成エンティテイは、ステップS211において、コンテンツコード製作時に、乱数などを適用して生成したオリジナル暗号鍵を用いてコンテンツコードの一部を暗号化する。その後、コンテンツコードの暗号化に用いたオリジナル暗号鍵を、先に図12を参照して説明したノード鍵(グループ鍵[Gn]やプレーヤ固有鍵)、すなわち、ライセンシ/プラットフォーム/モデル/バージョン/などに固有な鍵を用いて暗号化するように鍵管理センタへ依頼する。   Next, a method for generating different content codes will be described with reference to FIG. In step S211, each content code component generation entity encrypts a part of the content code using an original encryption key generated by applying a random number or the like when the content code is produced. Thereafter, the original encryption key used for encrypting the content code is the node key (group key [Gn] or player specific key) described above with reference to FIG. 12, that is, licensee / platform / model / version / etc. The key management center is requested to encrypt using a unique key.

各コンテンツコード構成部品生成エンティテイは、オリジナル暗号鍵を適用して暗号化したコンテンツコードとオリジナル暗号鍵、さらに、各コンテンツコードの暗号化構成情報を持つコンテンツコード暗号構成情報642を鍵管理センタへ送付する。コンテンツコード暗号構成情報642は、図に示すように、コンテンツコード識別情報としてのコンテンツコード番号と、暗号化区間情報と、暗号化区間に適用する鍵の指定情報との対応データによって構成される。   Each content code component generation entity sends the content code encrypted by applying the original encryption key, the original encryption key, and the content code encryption configuration information 642 having the encryption configuration information of each content code to the key management center. To do. As shown in the figure, the content code encryption configuration information 642 is configured by correspondence data of a content code number as content code identification information, encryption section information, and key designation information applied to the encryption section.

鍵管理センタでは、各コンテンツコード構成部品生成エンティテイから受領したオリジナル暗号鍵に対して、コンテンツコード暗号構成情報642に基づく暗号化を実行する。すなわち、鍵管理センタは、図12(a)を参照して説明した階層構成の鍵情報からなる発行済みの鍵データベースから、コンテンツコード暗号構成情報642において指定された鍵を取得し、各コンテンツコード構成部品生成エンティテイから受領したオリジナル暗号鍵を暗号化してコンテンツコードに格納する。   In the key management center, encryption based on the content code encryption configuration information 642 is performed on the original encryption key received from each content code component generation entity. That is, the key management center acquires the key specified in the content code encryption configuration information 642 from the issued key database including the key information of the hierarchical configuration described with reference to FIG. The original encryption key received from the component generation entity is encrypted and stored in the content code.

図14に示す例では、コンテンツコードファイル[00000.svm]に設定された暗号化鍵データ643が、オリジナル暗号鍵を暗号化したデータの格納領域である。すなわち、各コンテンツコード構成部品生成エンティテイから受領した複数のオリジナル暗号鍵に対して、それぞれコンテンツコード暗号構成情報642に基づいて選択された暗号鍵、すなわち、図12(a)を参照して説明した階層構成中のいずれかのグループ鍵[Gn]を適用して各オリジナル暗号鍵を暗号化する。   In the example shown in FIG. 14, the content code file [00000. The encryption key data 643 set in [svm] is a storage area for data obtained by encrypting the original encryption key. That is, with respect to a plurality of original encryption keys received from each content code component generation entity, the encryption keys selected based on the content code encryption configuration information 642, ie, described with reference to FIG. Each original encryption key is encrypted by applying any group key [Gn] in the hierarchical structure.

コンテンツコードファイル[00000.svm]〜[00003.svm]に設定された暗号化データは、各コンテンツコード構成部品生成エンティテイが、それぞれ生成したオリジナル暗号鍵によって暗号化されたテータである。   Content code file [00000. svm] to [00003. The encrypted data set in [svm] is data obtained by encrypting each content code component generation entity with the generated original encryption key.

例えば、コンテンツコードファイル[00000.svm]に設定された暗号化鍵データ643の最後尾には、コンテンツコードファイル0003に含まれる暗号化データの暗号化に適用したオリジナル暗号鍵(K03)をグループ鍵[Gn]で暗号化した暗号化データが格納される。   For example, the content code file [00000. The encryption key data 643 set in [svm] is encrypted at the end of the encryption key encrypted with the group key [Gn] using the original encryption key (K03) applied to the encryption of the encrypted data included in the content code file 0003. Stored data.

例えば、オリジナル暗号鍵(K03)が、図12(a)に示すグループ鍵G1,631を適用して暗号化されているとすると、この暗号化鍵を復号してオリジナル暗号鍵(K03)を取得できるのは、グループ鍵G1,631を保持しているプレーヤのみとなり、図12に示す階層構成の最下層のリーフに対応するプレーヤ中、右半分のリーフ対応のプレーヤのみとなる。   For example, if the original encryption key (K03) is encrypted by applying the group keys G1 and 631 shown in FIG. 12A, the encryption key is decrypted to obtain the original encryption key (K03). Only players holding the group keys G1 and 631 can be played, and only the player corresponding to the leaf in the right half of the players corresponding to the lowermost leaf in the hierarchical structure shown in FIG.

この結果、オリジナル暗号鍵(K03)を取得し、コンテンツコード00003.svmの暗号化部データを利用することができるのは、図12に示す階層構成の最下層のリーフに対応するプレーヤ中、右半分のリーフ対応のプレーヤのみとなる。左半分のリーフ対応のプレーヤは、グループ鍵G1,631を保持していないので、オリジナル暗号鍵(K03)を取得することができず、コンテンツコード00003.svmの暗号化部データを利用することができない。本処理例では、鍵管理センタでの暗号化処理がオリジナル暗号鍵の暗号化のみであり、迅速な処理が可能となる。また、各コンテンツコード構成部品生成エンティテイから鍵管理センタに送付されるコンテンツコードがすでにオリジナル暗号鍵によって暗号化されているので、情報漏洩の可能性も低減できる。   As a result, the original encryption key (K03) is acquired, and the content code 00003. Only the player corresponding to the leaf in the right half among the players corresponding to the leaf in the lowest layer of the hierarchical configuration shown in FIG. 12 can use the encryption unit data of svm. Since the player corresponding to the left half leaf does not hold the group key G1, 631, the original encryption key (K03) cannot be obtained, and the content code 00003. The encryption part data of svm cannot be used. In this process example, the encryption process at the key management center is only the encryption of the original encryption key, and a quick process is possible. Further, since the content code sent from each content code component generation entity to the key management center is already encrypted with the original encryption key, the possibility of information leakage can be reduced.

次に、図15を参照して、プレーヤにおけるコンテンツコードの処理について説明する。コンテンツ再生を実行する情報処理装置のデータ処理としてのセキュアVMは、情報記録媒体に記録されたデータ処理プログラムを含むコンテンツコードを取得し、該コンテンツコードに従ったデータ処理を実行する。このコンテンツコードの少なくとも一部は、図13、図14を参照して説明したようにノード鍵を適用して暗号化されている。   Next, content code processing in the player will be described with reference to FIG. The secure VM as data processing of the information processing apparatus that executes content reproduction acquires a content code including a data processing program recorded in the information recording medium, and executes data processing according to the content code. At least a part of the content code is encrypted by applying the node key as described with reference to FIGS.

セキュアVMは、コンテンツコードの復号に適用する鍵指定情報、およびコンテンツコード中に設定された暗号化データの位置を示す暗号化データ位置指定情報を情報記録媒体の格納データから取得し、該取得情報に従ってメモリからノード鍵を選択し、暗号化データ位置指定情報に従って復号対象データを特定して、選択ノード鍵を適用した復号処理を実行する。   The secure VM acquires key designation information to be applied to decryption of the content code and encrypted data position designation information indicating the position of the encrypted data set in the content code from the stored data of the information recording medium. The node key is selected from the memory according to the above, the decryption target data is specified according to the encrypted data position designation information, and the decryption process using the selected node key is executed.

図15は、図14の設定を持つコンテンツコードのプレーヤ側の処理を説明する図であり、先に図12(c)を参照して説明したプレーヤ格納鍵650を適用したセキュアVM652による処理を説明する図である。情報記録媒体に格納されたコンテンツコードは、セキュアVM652によって読み取られて処理がなされる。セキュアVM652は、セキュアVM用メモリ651に情報記録媒体から読み出したコンテンツコードを格納して処理を実行する。   FIG. 15 is a diagram for explaining the processing on the player side of the content code having the setting of FIG. 14, and the processing by the secure VM 652 to which the player storage key 650 described with reference to FIG. It is a figure to do. The content code stored in the information recording medium is read by the secure VM 652 and processed. The secure VM 652 stores the content code read from the information recording medium in the secure VM memory 651 and executes the process.

なお、プレーヤ格納鍵650には、先に図12を参照して説明した鍵、すなわち、鍵管理センタが配付するプレーヤ製造エンティテイ鍵(Manufacture鍵)〜プレーヤ秘密鍵(Private_Key)と公開鍵証明書、およびプレーヤ製造エンティテイが配付するプレーヤ製造エンティテイ鍵(Manufacture鍵#n)を示している。   The player storage key 650 includes the keys described above with reference to FIG. 12, that is, a player manufacturing entity key (Manufacture key) to a player secret key (Private_Key) and a public key certificate distributed by the key management center. In addition, a player manufacturing entity key (Manufacture key #n) distributed by the player manufacturing entity is shown.

セキュアVM652は、まず、ステップS251において、セキュアVM用メモリ651に格納されたメモリ格納データ661から、処理対象のコンテンツコードに設定された暗号化鍵データ[X]662を取得し、このコンテンツコードに含まれる記録データあるいは他のデータファイルから取得した鍵指定情報に基づいて、暗号化鍵データ[X]662の復号処理に適用する鍵をプレーヤ格納鍵650から選択する。鍵指定情報は、先に、図13、図14を参照して説明したコンテンツコード暗号構成情報642に基づいて情報記録媒体に記録される情報である。   In step S251, the secure VM 652 first obtains the encryption key data [X] 662 set in the content code to be processed from the memory storage data 661 stored in the secure VM memory 651, and stores the content code in this content code. Based on the key designation information acquired from the included recording data or other data file, a key to be applied to the decryption process of the encryption key data [X] 662 is selected from the player storage key 650. The key designation information is information recorded on the information recording medium based on the content code encryption configuration information 642 described with reference to FIGS.

本処理例では、鍵指定情報は、鍵ID=4、すなわち、プレーヤ固有鍵(Player_Specific_Key)を指定する情報であったとする。セキュアVM652は、鍵指定情報[鍵ID=4]に基づいて、プレーヤ格納鍵650からプレーヤ固有鍵(Player_Specific_Key)を選択し、暗号化鍵データ[X]662の復号処理を実行する。   In this processing example, it is assumed that the key designation information is information that designates a key ID = 4, that is, a player unique key (Player_Specific_Key). The secure VM 652 selects a player unique key (Player_Specific_Key) from the player storage key 650 based on the key designation information [key ID = 4], and executes the decryption process of the encryption key data [X] 662.

この復号処理により、コンテンツコードの一部を暗号化したオリジナル暗号鍵[K]が取得される。セキュアVM652は、ステップS252において、取得したオリジナル暗号鍵[K]を適用して、コンテンツコードの暗号化部に対応する入力データ663を復号し、復号結果を出力データ664としてセキュアVM用メモリ651に格納する。この処理によって、プレーヤは、例えばプレーヤ固有のコンテンツコードの利用が可能となる。   By this decryption process, an original encryption key [K] obtained by encrypting a part of the content code is acquired. In step S252, the secure VM 652 applies the acquired original encryption key [K], decrypts the input data 663 corresponding to the content code encryption unit, and stores the decrypted result in the secure VM memory 651 as output data 664. Store. By this processing, the player can use a content code unique to the player, for example.

なお、このようなセキュアVM652における処理は、例えば、コンテンツ再生処理を実行する再生(プレーヤ)アプリケーションからセキュアVMに対する割り込み(INTRP)と、セキュアVMから再生(プレーヤ)アプリケーションに対する応答(Call)処理のシーケンスによって実行される。コンテンツコードの復号処理は、例えば下記の関数の呼び出しによって実行される。
CALL_AES(出力先アドレス,入力データアドレス,AES処理ブロック数,鍵アドレス,鍵ID)
上記関数は、鍵アドレスで指定される128bitの値(図15中の暗号化鍵データ[X]662)を、鍵ID(図15ではID=4)で指定されたプレーヤがもつ秘密鍵で復号する処理を実行し、復号結果を復号鍵として、入力データアドレスからAES処理ブロック数*16バイト分のデータを復号し、出力先アドレスへ復号後のデータを出力する処理を実行させる関数である。
Note that such processing in the secure VM 652 includes, for example, an interrupt (INTRP) from the playback (player) application that executes the content playback processing to the secure VM and a response (Call) processing sequence from the secure VM to the playback (player) application. Executed by. The content code decoding process is executed, for example, by calling the following function.
CALL_AES (output destination address, input data address, number of AES processing blocks, key address, key ID)
The above function decrypts the 128-bit value (encrypted key data [X] 662 in FIG. 15) specified by the key address with the secret key of the player specified by the key ID (ID = 4 in FIG. 15). This is a function for executing a process for decrypting data corresponding to the number of AES processing blocks * 16 bytes from the input data address and outputting the decrypted data to the output destination address using the decryption result as a decryption key.

さらに、図16を参照して、プレーヤにおけるコンテンツコードの異なる処理例について説明する。図16は、プレーヤ格納鍵650中のプレーヤ秘密鍵[Private_Key]を適用した署名処理を説明する図である。   Further, with reference to FIG. 16, an example of processing of different content codes in the player will be described. FIG. 16 is a diagram for explaining the signature processing to which the player secret key [Private_Key] in the player storage key 650 is applied.

セキュアVM652は、セキュアVM用メモリ651に格納したメモリ格納データ671の入力データ672に対して、ステップS272において、例えばSHA−1などのハッシュ関数を適用してハッシュ値を算出する。なお、このハッシュ値算出の前ステップとして、ステップS271においてプレーヤ情報やメディア情報を加算してもよい。次に、ステップS273において、プレーヤ格納鍵650からプレーヤ秘密鍵[Private_Key]を取得して、ハッシユ値に対する電子署名、例えばEC−DSAアルゴリズムに基づく電子署名を施し、署名を含むデータを出力データ673としてセキュアVM用メモリ651に格納する。その後、コンテンツコードの実行に際して、出力データ673を取得して署名検証処理を実行することで、プレーヤの正当性を検証することが可能となる。   In step S272, the secure VM 652 calculates a hash value by applying a hash function such as SHA-1 to the input data 672 of the memory storage data 671 stored in the secure VM memory 651. As a previous step of calculating the hash value, player information and media information may be added in step S271. Next, in step S273, the player private key [Private_Key] is obtained from the player storage key 650, and an electronic signature for the hash value, for example, an electronic signature based on the EC-DSA algorithm, is applied, and data including the signature is output data 673. Stored in the secure VM memory 651. Thereafter, when executing the content code, it is possible to verify the legitimacy of the player by obtaining the output data 673 and executing the signature verification process.

なお、この署名設定処理は、セキュアVM652による例えば下記の関数の呼び出しによって実行される。
CALL_PrivateKey(出力先アドレス,入力データアドレス,署名対象データ長,Option指定,鍵ID)
上記関数は、入力データアドレスから署名対象データ長分のデータを取り出し、Option指定されるMedia/Player情報をバイト列に追加したものをSHA1関数でハッシュ値に変換し、変換結果にプレーヤの持つ秘密鍵で署名して出力先アドレスに書き込む処理を実行させる関数である。
This signature setting process is executed by calling the following function by the secure VM 652, for example.
CALL_PrivateKey (output destination address, input data address, signature target data length, option designation, key ID)
The above function extracts the data for the signature target data length from the input data address, converts the Media / Player information specified by Option to the byte string, converts it into a hash value with the SHA1 function, and stores the secret that the player has in the conversion result This function executes a process of signing with a key and writing to an output destination address.

以上、説明したように、先に図12(a)を参照して説明した階層構成上の各ノードに設定されたノード鍵のセットを情報記録媒体に配付し、ノード鍵を選択適用した暗号化処理を実行したコンテンツコードを生成して情報記録媒体に格納することで、特定の選択されたプレーヤのみによって処理可能なコンテンツコードを提供することが可能となる。   As described above, encryption is performed by distributing a set of node keys set to each node on the hierarchical structure described above with reference to FIG. 12A to the information recording medium and selectively applying the node keys. By generating a content code that has been processed and storing it in the information recording medium, it is possible to provide a content code that can be processed only by a specific selected player.

プレーヤに対する鍵の配布構成は、先に図12を参照して説明した構成のみならず、様々な設定が可能である。これらの例について、図17、図18を参照して説明する。図17に示す例は、階層構成については先に図12(a)を参照して説明した構成と同様の構成であり、各プレーヤは、自プレーヤに対応する最下層の1つのノード(リーフ)から階層構成の頂点ノードに至るルートにある各ノード対応の鍵を保有する。すなわち、図17(b)に示すように、プレーヤ製造エンティテイ鍵(Manufacture鍵)〜プレーヤ固有鍵(Player_Specific_Key)、さらに、プレーヤ秘密鍵(Private_Key)およびプレーヤ公開鍵証明書(PLAYER_CERT)が鍵管理センタから配布される。   The key distribution configuration for the player is not limited to the configuration described above with reference to FIG. These examples will be described with reference to FIGS. In the example shown in FIG. 17, the hierarchical structure is the same as the structure described above with reference to FIG. 12A, and each player has one node (leaf) in the lowest layer corresponding to the player. Holds a key corresponding to each node in the route from the top node to the top node of the hierarchical structure. That is, as shown in FIG. 17B, a player manufacturing entity key (Manufacturer key) to a player unique key (Player_Specific_Key), a player private key (Private_Key), and a player public key certificate (PLAYER_CERT) are received from the key management center. Distributed.

図17に示す例では、さらに、鍵管理センタは、モデル鍵[Model鍵#n]、バージョン鍵[Version#n]を設定し、これらの各鍵からプレーヤに対応するモデル、バージョン対応の鍵を選択してプレーヤに提供する。   In the example shown in FIG. 17, the key management center further sets a model key [Model key #n] and a version key [Version #n], and selects a model corresponding to the player and a key corresponding to the version from these keys. Select and provide to the player.

図18に示す例も、階層構成については先に図12(a)を参照して説明した構成と同様の構成であり、各プレーヤは、自プレーヤに対応する最下層の1つのノード(リーフ)から階層構成の頂点ノードに至るルートにある各ノード対応の鍵を保有する。すなわち、図17(b)に示すように、プレーヤ製造エンティテイ鍵(Manufacture鍵)〜プレーヤ固有鍵(Player_Specific_Key)、さらに、プレーヤ秘密鍵(Private_Key)およびプレーヤ公開鍵証明書(PLAYER_CERT)が鍵管理センタから配布される。   Also in the example shown in FIG. 18, the hierarchical configuration is the same as the configuration described above with reference to FIG. 12A, and each player has one node (leaf) in the lowest layer corresponding to the player. Holds a key corresponding to each node in the route from the top node to the top node of the hierarchical structure. That is, as shown in FIG. 17B, a player manufacturing entity key (Manufacturer key) to a player unique key (Player_Specific_Key), a player private key (Private_Key), and a player public key certificate (PLAYER_CERT) are received from the key management center. Distributed.

図18に示す例では、さらに、鍵管理センタは、システム鍵[A]として、モデル固有値[Model固有値#An]、バージョン固有値[Version固有値#An]を設定し、これらの各固有値からプレーヤに対応するモデル、バージョン対応の固有値を選択してプレーヤに提供する。   In the example illustrated in FIG. 18, the key management center further sets a model specific value [Model specific value #An] and a version specific value [Version specific value #An] as the system key [A], and responds to the player from these specific values. The model and version-specific eigenvalues are selected and provided to the player.

システム鍵は複数定義可能であり、例えば、再生専用機器としてのCE機や、PCなど大きく異なるシステム間で分けることが可能である。モデル固有値[Model固有値#An]、バージョン固有値[Version固有値#An]はシステム鍵で暗号化された状態でプレーヤが保持し、システム鍵で復号することによってモデルやバージョン固有の鍵として使用できる設定とする。このように設定することにより、例えばモデル(プラットフォーム)としてセキュアなシステムであれば、バージョンに関わらずモデル全体に対して同一のコンテンツコードを適用することも可能である一方、モデルのうちの一つのバージョンが脆弱である場合には、該モデルのあるバージョンのみにコンテンツコードを適用するということもできる。   A plurality of system keys can be defined. For example, the system key can be divided among greatly different systems such as a CE machine as a reproduction-only device and a PC. The model-specific value [Model-specific value #An] and version-specific value [Version-specific value #An] are stored by the player in a state encrypted with the system key and can be used as a model- or version-specific key by decrypting with the system key. To do. By setting in this way, for example, in the case of a secure system as a model (platform), it is possible to apply the same content code to the entire model regardless of the version. If the version is vulnerable, it can be said that the content code is applied only to a certain version of the model.

図17、図18のいずれにおいても、階層構成内のノード鍵を適用した処理構成については、先に図12〜図16を参照して説明した処理と同様の処理が可能であり、特定のプレーヤを選択して、選択プレーヤにおいてのみ利用可能なコンテンツコードを設定して情報記録媒体に格納して提供することが可能となり、不正なプレーヤ情報を提示して不正にコンテンツコードを適用した不正処理を防止することが可能となる。   In both FIG. 17 and FIG. 18, the processing configuration to which the node key in the hierarchical configuration is applied can perform the same processing as the processing described above with reference to FIGS. It is possible to set a content code that can be used only by the selected player, store it on the information recording medium, and provide it, and perform unauthorized processing by applying unauthorized content code by presenting unauthorized player information. It becomes possible to prevent.

次に、図19に示すフローチャートを参照して、コンテンツコード中のセキュリティチェックコードを適用したセキュリティチェック処理および変換テーブルを適用した変換処理を伴うコンテンツ再生シーケンスについて説明する。   Next, with reference to the flowchart shown in FIG. 19, a content reproduction sequence involving a security check process to which a security check code in a content code is applied and a conversion process to which a conversion table is applied will be described.

まず、ステップS301において、セキュアVMは情報記録媒体からコンテンツコードを取得し、コンテンツコードにプレーヤ情報の取得要求が含まれているか否かを判定する。これは、例えば、図9に示すディレクトリ設定の場合、プレーヤ情報の判別に適用するコードを格納したコンテンツコードファイル[00000.svm]を読み取って判定する。   First, in step S301, the secure VM acquires a content code from the information recording medium, and determines whether or not a player information acquisition request is included in the content code. For example, in the case of the directory setting shown in FIG. 9, the content code file [00000. svm] is read and determined.

コンテンツコードにプレーヤ情報の取得要求が含まれていない場合は、ステップS306に進む。コンテンツコードにプレーヤ情報の取得要求が含まれている場合は、ステップS302に進み、コンテンツコードに応じて、セキュリティチェックに必要なプレーヤ情報を取得する。これらの情報には、例えば図11を参照して説明したプレーヤ証明書などが含まれる。   If the content code does not include a player information acquisition request, the process proceeds to step S306. If the content code includes a player information acquisition request, the process advances to step S302 to acquire player information necessary for the security check according to the content code. These pieces of information include, for example, the player certificate described with reference to FIG.

次に、ステップS303において、プレーヤ対応のコンテンツコードを取得し、ステップS304において、コンテンツコードに含まれる暗号化データの復号鍵を取得し、復号を実行する。この処理態様としては様々であり、例えば、図13を参照して説明したコンテンツコードの設定では、セキュアVMは、情報処理装置内のメモリに格納された暗号鍵セットから指定ノード鍵(グループ鍵など)を取得して、コンテンツコードの暗号化データの復号を実行する。図14に示すコンテンツコードの設定の場合は、先に図15を参照して説明したように、情報処理装置内のメモリに格納された暗号鍵セットから指定ノード鍵(グループ鍵など)を取得して、コンテンツコードに含まれるオリジナル暗号鍵の暗号化データを復号してオリジナル暗号鍵を取得した後、取得したオリジナル暗号鍵を適用してコンテンツコードに含まれる暗号化データの復号を実行する。なお、鍵指定情報や、暗号化データの位置情報は、コンテンツコードあるいはその他のデータファイルから取得される。   Next, in step S303, a content code corresponding to the player is obtained, and in step S304, a decryption key of the encrypted data included in the content code is obtained, and decryption is executed. For example, in the setting of the content code described with reference to FIG. 13, the secure VM uses the specified node key (group key or the like) from the encryption key set stored in the memory in the information processing apparatus. ) And decrypt the encrypted data of the content code. In the case of the content code setting shown in FIG. 14, as described above with reference to FIG. 15, the designated node key (group key or the like) is acquired from the encryption key set stored in the memory in the information processing apparatus. The encrypted data of the original encryption key included in the content code is decrypted to acquire the original encryption key, and then the encrypted data included in the content code is decrypted by applying the acquired original encryption key. The key designation information and the position information of the encrypted data are acquired from the content code or other data file.

ステップS305において、コンテンツコードの復号に成功したか否かを判定し、失敗した場合は、処理を中止して終了する。この場合は、コンテンツコードに対応するプレーヤ対応の正しい鍵適用がなされなかったことを意味し、この場合はコンテンツコードを利用した処理、例えばセキュリティチェック処理、あるいは変換テーブルに基づくコンテンツのデータ変換処理は実行されず、結果としてコンテンツの利用が禁止される。   In step S305, it is determined whether or not the content code has been successfully decoded. If the content code has failed, the process is terminated and the process ends. In this case, it means that the correct key corresponding to the player corresponding to the content code has not been applied. In this case, processing using the content code, for example, security check processing or content data conversion processing based on the conversion table is not performed. It is not executed, and as a result, the use of the content is prohibited.

ステップS305において、コンテンツコードの復号に成功したと判定されると、ステップS306に進みコンテンツコードを利用した処理が実行される。すなわち、セキュリティチェック処理、あるいは変換テーブルに基づくコンテンツのデータ変換処理が実行され、コンテンツの利用が行なわれる。   If it is determined in step S305 that the content code has been successfully decoded, the process proceeds to step S306, and processing using the content code is executed. That is, the security check process or the data conversion process of the content based on the conversion table is executed, and the content is used.

なお、処理対象のコンテンツコードによって、セキュアVMの実行する処理は異なる。例えば、コンテンツコードがセキュリティチェックコードである場合は、コンテンツコードに基づくセキュリティチェック処理を実行し、コンテンツコードが、情報記録媒体格納コンテンツの構成データのデータ変換処理に適用するデータ生成処理コードである場合は、コンテンツコードに基づいて、情報記録媒体格納コンテンツのデータ変換処理に適用するデータ生成を実行する。また、コンテンツコードが、情報記録媒体格納コンテンツの構成データの一部に情報処理装置またはコンテンツ利用アプリケーションに対応する識別情報を埋め込むデータ変換処理に適用するデータ生成処理コードである場合は、コンテンツコードに基づいて、識別情報を埋め込むデータ変換処理に適用するデータ生成を実行する。   The process executed by the secure VM differs depending on the content code to be processed. For example, when the content code is a security check code, security check processing based on the content code is executed, and the content code is a data generation processing code applied to the data conversion processing of the configuration data of the information recording medium storage content Performs data generation to be applied to the data conversion processing of the information recording medium storage content based on the content code. In addition, when the content code is a data generation processing code applied to data conversion processing in which identification information corresponding to the information processing apparatus or the content use application is embedded in a part of the configuration data of the information recording medium storage content, Based on this, data generation to be applied to data conversion processing for embedding identification information is executed.

[7.情報処理装置の構成]
次に、図20を参照して、上述した再生(プレーヤ)アプリケーションおよびセキュアVMを適用したデータ処理を実行する情報処理装置のハードウェア構成例について説明する。情報処理装置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に各ブロックが接続されている。
[7. Configuration of information processing apparatus]
Next, a hardware configuration example of an information processing apparatus that executes data processing using the above-described reproduction (player) application and secure VM will be described with reference to FIG. The information processing apparatus 800 performs an OS, content playback or recording application program, mutual authentication processing, various processing associated with content playback, such as security check processing based on the above-described security check code, data conversion processing using a conversion table, and the like. CPU 809 for executing data processing in accordance with various programs, ROM 808 as a storage area for programs and parameters, memory 810, input / output I / F 802 for inputting / outputting digital signals, input / output of analog signals, A / D, An input / output I / F 804 having a D / A converter 805, an MPEG codec 803 for performing MPEG data encoding and decoding processing, a TS / PS processing means 806 for performing TS (Transport Stream) / PS (Program Stream) processing, Authentication, encryption There are encryption processing means 807 for executing various encryption processes such as decryption processing of contents, a recording medium 812 such as a hard disk, a drive 811 for driving the recording medium 812, and inputting / outputting data recording / reproducing signals. Is connected.

情報処理装置(ホスト)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には、例えば、前述のプレーヤ証明書、さらに、プレーヤ証明書の署名検証などに適用する管理センタの公開鍵、さらに、ドライブとの認証処理などに際して適用するホスト対応秘密鍵、ホスト対応の公開鍵証明書、さらに、公開鍵証明書の無効化リストとしてのリボケーションリストなどが格納される。   In the ROM 808 or the recording medium 812, for example, the above-described player certificate, the public key of the management center that is applied to verifying the signature of the player certificate, and the host-compatible secret key that is applied to authentication processing with the drive, A public key certificate corresponding to the host and a revocation list as a public key certificate revocation list are stored.

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

[8.情報記録媒体製造装置および情報記録媒体]
次に、情報記録媒体製造装置および情報記録媒体について説明する。すなわち、上述したコンテンツ再生処理において適用される情報記録媒体の製造装置、方法、および情報記録媒体について説明する。
[8. 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を製造する装置である。情報記録媒体100には、セキュリティチェックコードや変換テーブルを含むコンテンツコードが格納される。コンテンツコードは、図13、図14を参照して説明したように、一部に様々なノード鍵あるいは乱数などによって生成されたオリジナル暗号鍵を適用して暗号化されたデータを含むコンテンツコードである。   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 100 stores a content code including a security check code and a conversion table. As described with reference to FIGS. 13 and 14, the content code is a content code including data encrypted by applying an original encryption key generated by various node keys or random numbers in part. .

情報記録媒体製造装置は、図21に示すように、情報記録媒体に記録するコンテンツデータを格納したコンテンツファイルを生成するコンテンツファイル生成手段901と、コンテンツの利用に際して実行すべきセキュリティチェック処理用のプログラムを含むコンテンツコードを格納したコンテンツコードファイルを生成するコンテンツコードファイル生成手段902と、コンテンツファイル生成手段901において生成したコンテンツファイル、およびコンテンツコードファイル生成手段902において生成したコンテンツコードファイルを情報記録媒体910に記録する記録手段903を有する。   As shown in FIG. 21, the information recording medium manufacturing apparatus includes a content file generating unit 901 that generates a content file storing content data to be recorded on the information recording medium, and a security check processing program to be executed when the content is used. Content code file generation means 902 for generating a content code file storing a content code including the content code generated by the content file generation means 901 and the content code file generated by the content code file generation means 902 as an information recording medium 910 Recording means 903 for recording.

コンテンツコードファイル生成手段902は、先に、図9を参照して説明たように、情報処理装置またはコンテンツ利用アプリケーションの種別に対応する複数のコンテンツコードファイルの生成処理を実行する構成である。コンテンツコードファイルに格納されるコンテンツコードは、先に図13、図14を参照して説明したように、一部に様々なノード鍵あるいは乱数などによって生成されたオリジナル暗号鍵を適用して暗号化されたデータを含むコンテンツコードである。   The content code file generation unit 902 is configured to execute generation processing of a plurality of content code files corresponding to the type of the information processing apparatus or the content use application, as described above with reference to FIG. The content code stored in the content code file is encrypted by applying an original encryption key generated by various node keys or random numbers, as described above with reference to FIGS. Content code including the processed data.

コンテンツコードファイル生成手段902は、各情報処理装置または再生アプリケーションを最下層ノードであるリーフに対応付けた階層構成を持つ鍵ツリー上のいずれかのノードに対応するノード鍵を適用して暗号化した暗号化データを含むコンテンツコードを格納したコンテンツコードファイルを生成する。具体的なコンテンツコードの暗号化態様としては、先に図13、図14を参照して説明した態様がある。すなわち、コンテンツコードファイル生成手段902は、コンテンツコードの構成データを、ノード鍵を直接適用して暗号化したコード情報暗号化データを含むコンテンツコードを格納したコンテンツコードファイルを生成するか、あるいは、コンテンツコードの構成データをノード鍵とは異なる固有暗号鍵(オリジナル暗号鍵)で暗号化したコード情報暗号化データと、固有暗号鍵をノード鍵で暗号化した暗号化鍵データを含むコンテンツコードを格納したコンテンツコードファイルを生成する。   The content code file generation unit 902 encrypts each information processing apparatus or playback application by applying a node key corresponding to any node on the key tree having a hierarchical configuration in which each information processing apparatus or playback application is associated with the leaf that is the lowest layer node. A content code file storing a content code including encrypted data is generated. As a specific content code encryption mode, there is the mode described above with reference to FIGS. That is, the content code file generation unit 902 generates a content code file that stores a content code including code information encrypted data obtained by encrypting content code configuration data by directly applying a node key. Stores content information including code information encryption data in which code configuration data is encrypted with a unique encryption key (original encryption key) different from the node key, and encryption key data in which the unique encryption key is encrypted with the node key Generate a content code file.

なお、コンテンツコードファイル生成手段902は、情報処理装置に対応するセキュリティチェックコード、および情報記録媒体格納コンテンツの構成データのデータ変換処理に適用するデータ生成処理コードの少なくともいずれかのコードを含むコンテンツコードを格納したコンテンツコードファイルを生成する構成であり、また、情報記録媒体格納コンテンツの構成データの一部に情報処理装置またはコンテンツ利用アプリケーションに対応する識別情報を埋め込むデータ変換処理に適用するデータ生成処理コードを含むコンテンツコードを格納したコンテンツコードファイルを生成する。   The content code file generation unit 902 includes a content code including at least one of a security check code corresponding to the information processing apparatus and a data generation processing code applied to the data conversion processing of the configuration data of the information recording medium storage content. Generation processing that generates a content code file that stores information, and that is applied to data conversion processing that embeds identification information corresponding to an information processing apparatus or content-use application in a part of the configuration data of information storage medium storage content A content code file storing a content code including a code is generated.

このような、情報記録媒体製造装置によって生成された情報記録媒体910には、図1他を参照して説明した各種のデータが記録される。具体的には、少なくともコンテンツデータを格納したコンテンツファイルと、コンテンツの利用に際して実行すべきセキュリティチェック処理用のプログラム、および情報記録媒体格納コンテンツの構成データのデータ変換処理に適用するデータ生成処理コードの少なくともいずれかのコードを含むコンテンツコードを格納したコンテンツコードファイルとを含む構成とされる。   Various data described with reference to FIG. 1 and the like are recorded on the information recording medium 910 generated by the information recording medium manufacturing apparatus. Specifically, a content file storing at least content data, a security check processing program to be executed when the content is used, and a data generation processing code applied to data conversion processing of the configuration data of the information recording medium storage content And a content code file storing a content code including at least one of the codes.

情報記録媒体910に記録されるコンテンツコードファイルは、コンテンツコードの構成データを暗号化した暗号化データを含む。具体的なコンテンツコードの暗号化態様としては、先に図13、図14を参照して説明した態様がある。すなわち、コンテンツコードの構成データを、ノード鍵を直接適用して暗号化したコード情報暗号化データを含むコンテンツコードを格納したコンテンツコードファイルや、コンテンツコードの構成データをノード鍵とは異なる固有暗号鍵(オリジナル暗号鍵)で暗号化したコード情報暗号化データと、固有暗号鍵をノード鍵で暗号化した暗号化鍵データを含むコンテンツコードを格納したコンテンツコードファイルなどが格納される。   The content code file recorded on the information recording medium 910 includes encrypted data obtained by encrypting the configuration data of the content code. As a specific content code encryption mode, there is the mode described above with reference to FIGS. That is, a content code file storing content code including code information encrypted data obtained by directly encrypting content code configuration data by applying a node key, or a unique encryption key different from the node key in content code configuration data A code information encrypted data encrypted with the (original encryption key) and a content code file storing a content code including the encryption key data obtained by encrypting the unique encryption key with the node key are stored.

なお、情報記録媒体910に記録されるコンテンツコードファイルは、情報処理装置に対応するセキュリティチェックコード、および情報記録媒体格納コンテンツの構成データのデータ変換処理に適用するデータ生成処理コードの少なくともいずれかのコードを含むコンテンツコードを格納したコンテンツコードファイルであり、また、情報記録媒体格納コンテンツの構成データの一部に情報処理装置またはコンテンツ利用アプリケーションに対応する識別情報を埋め込むデータ変換処理に適用するデータ生成処理コードを含むコンテンツコードを格納したコンテンツコードファイルが含まれる。   The content code file recorded on the information recording medium 910 is at least one of a security check code corresponding to the information processing device and a data generation processing code applied to the data conversion processing of the configuration data of the information recording medium storage content. A content code file storing a content code including a code, and data generation applied to a data conversion process in which identification information corresponding to an information processing device or a content application is embedded in a part of configuration data of information storage medium storage content A content code file storing a content code including a processing code is included.

以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。   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 configuration for executing the content code execution processing based on the strict player's validity confirmation is realized.
Specifically, the configuration of the content code in the configuration in which the content code recorded in the information recording medium is acquired and processing such as security check according to the content code, conversion of content data, and embedding of the player information in the content is executed. A digital signature generation process using a player-compatible secret key is executed for the data, and a verification process using a player-compatible public key for the digital signature is executed when the data processing program in the content code is executed. The configuration.
With this configuration, a configuration for executing content code execution processing based on strict player legitimacy confirmation is realized.

100 情報記録媒体
101 暗号化コンテンツ
102 MKB
103 タイトル鍵ファイル
104 使用許諾情報
105 コンテンツコード
106 変換テーブル
107 セキュリティチェックコード
120 ドライブ
121 データ処理部
140 ホスト
150 再生(プレーヤアプリケーション)
151 データ処理部
153 復号処理部
154 データ変換処理部
155 デコード処理部
156 メモリa
160 セキュアVM
161 メモリb
210 インデックス
220 ムービーオブジェクト
230 プレイリスト
240 クリップ
261,262,263 AVストリーム
271,272 コンテンツ管理ユニット(CPSユニット)
281 データ部
291 記録コンテンツ
292 コンテンツデータ
293 ブロークンデータ
295 変換エントリ
296 再生コンテンツ
297 変換データ
298 識別子設定変換データ
330 情報記録媒体
331 MKB
332 タイトル鍵ファイル
333 暗号化コンテンツ
334 コンテンツコード
335 セキュリティチェックコード
336 変換テーブル
340 ドライブ
345 ホスト
350 再生(プレーヤ)アプリケーション
351 デバイス鍵
352 トラックバッファ
353 平文TSバッファ
354 イベントハンドラ
355 プレーヤ情報
356 リアルタイムイベントハンドラ
360 セキュアVMブロック
361 セキュアVM
401 トラックバッファ格納データ
402 復号結果データ
403 ブロークンデータ
404 変換データ
405 識別子設定変換データ
406 変換処理済みデータ
601〜604 コンテンツコードファイル
610 情報記録媒体
621 セキュリティチェックコード
622 コンテンツコード
622 変換テーブル
631,632 グループ鍵
641 コンテンツコード
642 コンテンツコード暗号構成情報
643 暗号化鍵データ
650 プレーヤ格納鍵
651 セキュアVM用メモリ
652 セキュアVM
661 メモリ格納データ
662 暗号化鍵データ[X]
663 入力データ
664 出力データ
671 メモリ格納データ
672 入力データ
673 出力データ
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 記録媒体
901 コンテンツファイル生成手段
902 コンテンツコードファイル生成手段
903 記録手段
910 情報記録媒体
100 Information recording medium 101 Encrypted content 102 MKB
103 Title Key File 104 License Information 105 Content Code 106 Conversion Table 107 Security Check Code 120 Drive 121 Data Processing Unit 140 Host 150 Playback (Player Application)
151 Data processing unit 153 Decoding processing unit 154 Data conversion processing unit 155 Decoding processing unit 156 Memory a
160 Secure VM
161 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 portion 291 Recorded content 292 Content data 293 Broken data 295 Conversion entry 296 Playback content 297 Conversion data 298 Identifier setting conversion data 330 Information recording medium 331 MKB
332 Title key file 333 Encrypted content 334 Content code 335 Security check code 336 Conversion table 340 Drive 345 Host 350 Playback (player) application 351 Device key 352 Track buffer 353 Plain text TS buffer 354 Event handler 355 Player information 356 Real-time event handler 360 Secure VM block 361 Secure VM
401 Track buffer storage data 402 Decoding result data 403 Broken data 404 Conversion data 405 Identifier setting conversion data 406 Conversion processed data 601 to 604 Content code file 610 Information recording medium 621 Security check code 622 Content code 622 Conversion table 631, 632 Group key 641 Content code 642 Content code encryption configuration information 643 Encryption key data 650 Player storage key 651 Secure VM memory 652 Secure VM
661 Memory storage data 662 Encryption key data [X]
663 Input data 664 Output data 671 Memory storage data 672 Input data 673 Output data 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 901 Content file generation means 902 Content code file generation means 903 Recording means 910 Information recording medium

Claims (6)

情報処理装置であり、
情報記録媒体に記録されたデータ処理プログラムを含むコンテンツコードを取得し、第1メモリに取得したコンテンツコードを格納し、該コンテンツコードに従ったデータ処理を実行するデータ処理部と、
前記情報処理装置において実行するコンテンツ利用アプリケーションであるプレーヤに対応して設定され公開鍵と秘密鍵を格納した第2メモリを有し、
前記データ処理部は、
前記第1メモリに格納された前記コンテンツコードの構成データに対して、前記秘密鍵を適用したデジタル署名生成処理を実行し、
さらに、前記コンテンツコード中のデータ処理プログラムの実行に際して、前記デジタル署名に対する前記公開鍵を適用した検証処理を実行する情報処理装置。
An information processing device,
A data processing unit that acquires a content code including a data processing program recorded in the information recording medium, stores the acquired content code in the first memory, and executes data processing according to the content code;
A second memory that stores a public key and a secret key that are set in correspondence with a player that is a content-use application executed in the information processing apparatus;
The data processing unit
Executing digital signature generation processing applying the secret key to the configuration data of the content code stored in the first memory;
Furthermore, an information processing apparatus that executes a verification process using the public key for the digital signature when executing a data processing program in the content code.
前記データ処理部は、
前記コンテンツコードの少なくとも一部構成データを、前記第2メモリから取得した暗号鍵を適用して復号し、復号の結果取得したコンテンツコードに従ったデータ処理を実行する構成である請求項1に記載の情報処理装置。
The data processing unit
2. The configuration according to claim 1, wherein at least part of the configuration data of the content code is decrypted by applying an encryption key acquired from the second memory, and data processing according to the content code acquired as a result of the decryption is executed. Information processing device.
前記コンテンツコードは、情報処理装置に対応するセキュリティチェックコードを含み、
前記データ処理部は、
前記コンテンツコードに基づくセキュリティチェック処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
The content code includes a security check code corresponding to the information processing device,
The data processing unit
The information processing apparatus according to claim 1, wherein the information processing apparatus is configured to execute a security check process based on the content code.
前記データ処理部は、
前記公開鍵を格納したプレーヤ証明書を前記第2メモリから取得し、該プレーヤ証明書の正当性検証処理を実行し、正当性が確認されたことを条件として、該プレーヤ証明書の記録情報から、情報処理装置またはコンテンツ利用アプリケーションに対応する識別情報を取得し、該取得情報に従って、処理対象のコンテンツコードを選択する処理を実行する構成であることを特徴とする請求項1に記載の情報処理装置。
The data processing unit
The player certificate storing the public key is acquired from the second memory, the validity verification process of the player certificate is executed, and on the condition that the validity is confirmed, from the record information of the player certificate 2. The information processing according to claim 1, wherein identification information corresponding to the information processing apparatus or the content use application is acquired, and processing for selecting a content code to be processed is executed according to the acquired information. apparatus.
情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、前記情報処理装置において実行するコンテンツ利用アプリケーションであるプレーヤに対応して設定され公開鍵と秘密鍵を格納した第2メモリを有し、
前記情報処理装置のデータ処理部が、
情報記録媒体に記録されたデータ処理プログラムを含むコンテンツコードを取得し、第1メモリに取得したコンテンツコードを格納する処理と、
前記第1メモリに格納された前記コンテンツコードの構成データに対して、前記秘密鍵を適用したデジタル署名生成処理と、
さらに、前記コンテンツコード中のデータ処理プログラムの実行に際して、前記デジタル署名に対する前記公開鍵を適用した検証処理を実行する情報処理方法。
An information processing method executed in an information processing apparatus,
The information processing apparatus has a second memory that is set in correspondence with a player that is a content use application executed in the information processing apparatus and stores a public key and a secret key;
A data processing unit of the information processing apparatus;
A process of acquiring a content code including a data processing program recorded in the information recording medium and storing the acquired content code in the first memory;
A digital signature generation process in which the secret key is applied to the configuration data of the content code stored in the first memory;
An information processing method for executing a verification process using the public key for the digital signature when executing a data processing program in the content code.
情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、前記情報処理装置において実行するコンテンツ利用アプリケーションであるプレーヤに対応して設定され公開鍵と秘密鍵を格納した第2メモリを有し、
前記プログラムは、前記情報処理装置のデータ処理部に、
情報記録媒体に記録されたデータ処理プログラムを含むコンテンツコードを取得し、第1メモリに取得したコンテンツコードを格納する処理と、
前記第1メモリに格納された前記コンテンツコードの構成データに対して、前記秘密鍵を適用したデジタル署名の生成処理と、
さらに、前記コンテンツコード中のデータ処理プログラムの実行に際して、前記デジタル署名に対する前記公開鍵を適用した検証処理を実行させるプログラム。
A program for executing information processing in an information processing apparatus;
The information processing apparatus has a second memory that is set in correspondence with a player that is a content use application executed in the information processing apparatus and stores a public key and a secret key;
The program is stored in the data processing unit of the information processing apparatus.
A process of acquiring a content code including a data processing program recorded in the information recording medium and storing the acquired content code in the first memory;
A digital signature generation process in which the secret key is applied to the configuration data of the content code stored in the first memory;
Furthermore, a program for executing a verification process using the public key for the digital signature when executing the data processing program in the content code.
JP2011254037A 2011-11-21 2011-11-21 Information processing apparatus and method, and computer program Active JP4941611B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011254037A JP4941611B2 (en) 2011-11-21 2011-11-21 Information processing apparatus and method, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011254037A JP4941611B2 (en) 2011-11-21 2011-11-21 Information processing apparatus and method, and computer program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005344699A Division JP5034227B2 (en) 2005-11-29 2005-11-29 Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program

Publications (2)

Publication Number Publication Date
JP2012085320A true JP2012085320A (en) 2012-04-26
JP4941611B2 JP4941611B2 (en) 2012-05-30

Family

ID=46243613

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011254037A Active JP4941611B2 (en) 2011-11-21 2011-11-21 Information processing apparatus and method, and computer program

Country Status (1)

Country Link
JP (1) JP4941611B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002014683A (en) * 2000-06-28 2002-01-18 Pioneer Electronic Corp Recording medium and recording data creating device therefor, and data restoration device
JP2003524252A (en) * 2000-02-21 2003-08-12 エヌサイファー コーポレイション リミテッド Controlling access to resources by programs using digital signatures
JP2003283494A (en) * 2002-03-27 2003-10-03 Ntt Docomo Inc Access control method of communication terminal, certification program providing device, management device and communication terminal
JP2004080103A (en) * 2002-08-09 2004-03-11 Kenwood Corp Authentication system, authentication apparatus, authentication method and program
JP2005092830A (en) * 2003-08-14 2005-04-07 Sony Corp Information processing device, information recording medium, information processing method, and computer program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003524252A (en) * 2000-02-21 2003-08-12 エヌサイファー コーポレイション リミテッド Controlling access to resources by programs using digital signatures
JP2002014683A (en) * 2000-06-28 2002-01-18 Pioneer Electronic Corp Recording medium and recording data creating device therefor, and data restoration device
JP2003283494A (en) * 2002-03-27 2003-10-03 Ntt Docomo Inc Access control method of communication terminal, certification program providing device, management device and communication terminal
JP2004080103A (en) * 2002-08-09 2004-03-11 Kenwood Corp Authentication system, authentication apparatus, authentication method and program
JP2005092830A (en) * 2003-08-14 2005-04-07 Sony Corp Information processing device, information recording medium, information processing method, and computer program

Also Published As

Publication number Publication date
JP4941611B2 (en) 2012-05-30

Similar Documents

Publication Publication Date Title
JP5034227B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP4655951B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP4899442B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP4654806B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
US7746738B2 (en) Data processing method, information recording medium manufacturing management system, recording data generation apparatus and method, and computer program
JP4882636B2 (en) Information processing apparatus, information recording medium, information processing method, and computer program
US8625967B2 (en) Information processing device, information recording medium manufacturing device, information recording medium, methods thereof, and computer program
JP4140624B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP4862949B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP4941611B2 (en) Information processing apparatus and method, and computer program
JP4862958B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP4862957B2 (en) Information processing apparatus, information recording medium manufacturing apparatus, information recording medium and method, and computer program
JP5252060B2 (en) Information processing apparatus, information recording medium, information processing method, and computer program
JP4905585B2 (en) Information recording medium and program

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20120120

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120131

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

R151 Written notification of patent or utility model registration

Ref document number: 4941611

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

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