JP4638176B2 - Copyright protection system, power residue calculation device, operation device, key management device, playback device, recording device, recording medium, power residue calculation method, calculation method, and program - Google Patents

Copyright protection system, power residue calculation device, operation device, key management device, playback device, recording device, recording medium, power residue calculation method, calculation method, and program Download PDF

Info

Publication number
JP4638176B2
JP4638176B2 JP2004152554A JP2004152554A JP4638176B2 JP 4638176 B2 JP4638176 B2 JP 4638176B2 JP 2004152554 A JP2004152554 A JP 2004152554A JP 2004152554 A JP2004152554 A JP 2004152554A JP 4638176 B2 JP4638176 B2 JP 4638176B2
Authority
JP
Japan
Prior art keywords
prime
calculation
branch
prime number
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2004152554A
Other languages
Japanese (ja)
Other versions
JP2005012786A (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2004152554A priority Critical patent/JP4638176B2/en
Publication of JP2005012786A publication Critical patent/JP2005012786A/en
Application granted granted Critical
Publication of JP4638176B2 publication Critical patent/JP4638176B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、映画や音楽等、著作権を保護すべきコンテンツを光ディスク等の大容量記録媒体に記録し、再生するシステムに関し、特に著作権の保護が行われない不正な装置によるコンテンツの正常な再生を防止する技術に関する。   The present invention relates to a system for recording and reproducing content to be copyrighted, such as a movie or music, on a large-capacity recording medium such as an optical disk, and in particular, normal content by an unauthorized device that does not protect copyright. The present invention relates to a technology for preventing reproduction.

近年、コンピュータによる動画処理速度の向上、光ディスク等記録媒体の大容量化、通信回線の速度向上などマルチメディア関連技術の発展に伴い、動画、音声等の、データサイズの大きいデジタルコンテンツ(以下、コンテンツという。)を、大容量記録媒体、ネットワーク、放送等を介して配信するビジネスが盛んに行われており、このようなビジネスにおいては、コンテンツの著作権保護が大変重要である。   In recent years, with the development of multimedia-related technologies such as the improvement of video processing speed by computers, the increase in the capacity of recording media such as optical disks, and the speed of communication lines, digital content (hereinafter referred to as content) such as video and audio )) Is being actively distributed through large-capacity recording media, networks, broadcasts, etc. In such businesses, content copyright protection is very important.

著作権を保護し、かつコンテンツを配信するシステムにおいては、暗号化技術がよく使用されており、配信装置はコンテンツを暗号化して配信し、再生装置は、予め配布された復号鍵を用いて、前記暗号化されたコンテンツの復号を行っている。
前記システムでは、暗号化技術に加え、不正者による再生装置内部の解析等により前記鍵が外部に暴露される場合に備え、一旦暴露された鍵で、以後提供するコンテンツを復号できなくするための鍵無効化技術も使用されている(特許文献1参照)。
In a system that protects copyright and distributes content, encryption technology is often used, the distribution device encrypts and distributes the content, and the playback device uses the decryption key distributed in advance, The encrypted content is decrypted.
In the system, in addition to encryption technology, in case the key is exposed to the outside due to analysis inside the playback device by an unauthorized person, etc., in order to make it impossible to decrypt the content to be provided thereafter with the once exposed key A key revocation technique is also used (see Patent Document 1).

特許文献1に記載のシステムは、各再生装置を、木構造と呼ばれるN階層(Nは、2以上の自然数)構造を利用して管理するものであり、再生装置が、自装置に対応する当該木構造の末端から、最上端への経路上の各ノードに配置されたN個のデバイス鍵を保持しており、保持している前記デバイス鍵のうち、記録媒体中の情報で特定されるデバイス鍵を用いて、対応する暗号文を復号してメディア鍵を得て、暗号化コンテンツを復号し、コンテンツを再生する。前記暗号文は、有効なデバイス鍵の個数分、記録媒体中に記憶されている。
特開2002−281013号公報
The system described in Patent Document 1 manages each playback device using an N-layer structure (N is a natural number of 2 or more) called a tree structure, and the playback device corresponds to the device itself. A device that holds N device keys arranged at each node on the path from the end of the tree structure to the uppermost end, and is specified by information in the recording medium among the held device keys Using the key, the corresponding ciphertext is decrypted to obtain a media key, the encrypted content is decrypted, and the content is reproduced. The ciphertext is stored in the recording medium by the number of valid device keys.
JP 2002-281913 A

しかしながら、従来の鍵無効化技術では、各装置が保有する鍵の数は、木構造と呼ばれる階層構造の階層数(以下、高さという。)に比例し、前記木構造の階層の高さは、当該著作権保護システムがサポートする装置の総数の対数に比例するため、当該システムに属する装置の総数が多くなるに従い各装置が保有する鍵数が増加し、鍵の保有に必要なメモリ容量が増加し、結果、装置の製造コストが上昇するという問題がある。   However, in the conventional key revocation technique, the number of keys held by each device is proportional to the number of layers of a hierarchical structure called a tree structure (hereinafter referred to as height), and the height of the hierarchy of the tree structure is Since this is proportional to the logarithm of the total number of devices supported by the copyright protection system, the number of keys held by each device increases as the total number of devices belonging to the system increases, and the memory capacity required to hold the key increases. As a result, there is a problem that the manufacturing cost of the apparatus increases.

そこで本発明はかかる問題に鑑みてなされたものであり、システムに属する装置の総数に関わらず、製造コストを抑制することができる著作権保護システムを提供することを目的とする。   Therefore, the present invention has been made in view of such a problem, and an object thereof is to provide a copyright protection system capable of suppressing the manufacturing cost regardless of the total number of devices belonging to the system.

上記目的を達成するために本発明は、配布システムと、再生装置とから成る著作権保護システムであって、前記配布システムは、自然数である被演算値Sを保持している被演算値保持手段と、(2a−2)個(aは2以上の自然数)の相異なる素数から、 In order to achieve the above object, the present invention provides a copyright protection system comprising a distribution system and a playback device, wherein the distribution system holds an operation value S that is an operation value S that is a natural number. And (2 a -2) different prime numbers (a is a natural number of 2 or more),

Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出手段と、有限体上のべき乗剰余演算
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
Selection means for selecting the number of primes indicated by, and power-residue calculation over a finite field

Figure 0004638176
(Nは素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記選出手段により選出された全素数の積)
を行う第1演算手段と、前記被演算値Sを用いてコンテンツの暗号化を行う暗号化手段と、前記選出した素数を示す指示情報と、暗号化された前記コンテンツとを配布する配布手段とを備え、前記再生装置は、1以上の素数を示す指示情報と、前記暗号化されたコンテンツを取得する取得手段と、前記S'を予め保持する結果保持手段と、有限体上のべき乗剰余演算
Figure 0004638176
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and P is the product of all prime numbers selected by the selection means)
First computing means for performing encryption, encryption means for encrypting content using the operand value S, distribution means for distributing the instruction information indicating the selected prime number, and the encrypted content The reproduction apparatus includes instruction information indicating one or more prime numbers, an acquisition unit that acquires the encrypted content, a result holding unit that holds the S ′ in advance, and a power residue calculation on a finite field

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記取得した指示情報により示された全素数の積)
を行う第2演算手段と、前記第2演算手段による演算結果を用いて、取得した前記暗号化コンテンツを復号する復号手段とを備える。
Figure 0004638176
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is a product of all the prime numbers indicated by the acquired instruction information)
And second decryption means for decrypting the acquired encrypted content using a computation result obtained by the second computation means.

本発明の著作権保護システムは、上述の構成を備えることにより、配布システムによるべき乗剰余演算結果を第1の鍵として、再生装置に対し1つ配布しておき、再生装置において、第1の鍵から第2の鍵を得て、第2の鍵を用いて、情報の復号を行うシステムを提供することができる。
なお、前記第1の鍵に関し、再生装置が当該第1の鍵に対し、配布システムによるべき乗剰余演算に用いられた複数の素数のうち1の素数を除いた全ての素数で、更にべき乗剰余演算を行うことにより第2の鍵を得ることとすると、再生装置が、前記1の素数の逆元でべき乗剰余演算されていない、べき乗剰余演算結果である第3の鍵から前記第2の鍵を得ることは、計算量的に困難であり、前記1の素数としていずれの素数を選択するかによって、第1の鍵から、暗号及び復号用の鍵である第2の鍵を生成できるか否かが変わることとなる。
The copyright protection system of the present invention has the above-described configuration, so that one power residue calculation result by the distribution system is distributed to the playback device as a first key, and the playback device uses the first key. It is possible to provide a system that obtains the second key from the information and decrypts the information using the second key.
In addition, regarding the first key, the reproduction apparatus further calculates a power residue calculation for all the prime numbers excluding one prime number among a plurality of prime numbers used for the power residue calculation by the distribution system with respect to the first key. To obtain the second key, the playback device obtains the second key from the third key that is the power-residue calculation result that is not the power-residue calculation by the inverse element of the prime number of 1. It is difficult to obtain, and whether or not a second key that is a key for encryption and decryption can be generated from the first key depending on which prime number is selected as the prime number of 1 Will change.

本発明のべき乗剰余演算装置は、自然数である被演算値Sを保持している保持手段と、被演算値Sを読み出す読出手段と、(2a−2)個(aは2以上の自然数)の相異なる素数から、 The power-residue calculating apparatus of the present invention includes a holding unit that holds a calculation value S that is a natural number, a reading unit that reads the calculation value S, and (2 a -2) pieces (a is a natural number of 2 or more). From the different prime numbers of

Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出手段と、有限体上のべき乗剰余演算
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
Selection means for selecting the number of primes indicated by, and power-residue calculation over a finite field

Figure 0004638176
(Nは素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記選出手段により選出された全素数の積)
を行う演算手段とを備える。
この構成によれば、選出手段が選出する素数により異なる、べき乗剰余演算結果を得ることができる。
Figure 0004638176
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and P is the product of all prime numbers selected by the selection means)
And an arithmetic means for performing.
According to this configuration, it is possible to obtain a power residue calculation result that varies depending on the prime number selected by the selection means.

特に、前記べき乗剰余演算装置は、前記べき乗剰余演算結果を第1の鍵とし、当該第1の鍵から第2の鍵を生成するシステムに対し有効であり、1の前記べき乗剰余演算結果を第1の鍵とし、当該第1の鍵に対し、前記べき乗剰余演算に用いた複数の素数のうち1の素数を除いた全ての素数で、更にべき乗剰余演算を行い、保持手段に保持する被演算数に前記1の素数の逆元でべき乗剰余演算した数である第2の鍵を得ることができるが、前記1の素数の逆元でべき乗剰余演算されていないべき乗剰余演算結果からは、前記第2の鍵を得ることは、計算量的に困難であることから、第2の鍵を暗号、復号に用いれば、前記1の素数としていずれを選択するかにより、1のべき乗剰余演算結果から、前記第2の鍵を生成できるか否かを制御することができる。   In particular, the power residue calculation apparatus is effective for a system that uses the power residue calculation result as a first key and generates a second key from the first key. An operation to be performed in the holding means by performing a power-residue operation on all the prime numbers excluding one prime number among the plurality of prime numbers used for the power-residue operation as a key of 1. A second key that is a number obtained by performing a power-residue operation on the inverse of the prime number of the 1 can be obtained, but from a power-residue operation result that is not a power-residue operation on the inverse of the prime number of the 1 Since obtaining the second key is difficult in terms of computational complexity, if the second key is used for encryption and decryption, depending on which one is selected as the prime number of 1, the power residue calculation result of 1 Control whether the second key can be generated Door can be.

また、前記べき乗剰余演算装置は、前記選出手段は、a分木のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の前記素数を記憶している素数記憶手段と、a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得手段と、前記素数記憶手段に記憶されている(2a−2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選択手段とを備えてもよい。 Further, the power-residue calculating device may be configured such that the selecting means calculates the number of all the numbers from 1 to (a-1) from a branch connected to any node of the a-ary tree. A combination for selecting a branch is generated, and a prime number storage means for storing (2 a -2) corresponding prime numbers without overlapping any of all the generated combinations; Of these, branch acquisition means for acquiring branch specification information for specifying one branch, and the branch specified by the branch specification information from the (2 a -2) prime numbers stored in the prime number storage means. You may provide the prime number selection means which selects all the prime numbers corresponding to the combination to include.

この構成によれば、a分木の1のノードに接続する枝のうち、1の枝を含む全ての組合せに対応した各素数を選出し、選出した素数の逆元でべき乗剰余演算した演算結果を得ることができる。
また、前記べき乗剰余演算装置は、更に、前記演算手段により演算された演算結果値S'を前記被演算値Sとして、前記保持手段に保持している前記被演算値Sに上書きする書込手段と、a分木のルートから1のリーフまでの経路上の各枝について、ルートからリーフへの順序で、前記枝取得手段、前記素数選択手段、前記演算手段、前記書込手段に対して、それぞれ、当該枝を指定する枝指定情報の取得と、指定された枝を含む組合せに対応する全ての素数の選択と、式1に基づくべき乗剰余演算と、演算された演算結果値S'の前記保持手段への書込みとを繰り返すように制御する繰返制御手段とを備えてもよい。
According to this configuration, among the branches connected to one node of the a-ary tree, each prime number corresponding to all combinations including the one branch is selected, and a calculation result obtained by performing a power-residue operation with an inverse element of the selected prime number Can be obtained.
Further, the power-residue calculating device further includes a writing means for overwriting the operation value S held in the holding means with the operation result value S ′ calculated by the operation means as the operation value S. For each branch on the path from the root of the a-tree to one leaf, in order from the root to the leaf, the branch acquisition means, the prime number selection means, the calculation means, and the writing means, Acquisition of branch designation information for designating the branch, selection of all prime numbers corresponding to the combination including the designated branch, power-residue calculation based on Equation 1, and the calculation result value S ′ described above Repeating control means for controlling to repeat writing to the holding means may be provided.

この構成によれば、各リーフについて、ルートからリーフに至る経路に対応する一意な演算結果を得ることができる。
前記べき乗剰余演算装置は、更に、前記演算手段により演算された演算結果値S'に可逆演算を施し、可逆演算結果値を得る可逆演算手段と、前記可逆演算手段により演算された可逆演算結果値を、前記保持手段に保持している前記被演算値Sに、前記被演算値Sとして上書きする書込手段と、a分木のルートから1のリーフまでの経路上の各枝について、ルートからリーフへの順序で、前記枝取得手段、前記素数選択手段、前記演算手段、前記可逆演算手段、前記書込手段に対して、それぞれ、当該枝を指定する枝指定情報の取得と、指定された枝を含む組合せに対応する全ての素数の選択と、式1に基づくべき乗剰余演算と、演算結果値S'への可逆演算と、得られた可逆演算結果値の前記保持手段への書込みとを繰り返すように制御する繰返制御手段とを備えてもよい。
According to this configuration, for each leaf, a unique calculation result corresponding to the route from the root to the leaf can be obtained.
The power-residue calculating unit further performs a reversible operation on the operation result value S ′ calculated by the operation unit to obtain a reversible operation result value, and a reversible operation result value calculated by the reversible operation unit. From the root for each branch on the path from the root of the a-ary tree to the leaf of one, and writing means for overwriting the operand value S held in the holding means as the operand value S. In order to the leaf, the branch acquisition means, the prime number selection means, the calculation means, the reversible calculation means, and the writing means, respectively, acquire branch designation information that designates the branch, and are designated Selection of all prime numbers corresponding to combinations including branches, power-residue operation based on Equation 1, reversible operation to operation result value S ′, and writing of the obtained reversible operation result value to the holding means Control to repeat A, and a return control unit.

この構成によれば、定数に可逆演算を行うことにより、a分木における階層毎に演算を区切った演算結果を得ることができる。
前記べき乗剰余演算装置は、前記可逆演算手段が、前記演算手段により演算された演算結果値S'に定数を加算して、可逆演算結果値を得てもよい。
この構成によれば、定数を加算することにより、a分木における階層毎に演算を区切った演算結果を得ることができる。
According to this configuration, by performing a reversible operation on a constant, it is possible to obtain an operation result obtained by dividing the operation for each hierarchy in the a-ary tree.
In the power-residue calculating device, the reversible calculating means may add a constant to the calculation result value S ′ calculated by the calculating means to obtain a reversible calculation result value.
According to this configuration, by adding constants, it is possible to obtain a calculation result obtained by dividing the calculation for each hierarchy in the a-ary tree.

本発明のべき乗剰余演算装置は、自然数である被演算値Tを保持している保持手段と、a分木(aは2以上の自然数)のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の素数を記憶している素数記憶手段と、a分木のルートからいずれかのリーフへの経路上の全枝は無効化されており、前記素数記憶手段に記憶されている(2a−2)個の前記素数から、前記いずれかのノードに接続するa個の枝のうち、無効化されていない枝全てを含む組合せに対応する素数を選出する有効素数選出手段と、
有限体上のべき乗剰余演算
The power-residue calculating device of the present invention includes a holding unit that holds an operand value T that is a natural number, and a branches connected to any node of the a-tree (a is a natural number of 2 or more). For each of all the numbers from 1 to (a-1), combinations for selecting the number of branches are generated, and (2 a -2) corresponding combinations without overlapping any of the generated combinations The prime number storage means for storing the prime numbers of the first and all branches on the path from the root of the a-tree to any leaf are invalidated and stored in the prime number storage means (2 a -2 Effective prime number selection means for selecting a prime number corresponding to a combination including all the branches that are not invalidated from a number of the prime numbers connected to any one of the nodes;
Power-residue operation over a finite field

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記有効素数選出手段により選出された素数である)
を行う演算手段とを備える。
この構成によれば、a分木のいずれかのノードに接続する有効な全枝に対応づけられた素数の逆元に係る演算結果を得ることができる。
Figure 0004638176
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a prime number selected by the effective prime number selection means)
And an arithmetic means for performing.
According to this configuration, it is possible to obtain a calculation result related to the inverse element of the prime number associated with all valid branches connected to any node of the a-ary tree.

また、前記べき乗剰余演算装置は、更に、自然数である被演算値Sを記憶している記憶手段と、被演算値Sを読み出す読出手段と、a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得手段と、前記素数記憶手段に記憶されている(2a−2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選出手段と、有限体上のべき乗剰余演算 The power-residue calculating device further specifies a storage means for storing the operand value S, which is a natural number, a reading means for reading the operand value S, and one of the a branches. A branch acquisition unit that acquires the branch designation information, and a prime number corresponding to a combination including a branch designated by the branch designation information from the (2 a -2) prime numbers stored in the prime number storage unit. Prime number selection means to select all and power-residue calculation on finite field

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記選出手段により選出された全素数の積である)
を行う生成手段と、前記生成手段により演算された演算結果値S'を、前記保持手段に保持している前記被演算値Sに、前記被演算値Sとして上書きする第1書込手段と、a分木のルートから1のノードまでの経路上の各枝について、ルートから前記ノードへの順序で、前記枝取得手段、前記素数選出手段、前記生成手段、前記第1書込手段に対して、それぞれ、当該枝を指定する枝指定情報の取得と、指定された枝を含む組合せに対応する全ての素数の選択と、式3に基づくべき乗剰余演算と、演算された演算結果値S'の前記記憶手段への書込みとを繰り返すように制御する繰返制御手段と、前記繰返制御手段による繰り返し制御の終了後、前記演算結果値S'を、Tとして保持手段に書き込む第2書込手段と、
前記有効素数選出手段、前記演算手段に対して、それぞれ、無効化されていない枝全てを含む組合せに対応する素数の選出と、式2に基づくべき乗剰余演算とを行わせるよう制御する演算制御手段とを備えてもよい。
Figure 0004638176
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and Q is the product of all prime numbers selected by the selection means)
And a first writing unit for overwriting the operation value S ′ calculated by the generation unit over the operation value S held in the holding unit as the operation value S; For each branch on the path from the root of the a-tree to one node, in order from the root to the node, the branch acquisition means, the prime number selection means, the generation means, and the first writing means , Respectively, acquisition of branch designation information for designating the branch, selection of all prime numbers corresponding to the combination including the designated branch, power-residue calculation based on Expression 3, and calculation result value S ′ Repeat control means for controlling to repeat writing to the storage means, and second write means for writing the operation result value S ′ to the holding means as T after completion of the repeat control by the repeat control means. When,
Arithmetic control means for controlling the effective prime number selection means and the calculation means to perform selection of prime numbers corresponding to combinations including all branches that are not invalidated and exponentiation remainder calculation based on Expression 2. And may be provided.

この構成によれば、a分木のルートからリーフに至る経路に対応する各リーフ毎に一意な演算結果を得ることができる。
本発明の演算装置は、a分木(aは2以上の自然数)のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の素数を記憶している素数記憶手段と、a分木のルートからいずれかのリーフへの経路上の全枝は無効化されており、1のノードに接続するa個の枝のうち(a−1)個以下の無効化された枝を選出する無効枝選出手段と、前記ノードに接続するa個の前記枝から、無効化されていない1の枝を選出する有効枝選出手段と、前記素数記憶手段が記憶する素数のうち、選択した前記無効化されていない枝と、前記無効化された枝の少なくとも1つとを含む全組合せのそれぞれに対応する素数を示す指示情報を再生装置へと配布する指示情報配布手段とを備える。
According to this configuration, a unique calculation result can be obtained for each leaf corresponding to the route from the root of the a-tree to the leaf.
The arithmetic device according to the present invention provides the number of all the numbers from 1 to (a-1) from a branch connected to any node of a tree (a is a natural number of 2 or more). A combination for selecting a branch of the prime number, a prime number storage means for storing the corresponding (2 a -2) prime numbers without overlapping any one of the generated combinations, and a root of the a-ary tree All branches on the path to any leaf are invalidated, and invalid branch selection means for selecting (a-1) or less invalid branches among a branches connected to one node. The valid branch selecting means for selecting one branch that has not been invalidated from the a number of branches connected to the node, and the prime number stored in the prime number storage means that has not been invalidated. That of all combinations including a branch and at least one of said disabled branches Comprises instruction information indicating prime corresponding to Les to reproducing apparatus and an instruction information distribution unit for distributing.

この構成によれば、有効な枝に対応する再生装置のみ、コンテンツを復号させるための鍵無効化情報を生成し、配布することができる。
また、前記演算装置は、前記指示情報配布手段が前記指示情報を通信により配布する通信手段を備えてもよい。
この構成によれば、再生装置に対し、有効な枝に対応する再生装置のみコンテンツを復号させるための鍵無効化情報を、通信を介して配布することができる。
According to this configuration, only the playback device corresponding to the valid branch can generate and distribute key revocation information for decrypting the content.
In addition, the arithmetic device may include a communication unit that distributes the instruction information through communication by the instruction information distribution unit.
According to this configuration, the key revocation information for decrypting the content only to the playback device corresponding to the valid branch can be distributed to the playback device via communication.

前記演算装置は、前記指示情報配布手段が、前記指示情報を記録媒体に書き込む媒体書込手段を備えてもよい。
この構成によれば、再生装置に対し、有効な枝に対応する再生装置のみコンテンツを復号させるための鍵無効化情報を、記録媒体を介して配布することができる。
本発明のべき乗剰余演算装置は、自然数である被演算数S'を保持している保持手段と、a分木のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の前記素数を記憶している素数記憶手段と、前記素数記憶手段が記憶している素数のうち、1個以上の素数を指定する指定情報を取得する取得手段と、有限体上のべき乗剰余演算
In the arithmetic device, the instruction information distribution unit may include a medium writing unit that writes the instruction information on a recording medium.
According to this configuration, it is possible to distribute the key revocation information for decrypting the content only to the playback device corresponding to the valid branch to the playback device via the recording medium.
The power-residue arithmetic unit according to the present invention includes one or more (a-1) from the holding means that holds the operand S ′ that is a natural number and a branch connected to any node of the a-ary tree. For each of the following numbers, a combination that selects the branch of the number is generated, and the corresponding (2 a -2) prime numbers are stored without overlapping any of the generated combinations. A prime number storage means, an acquisition means for acquiring one or more prime numbers among the prime numbers stored in the prime number storage means, and a power-residue operation on a finite field

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記指定情報により指定された素数全ての積)
を行う演算手段とを備える。
この構成によれば、指定された1個以上の素数の積の逆元を用いたべき乗剰余演算結果を得ることができる。
Figure 0004638176
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is the product of all the prime numbers specified by the specification information)
And an arithmetic means for performing.
According to this configuration, it is possible to obtain a power-residue calculation result using the inverse element of the product of one or more specified prime numbers.

特に、前記べき乗剰余演算装置は、前記べき乗剰余演算結果を第1の鍵とし、当該第1の鍵から第2の鍵を生成するシステムに対し有効であり、予め保持する当該第1の鍵に対し、所定の素数のうち指定された素数を除いた素数を用いべき乗剰余演算を行い、第2の鍵を得ることができるが、予め保持する第1の鍵が、前記1の素数の逆元でべき乗剰余演算されたものでない場合、前記第2の鍵を得ることは、計算量的に困難であり、前記第1の鍵の内容と、前記指定する素数とに応じて、前記第2の鍵を生成できるか否かを制御することができる。   In particular, the power-residue computing device is effective for a system that uses the power-residue computation result as a first key and generates a second key from the first key. On the other hand, it is possible to obtain a second key by performing a modular exponentiation using a prime number excluding a designated prime number among predetermined prime numbers, and the first key held in advance is an inverse element of the first prime number. When the power-residue calculation is not performed, it is difficult to obtain the second key in terms of the amount of calculation, and the second key depends on the content of the first key and the specified prime number. It is possible to control whether or not a key can be generated.

また、前記べき乗剰余演算装置は、更に、
自然数である被演算値Sを記憶している記憶手段と、被演算値Sを読み出す読出手段と、a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得手段と、前記素数記憶手段に記憶されている(2a−2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選択手段と、有限体上のべき乗剰余演算
Further, the power residue calculation device further includes:
Storage means for storing the operand value S that is a natural number; read means for reading the operand value S; and branch acquisition means for acquiring branch designation information that designates one of the a branches. Prime number selection means for selecting all prime numbers corresponding to combinations including the branch specified by the branch specification information from (2 a -2) prime numbers stored in the prime number storage means; Exponentiation operation

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記選出手段により選出された全素数の積)
を行う生成手段と、前記生成手段により演算された演算結果値Rを、前記保持手段に保持している前記被演算値Sに、前記被演算値Sとして上書きする第1書込手段と、a分木の1のリーフから1のノードまでの経路上の各枝について、前記リーフから前記ノードへの順序で、前記枝取得手段、前記素数選出手段、前記生成手段、前記第1書込手段に対して、それぞれ、当該枝を指定する枝指定情報の取得と、指定された枝を含む組合せに対応する全ての素数の選択と、式5に基づくべき乗剰余演算と、演算された演算結果値Rの前記記憶手段への書込みとを繰り返すように制御する繰返制御手段と、前記繰返制御手段による繰り返し制御の終了後、前記演算結果値Rを、S'として保持手段に書き込む第2書込手段と、前記取得手段、前記演算手段に対して、それぞれ、前記指定情報の取得と、式4に基づくべき乗剰余演算とを行わせるよう制御する演算制御手段とを備えてもよい。
Figure 0004638176
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and P is the product of all prime numbers selected by the selection means)
A first writing means for overwriting the calculated value S calculated by the generating means over the calculated value S held in the holding means as the calculated value S; a For each branch on the path from one leaf to one node of the branch tree, in the order from the leaf to the node, the branch acquisition means, the prime number selection means, the generation means, and the first writing means On the other hand, acquisition of branch designation information for designating the branch, selection of all prime numbers corresponding to the combination including the designated branch, power-residue computation based on Expression 5, and computed computation result value R Repetitive control means for controlling to repeat the writing to the storage means, and after completion of the repetitive control by the repetitive control means, the second write for writing the operation result value R to the holding means as S ′ Means, said acquisition means, and said performance You may provide the calculation control means which controls a calculation means to perform acquisition of the said designation | designated information, and the power-residue calculation based on Formula 4, respectively.

この構成によれば、a分木の階層に応じたべき乗剰余演算を行うべき乗剰余演算装置を実現できる。
本発明のべき乗剰余演算装置は、前記べき乗剰余演算装置による演算結果S'に対し、演算を行う演算装置であって、前記S'を保持する保持手段と、(2a−2)個(aは2以上の自然数)の相異なる素数から、
According to this configuration, it is possible to realize a modular exponentiation operation device that performs a modular exponentiation operation according to the hierarchy of the a-ary tree.
The power-residue computing device of the present invention is a computing device that performs a computation on the computation result S ′ by the power-residue computing device, the holding means for holding the S ′, and (2 a −2) (a Is a natural number of 2 or more)

Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出手段と、有限体上のべき乗剰余演算
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
Selection means for selecting the number of primes indicated by, and power-residue calculation over a finite field

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記選出手段により選出された全素数の積)
を行う演算手段とを備えることを特徴とする。
この構成によれば、元になる数に対し素数の逆元によるべき乗剰余演算によって生成された被演算数から、前記元になる数を生成することができる。
本発明の記録媒体は、前記演算装置により配布された前記指示情報を記録する。
Figure 0004638176
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and Q is the product of all prime numbers selected by the selection means)
And an arithmetic means for performing the above.
According to this configuration, the original number can be generated from the operands generated by the power-residue operation by the inverse element of the prime number with respect to the original number.
The recording medium of the present invention records the instruction information distributed by the arithmetic device.

この構成によれば、記録した情報により、再生装置を無効化できる。
本発明の鍵管理装置は、再生装置においてコンテンツの復号に用いられる鍵を管理する鍵管理装置であって、前記べき乗剰余演算装置を含む。
この構成によれば、コンテンツの復号に用いられるデバイス鍵を生成する、べき乗剰余演算装置を含む鍵管理装置を実現できる。
According to this configuration, the playback device can be invalidated based on the recorded information.
A key management apparatus according to the present invention is a key management apparatus that manages a key used for decrypting content in a playback apparatus, and includes the power residue calculation apparatus.
According to this configuration, it is possible to realize a key management device including a power residue calculation device that generates a device key used for content decryption.

本発明の鍵管理装置は、再生装置においてコンテンツの復号に用いられる鍵を管理する鍵管理装置であって、前記べき乗剰余演算装置を含むことを特徴とする。
この構成によれば、復号鍵を生成する、べき乗剰余演算装置を含む鍵管理装置を実現できる。
本発明の鍵管理装置は、再生装置においてコンテンツの復号に用いられる鍵を管理する鍵管理装置であって、前記べき乗剰余演算装置を含む。
A key management apparatus according to the present invention is a key management apparatus that manages a key used for decrypting content in a playback apparatus, and includes the power-residue calculating apparatus.
According to this configuration, it is possible to realize a key management device including a power residue calculation device that generates a decryption key.
A key management apparatus according to the present invention is a key management apparatus that manages a key used for decrypting content in a playback apparatus, and includes the power residue calculation apparatus.

この構成によれば、鍵無効化データを生成する、べき乗剰余演算装置を含む鍵管理装置を実現できる。
本発明の再生装置は、コンテンツを復号再生する再生装置であって、前記べき乗剰余演算装置を含む。
この構成によれば、デバイス鍵から復号鍵を生成する、べき乗剰余演算装置を含み、当該復号鍵を用いて暗号化されたコンテンツを復号する再生装置を構成できる。
According to this configuration, it is possible to realize a key management device including a power residue calculation device that generates key revocation data.
The playback device according to the present invention is a playback device that decodes and plays back content, and includes the power residue calculation device.
According to this configuration, it is possible to configure a playback device that includes a power residue calculation device that generates a decryption key from a device key and decrypts content encrypted using the decryption key.

本発明の記録装置は、コンテンツを記録する記録装置であって、前記のべき乗剰余演算装置を含む。
この構成によれば、デバイス鍵から復号鍵を生成するべき乗剰余演算装置を含み、当該復号鍵によりコンテンツを暗号化する記録装置を実現できる。
本発明のべき乗剰余演算方法は、自然数である被演算値Sを保持している保持手段と、読出手段と、選出手段と、演算手段とから成るべき乗剰余演算装置による、べき乗剰余演算方法であって、前記読出手段により、被演算値Sを読み出す読出ステップと、前記選出手段により、(2a−2)個(aは2以上の自然数)の相異なる素数から、
The recording apparatus of the present invention is a recording apparatus for recording content, and includes the power residue calculation apparatus.
According to this configuration, it is possible to realize a recording apparatus that includes a modular multiplication apparatus that should generate a decryption key from a device key and encrypts content using the decryption key.
The power-residue calculation method according to the present invention is a power-residue calculation method by a modular-residue calculation device that includes a holding unit that holds an operand value S that is a natural number, a reading unit, a selection unit, and a calculation unit. From the reading step of reading the operand value S by the reading means and the selecting means from (2 a -2) different prime numbers (a is a natural number of 2 or more),

Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出ステップと、前記演算手段により、有限体上のべき乗剰余演算
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
And a power-residue operation on a finite field by the selecting means for selecting the number of primes indicated by

Figure 0004638176
(Nは素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記選出手段により選出された全素数の積)
を行う演算ステップとを含む。
この構成によれば、選出手段が選出する素数により異なる、べき乗剰余演算結果を得ることができる。
Figure 0004638176
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and P is the product of all prime numbers selected by the selection means)
And a calculation step.
According to this configuration, it is possible to obtain a power residue calculation result that varies depending on the prime number selected by the selection means.

特に、前記べき乗剰余演算装置は、前記べき乗剰余演算結果を第1の鍵とし、当該第1の鍵から第2の鍵を生成するシステムに対し有効であり、1の前記べき乗剰余演算結果を第1の鍵とし、当該第1の鍵に対し、前記べき乗剰余演算に用いた複数の素数のうち1の素数を除いた全ての素数で、更にべき乗剰余演算を行い、保持手段に保持する被演算数に前記1の素数の逆元でべき乗剰余演算した数である第2の鍵を得ることができるが、前記1の素数の逆元でべき乗剰余演算されていないべき乗剰余演算結果からは、前記第2の鍵を得ることは、計算量的に困難であることから、第2の鍵を暗号、復号に用いれば、前記1の素数としていずれを選択するかにより、1のべき乗剰余演算結果から、前記第2の鍵を生成できるか否かを制御することができる。
本発明のべき乗剰余演算方法は、自然数である被演算値Tを保持している保持手段と、a分木(aは2以上の自然数)のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の素数を記憶している素数記憶手段と、有効素数選出手段と、演算手段とから成るべき乗剰余演算装置による、べき乗剰余演算方法であって、
前記有効素数選出手段により、a分木のルートからいずれかのリーフへの経路上の全枝は無効化されており、前記素数記憶手段に記憶されている(2a−2)個の前記素数から、前記いずれかのノードに接続するa個の枝のうち、無効化されていない枝全てを含む組合せに対応する素数を選出する有効素数選出ステップと、
前記演算手段により、有限体上のべき乗剰余演算
In particular, the power residue calculation apparatus is effective for a system that uses the power residue calculation result as a first key and generates a second key from the first key. An operation to be performed in the holding means by performing a power-residue operation on all the prime numbers excluding one prime number among the plurality of prime numbers used for the power-residue operation as a key of 1. A second key that is a number obtained by performing a power-residue operation on the inverse of the prime number of the 1 can be obtained, but from a power-residue operation result that is not a power-residue operation on the inverse of the prime number of the 1 Since obtaining the second key is difficult in terms of computational complexity, if the second key is used for encryption and decryption, depending on which one is selected as the prime number of 1, the power residue calculation result of 1 Control whether the second key can be generated Door can be.
The power-residue calculation method according to the present invention includes a holding unit that holds an operand value T that is a natural number, and a branches that are connected to any node of a branch tree (a is a natural number of 2 or more). For each of all the numbers from 1 to (a-1), combinations for selecting the number of branches are generated, and (2 a -2) corresponding combinations without overlapping any of the generated combinations A modular exponentiation method by a modular exponentiation unit that should consist of a prime number storage means for storing the prime numbers of, an effective prime number selection means, and a calculation means,
All the branches on the route from the root of the a-tree to any one of the leaves are invalidated by the effective prime number selection means, and (2 a -2) number of the prime numbers stored in the prime number storage means From the a number of branches connected to any one of the nodes, an effective prime number selection step of selecting a prime number corresponding to a combination including all the branches that are not invalidated;
A power residue calculation on a finite field by the calculation means

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記有効素数選出手段により選出された素数である)
を行う演算ステップとを含む。
この構成によれば、a分木のいずれかのノードに接続する有効な全枝に対応づけられた素数の逆元に係る演算結果を得ることができる。
Figure 0004638176
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a prime number selected by the effective prime number selection means)
And a calculation step.
According to this configuration, it is possible to obtain a calculation result related to the inverse element of the prime number associated with all valid branches connected to any node of the a-ary tree.

本発明の演算方法は、a分木(aは2以上の自然数)のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の素数を記憶している素数記憶手段と、無効枝選出手段と、有効枝選出手段と、指示情報配布手段とから成る演算装置による、演算方法であって、前記無効枝選出手段により、a分木のルートからいずれかのリーフへの経路上の全枝は無効化されており、1のノードに接続するa個の枝のうち(a−1)個以下の無効化された枝を選出する無効枝選出ステップと、前記有効枝選出手段により、前記ノードに接続するa個の前記枝から、無効化されていない1の枝を選出する有効枝選出ステップと、前記指示情報配布手段により、前記素数記憶手段が記憶する素数のうち、選択した前記無効化されていない枝と、前記無効化された枝の少なくとも1つとを含む全組合せのそれぞれに対応する素数を示す指示情報を再生装置へと配布する指示情報配布ステップとを含む。 The calculation method according to the present invention is such that, for each of all numbers from 1 to (a-1) from a branch connected to any node of a tree (a is a natural number of 2 or more), A combination that selects the branches of the generated number, a prime number storage unit that stores the corresponding (2 a -2) prime numbers without overlapping any of the generated combinations, an invalid branch selection unit, An arithmetic method by an arithmetic unit comprising valid branch selection means and instruction information distribution means, wherein all branches on the path from the root of the a-tree to any leaf are invalidated by the invalid branch selection means. The invalid branch selection step of selecting (a-1) or less invalid branches out of a branches connected to one node, and the valid branch selection means connects to the node. Select one branch that has not been invalidated from the a branches All combinations including the selected non-invalidated branch and the invalidated branch among the prime numbers stored by the prime number storage unit by the instruction information distributing unit. Including an instruction information distribution step of distributing instruction information indicating a prime number corresponding to each of the reproduction information to the playback device.

この構成によれば、有効な枝に対応する再生装置のみ、コンテンツを復号させるための鍵無効化情報を生成し、配布することができる。
本発明のべき乗剰余演算方法は、自然数である被演算数S'を保持している保持手段と、a分木のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の前記素数を記憶している素数記憶手段と、取得手段と、演算手段とから成るべき乗剰余演算装置による、べき乗剰余演算方法であって、前記取得手段により、前記素数記憶手段が記憶している素数のうち、1個以上の素数を指定する指定情報を取得する取得ステップと、前記演算手段により、有限体上のべき乗剰余演算
According to this configuration, only the playback device corresponding to the valid branch can generate and distribute key revocation information for decrypting the content.
The power-residue calculation method according to the present invention includes one or more (a-1) from a holding unit that holds the operand S ′ that is a natural number and a branches connected to any node of the a-ary tree. For each of the following numbers, a combination that selects the branch of the number is generated, and the corresponding (2 a -2) prime numbers are stored without overlapping any of the generated combinations. A modular exponentiation operation method using a modular exponentiation apparatus that is composed of a prime number storage means, an acquisition means, and a calculation means, wherein one or more of the prime numbers stored in the prime number storage means by the acquisition means An acquisition step of acquiring specification information for specifying a prime number of the power, and a power-residue calculation on a finite field by the calculation means

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記指定情報により指定された素数全ての積)
を行う演算ステップとを含む。
この構成によれば、指定された1個以上の素数の積の逆元を用いたべき乗剰余演算結果を得ることができる。
本発明のべき乗剰余演算方法は、請求項2に記載のべき乗剰余演算装置による演算結果S'に対し演算を行う、前記S'を保持する保持手段と、選出手段と、演算手段とから成るべき乗剰余演算装置によるべき乗剰余演算方法であって、前記選出手段により、(2a−2)個(aは2以上の自然数)の相異なる素数から、
Figure 0004638176
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is the product of all the prime numbers specified by the specification information)
And a calculation step.
According to this configuration, it is possible to obtain a power-residue calculation result using the inverse element of the product of one or more specified prime numbers.
The power-residue calculation method of the present invention is a power to be formed of a holding means for holding the S ′, a selection means, and a calculation means for performing an operation on the calculation result S ′ by the power-residue calculating device according to claim 2. A power-residue calculation method by a remainder calculation device, wherein the selection means (2 a -2) (a is a natural number of 2 or more) different prime numbers,

Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出ステップと、前記演算手段により、有限体上のべき乗剰余演算
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
And a power-residue operation on a finite field by the selecting means for selecting the number of primes indicated by

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記選出手段により選出された全素数の積)
を行う演算ステップとを含む。
この構成によれば、元になる数に対し素数の逆元によるべき乗剰余演算によって生成された被演算数から、前記元になる数を生成することができる。
本発明のプログラムは、自然数である被演算値Sを保持している保持手段と、読出手段と、選出手段と、演算手段とから成るべき乗剰余演算装置に適用されるプログラムであって、前記読出手段により、被演算値Sを読み出す読出ステップと、
前記選出手段により、(2a−2)個(aは2以上の自然数)の相異なる素数から、
Figure 0004638176
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and Q is the product of all prime numbers selected by the selection means)
And a calculation step.
According to this configuration, the original number can be generated from the operands generated by the power-residue operation by the inverse element of the prime number with respect to the original number.
A program according to the present invention is a program applied to a modular exponentiation operation device that includes a holding unit that holds an operand value S that is a natural number, a reading unit, a selection unit, and a calculation unit, A reading step for reading the operand value S by means;
By the selecting means, from (2 a -2) different prime numbers (a is a natural number of 2 or more),

Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出ステップと、前記演算手段により、有限体上のべき乗剰余演算
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
And a power-residue operation on a finite field by the selecting means for selecting the number of primes indicated by

Figure 0004638176
(Nは素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記選出手段により選出された全素数の積)
を行う演算ステップとの各ステップをコンピュータに実行させる。
この構成によれば、選出手段が選出する素数により異なる、べき乗剰余演算結果を得ることができる。
Figure 0004638176
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and P is the product of all prime numbers selected by the selection means)
The computer is caused to execute each step including the calculation step.
According to this configuration, it is possible to obtain a power residue calculation result that varies depending on the prime number selected by the selection means.

特に、前記べき乗剰余演算装置は、前記べき乗剰余演算結果を第1の鍵とし、当該第1の鍵から第2の鍵を生成するシステムに対し有効であり、1の前記べき乗剰余演算結果を第1の鍵とし、当該第1の鍵に対し、前記べき乗剰余演算に用いた複数の素数のうち1の素数を除いた全ての素数で、更にべき乗剰余演算を行い、保持手段に保持する被演算数に前記1の素数の逆元でべき乗剰余演算した数である第2の鍵を得ることができるが、前記1の素数の逆元でべき乗剰余演算されていないべき乗剰余演算結果からは、前記第2の鍵を得ることは、計算量的に困難であることから、第2の鍵を暗号、復号に用いれば、前記1の素数としていずれを選択するかにより、1のべき乗剰余演算結果から、前記第2の鍵を生成できるか否かを制御することができる。
本発明のプログラムは、自然数である被演算値Tを保持している保持手段と、a分木(aは2以上の自然数)のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の素数を記憶している素数記憶手段と、有効素数選出手段と、演算手段とから成るべき乗剰余演算装置に適用されるプログラムであって、前記有効素数選出手段により、a分木のルートからいずれかのリーフへの経路上の全枝は無効化されており、前記素数記憶手段に記憶されている(2a−2)個の前記素数から、前記いずれかのノードに接続するa個の枝のうち、無効化されていない枝全てを含む組合せに対応する素数を選出する有効素数選出ステップと、前記演算手段により、有限体上のべき乗剰余演算
In particular, the power residue calculation apparatus is effective for a system that uses the power residue calculation result as a first key and generates a second key from the first key. An operation to be performed in the holding means by performing a power-residue operation on all the prime numbers excluding one prime number among the plurality of prime numbers used for the power-residue operation as a key of 1. A second key that is a number obtained by performing a power-residue operation on the inverse of the prime number of the 1 can be obtained, but from a power-residue operation result that is not a power-residue operation on the inverse of the prime number of the 1 Since obtaining the second key is difficult in terms of computational complexity, if the second key is used for encryption and decryption, depending on which one is selected as the prime number of 1, the power residue calculation result of 1 Control whether the second key can be generated Door can be.
The program according to the present invention includes one or more (a or more) branching units connected to any node of the a-tree (a is a natural number of 2 or more) and holding means that holds an operand value T that is a natural number. a-1) For each of all the following numbers, a combination for selecting the branch of the number is generated, and the corresponding (2 a -2) prime numbers without overlapping any of the generated combinations A program applied to a modular exponentiation computing device to be composed of stored prime number storage means, effective prime number selection means, and calculation means, wherein any leaf from the root of the a-ary tree is selected by the effective prime number selection means. All branches on the route to the path are invalidated, and from (2 a -2) prime numbers stored in the prime number storage means, out of a branches connected to any one of the nodes, Pairs containing all uninvalid branches An effective prime selection step of selecting a prime number, by the computing means, modular exponentiation operation over a finite field

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記有効素数選出手段により選出された素数である)
を行う演算ステップとの各ステップをコンピュータに実行させる。
この構成によれば、a分木のいずれかのノードに接続する有効な全枝に対応づけられた素数の逆元に係る演算結果を得ることができる。
本発明のプログラムは、a分木(aは2以上の自然数)のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の素数を記憶している素数記憶手段と、無効枝選出手段と、有効枝選出手段と、指示情報配布手段とから成る演算装置に適用されるプログラムであって、前記無効枝選出手段により、a分木のルートからいずれかのリーフへの経路上の全枝は無効化されており、1のノードに接続するa個の枝のうち(a−1)個以下の無効化された枝を選出する無効枝選出ステップと、
前記有効枝選出手段により、前記ノードに接続するa個の前記枝から、無効化されていない1の枝を選出する有効枝選出ステップと、前記指示情報配布手段により、前記素数記憶手段が記憶する素数のうち、選択した前記無効化されていない枝と、前記無効化された枝の少なくとも1つとを含む全組合せのそれぞれに対応する素数を示す指示情報を再生装置へと配布する指示情報配布ステップとの各ステップをコンピュータに実行させる。
Figure 0004638176
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a prime number selected by the effective prime number selection means)
The computer is caused to execute each step including the calculation step.
According to this configuration, it is possible to obtain a calculation result related to the inverse element of the prime number associated with all valid branches connected to any node of the a-ary tree.
The program of the present invention calculates the number of all the numbers from 1 to (a-1) from a branch connected to any node of a branch tree (a is a natural number of 2 or more). A combination for selecting a branch is generated, and a prime number storage unit storing invalid (2 a -2) prime numbers corresponding to any of the generated combinations, an invalid branch selection unit, and a valid A program applied to an arithmetic unit comprising branch selection means and instruction information distribution means, wherein all branches on the route from the root of the a-tree to any leaf are invalidated by the invalid branch selection means. An invalid branch selection step of selecting (a-1) or less invalid branches out of a branches connected to one node;
The effective branch selection means selects one branch that has not been invalidated from the a branches connected to the node, and the instruction information distribution means stores the prime number storage means. Distributing instruction information indicating a prime number corresponding to each of all combinations including the selected non-invalidated branch and at least one of the invalidated branches among the prime numbers to the playback device And let the computer execute each step.

この構成によれば、有効な枝に対応する再生装置のみ、コンテンツを復号させるための鍵無効化情報を生成し、配布することができる。
本発明のプログラムは、自然数である被演算数S'を保持している保持手段と、a分木のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の前記素数を記憶している素数記憶手段と、取得手段と、演算手段とから成るべき乗剰余演算装置に適用されるプログラムであって、前記取得手段により、前記素数記憶手段が記憶している素数のうち、1個以上の素数を指定する指定情報を取得する取得ステップと、前記演算手段により、有限体上のべき乗剰余演算
According to this configuration, only the playback device corresponding to the valid branch can generate and distribute key revocation information for decrypting the content.
The program according to the present invention includes all of one or more and (a-1) or less from the holding means that holds the operand S ′ that is a natural number and a branch connected to any node of the a-ary tree. For each of the numbers, a combination that selects the branch of the number is generated, and a prime number storage that stores the corresponding (2 a -2) prime numbers without overlapping any of the generated combinations Means for calculating a modular exponentiation apparatus to be comprised of a means, an acquisition means, and an arithmetic means, wherein the acquisition means designates one or more prime numbers among the prime numbers stored in the prime number storage means An acquisition step of acquiring designation information to be performed, and a power residue calculation on a finite field by the calculation means

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記指定情報により指定された素数全ての積)
を行う演算ステップとの各ステップをコンピュータに実行させる。
この構成によれば、指定された1個以上の素数の積の逆元を用いたべき乗剰余演算結果を得ることができる。
本発明のプログラムは、前記べき乗剰余演算装置による演算結果S'に対し演算を行う、前記S'を保持する保持手段と、選出手段と、演算手段とから成るべき乗剰余演算装置に適用されるプログラムであって、前記選出手段により、(2a−2)個(aは2以上の自然数)の相異なる素数から、
Figure 0004638176
Figure 0004638176
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is the product of all the prime numbers specified by the specification information)
The computer is caused to execute each step including the calculation step.
According to this configuration, it is possible to obtain a power-residue calculation result using the inverse element of the product of one or more specified prime numbers.
The program of the present invention is a program applied to a modular exponentiation apparatus to be composed of holding means for holding S ′, selection means, and arithmetic means for performing computation on the computation result S ′ by the modular exponentiation arithmetic apparatus. From the different prime numbers (2 a -2) (a is a natural number of 2 or more) by the selection means,
Figure 0004638176

(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出ステップと、前記演算手段により、有限体上のべき乗剰余演算
(M is a variable and takes a natural number from 1 to (a-1))
And a power-residue operation on a finite field by the selecting means for selecting the number of primes indicated by

Figure 0004638176
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記選出手段により選出された全素数の積)
を行う演算ステップとの各ステップをコンピュータに実行させる。
この構成によれば、元になる数に対し素数の逆元によるべき乗剰余演算によって生成された被演算数から、前記元になる数を生成することができる。
Figure 0004638176
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and Q is the product of all prime numbers selected by the selection means)
The computer is caused to execute each step including the calculation step.
According to this configuration, the original number can be generated from the operands generated by the power-residue operation by the inverse element of the prime number with respect to the original number.

以下、図面を使って、本発明の実施の形態を説明する。
本発明の著作権保護システムは、鍵が暴露されるなどしてコンテンツの著作権の保護が不可能となった不正な再生装置によって著作権を保護すべきコンテンツが正常に再生されるのを防ぐことにより前記コンテンツの著作権を保護するシステムである。
まず、本発明の一実施形態である著作権保護システムの構成の概略について述べる。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
The copyright protection system of the present invention prevents the content that should be protected from copyright from being played normally by an unauthorized playback device that has become unable to protect the copyright of the content because the key has been exposed. This is a system for protecting the copyright of the content.
First, an outline of the configuration of a copyright protection system according to an embodiment of the present invention will be described.

図1は、前記著作権保護システムの構成の概略を示す図である。
前記著作権保護システムは、図1に示すように、鍵管理装置100、記録装置110、記録媒体120、再生装置130、130a、・・・、130bから成る。
鍵管理装置100は、再生装置130、130a、・・・130b等を販売、管理する会社により運用され、ネットワークに接続しているサーバであり、再生装置毎に一意なデバイス鍵を生成し、対応する再生装置に送信すると共に、生成した全デバイス鍵を記録装置110にも送信する。
FIG. 1 is a diagram showing an outline of the configuration of the copyright protection system.
As shown in FIG. 1, the copyright protection system includes a key management device 100, a recording device 110, a recording medium 120, and playback devices 130, 130a,.
The key management device 100 is a server connected to a network that is operated by a company that sells and manages the playback devices 130, 130a,... 130b, etc., and generates a unique device key for each playback device. The generated device key is also transmitted to the recording device 110.

前記会社は、コンテンツを記録するための記録媒体120の製造も行っており、
鍵管理装置100は、前記各再生装置の中で、デバイス鍵が暴露されるなど、著作権保護が不可能となった特定の再生装置が、著作権保護のため暗号化したコンテンツを復号するのを妨げるためのデータである鍵無効化データを記録媒体120に記録する。前記鍵無効化データが書き込まれた記録媒体120に、暗号化コンテンツを記録した場合、前記特定の再生装置では、前記暗号化コンテンツの復号が不可能となる。
The company also manufactures a recording medium 120 for recording content,
The key management device 100 decrypts the content encrypted for copyright protection by a specific playback device that has become unable to protect the copyright, such as the device key being exposed among the playback devices. The key revocation data, which is data for preventing the above, is recorded on the recording medium 120. When encrypted content is recorded on the recording medium 120 in which the key revocation data is written, the specific playback device cannot decrypt the encrypted content.

記録装置110は、著作権を保護すべきコンテンツを暗号化し、鍵管理装置100により前記鍵無効化データ等の各種情報が書き込まれた記録媒体120に記録する。
再生装置130、130a、130b・・・は、記録媒体120が挿入されると、記録媒体120に記録された情報と、保持しているデバイス鍵とを用いて所定の処理を行い、当該処理の結果、前記コンテンツを復号するための鍵の復号に成功した場合に、当該獲得した鍵を用いてコンテンツを復号して、再生する。
The recording device 110 encrypts the content whose copyright is to be protected, and records it on the recording medium 120 in which various information such as the key revocation data is written by the key management device 100.
When the recording medium 120 is inserted, the playback devices 130, 130a, 130b,... Perform predetermined processing using the information recorded on the recording medium 120 and the device key that is held. As a result, when the key for decrypting the content is successfully decrypted, the content is decrypted using the acquired key and reproduced.

本実施形態においては、記録装置と、再生装置とを別構成としているが、記録装置の記録機能と再生装置の再生機能とを合わせて、コンテンツの記録及び再生が可能な記録再生装置を構成してもよい。
前記著作権保護システムにおける情報の暗号化、復号には、デバイス鍵、暗号鍵(及び当該暗号鍵と同一の復号鍵)、メディア鍵、コンテンツ鍵の4種類が用いられる。
In the present embodiment, the recording device and the playback device are configured separately, but the recording function of the recording device and the playback function of the playback device are combined to form a recording / playback device capable of recording and playing back content. May be.
For encryption and decryption of information in the copyright protection system, four types of device key, encryption key (and the same decryption key as the encryption key), media key, and content key are used.

デバイス鍵は、前述の通り、再生装置、記録装置毎に一意な鍵であり、鍵管理装置100により生成され、各再生装置、記録装置に配布される。
復号鍵は、前述の通り、暗号鍵と同一であって、メディア鍵を暗号化し、暗号化メディア鍵を復号するための鍵であり、鍵管理装置100が生成する。無効化されていない有効な再生装置及び記録装置は、前記鍵無効化データとデバイス鍵とを用い所定の処理を行うことにより、復号鍵を生成することができるようになっている。
As described above, the device key is a unique key for each playback device and recording device, and is generated by the key management device 100 and distributed to each playback device and recording device.
As described above, the decryption key is the same as the encryption key, is a key for encrypting the media key and decrypting the encrypted media key, and is generated by the key management apparatus 100. A valid playback device and recording device that has not been revoked can generate a decryption key by performing predetermined processing using the key revocation data and the device key.

メディア鍵は、コンテンツ鍵を暗号化及び復号するための鍵であり、鍵管理装置100が保持しており、鍵管理装置100により、復号鍵を用いて暗号化され、記録媒体120に記録される。
コンテンツ鍵は、コンテンツの暗号化及び復号に用いられる鍵であり、記録装置110が保持しており、記録装置110により、メディア鍵を用いて暗号化されて、記録媒体120に記録される。
The media key is a key for encrypting and decrypting the content key, held by the key management apparatus 100, encrypted by the key management apparatus 100 using the decryption key, and recorded on the recording medium 120. .
The content key is a key used for encrypting and decrypting content, and is held by the recording device 110. The content key is encrypted by the recording device 110 using the media key and recorded on the recording medium 120.

次に、前記著作権保護システム全体の動作について述べる。
図2は、前記著作権保護システム全体の動作を示すフローチャートである。
図2のS101からS107は、鍵管理装置100による処理であり、S108からS111は、記録装置110による処理であり、S112からS117は、再生装置130による処理である。
Next, the overall operation of the copyright protection system will be described.
FIG. 2 is a flowchart showing the overall operation of the copyright protection system.
2 are processing by the key management apparatus 100, S108 to S111 are processing by the recording apparatus 110, and S112 to S117 are processing by the reproducing apparatus 130.

鍵管理装置100は、素数表を生成する(S101)。
前記素数表には、鍵管理装置100が、デバイス鍵の生成に用いるための素数が示される。
鍵管理装置100は、前記素数表を用い、各再生装置に対応するデバイス鍵を生成し(S102)、対応する再生装置及び記録装置に対して配布する(S103)。
The key management apparatus 100 generates a prime number table (S101).
The prime number table shows prime numbers that the key management apparatus 100 uses for generating a device key.
The key management device 100 generates a device key corresponding to each playback device using the prime table (S102), and distributes it to the corresponding playback device and recording device (S103).

鍵管理装置100は、復号鍵を生成し(S104)、更に、鍵無効化データを生成する(S105)。
鍵無効化データには、無効化されていない再生装置のみに復号鍵を生成させるための情報が含まれる。また、S104において生成される復号鍵の数は、無効化される再生装置の数に応じて変わる。
The key management device 100 generates a decryption key (S104), and further generates key revocation data (S105).
The key revocation data includes information for causing only a playback device that has not been revoked to generate a decryption key. Further, the number of decryption keys generated in S104 varies depending on the number of playback devices to be invalidated.

鍵管理装置100は、S104で生成したそれぞれの復号鍵と同一の暗号鍵で、メディア鍵を暗号化し(S106)、暗号化メディア鍵を含めた鍵無効化データを記録媒体120に書き込む(S107)。
記録装置110は、鍵管理装置100から取得したデバイス鍵と、記録媒体120に記録されている鍵無効化データを用いて、復号鍵を生成する(S108)。
The key management apparatus 100 encrypts the media key with the same encryption key as each decryption key generated in S104 (S106), and writes the key revocation data including the encrypted media key to the recording medium 120 (S107). .
The recording device 110 generates a decryption key using the device key acquired from the key management device 100 and the key revocation data recorded on the recording medium 120 (S108).

記録装置110は、鍵無効化データから暗号化メディア鍵を抜き出し、S108において生成した復号鍵で復号し、メディア鍵を得る(S109)。
記録装置110は、コンテンツと、コンテンツ鍵とを保持しており、当該コンテンツ鍵を用いてコンテンツを暗号化して記録媒体120に記録し(S110)、また、コンテンツ鍵をS109において生成したメディア鍵で暗号化し、記録媒体120に記録する(S111)。
The recording device 110 extracts the encrypted media key from the key revocation data, decrypts it with the decryption key generated in S108, and obtains the media key (S109).
The recording device 110 holds the content and the content key, encrypts the content using the content key, records the content on the recording medium 120 (S110), and uses the media key generated in S109. The data is encrypted and recorded on the recording medium 120 (S111).

再生装置130は、記録媒体120から読み出した鍵無効化データを用い、復号鍵の生成を試みる(S112)。再生装置130が無効化されていない装置であれば、前記復号鍵の生成に成功することとなる。
再生装置130は、復号鍵の生成に成功したか否かを判定し(S113)、復号鍵の生成に失敗した場合(S113=No)には、処理を終了する。
復号鍵の生成に成功した場合(S113=Yes)、生成した復号鍵で、記録媒体120に記録された暗号化メディア鍵を復号する(S114)。
The playback device 130 attempts to generate a decryption key using the key revocation data read from the recording medium 120 (S112). If the playback device 130 is not invalidated, the decryption key is successfully generated.
The playback device 130 determines whether or not the generation of the decryption key is successful (S113), and if the generation of the decryption key fails (S113 = No), the processing is terminated.
When the generation of the decryption key is successful (S113 = Yes), the encrypted media key recorded on the recording medium 120 is decrypted with the generated decryption key (S114).

S114で復号したメディア鍵を用い、記録媒体120に記録されている暗号化コンテンツ鍵を復号する(S115)。
再生装置130は、S115において生成したコンテンツ鍵を用い、記録媒体120に記録された暗号化コンテンツを復号し(S116)、コンテンツの再生を行う(S117)。
次に、前記著作権保護システムを構成する各装置について、詳細に述べる。
<鍵管理装置100>
鍵管理装置100は、再生装置、記録装置毎に一意なデバイス鍵を生成し、生成したデバイス鍵を、当該デバイス鍵に対応する再生装置及び記録装置へ配布し、また、鍵無効化データを生成して、記録媒体へ書き込む。
Using the media key decrypted in S114, the encrypted content key recorded in the recording medium 120 is decrypted (S115).
The playback device 130 decrypts the encrypted content recorded on the recording medium 120 using the content key generated in S115 (S116), and plays back the content (S117).
Next, each device constituting the copyright protection system will be described in detail.
<Key management device 100>
The key management device 100 generates a unique device key for each playback device and recording device, distributes the generated device key to the playback device and recording device corresponding to the device key, and generates key revocation data Then, write to the recording medium.

鍵管理装置100は、再生装置130、130a、・・・、130bから成る再生装置群、記録装置を、木構造を利用して管理する。本実施形態では、鍵管理装置100が管理する再生装置及び記録装置は合計で27台あるものとし、前記木構造は3分木であるとする。
先ず、前記木構造について述べる。
The key management device 100 manages a playback device group and a recording device including the playback devices 130, 130a,..., 130b using a tree structure. In the present embodiment, it is assumed that there are a total of 27 playback devices and recording devices managed by the key management device 100, and that the tree structure is a triple tree.
First, the tree structure will be described.

図3は、27台の装置を管理するための3分木の木構造を示す図である。
図3のN0〜N333はノードを示し、ノード間をつなぐ線(以下、パスという。)には、図に示すように、左から順に1、2、3と番号(以下、パス番号という。)が付与されている。
各ノードには、木構造において、ルートノードであるN0から当該ノードに到達するまでに経由するパスを表すノードIDが付されている。
FIG. 3 is a diagram showing a tree structure of a triple tree for managing 27 devices.
In FIG. 3, N 0 to N 333 indicate nodes, and lines (hereinafter referred to as paths) connecting the nodes have numbers 1, 2, and 3 (hereinafter referred to as path numbers) in order from the left as shown in the figure. .).
Each node is assigned a node ID representing a path from the root node N 0 to the node in the tree structure.

図3のNabcは、ノードIDが「abc」であるノードを示しており、ルートノードであるN0からNabcに到達するまでに、パス番号がaの経路、bの経路、cの経路の順に経由していることを示す。
また、前記木構造は、レイヤ0を最上位階層として、レイヤ0〜レイヤ3までの論理的な4つの階層に分けられている。ノードIDの桁数がLであるノードはレイヤLに属することとなる。
N abc in FIG. 3 indicates a node having a node ID “abc”, and the path number a, b path, and c path from the root node N 0 to N abc It shows that it goes through in the order of.
The tree structure is divided into four logical layers from layer 0 to layer 3 with layer 0 as the highest layer. A node having a node ID digit number L belongs to the layer L.

例えば、図3に示すように、N1はレイヤ1に属し、N11はレイヤ2に属する。N0は、ルートとなる特別なノードであり、レイヤ0に属する。
前記木構造の最下位階層であるレイヤ3に属するノード群N111〜N333には、ノードIDと同値の装置IDを持ち、再生装置130、再生装置130a、・・・再生装置130b、記録装置110に相当する装置が対応づけられている。
For example, as shown in FIG. 3, N 1 belongs to layer 1 and N 11 belongs to layer 2. N 0 is a special node serving as a root and belongs to layer 0.
The node groups N 111 to N 333 belonging to layer 3 which is the lowest hierarchy of the tree structure have device IDs equivalent to the node IDs, and the playback device 130, playback device 130a,... Playback device 130b, recording device. A device corresponding to 110 is associated.

前記レイヤ3のノードに対応する27台の装置を、図3に示すように、以下、装置1〜装置27という。装置1〜装置27には、デバイス鍵K1〜K27を配布することとなる。例えば、鍵管理装置100は、装置IDが「112」である装置2に対しデバイス鍵としてK2を配布し、また、装置IDが「312」である装置20に対しデバイス鍵としてK20を配布する。   The 27 devices corresponding to the layer 3 nodes are hereinafter referred to as devices 1 to 27 as shown in FIG. Device keys K1 to K27 are distributed to the devices 1 to 27. For example, the key management apparatus 100 distributes K2 as a device key to the apparatus 2 whose apparatus ID is “112”, and distributes K20 as a device key to the apparatus 20 whose apparatus ID is “312”.

次に、鍵管理装置100の構成の詳細について述べる。
図4は、鍵管理装置100の構成を示すブロック図である。
鍵管理装置100は、図4に示すように、素数割当部201、乱数生成部202、鍵情報格納部203、デバイス鍵生成部204、無効化装置特定部205、鍵無効化データ生成部206、送信部207、書込部208とを備え、ハードウェアとしては、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、ハードディスク、キーボード、ネットワークアダプタ等を備えたコンピュータシステムであり、ROM又は前記ハードディスクには、コンピュータプログラムが記憶され、前記CPUが、前記コンピュータプログラムに従って動作することにより、鍵管理装置100は、その機能を実現する。
Next, details of the configuration of the key management apparatus 100 will be described.
FIG. 4 is a block diagram showing the configuration of the key management apparatus 100.
As shown in FIG. 4, the key management device 100 includes a prime number assignment unit 201, a random number generation unit 202, a key information storage unit 203, a device key generation unit 204, a revocation device specification unit 205, a key revocation data generation unit 206, A computer system including a transmission unit 207, a writing unit 208, and hardware including a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), a hard disk, a keyboard, a network adapter, etc. A computer program is stored in the ROM or the hard disk, and the key management apparatus 100 realizes its function by the CPU operating according to the computer program.

素数割当部201は、デバイス鍵の生成に必要な、RSA暗号の法であるnを算出するための素数p、qを予め保持しており、鍵情報格納部203に保持させる。
前述のRSA暗号は、素数p、qの積である合成数nを法として、素数である公開鍵と、前記公開鍵の逆元である復号鍵とを使用する暗号であり、素数p、qを知らない場合、ある素数の逆元を算出するのは計算量的に困難であるという特徴を有する。
The prime number assignment unit 201 holds in advance the prime numbers p and q for calculating n, which is the RSA encryption method, necessary for generating the device key, and causes the key information storage unit 203 to hold it.
The RSA cipher described above is a cipher that uses a public key that is a prime number and a decryption key that is an inverse element of the public key modulo a composite number n that is a product of the prime numbers p and q. Is not computationally difficult to calculate the inverse element of a certain prime number.

ここでp、q、nは一例として、p = FFFFFFFF EA2DE66E D3B1B7E9 61B75DFC D9FAE2FF A07A2345 9B7956FB 1B9B16D7 E1B6D59B BDF45B85 3CBF08EA 3BC7A1BD 541CB3A8 80E02E43 87CA7DEF 50948E87、q = FFFFFFFF E275B7F4 98A3811D E906ACF7 BFEB5CD6 A445AF09 D7906DE1 97CC2CCD 87614718 8C7C084F CE9231CA B7CFA113 13C3DDCF F1B70A54 84494467 8FCEF193、n = pq = FFFFFFFF CCA39E63 6ED9CF52 950C23A0 38AE0291 012B984A 964FFBBD 99E9DACB 91400431 0C5DD264 B1873126 44A725C5 D5BC73F4 97CFD100 89FD1342 656026BE 3FB583FE B134FF43 6957A1E1 D975B5BE DF1A9570 4C81A337 F06E5F9F 9388A7AC 5ABFD5CF 0356D91A 9861C69F E50509C2 323E5270 F2015FBD C08AA2C0 391CEE85とする。但し上記p、q、nは、16進による表記である。   Here p, q, n as an example, p = FFFFFFFF EA2DE66E D3B1B7E9 61B75DFC D9FAE2FF A07A2345 9B7956FB 1B9B16D7 E1B6D59B BDF45B85 3CBF08EA 3BC7A1BD 541CB3A8 80E02E43 87CA7DEF 50948E87, q = FFFFFFFF E275B7F4 98A3811D E906ACF7 BFEB5CD6 A445AF09 D7906DE1 97CC2CCD 87614718 8C7C084F CE9231CA B7CFA113 13C3DDCF F1B70A54 84494467 8FCEF193, n = a pq = FFFFFFFF CCA39E63 6ED9CF52 950C23A0 38AE0291 012B984A 964FFBBD 99E9DACB 91400431 0C5DD264 B1873126 44A725C5 D5BC73F4 97CFD100 89FD1342 656026BE 3FB583FE B134FF43 6957A1E1 D975B5BE DF1A9570 4C81A337 F06E5F9F 9388A7AC 5ABFD5CF 0356D91A 9861C69F E50509C2 323E5270 F2015FBD C08AA2C0 391CEE85. However, the above-mentioned p, q, and n are expressed in hexadecimal.

RSA暗号については、「「暗号理論入門」、岡本栄司、共立出版株式会社」にその詳細が開示されているため、ここでの説明は省略する。
また、素数割当部201は、デバイス鍵の生成に必要なm個の素数を鍵情報格納部203に保持させる。
mは、木構造に依存し、木構造がa分木の場合、m=2a−2個となり、例えば、図3の例では、木構造は3分木であるので、m=23−2=6である。
Details of the RSA encryption are disclosed in “Introduction to Cryptography”, Eiji Okamoto, Kyoritsu Publishing Co., Ltd., and a description thereof is omitted here.
Further, the prime number assignment unit 201 causes the key information storage unit 203 to hold m prime numbers necessary for generating a device key.
m depends on the tree structure. When the tree structure is a-ary tree, m = 2 a -2, for example, in the example of FIG. 3, the tree structure is a tri-tree, so m = 2 3 − 2 = 6.

mは、パス番号「1」、「2」・・・「a」について、全てのパス番号を選択する場合を除き、選択し得るパス番号の組合せの数と一致する。つまり、
m=a1a2+・・・+a(a-1)
である。
例えば、3分木の場合、3つのパス番号「1」、「2」、「3」について、全てのパス番号を選択する場合を除き、選択し得るパス番号の組合せは、(1)「1」のみ選択、(2)「2」のみ選択、(3)「3」のみ選択、(4)「1」と「2」とを選択、(5)「1」と「3」とを選択、(6)「2」と「3」とを選択、の6通りの組合せがある。
m is the same as the number of combinations of pass numbers that can be selected except when all pass numbers are selected for pass numbers “1”, “2”... “a”. That means
m = a C 1 + a C 2 +... + a C (a-1)
It is.
For example, in the case of a ternary tree, except for the case of selecting all the path numbers for three path numbers “1”, “2”, and “3”, the combinations of path numbers that can be selected are (1) “1” ”Only, (2)“ 2 ”only, (3)“ 3 ”only, (4)“ 1 ”and“ 2 ”selected, (5)“ 1 ”and“ 3 ”selected, (6) There are six combinations of selecting “2” and “3”.

素数割当部201は、m個以上の素数を予め保持しており、前記m個の各組合せに対し、相異なる素数を割り当てる。各組合せに対応する素数を生成素数といい、以下、Pxのように記載する。Pxの記載におけるxは、選択したパス番号を連結したものであり、xを選択パス番号という。
例えば、上記の「(1)「1」のみ選択」に対応する選択パス番号は「1」であり、対応する素数はP1であり、また、上記「(4)「1」と「2」とを選択」に対応する選択パス番号は「12」であり、対応する素数は、P12である。
The prime number assignment unit 201 holds m or more prime numbers in advance, and assigns different prime numbers to each of the m combinations. A prime number corresponding to each combination is referred to as a generated prime number, and is described as P x hereinafter. X in the description of Px is a concatenation of the selected path numbers, and x is referred to as a selected path number.
For example, the selection path number corresponding to the above “(1)“ select only 1 ”” is “1”, the corresponding prime number is P 1 , and “(4)“ 1 ”and“ 2 ” The selection path number corresponding to “select and” is “12”, and the corresponding prime number is P 12 .

次に、素数割当部201が行う素数表の生成について述べる。
図5は、素数割当部201が生成して保持する素数表であり、図5(a)は、木構造が3分木である場合に対応し、図5(b)は、木構造が4分木である場合に対応する。図5(a)(b)において、素数表の各行は、選択パス番号と、生成素数との組から成る。
例えば、図5(a)において、素数表の4行目は、上記(4)のパス番号「1」と「2」との組合せに対応しており、選択パス番号は12であり、生成素数は、P12であることを示す。
Next, generation of a prime table performed by the prime assignment unit 201 will be described.
FIG. 5 is a prime number table generated and held by the prime number assignment unit 201. FIG. 5A corresponds to the case where the tree structure is a tri-tree, and FIG. This corresponds to the case of a branch tree. 5A and 5B, each row of the prime number table includes a set of a selected pass number and a generated prime number.
For example, in FIG. 5A, the fourth row of the prime number table corresponds to the combination of the pass numbers “1” and “2” in the above (4), the selected pass number is 12, and the generated prime number Indicates P 12 .

図6は、a分木について、素数割当部201が、素数表を生成するための処理を示すフローチャートであり、図2におけるS101に相当する。
素数割当部201は、演算に用いる変数k、lを初期化する(S201)。
kには初期値1を代入し、lには、初期値k−1を代入する。
素数割当部201は、演算に用いるパス番号の格納領域P(0)〜P(a−1)を、P(x)=(x+1)(但し、0≦x≦(k−1))となるよう初期化する(S202)。
FIG. 6 is a flowchart showing processing for the prime allocation unit 201 to generate a prime table for the a-ary tree, and corresponds to S101 in FIG.
The prime number assignment unit 201 initializes variables k and l used for the calculation (S201).
The initial value 1 is substituted for k, and the initial value k-1 is substituted for l.
The prime number assignment unit 201 sets the pass number storage areas P (0) to P (a−1) used for the calculation to P (x) = (x + 1) (where 0 ≦ x ≦ (k−1)). (S202).

例えば、P(0)=1、P(1)=2・・・P(k−1)=kとなる。
また、素数割当部201は、素数表における書き込み先のポインタを、素数表の1行目を指すよう初期化する(S203)。
P(0)〜P(k−1)を連結した数を、ポインタが指す書込先の「選択パス番号」に書き込む(S204)。
For example, P (0) = 1, P (1) = 2... P (k−1) = k.
Further, the prime number assignment unit 201 initializes the write destination pointer in the prime number table to point to the first row of the prime number table (S203).
The number obtained by concatenating P (0) to P (k−1) is written in the “selected pass number” of the writing destination pointed to by the pointer (S204).

素数を生成し、ポインタが指す書込先の「生成素数」に書き込む(S205)。
P(k−1)+1がaより大きいか否かを判定する(S206)。
小さい又は等しいと判定した場合(S206=No)、P(k−1)をインクリメントする(S207)。
次の領域を示すようポインタを更新する(S208)。
A prime number is generated and written in the “generated prime number” of the writing destination pointed to by the pointer (S205).
It is determined whether P (k−1) +1 is larger than a (S206).
When it determines with it being small or equal (S206 = No), P (k-1) is incremented (S207).
The pointer is updated to indicate the next area (S208).

大きいと判定した場合(S206=Yes)、l−1が0以上であるか否か判定する(S209)。
0以上であると判定した場合(S209=Yes)、P(l−k)+kがaより大きいか否かを判定する(S210)。
小さい又は等しいと判定した場合(S210=No)、lをデクリメントする(S211)。
When it is determined that it is large (S206 = Yes), it is determined whether or not l−1 is 0 or more (S209).
When it is determined that it is 0 or more (S209 = Yes), it is determined whether P (l−k) + k is greater than a (S210).
When it is determined that they are smaller or equal (S210 = No), l is decremented (S211).

P(l)に保持している数値をインクリメントした後、P(l+x)=P(l)+x(但し1≦x≦(k−1−l))で示す処理を行い、S208に進む(S212)。
l−1が0未満であると判定した場合(S209=No)或いはS210において小さいと判定した場合(S210=Yes)、(k+1)が(a−1)より大きいか否かを判定する(S213)。
After incrementing the numerical value held in P (l), the process shown by P (l + x) = P (l) + x (where 1 ≦ x ≦ (k−1−l)) is performed, and the process proceeds to S208 (S212). ).
When it is determined that l-1 is less than 0 (S209 = No) or when it is determined that it is small in S210 (S210 = Yes), it is determined whether (k + 1) is greater than (a-1) (S213). ).

S213において(k+1)が(a−1)未満であると判定した場合(S213=NO)、処理を終了する。
S213において大きいと判定した場合(S213=YES)、kをインクリメントし、lに(k−1)を代入する(S214)。
P(0)=1、P(1)=2、・・・P(k−1)=kとする(S215)。
If it is determined in S213 that (k + 1) is less than (a-1) (S213 = NO), the process ends.
If it is determined in S213 that the value is large (S213 = YES), k is incremented and (k-1) is substituted for l (S214).
P (0) = 1, P (1) = 2,... P (k-1) = k (S215).

以上、S201〜S215により、素数割当部201は、図5に示す素数表を生成し、保持することとなる。
乱数生成部202は、デバイス鍵の生成に必要な乱数(乱数S)を生成し、鍵情報格納部203に保持させる。
鍵情報格納部203は、素数割当部201が生成した素数、及び乱数生成部202が生成した乱数を保持する。
As described above, through S201 to S215, the prime number assignment unit 201 generates and holds the prime number table shown in FIG.
The random number generation unit 202 generates a random number (random number S) necessary for generating a device key and stores the random number in the key information storage unit 203.
The key information storage unit 203 holds the prime number generated by the prime number assignment unit 201 and the random number generated by the random number generation unit 202.

また、鍵情報格納部203は、記録媒体120を含む各記録媒体に固有のメディア鍵を予め保持しているものとする。
デバイス鍵生成部204は、鍵情報格納部203が保持する情報に基づき、前記装置1〜27の各装置に対応するデバイス鍵を生成する。
図7は、デバイス鍵生成部204が、前記3分木である木構造に基づいてデバイス鍵を生成する処理を示すフローチャートであり、図2におけるS102に相当する。
Further, it is assumed that the key information storage unit 203 holds a media key unique to each recording medium including the recording medium 120 in advance.
The device key generation unit 204 generates a device key corresponding to each of the devices 1 to 27 based on information held by the key information storage unit 203.
FIG. 7 is a flowchart showing a process in which the device key generation unit 204 generates a device key based on the tree structure that is the above-described tri-tree, and corresponds to S102 in FIG.

図7において、「ID(J)」の記載は、デバイス鍵の発行先装置の装置IDの下位桁からJ番目のパス番号を示している。例えば、装置IDが「312」である装置20の場合、ID(1)=2、ID(2)=1、ID(3)=3となる。
なお、以降に示す、べき乗演算は、記載が無くとも法nの下でのmod n演算を行っているものとする。
In FIG. 7, “ID (J)” indicates the J-th pass number from the lower digit of the device ID of the device key issuance destination device. For example, in the case of the device 20 whose device ID is “312”, ID (1) = 2, ID (2) = 1, and ID (3) = 3.
In addition, the power calculation shown below assumes that mod n calculation under modulus n is performed even if there is no description.

デバイス鍵生成部204は、演算に用いる各変数の初期化を行う(S401)。
変数Xには、鍵情報格納部203が格納している前記乱数Sを代入し、変数Jには0を代入し、変数Lに装置IDの桁数を代入する。
図3の木構造の例ではL=3である。
ID(J)の値が1であるかどうかを判定する(S402)。1である場合はS404に進み、1でない場合はS403に進む。
The device key generation unit 204 initializes each variable used for the calculation (S401).
The random number S stored in the key information storage unit 203 is substituted for the variable X, 0 is substituted for the variable J, and the number of digits of the device ID is substituted for the variable L.
In the example of the tree structure of FIG. 3, L = 3.
It is determined whether or not the value of ID (J) is 1 (S402). If it is 1, the process proceeds to S404, and if it is not 1, the process proceeds to S403.

ID(J)の値が2であるかどうかを判定する(S403)。2である場合はS405に進み、2でない場合はS406に進む。
なお、S402とS403の両ステップは、ID(J)が3分木に対応する1、2、3の各場合に実行するべき乗剰余演算を選択するためのステップであり、a分木の場合であれば、ID(J)が1、2・・・・、(a−1)、aの各場合に実行するべき乗剰余演算を選択する必要があるので、S402(或いはS403)と同等な判断を行うステップが、(a−1)個必要となる。
It is determined whether or not the value of ID (J) is 2 (S403). If it is 2, the process proceeds to S405. If it is not 2, the process proceeds to S406.
Note that both steps S402 and S403 are steps for selecting a modular multiplication that should be executed in each of cases 1, 2, and 3 in which ID (J) corresponds to a tri-tree. If there is an ID (J) of 1, 2,..., (A-1), a, it is necessary to select a modular exponentiation to be executed. Therefore, a determination equivalent to S402 (or S403) is made. (A-1) steps to be performed are required.

変数Xに対して、素数P1、P12、P13の逆元をべき乗剰余演算して、その結果を変数Xに代入する(S404)。
S404における、べき乗剰余演算において逆元を使用する素数は、ID(J)=1に対応する、前記素数表の選択パス番号に値「1」が含まれる全ての素数である。
3分木においては、図5(a)に記載の素数のうち、対応する選択パス番号に値「1」を含むP1、P12、P13が、S404の演算において、使用される。
An exponentiation remainder operation is performed on the inverse element of the prime numbers P 1 , P 12 , and P 13 for the variable X, and the result is assigned to the variable X (S404).
The prime numbers that use the inverse element in the power-residue calculation in S404 are all prime numbers corresponding to ID (J) = 1 and including the value “1” in the selected path number of the prime table.
In the ternary tree, P 1 , P 12 , and P 13 including the value “1” in the corresponding selection path number among the prime numbers described in FIG. 5A are used in the calculation of S404.

4分木においては、図5(b)の選択パス番号に値「1」を含む、P1、P12、P13、P14、P123、P124、P134が使用されることとなる。
また、素数Pxの逆元を、1/Pxと記載している。
変数Xに対して、素数P2、P12、P23の逆元をべき乗剰余演算して、その結果を変数Xに代入する(S405)。
In the quadtree, P 1 , P 12 , P 13 , P 14 , P 123 , P 124 , P 134 including the value “1” in the selected path number in FIG. 5B are used. .
Further, the inverse element of the prime number P x is described as 1 / P x .
An exponentiation remainder operation is performed on the inverse element of the prime numbers P 2 , P 12 , and P 23 for the variable X, and the result is substituted into the variable X (S405).

S405における、べき乗剰余演算において逆元を使用する素数は、ID(J)=2に対応する、前記素数表の選択パス番号に値「2」が含まれる全ての素数である。
変数Xに対して、素数P3、P13、P23の逆元をべき乗剰余演算して、その結果を変数Xに代入する(S406)。
S406における、べき乗剰余演算において逆元を使用する素数は、ID(J)=3に対応する、前記素数表の選択パス番号に値「3」が含まれる全ての素数である。
The prime numbers that use the inverse element in the power-residue calculation in S405 are all prime numbers corresponding to ID (J) = 2 and including the value “2” in the selected path number of the prime table.
An exponentiation remainder operation is performed on the inverse element of the prime numbers P 3 , P 13 , and P 23 for the variable X, and the result is substituted into the variable X (S406).
The prime numbers using the inverse element in the power-residue calculation in S406 are all prime numbers corresponding to ID (J) = 3 and including the value “3” in the selected pass number of the prime table.

なお、S404、S405、S406の各ステップは、ID(J)が3分木に対応する1、2、3の各場合に実行するべき乗剰余演算処理であり、a分木の場合であれば、ID(J)が1、2・・・・、(a−1)、aの各場合に実行するべき乗剰余演算ステップが必要となる。つまり、S404(或いはS405、S406)と同等なべき乗剰余演算実行ステップが、a個必要となり、べき乗剰余演算において逆元を使用する素数は、ID(J)=h(h: 1≦h≦a)に対応する、前記素数表の選択パス番号に値「h」が含まれる全ての素数である。   Note that each step of S404, S405, and S406 is a modular multiplication process to be executed in each of cases 1, 2, and 3 in which ID (J) corresponds to a tri-tree, and in the case of an a-tree, A residue calculation step to be executed is required when ID (J) is 1, 2,..., (A-1), a. That is, a power residue calculation execution step equivalent to S404 (or S405, S406) is required, and a prime number using an inverse element in power residue calculation is ID (J) = h (h: 1 ≦ h ≦ a). ) Corresponding to all prime numbers including the value “h” in the selected pass number of the prime table.

変数Jが、変数L−2より大きいかどうか判定する(S407)。大きい場合S410に進み、大きくない場合はS408に進む。
変数Xに対して、1を加算して、その結果を変数Xに代入する(S408)。
変数Jに対して、1を加算して、その結果を変数Jに代入する(S409)。
算出した変数Xの値をKiに代入して、デバイス鍵Kiを装置iに発行する(S410)。
It is determined whether the variable J is larger than the variable L-2 (S407). If larger, the process proceeds to S410, and if not larger, the process proceeds to S408.
1 is added to the variable X, and the result is substituted into the variable X (S408).
1 is added to the variable J, and the result is substituted into the variable J (S409).
The calculated value of the variable X is substituted for Ki, and the device key Ki is issued to the device i (S410).

以上、図7のフローチャートで示す処理を、デバイス鍵の生成対象となる装置の数だけ繰り返す。
ここで、図7に示したフローチャートに従い、例えば、前記装置20に対するデバイス鍵を計算する場合、まず、S406において、S^{1/(P31323)}を計算してから、S408において1を加算する。次に加算結果Xに対して、S404において、X^{1/(P11213)}を計算してから、再びS408において1を加算する。最後に加算結果Xに対して、S405において、X^{1/(P21223)}を計算する。
以上の処理により、装置20に対して発行するデバイス鍵K20は、
K20 = ((S^(1/(P31323))+1)^(1/(P11213))+1)^(1/(P21223))
となる。
The process shown in the flowchart of FIG. 7 is repeated as many times as the number of devices for which a device key is to be generated.
Here, according to the flowchart shown in FIG. 7, for example, when calculating a device key for the apparatus 20, first, in S406, S ^ {1 / (P 3 P 13 P 23 )} is calculated, and then S408. 1 is added. Next, X ^ {1 / (P 1 P 12 P 13 )} is calculated for the addition result X in S404, and 1 is added again in S408. Finally, X ^ {1 / (P 2 P 12 P 23 )} is calculated for the addition result X in S405.
With the above processing, the device key K20 issued to the device 20 is
K20 = ((S ^ (1 / (P 3 P 13 P 23)) + 1) ^ (1 / (P 1 P 12 P 13)) + 1) ^ (1 / (P 2 P 12 P 23))
It becomes.

同様に、装置2に対して発行するデバイス鍵K2は、
K2 = ((S^(1/(P11213))+1)^(1/(P11213))+1)^(1/(P21223))
となる。
無効化装置特定部205は、鍵管理装置100が備えるキーボード(図示せず)等を用いオペレータが入力するなどした無効化すべき装置を示す無効装置識別情報を保持する。
Similarly, the device key K2 issued to the device 2 is
K2 = ((S ^ (1 / (P 1 P 12 P 13)) + 1) ^ (1 / (P 1 P 12 P 13)) + 1) ^ (1 / (P 2 P 12 P 23))
It becomes.
The invalidation device specifying unit 205 holds invalid device identification information indicating a device to be invalidated, which is input by an operator using a keyboard (not shown) provided in the key management device 100 or the like.

ここで、本実施形態においては、装置1〜装置27の各装置に対し、K1〜K27の各デバイス鍵が配布された後、装置1と装置26とに対応するデバイス鍵K1とK26とが暴露されてしまったものとし、鍵管理装置100は、K1及びK26を用いても、コンテンツの復号ができないよう鍵無効化データを生成する。
図8は、前記木構造において、装置1と装置26を無効化する場合の暗号化鍵を出力するノードと暗号化鍵の値との関係を模式的に示す図である。
In this embodiment, after the device keys K1 to K27 are distributed to the devices 1 to 27, the device keys K1 and K26 corresponding to the devices 1 and 26 are exposed. The key management apparatus 100 generates key revocation data so that the content cannot be decrypted even if K1 and K26 are used.
FIG. 8 is a diagram schematically showing the relationship between the node that outputs the encryption key and the value of the encryption key when the devices 1 and 26 are invalidated in the tree structure.

装置nを無効化する場合には、前記木構造における装置nに対応するノードからN0への経路上のノードに対する暗号鍵を生成することとなる。
例えば、図8において、装置1を無効化する場合には、装置1からN0への経路上のノード(N11、N1、N0)に対する暗号鍵を生成し、装置26を無効化する場合には、装置26からN0への経路上のノード(N33、N3、N0)に対する暗号鍵を生成することとなる。
When the device n is invalidated, an encryption key is generated for a node on the path from the node corresponding to the device n in the tree structure to N 0 .
For example, in FIG. 8, when the device 1 is revoked, an encryption key for the nodes (N 11 , N 1 , N 0 ) on the path from the device 1 to N 0 is generated, and the device 26 is revoked. In this case, an encryption key for the nodes (N 33 , N 3 , N 0 ) on the path from the device 26 to N 0 is generated.

本実施形態において、装置1と装置26を無効化するため生成する暗号鍵は、上述の装置1からN0への経路上のノードと装置26からN0への経路上のノードのうち重複するノードを除くN0、N1、N2、N11,N22のそれぞれに対応するKe1〜Ke5の5つとなる。以下、N11、N1、N0、N33、N3をそれぞれ無効化ノードという。
無効化装置特定部205は、前記オペレータによる入力等の結果、前記無効装置識別情報として、装置1の装置IDである「111」と、装置26の装置IDである「332」という値を保持する。
In the present embodiment, the encryption key generated to invalidate the device 1 and the device 26 is duplicated between the node on the route from the device 1 to N 0 and the node on the route from the device 26 to N 0 . There are five of Ke 1 to Ke 5 corresponding to N 0 , N 1 , N 2 , N 11 , and N 22 excluding the node. Hereinafter, N 11 , N 1 , N 0 , N 33 , and N 3 are referred to as invalidation nodes, respectively.
As a result of the input by the operator or the like, the invalidation device specifying unit 205 holds values “111” that is the device ID of the device 1 and “332” that is the device ID of the device 26 as the invalid device identification information. .

図9は、無効化装置特定部205が保持する、前記無効化装置識別情報と、前記木構造とに基づく無効表である。
前記無効表は、無効表の各行は、ノードIDと、無効フラグと、選択パス番号とから成る。ノードIDを示す列には、前記木構造中の最下位レイヤを除く全てのノードのノードIDが登録される。無効フラグは、ノードIDで示されるノードが無効であるか否かを示し、無効である場合には値「1」、有効である場合には値「0」を登録する。選択パス番号は、当該ノードに繋がるうち有効なパス番号の組合せを示し、選択パス番号の各桁は、それぞれが有効なパス番号を示している。
FIG. 9 is an invalid table based on the invalidation device identification information and the tree structure held by the invalidation device specifying unit 205.
In the invalid table, each row of the invalid table includes a node ID, an invalid flag, and a selected pass number. In the column indicating the node ID, node IDs of all nodes except the lowest layer in the tree structure are registered. The invalid flag indicates whether or not the node indicated by the node ID is invalid. A value “1” is registered when the node is invalid, and a value “0” is registered when the node is valid. The selected path number indicates a combination of valid path numbers while connected to the node, and each digit of the selected path number indicates a valid path number.

鍵無効化データ生成部206は、鍵情報格納部203が格納している情報、及び前記無効表とから、記録媒体120に記録するための鍵無効化データのヘッダ部を生成する。
図10は、鍵無効化データ生成部206における、鍵無効化データのヘッダ部を生成するための処理を示すフローチャートであり、図2におけるS105に相当する。
鍵無効化データは、1以上の鍵無効化エントリから成り、前記鍵無効化エントリは、ノードIDと、選択パス番号と、暗号化メディア鍵とから成り、前記鍵無効化エントリのうち、前記暗号化メディア鍵を除く、前記ノードIDと、前記選択パス番号とを合わせて、以下、鍵無効化データのヘッダ部という。
The key revocation data generation unit 206 generates a header portion of key revocation data to be recorded on the recording medium 120 from the information stored in the key information storage unit 203 and the revocation table.
FIG. 10 is a flowchart showing processing for generating a header part of key revocation data in the key revocation data generation unit 206, and corresponds to S105 in FIG.
The key revocation data includes one or more key revocation entries, and the key revocation entry includes a node ID, a selected pass number, and an encrypted media key. The node ID excluding the activation media key and the selected pass number are collectively referred to as a header portion of the key revocation data.

鍵無効化データ生成部206による、鍵無効化データのヘッダ部生成処理について図10を用い説明する。
鍵無効化データ生成部206は、生成する鍵無効化データを記憶するための記憶領域を持つ。
鍵無効化データ生成部206は、まず、演算に用いる変数Eを1で初期化する(S451)。
The key revocation data header generation processing by the key revocation data generation unit 206 will be described with reference to FIG.
The key revocation data generation unit 206 has a storage area for storing key revocation data to be generated.
The key revocation data generation unit 206 first initializes a variable E used for calculation with 1 (S451).

演算に用いるポインタを、先頭の鍵無効化エントリ記憶領域に設定する(S452)。
前記無効表のE行目の内容(以下、エントリEという。)を取得する(S453)。
例えば、図9の無効表において、E=1の場合のエントリEの、ノードIDは「0」、無効フラグは「1」、選択パス番号は「2」である。
S453で取得したエントリEの無効フラグが、無効を示す「1」であるか否か判定する(S454)。
A pointer used for the calculation is set in the first key revocation entry storage area (S452).
The contents of the Eth row of the invalid table (hereinafter referred to as entry E) are acquired (S453).
For example, in the invalid table of FIG. 9, the node ID of entry E when E = 1 is “0”, the invalid flag is “1”, and the selected path number is “2”.
It is determined whether or not the invalid flag of the entry E acquired in S453 is “1” indicating invalid (S454).

無効を示す「1」でない場合(S454=No)、S457に進む。
無効を示す「1」である場合(S454=Yes)、ポインタが指す領域の無効化情報エントリ記憶領域にノードIDとして、前記エントリEのノードIDを書き込み、選択パス番号として、前記エントリEの選択パス番号を書き込む(S455)。
鍵無効化データ生成部206は、ポインタが次の無効化情報エントリ記憶領域を指すよう設定する(S456)。
When it is not “1” indicating invalidity (S454 = No), the process proceeds to S457.
When it is “1” indicating invalidity (S454 = Yes), the node ID of the entry E is written as the node ID in the invalidation information entry storage area of the area pointed to by the pointer, and the entry E is selected as the selected path number. The pass number is written (S455).
The key revocation data generation unit 206 sets the pointer to point to the next revocation information entry storage area (S456).

E+1が無効表の行数より大きいか否か判定する(S457)。
大きい場合(S457=Yes)は、処理を終了する。
小さいか等しい場合(S457=No)、Eをインクリメントする(S458)。
図11は、記録媒体に記録される鍵無効化データのデータ構造を示す。
図11(a)は、無効化された装置がある場合の鍵無効化データであり、図11(b)は、無効化された装置が無い場合の鍵無効化データである。
It is determined whether E + 1 is larger than the number of rows in the invalid table (S457).
If larger (S457 = Yes), the process is terminated.
If it is smaller or equal (S457 = No), E is incremented (S458).
FIG. 11 shows the data structure of key revocation data recorded on the recording medium.
FIG. 11A shows key revocation data when there is a revoked device, and FIG. 11B shows key revocation data when there is no revoked device.

図11の各列は、「ノードID」、「選択パス番号」、「暗号化メディア鍵」である。
S451〜S458により、鍵無効化データ生成部206は、図11に示す鍵無効化データのうち「ノードID」、「選択パス番号」、「暗号化メディア鍵」から成るヘッダ部の部分を生成して書き込むこととなる。
「暗号化メディア鍵」は、復号鍵と同一の鍵である暗号鍵で暗号化されたメディア鍵であり、説明は、後述する。
Each column in FIG. 11 is “node ID”, “selected path number”, and “encrypted media key”.
Through S451 to S458, the key revocation data generation unit 206 generates a header portion composed of “node ID”, “selected path number”, and “encrypted media key” from the key revocation data shown in FIG. Will be written.
The “encrypted media key” is a media key encrypted with an encryption key that is the same key as the decryption key, and will be described later.

次に、鍵無効化データ生成部206による、暗号鍵の生成処理について述べる。
「暗号鍵」と「復号鍵」とは、同一の鍵を示しており、情報の暗号化及び復号の双方に使用される。
図12〜図14は、復号鍵と同一の鍵である前記暗号鍵を生成する際の動作を示すフローチャートであり、図2におけるS104に相当する。
Next, encryption key generation processing by the key revocation data generation unit 206 will be described.
“Encryption key” and “decryption key” indicate the same key, and are used for both encryption and decryption of information.
FIGS. 12 to 14 are flowcharts showing the operation when generating the encryption key, which is the same key as the decryption key, and corresponds to S104 in FIG.

ここで、図13における「NID(J)」の記載は、ノードIDの下位桁からJ番目のパス番号を示している。例えば、ノードIDが31の場合、NID(1)=1、NID(2)=3である。また、図中の「ルート」、「ルートノード」の記載は、N0を示している。
鍵無効化データ生成部206は、前記木構造において、無効化装置特定部205が特定した無効化すべき装置とN0を結ぶ経路上に存在するノードを全て無効化ノードと判定して、記憶する(S501)。
Here, the description “NID (J)” in FIG. 13 indicates the Jth pass number from the lower digit of the node ID. For example, when the node ID is 31, NID (1) = 1 and NID (2) = 3. In addition, the description of “root” and “root node” in the figure indicates N 0 .
In the tree structure, the key revocation data generation unit 206 determines all nodes existing on the path connecting the device to be revoked identified by the revocation device identifying unit 205 and N 0 as invalidation nodes, and stores them. (S501).

鍵無効化データ生成部206は、鍵情報格納部203に格納する木構造のN0を起点として、上位レイヤから下位レイヤ、同一レイヤでは左のノードから右のノードの順で、リーフを除く各ノードを、処理ノードとして選出する(S502)。
S502において、処理ノードが選出できた場合は、全ノードの探索が未完了であると判定し、選出するノードが無かった場合は完了と判定する(S503)。未完了の場合はS504に進み、完了の場合はS507に進む。
The key revocation data generation unit 206 starts from N 0 of the tree structure stored in the key information storage unit 203 as a starting point, and removes each leaf from the upper layer to the lower layer, and from the left node to the right node in the same layer. A node is selected as a processing node (S502).
In S502, when the processing node can be selected, it is determined that the search of all the nodes is not completed, and when there is no node to be selected, it is determined that the processing is completed (S503). If not completed, the process proceeds to S504, and if completed, the process proceeds to S507.

S502で選出した処理ノードが、無効化ノードで、かつ子ノードのうち少なくとも1つのノードが無効化ノードでないかどうかを判定する(S504)。当該ノードが無効化ノード、かつ無効化ノードでない子ノードが存在する場合はS506に進み、当該ノードは無効化ノードでない、あるいは子ノードが全て無効化ノードの場合はS505に進む。
ここで、子ノードとは、対象となるノードとパスにより繋がっている1階層下のノードであり、例えば、レイヤ1に属するN3の子ノードは、レイヤ2に属するN31、N32、N33である。
It is determined whether or not the processing node selected in S502 is an invalidation node and at least one of the child nodes is not an invalidation node (S504). If the node is an invalidation node and there is a child node that is not an invalidation node, the process proceeds to S506. If the node is not an invalidation node, or all the child nodes are invalidation nodes, the process proceeds to S505.
Here, the child node is a node one layer below that is connected to the target node by a path. For example, N 3 child nodes belonging to layer 1 are N 31 , N 32 , N belonging to layer 2. 33 .

前記処理ノードについては暗号化鍵を生成する必要がないため、S502と同様の方法で、次の処理ノードの選出を行う(S505)。
処理ノードがルート(N0)でないか否かを判定する(S506)。ルートである場合には、S601に進み、ルートでない場合はS702に進む。
発行済みの全ての暗号化鍵Keiで、メディア鍵を個別に暗号化し、鍵無効化データを生成する(S507)。
Since there is no need to generate an encryption key for the processing node, the next processing node is selected in the same manner as in S502 (S505).
It is determined whether or not the processing node is not the root (N 0 ) (S506). If it is a route, the process proceeds to S601. If it is not a route, the process proceeds to S702.
The media key is individually encrypted with all the issued encryption keys Kei, and key revocation data is generated (S507).

本実施形態において、装置1と装置26を無効化する場合、生成された暗号化鍵Ke1〜Ke5は、図8に示す値となる。
鍵無効化データ生成部206は、計算に用いる各変数の初期化を行う。変数Xに鍵情報格納部203が格納する乱数Sを代入して、変数Jを0で初期化して、変数LをノードIDの桁数とする(S601)。図3の例ではL=2である。
In the present embodiment, when the devices 1 and 26 are invalidated, the generated encryption keys Ke1 to Ke5 have values shown in FIG.
The key revocation data generation unit 206 initializes each variable used for calculation. The random number S stored in the key information storage unit 203 is substituted into the variable X, the variable J is initialized with 0, and the variable L is set to the number of digits of the node ID (S601). In the example of FIG. 3, L = 2.

処理ノードについて、NID(J)の値が1であるかどうかを判定する(S602)。1である場合はS604に進み、1でない場合はS603に進む。
処理ノードについて、NID(J)の値が2であるかどうかを判定する(S603)。2である場合はS605に進み、2でない場合はS606に進む。
なお、S602とS603の両ステップは、NID(J)が3分木に対応する1、2、3の各場合に実行するべき乗剰余演算を選択するためのステップであり、a分木の場合であれば、NID(J)が1、2・・・・、(a−1)、aの各場合に実行するべき乗剰余演算を選択する必要があるので、S602(或いはS603)と同等な判断を行うステップが、(a−1)個必要となる。
It is determined whether or not the value of NID (J) is 1 for the processing node (S602). If it is 1, the process proceeds to S604, and if it is not 1, the process proceeds to S603.
It is determined whether or not the value of NID (J) is 2 for the processing node (S603). If it is 2, the process proceeds to S605. If it is not 2, the process proceeds to S606.
Note that both steps S602 and S603 are steps for selecting a remainder operation to be executed in each of cases 1, 2, and 3 in which NID (J) corresponds to a tri-tree. If there is NID (J) 1, 2,..., (A-1), and a, it is necessary to select a remainder operation to be executed. Therefore, a determination equivalent to S602 (or S603) is made. (A-1) steps to be performed are required.

変数Xに対して、素数P1、P12、P13の逆元(1/P1、1/P12、1/P13)をべき乗剰余演算して、その結果を変数Xに代入する(S604)。
変数Xに対して、素数P2、P12、P23の逆元(1/P2、1/P12、1/P23)をべき乗剰余演算して、その結果を変数Xに代入する(S605)。
変数Xに対して、素数P3、P13、P23の逆元(1/P3、1/P13、1/P23)をべき乗剰余演算して、その結果を変数Xに代入する(S606)。
For the variable X, the inverse elements (1 / P 1 , 1 / P 12 , 1 / P 13 ) of the prime numbers P 1 , P 12 , and P 13 are subjected to exponentiation and the result is substituted into the variable X ( S604).
For the variable X, the inverse elements (1 / P 2 , 1 / P 12 , 1 / P 23 ) of the prime numbers P 2 , P 12 , and P 23 are exponentiated and the result is substituted into the variable X ( S605).
For the variable X, the inverse elements (1 / P 3 , 1 / P 13 , 1 / P 23 ) of the prime numbers P 3 , P 13 , and P 23 are exponentiated and the result is substituted into the variable X ( S606).

なお、S604、S605、S606の各ステップは、NID(J)が3分木に対応する1、2、3の各場合に実行するべき乗剰余演算処理であり、a分木の場合であれば、NID(J)が1、2・・・・、(a−1)、aの各場合に実行するべき乗剰余演算ステップが必要となる。つまり、S604(或いはS605、S606)と同等なべき乗剰余演算実行ステップが、a個必要となり、べき乗剰余演算において逆元を使用する素数は、NID(J)=h(h: 1≦h≦a)に対応する、前記素数表の選択パス番号に値「h」が含まれる全ての素数である。   Note that each step of S604, S605, and S606 is a modular multiplication process to be executed in each of cases 1, 2, and 3 in which NID (J) corresponds to a tri-tree. A remainder calculation step to be executed is required when NID (J) is 1, 2,..., (A-1), a. That is, a power residue calculation execution step equivalent to S604 (or S605, S606) is required, and a prime number that uses an inverse element in power residue calculation is NID (J) = h (h: 1 ≦ h ≦ a ) Corresponding to all prime numbers including the value “h” in the selected pass number of the prime table.

変数Jが、変数L−2より大きいかどうか判定する(S607)。大きい場合は図14のS701に進み、大きくない場合はS608に進む。
変数Xに対して、1を加算して、その結果を変数Xに代入する(S608)。
変数Jに対して、1を加算して、その結果を変数Jに代入する(S609)。
変数Xに対して、1を加算して、その結果を変数Xに代入する(S701)。
It is determined whether the variable J is larger than the variable L-2 (S607). If it is larger, the process proceeds to S701 in FIG. 14, and if it is not larger, the process proceeds to S608.
1 is added to the variable X, and the result is substituted into the variable X (S608).
1 is added to the variable J, and the result is substituted into the variable J (S609).
1 is added to the variable X, and the result is substituted into the variable X (S701).

処理ノードに係る子ノードが、無効化ノードであるか否かの状態を確認する(S702)。
処理ノードと、パス番号1でつながる子ノードのみが無効化ノードの場合は、変数Xに対して、素数P23の逆元(1/P23)をべき乗剰余演算して、その結果を変数Xに代入する(S703)。当該ノードと、パス番号2でつながる子ノードのみが無効化ノードの場合は、変数Xに対して、素数P13の逆元(1/P13)をべき乗剰余演算して、その結果を変数Xに代入する。当該ノードと、パス番号3でつながる子ノードのみが無効化ノードの場合は、変数Xに対して、素数P12の逆元(1/P12)をべき乗剰余演算して、その結果を変数Xに代入する。当該ノードと、パス番号1、及び2でつながる子ノードが無効化ノードの場合は、変数Xに対して、素数P3の逆元(1/P3)をべき乗剰余演算して、その結果を変数Xに代入する。当該ノードと、パス番号1、及び3でつながる子ノードが無効化ノードの場合は、変数Xに対して、素数P2の逆元(1/P2)をべき乗剰余演算して、その結果を変数Xに代入する。当該ノードと、パス番号2、及び3でつながる子ノードが無効化ノードの場合は、変数Xに対して、素数P1の逆元(1/P1)をべき乗剰余演算して、その結果を変数Xに代入する。
It is checked whether or not the child node related to the processing node is an invalidation node (S702).
If only the child node connected to the processing node with the pass number 1 is an invalidation node, the inverse element (1 / P 23 ) of the prime number P 23 is subjected to a power-residue operation on the variable X, and the result is obtained as the variable X (S703). When only the child node connected to the node by pass number 2 is an invalidation node, the inverse element (1 / P 13 ) of the prime number P 13 is subjected to a power-residue operation on the variable X, and the result is obtained as the variable X Assign to. When only the child node connected to the node by the pass number 3 is an invalidation node, the inverse element (1 / P 12 ) of the prime number P 12 is exponentiated with respect to the variable X, and the result is obtained as the variable X Assign to. When the child node connected to the node by the path numbers 1 and 2 is an invalid node, the inverse of the prime number P 3 (1 / P 3 ) is calculated with respect to the variable X, and the result is calculated. Assign to variable X. If the child node connected to the node by the path numbers 1 and 3 is an invalid node, the inverse of the prime number P 2 (1 / P 2 ) is calculated with respect to the variable X, and the result is calculated. Assign to variable X. If the child node connected to the node by the path numbers 2 and 3 is an invalid node, the inverse of the prime number P 1 (1 / P 1 ) is calculated for the variable X and the result is calculated. Assign to variable X.

算出した変数Xの値をKeiに代入して、暗号化鍵Keiを出力する(S704)。
鍵無効化データ生成部206は、以上のS501〜S704の処理を実行することにより、暗号鍵Ke1〜Ke5を生成し、Ke1〜Ke5それぞれを用いて、鍵情報格納部203が保持しているメディア鍵Kmを暗号化する。
また、無効化すべき装置が存在しない場合には、鍵管理装置100は鍵情報格納部203に格納する乱数Sを唯一の暗号化鍵として、メディア鍵を暗号化することとなり、記録媒体120には、図11(b)に示すような鍵無効化データが記録される。
The calculated value of the variable X is substituted for Kei, and the encryption key Kei is output (S704).
The key revocation data generation unit 206 generates the encryption keys Ke1 to Ke5 by executing the processes of S501 to S704 described above, and the media held by the key information storage unit 203 using each of Ke1 to Ke5. The key Km is encrypted.
If there is no device to be invalidated, the key management device 100 encrypts the media key using the random number S stored in the key information storage unit 203 as the only encryption key. The key revocation data as shown in FIG. 11B is recorded.

鍵無効化データ生成部206は、記録媒体120に対し、書込部208を介して、鍵無効化データ121の書き込みを行う。
なお、記録媒体120は、DVD(Digital Versatile Disc)、CD(Compact Disc)、BD(Blu−ray Disc)等の可搬型の記録メディアである。
The key revocation data generation unit 206 writes the key revocation data 121 to the recording medium 120 via the writing unit 208.
The recording medium 120 is a portable recording medium such as a DVD (Digital Versatile Disc), a CD (Compact Disc), and a BD (Blu-ray Disc).

図15は、記録媒体120に記録されるデータを模式的に示す図である。
鍵無効化データ部121は、図11に示した鍵無効化データが記録される。
暗号化コンテンツ鍵部122には、記録装置110により暗号化されたコンテンツ鍵が書き込まれ、暗号化コンテンツ部123には、記録装置110により、前記コンテンツ鍵を用いて暗号化されたコンテンツが書き込まれる。
FIG. 15 is a diagram schematically showing data recorded on the recording medium 120.
The key revocation data unit 121 records the key revocation data shown in FIG.
The content key encrypted by the recording device 110 is written in the encrypted content key portion 122, and the content encrypted by the recording device 110 using the content key is written in the encrypted content portion 123. .

書込部208は、鍵無効化データ生成部206が生成した暗号化鍵を、記録媒体120に記録する。
<記録装置110>
記録装置110は、自装置内に保持するコンテンツ鍵を用いて著作権を保護すべきコンテンツを暗号化し、記録媒体120に記録した後、鍵管理装置100から取得したデバイス鍵と、当該鍵無効化データとを用いて、メディア鍵を生成し、前記コンテンツ鍵を当該メディア鍵で暗号化し、前記記録媒体120に記録する。
The writing unit 208 records the encryption key generated by the key revocation data generation unit 206 on the recording medium 120.
<Recording device 110>
The recording device 110 encrypts the content to be protected by using the content key held in the device, records the content on the recording medium 120, and then obtains the device key obtained from the key management device 100 and the key invalidation. A media key is generated using the data, and the content key is encrypted with the media key and recorded on the recording medium 120.

図16は、記録装置110の構成を示すブロック図である。
記録装置110は、図16に示すように、通信部1000と、デバイス鍵格納部1001と、復号鍵生成部1002と、復号部1003と、暗号化部1004と、暗号化部1005と、入出力部1006と、記憶部1007とを備え、ハードウェアとしてはCPU、ROM、RAM、ハードディスク、キーボード、ネットワークアダプタ等を備えたコンピュータシステムであり、前記ROM又は前記ハードディスクには、コンピュータプログラムが記憶され、前記CPUが、前記コンピュータプログラムに従って動作することにより、記録装置110は、その機能を実現する。
また、記録装置110は、前述のように、前記木構造の最下位階層であるレイヤ3に属するノードに対応づけられており、装置IDが予め割り当てられている。
FIG. 16 is a block diagram illustrating a configuration of the recording apparatus 110.
As illustrated in FIG. 16, the recording apparatus 110 includes a communication unit 1000, a device key storage unit 1001, a decryption key generation unit 1002, a decryption unit 1003, an encryption unit 1004, an encryption unit 1005, and an input / output Unit 1006 and a storage unit 1007, and a computer system including a CPU, a ROM, a RAM, a hard disk, a keyboard, a network adapter, etc. as hardware, and a computer program is stored in the ROM or the hard disk, The recording device 110 realizes its functions by the CPU operating according to the computer program.
Further, as described above, the recording device 110 is associated with a node belonging to layer 3 which is the lowest hierarchy of the tree structure, and a device ID is assigned in advance.

通信部1000は、ネットワークアダプタとその制御部とから成り、ネットワークを介して鍵管理装置100と通信を行う。
デバイス鍵格納部1001は、不揮発性メモリ等の記憶装置とその制御部とから成り、通信部1000が受信したデバイス鍵を格納する。
復号鍵生成部1002は、入出力部1006を介して記録媒体120から鍵無効化データ121を読み出し、鍵無効化データ121と、デバイス鍵格納部1001が保持するデバイス鍵とを用い、復号鍵を算出する。
The communication unit 1000 includes a network adapter and its control unit, and communicates with the key management apparatus 100 via a network.
The device key storage unit 1001 includes a storage device such as a nonvolatile memory and its control unit, and stores the device key received by the communication unit 1000.
The decryption key generation unit 1002 reads the key revocation data 121 from the recording medium 120 via the input / output unit 1006, and uses the key revocation data 121 and the device key held by the device key storage unit 1001 to generate a decryption key. calculate.

ここで、復号鍵生成部1002は、デバイス鍵の生成に必要な6個の素数P1、P2、P3、P12、P13、P23を予め保持しているものとする。
以下に、復号鍵生成部1002が、復号鍵を算出する処理について説明する。
図17及び図18は、復号鍵を生成する処理を表すフローチャートである。
復号鍵生成部1002は、入出力部1006を介し記録媒体120に記録されている鍵無効化データの先頭の鍵無効化エントリを処理フィールドとして読み出す(S1201)。
Here, it is assumed that the decryption key generation unit 1002 holds in advance six prime numbers P 1 , P 2 , P 3 , P 12 , P 13 , and P 23 necessary for generating a device key.
Hereinafter, a process in which the decryption key generation unit 1002 calculates a decryption key will be described.
17 and 18 are flowcharts showing processing for generating a decryption key.
The decryption key generation unit 1002 reads out the first key revocation entry of the key revocation data recorded on the recording medium 120 via the input / output unit 1006 as a processing field (S1201).

復号鍵生成部1002は、処理フィールドが存在するか否かを判定する(S1202)。即ち、鍵無効化データの全フィールドを読み出してしまい、処理フィールドがない場合、全フィールドのチェックが完了し、処理フィールドがあった場合には、全フィールドのチェックが未完了であると判定する。
全フィールドのチェックが、完了している場合(S1202=NO)、本装置が、無効化されていることを示すので処理を終了する。
The decryption key generation unit 1002 determines whether a processing field exists (S1202). That is, if all the fields of the key revocation data are read and there are no processing fields, all the fields are checked, and if there are processing fields, it is determined that all the fields are not checked.
If all the fields have been checked (S1202 = NO), this apparatus indicates that it has been invalidated, and the process ends.

全フィールドのチェックが、未完了の場合(S1202=YES)、処理フィールドに記載されたノードIDと、前記装置IDの上位から前記ノードIDの桁数分とが、一致するか否かを判定する(S1203)。但し、処理フィールドに記載されたノードIDが「0」である場合には、一致すると判定する。
一致しないと判定した場合(S1203=NO)、復号鍵生成部1002は、前回読み出した鍵無効化エントリの次の鍵無効化エントリを、処理フィールドとして読み出す(S1205)。
If all the fields have not been checked (S1202 = YES), it is determined whether the node ID described in the processing field matches the number of digits of the node ID from the top of the device ID. (S1203). However, when the node ID described in the processing field is “0”, it is determined that they match.
When it is determined that they do not match (S1203 = NO), the decryption key generation unit 1002 reads the key revocation entry next to the key revocation entry read last time as a processing field (S1205).

一致すると判定した場合(S1203=YES)、前記木構造において、対応装置を示すノード(レイヤ3に属する)が、前記処理フィールドに記載のノードIDで示されるノードから、前記処理フィールドに記載のパス番号で示されるパスを経由して到達するノード(以下、子孫ノードという。)であるか否か判定する(S1204)。
子孫ノードでなかった場合(S1204=NO)、S1205へ進む。
When it is determined that they match (S1203 = YES), in the tree structure, the node indicating the corresponding device (belonging to layer 3) is the path described in the processing field from the node indicated by the node ID described in the processing field. It is determined whether or not the node arrives via a path indicated by a number (hereinafter referred to as a descendant node) (S1204).
If it is not a descendant node (S1204 = NO), the process proceeds to S1205.

子孫ノードであった場合(S1204=YES)、復号鍵生成部1002は、入出力部1006を介し、記録媒体120に記録されている鍵無効化データの、処理フィールドに対応する暗号化メディア鍵を処理暗号化メディア鍵として読み出す(S1206)。
復号鍵生成部1002は、計算に用いる各変数の初期化を行う。変数Xに前記デバイス鍵Kiを代入し、変数Jに前記装置IDの桁数を代入する(S1301)。
If it is a descendant node (S1204 = YES), the decryption key generation unit 1002 receives the encrypted media key corresponding to the processing field of the key revocation data recorded in the recording medium 120 via the input / output unit 1006. It reads out as a process encryption media key (S1206).
The decryption key generation unit 1002 initializes each variable used for calculation. The device key Ki is substituted into the variable X, and the number of digits of the device ID is substituted into the variable J (S1301).

復号鍵生成部1002は、ID(J)の示すパスが、前記処理フィールドに記載のノードIDが示すノードと直接繋がっているか否かを判定する(S1302)。 図18において、「ID(J)」の記載は、前記装置IDの下位桁からJ番目のパス番号を示している。例えば、装置IDが「312」である装置20の場合、ID(1)=2、ID(2)=1、ID(3)=3となる。   The decryption key generation unit 1002 determines whether the path indicated by the ID (J) is directly connected to the node indicated by the node ID described in the processing field (S1302). In FIG. 18, “ID (J)” indicates the J-th pass number from the lower digit of the device ID. For example, in the case of the device 20 whose device ID is “312”, ID (1) = 2, ID (2) = 1, and ID (3) = 3.

繋がっていない場合(S1302=NO)、変数Xに対して、ID(J)に対応する素数の積Pxをべき乗剰余演算して、その結果を変数Xに代入する(S1303)。
ただし、ID(J)に対応する素数Pxとは、ID(J)=1の場合はPx=P11213であり、ID(J)=2の場合はPx=P21223、ID(J)=3の場合はPx=P31323である。
If not connected (S1302 = NO), the product Px of the prime number corresponding to ID (J) is exponentiated with respect to the variable X, and the result is substituted into the variable X (S1303).
However, the prime Px corresponding to ID (J) is Px = P 1 P 12 P 13 when ID (J) = 1, and Px = P 2 P 12 P when ID (J) = 2. 23 , ID (J) = 3, Px = P 3 P 13 P 23 .

次に、変数Xに対しては1を加算して、その結果を変数Xに代入し、変数Jに対しては1を減算して、その結果を変数Jに代入する(S1304)。
繋がっている場合には(S1302=YES)、変数Xに対して、ID(J)に対応する素数の積Pxから処理フィールドにより示される素数Pyを除いたものをべき乗剰余演算して、その結果を変数Xに代入する(S1305)。
Next, 1 is added to the variable X, and the result is substituted into the variable X, and 1 is subtracted from the variable J, and the result is substituted into the variable J (S1304).
If they are connected (S1302 = YES), a power residue operation is performed on the variable X by removing the prime Py indicated by the processing field from the product Px of the primes corresponding to ID (J), and the result Is substituted into the variable X (S1305).

前述のPyにおけるyは、前記処理フィールドの選択パス番号を示しており、例えば、選択パス番号が「12」であれば、Pyは、P12であり、ID(J)=1の場合、Px=P11213のうちPyであるP12を除いたP113をべき乗剰余演算して、その結果を変数Xに代入することとなる。
ここで、図中の「Px/Py」の記載は、上述した通り、P12は用いずに、P113を計算することを意味しており、Px=P11213に、PyであるP12の逆元である1/P12を掛けることを意味するものではない。
The y in the aforementioned Py indicates the selected path number of the processing field. For example, if the selected path number is “12”, Py is P 12 , and if ID (J) = 1, Px = P 1 P 12 Of P 13 , P 1 P 13 excluding P 12 that is Py is subjected to exponentiation and the result is substituted into variable X.
Here, the description of “Px / Py” in the figure means that P 1 P 13 is calculated without using P 12 as described above, and Px = P 1 P 12 P 13 It does not mean that 1 / P 12 that is the inverse element of P 12 that is Py is multiplied.

算出した変数Xの値をKdiに代入して、復号鍵Kdiを出力する(S1306)。
復号鍵生成部1002は、S1206で取り出した暗号化メディア鍵を、S1306で得た復号鍵Kdiで復号しメディア鍵を取得する(S1307)。
以上のステップにより、無効化されていない各装置は自身が保有するデバイス鍵から復号鍵を求めることができ、求めた復号鍵を使ってメディア鍵を復号することができる。一方、無効化されている装置が保有するデバイス鍵では、いずれの復号鍵も求めることができないため、メディア鍵を復号することができない。
The calculated value of the variable X is substituted for Kdi, and the decryption key Kdi is output (S1306).
The decryption key generation unit 1002 obtains the media key by decrypting the encrypted media key extracted in S1206 with the decryption key Kdi obtained in S1306 (S1307).
Through the above steps, each device that has not been revoked can obtain the decryption key from the device key held by itself, and can decrypt the media key using the obtained decryption key. On the other hand, since no decryption key can be obtained with the device key held by the revoked device, the media key cannot be decrypted.

暗号化部1004は、復号部1003により復号されたメディア鍵を用いて、記憶部1007に記憶されているコンテンツ鍵を暗号化し、入出力部1006を介して、暗号化コンテンツ鍵格納部1012に格納する。
暗号化部1005は、記憶部1007に記憶されているコンテンツ鍵を用い、記憶部1007に記憶されているコンテンツを暗号化し、入出力部1006を介して、暗号化コンテンツ格納部1013に書き込む。
The encryption unit 1004 encrypts the content key stored in the storage unit 1007 using the media key decrypted by the decryption unit 1003, and stores it in the encrypted content key storage unit 1012 via the input / output unit 1006. To do.
The encryption unit 1005 encrypts the content stored in the storage unit 1007 using the content key stored in the storage unit 1007, and writes the encrypted content in the encrypted content storage unit 1013 via the input / output unit 1006.

入出力部1006は、記録媒体120に対するデータの書き込み、及び記録媒体120からのデータの読み出しを行う。
記憶部1007は、著作権を保護すべきコンテンツと、当該コンテンツを暗号化するためのコンテンツ鍵とを予め記憶する。
<再生装置130>
再生装置130は、鍵管理装置100により配布されたデバイス鍵を保持しており、記録媒体120から鍵無効化データを読み出し、デバイス鍵と前記鍵無効化データとを用いてメディア鍵を取得し、記録媒体120から暗号化コンテンツ鍵を読み出し、前記メディア鍵で暗号化コンテンツ鍵を復号し、暗号化コンテンツを読み出して、コンテンツ鍵で復号し、復号したコンテンツを、当該コンテンツの再生を行う。
The input / output unit 1006 writes data to the recording medium 120 and reads data from the recording medium 120.
The storage unit 1007 stores in advance a content whose copyright is to be protected and a content key for encrypting the content.
<Reproducing apparatus 130>
The playback device 130 holds the device key distributed by the key management device 100, reads the key revocation data from the recording medium 120, acquires the media key using the device key and the key revocation data, The encrypted content key is read from the recording medium 120, the encrypted content key is decrypted with the media key, the encrypted content is read, decrypted with the content key, and the decrypted content is reproduced.

図19は、再生装置130の構成を示すブロック図である。
再生装置130は、図19に示すように、通信部1100と、デバイス鍵格納部1101と、復号鍵生成部1102と、復号部1103と、復号部1104と、復号部1105と、入出力部1106と、再生部1107とを備え、ハードウェアとしてはCPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、ハードディスク、ネットワークアダプタ、トランスポートデコーダ、フロントエンド等を備えたDVDレコーダ等の記録再生装置であり、ROM又は前記ハードディスクには、コンピュータプログラムが記憶され、前記CPUが、上記コンピュータプログラムに従って動作することにより、再生装置130は、その機能を実現する。
FIG. 19 is a block diagram showing the configuration of the playback device 130.
As illustrated in FIG. 19, the playback device 130 includes a communication unit 1100, a device key storage unit 1101, a decryption key generation unit 1102, a decryption unit 1103, a decryption unit 1104, a decryption unit 1105, and an input / output unit 1106. And a playback unit 1107. As a hardware, a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), a hard disk, a network adapter, a transport decoder, a front end, etc. A recording / playback device such as a recorder, and the ROM or the hard disk stores a computer program, and the playback device 130 realizes its function by the CPU operating according to the computer program. .

通信部1100は、ネットワークアダプタとその制御部から成り、ネットワークを介して、鍵管理装置100と通信を行う。
デバイス鍵格納部1101は、不揮発性メモリ等の記録装置とその制御部とから成り、通信部1100が、鍵管理装置100より発行されたデバイス鍵を取得した場合に、当該デバイス鍵を格納する。
The communication unit 1100 includes a network adapter and its control unit, and communicates with the key management apparatus 100 via the network.
The device key storage unit 1101 includes a recording device such as a nonvolatile memory and its control unit, and stores the device key when the communication unit 1100 acquires a device key issued from the key management device 100.

また、前記デバイス鍵は、予め、ROMに書き込まれていてもよい。
復号鍵生成部1102は、入出力部1106を介して記録媒体120から鍵無効化データ121を読み出し、鍵無効化データ121と、デバイス鍵格納部1101が保持するデバイス鍵とを用い、復号鍵を算出する。
復号鍵生成部1102は、デバイス鍵の生成に必要な6個の素数P1、P2、P3、P12、P13、P23を予め保持しているものとし、復号鍵生成部1002と同様、図17、図18で示したフローチャートに従い前記復号鍵を算出する。
The device key may be written in the ROM in advance.
The decryption key generation unit 1102 reads the key revocation data 121 from the recording medium 120 via the input / output unit 1106, and uses the key revocation data 121 and the device key held by the device key storage unit 1101 to generate a decryption key. calculate.
The decryption key generation unit 1102 holds six prime numbers P 1 , P 2 , P 3 , P 12 , P 13 , and P 23 necessary for generating a device key in advance, and the decryption key generation unit 1002 Similarly, the decryption key is calculated according to the flowcharts shown in FIGS.

上述した、図17、図18についての説明において、入出力部1006を入出力部1106と読替え、復号鍵生成部1002を、復号鍵生成部1102と読み替えることにより、復号鍵生成部1102が行う復号鍵の生成処理が説明できる。
ここで、例えば、図3に示した木構造に関し、装置1がデバイス鍵K1から復号鍵Kd4を求めるためには、デバイス鍵K1に対して、P11213をべき乗剰余演算して、さらにP23の逆元(1/P23)をべき乗剰余演算しなければならない。しかし、法n(n:n=p×q)に関する素数p、qは、鍵管理装置100だけが知る秘密の値であり、各装置はその値を知らないため、素数P23から、その逆元1/P23を求めることは、計算量的に困難である。
17 and 18 described above, the decryption key generation unit 1102 performs decryption by replacing the input / output unit 1006 with the input / output unit 1106 and replacing the decryption key generation unit 1002 with the decryption key generation unit 1102. Explain the key generation process.
Here, for example, with respect to the tree structure shown in FIG. 3, in order for the device 1 to obtain the decryption key Kd4 from the device key K1, P 1 P 12 P 13 is exponentiated with respect to the device key K1, and Furthermore it shall modular exponentiation operation the inverse element of P 23 (1 / P 23) . However, Law n (n: n = p × q) relating to prime numbers p, q is a value of a secret only key management apparatus 100 to know, because each device does not know its value, from prime P 23, and vice versa obtaining the original 1 / P 23 is calculated is quantitatively difficult.

したがって、無効化されている装置1は自身が保有するデバイス鍵K1から復号鍵Kd4を求めることができない。
同様の理由により、装置1は、Kd1〜Kd3、Kd5のいずれの復号鍵も求めることができず、さらに、装置26も、Kd1〜Kd5のいずれの復号鍵も求めることができないため、無効化すべき不正装置によるコンテンツの著作権侵害を防止することが可能となる。
Therefore, the revoked device 1 cannot obtain the decryption key Kd4 from the device key K1 held by itself.
For the same reason, the device 1 cannot obtain any of the decryption keys Kd1 to Kd3 and Kd5, and the device 26 cannot obtain any of the decryption keys Kd1 to Kd5. It is possible to prevent copyright infringement of content by an unauthorized device.

復号部1103は、入出力部1106を介して、記録媒体120から暗号化メディア鍵を読み出し、復号鍵生成部1102で生成した復号鍵を用いて、当該暗号化メディア鍵を復号し、メディア鍵を取得する。
復号部1104は、復号部1103により復号されたメディア鍵を用いて、記録媒体120から読み出した暗号化コンテンツ鍵を復号し、コンテンツ鍵を得る。
The decryption unit 1103 reads the encrypted media key from the recording medium 120 via the input / output unit 1106, decrypts the encrypted media key using the decryption key generated by the decryption key generation unit 1102, and obtains the media key. get.
The decrypting unit 1104 decrypts the encrypted content key read from the recording medium 120 using the media key decrypted by the decrypting unit 1103 to obtain a content key.

復号部1105は、記録媒体120から暗号化コンテンツを読み出し、前記コンテンツ鍵を用いて、前記暗号化コンテンツを復号し、コンテンツを得る。
入出力部1106は、記録媒体120に対する情報の入出力を行う。
再生部1107は、復号部1105が得たコンテンツを再生する。
<動作>
鍵管理装置100が3分木を用いて27台の装置を管理する場合の著作権保護システムの全体動作について述べる。
The decrypting unit 1105 reads the encrypted content from the recording medium 120, decrypts the encrypted content using the content key, and obtains the content.
The input / output unit 1106 inputs / outputs information to / from the recording medium 120.
The playback unit 1107 plays back the content obtained by the decryption unit 1105.
<Operation>
The overall operation of the copyright protection system when the key management apparatus 100 manages 27 devices using a tri-tree will be described.

鍵管理装置100において、素数割当部201は、図3に示した木構造である3分木を用いるので、図6に示すフローチャートに従い、図5(a)に示す素数表を生成し保持する。素数表の生成過程で生成した、23−2=6個の素数、P1、P2、P3、P12、P13、P23は、記録装置110と再生装置130に予め配布される。ここで再生装置130は、図3に示した木構造における、装置26であるとする。 In the key management apparatus 100, the prime number assignment unit 201 uses the tri-tree having the tree structure shown in FIG. 3, and therefore generates and holds the prime number table shown in FIG. 5A according to the flowchart shown in FIG. The 2 3 −2 = 6 prime numbers P 1 , P 2 , P 3 , P 12 , P 13 , and P 23 generated in the generation process of the prime table are distributed to the recording device 110 and the playback device 130 in advance. . Here, it is assumed that the playback device 130 is the device 26 in the tree structure shown in FIG.

次に、デバイス鍵生成部204は、素数割当部201により生成され鍵情報格納部203に保持されたP1〜P23と、乱数生成部202により生成された乱数Sとを用い、図7に示したフローチャートに従い、各再生装置に対するデバイス鍵を生成する。
ここで、装置26に対するデバイス鍵K26は、
K26 = ((S^(1/(P31323))+1)^(1/(P31323))+1)^(1/(P21223))
である。
Next, the device key generation unit 204 uses P1 to P23 generated by the prime number allocation unit 201 and held in the key information storage unit 203, and the random number S generated by the random number generation unit 202, as shown in FIG. A device key for each playback device is generated according to the flowchart.
Here, the device key K26 for the device 26 is
K26 = ((S ^ (1 / (P 3 P 13 P 23)) + 1) ^ (1 / (P 3 P 13 P 23)) + 1) ^ (1 / (P 2 P 12 P 23))
It is.

生成したデバイス鍵K26は、送信部207を介して、K26に対応する装置である再生装置130に配布する。
再生装置130において、通信部1100がK26を受信し、デバイス鍵格納部1101がK26を保持する。
次に、再生装置によりコンテンツが再生されるまでの動作を、無効化された装置がない場合と、無効化された装置に装置26が含まれない場合と、無効化された装置に装置26が含まれる場合とに分けて述べる。
<無効化された装置がない場合>
鍵管理装置100において、鍵無効化データ生成部206は、無効化された装置がない場合には、図10のフローチャートによらず、図11(b)に示す鍵無効化データを生成し、書込部208が、当該無効化データを記録媒体120に記録する。
The generated device key K26 is distributed to the playback device 130, which is a device corresponding to K26, via the transmission unit 207.
In the playback device 130, the communication unit 1100 receives K26, and the device key storage unit 1101 holds K26.
Next, the operation until the content is played back by the playback device is performed when there is no disabled device, when the disabled device does not include the device 26, and when the disabled device includes the device 26. It will be described separately when it is included.
<When there is no disabled device>
In the key management device 100, when there is no revoked device, the key revocation data generation unit 206 generates the key revocation data shown in FIG. The inserting unit 208 records the invalidation data on the recording medium 120.

鍵無効化データが記録された記録媒体120は、記録装置110へと転送される。
次に、記録装置110は、記録媒体120に記録された鍵無効化データと、無効化されていない装置に対するデバイス鍵、ここではK26を用い、図12〜図14のフローチャートに従い、復号鍵Sを生成する。
記録装置110は、復号鍵Sを用い、前記鍵無効化データに記録された暗号化メディア鍵を復号して、メディア鍵を取得する。
The recording medium 120 on which the key revocation data is recorded is transferred to the recording device 110.
Next, the recording device 110 uses the key revocation data recorded on the recording medium 120 and the device key for the device that has not been revoked, here K26, and uses the decryption key S according to the flowcharts of FIGS. Generate.
The recording device 110 uses the decryption key S to decrypt the encrypted media key recorded in the key revocation data to obtain a media key.

記録装置110は、記憶部1007に記憶するコンテンツ鍵を用いて、同じく記憶部1007に記憶するコンテンツを暗号化し、記録媒体120の暗号化コンテンツ部123に記録し、また、前記メディア鍵を用いて、前記コンテンツ鍵を暗号化し、暗号化コンテンツ鍵部122に記録する。
記録媒体120は、販売されるなど配布されて再生装置130の所持者の手元に渡り、再生装置130により再生処理が行われる。
The recording device 110 encrypts the content stored in the storage unit 1007 using the content key stored in the storage unit 1007, records the content in the encrypted content unit 123 of the recording medium 120, and uses the media key. The content key is encrypted and recorded in the encrypted content key unit 122.
The recording medium 120 is distributed, such as sold, and is handed over to the owner of the playback device 130, and playback processing is performed by the playback device 130.

再生装置130において、復号鍵生成部1102は、鍵無効化データ121を用い、図17、図18に示すフローチャートにより、デバイス鍵K26から復号鍵Sを生成する。
復号部1103は、復号鍵Sを用い、前記鍵無効化データに記録された暗号化メディア鍵を復号し、メディア鍵を取得する。復号部1104は、前記メディア鍵を用いて、記録媒体120に記録された暗号化コンテンツ鍵を復号し、コンテンツ鍵を生成する。復号部1105は、前記コンテンツ鍵を用いて、記録媒体120に記録された暗号化コンテンツを復号し、コンテンツを生成する。再生部1107は、前記コンテンツを再生する。
<再生装置130が、無効化されていない装置27である場合>
鍵管理装置100において、鍵無効化データ生成部206は、無効化された装置が装置1及び26である場合に、図10のフローチャートに従い、図11(a)に示す鍵無効化データを生成し、記録媒体120に記録する。
In the playback device 130, the decryption key generation unit 1102 uses the key revocation data 121 to generate the decryption key S from the device key K26 according to the flowcharts shown in FIGS.
The decryption unit 1103 decrypts the encrypted media key recorded in the key revocation data using the decryption key S, and acquires the media key. The decrypting unit 1104 decrypts the encrypted content key recorded on the recording medium 120 using the media key to generate a content key. The decrypting unit 1105 decrypts the encrypted content recorded on the recording medium 120 using the content key to generate content. The playback unit 1107 plays back the content.
<When Playback Device 130 is a Device 27 Not Invalidated>
In the key management apparatus 100, when the revoked devices are the devices 1 and 26, the key revocation data generation unit 206 generates the key revocation data shown in FIG. 11A according to the flowchart of FIG. To be recorded on the recording medium 120.

鍵無効化データが記録された記録媒体120は、記録装置110へと転送される。
次に、記録装置110は、記録媒体120に記録された鍵無効化データと、無効化されていない装置に対するデバイス鍵、ここではK26を用い、図12〜図14のフローチャートに従い、復号鍵Ke5を生成する。
記録装置110は、復号鍵Ke5を用い、前記鍵無効化データに記録された暗号化メディア鍵を復号して、メディア鍵を取得する。
The recording medium 120 on which the key revocation data is recorded is transferred to the recording device 110.
Next, the recording device 110 uses the key revocation data recorded on the recording medium 120 and the device key for the device that has not been revoked, here K26, and uses the decryption key Ke5 according to the flowcharts of FIGS. Generate.
The recording device 110 uses the decryption key Ke5 to decrypt the encrypted media key recorded in the key revocation data to obtain a media key.

記録装置110は、記憶部1007に記憶するコンテンツ鍵を用いて、同じく記憶部1007に記憶するコンテンツを暗号化し、記録媒体120の暗号化コンテンツ部123に記録し、また、前記メディア鍵を用いて、前記コンテンツ鍵を暗号化し、暗号化コンテンツ鍵部122に記録する。
記録媒体120は、販売等に配布され、再生装置130の所持者の手元に渡り、再生装置130により再生処理が行われる。
The recording device 110 encrypts the content stored in the storage unit 1007 using the content key stored in the storage unit 1007, records the content in the encrypted content unit 123 of the recording medium 120, and uses the media key. The content key is encrypted and recorded in the encrypted content key unit 122.
The recording medium 120 is distributed for sale, etc., and is handed over to the owner of the playback device 130 to be played back by the playback device 130.

ここで再生装置130は、無効化されていない装置である装置27であるとする。
再生装置130において、復号鍵生成部1102は、鍵無効化データ121を用い、図17、図18に示すフローチャートにより、デバイス鍵K27から復号鍵Ke5を生成する。
K27は、
K27 = ((S^(1/(P31323))+1)^(1/(P31323))+1)^(1/(P31323))
である。
Here, it is assumed that the playback device 130 is the device 27 that is not disabled.
In the playback device 130, the decryption key generation unit 1102 uses the key revocation data 121 to generate the decryption key Ke5 from the device key K27 according to the flowcharts shown in FIGS.
K27 is
K27 = ((S ^ (1 / (P 3 P 13 P 23)) + 1) ^ (1 / (P 3 P 13 P 23)) + 1) ^ (1 / (P 3 P 13 P 23))
It is.

図3の木構造によると、装置27の装置IDは「333」であり、図17のステップS1203において、鍵無効化データの1〜4行目が処理フィールドである場合には、判定がNoとなり、S1205に進むが、鍵無効化データの5行目のエントリが処理フィールドである場合に、ノードIDである「33」が、装置ID「333」の上位2桁である「33」と一致するので、判定がYesとなり、S1204に処理が進む。   According to the tree structure of FIG. 3, the device ID of the device 27 is “333”, and if the first to fourth lines of the key revocation data are processing fields in step S1203 of FIG. 17, the determination is No. In step S1205, when the entry in the fifth line of the key revocation data is a processing field, the node ID “33” matches the upper two digits “33” of the device ID “333”. Thus, the determination is yes, and the process proceeds to S1204.

S1204において、鍵無効化データの5行目の選択パス番号は「13」であり、装置27は、前記木構造において、パス番号3のパスでN33と繋がっているので、復号鍵生成部1102は、子孫に含まれると判断し、S1206へと進む。
復号鍵生成部1102は、S1206において、対応する暗号化メディア鍵であるE(Ke5,Km)を取り出す。
In S1204, the selected path number in the fifth line of the key revocation data is “13”, and the device 27 is connected to N33 through the path with path number 3 in the tree structure. , The process proceeds to S1206.
In S1206, the decryption key generation unit 1102 extracts E (Ke5, Km), which is the corresponding encrypted media key.

S1301において、XにK27を代入し、Jに3を代入する。
S1302において、ID(3)の示すパス「3」が、選択パス番号である「13」のうちの「3」に該当するため、Yesと判定される。
S1305において、P3、P13、P23のうち、選択パス番号である13で示されるP13を除いた、P3、P23の各逆元を、K27に対し、べき乗剰余演算する。
In S1301, K27 is substituted for X, and 3 is substituted for J.
In S1302, since the path “3” indicated by the ID (3) corresponds to “3” of “13” which is the selected path number, it is determined as Yes.
In S1305, among the P 3, P 13, P 23, except for the P 13 shown by 13 is a selection path number, the respective inverse of P 3, P 23, to K27, to modular exponentiation.

(K27)^(P323)= ((S^(1/(P31323))+1)^(1/(P31323))+1)^(1/(P13)) = Ke5
であり、復号鍵生成部1102は、Ke5を生成できたことになる。
次に、復号部1103は、復号鍵Ke5を用い、前記鍵無効化データに記録された暗号化メディア鍵を復号し、メディア鍵を取得する。
(K27) ^ (P 3 P 23) = ((S ^ (1 / (P 3 P 13 P 23)) + 1) ^ (1 / (P 3 P 13 P 23)) + 1) ^ (1 / (P 13 )) = Ke5
Thus, the decryption key generation unit 1102 has been able to generate Ke5.
Next, the decryption unit 1103 decrypts the encrypted media key recorded in the key revocation data using the decryption key Ke5, and obtains the media key.

復号部1104は、前記メディア鍵を用いて、記録媒体120に記録された暗号化コンテンツ鍵を復号し、コンテンツ鍵を生成する。
復号部1105は、前記コンテンツ鍵を用いて、記録媒体120に記録された暗号化コンテンツを復号し、コンテンツを生成する。
再生部1107は、前記コンテンツを再生する。
<再生装置130が、無効化された装置26である場合>
鍵管理装置100において、鍵無効化データ生成部206は、無効化された装置が装置1及び26である場合に、図10のフローチャートに従い、図11(a)に示す鍵無効化データを生成し、記録媒体120に記録する。
The decrypting unit 1104 decrypts the encrypted content key recorded on the recording medium 120 using the media key to generate a content key.
The decrypting unit 1105 decrypts the encrypted content recorded on the recording medium 120 using the content key to generate content.
The playback unit 1107 plays back the content.
<When the playback device 130 is the disabled device 26>
In the key management apparatus 100, when the revoked devices are the devices 1 and 26, the key revocation data generation unit 206 generates the key revocation data shown in FIG. 11A according to the flowchart of FIG. To be recorded on the recording medium 120.

鍵無効化データが記録された記録媒体120は、記録装置110へと転送される。
次に、記録装置110は、記録媒体120に記録された鍵無効化データと、無効化されていない装置に対するデバイス鍵、ここではK26でないK27を用い、図12〜図14のフローチャートに従い、復号鍵Ke5を生成する。
記録装置110は、復号鍵Ke5を用い、前記鍵無効化データに記録された暗号化メディア鍵を復号して、メディア鍵を取得する。
The recording medium 120 on which the key revocation data is recorded is transferred to the recording device 110.
Next, the recording device 110 uses the key revocation data recorded on the recording medium 120 and the device key for the device that has not been revoked, here K27 that is not K26, and uses the decryption key according to the flowcharts of FIGS. Ke5 is generated.
The recording device 110 uses the decryption key Ke5 to decrypt the encrypted media key recorded in the key revocation data to obtain a media key.

記録装置110は、記憶部1007に記憶するコンテンツ鍵を用いて、同じく記憶部1007に記憶するコンテンツを暗号化し、記録媒体120の暗号化コンテンツ部123に記録し、また、前記メディア鍵を用いて、前記コンテンツ鍵を暗号化し、暗号化コンテンツ鍵部122に記録する。
記録媒体120は、販売等に配布され、再生装置130の所持者の手元に渡り、再生装置130により再生処理が行われる。
The recording device 110 encrypts the content stored in the storage unit 1007 using the content key stored in the storage unit 1007, records the content in the encrypted content unit 123 of the recording medium 120, and uses the media key. The content key is encrypted and recorded in the encrypted content key unit 122.
The recording medium 120 is distributed for sale, etc., and is handed over to the owner of the playback device 130 to be played back by the playback device 130.

ここで再生装置130は、無効化された装置である装置26であるとする。
再生装置130において、復号鍵生成部1102は、鍵無効化データ121を用い、図17、図18に示すフローチャートにより、デバイス鍵K26から復号鍵Ke5の生成を試みる。
しかし、図3の木構造によると、装置26の装置IDは「332」であり、図17のステップS1203において、鍵無効化データの1〜4行目が処理フィールドである場合には、判定がNoとなり、S1205に進むが、鍵無効化データの5行目のエントリが処理フィールドである場合に、ノードIDである「33」が、装置ID「332」の上位2桁である「33」と一致するので、判定がYesとなり、S1204に処理が進む。
Here, it is assumed that the playback device 130 is the device 26 that is a disabled device.
In the playback device 130, the decryption key generation unit 1102 uses the key revocation data 121 and tries to generate the decryption key Ke5 from the device key K26 according to the flowcharts shown in FIGS.
However, according to the tree structure of FIG. 3, the device ID of the device 26 is “332”, and if the first to fourth lines of the key revocation data are processing fields in step S1203 of FIG. No, and the processing proceeds to S1205. However, when the entry in the fifth line of the key revocation data is a processing field, the node ID “33” is changed to “33” which is the upper two digits of the device ID “332”. Since they match, the determination is yes, and the process proceeds to S1204.

S1204において、鍵無効化データの5行目の選択パス番号は「13」であり、装置26は、前記木構造において、パス番号2のパスでN33と繋がっているので、復号鍵生成部1102は、子孫に含まれないと判断し、S1205へと進む。
復号鍵生成部1102は、S1205において、読み出すべきフィールドがなく、S1202において、全フィールドのチェックが完了したと判定し(S1202=Yes)、処理を終了するので、Ke5はもとより、Ke5以外のKe1〜Ke4のいずれの復号鍵も生成することができない。
In S1204, the selection path number in the fifth line of the key revocation data is “13”, and the device 26 is connected to N33 through the path with path number 2 in the tree structure. , It is determined not to be included in the offspring, and the process proceeds to S1205.
The decryption key generation unit 1102 determines that there is no field to be read in S1205, and that all the fields have been checked in S1202 (S1202 = Yes), and ends the process. Therefore, Ke1 as well as Ke5 other than Ke5 are determined. None of the decryption keys for Ke4 can be generated.

また、Ke5の不当な方法での生成を試みる場合、P13の逆元を計算により求める必要があるが、法であるnのみを知り、nを生成するためのp、qを知らないので、P13の逆元を計算することは計算量的に困難である。
また、Ke1〜Ke4のいずれも、Ke5の生成を試みる場合と同等の理由によって、生成することは困難である。
In addition, when trying to generate Ke5 in an unfair manner, it is necessary to calculate the inverse element of P 13 by calculation, but only knows the law n and does not know p and q for generating n. it is computationally difficult to calculate the inverse of P 13.
Moreover, it is difficult to generate any of Ke1 to Ke4 for the same reason as when attempting to generate Ke5.

よって、メディア鍵、コンテンツ鍵等の生成も困難であり、装置26においては、コンテンツの再生ができない。
<その他変形例>
(1)本発明では、記録媒体をDVD−RAMのようなレコーダブルメディアとする構成としたが、本発明はその構成に限定されるものではない。例えば、記録媒体をDVD−Videoのようなプリレコーディッドメディアとして、各再生装置がデバイス鍵を保有して、記録媒体に記録されたコンテンツを再生する構成であってもよい。また、この場合、記録媒体への書き込み装置がデバイス鍵を保有する必要はなく、鍵管理装置から直接メディア鍵を受け取り、そのメディア鍵に基づいてコンテンツを暗号化して書き込む構成であってもよい。
Therefore, it is difficult to generate a media key, a content key, and the like, and the content cannot be reproduced in the device 26.
<Other variations>
(1) In the present invention, the recording medium is a recordable medium such as a DVD-RAM. However, the present invention is not limited to this structure. For example, the recording medium may be a pre-recorded medium such as DVD-Video, and each playback device may have a device key and play content recorded on the recording medium. Further, in this case, the writing device to the recording medium does not need to hold the device key, and the configuration may be such that the media key is directly received from the key management device, and the content is encrypted and written based on the media key.

(2)本発明では、コンテンツを暗号化するメカニズムとして、メディア鍵でコンテンツ鍵を暗号化して、コンテンツ鍵でコンテンツを暗号化する構成としたが、本発明はその構成に限定されるものではない。例えば、メディア鍵で直接コンテンツを暗号化して鍵階層を1つ減らす構成でもよく、逆にディスク鍵を導入して、メディア鍵でディスク鍵を暗号化して、ディスク鍵でコンテンツ鍵を暗号化して、コンテンツ鍵でコンテンツを暗号化して鍵階層を1つ増やす構成であってもよい。あるいは、鍵階層の途中で別途異なる情報を追加して鍵を変調するような構成であってもよい。   (2) In the present invention, as a mechanism for encrypting content, the content key is encrypted with the media key and the content is encrypted with the content key. However, the present invention is not limited to this configuration. . For example, the content may be directly encrypted with the media key to reduce the key hierarchy by one. Conversely, the disc key is introduced, the disc key is encrypted with the media key, the content key is encrypted with the disc key, The content may be encrypted with the content key to increase the key hierarchy by one. Alternatively, the key may be modulated by adding different information separately in the middle of the key hierarchy.

(3)本発明では、鍵無効化データと暗号化コンテンツを同一の記録媒体に記録する構成としたが、本発明はその構成に限定されるものではない。例えば、鍵無効化データを記録する記録媒体と、暗号化コンテンツを記録する記録媒体を変えて配布する構成であってもよい。その場合、記録装置、あるいは再生装置では、まず、鍵無効化データが記録された記録媒体を挿入してメディア鍵を算出してから、別の記録媒体を挿入して、コンテンツの記録、あるいは再生を行う構成となる。   (3) In the present invention, the key revocation data and the encrypted content are recorded on the same recording medium. However, the present invention is not limited to this structure. For example, the recording medium for recording the key revocation data and the recording medium for recording the encrypted content may be distributed and distributed. In that case, the recording device or the playback device first inserts the recording medium in which the key revocation data is recorded to calculate the media key, and then inserts another recording medium to record or play back the content. It becomes the composition which performs.

(4)本発明では、鍵無効化データ、並びに暗号化コンテンツを記録媒体に記録して配布する構成としてが、本発明はその構成に限定されるものではない。例えば、放送や、インターネットなどの通信媒体を利用して配布する構成であってもよい。
(5)本発明では、鍵管理装置が、鍵、あるいは各装置を管理するための木構造を3分木として構成したが、本発明はその構成に限定されるものではない。例えば、木構造は2分木であっても、4分木であってもよい。2分木の場合は、デバイス鍵の生成等に利用する素数は2個であり、4分木の場合は14個となる。
(4) In the present invention, the key invalidation data and the encrypted content are recorded and distributed on the recording medium, but the present invention is not limited to the configuration. For example, it may be configured to distribute using communication media such as broadcasting or the Internet.
(5) In the present invention, the key management device is configured as a ternary tree for managing a key or each device, but the present invention is not limited to this configuration. For example, the tree structure may be a binary tree or a quadtree. In the case of a binary tree, there are two prime numbers used for device key generation and the like, and in the case of a quadtree, there are 14 prime numbers.

(6)本発明では、鍵管理装置におけるデバイス鍵の生成ステップで、レイヤごとにべき乗剰余演算を行った後、1を加算する構成としたが、本発明はその構成に限定されるものではない。例えば、加算する値は2であってもよく、その演算も減算、乗算、除算、XOR演算等、可逆性のある演算であればその演算、並びに演算する値を限定するものではない。   (6) In the present invention, in the device key generation step in the key management apparatus, 1 is added after performing power-residue calculation for each layer. However, the present invention is not limited to this configuration. . For example, the value to be added may be 2, and the operation and the value to be calculated are not limited as long as the operation is a reversible operation such as subtraction, multiplication, division, and XOR operation.

(7)本発明では、記録装置でメディア鍵を暗号化する際、デバイス鍵から算出した暗号化鍵で直接メディア鍵を暗号化する構成としたが、本発明はその構成に限定されるものではない。例えば、暗号化鍵をSHA−1などの圧縮関数へ入力して、その出力値、あるいはその一部で個々のメディア鍵を暗号化していく構成であってもよい。この場合、再生装置でも同様に、算出した復号鍵を圧縮関数に入力してその出力値、あるいはその一部でメディア鍵を復号する。あるいは、算出した暗号化鍵で、当該暗号化鍵よりも短いサイズのブロック鍵を暗号化しておき、そのブロック鍵で個々のメディア鍵を暗号化していく構成であってもよい。この場合、再生装置では、算出した復号鍵で、まずブロック鍵を復号してからメディア鍵を復号する。   (7) In the present invention, when the recording device encrypts the media key, the media key is directly encrypted with the encryption key calculated from the device key. However, the present invention is not limited to this configuration. Absent. For example, the configuration may be such that an encryption key is input to a compression function such as SHA-1 and each media key is encrypted with its output value or a part thereof. In this case, similarly in the reproduction apparatus, the calculated decryption key is input to the compression function, and the media key is decrypted with the output value or a part thereof. Alternatively, the block key having a shorter size than the encryption key may be encrypted with the calculated encryption key, and each media key may be encrypted with the block key. In this case, the playback device first decrypts the block key with the calculated decryption key and then decrypts the media key.

(8)本発明では、各レイヤ、各ノードで共通の素数を利用する形態としたが、本発明はその構成に限定されるものではない。例えば、レイヤごとに利用する素数の集合を変えたり、ノードごとに利用する素数の集合を変えたりする構成であってもよい。
(9)本発明の実施の形態では、3分木の木構造の例で、6つの素数を利用する形態を示した。本発明では、この6つの素数に特に制限はなく、計算量の削減を目的として、小さい6つの素数を選択することも可能である。具体的には、この6つの素数は、小さい順に、3、5、7、11、13、17の6つであってもよい。
(8) In the present invention, a common prime number is used in each layer and each node, but the present invention is not limited to the configuration. For example, the configuration may be such that the set of prime numbers used for each layer is changed, or the set of prime numbers used for each node is changed.
(9) In the embodiment of the present invention, an example of a tree structure of a triple tree has been described in which six prime numbers are used. In the present invention, the six prime numbers are not particularly limited, and for the purpose of reducing the amount of calculation, it is possible to select six small prime numbers. Specifically, the six prime numbers may be three, 5, 5, 11, 11, 13, 17 in ascending order.

(10)本発明では、素数を予め生成して保持する形態を示したが、本発明はその構成に限定されるものではない。例えば、素数生成のルールだけを予め決めておき、その都度素数を生成してから演算を実行する構成であってもよい。
(11)各装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレィユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAM又は前記ハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムに従って動作することにより、各装置は、その機能を達成する。
(10) In the present invention, a form in which prime numbers are generated and held in advance has been shown, but the present invention is not limited to this configuration. For example, the configuration may be such that only the rules for generating prime numbers are determined in advance, and the calculation is executed after generating the prime numbers each time.
(11) Specifically, each device is a computer system including a microprocessor, ROM, RAM, a hard disk unit, a display unit, a keyboard, a mouse, and the like. A computer program is stored in the RAM or the hard disk unit. Each device achieves its function by the microprocessor operating according to the computer program.

(12)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラム又は前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD―ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなど、に記録したものとしてもよい。また、これらの記録媒体に記録されている前記コンピュータプログラム又は前記デジタル信号であるとしてもよい。
(12) The present invention may be the method described above. Further, the present invention may be a computer program that realizes these methods by a computer, or may be a digital signal composed of the computer program.
The present invention also provides a computer-readable recording medium such as a flexible disk, hard disk, CD-ROM, MO, DVD, DVD-ROM, DVD-RAM, BD (Blu-ray Disc). ), Recorded in a semiconductor memory or the like. Further, the present invention may be the computer program or the digital signal recorded on these recording media.

また、本発明は、前記コンピュータプログラム又は前記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送するものとしてもよい。
また、本発明は、マイクロプロセッサとメモリとを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムに従って動作するとしてもよい。
In the present invention, the computer program or the digital signal may be transmitted via an electric communication line, a wireless or wired communication line, a network represented by the Internet, or the like.
The present invention may be a computer system including a microprocessor and a memory, wherein the memory stores the computer program, and the microprocessor operates according to the computer program.

また、前記プログラム又は前記デジタル信号を前記記録媒体に記録して移送することにより、又は前記プログラム又は前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
(13)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
In addition, the program or the digital signal is recorded on the recording medium and transferred, or the program or the digital signal is transferred via the network or the like, and is executed by another independent computer system. It is good.
(13) The above embodiment and the above modifications may be combined.

本発明の著作権保護システムは、著作権の保護が必要であるコンテンツを暗号化して配布する配布システムと、暗号化されたコンテンツを復号して再生する再生装置とから成るシステムの基盤技術として使用されるものであり、前記配布システム及び前記再生装置は、デジタルコンテンツを再生するデジタル家電等の製造業者により生産等がなされる。   The copyright protection system of the present invention is used as a basic technology of a system comprising a distribution system that encrypts and distributes content that requires copyright protection, and a playback device that decrypts and plays back the encrypted content. The distribution system and the playback device are produced by a manufacturer such as a digital home appliance that plays back digital content.

本発明の著作権保護システムの構成の概略を示す図である。It is a figure which shows the outline of a structure of the copyright protection system of this invention. 本発明の著作権保護システム全体の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of the copyright protection system whole of this invention. 27台の装置を管理するための3分木である木構造を示す図である。It is a figure which shows the tree structure which is a triple tree for managing 27 apparatuses. 本発明の鍵管理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the key management apparatus of this invention. 素数割当部が生成して保持する素数表を示す図である。It is a figure which shows the prime table which a prime number allocation part produces | generates and hold | maintains. a分木について、素数割当部が、素数表を生成するための処理を示すフローチャートである。It is a flowchart which shows the process for a prime number allocation part to produce | generate a prime table about a branch tree. デバイス鍵生成部が、3分木である木構造に基づきデバイス鍵を生成する処理を示すフローチャートである。It is a flowchart which shows the process which a device key production | generation part produces | generates a device key based on the tree structure which is a triple tree. 木構造において、装置を無効化する場合の暗号化鍵を出力するノードと暗号化鍵の値との関係を模式的に示す図である。In a tree structure, it is a figure which shows typically the relationship between the node which outputs the encryption key in the case of invalidating an apparatus, and the value of an encryption key. 無効化装置特定部が保持する、無効化装置識別情報と木構造とに基づく無効表を示す図である。It is a figure which shows the invalid table based on the invalidation apparatus identification information and tree structure which an invalidation apparatus specific | specification part hold | maintains. 鍵無効化データ生成部における、鍵無効化データのヘッダ部を生成するための処理を示すフローチャートである。It is a flowchart which shows the process for producing | generating the header part of key revocation data in a key revocation data production | generation part. 記録媒体に記録される鍵無効化データのデータ構造を示す図である。It is a figure which shows the data structure of the key revocation data recorded on a recording medium. 暗号鍵を生成する際の動作を示すフローチャートである。It is a flowchart which shows the operation | movement at the time of producing | generating an encryption key. 暗号鍵を生成する際の動作を示すフローチャートである。It is a flowchart which shows the operation | movement at the time of producing | generating an encryption key. 暗号鍵を生成する際の動作を示すフローチャートである。It is a flowchart which shows the operation | movement at the time of producing | generating an encryption key. 記録媒体に記録されるデータを模式的に示す図である。It is a figure which shows typically the data recorded on a recording medium. 本発明の記録装置の構成を示すブロック図である。1 is a block diagram illustrating a configuration of a recording apparatus of the present invention. 復号鍵を生成する処理を表すフローチャートである。It is a flowchart showing the process which produces | generates a decryption key. 復号鍵を生成する処理を表すフローチャートである。It is a flowchart showing the process which produces | generates a decryption key. 再生装置の構成を示すブロック図である。It is a block diagram which shows the structure of a reproducing | regenerating apparatus.

符号の説明Explanation of symbols

100 鍵管理装置
110 記録装置
120 記録媒体
121 鍵無効化データ部
122 暗号化コンテンツ鍵部
123 暗号化コンテンツ部
130 再生装置
DESCRIPTION OF SYMBOLS 100 Key management apparatus 110 Recording apparatus 120 Recording medium 121 Key invalidation data part 122 Encrypted content key part 123 Encrypted content part 130 Playback apparatus

Claims (20)

自然数である被演算値Sを保持している保持手段と、
被演算値Sを読み出す読出手段と、
(2a−2)個(aは2以上の自然数)の相異なる素数から、
Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出手段と、
有限体上のべき乗剰余演算
S’= S1/P mod N (式1)
(Nは素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記選出手段により選出された全素数の積)
を行う演算手段と 前記演算手段により演算された演算結果値S’に可逆演算を施し、可逆演算結果値を得る可逆演算手段と、
前記可逆演算手段により演算された可逆演算結果値を、前記保持手段に保持している前記被演算値Sに、前記被演算値Sとして上書きする書込手段とを備え、
前記選出手段による選出、前記演算手段によるべき乗剰余演算、前記可逆演算手段による可逆演算、前記書込手段による可逆演算結果値の前記保持手段への上書きを繰り返すよう制御する
ことを特徴とするべき乗剰余演算装置。
Holding means for holding the operand value S, which is a natural number;
Reading means for reading the operand value S;
From (2 a -2) different prime numbers (a is a natural number of 2 or more),
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
A selection means for selecting the number of primes indicated by
Power-residue operation on a finite field S ′ = S 1 / P mod N (Formula 1)
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and P is the product of all prime numbers selected by the selection means)
Calculating means for performing performs reversible operation on the operation result value S 'calculated by said calculating means, and the reversible arithmetic means for obtaining a reversible operation result value,
Writing means for overwriting the operand value S held in the holding means with the operand value S calculated by the lossless operator as the operand value S;
The power remainder is controlled to repeat selection by the selection means, power residue calculation by the calculation means, reversible calculation by the reversible calculation means, and overwriting of the reversible calculation result value by the writing means to the holding means. Arithmetic unit.
前記選出手段は、
a分木のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の前記素数を記憶している素数記憶手段と、
a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得手段と、
前記素数記憶手段に記憶されている(2a−2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選択手段と
を備えることを特徴とする請求項に記載のべき乗剰余演算装置。
The selection means is:
Combinations for selecting the number of branches are generated for each of all the numbers from 1 to (a-1) from a branches connected to any node of the a branch tree, and all the generated combinations Prime number storage means for storing (2 a -2) prime numbers corresponding to any one of
branch acquisition means for acquiring branch designation information for designating one of the a branches;
A prime number selecting means for selecting all prime numbers corresponding to combinations including a branch designated by the branch designation information from the (2 a -2) prime numbers stored in the prime number storage means. The power-residue calculating device according to claim 1 .
前記べき乗剰余演算装置は
a分木のルートから1のリーフまでの経路上の各枝について、ルートからリーフへの順序で、前記枝取得手段、前記素数選択手段、前記演算手段、前記可逆演算手段、前記書込手段に対して、それぞれ、当該枝を指定する枝指定情報の取得と、指定された枝を含む組合せに対応する全ての素数の選択と、式1に基づくべき乗剰余演算と、演算結果値S’への可逆演算と、可逆演算結果値の前記保持手段への上書きとを繰り返すように制御する繰返制御手段
を備えることを特徴とする請求項に記載のべき乗剰余演算装置。
The power-residue computing device is :
For each branch on the path from the root of the a-tree to one leaf, in the order from the root to the leaf, the branch acquisition means, the prime number selection means, the calculation means, the reversible calculation means, and the writing means On the other hand, acquisition of branch designation information for designating the branch, selection of all prime numbers corresponding to the combination including the designated branch, power-residue calculation based on Equation 1, and calculation result value S ′ The exponentiation remainder calculation apparatus according to claim 2 , further comprising: a repetitive control unit that performs control so as to repeat reversible calculation and rewriting of the reversible calculation result value to the holding unit.
前記可逆演算手段は、前記演算手段により演算された演算結果値S’に定数を加算して、可逆演算結果値を得る
ことを特徴とする請求項に記載のべき乗剰余演算装置。
The exponentiation remainder calculation apparatus according to claim 1 , wherein the reversible calculation means obtains a reversible calculation result value by adding a constant to the calculation result value S 'calculated by the calculation means.
分木(aは2以上の自然数)のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の素数を記憶している素数記憶手段と、
a分木のルートからいずれかのリーフへの経路上の全枝は無効化されており、前記素数記憶手段に記憶されている(2a−2)個の前記素数から、前記いずれかのノードに接続するa個の枝のうち、無効化されていない枝全てを含む組合せに対応する素数を選出する有効素数選出手段と、
被演算値Tを保持するための保持手段と、
有限体上のべき乗剰余演算
1/P mod N (式2)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記有効素数選出手段により選出された素数である) を行う演算手段と
自然数である被演算値Sを記憶している記憶手段と、
被演算値Sを読み出す読出手段と、
a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得手段と、
前記素数記憶手段に記憶されている(2 a −2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選出手段と、
有限体上のべき乗剰余演算
S’=S 1/Q mod N (式3)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記素数選出手段により選出された全素数の積である)
を行う生成手段と、
前記生成手段により演算された演算結果値S’に可逆演算を施して、前記記憶手段に記憶している前記被演算値Sに、前記被演算値Sとして上書きする第1書込手段と、
a分木のルートから1のノードまでの経路上の各枝について、ルートから前記ノードへの順序で、前記枝取得手段、前記素数選出手段、前記生成手段、前記第1書込手段に対して、それぞれ、当該枝を指定する枝指定情報の取得と、指定された枝を含む組合せに対応する全ての素数の選択と、式3に基づくべき乗剰余演算と、演算された演算結果値S’への可逆演算及び可逆演算結果の上書きとを繰り返すように制御する繰返制御手段と、
前記繰返制御手段による繰り返し制御により得られた結果値S’を、Tとして前記保持手段に書き込む第2書込手段と、 前記有効素数選出手段、前記演算手段に対して、それぞれ、無効化されていない枝全てを含む組合せに対応する素数の選出と、式2に基づくべき乗剰余演算とを行わせるよう制御する演算制御手段と
を備えることを特徴とするべき乗剰余演算装置。
For each of all numbers of 1 to (a-1) or less from a branches connected to any node of a branch tree (a is a natural number of 2 or more), there is a combination for selecting the number of branches. Prime number storage means for storing (2 a -2) prime numbers corresponding to each of the generated combinations without overlapping any of the generated combinations;
All branches on the route from the root of the a-tree to any leaf are invalidated, and any one of the nodes from the (2 a -2) prime numbers stored in the prime number storage means. Effective prime number selection means for selecting a prime number corresponding to a combination including all branches that are not invalidated among a branches connected to
Holding means for holding the operand value T;
Power residue calculation on a finite field T 1 / P mod N (Formula 2)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a prime number selected by the effective prime number selection means) ;
Storage means for storing an operand value S that is a natural number;
Reading means for reading the operand value S;
branch acquisition means for acquiring branch designation information for designating one of the a branches;
A prime number selection means for selecting all prime numbers corresponding to combinations including branches specified by the branch specification information from the (2 a -2) prime numbers stored in the prime number storage means ;
Power-residue operation over a finite field
S ′ = S 1 / Q mod N (Formula 3)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is a product of all prime numbers selected by the prime number selection means)
Generating means for performing
First writing means for performing a reversible operation on the operation result value S ′ calculated by the generating means and overwriting the operation value S stored in the storage means as the operation value S;
For each branch on the path from the root of the a-tree to one node, in order from the root to the node, the branch acquisition means, the prime number selection means, the generation means, and the first writing means Respectively, acquisition of branch designation information for designating the branch, selection of all prime numbers corresponding to the combination including the designated branch, power-residue calculation based on Expression 3, and calculation result value S ′ Repetitive control means for controlling to repeat reversible calculation and rewriting of the reversible calculation result,
The result value S ′ obtained by the repetitive control by the repetitive control means is invalidated for the second writing means for writing to the holding means as T, the effective prime number selecting means, and the calculating means, respectively. A power-residue calculating apparatus comprising: arithmetic control means for controlling to select a prime number corresponding to a combination including all the branches that are not included and to perform a power-residue calculation based on Equation 2 .
分木のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の前記素数を記憶している素数記憶手段と、
前記素数記憶手段が記憶している素数のうち、1個以上の素数を指定する指定情報を取得する取得手段と、
被演算値S’を保持するための保持手段と、
有限体上のべき乗剰余演算
(S’) mod N (式4)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記指定情報により指定された素数全ての積) を行う演算手段と
自然数である被演算値Sを記憶している記憶手段と、
被演算値Sを読み出す読出手段と、
a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得手段と、
前記素数記憶手段に記憶されている(2 a −2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選択手段と、
有限体上のべき乗剰余演算
R = S mod N (式5)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記素数選択手段により選出された全素数の積)を行う生成手段と、
前記生成手段により演算された演算結果値Rに可逆演算を施して、前記記憶手段に記憶している前記被演算値Sに、前記被演算値Sとして上書きする第1書込手段と、
a分木の1のリーフから1のノードまでの経路上の各枝について、前記リーフから前記ノードへの順序で、前記枝取得手段、前記素数選出手段、前記生成手段、前記第1書込手段に対して、それぞれ、当該枝を指定する枝指定情報の取得と、指定された枝を含む組合せに対応する全ての素数の選択と、式5に基づくべき乗剰余演算と、演算された演算結果値Rへの可逆演算及び可逆演算結果の上書きとを繰り返すように制御する繰返制御手段と、
前記繰返制御手段による繰り返し制御により得られた結果値RをS’として前記保持手段に書き込む第2書込手段と、
前記取得手段、前記演算手段に対して、それぞれ、前記指定情報の取得と、式4に基づくべき乗剰余演算とを行わせるよう制御する演算制御手段と
を備えることを特徴とするべき乗剰余演算装置。
Combinations for selecting the number of branches are generated for each of all the numbers from 1 to (a-1) from a branches connected to any node of the a branch tree, and all the generated combinations Prime number storage means for storing (2 a -2) prime numbers corresponding to any one of
Obtaining means for obtaining designation information for designating one or more prime numbers among the prime numbers stored in the prime number storage means;
Holding means for holding the operand value S ′;
Power-residue operation on a finite field (S ′) Q mod N (Formula 4)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is a product of all the prime numbers designated by the designation information) ;
Storage means for storing an operand value S that is a natural number;
Reading means for reading the operand value S;
branch acquisition means for acquiring branch designation information for designating one of the a branches;
Prime number selection means for selecting all prime numbers corresponding to combinations including branches specified by the branch specification information from the (2 a -2) prime numbers stored in the prime number storage means ;
Power-residue operation over a finite field
R = S P mod N (Equation 5)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a product of all prime numbers selected by the prime number selection means);
First writing means for performing a reversible operation on the operation result value R calculated by the generating means and overwriting the operation value S stored in the storage means as the operation value S;
For each branch on the path from one leaf to one node of the a-branch tree, the branch acquisition unit, the prime number selection unit, the generation unit, and the first writing unit in the order from the leaf to the node Respectively, acquisition of branch designation information for designating the branch, selection of all prime numbers corresponding to the combination including the designated branch, power-residue calculation based on Expression 5, and calculated calculation result value Repetitive control means for controlling to repeat reversible computation on R and rewriting of reversible computation results;
A second writing means for writing the result value R obtained by repetitive control by the repetitive control means to the holding means as S ′;
Calculation control means for controlling the acquisition means and the calculation means to perform the acquisition of the specified information and the power-residue calculation based on Expression 4;
A modular exponentiation apparatus that should be characterized by comprising:
請求項に記載のべき乗剰余演算装置による演算結果S’に対し、演算を行うべき乗剰余演算装置であって、
前記S’を保持する保持手段と、
(2a−2)個(aは2以上の自然数)の相異なる素数から、
Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出手段と、
有限体上のべき乗剰余演算
(S’) mod N
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記選出手段により選出された全素数の積) を行う演算手段と
前記演算手段により演算された演算結果値に可逆演算を施し、可逆演算結果値を得る可逆演算手段と、
前記可逆演算手段により演算された可逆演算結果値を、前記保持手段に保持している前記被演算値S’に、前記被演算値S’として上書きする書込手段とを備え、
前記選出手段による選出、前記演算手段によるべき乗剰余演算、前記可逆演算手段による可逆演算、前記書込手段による可逆演算結果値の前記保持手段への上書きを繰り返すよう制御する
ことを特徴とするべき乗剰余演算装置。
A power residue calculation device that is to perform an operation on a calculation result S ′ by the power residue calculation device according to claim 1 ,
Holding means for holding S ′;
From (2 a -2) different prime numbers (a is a natural number of 2 or more),
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
A selection means for selecting the number of primes indicated by
Power-residue operation on a finite field (S ') Q mod N
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is a product of all the prime numbers selected by the selection means) ;
Reversible calculation means for performing a reversible calculation on the calculation result value calculated by the calculation means to obtain a reversible calculation result value;
Writing means for overwriting the operand value S ′ held in the holding means as the operand value S ′ with the lossless calculation result value calculated by the lossless operator;
The power remainder is controlled to repeat selection by the selection means, power residue calculation by the calculation means, reversible calculation by the reversible calculation means, and overwriting of the reversible calculation result value by the writing means to the holding means. Arithmetic unit.
再生装置においてコンテンツの復号に用いられる鍵を管理する鍵管理装置であって、
べき乗剰余演算装置を含み、
前記べき乗剰余演算装置は、
自然数である被演算値Sを保持している保持手段と、
被演算値Sを読み出す読出手段と、
(2 a −2)個(aは2以上の自然数)の相異なる素数から、
Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出手段と、
有限体上のべき乗剰余演算
S’= S 1/P mod N (式1)
(Nは素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記選出手段により選出された全素数の積) を行う演算手段と、
前記演算手段により演算された演算結果値S’に可逆演算を施し、可逆演算結果値を得る可逆演算手段と、
前記可逆演算手段により演算された可逆演算結果値を、前記保持手段に保持している前記被演算値Sに、前記被演算値Sとして上書きする書込手段とを備え、
前記選出手段による選出、前記演算手段によるべき乗剰余演算、前記可逆演算手段による可逆演算、前記書込手段による可逆演算結果値の前記保持手段への上書きを繰り返すよう制御し、得られたS’を前記コンテンツの復号に用いられるデバイス鍵として管理する
ことを特徴とする鍵管理装置。
A key management device that manages keys used for decrypting content in a playback device,
Including a modular exponentiation unit,
The power-residue computing device is:
Holding means for holding the operand value S, which is a natural number;
Reading means for reading the operand value S;
From (2 a -2) different prime numbers (a is a natural number of 2 or more),
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
A selection means for selecting the number of primes indicated by
Power-residue operation over a finite field
S ′ = S 1 / P mod N (Formula 1)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a product of all the prime numbers selected by the selection means);
Reversible calculation means for performing a reversible calculation on the calculation result value S ′ calculated by the calculation means to obtain a reversible calculation result value;
Writing means for overwriting the operand value S held in the holding means with the operand value S calculated by the lossless operator as the operand value S;
Control is performed to repeat selection by the selection means, exponentiation remainder calculation by the calculation means, reversible calculation by the reversible calculation means, and overwriting of the reversible calculation result value by the writing means to the holding means, and the obtained S ′ A key management apparatus that manages a device key used for decrypting the content .
再生装置においてコンテンツの復号に用いられる鍵を管理する鍵管理装置であって、
べき乗剰余演算装置を含み、
前記べき乗剰余演算装置は、
a分木(aは2以上の自然数)のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2 a −2)個の素数を記憶している素数記憶手段と、
a分木のルートからいずれかのリーフへの経路上の全枝は無効化されており、前記素数記憶手段に記憶されている(2 a −2)個の前記素数から、前記いずれかのノードに接続するa個の枝のうち、無効化されていない枝全てを含む組合せに対応する素数を選出する有効素数選出手段と、
被演算値Tを保持するための保持手段と、
有限体上のべき乗剰余演算
1/P mod N (式2)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記有効素数選出手段により選出された素数である) を行う演算手段と、
自然数である被演算値Sを記憶している記憶手段と、
被演算値Sを読み出す読出手段と、
a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得手段と、
前記素数記憶手段に記憶されている(2 a −2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選出手段と、
有限体上のべき乗剰余演算
S’=S 1/Q mod N (式3)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記素数選出手段により選出された全素数の積である)
を行う生成手段と、
前記生成手段により演算された演算結果値S’に可逆演算を施して、前記保持手段に保持している前記被演算値Sに、前記被演算値Sとして上書きする第1書込手段と、
a分木のルートから1のノードまでの経路上の各枝について、ルートから前記ノードへの順序で、前記枝取得手段、前記素数選出手段、前記生成手段、前記第1書込手段に対して、それぞれ、当該枝を指定する枝指定情報の取得と、指定された枝を含む組合せに対応する全ての素数の選択と、式3に基づくべき乗剰余演算と、演算された演算結果値S’へ可逆演算及び可逆演算結果のSとしての出力とを繰り返すように制御する繰返制御手段と、
前記繰返制御手段による繰り返し制御により得られた結果値S’を、Tとして前記保持手段に書き込む第2書込手段と、 前記有効素数選出手段、前記演算手段に対して、それぞれ、無効化されていない枝全てを含む組合せに対応する素数の選出と、式2に基づくべき乗剰余演算とを行わせるよう制御する演算制御手段とを備え、
前記演算手段による演算結果値を前記コンテンツの復号に用いられる鍵とする
ことを特徴とする鍵管理装置。
A key management device that manages keys used for decrypting content in a playback device,
Including a modular exponentiation unit,
The power-residue computing device is:
For each of all numbers of 1 to (a-1) or less from a branches connected to any node of a branch tree (a is a natural number of 2 or more), there is a combination for selecting the number of branches. Prime number storage means for storing (2 a -2) prime numbers corresponding to each of the generated combinations without overlapping any of the generated combinations ;
All branches on the route from the root of the a-tree to any leaf are invalidated, and any one of the nodes from the (2 a -2) prime numbers stored in the prime number storage means. Effective prime number selection means for selecting a prime number corresponding to a combination including all branches that are not invalidated among a branches connected to
Holding means for holding the operand value T;
Power-residue operation over a finite field
T 1 / P mod N (Formula 2)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a prime number selected by the effective prime number selection means);
Storage means for storing an operand value S that is a natural number;
Reading means for reading the operand value S;
branch acquisition means for acquiring branch designation information for designating one of the a branches;
A prime number selection means for selecting all prime numbers corresponding to combinations including branches specified by the branch specification information from the (2 a -2) prime numbers stored in the prime number storage means ;
Power-residue operation over a finite field
S ′ = S 1 / Q mod N (Formula 3)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is a product of all prime numbers selected by the prime number selection means)
Generating means for performing
First writing means for performing a reversible operation on the operation result value S ′ calculated by the generating means and overwriting the operation value S held in the holding means as the operation value S;
For each branch on the path from the root of the a-tree to one node, in order from the root to the node, the branch acquisition means, the prime number selection means, the generation means, and the first writing means Respectively, acquisition of branch designation information for designating the branch, selection of all prime numbers corresponding to the combination including the designated branch, power-residue calculation based on Expression 3, and calculation result value S ′ Repetitive control means for controlling the reversible calculation and the output of the reversible calculation result as S to repeat;
The result value S ′ obtained by the repetitive control by the repetitive control means is invalidated to the second writing means for writing to the holding means as T, the valid prime number selecting means, and the calculating means, respectively. Calculation control means for controlling the selection of prime numbers corresponding to combinations including all branches that are not included and the power-residue calculation based on Equation 2;
A key management apparatus characterized in that a calculation result value by the calculation means is used as a key used for decrypting the content .
暗号化コンテンツを復号再生する再生装置であって、
べき乗剰余演算装置を含み、
前記べき乗剰余演算装置は、
a分木のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2 a −2)個の前記素数を記憶している素数記憶手段と、
前記素数記憶手段が記憶している素数のうち、1個以上の素数を指定する指定情報を取得する取得手段と、
被演算値S’を保持するための保持手段と、
有限体上のべき乗剰余演算
(S’) mod N (式4)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記指定情報により指定された素数全ての積) を行う演算手段と、
自然数である被演算値Sを記憶している記憶手段と、
被演算値Sを読み出す読出手段と、
a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得手段と、
前記素数記憶手段に記憶されている(2 a −2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選択手段と、
有限体上のべき乗剰余演算
R = S mod N (式5)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記素数選択手段により選出された全素数の積)を行う生成手段と、
前記生成手段により演算された演算結果値Rに可逆演算を施して、前記記憶手段に記憶している前記被演算値Sに、前記被演算値Sとして上書きする第1書込手段と、
a分木の1のリーフから1のノードまでの経路上の各枝について、前記リーフから前記ノードへの順序で、前記枝取得手段、前記素数選出手段、前記生成手段、前記第1書込手段に対して、それぞれ、当該枝を指定する枝指定情報の取得と、指定された枝を含む組合せに対応する全ての素数の選択と、式5に基づくべき乗剰余演算と、演算された演算結果値Rの前記記憶手段への書込みとを繰り返すように制御する繰返制御手段と、
前記繰返制御手段による繰り返し制御の終了後、前記演算結果値Rを、S’として前記保持手段に書き込む第2書込手段と、
前記取得手段、前記演算手段に対して、それぞれ、前記指定情報の取得と、式4に基づくべき乗剰余演算とを行わせるよう制御する演算制御手段とを備え、
前記演算手段による演算結果値を復号鍵として前記暗号化コンテンツを復号し、再生する
ことを特徴とする再生装置。
A playback device for decrypting and playing back encrypted content,
Including a modular exponentiation unit,
The power-residue computing device is:
Combinations for selecting the number of branches are generated for each of all the numbers from 1 to (a-1) from a branches connected to any node of the a branch tree, and all the generated combinations Prime number storage means for storing (2 a -2) prime numbers corresponding to any one of
Obtaining means for obtaining designation information for designating one or more prime numbers among the prime numbers stored in the prime number storage means;
Holding means for holding the operand value S ′;
Power-residue operation over a finite field
(S ′) Q mod N (Formula 4)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is a product of all the prime numbers designated by the designation information);
Storage means for storing an operand value S that is a natural number;
Reading means for reading the operand value S;
branch acquisition means for acquiring branch designation information for designating one of the a branches;
Prime number selection means for selecting all prime numbers corresponding to combinations including branches specified by the branch specification information from the (2 a -2) prime numbers stored in the prime number storage means ;
Power-residue operation over a finite field
R = S P mod N (Equation 5)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a product of all prime numbers selected by the prime number selection means);
First writing means for performing a reversible operation on the operation result value R calculated by the generating means and overwriting the operation value S stored in the storage means as the operation value S;
For each branch on the path from one leaf to one node of the a-branch tree, the branch acquisition unit, the prime number selection unit, the generation unit, and the first writing unit in the order from the leaf to the node Respectively, acquisition of branch designation information for designating the branch, selection of all prime numbers corresponding to the combination including the designated branch, power-residue calculation based on Expression 5, and calculated calculation result value Repetitive control means for controlling repetitive writing of R to the storage means;
A second writing means for writing the calculation result value R into the holding means as S ′ after the repetition control by the repetition control means;
Computation control means for controlling the obtaining means and the computing means to perform the acquisition of the specified information and the power-residue computation based on Equation 4, respectively,
A playback apparatus , wherein the encrypted content is decrypted and played back using a computation result value obtained by the computing means as a decryption key .
コンテンツを暗号化して記録する記録装置であって、
べき乗剰余演算装置を含み、
前記べき乗剰余演算装置は、
a分木のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2 a −2)個の前記素数を記憶している素数記憶手段と、
前記素数記憶手段が記憶している素数のうち、1個以上の素数を指定する指定情報を取得する取得手段と、
被演算値S’を保持するための保持手段と、
有限体上のべき乗剰余演算
(S’) mod N (式4)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記指定情報により指定された素数全ての積) を行う演算手段と、
自然数である被演算値Sを記憶している記憶手段と、
被演算値Sを読み出す読出手段と、
a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得手段と、
前記素数記憶手段に記憶されている(2 a −2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選択手段と、
有限体上のべき乗剰余演算
R = S mod N (式5)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記素数選択手段により選出された全素数の積)を行う生成手段と、
前記生成手段により演算された演算結果値Rに可逆演算を施して、前記記憶手段に記憶している前記被演算値Sに、前記被演算値Sとして上書きする第1書込手段と、
a分木の1のリーフから1のノードまでの経路上の各枝について、前記リーフから前記ノードへの順序で、前記枝取得手段、前記素数選出手段、前記生成手段、前記第1書込手段に対して、それぞれ、当該枝を指定する枝指定情報の取得と、指定された枝を含む組合せに対応する全ての素数の選択と、式5に基づくべき乗剰余演算と、演算された演算結果値Rの前記記憶手段への書込みとを繰り返すように制御する繰返制御手段と、
前記繰返制御手段による繰り返し制御の終了後、前記演算結果値Rを、S’として前記保持手段に書き込む第2書込手段と、
前記取得手段、前記演算手段に対して、それぞれ、前記指定情報の取得と、式4に基づくべき乗剰余演算とを行わせるよう制御する演算制御手段とを備え、
前記演算手段による演算結果値に基づき前記コンテンツを暗号化し、記憶する
ことを特徴とする記録装置。
A recording device for encrypting and recording content,
Including a modular exponentiation unit,
The power-residue computing device is:
Combinations for selecting the number of branches are generated for each of all the numbers from 1 to (a-1) from a branches connected to any node of the a branch tree, and all the generated combinations Prime number storage means for storing (2 a -2) prime numbers corresponding to any one of
Obtaining means for obtaining designation information for designating one or more prime numbers among the prime numbers stored in the prime number storage means;
Holding means for holding the operand value S ′;
Power-residue operation over a finite field
(S ′) Q mod N (Formula 4)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is a product of all the prime numbers designated by the designation information);
Storage means for storing an operand value S that is a natural number;
Reading means for reading the operand value S;
branch acquisition means for acquiring branch designation information for designating one of the a branches;
Prime number selection means for selecting all prime numbers corresponding to combinations including branches specified by the branch specification information from the (2 a -2) prime numbers stored in the prime number storage means ;
Power-residue operation over a finite field
R = S P mod N (Equation 5)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a product of all prime numbers selected by the prime number selection means);
First writing means for performing a reversible operation on the operation result value R calculated by the generating means and overwriting the operation value S stored in the storage means as the operation value S;
For each branch on the path from one leaf to one node of the a-branch tree, the branch acquisition unit, the prime number selection unit, the generation unit, and the first writing unit in the order from the leaf to the node Respectively, acquisition of branch designation information for designating the branch, selection of all prime numbers corresponding to the combination including the designated branch, power-residue calculation based on Expression 5, and calculated calculation result value Repetitive control means for controlling repetitive writing of R to the storage means;
A second writing means for writing the calculation result value R into the holding means as S ′ after the repetition control by the repetition control means;
Computation control means for controlling the obtaining means and the computing means to perform the acquisition of the specified information and the power-residue computation based on Equation 4, respectively,
A recording apparatus , wherein the content is encrypted and stored based on a calculation result value by the calculation means .
コンテンツを暗号化して記録する記録装置であって、
べき乗剰余演算装置を含み、
前記べき乗剰余演算装置は、
自然数である被演算数S’を保持している保持手段と、
(2 a −2)個(aは2以上の自然数)の相異なる素数から、
Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出手段と、
有限体上のべき乗剰余演算
(S’) mod N
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記選出手段により選出された全素数の積) を行う演算手段と、
前記演算手段により演算された演算結果値に可逆演算を施し、可逆演算結果値を得る可逆演算手段と、
前記可逆演算手段により演算された可逆演算結果値を、前記保持手段に保持している前記被演算値S’に、前記被演算値S’として上書きする書込手段とを備え、
前記選出手段による選出、前記演算手段によるべき乗剰余演算、前記可逆演算手段による可逆演算、前記書込手段による可逆演算結果値の前記保持手段への上書きを繰り返すよう制御し、得られた結果に基づき前記コンテンツを暗号化し記憶する
ことを特徴とする記録装置。
A recording device for encrypting and recording content,
Including a modular exponentiation unit,
The power-residue computing device is:
Holding means for holding the operand S ′ which is a natural number;
From (2 a -2) different prime numbers (a is a natural number of 2 or more),
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
A selection means for selecting the number of primes indicated by
Power-residue operation over a finite field
(S ') Q mod N
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is a product of all the prime numbers selected by the selection means);
Reversible calculation means for performing a reversible calculation on the calculation result value calculated by the calculation means to obtain a reversible calculation result value;
Writing means for overwriting the operand value S ′ held in the holding means as the operand value S ′ with the lossless calculation result value calculated by the lossless operator;
Based on the results obtained, the selection unit is controlled to repeat selection, the power-residue calculation by the calculation unit, the reversible calculation by the reversible calculation unit, and the rewrite of the reversible calculation result value by the writing unit to the holding unit. A recording apparatus, wherein the content is encrypted and stored .
自然数である被演算値Sを保持している保持手段と、読出手段と、選出手段と、演算手段と、可逆演算手段と、書込手段とから成るべき乗剰余演算装置による、べき乗剰余演算方法であって、
単位ステップを繰り返す繰り返しステップを含み、
前記単位ステップは、
前記読出手段により、被演算値Sを読み出す読出ステップと、
前記選出手段により、(2a−2)個(aは2以上の自然数)の相異なる素数から、
Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出ステップと、
前記演算手段により、有限体上のべき乗剰余演算
S’= S1/P mod N (式1)
(Nは素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記選出ステップにおいて選出された全素数の積)
を行う演算ステップと 前記可逆演算手段により、前記演算ステップにおいて演算された演算結果値S’に可逆演算を施し、可逆演算結果値を得る可逆演算ステップと、
前記書込手段により、前記可逆演算ステップにおいて演算された可逆演算結果値を、前記保持手段に保持している前記被演算値Sに、前記被演算値Sとして上書きする書込ステップと
を含むことを特徴とするべき乗剰余演算方法。
In a power residue calculation method by a modular exponentiation apparatus that should comprise a holding means for holding an operand value S that is a natural number, a reading means, a selection means, a calculation means, a reversible calculation means, and a writing means. There,
Including repeating steps to repeat unit steps,
The unit step is:
A reading step of reading the operand value S by the reading means;
By the selecting means, from (2 a -2) different prime numbers (a is a natural number of 2 or more),
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
A selection step of selecting the number of primes indicated by
The exponentiation remainder calculation on a finite field by the calculation means S ′ = S 1 / P mod N (Formula 1)
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and P is the product of all prime numbers selected in the selection step )
A calculating step of performing, by the reversible operation means performs reversible operation on the operation result value S 'computed in the computing step, reversible operation to obtain a reversible operation result value,
And a writing step of overwriting the operation value S held in the holding unit as the operation value S with the reversible operation result value calculated in the reversible operation step by the writing unit. A modular exponentiation method that should be characterized by
被演算値Tを保持するための保持手段と、自然数である被演算値Sを記憶している記憶手段と、a分木(aは2以上の自然数)のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の素数を記憶している素数記憶手段と、有効素数選出手段と、演算手段と、読出手段と、枝取得手段と、素数選出手段と、生成手段と、第1書込手段と、第2書込手段と、演算制御手段とから成るべき乗剰余演算装置による、べき乗剰余演算方法であって、
前記有効素数選出手段により、a分木のルートからいずれかのリーフへの経路上の全枝は無効化されており、前記素数記憶手段に記憶されている(2a−2)個の前記素数から、前記いずれかのノードに接続するa個の枝のうち、無効化されていない枝全てを含む組合せに対応する素数を選出する有効素数選出ステップと、
前記演算手段により、有限体上のべき乗剰余演算
1/P mod N (式2)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記有効素数選出ステップにおいて選出された素数である) を行う演算ステップと、
a分木のルートから1のノードまでの経路上の各枝について、ルートから前記ノードへの順序で単位ステップを繰り返す繰り返しステップとを含み、
前記単位ステップは、
前記読出手段により、被演算値Sを読み出す読出ステップと、
前記枝取得手段により、a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得ステップと、
前記素数選出手段により、前記素数記憶手段に記憶されている(2 a −2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選出ステップと、
前記生成手段により、有限体上のべき乗剰余演算
S’=S 1/Q mod N (式3)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記素数選出ステップにおいて選出された全素数の積である)
を行う生成ステップと、
前記第1書込手段により、前記生成ステップにおいて演算された演算結果値S’に可逆演算を施して、前記保持手段に保持している前記被演算値Sに、前記被演算値Sとして上書きする第1書込ステップとを含み、
さらに、前記第2書込手段により、前記繰り返しステップにより得られた結果値S’を、Tとして前記保持手段に書き込む第2書込ステップと、 前記演算制御手段により、前記有効素数選出ステップ、前記演算ステップを行わせるよう制御する演算制御ステップと
を含むことを特徴とするべき乗剰余演算方法
Holding means for holding the operand value T, storage means for storing the operand value S, which is a natural number, and a pieces connected to any node of a branch tree (a is a natural number of 2 or more) For each of all the numbers from 1 to (a-1), a combination for selecting the number of branches is generated and corresponding to all the generated combinations without overlapping (2 a -2) Prime number storage means for storing prime numbers, effective prime number selection means, calculation means , reading means, branch acquisition means, prime number selection means, generation means, first writing means, A power-residue calculating method by a power-residue calculating device to be composed of a second writing means and an arithmetic control means ,
All the branches on the route from the root of the a-tree to any one of the leaves are invalidated by the effective prime number selection means, and (2 a -2) number of the prime numbers stored in the prime number storage means From the a number of branches connected to any one of the nodes, an effective prime number selection step of selecting a prime number corresponding to a combination including all the branches that are not invalidated;
The exponentiation remainder calculation on the finite field T 1 / P mod N (Formula 2)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a prime number selected in the effective prime selection step);
a repeating step that repeats unit steps in the order from the root to the node for each branch on the path from the root of the a-tree to one node;
The unit step is:
A reading step of reading the operand value S by the reading means;
A branch acquisition step of acquiring branch designation information for designating one of the a branches by the branch acquisition means;
A prime number selection step of selecting all prime numbers corresponding to combinations including the branch specified by the branch specification information from the (2 a -2) prime numbers stored in the prime number storage means by the prime number selection means. When,
Power generation operation on a finite field by the generating means
S ′ = S 1 / Q mod N (Formula 3)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is a product of all prime numbers selected in the prime selection step)
A generation step that performs
The first writing means performs a reversible calculation on the calculation result value S ′ calculated in the generation step, and overwrites the calculated value S held in the holding means as the calculated value S. A first writing step,
Further, the second writing means writes the result value S ′ obtained in the repetition step as T into the holding means as T, the effective control number selecting step by the arithmetic control means, A modular exponentiation method comprising: an arithmetic control step for performing control so as to perform the arithmetic step
被演算数S’を保持するための保持手段と、自然数である被演算値Sを記憶している記憶手段と、a分木のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の前記素数を記憶している素数記憶手段と、取得手段と、演算手段と、読出手段と、枝取得手段と、素数選択手段と、生成手段と、第1書込手段と、第2書込手段と、演算制御手段とから成るべき乗剰余演算装置による、べき乗剰余演算方法であって、
前記取得手段により、前記素数記憶手段が記憶している素数のうち、1個以上の素数を指定する指定情報を取得する取得ステップと、
前記演算手段により、有限体上のべき乗剰余演算
(S’) mod N (式4)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記指定情報により指定された素数全ての積) を行う演算ステップと
a分木の1のリーフから1のノードまでの経路上の各枝について、前記リーフから前記ノードへの順序で単位ステップを繰り返す繰り返しステップとを含み、
前記単位ステップは、
前記読出手段により、被演算値Sを読み出す読出ステップと、
前記枝取得手段により、a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得ステップと、
前記素数選択手段により、前記素数記憶手段に記憶されている(2 a −2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選択ステップと、
前記生成手段により、
有限体上のべき乗剰余演算
R = S mod N (式5)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記素数選択ステップにおいて選出された全素数の積)を行う生成ステップと、
前記第1書込手段により、前記生成ステップにおいて演算された演算結果値Rに可逆演算を施して、前記記憶手段に記憶している前記被演算値Sに、前記被演算値Sとして上書きする第1書込ステップと
を含み、
さらに、前記第2書込手段により、前記繰り返しステップにより得られた結果値Rを、S’として前記保持手段に書き込む第2書込ステップと、 前記演算制御手段により、前記取得ステップ、前記演算ステップを行わせるよう制御する演算制御ステップと
を含むことを特徴とするべき乗剰余演算方法。
From the holding means for holding the operand number S ′, the storage means for storing the operand value S as a natural number, and a branch connected to any node of the a-ary tree, one or more ( a-1) For each of the following numbers, a combination for selecting the branch of the number is generated, and the corresponding (2 a -2) prime numbers corresponding to any of the generated combinations without overlapping A prime number storage means, an acquisition means, a calculation means, a reading means, a branch acquisition means, a prime number selection means, a generation means, a first writing means, a second writing means, A modular exponentiation method by a modular exponentiation apparatus to be composed of arithmetic control means ,
An acquisition step of acquiring designation information for designating one or more prime numbers among the prime numbers stored in the prime number storage means by the acquisition means;
The exponentiation remainder calculation on a finite field (S ′) Q mod N (Formula 4)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is the product of all the prime numbers specified by the specification information) ;
a repeating step that repeats unit steps in the order from the leaf to the node for each branch on the path from one leaf to one node of the a-branch tree,
The unit step is:
A reading step of reading the operand value S by the reading means;
A branch acquisition step of acquiring branch designation information for designating one of the a branches by the branch acquisition means;
A prime number selecting step of selecting all prime numbers corresponding to combinations including the branch specified by the branch specification information from the (2 a -2) prime numbers stored in the prime number storage means by the prime number selection means. When,
By the generating means,
Power-residue operation over a finite field
R = S P mod N (Equation 5)
(N is a product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and P is the product of all prime numbers selected in the prime number selection step);
The first writing means performs a reversible operation on the operation result value R calculated in the generation step, and overwrites the operation value S stored in the storage means as the operation value S. One writing step and
Including
Furthermore, the second writing means writes the result value R obtained in the repetition step as S ′ to the holding means, and the calculation control means makes the acquisition step and the calculation step. And a calculation control step for performing control so as to perform .
請求項13に記載のべき乗剰余演算方法による演算結果S’に対し演算を行う、前記S’を保持する保持手段と、選出手段と、演算手段と、可逆演算手段と、書込手段とから成るべき乗剰余演算装置によるべき乗剰余演算方法であって、 単位ステップを繰り返す繰り返しステップを含み、
前記単位ステップは、
前記選出手段により、(2a−2)個(aは2以上の自然数)の相異なる素数から、
Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出ステップと、
前記演算手段により、有限体上のべき乗剰余演算
(S’) mod N
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記選出ステップにおいて選出された全素数の積) を行う演算ステップと
前記可逆演算手段により、前記演算ステップにおいて演算された演算結果値に可逆演算を施し、可逆演算結果値を得る可逆演算ステップと、
前記書込手段により、前記可逆演算ステップにおいて演算された可逆演算結果値を、前記保持手段に保持している前記被演算値S’に、前記被演算値S’として上書きする書込ステップと
を含むことを特徴とするべき乗剰余演算方法。
A holding means for holding the S ′ for performing the calculation on the calculation result S ′ according to the power-residue calculation method according to claim 13 , a selection means, a calculation means, a reversible calculation means, and a writing means. A power-residue calculating method by a power-residue calculating device , including a repetition step of repeating a unit step,
The unit step is:
By the selecting means, from (2 a -2) different prime numbers (a is a natural number of 2 or more),
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
A selection step of selecting the number of primes indicated by
The exponentiation remainder calculation on a finite field (S ′) Q mod N by the calculation means
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is a product of all prime numbers selected in the selection step ) ;
A reversible operation step of performing a reversible operation on the operation result value calculated in the operation step by the reversible operation means to obtain a reversible operation result value;
A writing step of overwriting the reversible calculation result value calculated in the reversible calculation step by the writing unit as the calculated value S ′ on the calculated value S ′ held in the holding unit ; A modular exponentiation method that should be included.
自然数である被演算値Sを保持している保持手段と、読出手段と、選出手段と、演算手段と、可逆演算手段と、書込手段とから成るべき乗剰余演算装置に適用されるプログラムであって、
単位ステップを繰り返す繰り返しステップを含み、
前記単位ステップは、
前記読出手段により、被演算値Sを読み出す読出ステップと、
前記選出手段により、(2a−2)個(aは2以上の自然数)の相異なる素数から、
Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出ステップと、
前記演算手段により、有限体上のべき乗剰余演算
S’= S1/P mod N (式1)
(Nは素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記選出ステップにおいて選出された全素数の積)
を行う演算ステップと 前記可逆演算手段により、前記演算ステップにおいて演算された演算結果値S’に可逆演算を施し、可逆演算結果値を得る可逆演算ステップと、
前記書込手段により、前記可逆演算ステップにおいて演算された可逆演算結果値を、前記保持手段に保持している前記被演算値Sに、前記被演算値Sとして上書きする書込ステップと
を含むことを特徴とするプログラム。
This is a program applied to a modular multiplication apparatus that should comprise a holding means that holds an operand value S that is a natural number, a reading means, a selection means, a calculation means, a reversible calculation means, and a writing means. And
Including repeating steps to repeat unit steps,
The unit step is:
A reading step of reading the operand value S by the reading means;
By the selecting means, from (2 a -2) different prime numbers (a is a natural number of 2 or more),
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
A selection step of selecting the number of primes indicated by
The exponentiation remainder calculation on a finite field by the calculation means S ′ = S 1 / P mod N (Formula 1)
(N is the product of prime number p and prime number q, where prime number p and prime number q are each greater than a predetermined value, and P is the product of all prime numbers selected in the selection step)
A calculating step of performing, by the reversible operation means performs reversible operation on the operation result value S 'computed in the computing step, reversible operation to obtain a reversible operation result value,
A writing step of overwriting, as the operand value S, the operand value S held in the holding means by the writing means with the lossless calculation result value calculated in the lossless operator step;
The program characterized by including .
被演算値Tを保持するための保持手段と、自然数である被演算値Sを記憶している記憶手段と、a分木(aは2以上の自然数)のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の素数を記憶している素数記憶手段と、有効素数選出手段と、演算手段と、読出手段と、枝取得手段と、素数選出手段と、生成手段と、第1書込手段と、第2書込手段と、演算制御手段とから成るべき乗剰余演算装置に適用されるプログラムであって、
前記有効素数選出手段により、a分木のルートからいずれかのリーフへの経路上の全枝は無効化されており、前記素数記憶手段に記憶されている(2a−2)個の前記素数から、前記いずれかのノードに接続するa個の枝のうち、無効化されていない枝全てを含む組合せに対応する素数を選出する有効素数選出ステップと、
前記演算手段により、有限体上のべき乗剰余演算
1/P mod N (式2)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記有効素数選出ステップにおいて選出された素数である) を行う演算ステップと
a分木のルートから1のノードまでの経路上の各枝について、ルートから前記ノードへの順序で単位ステップを繰り返す繰り返しステップとを含み、
前記単位ステップは、
前記読出手段により、被演算値Sを読み出す読出ステップと、
前記枝取得手段により、a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得ステップと、
前記素数選出手段により、前記素数記憶手段に記憶されている(2 a −2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選出ステップと、
前記生成手段により、有限体上のべき乗剰余演算
S’=S 1/Q mod N (式3)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記素数選出ステップにより選出された全素数の積である)
を行う生成ステップと、
前記第1書込手段により、前記生成ステップにおいて演算された演算結果値S’に可逆演算を施して、前記保持手段に保持している前記被演算値Sに、前記被演算値Sとして上書きする第1書込ステップとを含み、
さらに、前記第2書込手段により、前記繰り返しステップにより得られた結果値S’を、Tとして前記保持手段に書き込む第2書込ステップと、 前記演算制御手段により、前記有効素数選出ステップ、前記演算ステップを行わせるよう制御する演算制御ステップと
を含むことを特徴とするプログラム。
Holding means for holding the operand value T, storage means for storing the operand value S, which is a natural number, and a pieces connected to any node of a branch tree (a is a natural number of 2 or more) For each of all the numbers from 1 to (a-1), a combination for selecting the number of branches is generated and corresponding to all the generated combinations without overlapping (2 a -2) Prime number storage means for storing prime numbers, effective prime number selection means, calculation means , reading means, branch acquisition means, prime number selection means, generation means, first writing means, , A program to be applied to a modular exponentiation device that is to be composed of second writing means and arithmetic control means ,
All the branches on the route from the root of the a-tree to any one of the leaves are invalidated by the effective prime number selection means, and (2 a -2) number of the prime numbers stored in the prime number storage means From the a number of branches connected to any one of the nodes, an effective prime number selection step of selecting a prime number corresponding to a combination including all the branches that are not invalidated;
The exponentiation remainder calculation on the finite field T 1 / P mod N (Formula 2)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a prime number selected in the effective prime selection step ) ;
a repeating step that repeats unit steps in the order from the root to the node for each branch on the path from the root of the a-tree to one node;
The unit step is:
A reading step of reading the operand value S by the reading means;
A branch acquisition step of acquiring branch designation information for designating one of the a branches by the branch acquisition means;
A prime number selection step of selecting all prime numbers corresponding to combinations including the branch specified by the branch specification information from the (2 a -2) prime numbers stored in the prime number storage means by the prime number selection means. When,
Power generation operation on a finite field by the generating means
S ′ = S 1 / Q mod N (Formula 3)
(N is the product of prime p and prime q, where prime p and prime q are each greater than a predetermined value, and Q is the product of all primes selected in the prime selection step)
A generation step that performs
The first writing means performs a reversible calculation on the calculation result value S ′ calculated in the generation step, and overwrites the calculated value S held in the holding means as the calculated value S. A first writing step,
Further, the second writing means writes the result value S ′ obtained in the repetition step as T into the holding means as T, the effective control number selecting step by the arithmetic control means, A calculation control step for controlling the calculation step to be performed;
The program characterized by including .
被演算数S’を保持するための保持手段と、自然数である被演算値Sを記憶している記憶手段と、a分木のいずれかのノードに接続するa個の枝から、1以上(a−1)以下の全ての数のそれぞれについて、当該数の枝を選択する組合せが生成され、生成された全組合せのいずれかに重複することなく対応する(2a−2)個の前記素数を記憶している素数記憶手段と、取得手段と、演算手段と、読出手段と、枝取得手段と、素数選択手段と、生成手段と、第1書込手段と、第2書込手段と、演算制御手段とから成るべき乗剰余演算装置に適用されるプログラムであって、
前記取得手段により、前記素数記憶手段が記憶している素数のうち、1個以上の素数を指定する指定情報を取得する取得ステップと、
前記演算手段により、有限体上のべき乗剰余演算
(S’) mod N (式4)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記指定情報により指定された素数全ての積) を行う演算ステップと
a分木の1のリーフから1のノードまでの経路上の各枝について、前記リーフから前記ノードへの順序で単位ステップを繰り返す繰り返しステップとを含み、
前記単位ステップは、
前記読出手段により、被演算値Sを読み出す読出ステップと、
前記枝取得手段により、a個の前記枝のうち、1の枝を指定する枝指定情報を取得する枝取得ステップと、
前記素数選択手段により、前記素数記憶手段に記憶されている(2 a −2)個の前記素数から、前記枝指定情報により指定される枝を含む組合せに対応する素数を全て選出する素数選択ステップと、
前記生成手段により、
有限体上のべき乗剰余演算
R = S mod N (式5)
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Pは、前記素数選択ステップにおいて選出された全素数の積) を行う生成ステップと、
前記第1書込手段により、前記生成手段により演算された演算結果値Rに可逆演算を施して、前記保持手段に保持している前記被演算値Sに、前記被演算値Sとして上書きする第1書込ステップと
を含み、
さらに、前記第2書込手段により、前記繰り返しステップにより得られた結果値Rを、S’として前記保持手段に書き込む第2書込ステップと、 前記演算制御手段により、前記取得ステップ、前記演算ステップを行わせるよう制御する演算制御ステップと
を含むことを特徴とするプログラム。
From the holding means for holding the operand number S ′, the storage means for storing the operand value S as a natural number, and a branch connected to any node of the a-ary tree, one or more ( a-1) For each of the following numbers, a combination for selecting the branch of the number is generated, and the corresponding (2 a -2) prime numbers corresponding to any of the generated combinations without overlapping A prime number storage means, an acquisition means, a calculation means, a reading means, a branch acquisition means, a prime number selection means, a generation means, a first writing means, a second writing means, A program applied to a modular multiplication unit to be composed of an arithmetic control means ,
An acquisition step of acquiring designation information for designating one or more prime numbers among the prime numbers stored in the prime number storage means by the acquisition means;
The exponentiation remainder calculation on a finite field (S ′) Q mod N (Formula 4)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is the product of all the prime numbers specified by the specification information) ;
a repeating step that repeats unit steps in the order from the leaf to the node for each branch on the path from one leaf to one node of the a-branch tree,
The unit step is:
A reading step of reading the operand value S by the reading means;
A branch acquisition step of acquiring branch designation information for designating one of the a branches by the branch acquisition means;
A prime number selecting step of selecting all prime numbers corresponding to combinations including the branch specified by the branch specification information from the (2 a -2) prime numbers stored in the prime number storage means by the prime number selection means. When,
By the generating means,
Power-residue operation over a finite field
R = S P mod N (Equation 5)
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and P is a product of all prime numbers selected in the prime number selection step),
The first writing means performs a reversible calculation on the calculation result value R calculated by the generating means, and overwrites the calculated value S held in the holding means as the calculated value S. One writing step and
Including
Furthermore, the second writing means writes the result value R obtained in the repetition step as S ′ to the holding means, and the calculation control means makes the acquisition step and the calculation step. An arithmetic control step for controlling
The program characterized by including .
請求項17に記載のプログラムによる演算結果S’に対し演算を行う、前記S’を保持する保持手段と、選出手段と、演算手段と、可逆演算手段と、書込手段とから成るべき乗剰余演算装置に適用されるプログラムであって、 単位ステップを繰り返す繰り返しステップを含み、
前記単位ステップは、
前記選出手段により、(2a−2)個(aは2以上の自然数)の相異なる素数から、
Figure 0004638176
(mは変数であり、1から(a−1)までの自然数をとる)
で示される個数の素数を選出する選出ステップと、
前記演算手段により、有限体上のべき乗剰余演算
(S’) mod N
(Nは、素数p及び素数qの積であり、素数p、素数qはそれぞれ所定値より大きく、Qは、前記選出ステップにおいて選出された全素数の積) を行う演算ステップと
前記可逆演算手段により、前記演算ステップにおいて演算された演算結果値に可逆演算を施し、可逆演算結果値を得る可逆演算ステップと、
前記書込手段により、前記可逆演算ステップにおいて演算された可逆演算結果値を、前記保持手段に保持している前記被演算値S’に、前記被演算値S’として上書きする書込ステップと
を含むことを特徴とするプログラム。
'Performs operation on the S' operation result S by program according to claim 17 modular exponentiation which consists of a holding means for holding, and selecting means, arithmetic means, a reversible operation means, the writing means A program applied to a computing device, including a repetition step of repeating a unit step,
The unit step is:
By the selecting means, from (2 a -2) different prime numbers (a is a natural number of 2 or more),
Figure 0004638176
(M is a variable and takes a natural number from 1 to (a-1))
A selection step of selecting the number of primes indicated by
The exponentiation remainder calculation on a finite field (S ′) Q mod N by the calculation means
(N is a product of a prime number p and a prime number q, where the prime numbers p and q are each greater than a predetermined value, and Q is a product of all prime numbers selected in the selection step ) ;
A reversible operation step of performing a reversible operation on the operation result value calculated in the operation step by the reversible operation means to obtain a reversible operation result value;
A writing step of overwriting the operation value S ′ held in the holding unit as the operation value S ′ by the writing unit with the reversible operation result value calculated in the reversible operation step;
The program characterized by including .
JP2004152554A 2003-05-22 2004-05-21 Copyright protection system, power residue calculation device, operation device, key management device, playback device, recording device, recording medium, power residue calculation method, calculation method, and program Active JP4638176B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004152554A JP4638176B2 (en) 2003-05-22 2004-05-21 Copyright protection system, power residue calculation device, operation device, key management device, playback device, recording device, recording medium, power residue calculation method, calculation method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003145215 2003-05-22
JP2004152554A JP4638176B2 (en) 2003-05-22 2004-05-21 Copyright protection system, power residue calculation device, operation device, key management device, playback device, recording device, recording medium, power residue calculation method, calculation method, and program

Publications (2)

Publication Number Publication Date
JP2005012786A JP2005012786A (en) 2005-01-13
JP4638176B2 true JP4638176B2 (en) 2011-02-23

Family

ID=34106539

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004152554A Active JP4638176B2 (en) 2003-05-22 2004-05-21 Copyright protection system, power residue calculation device, operation device, key management device, playback device, recording device, recording medium, power residue calculation method, calculation method, and program

Country Status (1)

Country Link
JP (1) JP4638176B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005333242A (en) * 2004-05-18 2005-12-02 Pioneer Electronic Corp Key management system and reproducing apparatus
CN108733802B (en) * 2018-05-17 2023-03-24 腾讯科技(深圳)有限公司 Identification code generation and analysis method and device, storage medium and electronic equipment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003273862A (en) * 2002-01-30 2003-09-26 Sony Corp Broadcast encryption method, broadcast decryption method, and receiver

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003273862A (en) * 2002-01-30 2003-09-26 Sony Corp Broadcast encryption method, broadcast decryption method, and receiver

Also Published As

Publication number Publication date
JP2005012786A (en) 2005-01-13

Similar Documents

Publication Publication Date Title
CN1971745B (en) Information processing apparatus and method
US7272229B2 (en) Digital work protection system, key management apparatus, and user apparatus
US8144869B2 (en) Content protection system, key data generation apparatus, and terminal apparatus
CN101142563B (en) Information setting device and method, and information acquiring devcie and method
US20020076204A1 (en) Key management device/method/program, recording medium, reproducing device/method, recording device, and computer-readable, second recording medium storing the key management program for copyright protection
CN1848271B (en) Information processing device and method
JP4569228B2 (en) Data processing method, information recording medium manufacturing management system, recording data generation apparatus and method, and computer program
US20030081786A1 (en) Key management apparatus
JP2009027232A (en) Information processor, content provision system, information processing method, and computer program
JP2004139473A (en) Content recording device, reproduction device, record reproduction device, and storage medium
JP4638176B2 (en) Copyright protection system, power residue calculation device, operation device, key management device, playback device, recording device, recording medium, power residue calculation method, calculation method, and program
JP2004120008A (en) Key management system
JP4615444B2 (en) Copyright protection system
WO2004114584A1 (en) Copyright protection system, power residue calculation device, and method
JP4220213B2 (en) Copyright protection system, key management device and user device
JP2004229128A (en) Encryption data distribution system, information processor and information processing method, and computer program
JP2003204321A (en) Literary work protective system and key management system
JP4583069B2 (en) Key management system and playback device
JP2005006033A (en) Key generating method, key generating device, contents distributing device, terminal device, and program
JP4383084B2 (en) Public key certificate revocation list generation device, revocation determination device, and authentication system
JP2007207410A (en) Recording medium, initialize method for recording medium, method for encryption on recording medium, encryption equipment, decryption equipment, and audio/visual/data equipment
JP2004248272A (en) Method of managing key for content reproduction
JP2006197303A (en) Key recording medium, and reproduction device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100720

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100921

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

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

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

Free format text: PAYMENT UNTIL: 20131203

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4638176

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150