JP4741852B2 - Restricted data creation device, restricted data utilization device, and restricted key generation device - Google Patents

Restricted data creation device, restricted data utilization device, and restricted key generation device Download PDF

Info

Publication number
JP4741852B2
JP4741852B2 JP2005039793A JP2005039793A JP4741852B2 JP 4741852 B2 JP4741852 B2 JP 4741852B2 JP 2005039793 A JP2005039793 A JP 2005039793A JP 2005039793 A JP2005039793 A JP 2005039793A JP 4741852 B2 JP4741852 B2 JP 4741852B2
Authority
JP
Japan
Prior art keywords
value
key
restriction
generation
restricted data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005039793A
Other languages
Japanese (ja)
Other versions
JP2006227837A (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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2005039793A priority Critical patent/JP4741852B2/en
Publication of JP2006227837A publication Critical patent/JP2006227837A/en
Application granted granted Critical
Publication of JP4741852B2 publication Critical patent/JP4741852B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本発明は、制限付データ作成装置、制限付データ利用装置及び制限鍵生成装置に関する。   The present invention relates to a restricted data creation device, a restricted data utilization device, and a restricted key generation device.

音楽、映像、コンピュータプログラムなどのデータは、その著作権者などにより利用(すなわち、音楽や映像なら再生すること、コンピュータプログラムならば実行すること)に際して制限が課されることがある。   Data such as music, video, and computer programs may be restricted when used by the copyright holder (that is, playback is performed for music or video, and execution is performed for a computer program).

例えば、何回まで利用可能とする利用回数制限や、どの日時まで利用可能とする利用時限がある。このような制限の課されたデータである制限付データを、その制限を守って利用するための技術が開示されている(例えば、特許文献1参照。)。   For example, there is a use frequency limit that can be used up to how many times, and a use time limit that can be used up to which date and time. A technique for using restricted data, which is data with such restrictions, while complying with the restrictions is disclosed (for example, see Patent Document 1).

特許文献1では、AV(音声・映像)データをテープなどの記録媒体に記録する録画装置と、記録媒体からAVデータを読み出し利用する再生装置とに関する技術が開示されている。録画装置は、AVデータを暗号化して記録媒体に記録し、その暗号化に用いた暗号鍵をFIFO(ファースト・イン・ファースト・アウト)などの格納手段に記憶する。再生装置は、記録媒体に記録された暗号化されたAVデータを読み出し、そのAVデータに対応する暗号鍵を格納手段から読み出してAVデータを復号して利用する。   Patent Document 1 discloses a technique related to a recording apparatus that records AV (audio / video) data on a recording medium such as a tape, and a playback apparatus that reads and uses AV data from the recording medium. The recording apparatus encrypts AV data and records it on a recording medium, and stores the encryption key used for the encryption in a storage means such as a FIFO (First In First Out). The playback device reads the encrypted AV data recorded on the recording medium, reads the encryption key corresponding to the AV data from the storage means, and decrypts and uses the AV data.

従来技術の実施形態の1つ(便宜上、従来技術の第1の実施形態と呼ぶ)では、録画装置がAVデータを暗号化する際に用いる暗号鍵はAVデータを記録するごとに新しい鍵に更新、あるいは1日間などある一定期間は同じものを用い、期間が過ぎると新しい鍵に更新する。そして、暗号鍵を更新するごとに新たな暗号鍵を格納手段に記憶させる。又、記憶した暗号鍵のうち、1週間などある一定期間経過したものを格納手段が消去することにより、再生装置が暗号鍵を入手できなくなりAVデータを復号し利用することができなくなる。さらに、再生装置がAVデータを利用した回数を数えるカウンタを備え、それが指定した数を超えたときに格納手段がそのAVデータに対応する暗号鍵を廃棄することにより、再生装置が暗号鍵を入手できなくなりAVデータを復号し利用することができなくなる。   In one embodiment of the prior art (referred to as the first embodiment of the prior art for convenience), the encryption key used when the recording device encrypts AV data is updated to a new key each time AV data is recorded. Alternatively, the same key is used for a certain period such as one day, and the key is renewed after the period. Each time the encryption key is updated, a new encryption key is stored in the storage means. Further, when the storage means erases the stored encryption key after a certain period of time such as one week, the playback device cannot obtain the encryption key and cannot decrypt and use the AV data. Furthermore, the playback device is provided with a counter that counts the number of times the AV data has been used, and the storage device discards the encryption key corresponding to the AV data when the specified number is exceeded, so that the playback device obtains the encryption key. The AV data cannot be obtained and cannot be decrypted and used.

従来技術の別の実施形態(便宜上、従来技術の第2実施形態と呼ぶ)では、従来技術の第1実施形態と同等であるが、格納手段が暗号鍵を廃棄する代わりに、暗号鍵を格納手段から取得する暗号鍵取得手段が、利用しようとするAVデータが一定期間内であるか、あるいは制限回数以内であるかを判断して格納手段から暗号鍵を取得するかどうかを決める。
特開平11−232776号公報
Another embodiment of the prior art (referred to as the second embodiment of the prior art for convenience) is equivalent to the first embodiment of the prior art, but stores the encryption key instead of discarding the encryption key by the storage means. The encryption key acquisition means acquired from the means determines whether the AV data to be used is within a certain period or within the limited number of times, and determines whether to acquire the encryption key from the storage means.
Japanese Patent Laid-Open No. 11-232776

上述した従来技術における第1の問題点は、データ利用の制限が、利用期間が1週間というように固定的であるということである。このため、データ毎に異なる制限を課すことはできない。   The first problem in the above-described prior art is that the data use restriction is fixed such that the use period is one week. For this reason, different restrictions cannot be imposed on each data.

又、第2の問題点は、ハードウェア的に信号を読み取る、あるいは操作することにより内部状態を読み取る、あるいは書き換えるような、いわゆるタンパー行為への対策が考慮されていないことである。このため、データ利用の制限に達した後のタンパー行為により、利用できなくなったはずのデータが利用可能となる場合がある。又、タンパー行為に対する防御策の実施が困難となる。   A second problem is that a countermeasure against a so-called tampering action such as reading or rewriting an internal state by reading a signal or operating in hardware is not considered. For this reason, there is a case where data that should have become unusable may become usable due to a tampering action after reaching the data utilization limit. In addition, it is difficult to implement a defense against tampering.

例えば、従来技術の第2実施形態はデータ利用の制限に達しても格納手段の記憶する暗号鍵は廃棄されない。このため、データ利用の制限に達した後であっても、タンパー行為により格納手段から暗号鍵を取得することが可能であり、AVデータを復号し利用することができてしまう。これに対する対策としては、格納手段を含む部分を耐タンパー化することが考えられるが、格納手段は暗号鍵を廃棄しないため、格納手段には大きな記憶容量が求められる。よって、タンパー行為に対する防御策として典型的なワンチップ化が困難となる。他方、従来技術の第1実施形態では、データ利用の制限に達すると格納手段の記憶する暗号鍵を廃棄する。しかし、複数のAVデータを同じ暗号鍵で暗号化しておくと、1つのAVデータが利用制限に達すると暗号鍵が廃棄されてしまうため、利用制限にまだ達していないAVデータまでが利用できなくなってしまう。そのため、実用的には個々のAVデータは固有の暗号鍵を用いて暗号化し、格納手段に記憶しておく必要があるが、その場合には格納手段に記憶する鍵の数が多くなるため格納手段に求められる記憶容量が大きくなる。よって、タンパー行為に対する防御策として典型的なワンチップ化が困難となる。   For example, in the second embodiment of the prior art, the encryption key stored in the storage means is not discarded even when the data use limit is reached. For this reason, even after the data usage limit is reached, the encryption key can be obtained from the storage means by tampering, and the AV data can be decrypted and used. As a countermeasure against this, it may be possible to make the portion including the storage means tamper resistant. However, since the storage means does not discard the encryption key, the storage means is required to have a large storage capacity. Therefore, it is difficult to make a typical one-chip as a defense against tampering. On the other hand, in the first embodiment of the prior art, when the data usage limit is reached, the encryption key stored in the storage means is discarded. However, if a plurality of AV data is encrypted with the same encryption key, if one AV data reaches the usage limit, the encryption key is discarded, and even AV data that has not yet reached the usage limit cannot be used. End up. Therefore, practically, each AV data needs to be encrypted using a unique encryption key and stored in the storage means. In this case, the number of keys stored in the storage means increases, so that the data is stored. The storage capacity required for the means increases. Therefore, it is difficult to make a typical one-chip as a defense against tampering.

そこで、本発明は、上記の課題に鑑み、データ毎に異なる制限を課すことができ、又、タンパー行為に対する防御策の実施が容易であり、特に、データ利用の制限に達した後のタンパー行為によってもデータを利用することができないこととする、制限付データ作成装置、制限付データ利用装置及び制限鍵生成装置を提供することを目的とする。   Therefore, in view of the above problems, the present invention can impose different restrictions for each data, and it is easy to implement a defensive measure against the tampering action. In particular, the tampering action after reaching the data usage restriction. It is an object of the present invention to provide a restricted data creation device, a restricted data use device, and a restricted key generation device, which cannot use data even if the device is used.

上記目的を達成するため、本発明の第1の特徴は、利用時限又は利用回数制限が課された制限付データを作成する制限付データ作成装置であって、(a)利用時限又は利用回数制限を示す制限情報に合った制限鍵を、制限鍵を生成する制限鍵生成装置に要求し、入手する制限鍵入手部と、(b)制限鍵を用いて、制限付データを暗号化する暗号化部と、(c)暗号化された制限付データを、制限付データを利用する制限付データ利用装置へ送信する入出力部とを備える制限付データ作成装置であることを要旨とする。   In order to achieve the above object, a first feature of the present invention is a restricted data creation device for creating restricted data in which a use time limit or a use frequency limit is imposed, and (a) a use time limit or a use frequency limit Requesting a restriction key generation device that generates restriction keys to obtain a restriction key that matches restriction information indicating the restriction key, and (b) encryption for encrypting restricted data using the restriction key The gist of the present invention is a restricted data creation apparatus comprising: a section; and (c) an input / output section that transmits the encrypted restricted data to a restricted data utilization apparatus that uses the restricted data.

第1の特徴に係る制限付データ作成装置によると、データ毎に異なる制限を課すことができ、又、タンパー行為に対する防御策の実施が容易であり、特に、データ利用の制限に達した後のタンパー行為によってもデータを利用することができない構成とすることができる。   According to the restricted data creation device according to the first feature, it is possible to impose different restrictions for each data, and it is easy to implement a defensive measure against tampering, especially after reaching the limit of data usage. It can be configured such that data cannot be used even by tampering.

又、第1の特徴に係る制限付データ作成装置において、制限情報は、制限付データの利用時限を絶対時限で定めた情報であり、制限鍵入手部は、時差変数を用いて、絶対時限を制限鍵生成装置の時計を基準とする絶対時限に変換し、当該変換された絶対時限と、制限付データ固有の値である固有値と、絶対時限を規定する時計の世代を表す世代変数の値である世代値とをパラメータとし、制限鍵を制限鍵生成装置に要求してもよい。ここで「世代」とは、対象となるものの連続性が失われた場合に変化する値を指す。すなわち「時計の世代」とは、時計を合わせ直したり、異なる時計に入れ替わったりした場合に変化する値のことである。   In the restricted data creation device according to the first feature, the restriction information is information that defines the use time limit of the restricted data in an absolute time period, and the restriction key obtaining unit uses the time difference variable to determine the absolute time limit. It is converted into an absolute time based on the clock of the restriction key generator, and the converted absolute time, the unique value that is unique to the restricted data, and the value of the generation variable that represents the generation of the clock that defines the absolute time A certain generation value may be used as a parameter, and a restriction key may be requested from the restriction key generation device. Here, “generation” refers to a value that changes when the continuity of an object is lost. That is, the “clock generation” is a value that changes when the clock is reset or replaced with a different clock.

この制限付データ作成装置によると、指定された処理対象データの絶対時刻による利用時限以降は入手できなくなる制限鍵を制限付データ作成装置から入手することができる。この制限鍵を用いて指定された利用時限以降は復号できなくなる暗号化データを作成することができる。   According to this restricted data creation device, it is possible to obtain from the restricted data creation device a restriction key that cannot be obtained after the use time limit of the designated processing target data based on the absolute time. It is possible to create encrypted data that cannot be decrypted after the use time period specified using the restriction key.

又、第1の特徴に係る制限付データ作成装置において、制限情報は、制限付データの利用時限を相対時限で定めた情報であり、制限鍵入手部は、相対時限と、制限付データの固有の値である固有値とをパラメータとし、制限付データの利用期限の絶対時限、絶対時限を規定する時計の世代を表す世代値及び制限鍵を制限鍵生成装置に要求してもよい。 Further, in the restricted data creation device according to the first feature, the restriction information is information that defines a use time limit of the restricted data in a relative time period, and the restriction key obtaining unit includes a relative time period and a unique property of the restricted data. The limit value generating apparatus may request the limit key generation apparatus to generate a limit value and a generation value representing a clock generation that defines the absolute time limit and a limit key.

この制限付データ作成装置によると、指定された処理対象データの相対時刻による利用時限以降は入手できなくなる制限鍵を制限付データ利用装置から入手することができる。この制限鍵を用いて指定された利用時限以降は復号できなくなる暗号化データを作成することができる。   According to this restricted data creation device, it is possible to obtain from the restricted data utilization device a restriction key that cannot be obtained after the use time limit according to the relative time of the designated processing target data. It is possible to create encrypted data that cannot be decrypted after the use time period specified using the restriction key.

又、第1の特徴に係る制限付データ作成装置において、制限情報は、制限付データの利用回数制限を定めた情報であり、制限鍵入手部は、利用回数制限と、仮想カウンタを指定する仮想カウンタ指定値と、仮想カウンタの世代を表す世代変数の値である世代値とをパラメータとし、制限鍵を制限鍵生成装置に要求してもよい。上述したように、「世代」とは、対象となるものの連続性が失われた場合に、変化する値を指す。すなわち「仮想カウンタの世代」とは、仮想カウンタの計数の連続性が失われ実質的に異なるカウンタになった場合に変化する値のことである。   Further, in the restricted data creation device according to the first feature, the restriction information is information that defines a restriction on the number of times of use of restricted data, and the restriction key acquisition unit includes a virtual number that designates a use number restriction and a virtual counter. The restricted key may be requested from the restricted key generation device using the specified counter value and the generation value that is the value of the generation variable representing the generation of the virtual counter as parameters. As described above, the “generation” refers to a value that changes when the continuity of an object is lost. In other words, the “virtual counter generation” is a value that changes when the continuity of counting of the virtual counter is lost and the counter becomes substantially different.

この制限付データ作成装置によると、指定された処理対象データの利用回数を超えて利用しようとした時には入手できなくなる回数制限鍵を制限付データ利用装置から入手することができる。この回数制限鍵を用いて指定された回数制限だけ利用した以降は復号できなくなる暗号化データを作成することができる。   According to this restricted data creation device, it is possible to obtain from the restricted data utilization device a number-restricted key that cannot be obtained when an attempt is made to use the data to be processed exceeding the designated number of uses. It is possible to create encrypted data that cannot be decrypted after the number of times specified by using the number of times limit key is used.

本発明の第2の特徴は、利用時限又は利用回数制限が課された制限付データを利用する制限付データ利用装置であって、(a)制限付データを作成する制限付データ作成装置によって暗号化された制限付データを記憶する記憶部と、(b)利用時限又は利用回数制限を示す制限情報に合った制限鍵を、制限鍵を生成する制限鍵生成装置に要求し、制限鍵によって暗号化された制限付データを復号する復号部と、(c)復号された制限付データを利用する利用部とを備える制限付データ利用装置であることを要旨とする。   A second feature of the present invention is a restricted data utilization device that uses restricted data with a use time limit or a use frequency restriction, and (a) is encrypted by a restricted data creation device that creates restricted data. And (b) requesting a restriction key suitable for restriction information indicating the use time limit or the use frequency restriction from the restriction key generating device that generates the restriction key, and encrypting with the restriction key. The gist of the present invention is a restricted data use apparatus comprising: a decryption unit that decrypts the restricted data that has been converted; and (c) a use unit that uses the decrypted restricted data.

第2の特徴に係る制限付データ利用装置によると、データ毎に異なる制限を課すことができ、又、タンパー行為に対する防御策の実施が容易であり、特に、データ利用の制限に達した後のタンパー行為によってもデータを利用することができない構成とすることができる。   According to the restricted data utilization device according to the second feature, it is possible to impose different restrictions for each data, and it is easy to implement a defensive measure against tampering, especially after reaching the data utilization restriction. It can be configured such that data cannot be used even by tampering.

又、第2の特徴に係る制限付データ利用装置において、制限情報は、制限付データの利用時限を定めた情報であり、復号部は、利用時限と、制限付データ固有の値である固有値と、絶対時限を規定する時計の世代を表す世代変数の値である世代値とをパラメータとし、制限鍵を制限鍵生成装置に要求してもよい。   Further, in the restricted data utilization device according to the second feature, the restriction information is information that defines a use time limit of the restricted data, and the decoding unit includes a use time limit and a unique value that is a value unique to the restricted data. Alternatively, a restriction key may be requested from the restriction key generation apparatus using a generation value that is a value of a generation variable representing a generation of a clock that defines an absolute time limit as a parameter.

この制限付データ利用装置によると、制限付データ作成装置から送付された時限付データである制限付データを記憶部に記憶しておき、後刻それを読み出して、制限鍵生成装置が時限付データ中の情報から再生した制限鍵により同じく時限付データ中の暗号化された処理対象データを復号し、利用することができる。ただし、利用時限以降は、制限鍵生成装置は処理対象データを正常に復号できる制限鍵は再生成しなくなるため、それ以降の処理対象データの利用は不可能となり、利用時限が守られる。   According to this restricted data utilization device, the restricted data, which is the timed data sent from the restricted data creation device, is stored in the storage unit, read out later, and the restricted key generation device is in the timed data Similarly, the encrypted data to be processed in the time-limited data can be decrypted and used by the restriction key reproduced from the above information. However, after the usage time limit, the restriction key generation device does not regenerate a restriction key that can normally decrypt the processing target data, so that the subsequent processing target data cannot be used, and the usage time limit is observed.

又、第2の特徴に係る制限付データ利用装置において、制限情報は、制限付データの利用回数制限を定めた情報であり、制限鍵入手部は、利用回数制限と、仮想カウンタを指定する仮想カウンタ指定値と、仮想カウンタの世代を表す世代変数の値である世代値とをパラメータとし、制限鍵を制限鍵生成装置に要求してもよい。   In the restricted data utilization device according to the second feature, the restriction information is information that defines a restriction on the number of times of use of restricted data, and the restriction key obtaining unit is a virtual that designates a use number restriction and a virtual counter. The restricted key may be requested from the restricted key generation device using the specified counter value and the generation value that is the value of the generation variable representing the generation of the virtual counter as parameters.

この制限付データ利用装置によると、制限付データ作成装置から送付された回数制限付データである制限付データを記憶部に記憶しておき、後刻それを読み出して、制限鍵生成装置が時限付データ中の情報から再生成した回数制限鍵により同じく回数制限付データ中の暗号化された処理対象データを復号し、利用することができる。ただし、回数制限だけ利用した以降は、制限鍵生成装置は処理対象データを正常に復号できる回数制限鍵は再生成しなくなるため、それ以降の処理対象データの利用は不可能となり、利用回数制限が守られる。   According to this restricted data utilization device, the restricted data, which is the number of times restricted data sent from the restricted data creation device, is stored in the storage unit, read out later, and the restricted key generating device causes the timed data to be read. Similarly, the encrypted data to be processed in the data with the limited number of times can be decrypted and used by the number-of-times limited key regenerated from the information in the information. However, after using only the number limit, the limit key generation device will not regenerate the number limit key that can normally decrypt the processing target data, so the subsequent processing target data cannot be used, and the usage number limit is limited. It is protected.

本発明の第3の特徴は、(a)利用時限又は利用回数制限が課された制限付データを作成する制限付データ作成装置、あるいは、制限付データを利用する制限付データ利用装置から、利用時限又は利用回数制限を示す制限情報に合った制限鍵の要求を受信する入出力部と、(b)マスター鍵を記憶する記憶部と、(c)マスター鍵と制限情報とに依存する制限鍵を計算するハッシュ計算部とを備える制限鍵生成装置であることを要旨とする。   The third feature of the present invention is that it is used from (a) a restricted data creation device that creates restricted data in which a use time limit or a use frequency restriction is imposed, or a restricted data use device that uses restricted data. An input / output unit that receives a request for a restriction key that matches the restriction information indicating the time limit or the number of times of use, (b) a storage unit that stores the master key, and (c) a restriction key that depends on the master key and the restriction information The gist of the present invention is that it is a restricted key generation device including a hash calculation unit that calculates

第3の特徴に係る制限鍵生成装置によると、データ毎に異なる制限を課すことができ、又、タンパー行為に対する防御策の実施が容易であり、特に、データ利用の制限に達した後のタンパー行為によってもデータを利用することができない構成とすることができる。   According to the restriction key generation device according to the third feature, different restrictions can be imposed for each data, and it is easy to implement a defensive measure against tampering. In particular, the tamper after reaching the restriction on data use. It can be set as the structure which cannot utilize data also by action.

又、第3の特徴に係る制限鍵生成装置において、制限情報は、制限付データの利用時限を絶対時限で定めた情報であり、2つの時刻の前後関係及び2つの絶対時限を規定する時計を表す世代変数の一致を判断する比較部と、現在時刻及び世代変数を備える時計部とを更に備え、絶対時限と、制限付データ固有の値である固有値と、世代変数の値とをパラメータとする制限鍵の要求を受けた場合、比較部は、パラメータの世代変数の値と、時計部の世代変数の値が等しく、かつ、パラメータの絶対時限時計部の現在時刻より未来の値であるという条件が成立するか否かを判断し、当該条件が成立する場合、ハッシュ計算部は、マスター鍵と、絶対時限と、固有値に依存するハッシュ値である制限鍵を計算してもよい。   In the restriction key generation device according to the third feature, the restriction information is information that defines the use time limit of the restricted data in an absolute time period, and includes a clock that defines the time relationship between the two times and the two absolute time periods. It further includes a comparison unit that determines whether the generation variable matches, and a clock unit that includes the current time and the generation variable, and uses the absolute time limit, the eigenvalue that is unique to the restricted data, and the value of the generation variable as parameters. When receiving the request for the limit key, the comparison unit has a condition that the value of the generation variable of the parameter is equal to the value of the generation variable of the clock unit and is a future value from the current time of the absolute timed clock unit of the parameter. If the condition is satisfied, the hash calculation unit may calculate a master key, an absolute time limit, and a limit key that is a hash value depending on the eigenvalue.

この制限鍵生成装置によると、パラメータの絶対時限値と時計部の時計の現在時刻とを比較し前者が未来の値である場合のみにその絶対時刻値に依存するハッシュ値を計算し制限鍵とするため、ある時刻以降はその値は得られなくなる制限鍵を実現することができる。又、そのハッシュ値の計算は、時計が初期化される毎に変化する値である世代変数の値とパラメータの世代値とが等しい場合にのみ計算されるため、初期化されて変化した基準時刻を基にして時刻比較が行われてしまい、ハッシュ値が計算されてしまうことが無い。又、ハッシュ値の計算はパラメータの固有値にも依存するように行われるため、固有値を知らない他者が同じ制限鍵を入手してしまうことが無い。又、ハッシュ値の計算は、制限鍵生成装置の外部に出力されることが無く外部から知ることが困難なマスター鍵にも依存するように行われるため、他者がこの制限鍵生成装置と同等の装置を用いても同じパラメータから同じ制限鍵を入手することはできない。又、この制限鍵生成装置は生成した制限鍵を内部に記憶しないため、必要な記憶容量が小さい。   According to this limit key generation device, the absolute time value of the parameter is compared with the current time of the clock of the clock unit, and only when the former is a future value, a hash value depending on the absolute time value is calculated and Therefore, it is possible to realize a restricted key that cannot obtain the value after a certain time. The hash value is calculated only when the value of the generation variable, which is a value that changes every time the clock is initialized, and the generation value of the parameter, so the reference time that has been initialized and changed Therefore, the time comparison is not performed and the hash value is not calculated. In addition, since the calculation of the hash value is performed depending on the eigenvalue of the parameter, another person who does not know the eigenvalue does not obtain the same restricted key. In addition, the calculation of the hash value is performed so as to depend on the master key that is not output to the outside of the restricted key generation device and is difficult to know from the outside. The same restriction key cannot be obtained from the same parameter even if the device is used. In addition, since the restriction key generation device does not store the generated restriction key, the required storage capacity is small.

又、第3の特徴に係る制限鍵生成装置において、制限情報は、制限付データの利用時限を相対時限で定めた情報であり、現在時刻及び世代変数を備える時計部を更に備え、相対時限と、制限付データ固有の値である固有値とをパラメータとし、絶対時限と絶対時限を規定する時計を表す世代変数と、制限鍵の要求を受けた場合、ハッシュ計算部は、マスター鍵と、パラメータの相対時限に時計部の提供する現在時刻を加えた値と、固有値に依存するハッシュ値である制限鍵を計算してもよい。   In the restriction key generation device according to the third feature, the restriction information is information that defines a use time limit of the restricted data in a relative time limit, and further includes a clock unit including a current time and a generation variable, When a request is received for a generation variable representing a clock that defines the absolute time limit and the absolute time limit, and a limit key, the hash calculator calculates the master key and the parameter value. A value obtained by adding the current time provided by the clock unit to the relative time limit and a limit key that is a hash value depending on the unique value may be calculated.

この制限鍵生成装置によると、パラメータの相対時限値と時計部の時計の現在時刻とを加えた絶対時限値に依存するハッシュ値を計算し制限鍵とする。又、ハッシュ値の計算はパラメータの固有値にも依存するように行われるため、固有値を知らない他者が同じ制限鍵を入手してしまうことが無い。又、ハッシュ値の計算は、制限鍵生成装置の外部に出力されることが無く外部から知ることが困難なマスター鍵にも依存するように行われるため、他者がこの制限鍵生成装置と同等の装置を用いても同じパラメータから同じ制限鍵を入手することはできない。又、この制限鍵生成装置は生成した制限鍵を内部に記憶しないため、必要な記憶容量が小さい。   According to this restriction key generation device, a hash value depending on an absolute time value obtained by adding the relative time value of the parameter and the current time of the clock of the clock unit is calculated and used as the restriction key. In addition, since the calculation of the hash value is performed depending on the eigenvalue of the parameter, another person who does not know the eigenvalue does not obtain the same restricted key. In addition, the calculation of the hash value is performed so as to depend on the master key that is not output to the outside of the restricted key generation device and is difficult to know from the outside. The same restriction key cannot be obtained from the same parameter even if the device is used. In addition, since the restriction key generation device does not store the generated restriction key, the required storage capacity is small.

又、第3の特徴に係る制限鍵生成装置において、制限情報は、制限付データの利用回数制限を定めた情報であり、2つの値の大小関係及び2つの絶対時限を規定する時計を表す世代変数の一致を判断する比較部と、仮想カウンタ欄と値欄と世代欄とを持つ表であるカウンタ表及び世代変数とを備えるカウンタ部とを更に備え、利用回数制限と、仮想カウンタを指定する仮想カウンタ指定値と、仮想カウンタの世代を表す世代変数の値である世代値とをパラメータとする制限鍵の要求を受けた場合、カウンタ部は、カウンタ表にてパラメータの仮想カウンタ指定値に対応付けられている行の値欄の値と世代欄の値を読み出し、比較部は、パラメータの世代変数の値と、世代欄の値が等しく、かつ、パラメータの利用回数制限が値欄の値よりも大きいという条件が成立するか否かを判断し、当該条件が成立する場合、ハッシュ計算部は、マスター鍵と、利用回数制限と、パラメータの仮想カウンタ指定値に依存するハッシュ値である制限鍵を計算してもよい。   In the restriction key generation device according to the third feature, the restriction information is information that defines a restriction on the number of times the restricted data is used, and is a generation that represents a clock that defines a magnitude relationship between two values and two absolute time limits. It further includes a comparison unit for determining whether the variables match, a counter table that is a table having a virtual counter column, a value column, and a generation column, and a counter unit that includes generation variables, and specifies a usage count limit and a virtual counter. When receiving a request for a restriction key that uses a virtual counter specified value and a generation value that is a value of a generation variable representing the generation of the virtual counter as a parameter, the counter unit corresponds to the virtual counter specified value of the parameter in the counter table. Reads the value in the value column and the value in the generation column of the attached line, and the comparison unit has the same value as the generation variable in the parameter and the value in the generation column, and the parameter usage limit is greater than the value in the value column. Too large If this condition is met, the hash calculation unit obtains a master key, a usage count limit, and a limit key that is a hash value that depends on the virtual counter specified value of the parameter. You may calculate.

この制限鍵生成装置によると、パラメータの回数制限値とパラメータの仮想カウンタ指定値で指定される仮想カウンタの値(仮想カウンタ指定値に対応付けられているカウンタ表の行の値欄の値のこと)とを比較し前者が大きい場合のみにその回数制限値に依存するハッシュ値を計算し回数制限鍵とするため、ある回数利用した以降はその値は得られなくなる回数制限鍵を実現することができる。又、そのハッシュ値の計算は、仮想カウンタが初期化される毎に変化する値である仮想カウンタの世代値(仮想カウンタ指定値に対応付けられているカウンタ表の行の世代欄の値のこと)とパラメータの世代値とが等しい場合にのみ計算されるため、初期化されて変化した仮想カウンタの値を基にして、上述の値比較が行われてしまい、ハッシュ値が計算されてしまうことが無い。又、ハッシュ値の計算はパラメータの仮想カウンタ指定値にも依存するように行われるため、その値を知らない他者が同じ回数制限鍵を入手してしまうことが無い。又、ハッシュ値の計算は、制限鍵生成装置の外部に出力されることが無く外部から知ることが困難なマスター鍵にも依存するように行われるため、他者がこの制限鍵生成装置と同等の装置を用いても同じパラメータから同じ制限鍵を入手することはできない。又、この制限鍵生成装置は生成した制限鍵を内部に記憶しないため、必要な記憶容量が小さい。   According to this limit key generation device, the value of the virtual counter specified by the parameter count limit value and the virtual counter specified value of the parameter (the value in the value column of the counter table row associated with the virtual counter specified value) ) And only when the former is large, a hash value that depends on the number limit value is calculated and used as a number limit key. it can. In addition, the calculation of the hash value is performed by calculating the generation value of the virtual counter (the value in the generation column of the counter table row associated with the specified value of the virtual counter) that changes every time the virtual counter is initialized. ) And the generation value of the parameter, the above-described value comparison is performed based on the value of the virtual counter that has been initialized and changed, and the hash value is calculated. There is no. In addition, since the calculation of the hash value is performed so as to depend on the virtual counter designation value of the parameter, another person who does not know the value does not obtain the same number of times limit key. In addition, the calculation of the hash value is performed so as to depend on the master key that is not output to the outside of the restricted key generation device and is difficult to know from the outside. The same restriction key cannot be obtained from the same parameter even if the device is used. In addition, since the restriction key generation device does not store the generated restriction key, the required storage capacity is small.

本発明によると、データ毎に異なる制限を課すことができ、又、タンパー行為に対する防御策の実施が容易であり、特に、データ利用の制限に達した後のタンパー行為によってもデータを利用することができないこととする、制限付データ作成装置、制限付データ利用装置及び制限鍵生成装置を提供することができる。   According to the present invention, it is possible to impose different restrictions for each data, and it is easy to implement a defensive measure against tampering. In particular, data is also used by tampering after reaching the limit of data usage. It is possible to provide a restricted data creation device, a restricted data utilization device, and a restricted key generation device that cannot be performed.

次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には、同一又は類似の符号を付している。ただし、図面は模式的なものであることに留意すべきである。   Next, embodiments of the present invention will be described with reference to the drawings. In the following description of the drawings, the same or similar parts are denoted by the same or similar reference numerals. However, it should be noted that the drawings are schematic.

本実施形態に係る制限付データ管理システムは、利用時限又は利用回数制限が課せられたデータである制限付データを作成する制限付データ作成装置100と、制限付データを利用する制限付データ利用装置200と、時限又は利用回数に達すると取得できなくなる制限鍵を生成する制限鍵生成装置300とを備える。   The restricted data management system according to the present embodiment includes a restricted data creation device 100 that creates restricted data that is data with a use time limit or a use frequency limit, and a restricted data use device that uses restricted data. 200 and a restriction key generation device 300 that generates a restriction key that cannot be acquired when the time limit or the number of times of use is reached.

(制限付データ作成装置)
次に、本実施形態に係る制限付データ作成装置100の構成について説明する。図1に示すように、制限付データ作成装置100は、暗号部101と、入出力部102と、制限鍵入手部103と、ID生成部104と、記憶部105と、時計部106とを備える。
(Restricted data creation device)
Next, the configuration of the restricted data creation device 100 according to the present embodiment will be described. As shown in FIG. 1, the restricted data creation apparatus 100 includes an encryption unit 101, an input / output unit 102, a restricted key acquisition unit 103, an ID generation unit 104, a storage unit 105, and a clock unit 106. .

暗号部101は、制限付データ作成装置100に入力される処理対象データを制限鍵入手部103の提供する制限鍵にて暗号化し、入出力部102を介して制限付データ利用装置200へ送信する。   The encryption unit 101 encrypts the processing target data input to the restricted data creation device 100 with the restriction key provided by the restriction key obtaining unit 103, and transmits the encrypted data to the restricted data utilization device 200 via the input / output unit 102. .

入出力部102は、ネットワークなどの情報伝達手段を用いて、制限付データ作成装置100と制限付データ利用装置200との情報のやりとりを仲介する。   The input / output unit 102 mediates the exchange of information between the restricted data creation device 100 and the restricted data utilization device 200 using information transmission means such as a network.

制限鍵入手部103は、制限付データ作成装置100に入力される制限情報に基づいて、入出力部102を介して制限付データ利用装置200内部に備えられた制限鍵生成装置300に、制限情報に合った制限鍵(制限鍵又は回数制限鍵)を要求し、入手する。ここで、「制限情報」とは、利用時限又は利用回数制限を示すものであり、例えば、制限付データの利用時限を絶対時限で定めた情報、制限付データの利用時限を相対時限で定めた情報、制限付データの利用回数制限を定めた情報などが挙げられる。   Based on the restriction information input to the restricted data creation device 100, the restricted key acquisition unit 103 sends restriction information to the restricted key generation device 300 provided in the restricted data utilization device 200 via the input / output unit 102. Request and obtain a restriction key (restriction key or number of times restriction key) that matches Here, “restricted information” indicates a use time limit or a use frequency limit, for example, information that defines the use time of restricted data as an absolute time limit, or a use time limit of restricted data as a relative time limit. Information, information that defines the limit on the number of times to use restricted data, and the like.

ID生成部104は、制限鍵入手部103が制限鍵を入手する際に必要となる、データ固有の値である固有値又は、仮想カウンタを指定する仮想カウンタ指定値として用いられるIDを生成する。   The ID generation unit 104 generates an ID used as a unique value that is a data-specific value or a virtual counter designation value that designates a virtual counter, which is necessary when the restriction key obtaining unit 103 obtains the restriction key.

IDは過去ある程度の期間においてIDとして生成されていない値を生成するような手段により生成すれば良いが、過去生成されたIDが仮に知られたとしても次に生成されるIDが推定されにくいような手段で生成するのがより望ましい。その例として乱数発生器を用いてIDを生成する方法を用いても良い。   The ID may be generated by a means that generates a value that has not been generated as an ID in a certain period of time in the past, but even if an ID generated in the past is known, it is difficult to estimate the ID to be generated next. It is more desirable to generate by means. As an example, a method of generating an ID using a random number generator may be used.

記憶部105は、制限鍵入手部103が制限鍵を入手する際に必要とする時差変数115および、絶対時限を規定する時計を表す世代変数125を提供する。   The storage unit 105 provides a time difference variable 115 required when the restriction key obtaining unit 103 obtains the restriction key and a generation variable 125 representing a clock that defines the absolute time limit.

時計部106は、時計を備え、現在時刻を提供する。尚、この時計は他の時計と同期していなくとも良い。   The clock unit 106 includes a clock and provides the current time. Note that this clock need not be synchronized with other clocks.

(制限付データ利用装置)
次に、本実施形態に係る制限付データ利用装置200の構成について説明する。図2に示すように、制限付データ利用装置200は、入出力部201と、記憶部202と、復号部203と、利用部204と、制限鍵生成装置300とを備える。
(Restricted data use device)
Next, the configuration of the restricted data utilization device 200 according to the present embodiment will be described. As shown in FIG. 2, the restricted data utilization device 200 includes an input / output unit 201, a storage unit 202, a decryption unit 203, a utilization unit 204, and a restriction key generation device 300.

入出力部201は、ネットワークなどの情報伝達手段を用いて、制限付データ作成装置100と制限付データ利用装置200との間の情報のやりとりを仲介する。   The input / output unit 201 mediates exchange of information between the restricted data creation device 100 and the restricted data utilization device 200 using information transmission means such as a network.

記憶部202は、制限付データ作成装置100から送られた時限付データ又は回数制限付データを一時的に記憶する。尚、一時的に記憶するとしているが、記憶部202はダイナミックRAMのように消去が可能である記憶手段を用いる必要は無く、追記型光ディスクのように記憶内容が永続的に残りうる記憶手段を用いてもよい。又、記憶部202が常に記憶能力を持っている必要は無く、特定の場合でのみ記憶能力を持つ記憶手段を用いてもよい。例えば記憶部202は記録媒体に対して情報を記録および再生する装置であっても良いが、記憶媒体がその装置から外されていたり、記憶媒体が未初期化や記憶容量を使い果たしたりした等の理由で記憶能力が無くなりうる。そのような記憶手段でも記憶部202の実施形態となり得る。   The storage unit 202 temporarily stores time-limited data or number-of-times-limited data sent from the limited data creation device 100. Although the storage unit 202 is temporarily stored, the storage unit 202 does not need to use a erasable storage unit such as a dynamic RAM, and a storage unit that can permanently store the storage content, such as a write-once optical disc. It may be used. Further, the storage unit 202 does not always need to have a storage capability, and a storage unit having a storage capability may be used only in a specific case. For example, the storage unit 202 may be a device that records and reproduces information on a recording medium, but the storage medium is removed from the device, the storage medium is uninitialized, or the storage capacity is exhausted, etc. The memory ability can be lost for a reason. Such a storage unit can be an embodiment of the storage unit 202.

復号部203は、時限付データ又は回数制限付データの中の暗号化された処理対象データを制限鍵生成装置300の提供する鍵により復号する。   The decrypting unit 203 decrypts the encrypted processing target data in the time-limited data or the number-limited data with the key provided by the limited key generation device 300.

利用部204は、処理対象データを利用する。利用の形態としては、例えば、処理対象データが音楽やビデオデータである場合には、それを再生することや、画像データである場合には、それを表示することなどが挙げられるが、それらに限らずその他あらゆるデータの利用の仕方がこの利用部204においてされてよい。   The utilization unit 204 uses the processing target data. As a form of use, for example, when the processing target data is music or video data, it can be reproduced, and when it is image data, it can be displayed. The utilization unit 204 may use any other data utilization method.

制限鍵生成装置300は、制限鍵あるいは回数制限鍵を生成する。制限鍵生成装置300の詳細は、後述する。   The limit key generation device 300 generates a limit key or a number limit key. Details of the restriction key generation device 300 will be described later.

(制限鍵生成装置)
次に、本実施形態に係る制限鍵生成装置300の構成について説明する。図3に示すように、制限鍵生成装置300は、入出力部301と、比較部302と、ハッシュ計算部303と、マスター鍵部304と、初期化部305と、時計部306と、カウンタ部307とを備える。
(Restriction key generator)
Next, the configuration of the restricted key generation apparatus 300 according to this embodiment will be described. As shown in FIG. 3, the restricted key generation device 300 includes an input / output unit 301, a comparison unit 302, a hash calculation unit 303, a master key unit 304, an initialization unit 305, a clock unit 306, and a counter unit. 307.

入出力部301は、バスやネットワークなどの情報伝達手段を用いて、制限鍵生成装置300と外部装置との間の情報のやりとりを仲介する。   The input / output unit 301 mediates exchange of information between the restriction key generation device 300 and an external device using information transmission means such as a bus or a network.

比較部302は、2つの絶対時刻の前後関係、2つの数値の大小関係、および2つの世代値の一致を判断する。   The comparison unit 302 determines the anteroposterior relationship of two absolute times, the magnitude relationship of two numerical values, and the coincidence of two generation values.

ハッシュ計算部303は、与えられたすべてのパラメータに依存する値であるハッシュ値を計算する。ハッシュ値の計算の実施方法として必要な条件は、同一のパラメータに対しては同一のハッシュ値となり、かつ、計算されたハッシュ値から元のパラメータを推定することが困難であることである。例としては、パラメータをすべてビット表現で結合し、それをMD5(メッセージ・ダイジェスト5)で変換する方法で実施しても良い。その他、計算されたハッシュ値から元のパラメータを推定することが困難であり、かつ、同一のパラメータに対しては同一のハッシュ値となり、出力値がパラメータすべてに依存するような任意の計算手段を用いることができる。   The hash calculator 303 calculates a hash value that is a value depending on all the given parameters. A necessary condition as a method of calculating a hash value is that the same parameter has the same hash value and it is difficult to estimate the original parameter from the calculated hash value. As an example, all parameters may be combined in bit representation and converted by MD5 (message digest 5). In addition, it is difficult to estimate the original parameter from the calculated hash value, and the same hash value is obtained for the same parameter, and any calculation means that the output value depends on all the parameters is used. Can be used.

マスター鍵部304は、マスター鍵314を記憶する。このマスター鍵314は、初期化部305により生成されるビット列である。   The master key unit 304 stores a master key 314. The master key 314 is a bit string generated by the initialization unit 305.

初期化部305は、後述する異常な事象の発生を検知する。又、そのような事象の発生を検知した際に、新たなマスター鍵を生成してマスター鍵部304のマスター鍵314を更新し、時計部306の世代変数316を更新し、カウンタ部のカウンタ表317の初期化と世代変数327の更新を行う。   The initialization unit 305 detects the occurrence of an abnormal event described later. Further, when the occurrence of such an event is detected, a new master key is generated, the master key 314 of the master key unit 304 is updated, the generation variable 316 of the clock unit 306 is updated, and the counter table of the counter unit is updated. Initialization 317 and generation variable 327 are updated.

時計部306は、時計を備え現在時刻を提供する。又、世代変数316を提供する。尚、時計は他の時計と同期していなくとも良い。   The clock unit 306 includes a clock and provides the current time. A generation variable 316 is also provided. The clock may not be synchronized with other clocks.

カウンタ部307は、カウンタ表317を保持し、それを操作する。又、仮想カウンタの世代を表す世代変数327を提供する。カウンタ表317は、仮想カウンタ欄、値欄、世代欄を備える表形式のデータである。図12に示すカウンタ表337は、カウンタ表317のデータの一例である。この例のカウンタ表337には5つの行があり、そのうち4行目の仮想カウンタ欄には「(無効値)」と記載しているが、これは無効値が当該欄に代入されていることを意味している。無効値とは、仮想カウンタ値としては無効な値のことである。ある行の仮想カウンタ欄に仮想カウンタ指定値を代入することをその仮想カウンタ指定値をその行に対応付ける、と表現し、又、ある行の仮想カウンタ欄に特定の仮想カウンタ指定値が代入されていることをその仮想カウンタ指定値がその行に対応付けられている、と表現する。   The counter unit 307 holds the counter table 317 and operates it. A generation variable 327 representing the generation of the virtual counter is also provided. The counter table 317 is tabular data including a virtual counter column, a value column, and a generation column. A counter table 337 illustrated in FIG. 12 is an example of data of the counter table 317. The counter table 337 in this example has five rows, of which “(invalid value)” is described in the virtual counter column of the fourth row, but this is that the invalid value is assigned to the column. Means. An invalid value is a value that is invalid as a virtual counter value. Substituting a virtual counter specified value into a virtual counter field of a line is expressed as associating the virtual counter specified value with the line, and a specific virtual counter specified value is assigned to the virtual counter field of a certain line. That the virtual counter designation value is associated with the row.

又、仮想カウンタに対応する実体すなわち実カウンタの指定値は、カウンタ表337の1〜5行目の行番号に対応して、1〜5となる。仮想カウンタを指定する仮想カウンタ指定値は、時限鍵の場合の固有値に相当する役割を果たす。このため、実カウンタ指定値ではなく、任意の値をとることができる仮想カウンタ指定値を利用する。 Further, the entity corresponding to the virtual counter, that is, the designated value of the real counter is 1 to 5 corresponding to the row numbers of the first to fifth rows of the counter table 337. A virtual counter designation value that designates a virtual counter plays a role corresponding to a unique value in the case of a time key. For this reason, a virtual counter designated value that can take an arbitrary value is used instead of the actual counter designated value.

尚、制限鍵生成装置300は、ハードウェア的に信号を読み取る、あるいは操作することにより内部状態を読み取る、あるいは書き換えるなどのいわゆるタンパー行為への防御策を施して実装することが望ましい。タンパー防御策の典型的手段は、ハードウェアの厳封や、ワンチップ化である。すなわち、制限鍵生成装置300を実装するハードウェアを厳封、又は制限鍵生成装置300をワンチップで実装しても良い。   It should be noted that the restriction key generation device 300 is preferably mounted with a defensive measure against so-called tampering action such as reading a signal or operating the hardware to read or rewrite the internal state. Typical measures for tamper defense are tight sealing of hardware and one-chip implementation. That is, the hardware on which the restriction key generation device 300 is mounted may be tightly sealed, or the restriction key generation device 300 may be mounted on a single chip.

(制限付データ作成方法)
次に、制限付データ作成装置100の動作について、図4〜図6を用いて説明する。
(Restricted data creation method)
Next, the operation of the restricted data creation device 100 will be described with reference to FIGS.

=時限付データ送信(絶対時限)=
まず、図4を用いて、制限付データ作成装置100に処理対象データと、当該データの利用時限を時計部306の時計を基準とする絶対時刻(絶対時限)で指定する制限情報とが入力された際の動作を説明する。
= Timed data transmission (absolute time limit) =
First, with reference to FIG. 4, processing target data and restriction information for designating the use time limit of the data by an absolute time (absolute time limit) with reference to the clock of the clock unit 306 is input to the restricted data creation apparatus 100. The operation at that time will be described.

尚、ここで、「絶対時刻」とは時刻の指定形式を相対時刻と区別した用語であり、現在時刻が何時であるかによらず特定の時刻を表現する時刻の指定形式のことである。絶対時刻の例としては、「午前1時23分45秒」「23時45分」「3月4日午前5時6分」「平成4年5月6日午後7時8分」などが挙げられる。ただし、絶対時刻であってもどの時計における時刻であるかにより表現された時刻が実際には異なりうる。そのため、より正確に把握するためには、どの時計を基準にした絶対時刻であるのかを指定する必要がある。上記の場合は時計部306の時計を基準にする旨を指定している。   Here, the “absolute time” is a term that distinguishes the time designation format from the relative time, and is a time designation format that expresses a specific time regardless of what time the current time is. Examples of absolute time include “1:23:45 am”, “23:45”, “5:06 am on March 4,” “7:08 pm on May 6, 1992”, etc. It is done. However, even if it is an absolute time, the time represented by the time in which clock may be actually different. Therefore, in order to grasp more accurately, it is necessary to specify which clock is the absolute time based on. In the above case, it is specified that the clock of the clock unit 306 is used as a reference.

一方の相対時刻は、現在時刻を基点として指定した時間が経過した後の未来の時刻を指定する形式である。相対時刻の例としては「12,345秒後」「23時間45分後」「34日5時間6分後」「4年5か月後」などが挙げられる。又、処理対象データの利用時限とは、処理対象データを利用してよい限界の時刻を指定するものである。時限の指定方法としては絶対時刻による場合と相対時刻による場合があり、それぞれによる場合の時限を特に、「絶対時限」、「相対時限」と表記する。   One relative time is a format for designating a future time after the time designated with the current time as a base point has elapsed. Examples of the relative time include “12,345 seconds later”, “23 hours 45 minutes later”, “34 days 5 hours 6 minutes later”, “4 years 5 months later”, and the like. In addition, the use time limit of the processing target data designates a limit time at which the processing target data may be used. There are two methods for specifying the time period: absolute time and relative time. The time periods depending on the time are expressed as “absolute time” and “relative time”, respectively.

まず、図4のステップS101において、制限付データ作成装置100の制限鍵入手部103は、制限付データ利用装置200の制限鍵生成装置300に時計の現在時刻と世代を要求する。そして返却された現在時刻値と世代値を受信する。それぞれの値をTuおよびGuと呼ぶことにする。   First, in step S101 of FIG. 4, the restriction key obtaining unit 103 of the restricted data creating apparatus 100 requests the current time and generation of the clock from the restricted key generating apparatus 300 of the restricted data using apparatus 200. Then, the returned current time value and generation value are received. Each value will be called Tu and Gu.

次に、ステップS102において、制限鍵入手部103は、記憶部105の提供する時差変数115(以下変数Tdと表記)にTuから時計部306の時計の提供する現在時刻を差し引いたものを代入し、記憶部105の提供する世代変数125(以下変数Gdと表記)にGuを代入する。   Next, in step S102, the restriction key obtaining unit 103 substitutes a value obtained by subtracting the current time provided by the clock of the clock unit 306 from Tu for the time difference variable 115 (hereinafter referred to as a variable Td) provided by the storage unit 105. Then, Gu is substituted into the generation variable 125 (hereinafter referred to as variable Gd) provided by the storage unit 105.

次に、ステップS103において、制限鍵入手部103は、制限付データ作成装置100に入力された絶対時限値である制限情報に変数Tdの値を加える。この加えた結果の値をTaと呼ぶことにする。   Next, in step S103, the restriction key obtaining unit 103 adds the value of the variable Td to the restriction information that is an absolute time limit value input to the restricted data creating apparatus 100. The resulting value is called Ta.

次に、ステップS104において、ID生成部104は、IDを生成する。この生成したIDをIと呼ぶとにする。このIDは生成するたびに異なることが望ましい数値であり、それを生成するID生成部104は、例えばIDを生成する毎に値を更新するカウンタや、乱数発生器を用いることによりIDを生成することができる。   Next, in step S104, the ID generation unit 104 generates an ID. This generated ID is called I. This ID is a numerical value that is preferably different every time it is generated. The ID generation unit 104 that generates the ID generates the ID by using a counter or a random number generator that updates the value each time an ID is generated, for example. be able to.

次に、ステップS105において、制限鍵入手部103は、絶対時限値としてTa、世代値としてGd、固有値としてIをパラメータとして、制限付データ利用装置200内の制限鍵生成装置300に制限鍵を要求する。そして返却された制限鍵を受信する。この受信した制限鍵をKと呼ぶことにする。   Next, in step S105, the restriction key obtaining unit 103 requests a restriction key from the restriction key generation apparatus 300 in the restricted data utilization apparatus 200 using Ta as the absolute time limit value, Gd as the generation value, and I as the eigenvalue as parameters. To do. Then, the returned restriction key is received. This received restriction key is called K.

次に、ステップS106において、暗号部101は、制限付データ作成装置100に入力された処理対象データを鍵Kで暗号化する。この暗号化された処理対象データをDkと呼ぶことにする。   Next, in step S <b> 106, the encryption unit 101 encrypts the processing target data input to the restricted data creation device 100 with the key K. This encrypted data to be processed is called Dk.

次に、ステップS107において、暗号部101は、時限付データとしてDt[Ta,Gd,I,Dk]を制限付データ利用装置200へ送信し、処理を終了する。尚、時限付データは、(絶対)時限値と世代値と固有値と暗号化済み処理対象データとを含むデータであり、それをDt[絶対時限値,世代値,固有値,暗号化済み処理対象データ]のように表記している。   Next, in step S107, the encryption unit 101 transmits Dt [Ta, Gd, I, Dk] as time-limited data to the limited data utilization apparatus 200, and ends the process. The time-limited data is data including (absolute) time value, generation value, eigenvalue, and encrypted processing target data, and Dt [absolute time limit value, generation value, eigenvalue, encrypted processing target data] ].

=時限付データ送信(相対時限)=
次に、図5を用いて、制限付データ作成装置100に処理対象データと、当該データの利用時限を相対時限で指定する制限情報とが入力された際の動作を説明する。
= Timed data transmission (relative time limit) =
Next, with reference to FIG. 5, the operation when the processing target data and the restriction information for designating the use time limit of the data with the relative time limit are input to the restricted data creation apparatus 100 will be described.

まず、ステップS111において、制限付データ作成装置100の制限鍵入手部103は、制限付データ作成装置100に入力された相対時限値である制限情報を受信する。この値をTrと呼ぶことにする。   First, in step S <b> 111, the restriction key obtaining unit 103 of the restricted data creating apparatus 100 receives restriction information that is a relative time limit value input to the restricted data creating apparatus 100. This value will be referred to as Tr.

次に、ステップS112において、ID生成部104は、IDを生成する。この生成したIDをIと呼ぶことにする。   Next, in step S112, the ID generation unit 104 generates an ID. This generated ID is called I.

次に、ステップS113において、制限鍵入手部103は、相対時限値としてTr、固有値としてIをパラメータとして制限付データ利用装置200内の制限鍵生成装置300に絶対時限と制限鍵を要求する。そして返却された絶対時限、世代値、制限鍵を受信する。それぞれの値をTa、GuおよびKと呼ぶことにする。   Next, in step S113, the restriction key obtaining unit 103 requests an absolute time limit and a restriction key from the restriction key generation apparatus 300 in the restricted data utilization apparatus 200 using Tr as a relative time limit value and I as a characteristic value as parameters. Then, the returned absolute time, generation value, and restriction key are received. Each value will be called Ta, Gu and K.

次に、ステップS114において、暗号部101は、制限付データ作成装置100に入力された処理対象データを鍵Kで暗号化する。暗号化された処理対象データをDkと呼ぶことにする。   In step S <b> 114, the encryption unit 101 encrypts the processing target data input to the restricted data creation device 100 with the key K. The encrypted processing target data is called Dk.

次に、ステップS115において、暗号部101は、時限付データとしてDt[Ta,Gu,I,Dk]を制限付データ利用装置200に送信し、処理を終了する。   Next, in step S115, the encryption unit 101 transmits Dt [Ta, Gu, I, Dk] as time-limited data to the restricted data utilization device 200, and ends the process.

=回数制限付データ送信=
次に、図6を用いて、制限付データ作成装置100に処理対象データと、当該データの利用回数制限を指定する制限情報が入力された際の動作を説明する。
= Data transmission with limited number of times =
Next, with reference to FIG. 6, description will be given of an operation when processing target data and restriction information for specifying restriction on the number of times the data is used are input to the restricted data creation apparatus 100. FIG.

尚、処理対象データの利用回数制限とは、処理対象データを利用してよい回数を指定するものである。回数制限の例としては「5回」「1,024回」「0回」などが挙げられる。   The processing object data use frequency limit is to specify the number of times the processing object data may be used. Examples of the number limit include “5 times”, “1,024 times”, “0 times”, and the like.

まず、図6のステップS121において、制限付データ作成装置100のID生成部104は、IDを生成する。この生成したIDをIと呼ぶことにする。   First, in step S121 of FIG. 6, the ID generation unit 104 of the restricted data creation device 100 generates an ID. This generated ID is called I.

次に、ステップS122において、制限鍵入手部103は、仮想カウンタ指定値としてIをパラメータとして、制限付データ利用装置200内の制限鍵生成装置300に仮想カウンタの初期化を要求する。そして返却された世代値を受信し、記憶部105の提供する世代変数125(以下変数Gdと表記)に代入する。   Next, in step S122, the restriction key obtaining unit 103 requests initialization of the virtual counter to the restriction key generation apparatus 300 in the restricted data utilization apparatus 200 using I as a parameter for the virtual counter designation value. The returned generation value is received and substituted into a generation variable 125 (hereinafter referred to as a variable Gd) provided by the storage unit 105.

次に、ステップS123において、制限鍵入手部103は、制限付データ作成装置100に入力された回数制限値である制限情報を受信する。この値をNと呼ぶことにする。   Next, in step S123, the restriction key obtaining unit 103 receives restriction information that is a number-of-times restriction value input to the restricted data creation device 100. This value will be referred to as N.

次に、ステップS124において、制限鍵入手部103は、回数制限値としてN、世代値としてGd、仮想カウンタ指定値としてIをパラメータとして、制限付データ利用装置200内の制限鍵生成装置300に回数制限鍵を要求する。そして返却された回数制限鍵を受信する。この回数制限鍵をKと呼ぶことにする。   Next, in step S124, the restriction key obtaining unit 103 uses the number N as the number limit value, Gd as the generation value, and I as the virtual counter designation value as parameters to the limit key generation apparatus 300 in the restricted data utilization apparatus 200. Request a restricted key. Then, the returned number limit key is received. This number limit key is called K.

次に、ステップS125において、暗号部101は、制限付データ作成装置100に入力された処理対象データを鍵Kで暗号化する。この暗号化された処理対象データをDkと呼ぶことにする。   Next, in step S125, the encryption unit 101 encrypts the processing target data input to the restricted data creation device 100 with the key K. This encrypted data to be processed is called Dk.

次に、ステップS126において、暗号部101は、回数制限付データとしてDn[N,Gd,I,Dk]を制限付データ利用装置200に送信し、処理を終了する。尚、回数制限付データは、回数制限値と世代値と仮想カウンタ指定値と暗号化済み処理対象データとを含むデータであり、それをDn[回数制限値,世代値,仮想カウンタ指定値,暗号化済み処理対象データ]のように表記している。   Next, in step S126, the encryption unit 101 transmits Dn [N, Gd, I, Dk] as the limited number of times data to the limited data utilization device 200, and ends the process. Note that the data with the number of times limit is data including the number of times limit value, the generation value, the virtual counter specified value, and the encrypted processing target data, and the data includes Dn [number limit value, generation value, virtual counter specified value, encryption Data to be processed]].

(制限付データ利用方法)
次に、制限付データ利用装置200の動作について、図7及び図8を用いて説明する。
(How to use restricted data)
Next, the operation of the restricted data utilization apparatus 200 will be described with reference to FIGS.

=時限付データ受信=
まず、図7を用いて、制限付データ作成装置100に時限付データDt[Tp,Gp,I,Dk]が入力された際の、制限付データ利用装置200の動作を説明する。
= Timed data reception =
First, the operation of the restricted data utilization device 200 when the time-limited data Dt [Tp, Gp, I, Dk] is input to the restricted data creation device 100 will be described with reference to FIG.

ステップS201において、制限付データ利用装置200の記憶部202は、制限付データ利用装置200に入力された時限付データDt[Tp,Gp,I,Dk]を記憶する。   In step S <b> 201, the storage unit 202 of the restricted data utilization device 200 stores the timed data Dt [Tp, Gp, I, Dk] input to the restricted data utilization device 200.

その後、任意の時点で(図中の点線はその間に任意の処理が入りうることを表す)、ステップS202に移行し、ステップS202において、記憶部202は、ステップS201にて記憶された時限付データDt[Tp,Gp,I,Dk]を読み出す。   Thereafter, at an arbitrary time point (a dotted line in the figure indicates that an arbitrary process can be performed between them), the process proceeds to step S202. In step S202, the storage unit 202 stores the time-limited data stored in step S201. Read Dt [Tp, Gp, I, Dk].

次に、ステップS203において、復号部203は、ステップS202において読み出された時限付データを用いて時限値としてTp、世代値としてGp、固有値としてIをパラメータとして制限鍵生成装置300に制限鍵を要求する。そして返却された制限鍵を受信する。この値をKと呼ぶことにする。   Next, in step S203, the decryption unit 203 uses the time-limited data read in step S202 to assign a restriction key to the restriction key generation device 300 using Tp as the time value, Gp as the generation value, and I as the eigenvalue as parameters. Request. Then, the returned restriction key is received. This value will be called K.

次に、ステップS204において、復号部203は、ステップS202において読み出された時限付データのDkを鍵Kで復号する。復号された処理対象データをDと呼ぶことにする。   Next, in step S204, the decrypting unit 203 decrypts Dk of the time-limited data read in step S202 with the key K. The decrypted processing target data is called D.

次に、ステップS205において、利用部204は、Dを利用し、処理を終了する。   Next, in step S205, the use unit 204 uses D and ends the process.

=回数制限付データ受信=
次に、図8を用いて、制限付データ作成装置100に回数制限付データDn[Np,Gp,I,Dk]が入力された際の、制限付データ利用装置200の動作を説明する。
= Receive data with limited number of times =
Next, the operation of the restricted data utilization device 200 when the restricted number of times data Dn [Np, Gp, I, Dk] is input to the restricted data creation device 100 will be described using FIG.

まず、ステップS211において、制限付データ利用装置200の記憶部202は、制限付データ利用装置200に入力された回数制限付データDn[Np,Gp,I,Dk]を記憶する。   First, in step S211, the storage unit 202 of the restricted data utilization device 200 stores the number of times restricted data Dn [Np, Gp, I, Dk] input to the restricted data utilization device 200.

その後任意の時点で(図中の点線はその間に任意の処理が入りうることを表す)、ステップS212に移行し、ステップS212において、記憶部202は、ステップS211にて記憶された回数制限付データDn[Np,Gp,I,Dk]を読み出す。   Thereafter, at an arbitrary time point (a dotted line in the figure indicates that an arbitrary process can be performed in the meantime), the process proceeds to step S212. In step S212, the storage unit 202 stores the number-limited data stored in step S211. Dn [Np, Gp, I, Dk] is read.

次に、ステップS213において、復号部203は、ステップS212において読み出された回数制限付データを用いて、回数制限値としてNp、世代値としてGp、仮想カウンタ指定値としてIをパラメータとして制限鍵生成装置300に回数制限鍵利用を要求する。そして返却された回数制限鍵を受信する。この値をKと呼ぶことにする。   Next, in step S213, the decryption unit 203 uses the number-limited data read in step S212 to generate a limit key using Np as the number limit value, Gp as the generation value, and I as the virtual counter designation value as parameters. The apparatus 300 is requested to use the time limit key. Then, the returned number limit key is received. This value will be called K.

次に、ステップS214において、復号部203は、ステップS212において読み出された回数制限付データのDkを鍵Kで復号する。復号された処理対象データをDと呼ぶことにする。   Next, in step S214, the decryption unit 203 decrypts Dk of the number-limited data read in step S212 with the key K. The decrypted processing target data is called D.

次に、ステップS215において、利用部204は、Dを利用し、処理を終了する。   Next, in step S215, the use unit 204 uses D to end the process.

(制限鍵生成方法)
次に、制限鍵生成装置300の動作について、図9〜図16を用いて説明する。
(Restriction key generation method)
Next, the operation of the restricted key generation apparatus 300 will be described with reference to FIGS.

=時刻+世代要求処理=
まず、図9を用いて、制限鍵生成装置300に時計の現在時刻と世代を要求された際の、制限鍵生成装置300の動作を説明する。
= Time + Generation request processing =
First, the operation of the restriction key generation device 300 when the restriction key generation device 300 requests the current time and generation of the clock will be described with reference to FIG.

ステップS301において、制限鍵生成装置300の時計部306は、時計の現在時刻と世代変数316の値を読み出す。それぞれの値をTおよびGと呼ぶことにする。   In step S301, the clock unit 306 of the restricted key generation device 300 reads the current time of the clock and the value of the generation variable 316. Each value will be referred to as T and G.

次に、ステップS302において、入出力部301は、現在時刻値としてTを、世代値としてGを要求に対する返却値としてそれぞれ出力し、処理を終了する。   Next, in step S302, the input / output unit 301 outputs T as the current time value and G as the generation value as a return value for the request, and ends the process.

=制限鍵要求処理(絶対時限)=
次に、図10を用いて、制限鍵生成装置300に絶対制限値と世代値と固有値とをパラメータとして制限鍵を要求された際の、制限鍵生成装置300の動作を説明する。
= Restricted key request processing (absolute time limit) =
Next, the operation of the restriction key generation device 300 when a restriction key is requested to the restriction key generation device 300 using the absolute restriction value, the generation value, and the unique value as parameters will be described with reference to FIG.

まず、ステップS311において、制限鍵生成装置300の入出力部301は、要求のパラメータを受信する。パラメータの絶対制限値をTp、世代値をGp、固有値をIとそれぞれ呼ぶことにする。   First, in step S311, the input / output unit 301 of the restricted key generation device 300 receives the requested parameter. The absolute limit value of the parameter is called Tp, the generation value is called Gp, and the eigenvalue is called I.

次に、ステップS312において、時計部306は、時計の現在時刻と世代変数316の値を読み出す。それぞれの値をTおよびGと呼ぶことにする。   Next, in step S312, the clock unit 306 reads the current time of the clock and the value of the generation variable 316. Each value will be referred to as T and G.

次に、ステップS313において、比較部302は、GpとGが同一値であり、かつ、TpがTより未来の時刻値であるという条件が成立するか判断する。条件が成立する場合にはステップS314へ、それ以外の場合はステップS316へ進む。   Next, in step S313, the comparison unit 302 determines whether the condition that Gp and G are the same value and Tp is a future time value after T is satisfied. If the condition is satisfied, the process proceeds to step S314. Otherwise, the process proceeds to step S316.

ステップS314に進んだ場合、同ステップにおいて、ハッシュ計算部303は、マスター鍵部304の記憶するマスター鍵314とTpとIとをパラメータとしてハッシュ値を計算する。この計算したハッシュ値をKと呼ぶ。   When the process proceeds to step S314, in this step, the hash calculation unit 303 calculates a hash value using the master key 314 stored in the master key unit 304, Tp, and I as parameters. This calculated hash value is called K.

次に、ステップS315において、入出力部301は、制限鍵としてKを要求に対する返却値として出力し、処理を終了する。   Next, in step S315, the input / output unit 301 outputs K as a return value for the request as the restriction key, and ends the process.

一方、ステップS316に進んだ場合、同ステップにおいて、制限鍵生成装置300は例外処理を行い、処理を終了する。例外処理とは、ステップS314及びS315からなる処理とは異なる内容の処理であり、すなわち、例外処理が行われるときにはステップS314及びS315の処理で出力されたはずの制限鍵は出力されない。このような例外処理としては、例えば、ダミーの制限鍵を生成し返却値として出力する処理や、エラーが発生した旨を識別する返却値を出力する処理、あるいは全く返却値を出力しない処理などが挙げられる。   On the other hand, when the process proceeds to step S316, in the same step, the restriction key generation device 300 performs an exception process and ends the process. The exception process is a process having a different content from the process composed of steps S314 and S315. That is, when the exception process is performed, the restriction key that should have been output in the processes of steps S314 and S315 is not output. Examples of such exception processing include processing for generating a dummy restriction key and outputting it as a return value, processing for outputting a return value for identifying that an error has occurred, or processing for not outputting a return value at all. Can be mentioned.

=制限鍵要求処理(相対時限)=
次に、図11を用いて、制限鍵生成装置300に相対時限値と固有値とをパラメータとして絶対制限と制限鍵を要求された際の、制限鍵生成装置300の動作を説明する。
= Restricted key request processing (relative time limit) =
Next, the operation of the restriction key generation device 300 when the restriction key generation device 300 is requested for the absolute restriction and the restriction key using the relative time value and the eigenvalue as parameters will be described with reference to FIG.

まず、ステップS321において、制限鍵生成装置300の入出力部301は、要求のパラメータを受信する。パラメータの相対時限値をTd、固有値をIとそれぞれ呼ぶことにする。   First, in step S321, the input / output unit 301 of the restriction key generation device 300 receives the requested parameter. The relative time limit value of the parameter is called Td, and the eigenvalue is called I.

次に、ステップS322において、時計部306は、時計の現在時刻を読み出し、それにTdを加えた絶対時刻を計算する。この絶対時刻値をTaと呼ぶことにする。さらに世代変数316の値を読み出す。この値をGと呼ぶことにする。   Next, in step S322, the clock unit 306 reads the current time of the clock and calculates an absolute time obtained by adding Td thereto. This absolute time value will be referred to as Ta. Further, the value of the generation variable 316 is read. This value is called G.

次に、ステップS323において、ハッシュ計算部303は、マスター鍵部304の記憶するマスター鍵314とTaとIとをパラメータとしてハッシュ値を計算する。この計算したハッシュ値をKと呼ぶ。   In step S323, the hash calculation unit 303 calculates a hash value using the master key 314 stored in the master key unit 304, Ta, and I as parameters. This calculated hash value is called K.

次に、ステップS324において、入出力部301は、絶対時限値としてTaを、制限鍵としてKを要求に対する返却値としてそれぞれ出力し、処理を終了する。   Next, in step S324, the input / output unit 301 outputs Ta as an absolute time limit value and K as a limit key as a return value for the request, and ends the process.

=仮想カウンタ初期化要求処理=
次に、図13を用いて、制限鍵生成装置300に仮想カウンタ指定値をパラメータとして仮想カウンタの初期化を要求された際の、制限鍵生成装置300の動作を説明する。
= Virtual counter initialization request processing =
Next, the operation of the restriction key generation device 300 when the restriction key generation device 300 is requested to initialize the virtual counter using the virtual counter designation value as a parameter will be described with reference to FIG.

まず、ステップS331において、制限鍵生成装置300の入出力部301は、要求のパラメータを受信する。パラメータの仮想カウンタ指定値をIと呼ぶことにする。   First, in step S331, the input / output unit 301 of the restriction key generation device 300 receives the requested parameter. The virtual counter designation value of the parameter is called I.

次に、ステップS332において、カウンタ部307は、カウンタ表317の行のうち仮想カウンタ欄が無効値の行を1つ選択する(図12参照)。この行をJと呼ぶことにする。さらに行Jの仮想カウンタ欄にIを代入することで仮想カウンタ指定値Iを行Jに対応付ける。   Next, in step S332, the counter unit 307 selects one of the rows of the counter table 317 where the virtual counter column has an invalid value (see FIG. 12). Let's call this line J. Further, by assigning I to the virtual counter column in row J, the virtual counter specified value I is associated with row J.

次に、ステップS333において、カウンタ部307は、世代変数327の値を更新する。値を更新するとは、過去ある程度の期間において世代変数327がとることがなかった値を代入することであり、その例としては、現在の世代変数327の値に微小な値を加えたものを代入する方法や、乱数を代入する方法を用いても良い。   Next, in step S333, the counter unit 307 updates the value of the generation variable 327. To update a value is to substitute a value that the generation variable 327 did not take in a certain period of time in the past. For example, a value obtained by adding a minute value to the value of the current generation variable 327 is substituted. Or a method of substituting a random number may be used.

次に、ステップS334において、カウンタ部307は、カウンタ表317の行Jの世代欄に世代変数327の値を代入し、同じく値欄に初期値を代入する。値欄に代入する初期値としては任意の数値で良いが、典型例として0(ゼロ)が挙げられる。   Next, in step S334, the counter unit 307 substitutes the value of the generation variable 327 in the generation column of the row J of the counter table 317, and similarly substitutes the initial value in the value column. The initial value to be assigned to the value column may be any numerical value, but a typical example is 0 (zero).

次に、ステップS335において、入出力部301は、世代値としてカウンタ表317の行Jの世代欄の値を要求に対する返却値として出力し、処理を終了する。   Next, in step S335, the input / output unit 301 outputs the value in the generation column of the row J of the counter table 317 as a generation value as a return value for the request, and ends the process.

=回数制限鍵要求処理=
次に、図14を用いて、制限鍵生成装置300に回数制限値と制限値と仮想カウンタ指定値とをパラメータとして回数制限鍵を要求された際の、制限鍵生成装置300の動作を説明する。
= Number of times limit key request processing =
Next, with reference to FIG. 14, the operation of the limit key generation device 300 when the limit key generation device 300 is requested for the number limit key using the number limit value, the limit value, and the virtual counter specified value as parameters will be described. .

まず、ステップS341において、制限鍵生成装置300の入出力部301は、要求のパラメータを受信する。パラメータの回数制限値をNp、世代値をGp、仮想カウンタ値をIとそれぞれ呼ぶことにする。   First, in step S341, the input / output unit 301 of the restricted key generation device 300 receives the requested parameter. The parameter number limit value is called Np, the generation value is called Gp, and the virtual counter value is called I.

次に、ステップS342において、カウンタ部307は、仮想カウンタ指定値Iに対応付けられたカウンタ表317の行を特定する。この特定された行をJと呼ぶことにする。さらに、行Jの値欄の世代欄の値を読み出す。それぞれの値をNおよびGと呼ぶことにする。   Next, in step S342, the counter unit 307 specifies the row of the counter table 317 associated with the virtual counter specified value I. This identified line is called J. Further, the value in the generation column of the value column in row J is read out. Each value will be referred to as N and G.

次に、ステップS343において、比較部302は、GpとGが同一値であり、かつ、NpがNより大きい値であるという条件が成立するか判断する。条件が成立する場合にはステップS344へ、それ以外の場合はステップS346に進む。   Next, in step S343, the comparison unit 302 determines whether the condition that Gp and G are the same value and Np is a value greater than N is satisfied. If the condition is satisfied, the process proceeds to step S344. Otherwise, the process proceeds to step S346.

ステップS344に進んだ場合、同ステップにおいて、ハッシュ計算部303は、マスター鍵部304の記憶するマスター鍵314とNpとIとをパラメータとしてハッシュ値を計算する。この計算したハッシュ値をKと呼ぶ。   When the process proceeds to step S344, in this step, the hash calculation unit 303 calculates a hash value using the master key 314, Np, and I stored in the master key unit 304 as parameters. This calculated hash value is called K.

次に、ステップS345において、入出力部301は、回数制限鍵としてKを要求に対する返却値として出力し、処理を終了する。   Next, in step S345, the input / output unit 301 outputs K as a return value for the request as the number limit key, and ends the process.

一方、ステップS346に進んだ場合、同ステップにおいて、制限鍵生成装置300は例外処理を行い、処理を終了する。例外処理とは、ステップS344及びS345からなる処理とは異なる内容の処理であり、すなわち、例外処理が行われるときにはステップS344及びS345の処理で出力されたはずの回数制限鍵は出力されない。このような例外処理しては、例えば、ダミーの回数制限鍵を生成し返却値として出力する処理や、エラーが発生した旨を識別する返却値を出力する処理、あるいは全く返却値を出力しない処理などが挙げられる。   On the other hand, when the process proceeds to step S346, in the same step, the restriction key generation device 300 performs an exception process and ends the process. The exception process is a process having a different content from the process consisting of steps S344 and S345. That is, when the exception process is performed, the number-of-times limiting key that should have been output in the processes of steps S344 and S345 is not output. Such exception processing includes, for example, processing for generating a dummy number limit key and outputting it as a return value, processing for outputting a return value for identifying that an error has occurred, or processing for not outputting a return value at all Etc.

=回数制限鍵「利用」要求処理=
次に、図15を用いて、制限鍵生成装置300に回数制限値と制限値と仮想カウンタ値とをパラメータとして回数制限鍵利用を要求された際の、制限鍵生成装置300の動作を説明する。
= Time limit key "use" request processing =
Next, the operation of the limit key generation device 300 when the limit key generation device 300 is requested to use the number limit key using the number limit value, the limit value, and the virtual counter value as parameters will be described with reference to FIG. .

本動作は、前述の回数制限鍵を要求されたときの制限鍵生成装置300の動作(ステップS341〜S346)と類似であるが、主にステップS354がステップS344と異なる。   This operation is similar to the operation (steps S341 to S346) of the restriction key generation device 300 when the above-mentioned number restriction key is requested, but step S354 is mainly different from step S344.

まず、ステップS351において、制限鍵生成装置300の入出力部301は、要求のパラメータを受ける。パラメータの回数制限値をNp、世代値をGp、仮想カウンタ指定値をIとそれぞれ呼ぶことにする。   First, in step S351, the input / output unit 301 of the restricted key generation device 300 receives a requested parameter. The parameter count limit value is called Np, the generation value is called Gp, and the virtual counter designation value is called I.

次に、ステップS352において、カウンタ部307は、仮想カウンタ指定値Iに対応付けられたカウンタ表317の行を特定する。この特定された行をJと呼ぶことにする。さらに、行Jの値欄の値と世代欄の値を読み出す。それぞれの値をNおよびGと呼ぶことにする。   Next, in step S352, the counter unit 307 specifies the row of the counter table 317 associated with the virtual counter specified value I. This identified line is called J. Further, the value in the value column and the value in the generation column of row J are read out. The respective values will be called N and G.

次に、ステップS353において、比較部302は、GpとGが同一値であり、かつ、NpがNより大きい値であるという条件が成立するか判断する。条件が成立する場合にはステップS354へ、それ以外の場合はステップS356へ進む。   Next, in step S353, the comparison unit 302 determines whether the condition that Gp and G are the same value and Np is a value greater than N is satisfied. If the condition is satisfied, the process proceeds to step S354. Otherwise, the process proceeds to step S356.

ステップS354に進んだ場合、同ステップにおいて、カウンタ部307は、カウンタ表317の行Jの値欄の値を更新する。この値欄の値を更新するとは、現在代入されている値とは異なる値を代入することであるが、典型例としては、現在代入されている値に1を加えた値を代入する。ステップS354では、さらにハッシュ計算部303がマスター鍵部304の記憶するマスター鍵314とNpとIとをパラメータとしてハッシュ値を計算する。この計算したハッシュ値をKと呼ぶ。   When the process proceeds to step S354, in the same step, the counter unit 307 updates the value in the value column of the row J of the counter table 317. Updating the value in this value column means substituting a value different from the currently assigned value. As a typical example, a value obtained by adding 1 to the currently assigned value is substituted. In step S354, the hash calculation unit 303 further calculates a hash value using the master key 314, Np, and I stored in the master key unit 304 as parameters. This calculated hash value is called K.

次に、ステップS355において、入出力部301は、回数制限鍵としてKを要求に対する返却値として出力し、処理を終了する。   Next, in step S355, the input / output unit 301 outputs K as a return value for the request as the number limit key, and ends the process.

一方、ステップS356に進んだ場合、同ステップにおいて、制限鍵生成装置300は例外処理を行い、処理を終了する。例外処理とは、ステップS354及びS355からなる処理とは異なる内容の処理であり、すなわち、例外処理が行われるときにはステップS354及びS355の処理で出力されたはずの回数制限鍵は出力されない。このような例外処理としては、例えば、ダミーの回数制限鍵を生成し返却値として出力する処理や、エラーが発生した旨を識別する返却値を出力する処理、あるいは全く返却値を出力しない処理などが挙げられる。   On the other hand, when the process proceeds to step S356, in the same step, the restriction key generation device 300 performs an exception process and ends the process. The exception process is a process having a different content from the process composed of steps S354 and S355. That is, when the exception process is performed, the number-of-times limiting key that should have been output in the processes of steps S354 and S355 is not output. Examples of such exception processing include processing for generating a dummy number limit key and outputting it as a return value, processing for outputting a return value for identifying that an error has occurred, or processing for not outputting a return value at all, etc. Is mentioned.

=初期化処理=
次に、図16を用いて、制限鍵生成装置300の初期化部305によって初期化処理が必要な事象が発生したことを検知した際の、制限鍵生成装置300の動作を説明する。
= Initialization process =
Next, the operation of the restriction key generation device 300 when the initialization unit 305 of the restriction key generation device 300 detects that an event requiring an initialization process has occurred will be described using FIG.

尚、初期化処理が必要な事象とは、時計部306の時計の時刻が過去の時刻に戻ったり、必要以上に進んだり、時刻が更新されなかったりするなど時刻更新の速度に変化を及ぼしうる事象や、カウンタ部307のカウンタ表317の各行、各欄に代入されている値がカウンタ部307又は初期化部305による正常な操作によらず変化しうる事象を含む異常な事象である。このような異常な事象の主なものとしては、制限鍵生成装置300に対する電力供給の不安定や、それをバックアップするための電池の消耗、強力な放射線の侵入、ハードウェア的信号への介入による人為的操作(パターン)、又、時計についてはその基準周波数発振器の作動不安定などが考えられる。   Note that an event that requires initialization processing can change the speed of time update, such as when the clock time of the clock unit 306 returns to a past time, advances more than necessary, or the time is not updated. This is an abnormal event including an event and an event in which the value assigned to each row and each column of the counter table 317 of the counter unit 307 can be changed without normal operation by the counter unit 307 or the initialization unit 305. Such abnormal events are mainly caused by instability of power supply to the restriction key generation device 300, consumption of a battery to back it up, powerful radiation intrusion, and intervention in hardware signals. Artificial operations (patterns) and clocks may be unstable due to unstable operation of the reference frequency oscillator.

これらの事象が発生したことを検知する手段としては多数の既知の技術があり、当業者が容易に実施できると考えられるため詳細は割愛するが、初期化部305にはそれらの技術が実施されているものとする。又、初期化処理が必要な事象としてはその他に制限付データ利用装置200など制限鍵生成装置300の外部の装置が入出力部301を通じて明示的に初期化処理を要求する事象を含んでもよい。そのように外部の装置が明示的に初期化処理を要求できるようにすることが有用な場合しては、例えば、外部装置がその利用者の認証に連続して失敗したことを検知した場合や、その他、利用者の不正行為を検知した場合、明示的に利用者の変更を行う場合など、外部装置が記憶する制限付データが一括して消去されることが好ましい場合が挙げられる。   There are many known techniques as means for detecting the occurrence of these events, and since it is considered that those skilled in the art can easily implement them, details are omitted, but those techniques are implemented in the initialization unit 305. It shall be. In addition, the event requiring the initialization process may include an event in which a device outside the restricted key generation device 300 such as the restricted data use device 200 explicitly requests the initialization process through the input / output unit 301. For example, when it is useful to allow an external device to explicitly request initialization processing, for example, when it is detected that the external device has failed to authenticate the user continuously, In addition, there are cases where it is preferable that the restricted data stored in the external device is erased all at once, such as when an unauthorized act of the user is detected or when the user is explicitly changed.

まず、ステップS601において、制限鍵生成装置300の初期化部305は、新たなマスター鍵を生成し、マスター鍵部304に記憶する。新たなマスター鍵としては過去にマスター鍵としてマスター鍵部304に記憶されたことのないビットパターンを用いることが望ましい。典型例としては、乱数によりビット列を新たに生成し、それを新たなマスター鍵とする方法が挙げられる。   First, in step S <b> 601, the initialization unit 305 of the restriction key generation device 300 generates a new master key and stores it in the master key unit 304. As a new master key, it is desirable to use a bit pattern that has not been stored in the master key unit 304 as a master key in the past. A typical example is a method of generating a new bit string from random numbers and using it as a new master key.

次に、ステップS362において、初期化部305は、時計部306の世代変数316の値とカウンタ部307の世代変数327の値とをそれぞれ更新する。更新の意味については前述のステップS333の説明と同様であり、すなわち、過去ある程度の期間において各世代変数がとることがなかった値を代入することであり、その例としては現在の各世代変数の値に微小な値を加えたものを代入する方法や、乱数を代入する方法を用いても良い。又、特にこのステップS362の処理においては、各世代変数0(ゼロ)などの定数を代入する方法でも良い。ステップS362においては、さらに初期化部305がカウンタ部307のカウンタ表317の全ての行の仮想カウンタ欄に無効値を代入し、処理を終了する。   Next, in step S362, the initialization unit 305 updates the value of the generation variable 316 of the clock unit 306 and the value of the generation variable 327 of the counter unit 307, respectively. The meaning of the update is the same as that described in step S333 described above, that is, the value that each generation variable has not taken in a certain period in the past is substituted. A method of substituting a value obtained by adding a minute value or a method of substituting a random number may be used. In particular, in the process of step S362, a method of substituting constants such as each generation variable 0 (zero) may be used. In step S362, the initialization unit 305 further assigns invalid values to the virtual counter fields in all the rows of the counter table 317 of the counter unit 307, and the process ends.

(作用及び効果)
本実施形態に係る制限付データ作成装置100は、制限鍵入手部103が処理対象データの利用時限を絶対時刻で定めた制限情報の入力を受けて、制限情報の定める絶対時限を時差変数の値を用いて、制限鍵生成装置300の時計を基準とする絶対時限に変換し、変換された絶対時限値とID生成部104が生成した固有値と世代変数の値である世代値とをパラメータとし制限鍵生成装置に制限鍵を要求することができる。
(Function and effect)
In the restricted data creation device 100 according to the present embodiment, the restriction key obtaining unit 103 receives the input of restriction information that defines the use time limit of the processing target data in absolute time, and the absolute time period defined by the restriction information is set to the value of the time difference variable. Is converted to an absolute time period based on the clock of the restriction key generation device 300, and the converted absolute time value, the eigenvalue generated by the ID generation unit 104, and the generation value that is the value of the generation variable are used as parameters. A restriction key can be requested from the key generation device.

このため、指定された処理対象データの絶対時刻による利用時限以降は入手できなくなる制限鍵を制限付データ作成装置から入手することができる。この制限鍵を用いて指定された利用時限以降は復号できなくなる暗号化データを作成することができる。   For this reason, it is possible to obtain from the restricted data creation device a restriction key that cannot be obtained after the use time limit of the designated processing target data based on the absolute time. It is possible to create encrypted data that cannot be decrypted after the use time period specified using the restriction key.

又、制限付データ作成装置100は、制限鍵入手部103が制限鍵生成装置300に時計の現在時刻値と世代値とを要求し、制限鍵生成装置300から入力された世代値を記憶部105の世代変数に代入し、同じく入力された現在時刻値の時計部106の時計の現在時刻値との差分を記憶部105の時差変数に代入することができる。   Further, in the restricted data creation device 100, the restriction key acquisition unit 103 requests the current time value and generation value of the clock from the restriction key generation device 300, and the generation value input from the restriction key generation device 300 is stored in the storage unit 105. The difference between the current time value and the current time value of the clock of the clock unit 106 that is also input can be substituted into the time difference variable of the storage unit 105.

このため、制限鍵生成装置300の時計の遅れ又は進みと、時計の世代を正確に把握できるため、利用時限に正確に対応した制限鍵を制限付データ利用装置から入手することができる。   For this reason, the delay or advance of the clock of the limit key generation device 300 and the generation of the clock can be accurately grasped, so that a limit key that accurately corresponds to the use time limit can be obtained from the restricted data utilization device.

又、制限付データ作成装置100は、制限鍵入手部103が制限鍵生成装置300からの制限鍵の入力を受けて、暗号部101が入力された処理対象データを制限鍵で暗号化し、暗号化された処理対象データと変換された絶対時限と世代変数の値と固有値とを含む時限付データである制限付データを制限付データ利用装置に送付することができる。   Further, the restricted data creation device 100 receives the restriction key input from the restriction key generation device 300 by the restriction key acquisition unit 103, encrypts the processing target data input by the encryption unit 101 with the restriction key, and encrypts it. The restricted data, which is time-limited data including the processed data, the converted absolute time period, the value of the generation variable, and the eigenvalue, can be sent to the restricted data utilization apparatus.

このため、指定された処理対象データの絶対時刻による利用時限以降は入手できなくなる制限鍵を用いて処理対象データを暗号化し、その復号に必要な絶対時限と世代値と固有値とを含めた時限付データである制限付データを制限付データ利用装置に送付することができる。   For this reason, the processing target data is encrypted using a restriction key that cannot be obtained after the use time limit of the specified processing target data based on the absolute time, and the time limit including the absolute time period, generation value, and eigenvalue necessary for the decryption is obtained. Restricted data that is data can be sent to the restricted data utilization device.

又、制限付データ作成装置100は、制限鍵入手部103が処理対象データの利用時限を相対時限で定めた制限情報の入力を受けて、制限情報の定める相対時限とID生成部104が生成した固有値とをパラメータとして制限付データ利用装置200の制限鍵生成装置300に絶対時限値と世代値と制限鍵とを要求することができる。   Further, in the restricted data creation device 100, the restriction key obtaining unit 103 receives the input of restriction information that defines the use time limit of the processing target data by the relative time, and the relative time determined by the restriction information and the ID generation unit 104 generate the restriction data. Using the eigenvalue as a parameter, it is possible to request the absolute time limit value, the generation value, and the restriction key from the restriction key generation device 300 of the restricted data utilization device 200.

このため、指定された処理対象データの相対時刻による利用時限以降は入手できなくなる制限鍵を制限付データ利用装置から入手することができる。この制限鍵を用いて指定された利用時限以降は復号できなくなる暗号化データを作成することができる。   For this reason, it is possible to obtain from the restricted data utilization apparatus a restriction key that cannot be obtained after the use time limit according to the relative time of the designated processing target data. It is possible to create encrypted data that cannot be decrypted after the use time period specified using the restriction key.

又、制限付データ作成装置100は、制限鍵入手部103が制限鍵生成装置300からの絶対時限値と世代値と制限鍵の入力を受けて、暗号部101が入力された処理対象データを制限鍵で暗号化し、暗号化された処理対象データと変換された絶対時限と世代変数の値と固有値とを含む時限付データである制限付データを制限付データ利用装置200に送付することができる。   In addition, the restricted data creation apparatus 100 restricts the processing target data to which the encryption unit 101 is input when the restriction key obtaining unit 103 receives the absolute time value, the generation value, and the restriction key from the restriction key generation device 300. It is possible to send the restricted data, which is time-limited data including the encrypted processing target data, the converted absolute time period, the value of the generation variable, and the unique value, to the restricted data utilization apparatus 200 by encrypting with the key.

このため、指定された処理対象データの相対時刻による利用時限以降は入手できなくなる制限鍵を用いて処理対象データを暗号化し、その復号に必要な絶対時限と世代値と固有値とを含めた時限付データである制限付データを制限付データ利用装置に送付することができる。   For this reason, the processing target data is encrypted using a restriction key that cannot be obtained after the specified time limit based on the relative time of the processing target data, and the time limit including the absolute time, generation value, and eigenvalue necessary for the decryption is obtained. Restricted data that is data can be sent to the restricted data utilization device.

又、制限付データ作成装置100は、制限鍵入手部103が処理対象データの利用回数制限を定めた制限情報の入力を受けて、制限情報の定める回数制限とID生成部104が生成した仮想カウンタ指定値と世代変数の値とをパラメータとし、制限付データ利用装置200の制限鍵生成装置300に回数制限鍵を要求してもよい。   In addition, the restricted data creation apparatus 100 receives the restriction information that defines the restriction on the number of times the processing target data is used by the restriction key acquisition unit 103, and the virtual counter generated by the ID generation unit 104 and the number of times that the restriction information defines. The specified number and the value of the generation variable may be used as parameters, and the limited number key generation device 300 of the limited data utilization device 200 may be requested.

このため、指定された処理対象データの利用回数を超えて利用しようとした時には入手できなくなる回数制限鍵を制限付データ利用装置から入手することができる。この回数制限鍵を用いて指定された回数制限だけ利用した以降は復号できなくなる暗号化データを作成することができる。   For this reason, it is possible to obtain from the restricted data utilization apparatus a number-of-times restriction key that cannot be obtained when the number of uses of the designated processing target data is exceeded. It is possible to create encrypted data that cannot be decrypted after the number of times specified by using the number of times limit key is used.

又、制限付データ作成装置100は、制限鍵入手部103が仮想カウンタ指定値をパラメータとし、制限鍵生成装置300に仮想カウンタの初期化を要求し、制限鍵生成装置300から入力された世代値を記憶部105の世代変数に代入することができる。   Further, the restricted data creation apparatus 100 uses the restricted key acquisition unit 103 as a parameter for the virtual counter designation value, requests the restricted key generation apparatus 300 to initialize the virtual counter, and receives the generation value input from the restricted key generation apparatus 300. Can be substituted into the generation variable of the storage unit 105.

このため、制限鍵生成装置300に処理対象データの利用回数を数えるカウンタを仮想的に作成し、初期化することができるため、制限鍵生成装置において処理対象データの利用回数を正確に数えることができる。   Therefore, a counter that counts the number of times the processing target data is used can be virtually created and initialized in the restriction key generation device 300, so that the number of times the processing target data is used can be accurately counted in the restriction key generation device. it can.

又、制限付データ作成装置100は、制限鍵入手部103が制限鍵生成装置300からの回数制限鍵の入力を受けて、暗号部101が入力された処理対象データを回数制限鍵で暗号化し、暗号化された処理対象データと回数制限と世代変数の値と仮想カウンタ指定値とを含む回数制限付データである制限付データを制限付データ利用装置200に送付することができる。   Further, in the restricted data creation device 100, the restriction key obtaining unit 103 receives the input of the number-of-times restriction key from the restriction key generation device 300, and the encryption unit 101 encrypts the input processing target data with the number-of-times restriction key. The restricted data, which is the restricted data including the encrypted processing target data, the number of times restriction, the value of the generation variable, and the virtual counter specified value, can be sent to the restricted data utilization device 200.

このため、指定された処理対象データの利用回数を超えて利用しようとした時には入手できなくなる回数制限鍵を用いて処理対象データを暗号化し、その復号に必要な回数制限値と世代値と仮想カウンタ指定値とを含めた回数制限付データである制限付データを制限付データ利用装置に送付することができる。   For this reason, the processing target data is encrypted using the number limiting key that cannot be obtained when the number of times of use of the specified processing target data is exceeded, and the number limit value, generation value, and virtual counter required for the decryption are encrypted. Restricted data that is data with a limited number of times including a specified value can be sent to the restricted data utilization device.

本実施形態に係る制限付データ利用装置200は、記憶部202が制限付データ作成装置100から送付された時限付データである制限付データを記憶し、記憶部202が時限付データである制限付データを読み出し、復号部203が読み出された時限付データの絶対時限値と世代値と固有値とをパラメータとし、制限鍵生成装置300に制限鍵を要求し、制限鍵生成装置300から入力された制限鍵により時限付データの暗号化された処理対象データを復号し利用部204に入力することができる。   In the restricted data utilization device 200 according to the present embodiment, the storage unit 202 stores restricted data that is timed data sent from the restricted data creation device 100, and the storage unit 202 includes restricted data that is timed data. The data is read, the absolute time value, generation value, and eigenvalue of the time-limited data read by the decryption unit 203 are used as parameters, a restriction key is requested from the restriction key generation device 300, and input from the restriction key generation device 300 The processing target data encrypted with the time-limited data can be decrypted with the restriction key and input to the utilization unit 204.

このため、制限付データ作成装置100から送付された時限付データである制限付データを記憶部に記憶しておき、後刻それを読み出して、制限鍵生成装置300が時限付データ中の情報から再生した制限鍵により同じく時限付データ中の暗号化された処理対象データを復号し、利用することができる。ただし、利用時限以降は、制限鍵生成装置300は処理対象データを正常に復号できる制限鍵は再生成しなくなるため、それ以降の処理対象データの利用は不可能となり、利用時限が守られる。   For this reason, the restricted data, which is the time-limited data sent from the restricted data creation device 100, is stored in the storage unit, read out later, and the restricted key generation device 300 reproduces it from the information in the time-limited data. Similarly, the encrypted processing target data in the time-limited data can be decrypted and used by the restricted key. However, after the usage time limit, the restriction key generation device 300 does not regenerate a restriction key that can normally decrypt the processing target data, so that the subsequent processing target data cannot be used, and the usage time limit is observed.

又、制限付データ利用装置200は、記憶部202が制限付データ作成装置100から送付された回数制限付データである制限付データを記憶し、記憶部202が回数制限付データである制限付データを読み出し、復号部203が読み出された回数制限付データの回数制限値と世代値と仮想カウンタ指定値とをパラメータとし、制限鍵生成装置300に回数制限鍵利用を要求し、制限鍵生成装置から入力された回数制限鍵により回数制限付データの暗号化された処理対象データを復号し、利用部204に入力することができる。   Further, in the restricted data utilization device 200, the storage unit 202 stores the restricted data that is the limited number of times data sent from the restricted data creating device 100, and the storage unit 202 is the restricted data that is the limited number of times data. And the decryption unit 203 uses the number limit value, generation value, and virtual counter specified value of the data with the number limit read as parameters, and requests the limit key generation device 300 to use the number limit key. The encrypted data to be processed with the number-of-times-restricted data can be decrypted by the number-of-times-limit key input from the above and input to the utilization unit 204.

このため、制限付データ作成装置から送付された回数制限付データである制限付データを記憶部に記憶しておき、後刻それを読み出して、制限鍵生成装置が時限付データ中の情報から再生成した回数制限鍵により同じく回数制限付データ中の暗号化された処理対象データを復号し、利用することができる。ただし、回数制限だけ利用した以降は、制限鍵生成装置は処理対象データを正常に復号できる回数制限鍵は再生成しなくなるため、それ以降の処理対象データの利用は不可能となり、利用回数制限が守られる。   For this reason, the restricted data, which is the number of times restricted data sent from the restricted data creation device, is stored in the storage unit, read out later, and the restricted key generation device regenerates from the information in the timed data. Similarly, the encrypted processing target data in the data with the limited number of times can be decrypted and used by the limited number of times key. However, after using only the number limit, the limit key generation device will not regenerate the number limit key that can normally decrypt the processing target data, so the subsequent processing target data cannot be used, and the usage number limit is limited. It is protected.

本実施形態に係る制限鍵生成装置300は、絶対時限値と世代値と固有値とをパラメータとする制限鍵の要求を受けると、比較部302がパラメータの世代値と時計部306の世代変数の値が等しくかつパラメータの絶対時限値が時計部306の時計の現在時刻値よりも未来の値であるという条件が成立するかを判断し、当該条件が成立する場合にハッシュ計算部303がマスター鍵部304の記憶するマスター鍵とパラメータの絶対時限値とパラメータの固有値とに依存するハッシュ値である制限鍵を計算することができる。   When receiving a request for a restriction key that uses an absolute time value, a generation value, and a unique value as parameters, the restriction key generation device 300 according to the present embodiment causes the comparison unit 302 to generate the parameter generation value and the value of the generation variable of the clock unit 306. Are equal and the absolute time limit value of the parameter is a future value than the current time value of the clock of the clock unit 306, the hash calculation unit 303 determines that the master key unit A limit key which is a hash value depending on the master key stored in 304, the absolute time limit value of the parameter, and the unique value of the parameter can be calculated.

このため、パラメータの絶対時限値と時計部の時計の現在時刻とを比較し前者が未来の値である場合のみにその絶対時刻値に依存するハッシュ値を計算し制限鍵とするため、ある時刻以降はその値は得られなくなる制限鍵を実現することができる。又、そのハッシュ値の計算は、時計が初期化される毎に変化する値である世代変数の値とパラメータの世代値とが等しい場合にのみ計算されるため、初期化されて変化した基準時刻を基にして時刻比較が行われてしまい、ハッシュ値が計算されてしまうことが無い。又、ハッシュ値の計算はパラメータの固有値にも依存するように行われるため、固有値を知らない他者が同じ制限鍵を入手してしまうことが無い。又、ハッシュ値の計算は、制限鍵生成装置の外部に出力されることが無く外部から知ることが困難なマスター鍵にも依存するように行われるため、他者がこの制限鍵生成装置と同等の装置を用いても同じパラメータから同じ制限鍵を入手することはできない。又、この制限鍵生成装置は生成した制限鍵を内部に記憶しないため、必要な記憶容量が小さい。   For this reason, the absolute time limit value of the parameter is compared with the current time of the clock of the clock unit, and only when the former is a future value, a hash value that depends on the absolute time value is calculated and used as a limit key. After that, it is possible to realize a restricted key whose value cannot be obtained. The hash value is calculated only when the value of the generation variable, which is a value that changes every time the clock is initialized, and the generation value of the parameter, so the reference time that has been initialized and changed Therefore, the time comparison is not performed and the hash value is not calculated. In addition, since the calculation of the hash value is performed depending on the eigenvalue of the parameter, another person who does not know the eigenvalue does not obtain the same restricted key. In addition, the calculation of the hash value is performed so as to depend on the master key that is not output to the outside of the restricted key generation device and is difficult to know from the outside. The same restriction key cannot be obtained from the same parameter even if the device is used. In addition, since the restriction key generation device does not store the generated restriction key, the required storage capacity is small.

又、制限鍵生成装置300は、時計の現在時刻値と世代値の要求を受けると、時計部306の現在時刻値と時計部306の世代変数の値である世代値とを出力することができる。   Further, upon receiving a request for the current time value and generation value of the clock, the restriction key generation device 300 can output the current time value of the clock unit 306 and the generation value that is the value of the generation variable of the clock unit 306. .

このため、制限鍵を要求しようとする外部装置に対して時計部の時計の現在時刻値と世代変数の値を伝えることができるため、外部装置が時計部の時計に正確に準拠した絶対時限を、制限鍵を要求するパラメータに指定することができる。   For this reason, since the current time value of the clock of the clock unit and the value of the generation variable can be transmitted to the external device that is requesting the restriction key, the external device has an absolute time limit that exactly complies with the clock of the clock unit. , It can be specified as a parameter for requesting a restricted key.

又、制限鍵生成装置300は、相対時限値と固有値とをパラメータとする絶対時限値と世代値と制限鍵の要求を受けると、ハッシュ計算部303がマスター鍵部304の記憶するマスター鍵と、パラメータの相対時限値に時計部306の提供する現在時刻値を加えた値と、パラメータの固有値とに依存するハッシュ値である制限鍵を計算することができる。   In addition, upon receiving a request for an absolute time value, a generation value, and a restriction key using the relative time value and the unique value as parameters, the restriction key generation device 300 causes the hash calculation unit 303 to store a master key stored in the master key unit 304, It is possible to calculate a limit key that is a hash value depending on a value obtained by adding the current time value provided by the clock unit 306 to the relative time limit value of the parameter and the unique value of the parameter.

このため、パラメータの相対時限値と時計部の時計の現在時刻とを加えた絶対時限値に依存するハッシュ値を計算し制限鍵とする。又、ハッシュ値の計算はパラメータの固有値にも依存するように行われるため、固有値を知らない他者が同じ制限鍵を入手してしまうことが無い。又、ハッシュ値の計算は、制限鍵生成装置の外部に出力されることが無く外部から知ることが困難なマスター鍵にも依存するように行われるため、他者がこの制限鍵生成装置と同等の装置を用いても同じパラメータから同じ制限鍵を入手することはできない。又、この制限鍵生成装置は生成した制限鍵を内部に記憶しないため、必要な記憶容量が小さい。   Therefore, a hash value depending on the absolute time value obtained by adding the relative time value of the parameter and the current time of the clock of the clock unit is calculated and used as the limit key. In addition, since the calculation of the hash value is performed depending on the eigenvalue of the parameter, another person who does not know the eigenvalue does not obtain the same restricted key. In addition, the calculation of the hash value is performed so as to depend on the master key that is not output to the outside of the restricted key generation device and is difficult to know from the outside. The same restriction key cannot be obtained from the same parameter even if the device is used. In addition, since the restriction key generation device does not store the generated restriction key, the required storage capacity is small.

又、制限鍵生成装置300は、初期化部305が、時計部306の時計の時刻更新に障害を引き起こしうる異常な事象の発生を検知した場合に、新たなマスター鍵を生成しマスター鍵部304に記憶させ、時計部306の世代変数の値を更新することができる。   Further, when the initialization unit 305 detects the occurrence of an abnormal event that may cause a failure in the time update of the clock of the clock unit 306, the restriction key generation device 300 generates a new master key and generates the master key unit 304. And the value of the generation variable of the clock unit 306 can be updated.

このため、時計部の時計の時刻更新に障害を引き起こしうる異常な事象の発生があった場合には、マスター鍵が更新され、時計部の世代変数の値が更新されるため、すでに利用時限を過ぎたために制限鍵生成装置から入手できなくなったはずの制限鍵が、異常な事象の発生により時計部の時計が過去に戻ってしまうことにより再び入手できてしまうようなことが起こらない。   For this reason, if there is an abnormal event that may cause a failure in updating the clock of the clock, the master key is updated and the value of the generation variable of the clock is updated. The restriction key that should not have been obtained from the restriction key generation device because it has passed is not likely to be obtained again because the clock of the clock unit returns to the past due to the occurrence of an abnormal event.

又、制限鍵生成装置300は、回数制限値と世代値と仮想カウンタ指定値とをパラメータとする回数制限鍵の要求又は回数制限鍵利用の要求を受けると、カウンタ部307がカウンタ表にてパラメータの仮想カウンタ指定値に対応付けられている行の値欄の値と世代欄の値を読み出し、比較部302がパラメータの世代値と世代欄の値が等しくかつパラメータの回数制限値が値欄の値よりも大きい値であるという条件が成立するかを判断し、当該条件が成立する場合に、ハッシュ計算部303がマスター鍵部304の記憶するマスター鍵とパラメータの回数制限値とパラメータの仮想カウンタ指定値とに依存するハッシュ値である回数制限鍵を計算することができる。   When the limit key generation device 300 receives a request for the number limit key or the request for using the number limit key using the number limit value, the generation value, and the virtual counter specified value as parameters, the counter unit 307 displays the parameter in the counter table. The value column value and the generation column value of the row associated with the virtual counter specified value of the current value are read out, and the comparison unit 302 has the parameter generation value equal to the generation column value and the parameter count limit value is It is determined whether or not the condition that the value is larger than the value is satisfied, and when the condition is satisfied, the hash calculation unit 303 stores the master key, the parameter count limit value stored in the master key unit 304, and the parameter virtual counter. It is possible to calculate a key for limiting the number of times, which is a hash value depending on the specified value.

このため、パラメータの回数制限値とパラメータの仮想カウンタ指定値で指定される仮想カウンタの値(仮想カウンタ指定値に対応付けられているカウンタ表の行の値欄の値のこと)とを比較し前者が大きい場合のみにその回数制限値に依存するハッシュ値を計算し回数制限鍵とするため、ある回数利用した以降はその値は得られなくなる回数制限鍵を実現することができる。又、そのハッシュ値の計算は、仮想カウンタが初期化される毎に変化する値である仮想カウンタの世代値(仮想カウンタ指定値に対応付けられているカウンタ表の行の世代欄の値のこと)とパラメータの世代値とが等しい場合にのみ計算されるため、初期化されて変化した仮想カウンタの値を基にして、値の比較が行われてしまい、ハッシュ値が計算されてしまうことが無い。又、ハッシュ値の計算はパラメータの仮想カウンタ指定値にも依存するように行われるため、その値を知らない他者が同じ回数制限鍵を入手してしまうことが無い。又、ハッシュ値の計算は、制限鍵生成装置の外部に出力されることが無く外部から知ることが困難なマスター鍵にも依存するように行われるため、他者がこの制限鍵生成装置と同等の装置を用いても同じパラメータから同じ制限鍵を入手することはできない。又、この制限鍵生成装置は生成した制限鍵を内部に記憶しないため、必要な記憶容量が小さい。   Therefore, the parameter count limit value is compared with the value of the virtual counter specified by the virtual counter specified value of the parameter (the value in the value column of the counter table row associated with the virtual counter specified value). Only when the former is large, a hash value that depends on the number limit value is calculated and used as the number limit key. Therefore, after a certain number of times the value is used, the number limit key that can no longer be obtained can be realized. In addition, the calculation of the hash value is performed by calculating the generation value of the virtual counter (the value in the generation column of the counter table row associated with the specified value of the virtual counter) that changes every time the virtual counter is initialized. ) And the generation value of the parameter, the values are compared based on the value of the virtual counter that has been initialized and changed, and a hash value may be calculated. No. In addition, since the calculation of the hash value is performed so as to depend on the virtual counter designation value of the parameter, another person who does not know the value does not obtain the same number of times limit key. In addition, the calculation of the hash value is performed so as to depend on the master key that is not output to the outside of the restricted key generation device and is difficult to know from the outside. The same restriction key cannot be obtained from the same parameter even if the device is used. In addition, since the restriction key generation device does not store the generated restriction key, the required storage capacity is small.

又、制限鍵生成装置300は、回数制限値と世代値と仮想カウンタ指定値とをパラメータとする回数制限鍵利用の要求を受けると、この条件が成立する場合に、カウンタ部307が値欄の値を更新することができる。   In addition, when the limit key generation device 300 receives a request for using the number limit key using the number limit value, the generation value, and the virtual counter specified value as parameters, the counter unit 307 displays the value in the value column when this condition is satisfied. The value can be updated.

このため、仮想カウンタが回数制限鍵の利用回数を正確に反映できる。   For this reason, the virtual counter can accurately reflect the number of times the number-limited key is used.

又、制限鍵生成装置300は、仮想カウンタ指定値をパラメータとする仮想カウンタの初期化の要求を受けると、カウンタ部307がカウンタ表で仮想カウンタ欄が無効値の行を特定し、特定した行の仮想カウンタ欄にパラメータの仮想カウンタ指定値を代入することで、特定した行と仮想カウンタ指定値とを対応付け、カウンタ部307の世代変数の値を更新し、世代変数の値を特定した行の世代欄に代入することができる。   In addition, upon receiving a request for virtual counter initialization using the virtual counter specified value as a parameter, the restriction key generation device 300 identifies a row in which the virtual counter column is an invalid value in the counter table, and the specified row By substituting the virtual counter specified value of the parameter into the virtual counter field, the specified row is associated with the virtual counter specified value, the value of the generation variable of the counter unit 307 is updated, and the value of the generation variable is specified. Can be assigned to the generation field.

このため、回数制限鍵を要求しようとする外部装置が制限鍵生成装置に専用の仮想カウンタを動的に用意することができるため、外部装置は動的に変化する処理を行うことができ、処理の柔軟性が高まる。   For this reason, an external device that is requesting the number-of-times restriction key can dynamically prepare a dedicated virtual counter in the restriction key generation device, so that the external device can perform dynamically changing processing. Increased flexibility.

又、制限鍵生成装置300は、初期化部305が、カウンタ表に記載される値が変更されうる異常な事象の発生を検知した場合に、新たなマスター鍵を生成しマスター鍵部に記憶させ、世代変数を更新することができる。   In addition, when the initialization unit 305 detects the occurrence of an abnormal event that can change the value described in the counter table, the restriction key generation device 300 generates a new master key and stores it in the master key unit. , Generation variables can be updated.

このため、カウンタ部307のカウンタ表に記載される値が変更されうる異常な事象の発生があった場合には、マスター鍵が更新され、カウンタ部の世代変数の値が更新されるため、すでに利用回数制限に達したために制限鍵生成装置から入手できなくなったはずの回数制限鍵が、異常な事象の発生によりカウンタ部のカウンタ表で実現される仮想カウンタの値が減少してしまうことにより再び入手できてしまうようなことが起こらない。   For this reason, when an abnormal event that can change the value described in the counter table of the counter unit 307 occurs, the master key is updated and the value of the generation variable of the counter unit is updated. The number limit key that should have been unavailable from the limit key generation device because the usage count limit has been reached again due to the decrease in the value of the virtual counter realized in the counter table of the counter unit due to the occurrence of an abnormal event There is no such thing as getting it.

(その他の実施の形態)
本発明は上記の実施の形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなろう。
(Other embodiments)
Although the present invention has been described according to the above-described embodiments, it should not be understood that the descriptions and drawings constituting a part of this disclosure limit the present invention. From this disclosure, various alternative embodiments, examples and operational techniques will be apparent to those skilled in the art.

例えば、上記の実施の形態では、制限付データ利用装置200の内部に制限鍵生成装置300が備えられると説明したが、制限付データ利用装置200と制限鍵生成装置300とが、別個の装置であっても構わない。   For example, in the above embodiment, it has been described that the restricted key generation device 300 is provided inside the restricted data use device 200. However, the restricted data use device 200 and the restricted key generation device 300 are separate devices. It does not matter.

このように、本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。   As described above, the present invention naturally includes various embodiments not described herein. Therefore, the technical scope of the present invention is defined only by the invention specifying matters according to the scope of claims reasonable from the above description.

本実施形態に係る制限付データ作成装置の構成ブロック図である。It is a block diagram of the configuration of the restricted data creation apparatus according to the present embodiment. 本実施形態に係る制限付データ利用装置の構成ブロック図である。It is a block diagram of the configuration of the restricted data utilization apparatus according to the present embodiment. 本実施形態に係る制限鍵生成装置の構成ブロック図である。It is a block diagram of a restriction key generation device according to the present embodiment. 本実施形態に係る制限付データ作成方法(時限付データ送信(絶対時限))を示すフローチャートである。It is a flowchart which shows the data creation method with a limit which concerns on this embodiment (time-limited data transmission (absolute time limit)). 本実施形態に係る制限付データ作成方法(時限付データ送信(相対時限))を示すフローチャートである。It is a flowchart which shows the data creation method with a limit which concerns on this embodiment (time-limited data transmission (relative time limit)). 本実施形態に係る制限付データ作成方法(回数時限付データ送信)を示すフローチャートである。It is a flowchart which shows the data creation method with restrictions which concerns on this embodiment (times time limit data transmission). 本実施形態に係る制限付データ利用方法(時限付データ受信)を示すフローチャートである。It is a flowchart which shows the limited data utilization method (time-limited data reception) which concerns on this embodiment. 本実施形態に係る制限付データ利用方法(回数時限付データ受信)を示すフローチャートである。It is a flowchart which shows the data utilization method (limited time limit data reception) based on this embodiment. 本実施形態に係る制限鍵生成方法(時刻+世代要求処理)を示すフローチャートである。It is a flowchart which shows the restriction | limiting key production | generation method (time + generation request process) concerning this embodiment. 本実施形態に係る制限鍵生成方法(制限鍵要求処理(絶対時限))を示すフローチャートである。It is a flowchart which shows the restriction | limiting key production | generation method (restriction key request | requirement process (absolute time limit)) based on this embodiment. 本実施形態に係る制限鍵生成方法(制限鍵要求処理(相対時限))を示すフローチャートである。It is a flowchart which shows the restriction | limiting key production | generation method (restriction key request | requirement process (relative time limit)) based on this embodiment. 本実施形態に係る制限鍵生成装置が保持するカウンタ表の一例である。It is an example of the counter table | surface which the restriction | limiting key generation apparatus which concerns on this embodiment hold | maintains. 本実施形態に係る制限鍵生成方法(仮想カウンタ初期化要求処理)を示すフローチャートである。It is a flowchart which shows the restriction | limiting key generation method (virtual counter initialization request | requirement process) which concerns on this embodiment. 本実施形態に係る制限鍵生成方法(回数制限鍵要求処理)を示すフローチャートである。It is a flowchart which shows the limiting key production | generation method (number-of-times limitation key request | requirement process) which concerns on this embodiment. 本実施形態に係る制限鍵生成方法(回数制限鍵「利用」要求処理)を示すフローチャートである。It is a flowchart which shows the restriction | limiting key production | generation method (number-of-times restriction | limiting key "use" request processing) concerning this embodiment. 本実施形態に係る制限鍵生成方法(初期化処理)を示すフローチャートである。It is a flowchart which shows the restriction | limiting key generation method (initialization process) which concerns on this embodiment.

符号の説明Explanation of symbols

100…制限付データ作成装置
101…暗号部
102…入出力部
103…制限鍵入手部
104…ID生成部
105…記憶部
106…時計部
115…時差変数
125…世代変数
200…制限付データ利用装置
201…入出力部
202…記憶部
203…復号部
204…利用部
300…制限鍵生成装置
301…入出力部
302…比較部
303…ハッシュ計算部
304…マスター鍵部
305…初期化部
306…時計部
307…カウンタ部
314…マスター鍵
316、327…世代変数
317、337…カウンタ表

DESCRIPTION OF SYMBOLS 100 ... Restricted data production apparatus 101 ... Encryption part 102 ... Input / output part 103 ... Restriction key acquisition part 104 ... ID generation part 105 ... Storage part 106 ... Clock part 115 ... Time difference variable 125 ... Generation variable 200 ... Restricted data utilization apparatus DESCRIPTION OF SYMBOLS 201 ... Input / output part 202 ... Memory | storage part 203 ... Decoding part 204 ... Utilization part 300 ... Restriction key production | generation apparatus 301 ... Input / output part 302 ... Comparison part 303 ... Hash calculation part 304 ... Master key part 305 ... Initialization part 306 ... Clock Part 307 ... counter part 314 ... master key 316, 327 ... generation variable 317, 337 ... counter table

Claims (13)

利用時限又は利用回数制限が課された制限付データを作成する制限付データ作成装置であって、
利用時限又は利用回数制限を示す制限情報に合った制限鍵を、前記制限鍵を生成する制限鍵生成装置に要求し、入手する制限鍵入手部と、
前記制限鍵を用いて、前記制限付データを暗号化する暗号化部と、
暗号化された制限付データを、前記制限付データを利用する制限付データ利用装置へ送信する入出力部と
を備え、
前記制限鍵は、マスター鍵と絶対時限値と固有値とをパラメータとし、前記パラメータに依存するハッシュ値
または、前記制限鍵は、前記マスター鍵と、相対時限値に現在時刻値を加えた値と、固有値とをパラメータとし、前記パラメータに依存するハッシュ値であることを特徴とする制限付データ作成装置。
A restricted data creation device that creates restricted data with a usage time limit or usage frequency limit,
A restriction key acquisition unit that requests and obtains a restriction key that matches restriction information indicating a use time limit or a use frequency limit from the restriction key generation device that generates the restriction key;
An encryption unit for encrypting the restricted data using the restriction key;
An input / output unit that transmits the encrypted restricted data to a restricted data using device that uses the restricted data, and
The restriction key has a master key, an absolute time limit value, and a unique value as parameters, and a hash value that depends on the parameters ,
Or, the restriction key and the master key, the value obtained by adding the current time value of the relative time limit, the eigenvalues and parameters, data creation Restricted, characterized in that a hash value which depends on the parameter apparatus.
前記制限情報は、前記制限付データの利用時限を絶対時限で定めた情報であり、
前記制限鍵入手部は、時差変数を用いて、前記絶対時限を前記制限鍵生成装置の時計を基準とする絶対時限に変換し、当該変換された絶対時限と、前記制限付データ固有の値である固有値と、前記絶対時限を規定する時計の世代を表す世代変数の値である世代値とをパラメータとして計算されるハッシュ値である前記制限鍵を前記制限鍵生成装置に要求することを特徴とする請求項1に記載の制限付データ作成装置。
The restriction information is information that defines the use time limit of the restricted data as an absolute time limit,
The restriction key obtaining unit converts the absolute time period into an absolute time period based on a clock of the restriction key generating device using a time difference variable, and uses the converted absolute time period and a value unique to the restricted data. Requesting the restriction key generation device for the restriction key that is a hash value calculated using a specific value and a generation value that is a value of a generation variable that represents a generation of a clock that defines the absolute time limit as parameters. The restricted data creation device according to claim 1.
前記制限情報は、前記制限付データの利用時限を相対時限で定めた情報であり、
前記制限鍵入手部は、前記相対時限と、前記制限付データの固有の値である固有値とをパラメータとして計算されるハッシュ値である前記制限鍵、前記制限付データの利用期限の絶対時限、及び前記絶対時限を規定する時計の世代を表す世代値を前記制限鍵生成装置に要求することを特徴とする請求項1に記載の制限付データ作成装置。
The restriction information is information that defines a use time limit of the restricted data as a relative time limit,
The restriction key obtaining unit is the restriction key that is a hash value calculated using the relative time and a unique value that is a unique value of the restricted data as parameters, an absolute time limit of the use period of the restricted data, and The restricted data creation device according to claim 1, wherein the restricted key generation device requests a generation value representing a generation of a clock that defines the absolute time limit.
前記制限情報は、前記制限付データの利用回数制限を定めた情報であり、
前記制限鍵入手部は、前記利用回数制限と、仮想カウンタを指定する仮想カウンタ指定値と、前記仮想カウンタの世代を表す世代変数の値である世代値とをパラメータとして計算されるハッシュ値である前記制限鍵を前記制限鍵生成装置に要求することを特徴とする請求項1に記載の制限付データ作成装置。
The restriction information is information that defines a use frequency limit of the restricted data,
The restriction key obtaining unit is a hash value calculated using the use frequency restriction, a virtual counter designation value that designates a virtual counter, and a generation value that is a value of a generation variable representing a generation of the virtual counter as parameters. The restricted data creation apparatus according to claim 1, wherein the restriction key is requested to the restriction key generation apparatus.
利用時限又は利用回数制限が課された制限付データを利用する制限付データ利用装置であって、
前記制限付データを作成する制限付データ作成装置によって暗号化された制限付データを記憶する記憶部と、
利用時限又は利用回数制限を示す制限情報に合った制限鍵を、前記制限鍵を生成する制限鍵生成装置に要求し、前記制限鍵によって前記暗号化された制限付データを復号する復号部と、
復号された制限付データを利用する利用部と
を備え、
前記制限鍵は、マスター鍵と絶対時限値と固有値とをパラメータとし、前記パラメータに依存するハッシュ値
または、前記制限鍵は、前記マスター鍵と、相対時限値に現在時刻値を加えた値と、固有値とをパラメータとし、前記パラメータに依存するハッシュ値であることを特徴とする制限付データ利用装置。
A restricted data use device that uses restricted data with a use time limit or a use time limit,
A storage unit for storing the restricted data encrypted by the restricted data creation device for creating the restricted data;
A request for a restriction key that matches restriction information indicating a use time limit or a use frequency restriction, to a restriction key generation device that generates the restriction key, and a decryption unit that decrypts the restricted data encrypted by the restriction key;
And a utilization unit that uses the decrypted restricted data,
The restriction key has a master key, an absolute time limit value, and a unique value as parameters, and a hash value that depends on the parameters ,
Or, the restriction key and the master key, the value obtained by adding the current time value of the relative time limit, the eigenvalues and parameters, restricted data usage, which is a hash value that depends on the parameter apparatus.
前記制限情報は、前記制限付データの利用時限を絶対時限で定めた情報であり、
前記復号部は、前記利用時限と、前記制限付データ固有の値である固有値と、前記絶対時限を規定する時計の世代を表す世代値とをパラメータとして計算されるハッシュ値である前記制限鍵を前記制限鍵生成装置に要求することを特徴とする請求項5に記載の制限付データ利用装置。
The restriction information is information that defines the use time limit of the restricted data as an absolute time limit,
The decryption unit obtains the restriction key that is a hash value calculated using the use time period, a unique value that is a unique value of the restricted data, and a generation value that represents a generation of a clock that defines the absolute time limit as parameters. 6. The restricted data utilization apparatus according to claim 5, wherein the restriction key generation apparatus is requested.
前記制限情報は、前記制限付データの利用回数制限を定めた情報であり、
前記制限鍵入手部は、前記利用回数制限と、仮想カウンタを指定する仮想カウンタ指定値と、前記仮想カウンタの世代を表す世代値とをパラメータとして計算されるハッシュ値である前記制限鍵を前記制限鍵生成装置に要求することを特徴とする請求項5に記載の制限付データ利用装置。
The restriction information is information that defines a use frequency limit of the restricted data,
The restriction key obtaining unit is configured to restrict the restriction key, which is a hash value calculated using the use number restriction, a virtual counter designation value designating a virtual counter, and a generation value representing a generation of the virtual counter as parameters. 6. The restricted data utilization apparatus according to claim 5, wherein a request is made to the key generation apparatus.
利用時限又は利用回数制限が課された制限付データを作成する制限付データ作成装置、あるいは、前記制限付データを利用する制限付データ利用装置から、利用時限又は利用回数制限を示す制限情報に合った制限鍵の要求を受信する入出力部と、
マスター鍵を記憶する記憶部と、
前記マスター鍵と前記制限情報とに依存する制限鍵を計算するハッシュ計算部と
を備え、
前記制限鍵は、マスター鍵と絶対時限値と固有値とをパラメータとし、前記パラメータに依存するハッシュ値
または、前記制限鍵は、前記マスター鍵と、相対時限値に現在時刻値を加えた値と、固有値とをパラメータとし、前記パラメータに依存するハッシュ値であることを特徴とする制限鍵生成装置。
From the restricted data creation device that creates restricted data with a usage time limit or usage frequency limit, or the restricted data usage device that uses the restricted data, it matches the restriction information indicating the usage time limit or the usage frequency limit. An input / output unit that receives a request for a restricted key;
A storage unit for storing a master key;
A hash calculator that calculates a restriction key depending on the master key and the restriction information,
The restriction key has a master key, an absolute time limit value, and a unique value as parameters, and a hash value that depends on the parameters ,
Or, the restriction key and the master key, and a value obtained by adding the current time value of the relative time limit, the eigenvalues and parameters, limiting the key generation apparatus, characterized in that the hash value that depends on the parameter .
前記制限情報は、前記制限付データの利用時限を絶対時限で定めた情報であり、
2つの時刻の前後関係及び2つの世代値の一致を判断する比較部と、
現在時刻及び世代変数を備える時計部とを更に備え、
前記絶対時限と、前記制限付データ固有の値である固有値と、世代値とをパラメータとする制限鍵の要求を受けた場合、
前記比較部は、前記パラメータの世代値と、前記時計部の世代変数の値が等しく、かつ、前記パラメータの絶対時限が前記時計部の現在時刻より未来の値であるという条件が成立するか否かを判断し、
当該条件が成立する場合、前記ハッシュ計算部は、前記マスター鍵と、前記絶対時限と、前記固有値に依存するハッシュ値である制限鍵を計算することを特徴とする請求項8に記載の制限鍵生成装置。
The restriction information is information that defines the use time limit of the restricted data as an absolute time limit,
A comparison unit for determining whether the two-time context and two generation values match,
A clock unit having current time and generation variables,
When receiving a request for a restriction key using the absolute time, a unique value that is unique to the restricted data, and a generation value as parameters,
Whether the comparison unit satisfies a condition that the generation value of the parameter is equal to the value of the generation variable of the clock unit, and that the absolute time limit of the parameter is a future value from the current time of the clock unit. Determine whether
9. The restricted key according to claim 8, wherein when the condition is satisfied, the hash calculation unit calculates a restricted key that is a hash value depending on the master key, the absolute time period, and the eigenvalue. Generator.
前記制限情報は、前記制限付データの利用時限を相対時限で定めた情報であり、
現在時刻及び世代変数を備える時計部を更に備え、
前記相対時限と、前記制限付データ固有の値である固有値とをパラメータとし、絶対時限と世代値と、前記制限鍵の要求を受けた場合、
前記ハッシュ計算部は、前記マスター鍵と、前記パラメータの相対時限に前記時計部の提供する現在時刻を加えた値と、前記固有値に依存するハッシュ値である制限鍵を計算することを特徴とする請求項8に記載の制限鍵生成装置。
The restriction information is information that defines a use time limit of the restricted data as a relative time limit,
It further comprises a clock unit with current time and generation variables,
When the relative time limit and a unique value that is a unique value of the restricted data are used as parameters, and an absolute time limit, a generation value, and a request for the restriction key are received,
The hash calculation unit calculates the master key, a value obtained by adding a current time provided by the clock unit to a relative time limit of the parameter, and a limit key that is a hash value depending on the eigenvalue. The restriction key generation device according to claim 8.
前記制限情報は、前記制限付データの利用回数制限を定めた情報であり、
2つの値の大小関係及び2つの世代値の一致を判断する比較部と、
仮想カウンタ欄と値欄と世代欄とを持つ表であるカウンタ表及び世代変数とを備えるカウンタ部とを更に備え、
前記利用回数制限と、仮想カウンタを指定する仮想カウンタ指定値と、前記仮想カウンタの世代を表す世代値とをパラメータとする制限鍵の要求を受けた場合、
前記カウンタ部は、前記カウンタ表にて前記パラメータの仮想カウンタ指定値に対応付けられている行の値欄の値と世代欄の値を読み出し、
前記比較部は、前記パラメータの世代値と、前記世代欄の値が等しく、かつ、前記パラメータの利用回数制限が前記値欄の値よりも大きいという条件が成立するか否かを判断し、
当該条件が成立する場合、前記ハッシュ計算部は、前記マスター鍵と、前記利用回数制限と、前記パラメータの仮想カウンタ指定値に依存するハッシュ値である制限鍵を計算することを特徴とする請求項8に記載の制限鍵生成装置。
The restriction information is information that defines a use frequency limit of the restricted data,
A comparison unit for determining a magnitude relationship between two values and a match between two generation values;
A counter unit comprising a counter table and a generation variable, which is a table having a virtual counter column, a value column, and a generation column;
When receiving a request for a limit key using the usage count limit, a virtual counter designation value for designating a virtual counter, and a generation value representing the generation of the virtual counter as parameters,
The counter unit reads the value in the value column and the value in the generation column of the row associated with the virtual counter specified value of the parameter in the counter table;
The comparison unit determines whether or not a condition that the generation value of the parameter is equal to the value of the generation column and the use frequency limit of the parameter is larger than the value of the value column;
The said hash calculation part calculates the restriction | limiting key which is a hash value depending on the said virtual key specified value of the said master key, the said use frequency restriction | limiting, and the parameter when the said conditions are satisfied. 9. The restriction key generation device according to 8.
利用時限又は利用回数制限が課された制限付データを作成する制限付データ作成装置であって、
利用時限又は利用回数制限を示す制限情報に合った制限鍵を、前記制限鍵を生成する制限鍵生成装置に要求し、入手する制限鍵入手部と、
前記制限鍵を用いて、前記制限付データを暗号化する暗号化部と、
暗号化された制限付データを、前記制限付データを利用する制限付データ利用装置へ送信する入出力部と
を備え、
前記制限鍵は、マスター鍵と絶対時限値と固有値とをパラメータとし、前記パラメータに依存するハッシュ値であり、
前記制限情報は、前記制限付データの利用時限を絶対時限で定めた情報であり、
前記制限鍵入手部は、時差変数を用いて、前記絶対時限を前記制限鍵生成装置の時計を基準とする絶対時限に変換し、当該変換された絶対時限と、前記制限付データ固有の値である固有値と、前記絶対時限を規定する時計の世代を表す世代変数の値である世代値とをパラメータとして計算されるハッシュ値である前記制限鍵を前記制限鍵生成装置に要求することを特徴とする制限付データ作成装置。
A restricted data creation device that creates restricted data with a usage time limit or usage frequency limit,
A restriction key acquisition unit that requests and obtains a restriction key that matches restriction information indicating a use time limit or a use frequency limit from the restriction key generation device that generates the restriction key;
An encryption unit for encrypting the restricted data using the restriction key;
An input / output unit that transmits the encrypted restricted data to a restricted data using device that uses the restricted data, and
The limit key is a hash value that depends on the master key, an absolute time limit value, and a unique value as parameters, and depends on the parameter,
The restriction information is information that defines the use time limit of the restricted data as an absolute time limit,
The restriction key obtaining unit converts the absolute time period into an absolute time period based on a clock of the restriction key generating device using a time difference variable, and uses the converted absolute time period and a value unique to the restricted data. Requesting the restriction key generation device for the restriction key that is a hash value calculated using a specific value and a generation value that is a value of a generation variable that represents a generation of a clock that defines the absolute time limit as parameters. Restricted data creation device.
利用時限又は利用回数制限が課された制限付データを作成する制限付データ作成装置であって、
利用時限又は利用回数制限を示す制限情報に合った制限鍵を、前記制限鍵を生成する制限鍵生成装置に要求し、入手する制限鍵入手部と、
前記制限鍵を用いて、前記制限付データを暗号化する暗号化部と、
暗号化された制限付データを、前記制限付データを利用する制限付データ利用装置へ送信する入出力部と
を備え、
前記制限鍵は、またはマスター鍵と、相対時限値に現在時刻値を加えた値と、固有値とをパラメータとし、前記パラメータに依存するハッシュ値でであり、
前記制限情報は、前記制限付データの利用時限を相対時限で定めた情報であり、
前記制限鍵入手部は、前記相対時限と、前記制限付データの固有の値である固有値とをパラメータとして計算されるハッシュ値である前記制限鍵、前記制限付データの利用期限の絶対時限、及び前記絶対時限を規定する時計の世代を表す世代値を前記制限鍵生成装置に要求することを特徴とする制限付データ作成装置。
A restricted data creation device that creates restricted data with a usage time limit or usage frequency limit,
A restriction key acquisition unit that requests and obtains a restriction key that matches restriction information indicating a use time limit or a use frequency limit from the restriction key generation device that generates the restriction key;
An encryption unit for encrypting the restricted data using the restriction key;
An input / output unit that transmits the encrypted restricted data to a restricted data using device that uses the restricted data, and
The restriction key is a hash value that depends on the parameter, the master key, a value obtained by adding a current time value to a relative time value, and a unique value as parameters.
The restriction information is information that defines a use time limit of the restricted data as a relative time limit,
The restriction key obtaining unit is the restriction key that is a hash value calculated using the relative time and a unique value that is a unique value of the restricted data as parameters, an absolute time limit of the use period of the restricted data, and A restricted data creation device that requests a generation value representing a generation of a clock that defines the absolute time limit to the restriction key generation device.
JP2005039793A 2005-02-16 2005-02-16 Restricted data creation device, restricted data utilization device, and restricted key generation device Expired - Fee Related JP4741852B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005039793A JP4741852B2 (en) 2005-02-16 2005-02-16 Restricted data creation device, restricted data utilization device, and restricted key generation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005039793A JP4741852B2 (en) 2005-02-16 2005-02-16 Restricted data creation device, restricted data utilization device, and restricted key generation device

Publications (2)

Publication Number Publication Date
JP2006227837A JP2006227837A (en) 2006-08-31
JP4741852B2 true JP4741852B2 (en) 2011-08-10

Family

ID=36989183

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005039793A Expired - Fee Related JP4741852B2 (en) 2005-02-16 2005-02-16 Restricted data creation device, restricted data utilization device, and restricted key generation device

Country Status (1)

Country Link
JP (1) JP4741852B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112667972A (en) * 2020-06-04 2021-04-16 华控清交信息科技(北京)有限公司 Infringement monitoring method, first platform and device for infringement monitoring

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002202918A (en) * 2000-12-28 2002-07-19 Victor Co Of Japan Ltd Content transmission method, transmission medium, and content reception method
JP2002324170A (en) * 2001-02-20 2002-11-08 Sorun Corp Contents distribution system and method thereof
JP2002342518A (en) * 2001-02-02 2002-11-29 Matsushita Electric Ind Co Ltd System and method for contents use management
JP2003233948A (en) * 2002-02-08 2003-08-22 Toshiba Corp Device and method of recording and reproducing information
JP2004030572A (en) * 2002-05-09 2004-01-29 Matsushita Electric Ind Co Ltd Content distribution system, distribution apparatus, and receiver

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002202918A (en) * 2000-12-28 2002-07-19 Victor Co Of Japan Ltd Content transmission method, transmission medium, and content reception method
JP2002342518A (en) * 2001-02-02 2002-11-29 Matsushita Electric Ind Co Ltd System and method for contents use management
JP2002324170A (en) * 2001-02-20 2002-11-08 Sorun Corp Contents distribution system and method thereof
JP2003233948A (en) * 2002-02-08 2003-08-22 Toshiba Corp Device and method of recording and reproducing information
JP2004030572A (en) * 2002-05-09 2004-01-29 Matsushita Electric Ind Co Ltd Content distribution system, distribution apparatus, and receiver

Also Published As

Publication number Publication date
JP2006227837A (en) 2006-08-31

Similar Documents

Publication Publication Date Title
CA2684393C (en) Method and apparatus for providing a secure trick play
US8306230B2 (en) Information processing apparatus playing encrypted content distributed through network
US8473745B2 (en) Rights enforcement and usage reporting on a client device
JP4847328B2 (en) Time authentication apparatus, time authentication method, computer program, recording medium, integrated circuit, and time authentication system
KR100824469B1 (en) System for identification and revocation of audiovisual titles and replicators
US7917964B2 (en) Method and apparatus for processing information, method and apparatus for manufacturing information recording medium, information recording medium, and computer program
WO2001078300A1 (en) Information recording/reproducing apparatus and method
JP4957148B2 (en) Secure element having key management function and information processing apparatus
JP4239747B2 (en) Information processing apparatus, content information management method, and computer program
JP5039830B2 (en) How to configure a digital rights management license format
US20120110343A1 (en) Trustworthy timestamps on data storage devices
JP4122777B2 (en) Content recording / playback device
JP5911784B2 (en) Storage system, secure storage medium, and storage control method
US7937766B2 (en) Method and system for preventing simultaneous use of contents in different formats derived from the same content at a plurality of places
JP2006277411A (en) Processor, memory, computer system and data transfer method
JP5645725B2 (en) Data processing apparatus, data processing system, and control method therefor
JP4741852B2 (en) Restricted data creation device, restricted data utilization device, and restricted key generation device
US20080247546A1 (en) Method and apparatus for protecting digital content stored in usb mass storage device using time information
JP2010027038A (en) Memory control device, content playback device, control method and recording medium
JP5848685B2 (en) Storage system
JP2014041583A (en) Storage system
JP2014041581A (en) Storage system
JP2003204320A5 (en)
JP2006120089A (en) Data management system and data management method
JP2000269950A (en) Copyright protection system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071005

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100805

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110405

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4741852

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140513

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees