JP6814094B2 - Consensus building system, program, and generation method - Google Patents
Consensus building system, program, and generation method Download PDFInfo
- 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
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.
近年、各種サービスを利用するユーザのポリシーに基づいて、当該ユーザの個人情報を適切に活用するプラットフォーム(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
(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.
[従来のブロックチェーンについて]
図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
[第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
本実施形態の一例では、ユーザが金銭の取引を、ネットワーク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
Hereinafter, a specific configuration of the
[生成装置の構成について]
図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
As shown in FIG. 3, the
制御部100は、CPU(Central Processing Unit)を備えており、受信部110と、抽出部120と、算出部130と、送信部140とをその機能部として備える。受信部110は、各端末TMからトランザクションTを受信する。受信部110は、受信したトランザクションTを記憶部500にトランザクション履歴情報TIとして記憶させる。
The
抽出部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
算出部130は、抽出部120からトランザクションTを取得する。算出部130は、取得したトランザクションTのハッシュ値(以下、トランザクションハッシュ値HV)を算出する。算出部130は、算出したトランザクションハッシュ値HVを送信部140に供給する。
送信部140は、算出部130から取得したトランザクションハッシュ値HVを、ネットワークNWを用いて他のノードに送信する。
The
The
ネットワーク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
図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
FIG. 4 is a diagram showing an example of a blockchain in the case where only the
[生成装置の動作について]
図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
The receiving
[第1実施形態のまとめ]
以上説明したように、本実施形態の生成装置10は、受信したトランザクションTに基づいてトランザクションハッシュ値HVを算出し、ネットワークNWを用いて送信する。ネットワークNWに接続されるノードは、当該トランザクションハッシュ値HVに基づいて、ブロックを生成する。
[Summary of the first embodiment]
As described above, the
本実施形態の生成装置10は、トランザクションハッシュ値HVをネットワークNWに送信することにより、トランザクションTに代えてトランザクションハッシュ値HVをブロックチェーンに記録することができる。したがって、本実施形態の生成装置10によれば、トランザクションTが送信されることによって取引を行う取引者の個人情報を非公開にすることができる。また、本実施形態の生成装置10は、トランザクション履歴情報TIと、ブロックに含まれるトランザクションハッシュ値HVと、ナンス値とに基づいて、トランザクションハッシュ値HVの元になるデータであるトランザクションTの正当性を保証することができる。したがって、本実施形態の生成装置10によれば、取引者のトランザクションTの秘匿性を高めつつ、かつトランザクションTの正当性を保証することができる。つまり、本実施形態の生成装置10によれば、ブロックチェーンによってPPMの履歴情報を記録することができる。
The
また、本実施形態の生成装置10が備える抽出部120は、ブロックチェーンに含まれる複数のブロックのうち、オープン状態であるブロックの1つ前にクローズ状態にされたブロック(例えば、最新のブロック)に記録される取引が行われた時刻以降の取引のトランザクションTを抽出する。
ここで、算出部130が、トランザクション履歴情報TIに含まれるトランザクションTのすべてを元データとしてトランザクションハッシュ値HVを算出する場合、生成装置10の処理負荷が増加する可能性がある。本実施形態の生成装置10が備える抽出部120は、ブロックチェーンに記録されるトランザクションT(トランザクションハッシュ値HV)以外のトランザクションTを抽出する。換言すると、本実施形態の生成装置10が備える抽出部120は、トランザクション履歴情報TIのうち、ブロックチェーンに記録されるトランザクションTとの差分を抽出する。これにより、本実施形態の生成装置10は、トランザクションハッシュ値HVを算出する際の処理負荷を低減することができる。
Further, the
Here, when the
なお、上述では、生成装置10がノードとしての機能を有する場合について説明したが、これに限られない。例えば、PPM装置がノードとしての機能を有する構成であってもよく、ネットワークNWに接続される他の装置がノードとしての機能を有する構成であってもよい。この場合、生成装置10が備える記憶部500には、ブロックチェーン情報BLKが記憶されていなくてもよい。
In the above description, the case where the
本実施形態において、受信部110とは、「履歴情報受信部」の一例である。また、トランザクションTとは、「履歴情報」の一例である。また、抽出部120が抽出するトランザクションTとは、「未記録履歴情報」の一例である。また、トランザクションハッシュ値HVとは、「未記録履歴情報のハッシュ値」の一例である。また、送信部140とは、「ハッシュ値送信部」の一例である。
In the present embodiment, the receiving
[第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
また、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
[生成装置の構成について]
図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
As shown in FIG. 7, the
The
本実施形態の一例において、マイニングを行う生成装置11(この一例では、生成装置11−1)の受信部110は、他の生成装置11(この一例では、生成装置11−2〜11−4)が送信するトランザクションハッシュ値HVを受信する。受信部110は、受信したトランザクションハッシュ値HVをルート算出部150に供給する。
In one example of this embodiment, the receiving
ルート算出部150は、受信部110が受信したトランザクションハッシュ値HVと、算出部130が算出したトランザクションハッシュ値HVと、ブロックチェーン情報BLKとに基づいて、マイニングを行う。具体的には、ルート算出部150は、受信部110が受信したトランザクションハッシュ値HVと、算出部130が算出したトランザクションハッシュ値HVと、ブロックチェーン情報BLKに含まれる最新のブロックのハッシュ値とに基づいて、オープン状態のブロックのハッシュ値(以下、ルートハッシュ値RHV)を算出する。
The
本実施形態の送信部140は、ルート算出部150が算出したルートハッシュ値RHVを、ネットワークNWを用いて他のノード(この一例では、生成装置11−2〜11−4)に送信する。
選択部160は、受信部110が受信したルートハッシュ値RHVに基づいて、ブロックを生成する(オープン状態のブロックをクローズ状態する)ことに合意するか否かを選択する。
The
The
選択部160は、例えば、算出部130が算出したトランザクションハッシュ値HVがルートハッシュ値RHVに含まれていない場合、ブロックを生成することに合意しないと選択する。また、選択部160は、例えば、ブロックチェーン情報BLKに含まれる最新のブロックのハッシュ値(以下、前ブロックハッシュ値BHV)がルートハッシュ値RHVに含まれていない場合、ブロックを生成することに合意しないと選択する。また、選択部160は、例えば、算出部130が算出したトランザクションハッシュ値HVがルートハッシュ値RHVに含まれており、かつ前ブロックハッシュ値BHVがルートハッシュ値RHVに含まれている場合、当該ルートハッシュ値RHVをトランザクションとしてブロックに記憶することに合意すると選択する。
The
選択部160は、選択した選択結果を示す情報を送信部140に供給する。本実施形態の送信部140は、選択部160が選択した選択結果を示す情報を、ネットワークNWを用いてマイニングを行う生成装置11−1に送信する。
The
判定部170は、受信部110が受信した選択結果を示す情報に基づいて、ブロックを生成するか否かを判定する。判定部170は、例えば、受信した選択結果のうち、ブロックの生成に合意する選択結果が過半数である場合、ブロックを生成する。また、判定部170は、例えば、受信した選択結果のうち、ブロックの生成に合意する選択結果が過半数ではない場合、ブロックを生成しない。判定部170がブロックを生成しない場合、算出部130が算出したトランザクションハッシュ値HVは、破棄される。また、破棄されたトランザクションハッシュ値HVの元データであるトランザクションTは、抽出部120が次のタイミングにおいてトランザクションTを抽出する際に抽出される。
The
[生成装置の動作について]
図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
Specifically, FIG. 8 is a flow chart showing an example of the operation of the
マイニングを行う生成装置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
生成装置11−1のルート算出部150は、生成装置11−1の算出部130が算出するトランザクションハッシュ値HV1と、受信部110が受信したトランザクションハッシュ値HV2〜HV4と、ブロックチェーン情報BLKとに基づいて、ルートハッシュ値RHVを算出する(ステップS220)。
The
図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
なお、ルート算出部150は、ネットワークNWに接続される各生成装置11が算出するトランザクションハッシュ値HV(この一例では、トランザクションハッシュ値HV1〜HV4)がルートハッシュ値RHVの元データとして含まれていれば、いずれの順序でハッシュ値を算出してもよい。ルート算出部150は、例えば、トランザクションハッシュ値HV1〜HV4に基づいて、トランザクションハッシュ値HV1234を算出してもよい。
The
図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
Next, the receiving
選択部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
選択部160は、例えば、マークルツリーを用いて、トランザクションハッシュ値HVや、前ブロックハッシュ値BHVが、ルートハッシュ値RHVに含まれるかを検証する。具体的には、選択部160は、検証対象のハッシュ値(例えば、トランザクションハッシュ値HV、又は前ブロックハッシュ値BHV)をノードに通知する。ノードは、通知された検証対象のハッシュ値のマークルツリーにおける位置を示す情報(以下、マークルパス)と、マークルパスからマークルツリーのルートノードまでに経由する各葉に格納される情報を供給する。マークルツリーの各葉には、ハッシュ値が格納される。したがって、ノードは、マークルパスからルートノードまでに経由する各葉のハッシュ値を供給する。選択部160は、検証対象のハッシュ値と、ノードから供給された各ハッシュ値と、マークルパスとに基づいて、マークルツリーのルートノードのハッシュ値を算出する。
選択部160は、算出したルートノードのハッシュ値と、受信部110が受信したルートハッシュ値RHVとが一致する場合、検証対象のハッシュ値がルートハッシュ値RHVに含まれると判定する。また、選択部160は、算出したルートノードのハッシュ値と、受信部110が受信したルートハッシュ値RHVとが一致しない場合、検証対象のハッシュ値がルートハッシュ値RHVに含まれないと判定する。
The
When the calculated hash value of the root node and the root hash value RHV received by the receiving
生成装置11−1の受信部110は、合意形成を行う生成装置11−2〜11−4が送信した選択結果を示す情報を受信する(ステップS300)。判定部170は、受信部110が受信した選択結果のうち、ブロックの生成に合意する選択結果が過半数であるか否かを判定する(ステップS310)。判定部170は、選択結果のうち、ブロックの生成に合意する選択結果が過半数である場合(ステップS310;YES)、ブロックを生成する(オープン状態のブロックをクローズ状態する)と判定する(ステップS320)。また、判定部170は、選択結果のうち、ブロックの生成に合意する選択結果が過半数ではない場合(ステップS310;NO)、ブロックを生成しない(オープン状態のブロックをクローズ状態にしない)と判定する(ステップS330)。
The receiving
生成装置11−1の送信部140は、判定部170の判定結果がブロックを生成することを示す場合、ルートハッシュ値RHVと、前ブロックハッシュ値BHVと、ナンス値とを含むブロックを生成し、当該ブロックをネットワークNWを用いて他のノード(この一例では、生成装置11−2〜11−4)に送信する(ステップS340)。
When the determination result of the
図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
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
また、上述では、合意形成システム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
また、本実施形態において、受信部110とは、「選択結果受信部」の一例である。また、送信部140とは、「ルート値送信部」、「選択結果送信部」、及び「ブロック送信部」の一例である。
また、上述では、合意形成システム1が4つのPPM装置(生成装置11)を備える場合について説明したが、これに限られない。合意形成システム1は、例えば、少なくとも2つ以上の生成装置11を備えていればよい。
Further, in the present embodiment, the receiving
Further, in the above description, the case where the
[第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
合意形成を行う生成装置11−2〜11−4の選択部160が、生成装置11−1が送信するルートハッシュ値RHVに基づいて、ブロックを生成するか否かを選択する。生成装置11−1の判定部170が、生成装置11−2〜11−4が選択した選択結果に基づいてブロックの生成に合意する否かを判定する。生成装置11−1の送信部140は、選択結果のうち、ブロックの生成に合意する選択結果が過半数である場合、ブロックを生成し、ネットワークNWを用いて他のノード(この一例では、生成装置11−2〜11−4)に送信する。
The
本実施形態の合意形成システム1によれば、マイニングされたハッシュ値(ルートハッシュ値RHV)に対して、合意形成を行うことができる。また、本実施形態の合意形成システム1によれば、合意形成が行われることにより、ブロックチェーンに記録される情報に不正な処理が行われることを抑制することができる。
According to the
また、本実施形態の合意形成システム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
また、本実施形態の合意形成システム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
[変形例]
以下、図を参照して第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
In the modified example, a case where the
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
As shown in FIG. 11, each of the
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
変形例において、合意形成を行う生成装置11の送信部140は、選択部160が選択した選択結果を示す情報とあわせて信頼度を示す情報を送信する。
また、変形例において、マイニングを行う生成装置11の判定部170は、選択結果のうち、ブロックの生成に合意する選択結果を送信した生成装置11の信頼度の和が所定の閾値以上である場合、ブロックを生成と判定する。また、マイニングを行う生成装置11の判定部170は、選択結果のうち、ブロックの生成に合意する選択結果を送信した生成装置11の信頼度の和が所定の閾値より小さい値である場合、ブロックを生成しないと判定する。
In the modified example, the
Further, in the modified example, when the
ここで、所定の閾値が「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
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
Therefore, according to the
なお、上述した実施形態及び変形例では、各生成装置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
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
なお、生成装置10、及び生成装置11が備える各部は、メモリおよびCPU(中央演算装置)により構成され、生成装置10、及び生成装置11が備える各部の機能を実現するためのプログラムをメモリにロードして実行することによりその機能を実現させるものであってもよい。
Each part of the
また、生成装置10、及び生成装置11が備える各部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
Further, a program for realizing the functions of the
また、「コンピュータシステム」は、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の生成装置に送信するハッシュ値送信部と、
前記第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ハッシュ値が含まれている場合、オープン状態のブロックをクローズ状態にすると選択する、
請求項1に記載の合意形成システム。 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つ前にクローズ状態にされたブロックのハッシュ値が、前記ルートハッシュ値に含まれていない場合、オープン状態のブロックをクローズ状態にしないと選択する、
請求項1又は請求項2に記載の合意形成システム。 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から請求項3のいずれか一項に記載の合意形成システム。 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ハッシュ値として算出する
請求項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 .
トランザクションと、第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.
コンピュータが、前記トランザクションのハッシュ値を第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.
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)
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)
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 |
-
2017
- 2017-05-22 JP JP2017101114A patent/JP6814094B2/en active Active
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 |