JP2006352254A - Distributed electronic signature system, and distributed electronic signature calculation apparatus - Google Patents
Distributed electronic signature system, and distributed electronic signature calculation apparatus Download PDFInfo
- Publication number
- JP2006352254A JP2006352254A JP2005172546A JP2005172546A JP2006352254A JP 2006352254 A JP2006352254 A JP 2006352254A JP 2005172546 A JP2005172546 A JP 2005172546A JP 2005172546 A JP2005172546 A JP 2005172546A JP 2006352254 A JP2006352254 A JP 2006352254A
- Authority
- JP
- Japan
- Prior art keywords
- electronic signature
- distributed
- distributed electronic
- unit
- key
- 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.)
- Withdrawn
Links
Images
Abstract
Description
本発明は,通信路を介して接続された複数の装置で電子署名を分散して処理する分散電子署名装置および分散電子署名システムに関する。 The present invention relates to a distributed electronic signature device and a distributed electronic signature system that distribute and process an electronic signature with a plurality of devices connected via a communication path.
現在,公開鍵暗号を用いて電子署名を,お互いを通信路で接続した複数の装置により分散し算出する分散電子署名システムが知られている(例えば,特許文献1,参照)。 Currently, there is known a distributed electronic signature system that distributes and calculates an electronic signature using public key cryptography by a plurality of devices connected to each other via a communication path (for example, see Patent Document 1).
上記分散電子署名システムには,複数の装置が備わり,当該複数の装置各々は,元の署名鍵を秘密裏に分散した分散電子署名鍵を各々所持し,他の全部の装置と交信しながら自身の持つ分散電子署名鍵を用いて分散電子署名を計算する。 The distributed electronic signature system includes a plurality of devices, and each of the devices has a distributed electronic signature key in which the original signature key is secretly distributed, and communicates with all other devices. The distributed electronic signature is calculated using the distributed electronic signature key of.
電子署名を求める際には,しきい値秘密分散法,放送型の通信路,システム内に備わる各装置と交信可能な秘密通信路等を用いることにより,所定のしきい値以下の不正を行う装置が存在する場合でも,電子署名を生成可能であるか,もしくは,電子署名を生成できなくても不正を行った装置を特定することできる方式である。 When requesting an electronic signature, the threshold secret sharing method, a broadcast-type communication path, a secret communication path that can communicate with each device in the system, etc. are used to perform fraud below a predetermined threshold. Even if a device exists, it is possible to generate an electronic signature, or to identify an unauthorized device even if an electronic signature cannot be generated.
しかしながら,電子署名を求めるためには,分散して計算を行う装置全てと秘密通信を行う必要があるため,通信が煩雑になり,通信コストが膨大になるという問題があった。特に,通信路が無線通信路で,分散して計算する装置が電池駆動の場合には,無線通信の送受信に多くの電力がとられるため,電池の寿命が短くしてしまうといった問題があった。 However, in order to obtain an electronic signature, since it is necessary to perform secret communication with all the devices that perform calculation in a distributed manner, there is a problem that communication becomes complicated and communication cost becomes enormous. In particular, when the communication channel is a wireless channel and the distributed calculation device is battery-powered, there is a problem that the battery life is shortened because a large amount of power is taken for transmission and reception of wireless communication. .
本発明は,上記問題点に鑑みてなされたものであり,本発明の目的は,電子署名を分散して計算を行う装置全てと通信しなくとも,電子署名を求めることが可能な,新規かつ改良された分散電子署名システムを提供することである。 The present invention has been made in view of the above problems, and an object of the present invention is a novel and capable of obtaining an electronic signature without communicating with all the devices that perform the calculation by distributing the electronic signature. It is to provide an improved distributed electronic signature system.
上記課題を解決するため,本発明の第1の観点によれば,1又は2以上の分散電子署名計算装置と,該分散電子署名計算装置各々で分散処理した結果を基にして電子署名を算出する代表分散電子署名計算装置とを備えた分散電子署名システムが提供される。上記分散電子署名システムにおける分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵のうちいずれか一つを保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名の全部又は一部として用いられる分散電子署名を算出するべき乗剰余計算部と;上記分散電子署名を上記代表分散電子署名計算装置に送信する送信部とを備えており,上記代表分散電子署名計算装置は,上記電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵のうちいずれか一つを保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名の一部として用いられる分散電子署名を算出するべき乗剰余計算部と;1又は2以上の分散電子署名計算装置各々で計算された分散電子署名を受信する受信部と;代表分散電子署名計算装置により算出された分散電子署名と上記1又は2以上の分散電子署名計算装置により算出された分散電子署名とを掛け合わせることで上記メッセージに対する電子署名を算出する乗算部とを備えることを特徴としている。なお,上記分散電子署名鍵は,例えば,上記電子署名鍵が複数に分割されたものである場合等でもよい。 In order to solve the above problems, according to the first aspect of the present invention, an electronic signature is calculated based on one or more distributed electronic signature calculation devices and the result of distributed processing by each of the distributed electronic signature calculation devices. A distributed electronic signature system including a representative distributed electronic signature calculation apparatus is provided. The distributed electronic signature calculation apparatus in the distributed electronic signature system includes: a distributed electronic signature key holding unit that holds any one of distributed electronic signature keys in which an electronic signature key for calculating an electronic signature is secretly distributed in plural; A power to calculate a distributed electronic signature used as a whole or a part of the electronic signature based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit; A remainder calculation unit; and a transmission unit that transmits the distributed electronic signature to the representative distributed electronic signature calculation apparatus. The representative distributed electronic signature calculation apparatus includes a plurality of electronic signature keys for calculating the electronic signature. A distributed electronic signature key holding unit that holds any one of the distributed electronic signature keys secretly distributed to each other; a message that is a target of the electronic signature, and a memory that is stored in the distributed electronic signature key holding unit Based on the distributed electronic signature key obtained, a remainder calculation unit for calculating a distributed electronic signature used as a part of the electronic signature; and a distributed electron calculated by each of one or more distributed electronic signature calculation devices A receiver for receiving the signature; and an electronic signature for the message by multiplying the distributed electronic signature calculated by the representative distributed electronic signature calculation apparatus and the distributed electronic signature calculated by the one or more distributed electronic signature calculation apparatuses. And a multiplication unit for calculating a signature. The distributed electronic signature key may be, for example, a case where the electronic signature key is divided into a plurality of parts.
上記課題を解決するために,本発明の別の観点によれば,分散電子署名計算装置が提供される。上記分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵のうちいずれか一つを保持する分散電子署名鍵保持部と;電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる分散電子署名を算出するべき乗剰余計算部と;上記分散電子署名を外部の装置に送信する送信部とを備えることを特徴としている。なお,上記分散電子署名計算装置は,例えばノード等に該当する。 In order to solve the above problems, according to another aspect of the present invention, a distributed electronic signature calculation apparatus is provided. The distributed electronic signature calculation apparatus includes: a distributed electronic signature key holding unit that holds any one of distributed electronic signature keys in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed; Based on the message and the distributed electronic signature key stored in the distributed electronic signature key holding unit, the modular multiplication unit to calculate the distributed electronic signature to be used as a whole or a part to calculate the electronic signature And a transmitting unit that transmits the distributed electronic signature to an external device. The distributed electronic signature calculation apparatus corresponds to, for example, a node.
上記課題を解決するために,本発明の別の観点によれば,分散電子署名計算装置が提供される。上記分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵のうちいずれか一つを保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名の一部として用いられる第1の分散電子署名を算出するべき乗剰余計算部と;1又は2以上の外部の装置各々で計算された第2の分散電子署名を受信する受信部と;上記第1の分散電子署名と上記1又は2以上の第2の分散電子署名とを掛け合わせることで上記メッセージに対する電子署名を算出する乗算部とを備えることを特徴としている。なお,上記分散電子署名計算装置は,例えば,代表ノードに該当する。 In order to solve the above problems, according to another aspect of the present invention, a distributed electronic signature calculation apparatus is provided. The distributed electronic signature calculation apparatus includes: a distributed electronic signature key holding unit that holds any one of distributed electronic signature keys obtained by secretly distributing a plurality of electronic signature keys for calculating an electronic signature; Based on the target message and the distributed electronic signature key stored in the distributed electronic signature key holding unit, a remainder calculation unit for calculating a first distributed electronic signature used as a part of the electronic signature; A receiver for receiving a second distributed electronic signature calculated by each of one or more external devices; and multiplying the first distributed electronic signature by the one or more second distributed electronic signatures; And a multiplier for calculating an electronic signature for the message. The distributed electronic signature calculation apparatus corresponds to, for example, a representative node.
上記分散署名計算装置は,上記乗算部で算出された電子署名を検算する署名検算部を,さらに備えるように構成しても良い。 The distributed signature calculation apparatus may further include a signature verification unit that verifies the electronic signature calculated by the multiplication unit.
上記課題を解決するために,本発明の別の観点によれば,1又は2以上の分散電子署名計算装置と,該分散電子署名計算装置各々で分散処理した結果を基にして電子署名を算出する代表分散電子署名計算装置とを備えた分散電子署名システムが提供される。上記分散電子署名システムにおいて,上記分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;1又は2以上の外部の装置で計算された第2の分散電子署名を受信する受信部と;べき乗剰余計算部により算出された上記第1の分散電子署名と上記受信部により受信された上記第2の分散電子署名とを掛け合わせることで第3の分散電子署名を算出する乗算部と;上記第3の分散電子署名を送信する送信部とを備えており,上記代表分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵のうちいずれか一つを保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名の一部として用いられる第1の分散電子署名を算出するべき乗剰余計算部と;1又は2以上の外部の装置各々で計算された第2の分散電子署名を受信する受信部と;上記第1の分散電子署名と上記1又は2以上の第2の分散電子署名とを掛け合わせることで上記メッセージに対する電子署名を算出する乗算部とを備え,上記分散電子署名計算装置と上記代表分散電子署名計算装置とはツリー型マルチホップネットワークを構成することを特徴としている。 In order to solve the above-described problems, according to another aspect of the present invention, an electronic signature is calculated based on one or more distributed electronic signature calculation devices and the result of distributed processing by each of the distributed electronic signature calculation devices. A distributed electronic signature system including a representative distributed electronic signature calculation apparatus is provided. In the distributed electronic signature system, the distributed electronic signature calculation apparatus includes: a distributed electronic signature key holding unit that holds a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed; A first distributed electronic signature used as a whole or a part for calculating the electronic signature is calculated based on the message to be processed and the distributed electronic signature key stored in the distributed electronic signature key holding unit. A power-residue calculating unit; a receiving unit that receives a second distributed electronic signature calculated by one or more external devices; and the first distributed electronic signature and the receiving calculated by the power-residue calculating unit A multiplication unit that calculates a third distributed electronic signature by multiplying the second distributed electronic signature received by the unit; and a transmission unit that transmits the third distributed electronic signature, representative A distributed electronic signature calculation apparatus includes: a distributed electronic signature key holding unit that holds any one of distributed electronic signature keys in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed; And a remainder calculation unit that should calculate a first distributed electronic signature used as a part of the electronic signature based on the message and the distributed electronic signature key stored in the distributed electronic signature key holding unit; A receiving unit for receiving a second distributed electronic signature calculated by each of one or more external devices; and multiplying the first distributed electronic signature by the one or more second distributed electronic signatures In this manner, the distributed electronic signature calculation apparatus and the representative distributed electronic signature calculation apparatus constitute a tree-type multi-hop network.
上記分散電子署名システムにおいて,上記代表分散電子署名計算装置は,上記ツリー型マルチホップネットワークにおけるルートに少なくとも存在するように構成されても良い。 In the distributed electronic signature system, the representative distributed electronic signature calculation apparatus may be configured to exist at least in a route in the tree-type multihop network.
上記課題を解決するために,本発明の別の観点によれば,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;1又は2以上の外部の装置で計算された第2の分散電子署名を受信する受信部と;上記べき乗剰余計算部により算出された上記第1の分散電子署名と上記受信部により受信された上記第2の分散電子署名とを掛け合わせることで第3の分散電子署名を算出する乗算部と;上記第3の分散電子署名を送信する送信部とを備えることを特徴とした分散電子署名計算装置が提供される。当該分散電子署名計算装置は,例えば,ノードに該当する。 In order to solve the above problems, according to another aspect of the present invention, a distributed electronic signature key holding unit that holds a distributed electronic signature key in which an electronic signature key for calculating an electronic signature is secretly distributed in a plurality of ways; A first distributed electronic signature used as a whole or a part for calculating the electronic signature based on a message to be an electronic signature and a distributed electronic signature key stored in the distributed electronic signature key holding unit. A power-residue calculating unit that calculates the power; a receiving unit that receives a second distributed electronic signature calculated by one or more external devices; and the first distributed electronic signature calculated by the power-residue calculating unit A multiplication unit that calculates a third distributed electronic signature by multiplying the second distributed electronic signature received by the receiving unit; and a transmission unit that transmits the third distributed electronic signature Distributed electrons characterized by Name computing device is provided. The distributed electronic signature calculation apparatus corresponds to, for example, a node.
電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる分散電子署名を算出するべき乗剰余計算部と;乱数を生成する乱数生成部と;上記乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部と;上記分散電子署名及び/又は上記乱数を送信する送信部とを備えることを特徴とした分散電子署名計算装置が提供される。当該分散電子署名計算装置は,例えば,ノードに該当する。 A distributed electronic signature key holding unit that holds a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed; a message that is a target of the electronic signature; and a distributed electronic signature key holding unit Based on the stored distributed electronic signature key, a modular remainder calculation unit for calculating a distributed electronic signature used as a whole or a part for calculating the electronic signature; a random number generating unit for generating a random number; and the random number A distributed electronic signature key updating unit that calculates a distributed electronic signature key using the key and updates the calculated distributed electronic signature key to the calculated distributed electronic signature key; and a transmitting unit that transmits the distributed electronic signature and / or the random number. A distributed electronic signature calculation apparatus is provided. The distributed electronic signature calculation apparatus corresponds to, for example, a node.
上記課題を解決するために,本発明の別の観点によれば,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;1又は2以上の外部の装置で計算された第2の分散電子署名及び/又は1又は2以上の外部の装置で生成された乱数を受信する受信部と;上記べき乗剰余計算部で算出された第1の分散電子署名と上記受信部から得られた第2の分散電子署名とを掛け合わせることで電子署名を算出する乗算部と;上記受信部から得られた乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部とを備えることを特徴とし分散電子署名計算装置が提供される。なお,当該分散電子署名計算装置は,例えば,代表ノード等に該当する。 In order to solve the above problems, according to another aspect of the present invention, a distributed electronic signature key holding unit that holds a distributed electronic signature key in which an electronic signature key for calculating an electronic signature is secretly distributed in a plurality of ways; First distributed electrons used as a whole or a part for calculating the electronic signature based on the message to be subjected to the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit A modular multiplication unit for calculating a signature; a receiving unit for receiving a second distributed electronic signature calculated by one or more external devices and / or a random number generated by one or more external devices; A multiplication unit that calculates an electronic signature by multiplying the first distributed electronic signature calculated by the power-residue calculation unit and a second distributed electronic signature obtained from the reception unit; obtained from the reception unit; Distributed electronic station using the random number Calculating a key feature a dispersed electronic signature computing device that includes a distributed electronic signature key updating unit that updates the distributed electronic signature key issued the calculated is provided. The distributed electronic signature calculation apparatus corresponds to, for example, a representative node.
上記分散署名計算装置は,上記乗算部で算出された電子署名を検算する署名検算部を,さらに備えるように構成しても良い。 The distributed signature calculation apparatus may further include a signature verification unit that verifies the electronic signature calculated by the multiplication unit.
上記課題を解決するために,本発明の別の観点によれば,1又は2以上の分散電子署名計算装置と,該分散電子署名計算装置各々で分散処理した結果を基にして電子署名を算出する代表分散電子署名計算装置とを備えた分散電子署名システムが提供される。上記分散電子署名システムにおいて,上記分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる分散電子署名を算出するべき乗剰余計算部と;乱数を生成する乱数生成部と;上記乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部と;上記分散電子署名及び/又は上記乱数を送信する送信部とを備え,上記代表分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;1又は2以上の上記分散電子署名計算装置で計算された第2の分散電子署名及び/又は該分散電子署名計算装置で生成された乱数を受信する受信部と;べき乗剰余計算部で算出された第1の分散電子署名と,上記受信部から得られた第2の分散電子署名とを掛け合わせることで電子署名を算出する乗算部と;上記受信部から得られた乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部とを備えることを特徴としている。 In order to solve the above-described problems, according to another aspect of the present invention, an electronic signature is calculated based on one or more distributed electronic signature calculation devices and the result of distributed processing by each of the distributed electronic signature calculation devices. A distributed electronic signature system including a representative distributed electronic signature calculation apparatus is provided. In the distributed electronic signature system, the distributed electronic signature calculation apparatus includes: a distributed electronic signature key holding unit that holds a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed; Based on the message to be processed and the distributed electronic signature key stored in the distributed electronic signature key holding unit, the remainder to calculate the distributed electronic signature used as a whole or a part for calculating the electronic signature A calculation unit; a random number generation unit that generates a random number; a distributed electronic signature key update unit that calculates a distributed electronic signature key using the random number and updates the calculated distributed electronic signature key; and the distributed electronic signature and And / or a transmission unit that transmits the random number, wherein the representative distributed electronic signature calculation apparatus includes a distributed electronic signature key that holds a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed. In order to calculate the electronic signature based on the signature key holding unit; the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit. A power residue calculation unit for calculating the first distributed electronic signature to be used; and one or more second distributed electronic signatures calculated by the distributed electronic signature calculation device and / or generated by the distributed electronic signature calculation device A receiving unit that receives a random number; a multiplying unit that calculates an electronic signature by multiplying the first distributed electronic signature calculated by the power-residue calculating unit and the second distributed electronic signature obtained from the receiving unit And a distributed electronic signature key update unit that calculates a distributed electronic signature key using a random number obtained from the receiving unit and updates the calculated distributed electronic signature key.
上記課題を解決するために,本発明の別の観点によれば,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;第1の乱数を生成する乱数生成部と;上記第1の乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部と;1又は2以上の外部の装置で計算された第2の分散電子署名及び/又は該外部の装置で生成された第2の乱数を受信する受信部と;上記べき乗剰余計算部で算出された上記第1の分散電子署名と,上記受信部から得られた上記第2の分散電子署名とを掛け合わせることで第3の分散電子署名を算出する乗算部と;上記第1の乱数と上記受信部から得られた上記第2の乱数とを足し合わせることで第3の乱数を生成する加算部と;上記第3の分散電子署名及び/又は上記第3の乱数を送信する送信部とを備えたことを特徴とした分散電子署名計算装置が提供される。当該分散電子署名計算装置は,例えば,ノード等に相当する。 In order to solve the above problems, according to another aspect of the present invention, a distributed electronic signature key holding unit that holds a distributed electronic signature key in which an electronic signature key for calculating an electronic signature is secretly distributed in a plurality of ways; First distributed electrons used as a whole or a part for calculating the electronic signature based on the message to be subjected to the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit A modular remainder calculation unit for calculating a signature; a random number generation unit for generating a first random number; a distribution for calculating a distributed electronic signature key using the first random number and updating the calculated distributed electronic signature key An electronic signature key updating unit; a receiving unit that receives a second distributed electronic signature calculated by one or more external devices and / or a second random number generated by the external device; and the power residue The first distributed electronic station calculated by the calculation unit And a multiplication unit that calculates a third distributed electronic signature by multiplying the second distributed electronic signature obtained from the receiving unit; and the first random number and the first obtained from the receiving unit. A distribution unit comprising: an addition unit that generates a third random number by adding two random numbers; and a transmission unit that transmits the third distributed electronic signature and / or the third random number An electronic signature calculation device is provided. The distributed electronic signature calculation apparatus corresponds to, for example, a node.
上記課題を解決するために,本発明の別の観点によれば,1又は2以上の分散電子署名計算装置と,該分散電子署名計算装置各々で分散処理した結果を基にして電子署名を算出する代表分散電子署名計算装置とを備えた分散電子署名システムが提供される。上記分散電子署名システムにおいて,上記分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;第1の乱数を生成する乱数生成部と;上記第1の乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部と;1又は2以上の外部の装置で計算された第2の分散電子署名及び/又は該外部の装置で生成された第2の乱数を受信する受信部と;上記べき乗剰余計算部で算出された上記第1の分散電子署名と,上記受信部から得られた上記第2の分散電子署名とを掛け合わせることで第3の分散電子署名を算出する乗算部と;上記第1の乱数と上記受信部から得られた上記第2の乱数とを足し合わせることで第3の乱数を生成する加算部と;上記第3の分散電子署名及び/又は上記第3の乱数を送信する送信部とを備えており,上記代表分散電子署名計算装置は,上記電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;上記電子署名の対象とするメッセージと,上記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;1又は2以上の外部の装置で計算された第2の分散電子署名及び/又は1又は2以上の外部の装置で生成された乱数を受信する受信部と;上記べき乗剰余計算部で算出された第1の分散電子署名と上記受信部から得られた第2の分散電子署名とを掛け合わせることで署名を算出する乗算部と;上記受信部から得られた乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部とを備えており,上記分散電子署名システムは,ツリー型マルチホップネットワークで構成されることを特徴としている。 In order to solve the above-described problems, according to another aspect of the present invention, an electronic signature is calculated based on one or more distributed electronic signature calculation devices and the result of distributed processing by each of the distributed electronic signature calculation devices. A distributed electronic signature system including a representative distributed electronic signature calculation apparatus is provided. In the distributed electronic signature system, the distributed electronic signature calculation apparatus includes: a distributed electronic signature key holding unit that holds a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed; A first distributed electronic signature used as a whole or a part for calculating the electronic signature is calculated based on the message to be processed and the distributed electronic signature key stored in the distributed electronic signature key holding unit. A modular remainder calculation unit to be performed; a random number generation unit that generates a first random number; a distributed electronic signature key that calculates a distributed electronic signature key using the first random number and updates the calculated distributed electronic signature key An updating unit; a receiving unit that receives a second distributed electronic signature calculated by one or more external devices and / or a second random number generated by the external device; and a power residue calculation unit The calculated first A multiplication unit that calculates a third distributed electronic signature by multiplying the distributed electronic signature and the second distributed electronic signature obtained from the receiving unit; and obtained from the first random number and the receiving unit. An addition unit that generates a third random number by adding the second random number; and a transmission unit that transmits the third distributed electronic signature and / or the third random number. The representative distributed electronic signature calculation apparatus includes: a distributed electronic signature key holding unit that holds a distributed electronic signature key in which a plurality of electronic signature keys for calculating the electronic signature are secretly distributed; a message that is a target of the electronic signature; , A remainder calculation unit for calculating a first distributed electronic signature used as a whole or a part of the electronic signature based on the distributed electronic signature key stored in the distributed electronic signature key holding unit; One or more external devices A receiving unit that receives the calculated second distributed electronic signature and / or a random number generated by one or more external devices; the first distributed electronic signature calculated by the power-residue calculating unit and the reception A multiplication unit that calculates a signature by multiplying the second distributed electronic signature obtained from the unit; a distributed electronic signature key is calculated using a random number obtained from the receiving unit, and the calculated distributed electron A distributed electronic signature key updating unit for updating the signature key, and the distributed electronic signature system is configured by a tree-type multi-hop network.
上記分散電子署名システムにおいて,上記代表分散電子署名計算装置は,上記ツリー型マルチホップネットワークにおけるルートに少なくとも存在するように構成されても良い。 In the distributed electronic signature system, the representative distributed electronic signature calculation apparatus may be configured to exist at least in a route in the tree-type multihop network.
以上説明したように,本発明によれば,システム内に存在する各装置と通信を行わなくても各装置で計算した分散電子署名を基にして,代表する装置が一括して計算すれば電子署名を求めることができるため,通信トラフィックを大幅に低減し,装置に対する消費電力を抑えることができる。 As described above, according to the present invention, the electronic device can be electronically calculated by a representative device collectively based on the distributed electronic signature calculated by each device without communicating with each device existing in the system. Since the signature can be obtained, communication traffic can be greatly reduced, and power consumption for the apparatus can be suppressed.
以下,本発明の好適な実施の形態について,添付図面を参照しながら詳細に説明する。なお,以下の説明及び添付図面において,略同一の機能及び構成を有する構成要素については,同一符号を付することにより,重複説明を省略する。 DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, preferred embodiments of the invention will be described in detail with reference to the accompanying drawings. In the following description and the accompanying drawings, components having substantially the same functions and configurations are denoted by the same reference numerals, and redundant description is omitted.
まず,本実施形態で使用するRSA署名について説明する。署名鍵(又は,秘密鍵)をd,検証鍵(又は,公開鍵)をeおよびn,署名したいメッセージをmとすると,RSA署名s(又は,電子署名s)は,以下,式1に示すような計算を行う。なお,上記eとnとの関係は,ed=1(mod λ(n))となっている。また,以下,説明する実施の形態では,上記署名鍵が秘密鍵,検証鍵が公開鍵である場合を例に挙げて説明するが,かかる例に限定されない。
First, the RSA signature used in this embodiment will be described. Assuming that the signature key (or private key) is d, the verification key (or public key) is e and n, and the message to be signed is m, the RSA signature s (or electronic signature s) is expressed as shown in
s=h(m)d (mod n) …(式1) s = h (m) d (mod n) (Formula 1)
ここで,上記h()は,一方向性ハッシュ関数と呼ばれる関数であり,このハッシュ関数によって計算されたハッシュ値から,元の値を求めることが事実上不可能であって,異なる値からは同じハッシュ値とならない。つまり,ハッシュ関数は,h(x)=h(y),(x≠y)となるようなx,yを求めることが困難な関数である。 Here, h () is a function called a one-way hash function, and it is practically impossible to obtain the original value from the hash value calculated by this hash function. The hash value is not the same. That is, the hash function is a function in which it is difficult to obtain x and y such that h (x) = h (y), (x ≠ y).
また,λ(n)は,nのCarmichael関数(カーマイケル関数)である。当該Carmichael関数は,以下,式2〜式4に示すように定義される。
Also, λ (n) is a Carmichael function (Carmichael function) of n. The Carmichael function is defined as shown in
上記Carmichael関数は,n=2e0p1 e1p2 e2…pr er(p1,p2,…,prは異なる奇素数)のとき,
λ(n)=LCM(λ(2e0),φ(p1 e1),…,φ(pr er)) …(式2)
φ(pi ei)=pi (ei−1)(pi−1) (i=1,…,r) …(式3)
λ(2t)=2(t−1) (t<3),λ(2t)=2(t−2) (t≧3)…(式4)
と定義されている。
The Carmichael function, n = 2 e0 p 1 e1 p 2 e2 ... p r er (
λ (n) = LCM (λ (2 e0 ), φ (p 1 e1 ),..., φ (p r er )) (Formula 2)
φ (p i ei) = p i (ei-1) (p i -1) (i = 1, ..., r) ... ( Equation 3)
λ (2 t ) = 2 (t−1) (t <3), λ (2 t ) = 2 (t−2) (t ≧ 3) (Equation 4)
It is defined as
なお,RSA署名では,nが2の素数pと2の素数qの積である場合を例に挙げて説明するため,以下の式5に示すようになる。
In the RSA signature, since the case where n is a product of a prime number p of 2 and a prime number q of 2 is described as an example, the following
λ(n)=LCM(p−1,q−1) …(式5) λ (n) = LCM (p−1, q−1) (Formula 5)
メッセージmと電子署名sを受け取った場合,当該電子署名sとメッセージmとを基にして,電子署名の検証を行うことができる。以下,当該電子署名を基礎とし,本実施の形態にかかる分散的な電子署名について詳細に説明する。 When the message m and the electronic signature s are received, the electronic signature can be verified based on the electronic signature s and the message m. Hereinafter, the distributed electronic signature according to the present embodiment will be described in detail based on the electronic signature.
(第1の実施形態について)
第1の実施形態にかかる分散電子署名システムでは,まず,複数の装置(以下,ノードと呼ぶ)が秘密鍵dを分散的に保持し,分散的に電子署名を計算する。ノード自身を除く他のノード全てと通信することなく,各ノードは,まずバラバラに分散する電子署名(又は,分散電子署名)を生成する。
(About the first embodiment)
In the distributed electronic signature system according to the first embodiment, first, a plurality of devices (hereinafter referred to as nodes) hold secret keys d in a distributed manner and calculate electronic signatures in a distributed manner. Without communicating with all the other nodes except the node itself, each node first generates an electronic signature (or distributed electronic signature) that is distributed in a scattered manner.
上記各ノードで生成された分散電子署名を基に,最終的な電子署名を算出するノード(以下,代表ノードと呼ぶ)に,それらの分散電子署名を送信することで,電子署名を得ることができる。 An electronic signature can be obtained by transmitting the distributed electronic signature to a node (hereinafter referred to as a representative node) that calculates a final electronic signature based on the distributed electronic signature generated at each of the nodes. it can.
ここで,図1を参照しながら,第1の実施の形態にかかる分散電子署名システムについて説明する。図1は,第1の実施形態に係る分散電子署名システムの概略を示す説明図である。 Here, the distributed electronic signature system according to the first embodiment will be described with reference to FIG. FIG. 1 is an explanatory diagram showing an outline of a distributed electronic signature system according to the first embodiment.
図1に示すように,第1の実施の形態に係る分散電子署名システム800には,ノードU1〜ノードU5のように,1又は2台以上のノード10(10−1〜10−5)と,最終的な電子署名を算出する代表装置である代表ノード13とが備わる。
As shown in FIG. 1, the distributed
分散電子署名システム800には,図1では5台のノード10−1〜ノード10−5が備わる場合を示しているが,ノード10がN台(N≧1)備わる場合でも可能である。なお,ノード10−1〜ノード10−5のノードを各々ノートU1,ノードU2,…,ノードUNで表すとする。
Although the distributed
また,代表ノード13をノードU0で表すとするが,ノードU0は,ノードU1,ノードU2,…,ノードUNよりも代表ノードU0のほうが計算資源(計算能力,メモリ量,電源等)が優れている,例えば,サーバ装置等を例示することができるが,かかる例に限定されない。
Although denote the
上記ノード10は,少なくとも他のノード10または代表ノード13とデータを送受信することが可能な通信機能,分散電子署名等を計算する計算機能を備えたデバイスであれば,如何なる装置でも実施可能であるが,ノード10は,消費電力が低く,装置のサイズを極力小さくすることができる,例えば,電池駆動可能な装置がより好ましい。
The node 10 can be implemented by any device as long as it has a communication function capable of transmitting / receiving data to / from at least another node 10 or the
また,上記代表ノード13は,ノード10と同様に,各ノード10とデータ通信可能な通信機能を備え,ノード10からの分散電子署名を基に電子署名を求める計算機能などを備えた,例えば,サーバ装置などを例に挙げることができる。
The
上記ノード10又は代表ノード13を相互にデータ通信するための通信網は,例えば,Ethernet(登録商標)による同軸ケーブル又はツイストペアケーブル,もしくはIEEE802.11bなどによる無線など,有線無線を問わない。
The communication network for mutual data communication between the node 10 or the
なお,上記説明したように,第1の実施の形態にかかる分散電子署名システムでは,電子署名(又は,RSA署名)の秘密鍵をd,公開鍵をe及びn(ed=1(mod λ(n)))と表すことにする。 As described above, in the distributed electronic signature system according to the first embodiment, the private key of the electronic signature (or RSA signature) is d, the public key is e and n (ed = 1 (mod λ ( n))).
また,ノードU1,ノードU2,…,ノードUN,および,代表ノードU0は,元の秘密鍵dを秘密裏に分散(又は,秘密分散)した分散秘密鍵d1,分散秘密鍵d2,…,分散秘密鍵dN,および,分散秘密鍵d0を保持している。なお,本実施形態において秘密分散とは,例えば,秘密情報を複数の分散情報に符号化する手法,または,秘密鍵を分散して管理する手法などのことである。また,上記分散秘密鍵di(i=0,1,2,3,…)は,秘密鍵dが秘密分散されたものであるが,単に秘密鍵dが分割されたものであってもよい。 In addition, the node U 1 , the node U 2 ,..., The node U N , and the representative node U 0 are distributed secret keys d 1 , distributed secret keys obtained by secretly distributing (or secret sharing) the original secret key d. d 2 ,..., a distributed secret key d N , and a distributed secret key d 0 are held. In this embodiment, secret sharing refers to, for example, a technique for encoding secret information into a plurality of pieces of shared information, or a technique for distributing and managing secret keys. Further, the distributed secret key d i (i = 0, 1, 2, 3,...) Is a secret key d that is secretly distributed. However, the secret key d may be simply divided. .
さらに,上記各分散秘密鍵d1,分散秘密鍵d2,…,分散秘密鍵dNと元の秘密鍵dとの関係は,以下,式6に示すようになる。 Furthermore, the relationship between each of the distributed secret key d 1 , the distributed secret key d 2 ,..., The distributed secret key d N and the original secret key d is as shown in Equation 6 below.
d=d0+d1+d2+…+dN (mod λ(n)) …(式6) d = d 0 + d 1 + d 2 +... + d N (mod λ (n)) (Expression 6)
なお,ノードU1,ノードU2,…,ノードUN,および代表ノードU0の性能(計算能力等)に応じて,分散秘密鍵のビット長など,分散秘密鍵の値の大きさを調節することが可能である。 The size of the value of the distributed secret key, such as the bit length of the distributed secret key, is adjusted according to the performance (calculation capability, etc.) of the node U 1 , node U 2 ,..., Node U N , and representative node U 0 Is possible.
電子署名の対象とするメッセージをmとすると,ノードU1,ノードU2,…,ノードUNは,以下の式7に示す計算を実行することで求められる分散電子署名si(i=1,…,N)を代表ノードU0に送信する。 Assuming that the message to be subjected to the electronic signature is m, the node U 1 , the node U 2 ,..., The node UN have the distributed electronic signature s i (i = 1) obtained by executing the calculation shown in the following Expression 7. , ..., to send N) to the representative node U 0.
si=h(m)di (mod n) (i=1,…,N) …(式7) s i = h (m) di (mod n) (i = 1,..., N) (Expression 7)
代表ノードU0は,まず,下記式8に示す計算を実行し,自己(代表ノードU0)の分散電子署名s0を求める。 First, the representative node U 0 executes the calculation shown in the following equation 8 to obtain the distributed electronic signature s 0 of itself (representative node U 0 ).
s0=h(m)d0 (mod n) …(式8) s 0 = h (m) d0 (mod n) (Formula 8)
分散電子署名s0が求まると,代表ノードU0は,さらにノード10から受信済みの分散電子署名s1,分散電子署名s2,…,分散電子署名sNを掛け合わせ,さらに代表ノードU0自身が生成した分散電子署名s0を式9に示すように,掛け合わせることにより,代表ノードU0は最終的な電子署名sを求めることができる。 When the distributed electronic signature s 0 is obtained, the representative node U 0 further multiplies the distributed electronic signature s 1 , distributed electronic signature s 2 ,..., Distributed electronic signature s N received from the node 10, and further represents the representative node U 0. By multiplying the distributed electronic signature s 0 generated by itself as shown in Expression 9, the representative node U 0 can obtain the final electronic signature s.
s=s0s1s2…sN (mod n) …(式9) s = s 0 s 1 s 2 ... s N (mod n) (Expression 9)
(ノード10について)
次に,図2を参照しながら,第1の実施の形態にかかるノード10(ノードUi(i=1,2,…,N))に備わる分散電子署名に係る計算を実行する分散電子署名計算部100について説明する。なお,図2は,第1の実施の形態にかかるノード10に備わる分散電子署名計算部100の概略的な構成を示すブロック図である。
(About node 10)
Next, with reference to FIG. 2, the distributed electronic signature that executes the calculation related to the distributed electronic signature provided in the node 10 (node U i (i = 1, 2,..., N)) according to the first embodiment. The calculation unit 100 will be described. FIG. 2 is a block diagram illustrating a schematic configuration of the distributed electronic signature calculation unit 100 included in the node 10 according to the first embodiment.
図2に示すように,ノード10に設けられた分散電子署名計算部100には,分散秘密鍵を記憶する分散秘密鍵保持部101と,べき乗剰余計算部102と,分散電子署名を外部のノード10又は代表ノード13に送信する送信部103とが備わっている。
As shown in FIG. 2, the distributed electronic signature calculation unit 100 provided in the node 10 includes a distributed secret
上記分散秘密鍵保持部101は,ノードUiの分散秘密鍵di(i=1,2,…,N)を記憶する記憶装置である。例えば,ノードU1の場合,分散秘密鍵保持部101は,分散秘密鍵d1を記憶している。
The distributed secret
べき乗剰余計算部102は,電子署名したいメッセージmおよび分散秘密鍵保持部101に格納された分散秘密鍵di(i=1,2,…,N)を入力し,上記式7に示す分散電子署名siを計算し,送信部103に出力する。
The power-
なお,本実施形態に係るメッセージmは,例えば,インターネット等の通信路を介して受信したものであってもよいし,予めノード10に備わる分散秘密鍵保持部101等の記憶デバイスに記憶されたものであってもよい。ただし,メッセージmは,予め分散電子署名システム800で合意の取れた方式でメッセージmを各ノードUi(i=1,2,…,N)および代表ノードU0が取得できるものとする。
Note that the message m according to the present embodiment may be received via a communication path such as the Internet, or stored in a storage device such as the distributed secret
上記送信部103は,べき乗剰余計算部102から計算結果である分散電子署名siを受け取り,それを代表ノードU0に送信する。このときの通信路は,直接代表ノードへ送信するような形態(図1に示す(1)の矢印)でも可能であり,マルチホップ通信路のように,他のノード10を経由しデータを送信するような形態の場合でも可能である。
The
なお,上記マルチホップ通信路とは,例えば,図1の場合,ノードU1から代表ノードU0に分散電子署名s1を送信するとした場合,まずノードU4に送信し,さらにノードU4が代表ノードU0に転送するような形態である(図1に示す(2)の2つの矢印)。 Incidentally, the above multi-hop communication path, for example, the case of FIG. 1, when the send distributed digital signature s 1 to the representative node U 0 from node U 1, first sends to the node U 4, further nodes U 4 The configuration is such that it is transferred to the representative node U 0 (two arrows in (2) shown in FIG. 1).
次に,図3を参照しながら,第1の実施形態にかかる代表ノード13に備わる分散電子署名に係る計算を実行する分散電子署名計算部200について説明する。図3は,第1の実施の形態にかかる代表ノード13に備わる分散電子署名計算部200の概略的な構成を示すブロック図である。
Next, the distributed electronic signature calculation unit 200 that executes the calculation related to the distributed electronic signature provided in the
図2に示すように,代表ノード13に設けられた分散電子署名計算部200には,分散秘密鍵保持部201と,べき乗剰余計算部202と,乗算部203と,受信部204とが備わっている。
As shown in FIG. 2, the distributed electronic signature calculation unit 200 provided in the
上記分散秘密鍵保持部201は,代表ノード103(ノードU0)の分散秘密鍵d0を記憶する記憶装置である。例えば,分散秘密鍵保持部201は,EEPROM,RAM等のメモリを例示することができるが,かかる例に限定されない。
The distributed secret
上記べき乗剰余計算部202は,電子署名したいメッセージmと分散秘密鍵保持部201に格納された分散秘密鍵d0とを入力し,上記式8に示す分散電子署名s0を計算して,乗算部203に出力する。
The modular
なお,上記記載のように,メッセージmは,ノードU1,ノードU2,…,ノードUNの場合と同様,通信路を通して受信したものであってもよいし,予め代表ノード103に備わる分散秘密鍵保持部201などの記憶装置に格納されているもの等の場合でもよいが,予め分散電子署名システム800で合意の取れた方式でメッセージmを各ノードUi(i=1,2,…,N)および代表ノードU0が取得できるものとする。
Note that, as described above, the message m is the node U 1, node U 2, ..., as in the case of the node U N, may be those received through a communication path, provided in
上記乗算部203は,べき乗剰余計算部202より計算結果である分散電子署名s0を受け取り,さらに受信部204が受信したノード10からの分散電子署名si(i=1,2,…,N)を受け取り,上記式9に示す乗算を実行し,その結果である電子署名sを出力する。
The
上記受信部204は,各ノードUiから分散電子署名si(i=1,2,…,N)を受信し,その受信した分散電子署名si(i=1,2,…,N)を乗算部203に出力する。なお,乗算部203から出力された電子署名sは,メッセージを認証する認証部(図示せず。)等に伝送される。
The receiving
(分散電子署名の動作について)
次に,図4を参照しながら,第1の実施の形態にかかる分散電子署名に関する計算を実行するノード10の動作について説明する。なお,図4は,第1の実施の形態にかかる分散電子署名に関する計算を実行するノード10の動作の概略を示すフローチャートである。
(About operation of distributed electronic signature)
Next, the operation of the node 10 that executes the calculation related to the distributed electronic signature according to the first embodiment will be described with reference to FIG. FIG. 4 is a flowchart showing an outline of the operation of the node 10 that executes the calculation related to the distributed electronic signature according to the first embodiment.
図4に示すように,まず,各ノードUi(i=1,2,…,N)は,電子署名したいメッセージmに対し,各ノード10自身が保持する分散秘密鍵di(i=1,2,…,N)を用いて分散電子署名siを,上記式7に示すように生成する(S301)。 As shown in FIG. 4, first, each node U i (i = 1, 2,..., N) receives a distributed secret key d i (i = 1) held by each node 10 itself for a message m to be digitally signed. , 2,..., N), a distributed electronic signature s i is generated as shown in Equation 7 (S301).
なお,図4に示す上記分散電子署名siを生成する(S301)のは,図2に示すように,べき乗剰余計算部102による動作である。
The generation of the distributed electronic signature s i shown in FIG. 4 (S301) is an operation performed by the modular
次に,ノード10に備わる送信部103は,上記べき乗剰余計算部102により生成された分散電子署名siを代表ノードU0に送信する(S302)。
Next, the
次に,図5を参照しながら,第1の実施形態の分散電子署名を実行する代表ノードU0の動作について説明する。なお,図5は,第1の実施の形態にかかる分散電子署名に関する計算を実行する代表ノード13の動作の概略を示すフローチャートである。
Next, the operation of the representative node U 0 that executes the distributed electronic signature of the first embodiment will be described with reference to FIG. FIG. 5 is a flowchart showing an outline of the operation of the
図5に示すように,まず代表ノードU0は,電子署名するメッセージmに対し,代表ノードU0自身が保持している分散秘密鍵d0を用いて分散電子署名s0を上記式8に示すように求める(S401)。 As shown in FIG. 5, first, the representative node U 0 uses the distributed secret key d 0 held by the representative node U 0 itself for the message m to be digitally signed, and sets the distributed electronic signature s 0 to Equation 8 above. Obtained as shown (S401).
なお,図5に示す分散秘密鍵d0を用いて分散電子署名s0を生成する処理(S401)は,上記説明したように,図3に示す代表ノード13に備わるべき乗剰余計算部202による動作である。
The processing of generating a distributed digital signature s 0 using distributed secret key d 0 as shown in FIG. 5 (S401), as described above, operation of the modular
また,図5に示すように,分散電子署名s0を生成する処理(S401)と平行して,各ノードUi(i=1,2,…,N)から分散電子署名siを受信する(S402)。 Further, as shown in FIG. 5, in parallel with the process of generating the distributed electronic signature s 0 (S401), the distributed electronic signature s i is received from each node U i (i = 1, 2,..., N). (S402).
なお,各ノード10から分散電子署名siを受信する処理(S402)は,図3に示す受信部204による動作である。
The process of receiving the distributed electronic signature s i from each node 10 (S402) is an operation by the receiving
図5に示すように,ステップS401とステップS402の処理は,略同時並行して実行されるように図示されているが,必ずしも同時進行の場合に限定されない。例えば,ステップS401の終了後にステップS402を実行する,あるいは,ステップS402の終了後にステップS401を実行する場合でも実施可能である。 As shown in FIG. 5, the processes of step S401 and step S402 are illustrated as being executed substantially simultaneously in parallel, but are not necessarily limited to simultaneous progress. For example, the present invention can be implemented even when step S402 is executed after step S401 is completed, or when step S401 is executed after step S402 is completed.
上記ステップS401とステップS402とが終了すると,次に,ステップS401で得られた分散電子署名s0と,上記ステップS402で受信した分散電子署名si(i=1,2,…,N)とを掛け合わせ,上記式9に示すように電子署名sを生成する(S403)。 When the above steps S401 and step S402 is completed, the dispersion digital signature s 0 obtained in step S401, the dispersion was received in step S402 the electronic signature s i (i = 1,2, ... , N) and And an electronic signature s is generated as shown in the above equation 9 (S403).
なお,上記電子署名sを生成する処理(S403)は,図3に示す代表ノード103に備わる乗算部203による動作である。
The processing for generating the electronic signature s (S403) is an operation by the
以上,第1の実施の形態にかかる分散電子署名システム800の説明を終了するが,かかる分散電子署名システム800によって,以下に示すような優れた効果が存在する。
(1)分散電子署名鍵d1〜分散電子署名鍵dN等のように,秘密鍵を各ノード10で秘密裏に分散して保持することで,分散計算する各々のノード10が他のノード10と互いに通信せずに,分散電子署名を生成し,代表ノード13にそれらの分散電子署名を送信することにより,悪意のある不正ノードが仮に存在し虚偽の分散電子署名を代表ノード13に送信したとしても,代表ノード13は真正なる署名を生成することできず,その結果,不正な電子署名である判断することができる。すなわち,セキュリティ上不可欠な不正者によって虚偽の電子署名が作成されてしまうおそれを防止することができる。
(2)不正ノードがどこに存在するのかを判断することはできないが,最低限のセキュリティを確保した上,さらに全ノード10相互間で少なくとも通信する必要がないため,ノード10相互又はノード10とノード13との通信量を格段に削減することができる。
(3)また,上記式6のように分散秘密鍵di(i=1,2,…,N)と元の秘密鍵dとの関係を保ちながら,例えば,下記式10に示すようにノードUi(i=1,2,…,N)が保有する分散秘密鍵diの値(又は,ビット長)をノードU0の分散秘密鍵d0よりも小さくすれば,計算能力の低いノード10でも分散電子署名を迅速かつ的確に生成することが可能となる。したがって,ノード10の能力に応じた大きさの分散秘密鍵を保有させることにより,処理パフォーマンスが低能力なノード10でも迅速な分散電子署名生成が可能となる。
(4)また,秘密鍵dを各ノードが分散して保持しているため,少数のノードが分解・解析されて保持してある秘密鍵(分散秘密鍵)を盗まれても,盗難者が正しい署名を生成することが不可能である。
Although the description of the distributed
(1) Each node 10 that performs distributed calculation is distributed to other nodes by holding the secret key secretly distributed at each node 10 such as the distributed electronic signature key d 1 to the distributed electronic signature key d N. 10 generates a distributed electronic signature without communicating with each other, and transmits these distributed electronic signatures to the
(2) Although it is not possible to determine where the illegal node exists, it is not necessary to at least communicate between all the nodes 10 while ensuring the minimum security. The amount of communication with 13 can be significantly reduced.
(3) Further, while maintaining the relationship between the distributed secret key d i (i = 1, 2,..., N) and the original secret key d as shown in Equation 6 above, for example, as shown in Equation 10 below, the node If the value (or bit length) of the distributed secret key d i held by U i (i = 1, 2,..., N) is made smaller than the distributed secret key d 0 of the node U 0 , the node having low computing power Even with 10, it is possible to generate a distributed electronic signature quickly and accurately. Therefore, by holding a distributed secret key having a size corresponding to the capability of the node 10, it is possible to generate a distributed electronic signature quickly even in the node 10 having a low processing performance.
(4) Since each node holds the secret key d in a distributed manner, even if a small number of nodes are decomposed and analyzed and the secret key (distributed secret key) held is stolen, It is impossible to generate a correct signature.
d1,d2,…,dN << d0 …(式10) d 1 , d 2 ,..., d N << d 0 (Formula 10)
(第2の実施形態について)
第1の実施形態では,分散電子署名する各ノードがそれぞれ代表ノードへ分散電子署名を送信していたが,第2の実施形態では,ネットワークがツリー構造のマルチホップ通信路であると仮定した場合に,ルーティングするノードが分散電子署名の途中処理を受け持つことで,ネットワーク全体の通信量の削減を可能とする。
(About the second embodiment)
In the first embodiment, each node that performs a distributed electronic signature transmits a distributed electronic signature to the representative node. However, in the second embodiment, it is assumed that the network is a multi-hop communication path having a tree structure. In addition, since the routing node is in charge of distributed electronic signature processing, the network traffic can be reduced.
なお,以下に示す説明では,第1の実施の形態にかかる分散電子署名システム800と第2の実施の形態にかかる分散電子署名システム801とを比較し,特に異なる点について詳細に説明するが,その他の点については,特段の明示がない場合,ほぼ同様な構成であるため詳細な説明は省略する。
In the following description, the distributed
まず,図6を参照しながら,第1の実施の形態にかかる分散電子署名システムについて説明する。図6は,第2の実施形態に係る分散電子署名システムの概略を示す説明図である。 First, the distributed electronic signature system according to the first embodiment will be described with reference to FIG. FIG. 6 is an explanatory diagram showing an outline of a distributed electronic signature system according to the second embodiment.
第1の実施形態に係る分散電子署名システム800では,各ノード11から代表ノード14への分散電子署名の送信は,どのような経路をたどってもかまわないこととしていたが,第2の実施形態に係る分散電子署名システム801では,マルチホップ通信形態の一つであるツリー構造のマルチホップネットワークにおいて分散電子署名の送信が行われる。
In the distributed
図6に示すように,第2の実施の形態にかかる分散電子署名システム801は,第1の実施形態と同様に,電子署名(又は,RSA署名)を分散計算するシステムであって,1台以上のノード11と,最終的な電子署名を算出する代表ノード14とを備える。
As shown in FIG. 6, a distributed
上記ノード11は,分散電子署名システム801にN台(N≧1)存在することが可能であって,第1の実施の形態と同様,各ノード11(10−1,10−2,…,10−N)をノードU1,ノードU2,…,ノードUNで表すとする。
The node 11 can exist in N units (N ≧ 1) in the distributed
また,代表ノード14をノードU0で表す。なお,ツリー構造のマルチホップネットワークは,図6のように,ツリー構造のグラフの各節が各ノード11に,その枝が通信路に相当するようなネットワークである。第2の実施形態の場合,ツリーのルートが代表ノード14に相当し,その他のノード11が各節に相当する。
Further, representative of the
また,ノード11又は代表ノード14が親子関係にあるとき,親ノード,子ノードと記載する場合もある。例えば,図6のノードU1およびノードU2は,ノードU4の子ノードであり,逆に,ノードU4は,ノードU1およびノードU2の親ノードである。各ノード11又は代表ノード14は,ノード自身の子ノードと親ノードをともに把握しているものとする。
Further, when the node 11 or the
また,第1の実施形態と同様に,電子署名の秘密鍵をd,公開鍵をeおよびn(ed=1(mod λ(n)))と表す。 Similarly to the first embodiment, the private key of the electronic signature is represented as d, and the public key is represented as e and n (ed = 1 (mod λ (n))).
各々のノードU1,ノードU2,…,ノードUN,および代表ノードU0は,元の秘密鍵dを秘密裏に分散秘密鍵d1,分散秘密鍵d2,…,分散秘密鍵dN,および分散秘密鍵d0を分散して保持しており,それらの分散秘密鍵d1,d2,…,dNと元の秘密鍵dとの関係は,上記式6に示すものとする。 Each node U 1 , node U 2 ,..., Node U N and representative node U 0 secretly distributes the original secret key d, distributed secret key d 1 , distributed secret key d 2 ,. N and the distributed secret key d 0 are distributed and held, and the relationship between these distributed secret keys d 1 , d 2 ,..., D N and the original secret key d is as shown in Equation 6 above. To do.
(ノード11について)
次に,図7を参照しながら,第2の実施の形態にかかるノード11(ノードUi(i=1,2,…,N))に備わる分散電子署名に係る計算を実行する分散電子署名計算部500について説明する。なお,図7は,第2の実施の形態にかかるノード11に備わる分散電子署名計算部100の概略的な構成を示すブロック図である。
(About node 11)
Next, with reference to FIG. 7, a distributed electronic signature that executes a calculation related to the distributed electronic signature provided in the node 11 (node U i (i = 1, 2,..., N)) according to the second embodiment. The calculation unit 500 will be described. FIG. 7 is a block diagram illustrating a schematic configuration of the distributed electronic signature calculation unit 100 included in the node 11 according to the second embodiment.
また,ツリー構造のグラフの葉に相当するノード11は,第1の実施形態の各ノードUi(i=1,2,…,N)における分散電子署名計算部100(図2)と同じ構成の場合でもよい。例えば,図7に示すように,ノード11−1,ノード11−2,およびノード11−3に備わる分散電子署名計算部500は,上記図2に示す分散電子署名計算部100と実質的に同一であってもよい。 Further, the node 11 corresponding to the leaf of the tree structure graph has the same configuration as the distributed electronic signature calculation unit 100 (FIG. 2) in each node U i (i = 1, 2,..., N) of the first embodiment. It may be the case. For example, as shown in FIG. 7, the distributed electronic signature calculation unit 500 included in the node 11-1, the node 11-2, and the node 11-3 is substantially the same as the distributed electronic signature calculation unit 100 shown in FIG. It may be.
図7に示すように,ノード11に備わる分散電子署名計算部500は,分散秘密鍵保持部501と,べき乗剰余計算部502と,乗算部503と,受信部504と,送信部505とから少なくとも構成される。
As shown in FIG. 7, the distributed electronic signature calculation unit 500 included in the node 11 includes at least a distributed secret
上記分散秘密鍵保持部501は,ノードUiの分散秘密鍵di(i=1,2,…,N)を記憶する記憶装置である。
The distributed secret
また,上記べき乗剰余計算部502は,電子署名したいメッセージmおよび分散秘密鍵保持部501に記憶された分散秘密鍵di(i=1,2,…,N)を入力し,下記式11に示す分散電子署名s’iを計算する。
Further, the power
s’i=h(m)di (mod n) (i=1,…,N) …(式11) s ′ i = h (m) di (mod n) (i = 1,..., N) (Expression 11)
上記算出された分散電子署名s’iは,乗算部503に出力される。なお,第1の実施形態と同様に,メッセージmは,例えば,インターネット等の通信路を介して受信するものであってもよいし,予めノード10内の記憶装置に保持されたものでもよいが,予め分散電子署名システム801で合意の取れた方式でメッセージmを各ノードUi(i=1,2,…,N)および代表ノードU0が取得できるものとする。
The calculated distributed electronic signature s ′ i is output to the
上記乗算部503は,べき乗剰余計算部502から算出された分散電子署名s’iを受け取るとともに,受信部504を介して子ノードからの分散電子署名sj(ただし,UjはUiのすべての子ノードとする)を受け取り,それらを下記式12のように掛け合わせる。なお,乗算部503は,ノード10自身に子ノードが存在しない場合,受信部504からの分散電子署名sjを受け取る処理を行わない。
The multiplying
si=s’i × Π sj (mod n) …(式12)
UjはUiのすべての子ノードとする。
s i = s ′ i × Π s j (mod n) (Formula 12)
Let U j be all child nodes of U i .
上記乗算部503により算出された分散電子署名siは,送信部505に出力される。
The distributed electronic signature s i calculated by the
上記受信部504は,ノード10自身に係る子ノード全てから,分散電子署名sj(UjはUiのすべての子ノード)を受信し,乗算部503に出力する。
The
上記送信部505は,乗算部503から計算結果である分散電子署名siを受け取り,それをノード10自身に係る親ノードに送信する。例えば,図6に示すように,ノード11−5に備わる送信部505は,ノード11−5自身の親ノードである代表ノード14に自己が算出した分散電子署名を送信する。
The transmitting
次に,図8を参照しながら,第2の実施形態にかかる代表ノード14に備わる分散電子署名に係る計算を実行する分散電子署名計算部600について説明する。図8は,第2の実施の形態にかかる代表ノード14に備わる分散電子署名計算部600の概略的な構成を示すブロック図である。
Next, the distributed electronic signature calculation unit 600 that executes the calculation related to the distributed electronic signature provided in the
図8に示すように,代表ノード14に備わる分散電子署名計算部600は,分散秘密鍵保持部601と,べき乗剰余計算部602と,乗算部603と,受信部604とから少なくとも構成される。
As shown in FIG. 8, the distributed electronic signature calculation unit 600 included in the
上記分散秘密鍵保持部601は,代表ノード103(ノードU0)の分散秘密鍵d0を記憶する記憶装置である。例えば,分散秘密鍵保持部201は,EEPROM,RAM等のメモリを例示することができるが,かかる例に限定されない。
The distributed secret
上記べき乗剰余計算部602は,電子署名したいメッセージmと分散秘密鍵保持部601に格納された分散秘密鍵d0とを入力し,上記式8に示す分散電子署名s0を計算して乗算部603に出力する。
The power
上記乗算部603は,べき乗剰余計算部602より計算結果である分散電子署名s0を受け取り,さらに受信部604が受信した代表ノード103自身の子ノードからの分散電子署名sj(UjはU0のすべての子ノード)を受け取り,下記式13に示す乗算を実行し,その結果の電子署名sを出力する。
The
s=s0 × Π sj (mod n) …(式13)
UjはU0のすべての子ノードとする。
s = s 0 × Π s j (mod n) (Formula 13)
Let U j be all child nodes of U 0 .
上記受信部604は,自身の各子ノードUjより分散電子署名sj(UjはU0のすべての子ノード)を受信して,乗算部603に出力する。
The receiving
(分散電子署名の動作について)
次に,図9のフローチャートを参照しながら,第2の実施の形態にかかる分散電子署名に関する計算を実行するノード11の動作について説明する。なお,図9は,第2の実施の形態にかかる分散電子署名に関する計算を実行するノード11の動作の概略を示すフローチャートである。ただし,ツリー構造のグラフの葉に相当するノード11は,第1の実施形態におけるノード10の分散電子署名計算部100の動作(図4参照)と同様なものであるが,ステップS302で,代表ノードU0へ分散電子署名siを送信するところをノード11自身の親ノードに送信するように変更する。
(About operation of distributed electronic signature)
Next, the operation of the node 11 that executes the calculation related to the distributed electronic signature according to the second embodiment will be described with reference to the flowchart of FIG. FIG. 9 is a flowchart showing an outline of the operation of the node 11 that executes the calculation related to the distributed electronic signature according to the second embodiment. However, the node 11 corresponding to the leaf of the tree structure graph is the same as the operation of the distributed electronic signature calculation unit 100 of the node 10 in the first embodiment (see FIG. 4). to change the place to send distributed digital signature s i to the node U 0 to be sent to the parent node of the node 11 itself.
図9に示すように,まず,子ノードを持つ各ノードUiは,署名したいメッセージmに対して,各自のノード11が保持する分散秘密鍵diを用いて上記式11に示すように分散電子署名s’iを計算する(ステップS701)。 As shown in FIG. 9, first, each node U i having a child node distributes the message m to be signed using the distributed secret key d i held by each node 11 as shown in the above equation 11. The electronic signature s ′ i is calculated (step S701).
なお,図9に示す分散電子署名s’iを生成する処理(S701)は,図7に示すべき乗剰余計算部502による動作である。
Note that the processing (S701) for generating the distributed electronic signature s ′ i shown in FIG. 9 is an operation performed by the power
また,ステップS701と平行して,全ての子ノードUj(UjはUiのすべての子ノード)から分散電子署名sjを受信する(ステップS702)。当該処理は,図7に示す受信部504による動作である。
In parallel with step S701, the distributed electronic signature s j is received from all the child nodes U j (U j is all the child nodes of U i ) (step S702). This processing is an operation by the receiving
なお,本実施の形態ではステップS701とステップS702は略同時並行して実行されるように図示されているが,必ずしも同時進行の場合に限定されない。例えば,ステップS701の終了後にステップS702を実行する,あるいは,ステップS702の終了後にステップS701を実行する場合でも実施可能である。 In the present embodiment, steps S701 and S702 are illustrated to be executed substantially simultaneously in parallel, but are not necessarily limited to simultaneous progress. For example, the present invention can be implemented even when step S702 is executed after step S701 ends, or when step S701 is executed after step S702 ends.
上記ステップS701と,上記ステップS702とが終了すると,次に,ステップS701で得られた分散電子署名s’iと,上記ステップS702で受信した子ノードからの分散電子署名sj(UjはUiのすべての子ノード)とを掛け合わせ,上記式12に示すように分散電子署名siを生成して親ノードに送信する(ステップS703)。 When step S701 and step S702 are completed, the distributed electronic signature s ′ i obtained in step S701 and the distributed electronic signature s j (U j is U U from the child node received in step S702). All the child nodes of i ) are multiplied to generate a distributed electronic signature s i as shown in the above equation 12 and transmitted to the parent node (step S703).
次に,図10を参照しながら,第2の実施形態の分散電子署名を実行する代表ノードU0の動作について説明する。なお,図10は,第2の実施の形態にかかる分散電子署名に関する計算を実行する代表ノード14の動作の概略を示すフローチャートである。
Next, the operation of the representative node U 0 that executes the distributed electronic signature of the second embodiment will be described with reference to FIG. FIG. 10 is a flowchart showing an outline of the operation of the
図10に示すように,代表ノードU0は,署名したいメッセージmに対して,代表ノードU0自身が保持する分散秘密鍵d0を用いて分散電子署名s0を上記式8に示すように生成する(ステップS801)。 As shown in FIG. 10, the representative node U 0, to the message m to be signed, the dispersion digital signature s 0 using distributed secret key d 0 of the representative node U 0 itself held as shown in the equation 8 Generate (step S801).
なお,図10に示す分散秘密鍵d0を用いて分散電子署名s0を生成する処理(S401)は,上記説明したように,図8に示す代表ノード14に備わるべき乗剰余計算部602による動作である。
Note that the process of generating the distributed electronic signature s 0 using the distributed secret key d 0 shown in FIG. 10 (S401) is performed by the
また,ステップS801と平行して,全ての子ノードUj(UjはU0のすべての子ノード)から分散電子署名sjを受信する(ステップS802)。 In parallel with step S801, the distributed electronic signature s j is received from all child nodes U j (U j is all child nodes of U 0 ) (step S802).
なお,各ノード11から分散電子署名siを受信する処理は(S801),図8に示す受信部604による動作である。
The process of receiving the distributed electronic signature s i from each node 11 (S801) is an operation by the receiving
図10に示すように,ステップS801とステップS802は,略同時並行して実行されるように図示されているが,必ずしも同時進行の場合に限定されない。例えば,ステップS801の終了後にステップS802を実行する,あるいは,ステップS802の終了後にステップS801を実行する場合でも実施可能である。 As shown in FIG. 10, steps S801 and S802 are illustrated to be executed substantially simultaneously in parallel, but are not necessarily limited to simultaneous progress. For example, the present invention can be implemented even when step S802 is executed after step S801 ends, or when step S801 is executed after step S802 ends.
上記ステップS801と上記ステップS802とが終了すると,次に,ステップS801で得られた分散電子署名s0と,上記ステップS802で子ノードから受信した分散電子署名sj(UjはU0のすべての子ノード)とを掛け合わせ,上記式13に示すように電子署名sを生成する(S803)。 When the above step S801 and the step S802 is completed, the dispersion digital signature s 0 obtained in step S801, the dispersion electronic signature received from the step S802 child nodes s j (U j All U 0 And a digital signature s is generated as shown in the above equation 13 (S803).
なお,上記電子署名sを生成する処理(S403)は,図8に示す乗算部603による動作である。
The processing for generating the electronic signature s (S403) is an operation by the
以上,第2の実施の形態にかかる分散電子署名システム801の説明を終了するが,かかる分散電子署名システム801によって,以下に示すような優れた効果が存在する。
(1)第1の実施形態と同様に,秘密鍵を各ノード11でセキュアに分散して保持することで,各ノード11が分散電子署名を生成し,代表ノード14にそれらの分散電子署名を送信することにより,セキュリティ上不可欠な不正者によって虚偽の電子署名が作成されてしまうおそれを防止することができる。
(2)不正ノードの存在を把握することができないが,ノード11相互の通信量を格段に削減することができる。特に,第2の実施形態では,ネットワークがツリー構造のマルチホップ通信路であると仮定し,ルーティングするノード11が,分散電子署名を上記式12の形で途中で所定処理を施して親ノードに送信することにより,ネットワーク全体の通信量を削減することが可能となる。
(3)また,第1の実施形態と同様に,分散秘密鍵di(i=1,2,…,N)と元の秘密鍵dとの関係を保ちながら(式6),例えば,上記式10に示すように,分散秘密鍵di(i=1,2,…,N)と元の秘密鍵dとの関係を保ちながら,例えば,下記式10に示すようにノードUi(i=1,2,…,N)が保有する分散秘密鍵diの値(又は,ビット長)をノードU0の分散秘密鍵d0よりも小さくすれば,計算能力の低いノード10でも分散電子署名を迅速かつ的確に生成することが可能となる。
(4)また,秘密鍵dを各ノードが分散して保持しているため,少数のノードが分解・解析されて保持してある秘密鍵(分散秘密鍵)を盗まれても,盗難者が正しい署名を生成することが不可能である。
Although the description of the distributed
(1) As in the first embodiment, each node 11 generates a distributed electronic signature by securely distributing and holding the secret key in each node 11, and the distributed electronic signature is sent to the
(2) Although the presence of an illegal node cannot be grasped, the communication volume between nodes 11 can be significantly reduced. In particular, in the second embodiment, it is assumed that the network is a multi-hop communication channel having a tree structure, and the routing node 11 performs a predetermined process in the form of the above-described expression 12 on the way to the parent node. By transmitting, it becomes possible to reduce the communication amount of the entire network.
(3) Further, as in the first embodiment, while maintaining the relationship between the distributed secret key d i (i = 1, 2,..., N) and the original secret key d (Equation 6), for example, As shown in Equation 10, while maintaining the relationship between the distributed secret key d i (i = 1, 2,..., N) and the original secret key d, for example, the node U i (i = 1, 2,..., N), if the value (or bit length) of the distributed secret key d i is smaller than the distributed secret key d 0 of the node U 0 , the distributed electrons can be distributed even in the node 10 having a low computing capacity. The signature can be generated quickly and accurately.
(4) Since each node holds the secret key d in a distributed manner, even if a small number of nodes are decomposed and analyzed and the secret key (distributed secret key) held is stolen, It is impossible to generate a correct signature.
(第3の実施形態について)
第3の実施形態では,第1の実施形態に,各ノードが持つ分散秘密鍵を更新する機能を追加する。なお,以下に示す説明では,第1の実施の形態にかかる分散電子署名システム800と第3の実施の形態にかかる分散電子署名システム802とを比較し,特に異なる点について詳細に説明するが,その他の点については,特段の明示がない場合,ほぼ同様な構成であるため詳細な説明は省略する。
(About the third embodiment)
In the third embodiment, a function for updating the distributed secret key of each node is added to the first embodiment. In the following description, the distributed
まず,第1の実施形態,および,第2の実施形態と同様,電子署名であるRSA署名を分散計算する第3の実施形態のシステムは,1以上の個数のノードと,最終的な署名を算出する代表ノードと呼ばれる装置から成る。 First, similarly to the first embodiment and the second embodiment, the system of the third embodiment that performs distributed calculation of RSA signatures that are electronic signatures has one or more nodes and a final signature. It consists of a device called a representative node to calculate.
ノード10はN個(N≧1)あるとし,それぞれのノード10をU1,U2,…,UNで表すとする。また,代表ノード13をU0で表す。第1の実施形態,および,第2の実施形態と同様に,電子署名であるRSA署名の秘密鍵をd,公開鍵をe,n(ed=1(mod λ(n)))と表すことにする。
Assume that there are N nodes (N ≧ 1), and that each node 10 is represented by U 1 , U 2 ,..., U N. Further, representative of the
各々のノードU1,ノードU2,…,ノードUN,および,代表ノードU0は,元の秘密鍵dを秘密分散した分散秘密鍵d1,分散秘密鍵d2,…,分散秘密鍵dN,および分散秘密鍵d0を保持しており,それらの分散秘密鍵d1,分散秘密鍵d2,…,分散秘密鍵dNと元の秘密鍵dとの関係は,式6で示すものとする。 Each of the node U 1 , the node U 2 ,..., The node U N , and the representative node U 0 is a distributed secret key d 1 , a distributed secret key d 2 ,. d N and the distributed secret key d 0 are held, and the relationship between the distributed secret key d 1 , the distributed secret key d 2 ,..., the distributed secret key d N and the original secret key d is given by Shall be shown.
ここで,第1の実施形態と同様に分散電子署名について簡単に説明すると,署名したいメッセージをmとすると,ノードU1,U2,…,UNは,以下の式7に示す計算を実行することで求められる分散電子署名si(i=1,…,N)を代表ノードU0に送信する。 Here, briefly explained distributed digital signature as in the first embodiment, the execution when a message to be signed is m, the node U 1, U 2, ..., the U N is calculated as shown in Equation 7 below The distributed electronic signature s i (i = 1,..., N) obtained by doing so is transmitted to the representative node U 0 .
si=h(m)di (mod n) (i=1,…,N) …(式7)
代表ノードU0は,まず,下記式8に示す計算を実行し,自己(代表ノードU0)の分散電子署名s0を求める。
s i = h (m) di (mod n) (i = 1,..., N) (Expression 7)
First, the representative node U 0 executes the calculation shown in the following equation 8 to obtain the distributed electronic signature s 0 of itself (representative node U 0 ).
s0=h(m)d0 (mod n) …(式8)
分散電子署名s0が求まると,代表ノードU0は,さらにノード10から受信済みの分散電子署名s1,分散電子署名s2,…,分散電子署名sNを掛け合わせ,さらに代表ノードU0自身が生成した分散電子署名s0を式9に示すように,掛け合わせることにより,代表ノードU0は最終的な電子署名sを求めることができる。
s 0 = h (m) d0 (mod n) (Formula 8)
When the distributed electronic signature s 0 is obtained, the representative node U 0 further multiplies the distributed electronic signature s 1 , distributed electronic signature s 2 ,..., Distributed electronic signature s N received from the node 10, and further represents the representative node U 0. By multiplying the distributed electronic signature s 0 generated by itself as shown in Expression 9, the representative node U 0 can obtain the final electronic signature s.
s=s0s1s2…sN (mod n) …(式9) s = s 0 s 1 s 2 ... s N (mod n) (Expression 9)
ここで,第3の実施形態では,上記にて示すような分散電子署名計算を行うと同時に,各ノード10が保有する分散秘密鍵di(i=1,…,N),および,代表ノード13が保有する分散秘密鍵d0の更新を行う。 Here, in the third embodiment, the distributed electronic signature calculation as described above is performed, and at the same time, the distributed secret key d i (i = 1,..., N) held by each node 10 and the representative node The distributed secret key d 0 held by 13 is updated.
かかるノード10及び代表ノード13が保有する分散秘密鍵を更新する理由は,所定時間ずっと同一の分散秘密鍵の場合,悪意あるノードによって分散秘密鍵が見破られる危険性が高まるためである。
The reason for updating the distributed secret key held by the node 10 and the
各ノード10が持つ分散秘密鍵di(i=1,…,N)と,その更新後の分散秘密鍵d’i(i=1,…,N)との変化量を分散秘密鍵Δdi(i=1,…,N)と表すと,代表ノード13が持つ分散秘密鍵d0は,下記式14及び式15に示すような分散秘密鍵d’0に更新される。
The amount of change between the distributed secret key d i (i = 1,..., N) of each node 10 and the updated distributed secret key d ′ i (i = 1,..., N) is expressed as the distributed secret key Δd i. When expressed as (i = 1,..., N), the distributed secret key d 0 possessed by the
d’0=d0−(Δd1+Δd2+…+ΔdN) …(式14)
d’i=di+Δdi (i=1,…,N) …(式15)
d ′ 0 = d 0 − (Δd 1 + Δd 2 +... + Δd N ) (Expression 14)
d ′ i = d i + Δd i (i = 1,..., N) (Equation 15)
次に,図11を参照しながら,第3の実施形態に係るノードUi(i=1,2,…,N)に備わる分散電子署名計算を行う分散電子署名計算部900について説明する。なお,図11は,第3の実施の形態にかかるノード10に備わる分散電子署名計算部900の概略的な構成を示すブロック図である。 Next, a distributed electronic signature calculation unit 900 that performs distributed electronic signature calculation in the node U i (i = 1, 2,..., N) according to the third embodiment will be described with reference to FIG. FIG. 11 is a block diagram illustrating a schematic configuration of the distributed electronic signature calculation unit 900 included in the node 10 according to the third embodiment.
図11に示す分散電子署名計算部900は,図2に示す分散電子署名計算部100に,さらに分散秘密鍵更新部904と,乱数生成部905とが追加されたような構成であって,分散電子署名計算部900は,分散秘密鍵保持部901と,べき乗剰余計算部102と,送信部903と,分散秘密鍵更新部904と,乱数生成部905とを備えている。
A distributed electronic signature calculation unit 900 shown in FIG. 11 has a configuration in which a distributed secret
上記分散秘密鍵保持部901は,図2に示す分散電子署名計算部100の分散秘密鍵保持部101と同様に,ノードUiの分散秘密鍵di(i=1,2,…,N)を保持する記憶装置であるが,分散秘密鍵更新部904から出力されてくる更新後の分散秘密鍵d’iを受け取り,それを更新前の分散秘密鍵diと置き換える動作をする。
The distributed secret
なお,上記分散秘密鍵d’iは,上記分散秘密鍵diと置き換えるが,置き換えられた分散秘密鍵diは,例えば,破棄される他にも,他の秘密鍵によって暗号化され厳重に保管される場合等でも実施可能である。 Incidentally, the distributed secret key d 'i is replaced by the distributed secret key d i, but distributed secret key d i that has been replaced, for example, in addition to being discarded, heavily encrypted by another private key It can be implemented even when stored.
上記べき乗剰余計算部102は,図2に示す分散電子署名計算部100のべき乗剰余計算部102と同様であるため詳細な説明は省略する。
The power
上記送信部903は,図2に示す分散電子署名計算部100の送信部103と同様に,べき乗剰余計算部102による計算結果である分散電子署名siを受け取り,それを代表ノードU0に送信する。さらに,送信部903は,乱数生成部905から出力された上記分散秘密鍵diと分散秘密鍵d’iとの変化量である分散秘密鍵Δdiを受け取り,それも代表ノードU0に送信する。なお,本実施の形態では,生成された乱数を分散秘密鍵Δdとして記載するが,上記乱数と分散秘密鍵Δdとは,ほぼ同義である。
Similar to the
上記分散秘密鍵更新部904は,乱数生成部905からの分散秘密鍵Δdiを受け取り,上記式15で示されるような分散秘密鍵diの更新を行い,更新された分散秘密鍵d’iを分散秘密鍵保持部901に出力する。
The distributed secret
乱数生成部905は,乱数を生成し,その生成された乱数を分散秘密鍵Δdiとして,分散秘密鍵更新部904と送信部903に各々出力する。なお,乱数生成部905が生成する乱数は,容易に推測されない方式であれば,いかなる方式で乱数が生成される場合でも実施可能である。
The random
次に,図12を参照しながら,第3の実施形態にかかる代表ノードU0に備わる分散電子署名計算を実行する分散電子署名計算部1000について説明する。なお,図12は,第3の実施の形態にかかる代表ノード13に備わる分散電子署名計算部1000の概略的な構成を示すブロック図である。
Next, the distributed electronic signature calculation unit 1000 that executes the distributed electronic signature calculation provided in the representative node U 0 according to the third embodiment will be described with reference to FIG. FIG. 12 is a block diagram illustrating a schematic configuration of the distributed electronic signature calculation unit 1000 provided in the
図12に示すように,分散電子署名計算部1000は,図3に示す分散電子署名計算部200に,さらに分散秘密鍵更新部1005が追加される構成となっており,分散電子署名計算部1000は,分散秘密鍵保持部1001と,べき乗剰余計算部202と,乗算部203と,受信部1004と,分散電子署名更新部1005とを備えている。
As shown in FIG. 12, the distributed electronic signature calculation unit 1000 has a configuration in which a distributed secret
上記分散秘密鍵保持部1001は,図3に示す分散電子署名計算部200の分散秘密鍵保持部201と同様に,代表ノードU0の分散秘密鍵d0を保持する記憶装置であるが,分散秘密鍵更新部1005から出力される分散秘密鍵d’0を受け取り,それを既に保有済みの分散秘密鍵d0と置き換える動作もする。
The distributed secret
なお,べき乗剰余計算部202および乗算部203は,図3に示す分散電子署名計算部200のべき乗剰余計算部202および乗算部203と同様なものであるため詳細な説明は省略する。
The power
上記受信部1004は,各ノードUiより分散電子署名si,および,分散秘密鍵の更新前後の変化量を示す分散秘密鍵Δdi(i=1,2,…,N)を受信し,分散電子署名siは乗算部203へ,分散秘密鍵Δdiは分散秘密鍵更新部1005に各々出力する。
The receiving
上記分散秘密鍵更新部1005は,受信部1004から分散秘密鍵Δdiを受け取り,上記式14に示すような分散秘密鍵d0の更新を行い,更新された分散秘密鍵d’0を分散秘密鍵保持部1001に出力する。
The distributed secret
(分散秘密鍵の更新動作について)
次に,図13を参照しながら,第3の実施形態にかかる分散秘密鍵を更新する各ノードUi(i=1,2,…,N)の動作について説明する。なお,図13は,第3の実施の形態にかかる分散秘密鍵を更新するノード10の動作の概略を示すフローチャートである。
(About distributed secret key update operation)
Next, the operation of each node U i (i = 1, 2,..., N) that updates the distributed secret key according to the third embodiment will be described with reference to FIG. FIG. 13 is a flowchart showing an outline of the operation of the node 10 for updating the distributed secret key according to the third embodiment.
図13に示すように,まず各ノードUi(i=1,2,…,N)は,署名したいメッセージmに対して,各自が保持する分散秘密鍵diを用いて分散電子署名siを,上記式7に示すように生成する(S1101)。 As shown in FIG. 13, each node U i first (i = 1,2, ..., N ) , to the signature want message m, distributed electronic signature using the distributed secret key d i to each holds s i Is generated as shown in Equation 7 above (S1101).
なお,図13に示す分散電子署名siを生成する処理(S1101)は,図11に示すべき乗剰余計算部102による動作である。それと平行し,乱数を生成することで,分散秘密鍵Δdiを求める(S1102)。
Note that the processing (S1101) for generating the distributed electronic signature s i shown in FIG. 13 is an operation performed by the power
なお,図13に示す分散秘密鍵Δdiを求める処理(S1102)は,乱数生成部905による動作である。
Note that the process of obtaining the distributed secret key Δd i shown in FIG. 13 (S1102) is an operation by the random
また,上記ステップS1101とステップS1102は,図13に示すように,略同時並行するように図示しているが,必ずしも同時進行の場合に限定されず,例えば,ステップS1101の終了後にステップS1102を実行する,あるいは,ステップS1102の終了後にステップS1101を実行する場合でも実施可能である。 Moreover, although step S1101 and step S1102 are illustrated so as to be substantially parallel as shown in FIG. 13, the present invention is not necessarily limited to the case of simultaneous progress. Alternatively, the present invention can be implemented even when step S1101 is executed after step S1102.
上記ステップS1101とステップS1102とが終了すると,次に,ステップS1101で生成した分散電子署名si,および,分散秘密鍵Δdiを代表ノードU0に送信する(ステップS1103)。 When step S1101 and step S1102 are completed, the distributed electronic signature s i and the distributed secret key Δd i generated in step S1101 are transmitted to the representative node U 0 (step S1103).
また,上記ステップS1103と平行して,自己(ノード10)が保持する分散秘密鍵diを,分散秘密鍵Δdiを用いて上記式15に示すように更新する(S1104)。 In parallel with step S1103, the distributed secret key d i held by itself (node 10) is updated using the distributed secret key Δd i as shown in Equation 15 (S1104).
なお,図13に示す分散秘密鍵Δdiを用いて分散秘密鍵diを更新する処理(S1104)は,図11に示す分散秘密鍵更新部904による動作である。
The process of updating the distributed secret key d i using the distributed secret key Δd i shown in FIG. 13 (S1104) is an operation by the distributed secret
なお,図13に示すステップS1103とステップS1104とは,略同時並行するように図示されているが,必ずしも同時進行に限定されない。例えば,ステップS1103の終了後,ステップS1104を実行し,あるいは,ステップS1104の終了後,ステップS1103を実行する場合でも実施可能である。 In addition, although step S1103 and step S1104 shown in FIG. 13 are illustrated so as to be substantially parallel in parallel, they are not necessarily limited to simultaneous progress. For example, the present invention can be implemented even when step S1104 is executed after step S1103 ends, or when step S1103 is executed after step S1104 ends.
次に,図14を参照しながら,第3の実施形態にかかる分散秘密鍵を更新する代表ノードU0の動作について説明する。なお,図14は,第3の実施の形態にかかる分散秘密鍵を更新する代表ノード13の動作の概略を示すフローチャートである。
Next, the operation of the representative node U 0 for updating the distributed secret key according to the third embodiment will be described with reference to FIG. FIG. 14 is a flowchart showing an outline of the operation of the
図14に示すように,まず,代表ノードU0は,署名したいメッセージmに対して,代表ノード13自身が保持している分散秘密鍵d0を用いて分散電子署名s0を上記式8に示すように生成する(S1201)。
As shown in FIG. 14, first, the representative node U 0 uses the distributed secret key d 0 held by the
なお,図14に示す分散電子署名s0を生成する処理(S1201)は,図12に示すべき乗剰余計算部202による動作である。
The processing of generating a distributed digital signature s 0 shown in FIG. 14 (S1201) is an operation by modular
また,上記ステップS1201と平行して,各ノードUi(i=1,2,…,N)から分散電子署名si,および,分散秘密鍵Δdiを受信する(S1202)。 In parallel with step S1201, the distributed electronic signature s i and the distributed secret key Δd i are received from each node U i (i = 1, 2,..., N) (S1202).
なお,図14に示す分散電子署名と分散秘密鍵Δdiを受信する処理(S1202)は,図12に示す受信部1004による動作である。
Note that the process (S1202) for receiving the distributed electronic signature and the distributed secret key Δd i shown in FIG. 14 is an operation by the receiving
また,ステップS1201とステップS1202とは,略同時進行するように図示されているが,必ずしも同時進行の場合に限定されず,例えば,ステップS1201の終了後,次にステップS1202を実行し,あるいは,ステップS1202の終了後,次にステップS1201を実行する場合でも実施可能である。 Further, although step S1201 and step S1202 are illustrated so as to proceed substantially simultaneously, the present invention is not necessarily limited to the case of simultaneous progression. For example, after step S1201 is completed, step S1202 is executed next, or Even if step S1201 is executed next after the completion of step S1202, this can be implemented.
ステップS1201,および,ステップS1202の終了後,次にステップS1201で得られた分散電子署名s0と,ステップS1202で受信した分散電子署名si(i=1,2,…,N)とを掛け合わせ,上記式9に示すように電子署名sを生成する(S1203)。 Step S1201, and, after completion of step S1202, the next and distributed digital signature s 0 obtained in step S1201, distributed digital signature received in step S1202 s i (i = 1,2, ..., N) and multiplied by In addition, an electronic signature s is generated as shown in Equation 9 (S1203).
なお,上記電子署名sを生成する処理(S1203)は,図12に示す乗算部203による動作である。
The processing for generating the electronic signature s (S1203) is an operation by the
また,ステップS1203と平行して,分散秘密鍵d0を,受信した分散秘密鍵Δdi(i=1,2,…,N)を用いて上記式14に示すように更新する(S1204)。
In parallel with step S1203, the distributed secret key d 0, distributed secret key received Δd i (i = 1,2, ... , N) is updated as shown in
なお,上記分散秘密鍵を更新する処理(S1204)は,図12に示す分散秘密鍵更新部1005による動作である。
The process of updating the distributed secret key (S1204) is an operation by the distributed secret
また,ステップS1203とステップS1204は,略同時進行するように図示されているが,必ずしも同時進行する場合に限定されず,例えば,ステップS1203の終了後,次にステップS1204を実行する,あるいは,ステップS1204の終了後,次にステップS1203を実行する場合でも実施可能である。 Steps S1203 and S1204 are illustrated as proceeding substantially simultaneously, but are not necessarily limited to the case where they proceed simultaneously. For example, after step S1203, step S1204 is executed next, or step S1204 is performed. Even if step S1203 is executed next after the completion of S1204, it can be implemented.
なお,第3の実施の形態にかかる分散電子署名システム802で行われる分散秘密鍵の更新は,各ノード10により分散秘密鍵Δdi(i=1,…,N)各々が求められ,それらが代表ノード13に送信されることにより,代表ノード13にて分散秘密鍵d’0に更新する場合を例に挙げて説明したが,かかる例に限定されない。例えば,まず代表ノード13により乱数を生成することで,代表ノード13が分散秘密鍵Δd0を生成し,その分散秘密鍵Δd0を基にして分散秘密鍵d0を分散秘密鍵d’0に更新する。さらに,上記分散秘密鍵Δd0を,各ノード10に代表ノード13が送信することにより,各ノード10は,上記分散秘密鍵Δd0を基にして,自己の分散秘密鍵Δdi(i=1,…,N)を求め,各ノード10は,分散秘密鍵di(i=1,…,N)を鍵d’i(i=1,…,N)に更新することができる。なお,各ノード10が分散秘密鍵Δd0を基にして自己の分散秘密鍵Δdi(i=1,…,N)を求めるために,例えば,各ノード10間で自己の分散秘密鍵Δdi(i=1,…,N)が予め定められることにより実施可能となるが,かかる例に限定されない。
Note that the update of the distributed secret key performed in the distributed electronic signature system 802 according to the third exemplary embodiment requires each of the distributed secret keys Δd i (i = 1,..., N) to be obtained by each node 10. Although the case where the
以上,第3の実施の形態にかかる分散電子署名システム802の説明を終了するが,かかる分散電子署名システム802によって,以下に示すような優れた効果が存在する。
(1)各ノード10又は代表ノード13が保有する分散秘密鍵を容易に更新することができる。かかる更新により,長期間同じ分散秘密鍵で分散電子署名を生成し続けるよりも,格段もセキュリティレベルを向上させることができ,外部から攻撃され分散秘密鍵が漏洩又は見破られてしまう危険性を減少させることができる。
Although the description of the distributed electronic signature system 802 according to the third embodiment has been completed, the distributed electronic signature system 802 has the following excellent effects.
(1) The distributed secret key held by each node 10 or
(第4の実施形態について)
第4の実施形態では,第2の実施形態に,各ノード11又は代表ノード14が持つ分散秘密鍵を更新する。なお,以下に示す説明では,第2の実施の形態にかかる分散電子署名システム801と第4の実施の形態にかかる分散電子署名システム803とを比較し,特に異なる点について詳細に説明するが,その他の点については,特段の明示がない場合,ほぼ同様な構成であるため詳細な説明は省略する。
(About the fourth embodiment)
In the fourth embodiment, the distributed secret key of each node 11 or
第2の実施形態と同様に,第4の実施形態では,ツリー構造のマルチホップネットワークが用いられている。 Similar to the second embodiment, a tree-structured multi-hop network is used in the fourth embodiment.
また,第2の実施形態と同様に,電子署名(又は,RSA署名)を分散的に計算するこの分散電子署名システム803は,1以上のノード11と,最終的な署名を算出する代表ノード14とを備えている。
As in the second embodiment, the distributed electronic signature system 803 that calculates electronic signatures (or RSA signatures) in a distributed manner includes one or more nodes 11 and a
ノード11はN個(N≧1)あるとし,それぞれのノードをU1,ノードU2,…,ノードUNで表す。また,代表ノードをU0で表す。 Node 11 is set to N number is (N ≧ 1), representing each node U 1, node U 2, ..., the node U N. Further, representative of the representative node with U 0.
ツリー構造のマルチホップネットワークは,図6に示すように,ツリー構造のグラフの各節が各ノードに,その枝が通信路に相当するようなネットワークである。ツリーのルートが代表ノードに相当し,そのほかのノードが各節に相当する。 As shown in FIG. 6, the tree-structured multi-hop network is a network in which each node of the tree-structure graph corresponds to each node and its branch corresponds to a communication path. The root of the tree corresponds to the representative node, and the other nodes correspond to each section.
また,第2の実施形態と同様に,電子署名(又は,RSA署名)の秘密鍵をd,公開鍵をe,n(ed=1(mod λ(n)))と表す。 Similarly to the second embodiment, the private key of the electronic signature (or RSA signature) is represented as d, the public key is represented as e, and n (ed = 1 (mod λ (n))).
また,各々のノードU1,ノードU2,…,ノードUN,および,代表ノードU0は,元の秘密鍵dを秘密分散した分散秘密鍵d1,分散秘密鍵d2,…,分散秘密鍵dN,および,分散秘密鍵d0を保持しており,それらの分散秘密鍵d1,分散秘密鍵d2,…,分散秘密鍵dNと元の秘密鍵dとの関係は,上記式6で表される。 Each of the nodes U 1 , U 2 ,..., The node U N , and the representative node U 0 has a distributed secret key d 1 , a distributed secret key d 2 ,. The secret key d N and the distributed secret key d 0 are held, and the relationship between the distributed secret key d 1 , the distributed secret key d 2 ,..., The distributed secret key d N and the original secret key d is It is represented by the above formula 6.
さらに,第4の実施形態では,第2の実施形態のような分散電子署名計算を行うと同時に,各ノード11が保有する分散秘密鍵di(i=1,…,N),および,代表ノードが保有する分散秘密鍵d0の更新を行う。 Furthermore, in the fourth embodiment, the distributed electronic signature calculation as in the second embodiment is performed, and at the same time, the distributed secret key d i (i = 1,..., N) held by each node 11 and the representative node performs the update of the distributed secret key d 0 to be held.
各ノード11が保有する分散秘密鍵di(i=1,…,N)から更新後の分散秘密鍵d’i(i=1,…,N)の変化量をΔd’i(i=1,…,N)と表すと,代表ノードが保有する分散秘密鍵d0は,下記式16に示すような分散秘密鍵d’0に更新する。 The amount of change of the updated distributed secret key d ′ i (i = 1,..., N) from the distributed secret key d i (i = 1,..., N) held by each node 11 is expressed as Δd ′ i (i = 1). ,..., N), the distributed secret key d 0 held by the representative node is updated to a distributed secret key d ′ 0 as shown in the following equation 16.
d’0=d0−Σ Δdj …(式16)
UjはU0のすべての子ノード
d’i=di+Δd’i (i=1,…,N) …(式17)
Δdi=Δd’i+ΣΔdj (i=1,…,N) …(式18)
UjはUiのすべての子ノード
d ′ 0 = d 0 −Σ Δd j (Expression 16)
U j is all child nodes of U 0 d ′ i = d i + Δd ′ i (i = 1,..., N) (Expression 17)
Δd i = Δd ′ i + ΣΔd j (i = 1,..., N) (Expression 18)
U j is all child nodes of U i
次に,図15を参照しながら,第4の実施形態にかかるノードUi(i=1,2,…,N)に備わる分散電子署名計算を行う分散電子署名計算部1300について説明する。なお,図15は,第4の実施の形態にかかるノード11に備わる分散電子署名計算部1300の概略的な構成を示すブロック図である。ただし,ツリー構造のグラフの葉に相当するノードは,第3の実施形態に係るノード10に備わる分散電子署名計算部900(図11参照)と同じ構成でも実施可能である。 Next, a distributed electronic signature calculation unit 1300 that performs distributed electronic signature calculation included in a node U i (i = 1, 2,..., N) according to the fourth embodiment will be described with reference to FIG. FIG. 15 is a block diagram illustrating a schematic configuration of the distributed electronic signature calculation unit 1300 provided in the node 11 according to the fourth embodiment. However, the node corresponding to the leaf of the tree-structured graph can be implemented with the same configuration as the distributed electronic signature calculation unit 900 (see FIG. 11) included in the node 10 according to the third embodiment.
上記分散電子署名計算部1300は,図7に示す分散電子署名計算部500に,さらに分散秘密鍵更新部1306と,乱数生成部1307と,加算部1308とが追加されるような構成になり,分散電子署名計算部1300は,分散秘密鍵保持部1301,べき乗剰余計算部502,乗算部503,受信部1304,送信部1305,分散秘密鍵更新部1306,乱数生成部1307,および加算部1308を少なくとも備える。
The distributed electronic signature calculation unit 1300 is configured such that a distributed secret
上記分散秘密鍵保持部1301は,ノードUiの分散秘密鍵di(i=1,2,…,N)を保持する記憶装置であるが,分散秘密鍵更新部1306から出力された分散秘密鍵d’iを受け取り,それを既に保有済みの分散秘密鍵diと置き換える動作もする。
The distributed secret
上記べき乗剰余計算部502は,図7に示す分散電子署名計算部500のべき乗剰余計算部502と同様なものである。
The power
べき乗剰余計算部502は,署名したいメッセージmおよび分散秘密鍵保持部501にある分散秘密鍵di(i=1,2,…,N)を入力し,上記式11に示す分散電子署名s’iを計算する。
The power-
上記算出した分散電子署名s’iは,乗算部503に出力される。第1〜第3の実施形態と同様に,メッセージmは,通信路を通して受信したものであってもよいし,予めノード内の記憶装置に保持しているものであってもよいが,予め分散電子署名システムで合意の取れた方式でメッセージmを各ノードUi(i=1,2,…,N)および代表ノードU0が取得できるものとする。
The calculated distributed electronic signature s ′ i is output to the
上記乗算部503は,べき乗剰余算部502から算出された分散電子署名s’iを受け取り,また,受信部1304から,子ノードから受信した分散電子署名sj(ただし,UjはUiのすべての子ノードとする)を受け取り,それらを上記式12に示すように掛け合わせる。なお,算出した分散電子署名siは,送信部1305に出力される。
The
上記受信部1304は,ノード11自身の子ノードすべてから,分散電子署名sj,および,分散秘密鍵Δdj(UjはUiのすべての子ノード)を受信し,分散電子署名は乗算部503へ,分散秘密鍵Δdjは加算部1308に出力する。
The receiving
上記送信部1305は,乗算部503による計算結果である分散電子署名siを,加算部1308による計算結果である分散秘密鍵Δdiを受け取り,それを親ノードに送信する。
The
上記分散秘密鍵更新部1306は,乱数生成部1307から出力され,乱数から求められる分散秘密鍵Δd’iを受け取り,上記式17に示すような分散秘密鍵diの更新を行い,更新された分散秘密鍵d’iを分散秘密鍵保持部1301に出力する。
The distributed secret
上記乱数生成部1307は,生成した乱数を分散秘密鍵の変化量である分散秘密鍵Δd’iとして決定し,分散秘密鍵更新部1306,および,加算部1308に出力する。
The random
上記加算部1308は,受信部1304から分散秘密鍵Δdj(UjはUiのすべての子ノード)を,乱数生成部1307から分散秘密鍵Δd’iを受け取り,上記式18のように加算を行って,その計算結果である分散秘密鍵Δdiを送信部1305に出力する。
The adding
次に,図16を参照しながら,第4の実施形態にかかる代表ノードU0に備わる分散電子署名計算を実行する分散電子署名計算部1400について説明する。なお,図16は,第4の実施の形態にかかる代表ノードに備わる分散電子署名計算部1400の概略的な構成を示すブロック図である。 Next, a distributed electronic signature calculation unit 1400 that executes the distributed electronic signature calculation provided in the representative node U 0 according to the fourth embodiment will be described with reference to FIG. FIG. 16 is a block diagram illustrating a schematic configuration of the distributed electronic signature calculation unit 1400 provided in the representative node according to the fourth embodiment.
図16に示すように,分散電子署名計算部1400は,図8に示す分散電子署名計算部600に,さらに分散秘密鍵更新部1405が追加されるような構成であって,上記分散電子署名計算部1400は,分散秘密鍵保持部1401と,べき乗剰余計算部602と,乗算部603と,受信部1404と,分散秘密鍵更新部1405とを備えている。
As shown in FIG. 16, the distributed electronic signature calculation unit 1400 has a configuration in which a distributed secret
上記分散秘密鍵保持部1401は,図8に示す分散電子署名計算部600の分散秘密鍵保持部601と同様に,代表ノードU0の分散秘密鍵d0を保持する記憶装置であるが,分散秘密鍵更新部1405から出力された分散秘密鍵d’0を受け取り,それを既に格納済みの分散秘密鍵d0と置き換える動作等も実行する。
The distributed secret
上記べき乗剰余計算部602と,乗算部603とは,図8に示す分散電子署名計算部600のべき乗剰余計算部602と,乗算部603と実質的に同様なものであるため詳細な説明は省略する。
The power
上記受信部1404は,各子ノードUjより分散電子署名sjと,生成された乱数により定められる分散秘密鍵の変化量である分散秘密鍵Δdj(UjはU0のすべての子ノード)を受信して,分散電子署名sjは乗算部603に,分散秘密鍵Δdjは分散秘密鍵更新部1405に出力する。
The receiving
分散秘密鍵更新部1005は,上記受信部1004から分散秘密鍵Δdjを受け取り,上記式16で表されるような分散秘密鍵d0の更新を行い,更新された分散秘密鍵d’0を分散秘密鍵保持部1401に出力する。
The distributed secret
(分散秘密鍵の更新動作について)
次に,図17を参照しながら,第4の実施形態にかかる分散秘密鍵を更新する各ノードUi(i=1,2,…,N)の動作について説明する。なお,図17は,第4の実施の形態にかかる分散秘密鍵を更新するノード10の動作の概略を示すフローチャートである。ただし,ツリー構造のグラフの葉に相当するノードは,第3の実施形態のノードの分散電子署名計算部900の動作(図13)と同様なものであるが,ステップS1103で,代表ノードU0へ分散電子署名siを送信するところを自分の親ノードへ送信するように変更する。
(About distributed secret key update operation)
Next, the operation of each node U i (i = 1, 2,..., N) that updates the distributed secret key according to the fourth embodiment will be described with reference to FIG. FIG. 17 is a flowchart showing an outline of the operation of the node 10 for updating the distributed secret key according to the fourth embodiment. However, the node corresponding to the leaf of the tree-structured graph is the same as the operation of the distributed electronic signature calculation unit 900 of the node of the third embodiment (FIG. 13), but in step S1103, the representative node U 0 To send the distributed electronic signature s i to the parent node.
図17に示すように,子ノードを持つ各ノードUiは,まず,署名したいメッセージmに対して,各自のノード11が保持する分散秘密鍵diを用いて上記式11に示すように分散電子署名s’iを計算する(S1501)。 As shown in FIG. 17, each node U i having a child node first distributes the message m to be signed using the distributed secret key d i held by its own node 11 as shown in the above equation 11. The electronic signature s ′ i is calculated (S1501).
なお,分散電子署名s’iを計算する処理(S1501)は,図15に示すべき乗剰余計算部502による動作である。
The process of calculating the distributed electronic signature s ′ i (S1501) is an operation performed by the modular
また,ステップS1501と平行して,分散秘密鍵の更新する際の変化量を示す分散秘密鍵Δd’iを生成する(S1502)。 In parallel with step S1501, a distributed secret key Δd ′ i indicating the amount of change when the distributed secret key is updated is generated (S1502).
なお,分散秘密鍵Δd’iを生成する処理(S1502)は,図15に示す乱数生成部1307による動作である。
The process of generating the distributed secret key Δd ′ i (S1502) is an operation performed by the random
また,ステップS1501,および,ステップS1502と平行して,全ての子ノードUj(UjはUiのすべての子ノード)から分散電子署名sj,および,分散秘密鍵Δdjを受信する(S1503)。 In parallel with steps S1501 and S1502, the distributed electronic signature s j and the distributed secret key Δd j are received from all child nodes U j (U j is all child nodes of U i ) ( S1503).
上記分散電子署名sj,および,分散秘密鍵Δdjを受信する処理(S1503)は,図15に示す受信部1304による動作である。
The process of receiving the distributed electronic signature s j and the distributed secret key Δd j (S1503) is an operation by the receiving
上記ステップS1501と,ステップS1502と,ステップS1503とは,図17に示すように,略同時進行するように描かれているが,必ずしも同時進行に限られず,例えば,ステップS1501の終了後,次にステップS1502とステップS1503を実行し,あるいは,上記ステップS1502の終了後,次にステップS1501およびステップS1503を実行する場合等でも実施可能である。 Step S1501, step S1502, and step S1503 are depicted as proceeding substantially simultaneously as shown in FIG. 17, but are not necessarily limited to simultaneous progress. For example, after step S1501 is finished, The present invention can also be implemented when step S1502 and step S1503 are executed, or when step S1501 and step S1503 are executed next after the completion of step S1502.
次に,ステップS1501,ステップS1502,および,ステップS1503の終了後,保持する分散秘密鍵diを,ステップS1502で得られた分散秘密鍵Δd’iを用いて上記式17に示すように更新する(S1504)。 Next, after the completion of step S1501, step S1502, and step S1503, the distributed secret key d i to be held is updated as shown in Equation 17 using the distributed secret key Δd ′ i obtained in step S1502. (S1504).
なお,分散秘密鍵Δd’iを用いて上記式17に示すように更新する処理(S1504)は,図15に示す分散秘密鍵更新部1306による動作である。
The process of updating using the distributed secret key Δd ′ i as shown in Equation 17 (S1504) is an operation by the distributed secret
また,上記ステップS1504と平行して,ステップS1502で得られた分散秘密鍵Δd’iと,上記ステップS1503で受信した子ノードからの分散秘密鍵Δdj(UjはUiのすべての子ノード)とを足し合わせ,上記式18に示すように分散秘密鍵Δdiを生成する(S1505)。 In parallel with step S1504, the distributed secret key Δd ′ i obtained in step S1502 and the distributed secret key Δd j from the child node received in step S1503 (U j is all child nodes of U i). ) To generate a distributed secret key Δd i as shown in Equation 18 above (S1505).
上記分散秘密鍵Δdiを生成する処理(S1505)は,図15に示す加算部1308による動作である。
The process of generating the distributed secret key Δd i (S1505) is an operation by the adding
また,上記ステップS1504およびステップS1505と平行して,ステップS1501で得られた分散電子署名s’iと,ステップS1503で受信した子ノードからの分散電子署名sj(UjはUiのすべての子ノード)とを掛け合わせ,上記式12に示すように分散電子署名siを生成する(S1506)。 In parallel with the above steps S1504 and S1505, the distributed electronic signature s ′ i obtained in step S1501 and the distributed electronic signature s j received from the child node in step S1503 (U j is all of U i ). The distributed electronic signature s i is generated as shown in the above equation 12 (S1506).
これは,上記図15に示す乗算部503の動作である。ステップS1504,ステップS1505,およびステップS1506は,略同時進行するように描かれているが,必ずしも同時進行でなくてもよく,例えば,ステップS1504の終了後,次にステップS1505とステップS1506とを実行する場合,あるいは,上記ステップS1505の終了後,次にステップS1504とステップS1506とを実行する場合などでも実施可能である。
This is the operation of the
次に,上記ステップS1504,ステップS1505,およびステップS1506の終了後,ステップS1505で得られた分散秘密鍵Δdiと上記ステップS1506で得られた分散電子署名siを親ノードに送信する(S1507)。 Next, after the completion of step S1504, step S1505, and step S1506, the distributed secret key Δd i obtained in step S1505 and the distributed electronic signature s i obtained in step S1506 are transmitted to the parent node (S1507). .
次に,図18を参照しながら,第4の実施形態に係る分散電子署名を実行する代表ノードU0の動作について説明する。なお,図18は,第4の実施の形態にかかる分散秘密鍵を更新する代表ノード14の動作の概略を示すフローチャートである。
Next, the operation of the representative node U 0 that executes the distributed electronic signature according to the fourth embodiment will be described with reference to FIG. FIG. 18 is a flowchart showing an outline of the operation of the
図18に示すように,代表ノードU0は,署名したいメッセージmに対して,自身が保持する分散秘密鍵d0を用いて分散電子署名s0を上記式8に示すように生成する(S1601)。 As shown in FIG. 18, the representative node U 0 generates a distributed electronic signature s 0 for the message m to be signed using the distributed secret key d 0 held by the representative node U 0 as shown in the above equation 8 (S1601). ).
なお,上記分散秘密鍵d0を用いて分散電子署名s0を生成する処理(S1601)は,図16に示すべき乗剰余計算部602による動作である。
The processing of generating a distributed digital signature s 0 with the distributed secret key d 0 (S1601) is an operation by modular
また,ステップS1601と平行して,全ての子ノードUj(UjはU0のすべての子ノード)から分散電子署名sj,および,全ての子ノードからの分散秘密鍵の変化量である分散秘密鍵Δdjを受信する(ステップS1602)。 Further, in parallel with step S1601, the distributed electronic signature s j from all the child nodes U j (U j is all the child nodes of U 0 ) and the amount of change of the distributed secret key from all the child nodes. The distributed secret key Δd j is received (step S1602).
これは,図16の受信部1404による動作である。上記ステップS1601とステップS1602は略同時進行するように図示されているが,必ずしも同時進行でなくてもよく,例えば,ステップS1601の終了後,次にステップS1602を実行する場合,あるいは,ステップS1602の終了後,次にステップS1601を実行する場合などでも実施可能である。
This is an operation by the receiving
次に,ステップS1601およびステップS1602の終了後,ステップS1601で得られた分散電子署名s0と,ステップS1602で子ノードから受信した分散電子署名sj(UjはU0のすべての子ノード)とを掛け合わせ,上記式13に示すように電子署名sを生成する(S1603)。これは,図16に示す乗算部603の動作である。
Then, after completion of step S1601 and step S1602, the distributed digital signature s 0 obtained in step S1601, distributed electronic signature received from the step S1602 child node s j (U j all child nodes of U 0) And an electronic signature s is generated as shown in Equation 13 (S1603). This is the operation of the
また,ステップS1603と平行して,分散秘密鍵d0を,受信した分散秘密鍵Δdj(UjはU0のすべての子ノード)を用いて上記式16に示すように更新する(S1604)。これは,図16に示す分散秘密鍵更新部1405の動作である。
In parallel with step S1603, the distributed secret key d 0, the received distributed secret key Δd j (U j all child nodes of U 0) is updated as shown in Equation 16 by using (S1604) . This is the operation of the distributed secret
なお,上記ステップS1603とステップS1604は略同時進行するように図示されているが,必ずしも同時進行の場合に限定されず,例えば,ステップS1603の終了後,次にステップS1604を実行する場合,あるいは,ステップS1604の終了後,次にステップS1603を実行する場合などでも実施可能である。 Note that steps S1603 and S1604 are illustrated as proceeding substantially simultaneously, but the present invention is not necessarily limited to simultaneous progress. For example, when step S1604 is executed next after the end of step S1603, or The present invention can also be performed when step S1603 is executed next after step S1604 is completed.
以上,第4の実施の形態にかかる分散電子署名システム803の説明を終了するが,かかる分散電子署名システム803によって,以下に示すような優れた効果が存在する。
(1)第4の実施形態では,第2の実施形態と同様な効果を得ることができるが,さらに,各ノードの持つ分散秘密鍵を容易に更新することができる。したがって,長期間同じ分散秘密鍵で署名し続けるよりは,攻撃されて秘密鍵が推測され漏洩する等の危険性を減少させることができる。
Although the description of the distributed electronic signature system 803 according to the fourth embodiment has been completed, the distributed electronic signature system 803 has the following excellent effects.
(1) In the fourth embodiment, the same effect as in the second embodiment can be obtained, but the distributed secret key possessed by each node can be easily updated. Therefore, rather than continuing to sign with the same distributed secret key for a long time, it is possible to reduce the risk of the secret key being guessed and leaked.
なお,第1〜第4の実施形態において,最終的に代表ノードが電子署名sを算出するのであるが,図19〜図22に示すのように,その電子署名が正しいか否かを検算する署名検算部1706をさらに備えた代表ノードの構成も考えられる(図19〜図22に示す分散電子署名計算部1700から分散電子署名計算部2000)。
In the first to fourth embodiments, the representative node finally calculates the electronic signature s. However, as shown in FIGS. 19 to 22, whether or not the electronic signature is correct is calculated. A configuration of a representative node further including a
上記分散電子署名計算部1700〜分散電子署名計算部2000が上記署名検算部1706を備えることにより,ノードの故障や盗難などにより分散電子署名を計算することが実行できないノードがある場合には,それを検出することができる(ただし,どのノードであるかまでは特定することができない)。
When the distributed electronic signature calculation unit 1700 to the distributed electronic signature calculation unit 2000 includes the
上記署名検算部1706は,算出された電子署名s,電子署名公開鍵e,および電子署名したメッセージmを受け取り,下記式19に示すような計算を行い算出したメッセージm’とメッセージmに一方向性ハッシュ関数を施したh(m)とを比較して,等しいと判断した場合,電子署名が正しく算出されたという検算結果を出力する。
The
m’=se (mod n) …(式19) m ′ = s e (mod n) (Equation 19)
また一方で,上記署名検算部1706は,メッセージm’とh(m)との算出値が異なると判断した場合,電子署名が正しく算出されていないという検算結果を出力する。
On the other hand, if the
なお,上述した一連の処理は,専用の回路素子等からなるハードウェアにより行うこともできるし,ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には,そのソフトウェアを構成するプログラムが,汎用のコンピュータやマイクロコンピュータ等の情報処理装置にインストールされ,上記情報処理装置をノード10(又は,ノード11)/代表ノード13(又は,代表ノード14)として機能させる。 The series of processes described above can be performed by hardware including a dedicated circuit element or the like, or can be performed by software. When a series of processing is performed by software, a program constituting the software is installed in an information processing apparatus such as a general-purpose computer or microcomputer, and the information processing apparatus is connected to the node 10 (or node 11) / representative node. 13 (or representative node 14).
プログラムは,コンピュータに内蔵されている記録媒体としてのハードディスクやEEPROM,ROMなどに予め記録しておくことができる。 The program can be recorded in advance on a hard disk, EEPROM, ROM, or the like as a recording medium built in the computer.
あるいはまた,プログラムは,ハードディスクドライブに限らず,フレキシブルディスク,CD−ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc),磁気ディスク,半導体メモリなどのリムーバブル記録媒体に,一時的あるいは永続的に格納(記録)しておくことができる。 Alternatively, the program is not limited to a hard disk drive, but is a removable recording medium such as a flexible disk, a CD-ROM (Compact Disc Read Only Memory), a MO (Magneto Optical) disk, a DVD (Digital Versatile Disc), a magnetic disk, and a semiconductor memory. Can be stored (recorded) temporarily or permanently.
なお,プログラムは,上述したようなリムーバブル記録媒体からコンピュータにインストールする他,ダウンロードサイトから,ディジタル衛星放送用の人工衛星を介して,コンピュータに無線で転送したり,LAN(Local Area Network),インターネットといったネットワークを介して,コンピュータに有線で転送し,コンピュータでは,そのようにして転送されてくるプログラムを受信し,内蔵するハードディスク等にインストールすることができる。 The program is installed on the computer from the removable recording medium as described above, and is transferred from the download site to the computer wirelessly via a digital satellite broadcasting artificial satellite, or a LAN (Local Area Network) or the Internet. Such a program can be transferred to a computer via a network, and the computer can receive the program transferred in this way and install it on a built-in hard disk or the like.
ここで,本明細書において,コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは,必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく,並列的あるいは個別に実行される処理(例えば,並列処理あるいはオブジェクトによる処理)も含むものである。 Here, in this specification, the processing steps for describing a program for causing a computer to perform various processes do not necessarily have to be processed in time series in the order described in the flowchart, but in parallel or individually. This includes processing to be executed (for example, parallel processing or processing by an object).
また,プログラムは,1のコンピュータにより処理されるものであっても良いし,複数のコンピュータによって分散処理されるものであっても良い。 The program may be processed by one computer, or may be distributedly processed by a plurality of computers.
なお,本実施の形態では,不正を行う装置(ノード)が存在する場合にでも電子署名を生成できる機能や,不正を行う装置(ノード)を特定する機能を省くことにより,分散して計算する全部のノードとお互いに必ずしも通信する必要がなく,またノードの性能に応じた分散計算ができるように,適切な大きさの分散秘密鍵を各々のノードが保持することができる。 In the present embodiment, calculation is performed in a distributed manner by omitting the function that can generate an electronic signature even when there is a fraudulent device (node) and the function that identifies the fraudulent device (node). It is not always necessary for all nodes to communicate with each other, and each node can hold a distributed secret key of an appropriate size so that distributed calculation can be performed according to the performance of the node.
以上,添付図面を参照しながら本発明の好適な実施形態について説明したが,本発明はかかる例に限定されない。当業者であれば,特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例を想定し得ることは明らかであり,それらについても当然に本発明の技術的範囲に属するものと了解される。 As mentioned above, although preferred embodiment of this invention was described referring an accompanying drawing, this invention is not limited to this example. It is obvious for a person skilled in the art that various changes or modifications can be envisaged within the scope of the technical idea described in the claims, and these are naturally within the technical scope of the present invention. It is understood that it belongs.
10,11 ノード
13,14 代表ノード
100 分散電子署名計算部
101 分散秘密鍵保持部
102 べき乗剰余計算部
103 送信部
10, 11
Claims (12)
前記分散電子署名計算装置は,前記電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵のうちいずれか一つを保持する分散電子署名鍵保持部と;
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名の全部又は一部として用いられる分散電子署名を算出するべき乗剰余計算部と;
前記分散電子署名を前記代表分散電子署名計算装置に送信する送信部とを備えており,
前記代表分散電子署名計算装置は,前記電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵のうちいずれか一つを保持する分散電子署名鍵保持部と;
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名の一部として用いられる分散電子署名を算出するべき乗剰余計算部と;
前記1又は2以上の分散電子署名計算装置各々で計算された分散電子署名を受信する受信部と;
前記代表分散電子署名計算装置により算出された分散電子署名と前記1又は2以上の分散電子署名計算装置により算出された分散電子署名とを掛け合わせることで前記メッセージに対する電子署名を算出する乗算部とを備えることを特徴とする,分散電子署名計算装置。 In a distributed electronic signature system comprising one or more distributed electronic signature calculation devices and a representative distributed electronic signature calculation device that calculates an electronic signature based on the result of distributed processing in each of the distributed electronic signature calculation devices:
The distributed electronic signature calculation apparatus includes a distributed electronic signature key holding unit that holds any one of distributed electronic signature keys in which a plurality of electronic signature keys for calculating the electronic signature are secretly distributed;
Based on the message targeted for the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit, the remainder to calculate the distributed electronic signature used as all or part of the electronic signature With the calculation part;
A transmission unit for transmitting the distributed electronic signature to the representative distributed electronic signature calculation device,
The representative distributed electronic signature calculation apparatus includes a distributed electronic signature key holding unit that holds any one of distributed electronic signature keys in which a plurality of electronic signature keys for calculating the electronic signature are secretly distributed;
Based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit, the modular multiplication unit to calculate the distributed electronic signature used as a part of the electronic signature When;
A receiving unit that receives a distributed electronic signature calculated by each of the one or more distributed electronic signature calculation devices;
A multiplication unit that calculates an electronic signature for the message by multiplying the distributed electronic signature calculated by the representative distributed electronic signature calculation device and the distributed electronic signature calculated by the one or more distributed electronic signature calculation devices; A distributed electronic signature calculation apparatus comprising:
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる分散電子署名を算出するべき乗剰余計算部と;
前記分散電子署名を外部の装置に送信する送信部と;
を備えることを特徴とする,分散電子署名計算装置。 A distributed electronic signature key holding unit that holds any one of distributed electronic signature keys in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed;
Based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit, a distributed electronic signature used as a whole or a part for calculating the electronic signature is calculated. A modular multiplication section to be performed;
A transmission unit for transmitting the distributed electronic signature to an external device;
A distributed electronic signature calculation apparatus comprising:
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名の一部として用いられる第1の分散電子署名を算出するべき乗剰余計算部と;
1又は2以上の外部の装置各々で計算された第2の分散電子署名を受信する受信部と;
前記第1の分散電子署名と前記1又は2以上の第2の分散電子署名とを掛け合わせることで前記メッセージに対する電子署名を算出する乗算部と;
を備えることを特徴とする,分散電子署名計算装置。 A distributed electronic signature key holding unit that holds any one of distributed electronic signature keys in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed;
A power to calculate a first distributed electronic signature used as a part of the electronic signature based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit A remainder calculation unit;
A receiving unit for receiving a second distributed electronic signature calculated by each of the one or more external devices;
A multiplication unit that calculates an electronic signature for the message by multiplying the first distributed electronic signature and the one or more second distributed electronic signatures;
A distributed electronic signature calculation apparatus comprising:
前記分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;
1又は2以上の外部の装置で計算された第2の分散電子署名を受信する受信部と;
前記べき乗剰余計算部により算出された前記第1の分散電子署名と前記受信部により受信された前記第2の分散電子署名とを掛け合わせることで第3の分散電子署名を算出する乗算部と;
前記第3の分散電子署名を送信する送信部とを備えており,
前記代表分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵のうちいずれか一つを保持する分散電子署名鍵保持部と;
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名の一部として用いられる第1の分散電子署名を算出するべき乗剰余計算部と;
1又は2以上の外部の装置各々で計算された第2の分散電子署名を受信する受信部と;
前記第1の分散電子署名と前記1又は2以上の第2の分散電子署名とを掛け合わせることで前記メッセージに対する電子署名を算出する乗算部とを備え,
前記分散電子署名計算装置と前記代表分散電子署名計算装置とはツリー型マルチホップネットワークを構成することを特徴とする,分散電子署名計算システム。 In a distributed electronic signature system comprising one or more distributed electronic signature calculation devices and a representative distributed electronic signature calculation device that calculates an electronic signature based on the result of distributed processing in each of the distributed electronic signature calculation devices:
A distributed electronic signature key holding unit for holding a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed;
First distributed electrons used in whole or in part to calculate the electronic signature based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit A modular exponentiation unit for calculating a signature;
A receiving unit for receiving a second distributed electronic signature calculated by one or more external devices;
A multiplier for calculating a third distributed electronic signature by multiplying the first distributed electronic signature calculated by the power-residue calculating unit and the second distributed electronic signature received by the receiving unit;
A transmission unit for transmitting the third distributed electronic signature,
The representative distributed electronic signature calculation apparatus includes: a distributed electronic signature key holding unit that holds any one of distributed electronic signature keys obtained by secretly distributing a plurality of electronic signature keys for calculating an electronic signature;
A power to calculate a first distributed electronic signature used as a part of the electronic signature based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit A remainder calculation unit;
A receiving unit for receiving a second distributed electronic signature calculated by each of the one or more external devices;
A multiplication unit that calculates an electronic signature for the message by multiplying the first distributed electronic signature and the one or more second distributed electronic signatures;
The distributed electronic signature calculation system, wherein the distributed electronic signature calculation apparatus and the representative distributed electronic signature calculation apparatus constitute a tree-type multi-hop network.
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;
1又は2以上の外部の装置で計算された第2の分散電子署名を受信する受信部と;
前記べき乗剰余計算部により算出された前記第1の分散電子署名と前記受信部により受信された前記第2の分散電子署名とを掛け合わせることで第3の分散電子署名を算出する乗算部と;
前記第3の分散電子署名を送信する送信部とを備えることを特徴とする,分散電子署名計算装置。 A distributed electronic signature key holding unit for holding a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed;
First distributed electrons used in whole or in part to calculate the electronic signature based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit A modular exponentiation unit for calculating a signature;
A receiving unit for receiving a second distributed electronic signature calculated by one or more external devices;
A multiplier for calculating a third distributed electronic signature by multiplying the first distributed electronic signature calculated by the power-residue calculating unit and the second distributed electronic signature received by the receiving unit;
A distributed electronic signature calculation apparatus comprising: a transmission unit that transmits the third distributed electronic signature.
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる分散電子署名を算出するべき乗剰余計算部と;
乱数を生成する乱数生成部と;
前記乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部と;
前記分散電子署名及び/又は前記乱数を送信する送信部とを備えることを特徴とする,分散電子署名計算装置。 A distributed electronic signature key holding unit for holding a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed;
Based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit, a distributed electronic signature used as a whole or a part for calculating the electronic signature is calculated. A modular multiplication section to be performed;
A random number generator for generating random numbers;
A distributed electronic signature key update unit that calculates a distributed electronic signature key using the random number, and updates the calculated distributed electronic signature key;
A distributed electronic signature calculation apparatus, comprising: a transmission unit that transmits the distributed electronic signature and / or the random number.
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;
1又は2以上の外部の装置で計算された第2の分散電子署名及び/又は1又は2以上の外部の装置で生成された乱数を受信する受信部と;
前記べき乗剰余計算部で算出された第1の分散電子署名と上記受信部から得られた第2の分散電子署名とを掛け合わせることで電子署名を算出する乗算部と;
前記受信部から得られた乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部とを備えることを特徴とする,分散電子署名計算装置。 A distributed electronic signature key holding unit for holding a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed;
First distributed electrons used as a whole or a part for calculating the electronic signature based on the message to be subjected to the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit A modular exponentiation unit for calculating a signature;
A receiving unit for receiving a second distributed electronic signature calculated by one or more external devices and / or a random number generated by one or more external devices;
A multiplying unit that calculates an electronic signature by multiplying the first distributed electronic signature calculated by the power-residue calculating unit and the second distributed electronic signature obtained from the receiving unit;
A distributed electronic signature calculation apparatus comprising: a distributed electronic signature key update unit that calculates a distributed electronic signature key using a random number obtained from the receiving unit and updates the calculated distributed electronic signature key. .
前記分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる分散電子署名を算出するべき乗剰余計算部と;
乱数を生成する乱数生成部と;
前記乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部と;
前記分散電子署名及び/又は前記乱数を送信する送信部とを備えており,
前記代表分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;
1又は2以上の前記分散電子署名計算装置で計算された第2の分散電子署名及び/又は該分散電子署名計算装置で生成された乱数を受信する受信部と;
前記べき乗剰余計算部で算出された第1の分散電子署名と,前記受信部から得られた第2の分散電子署名とを掛け合わせることで電子署名を算出する乗算部と;
前記受信部から得られた乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部とを備えることを特徴とする,分散電子署名システム。 In a distributed electronic signature system comprising one or more distributed electronic signature calculation devices and a representative distributed electronic signature calculation device that calculates an electronic signature based on the result of distributed processing in each of the distributed electronic signature calculation devices:
A distributed electronic signature key holding unit for holding a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed;
Based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit, a distributed electronic signature used as a whole or a part for calculating the electronic signature is calculated. A modular multiplication section to be performed;
A random number generator for generating random numbers;
A distributed electronic signature key update unit that calculates a distributed electronic signature key using the random number, and updates the calculated distributed electronic signature key;
A transmission unit for transmitting the distributed electronic signature and / or the random number,
The representative distributed electronic signature calculation device includes a distributed electronic signature key holding unit for holding a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed;
First distributed electrons used in whole or in part to calculate the electronic signature based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit A modular exponentiation unit for calculating a signature;
A receiving unit for receiving one or more of the distributed electronic signature calculation devices and a second distributed electronic signature calculated by the distributed electronic signature calculation device and / or a random number generated by the distributed electronic signature calculation device;
A multiplying unit that calculates an electronic signature by multiplying the first distributed electronic signature calculated by the power-residue calculating unit and the second distributed electronic signature obtained from the receiving unit;
A distributed electronic signature system, comprising: a distributed electronic signature key update section that calculates a distributed electronic signature key using a random number obtained from the receiving section and updates the calculated distributed electronic signature key.
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;
第1の乱数を生成する乱数生成部と;
前記第1の乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部と;
1又は2以上の外部の装置で計算された第2の分散電子署名及び/又は該外部の装置で生成された第2の乱数を受信する受信部と;
前記べき乗剰余計算部で算出された前記第1の分散電子署名と,前記受信部から得られた前記第2の分散電子署名とを掛け合わせることで第3の分散電子署名を算出する乗算部と;
前記第1の乱数と前記受信部から得られた前記第2の乱数とを足し合わせることで第3の乱数を生成する加算部と;
前記第3の分散電子署名及び/又は前記第3の乱数を送信する送信部と;
を備えることを特徴とする,分散電子署名計算装置。 A distributed electronic signature key holding unit for holding a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed;
First distributed electrons used as a whole or a part for calculating the electronic signature based on the message to be subjected to the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit A modular exponentiation unit for calculating a signature;
A random number generator for generating a first random number;
A distributed electronic signature key update unit that calculates a distributed electronic signature key using the first random number, and updates the calculated distributed electronic signature key;
A receiving unit for receiving a second distributed electronic signature calculated by one or more external devices and / or a second random number generated by the external devices;
A multiplication unit that calculates a third distributed electronic signature by multiplying the first distributed electronic signature calculated by the power-residue calculating unit and the second distributed electronic signature obtained from the receiving unit; ;
An adding unit that generates a third random number by adding the first random number and the second random number obtained from the receiving unit;
A transmission unit for transmitting the third distributed electronic signature and / or the third random number;
A distributed electronic signature calculation apparatus comprising:
前記分散電子署名計算装置は,電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;
第1の乱数を生成する乱数生成部と;
前記第1の乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部と;
1又は2以上の外部の装置で計算された第2の分散電子署名及び/又は該外部の装置で生成された第2の乱数を受信する受信部と;
前記べき乗剰余計算部で算出された前記第1の分散電子署名と,前記受信部から得られた前記第2の分散電子署名とを掛け合わせることで第3の分散電子署名を算出する乗算部と;
前記第1の乱数と前記受信部から得られた前記第2の乱数とを足し合わせることで第3の乱数を生成する加算部と;
前記第3の分散電子署名及び/又は前記第3の乱数を送信する送信部とを備えており,
前記代表分散電子署名計算装置は,前記電子署名を計算するための電子署名鍵が複数に秘密分散された分散電子署名鍵を保持する分散電子署名鍵保持部と;
前記電子署名の対象とするメッセージと,前記分散電子署名鍵保持部に記憶された分散電子署名鍵とを基にして,該電子署名を算出するために全部又は一部として用いる第1の分散電子署名を算出するべき乗剰余計算部と;
1又は2以上の外部の装置で計算された第2の分散電子署名及び/又は1又は2以上の外部の装置で生成された乱数を受信する受信部と;
前記べき乗剰余計算部で算出された第1の分散電子署名と上記受信部から得られた第2の分散電子署名とを掛け合わせることで電子署名を算出する乗算部と;
前記受信部から得られた乱数を用いて分散電子署名鍵を算出し,該算出された分散電子署名鍵に更新する分散電子署名鍵更新部とを備えており,
前記分散電子署名システムは,ツリー型マルチホップネットワークで構成されることを特徴とする,分散電子署名計算システム。 In a distributed electronic signature system comprising one or more distributed electronic signature calculation devices and a representative distributed electronic signature calculation device that calculates an electronic signature based on the result of distributed processing in each of the distributed electronic signature calculation devices:
A distributed electronic signature key holding unit for holding a distributed electronic signature key in which a plurality of electronic signature keys for calculating an electronic signature are secretly distributed;
First distributed electrons used in whole or in part to calculate the electronic signature based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit A modular exponentiation unit for calculating a signature;
A random number generator for generating a first random number;
A distributed electronic signature key update unit that calculates a distributed electronic signature key using the first random number and updates the distributed electronic signature key to the calculated distributed electronic signature key;
A receiving unit for receiving a second distributed electronic signature calculated by one or more external devices and / or a second random number generated by the external devices;
A multiplier that calculates a third distributed electronic signature by multiplying the first distributed electronic signature calculated by the power-residue calculating unit and the second distributed electronic signature obtained from the receiving unit; ;
An adding unit that generates a third random number by adding the first random number and the second random number obtained from the receiving unit;
A transmission unit for transmitting the third distributed electronic signature and / or the third random number,
The representative distributed electronic signature calculation apparatus includes a distributed electronic signature key holding unit that holds a distributed electronic signature key in which a plurality of electronic signature keys for calculating the electronic signature are secretly distributed;
First distributed electrons used in whole or in part to calculate the electronic signature based on the message to be the target of the electronic signature and the distributed electronic signature key stored in the distributed electronic signature key holding unit A modular exponentiation unit for calculating a signature;
A receiving unit for receiving a second distributed electronic signature calculated by one or more external devices and / or a random number generated by one or more external devices;
A multiplying unit that calculates an electronic signature by multiplying the first distributed electronic signature calculated by the power-residue calculating unit and the second distributed electronic signature obtained from the receiving unit;
A distributed electronic signature key update unit that calculates a distributed electronic signature key using a random number obtained from the receiving unit and updates the calculated distributed electronic signature key;
The distributed electronic signature calculation system is configured by a tree-type multi-hop network.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005172546A JP2006352254A (en) | 2005-06-13 | 2005-06-13 | Distributed electronic signature system, and distributed electronic signature calculation apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005172546A JP2006352254A (en) | 2005-06-13 | 2005-06-13 | Distributed electronic signature system, and distributed electronic signature calculation apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006352254A true JP2006352254A (en) | 2006-12-28 |
Family
ID=37647663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005172546A Withdrawn JP2006352254A (en) | 2005-06-13 | 2005-06-13 | Distributed electronic signature system, and distributed electronic signature calculation apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006352254A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011244320A (en) * | 2010-05-20 | 2011-12-01 | Nippon Telegr & Teleph Corp <Ntt> | Consignment calculation system and method thereof |
KR101244930B1 (en) | 2012-09-17 | 2013-03-18 | 숭실대학교산학협력단 | Application signature management server, and method for managing the server |
WO2014112551A1 (en) * | 2013-01-17 | 2014-07-24 | 日本電信電話株式会社 | Secret-key split storage system, split storage device, and secret-key split storage method |
JPWO2020152831A1 (en) * | 2019-01-24 | 2021-12-02 | 日本電気株式会社 | Information processing equipment, secret calculation method and program |
-
2005
- 2005-06-13 JP JP2005172546A patent/JP2006352254A/en not_active Withdrawn
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011244320A (en) * | 2010-05-20 | 2011-12-01 | Nippon Telegr & Teleph Corp <Ntt> | Consignment calculation system and method thereof |
KR101244930B1 (en) | 2012-09-17 | 2013-03-18 | 숭실대학교산학협력단 | Application signature management server, and method for managing the server |
WO2014112551A1 (en) * | 2013-01-17 | 2014-07-24 | 日本電信電話株式会社 | Secret-key split storage system, split storage device, and secret-key split storage method |
CN104919752A (en) * | 2013-01-17 | 2015-09-16 | 日本电信电话株式会社 | Secret-key split storage system, split storage device, and secret-key split storage method |
JPWO2014112551A1 (en) * | 2013-01-17 | 2017-01-19 | 日本電信電話株式会社 | Split storage device, secret key split storage method |
US9894056B2 (en) | 2013-01-17 | 2018-02-13 | Nippon Telegraph And Telephone Corporation | Segmented secret-key storage system, segment storage apparatus, segmented secret-key storage method |
CN104919752B (en) * | 2013-01-17 | 2018-04-27 | 日本电信电话株式会社 | Split storage appts, privacy key segmentation keeping method |
JPWO2020152831A1 (en) * | 2019-01-24 | 2021-12-02 | 日本電気株式会社 | Information processing equipment, secret calculation method and program |
JP7173170B2 (en) | 2019-01-24 | 2022-11-16 | 日本電気株式会社 | Information processing device, secure calculation method and program |
US11895230B2 (en) | 2019-01-24 | 2024-02-06 | Nec Corporation | Information processing apparatus, secure computation method, and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Anonymous and secure aggregation scheme in fog-based public cloud computing | |
CN110971413B (en) | Random number generation method, random number generation device and storage medium | |
US7266692B2 (en) | Use of modular roots to perform authentication including, but not limited to, authentication of validity of digital certificates | |
US7315941B2 (en) | Multi-certificate revocation using encrypted proof data for proving certificate's validity or invalidity | |
Zhao et al. | Blockchain based privacy-preserving software updates with proof-of-delivery for internet of things | |
US9419798B2 (en) | Public encryption method based on user ID | |
Shen et al. | Blockchain-based lightweight certificate authority for efficient privacy-preserving location-based service in vehicular social networks | |
Huang | A novel access control protocol for secure sensor networks | |
US8495373B2 (en) | Method of generating a cryptographic key, network and computer program therefor | |
Chow et al. | Server-aided signatures verification secure against collusion attack | |
WO2019198548A1 (en) | Blockchain network and establishment method therefor | |
Rajendiran et al. | A secure key predistribution scheme for WSN using elliptic curve cryptography | |
CN112016923A (en) | Intra-network cross-domain identity management method and system based on block chain and computational power network | |
Das et al. | A novel efficient access control scheme for large-scale distributed wireless sensor networks | |
Li et al. | A distributed authentication protocol using identity-based encryption and blockchain for LEO network | |
KR101213156B1 (en) | Distributed rivest shamir adleman signature method and signature generative node | |
Eissa et al. | Towards providing a new lightweight authentication and encryption scheme for MANET | |
Eissa et al. | A novel lightweight authentication scheme for mobile ad hoc networks | |
JP2006352254A (en) | Distributed electronic signature system, and distributed electronic signature calculation apparatus | |
Hu et al. | Identity-preserving public integrity checking with dynamic groups for cloud storage | |
Liu et al. | Certificate-based sequential aggregate signature | |
Liu et al. | Secure and efficient two-party collaborative SM9 signature scheme suitable for smart home | |
CN112132578A (en) | Efficient transaction processing method, tracking method and device based on block chain | |
Tseng et al. | A robust user authentication scheme with self‐certificates for wireless sensor networks | |
Yang et al. | Efficient certificateless encryption withstanding attacks from malicious KGC without using random oracles |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080902 |