JP4479698B2 - Content provision system - Google Patents

Content provision system Download PDF

Info

Publication number
JP4479698B2
JP4479698B2 JP2006186585A JP2006186585A JP4479698B2 JP 4479698 B2 JP4479698 B2 JP 4479698B2 JP 2006186585 A JP2006186585 A JP 2006186585A JP 2006186585 A JP2006186585 A JP 2006186585A JP 4479698 B2 JP4479698 B2 JP 4479698B2
Authority
JP
Japan
Prior art keywords
key
content
server
encrypted
data
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.)
Expired - Fee Related
Application number
JP2006186585A
Other languages
Japanese (ja)
Other versions
JP2006333499A (en
Inventor
隆二 石黒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2006186585A priority Critical patent/JP4479698B2/en
Publication of JP2006333499A publication Critical patent/JP2006333499A/en
Application granted granted Critical
Publication of JP4479698B2 publication Critical patent/JP4479698B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は、コンテンツ提供システムに関し、特に、コンテンツの不正な利用を確実に防止できるようにするコンテンツ提供システムに関する。 The present invention relates to a content providing system , and more particularly to a content providing system that can reliably prevent unauthorized use of content .

近年、各種のブロードバンド環境が整備されつつあり、音楽データや動画データなどの各種のコンテンツの配信サービスが本格的に開始され始めている。   In recent years, various broadband environments are being developed, and distribution services for various contents such as music data and video data have begun to be started in earnest.

例えば、「PressPlay(商標)」などの定期購読型(subscription型)の音楽配信サービスが行われており、この音楽配信サービスにおいては、ユーザは、月極の定額の料金を支払うことで、予め設定されている条件の範囲内(例えば、ストリーミング再生の場合1000曲まで再生可能、ダウンロードしてパーソナルコンピュータのハードディスクに保存する場合100曲まで保存可能、CD(Compact Disk)-Rへの書き込み(コピー)する場合20曲までコピー可能などの条件の範囲内)で音楽コンテンツを利用することができる。   For example, a subscription-type music distribution service such as “PressPlay (trademark)” is provided. In this music distribution service, the user is set in advance by paying a monthly fixed fee. (For example, up to 1000 songs can be played in streaming playback, up to 100 songs can be downloaded and saved on the hard disk of a personal computer, and written (copied) to a CD (Compact Disk) -R. In any case, the music content can be used under any condition that allows copying up to 20 songs.

ところで、このような配信サービスによるコンテンツの提供を受けるユーザの権利情報を管理するシステムとして、例えば、特開平2001−352321号公報には、複数のサービスに対応するノードをツリー状に配置してなるシステムにおいて、所定のサービスに対応するノードから、そのサービスに属するそれぞれのリーフのノード(デバイス)までのパス上に存在するノードに設定されている鍵情報(DNK(Device Node Key))を含む有効化キーブロック(EKB(Enabling Key Block))を用いることが開示されている。   By the way, as a system for managing the right information of a user who receives content provided by such a distribution service, for example, in Japanese Patent Laid-Open No. 2001-352321, nodes corresponding to a plurality of services are arranged in a tree shape. Valid including key information (DNK (Device Node Key)) set in the node that exists on the path from the node corresponding to a given service to the node (device) of each leaf belonging to that service in the system It is disclosed to use an enabling key block (EKB).

このシステムでは、あるサービスにおいて配信されるコンテンツにEKBが付加されており、個々のデバイスに対して与えられているDNKを用いて、EKBに含まれる、更新された鍵情報を取得させることにより、サービスを利用できるデバイスを管理している。この場合において、DNKを利用して、EKBから、更新された鍵情報を取得できないデバイスは、その後、サービスの提供を受けることができない。   In this system, EKB is added to the content distributed in a certain service, and by using the DNK given to each device, the updated key information included in EKB is acquired, You manage the devices that can use the service. In this case, a device that cannot obtain updated key information from the EKB using the DNK cannot subsequently receive a service.

そして、これにより、コンテンツを提供するサーバとデバイスとの間で認証処理などをその都度行うことなく、それぞれのデバイスにおけるコンテンツの利用を管理できるようにしたものである。   As a result, the use of content in each device can be managed without performing authentication processing or the like between the server that provides the content and the device each time.

しかしながら、このEKBを利用するシステムにおいては、EKBに記述されている情報が読み取られた場合、その情報により、あるサービスから配信される全てのコンテンツ(同一のEKBが付加されている全てのコンテンツ)が利用できてしまうという課題があった。   However, in the system using this EKB, when the information described in the EKB is read, all the contents distributed from a certain service (all contents with the same EKB added) based on the information There was a problem that could be used.

例えば、図1に示されるようなフォーマットにより、サービスAからデータ1およびデータ2が提供されている場合、データ1のEKBに記述されている内容を取得したデバイスAは、取得した鍵情報を利用することで、データ1に含まれるコンテンツ1だけでなく、データ2に含まれるコンテンツ2をも利用することができる。   For example, when data 1 and data 2 are provided from service A in the format shown in FIG. 1, device A that has acquired the contents described in EKB of data 1 uses the acquired key information. As a result, not only the content 1 included in the data 1 but also the content 2 included in the data 2 can be used.

すなわち、図1に示されるように、データ1は、EKB、EKBに含まれるルートキー(システムのルートのノードに対応するキー)(Kroot)により暗号化されたコンテンツキー1(Kc1)、およびコンテンツキー1により暗号化されたコンテンツ1(Content1)から構成されており、デバイスAは、EKBからルートキーを取得した場合、ルートキーによりコンテンツキー1を復号し、取得したコンテンツキー1によりコンテンツ1を復号することができる。   That is, as shown in FIG. 1, data 1 includes EKB, a content key 1 (Kc1) encrypted by a root key (a key corresponding to a node at the root of the system) included in EKB (Kroot), and a content When the device A acquires the root key from the EKB, the device A decrypts the content key 1 with the root key, and the content key 1 with the acquired content key 1 is composed of the content 1 (Content1) encrypted with the key 1. Can be decrypted.

また、デバイスAは、データ1と同様のフォーマットのデータ2に含まれているコンテンツキー2(Kc2)を、データ1のEKBから取得したルートキーを利用して取得することができ、取得したコンテンツキー2により、コンテンツ2(Content2)を復号することができる。   Further, the device A can acquire the content key 2 (Kc2) included in the data 2 having the same format as the data 1 by using the root key acquired from the EKB of the data 1, and the acquired content With key 2, content 2 (Content2) can be decrypted.

従って、データ1からルートキーが取得されたデバイスにおいては、例えば、他のデバイスから記録媒体に記録されて提供されてきたものであるなど、データ2が何の権利も無しに取得されたものであっても、それが利用できることとなり、このような不正な利用により、コンテンツの正当な流通が妨げられるとともに、コンテンツを提供する事業者の利益が失われてしまう。   Therefore, in the device from which the root key is obtained from the data 1, for example, the data 2 is obtained without any right, such as that provided by being recorded on a recording medium from another device. Even if it exists, it can be used, and such illegal use hinders the proper distribution of the content and loses the profit of the provider providing the content.

本発明はこのような状況に鑑みてなされたものであり、コンテンツが不正に利用されることを確実に防止できるようにするものである。   The present invention has been made in view of such a situation, and makes it possible to reliably prevent unauthorized use of content.

本発明のコンテンツ提供システムは、コンテンツを提供するコンテンツサーバと、前記コンテンツを利用するのに必要な利用権を提供するライセンスサーバと、前記コンテンツサーバと前記ライセンスサーバとの間でネットワークを介して情報を送受信する情報処理装置とからなるコンテンツ提供システムにおいて、前記情報処理装置は、前記ライセンスサーバに対して、前記情報処理装置に対応するデバイスノードキーと前記情報処理装置に固有の個別鍵とを含むサービスデータの送信を要求する要求手段と、前記要求手段による要求に応じて前記ライセンスサーバから送信された前記サービスデータを受信する受信手段と、前記受信手段により受信された前記サービスデータを記憶する記憶手段と、前記コンテンツサーバから、暗号化されたコンテンツデータと暗号化された第1の鍵を受信し、前記ライセンスサーバから、コンテンツの利用が指示されることに応じて取得される、前記コンテンツに対応する暗号化された第2の鍵を含む利用権を受信する受信手段と、前記記憶手段に記憶されている前記サービスデータに含まれる前記デバイスノードキーを用いて、前記暗号化された第1の鍵を復号して抽出し、前記個別鍵を用いて、前記受信された利用権から、前記暗号化された第2の鍵を復号して抽出し、抽出した前記第1の鍵と前記第2の鍵とで所定の演算を行うことで前記暗号化されたコンテンツデータの復号鍵を生成する演算手段と、前記復号鍵を用いて前記暗号化されたコンテンツデータを復号する復号手段と、前記復号手段により復号されたコンテンツデータを再生する再生手段とを備え、前記コンテンツサーバは、前記復号鍵と、前記利用権に含めて前記サービスサーバから前記情報処理装置に送信される前記第2の鍵と、前記第2の鍵とで前記所定の演算を行うことで前記復号鍵を生成することに用いられる前記第1の鍵とを生成する生成手段と、前記生成手段により生成された前記第1の鍵を、前記デバイスノードキーによって復号可能な形で暗号化し、前記コンテンツデータを、前記復号鍵を用いて暗号化する暗号化手段と、前記暗号化手段により暗号化された前記第1の鍵と前記コンテンツデータとを前記情報処理装置に送信し、前記第2の鍵を前記ライセンスサーバに送信する送信手段とを備え、前記ライセンスサーバは、前記コンテンツサーバから送信された前記第2の鍵を受信する受信手段と、前記受信手段により受信された前記第2の鍵を、前記情報処理装置の前記個別鍵に対応する公開鍵を用いて暗号化する暗号化手段と、前記デバイスノードキーと前記情報処理装置の前記個別鍵とを含む前記サービスデータを前記情報処理装置に送信し、前記暗号化手段により暗号化された前記第2の鍵を含む前記利用権を前記情報処理装置に送信する送信手段とを備える。  The content providing system according to the present invention includes a content server that provides content, a license server that provides a right to use the content, and information between the content server and the license server via a network. In the content providing system including the information processing device that transmits and receives the information, the information processing device includes a device node key corresponding to the information processing device and an individual key unique to the information processing device with respect to the license server. Request means for requesting transmission of service data, receiving means for receiving the service data transmitted from the license server in response to a request by the request means, and storage for storing the service data received by the receiving means Means and the content server Receiving the encrypted content data and the encrypted first key, and obtaining an encrypted second key corresponding to the content obtained in response to an instruction to use the content from the license server. Using the receiving means for receiving the usage right including the device node key included in the service data stored in the storage means, and decrypting and extracting the encrypted first key, Decrypting and extracting the encrypted second key from the received usage right using a key, and performing a predetermined calculation with the extracted first key and second key The calculation means for generating the decryption key of the encrypted content data in the above, the decryption means for decrypting the encrypted content data using the decryption key, and the content data decrypted by the decryption means The content server includes the decryption key, the second key transmitted from the service server to the information processing apparatus in the usage right, and the second key. Generating means for generating the first key used for generating the decryption key by performing the predetermined operation, and the first key generated by the generating means by means of the device node key An encryption means for encrypting the content data using a decryption key, the first key encrypted by the encryption means, and the content data Transmitting means for transmitting to the device and transmitting the second key to the license server, wherein the license server receives the second key transmitted from the content server. Means, an encryption means for encrypting the second key received by the receiving means using a public key corresponding to the individual key of the information processing apparatus, the device node key, and the information processing apparatus Transmitting the service data including the individual key to the information processing apparatus and transmitting the usage right including the second key encrypted by the encryption means to the information processing apparatus. Prepare.

本発明のコンテンツ提供システムにおいては、情報処理装置により、ライセンスサーバに対して、前記情報処理装置に対応するデバイスノードキーと前記情報処理装置に固有の個別鍵とを含むサービスデータの送信が要求され、要求に応じて前記ライセンスサーバから送信された前記サービスデータが受信され、受信された前記サービスデータが記憶される。また、コンテンツサーバから、暗号化されたコンテンツデータと暗号化された第1の鍵が受信され、前記ライセンスサーバから、コンテンツの利用が指示されることに応じて取得される、前記コンテンツに対応する暗号化された第2の鍵を含む利用権が受信される。前記サービスデータに含まれる前記デバイスノードキーを用いて、前記暗号化された第1の鍵が復号されて抽出され、前記個別鍵を用いて、前記受信された利用権から、前記暗号化された第2の鍵が復号されて抽出され、抽出された前記第1の鍵と前記第2の鍵とで所定の演算を行うことで前記暗号化されたコンテンツデータの復号鍵が生成される。前記復号鍵を用いて前記暗号化されたコンテンツデータが復号され、復号されたコンテンツデータが再生される。また、前記コンテンツサーバにより、前記復号鍵と、前記利用権に含めて前記サービスサーバから前記情報処理装置に送信される前記第2の鍵と、前記第2の鍵とで前記所定の演算を行うことで前記復号鍵を生成することに用いられる前記第1の鍵とが生成され、生成された前記第1の鍵が、前記デバイスノードキーによって復号可能な形で暗号化され、前記コンテンツデータが、前記復号鍵を用いて暗号化される。また、暗号化された前記第1の鍵と前記コンテンツデータとが前記情報処理装置に送信され、前記第2の鍵が前記ライセンスサーバに送信される。さらに、前記ライセンスサーバにより、前記コンテンツサーバから送信された前記第2の鍵が受信され、受信された前記第2の鍵が、前記情報処理装置の前記個別鍵に対応する公開鍵を用いて暗号化され、前記デバイスノードキーと前記情報処理装置の前記個別鍵とを含む前記サービスデータが前記情報処理装置に送信され、暗号化された前記第2の鍵を含む前記利用権が前記情報処理装置に送信される。  In the content providing system of the present invention, the information processing apparatus requests the license server to transmit service data including a device node key corresponding to the information processing apparatus and an individual key unique to the information processing apparatus. The service data transmitted from the license server in response to the request is received, and the received service data is stored. In addition, the encrypted content data and the encrypted first key are received from the content server, and the content is acquired in response to an instruction to use the content from the license server. A usage right including the encrypted second key is received. Using the device node key included in the service data, the encrypted first key is decrypted and extracted, and from the received usage right, the encrypted key is encrypted using the individual key. A second key is decrypted and extracted, and a decryption key for the encrypted content data is generated by performing a predetermined operation on the extracted first key and second key. The encrypted content data is decrypted using the decryption key, and the decrypted content data is reproduced. Further, the content server performs the predetermined calculation using the decryption key, the second key included in the usage right and transmitted from the service server to the information processing apparatus, and the second key. The first key used for generating the decryption key is generated, the generated first key is encrypted in a form that can be decrypted by the device node key, and the content data is And encrypted using the decryption key. Further, the encrypted first key and the content data are transmitted to the information processing apparatus, and the second key is transmitted to the license server. Further, the license server receives the second key transmitted from the content server, and the received second key is encrypted using a public key corresponding to the individual key of the information processing apparatus. The service data including the device node key and the individual key of the information processing apparatus is transmitted to the information processing apparatus, and the usage right including the encrypted second key is the information processing apparatus. Sent to.

本発明によれば、コンテンツを提供することができる。また、不正なコンテンツの利用を防止することができる。   According to the present invention, content can be provided. Also, unauthorized use of content can be prevented.

図2は、本発明を適用したコンテンツ提供システムの構成を示している。インターネット2には、クライアント1−1,1−2(以下、これらのクライアントを個々に区別する必要がない場合、単にクライアント1と称する)が接続されている。この例においては、クライアントが2台のみ示されているが、インターネット2には、任意の台数のクライアントが接続される。   FIG. 2 shows a configuration of a content providing system to which the present invention is applied. Connected to the Internet 2 are clients 1-1 and 1-2 (hereinafter simply referred to as client 1 when these clients do not need to be individually distinguished). Although only two clients are shown in this example, an arbitrary number of clients are connected to the Internet 2.

また、インターネット2には、クライアント1に対してコンテンツを提供するコンテンツサーバ3、コンテンツサーバ3が提供するコンテンツを利用するのに必要な利用権をクライアント1に対して付与するライセンスサーバ4、およびクライアント1が利用権を受け取った場合に、そのクライアント1に対して課金処理を行う課金サーバ5が接続されている。   The Internet 2 includes a content server 3 that provides content to the client 1, a license server 4 that grants a usage right necessary for using the content provided by the content server 3, and the client When 1 receives a usage right, a charging server 5 is connected to perform charging processing for the client 1.

これらのコンテンツサーバ3、ライセンスサーバ4、および課金サーバ5も、任意の台数だけ、インターネット2に接続される。   An arbitrary number of these content servers 3, license servers 4, and billing servers 5 are also connected to the Internet 2.

図3はクライアント1の構成を表している。   FIG. 3 shows the configuration of the client 1.

図3において、CPU(Central Processing Unit)21は、ROM(Read Only Memory)22に記憶されているプログラム、または記憶部28からRAM(Random Access Memory)23にロードされたプログラムに従って各種の処理を実行する。タイマ20は、計時動作を行い、時刻情報をCPU21に供給する。RAM23にはまた、CPU21が各種の処理を実行する上において必要なデータなども適宜記憶される。   In FIG. 3, a CPU (Central Processing Unit) 21 executes various processes according to a program stored in a ROM (Read Only Memory) 22 or a program loaded from a storage unit 28 to a RAM (Random Access Memory) 23. To do. The timer 20 performs a time measuring operation and supplies time information to the CPU 21. The RAM 23 also appropriately stores data necessary for the CPU 21 to execute various processes.

暗号化復号部24は、コンテンツを暗号化するとともに、既に暗号化されているコンテンツを復号する処理を行う。コーデック部25は、例えば、ATRAC(Adaptive Transform Acoustic Coding)3方式などでコンテンツをエンコードし、入出力インタフェース32を介してドライブ30に接続されている半導体メモリ44に供給し、記録させる。あるいはまた、コーデック部25は、ドライブ30を介して半導体メモリ44より読み出した、エンコードされているデータをデコードする。半導体メモリ44は、例えば、メモリスティック(商標)などにより構成される。   The encryption / decryption unit 24 performs a process of encrypting the content and decrypting the already encrypted content. The codec unit 25 encodes content by, for example, ATRAC (Adaptive Transform Acoustic Coding) 3 method, and supplies the encoded content to the semiconductor memory 44 connected to the drive 30 via the input / output interface 32 for recording. Alternatively, the codec unit 25 decodes the encoded data read from the semiconductor memory 44 via the drive 30. The semiconductor memory 44 is configured by, for example, a Memory Stick (trademark).

CPU21、ROM22、RAM23、暗号化復号部24、およびコーデック部25は、バス31を介して相互に接続されている。このバス31にはまた、入出力インタフェース32も接続されている。   The CPU 21, ROM 22, RAM 23, encryption / decryption unit 24, and codec unit 25 are connected to each other via a bus 31. An input / output interface 32 is also connected to the bus 31.

入出力インタフェース32には、キーボード、マウスなどよりなる入力部26、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部27、ハードディスクなどより構成される記憶部28、モデム、ターミナルアダプタなどより構成される通信部29が接続されている。通信部29は、インターネット2を介しての通信処理を行う。通信部29はまた、他のクライアントとの間で、アナログ信号またはデジタル信号の通信処理を行う。   The input / output interface 32 includes an input unit 26 including a keyboard and a mouse, a display including a CRT (Cathode Ray Tube) and an LCD (Liquid Crystal Display), an output unit 27 including a speaker, a hard disk, and the like. A communication unit 29 including a storage unit 28, a modem, a terminal adapter, and the like is connected. The communication unit 29 performs communication processing via the Internet 2. The communication unit 29 also performs communication processing of analog signals or digital signals with other clients.

入出力インタフェース32にはまた、必要に応じてドライブ30が接続され、磁気ディスク41、光ディスク42、光磁気ディスク43、或いは半導体メモリ44などが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部28にインストールされる。   A drive 30 is connected to the input / output interface 32 as necessary, and a magnetic disk 41, an optical disk 42, a magneto-optical disk 43, a semiconductor memory 44, or the like is appropriately mounted, and a computer program read from these is loaded. Installed in the storage unit 28 as necessary.

なお、図示は省略するが、コンテンツサーバ3、ライセンスサーバ4、課金サーバ5も、図3に示したクライアント1と基本的に同様の構成を有するコンピュータにより構成される。そこで、以下の説明においては、図3の構成は、コンテンツサーバ3、ライセンスサーバ4、課金サーバ5などの構成としても引用される。   Although illustration is omitted, the content server 3, the license server 4, and the billing server 5 are also configured by a computer having basically the same configuration as the client 1 shown in FIG. Therefore, in the following description, the configuration of FIG. 3 is also referred to as the configuration of the content server 3, the license server 4, the billing server 5, and the like.

本発明においては、図4に示されるように、ブロードキャストインクリプション(Broadcast Encryption)方式の原理に基づいて、デバイスとキーが管理される。キーは、階層ツリー構造とされ、最下段のリーフ(leaf)が個々のデバイス固有のキーに対応する。本発明のシステムに用いられる階層ツリー構造鍵管理については特開2001−352321号公報に記載されている。図4の例の場合、番号0から番号15までの16個のデバイスに対応するキーが生成される。   In the present invention, as shown in FIG. 4, devices and keys are managed based on the principle of the broadcast encryption method. The keys have a hierarchical tree structure, and the bottom leaf corresponds to a key unique to each device. Hierarchical tree structure key management used in the system of the present invention is described in Japanese Patent Laid-Open No. 2001-352321. In the case of the example in FIG. 4, keys corresponding to 16 devices from number 0 to number 15 are generated.

各キーは、図中丸印で示されるツリー構造の各ノードに対応して規定される。この例では、最上段のルートノードに対応してルートキーKR(適宜、Krootとも称する)が規定され、2段目のノードに対応してキーK0,K1が規定される。また、3段目のノードに対応してキーK00乃至K11が規定され、第4段目のノードに対応してキーK000乃至キーK111が規定される。そして、最下段のノードとしてのリーフ(デバイスノード)に、キーK0000乃至K1111が、それぞれ対応されている。   Each key is defined corresponding to each node of the tree structure indicated by a circle in the figure. In this example, a root key KR (also referred to as Kroot as appropriate) is defined corresponding to the uppermost root node, and keys K0 and K1 are defined corresponding to the second node. Keys K00 to K11 are defined corresponding to the third level nodes, and keys K000 to K111 are defined corresponding to the fourth level nodes. The keys K0000 to K1111 correspond to the leaves (device nodes) as the lowermost nodes.

階層構造とされているため、例えば、キーK0010とキーK0011の上位のキーは、K001とされ、キーK000とキーK001の上位のキーは、K00とされている。以下、同様に、キーK00とキーK01の上位のキーは、K0とされ、キーK0とキーK1の上位のキーは、KRとされている。   Because of the hierarchical structure, for example, the upper key of the key K0010 and the key K0011 is K001, and the upper key of the key K000 and the key K001 is K00. Similarly, the upper key of the keys K00 and K01 is K0, and the upper key of the keys K0 and K1 is KR.

コンテンツを利用するキーは、最下段のデバイスノード(リーフ)から、最上段のルートノードまでの1つのパスの各ノードに対応するキーで管理される。例えば、番号3のリーフに対応するデバイスにおいて、コンテンツを利用するためのキーは、キーK0011,K001,K00,K0,KRを含むパスの各キーで管理される。   Keys that use content are managed by keys corresponding to the nodes of one path from the lowest device node (leaf) to the highest root node. For example, in the device corresponding to the leaf of number 3, the key for using the content is managed by each key of the path including the keys K0011, K001, K00, K0, and KR.

本発明のシステムにおいては、図5に示されるように、図4の原理に基づいて構成されるキーシステムで、デバイスのキーとコンテンツのキーの管理が行われる。図5の例では、8+24+32段のノードがツリー構造とされ、ルートノードから下位の8段までの各ノードにカテゴリが対応される。ここにおけるカテゴリとは、例えばメモリスティックなどの半導体メモリを使用する機器のカテゴリ、或いは、デジタル放送を受信する機器のカテゴリといったカテゴリを意味する。そして、このカテゴリノードのうちの1つのノードに、利用権を管理するシステムとして本システム(適宜、Tシステムと称する)が対応する。   In the system of the present invention, as shown in FIG. 5, a key system configured based on the principle of FIG. 4 manages device keys and content keys. In the example of FIG. 5, nodes of 8 + 24 + 32 levels have a tree structure, and categories correspond to the nodes from the root node to the lower 8 levels. The category here means a category such as a category of a device that uses a semiconductor memory such as a memory stick or a category of a device that receives a digital broadcast. This system (appropriately referred to as the T system) corresponds to one of the category nodes as a system for managing the usage rights.

すなわち、Tシステムのノードよりさらに下の階層の24段のノードに対応するキーにより、サービスプロバイダ、あるいはサービスプロバイダが提供するサービスが対応される。従って、図5の例においては、224(約16メガ)のサービスプロバイダ、あるいはサービスを規定することができる。また、最下段の32段の階層により、232(約4ギガ)のユーザ(クライアント1)を規定することができる。最下段の32段のノードからTシステムのノードまでのパス上の各ノードに対応するキーが、DNK(Device Node Key)を構成し、最下段のリーフに対応するIDがリーフIDとされる。 That is, a service provider or a service provided by a service provider is associated with a key corresponding to a node of 24 levels in a lower hierarchy than the node of the T system. Therefore, in the example of FIG. 5, 2 24 (about 16 mega) service providers or services can be defined. Further, 2 32 (about 4 Giga) users (client 1) can be defined by the lowest 32 levels. The key corresponding to each node on the path from the lowest 32 nodes to the T system node constitutes a DNK (Device Node Key), and the ID corresponding to the lowest leaf is the leaf ID.

コンテンツを暗号化したコンテンツキーは更新されたルートキーKR'によって暗号化され、上位の階層の更新ノードキーは、その直近の下位の階層の更新ノードキーを用いて暗号化され、EKB(Enabling Key Block:有効化キーブロック)(図7を参照して後述する)内に配置される。   The content key obtained by encrypting the content is encrypted by the updated root key KR ′, and the update node key of the upper hierarchy is encrypted using the update node key of the immediately lower hierarchy, and EKB (Enabling Key Block: (Activation key block) (described later with reference to FIG. 7).

EKBにおける末端から1つ上の段の更新ノードキーはEKBの末端のノードキーあるいはリーフキーによって暗号化され、EKB内に配置される。クライアント1は、サービスデータに記述されているDNKのいずれかのキーを用いて、コンテンツとともに配布されるEKBに記述されている直近の上位の階層の更新ノードキーを復号し、復号して得たノードキーを用いて、EKBに記述されている、さらにその上の階層の更新ノードキーを復号する。同様の処理を順次行うことで、クライアント1は、更新ルートキーKR'を得ることができる。サービスデータは、クライアント1についての情報を登録したときにライセンスサーバ4から供給されるものであり、このサービスデータと、後述する、特定のコンテンツの利用を許可する情報である利用権の組み合わせをライセンスと呼ぶ。   The update node key one level above the end in the EKB is encrypted by the node key or leaf key at the end of the EKB, and placed in the EKB. The client 1 uses the DNK key described in the service data to decrypt the update node key of the latest higher hierarchy described in the EKB distributed with the content, and the node key obtained by decoding Is used to decrypt the update node key of the hierarchy further described in the EKB. By sequentially performing the same processing, the client 1 can obtain the updated root key KR ′. The service data is supplied from the license server 4 when information about the client 1 is registered, and a license for a combination of the service data and a usage right that is information that permits the use of specific content, which will be described later, is licensed. Call it.

図6は、階層ツリー構造のカテゴリの分類の具体的な例を示す図である。   FIG. 6 is a diagram illustrating a specific example of classification of categories in a hierarchical tree structure.

図6において、階層ツリー構造の最上段には、ルートキーKR2301が設定され、以下の中間段にはノードキー2302が設定され、最下段には、リーフキー2303が設定される。各デバイスは、個々のリーフキーと、リーフキーからルートキーに至る一連のノードキー、ルートキーからなるデバイスノードキー(DNK)を保有する。   In FIG. 6, a root key KR2301 is set at the top level of the hierarchical tree structure, a node key 2302 is set at the intermediate level below, and a leaf key 2303 is set at the bottom level. Each device has an individual leaf key, a series of node keys from the leaf key to the root key, and a device node key (DNK) consisting of the root key.

最上段から第M段目(図5の例では、M=8)の所定のノードがカテゴリノード2304として設定される。すなわち、第M段目のノードの各々が特定カテゴリのデバイス設定ノードとされる。第M段の1つのノードを頂点としてM+1段以下のノード、リーフは、そのカテゴリに含まれるデバイスに関するノードおよびリーフとされる。   A predetermined node from the top level to the M-th level (M = 8 in the example of FIG. 5) is set as the category node 2304. That is, each of the M-th level nodes is a device setting node of a specific category. Nodes and leaves of the M + 1th stage and below with one node of the Mth stage as a vertex are nodes and leaves related to devices included in the category.

例えば、図6の第M段目の1つのノード2305にはカテゴリ[メモリスティック(商標)]が設定され、このノード以下に連なるノード、リーフはメモリステッイクを使用した様々なデバイスを含むカテゴリ専用のノードまたはリーフとして設定される。すなわち、ノード2305以下が、メモリスティックのカテゴリに定義されるデバイスの関連ノード、およびリーフの集合として定義される。   For example, a category [Memory Stick (trademark)] is set in one node 2305 in the M-th row in FIG. 6, and nodes and leaves connected to this node are dedicated to the category including various devices using memory sticks. Set as a node or leaf. That is, nodes 2305 and below are defined as a set of related nodes and leaves of devices defined in the memory stick category.

M段から数段分下位の段をサブカテゴリノード2306として設定することができる。図6の例では、カテゴリ[メモリスティック]ノード2305の2段下のノードに、メモリスティックを使用したデバイスのカテゴリに含まれるサブカテゴリノードとして、[再生専用器]のノード2306が設定されている。また、サブカテゴリノードである再生専用器のノード2306以下に、再生専用器のカテゴリに含まれる音楽再生機能付き電話のノード2307が設定され、さらにその下位に、音楽再生機能付き電話のカテゴリに含まれる[PHS]ノード2308と、[携帯電話]ノード2309が設定されている。   A stage that is several stages lower than the M stage can be set as the subcategory node 2306. In the example of FIG. 6, a node 2306 of “reproduction-only device” is set as a subcategory node included in the category of the device using the memory stick in a node two stages below the category [memory stick] node 2305. In addition, the node 2307 of the telephone with music playback function included in the category of the playback-only device is set below the node 2306 of the playback-only device that is a subcategory node, and further below that is included in the category of the telephone with music playback function. [PHS] node 2308 and [mobile phone] node 2309 are set.

カテゴリ、サブカテゴリは、デバイスの種類のみならず、例えば、あるメーカー、コンテンツプロバイダ、決済機関等が独自に管理するノード、すなわち処理単位、管轄単位、或いは提供サービス単位等、任意の単位(これらを総称して以下、エンティティと呼ぶ)で設定することが可能である。   Categories and subcategories are not only the types of devices, but also arbitrary units such as nodes managed uniquely by a certain manufacturer, content provider, settlement organization, etc., that is, processing units, jurisdiction units, service units provided, etc. And hereinafter referred to as an entity).

例えば、1つのカテゴリノードをゲーム機器メーカーの販売するゲーム機器XYZ専用の頂点ノードとして設定することにより、メーカーの販売するゲーム機器XYZに、その頂点ノード以下の下段のノードキー、リーフキーを格納して販売することができ、その後、その頂点ノードキー以下のノードキー、リーフキーによって構成されるEKBを生成して配信することで、暗号化コンテンツの配信処理、各種キーの配信処理、更新処理等を、頂点ノード以下のデバイス(ゲーム機器XYZ)に対してのみ行うことができる。   For example, by setting one category node as a vertex node dedicated to the game device XYZ sold by the game device manufacturer, the game device XYZ sold by the manufacturer stores the lower node key and leaf key below the vertex node for sale. After that, by generating and distributing EKB composed of node keys and leaf keys below that vertex node key, encrypted content distribution processing, various key distribution processing, update processing, etc. This can be done only for other devices (game machine XYZ).

すなわち、頂点ノードに属さない、他のカテゴリのノードに属するデバイスには全く影響を及ぼすことなく、キーの更新等を実行することができる。   That is, the key update or the like can be executed without affecting the devices belonging to nodes of other categories that do not belong to the vertex node.

また、ある時点tにおいて、デバイス3の所有する鍵K0011,K001,K00,K0,KRが攻撃者(ハッカー)により解析されて露呈したことが発覚した場合、それ以降、システム(デバイス0,1,2,3のグループ)で送受信されるデータを守るために、デバイス3をシステムから切り離す必要がある。そのためには、ノードキーK001,K00,K0,KRを、それぞれ新たな鍵K(t)001,K(t)00,K(t)0,K(t)Rに更新し、デバイス0,1,2にその更新キーを伝える必要がある。ここで、K(t)aaaは、鍵Kaaaの世代(Generation)tの更新キーであることを示す。   Further, at a certain time t, when it is discovered that the keys K0011, K001, K00, K0, KR owned by the device 3 are analyzed and exposed by an attacker (hacker), the system (devices 0, 1, In order to protect the data transmitted and received in (a few groups), it is necessary to disconnect the device 3 from the system. For this purpose, the node keys K001, K00, K0, KR are updated to new keys K (t) 001, K (t) 00, K (t) 0, K (t) R, respectively, and devices 0, 1, 2 must be notified of the update key. Here, K (t) aaa indicates an update key of generation t of key Kaaa.

更新キーの配布処理ついて説明する。キーの更新は、例えば、図7に示されるEKBによって構成されるテーブルを、ネットワークを介して、あるいは所定の記録媒体に格納してデバイス0,1,2に供給することによって実行される。なお、EKBは、図4に示されるようなツリー構造を構成する各リーフ(最下段のノード)に対応するデバイスに、新たに更新されたキーを配布するための暗号化キーによって構成される。   The update key distribution process will be described. The key update is executed by, for example, storing the table configured by EKB shown in FIG. 7 via the network or storing it in a predetermined recording medium and supplying it to the devices 0, 1, and 2. The EKB is composed of an encryption key for distributing a newly updated key to devices corresponding to the leaves (bottom node) constituting the tree structure as shown in FIG.

図7に示されるEKBは、ノードキーの更新の必要なデバイスのみが更新可能なデータ構成を持つブロックデータとして構成される。図7の例は、図4に示されるツリー構造中のデバイス0,1,2において、世代tの更新ノードキーを配布することを目的として形成されたブロックデータである。   The EKB shown in FIG. 7 is configured as block data having a data configuration that can be updated only by a device that requires updating of the node key. The example of FIG. 7 is block data formed for the purpose of distributing generation t update node keys in the devices 0, 1, and 2 in the tree structure shown in FIG.

図4から明らかなように、デバイス0,1に対しては、更新ノードキーとしてK(t)00,K(t)0,K(t)Rを提供することが必要であり、デバイス2に対しては、更新ノードキーとしてK(t)001,K(t)00,K(t)0,K(t)Rを提供することが必要である。   As is apparent from FIG. 4, it is necessary to provide K (t) 00, K (t) 0, and K (t) R as update node keys for the devices 0 and 1, and for the device 2 Therefore, it is necessary to provide K (t) 001, K (t) 00, K (t) 0, and K (t) R as update node keys.

図7のEKBに示されるように、EKBには複数の暗号化キーが含まれ、例えば、図7の最下段の暗号化キーは、Enc(K0010,K(t)001)である。これは、デバイス2の持つリーフキーK0010によって暗号化された更新ノードキーK(t)001であり、デバイス2は、自分自身が有するリーフキーK0010によって、暗号化キーを復号し、更新ノードキーK(t)001を取得できる。   As shown in EKB in FIG. 7, the EKB includes a plurality of encryption keys. For example, the lowest encryption key in FIG. 7 is Enc (K0010, K (t) 001). This is an update node key K (t) 001 encrypted with the leaf key K0010 of the device 2, and the device 2 decrypts the encryption key with the leaf key K0010 of the device 2 and updates the update node key K (t) 001. Can be obtained.

また、デバイス2は、復号により得た更新ノードキーK(t)001を用いて、図7の下から2段目の暗号化キーEnc(K(t)001,K(t)00)を復号することができ、更新ノードキーK(t)00を取得することができる。   Further, the device 2 decrypts the encryption key Enc (K (t) 001, K (t) 00) in the second stage from the bottom of FIG. 7 using the updated node key K (t) 001 obtained by decryption. The update node key K (t) 00 can be acquired.

デバイス2は、同様に、図7の上から2段目の暗号化キーEnc(K(t)00,K(t)0)を復号することで、更新ノードキーK(t)0を取得でき、これを用いて、図7の上から1段目の暗号化キーEnc(K(t)0,K(t)R)を復号することで、更新ルートキーK(t)Rを取得できる。   Similarly, the device 2 can obtain the updated node key K (t) 0 by decrypting the encryption key Enc (K (t) 00, K (t) 0) in the second row from the top in FIG. By using this, the update root key K (t) R can be acquired by decrypting the encryption key Enc (K (t) 0, K (t) R) in the first stage from the top in FIG.

一方、ノードキーK000は、更新する対象のキーに含まれておらず、ノード0,1が更新ノードキーとして必要なのは、K(t)00,K(t)0,K(t)Rである。   On the other hand, the node key K000 is not included in the key to be updated, and the nodes 0 and 1 are K (t) 00, K (t) 0, and K (t) R that are required as the update node keys.

ノード0,1は、デバイスキーK0000,K0001を用いて、図7の上から3段目の暗号化キーEnc(K000,K(t)00)を復号することにより更新ノードキーK(t)00を取得し、同様に、順次、図7の上から2段目の暗号化キーEnc(K(t)00,K(t)0)を復号することで、更新ノードキーK(t)0を取得し、さらに、図7の上から1段目の暗号化キーEnc(K(t)0,K(t)R)を復号することで、更新ルートキーK(t)Rを取得する。このようにして、デバイス0,1,2は、更新したキーK(t)Rを得ることができる。   The nodes 0 and 1 use the device keys K0000 and K0001 to decrypt the encryption key Enc (K000, K (t) 00) in the third row from the top of FIG. 7 to obtain the updated node key K (t) 00. Similarly, the update node key K (t) 0 is obtained by sequentially decrypting the encryption key Enc (K (t) 00, K (t) 0) in the second row from the top in FIG. Further, the update root key K (t) R is obtained by decrypting the encryption key Enc (K (t) 0, K (t) R) in the first stage from the top in FIG. In this way, the devices 0, 1, and 2 can obtain the updated key K (t) R.

なお、図7のインデックスは、図の右側に示される暗号化キーを復号するための復号キーとして使用するノードキー、リーフキーの絶対番地を示す。   7 indicates the absolute addresses of node keys and leaf keys used as decryption keys for decrypting the encryption keys shown on the right side of the figure.

図4に示されるツリー構造の上位段のノードキーK(t)0,K(t)Rの更新が不要であり、ノードキーK00のみの更新処理が必要である場合には、図8のEKBを用いることで、更新ノードキーK(t)00をデバイス0,1,2に配布することができる。   When the update of the node keys K (t) 0 and K (t) R in the upper level of the tree structure shown in FIG. 4 is unnecessary and only the node key K00 needs to be updated, the EKB of FIG. 8 is used. Thus, the updated node key K (t) 00 can be distributed to the devices 0, 1, and 2.

図8に示されるEKBは、例えば、特定のグループにおいて共有される新たなコンテンツキーを配布する場合に利用可能である。   The EKB shown in FIG. 8 can be used when, for example, a new content key shared in a specific group is distributed.

例えば、図4の一点鎖線で示されるグループ内のデバイス0,1,2,3が、ある記録媒体を用いており、それらのデバイスに対して新たな共通のコンテンツキーK(t)conを設定することが必要であるとする。このとき、デバイス0,1,2,3の共通のノードキーK00を更新したK(t)00により、新たな共通の更新コンテンツキーK(t)conが暗号化されたデータEnc(K(t)00,K(t)con)が、図8に示されるEKBとともに配布される。この配布により、デバイス4など、その他のグループの機器が復号することができないデータとしての配布が可能となる。   For example, devices 0, 1, 2, and 3 in the group indicated by the one-dot chain line in FIG. 4 use a recording medium, and a new common content key K (t) con is set for these devices. Suppose that it is necessary to do. At this time, data Enc (K (t) in which a new common updated content key K (t) con is encrypted by K (t) 00 that updates the common node key K00 of the devices 0, 1, 2, and 3 00, K (t) con) is distributed together with the EKB shown in FIG. This distribution enables distribution as data that cannot be decrypted by other groups of devices such as the device 4.

すなわち、デバイス0,1,2は、EKBを処理して得たキーK(t)00を用いて暗号データを復号することで、t時点におけるコンテンツキーK(t)conを得ることができる。   That is, the devices 0, 1, and 2 can obtain the content key K (t) con at time t by decrypting the encrypted data using the key K (t) 00 obtained by processing the EKB.

図9は、t時点でのコンテンツキーK(t)conを得る処理の例として、K(t)00により新たな共通のコンテンツキーK(t)conが暗号化されたデータEnc(K(t)00,K(t)con)と、図8に示されるEKBが、所定の記録媒体を介して提供されたデバイス0の処理を模式的に示す図である。すなわち、図9の例は、EKBによる暗号化メッセージデータをコンテンツキーK(t)conとした例である。   FIG. 9 shows, as an example of processing for obtaining a content key K (t) con at time t, data Enc (K (t (K)) in which a new common content key K (t) con is encrypted by K (t) 00. ) 00, K (t) con) and EKB shown in FIG. 8 are diagrams schematically showing processing of the device 0 provided via a predetermined recording medium. That is, the example of FIG. 9 is an example in which the encrypted message data by EKB is used as the content key K (t) con.

図9に示されるように、デバイス0は、記録媒体に格納されている世代t時点のEKBと、自分自身に予め用意されているノードキーK000を用いて、上述したようなEKB処理(鍵を順次解く処理)により、ノードキーK(t)00を生成する。また、デバイス0は、復号した更新ノードキーK(t)00を用いて、更新コンテンツキーK(t)conを復号し、それを後に使用するために、自分だけが有するリーフキーK0000で、更新コンテンツキーK(t)conを暗号化して格納する。   As shown in FIG. 9, the device 0 uses the EKB at the generation t stored in the recording medium and the node key K000 prepared in advance for itself as described above for the EKB processing (sequentially the keys). The node key K (t) 00 is generated by the solving process. Further, the device 0 decrypts the update content key K (t) con using the decrypted update node key K (t) 00, and uses the update content key with the leaf key K0000 that only the device 0 has to use it later. K (t) con is encrypted and stored.

図10は、EKBのフォーマットの例を示す図であり、このような各種の情報からなるEKBが、コンテンツデータのヘッダに含まれる。   FIG. 10 is a diagram showing an example of the EKB format, and the EKB including such various information is included in the header of the content data.

バージョン61は、EKBのバージョンを示す識別子である。このバージョン61は、最新のEKBを識別する機能と、コンテンツとの対応関係を示す機能を有する。デプス62は、EKBの配布先のデバイスに対する階層ツリーの階層数を示す。データポインタ63は、EKB中のデータ部66の位置を示すポインタであり、タグポインタ64および署名ポインタ65は、タグ部67および署名68の位置をそれぞれ示すポインタである。   Version 61 is an identifier indicating the version of EKB. This version 61 has a function for identifying the latest EKB and a function for indicating a correspondence relationship with the content. The depth 62 indicates the number of hierarchies of the hierarchical tree for the device to which the EKB is distributed. The data pointer 63 is a pointer indicating the position of the data part 66 in the EKB, and the tag pointer 64 and the signature pointer 65 are pointers indicating the positions of the tag part 67 and the signature 68, respectively.

データ部66には、例えば、更新するノードキーが暗号化されて得られたデータが格納される。例えば、図9に示されるような、更新されたノードキーに関する各暗号化キー等がデータ部66に格納される。   The data unit 66 stores, for example, data obtained by encrypting the node key to be updated. For example, each encryption key related to the updated node key as shown in FIG.

タグ部67は、データ部66に格納された、暗号化されたノードキー、リーフキーの位置関係を示すタグである。このタグの付与ルールを、図11を参照して説明する。   The tag unit 67 is a tag indicating the positional relationship between the encrypted node key and leaf key stored in the data unit 66. The tag assignment rule will be described with reference to FIG.

図11の例においては、送付されるデータは、図11Bに示されるように、図7の暗号化キーとされている。なお、暗号化キーに含まれるトップノードのアドレスをトップノードアドレスとする。   In the example of FIG. 11, the sent data is the encryption key of FIG. 7, as shown in FIG. 11B. The top node address included in the encryption key is the top node address.

この例においては、ルートキーの更新キーK(t)Rが含まれているため、トップノードアドレスはKRとなる。このとき、例えば、最上段のデータEnc(K(t)0,K(t)R)は、図11Aに示す階層ツリーに示す位置P0に対応する。次の段のデータは、Enc(K(t)00,K(t)0)であり、ツリー上では前のデータEnc(K(t)0,K(t)R)の左下の位置P00に対応する。   In this example, since the root key update key K (t) R is included, the top node address is KR. At this time, for example, the uppermost data Enc (K (t) 0, K (t) R) corresponds to the position P0 shown in the hierarchical tree shown in FIG. 11A. The data of the next stage is Enc (K (t) 00, K (t) 0), and on the tree, at the lower left position P00 of the previous data Enc (K (t) 0, K (t) R). Correspond.

すなわち、ツリー構造の所定の位置から見て、その下にデータがある場合には、タグが0に設定され、データがない場合には、タグが1に設定される。タグは{左(L)タグ,右(R)タグ}として設定される。   That is, when there is data below the predetermined position in the tree structure, the tag is set to 0, and when there is no data, the tag is set to 1. The tags are set as {left (L) tag, right (R) tag}.

図11Bの最上段のデータEnc(K(t)0,K(t)R)に対応する位置P0の左下の位置P00にはデータがあるため、Lタグ=0となり、位置P0の右下にはデータがないため、Rタグ=1となる。以下、すべてのデータにタグが設定され、図11Cに示すデータ列、およびタグ列が構成される。   Since there is data at the position P00 at the lower left of the position P0 corresponding to the uppermost data Enc (K (t) 0, K (t) R) in FIG. 11B, L tag = 0, and at the lower right of the position P0. Since there is no data, R tag = 1. Hereinafter, tags are set for all data, and a data string and a tag string shown in FIG. 11C are configured.

タグは、対応するデータEnc(Kxxx,Kyyy)が、ツリー構造のどこに位置しているのかを示すために設定される。データ部66に格納されるキーデータEnc(Kxxx,Kyyy)・・・は、単純に暗号化されたキーの羅列データに過ぎないが、上述したタグによって、データとして格納された暗号化キーのツリー上の位置が判別可能となる。タグを用いずに、図7または図8に示されるように、暗号化データに対応させたノード・インデックスを用いて、例えば、
0:Enc(K(t)0,K(t)R)
00:Enc(K(t)00,K(t)0)
000:Enc(K((t)000,K(t)00)
・・・
のようなデータ構成とすることも可能であるが、このようなインデックスを用いた構成とした場合、そのデータ量が増大し、ネットワークを介する配信等においては好ましくない。これに対し、以上のようなタグを、キーの位置を示す索引データとして用いることにより、より少ないデータ量で、キーの位置の判別が可能となる。
The tag is set to indicate where in the tree structure the corresponding data Enc (Kxxx, Kyyy) is located. The key data Enc (Kxxx, Kyyy)... Stored in the data section 66 is merely a list of encrypted keys, but the tree of encryption keys stored as data by the above-described tags. The upper position can be determined. Without using a tag, as shown in FIG. 7 or FIG. 8, using a node index corresponding to encrypted data, for example,
0: Enc (K (t) 0, K (t) R)
00: Enc (K (t) 00, K (t) 0)
000: Enc (K ((t) 000, K (t) 00)
...
However, when such a configuration using an index is used, the amount of data increases, which is not preferable in distribution via a network. On the other hand, by using the tag as described above as index data indicating the key position, the key position can be determined with a smaller amount of data.

図10の説明に戻り、署名(Signature)68は、EKBを発行した、例えば、鍵管理センタ(ライセンスサーバ4)、コンテンツロバイダ(コンテンツサーバ3)、決済機関(課金サーバ5)等が実行する電子署名である。EKBを受領したデバイスは、EKBに含まれる署名を検証することにより、取得したEKBが、正当な発行者が発行したEKBであるか否かを判定する。   Returning to the description of FIG. 10, the signature 68 is an electronic that is issued by the key management center (license server 4), content provider (content server 3), settlement organization (billing server 5), etc. that issued the EKB. It is a signature. The device that has received the EKB verifies the signature included in the EKB, thereby determining whether or not the acquired EKB is an EKB issued by a valid issuer.

図12は、以上のような鍵管理システムにおいて、コンテンツを復号するためのコンテンツ鍵Kcがクライアント1により取得されるまでの処理を模式的に示す図である。   FIG. 12 is a diagram schematically showing processing until the content key Kc for decrypting content is acquired by the client 1 in the key management system as described above.

図12の左端に示されるDNKは、登録時に生成されるサービスデータに含まれて、ライセンスサーバ4からクライアント1に提供される。また、後述するように、サービスデータには、クライアント1に固有の個別鍵Kpriが含まれており、その鍵情報も提供される(図12の右端)。   The DNK shown at the left end of FIG. 12 is included in the service data generated at the time of registration and is provided from the license server 4 to the client 1. As will be described later, the service data includes an individual key Kpri unique to the client 1, and the key information is also provided (the right end in FIG. 12).

クライアント1は、あるコンテンツと、そのコンテンツを利用するための条件等が記述された利用権を取得し、ユーザの指示に応じてコンテンツを利用するとき、始めに、サービスデータにより取得されたDNKを用いて、コンテンツのEKBに含まれるEKBキーKekbを取得する。また、クライアント1は、サービスデータにより取得された個別鍵Kpriを用いて、EKBキーKekbに対応する、利用権に含まれるサブキーKsubを取得する。なお、図12において、EKB(Kekb)は、EKBキーKekbが、EKBに含まれるルートキーKrootにより暗号化されていることを表している。   When the client 1 obtains a usage right describing a certain content and conditions for using the content, and uses the content according to the user's instruction, first, the client 1 obtains the DNK obtained from the service data. To obtain the EKB key Kekb included in the EKB of the content. Further, the client 1 uses the individual key Kpri acquired from the service data to acquire the subkey Ksub included in the usage right corresponding to the EKB key Kekb. In FIG. 12, EKB (Kekb) represents that the EKB key Kekb is encrypted by the root key Kroot included in the EKB.

クライアント1は、EKBキーKekbとサブキーKsubを取得したとき、それらの鍵情報に基づいて、コンテンツを復号するためのコンテンツキーKcを排他的論理和演算により生成し、生成したコンテンツキーKcを利用して、コンテンツ(コンテンツデータ)を復号する。   When the client 1 acquires the EKB key Kekb and the subkey Ksub, the client 1 generates a content key Kc for decrypting the content based on the key information by an exclusive OR operation, and uses the generated content key Kc. The content (content data) is decrypted.

このように、EKBに含まれるEKBキーKekbと、利用権に含まれるサブキーKsubに基づいて生成されたコンテンツキーKcにより、コンテンツを利用できるようにすることにより(鍵情報を分割してクライアント1に提供することにより)、仮に、EKBの内容が読み取られた場合であっても、そこに記述されている鍵情報のみではコンテンツを利用できないこととなる。すなわち、コンテンツを利用するためには、EKB(コンテンツ)、コンテンツを利用するための利用権、およびサービスデータが必要となる。   In this way, by using the content key Kc generated based on the EKB key Kekb included in the EKB and the subkey Ksub included in the usage right, the content can be used (the key information is divided and the client 1 is divided). Even if the content of the EKB is read, the content cannot be used only with the key information described therein. That is, in order to use the content, EKB (content), a usage right to use the content, and service data are required.

以下、分割されて提供された鍵情報に基づいてコンテンツを利用するまでの、クライアント1、コンテンツサーバ3、およびライセンスサーバ4の処理について、フローチャートを参照して説明する。   Hereinafter, processing of the client 1, the content server 3, and the license server 4 until the content is used based on the divided and provided key information will be described with reference to flowcharts.

始めに、図13のフローチャートを参照して、サービスデータを取得するクライアント1の処理について説明する。   First, the processing of the client 1 that acquires service data will be described with reference to the flowchart of FIG.

入力部26が操作され、ライセンスサーバ4に対するアクセスがユーザにより指示されたとき、クライアント1のCPU21は、ステップS1において、通信部29を制御し、インターネット2を介して、ライセンスサーバ4にアクセスする。ステップS2において、入力部26が操作され、提供を受けるサービスがユーザにより指定されたとき、CPU21は、この指定情報を受け取り、ライセンスサーバ4に対して、指定されたサービスを利用するためのサービスデータを要求する。   When the input unit 26 is operated and access to the license server 4 is instructed by the user, the CPU 21 of the client 1 controls the communication unit 29 and accesses the license server 4 via the Internet 2 in step S1. In step S2, when the input unit 26 is operated and the service to be provided is designated by the user, the CPU 21 receives this designation information, and the service data for using the designated service to the license server 4 Request.

図15のフローチャートを参照して後述するように、この通知を受けたライセンスサーバ4は、サービスデータを送信してくるため、CPU21は、ステップS3において、ライセンスサーバ4から送信されてきたサービスデータを受信し、ステップS4に進み、ハードディスクなどにより構成される記憶部28にサービスデータを記憶させる。   As will be described later with reference to the flowchart of FIG. 15, since the license server 4 that has received this notification transmits service data, the CPU 21 receives the service data transmitted from the license server 4 in step S3. In step S4, the service data is stored in the storage unit 28 including a hard disk.

図14は、クライアント1に提供されるサービスデータの例を示す図である。   FIG. 14 is a diagram illustrating an example of service data provided to the client 1.

図14に示されるように、サービスデータには、クライアント1を識別するリーフID、EKBに記述されている鍵情報を復号するためのDNK、クライアント1に対して個別に与えられる個別鍵Kpri、個別鍵Kpriに対応する公開鍵Kpubが含まれている。また、サービスデータには、ライセンスサーバ4が有する個別鍵に対応する、ライセンスサーバ4の公開鍵、およびサービスデータの証明書が含まれている。   As shown in FIG. 14, the service data includes a leaf ID for identifying the client 1, a DNK for decrypting key information described in the EKB, an individual key Kpri given to the client 1 individually, A public key Kpub corresponding to the key Kpri is included. Further, the service data includes the public key of the license server 4 corresponding to the individual key held by the license server 4 and the certificate of the service data.

次に、図15のフローチャートを参照して、図13に示される処理に対応して実行される、ライセンスサーバ4のサービスデータ提供処理について説明する。   Next, the service data providing process of the license server 4 executed in correspondence with the process shown in FIG. 13 will be described with reference to the flowchart of FIG.

ステップS11において、ライセンスサーバ4のCPU21は、クライアント1からアクセスを受けたか否かを判定し、アクセスを受けたと判定するまで待機する。ライセンスサーバ4のCPU21は、ステップS11において、クライアント1からアクセスを受けたと判定した場合、ステップS12に進み、クライアント1から要求されたサービスを利用するための、図14に示されるような各種の情報が記述されたサービスデータを生成する。   In step S11, the CPU 21 of the license server 4 determines whether access has been received from the client 1, and waits until it is determined that access has been received. If the CPU 21 of the license server 4 determines in step S11 that access has been received from the client 1, the process proceeds to step S12, and various information as shown in FIG. 14 for using the service requested by the client 1 is obtained. Service data in which is described is generated.

ステップS13において、ライセンスサーバ4のCPU21は、通信部29を制御し、ステップS12で生成したサービスデータを、サービスのデフォルトの使用条件を表す情報とともにクライアント1に送信する。   In step S <b> 13, the CPU 21 of the license server 4 controls the communication unit 29 and transmits the service data generated in step S <b> 12 to the client 1 together with information indicating the default use condition of the service.

以上のような処理によって、クライアント1により、サービスデータが取得される。なお、以上のような処理によりサービスデータがクライアント1に提供されるのはなく、クライアント1に予め格納された状態(クライアント1の製造の段階で埋め込まれた状態)で、そのクライアント1のユーザに提供されるようにしてもよい。   Through the processing as described above, the service data is acquired by the client 1. Note that the service data is not provided to the client 1 by the processing as described above, but is stored in the client 1 in a state (embedded at the stage of manufacturing the client 1), and to the user of the client 1 It may be provided.

次に、図16のフローチャートを参照して、クライアント1に提供するコンテンツを生成するコンテンツサーバ3の処理について説明する。なお、コンテンツサーバ3から提供されるコンテンツに含まれる音楽データや映像データなどのそのものであるコンテンツデータは、図示せぬコンテンツホルダにより提供されたものである。   Next, processing of the content server 3 that generates content to be provided to the client 1 will be described with reference to the flowchart of FIG. Note that the content data, which is the music data and video data included in the content provided from the content server 3 itself, is provided by a content holder (not shown).

ステップS21において、コンテンツサーバ3のCPU21は、クライアント1に提供するコンテンツ(コンテンツデータ)を暗号化するコンテンツキーKcを生成する。また、CPU21は、ステップS22において、クライアント1においてコンテンツキーKcを生成するために必要なサブキーKsubを生成する。上述したように、このサブキーKsubは、利用権に含まれる形で、ライセンスサーバ4からクライアント1に提供される。   In step S21, the CPU 21 of the content server 3 generates a content key Kc for encrypting content (content data) to be provided to the client 1. In step S22, the CPU 21 generates a sub key Ksub necessary for generating the content key Kc in the client 1. As described above, the subkey Ksub is provided from the license server 4 to the client 1 in a form included in the usage right.

CPU21は、ステップS23において、サブキーKsubとEKBキーKekbに基づいて、クライアント1がコンテンツキーKcを生成できるように、そのEKBキーKekbを生成する。具体的には、CPU21は、ステップS21で生成したコンテンツキーKcと、ステップS22で生成したサブキーKsubの排他的論理和演算(Exclusive OR)を行い、その演算結果をEKBキーKekbとする。   In step S23, the CPU 21 generates the EKB key Kekb so that the client 1 can generate the content key Kc based on the sub key Ksub and the EKB key Kekb. Specifically, the CPU 21 performs an exclusive OR operation (Exclusive OR) of the content key Kc generated in step S21 and the subkey Ksub generated in step S22, and sets the operation result as the EKB key Kekb.

ステップS24において、CPU21は、ステップS23で生成したEKBキーKekbを、EKBに含まれるルートキーKrootで暗号化し、E(Kroot,Kekb)を取得する。また、CPU21は、ステップS25において、ステップS21で生成したコンテンツキーKcを用いて、クライアント1に提供するコンテンツ(Content)に暗号化を施し、E(Kc,Cont)を取得する。   In step S24, the CPU 21 encrypts the EKB key Kekb generated in step S23 with the root key Kroot included in the EKB, and obtains E (Kroot, Kekb). In step S25, the CPU 21 encrypts the content (Content) provided to the client 1 using the content key Kc generated in step S21, and obtains E (Kc, Cont).

CPU21は、ステップS26において、ステップS24で取得したE(Kroot,Kekb)、およびステップS25で取得したE(Kc,Cont)を含むフォーマットのコンテンツを生成し、それを記憶部28に保存する。   In step S26, the CPU 21 generates content in a format including E (Kroot, Kekb) acquired in step S24 and E (Kc, Cont) acquired in step S25, and stores it in the storage unit 28.

図17は、コンテンツサーバ3により生成されるコンテンツのフォーマットの例を示す図である。   FIG. 17 is a diagram illustrating an example of a format of content generated by the content server 3.

図17に示されるように、基本的に、コンテンツはヘッダ(Header)とデータ(Data)(コンテンツデータ)により構成される。   As shown in FIG. 17, the content basically includes a header and data (content data).

ヘッダには、コンテンツ情報(Content information)、URL(Uniform Resource Locator)、ライセンスID(License ID)、クライアント1に提供されたDNKにより暗号化されたKrootを含むEKB、EKBから取得されたキーKrootによりEKBキーKekbが暗号化されて得られたE(Kroot,Kekb)、コンテンツの属性を表す属性情報(Attribute)、およびヘッダの署名(Signatures)が記述されている。   The header includes content information (Content information), URL (Uniform Resource Locator), license ID (License ID), EKB including Kroot encrypted by DNK provided to client 1, and key Kroot obtained from EKB. E (Kroot, Kekb) obtained by encrypting the EKB key Kekb, attribute information (Attribute) representing the attribute of the content, and signature (Signatures) of the header are described.

コンテンツ情報には、データとして格納されているコンテンツを識別するためのコンテンツID(CID)、および、コンテンツのコーデックの方式を表す情報などが含まれている。   The content information includes a content ID (CID) for identifying content stored as data, information representing a content codec system, and the like.

URLは、そのコンテンツを利用するために必要な利用権を取得するときアクセスする、ライセンスサーバ4のアドレスを表している。コンテンツの属性には、コンテンツID、コンテンツの提供者を識別するための識別情報としてのレコードカンパニーID、アーティストを識別するための識別情報としてのアーティストID、および、ユニークIDなどが含まれる。本実施例では、属性は利用権の対象となるコンテンツを特定するために用いられる。   The URL represents the address of the license server 4 that is accessed when a usage right necessary for using the content is acquired. The content attributes include a content ID, a record company ID as identification information for identifying a content provider, an artist ID as identification information for identifying an artist, a unique ID, and the like. In this embodiment, the attribute is used to specify the content that is the subject of the usage right.

データは、任意の数の暗号化ブロック(Encryption Block)により構成される。各暗号化ブロックは、イニシャルベクトル(IV(Initial Vector))、シード(Seed)、およびコンテンツをキーK'cで暗号化したデータEK'c(data)により構成されている。   The data is composed of an arbitrary number of encryption blocks. Each encrypted block includes an initial vector (IV (Initial Vector)), a seed (Seed), and data EK′c (data) obtained by encrypting the content with a key K′c.

キーK'cは、次式により示されるように、コンテンツキーKcと、乱数で設定される値Seedをハッシュ関数に適用して演算された値により構成される。   As shown by the following equation, the key K′c includes a content key Kc and a value calculated by applying a value Seed set by a random number to a hash function.

K'c=Hash(Kc,Seed)   K'c = Hash (Kc, Seed)

イニシャルベクトルIVとシードSeedは、暗号化ブロック毎に、異なる値が設定される。   Different values are set in the initial vector IV and the seed Seed for each encrypted block.

例えば、コンテンツの暗号化は、コンテンツのデータを8バイト単位で区分して、その区分毎に行われる。後段の8バイトの暗号化は、前段の8バイトの暗号化の結果を利用して行われるCBC(Cipher Block Chaining)モードで行われる。   For example, content encryption is performed for each division of content data in units of 8 bytes. The subsequent 8-byte encryption is performed in a CBC (Cipher Block Chaining) mode that is performed using the result of the previous 8-byte encryption.

CBCモードの場合、最初の8バイトのコンテンツを暗号化するとき、その前段の8バイトの暗号化結果が存在しないため、最初の8バイトのコンテンツを暗号化するときは、イニシャルベクトルIVを初期値として暗号化が行われる。   In CBC mode, when encrypting the first 8-byte content, there is no previous 8-byte encryption result. Therefore, when encrypting the first 8-byte content, the initial vector IV is the initial value. Encryption is performed as follows.

CBCモードによる暗号化を行うことにより、1つの暗号化ブロックが解読されたとしても、その影響が、他の暗号化ブロックに及ぶことが抑制される。なお、コンテンツが、他の暗号化方式により暗号化されるようにしてもよい。   By performing encryption in the CBC mode, even if one encrypted block is decrypted, the influence is suppressed from affecting other encrypted blocks. Note that the content may be encrypted by another encryption method.

以上のようなフォーマットでコンテンツを構成することにより、コンテンツを取得したクライアント1は、サービスデータにより予め与えられているDNKを用いてルートキーKrootを復号し、取得したルートキーKrootにより、EKBキーKekbを復号することができる。また、クライアント1は、EKBキーKekbと、利用権に含まれているサブキーKsubに基づいてコンテンツキーKcを生成し、それを用いてコンテンツを復号することができる。   By configuring the content in the format as described above, the client 1 that has acquired the content decrypts the root key Kroot using the DNK given in advance by the service data, and uses the acquired root key Kroot to provide the EKB key Kekb. Can be decrypted. Further, the client 1 can generate the content key Kc based on the EKB key Kekb and the subkey Ksub included in the usage right, and can decrypt the content using the content key Kc.

図16の説明に戻り、ステップS27において、コンテンツサーバ3のCPU21は、ステップS22で生成したサブキーKsubを、インターネット2を介して、または、所定の記録媒体を介して、ライセンスサーバ4に提供する。   Returning to the description of FIG. 16, in step S27, the CPU 21 of the content server 3 provides the subkey Ksub generated in step S22 to the license server 4 via the Internet 2 or via a predetermined recording medium.

コンテンツサーバ3によるサブキーKsubの提供に応じて、ライセンスサーバ4においては、図18のフローチャートに示される処理が行われる。   In response to provision of the sub key Ksub by the content server 3, the license server 4 performs the processing shown in the flowchart of FIG.

ステップS41において、ライセンスサーバ4のCPU21は、コンテンツサーバ3からサブキーKsubが取得されてきたか否かを判定する。CPU21は、サブキーKsubが取得されてきたと判定するまで待機し、例えば、インターネット2を介してサブキーKsubを表す情報が送信されてきたと判定した場合、ステップS42に進み、それを取得する。取得されたサブキーKsubは、記憶部28に記憶され、クライアント1から利用権が要求されたとき、その利用権に含まれてクライアント1に提供される。   In step S <b> 41, the CPU 21 of the license server 4 determines whether the sub key Ksub has been acquired from the content server 3. The CPU 21 waits until it is determined that the subkey Ksub has been acquired. For example, when it is determined that information representing the subkey Ksub has been transmitted via the Internet 2, the CPU 21 proceeds to step S42 and acquires it. The acquired subkey Ksub is stored in the storage unit 28, and when the usage right is requested from the client 1, it is included in the usage right and provided to the client 1.

次に、図19のフローチャートを参照して、コンテンツサーバ3からコンテンツの提供を受けるクライアント1の処理について説明する。   Next, processing of the client 1 that receives content from the content server 3 will be described with reference to the flowchart of FIG.

クライアント1のCPU21は、ユーザからコンテンツサーバ3にアクセスすることが指示されたとき、ステップS51において、コンテンツサーバ3にアクセスする。ステップS52において、ユーザが、入力部26を操作して、提供を受けるコンテンツを指定すると、CPU21は、この指定情報を受け取り、コンテンツサーバ3に、指定されたコンテンツのコンテンツIDを通知する。   When the CPU 21 of the client 1 is instructed by the user to access the content server 3, the CPU 21 accesses the content server 3 in step S51. In step S52, when the user operates the input unit 26 to specify the content to be provided, the CPU 21 receives the specification information and notifies the content server 3 of the content ID of the specified content.

図20のフローチャートを参照して後述するように、この通知を受けたコンテンツサーバ3は、コンテンツを送信してくるため、ステップS53において、CPU21は、送信されてきたコンテンツを受信し、ステップS54において、そのコンテンツを記憶部28に記憶させる。   As will be described later with reference to the flowchart of FIG. 20, since the content server 3 that has received this notification transmits the content, in step S53, the CPU 21 receives the transmitted content, and in step S54. The content is stored in the storage unit 28.

次に、図20のフローチャートを参照して、クライアント1による図19の処理に対応して実行される、コンテンツサーバ3のコンテンツ提供処理について説明する。   Next, content providing processing of the content server 3 executed in response to the processing of FIG. 19 by the client 1 will be described with reference to the flowchart of FIG.

ステップS61において、コンテンツサーバ3のCPU21は、クライアント1からアクセスを受けるまで待機し、アクセスを受けたと判定したとき、ステップS62に進み、クライアント1から送信されてきたコンテンツIDを取り込む。このコンテンツIDは、クライアント1が、図19のステップS52において通知してきた情報である。   In step S61, the CPU 21 of the content server 3 stands by until access is received from the client 1. When it is determined that access has been received, the CPU 21 proceeds to step S62 and takes in the content ID transmitted from the client 1. This content ID is information that the client 1 has notified in step S52 of FIG.

ステップS63において、コンテンツサーバ3のCPU21は、記憶部28に記憶されているコンテンツデータの中から、ステップS62の処理で取り込まれたコンテンツIDで指定されたコンテンツデータを読み出す。ステップS64において、CPU21は、通信部29を制御し、読み出したコンテンツデータを含むコンテンツを、コンテンツを要求してきたクライアント1に送信する。   In step S63, the CPU 21 of the content server 3 reads the content data specified by the content ID fetched in step S62 from the content data stored in the storage unit 28. In step S64, the CPU 21 controls the communication unit 29 to transmit the content including the read content data to the client 1 that has requested the content.

次に、図21のフローチャートを参照して、コンテンツを再生するクライアント1の処理について説明する。   Next, processing of the client 1 that reproduces content will be described with reference to the flowchart of FIG.

ステップS71において、クライアント1のCPU21は、ユーザが入力部26を操作することで指示したコンテンツの識別情報(CID)を取得する。CIDは、例えば、コンテンツのタイトルや、記憶されている各コンテンツに付与されている番号などにより構成される。CPU21は、コンテンツが指示されると、そのコンテンツの属性(Attributes)を読み取る。この属性は、図17に示されるように、コンテンツのヘッダに記述されているものである。   In step S <b> 71, the CPU 21 of the client 1 acquires content identification information (CID) instructed by the user operating the input unit 26. The CID is composed of, for example, a content title, a number assigned to each stored content, and the like. When the content is instructed, the CPU 21 reads the attribute of the content. This attribute is described in the header of the content as shown in FIG.

ステップS72において、CPU21は、ステップS71で読み取られた属性が各利用権に含まれているコンテンツ条件を満たすような利用権が、クライアント1により既に取得され、記憶部28に記憶されているか否かを判定する。まだ、利用権が取得されていない場合には、ステップS73に進み、CPU21は、利用権取得処理を実行する。この利用権取得処理の詳細は、図22のフローチャートを参照して後述する。   In step S72, the CPU 21 determines whether or not a usage right that satisfies the content condition that the attribute read in step S71 is included in each usage right has already been acquired by the client 1 and stored in the storage unit 28. Determine. If the usage right has not yet been acquired, the process proceeds to step S73, and the CPU 21 executes the usage right acquisition process. Details of this usage right acquisition processing will be described later with reference to the flowchart of FIG.

ステップS72において、利用権が既に取得されていると判定された場合、または、ステップS73において、利用権取得処理が実行され、利用権が取得された場合、ステップS74に進み、CPU21は、取得されている利用権が有効期限内のものであるか否かを判定する。利用権が有効期限内のものであるか否かは、利用権の記述内容としての有効期限(図24参照)と、タイマ20により計時されている現在日時が比較されて判断される。   If it is determined in step S72 that the usage right has already been acquired, or if the usage right acquisition process is executed and the usage right is acquired in step S73, the process proceeds to step S74, and the CPU 21 is acquired. It is determined whether the right to use is within the expiration date. Whether or not the usage right is within the expiration date is determined by comparing the expiration date (see FIG. 24) as the description content of the usage right and the current date and time counted by the timer 20.

利用権の有効期限が既に満了していると判定された場合、CPU21は、ステップS75に進み、利用権更新処理を実行する。ステップS75で実行される利用権更新処理は、基本的には、ステップS73で実行される利用権取得処理と同様の処理である。   When it is determined that the expiration date of the usage right has already expired, the CPU 21 proceeds to step S75 and executes the usage right update process. The usage right update process executed in step S75 is basically the same process as the usage right acquisition process executed in step S73.

ステップS74において、利用権が有効期限内のものであると判定された場合、または、ステップS75において、利用権が更新された場合、ステップS76に進み、CPU21は、記憶部28に記憶されている、利用権に含まれる使用条件及び使用状態を読み出し、再生の条件を満たしているかどうかを判定する。   If it is determined in step S74 that the usage right is within the expiration date, or if the usage right is updated in step S75, the process proceeds to step S76, and the CPU 21 is stored in the storage unit 28. The usage conditions and usage status included in the usage right are read out, and it is determined whether or not the playback conditions are satisfied.

ステップS76において、利用権に含まれる使用条件、及び使用状態に基づき、再生が許可されると判定された場合には、ステップS77に進み、CPU21は、コンテンツを記憶部28から読み出し、RAM23に格納させる。そして、ステップS78において、CPU21は、RAM23に記憶されたコンテンツを復号する処理を実行する。ステップS78において行われるコンテンツ復号処理については、図25のフローチャートを参照して後述する。   If it is determined in step S76 that playback is permitted based on the usage conditions and usage status included in the usage right, the process proceeds to step S77, and the CPU 21 reads the content from the storage unit 28 and stores it in the RAM 23. Let In step S78, the CPU 21 executes a process for decrypting the content stored in the RAM 23. The content decrypting process performed in step S78 will be described later with reference to the flowchart of FIG.

CPU21は、ステップS79において、暗号化復号部24により復号されたコンテンツをコーデック部25に供給し、デコードさせる。そして、CPU21は、コーデック部25によりデコードされたデータを入出力インタフェース32を介して出力部27に供給し、ディジタルアナログ変換させ、スピーカから出力させる。   In step S79, the CPU 21 supplies the content decrypted by the encryption / decryption unit 24 to the codec unit 25 to be decoded. Then, the CPU 21 supplies the data decoded by the codec unit 25 to the output unit 27 via the input / output interface 32, performs digital / analog conversion, and outputs the data from the speaker.

次に、図22のフローチャートを参照して、図21のステップS73で行われる利用権取得処理の詳細について説明する。   Next, details of the usage right acquisition process performed in step S73 in FIG. 21 will be described with reference to the flowchart in FIG.

ステップS81において、クライアント1のCPU21は、コンテンツのヘッダに記述されているURLを取得する。上述したように、このURLは、そのコンテンツを利用するために必要な利用権を取得するときアクセスするライセンスサーバ4のアドレスを表している。ステップS82において、CPU21は、通信部29を制御し、ステップS81で取得したURL、すなわちライセンスサーバ4にアクセスする。   In step S81, the CPU 21 of the client 1 acquires a URL described in the content header. As described above, this URL represents the address of the license server 4 that is accessed when a usage right necessary for using the content is acquired. In step S82, the CPU 21 controls the communication unit 29 to access the URL acquired in step S81, that is, the license server 4.

このアクセスに応じて、ライセンスサーバ4は、クライアント1に対して、購入する利用権(コンテンツを使用するのに必要な利用権)を指定する利用権指定情報、ユーザID、およびパスワードの入力を要求してくる(後述する図23のステップS102)。CPU21は、この要求を出力部27の表示部に表示させる。ユーザは、この表示に基づいて、入力部26を操作し、利用権指定情報、ユーザID、およびパスワードを入力する。なお、このユーザIDとパスワードは、クライアント1のユーザが、インターネット2を介してライセンスサーバ4にアクセスし、予め取得しておいたものである。   In response to this access, the license server 4 requests the client 1 to input usage right designation information, a user ID, and a password for designating usage rights (usage rights necessary for using the content). (Step S102 in FIG. 23 described later). The CPU 21 displays this request on the display unit of the output unit 27. Based on this display, the user operates the input unit 26 to input usage right designation information, a user ID, and a password. The user ID and password are obtained in advance by the user of the client 1 accessing the license server 4 via the Internet 2.

CPU21は、ステップS83において、入力部26から入力された利用権指定情報を取り込み、ステップS84において、ユーザID、パスワードを取り込む。CPU21は、ステップS85において、通信部29を制御し、入力されたユーザIDとパスワード、利用権指定情報、およびサービスデータに含まれるリーフIDを含む利用権要求をライセンスサーバ4に送信させる。   In step S83, the CPU 21 captures the usage right designation information input from the input unit 26, and in step S84, captures the user ID and password. In step S85, the CPU 21 controls the communication unit 29 to transmit the usage right request including the input user ID and password, the usage right designation information, and the leaf ID included in the service data to the license server 4.

ライセンスサーバ4は、図23を参照して後述するように、ユーザIDとパスワード、並びに利用権指定情報に基づいて生成した利用権を送信してくる(ステップS111)か、または、条件が満たされない場合には、利用権を送信してこない(ステップS114)。   As will be described later with reference to FIG. 23, the license server 4 transmits the user ID and the password, and the usage right generated based on the usage right designation information (step S111), or the condition is not satisfied. In this case, the usage right is not transmitted (step S114).

ステップS86において、CPU21は、ライセンスサーバ4から利用権が送信されてきたか否かを判定し、利用権が送信されてきたと判定した場合、ステップS87に進み、受信した利用権を記憶部28に記憶させる。   In step S86, the CPU 21 determines whether or not the usage right has been transmitted from the license server 4. If it is determined that the usage right has been transmitted, the CPU 21 proceeds to step S87 and stores the received usage right in the storage unit 28. Let

ステップS86において、利用権が送信されてこないと判定した場合、CPU21は、ステップS88に進み、コンテンツの再生処理を禁止するなどのエラー処理を実行する。   If it is determined in step S86 that the usage right has not been transmitted, the CPU 21 proceeds to step S88 and executes error processing such as prohibiting the content reproduction processing.

なお、図22に示される利用権取得処理は、各ユーザが、コンテンツを取得する前に予め行っておくようにすることも可能である。   Note that the usage right acquisition process shown in FIG. 22 can be performed in advance by each user before acquiring the content.

次に、図23のフローチャートを参照して、図22のクライアント1の利用権取得処理に対応して実行される、ライセンスサーバ4の利用権提供処理について説明する。   Next, with reference to the flowchart of FIG. 23, the usage right providing process of the license server 4 executed in response to the usage right acquisition process of the client 1 of FIG. 22 will be described.

ステップS101において、ライセンスサーバ4のCPU21は、クライアント1よりアクセスを受けるまで待機し、アクセスを受けたとき、ステップS102に進み、アクセスしてきたクライアント1に対して、各利用権に関する情報を含む利用権のリストを送信するとともに、ユーザIDとパスワード、並びに、利用権指定情報の送信を要求する。クライアント1から、ユーザIDとパスワード、リーフID並びに利用権指定情報(利用権IDであってもよい)が送信されてきたとき(図22のステップS85の処理)、ライセンスサーバ4のCPU21は、通信部29を介してこれを取り込む。   In step S101, the CPU 21 of the license server 4 stands by until access is received from the client 1. When access is received, the process proceeds to step S102, and the access right including information on each use right is given to the accessing client 1. And a request for transmission of user ID, password, and usage right designation information. When a user ID, password, leaf ID, and usage right designation information (which may be a usage right ID) are transmitted from the client 1 (processing in step S85 in FIG. 22), the CPU 21 of the license server 4 performs communication. This is taken in via the part 29.

ライセンスサーバ4のCPU21は、ステップS103において、通信部29から課金サーバ5にアクセスし、ユーザIDとパスワードに対応するユーザの与信処理を要求する。課金サーバ5は、インターネット2を介してライセンスサーバ4から与信処理の要求を受けると、そのユーザIDとパスワードに対応するユーザの過去の支払い履歴などを調査し、そのユーザが、過去に利用権の対価の不払いの実績があるか否かなどを調べ、そのような実績がない場合には、利用権の付与を許容する与信結果を送信し、不払いの実績などがある場合には、利用権付与の不許可の与信結果を送信する。なお、クライアント1のユーザは、課金サーバ5に対して、自分自身のユーザID、パスワード、課金先の情報などを予め登録している。   In step S103, the CPU 21 of the license server 4 accesses the accounting server 5 from the communication unit 29, and requests a user credit process corresponding to the user ID and password. When the billing server 5 receives a request for credit processing from the license server 4 via the Internet 2, the billing server 5 investigates the past payment history of the user corresponding to the user ID and the password, and the user has received the usage right in the past. Check whether or not there is a record of non-payment of the consideration, and if there is no such record, send a credit result that allows the granting of usage rights. If there is a record of non-payment, grant usage rights Send unauthorized credit result of. Note that the user of the client 1 registers his / her user ID, password, billing destination information, and the like in the billing server 5 in advance.

ステップS104において、ライセンスサーバ4のCPU21は、課金サーバ5からの与信結果が、利用権を付与することを許容するものであるか否かを判定し、利用権の付与が許容されている場合には、ステップS105に進み、ステップS102の処理で取り込まれた利用権指定情報に対応する利用権を、記憶部28に記憶されている利用権の中から取り出す。記憶部28に記憶されている利用権には、利用権ID、バージョン、作成日時、有効期限等の情報が記述されている。   In step S104, the CPU 21 of the license server 4 determines whether or not the credit result from the accounting server 5 allows the usage right to be granted, and if the usage right is allowed to be granted. In step S105, the usage right corresponding to the usage right designation information acquired in step S102 is extracted from the usage rights stored in the storage unit 28. In the usage right stored in the storage unit 28, information such as a usage right ID, version, creation date and time, and expiration date is described.

ステップS106において、CPU21は、その利用権に、クライアント1から通知されてきたリーフIDを付加する。また、ステップS107において、CPU21は、ステップS105で選択された利用権に対応づけられている使用条件を選択する。なお、ステップS102の処理で、ユーザから使用条件が指定された場合には、その使用条件が、予め用意されている使用条件に付加される。CPU21は、選択した使用条件を利用権に付加する。使用条件は利用権に予め付加されていてもよい。   In step S106, the CPU 21 adds the leaf ID notified from the client 1 to the usage right. In step S107, the CPU 21 selects a use condition associated with the usage right selected in step S105. Note that when a use condition is designated by the user in the process of step S102, the use condition is added to the use condition prepared in advance. The CPU 21 adds the selected use condition to the usage right. The use condition may be added to the usage right in advance.

ステップS108において、CPU21は、ライセンスサーバ4の個別鍵により利用権に署名する。   In step S108, the CPU 21 signs the usage right with the individual key of the license server 4.

CPU21は、ステップS109において、コンテンツサーバ3から通知されてきたサブキーKsubを、クライアント1の個別鍵Kpri(図14)に対応するライセンスサーバ4の公開鍵Kpubを用いて暗号化し、E(Kpub,Ksub)を取得する。CPU21は、ステップS110において、ステップS109で取得したE(Kpub,Ksub)を、ステップS105で選択した利用権に付加する。   In step S109, the CPU 21 encrypts the subkey Ksub notified from the content server 3 using the public key Kpub of the license server 4 corresponding to the individual key Kpri of the client 1 (FIG. 14), and E (Kpub, Ksub ) To get. In step S110, the CPU 21 adds E (Kpub, Ksub) acquired in step S109 to the usage right selected in step S105.

図24は、以上のような処理により生成される利用権の例を示す図である。   FIG. 24 is a diagram illustrating an example of the usage right generated by the processing as described above.

バージョンは、メジャーバージョンおよびマイナーバージョンをドットで区切って、利用権のバージョンを記述する情報である。プロファィルは、10進の整数値から記述され、利用権の記述方法に対する制限を規定する情報である。利用権IDは、16進定数で記述される、利用権を識別するための識別情報である。作成日時は、利用権が作成された日時を示す。有効期限は、利用権の有効期限を示す。9999年23時59分59秒である有効期限は、有効期限に制限がないことを示す。使用条件には、その利用権に基づいて、コンテンツを使用することが可能な使用期限、その利用権に基づいて、コンテンツを再生することが可能な再生期限、コンテンツの最大再生回数、その利用権に基づいて、コンテンツをコピーすることが可能な回数(許されるコピー回数)、最大チェックアウト回数、その利用権に基づいて、コンテンツをCD-Rに記録することができるか否か、PD(Portable Device)にコピーすることが可能な回数、利用権の移動の可否、使用ログをとる義務の有無等を示す情報が含まれる。使用条件の電子署名は、使用条件に対応する電子署名である。   The version is information describing the version of the usage right by separating the major version and the minor version with dots. The profile is described from a decimal integer value, and is information that defines restrictions on the usage right description method. The usage right ID is identification information described by a hexadecimal constant for identifying the usage right. The creation date / time indicates the date / time when the usage right was created. The expiration date indicates the expiration date of the usage right. An expiration date of 23:59:59 of 9999 indicates that there is no limit on the expiration date. The usage conditions include an expiration date for using the content based on the usage right, a playback expiration date for reproducing the content based on the usage right, a maximum number of times the content can be played, and the usage right. Based on the number of times that the content can be copied (allowable number of copies), the maximum number of checkouts, and whether or not the content can be recorded on the CD-R based on the usage rights, PD (Portable Device) includes information indicating the number of times that copying can be performed, whether usage rights can be transferred, whether or not there is an obligation to take a usage log, and the like. The electronic signature of the use condition is an electronic signature corresponding to the use condition.

定数は、使用条件または使用状態で参照される定数である。リーフIDは、クライアントを識別するための識別情報である。電子署名は、利用権全体に対応する、電子署名である。証明書は、ライセンスサーバ4の公開鍵を含む証明書である。   The constant is a constant referred to in the use condition or use state. The leaf ID is identification information for identifying the client. The electronic signature is an electronic signature corresponding to the entire usage right. The certificate is a certificate including the public key of the license server 4.

また、クライアント1の記憶部28には、利用権の使用条件とあわせて、コンテンツや利用権の状態を表す情報である使用状態(コンテンツ条件)が記憶される。使用状態には、対応する利用権に基づいてコンテンツを再生した回数、コンテンツをコピーした回数、コンテンツをチェックアウトした回数、コンテンツを初めて再生した日時、コンテンツをCD-Rに記録した回数、その他コンテンツあるいは利用権に関する履歴情報等を示す情報が含まれる。コンテンツの再生の条件の判定は、利用権に含まれる使用条件と、記憶部28に利用権と共に記憶されている使用状態とを基に行われる。例えば、使用状態に記憶されているコンテンツを再生した回数が、使用条件に含まれるコンテンツ最大再生回数より少ない場合には、再生の条件が満たされていると判定される。   The storage unit 28 of the client 1 stores a usage state (content condition) that is information indicating the state of the content and the usage right together with the usage right usage condition. The usage status includes the number of times the content has been played based on the corresponding usage rights, the number of times the content has been copied, the number of times the content has been checked out, the date and time the content was first played, the number of times the content has been recorded on the CD-R, and other content Or the information which shows the historical information etc. regarding a use right is contained. The content reproduction condition is determined based on the usage conditions included in the usage right and the usage state stored in the storage unit 28 together with the usage right. For example, when the number of times content stored in the usage state is reproduced is less than the maximum content reproduction number included in the usage condition, it is determined that the reproduction condition is satisfied.

なお、利用権には、ステップS109の処理により生成されたE(Kpub,Ksub)が含まれている。   The usage right includes E (Kpub, Ksub) generated by the process of step S109.

図23の説明に戻り、ステップS111において、CPU21は、以上のようにして生成した利用権を、通信部29からクライアント1に送信させる。   Returning to the description of FIG. 23, in step S111, the CPU 21 causes the communication unit 29 to transmit the usage right generated as described above to the client 1.

ステップS112において、ライセンスサーバ4のCPU21は、ステップS111で送信した利用権の内容を、ステップS102の処理で取り込んだユーザIDとパスワードに対応させて、記憶部28に記憶させる。また、ステップS113において、CPU21は、課金処理を実行する。   In step S112, the CPU 21 of the license server 4 stores the contents of the usage right transmitted in step S111 in the storage unit 28 in association with the user ID and password captured in step S102. In step S113, the CPU 21 executes billing processing.

具体的には、CPU21は、通信部29から課金サーバ5に、ユーザIDとパスワードに対応するユーザに対する課金処理を要求する。課金サーバ5は、この課金の要求に基づいて、そのユーザに対する課金処理を実行する。上述したように、この課金処理に対して、ユーザが支払いを行わなかったような場合には、以後、そのユーザは、利用権の付与を要求したとしても、利用権を受けることができないことになる。   Specifically, the CPU 21 requests the accounting server 5 from the communication unit 29 to perform accounting processing for the user corresponding to the user ID and password. The billing server 5 executes billing processing for the user based on the billing request. As described above, if the user does not make payment for this billing process, the user will not be able to receive the usage right even if the user requests the usage right. Become.

すなわち、この場合には、課金サーバ5から利用権の付与を不許可とする与信結果が送信されてくるので、ステップS104からステップS114に進み、CPU21は、クライアント1に対して、利用権を付与することができない旨のメッセージを出力するなどのエラー処理を実行する。   That is, in this case, the charging server 5 sends a credit result that denies the grant of the usage right, so that the process proceeds from step S104 to step S114, and the CPU 21 grants the usage right to the client 1. Execute error handling such as outputting a message indicating that it cannot be performed.

次に、図25のフローチャートを参照して、図21のステップS78において行われる、コンテンツを再生するクライアント1の処理の詳細について説明する。   Next, with reference to the flowchart of FIG. 25, the details of the processing of the client 1 that reproduces the content performed in step S78 of FIG.

ステップS121において、クライアント1のCPU21は、サービスデータにより予め提供されているDNKにより、コンテンツのEKB(図17)に含まれる鍵情報を復号し、ルートキーKrootを取得する。   In step S121, the CPU 21 of the client 1 decrypts the key information included in the EKB (FIG. 17) of the content using the DNK provided in advance by the service data, and acquires the root key Kroot.

ステップS122において、CPU21は、ステップS121で取得したルートキーKrootを用いてE(Kroot,Kekb)を復号し、EKBキーKekbを取得する。   In step S122, the CPU 21 decrypts E (Kroot, Kekb) using the root key Kroot acquired in step S121, and acquires the EKB key Kekb.

CPU21は、ステップS123において、利用権に含まれているE(Kpub,Ksub)を、ライセンスサーバ4の公開鍵Kpubに対応する個別鍵Kpri(サービスデータにより予め取得されている個別鍵)を用いて復号し、サブキーKsubを取得する。   In step S123, the CPU 21 uses E (Kpub, Ksub) included in the usage right using the individual key Kpri (an individual key acquired in advance by the service data) corresponding to the public key Kpub of the license server 4. Decrypt and obtain subkey Ksub.

CPU21は、ステップS124において、ステップS122で取得したEKBキーKekbと、ステップS123で取得したサブキーKsubに基づいて、コンテンツキーKcを生成する。具体的には、CPU21は、EKBキーKekbとサブキーKsubの排他的論理和演算を行い、その演算結果をコンテンツキーKcとして取得する。   In step S124, the CPU 21 generates a content key Kc based on the EKB key Kekb acquired in step S122 and the subkey Ksub acquired in step S123. Specifically, the CPU 21 performs an exclusive OR operation on the EKB key Kekb and the subkey Ksub, and acquires the operation result as the content key Kc.

ステップS125において、CPU21は、ステップS124で取得したコンテンツキーKcを利用して、E(Kc,Cont)を復号し、コンテンツを取得する。その後、取得されたコンテンツは、図21のステップS79において、CPU21の制御により再生され、出力部27から出力される。   In step S125, the CPU 21 uses the content key Kc acquired in step S124 to decrypt E (Kc, Cont) and acquire the content. Thereafter, the acquired content is reproduced under the control of the CPU 21 and output from the output unit 27 in step S79 of FIG.

図26は、以上のようにしてクライアント1により行われるコンテンツの再生処理を模式的に表す図である。図26において、S121乃至S125は、図25のステップS121乃至S125のそれぞれの処理に対応する。また、図26において、コンテンツは、主な情報のみが示されている。   FIG. 26 is a diagram schematically illustrating the content reproduction process performed by the client 1 as described above. In FIG. 26, S121 to S125 correspond to the processes of steps S121 to S125 of FIG. Further, in FIG. 26, only main information is shown for the content.

図26に示されるように、クライアント1においては、コンテンツサーバ3から取得されたコンテンツに配置されているEKBが、クライアント1に対して予め与えられているDNKにより処理され、ルートキーKrootが取得される(ステップS121)。   As shown in FIG. 26, in the client 1, the EKB arranged in the content acquired from the content server 3 is processed by the DNK given in advance to the client 1, and the root key Kroot is acquired. (Step S121).

また、EKBの右隣に配置されているE(Kroot,Kekb)が、ルートキーKrootにより復号され、EKBキーKekbが取得される(ステップS122)。   Further, E (Kroot, Kekb) arranged on the right side of EKB is decrypted with the root key Kroot, and the EKB key Kekb is obtained (step S122).

一方、ライセンスサーバ4から提供された利用権に含まれるE(Kpub,Ksub)が、サービスデータによりクライアントに予め与えられている個別鍵Kpriにより復号され、サブキーKsubが取得される(ステップS123)。   On the other hand, E (Kpub, Ksub) included in the usage right provided from the license server 4 is decrypted with the individual key Kpri given in advance to the client by the service data, and the subkey Ksub is obtained (step S123).

そして、サブキーKsubとEKBキーKekbに基づく排他的論理和演算が行われ、その出力としてのコンテンツキーKcが生成され(ステップS124)、生成されたコンテンツキーKcにより、コンテンツの右端に配置されているE(Kc,Cont)が復号され、コンテンツ(Content)が取得される(ステップS125)。   Then, an exclusive OR operation based on the sub key Ksub and the EKB key Kekb is performed, and a content key Kc as an output is generated (step S124), and is arranged at the right end of the content by the generated content key Kc. E (Kc, Cont) is decrypted, and the content is acquired (step S125).

以上のように、DNKに基づいてEKBからルートキーKrootを取得するオフラインの認証、および、公開鍵Kpubにより暗号化されたサブキーKsubを個別鍵Kpriにより復号するオフラインの認証を組み合わせることにより、第1に、EKBの内容が不正に読み取られた場合であっても、コンテンツの利用には個別鍵Kpriが必要となるため、不正なコンテンツの利用を防止することができる。   As described above, the combination of the offline authentication for obtaining the root key Kroot from the EKB based on the DNK and the offline authentication for decrypting the subkey Ksub encrypted with the public key Kpub with the individual key Kpri is the first. Even when the content of the EKB is illegally read, the use of the content requires the individual key Kpri, so that unauthorized use of the content can be prevented.

また、第2に、所定の期間、クライアント1のユーザがライセンスサーバ4にアクセスしない場合であっても、EKBの情報を変更し、サービスに属する他のクライアントに配布することにより、不正な行為を行うクライアント1の無効化(ルートキーKrootを取得できなくすること)が可能となる。   Secondly, even if the user of the client 1 does not access the license server 4 for a predetermined period, it is possible to change the EKB information and distribute it to other clients belonging to the service. It is possible to invalidate the client 1 (to make it impossible to acquire the root key Kroot).

さらに、第3に、コンテンツが音楽コンテンツである場合に、試聴用のコンテンツをDNKのみで暗号化し、購入用のコンテンツを、EKBキーKekbとサブキーKsubにより取得されるコンテンツキーKcにより暗号化することにより、コンテンツのみをダウンロードして試聴用コンテンツを利用し、購入用のコンテンツを実際に購入するときにのみ、ユーザにより利用権を取得させるなどのように、サービスに幅を持たせることができる。   Third, when the content is music content, the content for trial listening is encrypted only with DNK, and the content for purchase is encrypted with the content key Kc acquired by the EKB key Kekb and the subkey Ksub. Accordingly, it is possible to give a wide range of services such as downloading the contents only and using the contents for trial listening, and allowing the user to obtain the usage right only when actually purchasing the contents for purchase.

また、上記実施例では、コンテンツを利用するために必要な利用権を特定するためにコンテンツの属性と利用権のコンテンツ条件を用いたが、これに限らない。例えば、コンテンツに、該コンテンツを利用するために必要な利用権の利用権IDを含むようにしても良く、この場合、コンテンツを指定すればそれを利用するために必要な利用権は一意に決まるため、両者のマッチングを決定する処理を行う必要はない。   In the above embodiment, the content attribute and the content condition of the usage right are used to specify the usage right necessary for using the content. However, the present invention is not limited to this. For example, the content may include a usage right ID of a usage right necessary to use the content. In this case, if the content is specified, the usage right necessary to use the content is uniquely determined. There is no need to perform a process for determining the matching between the two.

従来のコンテンツの復号処理を示す模式図である。It is a schematic diagram which shows the decoding process of the conventional content. 本発明を適用したコンテンツ提供システムの構成例を示す図である。It is a figure which shows the structural example of the content provision system to which this invention is applied. 図2のクライアントの構成例を示すブロック図である。FIG. 3 is a block diagram illustrating a configuration example of a client in FIG. 2. キーの構成を示す図である。It is a figure which shows the structure of a key. カテゴリノードを示す図である。It is a figure which shows a category node. ノードとデバイスの対応例を示す図である。It is a figure which shows the example of a response | compatibility of a node and a device. 有効化キーブロックの構成例を示す図である。It is a figure which shows the structural example of an enabling key block. 有効化キーブロックの他の構成例を示す図である。It is a figure which shows the other structural example of the validation key block. 有効化キーブロックの利用の模式図である。It is a schematic diagram of utilization of an enabling key block. 有効化キーブロックのフォーマットの例を示す図である。It is a figure which shows the example of a format of an enabling key block. 有効化キーブロックのタグの構成を説明する図である。It is a figure explaining the structure of the tag of an enabling key block. 本発明を適用した鍵情報の分割の模式図である。It is a schematic diagram of the division | segmentation of the key information to which this invention is applied. 図2のクライアントのサービスデータ取得処理を説明するフローチャートである。It is a flowchart explaining the service data acquisition process of the client of FIG. サービスデータの例を示す図である。It is a figure which shows the example of service data. 図2のライセンスサーバのサービスデータ提供処理を説明するフローチャートである。It is a flowchart explaining the service data provision process of the license server of FIG. 図2のコンテンツサーバのコンテンツ生成処理を説明するフローチャートである。It is a flowchart explaining the content production | generation process of the content server of FIG. コンテンツのフォーマットの例を示す図である。It is a figure which shows the example of the format of a content. 図2のライセンスサーバのサブキー取得処理を説明するフローチャートである。3 is a flowchart for explaining subkey acquisition processing of the license server of FIG. 2. 図2のクライアントのダウンロード処理を説明するフローチャートである。FIG. 3 is a flowchart illustrating a client download process of FIG. 2. FIG. 図2のコンテンツサーバのコンテンツ提供処理を説明するフローチャートである。It is a flowchart explaining the content provision process of the content server of FIG. 図2のクライアントの再生処理を説明するフローチャートである。3 is a flowchart for explaining a reproduction process of the client in FIG. 2. 図21のステップS73における利用権取得処理の詳細を説明するフローチャートである。It is a flowchart explaining the detail of the usage right acquisition process in step S73 of FIG. 図2のライセンスサーバの利用権提供処理を説明するフローチャートである。It is a flowchart explaining the usage right provision process of the license server of FIG. 利用権の例を示す図である。It is a figure which shows the example of a usage right. 図21のステップS77における復号処理の詳細を説明するフローチャートである。It is a flowchart explaining the detail of the decoding process in FIG.21 S77. 図25の処理を模式的に表す図である。FIG. 26 is a diagram schematically illustrating the process of FIG. 25.

符号の説明Explanation of symbols

1−1,1−2 クライアント, 2 インターネット, 3 コンテンツサーバ, 4 ライセンスサーバ, 5 課金サーバ, 20 タイマ, 21 CPU, 24 暗号化復号部, 25 コーデック部, 26 入力部, 27 出力部, 28 記憶部, 29 通信部   1-1, 1-2 client, 2 internet, 3 content server, 4 license server, 5 charging server, 20 timer, 21 CPU, 24 encryption / decryption unit, 25 codec unit, 26 input unit, 27 output unit, 28 storage , 29 Communication Department

Claims (1)

コンテンツを提供するコンテンツサーバと、前記コンテンツを利用するのに必要な利用権を提供するライセンスサーバと、前記コンテンツサーバと前記ライセンスサーバとの間でネットワークを介して情報を送受信する情報処理装置とからなるコンテンツ提供システムにおいて、  A content server that provides content; a license server that provides usage rights necessary to use the content; and an information processing device that transmits and receives information between the content server and the license server via a network. In the content providing system
前記情報処理装置は、  The information processing apparatus includes:
前記ライセンスサーバに対して、前記情報処理装置に対応するデバイスノードキーと前記情報処理装置に固有の個別鍵とを含むサービスデータの送信を要求する要求手段と、    Request means for requesting the license server to transmit service data including a device node key corresponding to the information processing apparatus and an individual key unique to the information processing apparatus;
前記要求手段による要求に応じて前記ライセンスサーバから送信された前記サービスデータを受信する受信手段と、    Receiving means for receiving the service data transmitted from the license server in response to a request by the request means;
前記受信手段により受信された前記サービスデータを記憶する記憶手段と、    Storage means for storing the service data received by the receiving means;
前記コンテンツサーバから、暗号化されたコンテンツデータと暗号化された第1の鍵を受信し、前記ライセンスサーバから、コンテンツの利用が指示されることに応じて取得される、前記コンテンツに対応する暗号化された第2の鍵を含む利用権を受信する受信手段と、    The encryption corresponding to the content, which is acquired in response to an instruction to use the content from the license server, after receiving the encrypted content data and the encrypted first key from the content server Receiving means for receiving the right to use including the second key,
前記記憶手段に記憶されている前記サービスデータに含まれる前記デバイスノードキーを用いて、前記暗号化された第1の鍵を復号して抽出し、前記個別鍵を用いて、前記受信された利用権から、前記暗号化された第2の鍵を復号して抽出し、抽出した前記第1の鍵と前記第2の鍵とで所定の演算を行うことで前記暗号化されたコンテンツデータの復号鍵を生成する演算手段と、    The device node key included in the service data stored in the storage means is used to decrypt and extract the encrypted first key, and the received use using the individual key. The encrypted second key is decrypted and extracted from the right, and the encrypted content data is decrypted by performing a predetermined operation on the extracted first key and the second key. A computing means for generating a key;
前記復号鍵を用いて前記暗号化されたコンテンツデータを復号する復号手段と、    Decryption means for decrypting the encrypted content data using the decryption key;
前記復号手段により復号されたコンテンツデータを再生する再生手段と    Reproducing means for reproducing the content data decrypted by the decrypting means;
を備え、  With
前記コンテンツサーバは、  The content server
前記復号鍵と、前記利用権に含めて前記サービスサーバから前記情報処理装置に送信される前記第2の鍵と、前記第2の鍵とで前記所定の演算を行うことで前記復号鍵を生成することに用いられる前記第1の鍵とを生成する生成手段と、    The decryption key is generated by performing the predetermined calculation with the decryption key, the second key included in the usage right and transmitted from the service server to the information processing apparatus, and the second key. Generating means for generating the first key used to do;
前記生成手段により生成された前記第1の鍵を、前記デバイスノードキーによって復号可能な形で暗号化し、前記コンテンツデータを、前記復号鍵を用いて暗号化する暗号化手段と、    Encryption means for encrypting the first key generated by the generation means in a form that can be decrypted by the device node key, and encrypting the content data using the decryption key;
前記暗号化手段により暗号化された前記第1の鍵と前記コンテンツデータとを前記情報処理装置に送信し、前記第2の鍵を前記ライセンスサーバに送信する送信手段と    Transmitting means for transmitting the first key and the content data encrypted by the encryption means to the information processing apparatus, and transmitting the second key to the license server;
を備え、  With
前記ライセンスサーバは、  The license server
前記コンテンツサーバから送信された前記第2の鍵を受信する受信手段と、    Receiving means for receiving the second key transmitted from the content server;
前記受信手段により受信された前記第2の鍵を、前記情報処理装置の前記個別鍵に対応する公開鍵を用いて暗号化する暗号化手段と、    Encrypting means for encrypting the second key received by the receiving means using a public key corresponding to the individual key of the information processing apparatus;
前記デバイスノードキーと前記情報処理装置の前記個別鍵とを含む前記サービスデータを前記情報処理装置に送信し、前記暗号化手段により暗号化された前記第2の鍵を含む前記利用権を前記情報処理装置に送信する送信手段と    The service data including the device node key and the individual key of the information processing apparatus is transmitted to the information processing apparatus, and the usage right including the second key encrypted by the encryption unit is determined as the information. A transmission means for transmitting to the processing device;
を備えるコンテンツ提供システム。  A content providing system comprising:
JP2006186585A 2006-07-06 2006-07-06 Content provision system Expired - Fee Related JP4479698B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006186585A JP4479698B2 (en) 2006-07-06 2006-07-06 Content provision system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006186585A JP4479698B2 (en) 2006-07-06 2006-07-06 Content provision system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2002111554A Division JP4326186B2 (en) 2002-04-15 2002-04-15 Information processing apparatus and method

Publications (2)

Publication Number Publication Date
JP2006333499A JP2006333499A (en) 2006-12-07
JP4479698B2 true JP4479698B2 (en) 2010-06-09

Family

ID=37554611

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006186585A Expired - Fee Related JP4479698B2 (en) 2006-07-06 2006-07-06 Content provision system

Country Status (1)

Country Link
JP (1) JP4479698B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5110942B2 (en) * 2007-04-06 2012-12-26 株式会社日立製作所 Information protection system

Also Published As

Publication number Publication date
JP2006333499A (en) 2006-12-07

Similar Documents

Publication Publication Date Title
JP4326186B2 (en) Information processing apparatus and method
US7325139B2 (en) Information processing device, method, and program
US8042192B2 (en) Information processing apparatus, information processing method, recording medium, and program
US8090102B2 (en) Information processing device, information processing method, and computer program
US20050119967A1 (en) Information processing device and method, program storage medium and program
EP1538543A1 (en) License management device, license management method, and computer program
JP4391056B2 (en) Information management apparatus and method, recording medium, and program
JPWO2002080446A1 (en) Information processing equipment
KR20060026000A (en) Information device, information server, information processing system, information processing method, and information processing program
JP2005057435A (en) Client equipment, content processing method for client equipment, and contents providing system
WO2002080447A1 (en) Information processing apparatus
JP2004102788A (en) Information recording medium, information processor, information processing method and computer program
JP2002359616A (en) Information processor and method, license server, and program
JPWO2002080067A1 (en) Information processing equipment
JP3818503B2 (en) Information processing apparatus and method, and program
JP4479698B2 (en) Content provision system
JP2002297032A (en) Device and method for processing information, recording medium and program
JP4640374B2 (en) Information processing apparatus and method, program storage medium, and program
JP4697152B2 (en) Information management apparatus, information management method, recording medium, and program

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100201

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

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

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

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140326

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees