JP6931331B2 - Blockchain management system, blockchain management method and blockchain management program - Google Patents
Blockchain management system, blockchain management method and blockchain management program Download PDFInfo
- Publication number
- JP6931331B2 JP6931331B2 JP2018001097A JP2018001097A JP6931331B2 JP 6931331 B2 JP6931331 B2 JP 6931331B2 JP 2018001097 A JP2018001097 A JP 2018001097A JP 2018001097 A JP2018001097 A JP 2018001097A JP 6931331 B2 JP6931331 B2 JP 6931331B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- hash value
- blocks
- blockchain
- blockchain management
- 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 relates to a system, method and program for managing a plurality of blockchains.
従来、分散データベースであるブロックチェーンは、改竄が困難なデータ記録方式として、様々なシステムへの活用方法が提案されている(例えば、非特許文献1〜3参照)。
Conventionally, a blockchain, which is a distributed database, has been proposed as a data recording method that is difficult to falsify, and is used in various systems (see, for example,
ところで、通常、ブロックチェーンでは、記録されたデータの正当性を保証するために、所定のコンセンサス・アルゴリズムによって利用者全体の合意形成を行うが、この処理は、演算及び通信のコストが大きかった。
また、複数の組織によってローカルなブロックチェーンがそれぞれ運用されると、各ブロックチェーンの規模の低下に伴って信頼性が低下すると共に、全体のコストが増大していた。
By the way, in blockchain, in order to guarantee the correctness of recorded data, consensus building is usually performed by a predetermined consensus algorithm for all users, but this process requires a large amount of calculation and communication costs.
In addition, when local blockchains are operated by a plurality of organizations, reliability decreases as the scale of each blockchain decreases, and the overall cost increases.
本発明は、低コストで複数のブロックチェーンそれぞれの信頼性を向上できるブロックチェーン管理システム、ブロックチェーン管理方法及びブロックチェーン管理プログラムを提供することを目的とする。 An object of the present invention is to provide a blockchain management system, a blockchain management method, and a blockchain management program that can improve the reliability of each of a plurality of blockchains at low cost.
本発明に係るブロックチェーン管理システムは、複数のノードがそれぞれ、互いに異なるブロックチェーンを構成するブロックチェーン管理システムであって、各ノードは、他のノードのブロックチェーンに収納されたブロックから、ランダムに1以上のブロックを選択し、当該ブロックのハッシュ値を取得する選択部と、自身が直前に生成したブロックのハッシュ値に加えて、前記選択部により選択された前記1以上のブロックのハッシュ値を含めて、新たなブロックを生成する生成部と、を備える。 The blockchain management system according to the present invention is a blockchain management system in which a plurality of nodes form blockchains different from each other, and each node is randomly selected from blocks stored in the blockchains of other nodes. In addition to the selection unit that selects one or more blocks and acquires the hash value of the block and the hash value of the block that it generated immediately before, the hash value of the one or more blocks selected by the selection unit is added. Including, it includes a generation unit that generates a new block.
前記選択部は、所定期間内に生成されたブロックから選択してもよい。 The selection unit may be selected from blocks generated within a predetermined period.
前記ブロックチェーン管理システムは、前記他のノードのブロックチェーンに収納されたブロックのハッシュ値を一時記憶するバッファ部を備えてもよい。 The blockchain management system may include a buffer unit that temporarily stores the hash value of a block stored in the blockchain of the other node.
前記選択部は、前記直前に生成したブロックのハッシュ値の少なくとも一部を入力とした選択関数により、前記1以上のブロックを選択してもよい。 The selection unit may select one or more blocks by a selection function in which at least a part of the hash value of the block generated immediately before is input.
本発明に係るブロックチェーン管理方法は、複数のノードがそれぞれ、互いに異なるブロックチェーンを構成するブロックチェーン管理方法であって、各ノードは、他のノードのブロックチェーンに収納されたブロックから、ランダムに1以上のブロックを選択し、当該ブロックのハッシュ値を取得する選択ステップと、自身が直前に生成したブロックのハッシュ値に加えて、前記選択ステップにおいて選択された前記1以上のブロックのハッシュ値を含めて、新たなブロックを生成する生成ステップと、を実行する。 The blockchain management method according to the present invention is a blockchain management method in which a plurality of nodes form blockchains different from each other, and each node is randomly selected from blocks stored in the blockchains of other nodes. In addition to the selection step of selecting one or more blocks and acquiring the hash value of the block and the hash value of the block generated immediately before itself, the hash value of the one or more blocks selected in the selection step is added. Including, the generation step to generate a new block, and the execution of.
本発明に係るブロックチェーン管理プログラムは、複数のノードがそれぞれ、互いに異なるブロックチェーンを構成するためのブロックチェーン管理プログラムであって、各ノードに、他のノードのブロックチェーンに収納されたブロックから、ランダムに1以上のブロックを選択し、当該ブロックのハッシュ値を取得する選択ステップと、自身が直前に生成したブロックのハッシュ値に加えて、前記選択ステップにおいて選択された前記1以上のブロックのハッシュ値を含めて、新たなブロックを生成する生成ステップと、を実行させるためのものである。 The blockchain management program according to the present invention is a blockchain management program for a plurality of nodes to form blockchains different from each other, and each node is composed of blocks housed in the blockchains of other nodes. In addition to the selection step of randomly selecting one or more blocks and acquiring the hash value of the block and the hash value of the block generated immediately before itself, the hash of the one or more blocks selected in the selection step. It is for executing a generation step to generate a new block including a value.
本発明によれば、低コストで複数のブロックチェーンそれぞれの信頼性が向上する。 According to the present invention, the reliability of each of the plurality of blockchains is improved at low cost.
以下、本発明の実施形態の一例について説明する。
図1は、本実施形態に係るブロックチェーン管理システム1において、管理対象である複数のブロックチェーンを管理するノード10(情報処理装置、又は装置群)の機能構成を示す図である。
ブロックチェーンを管理する各組織のノード10は、それぞれが互いに異なるブロックチェーンを構成し、バッファ部11と、選択部12と、生成部13とを備える。
Hereinafter, an example of the embodiment of the present invention will be described.
FIG. 1 is a diagram showing a functional configuration of a node 10 (information processing device or device group) that manages a plurality of blockchains to be managed in the
The
バッファ部11は、他のノード10により構成されているブロックチェーンに収納されたブロックのハッシュ値を一時記憶する。
例えば、各ブロックチェーンに収納されたブロックのハッシュ値は、ブロードキャストされ、各ノード10のバッファ部11にインデックスと対応付けて記憶される。
バッファ部11は、所定期間内に生成されたブロックのハッシュ値を格納し、例えば、生成から時間の経過した古いブロックほど高確率で削除されてもよい。
The
For example, the hash value of the block stored in each blockchain is broadcast and stored in the
The
バッファ部11の機能は、バッファ関数により実装されてよい。バッファ関数は、インデックスとハッシュ値との対応表を管理し、指定されたインデックスに対応するハッシュ値を返す。また、バッファ関数は、ランダムFIFO(First In, First Out)方式により、例えば実行の都度、古いブロックをバッファの対象から除外し、一定の期間に生成されたブロックのハッシュ値を新たに追加する。
The function of the
選択部12は、他のノード10のブロックチェーンに収納されたブロックから、ランダムに1以上のブロックを選択し、選択したブロックのハッシュ値を取得する。
このとき、選択部12は、バッファ部11に記憶されたハッシュ値から選択することで、所定期間内に生成されたブロックのハッシュ値を取得する。
The
At this time, the
また、選択部12は、自身が直前に生成したブロックのハッシュ値の少なくとも一部を入力とした選択関数により、1以上のブロックを選択してもよい。具体的には、選択部12は、例えば、直前に生成したブロックのハッシュ値の所定ビットを抽出し、選択関数に入力することでインデックス(整数値)を一意に決定し、このインデックスに対応するブロックのハッシュ値を取得する。
Further, the
生成部13は、各ノード10自身が直前に生成したブロックのハッシュ値に加えて、選択部12により選択された1以上のブロックのハッシュ値を含めて、新たなブロックを生成する。
The
図2は、本実施形態に係るブロックチェーンに収納されるブロックの構成を示す図である。
ブロックチェーンの各ブロックに記録される複数のトランザクションデータは、例えばマークルハッシュツリー等の木構造により管理され、この木構造のルートハッシュがブロックに収納される。
FIG. 2 is a diagram showing a configuration of blocks housed in the block chain according to the present embodiment.
A plurality of transaction data recorded in each block of the blockchain is managed by a tree structure such as a Merkle hash tree, and the root hash of this tree structure is stored in the block.
また、ブロックには、直前のブロックのハッシュ値と、他のノード10で生成された1以上のブロックのハッシュ値が収納され、これらを合わせて作成者の電子署名が付与される。
なお、通常のコンセンサスの処理で用いられるNonceは省略可能であり、これにより処理負荷が低減される。
In addition, the hash value of the immediately preceding block and the hash value of one or more blocks generated by the
The Nonce used in the normal consensus processing can be omitted, thereby reducing the processing load.
図3は、本実施形態に係るブロックチェーン管理システム1におけるブロック間の接続の様子を例示する図である。
この例では、3つのノードA,B,Cがそれぞれ、ブロックチェーンを運用しており、ノードAは番号1,4,7の順にブロックを生成し、ノードBは番号2,5,8の順にブロックを生成し、ノードCは番号3,6,9の順にブロックを生成している。
FIG. 3 is a diagram illustrating a state of connection between blocks in the
In this example, three nodes A, B, and C each operate a blockchain, node A generates blocks in the order of
例えば、4番のブロックは、同一のブロックチェーンにおける直前の1番のブロックのハッシュ値に加えて、ノードBが運用しているブロックチェーンの2番のブロックのハッシュ値を収納する。
同様に、例えば、8番のブロックは、同一のブロックチェーンにおける直前の5番のブロックのハッシュ値に加えて、ノードAが運用しているブロックチェーンの1番のブロックのハッシュ値を収納する。
For example, the fourth block stores the hash value of the second block of the blockchain operated by the node B in addition to the hash value of the immediately preceding first block in the same blockchain.
Similarly, for example, the 8th block stores the hash value of the 1st block of the blockchain operated by the node A in addition to the hash value of the 5th block immediately before in the same blockchain.
このように、複数のブロックチェーンに収納されるブロックは、それぞれ他のブロックチェーンのブロックのハッシュ値を含むことで相互に接続される。時間が経過するにつれて、この相互接続がシステム全体で密になることで、各ブロックの信頼性が高まる。
なお、各ブロックチェーンにおいてブロックを生成するタイミングは、必ずしも同期されなくてもよく、ノード10それぞれにおいて独自の周期で生成されたブロックのハッシュ値がバッファ部11に一定期間保持される。
In this way, the blocks stored in the plurality of blockchains are connected to each other by including the hash values of the blocks of the other blockchains. Over time, this interconnection becomes denser throughout the system, increasing the reliability of each block.
The timing of generating blocks in each blockchain does not necessarily have to be synchronized, and the hash value of the blocks generated in each
本実施形態によれば、ブロックチェーン管理システム1は、複数のブロックチェーンを複数のノード10により分散して構成する。各ブロックチェーンのブロックには、直前のブロックのハッシュ値に加えて、他のノード10で生成されたいずれかのブロックのハッシュ値がランダムに選択されて格納される。
したがって、ブロックチェーン管理システム1は、複数のブロックチェーンのブロック同士を相互に参照することにより、単独のブロックチェーンでの改竄を抑制できる。各ブロックチェーンでは、時間の経過に従って、システム内の他の全てのブロックチェーンを参照することになるため、相互チェックの効果によって低コストで複数のブロックチェーンそれぞれの信頼性を向上できる。この結果、通常のNonceを用いたコンセンサスの処理が不要となり、高速かつ分散処理可能なブロックチェーンが実現される。
According to the present embodiment, the
Therefore, the
さらに、ブロックチェーンの数が増えても、単体のブロックチェーンのコストは増加しないため、並列度を上げることで、効率が向上する。
また、ブロックチェーン間で相互参照されるデータはハッシュ値のみであるため、秘密情報の漏洩を防ぐことができ、安全性は担保される。
Furthermore, even if the number of blockchains increases, the cost of a single blockchain does not increase, so increasing the degree of parallelism improves efficiency.
In addition, since the only data that is cross-referenced between blockchains is the hash value, it is possible to prevent leakage of confidential information and ensure security.
ブロックチェーン管理システム1は、バッファ部11に他のノード10で生成されたブロックのハッシュ値を一時記憶することにより、直近以外の過去のブロックをランダムに選択してハッシュ値をブロックに含めることができる。
したがって、ブロックチェーン管理システム1は、ブロックチェーンの相互接続をより複雑にし、信頼性を向上できる。さらに、複数のブロックが選択されることにより、さらに密な接続が可能となり、信頼性の向上が期待できる。
The
Therefore, the
また、ブロックチェーン管理システム1は、選択する他のノード10のブロックを、所定期間内に生成されたブロックに限定することにより、バッファ部11の容量及び処理負荷を抑制できる。
Further, the
ブロックチェーン管理システム1において、各ノード10は、他のノード10のブロックを選択する際に、自身が直前に生成したブロックのハッシュ値の少なくとも一部を入力として一意なインデックスを求める。
したがって、選択されるブロックは、直前のブロックから一意に決まるので、検証が容易になる。
In the
Therefore, the selected block is uniquely determined from the immediately preceding block, which facilitates verification.
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、前述した実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載されたものに限定されるものではない。 Although the embodiments of the present invention have been described above, the present invention is not limited to the above-described embodiments. Moreover, the effects described in the above-described embodiments are merely a list of the most preferable effects arising from the present invention, and the effects according to the present invention are not limited to those described in the embodiments.
前述の実施形態では、ブロードキャストされたハッシュ値がバッファ部11により記憶されたが、選択の対象とするブロックを例えば直近のものに限定することで、バッファ部11が省略されてもよい。この場合も、選択関数により得られるインデックスに対して、直前のブロックを選択するルールが決められる。
In the above-described embodiment, the broadcast hash value is stored in the
また、前述の実施形態では、コンセンサスの処理に用いられるNonceを不要としたが、Nonceを含むブロックからなるブロックチェーンがふくまれていてもよい。ブロックチェーン管理システム1は、複数のノード10それぞれが独自のポリシで運用するブロックチェーンを相互に接続することにより、全体の信頼性を向上できる。
Further, in the above-described embodiment, the Nonce used for the processing of the consensus is not required, but a blockchain composed of blocks including the Nonce may be included. The
ブロックチェーン管理システム1によるブロックチェーン管理方法は、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、情報処理装置(コンピュータ)にインストールされる。また、これらのプログラムは、CD−ROMのようなリムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。さらに、これらのプログラムは、ダウンロードされることなくネットワークを介したWebサービスとしてユーザのコンピュータに提供されてもよい。
The blockchain management method by the
1 ブロックチェーン管理システム
10 ノード
11 バッファ部
12 選択部
13 生成部
1
Claims (6)
各ノードは、それぞれ、
他の1以上のノードのブロックチェーンに収納されたブロックから、ランダムに1以上のブロックを選択し、当該ブロックのハッシュ値を取得する選択部と、
自身が直前に生成したブロックのハッシュ値に加えて、前記選択部により選択された前記1以上のブロックのハッシュ値を含めて、新たなブロックを生成する生成部と、を備えることで、前記複数のノードが相互参照されるブロックチェーン管理システム。 A blockchain management system in which multiple nodes form different blockchains from each other.
Each node, respectively,
A selection unit that randomly selects one or more blocks from the blocks stored in the block chain of another one or more nodes and acquires the hash value of the block.
Itself in addition to the hash value of the block generated immediately before, including a hash value of the one or more blocks selected by the selection unit, by providing a generator for generating a new block, a plurality A blockchain management system in which the nodes of are cross-referenced.
各ノードは、それぞれ、
他の1以上のノードのブロックチェーンに収納されたブロックから、ランダムに1以上のブロックを選択し、当該ブロックのハッシュ値を取得する選択ステップと、
自身が直前に生成したブロックのハッシュ値に加えて、前記選択ステップにおいて選択された前記1以上のブロックのハッシュ値を含めて、新たなブロックを生成する生成ステップと、を実行することで、前記複数のノードが相互参照されるブロックチェーン管理方法。 A blockchain management method in which multiple nodes form different blockchains from each other.
Each node, respectively,
A selection step of randomly selecting one or more blocks from the blocks stored in the blockchain of another one or more nodes and acquiring the hash value of the block, and
Itself in addition to the hash value of the block generated immediately before, including the hash value of the selected the one or more blocks in the selecting step, by executing the a generation step of generating a new block, the A blockchain management method in which multiple nodes are cross-referenced.
各ノードに、それぞれ、
他の1以上のノードのブロックチェーンに収納されたブロックから、ランダムに1以上のブロックを選択し、当該ブロックのハッシュ値を取得する選択ステップと、
自身が直前に生成したブロックのハッシュ値に加えて、前記選択ステップにおいて選択された前記1以上のブロックのハッシュ値を含めて、新たなブロックを生成する生成ステップと、を実行させることで、前記複数のノードを相互参照させるためのブロックチェーン管理プログラム。 A blockchain management program for multiple nodes to configure different blockchains from each other.
For each node ,
A selection step of randomly selecting one or more blocks from the blocks stored in the blockchain of another one or more nodes and acquiring the hash value of the block, and
Itself in addition to the hash value of the block generated immediately before, including the hash value of the selected the one or more blocks in the selecting step, by executing the a generation step of generating a new block, the A blockchain management program for cross-referencing multiple nodes.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018001097A JP6931331B2 (en) | 2018-01-09 | 2018-01-09 | Blockchain management system, blockchain management method and blockchain management program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018001097A JP6931331B2 (en) | 2018-01-09 | 2018-01-09 | Blockchain management system, blockchain management method and blockchain management program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019121947A JP2019121947A (en) | 2019-07-22 |
JP6931331B2 true JP6931331B2 (en) | 2021-09-01 |
Family
ID=67308045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018001097A Active JP6931331B2 (en) | 2018-01-09 | 2018-01-09 | Blockchain management system, blockchain management method and blockchain management program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6931331B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7242888B2 (en) * | 2019-10-21 | 2023-03-20 | 株式会社東芝 | Falsification verification method and falsification verification system |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9836908B2 (en) * | 2014-07-25 | 2017-12-05 | Blockchain Technologies Corporation | System and method for securely receiving and counting votes in an election |
US10805393B2 (en) * | 2015-12-02 | 2020-10-13 | Olea Networks, Inc. | System and method for data management structure using auditable delta records in a distributed environment |
-
2018
- 2018-01-09 JP JP2018001097A patent/JP6931331B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2019121947A (en) | 2019-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7184959B2 (en) | Method and apparatus for distributed database in network | |
US11657036B2 (en) | Methods and apparatus for a distributed database that enables deletion of events | |
US11734260B2 (en) | Methods and apparatus for a distributed database within a network | |
Reyzin et al. | Improving authenticated dynamic dictionaries, with applications to cryptocurrencies | |
CN111201754A (en) | Apparatus for providing a collection of cryptographically protected and filtered and sorted transaction data sets of links of a blockchain | |
JP2019511151A (en) | Cryptographic method and system for secure extraction of data from blockchain | |
JP2020204898A (en) | Method, system, and program for managing operation of distributed ledger system | |
US20220114276A1 (en) | Controlling a data network with respect to a use of a distributed database | |
CN115001730B (en) | Access control system and method based on role attribute in distributed scene | |
JP6931331B2 (en) | Blockchain management system, blockchain management method and blockchain management program | |
JP7073240B2 (en) | Blockchain management system, blockchain management method and blockchain management program | |
JP5948238B2 (en) | Data management method and data management apparatus | |
CN112766971A (en) | Method and apparatus for transmitting transactions and executing transactions in blockchain | |
Marsalek et al. | Compressing the Bitcoin blockchain using incremental snapshots | |
Ray et al. | Secure Information Transfer Using Blockchain Architecture | |
CN112291355A (en) | Key backup and recovery method and device for block chain wallet |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200108 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201118 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210212 |
|
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: 20210720 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210813 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6931331 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |