JP6814094B2 - Consensus building system, program, and generation method - Google Patents

Consensus building system, program, and generation method Download PDF

Info

Publication number
JP6814094B2
JP6814094B2 JP2017101114A JP2017101114A JP6814094B2 JP 6814094 B2 JP6814094 B2 JP 6814094B2 JP 2017101114 A JP2017101114 A JP 2017101114A JP 2017101114 A JP2017101114 A JP 2017101114A JP 6814094 B2 JP6814094 B2 JP 6814094B2
Authority
JP
Japan
Prior art keywords
hash value
block
transaction
unit
selection result
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017101114A
Other languages
Japanese (ja)
Other versions
JP2018196097A (en
Inventor
清本 晋作
晋作 清本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KDDI Corp filed Critical KDDI Corp
Priority to JP2017101114A priority Critical patent/JP6814094B2/en
Publication of JP2018196097A publication Critical patent/JP2018196097A/en
Application granted granted Critical
Publication of JP6814094B2 publication Critical patent/JP6814094B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、合意形成システム、プログラム、及び生成方法に関する。 The present invention is agreement forming system, a program, and a generation method.

従来、ネットワークに接続する複数の端末の間における取引の履歴を記録するブロックチェーンに関する技術が知られている。 Conventionally, a technique related to a blockchain that records a history of transactions between a plurality of terminals connected to a network has been known.

Satoshi Nakamoto. Bitcoin: A peer-to-peer electronic cash system, 2008.Satoshi Nakamoto. Bitcoin: A peer-to-peer electronic cash system, 2008. Sompolinsky, Y., Zohar, A.: Accelerating bitcoin's transaction processing. Fast money grows on trees, not chains. IACR Cryptology ePrint Archive 2013 (2013)881.Sompolinsky, Y., Zohar, A .: Accelerating bitcoin's transaction processing. Fast money grows on trees, not chains. IACR Cryptology ePrint Archive 2013 (2013) 881. Lewenberg, Y., Sompolinsky, Y., Zohar, A.: Inclusive block chain protocols. In:Financial Cryptography and Data Security - 19th International Conference, FC2015, San Juan, Puerto Rico, January 26-30, 2015, Revised Selected Papers. (2015)528-547Lewenberg, Y., Sompolinsky, Y., Zohar, A .: Inclusive block chain protocols. In: Financial Cryptography and Data Security ―― 19th International Conference, FC2015, San Juan, Puerto Rico, January 26-30, 2015, Revised Selected Papers (2015) 528-547

近年、各種サービスを利用するユーザのポリシーに基づいて、当該ユーザの個人情報を適切に活用するプラットフォーム(Privacy Policy Manager(以下、PPM))が知られている。PPMを用いることにより、ユーザは、自身の個人情報が意図せず他者に知られることなく、各種サービスを利用することができる。この場合、各種サービスを利用した履歴は、ユーザが利用したサービスの詳細等を示しつつ、かつユーザの個人情報が他者に知られることのないような仕組みによって示されることが好ましい。
本発明は、上記問題に鑑みて為されたものであり、ブロックチェーンによってPPMの履歴情報を記録する仕組みを提供することを目的とする。
In recent years, a platform (Privacy Policy Manager (hereinafter, PPM)) that appropriately utilizes the personal information of the user based on the policy of the user who uses various services is known. By using PPM, the user can use various services without unintentionally knowing his / her personal information to others. In this case, it is preferable that the history of using various services is shown by a mechanism that shows the details of the service used by the user and the personal information of the user is not known to others.
The present invention has been made in view of the above problems, and an object of the present invention is to provide a mechanism for recording PPM history information by a blockchain.

(1)本発明の一態様は、複数の第1の生成装置と、少なくとも1つの第2の生成装置とを備え、ブロックチェーンのブロックの合意形成を行う合意形成システムであって、それぞれの前記第1の生成装置は、トランザクションのハッシュ値を第1ハッシュ値として前記第2の生成装置に送信するハッシュ値送信部と、前記第2の生成装置から送信されたルートハッシュ値に基づいて、オープン状態のブロックをクローズ状態にするか否かを選択する選択部と、前記選択部が選択した選択結果を示す情報を前記第2の生成装置に送信する選択結果送信部と、を備え、前記第2の生成装置は、前記トランザクションと、前記第1ハッシュ値とを受信する受信部と、前記トランザクションのハッシュ値を第2ハッシュ値として算出する算出部と、前記第1の生成装置がそれぞれ送信する前記第1ハッシュ値と、前記算出部が算出した前記第2ハッシュ値と、前記ブロックチェーンとに基づいて、前記ルートハッシュ値を算出するルート算出部と、算出した前記ルートハッシュ値を複数の前記第1の生成装置にそれぞれ送信するルート値送信部と、前記ルートハッシュ値を送信したことに応じて、前記第1の生成装置がそれぞれ送信する前記選択結果を受信する選択結果受信部と、前記選択結果受信部が受信した前記選択結果に基づいて、オープン状態であるブロックをクローズ状態にする否かを判定する判定部と、前記判定部の判定結果がオープン状態であるブロックをクローズ状態にすることを示す場合、ネットワークに接続される端末にクローズ状態にされたブロックを送信するブロック送信部と、を備える合意形成システムである。 (1) One aspect of the present invention is an agreement formation system including a plurality of first generators and at least one second generator to form a block chain agreement, each of which is described above. The first generator opens based on the hash value transmitter that transmits the hash value of the transaction as the first hash value to the second generator and the root hash value transmitted from the second generator. The first unit includes a selection unit that selects whether or not to close the block in the state, and a selection result transmission unit that transmits information indicating the selection result selected by the selection unit to the second generation device . The generation device 2 transmits the transaction, a receiving unit that receives the first hash value, a calculation unit that calculates the hash value of the transaction as a second hash value, and the first generation device, respectively . wherein a first hash value, and the second hash value which the calculation unit is calculated, based on said block chain, a route calculating unit for calculating the root hash value, the calculated the root hash value, a plurality of and the root value transmission unit that transmits to each of the first generator, and wherein in response to transmitting the root hash value, the selection result reception unit which first generating device receives the selection result to be transmitted, respectively, Based on the selection result received by the selection result receiving unit, the determination unit that determines whether or not to close the block in the open state and the block in which the determination result of the determination unit is in the open state are closed. When indicating to do so, it is a consensus formation system including a block transmitter that transmits a closed block to a terminal connected to the network.

(2)本発明の一態様は、上記(1)に記載の合意形成システムにおいて、前記選択部は、前記ルートハッシュ値に、自装置が算出した前記第2ハッシュ値が含まれている場合、オープン状態のブロックをクローズ状態にすると選択する(2) One aspect of the present invention is that in the consensus building system described in (1) above, when the selection unit includes the second hash value calculated by the own device in the root hash value. Select when the open block is closed .

(3)本発明の一態様は、上記(1)又は(2)に記載の合意形成システムにおいて、前記選択部は、オープン状態であるブロックの1つ前にクローズ状態にされたブロックのハッシュ値が、前記ルートハッシュ値に含まれていない場合、オープン状態のブロックをクローズ状態にしないと選択する。 (3) In one aspect of the present invention, in the consensus building system according to (1) or (2) above, the selection unit is a hash value of a block that is closed before a block that is open. However, if it is not included in the root hash value, the open block is selected not to be closed.

(4)本発明の一態様は、上記(1)から(3)のいずれかに記載の合意形成システムにおいて、複数の前記第1の生成装置には、信頼度がそれぞれ付されており、前記判定部は、オープン状態であるブロックをクローズ状態にすることを示す前記選択結果を送信した前記第1の生成装置にそれぞれ付される信頼度の和が、所定の閾値以上である場合、オープン状態であるブロックをクローズ状態にすると判定する。 (4) In one aspect of the present invention, in the consensus building system according to any one of (1) to (3) above , the plurality of first generation devices are each provided with reliability. The determination unit is in the open state when the sum of the reliabilitys attached to the first generators that have transmitted the selection result indicating that the block in the open state is to be closed is equal to or greater than a predetermined threshold value. It is determined that the block is closed.

(5)本発明の一態様は、上記(1)から(4)のいずれかに記載の合意形成システムにおいて、前記第2の生成装置は、前記ブロックチェーンに基づいて、前記受信部が受信した前記トランザクションのうち、前記ブロックチェーンに記録されていないトランザクションである未記録トランザクションを抽出する抽出部をさらに備え、前記算出部は、前記抽出部が抽出する前記未記録トランザクションのハッシュ値を前記第2ハッシュ値として算出する。 (5) In one aspect of the present invention, in the agreement formation system according to any one of (1) to (4) above, the second generation device is received by the receiving unit based on the blockchain. The second calculation unit further includes an extraction unit that extracts unrecorded transactions that are transactions that are not recorded in the blockchain among the transactions, and the calculation unit obtains the hash value of the unrecorded transaction extracted by the extraction unit. Calculated as a hash value.

(6)本発明の一態様は、上記(5)に記載の合意形成システムにおいて、前記抽出部は、前記ブロックチェーンに含まれる複数のブロックのうち、オープン状態であるブロックの1つ前にクローズ状態にされたブロックに記録される取引が行われた時刻以降の取引のトランザクションを前記未記録トランザクションとして抽出する。 (6) In one aspect of the present invention, in the consensus building system described in (5) above, the extraction unit is closed before one of the blocks in the open state among the plurality of blocks included in the blockchain. Transactions of transactions after the time when the transaction recorded in the stated block is performed are extracted as the unrecorded transaction.

(7)本発明の一態様は、コンピュータに、トランザクションと、第1の生成装置が生成する第1ハッシュ値とを受信する受信ステップと、前記トランザクションのハッシュ値を第2ハッシュ値として算出する算出ステップと、前記第1の生成装置がそれぞれ送信する前記第1ハッシュ値と、前記算出ステップにおいて算出された前記第2ハッシュ値と、ブロックチェーンとに基づいて、ルートハッシュ値を算出するルート算出ステップと、算出された前記ルートハッシュ値を、複数の前記第1の生成装置にそれぞれ送信するルート値送信ステップと、前記ルートハッシュ値を送信したことに応じて、前記第1の生成装置がそれぞれ選択するオープン状態のブロックをクローズ状態にするか否かの選択結果を、それぞれの前記第1の生成装置から受信する選択結果受信ステップと、前記選択結果受信ステップにおいて受信された前記選択結果に基づいて、オープン状態であるブロックをクローズ状態にする否かを判定する判定ステップと、前記判定ステップにおける判定結果がオープン状態であるブロックをクローズ状態にすることを示す場合、ネットワークに接続される端末にクローズ状態にされたブロックを送信するブロック送信ステップと、を実行させるためのプログラムである。 (7) One aspect of the present invention is a receiving step in which a computer receives a transaction and a first hash value generated by a first generator, and a calculation in which the hash value of the transaction is calculated as a second hash value. A route calculation step of calculating a route hash value based on the step, the first hash value transmitted by the first generator, the second hash value calculated in the calculation step, and the blockchain. The route value transmission step of transmitting the calculated route hash value to the plurality of first generation devices, and the first generation device select each of the calculated route hash values according to the transmission of the route hash value. The selection result of whether or not to close the open state block is based on the selection result receiving step received from each of the first generators and the selection result received in the selection result receiving step. , When the determination step of determining whether or not to close the block in the open state and the determination result in the determination step indicate that the block in the open state is to be closed, the terminal connected to the network is closed. It is a program for executing a block transmission step of transmitting a block in a state .

(8)本発明の一態様は、コンピュータが、トランザクションと、第1の生成装置が生成する第1ハッシュ値とを受信する受信ステップと、コンピュータが、前記トランザクションのハッシュ値を第2ハッシュ値として算出する算出ステップと、コンピュータが、前記第1の生成装置がそれぞれ送信する前記第1ハッシュ値と、前記算出ステップにおいて算出された前記第2ハッシュ値と、ブロックチェーンとに基づいて、ルートハッシュ値を算出するルート算出ステップと、コンピュータが、算出された前記ルートハッシュ値を、複数の前記第1の生成装置にそれぞれ送信するルート値送信ステップと、コンピュータが、前記ルートハッシュ値を送信したことに応じて、前記第1の生成装置がそれぞれ選択するオープン状態のブロックをクローズ状態にするか否かの選択結果を、それぞれの前記第1の生成装置から受信する選択結果受信ステップと、コンピュータが、前記選択結果受信ステップにおいて受信された前記選択結果に基づいて、オープン状態であるブロックをクローズ状態にする否かを判定する判定ステップと、コンピュータが、前記判定ステップにおける判定結果がオープン状態であるブロックをクローズ状態にすることを示す場合、ネットワークに接続される端末にクローズ状態にされたブロックを送信するブロック送信ステップと、を有する生成方法である。 (8) One aspect of the present invention is a receiving step in which the computer receives the transaction and the first hash value generated by the first generator, and the computer uses the hash value of the transaction as the second hash value. The root hash value based on the calculation step to be calculated, the first hash value transmitted by the first generation device by the computer, the second hash value calculated in the calculation step, and the blockchain. The route calculation step of calculating the above, the route value transmission step in which the computer transmits the calculated route hash value to each of the plurality of first generation devices, and the computer transmitting the route hash value. Correspondingly, the selection result receiving step of receiving the selection result of whether or not to close the open state block selected by the first generator from each of the first generators, and the computer Based on the selection result received in the selection result receiving step, a determination step for determining whether or not to close the block in the open state, and a block in which the computer determines whether the determination result in the determination step is in the open state. Is a generation method having a block transmission step of transmitting a closed block to a terminal connected to a network when indicating that the computer is to be closed .

本発明によれば、ブロックチェーンによってPPMの履歴情報を記録する仕組みを提供することができる。 According to the present invention, it is possible to provide a mechanism for recording PPM history information by a blockchain.

従来技術におけるブロックチェーンの構成の一例を示す図である。It is a figure which shows an example of the structure of the blockchain in the prior art. 第1実施形態の生成装置が接続されるネットワーク構成の一例を示す図である。It is a figure which shows an example of the network configuration to which the generation apparatus of 1st Embodiment is connected. 第1実施形態の生成装置の構成の一例を示す図である。It is a figure which shows an example of the structure of the generation apparatus of 1st Embodiment. 第1実施形態の生成装置が生成するトランザクションハッシュ値を記録するブロックチェーンの一例を示す図である。It is a figure which shows an example of the blockchain which records the transaction hash value generated by the generation apparatus of 1st Embodiment. 第1実施形態の生成装置の動作の一例を示す流れ図である。It is a flow chart which shows an example of the operation of the generator of 1st Embodiment. 第2実施形態の合意形成システムのネットワーク構成の一例を示す図である。It is a figure which shows an example of the network structure of the consensus building system of 2nd Embodiment. 第2実施形態の生成装置の構成の一例を示す図である。It is a figure which shows an example of the structure of the generation apparatus of 2nd Embodiment. 第2実施形態の合意形成システムの動作の一例を示す流れ図である。It is a flow chart which shows an example of the operation of the consensus building system of 2nd Embodiment. 第2実施形態におけるルート算出部のルートハッシュ値の算出方法の一例を示す図である。It is a figure which shows an example of the calculation method of the route hash value of the route calculation part in 2nd Embodiment. 第2実施形態の生成装置が生成するルートハッシュ値を記録するブロックチェーンの一例を示す図である。It is a figure which shows an example of the blockchain which records the root hash value generated by the generation apparatus of 2nd Embodiment. 変形例の合意形成システムのネットワーク構成の一例を示す図である。It is a figure which shows an example of the network structure of the consensus building system of a modification.

[従来のブロックチェーンについて]
図1を参照して、従来のブロックチェーンの構成について説明する。
図1は、従来技術におけるブロックチェーンの構成の一例を示す図である。
図1に示す通り、従来、ブロックチェーンを構成する各ブロックには、当該ブロックの1つ前のブロックのハッシュ値と、トランザクションと、当該ブロックのナンス値が含まれる。トランザクションは、当該ブロックの1つ前のブロックがクローズ状態にする処理が開始されてから、当該ブロックのクローズ処理が開始されるまでの間に行われた取引の履歴示す情報(以下、履歴情報)である。したがって、ブロックチェーンには、履歴情報が記録される。履歴情報には、例えば、送信先の個人情報、送信元の個人情報、及び送金額等が含まれる。ブロックチェーンを参照可能な参照者は、トランザクションTを参照することにより、各種個人情報を参照することが可能である。
[About conventional blockchain]
A conventional blockchain configuration will be described with reference to FIG.
FIG. 1 is a diagram showing an example of a blockchain configuration in the prior art.
As shown in FIG. 1, conventionally, each block constituting the blockchain includes a hash value of the block immediately before the block, a transaction, and a nonce value of the block. The transaction is information indicating the history of transactions performed between the start of the process of closing the block immediately before the block and the start of the close process of the block (hereinafter referred to as history information). Is. Therefore, historical information is recorded on the blockchain. The history information includes, for example, personal information of a destination, personal information of a sender, a remittance amount, and the like. A reference person who can refer to the blockchain can refer to various personal information by referring to the transaction T.

近年、各種サービスを利用するユーザのポリシーに基づいて、当該ユーザの個人情報を適切に活用するプラットフォーム(Privacy Policy Manager(以下、PPM))が知られている。PPMとは、サービスを利用するユーザのポリシーに基づいた個人情報の流通を実現する仕組みである。ユーザは、PPMを介して各種サービスを利用することにより、ユーザ自身が意図しない用途に個人情報が用いられることを抑制することができる。ここで、ユーザがPPMを介して各種サービスを利用した履歴は、利用した内容の正当性を保証しつつ、かつユーザの個人情報が他者に知られることのないような仕組みによって示されることが好ましい。本発明の生成装置10は、ブロックチェーンに記録される履歴情報であって、PPMを利用するユーザの履歴情報を生成する。以下、生成装置10の概要について説明する。 In recent years, a platform (Privacy Policy Manager (hereinafter, PPM)) that appropriately utilizes the personal information of the user based on the policy of the user who uses various services is known. PPM is a mechanism for realizing the distribution of personal information based on the policy of the user who uses the service. By using various services via PPM, the user can suppress the use of personal information for purposes not intended by the user himself / herself. Here, the history of the user using various services via PPM may be shown by a mechanism that guarantees the validity of the content used and prevents the user's personal information from being known to others. preferable. The generation device 10 of the present invention is history information recorded on the blockchain and generates history information of a user who uses PPM. The outline of the generator 10 will be described below.

[第1実施形態]
以下、図を参照して本発明の実施形態について説明する。
[First Embodiment]
Hereinafter, embodiments of the present invention will be described with reference to the drawings.

[生成装置の概要について]
図2は、第1実施形態の生成装置10が接続されるネットワーク構成の一例を示す図である。本実施形態の一例において、生成装置10は、例えば、PPMを実現する装置(以下、PPM装置)内に備えられる。
[Overview of generator]
FIG. 2 is a diagram showing an example of a network configuration to which the generation device 10 of the first embodiment is connected. In an example of this embodiment, the generation device 10 is provided in, for example, a device that realizes PPM (hereinafter, PPM device).

本実施形態の一例では、ユーザが金銭の取引を、ネットワークNWを介して行う。この場合、PPM装置と、ユーザが使用する端末(以下、端末TM)とは、ネットワークNWを介して接続される。図示する通り、本実施形態では、複数の端末TM(端末TM−1〜TM−n)がネットワークNWを介して接続される。nとは、自然数である。以降の説明において、端末TM−1〜TM−nを区別しない場合、総称して端末TMと記載する。 In one example of the present embodiment, the user conducts a money transaction via the network NW. In this case, the PPM device and the terminal used by the user (hereinafter, terminal TM) are connected via the network NW. As shown in the figure, in the present embodiment, a plurality of terminal TMs (terminals TM-1 to TM-n) are connected via a network NW. n is a natural number. In the following description, when terminals TM-1 to TM-n are not distinguished, they are collectively referred to as terminal TM.

ユーザは、端末TMを用いて、取引の内容を示す情報(以下、トランザクションT)をPPM装置に送信する。トランザクションTには、例えば、送信先の個人情報、送信元の個人情報、及び送金額等が含まれる。生成装置10は、各端末TMから受信したトランザクションT(図示するトランザクションT−1〜T−n)に含まれる各種個人情報が他者に公開されないようにしつつ、トランザクションTをブロックチェーンによって記録し、正当性を保証する。
以下、生成装置10の具体的な構成について説明する。
The user uses the terminal TM to transmit information indicating the contents of the transaction (hereinafter, transaction T) to the PPM device. The transaction T includes, for example, personal information of the destination, personal information of the sender, a remittance amount, and the like. The generation device 10 records the transaction T by the blockchain while preventing the various personal information included in the transaction T (transactions T-1 to Tn shown) received from each terminal TM from being disclosed to others. Guarantee legitimacy.
Hereinafter, a specific configuration of the generation device 10 will be described.

[生成装置の構成について]
図3は、第1実施形態の生成装置10の構成の一例を示す図である。
図3に示す通り、生成装置10は、制御部100と、記憶部500とを備える。記憶部500には、ブロックチェーン情報BLKと、トランザクション履歴情報TIとが記憶される。ここで、生成装置10は、ブロックチェーンのノードとしての機能を有する。生成装置10は、例えば、ネットワークNWを用いて送信されるブロックを受信し、ブロックチェーン情報BLKとして記憶部500に記憶する機能を有する。ブロックチェーン情報BLKには、ブロックチェーンを構成する各ブロックを示す情報、及び各ブロックの接続を示す情報が含まれる。また、トランザクション履歴情報TIには、各端末TMから受信したトランザクションTが記憶される。
[About the configuration of the generator]
FIG. 3 is a diagram showing an example of the configuration of the generator 10 of the first embodiment.
As shown in FIG. 3, the generation device 10 includes a control unit 100 and a storage unit 500. The blockchain information BLK and the transaction history information TI are stored in the storage unit 500. Here, the generation device 10 has a function as a node of the blockchain. The generation device 10 has, for example, a function of receiving a block transmitted using the network NW and storing it in the storage unit 500 as blockchain information BLK. The blockchain information BLK includes information indicating each block constituting the blockchain and information indicating the connection of each block. Further, the transaction history information TI stores the transaction T received from each terminal TM.

制御部100は、CPU(Central Processing Unit)を備えており、受信部110と、抽出部120と、算出部130と、送信部140とをその機能部として備える。受信部110は、各端末TMからトランザクションTを受信する。受信部110は、受信したトランザクションTを記憶部500にトランザクション履歴情報TIとして記憶させる。 The control unit 100 includes a CPU (Central Processing Unit), and includes a reception unit 110, an extraction unit 120, a calculation unit 130, and a transmission unit 140 as its functional units. The receiving unit 110 receives the transaction T from each terminal TM. The receiving unit 110 stores the received transaction T in the storage unit 500 as transaction history information TI.

抽出部120は、トランザクション履歴情報TIに含まれるトランザクションTのうち、ブロックチェーン情報BLKに記録されていないトランザクションTを抽出する。ブロックチェーンは、例えば、所定の時間毎にブロックが生成される(オープン状態のブロックがクローズ状態にされる)。抽出部120は、トランザクション履歴情報TIに含まれるトランザクションTのうち、ブロックチェーン情報BLKに含まれる最新のブロックが生成された時刻以降に受信したトランザクションTを抽出する。この場合、トランザクション履歴情報TIには、トランザクションTと、当該トランザクションTを受信した時刻とが関連付けられて記憶される。抽出部120は、抽出したトランザクションTを算出部130に供給する。この一例では、抽出部120は、端末TM−1から受信したトランザクションT−1と、端末TM−2から受信したトランザクションT−2と、端末TM−nから受信したトランザクションT−nを抽出し、算出部130に供給する。 The extraction unit 120 extracts the transaction T that is not recorded in the blockchain information BLK from the transaction T included in the transaction history information TI. In the blockchain, for example, blocks are generated at predetermined time intervals (open blocks are closed). The extraction unit 120 extracts the transaction T received after the time when the latest block included in the blockchain information BLK is generated from the transaction T included in the transaction history information TI. In this case, the transaction history information TI stores the transaction T and the time when the transaction T is received in association with each other. The extraction unit 120 supplies the extracted transaction T to the calculation unit 130. In this example, the extraction unit 120 extracts the transaction T-1 received from the terminal TM-1, the transaction T-2 received from the terminal TM-2, and the transaction Tn received from the terminal TM-n. It is supplied to the calculation unit 130.

算出部130は、抽出部120からトランザクションTを取得する。算出部130は、取得したトランザクションTのハッシュ値(以下、トランザクションハッシュ値HV)を算出する。算出部130は、算出したトランザクションハッシュ値HVを送信部140に供給する。
送信部140は、算出部130から取得したトランザクションハッシュ値HVを、ネットワークNWを用いて他のノードに送信する。
The calculation unit 130 acquires the transaction T from the extraction unit 120. The calculation unit 130 calculates the hash value of the acquired transaction T (hereinafter, transaction hash value HV). The calculation unit 130 supplies the calculated transaction hash value HV to the transmission unit 140.
The transmission unit 140 transmits the transaction hash value HV acquired from the calculation unit 130 to another node using the network NW.

ネットワークNWに接続されるノードは、生成装置10が送信するトランザクションハッシュ値HVや、他の装置が送信するトランザクションに基づいて、マイニングを行う。マイニングとは、ノードがブロックをクローズ状態にする条件に合うハッシュ値を算出することである。ネットワークNWに接続されるノードは、マイニングを行ったブロックのハッシュ値、当該ブロックに含まれるトランザクションハッシュ値HV、及びナンス値とを含むブロックを生成し、ネットワークNW用いて他のノードに送信する。 The node connected to the network NW performs mining based on the transaction hash value HV transmitted by the generation device 10 and the transaction transmitted by another device. Mining is the calculation of a hash value that meets the conditions under which a node closes a block. The node connected to the network NW generates a block including the hash value of the mined block, the transaction hash value HV included in the block, and the nonce value, and transmits the block to other nodes using the network NW.

図4は、第1実施形態の生成装置10が生成するトランザクションハッシュ値HVを記録するブロックチェーンの一例を示す図である。
図4は、例えば、生成装置10のみがネットワークNWに接続される場合のブロックチェーンの一例を示す図である。換言すると、ブロックには、トランザクションとしてトランザクションハッシュ値HVのみが記録される。したがって、図4に示すブロックチェーンの各ブロックには、図1に示すブロックチェーンに含まれるトランザクションに代えて、トランザクションハッシュ値HVが記憶される。
FIG. 4 is a diagram showing an example of a blockchain that records a transaction hash value HV generated by the generation device 10 of the first embodiment.
FIG. 4 is a diagram showing an example of a blockchain in the case where only the generator 10 is connected to the network NW, for example. In other words, only the transaction hash value HV is recorded as a transaction in the block. Therefore, in each block of the blockchain shown in FIG. 4, a transaction hash value HV is stored in place of the transaction included in the blockchain shown in FIG.

[生成装置の動作について]
図5は、第1実施形態の生成装置10の動作の一例を示す流れ図である。
受信部110は、各端末TMからトランザクションTを受信する(ステップS110)。受信部110は、例えば、常時、又は所定の時間間隔においてトランザクションTを受信する。抽出部120は、トランザクション履歴情報TIに含まれるトランザクションTのうち、ブロックチェーンに記録されていないトランザクションTを抽出する(ステップS120)。算出部130は、抽出部120が抽出したトランザクションTのトランザクションハッシュ値HVを算出する(ステップS130)。送信部140は、算出部130が算出したトランザクションハッシュ値HVを、ネットワークNWを用いて送信する(ステップS140)。
[About the operation of the generator]
FIG. 5 is a flow chart showing an example of the operation of the generator 10 of the first embodiment.
The receiving unit 110 receives the transaction T from each terminal TM (step S110). The receiving unit 110 receives the transaction T at all times or at a predetermined time interval, for example. The extraction unit 120 extracts the transaction T that is not recorded in the blockchain from the transaction T included in the transaction history information TI (step S120). The calculation unit 130 calculates the transaction hash value HV of the transaction T extracted by the extraction unit 120 (step S130). The transmission unit 140 transmits the transaction hash value HV calculated by the calculation unit 130 using the network NW (step S140).

[第1実施形態のまとめ]
以上説明したように、本実施形態の生成装置10は、受信したトランザクションTに基づいてトランザクションハッシュ値HVを算出し、ネットワークNWを用いて送信する。ネットワークNWに接続されるノードは、当該トランザクションハッシュ値HVに基づいて、ブロックを生成する。
[Summary of the first embodiment]
As described above, the generation device 10 of the present embodiment calculates the transaction hash value HV based on the received transaction T and transmits it using the network NW. The node connected to the network NW generates a block based on the transaction hash value HV.

本実施形態の生成装置10は、トランザクションハッシュ値HVをネットワークNWに送信することにより、トランザクションTに代えてトランザクションハッシュ値HVをブロックチェーンに記録することができる。したがって、本実施形態の生成装置10によれば、トランザクションTが送信されることによって取引を行う取引者の個人情報を非公開にすることができる。また、本実施形態の生成装置10は、トランザクション履歴情報TIと、ブロックに含まれるトランザクションハッシュ値HVと、ナンス値とに基づいて、トランザクションハッシュ値HVの元になるデータであるトランザクションTの正当性を保証することができる。したがって、本実施形態の生成装置10によれば、取引者のトランザクションTの秘匿性を高めつつ、かつトランザクションTの正当性を保証することができる。つまり、本実施形態の生成装置10によれば、ブロックチェーンによってPPMの履歴情報を記録することができる。 The generator 10 of the present embodiment can record the transaction hash value HV on the blockchain instead of the transaction T by transmitting the transaction hash value HV to the network NW. Therefore, according to the generation device 10 of the present embodiment, the personal information of the trader who conducts the transaction can be kept private by transmitting the transaction T. Further, the generation device 10 of the present embodiment has the validity of the transaction T, which is the data that is the source of the transaction hash value HV, based on the transaction history information TI, the transaction hash value HV included in the block, and the nonce value. Can be guaranteed. Therefore, according to the generation device 10 of the present embodiment, it is possible to increase the confidentiality of the transaction T of the trader and guarantee the validity of the transaction T. That is, according to the generation device 10 of the present embodiment, the history information of PPM can be recorded by the blockchain.

また、本実施形態の生成装置10が備える抽出部120は、ブロックチェーンに含まれる複数のブロックのうち、オープン状態であるブロックの1つ前にクローズ状態にされたブロック(例えば、最新のブロック)に記録される取引が行われた時刻以降の取引のトランザクションTを抽出する。
ここで、算出部130が、トランザクション履歴情報TIに含まれるトランザクションTのすべてを元データとしてトランザクションハッシュ値HVを算出する場合、生成装置10の処理負荷が増加する可能性がある。本実施形態の生成装置10が備える抽出部120は、ブロックチェーンに記録されるトランザクションT(トランザクションハッシュ値HV)以外のトランザクションTを抽出する。換言すると、本実施形態の生成装置10が備える抽出部120は、トランザクション履歴情報TIのうち、ブロックチェーンに記録されるトランザクションTとの差分を抽出する。これにより、本実施形態の生成装置10は、トランザクションハッシュ値HVを算出する際の処理負荷を低減することができる。
Further, the extraction unit 120 included in the generation device 10 of the present embodiment is a block (for example, the latest block) that is closed before the block that is in the open state among the plurality of blocks included in the blockchain. The transaction T of the transaction after the time when the transaction recorded in is performed is extracted.
Here, when the calculation unit 130 calculates the transaction hash value HV using all of the transactions T included in the transaction history information TI as the original data, the processing load of the generation device 10 may increase. The extraction unit 120 included in the generation device 10 of the present embodiment extracts a transaction T other than the transaction T (transaction hash value HV) recorded on the blockchain. In other words, the extraction unit 120 included in the generation device 10 of the present embodiment extracts the difference between the transaction history information TI and the transaction T recorded in the blockchain. As a result, the generation device 10 of the present embodiment can reduce the processing load when calculating the transaction hash value HV.

なお、上述では、生成装置10がノードとしての機能を有する場合について説明したが、これに限られない。例えば、PPM装置がノードとしての機能を有する構成であってもよく、ネットワークNWに接続される他の装置がノードとしての機能を有する構成であってもよい。この場合、生成装置10が備える記憶部500には、ブロックチェーン情報BLKが記憶されていなくてもよい。 In the above description, the case where the generation device 10 has a function as a node has been described, but the present invention is not limited to this. For example, the PPM device may be configured to have a function as a node, or another device connected to the network NW may be configured to have a function as a node. In this case, the blockchain information BLK may not be stored in the storage unit 500 included in the generation device 10.

本実施形態において、受信部110とは、「履歴情報受信部」の一例である。また、トランザクションTとは、「履歴情報」の一例である。また、抽出部120が抽出するトランザクションTとは、「未記録履歴情報」の一例である。また、トランザクションハッシュ値HVとは、「未記録履歴情報のハッシュ値」の一例である。また、送信部140とは、「ハッシュ値送信部」の一例である。 In the present embodiment, the receiving unit 110 is an example of the "history information receiving unit". The transaction T is an example of "history information". The transaction T extracted by the extraction unit 120 is an example of “unrecorded history information”. The transaction hash value HV is an example of "hash value of unrecorded history information". Further, the transmission unit 140 is an example of a “hash value transmission unit”.

[第2実施形態]
以下、図を参照して本発明の第2実施形態について説明する。第1実施形態では、ネットワークNWに接続されるノードがマイニングを行い、ブロックを生成する場合について説明した。第2実施形態では、ネットワークNWに接続される各ノードがマイニング、及び合意形成を行い、ブロックを生成する場合について説明する。
なお、上述した実施形態と同様の構成については、同一の符号を付して説明を省略する。
[Second Embodiment]
Hereinafter, a second embodiment of the present invention will be described with reference to the drawings. In the first embodiment, a case where a node connected to the network NW performs mining and generates a block has been described. In the second embodiment, a case where each node connected to the network NW performs mining and consensus building to generate a block will be described.
The same components as those in the above-described embodiment are designated by the same reference numerals and the description thereof will be omitted.

[生成装置の概要について]
図6は、第2実施形態の合意形成システム1のネットワーク構成の一例を示す図である。図6に示す通り、合意形成システム1は、複数の生成装置11を備える。具体的には、ネットワークNWには、4つのPPM装置(図示するPPM装置−1〜PPM装置−4)が接続され、各PPM装置がそれぞれ生成装置11を備える。より具体的には、PPM装置−1には、生成装置11−1が備えられ、PPM装置−2には、生成装置11−2が備えられ、PPM装置−3には、生成装置11−3が備えられ、PPM装置−4には、生成装置11−4が備えられる。
[Overview of generator]
FIG. 6 is a diagram showing an example of a network configuration of the consensus building system 1 of the second embodiment. As shown in FIG. 6, the consensus building system 1 includes a plurality of generation devices 11. Specifically, four PPM devices (PPM devices-1 to PPM device-4 (shown in the figure)) are connected to the network NW, and each PPM device includes a generation device 11. More specifically, the PPM device-1 is provided with the generator 11-1, the PPM device-2 is provided with the generator 11-2, and the PPM device-3 is equipped with the generator 11-3. The PPM device-4 is provided with a generator 11-4.

また、PPM装置−1は、トランザクションTを管理する対象の端末TM(図示する端末TM1−1〜TM1−n)からトランザクションT(トランザクションT1−1〜T1−n)を受信する。PPM装置−2は、トランザクションTを管理する対象の端末TM(図示する端末TM2−1〜TM2−n)からトランザクションT(トランザクションT2−1〜T2−n)を受信する。PPM装置−3は、トランザクションTを管理する対象の端末TM(図示する端末TM3−1〜TM3−n)からトランザクションT(トランザクションT3−1〜T3−n)を受信する。PPM装置−4は、トランザクションTを管理する対象の端末TM(図示する端末TM4−1〜TM4−n)からトランザクションT(トランザクションT4−1〜T4−n)を受信する。 Further, the PPM device-1 receives the transaction T (transaction T1-1 to T1-n) from the target terminal TM (terminals TM1-1 to TM1-n shown in the figure) that manages the transaction T. The PPM device-2 receives the transaction T (transaction T2-1 to T2-n) from the target terminal TM (terminals TM2-1 to TM2-n shown in the figure) that manages the transaction T. The PPM device-3 receives the transaction T (transaction T3-1 to T3-n) from the target terminal TM (terminals TM3-1 to TM3-n shown in the figure) that manages the transaction T. The PPM device-4 receives the transaction T (transaction T4-1 to T4-n) from the target terminal TM (terminals TM4-1 to TM4-n shown in the figure) that manages the transaction T.

本実施形態の一例において、生成装置11−1がマイニングを行う。また、生成装置11−2〜11−4が、生成装置11−1が行ったマイニングに対して合意形成を行う。具体的には、生成装置11−2〜11−4は、生成装置11−1が行ったマイニングに対して合意するか否かを選択する。
以下、生成装置11の具体的な構成について説明する。
In an example of this embodiment, the generator 11-1 performs mining. In addition, the generators 11-2 to 11-4 form a consensus on the mining performed by the generators 11-1. Specifically, the generators 11-2 to 11-4 select whether or not they agree with the mining performed by the generators 11-1.
Hereinafter, a specific configuration of the generator 11 will be described.

[生成装置の構成について]
図7は、第2実施形態の生成装置11の構成の一例を示す図である。
図7に示す通り、生成装置11は、制御部101と、記憶部500とを備える。
制御部101は、CPUを備えており、受信部110と、抽出部120と、算出部130と、送信部140と、ルート算出部150と、選択部160と、判定部170とをその機能部として備える。
[About the configuration of the generator]
FIG. 7 is a diagram showing an example of the configuration of the generator 11 of the second embodiment.
As shown in FIG. 7, the generation device 11 includes a control unit 101 and a storage unit 500.
The control unit 101 includes a CPU, and includes a reception unit 110, an extraction unit 120, a calculation unit 130, a transmission unit 140, a route calculation unit 150, a selection unit 160, and a determination unit 170 as functional units. Prepare as.

本実施形態の一例において、マイニングを行う生成装置11(この一例では、生成装置11−1)の受信部110は、他の生成装置11(この一例では、生成装置11−2〜11−4)が送信するトランザクションハッシュ値HVを受信する。受信部110は、受信したトランザクションハッシュ値HVをルート算出部150に供給する。 In one example of this embodiment, the receiving unit 110 of the generation device 11 (in this example, the generation device 11-1) that performs mining is another generation device 11 (in this example, the generation devices 11-2 to 11-4). Receives the transaction hash value HV sent by. The receiving unit 110 supplies the received transaction hash value HV to the route calculation unit 150.

ルート算出部150は、受信部110が受信したトランザクションハッシュ値HVと、算出部130が算出したトランザクションハッシュ値HVと、ブロックチェーン情報BLKとに基づいて、マイニングを行う。具体的には、ルート算出部150は、受信部110が受信したトランザクションハッシュ値HVと、算出部130が算出したトランザクションハッシュ値HVと、ブロックチェーン情報BLKに含まれる最新のブロックのハッシュ値とに基づいて、オープン状態のブロックのハッシュ値(以下、ルートハッシュ値RHV)を算出する。 The route calculation unit 150 performs mining based on the transaction hash value HV received by the reception unit 110, the transaction hash value HV calculated by the calculation unit 130, and the blockchain information BLK. Specifically, the route calculation unit 150 sets the transaction hash value HV received by the reception unit 110, the transaction hash value HV calculated by the calculation unit 130, and the hash value of the latest block included in the blockchain information BLK. Based on this, the hash value of the block in the open state (hereinafter, root hash value RHV) is calculated.

本実施形態の送信部140は、ルート算出部150が算出したルートハッシュ値RHVを、ネットワークNWを用いて他のノード(この一例では、生成装置11−2〜11−4)に送信する。
選択部160は、受信部110が受信したルートハッシュ値RHVに基づいて、ブロックを生成する(オープン状態のブロックをクローズ状態する)ことに合意するか否かを選択する。
The transmission unit 140 of the present embodiment transmits the route hash value RHV calculated by the route calculation unit 150 to another node (in this example, the generators 11-2 to 11-4) using the network NW.
The selection unit 160 selects whether or not to agree to generate a block (close a block in an open state) based on the root hash value RHV received by the reception unit 110.

選択部160は、例えば、算出部130が算出したトランザクションハッシュ値HVがルートハッシュ値RHVに含まれていない場合、ブロックを生成することに合意しないと選択する。また、選択部160は、例えば、ブロックチェーン情報BLKに含まれる最新のブロックのハッシュ値(以下、前ブロックハッシュ値BHV)がルートハッシュ値RHVに含まれていない場合、ブロックを生成することに合意しないと選択する。また、選択部160は、例えば、算出部130が算出したトランザクションハッシュ値HVがルートハッシュ値RHVに含まれており、かつ前ブロックハッシュ値BHVがルートハッシュ値RHVに含まれている場合、当該ルートハッシュ値RHVをトランザクションとしてブロックに記憶することに合意すると選択する。 The selection unit 160 selects, for example, not agreeing to generate a block when the transaction hash value HV calculated by the calculation unit 130 is not included in the root hash value RHV. Further, the selection unit 160 agrees to generate a block when, for example, the hash value of the latest block included in the blockchain information BLK (hereinafter, the previous block hash value BHV) is not included in the root hash value RHV. Select not to. Further, in the selection unit 160, for example, when the transaction hash value HV calculated by the calculation unit 130 is included in the root hash value RHV and the previous block hash value BHV is included in the root hash value RHV, the route concerned. Choose to agree to store the hash value RHV in the block as a transaction.

選択部160は、選択した選択結果を示す情報を送信部140に供給する。本実施形態の送信部140は、選択部160が選択した選択結果を示す情報を、ネットワークNWを用いてマイニングを行う生成装置11−1に送信する。 The selection unit 160 supplies information indicating the selected selection result to the transmission unit 140. The transmission unit 140 of the present embodiment transmits information indicating the selection result selected by the selection unit 160 to the generation device 11-1 that performs mining using the network NW.

判定部170は、受信部110が受信した選択結果を示す情報に基づいて、ブロックを生成するか否かを判定する。判定部170は、例えば、受信した選択結果のうち、ブロックの生成に合意する選択結果が過半数である場合、ブロックを生成する。また、判定部170は、例えば、受信した選択結果のうち、ブロックの生成に合意する選択結果が過半数ではない場合、ブロックを生成しない。判定部170がブロックを生成しない場合、算出部130が算出したトランザクションハッシュ値HVは、破棄される。また、破棄されたトランザクションハッシュ値HVの元データであるトランザクションTは、抽出部120が次のタイミングにおいてトランザクションTを抽出する際に抽出される。 The determination unit 170 determines whether or not to generate a block based on the information indicating the selection result received by the reception unit 110. The determination unit 170 generates a block, for example, when the majority of the received selection results agree to generate the block. Further, the determination unit 170 does not generate a block, for example, when the selection result that agrees to generate the block is not a majority of the received selection results. If the determination unit 170 does not generate a block, the transaction hash value HV calculated by the calculation unit 130 is discarded. Further, the transaction T, which is the original data of the discarded transaction hash value HV, is extracted when the extraction unit 120 extracts the transaction T at the next timing.

[生成装置の動作について]
図8は、第2実施形態の合意形成システム1の動作の一例を示す流れ図である。
具体的には、図8は、マイニングを行う生成装置11と、合意形成を行う生成装置11との動作の一例を示す流れ図である。なお、各生成装置11が端末TMからトランザクションTを受信し、トランザクションハッシュ値HVを、ネットワークNWを用いて送信するまでの動作は、上述した第1実施形態と同様(図5参照)であるため、説明を省略する。
[About the operation of the generator]
FIG. 8 is a flow chart showing an example of the operation of the consensus building system 1 of the second embodiment.
Specifically, FIG. 8 is a flow chart showing an example of the operation of the generation device 11 for mining and the generation device 11 for consensus building. Since each generator 11 receives the transaction T from the terminal TM and transmits the transaction hash value HV using the network NW, the operation is the same as that of the first embodiment described above (see FIG. 5). , The description is omitted.

マイニングを行う生成装置11(この一例では、生成装置11−1)の受信部110は、ネットワークNWに接続される他の生成装置11(この一例では、生成装置11−2〜11−4)からトランザクションハッシュ値HVを受信する(ステップS210)。以降の説明において、生成装置11−1の算出部130が算出するトランザクションハッシュ値HVをトランザクションハッシュ値HV1と記載する。また、生成装置11−2の算出部130が算出するトランザクションハッシュ値HVをトランザクションハッシュ値HV2と記載する。また、生成装置11−3の算出部130が算出するトランザクションハッシュ値HVをトランザクションハッシュ値HV3と記載する。また、生成装置11−4の算出部130が算出するトランザクションハッシュ値HVをトランザクションハッシュ値HV4と記載する。したがって、生成装置11−1の受信部110は、トランザクションハッシュ値HV2〜HV4を受信する。生成装置11−1の受信部110は、例えば、所定の時間間隔においてトランザクションハッシュ値HVを受信する。トランザクションハッシュ値HVを受信する時間間隔と、ブロックチェーンのブロックチェーンがブロックを生成する時間間隔とは、合致することが好ましい。 The receiving unit 110 of the generation device 11 (in this example, the generation device 11-1) that performs mining is from another generation device 11 (in this example, the generation devices 11-2 to 11-4) connected to the network NW. The transaction hash value HV is received (step S210). In the following description, the transaction hash value HV calculated by the calculation unit 130 of the generation device 11-1 will be referred to as the transaction hash value HV1. Further, the transaction hash value HV calculated by the calculation unit 130 of the generation device 11-2 is described as the transaction hash value HV2. Further, the transaction hash value HV calculated by the calculation unit 130 of the generation device 11-3 is described as the transaction hash value HV3. Further, the transaction hash value HV calculated by the calculation unit 130 of the generation device 11-4 is described as the transaction hash value HV4. Therefore, the receiving unit 110 of the generation device 11-1 receives the transaction hash values HV2 to HV4. The receiving unit 110 of the generator 11-1 receives, for example, the transaction hash value HV at a predetermined time interval. It is preferable that the time interval for receiving the transaction hash value HV and the time interval for the blockchain of the blockchain to generate a block match.

生成装置11−1のルート算出部150は、生成装置11−1の算出部130が算出するトランザクションハッシュ値HV1と、受信部110が受信したトランザクションハッシュ値HV2〜HV4と、ブロックチェーン情報BLKとに基づいて、ルートハッシュ値RHVを算出する(ステップS220)。 The route calculation unit 150 of the generation device 11-1 uses the transaction hash value HV1 calculated by the calculation unit 130 of the generation device 11-1, the transaction hash values HV2 to HV4 received by the reception unit 110, and the blockchain information BLK. Based on this, the root hash value RHV is calculated (step S220).

図9は、第2実施形態におけるルート算出部150のルートハッシュ値RHVの算出方法の一例を示す図である。ルート算出部150は、例えば、マークルツリーを用いて、ブロックに含まれるトランザクションハッシュ値HVをルートハッシュ値RHVに集約する。ここでは、生成装置11−1のルート算出部150は、受信したトランザクションハッシュ値HV2〜HV4と、算出部130が算出したトランザクションハッシュ値HV1と、前ブロックハッシュ値BHVとに基づいて、ルートハッシュ値RHVを算出する。具体的には、ルート算出部150は、トランザクションハッシュ値HV1と、トランザクションハッシュ値HV2とに基づいて、ハッシュ値(図示するトランザクションハッシュ値HV12)を算出する。また、トランザクションハッシュ値HV3と、トランザクションハッシュ値HV4とに基づいて、ハッシュ値(図示するトランザクションハッシュ値HV34)を算出する。また、ルート算出部150は、トランザクションハッシュ値HV12と、トランザクションハッシュ値HV34とに基づいて、トランザクションハッシュ値HV1234を算出する。また、ルート算出部150は、前ブロックハッシュ値BHVと、トランザクションハッシュ値HV1234とに基づいて、ルートハッシュ値RHVを算出する。 FIG. 9 is a diagram showing an example of a method of calculating the route hash value RHV of the route calculation unit 150 in the second embodiment. The route calculation unit 150 aggregates the transaction hash value HV included in the block into the route hash value RHV by using, for example, a Merkle tree. Here, the route calculation unit 150 of the generation device 11-1 has a route hash value based on the received transaction hash values HV2 to HV4, the transaction hash value HV1 calculated by the calculation unit 130, and the previous block hash value BHV. Calculate the RHV. Specifically, the route calculation unit 150 calculates a hash value (transaction hash value HV12 shown in the figure) based on the transaction hash value HV1 and the transaction hash value HV2. Further, a hash value (transaction hash value HV34 shown in the figure) is calculated based on the transaction hash value HV3 and the transaction hash value HV4. Further, the route calculation unit 150 calculates the transaction hash value HV1234 based on the transaction hash value HV12 and the transaction hash value HV34. Further, the route calculation unit 150 calculates the route hash value RHV based on the previous block hash value BHV and the transaction hash value HV1234.

なお、ルート算出部150は、ネットワークNWに接続される各生成装置11が算出するトランザクションハッシュ値HV(この一例では、トランザクションハッシュ値HV1〜HV4)がルートハッシュ値RHVの元データとして含まれていれば、いずれの順序でハッシュ値を算出してもよい。ルート算出部150は、例えば、トランザクションハッシュ値HV1〜HV4に基づいて、トランザクションハッシュ値HV1234を算出してもよい。 The route calculation unit 150 includes the transaction hash value HV (transaction hash values HV1 to HV4 in this example) calculated by each generation device 11 connected to the network NW as the original data of the route hash value RHV. For example, the hash values may be calculated in any order. The route calculation unit 150 may calculate the transaction hash value HV1234 based on the transaction hash values HV1 to HV4, for example.

図8に戻り、生成装置11−1の送信部140は、ルート算出部150が算出したルートハッシュ値RHVを、ネットワークNWを用いて生成装置11−2〜11−4に送信する(ステップS230)。
次に、合意形成を行う生成装置11−2〜11−4の受信部110は、ネットワークNWに送信されたルートハッシュ値RHVを受信する(ステップS240)。生成装置11−2〜11−4の選択部160は、ルートハッシュ値RHVに基づいて、ブロックを生成する(オープン状態のブロックをクローズ状態する)ことに合意するか否かを選択する。
Returning to FIG. 8, the transmission unit 140 of the generation device 11-1 transmits the route hash value RHV calculated by the route calculation unit 150 to the generation devices 11-2 to 11-4 using the network NW (step S230). ..
Next, the receiving units 110 of the generation devices 11-2 to 11-4 for consensus building receive the root hash value RHV transmitted to the network NW (step S240). The selection unit 160 of the generation devices 11-2 to 11-4 selects whether or not to agree to generate a block (close the open block) based on the root hash value RHV.

選択部160は、例えば、算出部130が算出したトランザクションハッシュ値HVがルートハッシュ値RHVに含まれていない場合(ステップS250;NO)、ブロックを生成することに合意しないと選択する(ステップS270)。また、選択部160は、例えば、前ブロックハッシュ値BHVがルートハッシュ値RHVに含まれていない場合(ステップS260;NO)、ブロックを生成することに合意しないと選択する(ステップS270)。また、選択部160は、算出部130が算出したトランザクションハッシュ値HVがルートハッシュ値RHVに含まれており(ステップS250;YES)、かつ前ブロックハッシュ値BHVがルートハッシュ値RHVに含まれている場合(ステップS260;YES)、ブロックを生成することに合意すると選択する(ステップS280)。合意形成を行う生成装置11−2〜11−4の送信部140は、選択部160が選択した選択結果を示す情報を、ネットワークNWを用いて生成装置11−1に送信する(ステップS290)。 For example, when the transaction hash value HV calculated by the calculation unit 130 is not included in the root hash value RHV (step S250; NO), the selection unit 160 selects that it does not agree to generate a block (step S270). .. Further, the selection unit 160 selects, for example, when the previous block hash value BHV is not included in the root hash value RHV (step S260; NO), and does not agree to generate the block (step S270). Further, in the selection unit 160, the transaction hash value HV calculated by the calculation unit 130 is included in the root hash value RHV (step S250; YES), and the previous block hash value BHV is included in the root hash value RHV. If (step S260; YES), you choose to agree to generate a block (step S280). The transmission unit 140 of the generation devices 11-2 to 11-4 for consensus building transmits information indicating the selection result selected by the selection unit 160 to the generation device 11-1 using the network NW (step S290).

選択部160は、例えば、マークルツリーを用いて、トランザクションハッシュ値HVや、前ブロックハッシュ値BHVが、ルートハッシュ値RHVに含まれるかを検証する。具体的には、選択部160は、検証対象のハッシュ値(例えば、トランザクションハッシュ値HV、又は前ブロックハッシュ値BHV)をノードに通知する。ノードは、通知された検証対象のハッシュ値のマークルツリーにおける位置を示す情報(以下、マークルパス)と、マークルパスからマークルツリーのルートノードまでに経由する各葉に格納される情報を供給する。マークルツリーの各葉には、ハッシュ値が格納される。したがって、ノードは、マークルパスからルートノードまでに経由する各葉のハッシュ値を供給する。選択部160は、検証対象のハッシュ値と、ノードから供給された各ハッシュ値と、マークルパスとに基づいて、マークルツリーのルートノードのハッシュ値を算出する。
選択部160は、算出したルートノードのハッシュ値と、受信部110が受信したルートハッシュ値RHVとが一致する場合、検証対象のハッシュ値がルートハッシュ値RHVに含まれると判定する。また、選択部160は、算出したルートノードのハッシュ値と、受信部110が受信したルートハッシュ値RHVとが一致しない場合、検証対象のハッシュ値がルートハッシュ値RHVに含まれないと判定する。
The selection unit 160 verifies whether the transaction hash value HV and the previous block hash value BHV are included in the root hash value RHV by using, for example, a Merkle tree. Specifically, the selection unit 160 notifies the node of the hash value to be verified (for example, transaction hash value HV or previous block hash value BHV). The node supplies information indicating the position of the notified hash value to be verified in the Merkle tree (hereinafter, Merkle path) and information stored in each leaf passing from the Merkle path to the root node of the Merkle tree. A hash value is stored in each leaf of the Merkle tree. Therefore, the node supplies a hash value of each leaf from the Merkle path to the root node. The selection unit 160 calculates the hash value of the root node of the Merkle tree based on the hash value to be verified, each hash value supplied from the node, and the Merkle path.
When the calculated hash value of the root node and the root hash value RHV received by the receiving unit 110 match, the selection unit 160 determines that the hash value to be verified is included in the root hash value RHV. Further, when the calculated hash value of the root node and the root hash value RHV received by the receiving unit 110 do not match, the selection unit 160 determines that the hash value to be verified is not included in the root hash value RHV.

生成装置11−1の受信部110は、合意形成を行う生成装置11−2〜11−4が送信した選択結果を示す情報を受信する(ステップS300)。判定部170は、受信部110が受信した選択結果のうち、ブロックの生成に合意する選択結果が過半数であるか否かを判定する(ステップS310)。判定部170は、選択結果のうち、ブロックの生成に合意する選択結果が過半数である場合(ステップS310;YES)、ブロックを生成する(オープン状態のブロックをクローズ状態する)と判定する(ステップS320)。また、判定部170は、選択結果のうち、ブロックの生成に合意する選択結果が過半数ではない場合(ステップS310;NO)、ブロックを生成しない(オープン状態のブロックをクローズ状態にしない)と判定する(ステップS330)。 The receiving unit 110 of the generation device 11-1 receives the information indicating the selection result transmitted by the generation devices 11-2 to 11-4 for consensus building (step S300). The determination unit 170 determines whether or not the selection results received by the reception unit 110 are the majority of the selection results that agree to generate the block (step S310). If the majority of the selection results agree to generate the block (step S310; YES), the determination unit 170 determines that the block is generated (closes the open block) (step S320). ). Further, the determination unit 170 determines that the block is not generated (the open block is not closed) when the selection result that agrees to generate the block is not a majority (step S310; NO) among the selection results. (Step S330).

生成装置11−1の送信部140は、判定部170の判定結果がブロックを生成することを示す場合、ルートハッシュ値RHVと、前ブロックハッシュ値BHVと、ナンス値とを含むブロックを生成し、当該ブロックをネットワークNWを用いて他のノード(この一例では、生成装置11−2〜11−4)に送信する(ステップS340)。 When the determination result of the determination unit 170 indicates that the block is generated, the transmission unit 140 of the generation device 11-1 generates a block including the root hash value RHV, the previous block hash value BHV, and the nonce value. The block is transmitted to other nodes (in this example, generators 11-2 to 11-4) using the network NW (step S340).

図10は、第2実施形態の生成装置11が生成するルートハッシュ値RHVを記録するブロックチェーンの一例を示す図である。
図10に示す通り、ブロックチェーンの各ブロックには、図1に示すブロックチェーンに含まれるトランザクションに代えて、ルートハッシュ値RHVが記憶される。
FIG. 10 is a diagram showing an example of a block chain that records the root hash value RHV generated by the generation device 11 of the second embodiment.
As shown in FIG. 10, each block of the blockchain stores a root hash value RHV in place of the transaction included in the blockchain shown in FIG.

なお、上述した実施形態において、いずれの生成装置11もルート算出部150、及び選択部160を備える場合について説明したが、これに限られない。例えば、合意形成システム1が備える複数の生成装置11のうち、予めマイニングを行う生成装置11が定められている場合、当該生成装置11は、選択部160を備えていなくてもよい。また、例えば、合意形成システム1が備える複数の生成装置11のうち、予め合意形成を行う生成装置11が定められている場合、当該生成装置11は、ルート算出部150を備えていなくてもよい。 In the above-described embodiment, the case where each of the generation devices 11 includes the route calculation unit 150 and the selection unit 160 has been described, but the present invention is not limited to this. For example, when the generation device 11 for mining is defined in advance among the plurality of generation devices 11 included in the consensus building system 1, the generation device 11 does not have to include the selection unit 160. Further, for example, when the generation device 11 for consensus building is defined in advance among the plurality of generation devices 11 included in the consensus building system 1, the generation device 11 does not have to include the route calculation unit 150. ..

また、上述では、合意形成システム1が備える生成装置11のうち、生成装置11−1がマイニングを行い、他の生成装置11(この一例では、生成装置11−2〜11−4)が合意形成を行う場合について説明したが、これに限られない。例えば、合意形成システム1が備える生成装置11のうち、マイニングを行う生成装置11と、合意形成を行う生成装置11とが、ブロックの生成毎にランダムに割り当てられる構成であってもよい。また、合意形成システム1が備える生成装置11の数が多い場合、合意形成に係る処理負荷、及びネットワークNWのトラフィックを低減するため、一部の生成装置11が合意形成を行う構成であってもよい。換言すると、合意形成システム1は、マイニング、及び合意形成を行わない生成装置11を備えていてもよい。この場合、マイニングを行う生成装置11の送信部140は、合意形成を行う生成装置11にのみルートハッシュ値RHVを送信する。これにより、本実施形態の合意形成システム1は、ネットワークNWのトラフィックが増加することを抑制することができる。 Further, in the above description, among the generation devices 11 included in the consensus building system 1, the generation device 11-1 performs mining, and the other generation devices 11 (in this example, the generation devices 11-2 to 11-4) form a consensus. However, the case is not limited to this. For example, among the generation devices 11 included in the consensus building system 1, the generation device 11 for mining and the generation device 11 for consensus building may be randomly assigned for each block generation. Further, when the number of generation devices 11 included in the consensus building system 1 is large, even if some of the generation devices 11 form a consensus in order to reduce the processing load related to the consensus building and the traffic of the network NW. Good. In other words, the consensus building system 1 may include a generation device 11 that does not perform mining and consensus building. In this case, the transmission unit 140 of the generation device 11 that performs mining transmits the root hash value RHV only to the generation device 11 that performs consensus building. As a result, the consensus building system 1 of the present embodiment can suppress an increase in network NW traffic.

また、本実施形態において、受信部110とは、「選択結果受信部」の一例である。また、送信部140とは、「ルート値送信部」、「選択結果送信部」、及び「ブロック送信部」の一例である。
また、上述では、合意形成システム1が4つのPPM装置(生成装置11)を備える場合について説明したが、これに限られない。合意形成システム1は、例えば、少なくとも2つ以上の生成装置11を備えていればよい。
Further, in the present embodiment, the receiving unit 110 is an example of the “selection result receiving unit”. Further, the transmission unit 140 is an example of a “route value transmission unit”, a “selection result transmission unit”, and a “block transmission unit”.
Further, in the above description, the case where the consensus building system 1 includes four PPM devices (generation devices 11) has been described, but the present invention is not limited to this. The consensus building system 1 may include, for example, at least two or more generation devices 11.

[第2実施形態のまとめ]
以上説明したように、本実施形態の合意形成システム1は、複数の生成装置11を備える。合意形成システム1が備える生成装置11のうち、マイニングを行う生成装置11(この一例では、生成装置11−1)の受信部110が、他の生成装置11(この一例では、生成装置11−2〜11−4)から、それぞれトランザクションハッシュ値HV(この一例では、トランザクションハッシュ値HV2〜HV4)を受信する。生成装置11−1のルート算出部150が、算出部130が算出したトランザクションハッシュ値HV(この一例では、トランザクションハッシュ値HV1)と、受信したトランザクションハッシュ値HV2〜HV4とに基づいて、ルートハッシュ値RHVを算出する。
[Summary of the second embodiment]
As described above, the consensus building system 1 of the present embodiment includes a plurality of generation devices 11. Among the generation devices 11 included in the consensus formation system 1, the receiving unit 110 of the generation device 11 (in this example, the generation device 11-1) that performs mining is the other generation device 11 (in this example, the generation device 11-2). The transaction hash value HV (in this example, the transaction hash values HV2 to HV4) is received from each of ~ 11-4). The route calculation unit 150 of the generation device 11-1 is based on the transaction hash value HV (transaction hash value HV1 in this example) calculated by the calculation unit 130 and the received transaction hash values HV2 to HV4. Calculate the RHV.

合意形成を行う生成装置11−2〜11−4の選択部160が、生成装置11−1が送信するルートハッシュ値RHVに基づいて、ブロックを生成するか否かを選択する。生成装置11−1の判定部170が、生成装置11−2〜11−4が選択した選択結果に基づいてブロックの生成に合意する否かを判定する。生成装置11−1の送信部140は、選択結果のうち、ブロックの生成に合意する選択結果が過半数である場合、ブロックを生成し、ネットワークNWを用いて他のノード(この一例では、生成装置11−2〜11−4)に送信する。 The selection unit 160 of the generation devices 11-2 to 11-4 for consensus building selects whether or not to generate a block based on the root hash value RHV transmitted by the generation device 11-1. The determination unit 170 of the generation device 11-1 determines whether or not the generation devices 11-2 to 11-4 agree to generate the block based on the selection result selected. The transmission unit 140 of the generation device 11-1 generates a block when the selection result that agrees to generate the block is the majority of the selection results, and uses the network NW to generate another node (in this example, the generation device). It is transmitted to 11-2 to 11-4).

本実施形態の合意形成システム1によれば、マイニングされたハッシュ値(ルートハッシュ値RHV)に対して、合意形成を行うことができる。また、本実施形態の合意形成システム1によれば、合意形成が行われることにより、ブロックチェーンに記録される情報に不正な処理が行われることを抑制することができる。 According to the consensus building system 1 of the present embodiment, consensus building can be performed on the mined hash value (root hash value RHV). Further, according to the consensus building system 1 of the present embodiment, it is possible to prevent unauthorized processing of the information recorded on the blockchain by performing consensus building.

また、本実施形態の合意形成システム1の合意形成を行う生成装置11−2〜11−4は、ルートハッシュ値RHVに自装置が算出したトランザクションハッシュ値HVが含まれる場合、ブロックを生成することに合意すると選択する。ここで、合意形成を行う生成装置11のうち、ある生成装置11は、他の生成装置11が算出したトランザクションハッシュ値HVの値を把握していない。したがって、合意形成を行う生成装置11は、ルートハッシュ値RHVに自装置が算出したトランザクションハッシュ値HVが含まれている場合、少なくとも自装置が算出したトランザクションハッシュ値HVに不正な改ざん等が行われていないことを確認することができる。 Further, the generation devices 11-2 to 11-4 that form the consensus of the consensus building system 1 of the present embodiment generate a block when the root hash value RHV includes the transaction hash value HV calculated by the own device. Select to agree with. Here, among the generation devices 11 for consensus building, one generation device 11 does not grasp the value of the transaction hash value HV calculated by the other generation device 11. Therefore, when the root hash value RHV includes the transaction hash value HV calculated by the own device, the generation device 11 that forms the agreement at least illegally falsifies the transaction hash value HV calculated by the own device. You can confirm that it is not.

また、本実施形態の合意形成システム1の合意形成を行う生成装置11−2〜11−4は、ルートハッシュ値RHVに前ブロックハッシュ値BHVが含まれている場合、ブロックを生成することに合意すると選択する。ここで、合意形成を行う生成装置11は、ブロックチェーン(ブロックチェーン情報BLK)を参照することが可能である。したがって、合意形成を行う生成装置11は、ルートハッシュ値RHVに前ブロックハッシュ値BHVが含まれている場合、ブロックに不正な改ざん等が行われていないことを確認することができる。 Further, the generation devices 11-2 to 11-4 for consensus building of the consensus building system 1 of the present embodiment agree to generate a block when the root hash value RHV includes the previous block hash value BHV. Then select. Here, the generation device 11 for consensus building can refer to the blockchain (blockchain information BLK). Therefore, when the root hash value RHV includes the previous block hash value BHV, the generation device 11 that performs consensus building can confirm that the block has not been tampered with illegally.

[変形例]
以下、図を参照して第2実施形態に係る変形例について説明する。
第2実施形態では、生成装置11の判定部170が、選択結果のうち、ブロックの生成に合意する選択結果が過半数である場合、ブロックを生成する構成について説明した。
変形例では、生成装置11に付される信頼度に基づいて、判定部170がブロックを生成するか否かを判定する場合について説明する。
なお、上述した実施形態と、同様の構成については、同一の符号を付して説明を省略する。
[Modification example]
Hereinafter, a modified example according to the second embodiment will be described with reference to the drawings.
In the second embodiment, the configuration in which the determination unit 170 of the generation device 11 generates a block when the selection result that agrees to generate the block is the majority of the selection results has been described.
In the modified example, a case where the determination unit 170 determines whether or not to generate a block will be described based on the reliability attached to the generation device 11.
The same components as those in the above-described embodiment are designated by the same reference numerals, and the description thereof will be omitted.

図11は、変形例の合意形成システム2のネットワーク構成の一例を示す図である。
図11に示す通り、合意形成システム2が備える生成装置11には、それぞれ信頼度が付される。信頼度は、例えば、不正が行われていない情報に合意した生成装置11には、大きい値が付され、不正が行われている情報に合意した生成装置11には、小さい値が付される。不正が行われている情報とは、例えば、合意形成によって合意されなかったルートハッシュ値RHVである。また、不性が行われていない情報とは、例えば、合意形成によって合意されたルートハッシュ値RHVである。
変形例では、生成装置11−1には、信頼度「5」が付され、生成装置11−2には、信頼度「3」が付され、生成装置11−3には、信頼度「2」が付され、生成装置11−4には、信頼度「4」が付される。
FIG. 11 is a diagram showing an example of the network configuration of the consensus building system 2 of the modified example.
As shown in FIG. 11, each of the generation devices 11 included in the consensus building system 2 is given a reliability. The reliability is, for example, a large value given to the generator 11 that agrees with the information that is not fraudulent, and a small value is given to the generator 11 that agrees with the information that is fraudulent. .. The fraudulent information is, for example, the root hash value RHV that was not agreed upon by consensus building. Further, the information that is not improper is, for example, the root hash value RHV agreed by consensus building.
In the modified example, the generator 11-1 is assigned a reliability "5", the generator 11-2 is assigned a reliability "3", and the generator 11-3 is assigned a reliability "2". Is attached, and the reliability "4" is attached to the generator 11-4.

なお、信頼度は、不正が行われていない情報に合意した生成装置11の信頼度に、所定の値が加えられ、不正が行われている情報に合意した生成装置11の信頼度から所定の値が差し引かれる構成であってもよい。 The reliability is determined from the reliability of the generator 11 that agrees to the information that is not fraudulent by adding a predetermined value to the reliability of the generator 11 that agrees to the information that is not fraudulent. The configuration may be such that the value is deducted.

変形例において、合意形成を行う生成装置11の送信部140は、選択部160が選択した選択結果を示す情報とあわせて信頼度を示す情報を送信する。
また、変形例において、マイニングを行う生成装置11の判定部170は、選択結果のうち、ブロックの生成に合意する選択結果を送信した生成装置11の信頼度の和が所定の閾値以上である場合、ブロックを生成と判定する。また、マイニングを行う生成装置11の判定部170は、選択結果のうち、ブロックの生成に合意する選択結果を送信した生成装置11の信頼度の和が所定の閾値より小さい値である場合、ブロックを生成しないと判定する。
In the modified example, the transmission unit 140 of the generation device 11 that performs consensus building transmits information indicating the reliability together with the information indicating the selection result selected by the selection unit 160.
Further, in the modified example, when the determination unit 170 of the generation device 11 that performs mining has a sum of the reliabilitys of the generation device 11 that has transmitted the selection result that agrees to generate the block among the selection results, is equal to or more than a predetermined threshold value. , Judge that the block is generated. Further, the determination unit 170 of the generation device 11 that performs mining blocks when the sum of the reliabilitys of the generation devices 11 that have transmitted the selection results that agree to generate the blocks is smaller than a predetermined threshold value among the selection results. Is not generated.

ここで、所定の閾値が「6」である場合であって、生成装置11−3と、生成装置11−4とがブロックの生成に合意する選択結果を送信する場合、信頼度の和は「6」である。したがって、生成装置11−1の判定部170は、ブロックを生成と判定する。また、生成装置11−2と、生成装置11−3とがブロックの生成に合意する選択結果を送信する場合、信頼度の和は「5」である。したがって、生成装置11−1の判定部170は、ブロックを生成しないと判定する。
以降の構成は上述した実施形態と同様であるため、説明を省略する。
Here, when the predetermined threshold value is "6" and the generation device 11-3 and the generation device 11-4 transmit the selection result that agrees to generate the block, the sum of the reliabilitys is ". 6 ”. Therefore, the determination unit 170 of the generation device 11-1 determines that the block is generated. Further, when the generation device 11-2 and the generation device 11-3 transmit the selection result that agrees to generate the block, the sum of the reliabilitys is "5". Therefore, the determination unit 170 of the generation device 11-1 determines that the block is not generated.
Since the following configurations are the same as those in the above-described embodiment, the description thereof will be omitted.

[変形例のまとめ]
以上説明したように、変形例の合意形成システム2が備える生成装置11には、信頼度が付される。変形例の合意形成システム2は、ブロックを生成する(オープン状態であるブロックをクローズ状態にする)ことを示す選択結果を送信した生成装置11に付される信頼度の和が所定の閾値以上である場合、ブロックを生成する。
したがって、変形例の合意形成システム2によれば、信頼度の高い生成装置11が一定数合意した場合にブロックを生成し、ブロックチェーンに不正な改ざん等が行われていない情報を記録することができる。
[Summary of modified examples]
As described above, the generation device 11 included in the consensus building system 2 of the modified example is given reliability. In the consensus building system 2 of the modified example, the sum of the reliabilitys attached to the generator 11 that has transmitted the selection result indicating that the block is generated (the block in the open state is closed) is equal to or higher than a predetermined threshold value. If so, generate a block.
Therefore, according to the consensus building system 2 of the modified example, when a certain number of highly reliable generation devices 11 agree, a block is generated and information that has not been tampered with illegally is recorded in the blockchain. it can.

なお、上述した実施形態及び変形例では、各生成装置10、及び各生成装置11が、同一の種類の取引(この一例では、金銭の取引)を行う場合について説明したが、これに限られない。例えば、各生成装置10、及び各生成装置11は、異なる種類の取引に対してトランザクションTの内容を非公開にし、かつ取引の正当性を保証する構成であってもよい。例えば、生成装置11−1、及び生成装置11−2は、デジタル著作権管理されたデータの提供履歴に関するトランザクションTに対して処理を行い、生成装置11−3、及び生成装置11−4は、個人情報やプライバシー情報の提供履歴に関するトランザクションTに対して処理を行う等の構成であってもよい。
これにより、ブロックチェーンには、複数の種類の取引に関するトランザクションTの内容を非公開にし、かつ当該取引の正当性を保証することができる。
In the above-described embodiments and modifications, the case where each generation device 10 and each generation device 11 conducts the same type of transaction (in this example, a money transaction) has been described, but the present invention is not limited to this. .. For example, each generation device 10 and each generation device 11 may be configured to keep the contents of the transaction T private for different types of transactions and guarantee the validity of the transactions. For example, the generator 11-1 and the generator 11-2 process the transaction T regarding the provision history of the digital rights-managed data, and the generator 11-3 and the generator 11-4 process the transaction T. It may be configured to process the transaction T related to the provision history of personal information and privacy information.
As a result, it is possible to keep the contents of the transaction T related to a plurality of types of transactions private to the blockchain and guarantee the validity of the transaction.

なお、上記の各実施形態における生成装置10、及び生成装置11が備える各部は、専用のハードウェアにより実現されるものであってもよく、また、メモリおよびマイクロプロセッサにより実現させるものであってもよい。 The generator 10 and each part included in the generator 11 in each of the above embodiments may be realized by dedicated hardware, or may be realized by a memory and a microprocessor. Good.

なお、生成装置10、及び生成装置11が備える各部は、メモリおよびCPU(中央演算装置)により構成され、生成装置10、及び生成装置11が備える各部の機能を実現するためのプログラムをメモリにロードして実行することによりその機能を実現させるものであってもよい。 Each part of the generation device 10 and the generation device 11 is composed of a memory and a CPU (central processing unit), and a program for realizing the functions of the generation device 10 and each part of the generation device 11 is loaded into the memory. The function may be realized by executing the function.

また、生成装置10、及び生成装置11が備える各部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。 Further, a program for realizing the functions of the generation device 10 and each part included in the generation device 11 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read by the computer system and executed. The process may be performed accordingly. The term "computer system" as used herein includes hardware such as an OS and peripheral devices.

また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
In addition, the "computer system" includes a homepage providing environment (or display environment) if a WWW system is used.
Further, the "computer-readable recording medium" refers to a portable medium such as a flexible disk, a magneto-optical disk, a ROM, or a CD-ROM, or a storage device such as a hard disk built in a computer system. Further, a "computer-readable recording medium" is a communication line for transmitting a program via a network such as the Internet or a communication line such as a telephone line, and dynamically holds the program for a short period of time. In that case, it also includes the one that holds the program for a certain period of time, such as the volatile memory inside the computer system that becomes the server or client. Further, the above-mentioned program may be a program for realizing a part of the above-mentioned functions, and may be a program for realizing the above-mentioned functions in combination with a program already recorded in the computer system.

以上、本発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更を加えることができる。上述した各実施形態に記載の構成を組み合わせてもよい。 Although the embodiments of the present invention have been described in detail with reference to the drawings, the specific configuration is not limited to this embodiment and may be appropriately modified without departing from the spirit of the present invention. it can. The configurations described in each of the above-described embodiments may be combined.

1、2…合意形成システム、10、11、11−1、11−2、11−3、11−4…生成装置、100、101…制御部、110…受信部、120…抽出部、130…算出部、140…送信部、150…ルート算出部、160…選択部、170…判定部、500…記憶部、BHV…前ブロックハッシュ値、BLK…ブロックチェーン情報、TI…トランザクション履歴情報、HV、HV1、HV2、HV3、HV4、HV12、HV34、HV1234…トランザクションハッシュ値、NW…ネットワーク、RHV…ルートハッシュ値、T、T−1、T−n、T1−1、T1−n、T−2、T2−1、T2−n、T3−1、T3−n、T4−1、T4−n…トランザクション 1, 2 ... Consensus building system, 10, 11, 11-1, 11-2, 11-3, 11-4 ... Generator, 100, 101 ... Control unit, 110 ... Receiver unit, 120 ... Extraction unit, 130 ... Calculation unit, 140 ... Transmission unit, 150 ... Route calculation unit, 160 ... Selection unit, 170 ... Judgment unit, 500 ... Storage unit, BHV ... Previous block hash value, BLK ... Blockchain information, TI ... Transaction history information, HV, HV1, HV2, HV3, HV4, HV12, HV34, HV1234 ... Transaction hash value, NW ... Network, RHV ... Root hash value, T, T-1, T-n, T1-1, T1-n, T-2, T2-1, T2-n, T3-1, T3-n, T4-1, T4-n ... Transaction

Claims (8)

複数の第1の生成装置と、少なくとも1つの第2の生成装置とを備え、ブロックチェーンのブロックの合意形成を行う合意形成システムであって、
それぞれの前記第1の生成装置は、
トランザクションのハッシュ値を第1ハッシュ値として前記第2の生成装置に送信するハッシュ値送信部と、
前記第2の生成装置から送信されたルートハッシュ値に基づいて、オープン状態のブロックをクローズ状態にするか否かを選択する選択部と、
前記選択部が選択した選択結果を示す情報を前記第2の生成装置に送信する選択結果送信部と、
を備え、
前記第2の生成装置は、
前記トランザクションと、前記第1ハッシュ値とを受信する受信部と、
前記トランザクションのハッシュ値を第2ハッシュ値として算出する算出部と、
前記第1の生成装置がそれぞれ送信する前記第1ハッシュ値と、前記算出部が算出した前記第2ハッシュ値と、前記ブロックチェーンとに基づいて、前記ルートハッシュ値を算出するルート算出部と、
算出した前記ルートハッシュ値を複数の前記第1の生成装置にそれぞれ送信するルート値送信部と、
前記ルートハッシュ値を送信したことに応じて、前記第1の生成装置がそれぞれ送信する前記選択結果を受信する選択結果受信部と、
前記選択結果受信部が受信した前記選択結果に基づいて、オープン状態であるブロックをクローズ状態にする否かを判定する判定部と、
前記判定部の判定結果がオープン状態であるブロックをクローズ状態にすることを示す場合、ネットワークに接続される端末にクローズ状態にされたブロックを送信するブロック送信部と、
を備える合意形成システム。
A consensus building system that includes a plurality of first generators and at least one second generator to form consensus on blocks of a blockchain.
Each of the first generators
A hash value transmitter that transmits the hash value of the transaction as the first hash value to the second generator , and
A selection unit that selects whether or not to close the open block based on the root hash value transmitted from the second generator, and
A selection result transmission unit that transmits information indicating the selection result selected by the selection unit to the second generation device, and a selection result transmission unit.
With
The second generator is
A receiver that receives the transaction and the first hash value,
A calculation unit that calculates the hash value of the transaction as the second hash value,
Said first hash value of the first generation apparatus transmits each of said second hash value which the calculation unit is calculated, based on said block chain, a route calculating unit for calculating the root hash value,
A route value transmission unit that transmits the calculated route hash value to the plurality of first generation devices, respectively .
A selection result receiving unit that receives the selection result transmitted by the first generation device in response to the transmission of the route hash value, and
Based on the selection result received by the selection result receiving unit, a determination unit that determines whether or not to close the block in the open state, and a determination unit.
When the determination result of the determination unit indicates that the block in the open state is to be closed, the block transmission unit that transmits the closed block to the terminal connected to the network and the block transmission unit.
Consensus building system with.
前記選択部は、
前記ルートハッシュ値に、自装置が算出した前記第2ハッシュ値が含まれている場合、オープン状態のブロックをクローズ状態にすると選択する、
請求項に記載の合意形成システム。
The selection unit
When the root hash value includes the second hash value calculated by the own device, the block in the open state is selected to be closed.
The consensus building system according to claim 1 .
前記選択部は、
オープン状態であるブロックの1つ前にクローズ状態にされたブロックのハッシュ値が、前記ルートハッシュ値に含まれていない場合、オープン状態のブロックをクローズ状態にしないと選択する、
請求項又は請求項に記載の合意形成システム。
The selection unit
If the hash value of the block that was closed immediately before the block that is open is not included in the root hash value, the block that is open is selected not to be closed.
The consensus building system according to claim 1 or 2 .
複数の前記第1の生成装置には、信頼度がそれぞれ付されており、
前記判定部は、
オープン状態であるブロックをクローズ状態にすることを示す前記選択結果を送信した前記第1の生成装置にそれぞれ付される信頼度の和が、所定の閾値以上である場合、オープン状態であるブロックをクローズ状態にすると判定する、
請求項から請求項のいずれか一項に記載の合意形成システム。
Each of the plurality of first generators has a reliability.
The determination unit
If the sum of the reliabilities respectively subjected to the first generation apparatus which has transmitted the selection result indicating that the an open state block to the closed state is equal to or greater than a predetermined threshold value, a is an open state block Judged to be closed,
Consensus system according to any one of claims 1 to 3.
前記第2の生成装置は、
前記ブロックチェーンに基づいて、前記受信部が受信した前記トランザクションのうち、前記ブロックチェーンに記録されていないトランザクションである未記録トランザクションを抽出する抽出部
をさらに備え、
前記算出部は、
前記抽出部が抽出する前記未記録トランザクションのハッシュ値を前記第2ハッシュ値として算出する
請求項1から請求項4のいずれか一項に記載の合意形成システム。
The second generator is
On the basis of the block chain of said transaction received by the receiving unit, extracting unit that extracts an unrecorded transactions are transactions which are not recorded in the block chain
With more
The calculation unit
The hash value of the unrecorded transaction extracted by the extraction unit is calculated as the second hash value.
The consensus building system according to any one of claims 1 to 4.
前記抽出部は、
前記ブロックチェーンに含まれる複数のブロックのうち、オープン状態であるブロックの1つ前にクローズ状態にされたブロックに記録される取引が行われた時刻以降の取引のトランザクションを前記未記録トランザクションとして抽出する、
請求項5に記載の合意形成システム
The extraction unit
Among the plurality of blocks included in the blockchain, the transaction of the transaction recorded in the block closed before the block in the open state is extracted as the unrecorded transaction after the time when the transaction is performed. To do,
The consensus building system according to claim 5 .
コンピュータに、 On the computer
トランザクションと、第1の生成装置が生成する第1ハッシュ値とを受信する受信ステップと、 A receive step that receives the transaction and the first hash value generated by the first generator.
前記トランザクションのハッシュ値を第2ハッシュ値として算出する算出ステップと、 A calculation step of calculating the hash value of the transaction as a second hash value, and
前記第1の生成装置がそれぞれ送信する前記第1ハッシュ値と、前記算出ステップにおいて算出された前記第2ハッシュ値と、ブロックチェーンとに基づいて、ルートハッシュ値を算出するルート算出ステップと、 A route calculation step for calculating a route hash value based on the first hash value transmitted by the first generator, the second hash value calculated in the calculation step, and the blockchain.
算出された前記ルートハッシュ値を、複数の前記第1の生成装置にそれぞれ送信するルート値送信ステップと、 A route value transmission step of transmitting the calculated route hash value to each of the plurality of first generation devices, and
前記ルートハッシュ値を送信したことに応じて、前記第1の生成装置がそれぞれ選択するオープン状態のブロックをクローズ状態にするか否かの選択結果を、それぞれの前記第1の生成装置から受信する選択結果受信ステップと、 In response to the transmission of the root hash value, the selection result of whether or not to close the open state block selected by the first generation device is received from each of the first generation devices. Selection result reception step and
前記選択結果受信ステップにおいて受信された前記選択結果に基づいて、オープン状態であるブロックをクローズ状態にする否かを判定する判定ステップと、 Based on the selection result received in the selection result receiving step, a determination step of determining whether or not to close the block in the open state, and a determination step.
前記判定ステップにおける判定結果がオープン状態であるブロックをクローズ状態にすることを示す場合、ネットワークに接続される端末にクローズ状態にされたブロックを送信するブロック送信ステップと、 When the determination result in the determination step indicates that the block in the open state is to be closed, the block transmission step of transmitting the closed block to the terminal connected to the network and the block transmission step
を実行させるためのプログラム。 A program to execute.
コンピュータが、トランザクションと、第1の生成装置が生成する第1ハッシュ値とを受信する受信ステップと、 A receiving step in which the computer receives the transaction and the first hash value generated by the first generator.
コンピュータが、前記トランザクションのハッシュ値を第2ハッシュ値として算出する算出ステップと、 A calculation step in which the computer calculates the hash value of the transaction as the second hash value,
コンピュータが、前記第1の生成装置がそれぞれ送信する前記第1ハッシュ値と、前記算出ステップにおいて算出された前記第2ハッシュ値と、ブロックチェーンとに基づいて、ルートハッシュ値を算出するルート算出ステップと、 A route calculation step in which a computer calculates a route hash value based on the first hash value transmitted by the first generator, the second hash value calculated in the calculation step, and the blockchain. When,
コンピュータが、算出された前記ルートハッシュ値を、複数の前記第1の生成装置にそれぞれ送信するルート値送信ステップと、 A route value transmission step in which the computer transmits the calculated route hash value to the plurality of first generation devices, respectively.
コンピュータが、前記ルートハッシュ値を送信したことに応じて、前記第1の生成装置がそれぞれ選択するオープン状態のブロックをクローズ状態にするか否かの選択結果を、それぞれの前記第1の生成装置から受信する選択結果受信ステップと、 In response to the transmission of the root hash value by the computer, the selection result of whether or not to close the open state block selected by the first generator is selected by each of the first generators. The selection result reception step to receive from
コンピュータが、前記選択結果受信ステップにおいて受信された前記選択結果に基づいて、オープン状態であるブロックをクローズ状態にする否かを判定する判定ステップと、 A determination step in which the computer determines whether or not to close the block in the open state based on the selection result received in the selection result receiving step.
コンピュータが、前記判定ステップにおける判定結果がオープン状態であるブロックをクローズ状態にすることを示す場合、ネットワークに接続される端末にクローズ状態にされたブロックを送信するブロック送信ステップと、 When the computer indicates that the block in the open state is to be closed, the block transmission step of transmitting the closed block to the terminal connected to the network is used.
を有する生成方法。 Production method having.
JP2017101114A 2017-05-22 2017-05-22 Consensus building system, program, and generation method Active JP6814094B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017101114A JP6814094B2 (en) 2017-05-22 2017-05-22 Consensus building system, program, and generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017101114A JP6814094B2 (en) 2017-05-22 2017-05-22 Consensus building system, program, and generation method

Publications (2)

Publication Number Publication Date
JP2018196097A JP2018196097A (en) 2018-12-06
JP6814094B2 true JP6814094B2 (en) 2021-01-13

Family

ID=64570706

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017101114A Active JP6814094B2 (en) 2017-05-22 2017-05-22 Consensus building system, program, and generation method

Country Status (1)

Country Link
JP (1) JP6814094B2 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110264187B (en) * 2019-01-23 2021-06-04 腾讯科技(深圳)有限公司 Data processing method and device, computer equipment and storage medium
CN109933629B (en) * 2019-03-15 2021-07-30 腾讯科技(深圳)有限公司 Data synchronization method and device, computer equipment and readable storage medium
WO2020188665A1 (en) * 2019-03-15 2020-09-24 三菱電機株式会社 Personal information management device, personal information management system, personal information management method, and program
US11126425B2 (en) * 2019-04-19 2021-09-21 Sarcos Corp. Version history management using a blockchain
US20220237320A1 (en) * 2019-05-29 2022-07-28 Nec Corporation Management apparatus, management method, verification apparatus, computer program and recording medium
CN115004630A (en) * 2020-01-31 2022-09-02 松下电器(美国)知识产权公司 Control method, server, and program
WO2021166931A1 (en) * 2020-02-21 2021-08-26 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Control method, control device, and program
KR102367523B1 (en) * 2020-08-11 2022-02-25 홍익대학교 산학협력단 Distributed consensus system and consensus network server
JP7413231B2 (en) 2020-11-04 2024-01-15 株式会社東芝 Information processing method, information processing system, and information processing device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3755394B2 (en) * 2000-09-29 2006-03-15 日本電気株式会社 Electronic commerce audit system, electronic commerce audit method, and recording medium recording electronic commerce audit program
JP2006165888A (en) * 2004-12-06 2006-06-22 Hypergear:Kk Time authentication automatic acquisition method of electronic file and communication terminal equipment equipped with time authentication automatic acquisition function
JP2008060745A (en) * 2006-08-30 2008-03-13 Fuji Xerox Co Ltd Information processing system and program
US10097356B2 (en) * 2015-07-02 2018-10-09 Nasdaq, Inc. Systems and methods of secure provenance for distributed transaction databases

Also Published As

Publication number Publication date
JP2018196097A (en) 2018-12-06

Similar Documents

Publication Publication Date Title
JP6814094B2 (en) Consensus building system, program, and generation method
US11277389B2 (en) System and method for information protection
JP6483827B2 (en) Agreement agreement method, agreement verification method, agreement agreement system, agreement validation device, agreement agreement device, agreement agreement program and agreement validation program
AU2018347195B2 (en) System and method for information protection
AU2018347196B2 (en) System and method for information protection
JP6841911B2 (en) Information protection systems and methods
EP3568826B1 (en) System and method for information protection
CN107113179B (en) Method, system, and non-transitory computer-readable storage medium for communication authentication
KR20200139223A (en) Computer-implemented methods and systems for delivering access to digital assets
JP2017220710A (en) Contract agreement method, agreement verification method, contract agreement device, and agreement verification device
JP6719410B2 (en) Generation device, verification device, and program
FR2737067A1 (en) SYSTEM AND METHOD FOR PERFORMING COMMUNICATIONS OF THE ELECTRONIC DATA EXCHANGE TYPE ON AN OPEN NETWORK
JP7101031B2 (en) Blockchain network and confirmation method for it
US11265162B2 (en) System and method for providing privacy and security protection in blockchain-based private transactions
CN109409878A (en) The method traded via double-deck alliance's chain
KR102311354B1 (en) Blockchain transaction method with reduced transaction size using cryptographic hash algorithm
CN110278266B (en) Resource processing method and device based on block chain
Gencer On scalability of blockchain technologies
CN107148629B (en) Disposable Verification System
Zindros Hours of horus: keyless cryptocurrency wallets
JP6934679B2 (en) Blockchain transaction creation protocol and blockchain address creation method
JP7040815B2 (en) Trading systems, trading equipment, trading methods and trading programs
AU2019101598A4 (en) System and method for information protection
Kumar Bitcoin 6.0: Military Grade e-Payment System
AU2019101582A4 (en) System and method for information protection

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170523

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190710

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200811

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201012

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201208

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201218

R150 Certificate of patent or registration of utility model

Ref document number: 6814094

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150