JP2006119755A - Content use information storage device and apparatus for using content - Google Patents

Content use information storage device and apparatus for using content Download PDF

Info

Publication number
JP2006119755A
JP2006119755A JP2004304718A JP2004304718A JP2006119755A JP 2006119755 A JP2006119755 A JP 2006119755A JP 2004304718 A JP2004304718 A JP 2004304718A JP 2004304718 A JP2004304718 A JP 2004304718A JP 2006119755 A JP2006119755 A JP 2006119755A
Authority
JP
Japan
Prior art keywords
content
usage information
information
key
unit
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
JP2004304718A
Other languages
Japanese (ja)
Other versions
JP4671657B2 (en
Inventor
Yoshihiro Hori
吉宏 堀
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co Ltd
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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2004304718A priority Critical patent/JP4671657B2/en
Publication of JP2006119755A publication Critical patent/JP2006119755A/en
Application granted granted Critical
Publication of JP4671657B2 publication Critical patent/JP4671657B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a reproducing device that protects users' right to reproduce content and that, in the case of reproduction of licensed data with a restriction on the number of reproduction, does not regard some kinds of reproduction intended for cue or audition as reproduction consuming the licensed data. <P>SOLUTION: To determine the consumption of the licensed data, reproduction time, i.e., the time elapsed before the decoding process of a decoding part 304, is measured. If reproduction is not regarded as consuming the licensed data, the licensed data is restored to its state before its output. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、コンテンツ利用情報、あるいは、コンテンツデータの再生に関する制限情報に基づいて、コンテンツデータの利用を制限する機能を備えたストレージデバイスから、出力されたこれらの情報を受け取ってコンテンツを再生する装置において、受け取ったコンテンツ利用情報、あるいは、コンテンツデータによる再生が行われなかった場合、あるいは、再生が試聴の範囲であり、再生とみなさない場合、ストレージデバイス内の再生に関する制限情報を安全に出力前の状態に復元する技術に関する。   The present invention is an apparatus for receiving content output from a storage device having a function of restricting the use of content data based on content usage information or restriction information relating to the reproduction of content data and reproducing the content. In this case, if playback using the received content usage information or content data is not performed, or if playback is within the audition range and is not regarded as playback, the restriction information related to playback in the storage device is not output safely. It is related with the technique which restores to the state.

コンテンツデータを保護する著作権保護方式として、コンテンツデータを暗号化し、その復号鍵(以下、コンテンツ鍵と称す)を含むコンテンツ利用情報(以下、ライセンスデータと称す)の秘匿性を高めて管理する方式がよく知られている。このような、ライセンスデータの秘匿性を高めた著作権保護方式を利用したコンテンツデータ配信システムとして、例えば、以下の特許文献1では、ライセンスデータを非暗号化の状態で扱う装置として、サーバ装置、ストレージデバイスとしてのメモリカード、利用装置としてのデコーダの3つの装置を挙げ、サーバ装置とストレージデバイス、および、ストレージデバイスと利用装置の間でのライセンスデータの送受信を、これらの装置間に暗号化通信路を構築し、その暗号化通信路を介して行い、また、これらの記録装置、ストレージデバイス、利用装置には、暗号化されたライセンスデータを扱えるTRM(Tamper-Resistant-Module)を備えることが示されている。   As a copyright protection method for protecting content data, a method of encrypting content data and managing confidentiality of content usage information (hereinafter referred to as license data) including its decryption key (hereinafter referred to as content key) Is well known. As such a content data distribution system using a copyright protection method that increases the confidentiality of license data, for example, in Patent Document 1 below, as a device that handles license data in an unencrypted state, a server device, There are three devices: a memory card as a storage device and a decoder as a user device. Encrypted communication between the server device and storage device, and transmission and reception of license data between the storage device and user device. The recording device, the storage device, and the utilization device may be provided with a TRM (Tamper-Resistant-Module) that can handle encrypted license data. It is shown.

暗号化通信路の構築では、まず、ライセンスデータを提供する装置(以下、ライセンス提供装置と称す)が、公開鍵を含んだ証明書をライセンスデータを享受する側装置(以下、ライセンス享受装置と称す)に送信する。そして、ライセンス提供装置が、この証明書を検証し、検証の結果、ライセンス供受装置から送信された証明書が正規の証明書あり、かつ、証明書破棄リストによって、無効とされていない場合に、この証明書に含まれる公開鍵を利用して、装置間で鍵交換を行う。そして、ライセンス提供装置からライセンス享受装置に送られた鍵で、暗号化されたライセンスデータが、ライセンス提供装置からライセンス享受装置に送信される。   In constructing an encrypted communication path, first, an apparatus that provides license data (hereinafter referred to as a license providing apparatus) receives a certificate including a public key from a side apparatus that receives license data (hereinafter referred to as a license receiving apparatus). ). Then, the license providing device verifies this certificate, and if the verification result indicates that the certificate transmitted from the license receiving device is a valid certificate and is not invalidated by the certificate revocation list. Using the public key included in this certificate, key exchange is performed between the devices. Then, the encrypted license data is transmitted from the license providing apparatus to the license receiving apparatus with the key sent from the license providing apparatus to the license receiving apparatus.

TRMは、物理的に秘匿性が保護された回路モジュールであって、暗号化通信路を介してのみ、ライセンスデータをやり取りすることができるよう構成されている。   The TRM is a circuit module in which confidentiality is physically protected, and is configured so that license data can be exchanged only via an encrypted communication path.

なお、ライセンスデータの取得時には、メモリカードはサーバ装置と通信可能な端末装置に装着され、端末装置を介して、サーバ装置からライセンスデータを受信する。また、コンテンツの利用時には、メモリカードはデコーダを内蔵した端末装置に装着され、端末装置を介して、デコーダへライセンスデータを送信する。   When acquiring license data, the memory card is mounted on a terminal device that can communicate with the server device, and receives license data from the server device via the terminal device. Further, when the content is used, the memory card is attached to a terminal device having a built-in decoder, and the license data is transmitted to the decoder via the terminal device.

また、このシステムでは、メモリカード自身が、ライセンスデータ内の制限情報にしたがって、ライセンスデータの出力を制限することができる。たとえば、ライセンスデータは、このライセンスデータを利用してコンテンツデータを再生できる回数を示す制御情報を含んでいる。再生時、メモリカードは、ライセンスデータ内の再生回数の制限情報を確認し、ライセンスデータの出力可否を判断する。出力時には、この制御情報の更新を行い、再生が繰り返されたのち、最終的にはライセンスデータの出力が禁止される。   In this system, the memory card itself can restrict the output of license data according to the restriction information in the license data. For example, the license data includes control information indicating the number of times content data can be reproduced using this license data. At the time of reproduction, the memory card confirms the reproduction number limit information in the license data and determines whether or not the license data can be output. At the time of output, this control information is updated, and after reproduction is repeated, the output of license data is finally prohibited.

以上のように、コンテンツ配信サービスにおいては、コンテンツデータの暗号化と、ライセンスデータの秘匿によって、コンテンツに係る著作権保護の徹底が図られている。さらに、再生回数制御やコピー回数制御などの利用制限の導入によって、様々なサービス形態への適応を可能としている。   As described above, in content distribution services, copyright protection related to content is thoroughly implemented by encrypting content data and concealing license data. Furthermore, introduction of usage restrictions such as playback count control and copy count control enables adaptation to various service forms.

このようにして、コンテンツ著作権の保護の徹底を図ることにより、コンテンツ権利者の権利を守り、コンテンツの安全な提供を可能にしている。その結果、配信サービスの対象となるコンテンツのラインアップも増え、コンテンツ配信を受けるユーザのニーズを、より広範に満たし得るようになる。
特開2002−875550号公報
In this way, by thoroughly protecting the content copyright, the rights of the content right holder are protected and the content can be provided safely. As a result, the lineup of contents targeted for distribution services also increases, and the needs of users who receive contents distribution can be satisfied more widely.
JP 2002-875550 A

上記のように、従来のコンテンツ配信システムにおいては、再生回数を制限するライセンデータを、ストレージデバイスから再生装置に対して送信したが、そのライセンスデータを用いた再生が、再生装置において行われなかった場合、ユーザは再生する権利を失ってしまう。また、試聴を目的として、コンテンツの一部を再生した場合においても、同様にユーザは、1回の再生する権利を失ってしまう。   As described above, in the conventional content distribution system, the license data for limiting the number of playbacks is transmitted from the storage device to the playback device, but playback using the license data is not performed in the playback device. In this case, the user loses the right to play. Further, even when a part of the content is reproduced for the purpose of trial listening, the user similarly loses the right to reproduce once.

また、コピー回数を制限するライセンスデータを、コピーを目的として他の記憶装置に送信したが、他の記憶装置において書き込みに失敗した場合、ユーザは複製する権利を失ってしまう。   In addition, license data for limiting the number of copies is transmitted to another storage device for the purpose of copying. If writing fails in another storage device, the user loses the right to copy.

さらに、ライセンスデータを、ムーブを目的として他の記憶装置に送信し、他の記憶装置において書き込みに失敗した場合、ユーザはライセンスデータを失ってしまう。   Further, when license data is transmitted to another storage device for the purpose of movement and writing fails in the other storage device, the user loses the license data.

本発明は、こうした状況に鑑みてなされたものであり、その目的は、コンテンツの著作権の保護しながら、ユーザが持つ権利を守ることができるストレージデバイス、再生装置を提供することにある。より詳細には、ストレージデバイスから送信されたライセンスデータの消費(再生装置による再生あるいはストレージデバイスに対する記憶)が、完遂されなかった場合、安全に且つ迅速に当該ライセンスデータを送信元のストレージデバイスの内に復元するための機能を備えるストレージデバイスおよび再生装置を提供することにある。   The present invention has been made in view of such circumstances, and an object of the present invention is to provide a storage device and a playback apparatus that can protect a user's rights while protecting the copyright of the content. More specifically, if consumption of license data transmitted from the storage device (playback by the playback device or storage to the storage device) has not been completed, the license data is safely and quickly stored in the source storage device. It is an object of the present invention to provide a storage device and a playback apparatus that have a function for restoring to a storage device.

上記課題に鑑み、本発明はそれぞれ以下の特徴を有する。   In view of the above problems, the present invention has the following features.

請求項1の発明は、暗号化コンテンツデータを復号するためのコンテンツ鍵を含むコンテンツ利用情報を記録し、外部に前記コンテンツ利用情報を提供するコンテンツ利用情報記憶装置であって、外部との間でデータの授受を行う制御するインタフェースと、前記コンテンツ利用情報を格納する記憶部と、前記インタフェースを介して、第1の対称鍵を、コンテンツ利用情報提供先との間で共有する第1の暗号処理部と、前記インタフェースを介して、前記第1の対称鍵を用いてコンテンツ利用情報の出力毎にテンポラルに生成される第2の対称鍵を前記コンテンツ利用情報提供先との間で共有し、前記第2の対称鍵を前記コンテンツ利用情報出力後に破棄する第2の暗号処理部と、前記第2の対称鍵によって前記コンテンツ利用情報を暗号化して、前記インタフェースを介して出力する第3の暗号処理部と、前記第2の対称鍵と該コンテンツ利用情報の出力に関する進行状態を示す第1の状態情報を含む処理履歴情報を格納するログ記憶部と、前記コンテンツ利用情報を前記コンテンツ利用情報提供先における処理の進行状態を示す第2の状態情報を含む提供先状態情報とこの提供先状態情報に対する電子署名とを連結したデータを、前記インタフェースを介して受け取り、前記第1の暗号処理部にて共有している第1の対称鍵、および、前記コンテンツ利用情報出力時に前記第2の暗号処理部にて共有し前記ログ記憶部に格納された第2の対称鍵によって、その正当性を検証し、正当な場合、前記記憶部に格納されたこの提供先状態情報の対象となるコンテンツ利用情報の復元を許可するか否か判断する検証部と、前記記憶部に格納されている前記コンテンツ利用情報の出力を制御する制御部とを備え、前記制御部は、前記コンテンツ利用情報を出力する場合、出力するコンテンツ利用情報に含まれるこのコンテンツ利用情報の出力に関する制御情報を解釈し、出力用ライセンス利用情報またはこのライセンス利用情報を第3の暗号処理部に与えると共に、前記記憶部に格納されているこのライセンス利用情報の制御情報の変更あるいはこのコンテンツ利用情報の出力禁止し、コンテンツ利用情報提供先から前記提供先状態情報を受け取り、かつ、前記検証部において前記対象コンテンツ利用情報の復元が許可された場合、このライセンス利用情報の制御情報を出力前の状態に戻す、あるいはこのコンテンツ利用情報の出力を許可することを特徴とする。   The invention of claim 1 is a content usage information storage device that records content usage information including a content key for decrypting encrypted content data and provides the content usage information to the outside. A first encryption process for sharing a first symmetric key with a content usage information provider via the interface for controlling data transmission / reception, a storage unit for storing the content usage information, and the interface A second symmetric key that is temporally generated for each output of the content usage information using the first symmetric key via the interface, and the content usage information providing destination, A second encryption processing unit for discarding the second symmetric key after outputting the content usage information; and encrypting the content usage information by the second symmetric key And a log that stores processing history information including a third encryption processing unit that is output via the interface, the second symmetric key, and first state information indicating a progress state relating to the output of the content usage information. Data obtained by concatenating a storage unit, provision destination state information including second state information indicating a progress state of processing in the content utilization information provision destination and the electronic signature for the provision destination state information, with respect to the content use information, The first symmetric key received via the interface and shared by the first cryptographic processing unit, and shared by the second cryptographic processing unit when the content usage information is output, and stored in the log storage unit The validity of the second symmetric key is verified, and if it is valid, the content usage information that is the target of the provision destination state information stored in the storage unit is restored. A verification unit that determines whether to permit or not, and a control unit that controls output of the content usage information stored in the storage unit, and the control unit outputs the content usage information when outputting the content usage information The control information regarding the output of the content usage information included in the content usage information is interpreted, and the license usage information for output or the license usage information is provided to the third encryption processing unit, and the license stored in the storage unit When the control information of the usage information is changed or the output of the content usage information is prohibited, the provider status information is received from the content usage information provider, and the restoration of the target content usage information is permitted in the verification unit, Return the license usage information control information to the state before output, or It is characterized by permitting output.

請求項2の発明は、暗号化コンテンツデータを復号するためのコンテンツ鍵を含むコンテンツ利用情報の提供を受けて、暗号化コンテンツデータを復号または再生するコンテンツ利用装置であって、外部との間でデータの授受を制御するインタフェースと、前記インタフェースを介して、第1の対称鍵を、コンテンツ利用情報提供元との間で共有する第1の暗号処理部と、前記インタフェースを介して、前記第1の対称鍵を用いてコンテンツ利用情報を受け取る毎にテンポラルに生成され第2の対称鍵を前記コンテンツ利用情報提供元との間で共有し、前記第2の対称鍵を前記コンテンツ利用情報受け取り後破棄する第2の暗号処理部と、前記インタフェースを介して受け取った暗号化されたコンテンツ利用情報を、前記第2の対称鍵によって復号しライセンス利用情報を抽出する第3の暗号処理部と、前記第3の暗号処理部によって抽出された前記コンテンツ利用情報を格納する記憶部と、前記第2の対称鍵とこのコンテンツ利用情報の受け取りと受け取り後の処理の進行状態を示す状態情報を含む処理履歴情報を格納するログ記憶部と、前記ログ記憶部に格納された前記状態情報を含む提供先状態情報を生成し、この提供先状態情報に対する前記第1の暗号処理部にて共有している第1の対称鍵および前記コンテンツ利用情報受け取り時に前記第2の暗号処理部にて共有し前記ログ記憶部に格納された第2の対称鍵による電子署名データを演算し、両者を連結した署名付き提供先状態情報を、前記インタフェースを介して出力する署名部とを備えることを特徴とする。   The invention of claim 2 is a content use apparatus for receiving or providing content use information including a content key for decrypting encrypted content data, and decrypting or reproducing the encrypted content data. An interface for controlling the exchange of data, a first cryptographic processing unit for sharing a first symmetric key with a content usage information provider via the interface, and the first encryption key via the interface. Each time the content usage information is received using the symmetric key, the second symmetric key generated temporally is shared with the content usage information provider, and the second symmetric key is discarded after the content usage information is received. And the encrypted content usage information received via the interface by the second symmetric key. A third encryption processing unit that decrypts and extracts license usage information; a storage unit that stores the content usage information extracted by the third encryption processing unit; a second symmetric key; and A log storage unit that stores processing history information including state information indicating a progress state of reception and processing after the reception, and provision destination state information that includes the state information stored in the log storage unit, and generates the provision destination The first symmetric key shared by the first cryptographic processing unit for the state information and the second symmetric key shared by the second cryptographic processing unit upon receipt of the content usage information and stored in the log storage unit And a signature unit that calculates electronic signature data using a symmetric key and outputs the signed provider destination state information obtained by connecting the two through the interface.

請求項3の発明は、暗号化コンテンツデータを復号するためのコンテンツ鍵を含むコンテンツ利用情報の提供を受けて、暗号化コンテンツデータを復号または再生するコンテンツ利用装置であって、外部との間でデータの授受を制御するインタフェースと、前記インタフェースを介して、第1の対称鍵を、コンテンツ利用情報提供元との間で共有する第1の暗号処理部と、前記インタフェースを介して、前記第1の対称鍵を用いてコンテンツ利用情報を受け取る毎にテンポラルに生成される第2の対称鍵を前記コンテンツ利用情報提供元との間で共有し、前記第2の対称鍵を前記コンテンツ利用情報受け取り後破棄する第2の暗号処理部と、前記インタフェースを介して受け取った暗号化されたコンテンツ利用情報を、前記第2の対称鍵によって復号しライセンス利用情報を抽出する第3の暗号処理部と、前記暗号化コンテンツデータを、前記第3の暗号処理部によって抽出された前記コンテンツ利用情報に含まれるコンテンツ鍵によって復号するコンテンツ復号部と、前記第2の対称鍵と該コンテンツ利用情報の受け取りと受け取り後の処理の進行状態を示す状態情報を含む処理履歴情報を格納するログ記憶部と、前記ログ記憶部に格納された前記状態情報を含む提供先状態情報を生成し、この提供先状態情報に対する前記第1の暗号処理部にて共有している第1の対称鍵および前記コンテンツ利用情報受け取り時に前記第2の暗号処理部にて共有し前記ログ記憶部に格納された第2の対称鍵による電子署名データを演算し、両者を連結した署名付き提供先状態情報を、前記インタフェースを介して出力する署名部とを備えることを特徴とする。   The invention of claim 3 is a content use apparatus for receiving or providing content use information including a content key for decrypting encrypted content data, and decrypting or reproducing the encrypted content data. An interface for controlling the exchange of data, a first cryptographic processing unit for sharing a first symmetric key with a content usage information provider via the interface, and the first encryption key via the interface. A second symmetric key that is temporally generated every time content usage information is received using the symmetric key, and the content usage information provider, after the second symmetric key is received. The second cryptographic processing unit to be discarded and the encrypted content usage information received via the interface are converted into the second symmetric key. A third encryption processing unit for decrypting and extracting license usage information; and a content decryption unit for decrypting the encrypted content data with a content key included in the content usage information extracted by the third encryption processing unit A log storage unit for storing processing history information including state information indicating the progress state of the second symmetric key and the content usage information received and received, and the state stored in the log storage unit Providing destination state information including information, and receiving the first symmetric key shared by the first encryption processing unit for the provision destination state information and the content usage information to the second encryption processing unit The digital signature data with the second symmetric key stored in the log storage unit is calculated, and the provided provider status information obtained by concatenating the digital signature data is Characterized in that it comprises a signature unit which outputs through the face.

本発明の特徴ないしその技術的意義は、以下に示す実施の形態の説明により更に明らかとなろう。ただし、以下の実施の形態は、あくまでも、本発明の一つの実施形態であって、本発明ないし各構成要件の用語の意義等は、以下の実施の形態に記載されたものに制限されるものではない。   The features of the present invention and the technical significance thereof will become more apparent from the following description of embodiments. However, the following embodiment is only one embodiment of the present invention, and the meaning of the present invention or the terms of each constituent element is limited to those described in the following embodiment. is not.

本発明によれば、再生回数制限があるライセンスデータを用いた再生において、頭出しや試聴などを目的とした一部の再生においては、ライセンスを消費する再生とみなさないため、ユーザが持つコンテンツ再生の権利を保護することができる。   According to the present invention, in playback using license data with a limited number of playbacks, some playback for the purpose of cueing or auditioning is not regarded as playback that consumes a license. Can protect their rights.

本発明の実施の形態について、図を参照しながら以下に説明する。   Embodiments of the present invention will be described below with reference to the drawings.

(第1の実施の形態)
図1は、実施の形態に係るデータ管理システム10の全体構成を示す。
(First embodiment)
FIG. 1 shows an overall configuration of a data management system 10 according to the embodiment.

データ管理システム10は、データを送信する配信サーバ100、配信サーバ100から送信されたデータをストレージデバイス200に記録する端末装置150、ストレージデバイス200に記録されたデータを再生する再生装置300、データを記録保持するストレージデバイス200を備える。   The data management system 10 includes a distribution server 100 that transmits data, a terminal device 150 that records data transmitted from the distribution server 100 in the storage device 200, a playback device 300 that reproduces data recorded in the storage device 200, and data A storage device 200 for recording and holding is provided.


※データ管理システム
本実施の形態のストレージデバイス200は、データを保持する記憶媒体だけでなく、端末装置150または再生装置300などのホスト装置との間で、データの入出力を制御するコントローラなどの構成を備える、ドライブ一体型のストレージデバイスである。本実施の形態では、ストレージデバイス200として、ハードディスクドライブを例にとって説明する。

* Data management system The storage device 200 according to the present embodiment is not only a storage medium that holds data, but also a controller that controls input / output of data with a host device such as the terminal device 150 or the playback device 300. A drive-integrated storage device having a configuration. In the present embodiment, a hard disk drive will be described as an example of the storage device 200.

従来のハードディスクドライブは、一つのホスト装置に固定的に接続されて使用されるのが一般的であったが、本実施の形態のストレージデバイス200は、端末装置150および再生装置300などのホスト装置に対して、着脱が自在になされるよう構成されている。すなわち、本実施の形態のストレージデバイス200は、CDやDVDなどと同様にホスト装置から取り外して持ち運ぶことができ、端末装置150、再生装置300のほか、記録および再生が可能な記録再生装置などの複数のホスト装置間で共用することが可能な記憶装置である。   The conventional hard disk drive is generally used by being fixedly connected to one host device, but the storage device 200 of the present embodiment is a host device such as the terminal device 150 and the playback device 300. On the other hand, it is configured to be freely detachable. That is, the storage device 200 of the present embodiment can be removed from the host device and carried in the same way as a CD or DVD, and in addition to the terminal device 150 and the playback device 300, a recording and playback device capable of recording and playback can be used. A storage device that can be shared among a plurality of host devices.

このように、本実施の形態のストレージデバイス200は、複数のホスト装置に接続されることを前提にしており、たとえば、所有者以外の第三者のホスト装置に接続され、記録されたデータが読み出される可能性もある。   As described above, the storage device 200 according to the present embodiment is assumed to be connected to a plurality of host devices. For example, the storage device 200 is connected to a host device of a third party other than the owner, and the recorded data is stored in the storage device 200. There is also a possibility of being read out.

このストレージデバイス200に、音楽や映像などの著作権により保護されるべきコンテンツ、企業や個人の機密情報などの秘匿すべきデータを記録することを想定したとき、それらの秘匿データが外部に漏洩することを防ぐためには、ストレージデバイス200自身にデータを適切に保護するための構成を設け、十分な耐タンパ機能を持たせることが好ましい。   When it is assumed that contents to be protected by copyright such as music and video, confidential data such as corporate and personal information are recorded on the storage device 200, the confidential data leaks to the outside. In order to prevent this, it is preferable to provide the storage device 200 itself with a configuration for appropriately protecting data and to have a sufficient tamper resistance function.

このような観点から、本実施の形態のストレージデバイス200は、ホスト装置との間で秘匿データを入出力するときに、その秘匿データを暗号化してやり取りするための構成を備える。また、秘匿データを格納するために、通常の記憶領域とは異なる機密データ記憶領域を設け、その機密データ記憶領域はストレージデバイス200内に設けられた暗号エンジンを介さないとアクセスできないように構成する。この暗号エンジンは、正当な権限を有すると検証されたホスト装置のみと秘匿データの入出力を行う。   From such a viewpoint, the storage device 200 according to the present embodiment has a configuration for encrypting and exchanging confidential data when the confidential data is input and output with the host device. Further, in order to store confidential data, a confidential data storage area different from a normal storage area is provided, and the confidential data storage area is configured to be accessible only through a cryptographic engine provided in the storage device 200. . This cryptographic engine inputs / outputs secret data only to / from a host device verified as having a legitimate authority.

以下、このようなデータ保護機能を「セキュア機能」ともいう。   Hereinafter, such a data protection function is also referred to as a “secure function”.

上記の構成および機能により、ストレージデバイス200に記録された秘匿データを適切に保護することができる。   With the above configuration and function, the confidential data recorded in the storage device 200 can be appropriately protected.

ストレージデバイス200のリムーバブルメディアとしての特徴を最大限に生かすため、通常のデータについては、セキュア機能に非対応のホスト装置でも入出力可能とするのが好ましい。そのため、本実施の形態のストレージデバイス200は、従来のハードディスクとの互換性を保つべく、ANSI(American National Standards Institute)の標準規格であるATA(AT Attachment)に対応しており、上述のセキュア機能は、ATAの拡張命令として実現される。   In order to make the most of the characteristics of the storage device 200 as a removable medium, it is preferable that normal data can be input / output even by a host device that does not support the secure function. Therefore, the storage device 200 according to the present embodiment supports ATA (AT Attachment), which is a standard of ANSI (American National Standards Institute), in order to maintain compatibility with the conventional hard disk, and the secure function described above. Is realized as an ATA extension instruction.

以下、秘匿データの入出力の例として、映像などのコンテンツデータを記録再生する場合について説明する。コンテンツデータ自身を秘匿データとして扱ってもよいが、本実施の形態では、コンテンツデータを暗号化し、暗号化されたコンテンツデータ自身は、ストレージデバイス200に通常のデータとして記録する。そして、暗号化されたコンテンツを復号するための鍵(以下、コンテンツ鍵と称す)と、コンテンツの再生制御やライセンスの利用(再生)、ムーブ、コピーに関する制御に関する情報(以下、利用規則と称す)を含むデータ(以下、ライセンスデータと称す)を、秘匿データとして上述のセキュア機能を用いて入出力を行う。これにより、十分な耐タンパ性を維持しつつ、データの入出力を簡略化し、処理の高速化および消費電力の低減を図ることができる。   Hereinafter, a case where content data such as video is recorded and reproduced will be described as an example of confidential data input / output. Although the content data itself may be handled as confidential data, in the present embodiment, the content data is encrypted, and the encrypted content data itself is recorded as normal data in the storage device 200. Then, a key for decrypting the encrypted content (hereinafter referred to as a content key) and information regarding control of content reproduction control, license use (reproduction), move, and copy (hereinafter referred to as usage rules). Data (hereinafter referred to as license data) is input / output as confidential data using the above-described secure function. As a result, while maintaining sufficient tamper resistance, data input / output can be simplified, processing speed can be increased, and power consumption can be reduced.

ここで、ライセンスデータは、コンテンツ鍵や利用規則の他に、ライセンスデータを特定するための識別情報LicIDを含むものとする。また、利用規則として再生を目的としたライセンスデータを出力回数の上限を示す制御情報PCを含むものとする。ここでは、制御情報PCは、1バイトの符号なし整数とし、その値がライセンスデータを出力回数の上限値を示すものとし、ライセンスの出力毎に1減算されるものとする。また、PC=255は、例外として、再生回数の上限設定がないことを示し、再生を目的としたライセンスデータの出力によって、値を変化させないものとする。なお、ここで示した制御情報PCの設定方法および運用方法は、本実施の形態における一例であって、特に限定するものではない。   Here, the license data includes identification information LicID for specifying the license data in addition to the content key and the usage rule. Further, it is assumed that the license data intended for reproduction is included as control rules PC indicating the upper limit of the number of times of output. Here, it is assumed that the control information PC is a 1-byte unsigned integer, the value of which indicates the upper limit of the number of times the license data is output, and 1 is subtracted for each license output. PC = 255 indicates that, as an exception, there is no upper limit of the number of reproductions, and the value is not changed by the output of license data for reproduction. The control information PC setting method and operation method shown here are merely examples in the present embodiment, and are not particularly limited.

なお、以下においては、配信サーバ100、再生装置300などのホスト装置がストレージデバイス200に対して発行する命令のうち、セキュア機能のための拡張命令を「セキュアコマンド」とも呼び、その他の命令を「通常コマンド」とも呼ぶ。   In the following, among commands issued to the storage device 200 by a host device such as the distribution server 100 and the playback device 300, an extended command for a secure function is also referred to as a “secure command”, and other commands are “ Also called “normal command”.


※配信システム
図2は、実施の形態に係るコンテンツ配信システムの構成を示す。本実施の形態のコンテンツ配信システムは、コンテンツを配信する配信サーバ100、コンテンツの提供を受ける端末装置150、端末装置150に提供されたコンテンツが記録されるストレージデバイス200を含む。

* Distribution system FIG. 2 shows a configuration of a content distribution system according to the embodiment. The content distribution system according to the present embodiment includes a distribution server 100 that distributes content, a terminal device 150 that receives the content, and a storage device 200 in which the content provided to the terminal device 150 is recorded.

配信サーバ100および端末装置150は、それぞれ通信装置104、153を介して、ネットワークの一例とするインターネット20により接続される。   The distribution server 100 and the terminal device 150 are connected by the Internet 20 as an example of a network via the communication devices 104 and 153, respectively.

配信サーバ100は、暗号器102、暗号エンジン103、通信装置104、コンテンツデータベース105、ライセンスデータベース106、ユーザデータベース107、これらを制御するコントローラ101、およびそれらを電気的に接続するデータバス110を備える。   The distribution server 100 includes an encryption device 102, an encryption engine 103, a communication device 104, a content database 105, a license database 106, a user database 107, a controller 101 that controls them, and a data bus 110 that electrically connects them.

配信サーバ100の構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIなどで実現でき、ソフトウエア的にはメモリにロードされた記録制御機能のあるプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。   The configuration of the distribution server 100 can be realized in hardware by a CPU, memory, or other LSI of an arbitrary computer, and is realized in software by a program having a recording control function loaded in the memory. Here, however, the functional blocks realized by the cooperation are depicted. Accordingly, those skilled in the art will understand that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof.

暗号器102は、暗号化コンテンツを復号するためのコンテンツ鍵を含むライセンスデータLICを発行し、このコンテンツ鍵を用いて、コンテンツエンコーダ105にてコーディングされたコンテンツを暗号化する。暗号化されたコンテンツは、データバス110、通信装置104を介して、端末装置150に送信され、ストレージデバイス200に記録される。   The encryptor 102 issues license data LIC including a content key for decrypting the encrypted content, and encrypts the content coded by the content encoder 105 using the content key. The encrypted content is transmitted to the terminal device 150 via the data bus 110 and the communication device 104 and recorded in the storage device 200.

暗号エンジン103は、ユーザに提供するライセンスデータLICをストレージデバイス200に記録するために、ストレージデバイス200との間で暗号通信の制御を行う。暗号通信路は、配信サーバのデータバス110、通信装置104、インターネット20、端末装置150の通信装置153、データバス160、コントローラ151、ストレージインタフェース152を介して、直接ストレージメディア200との間で行われる。   The cryptographic engine 103 controls cryptographic communication with the storage device 200 in order to record the license data LIC provided to the user in the storage device 200. The encryption communication path is directly connected to the storage medium 200 via the data bus 110 of the distribution server, the communication device 104, the Internet 20, the communication device 153 of the terminal device 150, the data bus 160, the controller 151, and the storage interface 152. Is called.

通信装置104は、インターネット20を介して、他の装置とデータ交換を行う。ここでは、端末装置150とデータ交換を行う
コンテンツデータベース105は、ユーザに提供するコンテンツを保持する。ライセンスデータベース106は、コンテンツを暗号化するのに用いられるコンテンツ鍵を含むライセンスデータを保持する。ユーザデータベース107は、コンテンツの提供先であるユーザの情報を保持する。たとえば、ユーザの個人情報、ユーザの端末装置150のアドレス、コンテンツの購入履歴、課金情報などを保持してもよい。
The communication device 104 exchanges data with other devices via the Internet 20. Here, the content database 105 that exchanges data with the terminal device 150 holds content to be provided to the user. The license database 106 holds license data including a content key used for encrypting content. The user database 107 holds information about a user who is a content providing destination. For example, the user's personal information, the user's terminal device 150 address, content purchase history, billing information, and the like may be held.

配信サーバ100のコントローラ101は、ユーザの要求に応じてコンテンツデータベース105からコンテンツデータを読み出し、また、ライセンスデータベース106からライセンスデータLICを読み出す。読み出したコンテンツデータとライセンスデータLIC内のコンテンツ鍵を暗号器102に伝達し、また、ライセンスデータLICを暗号エンジン103に伝達する。そして、暗号器102にて、コンテンツ鍵でコンテンツデータを暗号化し、暗号化されたコンテンツデータを通信装置104を介して端末装置150に送信する。さらに、暗号エンジン103によって暗号通信路を構築し、これを介してライセンスデータLICを端末装置150に送信する。端末装置150は、受信したライセンスデータLICをストレージデバイス200に記録する。   The controller 101 of the distribution server 100 reads content data from the content database 105 and reads license data LIC from the license database 106 in response to a user request. The read content data and the content key in the license data LIC are transmitted to the encryption device 102, and the license data LIC is transmitted to the encryption engine 103. Then, the encryptor 102 encrypts the content data with the content key, and transmits the encrypted content data to the terminal device 150 via the communication device 104. Further, an encryption communication path is constructed by the encryption engine 103, and the license data LIC is transmitted to the terminal device 150 via the encryption communication path. The terminal device 150 records the received license data LIC in the storage device 200.

暗号化されたコンテンツデータおよびライセンスデータLICがストレージデバイス200に記録されると、端末装置150のユーザに対して、コンテンツの提供が行われたとして、このコンテンツ提供の対価を課金すべくユーザデータベース107を更新する。   When the encrypted content data and license data LIC are recorded in the storage device 200, the user database 107 is charged to charge the user for the terminal device 150 for the content provision. Update.

端末装置150は、ストレージインタフェース152、通信装置153、それらを制御するコントローラ151およびそれらを電気的に接続するデータバス160を備える。端末装置150の構成は、ハードウエア的には、任意のコンピュータのCPU、メモリ、その他のLSIなどで実現でき、ソフトウエア的にはメモリにロードされた記録制御機能のあるプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。   The terminal device 150 includes a storage interface 152, a communication device 153, a controller 151 that controls them, and a data bus 160 that electrically connects them. The configuration of the terminal device 150 can be realized in terms of hardware by a CPU, memory, or other LSI of an arbitrary computer, and can be realized in terms of software by a program having a recording control function loaded in the memory. Here, however, the functional blocks realized by the cooperation are depicted. Accordingly, those skilled in the art will understand that these functional blocks can be realized in various forms by hardware only, software only, or a combination thereof.

ストレージインタフェース152は、ストレージデバイス200とのデータの入出力を制御する。   The storage interface 152 controls data input / output with the storage device 200.

通信装置153は、インターネット20を介して、他の装置とデータ交換を行う。ここでは、配信サーバ100とデータ交換を行う。   The communication device 153 exchanges data with other devices via the Internet 20. Here, data exchange with the distribution server 100 is performed.

端末装置150のコントローラ151は、ユーザの要求を、通信装置153を介して配信サーバ100に送信する。また、この応答として、配信サーバ100から提供される暗号化されたコンテンツデータとライセンスデータを通信装置153を介して受信し、ストレージインタフェース152を介して、ストレージデバイス200に記憶する。   The controller 151 of the terminal device 150 transmits a user request to the distribution server 100 via the communication device 153. As a response, the encrypted content data and license data provided from the distribution server 100 are received via the communication device 153 and stored in the storage device 200 via the storage interface 152.


※再生装置
図3は、実施の形態に係る再生装置300の内部構成を示す。これらの機能ブロックも、ハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できる。

* Reproducing Device FIG. 3 shows an internal configuration of the reproducing device 300 according to the embodiment. These functional blocks can also be realized in various forms by hardware only, software only, or a combination thereof.

再生装置300は、主に、コントローラ301、ストレージインタフェース302、暗号エンジン303、復号器304、コンテンツデコーダ305、およびそれらを電気的に接続するデータバス310を備える。   The playback apparatus 300 mainly includes a controller 301, a storage interface 302, a cryptographic engine 303, a decoder 304, a content decoder 305, and a data bus 310 that electrically connects them.

ストレージインタフェース302は、ストレージデバイス200とのデータの入出力を制御する。   The storage interface 302 controls data input / output with the storage device 200.

暗号エンジン303は、コンテンツ鍵を含むライセンスデータLICをストレージデバイス200から受信するために、ストレージデバイス200との間で暗号通信の制御を行う。   The cryptographic engine 303 controls cryptographic communication with the storage device 200 in order to receive the license data LIC including the content key from the storage device 200.

復号器304は、ストレージデバイス200から読み出した暗号化されたコンテンツを、ストレージデバイス200から入手したライセンスデータLICに含まれるコンテンツ鍵により復号する。   The decryptor 304 decrypts the encrypted content read from the storage device 200 with the content key included in the license data LIC obtained from the storage device 200.

コンテンツデコーダ305は、復号器304により復号されたコンテンツをデコードして出力する。たとえば、MPEG形式のコンテンツであれば、コンテンツから映像信号と音声信号を復元し、映像信号を図示しない表示装置に出力し、音声信号を図示しないスピーカに出力する。   The content decoder 305 decodes and outputs the content decoded by the decoder 304. For example, if the content is in MPEG format, the video signal and the audio signal are restored from the content, the video signal is output to a display device (not shown), and the audio signal is output to a speaker (not shown).

コントローラ301は、再生装置300の構成要素を統括的に制御する。   The controller 301 comprehensively controls the components of the playback device 300.


※ストレージデバイス
図4は、実施の形態に係るストレージデバイス200の内部構成を示す。ストレージデバイス200は、主に、コントローラ201、ストレージインタフェース202、暗号エンジン203、耐タンパ記憶部204、通常データ記憶記部205、およびそれらを電気的に接続するデータバス210を備える。

* Storage Device FIG. 4 shows an internal configuration of the storage device 200 according to the embodiment. The storage device 200 mainly includes a controller 201, a storage interface 202, a cryptographic engine 203, a tamper resistant storage unit 204, a normal data storage storage unit 205, and a data bus 210 that electrically connects them.

ストレージインタフェース202は、配信サーバ100および再生装置300とのデータの入出力を制御する。   The storage interface 202 controls data input / output with the distribution server 100 and the playback device 300.

暗号エンジン203は、コンテンツ鍵を含むライセンスデータLICなどの秘匿データを配信サーバ100および再生装置300との間で入出力するための暗号通信の制御を行う。   The cryptographic engine 203 controls cryptographic communication for inputting / outputting secret data such as license data LIC including a content key between the distribution server 100 and the playback device 300.

通常データ記憶部205は、暗号化されたコンテンツや通常のデータなどを記録する通常記憶領域である。   The normal data storage unit 205 is a normal storage area for recording encrypted content, normal data, and the like.

耐タンパ記憶部204は、コンテンツ鍵を含むライセンスデータLICなどの秘匿データを記録する機密データ記憶領域である。   The tamper resistant storage unit 204 is a confidential data storage area for recording confidential data such as license data LIC including a content key.

通常データ記憶部205は、外部からの直接アクセスによりデータの入出力が行われるが、耐タンパ記憶部204は、暗号エンジン203を介さないとデータの入出力ができないように構成される。   The normal data storage unit 205 performs input / output of data by direct access from the outside, but the tamper resistant storage unit 204 is configured so that data cannot be input / output through the cryptographic engine 203.

コントローラ201は、ストレージデバイス200の構成要素を統括的に制御する。   The controller 201 comprehensively controls the components of the storage device 200.


※使用する鍵
ここで、本実施の形態で用いる鍵について説明する。本実施の形態では、鍵はすべて大文字の"K"から始まる文字列として表記する。

* Keys to be used Here, the keys used in this embodiment will be described. In the present embodiment, the key is expressed as a character string starting with a capital letter “K”.

また、第2文字"が小文字の"c"、"s"、r”のいずれかである場合は、対称鍵(共通鍵)を示す。詳しくは、"c"はチャレンジ鍵であり、ライセンスデータの送信元で生成されるテンポラルな対称鍵を示す。"s"はセッション鍵であり、ライセンスデータの送信先で生成されるテンポラルな対称鍵を示す。"r"はリカバリー鍵であり、ライセンスデータの送信先で生成されるテンポラルな対称鍵を示す。   Further, when the second character “is any one of lowercase letters“ c ”,“ s ”, and r”, it indicates a symmetric key (common key). Specifically, “c” is a challenge key and indicates a temporal symmetric key generated at the transmission source of the license data. “s” is a session key and indicates a temporal symmetric key generated at the transmission destination of the license data. “r” is a recovery key and indicates a temporal symmetric key generated at the transmission destination of the license data.

また、第2文字が大文字の"P"である場合は、公開鍵暗号方式の公開鍵を示す。この鍵には、対応する秘密鍵が必ず存在し、この秘密鍵は公開鍵の表記から第2文字の大文字の"P"を除く表記となる。   If the second character is capital “P”, it indicates the public key of the public key cryptosystem. This key always has a corresponding private key, and this private key is represented by excluding the second capital letter “P” from the public key.

鍵を示す文字列が小文字の"d"を含む場合は、装置のグループ毎に与えられた鍵であることを表す。また鍵を示す文字列が小文字"p"を含む場合は、装置毎に与えられた鍵であることを表す。それぞれ、公開鍵と秘密鍵の対として与えられ、グループ毎に与えられた公開鍵KPdxは、電子署名付きの公開鍵証明書C[KPdx]として与えられている。   When the character string indicating the key includes a lower case “d”, it indicates that the key is given to each group of devices. When the character string indicating the key includes a lowercase letter “p”, it indicates that the key is given to each device. The public key KPdx given as a pair of a public key and a private key and given for each group is given as a public key certificate C [KPdx] with an electronic signature.

また、鍵を示す文字列の最後に記載される文字、たとえば、公開鍵KPd2の"2"は、その鍵が与えられる暗号エンジンを識別するための記号である。本実施の形態では、提供先が明確な場合には、数字"1", "2", "3"と表記し、当該暗号エンジン以外から提供される鍵であって提供先が不明な場合あるいは特定しない場合には、"x", "y"などの英文字によって表記する。   The character described at the end of the character string indicating the key, for example, “2” of the public key KPd2 is a symbol for identifying the cryptographic engine to which the key is given. In the present embodiment, when the provider is clear, the numbers “1”, “2”, “3” are written, and the key is provided from other than the encryption engine and the provider is unknown. If not specified, it will be written in English characters such as "x" and "y".

本実施の形態では、配信サーバ100の暗号エンジン103に対しては識別記号として"1"、ストレージメディア200の暗号エンジン203については識別記号として"2"、再生装置300の暗号エンジン303については識別記号として"3"をそれぞれ使用する。   In the present embodiment, “1” is used as the identification symbol for the cryptographic engine 103 of the distribution server 100, “2” is used as the identification symbol for the cryptographic engine 203 of the storage medium 200, and the cryptographic engine 303 of the playback device 300 is identified. Use “3” as a symbol.


※配信サーバの暗号エンジン
図5は、図2に示した配信サーバ100の暗号エンジン103の内部構成を示す。暗号エンジン103は、証明書検証部120、第1暗号部121、乱数発生部122、第1復号部123、第2復号部124、第2暗号部125、第3暗号部126、証明書出力部127、制御部128、ログ記憶部129,ログ検証部130およびこれらの構成要素の少なくとも一部を電気的に接続するローカルバス140を備える。

* Cryptographic Engine of Distribution Server FIG. 5 shows an internal configuration of the cryptographic engine 103 of the distribution server 100 shown in FIG. The cryptographic engine 103 includes a certificate verification unit 120, a first encryption unit 121, a random number generation unit 122, a first decryption unit 123, a second decryption unit 124, a second encryption unit 125, a third encryption unit 126, and a certificate output unit. 127, a control unit 128, a log storage unit 129, a log verification unit 130, and a local bus 140 that electrically connects at least some of these components.

証明書検証部120は、ストレージデバイス200から取得した証明書C[KPd2]を検証する。証明書C[KPd2]は、公開鍵KPd2を含む平文の情報(以下、「証明書本体」と称す)と、証明書本体に対して付される電子署名からなる。この電子署名は、証明書本体に対してハッシュ関数による演算(以下、この演算処理を「ハッシュ演算」と称す)を施した結果を、第三者機関である。認証局(図示せず)のルート鍵Kaによって暗号化したデータである。ルート鍵Kaは、認証局によって厳重に管理されている非公開な鍵であり、認証局の秘密鍵となる。   The certificate verification unit 120 verifies the certificate C [KPd2] acquired from the storage device 200. The certificate C [KPd2] includes plaintext information including the public key KPd2 (hereinafter referred to as “certificate body”) and an electronic signature attached to the certificate body. This electronic signature is a third-party organization that is obtained by performing an operation using a hash function on the certificate body (hereinafter, this operation processing is referred to as “hash operation”). The data is encrypted with the root key Ka of the certificate authority (not shown). The root key Ka is a private key that is strictly managed by the certificate authority and serves as a secret key of the certificate authority.

証明書検証部120は、このルート鍵Kaと対をなす検証鍵KPaを保持している。この検証鍵KPaは証明書の正当性を検証する公開鍵である。証明書の検証は、証明書の正当性と証明書の有効性によって判断する。   The certificate verification unit 120 holds a verification key KPa that is paired with the root key Ka. This verification key KPa is a public key for verifying the validity of the certificate. The verification of the certificate is judged by the validity of the certificate and the validity of the certificate.

証明書の正当性の確認は、検証すべき証明書の証明書本体に対するハッシュ関数の演算結果と、検証鍵KPaで電子署名を復号した結果を比較する処理であり、両者が一致したとき、正当であると判断する。   The verification of the validity of the certificate is a process of comparing the calculation result of the hash function for the certificate body of the certificate to be verified with the result of decrypting the electronic signature with the verification key KPa. It is judged that.

証明書検証部120は、無効となった証明書のリストである証明書破棄リスト(Certificate Revocation List:CRLと呼ぶ)を保持し、証明書の有効性について、このCRLに検証すべき証明書が記載されていない場合に有効であると判断する。   The certificate verification unit 120 maintains a certificate revocation list (CRL) that is a list of invalid certificates, and the CRL checks whether the certificate to be verified is valid. It is judged that it is effective when it is not described.

このように、証明書の正当性と有効性を判断し正当な証明書を承認する処理を検証と称す。   The process of judging the validity and validity of a certificate and approving a valid certificate is called verification.

証明書検証部120は、検証に成功すると、ストレージデバイス200の公開鍵KPd2を取り出して第1暗号部121に伝達し、検証結果を通知する。検証に失敗した場合には、検証エラー通知を出力する。   If the verification is successful, the certificate verification unit 120 retrieves the public key KPd2 of the storage device 200, transmits it to the first encryption unit 121, and notifies the verification result. If verification fails, a verification error notification is output.

証明書出力部127は、配信サーバ100の証明書C[KPd1]を出力する。この証明書は、配信サーバ100の公開鍵KPd1を含む証明書本体と、証明書本体に対して付される電子署名からなる。電子署名は、ストレージデバイス200の証明書と同様に、認証局のルート鍵Kaにより暗号化される。   The certificate output unit 127 outputs the certificate C [KPd1] of the distribution server 100. This certificate includes a certificate body including the public key KPd1 of the distribution server 100 and an electronic signature attached to the certificate body. The electronic signature is encrypted with the root key Ka of the certificate authority, similarly to the certificate of the storage device 200.

乱数発生部122は、ストレージデバイス200との間で暗号通信を行うために一時的に使用されるチャレンジ鍵Kc1を生成する。暗号通信を行う度に、乱数によりチャレンジ鍵Kc1を生成することで、チャレンジ鍵Kc1を見破られる可能性を最小限に抑えることができる。生成されたチャレンジ鍵Kc1は、第1暗号部121および第1復号部123に伝達される。   The random number generation unit 122 generates a challenge key Kc1 that is temporarily used to perform cryptographic communication with the storage device 200. By generating the challenge key Kc1 with a random number each time encrypted communication is performed, the possibility that the challenge key Kc1 is overlooked can be minimized. The generated challenge key Kc1 is transmitted to the first encryption unit 121 and the first decryption unit 123.

第1暗号部121は、ストレージデバイス200にチャレンジ鍵Kc1を通知するために、証明書検証部120により取り出されたストレージデバイス200の公開鍵KPd2でチャレンジ鍵Kc1を暗号化して、暗号化チャレンジ鍵E(KPd2,Kc1)を生成する。そして、暗号化チャレンジ鍵E(KPd2,Kc1)は、証明書出力部127から出力された証明書C「KPd1」と結合され、チャレンジ情報E(KPd2,Kc1)//C「KPd1」とされる。   In order to notify the storage device 200 of the challenge key Kc1, the first encryption unit 121 encrypts the challenge key Kc1 with the public key KPd2 of the storage device 200 extracted by the certificate verification unit 120, and encrypts the challenge key E (KPd2, Kc1) is generated. Then, the encrypted challenge key E (KPd2, Kc1) is combined with the certificate C “KPd1” output from the certificate output unit 127 to be challenge information E (KPd2, Kc1) // C “KPd1”. .

ここで、記号"//"は、データの連結を示し、E(KPd2,Kc1)//C[KPd1]は、暗号化チャレンジ鍵E(KPd2,Kc1)と証明書C[KPd1]を並べて結合したデータ列を示す。また、Eは暗号化関数を示し、E(KPd2,Kc1)は、公開鍵KPd2でチャレンジ鍵Kc1を暗号化したものであることを示す。   Here, the symbol “//” indicates data concatenation, and E (KPd2, Kc1) // C [KPd1] combines the encryption challenge key E (KPd2, Kc1) and the certificate C [KPd1] side by side. Shows the data string. E indicates an encryption function, and E (KPd2, Kc1) indicates that the challenge key Kc1 is encrypted with the public key KPd2.

第1復号部123は、チャレンジ鍵Kc1で暗号化されたデータを復号する。ストレージデバイス200で発行されたセッション鍵Ks2およびストレージデバイス200の保持する公開鍵KPp2は、セッション情報E(Kc1,E(KPd1,Ks2)//KPp2)として、ストレージデバイス200から供給されるため、第1復号部123は、乱数発生部122が生成したチャレンジ鍵Kc1を用いてセッション情報を復号し、暗号化セッション鍵E(KPd1,Ks2)および公開鍵KPp2を取り出す。取り出された公開鍵KPp2は第2暗号部125、に伝達され、暗号化セッション鍵E(KPd1,Ks2)は第2復号部124に伝達される。   The first decryption unit 123 decrypts the data encrypted with the challenge key Kc1. The session key Ks2 issued by the storage device 200 and the public key KPp2 held by the storage device 200 are supplied from the storage device 200 as session information E (Kc1, E (KPd1, Ks2) // KPp2). The 1 decryption unit 123 decrypts the session information using the challenge key Kc1 generated by the random number generation unit 122, and extracts the encrypted session key E (KPd1, Ks2) and the public key KPp2. The extracted public key KPp2 is transmitted to the second encryption unit 125, and the encrypted session key E (KPd1, Ks2) is transmitted to the second decryption unit 124.

第2復号部124は、第1復号部123から伝達された、自身の公開鍵KPd1で暗号化された暗号化セッション鍵E(KPd1,Ks2)を、公開鍵KPd1と対をなす秘密鍵Kd1で復号し、セッション鍵Ks2を取り出す。取り出されたセッション鍵Ks2は、第3暗号部126へ伝達される。   The second decryption unit 124 transmits the encrypted session key E (KPd1, Ks2) encrypted by its own public key KPd1 transmitted from the first decryption unit 123 with the secret key Kd1 paired with the public key KPd1. Decrypt and take out session key Ks2. The extracted session key Ks2 is transmitted to the third encryption unit 126.

第2暗号部125は、暗号器102がコンテンツを暗号化する際に発行したコンテンツ鍵を含むライセンスデータLICを取得し、そのライセンスデータLICをライセンスデータの提供先のストレージデバイス200の公開鍵KPp2で暗号化し、E(KPp2、LIC)を生成する。そして、生成されたE(KPp2、LIC)は、第3暗号部126に伝達される。   The second encryption unit 125 acquires the license data LIC including the content key issued when the encryptor 102 encrypts the content, and uses the license data LIC with the public key KPp2 of the storage device 200 to which the license data is provided. Encrypt and generate E (KPp2, LIC). The generated E (KPp2, LIC) is transmitted to the third encryption unit 126.

第3暗号部126は、第2暗号部125から伝達されたE(KPp2、LIC)を、さらに、ストレージデバイス200で発行されたセッション鍵Ks2により暗号化し、暗号化ライセンスデータE(Ks2,E(KPp2、LIC))を生成する。   The third encryption unit 126 further encrypts E (KPp2, LIC) transmitted from the second encryption unit 125 with the session key Ks2 issued by the storage device 200, and encrypts the license data E (Ks2, E ( KPp2, LIC)).

ログ記憶部129は、ライセンスデータLICの出力に関する履歴情報を記憶する。この履歴情報は、ライセンスデータLICを特定する識別情報LicID、ライセンスデータLICの通信を特定するための情報として、ライセンスデータLICの送受信に用いたセッション鍵、ライセンスデータの送信の経過状態を示す情報ST1を含む。   The log storage unit 129 stores history information regarding the output of the license data LIC. The history information includes identification information LicID for identifying the license data LIC, information for identifying communication of the license data LIC, a session key used for transmission / reception of the license data LIC, and information ST1 indicating the progress of transmission of the license data. including.

情報ST1は、セッション鍵を受け取った状態(以下、”状態SP”と称す)、ライセンスデータLICを出力した状態(以下、”状態SL”と称す)の2つの状態のうち、いずれか一つの状態を示す情報を含む。   The information ST1 is one of two states: a state in which a session key is received (hereinafter referred to as “state SP”) and a state in which the license data LIC is output (hereinafter referred to as “state SL”). Contains information indicating.

ログ検証部130は、ライセンスデータの送信先と共有しているチャレンジ鍵Kc1と、ログ記憶部234に記憶されている履歴情報を用いて、ライセンスデータの送信先、ここでは、記憶装置200から受け取ったステータス情報LicID//ST2//H(Kc1//Ks2//LicID//ST2)の正当性を検証し、当該ライセンスデータの再送可否の判断を行う。   The log verification unit 130 receives from the license data transmission destination, here the storage device 200, using the challenge key Kc1 shared with the transmission destination of the license data and the history information stored in the log storage unit 234. The validity of the status information LicID // ST2 // H (Kc1 // Ks2 // LicID // ST2) is verified to determine whether the license data can be retransmitted.

制御部128は、配信サーバ100のコントローラ101の指示に従って暗号エンジン103の内部の構成要素の制御および外部の構成との間でデータの入出力を仲介する。   The control unit 128 mediates the input / output of data between the control of the internal components of the cryptographic engine 103 and the external configuration in accordance with instructions from the controller 101 of the distribution server 100.

尚、図5では、制御部128による内部の各構成要素への制御を示す結線は省略されている。   In FIG. 5, connection indicating control of each internal component by the control unit 128 is omitted.

図5の如く、本実施の形態では、制御部128を介さないと、暗号エンジン103は外部とデータの交換ができない構成となっている。各構成要素を接続する形態については、種々考えられるが、本実施の形態では、乱数発生部122が生成するチャレンジ鍵Kc1、ストレージデバイス200から受け取ったセッション鍵Ks2、自身の秘密鍵Kd1などの暗号エンジン103内で使用される各鍵が、暗号エンジン103の外部に直接流出しないように構成している。これにより、暗号エンジン103内で使用される各鍵が、配信サーバ100の他の構成要素などを介して外部に漏洩することを防ぎ、セキュリティ性を向上させている。   As shown in FIG. 5, in the present embodiment, the cryptographic engine 103 cannot exchange data with the outside without the control unit 128. Various forms of connecting each component are conceivable. In this embodiment, encryption such as a challenge key Kc1 generated by the random number generator 122, a session key Ks2 received from the storage device 200, and its own secret key Kd1 is used. Each key used in the engine 103 is configured not to directly flow out of the cryptographic engine 103. As a result, each key used in the cryptographic engine 103 is prevented from leaking to the outside via other components of the distribution server 100, and security is improved.


※再生装置の暗号エンジン
図6は、図3に示した再生装置300の暗号エンジン303の内部構成を示す。暗号エンジン303は、証明書出力部320、乱数発生部321、証明書検証部322、第1復号部323、第1暗号部324、第2暗号部325、第2復号部326、第3復号部327、コンテンツ鍵出力部328、経過時間計測部329、ログ記憶部330、ログ署名部331、制御部332、およびこれらの構成要素の少なくとも一部を電気的に接続するローカルバス340を備える。

* Cryptographic Engine of Reproducing Device FIG. 6 shows an internal configuration of the cryptographic engine 303 of the reproducing device 300 shown in FIG. The cryptographic engine 303 includes a certificate output unit 320, a random number generation unit 321, a certificate verification unit 322, a first decryption unit 323, a first encryption unit 324, a second encryption unit 325, a second decryption unit 326, and a third decryption unit. 327, a content key output unit 328, an elapsed time measurement unit 329, a log storage unit 330, a log signature unit 331, a control unit 332, and a local bus 340 that electrically connects at least some of these components.

証明書出力部320は、再生装置300の証明書C[KPd3]を出力する。証明書は、証明書出力部320が保持してもよいし、図示しない証明書保持部に保持しておき、それを読み出してもよい。証明書は、再生装置300の公開鍵KPd3を含む証明書本体と、証明書本体に対して付される電子署名からなる。電子署名は、ストレージデバイス200の証明書と同様に、認証局のルート鍵Kaにより暗号化される。   The certificate output unit 320 outputs the certificate C [KPd3] of the playback device 300. The certificate may be held by the certificate output unit 320 or may be held in a certificate holding unit (not shown) and read out. The certificate is composed of a certificate body including the public key KPd3 of the playback apparatus 300 and an electronic signature attached to the certificate body. The electronic signature is encrypted with the root key Ka of the certificate authority, similarly to the certificate of the storage device 200.

乱数発生部321は、ストレージデバイス200との間で暗号通信を行うために一時的に使用されるセッション鍵Ks3を生成する。生成されたセッション鍵Ks3は、第1暗号部324、第2復号部326、ログ記憶部330に伝達される。   The random number generator 321 generates a session key Ks3 that is temporarily used for performing cryptographic communication with the storage device 200. The generated session key Ks3 is transmitted to the first encryption unit 324, the second decryption unit 326, and the log storage unit 330.

証明書検証部322は、ストレージデバイス200の証明書C[KPd2]の検証を行う。検証の詳細は、上述したとおりである。   The certificate verification unit 322 verifies the certificate C [KPd2] of the storage device 200. Details of the verification are as described above.

第1復号部323は、公開鍵KPd3によって暗号化されたデータを秘密鍵Kd3で復号する。再生時には、ストレージデバイス200で発行されたチャレンジ鍵Kc2は、再生装置300の公開鍵KPd3により暗号化されてストレージデバイス200から供給されるため、第1復号部321は、自身の秘密鍵Kd3によりこれを復号し、チャレンジ鍵Kc2を取り出す。取り出されたチャレンジ鍵Kc2は、第2暗号部325に伝達される。   The first decryption unit 323 decrypts the data encrypted with the public key KPd3 with the secret key Kd3. At the time of playback, the challenge key Kc2 issued by the storage device 200 is encrypted by the public key KPd3 of the playback device 300 and supplied from the storage device 200. Therefore, the first decryption unit 321 uses this private key Kd3 to And the challenge key Kc2 is extracted. The extracted challenge key Kc2 is transmitted to the second encryption unit 325.

第1暗号部324は、ストレージデバイス200の証明書C[KPd2]から取り出された公開鍵KPd2でデータの暗号化を行う。ストレージデバイス200にセッション鍵Ks3を通知するために、乱数発生部321で生成したセッション鍵Ks3を暗号化し、暗号化セッション鍵E(KPd2,Ks3)を生成する。生成した暗号化セッション鍵E(KPd2,Ks3)は、第2暗号部325に伝達される。   The first encryption unit 324 encrypts data with the public key KPd2 extracted from the certificate C [KPd2] of the storage device 200. In order to notify the storage device 200 of the session key Ks3, the session key Ks3 generated by the random number generator 321 is encrypted to generate an encrypted session key E (KPd2, Ks3). The generated encrypted session key E (KPd2, Ks3) is transmitted to the second encryption unit 325.

第2暗号部325は、第1復号部323により取り出されたチャレンジ鍵Kc2で、データの暗号化を行う。第1暗号部324から伝達された暗号化セッション鍵E(KPd2,Ks3)と自身の公開鍵KPp3を連結し、これを暗号化してセッション情報E(Kc2,E(KPd2,Ks3)//KPp3)を生成する。   The second encryption unit 325 encrypts data using the challenge key Kc2 extracted by the first decryption unit 323. The encrypted session key E (KPd2, Ks3) transmitted from the first encryption unit 324 and its own public key KPp3 are concatenated and encrypted to obtain session information E (Kc2, E (KPd2, Ks3) // KPp3). Is generated.

第2復号部326は、セッション鍵Ks3で暗号化されたデータを復号する。ライセンスデータLICは、公開鍵KPp3およびセッション鍵Ks3により2重に暗号化された暗号化ライセンスデータE(Ks3,E(KPp3,LIC))としてストレージデバイス200から供給されるため、第2復号部325は、乱数発生部321が生成するセッション鍵Ks3により復号を行い、その結果である暗号化ライセンスデータE(KPp3,LIC)を第3復号部327に伝達する。   The second decryption unit 326 decrypts the data encrypted with the session key Ks3. Since the license data LIC is supplied from the storage device 200 as encrypted license data E (Ks3, E (KPp3, LIC)) that is double-encrypted with the public key KPp3 and the session key Ks3, the second decryption unit 325 is provided. Performs decryption using the session key Ks3 generated by the random number generation unit 321 and transmits the resulting encrypted license data E (KPp3, LIC) to the third decryption unit 327.

第3復号部327は、公開鍵KPp3で暗号化されたデータの復号を行う。公開鍵KPp3と対をなす秘密鍵Kp3で、第2復号部326の結果である暗号化ライセンスデータE(KPp3,LIC)を復号し、ライセンスデータLICを取り出す。   The third decryption unit 327 decrypts the data encrypted with the public key KPp3. Using the private key Kp3 paired with the public key KPp3, the encrypted license data E (KPp3, LIC) as a result of the second decryption unit 326 is decrypted, and the license data LIC is extracted.

コンテンツ鍵出力部328は、第3復号部327にて取り出されたライセンスデータLICから、コンテンツ鍵を取り出し保持する。さらに、コンテンツ鍵出力部328は、保持しているコンテンツ鍵を復号器304に提供し、かつ、復号器304における当該コンテンツ鍵を用いた復号処理を監視し、その状況を経過時間計測部329に伝達する。   The content key output unit 328 extracts and holds the content key from the license data LIC extracted by the third decryption unit 327. Further, the content key output unit 328 provides the held content key to the decryption unit 304, monitors the decryption process using the content key in the decryption unit 304, and notifies the elapsed time measurement unit 329 of the situation. introduce.

経過時間計測部329は、コンテンツ鍵出力部328が提供するコンテンツ鍵を用いて復号した暗号化コンテンツの再生時間を計測し、所定のT秒の経過によって、コンテンツ鍵による再生が行われた、すなわち、ライセンスデータによって規定される再生の権利が、1再生回数消費された、と判断する。逆に、T秒が経過しないまま再生が停止された場合には、コンテンツ鍵による再生は行われなかった、すなわち、ライセンスデータによって規定される再生の権利が消費されていない、と判断する。経過時間計測部329の構成については、様々な構成方法が存在するが、ここでは、タイマを用いて再生後の経過時間を計測する構成例を示す。経過時間計測部329は、タイマを含んでいる。そして、コンテンツ鍵出力部328が復号器304に提供したコンテンツ鍵による復号が開始されるとタイマをリセットする。そして、所定のT秒が経過すると、再生が開始されたと判断する。ここで、Tはコンテンツ種類(音楽/映像など)毎に再生を行った、すなわち、ライセンスを消費したと判断する境界時間であり、予め定められている。これによると、たとえば、T秒経過以前に、コンテンツ鍵出力部328の保持するコンテンツ鍵が破棄され、復号部304における復号処理が停止すると、このコンテンツ鍵による再生は行われなかった、と判断される。そして、この判定結果を、後述するログ記憶部330に格納されている情報ST3に反映する。   The elapsed time measurement unit 329 measures the reproduction time of the encrypted content decrypted using the content key provided by the content key output unit 328, and reproduction by the content key is performed after a predetermined T seconds. Then, it is determined that the reproduction right defined by the license data has been consumed once. On the other hand, when the playback is stopped without T seconds elapses, it is determined that the playback using the content key has not been performed, that is, the playback right defined by the license data is not consumed. There are various configuration methods for the configuration of the elapsed time measuring unit 329. Here, a configuration example is shown in which the elapsed time after reproduction is measured using a timer. The elapsed time measuring unit 329 includes a timer. When the content key output unit 328 starts decrypting with the content key provided to the decryptor 304, the timer is reset. Then, when a predetermined T seconds have elapsed, it is determined that reproduction has started. Here, T is a boundary time at which it is determined that reproduction is performed for each content type (music / video, etc.), that is, the license is consumed, and is predetermined. According to this, for example, when the content key held by the content key output unit 328 is discarded before the elapse of T seconds and the decryption process in the decryption unit 304 is stopped, it is determined that the reproduction with the content key has not been performed. The Then, the determination result is reflected in information ST3 stored in the log storage unit 330 described later.

ログ記憶部330は、ライセンスデータLICの受け取りから消費に至る履歴情報を記憶する。履歴情報は、ライセンスデータLICを特定する識別情報LicID、ライセンスデータLICの通信を特定するための情報であり、ライセンスデータLICの通信にて生成したセッション鍵Ks3、ライセンスデータの通信から消費(再生)に至る状態を示す情報ST3を含む。   The log storage unit 330 stores history information from receipt of the license data LIC to consumption. The history information is identification information LicID for specifying the license data LIC, information for specifying the communication of the license data LIC, and is consumed (reproduced) from the communication of the session key Ks3 and the license data generated by the communication of the license data LIC. Includes information ST3 indicating a state of reaching.

情報ST3は、セッション鍵を生成した状態(以下、”状態RP”と称す)、ライセンスデータLICを受け取った状態(以下、”状態RL”と称す)、経過時間計測部329で再生が開始されたと判断した状態(以下、”状態CL”と称す)の3つの状態のいずれか1つの状態を示す情報からなる。   The information ST3 includes a state in which a session key has been generated (hereinafter referred to as “state RP”), a state in which license data LIC has been received (hereinafter referred to as “state RL”), and reproduction started by the elapsed time measuring unit 329. It consists of information indicating any one of the three states of the determined state (hereinafter referred to as “state CL”).

ログ署名部331は、第1復号部323で取り出されたチャレンジ鍵Kc2と、ログ記憶部330に記憶されている履歴情報を用いて、再生装置300におけるライセンスデータLICの受信や消費の状況を知らせるステータス情報LicID//ST3//H(Kc2//Ks3//LicID//ST3)を生成する。このステータス情報は、Kc2とKs3を共有している暗号エンジン203において、その正当性を検証することができる。   The log signature unit 331 uses the challenge key Kc2 extracted by the first decryption unit 323 and the history information stored in the log storage unit 330 to notify the status of reception and consumption of the license data LIC in the playback device 300. Status information LicID // ST3 // H (Kc2 // Ks3 // LicID // ST3) is generated. The validity of the status information can be verified by the cryptographic engine 203 sharing Kc2 and Ks3.

制御部332は、再生装置300のコントローラ301の指示に従って暗号エンジン303の内部の構成要素の制御および外部の構成との間でデータの入出力を仲介する。   The control unit 332 mediates data input / output between the control of the internal components of the cryptographic engine 303 and the external configuration in accordance with an instruction from the controller 301 of the playback device 300.

尚、図6では、制御部332による内部の各構成要素への制御を示す結線は省略されている。   In FIG. 6, connection indicating control of each internal component by the control unit 332 is omitted.

図6に示す暗号エンジン303においても、各構成要素を接続する形態については、種々考えられるが、本実施の形態では、制御部332を介さないと、暗号エンジン303は外部とデータの交換ができない構成となっている。これにより、乱数発生部324が生成したセッション鍵Ks3、公開鍵と対をなしている秘密鍵Kd3およびKp3、ストレージデバイス200から受け取ったセッション鍵Ks2、チャレンジ鍵Kc2などの暗号エンジン303内で使用される鍵が外部に漏洩されることを防ぐ。   In the cryptographic engine 303 shown in FIG. 6, various forms of connecting each component are conceivable, but in this embodiment, the cryptographic engine 303 cannot exchange data with the outside without the control unit 332. It has a configuration. Thus, the session key Ks3 generated by the random number generation unit 324, the secret keys Kd3 and Kp3 paired with the public key, the session key Ks2 received from the storage device 200, the challenge key Kc2, and the like are used in the encryption engine 303. Key is not leaked to the outside.


※ストレージメディアの暗号エンジン
図7は、図4に示したストレージデバイス200の暗号エンジン203の内部構成を示す。これらの機能ブロックも、ハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できる。暗号エンジン203は、制御部220、乱数発生部221、証明書出力部222、証明書検証部223、第1復号部224、第1暗号部225、第2暗号部226、第2復号部227、第3復号部228、第3暗号部229、第4復号部230、第5復号部231、第4暗号部232、第5暗号部233、ログ記憶部234、第6暗号部235、ログ検証部236、および、これらの構成要素の少なくとも一部を電気的に接続するローカルバス240を備える。

* Storage Media Cryptographic Engine FIG. 7 shows the internal configuration of the cryptographic engine 203 of the storage device 200 shown in FIG. These functional blocks can also be realized in various forms by hardware only, software only, or a combination thereof. The cryptographic engine 203 includes a control unit 220, a random number generation unit 221, a certificate output unit 222, a certificate verification unit 223, a first decryption unit 224, a first encryption unit 225, a second encryption unit 226, a second decryption unit 227, Third decryption unit 228, third encryption unit 229, fourth decryption unit 230, fifth decryption unit 231, fourth encryption unit 232, fifth encryption unit 233, log storage unit 234, sixth encryption unit 235, log verification unit 236 and a local bus 240 that electrically connects at least some of these components.

制御部220は、ストレージデバイス200のコントローラ201の指示に従って暗号エンジン203の内部の構成の制御および外部の構成との間でデータの入出力を仲介する。   The control unit 220 mediates data input / output between the control of the internal configuration of the cryptographic engine 203 and the external configuration in accordance with an instruction from the controller 201 of the storage device 200.

乱数発生部221は、配信サーバ100または再生装置300との間の暗号通信に一時的に使用されるセッション鍵Ks2、チャレンジ鍵Kc2を、乱数演算によって生成する。各鍵の用途については、追って説明する。   The random number generation unit 221 generates a session key Ks2 and a challenge key Kc2 that are temporarily used for encrypted communication with the distribution server 100 or the playback device 300 by random number calculation. The use of each key will be described later.

証明書出力部222は、ストレージデバイス200の証明書C[KPd2]を出力する。証明書は、証明書出力部225が保持してもよいし、ストレージデバイス200の所定の記憶領域、たとえば耐タンパ記憶部204に保持しておき、それを読み出してもよい。証明書は、ストレージデバイス200の公開鍵KPd2を含む証明書本体と、証明書本体に付された電子署名とを含む。電子署名は、認証局のルート鍵Kaにより暗号化される。   The certificate output unit 222 outputs the certificate C [KPd2] of the storage device 200. The certificate may be held by the certificate output unit 225, or may be held in a predetermined storage area of the storage device 200, for example, the tamper resistant storage unit 204, and read out. The certificate includes a certificate body including the public key KPd2 of the storage device 200 and an electronic signature attached to the certificate body. The electronic signature is encrypted with the root key Ka of the certificate authority.

証明書検証部223は、外部から提供された証明書の検証を行う。具体的には、配信サーバ100から取得した証明書C[KPd1]および再生装置300から取得した証明書C[KPd3]を検証鍵KPaにより検証する。検証の詳細は、上記のとおりである。   The certificate verification unit 223 verifies a certificate provided from the outside. Specifically, the certificate C [KPd1] acquired from the distribution server 100 and the certificate C [KPd3] acquired from the playback device 300 are verified with the verification key KPa. Details of the verification are as described above.

第1復号部224は、自身の公開鍵KPd2で暗号化されたデータを復号する。具体的には、記録時には、配信サーバ100で発行されたチャレンジ鍵Kc1が、ストレージデバイス200の公開鍵KPd2で暗号化されて配信サーバ100から供給されるため、これを自身の秘密鍵Kd2で復号し、チャレンジ鍵Kc1を取り出す。取り出されたチャレンジ鍵Kc1は、第2暗号部226に伝達される。   The first decryption unit 224 decrypts the data encrypted with its own public key KPd2. Specifically, at the time of recording, the challenge key Kc1 issued by the distribution server 100 is encrypted with the public key KPd2 of the storage device 200 and supplied from the distribution server 100, so that it is decrypted with its own secret key Kd2. Then, the challenge key Kc1 is taken out. The extracted challenge key Kc1 is transmitted to the second encryption unit 226.

第1暗号部225は、配信サーバ100の公開鍵KPd1でデータを暗号化する。具体的には、乱数発生部221が生成したセッション鍵Ks2を公開鍵KPd1で暗号化し、暗号化セッション鍵E(KPd1,Ks2)を生成する。ここで用いる配信サーバ100の公開鍵KPd1は、制御部220によってストレージデバイス200の証明書C[KPd1]内から取り出され、ローカルバス240を介して伝達される。   The first encryption unit 225 encrypts data with the public key KPd1 of the distribution server 100. Specifically, the session key Ks2 generated by the random number generation unit 221 is encrypted with the public key KPd1, and an encrypted session key E (KPd1, Ks2) is generated. The public key KPd1 of the distribution server 100 used here is extracted from the certificate C [KPd1] of the storage device 200 by the control unit 220 and transmitted via the local bus 240.

第2暗号部226は、配信サーバ100が発行したチャレンジ鍵Kc1でデータを暗号化する。具体的には、第1暗号部225から受け取った暗号化セッション鍵E(KPd1,Ks2)と自身の公開鍵KPp2を連結して、これをチャレンジ鍵Kc1で暗号化し、セッション情報E(Kc1,E(KPd1,Ks2)//KPp2)を生成する。   The second encryption unit 226 encrypts data with the challenge key Kc1 issued by the distribution server 100. Specifically, the encrypted session key E (KPd1, Ks2) received from the first encryption unit 225 is concatenated with its own public key KPp2, and this is encrypted with the challenge key Kc1, and the session information E (Kc1, E (KPd1, Ks2) // KPp2) is generated.

第2復号部227は、乱数発生部211が生成したセッション鍵Ks2で暗号化されたデータを復号する。具体的には、配信サーバ100から、ライセンスデータLICを、公開鍵KPp2およびセッション鍵Ks2により2重に暗号化されたE(Ks2,E(KPp2,LIC))として受け取り、これをセッション鍵Ks2により復号し、結果を第3復号部228に伝達する。   The second decryption unit 227 decrypts the data encrypted with the session key Ks2 generated by the random number generation unit 211. Specifically, the license data LIC is received from the distribution server 100 as E (Ks2, E (KPp2, LIC)) double-encrypted with the public key KPp2 and the session key Ks2, and this is received with the session key Ks2. Decode and transmit the result to the third decoding unit 228.

第3復号部228は、自身の公開鍵KPp2で暗号化されたデータを復号する。第2復号部227から伝達されるライセンスデータE(KPp2,LIC)を、公開鍵KPp2と対をなす自身の秘密鍵Kp2で復号し、ライセンスデータLICを取り出す。   The third decryption unit 228 decrypts the data encrypted with its own public key KPp2. The license data E (KPp2, LIC) transmitted from the second decryption unit 227 is decrypted with its own private key Kp2 paired with the public key KPp2, and the license data LIC is extracted.

取り出されたライセンスデータLICは、ローカルバス240、制御部220を介して、データバス210に供給され、コントローラ201の指示に従って、耐タンパ記憶部204に記憶される。   The extracted license data LIC is supplied to the data bus 210 via the local bus 240 and the control unit 220, and is stored in the tamper resistant storage unit 204 in accordance with an instruction from the controller 201.

第3暗号部229は、再生装置300の公開鍵KPd3でデータを暗号化する。具体的には、再生装置300に対してライセンスデータLICを提供する場合、再生装置300から受け取った証明書C[KPd3]から取り出された公開鍵KPd3で、乱数発生部221が発行するチャレンジ鍵Kc2を暗号化し、暗号化チャレンジ鍵E(KPd3,Kc2)を生成する。生成された暗号化チャレンジ鍵E(KPd3,Kc2)は、ローカルバス240を介して制御部220へ伝達される。制御部220では、これと証明書出力部222から出力される自身の証明書C[KPd2]とを結合して、チャレンジ情報E(KPd3,Kc2)//C[KPd2]を生成する。   The third encryption unit 229 encrypts the data with the public key KPd3 of the playback device 300. Specifically, when the license data LIC is provided to the playback device 300, the challenge key Kc2 issued by the random number generator 221 with the public key KPd3 extracted from the certificate C [KPd3] received from the playback device 300. Is encrypted to generate an encryption challenge key E (KPd3, Kc2). The generated encryption challenge key E (KPd3, Kc2) is transmitted to the control unit 220 via the local bus 240. The control unit 220 combines this and its own certificate C [KPd2] output from the certificate output unit 222 to generate challenge information E (KPd3, Kc2) // C [KPd2].

第4復号部230は、乱数発生部221が発行したチャレンジ鍵Kc2で暗号化されたデータを復号する。再生装置300から受け取ったセッション情報E(Kc2,E(KPd2,Ks3)//KPp3)を、乱数発生部221が生成したチャレンジ鍵Kc2で復号し、暗号化セッション鍵E(KPd2,Ks3)および再生装置300の公開鍵KPp3を取り出す。取り出した暗号化セッション鍵E(KPd2,Ks3)は第5復号部231に伝達され、公開鍵KPp3は第4暗号部232ログおよび記憶部234に伝達される。   The fourth decryption unit 230 decrypts the data encrypted with the challenge key Kc2 issued by the random number generation unit 221. The session information E (Kc2, E (KPd2, Ks3) // KPp3) received from the playback device 300 is decrypted with the challenge key Kc2 generated by the random number generation unit 221, and the encrypted session key E (KPd2, Ks3) and playback are performed. The public key KPp3 of the device 300 is taken out. The extracted encrypted session key E (KPd2, Ks3) is transmitted to the fifth decryption unit 231, and the public key KPp3 is transmitted to the fourth encryption unit 232 log and the storage unit 234.

第5復号部231は、自身の公開鍵KPd2で暗号化されたデータを復号する。具体的には、第4復号部230から伝達された暗号化セッション鍵E(KPd2,Ks3)を、自身の秘密鍵Kd2で復号しセッション鍵Ks3を取り出す。取り出されたセッション鍵Ks3は、第5暗号部233に伝達される。   The fifth decryption unit 231 decrypts the data encrypted with its own public key KPd2. Specifically, the encrypted session key E (KPd2, Ks3) transmitted from the fourth decryption unit 230 is decrypted with its own secret key Kd2, and the session key Ks3 is extracted. The extracted session key Ks3 is transmitted to the fifth encryption unit 233.

第4暗号部232は、再生装置300の公開鍵KPp3でデータを暗号化する。再生装置300に対してライセンスデータを提供する場合、再生装置300から受け取ったセッション鍵KPp3で、ライセンスデータLICを暗号化する。このライセンスデータLICは、コントローラ201の指示に従って、耐タンパ記憶部204から読み出され、データバス202、制御部220およびローカルバス240を介して第4暗号部232に伝達される。ここで、暗号化されたライセンスデータE(KPp3,LIC)は、第5暗号部233に伝達される。   The fourth encryption unit 232 encrypts data with the public key KPp3 of the playback device 300. When providing license data to the playback apparatus 300, the license data LIC is encrypted with the session key KPp3 received from the playback apparatus 300. The license data LIC is read from the tamper resistant storage unit 204 according to an instruction from the controller 201 and transmitted to the fourth encryption unit 232 via the data bus 202, the control unit 220, and the local bus 240. Here, the encrypted license data E (KPp3, LIC) is transmitted to the fifth encryption unit 233.

第5暗号部233は、再生装置300が発行したセッション鍵Ks3でデータを暗号化する。具体的には、セッション鍵Ks3で、第4暗号部232において暗号化されたライセンスデータE(KPp3,LIC)を、さらに暗号化し、暗号化ライセンスデータE(Ks3,E(KPp3,LIC))を生成する。   The fifth encryption unit 233 encrypts the data with the session key Ks3 issued by the playback device 300. Specifically, the license data E (KPp3, LIC) encrypted in the fourth encryption unit 232 with the session key Ks3 is further encrypted, and the encrypted license data E (Ks3, E (KPp3, LIC)) is encrypted. Generate.

ログ記憶部234は、ライセンスデータLICの出力および記録に関する履歴情報を記憶する。履歴情報は、ライセンスデータLICを特定する識別情報LicID、ライセンスデータLICの通信を特定するための情報であり、ライセンスデータLICの入出力信のためにライセンスデータ提供元あるいは提供先と共有したセッション鍵(Ks2またはKs3)、ライセンスデータの出力および記録に至る状態を示す情報ST2を含む。   The log storage unit 234 stores history information regarding the output and recording of the license data LIC. The history information is identification information LicID for specifying the license data LIC, information for specifying the communication of the license data LIC, and a session key shared with the license data provider or provider for input / output of the license data LIC. (Ks2 or Ks3) includes information ST2 indicating a state leading to output and recording of license data.

情報ST2は、ライセンスデータの記録時にはセッション鍵を生成した状態(以下、”状態RP”と称す)、ライセンスデータLICを受け取った状態(以下、”状態RL”と称す)、ライセンスデータの記録が終了した状態(以下、”状態CL”と称す)の3つの状態のいずれか1つの状態を、ライセンスデータの出力時にはセッション鍵を受け取った状態(以下、”状態SP”と称す)、再生のためにライセンスデータLICを出力した状態(以下、”状態SL”と称す)の2つの状態のいずれか1つの状態を示す情報を含む。   Information ST2 includes a state in which a session key is generated when license data is recorded (hereinafter referred to as “state RP”), a state where license data LIC is received (hereinafter referred to as “state RL”), and recording of license data is completed. Any one of the three states (hereinafter referred to as “state CL”), the state in which the session key is received when the license data is output (hereinafter referred to as “state SP”), for playback It includes information indicating one of two states of the license data LIC output state (hereinafter referred to as “state SL”).

ログ署名部235は、ライセンスデータの送信元と共有しているチャレンジ鍵Kc1と、ログ記憶部234に記憶されている履歴情報を用いて、記憶装置200におけるライセンスデータLICの受信から記録に至る状況を知らせるステータス情報LicID//ST2//H(Kc1//Ks2//LicID//ST2)を生成する。このステータス情報は、Kc1とKs2を共有している暗号エンジン103において、その正当性を検証することができる。   The log signature unit 235 uses the challenge key Kc1 shared with the transmission source of the license data and the history information stored in the log storage unit 234 to receive the license data LIC from the storage device 200 to record it. Status information LicID // ST2 // H (Kc1 // Ks2 // LicID // ST2) is generated. The status information can be verified for validity in the cryptographic engine 103 sharing Kc1 and Ks2.

ログ検証部236は、ログ記憶部234に記憶されている履歴情報を参照しつつ、再生装置300から受け取ったステータス情報LicID//ST3//H(Kc2//Ks3//LicID//ST3)の正当性を検証し、当該ライセンスデータの復元可否の判断を行う。   The log verification unit 236 refers to the history information stored in the log storage unit 234 while referring to the status information LicID // ST3 // H (Kc2 // Ks3 // LicID // ST3) received from the playback device 300. The validity is verified, and it is determined whether or not the license data can be restored.


※ライセンスデータの記録
図8乃至図10は、配信サーバ100がストレージデバイス200にライセンスデータLICを記録するまでの手順を示す。この記録処理では、配信サーバ100の暗号エンジン103とストレージデバイス200の暗号エンジン203との間で暗号通信路が構築され、その暗号通信路によってライセンスデータLICが配信サーバ100からストレージデバイス200に送信される。図は、配信サーバ100(暗号エンジン103)、ストレージデバイス200(暗号エンジン203)および、配信サーバ100とストレージデバイス200のデータ交換を仲介する端末装置150(コントローラ151)に区分して処理を示している。

* Recording of License Data FIGS. 8 to 10 show a procedure until the distribution server 100 records the license data LIC in the storage device 200. FIG. In this recording process, an encryption communication path is established between the encryption engine 103 of the distribution server 100 and the encryption engine 203 of the storage device 200, and the license data LIC is transmitted from the distribution server 100 to the storage device 200 via the encryption communication path. The The figure shows processing divided into a distribution server 100 (cryptographic engine 103), a storage device 200 (cryptographic engine 203), and a terminal device 150 (controller 151) that mediates data exchange between the distribution server 100 and the storage device 200. Yes.

まず、端末装置150のコントローラ151は、ストレージデバイス200に対して証明書出力命令を発行する(S102)。コントローラ201は、証明書出力命令を正常に受理する(S104)と、暗号エンジン203に証明書の出力を命じ、暗号エンジン203から証明書C[KPd2]を読み出して端末装置150のコントローラ151へ出力する(S106)。   First, the controller 151 of the terminal device 150 issues a certificate output command to the storage device 200 (S102). When the controller 201 normally receives the certificate output command (S104), the controller 201 instructs the cryptographic engine 203 to output the certificate, reads the certificate C [KPd2] from the cryptographic engine 203, and outputs it to the controller 151 of the terminal device 150. (S106).

コントローラ151は、ストレージデバイス200から証明書C[KPd2]を取得すると、それを配信サーバ100へ送信する(S108)。   Upon acquiring the certificate C [KPd2] from the storage device 200, the controller 151 transmits it to the distribution server 100 (S108).

配信サーバ100のコントローラ101は、ストレージデバイス200から発行された証明書C[KPd2]を受信すると(S110)、それを暗号エンジン103に伝達し、証明書検証部120は、認証鍵KPaで証明書を検証する(S112)。証明書が承認されなかった場合(S112のN)、証明書検証部120はエラーをコントローラ101に伝達する。エラーを伝達されたコントローラ101は、検証エラー通知を端末装置150に送信する(S190)。端末装置150のコントローラ151は、エラー通知を受信すると(S192)、処理を異常終了する。   When the controller 101 of the distribution server 100 receives the certificate C [KPd2] issued from the storage device 200 (S110), the controller 101 transmits the certificate C [KPd2] to the cryptographic engine 103, and the certificate verification unit 120 uses the authentication key KPa to generate a certificate. Is verified (S112). If the certificate is not approved (N in S112), the certificate verification unit 120 transmits an error to the controller 101. The controller 101 having received the error transmits a verification error notification to the terminal device 150 (S190). When receiving the error notification (S192), the controller 151 of the terminal device 150 abnormally ends the process.

証明書が承認された場合(S112のY)、暗号エンジン103は、乱数発生部122にてチャレンジ鍵Kc1を生成し、保持する(S114)。そして、保持したチャレンジ鍵Kc1を第1暗号部121、第1復号部123およびログ検証部130に伝達する。   If the certificate is approved (Y in S112), the cryptographic engine 103 generates and holds the challenge key Kc1 in the random number generation unit 122 (S114). Then, the held challenge key Kc1 is transmitted to the first encryption unit 121, the first decryption unit 123, and the log verification unit 130.

第1復号部123では、このチャレンジ鍵Kc1を内部に保持する(S114)。また、第1暗号部121では、このチャレンジ鍵Kc1を証明書証明書C[KPd2]から取り出したストレージデバイス200の公開鍵KPd2で暗号化し、暗号化チャレンジ鍵E(KPd2,Kc1)を生成する。そして、生成した暗号化チャレンジ鍵E(KPd2,Kc1)と証明書出力部127から出力される自身の証明書C[KPd1]とを結合し、チャレンジ情報E(KPd2,Kc1)//C[KPd1]を生成し、これをコントローラ101へ伝達する。コントローラ101は、生成されたチャレンジ情報E(KPd2,Kc1)//C[KPd1]を端末装置150へ送信する(S116)。   The first decryption unit 123 holds the challenge key Kc1 inside (S114). The first encryption unit 121 encrypts the challenge key Kc1 with the public key KPd2 of the storage device 200 extracted from the certificate certificate C [KPd2], and generates an encrypted challenge key E (KPd2, Kc1). Then, the generated encrypted challenge key E (KPd2, Kc1) and its own certificate C [KPd1] output from the certificate output unit 127 are combined, and challenge information E (KPd2, Kc1) // C [KPd1 ] Is transmitted to the controller 101. The controller 101 transmits the generated challenge information E (KPd2, Kc1) // C [KPd1] to the terminal device 150 (S116).

端末装置150のコントローラ151は、配信サーバ100からチャレンジ情報E(KPd2,Kc1)//C[KPd1]を受信すると(S118)、ストレージデバイス200に対してチャレンジ情報検証命令を発行する(S120)。   When receiving the challenge information E (KPd2, Kc1) // C [KPd1] from the distribution server 100 (S118), the controller 151 of the terminal device 150 issues a challenge information verification command to the storage device 200 (S120).

ストレージデバイス200では、コントローラ201がチャレンジ情報検証命令を受理すると、チャレンジ情報E(KPd2,Kc1)//C[KPd1]の入力を端末装置150に要求する(S122)。   In the storage device 200, when the controller 201 receives the challenge information verification command, it requests the terminal device 150 to input challenge information E (KPd2, Kc1) // C [KPd1] (S122).

端末装置150のコントローラ151は、この要求に応じてチャレンジ情報E(KPd2,Kc1)//C[KPd1]をストレージデバイス200へ出力する(S124)。   In response to this request, the controller 151 of the terminal device 150 outputs challenge information E (KPd2, Kc1) // C [KPd1] to the storage device 200 (S124).

ストレージデバイス200は、チャレンジ情報E(KPd2,Kc1)//C[KPd1]を受理すると(S126)、暗号エンジン203では、制御部220が、チャレンジ情報E(KPd2,Kc1)//C[KPd1]から証明書C[KPd1]を取り出し、これを証明書検証部223に伝達する。証明書検証部223は、伝達された証明書C[KPd1]を検証鍵KPaで検証し、検証結果を制御部220に伝達する(S128)。   When the storage device 200 receives the challenge information E (KPd2, Kc1) // C [KPd1] (S126), in the cryptographic engine 203, the control unit 220 causes the challenge information E (KPd2, Kc1) // C [KPd1]. The certificate C [KPd1] is taken out from the certificate and transmitted to the certificate verification unit 223. The certificate verification unit 223 verifies the transmitted certificate C [KPd1] with the verification key KPa, and transmits the verification result to the control unit 220 (S128).

証明書が承認されなかった場合(S128のN)、証明書検証部223は検証エラー通知を制御部220へ通知し、検証エラー通知を受けた制御部220はこれをコントローラ201へ通知する。   When the certificate is not approved (N in S128), the certificate verification unit 223 notifies the control unit 220 of a verification error notification, and the control unit 220 that has received the verification error notification notifies the controller 201 of the notification.

そしてコントローラ201は、受信した検証エラー通知を、ストレージインタフェース202を介して端末装置150のコントローラ151に送信する(S194)。   Then, the controller 201 transmits the received verification error notification to the controller 151 of the terminal device 150 via the storage interface 202 (S194).

コントローラ151は、検証エラー通知を受信すると(S192)、本処理を異常終了する。   Upon receiving the verification error notification (S192), the controller 151 ends the process abnormally.

証明書が承認された場合(S128のY)、制御部220は、チャレンジ情報E(KPd2,Kc1)//C[KPd1]から、公開鍵KPd1と暗号化チャレンジ鍵E(KPd2,Kc1)を取り出し、それぞれ第1暗号部225、第1復号部224に伝達する。   When the certificate is approved (Y in S128), the control unit 220 extracts the public key KPd1 and the encrypted challenge key E (KPd2, Kc1) from the challenge information E (KPd2, Kc1) // C [KPd1]. Are transmitted to the first encryption unit 225 and the first decryption unit 224, respectively.

第1暗号部225は、伝達された公開鍵KPd1を保持する。第1復号部224は、伝達された暗号化チャレンジ鍵E(KPd2,Kc1)を自身の秘密鍵Kd2で復号し、チャレンジ鍵Kc1を取り出す(S130)。取り出されたチャレンジ鍵Kc1は、第2暗号部226に伝達され保持される(S132)。   The first encryption unit 225 holds the transmitted public key KPd1. The first decryption unit 224 decrypts the transmitted encrypted challenge key E (KPd2, Kc1) with its own secret key Kd2, and takes out the challenge key Kc1 (S130). The extracted challenge key Kc1 is transmitted to and held by the second encryption unit 226 (S132).

一方、端末装置150のコントローラ151は、ストレージデバイス200においてチャレンジ情報検証命令の処理が終了すると、ストレージデバイス200に対して、これから記録を行うライセンスデータに対するセッション情報生成命令を発行する(S134)。   On the other hand, when the processing of the challenge information verification command is completed in the storage device 200, the controller 151 of the terminal device 150 issues a session information generation command for license data to be recorded to the storage device 200 (S134).

ストレージデバイス200では、コントローラ201がセッション情報生成命令を受理する(S136)と、暗号エンジン203では制御部220の指示に従って、乱数発生部221がセッション鍵Ks2を生成し、生成したセッション鍵Ks2を、第2復号部227、第1暗号部225およびログ記憶部234に伝達する。第2復号部227は、伝達されたセッション鍵Ks2を保持する。また、制御部220は、ログ記憶部234に履歴情報として、このセッション鍵Ks2を記録する指示を出す。ログ記憶部234では、セッション鍵Ks2を新たな履歴情報として記憶する。この時、ログ記憶部234は、情報ST2として“状態RP”を示す情報を併せて記憶する(S138)。   In the storage device 200, when the controller 201 receives a session information generation command (S136), the cryptographic engine 203 generates a session key Ks2 according to an instruction from the control unit 220, and the random number generation unit 221 generates the generated session key Ks2. The data is transmitted to the second decryption unit 227, the first encryption unit 225, and the log storage unit 234. The second decryption unit 227 holds the transmitted session key Ks2. In addition, the control unit 220 instructs the log storage unit 234 to record the session key Ks2 as history information. The log storage unit 234 stores the session key Ks2 as new history information. At this time, the log storage unit 234 also stores information indicating “state RP” as information ST2 (S138).

第1暗号部225は、S130で保持した公開鍵KPd1で、伝達されたセッション鍵Ks2を暗号化して暗号化セッション鍵E(KPd1,ks2)を生成し、これを第2暗号部226に伝達する。第2暗号部226は、暗号化セッション鍵E(KPd1,ks2)と自身の公開鍵KPp2とを連結し、これをS132で保持したチャレンジ鍵Kc1で暗号化してセッション情報E(Kc1,E(KPd1、Ks2)//KPp2)を生成する(S140)。   The first encryption unit 225 generates the encrypted session key E (KPd1, ks2) by encrypting the transmitted session key Ks2 with the public key KPd1 held in S130, and transmits this to the second encryption unit 226. . The second encryption unit 226 concatenates the encrypted session key E (KPd1, ks2) and its own public key KPp2, encrypts it with the challenge key Kc1 held in S132, and stores session information E (Kc1, E (KPd1). , Ks2) // KPp2) (S140).

端末装置150のコントローラ151では、ストレージデバイス200においてセッション情報生成命令の処理が終了すると、セッション情報出力命令を発行する(S142)。   When the processing of the session information generation command is completed in the storage device 200, the controller 151 of the terminal device 150 issues a session information output command (S142).

ストレージデバイス200では、セッション情報出力命令を受理する(S144)と、コントローラ201が、暗号エンジン203からセッション情報E(Kc1,E(KPd1、Ks2)//KPp2)を読み出し、端末装置150のコントローラ151へ出力する(S146)。   In the storage device 200, when the session information output command is received (S144), the controller 201 reads the session information E (Kc1, E (KPd1, Ks2) // KPp2) from the cryptographic engine 203, and the controller 151 of the terminal device 150. (S146).

端末装置150のコントローラ151は、ストレージデバイス200からセッション情報E(Kc1,E(KPd1、Ks2)//KPp2)を受信すると、これを配信サーバ100に送信する(S148)。   When receiving the session information E (Kc1, E (KPd1, Ks2) // KPp2) from the storage device 200, the controller 151 of the terminal device 150 transmits it to the distribution server 100 (S148).

配信サーバ100のコントローラ101は、セッション情報E(Kc1,E(KPd1,Ks2)//KPp2)を受信すると(S150)、これを暗号エンジン103に伝達する。   When the controller 101 of the distribution server 100 receives the session information E (Kc1, E (KPd1, Ks2) // KPp2) (S150), it transmits this to the cryptographic engine 103.

暗号エンジン103の第1復号部123は、内部に保持したチャレンジ鍵Kc1で、伝達されたセッション情報E(Kc1,E(KPd1,Ks2)//KPp2)を復号し、暗号化セッション鍵E(KPd1、Ks2)とストレージデバイス200の公開鍵KPp2を取り出す。取り出された暗号化セッション鍵E(KPd1、Ks2)は、第2復号部124に伝達され、第2復号部124は、自身の秘密鍵Kd1で復号してセッション鍵Ks2を取り出し、第3暗号部126とログ記憶部129に伝達する。ログ記憶部129は、セッション鍵Ks2を受け取ると、新たな履歴情報として、受け取ったセッション鍵Ks2を記憶する。この時、ログ記憶部129は、情報ST1として“状態SP”を示す情報を併せて記憶する(S152)。   The first decryption unit 123 of the cryptographic engine 103 decrypts the transmitted session information E (Kc1, E (KPd1, Ks2) // KPp2) with the challenge key Kc1 held therein, and encrypts the encrypted session key E (KPd1). , Ks2) and the public key KPp2 of the storage device 200 are extracted. The extracted encrypted session key E (KPd1, Ks2) is transmitted to the second decryption unit 124, and the second decryption unit 124 decrypts it with its own secret key Kd1 to extract the session key Ks2, and the third encryption unit 126 and the log storage unit 129. When the log storage unit 129 receives the session key Ks2, the log storage unit 129 stores the received session key Ks2 as new history information. At this time, the log storage unit 129 also stores information indicating “state SP” as information ST1 (S152).

続いて、暗号エンジン103の第2暗号部125は、暗号器104が発行したライセンスデータLICをストレージデバイス200の公開鍵KPp2で暗号化してE(KPp2,LIC)を生成し、これを第3暗号部126に伝達する。第3暗号部126は、伝達されたE(KPp2,LIC)を、さらにストレージデバイス200が発行したセッション鍵Ks2で暗号化して暗号化ライセンスデータE(Ks2,E(KPp2,LIC))を生成し、これをコントローラ101に伝達する。コントローラ101は、伝達された暗号化ライセンスデータE(Ks2,E(KPp2,LIC))を端末装置150に送信する。この時、ログ記憶部129は、情報ST1を“状態SP”から“状態SL”に変更する(S154)。   Subsequently, the second encryption unit 125 of the encryption engine 103 encrypts the license data LIC issued by the encryptor 104 with the public key KPp2 of the storage device 200 to generate E (KPp2, LIC), which is the third encryption. Transmitted to the unit 126. The third encryption unit 126 further encrypts the transmitted E (KPp2, LIC) with the session key Ks2 issued by the storage device 200 to generate encrypted license data E (Ks2, E (KPp2, LIC)). This is transmitted to the controller 101. The controller 101 transmits the transmitted encrypted license data E (Ks2, E (KPp2, LIC)) to the terminal device 150. At this time, the log storage unit 129 changes the information ST1 from “state SP” to “state SL” (S154).

端末装置150のコントローラ151は、配信サーバ100から送信された暗号化ライセンスデータE(Ks2,E(KPp2,LIC))を受信する(S156)と、ストレージデバイス200に対してライセンスデータ書込命令を発行する(S158)。このライセンス書込命令は、耐タンパ記憶部204上の記録位置を指定するアドレスを伴っている。ここでアドレスとは、論理アドレスを示し、耐タンパ記憶部204における記録位置を直接指定するものではないが、アドレスを指定して記録したデータは、同じアドレスを指定することで読み出せるように、コントローラ201によって管理されている。しかしながら、耐タンパ記憶部204における位置を示す物理アドレスであってもよい。   When the controller 151 of the terminal device 150 receives the encrypted license data E (Ks2, E (KPp2, LIC)) transmitted from the distribution server 100 (S156), the controller 151 issues a license data write command to the storage device 200. Issue (S158). This license write command is accompanied by an address for designating a recording position on the tamper resistant storage unit 204. Here, the address indicates a logical address and does not directly specify the recording position in the tamper-resistant storage unit 204, but the data recorded by specifying the address can be read by specifying the same address. Managed by the controller 201. However, a physical address indicating a position in the tamper resistant storage unit 204 may be used.

ストレージデバイス200では、端末装置150が発行したライセンス書込命令を受理すると、暗号ライセンスデータを端末装置150のコントローラ151に要求し(S160)、端末装置150のコントローラ151は、この要求に応じて、暗号ライセンスデータE(Ks2,E(KPp2,LIC))をストレージデバイス200へ出力する(S162)。   When the storage device 200 receives the license write command issued by the terminal device 150, the storage device 200 requests the encrypted license data from the controller 151 of the terminal device 150 (S160), and the controller 151 of the terminal device 150 responds to this request. The encryption license data E (Ks2, E (KPp2, LIC)) is output to the storage device 200 (S162).

ストレージデバイス200は、暗号ライセンスデータE(Ks2,E(KPp2,LIC))を受理すると(S164)、これを暗号エンジン203内の第2復号部227に伝達する。   When the storage device 200 receives the encryption license data E (Ks2, E (KPp2, LIC)) (S164), it transmits this to the second decryption unit 227 in the encryption engine 203.

第2復号部227は、内部に保持しているセッション鍵Ks2で暗号化ライセンスデータE(Ks2,E(KPp2,LIC))を復号し、自身の公開鍵KPp2で暗号化されたライセンスデータE(KPp2,LIC)を取り出す。そして、取り出された暗号化ライセンスデータE(KPp2,LIC)は第3復号部228に伝達される。   The second decryption unit 227 decrypts the encrypted license data E (Ks2, E (KPp2, LIC)) with the session key Ks2 held therein, and the license data E (() encrypted with its own public key KPp2. KPp2, LIC) is taken out. The extracted encrypted license data E (KPp2, LIC) is transmitted to the third decryption unit 228.

第3復号部228は、伝達された暗号化ライセンスデータE(KPp2,LIC)を、公開鍵KPp2と対の秘密鍵Kp2で復号してライセンスデータLICを取り出し(S166)、これをローカルバス240を介して制御部220に伝達する。制御部220は、ライセンスデータLICから識別情報LicIDを取り出して、ログ記憶部129に伝達する。また、ライセンスデータLICをデータバス210へ出力する。   The third decryption unit 228 decrypts the transmitted encrypted license data E (KPp2, LIC) with the public key KPp2 and the private key Kp2 paired with the public key KPp2 to extract the license data LIC (S166). To the control unit 220. The control unit 220 extracts the identification information LicID from the license data LIC and transmits it to the log storage unit 129. Further, the license data LIC is output to the data bus 210.

ログ記憶部129は、識別情報LicIDを受け取ると、記憶している履歴情報に識別情報LicIDを追記し、併せて、同履歴情報内の状態情報ST1を“状態RP”から“状態RL”に変化させる(S166)。   Upon receiving the identification information LicID, the log storage unit 129 adds the identification information LicID to the stored history information, and changes the state information ST1 in the history information from “state RP” to “state RL”. (S166).

コントローラ201は、データバス210に出力されたライセンスデータを耐タンパ記憶部204の指定されたアドレスに記憶する(S168)。   The controller 201 stores the license data output to the data bus 210 at the designated address of the tamper resistant storage unit 204 (S168).

耐タンパ記憶部204に対するライセンスデータの記憶が正常に終了すると(S170のY)、ログ記憶部234は、情報ST2を“状態RC”に変化させる(S172)。   When the storage of the license data in the tamper resistant storage unit 204 ends normally (Y in S170), the log storage unit 234 changes the information ST2 to “state RC” (S172).

このように1つのライセンスデータの記録が終了すると、端末装置150のコントローラ151は、続いてライセンスデータを記録するか判断する(S174)。   When the recording of one license data is thus completed, the controller 151 of the terminal device 150 determines whether to record the license data subsequently (S174).

続いてライセンスデータを記録する場合(S174のY)、S134に移行してセッション情報の生成命令の発行から処理を繰り返す。これは、複数のライセンスデータを記録する場合に、証明書の検証処理を共有とすることで、処理を軽減することを目的とした手順である。この時、チャレンジ鍵Kc1は、配信サーバ100の暗号エンジン103とストレージデバイス200の暗号エンジン203で共有された状態である。なお、ここで、続いてライセンスデータを記録するとしたが、1つのライセンスデータの記録後、直ちに次のライセンスデータの記録を行わなければならないわけではない。配信サーバ100の暗号エンジン103とストレージデバイス200の暗号エンジン203が同じチャレンジ鍵Kc1を共有している状態、具体的には、配信サーバ100の暗号エンジン103の第1復号部123と、ストレージデバイス200の暗号エンジン203の第2暗号部226が、同じチャレンジ鍵Kc1を保持している状態であればいかなるタイミングであっても良い。   Subsequently, when recording license data (Y in S174), the process proceeds to S134 and the process is repeated from the issue of the session information generation command. This is a procedure for reducing the processing by sharing the certificate verification processing when recording a plurality of license data. At this time, the challenge key Kc1 is shared by the cryptographic engine 103 of the distribution server 100 and the cryptographic engine 203 of the storage device 200. Although the license data is subsequently recorded here, the recording of the next license data is not necessarily performed immediately after the recording of one license data. A state where the cryptographic engine 103 of the distribution server 100 and the cryptographic engine 203 of the storage device 200 share the same challenge key Kc1, specifically, the first decryption unit 123 of the cryptographic engine 103 of the distribution server 100 and the storage device 200. Any timing may be used as long as the second encryption unit 226 of the encryption engine 203 holds the same challenge key Kc1.

また、続いてライセンスデータを記録する場合であっても、S102から処理を繰り返しても何ら問題はない。   Even if the license data is subsequently recorded, there is no problem even if the processing is repeated from S102.

続いてライセンスデータを記録しない場合(S174のN)には、本処理を正常終了する。   Subsequently, when the license data is not recorded (N in S174), this process is normally terminated.

耐タンパ記憶部204に対するライセンスデータの記憶でエラーが発生すると(S170のN)、コントローラ201は、書込エラー通知を、ストレージインタフェース202を介して端末装置150のコントローラ151に送信する(S200)。ライセンスデータを記憶する際のエラーは、耐タンパ記憶部204に書込ができない場合の他、暗号化ライセンスデータE(Ks2,E(KPp2,LIC))の送受信中のデータ誤りなどによって、受け取ったライセンスデータLICの形式が誤っていている場合も含めてもよい。   When an error occurs in storing license data in the tamper resistant storage unit 204 (N in S170), the controller 201 transmits a write error notification to the controller 151 of the terminal device 150 via the storage interface 202 (S200). The error when storing the license data was received due to a data error during transmission / reception of the encrypted license data E (Ks2, E (KPp2, LIC)) in addition to the case where writing to the tamper resistant storage unit 204 is impossible. The case where the format of the license data LIC is incorrect may be included.

コントローラ151は、書込エラー通知を受信すると(S202)。ストレージデバイス200に対してステータス情報生成命令を発行する(S204)。   When the controller 151 receives the write error notification (S202). A status information generation command is issued to the storage device 200 (S204).

ストレージデバイス200では、コントローラ201がステータス情報生成命令を受理する(S206)と、暗号エンジン203の制御部220は、ログ署名部235に指示をする。   In the storage device 200, when the controller 201 receives the status information generation command (S206), the control unit 220 of the cryptographic engine 203 instructs the log signature unit 235.

ログ署名部235は、ログ記憶部234に記憶されている履歴情報に含まれるセッション鍵Ks2、識別情報LicID、状態情報ST2を取り出し、これらとステップS132で保持したチャレンジ鍵Kc1とを連結して、データKc1//Ks2//LicID//ST2を生成する。そして、ハッシュ演算を行い、H(Kc1//Ks2//LicID//ST2)を算出し、この演算結果と識別情報LicID、状態情報ST2を連結して、ステータス情報LicID//ST3//H(Kc1//Ks2//LicID//ST2)を生成する(S208)。   The log signature unit 235 extracts the session key Ks2, the identification information LicID, and the state information ST2 included in the history information stored in the log storage unit 234, and concatenates them with the challenge key Kc1 held in step S132, Data Kc1 // Ks2 // LicID // ST2 is generated. Then, a hash calculation is performed to calculate H (Kc1 // Ks2 // LicID // ST2), and the calculation result, identification information LicID, and state information ST2 are connected to obtain status information LicID // ST3 // H ( Kc1 // Ks2 // LicID // ST2) is generated (S208).

端末装置150のコントローラ151は、ストレージデバイス200においてステータス情報生成命令の処理が終了すると、ステータス情報出力命令を発行する(S210)。   When the processing of the status information generation command is completed in the storage device 200, the controller 151 of the terminal device 150 issues a status information output command (S210).

ストレージデバイス200では、ステータス情報出力命令を受理する(S212)と、コントローラ201が、暗号エンジン203からステータス情報LicID//ST2//H(Kc1//Ks2//LicID//ST2)を読み出し、端末装置150のコントローラ151へ出力する(S214)。   In the storage device 200, when the status information output command is received (S212), the controller 201 reads the status information LicID // ST2 // H (Kc1 // Ks2 // LicID // ST2) from the cryptographic engine 203, and the terminal The data is output to the controller 151 of the device 150 (S214).

端末装置150のコントローラ151は、ストレージデバイス200からステータス情報LicID//ST2//H(Kc1//Ks2//LicID//ST2)を受信すると、これを配信サーバ100に送信する(S216)。   Upon receiving the status information LicID // ST2 // H (Kc1 // Ks2 // LicID // ST2) from the storage device 200, the controller 151 of the terminal device 150 transmits it to the distribution server 100 (S216).

配信サーバ100は、ステータス情報LicID//ST2//H(Kc1//Ks2//LicID//ST2)を受理すると(S218)、これを内部の暗号エンジン103に伝達する。   Upon receiving the status information LicID // ST2 // H (Kc1 // Ks2 // LicID // ST2) (S218), the distribution server 100 transmits this to the internal cryptographic engine 103.

暗号エンジン103では、制御部128の指示に従って、ログ検証部130に伝達されたステータス情報を検証し、ステータス情報が信頼できるかの判断によって、ライセンスデータをリカバリー、すなわち、ライセンスデータを未送信の状態とするか否かの判定を行う(S220)。   The cryptographic engine 103 verifies the status information transmitted to the log verification unit 130 according to the instruction of the control unit 128, and recovers the license data by determining whether the status information is reliable, that is, the license data is not yet transmitted. It is determined whether or not (S220).

S220のステータス情報の検証では、次の2項目が確認される。1)ステータス情報中の識別情報LicIDとログ記憶部129に記憶されている識別情報LicIDが一致しているか。2)ステータス情報中の識別情報LicID、状態情報ST3、ログ記憶部129に履歴情報として記憶されているセッション鍵Ks1、ステップS132で保持したチャレンジ鍵Kc2を連結し、この連結されたデータに対してハッシュ関数演算を行った結果H(Kc1//Ks2//LicID//ST2)と、ステータス情報中のハッシュ値H(Kc1//Ks2//LicID//ST2)が一致しているか。   In the verification of the status information in S220, the following two items are confirmed. 1) Whether the identification information LicID in the status information matches the identification information LicID stored in the log storage unit 129. 2) The identification information LicID in the status information, the status information ST3, the session key Ks1 stored as history information in the log storage unit 129, and the challenge key Kc2 held in step S132 are concatenated. Whether the result H (Kc1 // Ks2 // LicID // ST2) of the hash function calculation matches the hash value H (Kc1 // Ks2 // LicID // ST2) in the status information.

上記2項目の確認において、何れか1つでも不一致であった場合、ステータス情報は信頼できない情報であるとして、リカバリーの対象でないと判断する(S220のN)。   In the confirmation of the above two items, if any one of them does not match, it is determined that the status information is unreliable information and is not subject to recovery (N in S220).

一方、上記2項目の確認において、2項目共に一致した場合、ステータス情報を信頼できるデータであると承認し、さらに、情報ST2と、ログ記憶部129に記憶されている情報ST1に基づいて、当該ライセンスデータが復旧の対象となるライセンスデータか否か判断する。これは、コンテンツ権利者の権利を保護する立場から、リカバリーの対象となるライセンスデータは、配信サーバ100から出力された状態であり、かつ、ストレージデバイス200に記憶されていないものに限られるためである。具体的には、ログ記憶部129に記憶されている状態情報ST1が”状態SL”であり、かつ、ステータス情報内の状態情報ST2が”状態RP”あるいは”状態”RL”であるときである。   On the other hand, if the two items match in the confirmation of the two items, the status information is approved as reliable data, and further, based on the information ST2 and the information ST1 stored in the log storage unit 129, It is determined whether the license data is license data to be restored. This is because, from the standpoint of protecting the rights of the content right holder, the license data to be recovered is in a state that is output from the distribution server 100 and is not stored in the storage device 200. is there. Specifically, this is when the state information ST1 stored in the log storage unit 129 is “state SL” and the state information ST2 in the status information is “state RP” or “state” RL. .

上記の判断において、リカバリーの対象であると判断されると(S220のY)、ライセンスデータを未送信の状態とし、ログ記憶部の状態情報ST1を、“状態SP”へ変更する(S222)。ライセンスデータの未送信の状態は、たとえば、有料コンテンツ配信であって課金状態となっていれば、それを解消する。あるいは、ライセンスデータの再出力に応えるようにするなどの状態に移行することになる。   In the above determination, if it is determined that the data is to be recovered (Y in S220), the license data is set to an untransmitted state, and the status information ST1 in the log storage unit is changed to “status SP” (S222). If the license data has not yet been transmitted, for example, if paid content distribution is in a charging state, it is canceled. Alternatively, the state shifts to a state of responding to re-output of license data.

続いて、リカバリー通知を端末装置150に送信する(S224)。   Subsequently, a recovery notification is transmitted to the terminal device 150 (S224).

端末装置150のコントローラ151は、リカバリー通知を受信する(S226)とステップS174へ移行し、再び、ライセンスデータの受信を受けるか判断する(S174)。   When the controller 151 of the terminal device 150 receives the recovery notification (S226), the controller 151 proceeds to step S174 and determines again whether to receive the license data (S174).

上記の判断において、リカバリーの対象でないと判断されると(S220のN)、リカバリーエラー通知を端末装置150に送信する(S228)。   In the above determination, if it is determined that it is not a target of recovery (N in S220), a recovery error notification is transmitted to the terminal device 150 (S228).

端末装置150のコントローラ151は、リカバリー通知を受信する(S230)とステップS174へ移行し、別のライセンスデータの受信を受けるか判断する(S174)。   When the controller 151 of the terminal device 150 receives the recovery notification (S230), the controller 151 proceeds to step S174 and determines whether to receive another license data (S174).

以上の手順により、暗号化されたコンテンツを復号し再生するために必要なライセンスデータLICがストレージデバイス200に記録される。暗号化コンテンツは、通常データであり、ストレージデバイス200の通常コマンドによって記録されるため、ここでは説明を省略する。   Through the above procedure, the license data LIC necessary for decrypting and reproducing the encrypted content is recorded in the storage device 200. Since the encrypted content is normal data and is recorded by a normal command of the storage device 200, description thereof is omitted here.

なお、ライセンスデータLICと暗号化コンテンツデータの記録順序は、いずれが先であってもかまわない。さらには、暗号化コンテンツデータの記録における空き時間に、セキュアコマンドを分割して発行することで、ライセンスデータLICを記録するようにしてもよい。   The recording order of the license data LIC and the encrypted content data may be any first. Further, the license data LIC may be recorded by dividing and issuing the secure command during the free time for recording the encrypted content data.

なお、図8乃至図10が示す、端末装置150が配信サーバ100から送信されたライセンスデータLICをストレージデバイス200に記録するまでの手順は、正常に処理が推移した場合の例である。   The procedure until the terminal device 150 records the license data LIC transmitted from the distribution server 100 in the storage device 200 shown in FIGS.


※ライセンスの利用
図11乃至図14は、再生装置300がストレージデバイス200からライセンスデータLICを読み出し、読み出したコンテンツ鍵を破棄するまでの再生処理にかかる手順を示す。この再生処理では、ストレージデバイス200の暗号エンジン203と再生装置300の暗号エンジン303との間で暗号通信路が構築され、その暗号通信路を介してライセンスデータLICがストレージデバイス200から再生装置300に送信される。なお、図は、ストレージデバイス200(暗号エンジン203)、再生装置300の暗号エンジン303、および、これらのデータ交換を仲介する再生装置300のコントローラ301に区分して処理を示している。

* Use of License FIG. 11 to FIG. 14 show a procedure related to reproduction processing from when the reproducing apparatus 300 reads out the license data LIC from the storage device 200 and discards the read content key. In this reproduction process, an encryption communication path is established between the encryption engine 203 of the storage device 200 and the encryption engine 303 of the playback apparatus 300, and the license data LIC is transferred from the storage device 200 to the playback apparatus 300 via the encryption communication path. Sent. The figure shows the processing divided into the storage device 200 (cryptographic engine 203), the cryptographic engine 303 of the playback device 300, and the controller 301 of the playback device 300 that mediates the exchange of these data.

まず、再生装置300のコントローラ301は、暗号エンジン303に対して証明書の出力要求を行う(S302)。暗号エンジン303は、この送信要求を受け取ると(S304)、証明書出力部320が証明書C[KPd3]をコントローラ301へ伝達する(S306)。コントローラ301は、暗号エンジン303から証明書C[KPd3]が伝達されると(S308)、ストレージデバイス200に対して証明書検証命令を発行する(S310)。   First, the controller 301 of the playback device 300 makes a certificate output request to the cryptographic engine 303 (S302). When the cryptographic engine 303 receives this transmission request (S304), the certificate output unit 320 transmits the certificate C [KPd3] to the controller 301 (S306). When the certificate C [KPd3] is transmitted from the cryptographic engine 303 (S308), the controller 301 issues a certificate verification command to the storage device 200 (S310).

ストレージデバイス200では、証明書検証命令が受理されると(S312)、再生装置300に対して証明書を要求する。再生装置300のコントローラ301は、この要求に応じて、暗号エンジン303から伝達された証明書C[KPd3]をストレージデバイス200へ出力する(S314)。   In the storage device 200, when the certificate verification command is received (S312), the storage device 200 requests a certificate from the playback device 300. In response to this request, the controller 301 of the playback device 300 outputs the certificate C [KPd3] transmitted from the cryptographic engine 303 to the storage device 200 (S314).

ストレージデバイス200は、証明書C[KPd3]を受理すると(S316)、受理した証明書C[KPd3]を内部の暗号エンジン203に伝達する。暗号エンジン203では、制御部220の指示に従って、証明書検証部223が証明書C[KPd3]を検証鍵KPaで検証する(S318)。   When the storage device 200 receives the certificate C [KPd3] (S316), the storage device 200 transmits the received certificate C [KPd3] to the internal cryptographic engine 203. In the cryptographic engine 203, the certificate verification unit 223 verifies the certificate C [KPd3] with the verification key KPa according to the instruction of the control unit 220 (S318).

s318において、証明書が承認されなかった場合(S318のN)、証明書検証部223は検証エラー通知を、制御部220、コントローラ201、ストレージインタフェース202を介して、コントローラ301に送信する(S490)。コントローラ301は、エラー通知を受信すると(S492)、本処理を異常終了する。   If the certificate is not approved in s318 (N in S318), the certificate verification unit 223 transmits a verification error notification to the controller 301 via the control unit 220, the controller 201, and the storage interface 202 (S490). . When the controller 301 receives the error notification (S492), the process is abnormally terminated.

一方、s318において、証明書C[KPd3]が承認された場合(S318のY)、暗号エンジン203の制御部220は、証明書C[KPd3]から公開鍵KPd3を取り出し、これを第3暗号部229に伝達する。第3暗号部229は、伝達された公開鍵KPd3を保持する(S320)。   On the other hand, when the certificate C [KPd3] is approved in s318 (Y in S318), the control unit 220 of the cryptographic engine 203 extracts the public key KPd3 from the certificate C [KPd3], and uses this as the third cryptographic unit. 229. The third encryption unit 229 holds the transmitted public key KPd3 (S320).

ストレージデバイス200において、暗号エンジン303の証明書C[KPd3]が承認されると、再生装置300のコントローラ301は、ストレージデバイス200に対してチャレンジ情報生成命令を発行する(S322)。ストレージデバイス200が、再生装置300が発行したチャレンジ情報生成命令を受理する(S324)と、暗号エンジン202では、制御部220の指示に従って、乱数発生部221がチャレンジ鍵Kc2を生成し、保持する(S326)。保持されたチャレンジ鍵Kc2は、第3暗号部229、第4復号部230およびログ検証部236に伝達される。   When the certificate C [KPd3] of the cryptographic engine 303 is approved in the storage device 200, the controller 301 of the playback device 300 issues a challenge information generation command to the storage device 200 (S322). When the storage device 200 receives the challenge information generation command issued by the playback device 300 (S324), in the cryptographic engine 202, the random number generation unit 221 generates and holds the challenge key Kc2 in accordance with the instruction of the control unit 220 ( S326). The held challenge key Kc2 is transmitted to the third encryption unit 229, the fourth decryption unit 230, and the log verification unit 236.

第3暗号部229は、S320にて保持した公開鍵KPd3で、伝達されたセッション鍵Kc2を暗号化して暗号化チャレンジ鍵E(KPd3,Kc2)を生成する。次に、自身の証明書C[KPd2]を証明書出力部222から取得し、これを生成した暗号化チャレンジ鍵E(KPd3,Kc2)と連結してチャレンジ情報E(KPd3,Kc2)//C[KPd2]を生成する(S328)。   The third encryption unit 229 encrypts the transmitted session key Kc2 with the public key KPd3 held in S320, and generates an encrypted challenge key E (KPd3, Kc2). Next, it obtains its own certificate C [KPd2] from the certificate output unit 222 and concatenates it with the encrypted challenge key E (KPd3, Kc2) that generated it to challenge information E (KPd3, Kc2) // C [KPd2] is generated (S328).

再生装置300では、ストレージデバイス200においてチャレンジ情報生成命令の処理が終了すると、コントローラ301がチャレンジ情報出力命令を発行する(S330)。   In the playback device 300, when the processing of the challenge information generation command is completed in the storage device 200, the controller 301 issues a challenge information output command (S330).

ストレージデバイス200が、再生装置300が発行したチャレンジ情報出力命令を受理する(S332)と、コントローラ201は、暗号エンジン203からチャレンジ情報E(KPd3,Kc2)//C[KPd2]を取り出し、再生装置300のコントローラ301へ出力する(S334)。   When the storage device 200 receives the challenge information output command issued by the playback device 300 (S332), the controller 201 extracts the challenge information E (KPd3, Kc2) // C [KPd2] from the cryptographic engine 203, and the playback device. It outputs to the controller 301 of 300 (S334).

再生装置300では、コントローラ301が、チャレンジ情報E(KPd3,Kc2)//C[KPd2]を受信すると、これを暗号エンジン303に伝達する(S336)。そして、暗号エンジン303が、チャレンジ情報E(KPd3,Kc2)//C[KPd2]を受信すると(S338)、暗号エンジン303内の証明書検証部322が、検証鍵KPaで伝達された証明書を検証する(S340)。   In the playback device 300, when the controller 301 receives the challenge information E (KPd3, Kc2) // C [KPd2], it transmits this to the cryptographic engine 303 (S336). When the cryptographic engine 303 receives the challenge information E (KPd3, Kc2) // C [KPd2] (S338), the certificate verification unit 322 in the cryptographic engine 303 receives the certificate transmitted with the verification key KPa. Verification is performed (S340).

証明書が承認されなかった場合(S340のN)、証明書検証部322は、検証エラー通知をコントローラ301に送信する(S394)。コントローラ301は、エラー通知を受信すると(S492)、本処理を異常終了する。   When the certificate is not approved (N in S340), the certificate verification unit 322 transmits a verification error notification to the controller 301 (S394). When the controller 301 receives the error notification (S492), the process is abnormally terminated.

一方、証明書が承認された場合(S340のY)、暗号エンジン303の第1復号部323は、暗号化チャレンジ鍵E(KPd3,Kc2)を自身の秘密鍵Kd3で復号してチャレンジ鍵Kc2を取り出し(S342)、保持する(S344)。保持されたチャレンジ鍵Kc2は、第2暗号部325とログ署名部331に伝達される。   On the other hand, when the certificate is approved (Y in S340), the first decryption unit 323 of the cryptographic engine 303 decrypts the encrypted challenge key E (KPd3, Kc2) with its own private key Kd3 and obtains the challenge key Kc2. Take out (S342) and hold (S344). The held challenge key Kc2 is transmitted to the second encryption unit 325 and the log signature unit 331.

一方、コントローラ301は、ストレージデバイス200に対してライセンス読出命令を発行する(S346)。このライセンス読出命令は、耐タンパ記憶部204における読み出し位置を指定するアドレスを伴っている。   On the other hand, the controller 301 issues a license read command to the storage device 200 (S346). This license read command is accompanied by an address that designates a read position in the tamper resistant storage unit 204.

ストレージデバイス200は、再生装置300が発行したライセンス読出命令を受理すると(S348)、耐タンパ記憶部204の指定されたアドレスに記憶されているライセンスデータLICを読み出し、読み出されたライセンスデータLICは、暗号エンジン202の第4暗号部232に保持される(S350)。   When the storage device 200 receives the license read command issued by the playback device 300 (S348), the storage device 200 reads the license data LIC stored at the specified address of the tamper resistant storage unit 204, and the read license data LIC is And stored in the fourth encryption unit 232 of the encryption engine 202 (S350).

続いて、コントローラ301は、暗号エンジン303に対してセッション情報を要求する(S352)。暗号エンジン303は、この要求を受け取ると(S354)、乱数発生部321がセッション鍵Ks3を生成し、第1暗号部324、第2復号部326、ログ記録部330に伝達する。第2復号部326およびログ記憶部330は、伝達されたセッション鍵Ks3を内部に履歴情報として記憶する。この時、ログ記憶部330は、情報ST3として“状態RP”を示す情報を併せて記憶する(S354)。そして、第1暗号部324は、証明書C[KPd2]から取り出されたストレージデバイス200の公開鍵KPd2で、セッション鍵Ks2を暗号化し、暗号化セッション鍵E(KPd2,Ks3)を生成する。生成された暗号化セッション鍵E(KPd2,Ks3)は、第2暗号部325に伝達される。第2暗号部325は、伝達された暗号化セッション鍵E(KPd2,Ks3)に自身の公開鍵KPp3を連結し、これらをS344で保持されたチャレンジ鍵Kc2で暗号化してセッション情報E(Kc2,E(KPd2、Ks3)//KPp3)を生成し、これをコントローラ301へ送る(S356)。   Subsequently, the controller 301 requests session information from the cryptographic engine 303 (S352). When the cryptographic engine 303 receives this request (S354), the random number generation unit 321 generates a session key Ks3 and transmits it to the first encryption unit 324, the second decryption unit 326, and the log recording unit 330. The second decryption unit 326 and the log storage unit 330 store the transmitted session key Ks3 as history information. At this time, the log storage unit 330 also stores information indicating “state RP” as information ST3 (S354). Then, the first encryption unit 324 encrypts the session key Ks2 with the public key KPd2 of the storage device 200 extracted from the certificate C [KPd2], and generates an encrypted session key E (KPd2, Ks3). The generated encrypted session key E (KPd2, Ks3) is transmitted to the second encryption unit 325. The second encryption unit 325 concatenates its public key KPp3 to the transmitted encrypted session key E (KPd2, Ks3), encrypts the public key KPp3 with the challenge key Kc2 held in S344, and session information E (Kc2, E (KPd2, Ks3) // KPp3) is generated and sent to the controller 301 (S356).

コントローラ301は、暗号エンジン303からセッション情報E(Kc2,E(KPd2,Ks3)//KPp3)を受信すると(S358)、ストレージデバイス200に対してセッション情報処理命令を発行する(S360)。   When the controller 301 receives the session information E (Kc2, E (KPd2, Ks3) // KPp3) from the cryptographic engine 303 (S358), it issues a session information processing command to the storage device 200 (S360).

ストレージデバイス200は、再生装置300から発行されたセッション情報処理命令を受理すると(S362)、再生装置300に対してセッション情報を要求し、再生装置300のコントローラ301は、この要求に応じて、暗号エンジン303から受け取ったセッション情報E(Kc2,E(KPd2,Ks3)//KPp3)をストレージデバイス200へ出力する(S364)。   When the storage device 200 receives the session information processing command issued from the playback device 300 (S362), the storage device 200 requests session information from the playback device 300, and the controller 301 of the playback device 300 responds to this request by encrypting the session information. The session information E (Kc2, E (KPd2, Ks3) // KPp3) received from the engine 303 is output to the storage device 200 (S364).

ストレージデバイス200は、セッション情報E(Kc2,E(KPd2,Ks3)//KPp3)を受理すると(S366)、暗号エンジン203の第4復号部230に伝達する。第4復号部230は、伝達されたセッション情報E(Kc2,E(KPd2,Ks3)//KPp3)を、S326で保持されたチャレンジ鍵Kc2で復号する。そして、暗号化セッション鍵E(KPd2,Ks3)と再生装置300の公開鍵KPp3を取り出し、暗号化セッション鍵E(KPd2,Ks3)を第5復号部231に伝達し、また公開鍵KPp3を第4暗号部232とログ記憶部234に伝達する。   When the storage device 200 receives the session information E (Kc2, E (KPd2, Ks3) // KPp3) (S366), the storage device 200 transmits it to the fourth decryption unit 230 of the cryptographic engine 203. The fourth decryption unit 230 decrypts the transmitted session information E (Kc2, E (KPd2, Ks3) // KPp3) with the challenge key Kc2 held in S326. Then, the encrypted session key E (KPd2, Ks3) and the public key KPp3 of the playback device 300 are extracted, the encrypted session key E (KPd2, Ks3) is transmitted to the fifth decryption unit 231, and the public key KPp3 is the fourth key. The data is transmitted to the encryption unit 232 and the log storage unit 234.

次いで、第5復号部231は、伝達された暗号化セッション鍵E(KPd2,Ks3)を、自身の公開鍵KPd2と対をなす自身の秘密鍵Kd2で復号してセッション鍵Ks3を取り出し、これを第5暗号部233とログ記憶部234に伝達する。   Next, the fifth decryption unit 231 decrypts the transmitted encrypted session key E (KPd2, Ks3) with its own private key Kd2 paired with its own public key KPd2, and extracts the session key Ks3. The data is transmitted to the fifth encryption unit 233 and the log storage unit 234.

ログ記憶部234は、伝達されたセッション鍵Ks3を、新たな履歴情報として記憶する。また、この時、“状態SP”を示す情報も併せて記憶する(S368)。   The log storage unit 234 stores the transmitted session key Ks3 as new history information. At this time, information indicating "state SP" is also stored (S368).

第4暗号部232は、S350で保持されたライセンスデータLICを、第4復号部230から伝達された再生装置300の公開鍵KPp3で暗号化して暗号化ライセンスデータE(KPp3,LIC)を生成し、これを第5暗号部233に伝達する。第5暗号部233は、第4暗号部232で生成された暗号化ライセンスデータE(KPp3,LIC)を、第5復号部231から伝達されたセッション鍵Ks3で暗号化し、暗号化ライセンスデータE(Ks3,E(KPp3,LIC))を生成する(S370)。   The fourth encryption unit 232 encrypts the license data LIC held in S350 with the public key KPp3 of the playback device 300 transmitted from the fourth decryption unit 230 to generate encrypted license data E (KPp3, LIC). This is transmitted to the fifth encryption unit 233. The fifth encryption unit 233 encrypts the encrypted license data E (KPp3, LIC) generated by the fourth encryption unit 232 with the session key Ks3 transmitted from the fifth decryption unit 231, and encrypts the license data E ( Ks3, E (KPp3, LIC)) is generated (S370).

再生装置300のコントローラ301は、ストレージデバイス200においてセッション情報処理命令の処理が終了、すなわち、暗号化ライセンスデータE(Ks3,E(KPp3,LIC))が生成されると、ストレージデバイス200に対して暗号化ライセンス出力命令を発行する(S372)。ストレージデバイス200は、再生装置300が発行した暗号化ライセンス出力命令を受理する(S374)と、暗号エンジン203の制御部220は、ライセンスデータLICに記載される制御情報PCの確認を行う(S376)。   When the processing of the session information processing instruction is completed in the storage device 200, that is, the encrypted license data E (Ks3, E (KPp3, LIC)) is generated, the controller 301 of the playback device 300 An encrypted license output command is issued (S372). When the storage device 200 receives the encrypted license output command issued by the playback apparatus 300 (S374), the control unit 220 of the cryptographic engine 203 confirms the control information PC described in the license data LIC (S376). .

制御情報PCが0の場合(S376のIV)、制御部220は、再生回数の制限がなされたライセンスデータであって、かつ、既に制限回数の再生が終了していると判断し、再生条件エラー通知を、コントローラ201、ストレージインタフェース202を介して、再生装置300のコントローラ301に送信する(S390)。再生装置300のコントローラ301は、ストレージデバイス200が送信したエラー通知を受信すると(S392)、本処理は、ステップS396へ移行し、別のライセンスデータを送信するか判断する(S396)。   When the control information PC is 0 (IV in S376), the control unit 220 determines that the license data has been limited in the number of reproductions and that the reproduction has been completed for a limited number of times. The notification is transmitted to the controller 301 of the playback device 300 via the controller 201 and the storage interface 202 (S390). When the controller 301 of the playback device 300 receives the error notification transmitted by the storage device 200 (S392), the process proceeds to step S396 and determines whether to transmit another license data (S396).

また、S376において、制御情報PCが1〜254の場合(S376のAL)、制御部220は、耐タンパ記憶部204に記憶されているライセンスデータの制御情報PCを1減算した値に変更する。(S378)。   In S376, when the control information PC is 1 to 254 (AL in S376), the control unit 220 changes the control information PC of the license data stored in the tamper resistant storage unit 204 to a value obtained by subtracting one. (S378).

また、S376において、制御情報PCが255の場合(S376のNA)、およびS378の後、制御部220は、暗号化ライセンスデータE(Ks3,E(KPp3,LIC))を、コントローラ201、ストレージインタフェース202を介して、再生装置300のコントローラ301へ出力すると共に、ログ記録部234に、出力したライセンスデータLICの識別情報LicIDを保持させ、情報ST2を“状態SL”に変更させる(S380)。   In S376, when the control information PC is 255 (NA in S376) and after S378, the control unit 220 sends the encrypted license data E (Ks3, E (KPp3, LIC)) to the controller 201, the storage interface. The information is output to the controller 301 of the playback device 300 via 202, and the log recording unit 234 holds the identification information LicID of the output license data LIC, and changes the information ST2 to “state SL” (S380).

再生装置300のコントローラ301は、ストレージデバイス200から暗号化ライセンスデータE(Ks3,E(KPp3,LIC))を受信すると、これを暗号エンジン303に送る(S382)。暗号エンジン303が暗号化ライセンスデータE(Ks3,E(KPp3,LIC))を受信すると(S384)、第2復号部326は、S354において保持されたセッション鍵Ks3で暗号化ライセンスデータE(Ks3,E(KPp3,LIC))を復号し、復号結果のE(KPp3,LIC)を第3復号部327に伝達する。   When receiving the encrypted license data E (Ks3, E (KPp3, LIC)) from the storage device 200, the controller 301 of the playback device 300 sends it to the cryptographic engine 303 (S382). When the cryptographic engine 303 receives the encrypted license data E (Ks3, E (KPp3, LIC)) (S384), the second decryption unit 326 uses the session key Ks3 held in S354 to encrypt the encrypted license data E (Ks3, E3). E (KPp3, LIC)) is decoded, and E (KPp3, LIC) as a decoding result is transmitted to the third decoding unit 327.

第3復号部327は、伝達されたE(KPp3,LIC)を公開鍵KPp3と対をなす自身の秘密鍵Kp3で復号してライセンスデータLICを取り出し、取り出したライセンスデータLICの識別情報LicIDをログ記憶部330に伝達し、また、コンテンツ鍵をコンテンツ鍵出力部328に伝達する。   The third decryption unit 327 decrypts the transmitted E (KPp3, LIC) with its own private key Kp3 paired with the public key KPp3, retrieves the license data LIC, and logs the identification information LicID of the retrieved license data LIC The content key is transmitted to the storage unit 330 and the content key is transmitted to the content key output unit 328.

ログ記憶部330は、伝達された識別情報LicIDを保持し、情報ST3を“状態RL”に変更し(S386)、コンテンツ鍵出力部328は、復号器304に対して伝達されたコンテンツ鍵の提供を開始する(S388)。   The log storage unit 330 holds the transmitted identification information LicID, changes the information ST3 to “state RL” (S386), and the content key output unit 328 provides the content key transmitted to the decoder 304 Is started (S388).

コントローラ301は、復号器304に対してコンテンツ鍵が提供可能な状態になると、再生終了の確認、すなわち、暗号コンテンツデータの再生完了による再生の終了、あるいは、ユーザからの再生中止指示(終了操作、選択操作などによる再生停止の指示を含む)による再生の終了をすべきか確認する(S390)。   When the content key can be provided to the decoder 304, the controller 301 confirms the end of playback, that is, the end of playback due to the completion of playback of the encrypted content data, or a playback stop instruction (end operation, It is confirmed whether or not the reproduction should be terminated by a reproduction stop instruction including a selection operation (S390).

S390において、再生が終了でない場合(S390のN)、ストレージデバイス200の通常データ記憶部205に記録されている暗号化コンテンツデータを読み出し、復号器304に供給する(S392)。このとき、コントローラ301は、コンテンツデコーダ305においてスムーズに再生がなされるよう、必要量の暗号化コンテンツデータを、断続的に復号器304に供給する。そして、復号器304へ供給を休止している間に、再びS390に戻って、終了判定を行う。   If the reproduction is not finished in S390 (N in S390), the encrypted content data recorded in the normal data storage unit 205 of the storage device 200 is read and supplied to the decryptor 304 (S392). At this time, the controller 301 intermittently supplies the necessary amount of encrypted content data to the decoder 304 so that the content decoder 305 can smoothly reproduce the content. Then, while the supply to the decoder 304 is suspended, the process returns to S390 again to determine the end.

一方、暗号エンジン303では、復号器304に対してコンテンツ鍵が提供可能な状態になると、コントローラ301における処理と並行して、コンテンツ鍵出力部328による復号部304の復号処理を監視する監視処理が開始される(S400)。コンテンツ鍵出力部328は、提供したコンテンツ鍵による再生が開始されるか、あるいは、コンテンツ鍵が利用されずに再生が終了するかを確認する(S402)。   On the other hand, in the cryptographic engine 303, when the content key can be provided to the decryptor 304, a monitoring process for monitoring the decryption process of the decryption unit 304 by the content key output unit 328 is performed in parallel with the process in the controller 301. The process is started (S400). The content key output unit 328 confirms whether playback using the provided content key is started or whether playback ends without using the content key (S402).

S402で再生が開始されると確認されると(S402のY)、経過時間計測部329のタイマをリセットし、復号処理の継続時間の計測を開始してT秒の経過を待つ(S404)。そして、T秒が経過すると(S404のY)、経過時間計測部329からライセンスデータLICが消費された旨を伝える情報が、ログ記憶部330に伝達される。この情報を受け取ったログ記憶部330は、記憶されている情報ST3を“状態CL”に変更して(S406)、暗号エンジン303における監視処理を終了する。   When it is confirmed that the reproduction is started in S402 (Y in S402), the timer of the elapsed time measuring unit 329 is reset, the measurement of the duration of the decoding process is started, and the elapse of T seconds is waited (S404). When T seconds elapse (Y in S404), information indicating that the license data LIC has been consumed is transmitted from the elapsed time measurement unit 329 to the log storage unit 330. Receiving this information, the log storage unit 330 changes the stored information ST3 to “state CL” (S406), and ends the monitoring process in the cryptographic engine 303.

また、S402、あるいは、S404において、再生の終了が確認されると(S402のS、あるいは、S404のS)、暗号エンジン302における監視処理を終了する。この場合、ログ記憶部330に記憶されている情報ST3は“状態RL”のままである。   When the end of reproduction is confirmed in S402 or S404 (S in S402 or S in S404), the monitoring process in the cryptographic engine 302 is ended. In this case, the information ST3 stored in the log storage unit 330 remains “state RL”.

S390において、コントローラ301が再生終了を確認する(S390のY)と、再生時間がT秒を超えているか確認する(S394)。この確認においては、たとえば、コントローラ301が内部に備えているタイマを用いて確認を行っても良い、暗号エンジン303の経過時間計測部329を参照して確認を行っても良い、また、暗号エンジン303のログ記憶部330の情報ST3の状態によって判断するようにしても良い。   In S390, when the controller 301 confirms the end of reproduction (Y in S390), it is confirmed whether the reproduction time exceeds T seconds (S394). In this confirmation, for example, confirmation may be performed using a timer provided in the controller 301, confirmation may be performed with reference to the elapsed time measuring unit 329 of the cryptographic engine 303, or the cryptographic engine The determination may be made according to the state of the information ST3 in the log storage unit 303.

S394において、再生してT秒が経過した場合(S394のY)、コントローラ301は、ライセンスデータが消費されたとみなし、次のコンテンツを続いて再生するか判断する(S396)。続けて再生を行わない、すなわち、他のライセンスデータを読み出さない場合(S396のN)、本処理を正常に終了する。   In S394, when T seconds have elapsed after the reproduction (Y in S394), the controller 301 considers that the license data has been consumed, and determines whether to reproduce the next content (S396). If the reproduction is not continued, that is, if no other license data is read (N in S396), this process ends normally.

S396において、続いて再生する、すなわち、他のライセンスデータを読み出したい場合(S396のY)、コントローラ301は、S346に移行してライセンス読出命令の発行から処理を繰り返すことができる。これは、複数のライセンスデータの読み出しにおいて、証明書の検証処理を共有とすることで、処理を軽減することを目的とした手順である。なお、続いてライセンスデータを読み出すとしたが、1つのライセンスデータを読み出した後、直ちに次の読み出しを行わなければならないわけではない。暗号エンジン303とストレージデバイス200がチャレンジ鍵Kc2を共有している状態、具体的には、再生装置300の暗号エンジン303の第2暗号部325と、ストレージデバイス200の暗号エンジン203の第4復号部230が、同じチャレンジ鍵Kc2を保持している状態であればいかなるタイミングであっても良い。また、続けてライセンスデータを読み出す場合であっても、ステップS302から手順を開始しても何ら問題はない。続いて他のライセンスデータを読み出さない場合(S386のN)、コントローラ303は、本処理を正常に終了する。   In S396, when the playback is performed subsequently, that is, when other license data is to be read (Y in S396), the controller 301 can proceed to S346 and repeat the processing from the issue of the license read command. This is a procedure for reducing the processing by sharing the certificate verification processing when reading a plurality of license data. Although the license data is subsequently read out, it is not always necessary to perform the next reading immediately after reading out one license data. A state in which the cryptographic engine 303 and the storage device 200 share the challenge key Kc2, specifically, the second cryptographic unit 325 of the cryptographic engine 303 of the playback device 300 and the fourth decrypting unit of the cryptographic engine 203 of the storage device 200 Any timing may be used as long as 230 holds the same challenge key Kc2. Even if the license data is continuously read out, there is no problem even if the procedure is started from step S302. Subsequently, when other license data is not read (N in S386), the controller 303 normally ends this process.

また、S394において、T秒未満の再生、あるいは、再生が行われなかった場合(S394のN)、コントローラ301は、ライセンスデータが消費されていないと判断し、ストレージデバイス200に記録されているライセンスデータLICの復元処理を開始する。   Also, in S394, if the playback is less than T seconds or no playback is performed (N in S394), the controller 301 determines that the license data is not consumed, and the license recorded in the storage device 200. The restoration process of the data LIC is started.

再生装置300のコントローラ301は、ステータス情報送信要求を暗号エンジン303に送る(S410)。   The controller 301 of the playback device 300 sends a status information transmission request to the cryptographic engine 303 (S410).

暗号エンジン303の制御部332は、ステータス情報送信要求を受け取ると(S412)、ログ署名部331に指示をする。ログ署名部331は、ログ記憶部330に記憶されている履歴情報に含まれるセッション鍵Ks3、識別情報LicID、情報ST3を取り出し、これらとステップS344で保持したチャレンジ鍵Kc2とを連結して、データKc2//Ks3//LicID//ST3を生成する。そして、ハッシュ演算を行い、H(Kc2//Ks3//LicID//ST3)を算出し、この演算結果と識別情報LicID、状態情報ST3を連結して、ステータス情報LicID//ST3//H(Kc2//Ks3//LicID//ST3)を生成し、再生装置300のコントローラ301へ出力する(S416)。   Upon receiving the status information transmission request (S412), the control unit 332 of the cryptographic engine 303 instructs the log signature unit 331. The log signature unit 331 extracts the session key Ks3, the identification information LicID, and the information ST3 included in the history information stored in the log storage unit 330 and concatenates them with the challenge key Kc2 held in step S344, Kc2 // Ks3 // LicID // ST3 is generated. Then, a hash calculation is performed to calculate H (Kc2 // Ks3 // LicID // ST3), and the calculation result, identification information LicID, and state information ST3 are connected to obtain status information LicID // ST3 // H ( Kc2 // Ks3 // LicID // ST3) is generated and output to the controller 301 of the playback device 300 (S416).

再生装置300のコントローラ301は、暗号エンジン303からステータス情報LicID//ST3//H(Kc2//Ks3//LicID//ST3)を受信すると(S418)、ストレージデバイス200に対してステータス情報処理命令を発行する(S420)。   When receiving the status information LicID // ST3 // H (Kc2 // Ks3 // LicID // ST3) from the cryptographic engine 303 (S418), the controller 301 of the playback device 300 receives a status information processing command from the storage device 200. Is issued (S420).

ストレージデバイス200は、再生装置300から発行されたステータス情報処理命令を受理すると(S422)、再生装置300にステータス情報を要求する。   When the storage device 200 receives the status information processing command issued from the playback device 300 (S422), it requests status information from the playback device 300.

再生装置300のコントローラ301は、この要求に応じて、暗号エンジン303から出力されたステータス情報LicID//ST3//H(Kc2//Ks3//LicID//ST3)をストレージデバイス200へ出力する(S424)。   In response to this request, the controller 301 of the playback device 300 outputs the status information LicID // ST3 // H (Kc2 // Ks3 // LicID // ST3) output from the cryptographic engine 303 to the storage device 200 ( S424).

ストレージデバイス200は、ステータス情報LicID//ST3//H(Kc2//Ks3//LicID//ST3)を受理すると(S426)、これを内部の暗号エンジン203に伝達する。   When the storage device 200 receives the status information LicID // ST3 // H (Kc2 // Ks3 // LicID // ST3) (S426), the storage device 200 transmits the status information to the internal cryptographic engine 203.

暗号エンジン203では、制御部220の指示に従って、ログ検証部236が伝達されたステータス情報を検証し、ステータス情報が信頼できるかの判断によって、ライセンスデータをリカバリー、すなわち、ライセンスデータを出力前の状態に戻すかの判断を行う(S428)。   In the cryptographic engine 203, the log verification unit 236 verifies the status information transmitted according to the instruction of the control unit 220, and recovers the license data by determining whether the status information is reliable, that is, the state before the license data is output. It is determined whether or not to return to (S428).

S428のステータス情報の検証では、次の2項目が確認される。1)ステータス情報中の識別情報LicIDとログ記憶部234に記憶されている識別情報LicIDが一致しているか。2)ステータス情報中の識別情報LicID、状態情報ST3、ログ記憶部234に保持されているセッション鍵Ks3、ステップS414で保持したチャレンジ鍵Kc2を連結し、この連結されたデータに対してハッシュ関数演算を行った結果H(Kc2//Ks3//LicID//ST3)と、ステータス情報中のハッシュ値H(Kc2//Ks3//LicID//ST3)が一致しているか。   In the verification of the status information in S428, the following two items are confirmed. 1) Whether the identification information LicID in the status information matches the identification information LicID stored in the log storage unit 234. 2) The identification information LicID in the status information, the status information ST3, the session key Ks3 held in the log storage unit 234, and the challenge key Kc2 held in step S414 are linked, and a hash function operation is performed on the linked data. Whether H (Kc2 // Ks3 // LicID // ST3) as a result of performing the search matches the hash value H (Kc2 // Ks3 // LicID // ST3) in the status information.

上記2項目の確認において、何れか1つでも不一致であった場合、ステータス情報は信頼できない情報であるとして、リカバリーの対象でないと判断する(S428のN)。   In the confirmation of the above two items, if any one of them does not match, it is determined that the status information is unreliable information and is not subject to recovery (N in S428).

一方、上記2項目の確認において、2項目共に一致した場合、ステータス情報を信頼できるデータであると承認し、さらに、情報ST3と、ログ記憶部234に記憶されている情報ST2に基づいて、当該ライセンスデータが復旧の対象となるライセンスデータか否か判断する。これは、コンテンツ権利者の権利を保護する立場から、復旧の対象となるライセンスデータは、ストレージデバイス200から出力されたものであり、かつ、再生装置200にて消費されていないものに限られるためである。具体的には、情報ST2が”状態SL”であり、かつ、情報ST3が”状態RP”あるいは”状態”RL”であるときである。   On the other hand, if the two items match in the confirmation of the two items, the status information is approved as reliable data, and further, based on the information ST3 and the information ST2 stored in the log storage unit 234, It is determined whether the license data is license data to be restored. This is because, from the standpoint of protecting the rights of the content right holder, the license data to be recovered is limited to data that is output from the storage device 200 and is not consumed by the playback device 200. It is. Specifically, the information ST2 is “state SL” and the information ST3 is “state RP” or “state” RL.

上記の判断において、リカバリーの対象であると判断されると(S428のY)、耐タンパ記憶部204に記憶されているライセンスデータの制御情報PCが255でない場合、この制御情報PCを1加算した値に変更する(S430)。そして、制御部220は、リカバリー通知をコントローラ201、ストレージインタフェース202を介して、再生装置300のコントローラ301に送信する(S432)。   In the above determination, if it is determined that it is a recovery target (Y in S428), if the control information PC of the license data stored in the tamper resistant storage unit 204 is not 255, this control information PC is incremented by one. The value is changed (S430). Then, the control unit 220 transmits a recovery notification to the controller 301 of the playback device 300 via the controller 201 and the storage interface 202 (S432).

再生装置300のコントローラ301は、ストレージデバイス200から出力されたエラー通知を受信すると(S434)、S396へ移行し、本処理を継続する。   When the controller 301 of the playback apparatus 300 receives the error notification output from the storage device 200 (S434), the controller 301 proceeds to S396 and continues this processing.

一方、S428においてリカバリーの対象でないと判断されると(S428のN)、制御部220は、リカバリーエラー通知をコントローラ201、ストレージインタフェース202を介して、再生装置300のコントローラ301に送信する(S450)。   On the other hand, if it is determined in S428 that the target is not a recovery target (N in S428), the control unit 220 transmits a recovery error notification to the controller 301 of the playback device 300 via the controller 201 and the storage interface 202 (S450). .

再生装置300のコントローラ301は、ストレージデバイス200から出力されたエラー通知を受信すると(S452)、S396へ移行し、本処理を継続する。   When the controller 301 of the playback device 300 receives the error notification output from the storage device 200 (S452), the controller 301 proceeds to S396 and continues this processing.

なお、図11乃至図14に示す、再生装置300がストレージデバイス200に記録されたライセンスデータを利用する手順は、処理が正常に推移した場合の例である。   Note that the procedure of using the license data recorded on the storage device 200 by the playback apparatus 300 shown in FIGS. 11 to 14 is an example in the case where the process has changed normally.

なお、ライセンスデータの消費の判定における再生時間の測定について、本実施の形態では、復号部304における復号処理までの経過時間を測定するものとしたが、復号部304からコンテンツデコーダ305への復号結果の提供までの経過時間を測定するものとしてもよい。このほか、コンテンツデコーダ305におけるデコード処理までの経過時間、あるいは、コンテンツデコーダ305から出力された再生信号の提供までの経過時間を測定するようにしてもよい。   As for the measurement of the reproduction time in the determination of license data consumption, in this embodiment, the elapsed time until the decryption process in the decryption unit 304 is measured, but the decryption result from the decryption unit 304 to the content decoder 305 It is good also as what measures the elapsed time until provision of. In addition, the elapsed time until the decoding process in the content decoder 305 or the elapsed time until the reproduction signal output from the content decoder 305 is provided may be measured.

また、本実施の形態では、ライセンスデータの”消費でない”とする境界時間Tを、コンテンツ種類、たとえば、音楽や映像など、毎に予め定められているとしたが、利用規則としてライセンスデータLICに含めることもでき、また、これらを併用することもできる。たとえば、境界時間Tが利用規則として設定されていない場合、予め定められた境界時間を用いることができる。   In the present embodiment, the boundary time T for “not consumption” of license data is determined in advance for each content type, for example, music or video, but the license data LIC is used as a usage rule. These can also be included, and these can also be used together. For example, when the boundary time T is not set as a usage rule, a predetermined boundary time can be used.

また、本実施の形態では、ライセンスデータの消費の判定における再生開始後の経過時間の測定では、経過時間計測部329はタイマを含み、タイマを用いて時間を計測し、境界時間T秒の経過によって、消費の判断を行うものとしたが、処理したデータ量(復号または再生)によって再生開始後の経過時間を導出し、ライセンスの消費を判断することもできる。これは、コンテンツデータを符号化した符号化方式の特性から、コンテンツデータの処理データ量から再生時間を予測することが可能であるためである。また、コンテンツが、映像コンテンツである場合には、復号した、あるいは再生した映像データのフレーム数によって経過時間を導出し、ライセンスの消費を判断することもできる。   In the present embodiment, in the measurement of the elapsed time after the start of reproduction in the determination of license data consumption, the elapsed time measurement unit 329 includes a timer, measures the time using the timer, and elapses of the boundary time T seconds. However, it is also possible to determine the consumption of the license by deriving the elapsed time after the start of reproduction based on the processed data amount (decryption or reproduction). This is because the reproduction time can be predicted from the processing data amount of the content data based on the characteristics of the encoding method in which the content data is encoded. Further, when the content is video content, the elapsed time can be derived from the number of frames of the decoded or reproduced video data to determine the license consumption.

さらに、ライセンスデータの消費の判定を再生時間によって行うとしているが、”消費”とするコンテンツデータの境界データ量の設置と、再生したデータ量の計測によって、消費の判定を行うようにしてもよい。   Furthermore, the license data consumption is determined based on the playback time. However, the consumption may be determined by setting the boundary data amount of the content data to be “consumed” and measuring the amount of the reproduced data. .

また、上記では、ストレージデバイス200にライセンスデータを格納する場合、および、暗号化コンテンツデータを復号して再生することを目的に、ライセンスデータをストレージデバイス200から再生装置300に送信する場合について説明したが、ストレージデバイス200から、ストレージデバイスに記録する目的でライセンスデータを送信する場合にも同様な処理を実現できる。利用規則には、利用(再生)のみならす、ライセンスデータのコピーやムーブに関する制御も含まれている。他のストレージデバイスに、ライセンスデータあるいはライセンスデータを用いて復号したコンテンツを記録する場合、コピーやムーブの概念が適用される。この場合、制御情報PCに対する処理(ステップS376、S378、S38)に変えて、ライセンスデータの利用規則としてライセンスデータ内に記載されているコピー回数やムーブ回数などの制御情報に対する判断とその事後処理に置き換えられる。   In the above description, the license data is stored in the storage device 200, and the license data is transmitted from the storage device 200 to the playback device 300 for the purpose of decrypting and playing back the encrypted content data. However, similar processing can be realized when license data is transmitted from the storage device 200 for the purpose of recording in the storage device. The usage rule includes control related to copying or moving of license data that is only used (reproduced). When recording license data or content decrypted using license data in another storage device, the concept of copy or move is applied. In this case, instead of the process for the control information PC (steps S376, S378, S38), the control data such as the number of copies and the number of moves described in the license data as a rule for use of the license data and the post-processing thereof are used. Replaced.

たとえば、制御情報がコピー回数(以下、CCと称す)の場合、制御情報CPによって出力は非判定を行い。ライセンスデータを出力後、事後処理として必要時応じてCCを減算することで実現できる。出力ののく敵と対象となる制御情報がことなるものの、上記の制御情報PCと同様の処理である。リカバリ−処理とは、制御情報CCが減算されている場合、加算して減算以前の値に戻す処理である。   For example, when the control information is the number of copies (hereinafter referred to as CC), the output is not determined by the control information CP. After outputting the license data, it can be realized by subtracting CC as necessary as post processing. The process is the same as the control information PC described above, although the output information and the target control information are different. The recovery process is a process of adding and returning the value before the subtraction when the control information CC is subtracted.

制御情報がムーブ回数(MCと言う。)の場合、制御情報MCによって出力可否判断をした後、出力可能であれば出力するライセンスデータの当該制御情報MCを減算して出力し、ライセンスデータを出力後、事後処理としてストレージデバイス200内に記憶されているライセンスデータを無効化し、ライセンスデータが消去されたのと同等な状態とする。ここで、リカバリ−処理とは、無効化されたライセンスデータを有効な状態に戻す処理である。   If the control information is the number of times of movement (referred to as MC), the control information MC determines whether or not output is possible. If output is possible, the control information MC of the license data to be output is subtracted and output, and the license data is output. Thereafter, the license data stored in the storage device 200 is invalidated as post-processing, and the license data is in a state equivalent to being deleted. Here, the recovery process is a process for returning the invalidated license data to a valid state.

また、再生、コピー、ムーブを目的としてライセンスデータが送信されるとき、リカバリー処理によって復元する対象が異なることを考慮すると、“状態SL”を目的毎に細分化して運用する効率がよい。たとえば、再生目的ではライセンスデータ送信した状態を“状態SP”、コピー目的ではライセンスデータ送信した状態を“状態CP”、ムーブ目的ではライセンスデータ送信した状態を“状態MP”などとして区別できるようにする。   In addition, when license data is transmitted for the purpose of reproduction, copying, and moving, considering that the target to be restored by the recovery process is different, it is efficient to subdivide and operate the “state SL” for each purpose. For example, the state in which license data has been transmitted for reproduction purposes can be identified as “state SP”, the state in which license data has been transmitted for copy purposes can be identified as “state CP”, and the state in which license data has been transmitted for movement purposes can be identified as “state MP”. .

さらに、ストレージデバイス200から、同じ機能を持つ別のストレージデバイスに記録を目的としてライセンスデータを送信する場合には、ライセンスデータを受け取る別のストレージデバイスが図8乃至図10が示されるフローチャートにおけるストレージデバイス200と同じ処理を行うことは明示である。   Further, when the license data is transmitted from the storage device 200 to another storage device having the same function for the purpose of recording, the other storage device that receives the license data is the storage device in the flowcharts shown in FIGS. It is clear that the same processing as 200 is performed.

また、上記では、暗号化ライセンスデータE(Ksx,E(KPpx、LIC))、セッション情報E(Kcy,E(KPdy,Ksx)//KPpx)としたが、二重暗号の暗号順序を制限するものではない。つまり、暗号化ライセンスデータE(Kpx,E(Ksx、LIC))、セッション情報E(KPdy,E(KPcy,Ksx)//KPpx)としてもよい。   In the above description, encryption license data E (Ksx, E (KPpx, LIC)) and session information E (Kcy, E (KPdy, Ksx) // KPpx) are used, but the encryption order of double encryption is limited. It is not a thing. That is, encrypted license data E (Kpx, E (Ksx, LIC)) and session information E (KPdy, E (KPcy, Ksx) // KPpx) may be used.

さらに、上記では、セッション情報では、二重暗号の対象を、Ksxとしているが、二重暗号の対象を限定するものではなく、Kppxであっても、KsxとKPpxの双方であってもよい。この場合、セッション情報はE(KPdy,E(KPcy,KPpx)//KPsx)あるいはE(KPdy,E(KPcy,Ksx//Ppx)となる。いずれの場合にも同様な安全性が提供される。ここではライセンスデータ提供先を“x”、ライセンスデータ提供元を“y”と表記する。   Furthermore, in the above, in the session information, the target of double encryption is Ksx, but the target of double encryption is not limited, and may be Kppx or both Ksx and KPpx. In this case, the session information is E (KPdy, E (KPcy, KPpx) // KPsx) or E (KPdy, E (KPcy, Ksx // Ppx). In either case, similar security is provided. Here, the license data providing destination is expressed as “x”, and the license data providing source is expressed as “y”.


(第2の実施の形態)
図15は、第2の実施の形態に係るコンテンツ配信システムの構成を示す。本実施の形態のコンテンツ配信システムは、第1の実施の形態と同様に、コンテンツを配信する配信サーバ100、コンテンツの提供を受ける端末装置150、端末装置150に提供されたコンテンツが記録されるストレージデバイス200を含み、配信サーバ100および端末装置150は、それぞれ通信装置104、153を介して、ネットワークの一例とするインターネット20により接続される。

(Second Embodiment)
FIG. 15 shows a configuration of a content distribution system according to the second embodiment. As in the first embodiment, the content distribution system according to the present embodiment is a distribution server 100 that distributes content, a terminal device 150 that receives the content, and a storage in which the content provided to the terminal device 150 is recorded. The distribution server 100 and the terminal device 150 including the device 200 are connected by the Internet 20 as an example of a network via the communication devices 104 and 153, respectively.

第1の実施の形態とは、配信サーバ100の暗号器102と暗号エンジン103が、端末装置150に備えられた構成である点が異なる。   The difference from the first embodiment is that the encryption device 102 and the encryption engine 103 of the distribution server 100 are provided in the terminal device 150.

また、配信サーバ100とユーザの端末装置150との間の通信におけるデータの安全性を確保するために、配信サーバ100とユーザの端末装置150間は、SLLあるいは配信事業者が規定する独自のデジタルコンテンツ管理方式にしたがって、安全に保護される。これにより、第1の実施の形態と同様に機能するものである。   In addition, in order to ensure the safety of data in communication between the distribution server 100 and the user terminal device 150, an original digital defined by the SLL or the distribution company is provided between the distribution server 100 and the user terminal device 150. Safely protected according to the content management system. Thereby, it functions similarly to the first embodiment.

以上、本発明に係る実施の形態について説明したが、この実施の形態は例示であり、本発明はこの実施の形態に限定されるものではなく、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。   As mentioned above, although embodiment which concerns on this invention was described, this embodiment is an illustration, this invention is not limited to this embodiment, The combination of each of those component and each processing process is carried out. It will be appreciated by those skilled in the art that various modifications are possible and that such modifications are within the scope of the present invention.

たとえば、上記の実施の形態では、暗号エンジン内において暗号化を行う機能ブロックと復号を行う機能ブロックとを別個に設けたが、これらの構成要素において回路を共有してもよい。これにより、回路規模を抑え、小型化、低消費電力化に寄与することができる。   For example, in the above-described embodiment, the functional block for performing encryption and the functional block for performing decryption are separately provided in the cryptographic engine, but the circuit may be shared by these components. As a result, the circuit scale can be reduced, contributing to downsizing and low power consumption.

また、上記では、ストレージデバイス200は、端末装置150に装着され配信サーバ100からライセンスデータを受け取る形態について説明したが、ライセンスデータを生成する機能を有するレコーダに装着して、ライセンスデータを記録するように構成することも可能である。この場合、レコーダは、ライセンスデータを生成する生成部に加え、暗号エンジン103およびストレジデバイスインタフェース152を備えている。   In the above description, the storage device 200 is mounted on the terminal device 150 and receives license data from the distribution server 100. However, the storage device 200 is mounted on a recorder having a function of generating license data and records license data. It is also possible to configure. In this case, the recorder includes a cryptographic engine 103 and a storage device interface 152 in addition to a generation unit that generates license data.

本発明の実施の形態は、特許請求の範囲に示された技術的思想の範囲内において、適宜種々の変更が可能である。   The embodiments of the present invention can be appropriately modified in various ways within the scope of the technical idea shown in the claims.

第1の実施の形態に係るデータ管理システムの構成を示す図である。It is a figure which shows the structure of the data management system which concerns on 1st Embodiment. 第1の実施の形態に係る配信システムの構成を示す図である。It is a figure which shows the structure of the delivery system which concerns on 1st Embodiment. 第1の実施の形態に係る再生装置の構成を示す図である。It is a figure which shows the structure of the reproducing | regenerating apparatus concerning 1st Embodiment. 第1の実施の形態に係るストレージデバイスの構成を示す図である。It is a figure which shows the structure of the storage device which concerns on 1st Embodiment. 図2に示した暗号エンジンの構成を示す図である。It is a figure which shows the structure of the encryption engine shown in FIG. 図3に示した暗号エンジンの構成を示す図である。It is a figure which shows the structure of the encryption engine shown in FIG. 図4に示した暗号エンジンの構成を示す図である。It is a figure which shows the structure of the encryption engine shown in FIG. ライセンスデータの記録処理を説明する図である。It is a figure explaining the recording process of license data. ライセンスデータの記録処理を説明する図である。It is a figure explaining the recording process of license data. ライセンスデータの記録処理を説明する図である。It is a figure explaining the recording process of license data. ライセンスデータの利用処理を説明する図である。It is a figure explaining the utilization process of license data. ライセンスデータの利用処理を説明する図である。It is a figure explaining the utilization process of license data. ライセンスデータの利用処理を説明する図である。It is a figure explaining the utilization process of license data. ライセンスデータの利用処理を説明する図であるIt is a figure explaining the utilization process of license data 第2の実施の形態に係る配信システムの構成を示す図である。It is a figure which shows the structure of the delivery system which concerns on 2nd Embodiment.

符号の説明Explanation of symbols

100 配信サーバ
150 端末装置
200 ストレージデバイス
300 再生装置
100 distribution server 150 terminal device 200 storage device 300 playback device

Claims (3)

暗号化コンテンツデータを復号するためのコンテンツ鍵を含むコンテンツ利用情報を記録し、外部に前記コンテンツ利用情報を提供するコンテンツ利用情報記憶装置であって、
外部との間でデータの授受を行う制御するインタフェースと、
前記コンテンツ利用情報を格納する記憶部と、
前記インタフェースを介して、第1の対称鍵を、コンテンツ利用情報提供先との間で共有する第1の暗号処理部と、
前記インタフェースを介して、前記第1の対称鍵を用いてコンテンツ利用情報の出力毎にテンポラルに生成される第2の対称鍵を前記コンテンツ利用情報提供先との間で共有し、前記第2の対称鍵を前記コンテンツ利用情報出力後に破棄する第2の暗号処理部と、
前記第2の対称鍵によって前記コンテンツ利用情報を暗号化して、前記インタフェースを介して出力する第3の暗号処理部と、
前記第2の対称鍵と該コンテンツ利用情報の出力に関する進行状態を示す第1の状態情報を含む処理履歴情報を格納するログ記憶部と、
前記コンテンツ利用情報を前記コンテンツ利用情報提供先における処理の進行状態を示す第2の状態情報を含む提供先状態情報とこの提供先状態情報に対する電子署名とを連結したデータを、前記インタフェースを介して受け取り、前記第1の暗号処理部にて共有している第1の対称鍵、および、前記コンテンツ利用情報出力時に前記第2の暗号処理部にて共有し前記ログ記憶部に格納された第2の対称鍵によって、その正当性を検証し、正当な場合、前記記憶部に格納されたこの提供先状態情報の対象となるコンテンツ利用情報の復元を許可するか否か判断する検証部と、
前記記憶部に格納されている前記コンテンツ利用情報の出力を制御する制御部とを備え、
前記制御部は、
前記コンテンツ利用情報を出力する場合、出力するコンテンツ利用情報に含まれるこのコンテンツ利用情報の出力に関する制御情報を解釈し、出力用ライセンス利用情報またはこのライセンス利用情報を第3の暗号処理部に与えると共に、前記記憶部に格納されているこのライセンス利用情報の制御情報の変更あるいはこのコンテンツ利用情報の出力禁止し、
コンテンツ利用情報提供先から前記提供先状態情報を受け取り、かつ、前記検証部において前記対象コンテンツ利用情報の復元が許可された場合、このライセンス利用情報の制御情報を出力前の状態に戻す、あるいはこのコンテンツ利用情報の出力を許可する、
コンテンツ利用情報記憶装置。
A content usage information storage device that records content usage information including a content key for decrypting encrypted content data and provides the content usage information to the outside,
An interface for controlling data exchange with the outside;
A storage unit for storing the content usage information;
A first cryptographic processing unit that shares the first symmetric key with the content usage information provider via the interface;
Via the interface, a second symmetric key that is temporally generated every time content usage information is output using the first symmetric key is shared with the content usage information provider, and the second symmetric key is used. A second cryptographic processing unit for discarding a symmetric key after outputting the content usage information;
A third cryptographic processing unit that encrypts the content usage information with the second symmetric key and outputs the encrypted content usage information via the interface;
A log storage unit for storing processing history information including the second symmetric key and first state information indicating a progress state related to the output of the content usage information;
Via the interface, the content usage information is connected to the provider status information including the second status information indicating the progress of processing at the content usage information provider and the electronic signature for the provider status information via the interface. The first symmetric key received and shared by the first cryptographic processing unit, and the second symmetric key shared by the second cryptographic processing unit and stored in the log storage unit when the content usage information is output A verification unit that verifies whether the content usage information that is the target of the provision destination state information stored in the storage unit is permitted,
A control unit that controls the output of the content usage information stored in the storage unit,
The controller is
When outputting the content usage information, the control information related to the output of the content usage information included in the content usage information to be output is interpreted, and the license usage information for output or the license usage information is provided to the third encryption processing unit. , Changing the control information of the license usage information stored in the storage unit or prohibiting the output of the content usage information,
When the provision destination status information is received from the content usage information provision destination and the restoration of the target content usage information is permitted in the verification unit, the control information of the license usage information is returned to the state before output, or Allow output of content usage information,
Content usage information storage device.
暗号化コンテンツデータを復号するためのコンテンツ鍵を含むコンテンツ利用情報の提供を受けて、暗号化コンテンツデータを復号または再生するコンテンツ利用装置であって、
外部との間でデータの授受を制御するインタフェースと、
前記インタフェースを介して、第1の対称鍵を、コンテンツ利用情報提供元との間で共有する第1の暗号処理部と、
前記インタフェースを介して、前記第1の対称鍵を用いてコンテンツ利用情報を受け取る毎にテンポラルに生成され第2の対称鍵を前記コンテンツ利用情報提供元との間で共有し、前記第2の対称鍵を前記コンテンツ利用情報受け取り後破棄する第2の暗号処理部と、
前記インタフェースを介して受け取った暗号化されたコンテンツ利用情報を、前記第2の対称鍵によって復号しライセンス利用情報を抽出する第3の暗号処理部と、
前記第3の暗号処理部によって抽出された前記コンテンツ利用情報を格納する記憶部と、
前記第2の対称鍵とこのコンテンツ利用情報の受け取りと受け取り後の処理の進行状態を示す状態情報を含む処理履歴情報を格納するログ記憶部と、
前記ログ記憶部に格納された前記状態情報を含む提供先状態情報を生成し、この提供先状態情報に対する前記第1の暗号処理部にて共有している第1の対称鍵および前記コンテンツ利用情報受け取り時に前記第2の暗号処理部にて共有し前記ログ記憶部に格納された第2の対称鍵による電子署名データを演算し、両者を連結した署名付き提供先状態情報を、前記インタフェースを介して出力する署名部とを、
備えることを特徴とするコンテンツ利用装置。
A content utilization device that receives or provides content usage information including a content key for decrypting encrypted content data and decrypts or reproduces encrypted content data,
An interface for controlling the exchange of data with the outside;
A first cryptographic processing unit that shares the first symmetric key with the content usage information provider via the interface;
Each time the content usage information is received using the first symmetric key via the interface, the second symmetric key is temporally generated and shared with the content usage information provider, and the second symmetric key is used. A second cryptographic processing unit for discarding the key after receiving the content usage information;
A third encryption processing unit for decrypting encrypted content usage information received via the interface with the second symmetric key and extracting license usage information;
A storage unit for storing the content usage information extracted by the third cryptographic processing unit;
A log storage unit for storing processing history information including the second symmetric key and status information indicating the progress of processing after receiving and receiving the content usage information;
The first symmetric key and the content usage information that are generated by the first cryptographic processing unit for the provision destination state information generated by the provision destination state information including the state information stored in the log storage unit When receiving, the electronic signature data by the second symmetric key shared by the second cryptographic processing unit and stored in the log storage unit is calculated, and the provided provider status information obtained by connecting the two is obtained via the interface. And the signature part to be output
A content utilization apparatus comprising:
暗号化コンテンツデータを復号するためのコンテンツ鍵を含むコンテンツ利用情報の提供を受けて、暗号化コンテンツデータを復号または再生するコンテンツ利用装置であって、
外部との間でデータの授受を制御するインタフェースと、
前記インタフェースを介して、第1の対称鍵を、コンテンツ利用情報提供元との間で共有する第1の暗号処理部と、
前記インタフェースを介して、前記第1の対称鍵を用いてコンテンツ利用情報を受け取る毎にテンポラルに生成される第2の対称鍵を前記コンテンツ利用情報提供元との間で共有し、前記第2の対称鍵を前記コンテンツ利用情報受け取り後破棄する第2の暗号処理部と、
前記インタフェースを介して受け取った暗号化されたコンテンツ利用情報を、前記第2の対称鍵によって復号しライセンス利用情報を抽出する第3の暗号処理部と、
前記暗号化コンテンツデータを、前記第3の暗号処理部によって抽出された前記コンテンツ利用情報に含まれるコンテンツ鍵によって復号するコンテンツ復号部と、
前記第2の対称鍵と該コンテンツ利用情報の受け取りと受け取り後の処理の進行状態を示す状態情報を含む処理履歴情報を格納するログ記憶部と、
前記ログ記憶部に格納された前記状態情報を含む提供先状態情報を生成し、この提供先状態情報に対する前記第1の暗号処理部にて共有している第1の対称鍵および前記コンテンツ利用情報受け取り時に前記第2の暗号処理部にて共有し前記ログ記憶部に格納された第2の対称鍵による電子署名データを演算し、両者を連結した署名付き提供先状態情報を、前記インタフェースを介して出力する署名部とを、
備えることを特徴とするコンテンツ利用装置。

A content utilization device that receives or provides content usage information including a content key for decrypting encrypted content data and decrypts or reproduces encrypted content data,
An interface for controlling the exchange of data with the outside;
A first cryptographic processing unit that shares the first symmetric key with the content usage information provider via the interface;
A second symmetric key that is temporally generated every time content usage information is received using the first symmetric key via the interface is shared with the content usage information provider, and the second symmetric key A second cryptographic processing unit that discards a symmetric key after receiving the content usage information;
A third encryption processing unit for decrypting encrypted content usage information received via the interface with the second symmetric key and extracting license usage information;
A content decryption unit for decrypting the encrypted content data with a content key included in the content usage information extracted by the third encryption processing unit;
A log storage unit for storing processing history information including the second symmetric key and the status information indicating the progress of processing after receiving the content usage information;
The first symmetric key and the content usage information that are generated by the first cryptographic processing unit for the provision destination state information generated by the provision destination state information including the state information stored in the log storage unit When receiving, the electronic signature data by the second symmetric key shared by the second cryptographic processing unit and stored in the log storage unit is calculated, and the provided provider status information obtained by connecting the two is obtained via the interface. And the signature part to be output
A content utilization apparatus comprising:

JP2004304718A 2004-10-19 2004-10-19 Content use information storage device and content use device Expired - Fee Related JP4671657B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004304718A JP4671657B2 (en) 2004-10-19 2004-10-19 Content use information storage device and content use device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004304718A JP4671657B2 (en) 2004-10-19 2004-10-19 Content use information storage device and content use device

Publications (2)

Publication Number Publication Date
JP2006119755A true JP2006119755A (en) 2006-05-11
JP4671657B2 JP4671657B2 (en) 2011-04-20

Family

ID=36537603

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004304718A Expired - Fee Related JP4671657B2 (en) 2004-10-19 2004-10-19 Content use information storage device and content use device

Country Status (1)

Country Link
JP (1) JP4671657B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007097148A1 (en) * 2006-02-24 2007-08-30 Pioneer Corporation Recording medium reproduction device and reproduction method
JP2008165455A (en) * 2006-12-28 2008-07-17 Hitachi Ltd Storage system with backup function

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002075550A1 (en) * 2001-03-15 2002-09-26 Sanyo Electric Co., Ltd. Data recorder restoring original data allowed to exist only uniquely
JP2006127485A (en) * 2004-09-30 2006-05-18 Sanyo Electric Co Ltd Device and method for reproducing content

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002075550A1 (en) * 2001-03-15 2002-09-26 Sanyo Electric Co., Ltd. Data recorder restoring original data allowed to exist only uniquely
JP2006127485A (en) * 2004-09-30 2006-05-18 Sanyo Electric Co Ltd Device and method for reproducing content

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007097148A1 (en) * 2006-02-24 2007-08-30 Pioneer Corporation Recording medium reproduction device and reproduction method
JPWO2007097148A1 (en) * 2006-02-24 2009-07-09 パイオニア株式会社 Recording medium reproducing apparatus and reproducing method
JP4533954B2 (en) * 2006-02-24 2010-09-01 パイオニア株式会社 Recording medium reproducing apparatus and reproducing method
US7944789B2 (en) 2006-02-24 2011-05-17 Pioneer Corporation Recording medium playback device and method thereof
JP2008165455A (en) * 2006-12-28 2008-07-17 Hitachi Ltd Storage system with backup function

Also Published As

Publication number Publication date
JP4671657B2 (en) 2011-04-20

Similar Documents

Publication Publication Date Title
JP5237375B2 (en) Apparatus and method for backup of copyright objects
US8635453B2 (en) Controller to be incorporated in storage medium device, storage medium device, system for manufacturing storage medium device, and method for manufacturing storage medium device
JP2007304822A (en) Content management method and device
WO2011111370A1 (en) Recording system, reproduction system, key distribution server, recording device, recording medium device, reproduction device, recording method, and reproduction method
US20080219451A1 (en) Method and system for mutual authentication between mobile and host devices
JP2006127485A (en) Device and method for reproducing content
KR100620921B1 (en) Method and apparatus for encrypting data to be secured and inputting/outputting the same
JP2004302701A (en) Data input/output method, and storage device and host device capable of using the method
JP2010267240A (en) Recording device
WO2005067198A1 (en) Information processing device
KR20100057846A (en) System and method for protection of content stored in a storage device
JP2004522252A (en) Apparatus and method for reproducing user data
KR101299807B1 (en) Secure pre-recorded digital medium
JP4663436B2 (en) Content usage information transmitting method, content usage information providing device and content usage information receiving device capable of using the method
JP4663437B2 (en) Content usage information transmitting method, content usage information providing device and content usage information receiving device capable of using the method
JP4161043B2 (en) Content usage information storage device
JP4671657B2 (en) Content use information storage device and content use device
JP4663435B2 (en) Content usage information transmitting method, content usage information providing device and content usage information receiving device capable of using the method
JP4367166B2 (en) DRIVE DEVICE, REPRODUCTION PROCESSING DEVICE, INFORMATION RECORDING MEDIUM, DATA PROCESSING METHOD, AND COMPUTER PROGRAM
JP2008147946A (en) Authentication method, authentication system, and external recording medium
JP2006033764A (en) Contents utilizing information providing apparatus and contents utilizing information appreciating apparatus
JP4606474B2 (en) Content utilization system and content utilization apparatus
JP4667517B2 (en) Content usage device
JP4615055B2 (en) Content usage device
KR20060024652A (en) Storage device for storing encoded multimedia file and method for playing the file

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091110

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100302

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100601

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101202

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101221

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

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

Free format text: PAYMENT UNTIL: 20140128

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees