JP5513255B2 - Proxy signature system and method - Google Patents

Proxy signature system and method Download PDF

Info

Publication number
JP5513255B2
JP5513255B2 JP2010116241A JP2010116241A JP5513255B2 JP 5513255 B2 JP5513255 B2 JP 5513255B2 JP 2010116241 A JP2010116241 A JP 2010116241A JP 2010116241 A JP2010116241 A JP 2010116241A JP 5513255 B2 JP5513255 B2 JP 5513255B2
Authority
JP
Japan
Prior art keywords
signature
key
signature generation
unit
generation
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
JP2010116241A
Other languages
Japanese (ja)
Other versions
JP2011244321A (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.)
Nippon Telegraph and Telephone Corp
NTT Communications Corp
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Communications Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp, NTT Communications Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2010116241A priority Critical patent/JP5513255B2/en
Publication of JP2011244321A publication Critical patent/JP2011244321A/en
Application granted granted Critical
Publication of JP5513255B2 publication Critical patent/JP5513255B2/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 proxy signature technique in which a third-party device generates an electronic signature with high proof power by a proxy.

電子署名技術において、端末装置が署名生成処理を第三者装置に委託して第三者装置が電子署名を生成する代理署名技術が知られている。このような従来技術として例えば特許文献1が挙げられる。代理署名が行われる要請として、例えば、端末装置の計算能力が低い場合などが考えられる。   In electronic signature technology, proxy signature technology is known in which a terminal device entrusts a signature generation process to a third party device and the third party device generates an electronic signature. For example, Patent Document 1 is cited as such a conventional technique. As a request for proxy signing, for example, a case where the computing capability of the terminal device is low can be considered.

特開2008−148033号公報JP 2008-148033 A

代理署名技術では、通常、端末装置は自らの秘密鍵を第三者装置に送信しなければならない。しかし、当該秘密鍵を得た第三者装置は、爾後、当該秘密鍵が有効である限り自由に端末装置の署名を生成できてしまう。つまり、端末装置が署名対象を特定のメッセージに制限して第三者装置に電子署名の生成を委託したとしても、ひとたび秘密鍵を得た第三者装置は端末装置からの委託とは無関係に端末装置の電子署名を生成できてしまう。   In the proxy signature technique, the terminal device usually has to transmit its private key to the third party device. However, the third-party device that has obtained the secret key can freely generate the signature of the terminal device as long as the secret key is valid. In other words, even if the terminal device restricts the signature target to a specific message and entrusts the generation of the electronic signature to the third party device, the third party device that once obtained the secret key has no relation to the entrustment from the terminal device. The electronic signature of the terminal device can be generated.

このため、端末装置の代理として第三者装置が電子署名を生成するにあたり、当該第三者装置による電子署名生成が、端末装置からの委託に基づくものであることを証明できる仕組みが必要とされる。   For this reason, when a third party device generates an electronic signature on behalf of a terminal device, a mechanism that can prove that the electronic signature generation by the third party device is based on a commission from the terminal device is required. The

本発明は、このような点に鑑みてなされたものであり、証明力の高い電子署名を第三者装置が代理で生成する代理署名技術を提供することを目的とする。   The present invention has been made in view of such a point, and an object of the present invention is to provide a proxy signature technique in which a third-party device generates an electronic signature with high proof power by a proxy.

本発明の代理署名技術は、次のとおりである。すなわち、端末装置は固有の演算機能を有しており、端末装置は固有データに対するその演算機能による演算結果を署名生成装置に送り、当該演算結果を破棄する。また、署名生成装置は当該演算結果から署名検証鍵の生成を行い、予め署名検証鍵を署名検証装置へ送っておく。署名プロセスでは、端末装置が改めて上記固有データに対するその演算機能による演算結果を署名生成装置に送り、署名生成装置は当該演算結果から署名生成鍵の生成を行い、当該署名生成鍵を用いてメッセージに対する電子署名を生成して署名検証装置へ送り、当該演算結果と当該署名生成鍵を破棄する。署名検証装置は、電子署名を署名検証鍵で検証する。   The proxy signature technique of the present invention is as follows. That is, the terminal device has a specific calculation function, and the terminal device sends the calculation result of the calculation function for the unique data to the signature generation device and discards the calculation result. The signature generation device generates a signature verification key from the calculation result, and sends the signature verification key to the signature verification device in advance. In the signature process, the terminal device sends the calculation result by the calculation function for the unique data to the signature generation device, and the signature generation device generates a signature generation key from the calculation result, and uses the signature generation key to An electronic signature is generated and sent to the signature verification apparatus, and the calculation result and the signature generation key are discarded. The signature verification device verifies the electronic signature with the signature verification key.

この代理署名技術にて、セキュリティ向上の観点から、署名生成鍵と署名検証鍵の生成の際、上記演算結果に替えて、上記演算結果を乱数で撹乱して得られる情報を用いてもよい。   In this proxy signature technique, from the viewpoint of security improvement, when generating a signature generation key and a signature verification key, information obtained by disturbing the calculation result with a random number may be used instead of the calculation result.

あるいは、本発明の代理署名技術は、次のとおりである。すなわち、署名生成装置は、署名生成鍵と署名検証鍵を生成し、予め署名検証鍵を署名検証装置へ送っておく。端末装置は固有の演算機能を有しており、端末装置は固有データに対するその演算機能による演算結果r1を署名生成装置に送り、当該演算結果r1を破棄する。また、署名生成装置は当該演算結果r1を署名生成鍵の断片の一つとなるように署名生成鍵を3種類の断片r1,u1,v1に分割し[分割処理]、断片u1を自身の記憶部に記憶し、断片v1をバックアップ装置に送り、断片r1と署名生成鍵を破棄する。バックアップ装置は断片v1を自身の記憶部に記憶する。署名プロセスでは、端末装置が改めて上記固有データに対するその演算機能による演算結果r1を署名生成装置に送り、署名生成装置は当該演算結果r1と断片u1から署名生成鍵の復元し、当該署名生成鍵を用いてメッセージに対する電子署名を生成して署名検証装置へ送り、当該演算結果r1と当該署名生成鍵を破棄する。署名検証装置は、電子署名を署名検証鍵で検証する。復旧プロセスでは、代替端末装置は固有の演算機能を有しており、代替端末装置は固有データに対するその演算機能による演算結果r2を署名生成装置に送り、当該演算結果r2を破棄する。また、署名生成装置は断片u1とバックアップ装置から提供を受けたv1から署名生成鍵を復元して、演算結果r2を復元された署名生成鍵の断片の一つとなるように復元された署名生成鍵を3種類の断片r2,u2,v2に分割し[断片更新処理]、断片u2を自身の記憶部に記憶し、断片v2をバックアップ装置に送り、断片r2と署名生成鍵を破棄する。バックアップ装置は断片v2を自身の記憶部に記憶する。   Alternatively, the proxy signature technique of the present invention is as follows. That is, the signature generation device generates a signature generation key and a signature verification key, and sends the signature verification key to the signature verification device in advance. The terminal device has a unique calculation function, and the terminal device sends the calculation result r1 of the calculation function for the unique data to the signature generation device and discards the calculation result r1. Further, the signature generation apparatus divides the signature generation key into three types of fragments r1, u1, v1 so that the calculation result r1 becomes one of the fragments of the signature generation key [division processing], and the fragment u1 is stored in its own storage unit. The fragment v1 is sent to the backup device, and the fragment r1 and the signature generation key are discarded. The backup device stores the fragment v1 in its storage unit. In the signature process, the terminal device again sends the calculation result r1 by the calculation function for the specific data to the signature generation device, the signature generation device restores the signature generation key from the calculation result r1 and the fragment u1, and the signature generation key is An electronic signature for the message is generated and sent to the signature verification device, and the calculation result r1 and the signature generation key are discarded. The signature verification device verifies the electronic signature with the signature verification key. In the restoration process, the alternative terminal device has a specific calculation function, and the alternative terminal device sends the calculation result r2 of the calculation function for the specific data to the signature generation device and discards the calculation result r2. Also, the signature generation device restores the signature generation key from the fragment u1 and v1 provided from the backup device, and the signature generation key restored so that the operation result r2 becomes one of the restored signature generation key fragments. Is divided into three types of fragments r2, u2, and v2 [fragment update processing], the fragment u2 is stored in its own storage unit, the fragment v2 is sent to the backup device, and the fragment r2 and the signature generation key are discarded. The backup device stores the fragment v2 in its storage unit.

この代理署名技術にて、セキュリティ向上の観点から、署名生成鍵の分割処理およびの断片更新処理の際、上記演算結果r1,r2に替えて、上記演算結果r1,r2を乱数で撹乱して得られる情報s1,s2を用いてもよい。   With this proxy signature technology, from the viewpoint of improving security, the calculation results r1 and r2 can be obtained by randomizing the calculation results r1 and r2 instead of the calculation results r1 and r2 during the signature generation key splitting process and the fragment update process. Information s1 and s2 may be used.

本発明に拠れば、端末装置Aに入力される固有データから、端末装置A以外の端末装置が、端末装置Aの演算結果および当該演算結果から一意に生成される署名生成鍵を求めることが困難であれば、署名生成装置が正しく電子署名の生成および演算結果と署名生成鍵の破棄を行っている限り、端末装置Aが関与すること無く、署名検証鍵を用いて署名検証に合格するような電子署名を生成することは困難となるから、署名生成装置が生成した電子署名は、端末装置Aからの委託に基づくものであり、ユーザの意思の下で生成された電子署名、すなわち証明力の高い電子署名ということができる。   According to the present invention, it is difficult for a terminal device other than the terminal device A to obtain a calculation result of the terminal device A and a signature generation key uniquely generated from the calculation result from unique data input to the terminal device A. If so, as long as the signature generation device correctly generates the electronic signature and discards the calculation result and the signature generation key, the terminal device A does not participate and passes the signature verification using the signature verification key. Since it is difficult to generate an electronic signature, the electronic signature generated by the signature generation device is based on the entrustment from the terminal device A, and the electronic signature generated under the intention of the user, that is, the proof power It can be said to be a high electronic signature.

実施形態1における代理署名システムを示す図。1 is a diagram illustrating a proxy signature system according to a first embodiment. 実施形態1における代理署名方法の処理手順を示す図。FIG. 5 is a diagram illustrating a processing procedure of a proxy signature method according to the first embodiment. 実施形態1の変形例における代理署名方法の処理手順を示す図。FIG. 9 is a diagram illustrating a processing procedure of a proxy signature method according to a modification of the first embodiment. 実施形態2における代理署名システムを示す図。The figure which shows the proxy signature system in Embodiment 2. FIG. 実施形態2における代理署名方法の処理手順を示す図(その1)。FIG. 10 is a diagram illustrating a processing procedure of a proxy signature method according to the second embodiment (part 1); 実施形態2における代理署名方法の処理手順を示す図(その2)。FIG. 10 is a diagram illustrating a processing procedure of a proxy signature method according to the second embodiment (No. 2). 実施形態2における代理署名方法の処理手順を示す図(その3)。FIG. 10 is a diagram illustrating a processing procedure of a proxy signature method according to the second embodiment (part 3); 実施形態2の変形例における代理署名方法の処理手順を示す図(その1)。FIG. 11 is a diagram showing a processing procedure of a proxy signature method in a modification of the second embodiment (No. 1). 実施形態2の変形例における代理署名方法の処理手順を示す図(その2)。FIG. 12 is a diagram illustrating a processing procedure of a proxy signature method according to a modification of the second embodiment (part 2); 実施形態の変形例2における代理署名方法の処理手順を示す図(その3)。The figure which shows the process sequence of the proxy signature method in the modification 2 of embodiment (the 3). 各実施形態に関わる代理署名システムの構成要素である端末装置、署名生成装置、署名検証装置(APサーバ装置)、代替端末装置、バックアップ装置の機能構成を示す図。The figure which shows the function structure of the terminal device which is a component of the proxy signature system in connection with each embodiment, a signature production | generation apparatus, a signature verification apparatus (AP server apparatus), an alternative terminal device, and a backup device.

《実施形態1》
[代理署名システム]
実施形態1の代理署名システム1は、図1に示すように、端末装置100と、署名生成装置200と、署名検証装置300とを少なくとも含んで構成される。これらの各装置は、例えば通信網5を経由して、相互に通信可能とされている。とくに、端末装置100と署名生成装置200との間の通信路は、暗号技術などにより秘匿性の高い通信が実現されていることが望ましい。
Embodiment 1
[Proxy signature system]
As shown in FIG. 1, the proxy signature system 1 according to the first embodiment includes at least a terminal device 100, a signature generation device 200, and a signature verification device 300. These devices can communicate with each other via, for example, the communication network 5. In particular, it is desirable that the communication path between the terminal device 100 and the signature generation device 200 realizes highly confidential communication using an encryption technique or the like.

本発明の代理署名システムは、ユーザの数に応じて一つまたは複数の端末装置100と、サーバ管理者(例えばアプリケーションサービスプロバイダ)の数に応じて一つまたは複数の署名検証装置300を含みえるが、本発明の理解を容易にするため、実施形態1では、代理署名システム1はN個の端末装置100−1,・・・,100−i,・・・,100−Nと一つの署名検証装置300を含むとする。ただし、Nは2以上の整数とする。   The proxy signature system of the present invention can include one or a plurality of terminal devices 100 according to the number of users and one or a plurality of signature verification devices 300 according to the number of server administrators (for example, application service providers). However, in order to facilitate understanding of the present invention, in the first embodiment, the proxy signature system 1 includes N terminal devices 100-1,..., 100-i,. It is assumed that the verification apparatus 300 is included. However, N is an integer of 2 or more.

また、本発明の代理署名システムは、一つまたは複数の署名生成装置200を含みえる。代理署名システムが複数の署名生成装置200を含む場合、署名生成と署名検証の一貫性(例えばRSA署名方式などであれば署名生成鍵と署名検証鍵との一対の関係)が保持されるように運用されることが好ましい。例えば、署名検証装置300が端末装置100に対して電子署名を要求する際、端末装置100に対して、端末装置100が電子署名の生成を委託する署名生成装置200を指定する情報を送る仕組みや、或いは、端末装置100が電子署名の生成を委託した署名生成装置200を特定する情報を、当該電子署名を要求した署名検証装置300に送る仕組みが望まれる。このような仕組みは、例えば装置相互間の通信データに当該情報を含めることによって容易に構築される。実施形態1では、本発明の理解を容易にするため、代理署名システム1は一つの署名生成装置200を含むとする。   In addition, the proxy signature system of the present invention can include one or a plurality of signature generation apparatuses 200. When the proxy signature system includes a plurality of signature generation apparatuses 200, consistency between signature generation and signature verification (for example, a pair relationship between a signature generation key and a signature verification key in the case of an RSA signature scheme) is maintained. It is preferable to operate. For example, when the signature verification device 300 requests the terminal device 100 for an electronic signature, the terminal device 100 sends information specifying the signature generation device 200 to which the terminal device 100 entrusts the generation of the electronic signature. Alternatively, a mechanism is desired in which the terminal device 100 sends information for identifying the signature generation device 200 entrusted with the generation of the electronic signature to the signature verification device 300 that has requested the electronic signature. Such a mechanism is easily constructed by including the information in communication data between devices, for example. In the first embodiment, it is assumed that the proxy signature system 1 includes one signature generation device 200 in order to facilitate understanding of the present invention.

<端末装置>
端末装置100は、計算機能およびデータ送受信機能を有する装置であり、例えばパーソナルコンピュータ、携帯電話、ICカードなどで例示される。とくに、端末装置100が署名生成装置300に電子署名の生成を委託しなければならない状況を想定すると、端末装置100として、計算能力が低い、計算能力が特定の演算に特化されている、或いはアプリケーションソフトウェアの追加が困難であり、さらに言えばアプリケーションソフトウェア毎に異なる電子署名用の鍵生成処理や署名生成処理などを実行することが困難な装置を想定することが、代理署名の必要性を理解しやすくするであろう。
<Terminal device>
The terminal device 100 is a device having a calculation function and a data transmission / reception function, and is exemplified by a personal computer, a mobile phone, an IC card, and the like. In particular, assuming a situation in which the terminal device 100 must entrust generation of an electronic signature to the signature generation device 300, the terminal device 100 has a low calculation capability, the calculation capability is specialized for a specific operation, or Understand the necessity of proxy signatures, assuming that it is difficult to add application software, and that it is difficult to execute digital signature key generation processing or signature generation processing that differs for each application software. Will make it easier.

ただし、端末装置100は、固有の演算機能を有するものとする。この固有の演算機能は、特に限定はなく、例えば鍵付きのハッシュ演算、すなわち鍵データKと入力の固定データSに対してKおよびSを連結したデータS‖Kのハッシュ値Hash(S‖K)を出力する機能などである。ここで鍵データKは端末装置100ごとに異なっている。あるいは、アプリケーションソフトウェアで用いる電子署名とは異なる電子署名機能を予め端末装置100が有しているとき、当該電子署名機能を固有の演算機能としてもよい。   However, the terminal device 100 is assumed to have a unique calculation function. This unique calculation function is not particularly limited.For example, a hash operation with a key, that is, a hash value Hash (S‖K) of data S‖K obtained by concatenating K and S to key data K and input fixed data S. ). Here, the key data K is different for each terminal device 100. Alternatively, when the terminal device 100 has an electronic signature function different from the electronic signature used in the application software in advance, the electronic signature function may be a unique calculation function.

<署名生成装置>
署名生成装置200は、計算機能およびデータ送受信機能を有する装置である。署名生成装置200は、電子署名を生成するだけの計算能力を有することが好ましい。とくに、署名生成装置200は署名生成鍵(秘密鍵)を扱うことから耐タンパー性を有することが望ましく、署名生成装置200は例えばHSM(Hardware Security Module)やTPM(Trusted Platform Module)によって実現される。
<Signature generation device>
The signature generation device 200 is a device having a calculation function and a data transmission / reception function. The signature generation device 200 preferably has a calculation capability to generate an electronic signature. In particular, since the signature generation apparatus 200 handles a signature generation key (secret key), it is desirable to have tamper resistance. The signature generation apparatus 200 is realized by, for example, an HSM (Hardware Security Module) or a TPM (Trusted Platform Module). .

<署名検証装置>
署名検証装置300は、計算機能およびデータ送受信機能を有する装置であり、例えばサーバ装置などで例示される。実施形態1では、署名検証装置300は、例えば端末装置100に対してアプリケーションソフトウェアを実行する装置であり、この観点から、爾後、署名検証装置300をAPサーバ装置300と呼称することにする。また、実施形態1では、端末装置100に対する当該アプリケーションソフトウェアの適用には電子署名を要するものとする。
<Signature verification device>
The signature verification apparatus 300 is an apparatus having a calculation function and a data transmission / reception function, and is exemplified by a server apparatus, for example. In the first embodiment, the signature verification apparatus 300 is an apparatus that executes application software for the terminal apparatus 100, for example. From this point of view, the signature verification apparatus 300 will be referred to as an AP server apparatus 300. In the first embodiment, it is assumed that application of the application software to the terminal device 100 requires an electronic signature.

代理署名システム1における代理署名処理を、図2を参照しながら叙述する。各装置の機能構成については、図11を参照されたい。なお、N個の端末装置100−1,・・・,100−i,・・・,100−Nのうちのどの端末装置に対しても同じ代理署名処理となるから、この説明では、任意性を考慮してi番目の端末装置100−iに対する代理署名処理を説明する。   The proxy signature process in the proxy signature system 1 will be described with reference to FIG. Refer to FIG. 11 for the functional configuration of each device. Since the same proxy signature processing is performed for any of the N terminal devices 100-1,..., 100-i,. The proxy signature process for the i-th terminal device 100-i will be described in consideration of the above.

〈登録プロセス〉
まず、署名プロセスに先駆けて署名用の鍵の登録プロセスが実行される。
<Registration process>
First, a signature key registration process is executed prior to the signature process.

APサーバ装置300の固有データ生成部301が、端末装置100−iに固有の固有データhiを生成する(ステップS1)。固有データhiは端末装置100−iを特定する情報(識別子)に対応付けられて、APサーバ装置300の記憶部309に記憶される。 The unique data generation unit 301 of the AP server device 300 generates unique data h i unique to the terminal device 100-i (step S1). The unique data h i is stored in the storage unit 309 of the AP server device 300 in association with information (identifier) that identifies the terminal device 100-i.

APサーバ装置300の送信部307が、端末装置100−iに対して固有データhiを送信し(ステップS2)、端末装置100−iの受信部108が、固有データhiを受信する(ステップS3)。 The transmitting unit 307 of the AP server device 300 transmits the unique data h i to the terminal device 100-i (step S2), and the receiving unit 108 of the terminal device 100-i receives the unique data h i (step S2). S3).

端末装置100−iの固有演算部101が、固有データhiに対して端末装置100−iに固有の演算gを行い、この演算結果ri=g(hi)を出力する(ステップS4)。固有の演算gが例えば上述のハッシュ演算Hashであれば、端末装置100−iに固有の鍵データKiと入力の固有データhiに対してKiおよびhiを連結したデータhi‖Kiのハッシュ値Hash(hi‖Ki)が演算結果riである。 The unique calculation unit 101 of the terminal device 100-i performs a calculation g unique to the terminal device 100-i on the unique data h i and outputs this calculation result r i = g (h i ) (step S4). . If the specific operation g is, for example, the hash operation Hash described above, the data h i ‖K obtained by concatenating K i and h i to the key data K i specific to the terminal device 100- i and the input specific data h i . i hash value hash of (h i ‖K i) is a calculation result r i.

端末装置100−iの送信部107は、署名生成装置200に対して演算結果riを送信し(ステップS5)、署名生成装置200の受信部208が、演算結果riを受信する(ステップS6)。ステップS5の処理の後、端末装置100−iの制御部105は、端末装置100−iの図示しない記憶部から演算結果riを消去する処理を行う(ステップS5a)。 The transmission unit 107 of the terminal device 100-i transmits the calculation result r i to the signature generation device 200 (step S5), and the reception unit 208 of the signature generation device 200 receives the calculation result r i (step S6). ). After the process of step S5, the control unit 105 of the terminal device 100-i performs a process of deleting the calculation result r i from a storage unit (not shown) of the terminal device 100-i (step S5a).

署名生成装置200の署名鍵生成部201が、演算結果riを用いて少なくとも署名検証鍵PKi=Gen(ri)を生成する(ステップS7)。署名鍵生成部201は、演算結果riをパラメータとして署名生成鍵SKiと署名検証鍵PKiをセットで求めるか、または署名生成鍵SKiと署名検証鍵PKiの何れかを一意に生成する機能Genを持つ。また、署名鍵生成部201は、演算結果riを署名生成鍵SKiとし、演算結果riから署名検証鍵PKiを生成するとしてもよい。実施形態1では、SKi=Gen(ri)=ri,PKi=Gen(ri)とする。本発明で利用可能な署名方式としてRSA署名方式、Schnorr署名方式、これらの改良方式などが挙げられる(参考文献A,B参照)。
(参考文献A)岡本龍明、山本博資著、「現代暗号」、産業図書、1997、ISBN-13: 978-4782853535
(参考文献B)宇根正志、岡本龍明、「最近のデジタル署名における理論研究動向について」、日本銀行金融研究所/金融研究/2000. 4、[平成22年4月14日検索]、インターネット〈http://www.imes.boj.or.jp/japanese/kinyu/2000/kk19-b1-3.pdf〉
The signature key generation unit 201 of the signature generation apparatus 200 generates at least a signature verification key PK i = Gen (r i ) using the calculation result r i (step S7). The signature key generation unit 201 determines the signature generation key SK i and the signature verification key PK i as a set using the calculation result r i as a parameter, or uniquely generates either the signature generation key SK i or the signature verification key PK i Has the function Gen to do. In addition, the signature key generation unit 201 may use the calculation result r i as the signature generation key SK i and generate the signature verification key PK i from the calculation result r i . In the first embodiment, SK i = Gen (r i ) = r i and PK i = Gen (r i ). Examples of signature schemes that can be used in the present invention include RSA signature schemes, Schnorr signature schemes, and improved schemes thereof (see references A and B).
(Reference A) Tatsuaki Okamoto, Hiroshi Yamamoto, “Contemporary Cryptography”, Sangyo Tosho, 1997, ISBN-13: 978-4782853535
(Reference B) Masashi Une, Tatsuaki Okamoto, “Recent Trends in Theoretical Research on Digital Signatures”, Bank of Japan Financial Research Institute / Financial Studies / 2000.4, [Search April 14, 2010], Internet <http://www.imes.boj.or.jp/japanese/kinyu/2000/kk19-b1-3.pdf>

(Schnorr署名方式)
[鍵生成]
素数pと、p-1の素因数qを選択する。さらに、pを法とする乗法群の元xを選択し、y=g(-x) mod pを求める。ここでgは、pを法とする乗法群の原始元であり、gの位数はqであるとする。署名生成鍵はx、署名検証鍵はy,g,p,qである。
[署名生成]
乱数kを生成し、メッセージMに対する署名(e,s)を生成する。e=Hash(M,r), s=(xe+k) mod q, r=gk mod p. Hashはハッシュ関数である。
[署名検証]
v=gsye mod p, e1=Hash(M,v)を計算し、e=e1の成否を検証する。
(Schnorr signature method)
[Key generation]
Select prime number p and prime factor q of p-1. Further, an element x of a multiplicative group modulo p is selected, and y = g (−x) mod p is obtained. Here, g is a primitive element of a multiplicative group modulo p, and the order of g is q. The signature generation key is x, and the signature verification key is y, g, p, q.
[Signature generation]
A random number k is generated, and a signature (e, s) for the message M is generated. e = Hash (M, r), s = (xe + k) mod q, r = g k mod p. Hash is a hash function.
[Signature verification]
v = g s y e mod p, e1 = Hash (M, v) is calculated, and the success or failure of e = e1 is verified.

(RSA署名方式)
[鍵生成]
十分に大きい素数p,qを選択し、n=pqを求める。p-1とq-1の最小公倍数L=LCM(p-1,q-1)を求める。最大公約数GCD(e,L)=1を満たす自然数eを選択し、ed=1 mod Lを満たすdを選択する。署名生成鍵はd、署名検証鍵はe,nである。
[署名生成]
メッセージMに対する署名Sを生成する。S=(Hash(M))d mod n.
[署名検証]
Hash(M)=Semod nの成否を検証する。
(RSA signature method)
[Key generation]
Select sufficiently large primes p and q to find n = pq. Find the least common multiple L = LCM (p-1, q-1) of p-1 and q-1. A natural number e that satisfies the greatest common divisor GCD (e, L) = 1 is selected, and d that satisfies ed = 1 mod L is selected. The signature generation key is d, and the signature verification key is e, n.
[Signature generation]
Generate a signature S for message M. S = (Hash (M)) d mod n.
[Signature verification]
The success or failure of Hash (M) = S e mod n is verified.

署名生成装置200の送信部207が、APサーバ装置300に対して署名検証鍵PKiを送信し(ステップS8)、APサーバ装置300の受信部308が、署名検証鍵PKiを受信する(ステップS9)。署名検証鍵PKiは端末装置100−iを特定する上記識別子に対応付けられて、APサーバ装置300の記憶部309に記憶される。 The transmission unit 207 of the signature generation apparatus 200 transmits the signature verification key PK i to the AP server apparatus 300 (step S8), and the reception unit 308 of the AP server apparatus 300 receives the signature verification key PK i (step S8). S9). The signature verification key PK i is stored in the storage unit 309 of the AP server device 300 in association with the identifier that identifies the terminal device 100-i.

なお、ステップS7ないしステップS8の処理の後、署名生成装置200の制御部205が、演算結果riを署名生成装置200の記憶部209から消去する処理を行う(ステップS8a)。 Note that after the processing of step S7 to step S8, the control unit 205 of the signature generation apparatus 200 performs processing of deleting the calculation result r i from the storage unit 209 of the signature generation apparatus 200 (step S8a).

〈署名プロセス〉
次に、APサーバ装置300の持つアプリケーションソフトウェアの端末装置100に対する適用には電子署名が必要であり、例えば端末装置100−iからのAPサーバ装置300に対する要求がトリガーとなって署名プロセスが実施される。
<Signature process>
Next, application of the application software of the AP server device 300 to the terminal device 100 requires an electronic signature. For example, a request for the AP server device 300 from the terminal device 100-i is triggered to execute a signature process. The

APサーバ装置300の送信部307が、記憶部309に記憶されている端末装置100−iに対応する固有データhiを端末装置100−iに対して送信し(ステップS10)、端末装置100−iの受信部108が、ステップS10にて送信された固有データhiを受信する(ステップS11)。 The transmission unit 307 of the AP server device 300 transmits the unique data h i corresponding to the terminal device 100-i stored in the storage unit 309 to the terminal device 100-i (step S10), and the terminal device 100- The i reception unit 108 receives the unique data h i transmitted in step S10 (step S11).

端末装置100−iの固有演算部101が、ステップS11にて受信した固有データhiに対して当該端末装置100−iに固有の演算gを行い、この演算結果ri=g(hi)を出力する(ステップS12)。この演算結果riは、ステップS4の処理で得られたriと同じである。 The unique calculation unit 101 of the terminal device 100-i performs a calculation g specific to the terminal device 100-i on the unique data h i received in step S11, and the calculation result r i = g (h i ). Is output (step S12). The calculation result r i is the same as r i obtained in the process of step S4.

端末装置100−iの送信部107が、署名生成装置200に対してステップS12にて得られた演算結果riを送信し(ステップS13)、署名生成装置200の受信部208が、ステップS13にて送信された演算結果riを受信する(ステップS14)。ステップS13の処理の後、端末装置100−iの制御部105は、端末装置100−iの図示しない記憶部から演算結果riを消去する処理を行う(ステップS13a)。 The transmission unit 107 of the terminal device 100-i transmits the calculation result r i obtained in step S12 to the signature generation device 200 (step S13), and the reception unit 208 of the signature generation device 200 proceeds to step S13. The calculation result r i transmitted in step S14 is received (step S14). After the process of step S13, the control unit 105 of the terminal device 100-i performs a process of deleting the calculation result r i from a storage unit (not shown) of the terminal device 100-i (step S13a).

また、APサーバ装置300の送信部307が、署名生成装置200に対して電子署名付与の対象となるメッセージmを送信し(ステップS15)、署名生成装置200の受信部208が、メッセージmを受信する(ステップS16)。   In addition, the transmission unit 307 of the AP server apparatus 300 transmits the message m to be digitally signed to the signature generation apparatus 200 (step S15), and the reception unit 208 of the signature generation apparatus 200 receives the message m. (Step S16).

署名生成装置200の署名鍵生成部201が、ステップS13にて受信した演算結果riを用いて少なくとも署名生成鍵SKi=Gen(ri)を生成する(ステップS17)。署名方式は上述のとおりである。実施形態1ではSKi=Gen(ri)=riである。 The signature key generation unit 201 of the signature generation apparatus 200 generates at least a signature generation key SK i = Gen (r i ) using the calculation result r i received in step S13 (step S17). The signature method is as described above. In the first embodiment, SK i = Gen (r i ) = r i .

そして、署名生成装置200の署名生成部202が、署名生成鍵SKiを用いてメッセージmに対して電子署名Sig=Gsig(m,SKi)を生成する(ステップS18)。 Then, the signature generation unit 202 of the signature generation apparatus 200 generates an electronic signature Sig = Gsig (m, SK i ) for the message m using the signature generation key SK i (step S18).

署名生成装置200の送信部207が、APサーバ装置300に対して電子署名Sigを送信し(ステップS19)、APサーバ装置300の受信部308が、電子署名Sigを受信する(ステップS20)。   The transmission unit 207 of the signature generation device 200 transmits the electronic signature Sig to the AP server device 300 (step S19), and the reception unit 308 of the AP server device 300 receives the electronic signature Sig (step S20).

APサーバ装置300の署名検証部302が、記憶部309に記憶されている端末装置100−iに対応する署名検証鍵PKiを用いて電子署名Sigを検証する(ステップS21)。 The signature verification unit 302 of the AP server device 300 verifies the electronic signature Sig using the signature verification key PK i corresponding to the terminal device 100-i stored in the storage unit 309 (step S21).

なお、ステップS18ないしステップS19の処理の後、署名生成装置200の制御部205が、演算結果riと署名生成鍵SKiを署名生成装置200の記憶部209から消去する処理を行う(ステップS19a)。 Note that after the processing from step S18 to step S19, the control unit 205 of the signature generation apparatus 200 performs processing of deleting the calculation result r i and the signature generation key SK i from the storage unit 209 of the signature generation apparatus 200 (step S19a). ).

以上より、端末装置100−iに入力される固有データhiから、端末装置100−i以外の端末装置が、演算結果riおよび当該演算結果から一意に生成される署名生成鍵SKiを求めることが困難であれば、署名生成装置200が正しく電子署名の生成および演算結果riと署名生成鍵SKiの破棄を行っている限り、端末装置100−iが関与すること無く、署名検証鍵PKiを用いて署名検証に合格するような電子署名Sigを生成することは困難となる。 As described above, the terminal device 100-i other than the terminal device 100-i obtains the calculation result r i and the signature generation key SK i uniquely generated from the calculation result from the unique data h i input to the terminal device 100-i. If it is difficult, as long as the signature generation apparatus 200 correctly generates the electronic signature and discards the operation result r i and the signature generation key SK i , the signature verification key is not involved without involving the terminal apparatus 100-i. It becomes difficult to generate an electronic signature Sig that passes signature verification using PK i .

演算結果は端末装置ごとに固有の演算機能によるものであるため、端末装置100−i以外の端末装置が演算結果riを求めることは通常、困難と見なすことができる。これは例えば上述のとおり、固有の演算機能を鍵付きのハッシュ演算、すなわち鍵データKと入力の固定データSに対してKおよびSを連結したデータS‖Kのハッシュ値Hash(S‖K)を出力する機能とすることで容易に実現できる。また演算結果riをセキュア通信によって署名生成装置200に送信し、署名生成装置200をHSMなどによって実現して処理機能の改変を困難とすることで、不正な演算結果の取得を困難とし、署名生成装置200が正しく電子署名の生成および演算結果の破棄を行っているものと見なすことができる。 Since the calculation result is based on a calculation function unique to each terminal device, it is usually considered difficult for a terminal device other than the terminal device 100- i to obtain the calculation result r i . For example, as described above, a unique calculation function is a hash operation with a key, that is, a hash value Hash (S‖K) of data S‖K obtained by concatenating K and S to key data K and input fixed data S This can be easily realized with the function of outputting. In addition, the calculation result r i is transmitted to the signature generation apparatus 200 by secure communication, and the signature generation apparatus 200 is realized by HSM or the like to make it difficult to modify the processing function. It can be considered that the generation apparatus 200 correctly generates the electronic signature and discards the calculation result.

さらに、署名生成装置200は、署名生成処理の際を除き、署名生成鍵SKiを保有していないため、たとえ第三者装置が署名生成装置200の内部データを得ることができたとしても、署名生成時を除き署名生成鍵SKiを不正に盗まれずに済む。署名生成時点でのリスクについては、署名生成装置200に対する盗難や不正アクセスの痕跡などの異常が確認された場合ただちに署名生成を拒否するといった対応によりリスクヘッジが可能である。 Furthermore, since the signature generation apparatus 200 does not have the signature generation key SK i except during the signature generation process, even if the third party apparatus can obtain the internal data of the signature generation apparatus 200, The signature generation key SK i can be prevented from being illegally stolen except when generating a signature. As for the risk at the time of signature generation, risk hedging is possible by responding to denying signature generation as soon as an abnormality such as theft of the signature generation apparatus 200 or a trace of unauthorized access is confirmed.

したがって、署名生成装置200が生成した電子署名Sigは、端末装置100−iからの委託に基づくものであり、ユーザの意思の下で生成された電子署名、すなわち証明力の高い電子署名ということができる。   Therefore, the electronic signature Sig generated by the signature generation apparatus 200 is based on the entrustment from the terminal apparatus 100-i, and is an electronic signature generated with the intention of the user, that is, an electronic signature with high proof power. it can.

《実施形態1の変形例》
実施形態1におけるセキュリティを向上させる実施形態1の変形例について説明する(図3参照)。実施形態1では演算結果riが端末装置間で十分にランダムであるか不明であるから、この変形例では、署名生成鍵と署名検証鍵を生成するに際して演算結果riを乱数で撹乱する。
<< Modification of Embodiment 1 >>
A modification of the first embodiment for improving security in the first embodiment will be described (see FIG. 3). In the first embodiment, it is unknown whether the calculation result r i is sufficiently random between the terminal devices. In this modification, the calculation result r i is disturbed by a random number when generating the signature generation key and the signature verification key.

具体的には、実施形態1において、ステップS7に替えて、署名生成装置200の署名鍵生成部201が、演算結果riを乱数生成部(図示せず)で生成された乱数tiで撹乱して得られる情報siを用いて少なくとも署名検証鍵PKiを生成する処理(ステップS7p)とし、ステップS17に替えて、署名生成装置200の署名鍵生成部201が、ステップS13にて受信した演算結果riを上記乱数tiで撹乱して得られる情報siを用いて少なくとも署名生成鍵SKiを生成する処理(ステップS17p)とする。これらの他の処理は実施形態1と同じであるから説明を省略する。 Specifically, in the first embodiment, instead of step S7, the signature key generation unit 201 of the signature generation apparatus 200 disturbs the calculation result r i with the random number t i generated by the random number generation unit (not shown). In step S7p, the signature key generation unit 201 of the signature generation apparatus 200 receives the signature verification key PK i using the information s i obtained in step S17. It is assumed that at least the signature generation key SK i is generated (step S17p) using information s i obtained by disturbing the calculation result r i with the random number t i . Since these other processes are the same as those in the first embodiment, description thereof is omitted.

「演算結果riを乱数tiで撹乱して得られる情報si」は例えばsi=ri(+)tiである。ここで(+)は排他的論理和を表す。署名鍵生成部201は、情報siをパラメータとして署名生成鍵SKiと署名検証鍵PKiをセットで求めるか、または署名生成鍵SKiと署名検証鍵PKiの何れかを一意に生成する。また、署名鍵生成部201は、情報siを署名生成鍵SKiとし、情報siから署名検証鍵PKiを生成するとしてもよい。乱数tiは、端末装置100−iを特定する上記識別子に対応付けられて、署名生成装置200の記憶部209に記憶される。 “Information s i obtained by disturbing the operation result r i with the random number t i ” is, for example, s i = r i (+) t i . Here, (+) represents exclusive OR. The signature key generation unit 201 determines the signature generation key SK i and the signature verification key PK i as a set using the information s i as a parameter, or uniquely generates either the signature generation key SK i or the signature verification key PK i . The signature key generation unit 201 may use the information s i as the signature generation key SK i and generate the signature verification key PK i from the information s i . The random number t i is stored in the storage unit 209 of the signature generation device 200 in association with the identifier that identifies the terminal device 100-i.

このような処理により、署名生成鍵と署名検証鍵を生成するに際して用いられる情報siが十分にランダムであることが保証される。なお、乱数tiはAPサーバ装置300によって生成・保存され、署名プロセスの度に署名生成装置200に送信されるとしてもよい。また、この変形例ではXOR演算を用いて十分なランダム性を保障する処理を説明したが、十分なランダム性を保障することができるならば他の演算を用いてもよい。 Such processing ensures that the information s i used when generating the signature generation key and signature verification key is sufficiently random. Incidentally, the random number t i is generated and stored by the AP server 300 may be sent to the signature generation device 200 each time the signing process. Further, in this modification, the processing for ensuring sufficient randomness using the XOR operation has been described, but other operations may be used as long as sufficient randomness can be ensured.

《実施形態2》
実施形態2は、実施形態1において端末装置からの秘密値(例えば上記鍵データK)の漏洩防止や端末紛失時の秘密値のリカバリを実現することを目的とした実施形態である。実施形態1と同じ構成要素には同じ符号を当ててその重複説明を省略する。
<< Embodiment 2 >>
The second embodiment is an embodiment aimed at preventing leakage of a secret value (for example, the key data K) from the terminal device and recovering the secret value when the terminal is lost in the first embodiment. The same components as those in the first embodiment are denoted by the same reference numerals, and redundant description thereof is omitted.

実施形態2では秘密値を3種類の値(断片)に分け、3種類の断片のうち2種類の断片を用いると当該秘密値を復元でき、1種類の断片だけでは当該秘密値を復元できないような分割技術を用いるものとする。このような分割技術の具体例として、下記参考特許文献に記載されているデータ分割方法が挙げられ、これを援用する。
(参考特許文献)特開2004-213650号公報
In the second embodiment, the secret value is divided into three types of values (fragments), and if two types of fragments are used among the three types of fragments, the secret value can be restored, and the secret value cannot be restored only with one type of fragment. A simple division technique is used. As a specific example of such a dividing technique, there is a data dividing method described in the following reference patent document, and this is used.
(Reference Patent Document) Japanese Patent Application Laid-Open No. 2004-213650

[代理署名システム]
実施形態2の代理署名システム2は、図4に示すように、端末装置100と、署名生成装置200と、署名検証装置300と、代替端末装置400と、バックアップ装置500を少なくとも含んで構成される。これらの各装置は、例えば通信網5を経由して、相互に通信可能とされている。とくに、端末装置100と署名生成装置200との間の通信路、代替端末装置400と署名生成装置200との間の通信路、バックアップ装置500と署名生成装置200との間の通信路それぞれは、暗号技術などにより秘匿性の高い通信が実現されていることが望ましい。
[Proxy signature system]
As illustrated in FIG. 4, the proxy signature system 2 according to the second exemplary embodiment includes at least a terminal device 100, a signature generation device 200, a signature verification device 300, an alternative terminal device 400, and a backup device 500. . These devices can communicate with each other via, for example, the communication network 5. In particular, the communication path between the terminal device 100 and the signature generation apparatus 200, the communication path between the alternative terminal apparatus 400 and the signature generation apparatus 200, and the communication path between the backup apparatus 500 and the signature generation apparatus 200 are respectively: It is desirable that highly confidential communication is realized by an encryption technique or the like.

端末装置100、署名生成装置200、署名検証装置300については、実施形態1と同じであるから重複説明を省略する。   Since the terminal device 100, the signature generation device 200, and the signature verification device 300 are the same as those in the first embodiment, a duplicate description is omitted.

<代替端末装置>
代替端末装置400は、計算機能およびデータ送受信機能を有する装置であり、実質的に端末装置100と同程度の機能が想定される。この意味では代替端末装置400は端末装置100と異なるものではないが、同一ユーザの管理下にある、或いは端末装置100の紛失や破損などを契機として代替端末400が使用されるようになるということを予定している点で、代替端末装置400は端末装置100と異なる。
<Alternative terminal device>
The alternative terminal device 400 is a device having a calculation function and a data transmission / reception function, and is assumed to have substantially the same function as the terminal device 100. In this sense, the alternative terminal device 400 is not different from the terminal device 100, but the alternative terminal 400 is used under the control of the same user or when the terminal device 100 is lost or damaged. The alternative terminal device 400 is different from the terminal device 100 in that the terminal device 100 is scheduled.

<バックアップ装置>
バックアップ装置500は、データ保管とデータ送受信機能を有すれば十分な装置であり、例えばサーバ装置などで例示される。本発明では一つまたは複数のバックアップ装置を含み得るが、実施形態2では、本発明の理解を容易にするため、代理署名システム2は一つのバックアップ装置500を含むとする。
<Backup device>
The backup device 500 is sufficient if it has data storage and data transmission / reception functions, and is exemplified by a server device, for example. Although the present invention may include one or a plurality of backup devices, in the second embodiment, the proxy signature system 2 is assumed to include one backup device 500 in order to facilitate understanding of the present invention.

代理署名システム2における代理署名処理を、図5−7を参照しながら叙述する。以降では、端末装置100−iに対応する署名検証鍵をAPサーバ装置300に登録する処理手順(登録プロセス)、署名生成鍵SKiを分割して分散管理する処理手順(分割プロセス)、電子署名を生成する処理手順(署名プロセス)、および署名生成鍵SKiを復元する処理手順(復旧プロセス)に分けて説明する。各装置の機能構成については、図11を参照されたい。 The proxy signature process in the proxy signature system 2 will be described with reference to FIGS. In the following, the processing procedure for registering the signature verification key corresponding to the terminal device 100-i to the AP server 300 (registration process), by dividing the signature generation key SK i distributed management procedure (dividing process), the electronic signature The processing procedure (signature process) for generating the signature and the processing procedure (recovery process) for restoring the signature generation key SK i will be described separately. Refer to FIG. 11 for the functional configuration of each device.

〈登録プロセス〉
署名生成装置の署名鍵生成部201が、署名生成鍵SKiおよび署名検証鍵PKiを生成する(ステップS101)。署名生成鍵SKiは端末装置100−iを特定する情報(識別子)に対応付けられて、署名生成装置200の記憶部209に記憶される。本発明で利用可能な署名方式としてRSA署名方式、Schnorr署名方式、これらの改良方式などが挙げられる(上記参考文献A,B参照)。
<Registration process>
The signature key generation unit 201 of the signature generation device generates a signature generation key SK i and a signature verification key PK i (step S101). The signature generation key SK i is stored in the storage unit 209 of the signature generation apparatus 200 in association with information (identifier) that identifies the terminal apparatus 100-i. Examples of signature schemes that can be used in the present invention include RSA signature schemes, Schnorr signature schemes, and improved schemes thereof (see references A and B above).

署名生成装置200の送信部207が、APサーバ装置300に対して署名検証鍵PKiを送信し(ステップS102)、APサーバ装置300の受信部308が、署名検証鍵PKiを受信する(ステップS103)。署名検証鍵PKiは端末装置100−iを特定する上記識別子に対応付けられて、APサーバ装置300の記憶部309に記憶される。 The transmission unit 207 of the signature generation apparatus 200 transmits the signature verification key PK i to the AP server apparatus 300 (step S102), and the reception unit 308 of the AP server apparatus 300 receives the signature verification key PK i (step S102). S103). The signature verification key PK i is stored in the storage unit 309 of the AP server device 300 in association with the identifier that identifies the terminal device 100-i.

〈分割プロセス〉
APサーバ装置300の固有データ生成部301が、端末装置100−iに固有の固有データhi1を生成する(ステップS104)。固有データhi1は端末装置100−iを特定する情報(識別子)に対応付けられて、APサーバ装置300の記憶部309に記憶される。
<Division process>
The unique data generation unit 301 of the AP server device 300 generates unique data h i1 unique to the terminal device 100-i (step S104). The unique data h i1 is stored in the storage unit 309 of the AP server device 300 in association with information (identifier) that identifies the terminal device 100-i.

APサーバ装置300の送信部307が、端末装置100−iに対して固有データhi1を送信し(ステップS105)、端末装置100−iの受信部108が、固有データhi1を受信する(ステップS106)。 The transmission unit 307 of the AP server device 300 transmits the unique data h i1 to the terminal device 100-i (Step S105), and the reception unit 108 of the terminal device 100-i receives the unique data h i1 (Step S105). S106).

端末装置100−iの固有演算部101が、固有データhi1に対して端末装置100−iに固有の演算gを行い、この演算結果ri1=g(hi1)を出力する(ステップS107)。固有の演算gが例えば上述のハッシュ演算Hashであれば、端末装置100−iに固有の鍵データKi1と入力の固有データhi1に対してKi1およびhi1を連結したデータhi1‖Ki1のハッシュ値Hash(hi1‖Ki1)が演算結果ri1である。 The unique calculation unit 101 of the terminal device 100-i performs a calculation g unique to the terminal device 100-i on the unique data h i1 and outputs this calculation result r i1 = g (h i1 ) (step S107). . If the specific operation g is, for example, the hash operation Hash described above, the data h i1 ‖K obtained by concatenating K i1 and h i1 to the key data K i1 specific to the terminal device 100-i and the input specific data h i1 . i1 hash value hash of (h i1 ‖K i1) is a calculation result r i1.

端末装置100−iの送信部107は、署名生成装置200に対して演算結果ri1を送信し(ステップS108)、署名生成装置200の受信部208が、演算結果ri1を受信する(ステップS109)。ステップS108の処理の後、端末装置100−iの制御部105は、端末装置100−iの図示しない記憶部から演算結果ri1を消去する処理を行う(ステップS108a)。 The transmission unit 107 of the terminal device 100-i transmits the calculation result r i1 to the signature generation device 200 (step S108), and the reception unit 208 of the signature generation device 200 receives the calculation result r i1 (step S109). ). After the process of step S108, the control unit 105 of the terminal apparatus 100-i performs a process of deleting the calculation result r i1 from a storage unit (not shown) of the terminal apparatus 100-i (step S108a).

署名生成装置200の分割部203が、署名生成鍵SKiを分割して得られる3種類の断片のうち少なくとも2種類の断片から署名生成鍵SKiを復元可能であるが、3種類の断片のうち1種類の断片から署名生成鍵SKiを復元不能な上記分割方法に従って、演算結果ri1が署名生成鍵SKiの断片の一つとなるように、記憶部209に記憶されている端末装置100−iに対応する署名生成鍵SKiを3種類の断片ri1,ui1,vi1に分割する(ステップS110)。断片ui1は端末装置100−iを特定する上記識別子に対応付けられて、署名生成装置200の記憶部209に記憶される(ステップS111)。 Dividing unit 203 of the signature generating apparatus 200, the signature is generated key SK i from at least two pieces of the three types of fragments obtained by dividing a recoverable signature generation key SK i, three fragments The terminal device 100 stored in the storage unit 209 so that the operation result r i1 becomes one of the fragments of the signature generation key SK i according to the above-described dividing method in which the signature generation key SK i cannot be recovered from one type of fragment. The signature generation key SK i corresponding to −i is divided into three types of fragments r i1 , u i1 and v i1 (step S110). The fragment u i1 is stored in the storage unit 209 of the signature generation device 200 in association with the identifier that identifies the terminal device 100-i (step S111).

署名生成装置200の送信部207が、バックアップ装置500に対して断片vi1を送信し(ステップS112)、バックアップ装置500の受信部508が、断片vi1を受信する(ステップS113)。そして、断片vi1は端末装置100−iを特定する上記識別子に対応付けられて、バックアップ装置500の記憶部509に記憶される(ステップS114)。 The transmission unit 207 of the signature generation device 200 transmits the fragment v i1 to the backup device 500 (step S112), and the reception unit 508 of the backup device 500 receives the fragment v i1 (step S113). The fragment v i1 is stored in the storage unit 509 of the backup device 500 in association with the identifier that identifies the terminal device 100-i (step S114).

なお、ステップS110の処理の後、署名生成装置200の制御部205が、演算結果ri1と署名生成鍵SKiを署名生成装置200の記憶部209から消去する処理を行う(ステップS115)。 Note that after the process of step S110, the control unit 205 of the signature generation apparatus 200 performs a process of deleting the calculation result r i1 and the signature generation key SK i from the storage unit 209 of the signature generation apparatus 200 (step S115).

〈署名プロセス〉
次に、APサーバ装置300の持つアプリケーションソフトウェアの端末装置100に対する適用には電子署名が必要であり、例えば端末装置100−iからのAPサーバ装置300に対する要求がトリガーとなって署名プロセスが実施される。
<Signature process>
Next, application of the application software of the AP server device 300 to the terminal device 100 requires an electronic signature. For example, a request for the AP server device 300 from the terminal device 100-i is triggered to execute a signature process. The

APサーバ装置300の送信部307が、記憶部309に記憶されている端末装置100−iに対応する固有データhi1を端末装置100−iに対して送信し(ステップS116)、端末装置100−iの受信部108が、ステップS116にて送信された固有データhi1を受信する(ステップS117)。 The transmission unit 307 of the AP server device 300 transmits the unique data h i1 corresponding to the terminal device 100-i stored in the storage unit 309 to the terminal device 100-i (step S116), and the terminal device 100- The i reception unit 108 receives the unique data h i1 transmitted in step S116 (step S117).

端末装置100−iの固有演算部101が、ステップS117にて受信した固有データhi1に対して端末装置100−iに固有の演算gを行い、この演算結果ri1=g(hi1)を出力する(ステップS118)。この演算結果riは、ステップS107の処理で得られたriと同じである。 The unique computation unit 101 of the terminal device 100-i performs a computation g unique to the terminal device 100-i on the unique data h i1 received in step S117, and obtains this computation result r i1 = g (h i1 ). Output (step S118). The calculation result r i is the same as r i obtained in the process of step S107.

端末装置100−iの送信部107が、署名生成装置200に対してステップS118にて得られた演算結果ri1を送信し(ステップS119)、署名生成装置200の受信部208が、ステップS119にて送信された演算結果ri1を受信する(ステップS120)。ステップS119の処理の後、端末装置100−iの制御部105は、端末装置100−iの図示しない記憶部から演算結果ri1を消去する処理を行う(ステップS119a)。 The transmission unit 107 of the terminal device 100-i transmits the calculation result r i1 obtained in step S118 to the signature generation device 200 (step S119), and the reception unit 208 of the signature generation device 200 proceeds to step S119. The calculation result r i1 transmitted in step S120 is received. After the process of step S119, the control unit 105 of the terminal device 100-i performs a process of deleting the calculation result r i1 from a storage unit (not shown) of the terminal device 100-i (step S119a).

一方、APサーバ装置300の送信部307が、署名生成装置200に対して電子署名付与の対象となるメッセージmを送信し(ステップS121)、署名生成装置200の受信部208が、メッセージmを受信する(ステップS122)。   On the other hand, the transmission unit 307 of the AP server device 300 transmits the message m to be digitally signed to the signature generation device 200 (step S121), and the reception unit 208 of the signature generation device 200 receives the message m. (Step S122).

APサーバ装置300の署名生成部202が、ステップS120にて受信した演算結果ri1とAPサーバ装置300の記憶部309に記憶されている断片ui1を用いて署名生成鍵SKiを復元し、復元された署名生成鍵SKiを用いてメッセージmに対して電子署名Sig=Gsig(m,SKi)を生成する(ステップS123)。 The signature generation unit 202 of the AP server apparatus 300 restores the signature generation key SK i using the calculation result r i1 received in step S120 and the fragment u i1 stored in the storage unit 309 of the AP server apparatus 300, An electronic signature Sig = Gsig (m, SK i ) is generated for the message m using the restored signature generation key SK i (step S123).

署名生成装置200の送信部207が、APサーバ装置300に対して電子署名Sigを送信し(ステップS124)、APサーバ装置300の受信部308が、電子署名Sigを受信する(ステップS125)。   The transmission unit 207 of the signature generation apparatus 200 transmits the electronic signature Sig to the AP server apparatus 300 (step S124), and the reception unit 308 of the AP server apparatus 300 receives the electronic signature Sig (step S125).

APサーバ装置300の署名検証部302が、記憶部309に記憶されている端末装置100−iに対応する署名検証鍵PKiを用いて電子署名Sigを検証する(ステップS126)。 The signature verification unit 302 of the AP server device 300 verifies the electronic signature Sig using the signature verification key PK i corresponding to the terminal device 100-i stored in the storage unit 309 (step S126).

なお、ステップS123の処理の後、署名生成装置200の制御部205が、演算結果ri1と署名生成鍵SKiを署名生成装置200の記憶部209から消去する処理を行う(ステップS124a)。 Note that after the process of step S123, the control unit 205 of the signature generation apparatus 200 performs a process of deleting the calculation result r i1 and the signature generation key SK i from the storage unit 209 of the signature generation apparatus 200 (step S124a).

〈復旧プロセス〉
この復旧プロセスは、端末装置100の紛失や破損などを契機として実施される。
<Recovery process>
This recovery process is performed when the terminal device 100 is lost or damaged.

APサーバ装置300の固有データ生成部301が、代替端末装置400に固有の固有データhi2を生成する(ステップS127)。固有データhi2は固有データhi1に替えて端末装置100−iを特定する情報(識別子)に対応付けられて、さらに、固有データhi2は代替端末装置400を特定する情報(識別子)に対応付けられて、APサーバ装置300の記憶部309に記憶される。 The unique data generation unit 301 of the AP server device 300 generates unique data h i2 unique to the alternative terminal device 400 (step S127). The unique data h i2 is associated with information (identifier) that identifies the terminal device 100-i instead of the unique data h i1 , and the unique data h i2 corresponds to information (identifier) that identifies the alternative terminal device 400. And stored in the storage unit 309 of the AP server device 300.

APサーバ装置300の送信部307が、代替端末装置400に対して固有データhi2を送信し(ステップS128)、代替端末装置400の受信部408が、固有データhi2を受信する(ステップS129)。 The transmission unit 307 of the AP server device 300 transmits the unique data h i2 to the alternative terminal device 400 (step S128), and the reception unit 408 of the alternative terminal device 400 receives the unique data h i2 (step S129). .

代替端末装置400の固有演算部401が、固有データhi2に対して代替端末装置400に固有の演算yを行い、この演算結果ri2=y(hi2)を出力する(ステップS130)。固有の演算yが例えば上述のハッシュ演算Hashであれば、代替端末装置400に固有の鍵データKi2と入力の固有データhi2に対してKi2およびhi2を連結したデータhi2‖Ki2のハッシュ値Hash(hi2‖Ki2)が演算結果ri2である。 The unique operation unit 401 of the alternative terminal device 400 performs an operation y specific to the alternative terminal device 400 on the unique data h i2 and outputs this operation result r i2 = y (h i2 ) (step S130). If the hash operation Hash unique operation y is for example described above, alternatively the terminal apparatus 400 to the data h obtained by connecting K i2 and h i2 against specific data h i2 of type-specific key K i2 i2 ‖K i2 The hash value Hash (h i2 ‖K i2 ) is the operation result r i2 .

代替端末装置400の送信部407が、署名生成装置200に対して演算結果ri2を送信し(ステップS131)、署名生成装置200の受信部208が、演算結果ri2を受信する(ステップS132)。ステップS131の処理の後、代替端末装置400の制御部405は、代替端末装置400の図示しない記憶部から演算結果ri2を消去する処理を行う(ステップS131a)。 The transmission unit 407 of the alternative terminal device 400 transmits the calculation result r i2 to the signature generation device 200 (step S131), and the reception unit 208 of the signature generation device 200 receives the calculation result r i2 (step S132). . After the process of step S131, the control unit 405 of the alternative terminal device 400 performs a process of deleting the calculation result r i2 from a storage unit (not shown) of the alternative terminal device 400 (step S131a).

署名生成装置200からの要求を受けて、バックアップ装置500の送信部507が、バックアップ装置500の記憶部509に記憶されている、端末装置100−iに対応付けられた断片vi1を署名生成装置200に対して送信し(ステップS133)、署名生成装置200の受信部208が、断片vi1を受信する(ステップS134)。 Upon receiving a request from the signature generation device 200, the transmission unit 507 of the backup device 500 uses the fragment v i1 associated with the terminal device 100-i stored in the storage unit 509 of the backup device 500 as the signature generation device. 200 (step S133), and the reception unit 208 of the signature generation apparatus 200 receives the fragment v i1 (step S134).

署名生成装置200の断片更新部204が、署名生成装置200の記憶部209に記憶されている断片ui1とステップS214にて受信した断片vi1を用いて署名生成鍵SKiを復元し、上記分割方法に従って、演算結果ri2が復元された署名生成鍵SKiの断片の一つとなるように、復元された署名生成鍵SKiを3種類の断片ri2,ui2,vi2に分割する(ステップS135)。断片ui2は代替端末装置400を特定する上記識別子に対応付けられて、署名生成装置200の記憶部209に記憶される(ステップS136)。 The fragment update unit 204 of the signature generation device 200 restores the signature generation key SK i using the fragment u i1 stored in the storage unit 209 of the signature generation device 200 and the fragment v i1 received in step S214, and according division method, as the operation result r i2 is one of the restored signature generation key SK i fragment, dividing the restored signature generation key SK i into three fragments r i2, u i2, v i2 (Step S135). The fragment u i2 is stored in the storage unit 209 of the signature generation device 200 in association with the identifier that identifies the alternative terminal device 400 (step S136).

署名生成装置200の送信部207が、バックアップ装置500に対して断片vi2を送信し(ステップS137)、バックアップ装置500の受信部508が、断片vi2を受信する(ステップS138)。そして、断片vi2は代替端末装置400を特定する上記識別子に対応付けられて、バックアップ装置500の記憶部509に記憶される(ステップS139)。 The transmission unit 207 of the signature generation device 200 transmits the fragment v i2 to the backup device 500 (step S137), and the reception unit 508 of the backup device 500 receives the fragment v i2 (step S138). The fragment v i2 is stored in the storage unit 509 of the backup device 500 in association with the identifier that identifies the alternative terminal device 400 (step S139).

なお、ステップS135の処理の後、署名生成装置200の制御部205が、演算結果ri2と署名生成鍵SKiを署名生成装置200の記憶部209から消去する処理を行う(ステップS140)。 Note that after the process of step S135, the control unit 205 of the signature generation apparatus 200 performs a process of deleting the calculation result r i2 and the signature generation key SK i from the storage unit 209 of the signature generation apparatus 200 (step S140).

ステップS135における処理が実行された後は、代替端末装置400からの要求に基づき署名生成装置200が電子署名を生成することになる。つまり、代替端末装置400に対して署名プロセスの各ステップS116−S126が実行される。この際、上述の各ステップS116−S126の説明にて、「端末装置100−i」を「代替端末装置400」に、「固有データhi1」を「固有データhi2」に、「演算結果ri1」を「演算結果ri2」に、「断片ri1」を「断片ri2」に、「断片ui1」を「断片ui2」に、「断片vi1」を「断片vi2」に、「鍵データKi1」を「鍵データKi2」に読み替えればよい。 After the processing in step S135 is executed, the signature generation apparatus 200 generates an electronic signature based on a request from the alternative terminal apparatus 400. That is, the steps S116 to S126 of the signature process are executed for the alternative terminal device 400. At this time, in the description of each of the above-described steps S116 to S126, “terminal device 100-i” is replaced with “alternative terminal device 400”, “unique data h i1 ” is represented with “unique data h i2 ”, and “calculation result r `` i1 '' into `` operation result r i2 '', `` fragment r i1 '' into `` fragment r i2 '', `` fragment u i1 '' into `` fragment u i2 '', `` fragment v i1 '' into `` fragment v i2 '', “Key data K i1 ” may be replaced with “Key data K i2 ”.

復旧プロセスでは、端末装置100の紛失や破損が生じても署名検証鍵PKiを変更する必要が無いという運用上のメリットがある。また、紛失した端末装置100−iを不正に用いようとしても、APサーバ装置300が固有データhi1の送信を拒否する、または署名生成装置200が演算結果ri1の受信を拒否することで不正を防ぐことができる。 In the recovery process, there is an operational advantage that it is not necessary to change the signature verification key PK i even if the terminal device 100 is lost or damaged. Even if the lost terminal device 100-i is used illegally, the AP server device 300 refuses to transmit the unique data hi 1 or the signature generation device 200 refuses to receive the calculation result ri 1. Can be prevented.

《実施形態2の変形例》
実施形態2におけるセキュリティを向上させる実施形態2の変形例について説明する(図8−10)。実施形態2では署名生成鍵SKiの断片となる演算結果riが十分にランダムであるか不明であるから、この変形例では、分割処理を実行するに際して演算結果riを乱数で撹乱する。この処理に併せて署名生成処理および断片更新処理が変更される。
<< Modification of Embodiment 2 >>
A modification of the second embodiment for improving security in the second embodiment will be described (FIGS. 8-10). In the second embodiment, it is unknown whether the calculation result r i that is a fragment of the signature generation key SK i is sufficiently random. Therefore, in this modification, the calculation result r i is disturbed with a random number when the division process is executed. Along with this process, the signature generation process and the fragment update process are changed.

具体的には、実施形態2において、
ステップS110に替えて、署名生成装置200の分割部203が、署名生成鍵SKiを分割して得られる3種類の断片のうち少なくとも2種類の断片から署名生成鍵SKiを復元可能であるが、3種類の断片のうち1種類の断片から署名生成鍵SKiを復元不能な上記分割方法に従って、演算結果ri1を乱数生成部(図示せず)で生成された乱数ti1で撹乱して得られる情報si1が署名生成鍵SKiの断片の一つとなるように、記憶部209に記憶されている端末装置100−iに対応する署名生成鍵SKiを3種類の断片si1,ui1,vi1に分割する処理(ステップS110p)とし、
ステップS123に替えて、APサーバ装置300の署名生成部202が、ステップS200にて受信した演算結果ri1を上記乱数ti1で撹乱して得られる情報si1とAPサーバ装置300の記憶部309に記憶されている断片ui1を用いて署名生成鍵SKiを復元し、復元された署名生成鍵SKiを用いてメッセージmに対して電子署名Sig=(m,SKi)を生成する処理(ステップS123p)とし、
ステップS135に替えて、署名生成装置200の断片更新部204が、署名生成装置200の記憶部209に記憶されている断片ui1とステップS214にて受信した断片vi1を用いて署名生成鍵SKiを復元し、上記分割方法に従って、演算結果ri2を乱数生成部(図示せず)で生成された乱数ti2で撹乱して得られる情報si2が復元された署名生成鍵SKiの断片の一つとなるように、復元された署名生成鍵SKiを3種類の断片si2,ui2,vi2に分割する処理(ステップS135p)とする。これらの他の処理は実施形態2と同じであるから説明を省略する。
Specifically, in the second embodiment,
Instead of step S110, the dividing unit 203 of the signature generation device 200, among the three kinds of fragments obtained by dividing the signature generation key SK i is a recoverable signature generation key SK i at least two kinds of fragments According to the above dividing method in which the signature generation key SK i cannot be recovered from one of the three types of fragments, the operation result r i1 is disturbed by a random number t i1 generated by a random number generation unit (not shown). The signature generation key SK i corresponding to the terminal device 100-i stored in the storage unit 209 is changed into three types of fragments s i1 , u so that the obtained information s i1 becomes one of the fragments of the signature generation key SK i. A process of dividing into i1 and v i1 (step S110p),
Instead of step S123, the signature generation unit 202 of the AP server 300 is a storage unit 309 of the information s i1 and the AP server 300 to obtain a calculation result r i1 received in step S200 and disturbance in the random number t i1 The signature generation key SK i is restored using the fragment u i1 stored in, and the electronic signature Sig = (m, SK i ) is generated for the message m using the restored signature generation key SK i (Step S123p)
Instead of step S135, the fragment update unit 204 of the signature generation device 200 uses the fragment u i1 stored in the storage unit 209 of the signature generation device 200 and the fragment v i1 received in step S214 to generate the signature generation key SK. restore i, the following division method, fragments of the operation result random number generation unit r i2 signature information s i2 obtained by disrupting a random number t i2 generated by (not shown) is restored generated key SK i It is assumed that the restored signature generation key SK i is divided into three types of fragments s i2 , u i2 and v i2 (step S135p). Since these other processes are the same as those in the second embodiment, description thereof will be omitted.

「演算結果ri*を乱数ti*で撹乱して得られる情報si*」(*=1 or 2)は例えばsi*=ri*(+)ti*である。ここで(+)は排他的論理和を表す。乱数ti1は、端末装置100−iを特定する上記識別子に対応付けられて、署名生成装置200の記憶部209に記憶され、乱数ti2は、代替端末装置400を特定する上記識別子に対応付けられて、署名生成装置200の記憶部209に記憶される。 “Information s i * obtained by disturbing the calculation result r i * with a random number t i * ” (* = 1 or 2) is, for example, s i * = r i * (+) t i * . Here, (+) represents exclusive OR. The random number t i1 is associated with the identifier that identifies the terminal device 100-i and is stored in the storage unit 209 of the signature generation device 200, and the random number t i2 is associated with the identifier that identifies the alternative terminal device 400. And stored in the storage unit 209 of the signature generation apparatus 200.

このような処理により、署名生成鍵と署名検証鍵を生成するに際して用いられる情報si*が十分にランダムであることが保証される。なお、乱数ti*はAPサーバ装置300によって生成・保存され、署名プロセスの度に署名生成装置200に送信されるとしてもよい。また、この変形例ではXOR演算を用いて十分なランダム性を保障する処理を説明したが、十分なランダム性を保障することができるならば他の演算を用いてもよい。 Such processing ensures that the information s i * used for generating the signature generation key and signature verification key is sufficiently random. Note that the random number t i * may be generated and stored by the AP server device 300 and transmitted to the signature generation device 200 at each signature process. Further, in this modification, the processing for ensuring sufficient randomness using the XOR operation has been described, but other operations may be used as long as sufficient randomness can be ensured.

<補記>
代理署名システムに含まれるハードウェアエンティティ(端末装置、署名生成装置、署名検証装置、代替端末装置、バックアップ装置)は、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置(例えば通信ケーブル)が接続可能な通信部、CPU(Central Processing Unit)〔キャッシュメモリやレジスタなどを備えていてもよい。〕、メモリであるRAMやROM、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、CPU、RAM、ROM、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、CD−ROMなどの記録媒体を読み書きできる装置(ドライブ)などを設けるとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
<Supplementary note>
Hardware entities (terminal device, signature generation device, signature verification device, alternative terminal device, backup device) included in the proxy signature system are an input unit that can be connected to a keyboard, an output unit that can be connected to a liquid crystal display, etc. A communication unit to which a communication device (for example, a communication cable) capable of communicating outside the wear entity can be connected, a CPU (Central Processing Unit) [a cache memory, a register, or the like may be provided. ], A RAM or ROM that is a memory, an external storage device that is a hard disk, and a bus that connects the input unit, output unit, communication unit, CPU, RAM, ROM, and external storage device so that data can be exchanged between them. have. If necessary, a hardware entity may be provided with a device (drive) that can read and write a recording medium such as a CD-ROM. A physical entity having such hardware resources includes a general-purpose computer.

ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている(外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるROMに記憶させておくなどでもよい。)。また、これらのプログラムの処理によって得られるデータなどは、RAMや外部記憶装置などに適宜に記憶される。上述の説明では、演算結果やその格納領域のアドレスなどを記憶するRAMやレジスタなどの記憶装置を単に「記憶部」とした。   The external storage device of the hardware entity stores a program necessary for realizing the above functions and data necessary for processing the program (not limited to the external storage device, for example, reading a program) It may be stored in a ROM that is a dedicated storage device.) Data obtained by the processing of these programs is appropriately stored in a RAM or an external storage device. In the above description, a storage device such as a RAM or a register that stores an operation result, an address of a storage area thereof, or the like is simply referred to as a “storage unit”.

ハードウェアエンティティでは、外部記憶装置〔あるいはROMなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にCPUで解釈実行・処理される。その結果、CPUが所定の機能(例えば、固有演算部、固有データ生成部、署名検証部、署名鍵生成部、署名生成部、分割部、断片更新部、制御部など)を実現する。   In the hardware entity, each program stored in an external storage device (or ROM, etc.) and data necessary for processing each program are read into a memory as necessary, and are interpreted and executed by a CPU as appropriate. . As a result, the CPU implements predetermined functions (for example, a specific operation unit, a specific data generation unit, a signature verification unit, a signature key generation unit, a signature generation unit, a division unit, a fragment update unit, and a control unit).

各実施形態で説明したハードウェアエンティティの細部においては、数論における数値計算処理が必要となる場合があるが、数論における数値計算処理自体は、周知技術と同様にして達成されるので、その演算処理方法などの詳細な説明は省略した(この点の技術水準を示す数論における数値計算処理が可能なソフトウェアとしては、例えばPARI/GP、KANT/KASHなどが挙げられる。PARI/GPについては、例えばインターネット〈URL: http://pari.math.u-bordeaux.fr/〉[平成22年4月9日検索]を参照のこと。KANT/KASHについては、例えばインターネット〈URL: http://www.math.tu-berlin.de/algebra/〉[平成22年4月9日検索]を参照のこと。)。
また、この点に関する文献として、参考文献Cを挙げることができる。
(参考文献C) H. Cohen, "A Course in Computational Algebraic Number Theory", GTM 138, Springer-Verlag, 1993.
In the details of the hardware entity described in each embodiment, numerical calculation processing in number theory may be required, but numerical calculation processing in number theory itself is achieved in the same manner as in the well-known technique. A detailed description of the arithmetic processing method and the like has been omitted (software that can perform numerical calculation processing in number theory indicating the technical level of this point includes, for example, PARI / GP, KANT / KASH, etc. About PARI / GP For example, see the Internet <URL: http://pari.math.u-bordeaux.fr/> [Search April 9, 2010] For KANT / KASH, for example, the Internet <URL: http: / /www.math.tu-berlin.de/algebra/> [Search April 9, 2010].)
Reference literature C can be cited as a literature regarding this point.
(Reference C) H. Cohen, "A Course in Computational Algebraic Number Theory", GTM 138, Springer-Verlag, 1993.

本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。   The present invention is not limited to the above-described embodiment, and can be appropriately changed without departing from the spirit of the present invention. In addition, the processing described in the above embodiment may be executed not only in time series according to the order of description but also in parallel or individually as required by the processing capability of the apparatus that executes the processing. .

また、上記実施形態において説明したハードウェアエンティティにおける処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。   Further, when the processing functions in the hardware entity described in the above embodiment are realized by a computer, the processing contents of the functions that the hardware entity should have are described by a program. Then, by executing this program on a computer, the processing functions in the hardware entity are realized on the computer.

この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto-Optical disc)等を、半導体メモリとしてEEP−ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。   The program describing the processing contents can be recorded on a computer-readable recording medium. As the computer-readable recording medium, for example, any recording medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory may be used. Specifically, for example, as a magnetic recording device, a hard disk device, a flexible disk, a magnetic tape or the like, and as an optical disk, a DVD (Digital Versatile Disc), a DVD-RAM (Random Access Memory), a CD-ROM (Compact Disc Read Only). Memory), CD-R (Recordable) / RW (ReWritable), etc., magneto-optical recording medium, MO (Magneto-Optical disc), etc., semiconductor memory, EEP-ROM (Electronically Erasable and Programmable-Read Only Memory), etc. Can be used.

また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。   The program is distributed by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.

このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。   A computer that executes such a program first stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. When executing the process, the computer reads a program stored in its own recording medium and executes a process according to the read program. As another execution form of the program, the computer may directly read the program from a portable recording medium and execute processing according to the program, and the program is transferred from the server computer to the computer. Each time, the processing according to the received program may be executed sequentially. Also, the program is not transferred from the server computer to the computer, and the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition. It is good. Note that the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to the computer but has a property that defines the processing of the computer).

また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。   In this embodiment, a hardware entity is configured by executing a predetermined program on a computer. However, at least a part of these processing contents may be realized by hardware.

Claims (8)

端末装置と、署名生成装置と、署名検証装置とを含み、当該端末装置からの要求に基づき当該署名生成装置が電子署名を生成する代理署名システムであって、
上記端末装置は、
当該端末装置に与えられたデータ(以下、固有データという)に対して当該端末装置に固有の演算を行い演算結果を出力する固有演算部と、
上記演算結果を上記端末装置の記憶部から消去する制御部とを含み、
上記署名生成装置は、
上記演算結果を用いて署名生成鍵および署名検証鍵を生成可能な署名鍵生成部と、
上記署名生成鍵を用いて上記署名検証装置が設定したメッセージに対して電子署名を生成する署名生成部と、
上記演算結果と上記署名生成鍵を上記署名生成装置の記憶部から消去する処理を行う制御部とを含み、
上記署名検証装置は、
上記端末装置に固有の上記固有データを生成する固有データ生成部と、
上記署名検証鍵を用いて上記電子署名を検証する署名検証部とを含む、
代理署名システム。
A proxy signature system including a terminal device, a signature generation device, and a signature verification device, wherein the signature generation device generates an electronic signature based on a request from the terminal device;
The terminal device is
A unique calculation unit that performs a calculation specific to the terminal device and outputs a calculation result with respect to data given to the terminal device (hereinafter referred to as specific data) ;
A control unit for erasing the calculation result from the storage unit of the terminal device ,
The signature generation device
A signature key generation unit capable of generating a signature generation key and a signature verification key using the calculation result;
A signature generation unit that generates an electronic signature for the message set by the signature verification apparatus using the signature generation key;
A control unit that performs a process of deleting the calculation result and the signature generation key from the storage unit of the signature generation device,
The signature verification device
A unique data generation unit that generates the unique data unique to the terminal device;
A signature verification unit that verifies the electronic signature using the signature verification key,
Proxy signature system.
請求項1に記載の代理署名システムにおいて、
上記署名生成装置は、
上記署名生成装置の上記署名鍵生成部に替えて、
上記演算結果を乱数で撹乱して得られる情報を用いて署名生成鍵および署名検証鍵を生成可能な署名鍵生成部を含む
ことを特徴とする代理署名システム。
The proxy signature system according to claim 1,
The signature generation device
Instead of the signature key generation unit of the signature generation device,
A proxy signature system comprising a signature key generation unit capable of generating a signature generation key and a signature verification key using information obtained by disturbing the operation result with a random number.
端末装置と、代替端末装置と、署名生成装置と、署名検証装置と、バックアップ装置とを含み、当該端末装置または当該代替端末装置からの要求に基づき当該署名生成装置が電子署名を生成する代理署名システムであって、
上記端末装置は、
当該端末装置に与えられたデータ(以下、第1固有データという)に対して当該端末装置に固有の演算を行い演算結果r1を出力する固有演算部を含み、
上記代替端末装置は、
当該代替端末装置に与えられたデータ(以下、第2固有データという)に対して当該代替端末装置に固有の演算を行い演算結果r2を出力する固有演算部を含み、
上記署名生成装置は、
署名生成鍵および署名検証鍵を生成する署名鍵生成部と、
上記署名生成鍵を分割して得られる3種類の断片のうち少なくとも2種類の断片から上記署名生成鍵を復元可能であるが、3種類の断片のうち1種類の断片から上記署名生成鍵を復元不能な分割方法に従って、上記演算結果r1が上記署名生成鍵の断片の一つとなるように、上記署名生成鍵を3種類の断片r1,u1,v1に分割する分割部と、
上記演算結果r1と上記断片u1を用いて上記署名生成鍵を復元し、復元された上記署名生成鍵を用いて上記署名検証装置が設定したメッセージに対して電子署名を生成する署名生成部と、
上記断片u1と上記断片v1を用いて上記署名生成鍵を復元し、上記分割方法に従って、上記演算結果r2が復元された上記署名生成鍵の断片の一つとなるように、復元された上記署名生成鍵を3種類の断片r2,u2,v2に分割する断片更新部と、
上記演算結果r1と上記演算結果r2と上記署名生成鍵を上記署名生成装置の記憶部から消去する処理を行う制御部と、
上記署名生成鍵の断片u1または/および断片u2を記憶する記憶部を含み、
上記署名検証装置は、
上記端末装置と上記代替端末装置それぞれに固有の上記第1固有データと上記第2固有データを生成する固有データ生成部と、
上記署名検証鍵を用いて上記電子署名を検証する署名検証部とを含み、
上記バックアップ装置は、
上記署名生成鍵の断片v1または/および断片v2を記憶する記憶部を含み、
上記断片更新部による処理が実行された後は、上記代替端末装置からの要求に基づき当該署名生成装置が電子署名を生成する
代理署名システム。
A proxy signature including a terminal device, an alternative terminal device, a signature generation device, a signature verification device, and a backup device, and the signature generation device generates an electronic signature based on a request from the terminal device or the alternative terminal device A system,
The terminal device is
A unique operation unit that performs an operation specific to the terminal device for data given to the terminal device (hereinafter referred to as first unique data) and outputs an operation result r1;
The alternative terminal device is
A unique operation unit that performs an operation specific to the alternative terminal device for data given to the alternative terminal device (hereinafter referred to as second unique data) and outputs an operation result r2,
The signature generation device
A signature key generation unit for generating a signature generation key and a signature verification key;
The signature generation key can be restored from at least two of the three types of fragments obtained by dividing the signature generation key, but the signature generation key is restored from one of the three types of fragments. A dividing unit that divides the signature generation key into three types of fragments r1, u1, and v1, so that the operation result r1 becomes one of the fragments of the signature generation key according to an impossible division method;
A signature generation unit that restores the signature generation key using the operation result r1 and the fragment u1, and generates an electronic signature for the message set by the signature verification device using the restored signature generation key;
Reconstructing the signature generation key using the fragment u1 and the fragment v1, and reconstructing the signature so that the operation result r2 becomes one of the reconstructed signature generation key fragments according to the division method A fragment update unit that divides the key into three types of fragments r2, u2, and v2,
A control unit that performs processing to delete the calculation result r1, the calculation result r2, and the signature generation key from the storage unit of the signature generation device;
A storage unit for storing the signature generation key fragment u1 and / or the fragment u2;
The signature verification device
A unique data generation unit that generates the first unique data and the second unique data unique to the terminal device and the alternative terminal device, respectively;
A signature verification unit that verifies the electronic signature using the signature verification key,
The backup device
A storage unit for storing the signature generation key fragment v1 and / or the fragment v2;
A proxy signature system in which the signature generation device generates an electronic signature based on a request from the alternative terminal device after the processing by the fragment update unit is executed.
請求項3に記載の代理署名システムにおいて、
上記署名生成装置は、
上記署名生成装置の上記分割部に替えて、
上記署名生成鍵を分割して得られる3種類の断片のうち少なくとも2種類の断片から上記署名生成鍵を復元可能であるが、3種類の断片のうち1種類の断片から上記署名生成鍵を復元不能な分割方法に従って、上記演算結果r1を乱数で撹乱して得られる情報s1が上記署名生成鍵の断片の一つとなるように、上記署名生成鍵を3種類の断片s1,u1,v1に分割する分割部と、
上記署名生成部に替えて、
上記演算結果r1を上記乱数で撹乱して得られる情報s1と上記断片u1を用いて上記署名生成鍵を復元し、復元された上記署名生成鍵を用いて上記署名検証装置が設定したメッセージに対して電子署名を生成する署名生成部と、
上記署名生成装置の上記断片更新部に替えて、
上記断片u1と上記断片v1を用いて上記署名生成鍵を復元し、上記分割方法に従って、上記演算結果r2を乱数で撹乱して得られる情報s2が復元された上記署名生成鍵の断片の一つとなるように、復元された上記署名生成鍵を3種類の断片s2,u2,v2に分割する断片更新部とを含む
ことを特徴とする代理署名システム。
In the proxy signature system according to claim 3,
The signature generation device
In place of the dividing unit of the signature generation device,
The signature generation key can be restored from at least two of the three types of fragments obtained by dividing the signature generation key, but the signature generation key is restored from one of the three types of fragments. According to an impossible division method, the signature generation key is divided into three types of fragments s1, u1, and v1 so that the information s1 obtained by disturbing the operation result r1 with a random number becomes one of the fragments of the signature generation key. A dividing part to be
Instead of the signature generator above,
The signature generation key is restored using the information s1 obtained by disturbing the operation result r1 with the random number and the fragment u1, and the message set by the signature verification apparatus using the restored signature generation key A signature generation unit for generating an electronic signature
Instead of the fragment update unit of the signature generation device,
The signature generation key is restored using the fragment u1 and the fragment v1, and the information s2 obtained by disturbing the operation result r2 with a random number is restored according to the division method, A proxy signature system comprising: a fragment update unit that divides the restored signature generation key into three types of fragments s2, u2, and v2.
端末装置と、署名生成装置と、署名検証装置とを含む代理署名システムにおいて、当該端末装置からの要求に基づき当該署名生成装置が電子署名を生成する代理署名方法であって、
上記署名検証装置の固有データ生成部が、上記端末装置に固有の固有データを生成する固有データ生成ステップと、
上記署名検証装置の送信部が、上記端末装置に対して上記固有データを送信する第1固有データ送信ステップと、
上記端末装置の受信部が、上記固有データを受信する第1固有データ受信ステップと、
上記端末装置の固有演算部が、上記固有データに対して当該端末装置に固有の演算を行い演算結果を出力する第1固有演算ステップと、
上記端末装置の送信部が、上記署名生成装置に対して上記演算結果を送信する第1演算結果送信ステップと、
上記署名生成装置の受信部が、上記演算結果を受信する第1演算結果受信ステップと、
上記署名生成装置の署名鍵生成部が、上記演算結果を用いて少なくとも署名検証鍵を生成する第1署名鍵生成ステップと、
上記署名生成装置の送信部が、上記署名検証装置に対して上記署名検証鍵を送信する検証鍵送信ステップと、
上記署名検証装置の受信部が、上記署名検証鍵を受信する検証鍵受信ステップと、
上記署名生成装置の制御部が、上記演算結果を上記署名生成装置の記憶部から消去する処理を行う第1破棄ステップと、
上記署名検証装置の送信部が、上記端末装置に対して上記固有データを送信する第2固有データ送信ステップと、
上記端末装置の受信部が、上記第2固有データ送信ステップにて送信された上記固有データを受信する第2固有データ受信ステップと、
上記端末装置の固有演算部が、上記第2固有データ受信ステップにて受信した上記固有データに対して当該端末装置に固有の演算を行い演算結果を出力する第2固有演算ステップと、
上記端末装置の送信部が、上記署名生成装置に対して上記第2固有演算ステップにて得られた上記演算結果を送信する第2演算結果送信ステップと、
上記署名生成装置の受信部が、上記第2演算結果送信ステップにて送信された上記演算結果を受信する第2演算結果受信ステップと、
上記署名検証装置の送信部が、上記署名生成装置に対してメッセージを送信するメッセージ送信ステップと、
上記署名生成装置の受信部が、上記メッセージを受信するメッセージ受信ステップと、
上記署名生成装置の署名鍵生成部が、上記第2演算結果受信ステップにて受信した上記演算結果を用いて少なくとも署名生成鍵を生成する第2署名鍵生成ステップと、
上記署名生成装置の署名生成部が、上記署名生成鍵を用いて上記メッセージに対して電子署名を生成する署名生成ステップと、
上記署名生成装置の送信部が、上記署名検証装置に対して上記電子署名を送信する署名送信ステップと、
上記署名検証装置の受信部が、上記電子署名を受信する署名受信ステップと、
上記署名生成装置の制御部が、上記演算結果と上記署名生成鍵を上記署名生成装置の記憶部から消去する処理を行う第2破棄ステップと、
上記署名検証装置の署名検証部が、上記署名検証鍵を用いて上記電子署名を検証する署名検証ステップと
を有する代理署名方法。
In a proxy signature system including a terminal device, a signature generation device, and a signature verification device, a proxy signature method in which the signature generation device generates an electronic signature based on a request from the terminal device,
A unique data generation step in which the unique data generation unit of the signature verification device generates unique data unique to the terminal device;
A first unique data transmission step in which a transmission unit of the signature verification device transmits the unique data to the terminal device;
A first unique data receiving step in which the receiving unit of the terminal device receives the unique data;
A first unique calculation step in which the unique calculation unit of the terminal device performs a calculation specific to the terminal device on the unique data and outputs a calculation result;
A first computation result transmission step in which the transmission unit of the terminal device transmits the computation result to the signature generation device;
A first computation result receiving step in which the receiving unit of the signature generation device receives the computation result;
A first signature key generation step in which a signature key generation unit of the signature generation device generates at least a signature verification key using the calculation result;
A verification key transmission step in which the transmission unit of the signature generation device transmits the signature verification key to the signature verification device;
A verification key receiving step in which the receiving unit of the signature verification apparatus receives the signature verification key;
A first discard step in which the control unit of the signature generation device performs a process of deleting the calculation result from the storage unit of the signature generation device;
A second unique data transmission step in which the transmission unit of the signature verification device transmits the unique data to the terminal device;
A second unique data receiving step in which the receiving unit of the terminal device receives the unique data transmitted in the second unique data transmitting step;
A second specific calculation step in which the specific calculation unit of the terminal device performs a calculation specific to the terminal device with respect to the specific data received in the second specific data reception step, and outputs a calculation result;
A second computation result transmission step in which the transmission unit of the terminal device transmits the computation result obtained in the second unique computation step to the signature generation device;
A second calculation result receiving step in which the receiving unit of the signature generation device receives the calculation result transmitted in the second calculation result transmitting step;
A message transmission step in which a transmission unit of the signature verification apparatus transmits a message to the signature generation apparatus;
A message receiving step in which the receiving unit of the signature generating apparatus receives the message;
A second signature key generation step in which a signature key generation unit of the signature generation device generates at least a signature generation key using the calculation result received in the second calculation result reception step;
A signature generation step in which a signature generation unit of the signature generation device generates an electronic signature for the message using the signature generation key;
A signature transmission step in which the transmission unit of the signature generation device transmits the electronic signature to the signature verification device;
A signature receiving step in which the receiving unit of the signature verification apparatus receives the electronic signature;
A second discarding step in which the control unit of the signature generation device performs a process of deleting the calculation result and the signature generation key from the storage unit of the signature generation device;
A proxy signature method, wherein the signature verification unit of the signature verification apparatus includes a signature verification step of verifying the electronic signature using the signature verification key.
請求項5に記載の代理署名方法において、
上記第1署名鍵生成ステップに替えて、
上記署名生成装置の署名鍵生成部が、上記演算結果を乱数で撹乱して得られる情報を用いて少なくとも署名検証鍵を生成する第1署名鍵生成ステップと、
上記第2署名鍵生成ステップに替えて、
上記署名生成装置の署名鍵生成部が、上記第2演算結果受信ステップにて受信した上記演算結果を上記乱数で撹乱して得られる情報を用いて少なくとも署名生成鍵を生成する第2署名鍵生成ステップと
を含むことを特徴とする代理署名方法。
The proxy signing method according to claim 5,
Instead of the first signing key generation step,
A first signature key generation step in which a signature key generation unit of the signature generation device generates at least a signature verification key using information obtained by disturbing the operation result with a random number;
Instead of the second signing key generation step,
Second signature key generation in which the signature key generation unit of the signature generation device generates at least a signature generation key using information obtained by disturbing the calculation result received in the second calculation result receiving step with the random number A surrogate signature method comprising the steps of:
端末装置と、代替端末装置と、署名生成装置と、署名検証装置と、バックアップ装置とを含む代理署名システムにおいて、当該端末装置または当該代替端末装置からの要求に基づき当該署名生成装置が電子署名を生成する代理署名方法であって、
上記署名生成装置の署名鍵生成部が、署名生成鍵および署名検証鍵を生成する署名鍵生成ステップと、
上記署名生成装置の送信部が、上記署名検証装置に対して上記署名検証鍵を送信する検証鍵送信ステップと、
上記署名検証装置の受信部が、上記署名検証鍵を受信する検証鍵受信ステップと、
上記署名検証装置の固有データ生成部が、上記端末装置に固有の第1固有データを生成する第1固有データ生成ステップと、
上記署名検証装置の送信部が、上記端末装置に対して上記第1固有データを送信する第1固有データ送信ステップと、
上記端末装置の受信部が、上記第1固有データを受信する第1固有データ受信ステップと、
上記端末装置の固有演算部が、上記第1固有データに対して当該端末装置に固有の演算を行い演算結果r1を出力する第1固有演算ステップと、
上記端末装置の送信部が、上記署名生成装置に対して上記演算結果r1を送信する第1演算結果送信ステップと、
上記署名生成装置の受信部が、上記演算結果r1を受信する第1演算結果受信ステップと、
上記署名生成装置の分割部が、上記署名生成鍵を分割して得られる3種類の断片のうち少なくとも2種類の断片から上記署名生成鍵を復元可能であるが、3種類の断片のうち1種類の断片から上記署名生成鍵を復元不能な分割方法に従って、上記演算結果r1が上記署名生成鍵の断片の一つとなるように、上記署名生成鍵を3種類の断片r1,u1,v1に分割する分割ステップと、
上記署名生成装置の記憶部が、上記断片u1を記憶する記憶ステップと、
上記署名生成装置の送信部が、上記バックアップ装置に対して上記断片v1を送信する第1断片送信ステップと、
上記バックアップ装置の受信部が、上記断片v1を受信する第1断片受信ステップと、
上記バックアップ装置の記憶部が、上記断片v1を記憶する記憶ステップと、
上記署名生成装置の制御部が、上記演算結果r1と上記署名生成鍵を上記署名生成装置の記憶部から消去する処理を行う第1破棄ステップと、
上記署名検証装置の送信部が、上記端末装置に対して上記第1固有データを送信する第2固有データ送信ステップと、
上記端末装置の受信部が、上記第2固有データ送信ステップにて送信された上記第1固有データを受信する第2固有データ受信ステップと、
上記端末装置の固有演算部が、上記第2固有データ受信ステップにて受信した上記第1固有データに対して当該端末装置に固有の演算を行い演算結果r1を出力する第2固有演算ステップと、
上記端末装置の送信部が、上記署名生成装置に対して上記第2固有演算ステップにて得られた上記演算結果r1を送信する第2演算結果送信ステップと、
上記署名生成装置の受信部が、上記第2演算結果送信ステップにて送信された上記演算結果r1を受信する第2演算結果受信ステップと、
上記署名検証装置の送信部が、上記署名生成装置に対してメッセージを送信するメッセージ送信ステップと、
上記署名生成装置の受信部が、上記メッセージを受信するメッセージ受信ステップと、
上記署名検証装置の署名生成部が、上記第2演算結果受信ステップにて受信した上記演算結果r1と上記署名検証装置の記憶部に記憶されている上記断片u1を用いて上記署名生成鍵を復元し、復元された上記署名生成鍵を用いて上記メッセージに対して電子署名を生成する署名生成ステップと、
上記署名生成装置の送信部が、上記署名検証装置に対して上記電子署名を送信する署名送信ステップと、
上記署名検証装置の受信部が、上記電子署名を受信する署名受信ステップと、
上記署名生成装置の制御部が、上記演算結果r1と上記署名生成鍵を上記署名生成装置の記憶部から消去する処理を行う第2破棄ステップと、
上記署名検証装置の署名検証部が、上記署名検証鍵を用いて上記電子署名を検証する署名検証ステップと、
上記署名検証装置の固有データ生成部が、上記代替端末装置に固有の第2固有データを生成する第2固有データ生成ステップと、
上記署名検証装置の送信部が、上記代替端末装置に対して上記第2固有データを送信する第3固有データ送信ステップと、
上記代替端末装置の受信部が、上記第2固有データを受信する第3固有データ受信ステップと、
上記代替端末装置の固有演算部が、上記第2固有データに対して当該代替端末装置に固有の演算を行い演算結果r2を出力する第3固有演算ステップと、
上記代替端末装置の送信部が、上記署名生成装置に対して上記演算結果r2を送信する第3演算結果送信ステップと、
上記署名生成装置の受信部が、上記演算結果r2を受信する第3演算結果受信ステップと、
上記バックアップ装置の送信部が、上記署名生成装置に対して当該バックアップ装置の記憶部に記憶されている上記断片v1を送信する第2断片送信ステップと、
上記署名生成装置の受信部が、上記断片v1を受信する第2断片受信ステップと、
上記署名生成装置の断片更新部が、当該署名生成装置の記憶部に記憶されている上記断片u1と上記第2断片受信ステップにて受信した上記断片v1を用いて上記署名生成鍵を復元し、上記分割方法に従って、上記演算結果r2が復元された上記署名生成鍵の断片の一つとなるように、復元された上記署名生成鍵を3種類の断片r2,u2,v2に分割する断片更新ステップと、
上記署名生成装置の記憶部が、上記断片u2を記憶する記憶ステップと、
上記署名生成装置の送信部が、上記バックアップ装置に対して上記断片v2を送信する第3断片送信ステップと、
上記バックアップ装置の受信部が、上記断片v2を受信する第3断片受信ステップと、
上記バックアップ装置の記憶部が、上記断片v2を記憶する記憶ステップと、
上記署名生成装置の制御部が、上記演算結果r2と上記署名生成鍵を上記署名生成装置の記憶部から消去する処理を行う第3破棄ステップとを有し、
上記断片更新ステップにおける処理が実行された後は、上記代替端末装置からの要求に基づき当該署名生成装置が電子署名を生成する
代理署名方法。
In a proxy signature system including a terminal device, an alternative terminal device, a signature generation device, a signature verification device, and a backup device, the signature generation device receives an electronic signature based on a request from the terminal device or the alternative terminal device. A proxy signing method to generate,
A signature key generation step in which a signature key generation unit of the signature generation device generates a signature generation key and a signature verification key;
A verification key transmission step in which the transmission unit of the signature generation device transmits the signature verification key to the signature verification device;
A verification key receiving step in which the receiving unit of the signature verification apparatus receives the signature verification key;
A unique data generation unit of the signature verification apparatus that generates first unique data unique to the terminal device;
A first unique data transmission step in which a transmission unit of the signature verification device transmits the first unique data to the terminal device;
A first unique data receiving step in which the receiving unit of the terminal device receives the first unique data;
A first unique calculation step in which a unique calculation unit of the terminal device performs a calculation specific to the terminal device on the first unique data and outputs a calculation result r1;
A first computation result transmission step in which a transmission unit of the terminal device transmits the computation result r1 to the signature generation device;
A reception unit of the signature generation apparatus receiving a first calculation result r1 for receiving the calculation result r1;
The division unit of the signature generation device can restore the signature generation key from at least two types of fragments among the three types of fragments obtained by dividing the signature generation key. The signature generation key is divided into three types of fragments r1, u1, and v1 so that the calculation result r1 becomes one of the fragments of the signature generation key according to a division method in which the signature generation key cannot be recovered from the fragments of A splitting step;
A storage step in which the storage unit of the signature generation device stores the fragment u1,
A first fragment transmission step in which a transmission unit of the signature generation device transmits the fragment v1 to the backup device;
A first fragment receiving step in which the receiving unit of the backup device receives the fragment v1;
A storage step in which the storage unit of the backup device stores the fragment v1, and
A first discard step in which the control unit of the signature generation device performs a process of deleting the calculation result r1 and the signature generation key from the storage unit of the signature generation device;
A second unique data transmission step in which the transmission unit of the signature verification device transmits the first unique data to the terminal device;
A second unique data receiving step in which the receiving unit of the terminal device receives the first unique data transmitted in the second unique data transmitting step;
A second unique calculation step in which the unique calculation unit of the terminal device performs a calculation specific to the terminal device with respect to the first unique data received in the second unique data reception step, and outputs a calculation result r1;
A second computation result transmission step in which the transmission unit of the terminal device transmits the computation result r1 obtained in the second unique computation step to the signature generation device;
A second calculation result receiving step in which the receiving unit of the signature generation device receives the calculation result r1 transmitted in the second calculation result transmitting step;
A message transmission step in which a transmission unit of the signature verification apparatus transmits a message to the signature generation apparatus;
A message receiving step in which the receiving unit of the signature generating apparatus receives the message;
The signature generation unit of the signature verification apparatus restores the signature generation key using the calculation result r1 received in the second calculation result receiving step and the fragment u1 stored in the storage unit of the signature verification apparatus A signature generation step for generating an electronic signature for the message using the restored signature generation key;
A signature transmission step in which the transmission unit of the signature generation device transmits the electronic signature to the signature verification device;
A signature receiving step in which the receiving unit of the signature verification apparatus receives the electronic signature;
A second discarding step in which the control unit of the signature generation device performs a process of deleting the calculation result r1 and the signature generation key from the storage unit of the signature generation device;
A signature verification step in which the signature verification unit of the signature verification apparatus verifies the electronic signature using the signature verification key;
A second unique data generation step in which the unique data generation unit of the signature verification device generates second unique data unique to the alternative terminal device;
A third unique data transmission step in which the transmission unit of the signature verification device transmits the second unique data to the alternative terminal device;
A third unique data receiving step in which the receiving unit of the alternative terminal device receives the second unique data;
A third unique calculation step in which the unique calculation unit of the alternative terminal device performs a calculation specific to the alternative terminal device on the second specific data and outputs a calculation result r2.
A third computation result transmission step in which the transmission unit of the alternative terminal device transmits the computation result r2 to the signature generation device;
A third calculation result receiving step in which the receiving unit of the signature generation device receives the calculation result r2,
A second fragment transmission step in which the transmission unit of the backup device transmits the fragment v1 stored in the storage unit of the backup device to the signature generation device;
A second fragment receiving step in which the receiving unit of the signature generation apparatus receives the fragment v1,
The fragment update unit of the signature generation device restores the signature generation key using the fragment u1 stored in the storage unit of the signature generation device and the fragment v1 received in the second fragment reception step, A fragment update step of dividing the restored signature generation key into three types of fragments r2, u2, and v2 so that the operation result r2 becomes one of the restored fragments of the signature generation key according to the division method; ,
A storage step in which the storage unit of the signature generation device stores the fragment u2, and
A third fragment transmission step in which the transmission unit of the signature generation device transmits the fragment v2 to the backup device;
A third fragment receiving step in which the receiving unit of the backup device receives the fragment v2,
A storage step in which the storage unit of the backup device stores the fragment v2, and
A control unit of the signature generation device includes a third discarding step for performing a process of erasing the calculation result r2 and the signature generation key from the storage unit of the signature generation device;
A proxy signature method in which the signature generation apparatus generates an electronic signature based on a request from the alternative terminal apparatus after the processing in the fragment update step is executed.
請求項7に記載の代理署名方法において、
上記分割ステップに替えて、
上記署名生成装置の分割部が、上記署名生成鍵を分割して得られる3種類の断片のうち少なくとも2種類の断片から上記署名生成鍵を復元可能であるが、3種類の断片のうち1種類の断片から上記署名生成鍵を復元不能な分割方法に従って、上記演算結果r1を乱数で撹乱して得られる情報s1が上記署名生成鍵の断片の一つとなるように、上記署名生成鍵を3種類の断片s1,u1,v1に分割する分割ステップと、
上記署名生成ステップに替えて、
上記署名検証装置の署名生成部が、上記第2演算結果受信ステップにて受信した上記演算結果r1を上記乱数で撹乱して得られる情報s1と上記署名検証装置の記憶部に記憶されている上記断片u1を用いて上記署名生成鍵を復元し、復元された上記署名生成鍵を用いて上記メッセージに対して電子署名を生成する署名生成ステップと、
上記断片更新ステップに替えて、
上記署名生成装置の断片更新部が、上記署名生成装置の記憶部に記憶されている上記断片u1と上記第2断片受信ステップにて受信した上記断片v1を用いて上記署名生成鍵を復元し、上記分割方法に従って、上記演算結果r2を乱数で撹乱して得られる情報s2が復元された上記署名生成鍵の断片の一つとなるように、復元された上記署名生成鍵を3種類の断片s2,u2,v2に分割する断片更新ステップと
を含むことを特徴とする代理署名方法。
The proxy signing method according to claim 7,
Instead of the above division step,
The division unit of the signature generation device can restore the signature generation key from at least two types of fragments among the three types of fragments obtained by dividing the signature generation key. Three types of signature generation keys are used so that information s1 obtained by disturbing the operation result r1 with a random number becomes one of the fragments of the signature generation key according to a division method in which the signature generation key cannot be recovered from the fragments of Splitting step to s1, u1, v1
Instead of the above signature generation step,
The signature generation unit of the signature verification apparatus stores information s1 obtained by disturbing the calculation result r1 received in the second calculation result reception step with the random number and the storage unit of the signature verification apparatus A signature generation step of restoring the signature generation key using the fragment u1 and generating an electronic signature for the message using the restored signature generation key;
Instead of the fragment update step above,
The fragment update unit of the signature generation device restores the signature generation key using the fragment u1 stored in the storage unit of the signature generation device and the fragment v1 received in the second fragment reception step, According to the division method, the restored signature generation key is divided into three types of fragments s2, so that the information s2 obtained by disturbing the operation result r2 with a random number becomes one of the restored signature generation key fragments. and a fragment update step of dividing into u2 and v2.
JP2010116241A 2010-05-20 2010-05-20 Proxy signature system and method Expired - Fee Related JP5513255B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010116241A JP5513255B2 (en) 2010-05-20 2010-05-20 Proxy signature system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010116241A JP5513255B2 (en) 2010-05-20 2010-05-20 Proxy signature system and method

Publications (2)

Publication Number Publication Date
JP2011244321A JP2011244321A (en) 2011-12-01
JP5513255B2 true JP5513255B2 (en) 2014-06-04

Family

ID=45410493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010116241A Expired - Fee Related JP5513255B2 (en) 2010-05-20 2010-05-20 Proxy signature system and method

Country Status (1)

Country Link
JP (1) JP5513255B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11295017B2 (en) * 2017-01-31 2022-04-05 Ford Global Technologies, Llc Over-the-air updates security
JP7409380B2 (en) * 2019-07-24 2024-01-09 日本電気株式会社 Secure calculation server, trail management method and program
JP7323807B2 (en) 2020-01-20 2023-08-09 富士通株式会社 VERIFICATION METHOD, PROGRAM, AND INFORMATION PROCESSING DEVICE

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4508331B2 (en) * 2000-01-07 2010-07-21 新日鉄ソリューションズ株式会社 Authentication agent device, authentication agent method, authentication agent service system, and computer-readable recording medium
JP3793042B2 (en) * 2001-05-14 2006-07-05 日本電信電話株式会社 Electronic signature proxy method, apparatus, program, and recording medium
JP4047691B2 (en) * 2002-10-10 2008-02-13 日本電信電話株式会社 Article ownership confirmation system, article ownership confirmation method, article ownership confirmation program, and recording medium for the program
JP2004140636A (en) * 2002-10-18 2004-05-13 Nec Corp System, server, and program for sign entrustment of electronic document
JP2005050311A (en) * 2003-07-16 2005-02-24 Nippon Telegr & Teleph Corp <Ntt> Method and system for providing service
JP2005123883A (en) * 2003-10-16 2005-05-12 Japan Science & Technology Agency Electronic signature system
EP1612636A1 (en) * 2004-07-01 2006-01-04 Tecnostore AG Method for archiving data with automatic encryption and decryption
JP4701132B2 (en) * 2005-12-07 2011-06-15 株式会社エヌ・ティ・ティ・ドコモ Communication path setting system
JP4791828B2 (en) * 2006-01-16 2011-10-12 株式会社東芝 Group signature system, apparatus, program and method
JP4773941B2 (en) * 2006-12-11 2011-09-14 日本電信電話株式会社 Proxy signature device, signer device, signature verification device, and programs thereof
JP5150203B2 (en) * 2007-10-30 2013-02-20 Kddi株式会社 Attribute authentication system, attribute authentication method and program in the same system
WO2009113444A1 (en) * 2008-03-10 2009-09-17 三菱電機株式会社 Confidential information management device, information processing device, and confidential information management system
US9288216B2 (en) * 2008-06-19 2016-03-15 Qualcomm Incorporated Methods and apparatus for reducing the effectiveness of chosen location attacks in a peer-to-peer overlay network

Also Published As

Publication number Publication date
JP2011244321A (en) 2011-12-01

Similar Documents

Publication Publication Date Title
US10754693B2 (en) Secure transfer of control over computational entities in a distributed computing environment
CN109716375B (en) Block chain account processing method, device and storage medium
WO2021114819A1 (en) Methods for generating and executing smart contract transaction and device
JP6151402B2 (en) Inclusive verification of platform to data center
CN110537346B (en) Safe decentralized domain name system
Kumar et al. An efficient and secure protocol for ensuring data storage security in cloud computing
CN111245597B (en) Key management method, system and equipment
CN111989891A (en) Data processing method, related device and block chain system
WO2019084578A1 (en) Trusted remote proving method, apparatus and system
GB2399906A (en) Delegating authority
Azraoui et al. Stealthguard: Proofs of retrievability with hidden watchdogs
CN111949602A (en) Outsourcing data safety migration method and system supporting integrity verification
CN113411345A (en) Method and device for secure session
WO2022090405A1 (en) Certificate based security using post quantum cryptography
JP2021510954A (en) Computer-implemented methods and systems for obtaining digitally signed data
WO2019110399A1 (en) Two-party signature device and method
CN111314066B (en) Block chain-based data transfer method, terminal and computer-readable storage medium
CN110635899B (en) IBC user key updating method and device
Yu et al. Veridedup: A verifiable cloud data deduplication scheme with integrity and duplication proof
JP5513255B2 (en) Proxy signature system and method
JP6939313B2 (en) Distributed authentication system
El Balmany et al. Secure virtual machine image storage process into a trusted zone-based cloud storage
Karl et al. Cryptonite: A framework for flexible time-series secure aggregation with non-interactive fault recovery
CN116561820B (en) Trusted data processing method and related device
CN113315749B (en) User data uplink, user data using method, anonymous system and storage medium

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20111121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20111121

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140303

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140327

R150 Certificate of patent or registration of utility model

Ref document number: 5513255

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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