WO2022224991A1 - 制御方法、端末、及び、プログラム - Google Patents
制御方法、端末、及び、プログラム Download PDFInfo
- Publication number
- WO2022224991A1 WO2022224991A1 PCT/JP2022/018292 JP2022018292W WO2022224991A1 WO 2022224991 A1 WO2022224991 A1 WO 2022224991A1 JP 2022018292 W JP2022018292 W JP 2022018292W WO 2022224991 A1 WO2022224991 A1 WO 2022224991A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- value
- data
- transaction data
- control method
- node
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000005065 mining Methods 0.000 claims abstract description 83
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000007423 decrease Effects 0.000 claims description 4
- 238000004422 calculation algorithm Methods 0.000 description 30
- 238000004891 communication Methods 0.000 description 26
- 230000004048 modification Effects 0.000 description 22
- 238000012986 modification Methods 0.000 description 22
- 238000004590 computer program Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000010354 integration Effects 0.000 description 3
- 239000000470 constituent Substances 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0207—Discounts or incentives, e.g. coupons or rebates
- G06Q30/0215—Including financial accounts
Definitions
- the present disclosure relates to control methods, terminals, and programs.
- An object of the present disclosure is to provide a control method or the like that can preferentially store data in a block as the value of the data increases.
- a control method is a control method for a first node that manages a first blockchain on a first distributed ledger, and comprises a plurality of transaction data stored in a pool area on a memory, selecting one or more first transaction data to be stored in a block, and storing the one or more first transaction data based on the value of the one or more first data contained in the selected one or more first transaction data; Determines the difficulty of mining to be performed when storing in the first blockchain.
- the higher the value of the data the more preferentially the data can be stored in a block.
- FIG. 3 is a diagram illustrating an example of a configuration of a node according to an embodiment;
- FIG. It is a table showing a first example of a value information table.
- 4 is a table showing a first example of the relationship between data included in one piece of transaction data and tags associated with the data; It is a table showing a second example of the value information table.
- FIG. 11 is a table showing a second example of the relationship between data included in one piece of transaction data and tags associated with the data;
- FIG. It is a table showing a third example of the value information table.
- It is a table showing a fourth example of the value information table.
- FIG. 15 is a table showing a fifth example of the value information table;
- FIG. FIG. 21 is a table showing a sixth example of value information table;
- FIG. It is a figure which shows an example of a structure of the server which concerns on embodiment.
- FIG. 10 is a sequence diagram showing an example of an operation of storing transaction data in a transaction pool;
- FIG. 10 is a sequence diagram showing an example of a consensus algorithm of the management system according to the embodiment;
- FIG. 11 is a sequence diagram showing an example of a consensus algorithm of the management system according to Modification 1;
- 10 is a flow chart showing an example of a consensus algorithm of a management system according to modification 2;
- FIG. 20 is a sequence diagram showing an example of a consensus algorithm of the management system according to Modification 4;
- 16 is a flow chart showing an example of a consensus algorithm of a management system according to modification 5;
- the present inventors have found a control method or the like that can preferentially store data in a block as the value of the data increases.
- a control method is a control method for a first node that manages a first blockchain on a first distributed ledger, and comprises a plurality of transaction data stored in a pool area on a memory, selecting one or more first transaction data to be stored in a block, and storing the one or more first transaction data based on the value of the one or more first data contained in the selected one or more first transaction data; Determines the difficulty of mining to be performed when storing in the first blockchain.
- the difficulty level is determined according to the value of the first data, and mining is performed with the determined difficulty level. Therefore, for example, by lowering the difficulty of mining as the value of the first data is higher, the higher the value of the first data is, the easier it is for a miner to receive a mining reward. Therefore, the miner can be urged to preferentially store the first data with high value in the block, and as a result, the higher the value of the first data, the more preferentially the data can be stored in the block. can.
- value information indicating value of one or more data included in the plurality of transaction data is acquired, and the one or more first transaction data are selected from the plurality of transaction data based on the value information.
- the higher the value of the first data the more preferentially the data can be stored in the block.
- the value information may include a table in which data types predetermined for each data are associated with values, and the values of the one or more data may be determined by referring to the table. .
- the value of data of a type not included in the table may be determined as a predetermined fixed value.
- the first type of data may be associated with positive values
- the second type of data may be associated with negative values
- an integrated value obtained by integrating the respective values of the one or more first data included in the one or more first transaction data selected in the selection may be 0 or more.
- the value associated with each data type in the table may be negative.
- Second transaction data including the table is stored in a second blockchain different from the first blockchain, and the second blockchain is managed by a second node different from the first node. and determining the value of the one or more data, the table may be obtained from the second node, and the value of the one or more data may be determined by referring to the table.
- Second transaction data including the table is stored in the first blockchain, and when determining the value of the one or more data, the table is acquired from the first blockchain, and the table is Reference may be made to determine the value of the one or more data.
- the value of the table may be determined as a predetermined fixed value.
- the value of the table can be determined as a fixed value.
- the difficulty level of mining is calculated based on a standard difficulty level set as a standard and an integrated value obtained by integrating the respective values of the selected one or more first data, and is reduced as the integrated value increases. and mining of the reference difficulty may be performed on second transaction data comprising the table.
- the mining of the second transaction data can be made different from the mining of the one or more first transaction data.
- the one or more first transaction data and the second transaction data may be stored in different blocks.
- one or more first transaction data and second transaction data can be managed in different blocks.
- an integrated value obtained by integrating the respective values of the selected one or more first data may be calculated, and the mining difficulty level may be determined based on the calculated integrated value. good.
- the difficulty level of mining may be determined by calculation based on a standard difficulty level set as a standard and the integrated value so as to decrease as the integrated value increases.
- the value indicated by the value information is indicated by a numerical value
- the one or more first transaction data includes data having a value indicated by a numerical value equal to or greater than a predetermined value among the plurality of transaction data.
- transaction data with high value can be preferentially selected from multiple transaction data.
- the above first transaction data may be stored in a block, and the block may be stored in the first blockchain.
- a reward may be obtained according to the difficulty of mining.
- the one or more first transaction data includes third transaction data including data of a first value and fourth transaction data including data of a second value lower than the first value,
- the fourth transaction data may be mined with the reference difficulty level.
- mining for the third transaction data and mining for the fourth transaction data can be made different.
- the type of the data is indicated by a tag attached to the data
- the control method further acquires tags of the one or more data included in the plurality of transaction data, and in the table, A value associated with the acquired tag may be determined as the value of the one or more data.
- the difficulty of mining can be determined based on the value associated with the tag.
- a terminal is a terminal that manages the first blockchain on the first distributed ledger, and stores in blocks from a plurality of transaction data stored in a pool area on the memory a selection unit for selecting one or more first transaction data; and selecting the one or more first transaction data based on the value of the one or more first data included in the selected one or more first transaction data.
- a decision unit that decides the difficulty level of mining to be executed when storing in one block chain.
- the difficulty level is determined according to the value of the first data, and mining is performed with the determined difficulty level. Therefore, for example, the higher the value of the first data, the more preferentially the data can be stored in the block.
- a management system comprises a plurality of nodes and manages a first blockchain on a first distributed ledger of each node.
- the configuration of the management system according to the present embodiment and the like will be described below with reference to the drawings.
- FIG. 1 is a diagram showing an example of the configuration of a management system according to an embodiment.
- the management system includes, for example, nodes 100a to 10c and a server 200, as shown in FIG.
- the nodes 100a to 10c and the server 200 may all be connected to each other via a network, may be directly connected for communication, or may be partially connected via a network and other portions may be directly communicatively connected.
- the network is, for example, the Internet, a mobile phone carrier network, or the like, but may be composed of any communication line or network.
- Nodes 100a to 10c are an example of a plurality of devices forming a management system.
- the plurality of devices constituting the management system are not limited to the nodes 100a to 10c, and may include one or more terminals, or may include only a plurality of terminals.
- a management system that manages a distributed ledger that stores a blockchain may be of any form: public type, private type, or consortium type.
- nodes 100a to 100c are also referred to as nodes 100 below, the nodes 100a to 100c may also be referred to as nodes A to C in some cases.
- the node 100 will be described below.
- the node 100 is an example of one of a plurality of terminals holding distributed ledgers.
- the node 100 described here is one of the nodes 100a to 10c. Nodes other than this one node 100 among the nodes 100a to 10c are called other nodes 100.
- FIG. A plurality of other nodes 100 will be described in this embodiment. Therefore, hereinafter, simply referring to other nodes 100 means that the other nodes 100 are a plurality of other nodes 100 . Note that the number of other nodes 100 is not limited to this, and may be one.
- FIG. 2 is a diagram showing an example of the configuration of a node according to the embodiment.
- the node 100 includes a transaction pool 101, a selection unit 102, a search unit 103, a ledger unit 104, and a communication unit 105, as shown in FIG.
- the node 100 can be realized by a processor executing a predetermined program using memory. Each component will be described below.
- the transaction pool 101 is a pool area on memory and temporarily stores a plurality of transaction data.
- the transaction pool 101 temporarily stores, for example, transaction data whose validity has been verified.
- a selection unit 102 selects one or more first transaction data to be stored in a block from a plurality of transaction data stored in the transaction pool 101 .
- the selection unit 102 performs the above selection at the timing of block generation. Specifically, the selection unit 102 selects one or more pieces of first transaction data to be stored in a block based on the reward (commission) obtained by mining or the assumed mining difficulty. A reward is set for each transaction data.
- the selection unit 102 may select one or more first transaction data so as to maximize the reward. Also, the selection unit 102 may select one or more pieces of first transaction data so that the difficulty level of mining is the easiest.
- the selection unit 102 selects one or more first transaction data from the plurality of transaction data based on value information indicating the value of the one or more data included in the plurality of transaction data stored in the transaction pool 101. do.
- the value information is acquired from the server 200 . Value information will be described later.
- the selection unit 102 selects one or more first transaction data so as to maximize the reward or selects one or more first transaction data so as to make the mining difficulty the easiest, It may be preset by the user.
- FIG. 3 is a table showing a first example of the value information table.
- the value information in the first example is, as shown in FIG. 3, a table in which data types indicated by tags are associated with values.
- the type of data is predetermined for each data, such as a tag, for example.
- the search unit 103 determines a mining difficulty level based on the integrated value of the selected one or more first transaction data, and searches for a nonce according to the determined mining difficulty level.
- the search unit 103 determines whether or not a hash value smaller than a threshold corresponding to the difficulty level of mining can be obtained by sequentially applying a hash function to each of the specified nonces.
- the threshold is set to a smaller value as the mining difficulty increases.
- the searching unit 103 together with other nodes 100, executes a consensus algorithm for agreeing on the validity of one or more pieces of first transaction data.
- a known consensus algorithm is used as the consensus algorithm.
- Known consensus algorithms include PoW (Proof of Work), PoS (Proof of Stake), and PoI (Proof of Importance).
- the searching unit 103 records the one or more first transaction data in the ledger unit 104 when the legitimacy of the one or more first transaction data is confirmed.
- the search unit 103 calculates the value of the one or more first data included in the one or more selected first transaction data.
- the searching unit 103 specifies the value of each of the one or more first data by referring to the table included in the value information.
- the search unit 103 acquires the tag of the first data for each of the one or more first data, and uses the value associated with the acquired tag in the table to search for the first transaction including the first data. Calculate the value of data.
- the search unit 103 calculates the sum of a plurality of values respectively corresponding to the plurality of tags as the value of the one piece of first data. good too. Further, when a plurality of tags are associated with one piece of first data, the search unit 103 calculates the sum of a plurality of values respectively corresponding to the plurality of tags as the value of the one piece of first data.
- FIG. 4 is a table showing a first example of the relationship between data included in one piece of transaction data and tags associated with the data.
- the search unit 103 calculates the sum of a plurality of values respectively corresponding to a plurality of tags as the value of the one data
- the search unit 103 sets 5, which is the sum of 2 and 3, as the value of the one data. calculate.
- the searching unit 103 calculates the sum of values corresponding to a plurality of tags as the value of the one data
- the sum of 2 and 3, 6 is the sum of the values of the one data. Calculate as value.
- one piece of transaction data contains one piece of data, and if the value of one piece of data is calculated based on the sum of tags, the value of one piece of data is 5. Therefore, the search unit 103 calculates 5, which is the value of one piece of data, as the value of one piece of transaction data.
- the search unit 103 calculates an integrated value by integrating the values of each of the one or more first data. Specifically, the search unit 103 may calculate the sum of one or more values calculated corresponding to one or more first data as the integrated value. Further, the search unit 103 may calculate the sum of one or more values calculated corresponding to one or more first data as the integrated value. Since one or more pieces of first data each correspond to one or more pieces of first transaction data, the integrated value can be rephrased as the total value of the one or more pieces of first transaction data.
- each first transaction data is the sum of the values of one or more tags associated with the first data included in the first transaction data, and the integrated value is the selected one or more tags. It may be the sum of one or more values calculated for one transaction data. Also, the value of each first transaction data is the sum of the values of one or more tags associated with the first data included in the first transaction data, and the integrated value is the selected one or more It may be the sum of one or more values respectively calculated for the first transaction data.
- the search unit 103 determines the difficulty level of mining to be executed when storing the one or more first transaction data in the first blockchain, based on the calculated value of the one or more first data. That is, the search unit 103 determines the difficulty level of mining based on the integrated value. Specifically, the search unit 103 determines the difficulty level of mining so that the difficulty level of mining decreases as the integrated value increases, through calculation based on the standard difficulty level set as a standard and the integrated value. Note that since the threshold for searching for nonce in mining decreases as the difficulty increases, the search unit 103 sets the threshold A1 based on the reference difficulty and the integrated value V so that the threshold increases as the integrated value V increases. Determine the threshold A2 for searching for nonce. The searching unit 103 may determine the threshold A2 as shown in Equation 1, for example.
- search unit 103 is not limited to determining the threshold A2 using Equation 1, and may determine the threshold A2 so that the threshold increases as the integrated value increases.
- FIG. 5 is a table showing a second example of the value information table.
- FIG. 6 is a table showing a second example of the relationship between data included in one piece of transaction data and tags associated with the data.
- the value information in the second example is, as shown in FIG. 5, a table in which types of data indicated by words are associated with values.
- One piece of data shown in FIG. 6 includes "Event A occurred on 1/1/2021” and includes "2021/1/1” and "occurrence” as words.
- the word “2021/1/1” is associated with a value of 2
- the word "occurrence” is associated with a value of 3. Therefore, when the search unit 103 calculates the sum of a plurality of values respectively corresponding to a plurality of tags as the value of the one data, the search unit 103 sets 5, which is the sum of 2 and 3, as the value of the one data. calculate. Further, when the searching unit 103 calculates the sum of values corresponding to a plurality of tags as the value of the one data, the sum of 2 and 3, 6, is the sum of the values of the one data. Calculate as value.
- one piece of transaction data includes one piece of data, and if the value of one piece of data is calculated based on the sum of tags, the value of one piece of data is 5. Therefore, the search unit 103 calculates 5, which is the value of one piece of data, as the value of one piece of transaction data.
- FIG. 7 is a table showing a third example of the value information table.
- the value information in the third example is, as shown in FIG. 7, a table in which data types indicated by tags are associated with values.
- the value information of the third example differs from the value information of the first example in that it includes a relationship between a combination of multiple tags and value.
- the search unit 103 finds 8 values associated with the tag combination of “recent & event” as values of data containing tags of “recent” and “event”. may be calculated only. Further, the search unit 103 corresponds to a combination of the value 2 associated with the tag "recent”, the value 3 associated with the tag "event”, and the tag "recent & event". You may calculate the sum total of the value of 8 attached.
- FIG. 8 is a table showing a fourth example of the value information table.
- the value information of the fourth example differs from the value information of the first to third examples mainly in that the values include positive values and negative values. That is, in the value information of the fourth example, the first type of data is associated with positive value, and the second type of data is associated with negative value.
- the value information of the fourth example is, as shown in FIG. 8, a table in which types of data indicated by words are associated with values. A value of -1 is associated with the word "old".
- the selection unit 102 selects one or more first transaction data so that the integrated value is 0 or more. may Note that the integrated value may be less than 0 without being limited to the above.
- the search unit 103 increases the mining difficulty by lowering the threshold for nonce searches based on negative value values below the threshold value for nonce searches based on positive value values. good too. This makes it difficult for the second type of data associated with a negative value to be stored in the block.
- FIG. 9 is a table showing a fifth example of the value information table.
- the value information of the fifth example differs from the value information of the first to fourth examples in that it includes only negative values as values. That is, the value associated with each data type in the table may be negative.
- the value information of the fifth example is, as shown in FIG. 9, a table in which data types indicated by tags are associated with negative values. This lowers the value of the data associated with the tag, making it difficult for one or more pieces of first transaction data to be stored in a block.
- FIG. 10 is a table showing a sixth example of the value information table.
- the value information in the sixth example is an example in which the reduction in mining difficulty is associated instead of the value associated with the data type.
- the value information of the sixth example is, as shown in FIG. 10, a table in which the types of data indicated by tags are associated with the degrees of reduction in difficulty.
- the searching unit 103 may determine the threshold A2 as shown in Equation 2, for example.
- the search unit 103 may use the multiplication of the absolute value of the value or the absolute value of the multiplication.
- the ledger unit 104 records the transaction data by including one or more pieces of first transaction data whose validity has been verified by the search unit 103 in a block and storing the block in the first blockchain of the distributed ledger.
- the communication unit 105 transmits/receives one or more first transaction data to/from other nodes 100 in the consensus algorithm. Note that the communication unit 105 may exchange data other than the above transactions with other nodes 100 . Also, the communication unit 105 may exchange data with another device (terminal) other than the node 100 . For example, the communication unit 105 may transmit a request for license information to the server 200 and receive license information from the server 200 .
- the communication unit 105 communicates with other nodes 100 or servers 200 .
- this communication may be performed by TLS (Transport Layer Security), and the encryption key for TLS communication may be held in the communication unit 105 .
- TLS Transport Layer Security
- Server 200 is an example of a device that holds a data value database containing value information.
- FIG. 11 is a diagram showing an example of the configuration of a server according to the embodiment.
- the data value database is described as a data value DB.
- the server 200 comprises a data value database 201 and a communication section 202, as shown in FIG.
- Server 200 can be realized by a processor executing a predetermined program using memory. Each component will be described below.
- the data value database 201 stores the value information table described above.
- the communication unit 202 receives license information requests from each node 100 .
- the communication unit 202 transmits value information according to the request to each node 100 .
- the communication unit 202 may exchange data other than the above request and value information with each node 100 .
- the communication unit 202 may exchange data with devices (terminals) other than each node 100 .
- the communication unit 202 communicates with each node 100. Note that this communication may be performed by TLS (Transport Layer Security), and the encryption key for TLS communication may be held in the communication unit 202 .
- TLS Transport Layer Security
- FIG. 12 is a sequence diagram showing an example of the operation of storing transaction data in a transaction pool.
- Node A generates transaction data including data (S101).
- the transaction data is described as Tx data.
- node A transmits the generated transaction data to node B and node C (S102).
- each of node B and node C Upon receiving the transaction data from node A, each of node B and node C stores the received transaction data in transaction pool 101 (S103). Node A may store the generated transaction data in a transaction pool.
- node A may generate transaction data containing data and transmit it to other nodes.
- the transaction data received by another node is stored in the transaction pool 101 .
- FIG. 13 is a sequence diagram showing an example of the consensus algorithm of the management system according to the embodiment.
- Node A starts the process of acquiring the value of the data contained in the transaction data in the transaction pool (S201).
- Node A transmits a request for value information to server 200 (S202).
- the request may request value information corresponding to the type of data for which the value is specified. That is, the request need not request value information that does not correspond to the type of data for which the value is specified.
- the request may include information indicating the type of data to be identified. In the request, value information may be requested for each piece of data, or value information may be requested collectively for a plurality of data.
- the server 200 Upon receiving the request, the server 200 transmits value information according to the request to node A (S203). Server 200 transmits to node A value information corresponding to information indicating the type of data included in the request. The server 200 may transmit to node A all value information it holds. As a result, node A acquires value information according to the request.
- node A Upon receiving the value information, node A selects one or more first transaction data to be stored in a block from among multiple transaction data stored in the transaction pool 101 based on the value information (S204).
- node A calculates the value of the block, that is, the total value (integrated value) of the one or more pieces of first transaction data stored in the block (S205).
- node A determines the threshold for nonce search as the difficulty level of mining based on the calculated integrated value (S206).
- Node A determines a threshold according to the type of consensus algorithm. That is, node A determines the threshold for PoW when using PoW as the consensus algorithm, determines the threshold for PoS when using PoS, and determines the threshold for PoI when using PoI as the consensus algorithm.
- node A searches for a nonce whose hash value is equal to or less than the determined threshold (S207).
- the node 100 of the management system performs the following control method for managing the first blockchain on the first distributed ledger.
- the node 100 selects one or more first transaction data to be stored in a block from multiple transaction data stored in the pool area on the memory (S204).
- the node 100 performs mining when storing the one or more first transaction data in the first blockchain based on the value of the one or more first data included in the selected one or more first transaction data. is determined (S206).
- the difficulty level is determined according to the value of the first data, and mining is performed with the determined difficulty level. Therefore, by lowering the difficulty of mining as the value of the first data is higher, the higher the value of the first data is, the easier it is for a miner to receive a mining reward. Therefore, the miner can be urged to preferentially store the first data with high value in the block, and as a result, the higher the value of the first data, the more preferentially the data can be stored in the block. can.
- the node 100 further acquires value information indicating the value of one or more pieces of data included in the plurality of transaction data (S203).
- One or more first transaction data are selected from the plurality of transaction data based on the value information.
- the higher the value of the first data the more preferentially the data can be stored in the block.
- the value information includes a table in which data types predetermined for each data and values are associated with each other. One or more data values are determined with reference to the table.
- the first type of data is associated with positive values
- the second type of data is associated with negative values.
- An integrated value obtained by integrating the respective values of the one or more first data included in the one or more first transaction data selected in the selection is 0 or more.
- one or more first transaction data having an integrated value of 0 or more can be selected.
- the value associated with each data type in the table is negative. Therefore, unnecessary data with little value can be avoided from being included in the block.
- the node 100 In determining the difficulty level, the node 100 also calculates an integrated value by integrating the values of the selected one or more first data, and determines the difficulty level of mining based on the calculated integrated value.
- the mining difficulty is determined by calculation based on the standard difficulty set as a standard and the integrated value so that the greater the integrated value, the smaller the difficulty.
- the server 200 stores the value information, and the node 100 acquires the value information from the server 200.
- the value information is not limited to this. 2 may be stored in the blockchain.
- FIG. 14 is a sequence diagram showing an example of a consensus algorithm of the management system according to Modification 1.
- FIG. 14 is a sequence diagram showing an example of a consensus algorithm of the management system according to Modification 1.
- Node A starts the process of acquiring the value of the data contained in the transaction data in the transaction pool (S201).
- Node A transmits a request for value information to another node (S212).
- the request may request value information corresponding to the type of data for which the value is specified. That is, the request need not request value information that does not correspond to the type of data for which the value is specified.
- the request may include information indicating the type of data to be identified.
- node A When the other nodes receive the request, they transmit value information according to the request to node A (S213). Other nodes send value information to node A corresponding to information indicating the type of data included in the request. Other nodes may send to node A all value information they hold. As a result, node A acquires value information according to the request. Other nodes may be composed of multiple nodes. A plurality of nodes may store a second blockchain on a distributed ledger, and the second blockchain may have blocks containing value information.
- node A Upon receiving the value information, node A selects one or more first transaction data to be stored in a block from among multiple transaction data stored in the transaction pool 101 based on the value information (S204).
- node A calculates the value of the block, that is, the total value (integrated value) of the one or more pieces of first transaction data stored in the block (S205).
- node A determines the threshold for nonce search as the difficulty level of mining based on the calculated integrated value (S206).
- Node A determines a threshold according to the type of consensus algorithm. That is, node A determines the threshold for PoW when using PoW as the consensus algorithm, determines the threshold for PoS when using PoS, and determines the threshold for PoI when using PoI as the consensus algorithm.
- node A searches for a nonce whose hash value is equal to or less than the determined threshold (S207).
- the second transaction data including the table of value information is stored in the second blockchain different from the first blockchain.
- the second blockchain is managed by another node different from node A.
- a value information table is obtained from another node, and the value of one or more data is determined by referring to the value information table. Therefore, data and data value can be managed separately in different blockchains.
- Modification 2 In the above embodiment and modification 1, the server 200 or other node stores the value information, and the node 100 acquires the value information from the server 200 or the other node.
- the value information may be stored in the first blockchain managed by node 100 .
- FIG. 15 is a flowchart showing an example of a consensus algorithm of the management system according to Modification 2.
- Node A acquires the value of the data included in the transaction data in the transaction pool (S221). Specifically, node A acquires value information stored in the first block chain from the first block chain stored in node A.
- node A Upon receiving the value information, node A selects one or more first transaction data to be stored in a block from among multiple transaction data stored in the transaction pool 101 based on the value information (S204).
- node A calculates the value of the block, that is, the total value (integrated value) of the one or more pieces of first transaction data stored in the block (S205).
- node A determines the threshold for nonce search as the difficulty level of mining based on the calculated integrated value (S206).
- Node A determines a threshold according to the type of consensus algorithm. That is, node A determines the threshold for PoW when using PoW as the consensus algorithm, determines the threshold for PoS when using PoS, and determines the threshold for PoI when using PoI as the consensus algorithm.
- node A searches for a nonce whose hash value is equal to or less than the determined threshold (S207).
- the second transaction data including the table of value information is stored in the first blockchain.
- node A acquires the table of value information from the first block chain and refers to the table of value information to determine the value of one or more pieces of data. Therefore, data and data value can be managed on the same blockchain.
- the value of the second transaction data including the data is determined in advance. may be determined to be a fixed value.
- the second transaction data may be subjected to mining with a reference difficulty level. That is, the difficulty level of mining when storing the first transaction data in the first blockchain differs from the difficulty level of mining when storing the second transaction data in the first blockchain. Therefore, the mining of the second transaction data can be made different from the mining of the one or more first transaction data.
- the one or more first transaction data and the second transaction data may be stored in different blocks. Therefore, one or more first transaction data and second transaction data can be managed in different blocks.
- Modification 3 In Modification 2 above, the server 200 or other node stores the value information, and the node 100 acquires the value information from the server 200 or the other node. It may be stored in a third blockchain managed by the node 100 .
- the third blockchain is a different blockchain than the first blockchain.
- the second transaction data including the table of value information is stored in the third blockchain.
- node A acquires the table of value information from the third block chain and refers to the table of value information to determine the value of one or more pieces of data.
- Node A may also give and receive mining rewards in addition to the above embodiments.
- FIG. 16 is a sequence diagram showing an example of a consensus algorithm of the management system according to Modification 4.
- Node A starts the process of acquiring the value of the data contained in the transaction data in the transaction pool (S201).
- Node A transmits a request for value information to server 200 (S202).
- the request may request value information corresponding to the type of data for which the value is specified. That is, the request need not request value information that does not correspond to the type of data for which the value is specified.
- the request may include information indicating the type of data to be identified.
- the server 200 Upon receiving the request, the server 200 transmits value information according to the request to node A (S203). Server 200 transmits to node A value information corresponding to information indicating the type of data included in the request. The server 200 may transmit to node A all value information it holds. As a result, node A acquires value information according to the request.
- node A Upon receiving the value information, node A selects one or more first transaction data to be stored in a block from among multiple transaction data stored in the transaction pool 101 based on the value information (S204).
- node A calculates the value of the block, that is, the total value (integrated value) of the one or more pieces of first transaction data stored in the block (S205).
- node A determines the threshold for nonce search as the difficulty level of mining based on the calculated integrated value (S206).
- Node A determines a threshold according to the type of consensus algorithm. That is, node A determines the threshold for PoW when using PoW as the consensus algorithm, determines the threshold for PoS when using PoS, and determines the threshold for PoI when using PoI as the consensus algorithm.
- node A searches for a nonce whose hash value is equal to or less than the determined threshold (S207).
- Rewards may be coins based on the blockchain platform utilized (eg Bitcoin, Ethereum).
- the reward for mining may be the total sum of a certain amount of newly issued coins and the fee specified in one or more first transaction data included in the block.
- the fee for the first transaction data is a coin requested from the user when the user generates the first transaction data. The fee is determined depending on the data size of the first transaction data, and the amount of coins depends on the data size of the first transaction data.
- the mining reward may be determined based on the value of the first data included in the first transaction data.
- An amount of coins determined by mining based on the value of the first data may be newly issued, and the reward may be determined by adding the newly issued coins to the above-described reward.
- the sum of a fixed amount of remuneration and a commission from the management system may be determined as a remuneration.
- the fixed amount may be changed according to the value of the first data.
- Modification 5 Node A may also give and receive rewards for mining in addition to Modification 2 above.
- FIG. 17 is a flowchart showing an example of a consensus algorithm of the management system according to Modification 5.
- Node A acquires the value of the data included in the transaction data in the transaction pool (S221). Specifically, node A acquires value information stored in the first block chain from the first block chain stored in node A.
- node A Upon receiving the value information, node A selects one or more first transaction data to be stored in a block from among multiple transaction data stored in the transaction pool 101 based on the value information (S204).
- node A calculates the value of the block, that is, the total value (integrated value) of the one or more pieces of first transaction data stored in the block (S205).
- node A determines the threshold for nonce search as the difficulty level of mining based on the calculated integrated value (S206).
- Node A determines a threshold according to the type of consensus algorithm. That is, node A determines the threshold for PoW when using PoW as the consensus algorithm, determines the threshold for PoS when using PoS, and determines the threshold for PoI when using PoI as the consensus algorithm.
- node A searches for a nonce whose hash value is equal to or less than the determined threshold (S207).
- node A obtains a mining reward (S248).
- Rewards may be coins based on the blockchain platform utilized (eg Bitcoin, Ethereum).
- the reward for mining may be the total sum of a certain amount of newly issued coins and the fee specified in one or more first transaction data included in the block.
- the fee for the first transaction data is a coin requested from the user when the user generates the first transaction data.
- the fee is determined depending on the data size of the first transaction data, and the amount of coins depends on the data size of the first transaction data.
- the mining reward may be determined based on the value of the first data included in the first transaction data.
- An amount of coins determined by mining based on the value of the first data may be newly issued, and the reward may be determined by adding the newly issued coins to the above-described reward. Since the mining difficulty level is determined based on the value of the first data, it can be said that the mining reward determined based on the value of the first data is determined according to the mining difficulty level.
- the sum of a fixed amount of remuneration and a commission from the management system may be determined as a remuneration.
- the fixed amount may be changed according to the value of the first data.
- Modification 6 Although not specifically mentioned in the above embodiment and Modifications 1 to 5, when selecting one or more first transaction data from a plurality of transaction data in the transaction pool, the selection unit 102 selects , one or more transaction data including data having a value indicated by a numerical value equal to or greater than a predetermined value may be selected as the one or more first transaction data. Therefore, transaction data with high value can be preferentially selected from a plurality of transaction data.
- the selection unit 102 calculates the value of one transaction data, and determines transaction data to be selected as one or more first transaction data depending on whether the value of the transaction data is equal to or greater than a predetermined value. good too.
- the search unit 103 may calculate the value of the data whose value is not associated with the value information as a fixed value. That is, the value of types of data not included in the table may be determined to be a predetermined fixed value. For example, if the data does not correspond to the type of data associated with the value in the value information, the searching unit 103 calculates the value of the data as a fixed value.
- Data that does not correspond to the type of data associated with the value in the value information means data that does not have a tag associated with the value in the value information, or data that does not have a tag associated with the value in the value information. is data that does not have a word associated with a value. Therefore, it is possible to uniquely determine the value of types of data that are not included in the table.
- the node 100 may perform mining with a difficulty level determined based on the standard difficulty level and the integrated value for the third transaction data, and perform mining with the standard difficulty level for the fourth transaction data. Therefore, mining for the third transaction data and mining for the fourth transaction data can be made different.
- the second value data may be value information.
- Each device in the above embodiment is specifically a computer system composed of a microprocessor, ROM, RAM, hard disk unit, display unit, keyboard, mouse, and the like.
- a computer program is recorded in the RAM or hard disk unit.
- Each device achieves its function by the microprocessor operating according to the computer program.
- the computer program is constructed by combining a plurality of instruction codes indicating instructions to the computer in order to achieve a predetermined function.
- a system LSI is an ultra-multifunctional LSI manufactured by integrating multiple components on a single chip. Specifically, it is a computer system that includes a microprocessor, ROM, RAM, etc. . A computer program is recorded in the RAM. The system LSI achieves its functions by the microprocessor operating according to the computer program.
- each part of the constituent elements constituting each of the devices described above may be individually integrated into one chip, or may be integrated into one chip so as to include part or all of them.
- system LSI may also be called IC, LSI, super LSI, or ultra LSI depending on the degree of integration.
- the method of circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor.
- An FPGA Field Programmable Gate Array
- a reconfigurable processor that can reconfigure the connections and settings of the circuit cells inside the LSI may be used.
- the IC card or module is a computer system composed of a microprocessor, ROM, RAM and the like.
- the IC card or the module may include the super multifunctional LSI.
- the IC card or the module achieves its function by the microprocessor operating according to the computer program. This IC card or this module may be tamper resistant.
- the present disclosure may be the method shown above. Moreover, it may be a computer program for realizing these methods by a computer, or it may be a digital signal composed of the computer program.
- the present disclosure includes a computer-readable recording medium for the computer program or the digital signal, such as a flexible disk, hard disk, CD-ROM, MO, DVD, DVD-ROM, DVD-RAM, BD (Blu-ray (Registered Trademark) Disc), semiconductor memory, or the like. Moreover, it may be the digital signal recorded on these recording media.
- a computer-readable recording medium for the computer program or the digital signal such as a flexible disk, hard disk, CD-ROM, MO, DVD, DVD-ROM, DVD-RAM, BD (Blu-ray (Registered Trademark) Disc), semiconductor memory, or the like.
- BD Blu-ray (Registered Trademark) Disc
- semiconductor memory or the like.
- it may be the digital signal recorded on these recording media.
- the computer program or the digital signal may be transmitted via an electric communication line, a wireless or wired communication line, a network represented by the Internet, data broadcasting, or the like.
- the present disclosure may also be a computer system comprising a microprocessor and memory, the memory storing the computer program, and the microprocessor operating according to the computer program.
- the present disclosure can be used for control methods, servers, and programs, and can be used for control methods, terminals, programs, and the like that can preferentially store data in blocks as the value of the data increases. .
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- Theoretical Computer Science (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Marketing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
制御方法は、第1分散台帳上で第1ブロックチェーンを管理する第1ノードの制御方法であって、メモリ上のプール領域に格納されている複数のトランザクションデータから、ブロックに格納する1以上の第1トランザクションデータを選択し(S204)、選択した1以上の第1トランザクションデータに含まれる1以上の第1データの価値に基づいて、1以上の第1トランザクションデータを第1ブロックチェーンに格納する際に実行するマイニングの難易度を決定する(S206)。
Description
本開示は、制御方法、端末、及び、プログラムに関する。
従来、複数のマイニング装置に正しいナンスの探索を要求する探索要求を送信し、マイニング装置から正しいナンスが得られたとき、その正しいナンスとデータとを含むブロックをブロックチェーンのネットワークに送信する技術が知られている。
本開示は、データの価値が高いほど当該データを優先的にブロックに格納することができる制御方法などを提供することを目的とする。
本開示の一態様に係る制御方法は、第1分散台帳上で第1ブロックチェーンを管理する第1ノードの制御方法であって、メモリ上のプール領域に格納されている複数のトランザクションデータから、ブロックに格納する1以上の第1トランザクションデータを選択し、選択した前記1以上の第1トランザクションデータに含まれる1以上の第1データの価値に基づいて、前記1以上の第1トランザクションデータを前記第1ブロックチェーンに格納する際に実行するマイニングの難易度を決定する。
なお、これらの包括的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータで読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
本開示によれば、データの価値が高いほど当該データを優先的にブロックに格納することができる。
(本開示の基礎となった知見)
特許文献1に記載されているような従来技術では、トランザクションデータを含むブロックをブロックチェーンに格納する際のマイニングにおいて、探索閾値よりも小さい値のハッシュ値が得られるナンスを探索し、探索により得られた正しいナンスとデータとを含むブロックをブロックチェーンに格納する。このマイニングでは、トランザクションデータがブロックに格納される優先順位は、トランザクションデータを受信した順、及び、当該トランザクションデータのマイニングに支払われる手数料に応じて決定されている。しかしながら、有用なデータは、広く公開され、かつ、改竄できないように保存することで、様々なユーザに広く利用されることが求められている。つまり、有用なデータは、優先してブロックチェーンに格納されること求められている。
特許文献1に記載されているような従来技術では、トランザクションデータを含むブロックをブロックチェーンに格納する際のマイニングにおいて、探索閾値よりも小さい値のハッシュ値が得られるナンスを探索し、探索により得られた正しいナンスとデータとを含むブロックをブロックチェーンに格納する。このマイニングでは、トランザクションデータがブロックに格納される優先順位は、トランザクションデータを受信した順、及び、当該トランザクションデータのマイニングに支払われる手数料に応じて決定されている。しかしながら、有用なデータは、広く公開され、かつ、改竄できないように保存することで、様々なユーザに広く利用されることが求められている。つまり、有用なデータは、優先してブロックチェーンに格納されること求められている。
そこで、本発明者らは、データの価値が高いほど当該データを優先的にブロックに格納することができる制御方法などを見出すに至った。
本開示の一態様に係る制御方法は、第1分散台帳上で第1ブロックチェーンを管理する第1ノードの制御方法であって、メモリ上のプール領域に格納されている複数のトランザクションデータから、ブロックに格納する1以上の第1トランザクションデータを選択し、選択した前記1以上の第1トランザクションデータに含まれる1以上の第1データの価値に基づいて、前記1以上の第1トランザクションデータを前記第1ブロックチェーンに格納する際に実行するマイニングの難易度を決定する。
このため、第1データの価値に応じた難易度が決定され、決定された難易度でマイニングが行われる。よって、例えば、第1データの価値が高いほどマイニングの難易度を低下させることで、価値が高い第1データほどマイナーがマイニング報酬を受け取りやすくなる。このため、マイナーに、価値が高い第1データを優先的にブロックに格納させるように促すことができ、この結果、第1データの価値が高いほど当該データを優先的にブロックに格納することができる。
また、さらに、前記複数のトランザクションデータに含まれる1以上のデータの価値を示す価値情報を取得し、前記1以上の第1トランザクションデータは、前記価値情報に基づいて前記複数のトランザクションデータから選択されてもよい。
このため、例えば、第1データの価値が高いほど当該データを優先的にブロックに格納することができる。
また、前記価値情報は、データ毎に予め定められたデータの種類と、価値とが対応付けられたテーブルを含み、前記1以上のデータの価値は、前記テーブルを参照して決定されてもよい。
このため、例えば、データ毎に予め定められたデータの種類と、価値とが対応付けられたテーブルを参照して決定されたデータの価値が高いほど当該データを優先的にブロックに格納することができる。
また、前記テーブルに含まれていない種類のデータの価値は、予め定められた固定の価値に決定されてもよい。
このため、テーブルに含まれていない種類のデータの価値を一意に決定することができる。
また、前記テーブルでは、データの第1の種類が正の価値と対応付けられ、データの第2の種類が負の価値と対応付けられてもよい。
このため、第2の種類のデータがブロックに格納されにくくすることができる。
また、前記選択において選択される前記1以上の第1トランザクションデータに含まれる前記1以上の第1データのそれぞれの価値を統合した統合価値は、0以上であってもよい。
このため、統合価値が0以上となる1以上の第1トランザクションデータを選択することができる。
また、前記テーブルにおいてデータの種類毎に対応付けられている価値は、負であってもよい。
このため、価値が少ない不要なデータをブロックに含めないようにすることができる。
また、前記テーブルを含む第2トランザクションデータは、前記第1ブロックチェーンとは異なる第2ブロックチェーンに格納されており、前記第2ブロックチェーンは、前記第1ノードとは異なる第2ノードによって管理されており、前記1以上のデータの価値を決定する場合、前記第2ノードから前記テーブルを取得し、前記テーブルを参照して前記1以上のデータの価値を決定してもよい。
このため、データと、データ価値とを異なるブロックチェーンに分けて管理することができる。
また、前記テーブルを含む第2トランザクションデータは、前記第1ブロックチェーンに格納されており、前記1以上のデータの価値を決定する場合、前記第1ブロックチェーンから前記テーブルを取得し、前記テーブルを参照して前記1以上のデータの価値を決定してもよい。
このため、データと、データ価値とを同じブロックチェーンで管理することができる。
また、前記テーブルの価値は、予め定められた固定の価値に決定されてもよい。
このため、テーブルの価値を固定の価値に決定することができる。
また、前記マイニングの難易度は、基準として設定される基準難易度と、選択した前記1以上の第1データのそれぞれの価値を統合した統合価値とに基づく演算により、前記統合価値が大きいほど小さくなるように決定され、前記テーブルを含む第2トランザクションデータには、前記基準難易度のマイニングが実行されてもよい。
このため、第2トランザクションデータに対するマイニングと、1以上の第1トランザクションデータに対するマイニングとを異ならせることができる。
また、前記1以上の第1トランザクションデータと、前記第2トランザクションデータとは、異なるブロックに格納されてもよい。
このため、1以上の第1トランザクションデータと、第2トランザクションデータとを異なるブロックで管理することができる。
また、前記難易度の決定において、選択した前記1以上の第1データのそれぞれの価値を統合した統合価値を算出し、算出した前記統合価値に基づいて、前記マイニングの難易度を決定してもよい。
このため、例えば、1以上の第1データの統合価値が高いほど当該1以上の第1データを優先的にブロックに格納することができる。
また、前記マイニングの難易度は、基準として設定される基準難易度と前記統合価値とに基づく演算により、前記統合価値が大きいほど小さくなるように決定されてもよい。
このため、1以上の第1データの統合価値が高いほど当該1以上の第1データを優先的にブロックに格納することができる。
また、前記価値情報により示される前記価値は、数値で示され、前記1以上の第1トランザクションデータは、前記複数のトランザクションデータのうち、所定値以上の数値で示される価値を有するデータを含むトランザクションであってもよい。
このため、価値が高いトランザクションデータを、複数のトランザクションデータの中から優先して選択することができる。
また、さらに、算出されるハッシュ値が、決定した前記マイニングの難易度で示される閾値以下となるナンスを探索し、前記ハッシュ値が前記閾値以下である前記ナンスの探索に成功した場合、前記1以上の第1トランザクションデータをブロックに格納し、前記ブロックを前記第1ブロックチェーンに格納してもよい。
また、さらに、前記マイニングの難易度に応じた報酬を取得してもよい。
また、前記1以上の第1トランザクションデータは、第1価値のデータを含む第3トランザクションデータと、前記第1価値よりも低い価値の第2価値のデータを含む第4トランザクションデータと、を含み、前記第4トランザクションデータには、前記基準難易度のマイニングが実行されてもよい。
このため、第3トランザクションデータに対するマイニングと、第4トランザクションデータに対するマイニングとを異ならせることができる。
また、前記データの種類は、データに付加されているタグによって示され、前記制御方法は、さらに、前記複数のトランザクションデータに含まれる、前記1以上のデータのタグを取得し、前記テーブルにおいて、取得した前記タグに対応付けられている価値を、前記1以上のデータの価値として決定してもよい。
このため、タグに対応付けられている価値に基づいて、マイニングの難易度を決定することができる。
また、本開示の一態様に係る端末は、第1分散台帳上で第1ブロックチェーンを管理する端末であって、メモリ上のプール領域に格納されている複数のトランザクションデータから、ブロックに格納する1以上の第1トランザクションデータを選択する選択部と、選択した前記1以上の第1トランザクションデータに含まれる1以上の第1データの価値に基づいて、前記1以上の第1トランザクションデータを前記第1ブロックチェーンに格納する際に実行するマイニングの難易度を決定する決定部と、を備える。
このため、第1データの価値に応じた難易度が決定され、決定された難易度でマイニングが行われる。よって、例えば、第1データの価値が高いほど当該データを優先的にブロックに格納することができる。
なお、これらの包括的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータで読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
以下、図面を参照しながら、実施の形態について説明する。なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。つまり、以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素は、本開示の課題を達成するために必ずしも必要ではないが、より好ましい形態を構成する構成要素として説明される。
(実施の形態)
まず、本開示に係るシステム構成について説明する。
まず、本開示に係るシステム構成について説明する。
本開示に係る管理システムは、複数のノードを備え、各ノードの第1分散台帳上で第1ブロックチェーンを管理する。以下では、図面を参照しながら、本実施の形態に係る管理システムの構成等の説明を行う。
[管理システム]
図1は、実施の形態に係る管理システムの構成の一例を示す図である。
図1は、実施の形態に係る管理システムの構成の一例を示す図である。
本実施の形態に係る管理システムは、図1に示すように、例えば、ノード100a~10cと、サーバ200とを備える。ノード100a~10c及びサーバ200は、全部がネットワークで互いに接続されていてもよいし、全部が通信可能に直接接続されていてもよいし、一部がネットワークで接続されており、他の一部が通信可能に直接接続されていてもよい。ネットワークは、例えば、インターネット、携帯電話のキャリアネットワークなどであるが、どのような通信回線またはネットワークから構成されてもよい。ノード100a~10cは、管理システムを構成する複数の装置の一例である。なお、管理システムを構成する複数の装置は、ノード100a~10cのみに限らずに、1以上の端末を含んでいてもよいし、複数の端末のみを含んでいてもよい。ブロックチェーンを格納する分散台帳を管理する管理システムは、パブリック型、プライベート型及びコンソーシアム型のいずれの形態であってもよい。
なお、以下では、ノード100a~ノード100cのそれぞれをノード100とも称するが、ノード100a~ノード100cをノードA~ノードCと称する場合もある。
以下、ノード100について説明する。
[ノード100]
ノード100は、分散台帳を保有する複数の端末のうちの一の端末の一例である。
ノード100は、分散台帳を保有する複数の端末のうちの一の端末の一例である。
ここで説明するノード100は、ノード100a~10cのうちの一つのノード100である。ノード100a~10cのうち、この一つのノード100以外のノードを他のノード100と称する。他のノード100は、本実施の形態では、複数であるものとして説明する。このため、以下では、単に他のノード100と称している場合には、他のノード100は、複数の他のノード100であることを示す。なお、他のノード100は、これに限らずに、1つであってもよい。
図2は、実施の形態に係るノードの構成の一例を示す図である。
ノード100は、図2に示すように、トランザクションプール101と、選択部102と、探索部103と、台帳部104と、通信部105とを備える。ノード100は、プロセッサがメモリを用いて所定のプログラムを実行することで実現され得る。以下、各構成要素について説明する。
<トランザクションプール101>
トランザクションプール101は、メモリ上のプール領域であり、複数のトランザクションデータを一時的に格納している。トランザクションプール101には、例えば、正当性が検証されたトランザクションデータが一時的に格納される。
トランザクションプール101は、メモリ上のプール領域であり、複数のトランザクションデータを一時的に格納している。トランザクションプール101には、例えば、正当性が検証されたトランザクションデータが一時的に格納される。
<選択部102>
選択部102は、トランザクションプール101に格納されている複数のトランザクションデータから、ブロックに格納する1以上の第1トランザクションデータを選択する。選択部102は、上記の選択を、ブロックを生成するタイミングで実行する。具体的には、選択部102は、マイニングにより得られる報酬(手数料)または想定されるマイニングの難易度に基づいて、ブロックに格納する1以上の第1トランザクションデータを選択する。報酬は、トランザクションデータ毎に設定されている。選択部102は、報酬が最大となるように1以上の第1トランザクションデータを選択してもよい。また、選択部102は、マイニングの難易度が最も簡単になるように1以上の第1トランザクションデータを選択してもよい。また、選択部102は、トランザクションプール101に格納されている複数のトランザクションデータに含まれる1以上のデータの価値を示す価値情報に基づいて、複数のトランザクションデータから1以上の第1トランザクションデータを選択する。なお、価値情報は、サーバ200から取得される。価値情報については後述する。
選択部102は、トランザクションプール101に格納されている複数のトランザクションデータから、ブロックに格納する1以上の第1トランザクションデータを選択する。選択部102は、上記の選択を、ブロックを生成するタイミングで実行する。具体的には、選択部102は、マイニングにより得られる報酬(手数料)または想定されるマイニングの難易度に基づいて、ブロックに格納する1以上の第1トランザクションデータを選択する。報酬は、トランザクションデータ毎に設定されている。選択部102は、報酬が最大となるように1以上の第1トランザクションデータを選択してもよい。また、選択部102は、マイニングの難易度が最も簡単になるように1以上の第1トランザクションデータを選択してもよい。また、選択部102は、トランザクションプール101に格納されている複数のトランザクションデータに含まれる1以上のデータの価値を示す価値情報に基づいて、複数のトランザクションデータから1以上の第1トランザクションデータを選択する。なお、価値情報は、サーバ200から取得される。価値情報については後述する。
また、選択部102が、報酬が最大となるように1以上の第1トランザクションデータを選択するか、マイニングの難易度が最も簡単になるように1以上の第1トランザクションデータを選択するかは、ユーザにより事前に設定されていてもよい。
図3は、価値情報のテーブルの第1の例を示す表である。
第1の例の価値情報は、図3に示されるように、タグで示されるデータの種類と、価値とが対応付けられたテーブルである。データの種類は、例えば、タグなどのようにデータ毎に予め定められている。
<探索部103>
探索部103は、選択された1以上の第1トランザクションデータの統合価値に基づいてマイニングの難易度を決定し、決定したマイニングの難易度に応じたナンスを探索する。探索部103は、指定された複数のナンスのそれぞれについて、順次ハッシュ関数を適用することにより、マイニングの難易度に応じた閾値よりも小さい値のハッシュ値が得られるか否かを判定する。閾値は、マイニングの難易度が大きいほど小さい値に設定される。探索部103は、ハッシュ値がマイニングの難易度で定められる閾値以下となるナンスの探索に成功した場合、1以上の第1トランザクションデータを含むブロックを生成し、当該ブロックを第1ブロックチェーンに格納するための処理を実行する。
探索部103は、選択された1以上の第1トランザクションデータの統合価値に基づいてマイニングの難易度を決定し、決定したマイニングの難易度に応じたナンスを探索する。探索部103は、指定された複数のナンスのそれぞれについて、順次ハッシュ関数を適用することにより、マイニングの難易度に応じた閾値よりも小さい値のハッシュ値が得られるか否かを判定する。閾値は、マイニングの難易度が大きいほど小さい値に設定される。探索部103は、ハッシュ値がマイニングの難易度で定められる閾値以下となるナンスの探索に成功した場合、1以上の第1トランザクションデータを含むブロックを生成し、当該ブロックを第1ブロックチェーンに格納するための処理を実行する。
このようにして、探索部103は、他のノード100とともに、1以上の第1トランザクションデータの正当性について合意するためのコンセンサスアルゴリズムを実行する。コンセンサスアルゴリズムには、公知のコンセンサスアルゴリズムが用いられる。公知のコンセンサスアルゴリズムとしては、PoW(Proof of Work)、PoS(Proof of Stake)、及び、PoI(Proof of Importance)などが挙げられる。探索部103は、1以上の第1トランザクションデータの正当性を確認した場合、1以上の第1トランザクションデータを台帳部104に記録させる。
以下、探索部103による具体的な処理について説明する。
探索部103は、選択された1以上の第1トランザクションデータに含まれる1以上の第1データの価値を算出する。探索部103は、1以上の第1データのそれぞれについて、当該第1データの価値を価値情報に含まれるテーブルを参照することで特定する。探索部103は、1以上の第1データのそれぞれについて、当該第1データのタグを取得し、テーブルにおいて、取得したタグに対応付けられている価値を用いて当該第1データを含む第1トランザクションデータの価値を算出する。
なお、1つの第1データに複数のタグが対応付けられている場合、探索部103は、複数のタグにそれぞれ対応する複数の価値の総和を、当該1つの第1データの価値として算出してもよい。また、1つの第1データに複数のタグが対応付けられている場合、探索部103は、複数のタグにそれぞれ対応する複数の価値の総乗を、当該1つの第1データの価値として算出してもよい。
図4は、1つのトランザクションデータに含まれるデータと、当該データに対応付けられているタグとの関係の第1の例を示す表である。
図4に示される1つのデータには、「最近」及び「出来事」の2つのタグが対応付けられている。図3では、「最近」のタグには、2の価値が対応付けられており、「出来事」のタグには、3の価値が対応付けられている。価値情報により示される価値は、数値で示される。
よって、探索部103は、当該1つのデータの価値として、複数のタグにそれぞれ対応する複数の価値の総和を算出する場合には、2及び3の総和である5を当該1つのデータの価値として算出する。また、探索部103は、当該1つのデータの価値として、複数のタグにそれぞれ対応する複数の価値の総乗を算出する場合には、2及び3の総乗である6を当該1つのデータの価値として算出する。
図4の例では、1つのトランザクションデータには、1つのデータが含まれており、1つのデータがタグの総和で価値が算出されている場合、1つのデータの価値は5である。よって、探索部103は、1つのトランザクションデータの価値として、1つのデータの価値である5を算出する。
そして、探索部103は、1以上の第1データのそれぞれの価値を統合した統合価値を算出する。具体的には、探索部103は、1以上の第1データにそれぞれ対応して算出された1以上の価値の総和を統合価値として算出してもよい。また、探索部103は、1以上の第1データにそれぞれ対応して算出された1以上の価値の総乗を統合価値として算出してもよい。なお、1以上の第1データは、それぞれ、1以上の第1トランザクションデータに対応するため、統合価値は、1以上の第1トランザクションデータの全体の価値と言い換えることもできる。
なお、各第1トランザクションデータの価値は、当該第1トランザクションデータに含まれる第1データに対応付けられている1以上のタグの価値の総和であり、統合価値は、選択された1以上の第1トランザクションデータにそれぞれ算出された1以上の価値の総乗であってもよい。また、各第1トランザクションデータの価値は、当該第1トランザクションデータに含まれる第1データに対応付けられている1以上のタグの価値の総乗であり、統合価値は、選択された1以上の第1トランザクションデータにそれぞれ算出された1以上の価値の総和であってもよい。
次に、探索部103は、算出した1以上の第1データの価値に基づいて、1以上の第1トランザクションデータを第1ブロックチェーンに格納する際に実行するマイニングの難易度を決定する。つまり、探索部103は、統合価値に基づいて、マイニングの難易度を決定する。具体的には、探索部103は、基準として設定される基準難易度と、統合価値とに基づく演算により、統合価値が大きいほど小さくなるようにマイニングの難易度を決定する。なお、マイニングにおいてナンスを探索する閾値は、難易度が大きいほど小さいため、探索部103は、基準難易度に基づく閾値A1及び統合価値Vに基づいて、統合価値Vが大きいほど大きくなるように、ナンスを探索する閾値A2を決定する。探索部103は、例えば、式1に示すように、閾値A2を決定してもよい。
A2=A1*(100+V)/100 (式1)
なお、探索部103は、式1を用いて閾値A2を決定することに限らずに、統合価値が大きいほど閾値が大きくなるように閾値A2を決定すればよい。
次に、価値情報のテーブルの他の例について説明する。
図5は、価値情報のテーブルの第2の例を示す表である。図6は、1つのトランザクションデータに含まれるデータと、当該データに対応付けられているタグとの関係の第2の例を示す表である。
第2の例の価値情報は、図5に示されるように、単語で示されるデータの種類と、価値とが対応付けられたテーブルである。
図6に示される1つのデータは、「2021/1/1にイベントAが発生」を含み、単語としての「2021/1/1」及び「発生」を含む。図5では、「2021/1/1」の単語には、2の価値が対応付けられており、「発生」の単語には、3の価値が対応付けられている。よって、探索部103は、当該1つのデータの価値として、複数のタグにそれぞれ対応する複数の価値の総和を算出する場合には、2及び3の総和である5を当該1つのデータの価値として算出する。また、探索部103は、当該1つのデータの価値として、複数のタグにそれぞれ対応する複数の価値の総乗を算出する場合には、2及び3の総乗である6を当該1つのデータの価値として算出する。
図6の例では、1つのトランザクションデータには、1つのデータが含まれており、1つのデータがタグの総和で価値が算出されている場合、1つのデータの価値は5である。よって、探索部103は、1つのトランザクションデータの価値として、1つのデータの価値である5を算出する。
図7は、価値情報のテーブルの第3の例を示す表である。
第3の例の価値情報は、図7に示されるように、タグで示されるデータの種類と、価値とが対応付けられたテーブルである。第3の例の価値情報は、第1の例の価値情報と比較して、複数のタグの組み合わせと価値との関係を含む点が異なる。第3の例の価値情報を用いて、探索部103は、「最近」及び「出来事」のタグを含むデータの価値として、「最近&出来事」のタグの組み合わせに対応付けられている8の価値のみを算出してもよい。また、探索部103は、「最近」のタグに対応付けられている2の価値、「出来事」のタグに対応付けられている3の価値、及び、「最近&出来事」のタグの組み合わせに対応付けられている8の価値の総和を算出してもよい。
図8は、価値情報のテーブルの第4の例を示す表である。
第4の例の価値情報は、主に、価値として正の値及び負の値を含む点が第1~第3の例の価値情報と異なる。つまり、第4の例の価値情報は、データの第1の種類が正の価値と対応付けられ、データの第2の種類が負の価値と対応付けられている。第4の例の価値情報は、図8に示されるように、単語で示されるデータの種類と、価値とが対応付けられたテーブルである。「昔」の単語に、-1の価値が対応付けられている。第4の例のように、負の値の価値がデータの種類に対応付けられている場合、選択部102は、統合価値が0以上になるように、1以上の第1トランザクションデータを選択してもよい。なお、上記に限らずに、統合価値は0未満になってもよい。第4の例の場合、探索部103は、負の値の価値に基づくナンス探索の閾値を、正の値の価値に基づくナンス探索の閾値よりも下げることで、マイニングの難易度を上昇させてもよい。これにより、これにより、負の価値が対応付けられている第2の種類のデータがブロックに格納されにくくすることができる。
図9は、価値情報のテーブルの第5の例を示す表である。
第5の例の価値情報は、価値として負の値のみを含む点が第1~第4の例の価値情報と異なる。つまり、テーブルにおいてデータの種類毎に対応付けられている価値は、負であってもよい。第5の例の価値情報は、図9に示されるように、タグで示されるデータの種類と、負の価値とが対応付けられたテーブルである。これにより、タグが対応付けられているデータの価値が下がるため、1以上の第1トランザクションデータがブロックに格納されにくくすることができる。
図10は、価値情報のテーブルの第6の例を示す表である。
第6の例の価値情報は、データの種類に対応付けられている価値を対応付ける代わりにマイニングの難易度の下げ幅を対応付けた例である。第6の例の価値情報は、図10に示されるように、タグで示されるデータの種類と、難易度の下げ幅とが対応付けられたテーブルである。第6の例の場合、探索部103は、例えば、式2に示すように、閾値A2を決定してもよい。なお、第6の例の価値情報において、総乗によってデータの価値を算出する場合、探索部103は、価値の絶対値の総乗または総乗の絶対値を用いてもよい。
A2=A1*(100-V)/100 (式2)
<台帳部104>
台帳部104は、探索部103により正当性の検証がなされた1以上の第1トランザクションデータをブロックに含めて分散台帳の第1ブロックチェーンに格納することで、トランザクションデータを記録する。
台帳部104は、探索部103により正当性の検証がなされた1以上の第1トランザクションデータをブロックに含めて分散台帳の第1ブロックチェーンに格納することで、トランザクションデータを記録する。
<通信部105>
通信部105は、コンセンサスアルゴリズムにおいて、他のノード100に、1以上の第1トランザクションデータを送受信する。なお、通信部105は、他のノード100との間で、上記のトランザクション以外のデータのやり取りを行ってもよい。また、通信部105は、他のノード100以外の装置(端末)との間で、データのやり取りを行ってもよい。例えば、通信部105は、サーバ200へ価値情報の要求を送信し、サーバ200から価値情報を受信してもよい。
通信部105は、コンセンサスアルゴリズムにおいて、他のノード100に、1以上の第1トランザクションデータを送受信する。なお、通信部105は、他のノード100との間で、上記のトランザクション以外のデータのやり取りを行ってもよい。また、通信部105は、他のノード100以外の装置(端末)との間で、データのやり取りを行ってもよい。例えば、通信部105は、サーバ200へ価値情報の要求を送信し、サーバ200から価値情報を受信してもよい。
このように、通信部105は、他のノード100またはサーバ200との間で通信を行う。なお、この通信は、TLS(Transport Layer Security)によりなされてもよく、TLS通信用の暗号鍵は通信部105で保持してもよい。
[サーバ200]
サーバ200は、価値情報を含むデータ価値データベースを保有する装置の一例である。
サーバ200は、価値情報を含むデータ価値データベースを保有する装置の一例である。
図11は、実施の形態に係るサーバの構成の一例を示す図である。なお、図11では、データ価値データベースをデータ価値DBと表記する。
サーバ200は、図11に示すように、データ価値データベース201と、通信部202とを備える。サーバ200は、プロセッサがメモリを用いて所定のプログラムを実行することで実現され得る。以下、各構成要素について説明する。
<データ価値データベース201>
データ価値データベース201は、上述した価値情報のテーブルを格納している。
データ価値データベース201は、上述した価値情報のテーブルを格納している。
<通信部202>
通信部202は、各ノード100から価値情報の要求を受信する。通信部202は、要求に応じた価値情報を各ノード100へ送信する。なお、通信部202は、各ノード100との間で、上記の要求及び価値情報以外のデータのやり取りを行ってもよい。また、通信部202は、各ノード100以外の装置(端末)との間で、データのやり取りを行ってもよい。
通信部202は、各ノード100から価値情報の要求を受信する。通信部202は、要求に応じた価値情報を各ノード100へ送信する。なお、通信部202は、各ノード100との間で、上記の要求及び価値情報以外のデータのやり取りを行ってもよい。また、通信部202は、各ノード100以外の装置(端末)との間で、データのやり取りを行ってもよい。
このように、通信部202は、各ノード100との間で通信を行う。なお、この通信は、TLS(Transport Layer Security)によりなされてもよく、TLS通信用の暗号鍵は通信部202で保持してもよい。
[管理システムの動作等]
次に、以上のように構成された管理システムの動作について説明する。
次に、以上のように構成された管理システムの動作について説明する。
図12は、トランザクションデータをトランザクションプールに格納する動作の一例を示すシーケンス図である。
ノードAは、データを含むトランザクションデータを生成する(S101)。なお、図12では、トランザクションデータをTxデータと表記する。
次に、ノードAは、生成したトランザクションデータをノードB及びノードCに送信する(S102)。
ノードB及びノードCのそれぞれは、ノードAからトランザクションデータを受信すると、受信したトランザクションデータをトランザクションプール101に格納する(S103)。なお、ノードAでは、生成したトランザクションデータをトランザクションプールに格納してもよい。
なお、ノードAに限らずに、ノードBまたはノードCがデータを含むトランザクションデータを生成して、他のノードに送信してもよい。この場合、他のノードが受信したトランザクションデータをトランザクションプール101に格納する。
図13は、実施の形態に係る管理システムのコンセンサスアルゴリズムの一例を示すシーケンス図である。
ノードAは、トランザクションプール内のトランザクションデータに含まれるデータの価値を取得する処理を開始する(S201)。
ノードAは、価値情報の要求をサーバ200へ送信する(S202)。要求では、価値を特定する対象となるデータの種類に対応する価値情報を要求してもよい。つまり、要求では、価値を特定する対象となるデータの種類に対応しない価値情報を要求しなくてもよい。要求には、特定する対象となるデータの種類を示す情報が含まれていてもよい。要求では、1つのデータ毎に価値情報を要求してもよいし、複数のデータについてまとめて価値情報を要求してもよい。
サーバ200は、要求を受信すると、要求に応じた価値情報をノードAへ送信する(S203)。サーバ200は、要求に含まれるデータの種類を示す情報に対応する価値情報をノードAへ送信する。サーバ200は、保有する全ての価値情報をノードAへ送信してもよい。これにより、ノードAは、要求に応じた価値情報を取得する。
ノードAは、価値情報を受信すると、価値情報に基づいて、トランザクションプール101に格納されている複数のトランザクションデータの中から、ブロックに格納する1以上の第1トランザクションデータを選択する(S204)。
次に、ノードAは、ブロックの価値、つまり、ブロックに格納する1以上の第1トランザクションデータの全体の価値(統合価値)を算出する(S205)。
次に、ノードAは、算出した統合価値に基づいて、マイニングの難易度として、ナンス探索の閾値を決定する(S206)。ノードAは、コンセンサスアルゴリズムの種類に応じた閾値を決定する。つまり、ノードAは、コンセンサスアルゴリズムとしてPoWを用いる場合、PoW用の閾値を決定し、PoSを用いる場合、PoS用の閾値を決定し、PoIを用いる場合、PoI用の閾値を決定する。
次に、ノードAは、ハッシュ値が、決定した閾値以下となるナンスを探索する(S207)。
[効果等]
以上のように、実施の形態に係る管理システムのノード100は、下記の第1分散台帳上で第1ブロックチェーンを管理するための制御方法を行う。ノード100は、メモリ上のプール領域に格納されている複数のトランザクションデータから、ブロックに格納する1以上の第1トランザクションデータを選択する(S204)。そして、ノード100は、選択した1以上の第1トランザクションデータに含まれる1以上の第1データの価値に基づいて、1以上の第1トランザクションデータを第1ブロックチェーンに格納する際に実行するマイニングの難易度を決定する(S206)。
以上のように、実施の形態に係る管理システムのノード100は、下記の第1分散台帳上で第1ブロックチェーンを管理するための制御方法を行う。ノード100は、メモリ上のプール領域に格納されている複数のトランザクションデータから、ブロックに格納する1以上の第1トランザクションデータを選択する(S204)。そして、ノード100は、選択した1以上の第1トランザクションデータに含まれる1以上の第1データの価値に基づいて、1以上の第1トランザクションデータを第1ブロックチェーンに格納する際に実行するマイニングの難易度を決定する(S206)。
このため、第1データの価値に応じた難易度が決定され、決定された難易度でマイニングが行われる。よって、第1データの価値が高いほどマイニングの難易度を低下させることで、価値が高い第1データほどマイナーがマイニング報酬を受け取りやすくなる。このため、マイナーに、価値が高い第1データを優先的にブロックに格納させるように促すことができ、この結果、第1データの価値が高いほど当該データを優先的にブロックに格納することができる。
また、ノード100は、さらに、複数のトランザクションデータに含まれる1以上のデータの価値を示す価値情報を取得する(S203)。1以上の第1トランザクションデータは、価値情報に基づいて複数のトランザクションデータから選択される。
このため、例えば、第1データの価値が高いほど当該データを優先的にブロックに格納することができる。
また、価値情報は、データ毎に予め定められたデータの種類と、価値とが対応付けられたテーブルを含む。1以上のデータの価値は、テーブルを参照して決定される。
このため、例えば、データ毎に予め定められたデータの種類と、価値とが対応付けられたテーブルを参照して決定されたデータの価値が高いほど当該データを優先的にブロックに格納することができる。
また、テーブルでは、データの第1の種類が正の価値と対応付けられ、データの第2の種類が負の価値と対応付けられる。選択において選択される1以上の第1トランザクションデータに含まれる1以上の第1データのそれぞれの価値を統合した統合価値は、0以上である。
このため、第2の種類のデータがブロックに格納されにくくすることができる。また、統合価値が0以上となる1以上の第1トランザクションデータを選択することができる。
また、テーブルにおいてデータの種類毎に対応付けられている価値は、負である。このため、価値が少ない不要なデータをブロックに含めないようにすることができる。
また、ノード100は、難易度の決定において、選択した前記1以上の第1データのそれぞれの価値を統合した統合価値を算出し、算出した統合価値に基づいて、マイニングの難易度を決定する。
このため、例えば、1以上の第1データの統合価値が高いほど当該1以上の第1データを優先的にブロックに格納することができる。
また、マイニングの難易度は、基準として設定される基準難易度と統合価値とに基づく演算により、統合価値が大きいほど小さくなるように決定される。
このため、1以上の第1データの統合価値が高いほど当該1以上の第1データを優先的にブロックに格納することができる。
(変形例1)
上記実施の形態では、サーバ200が価値情報を格納しており、ノード100は、サーバ200から価値情報を取得するとしたが、これに限らずに、価値情報は、第1ブロックチェーンとは異なる第2ブロックチェーンに格納されていてもよい。
上記実施の形態では、サーバ200が価値情報を格納しており、ノード100は、サーバ200から価値情報を取得するとしたが、これに限らずに、価値情報は、第1ブロックチェーンとは異なる第2ブロックチェーンに格納されていてもよい。
図14は、変形例1に係る管理システムのコンセンサスアルゴリズムの一例を示すシーケンス図である。
ノードAは、トランザクションプール内のトランザクションデータに含まれるデータの価値を取得する処理を開始する(S201)。
ノードAは、価値情報の要求を他のノードへ送信する(S212)。要求では、価値を特定する対象となるデータの種類に対応する価値情報を要求してもよい。つまり、要求では、価値を特定する対象となるデータの種類に対応しない価値情報を要求しなくてもよい。要求には、特定する対象となるデータの種類を示す情報が含まれていてもよい。
他のノードは、要求を受信すると、要求に応じた価値情報をノードAへ送信する(S213)。他のノードは、要求に含まれるデータの種類を示す情報に対応する価値情報をノードAへ送信する。他のノードは、保有する全ての価値情報をノードAへ送信してもよい。これにより、ノードAは、要求に応じた価値情報を取得する。他のノードは、複数のノードで構成されていてもよい。複数のノードは、第2ブロックチェーンを分散台帳に格納しており、第2ブロックチェーンは、価値情報を含むブロックを有していてもよい。
ノードAは、価値情報を受信すると、価値情報に基づいて、トランザクションプール101に格納されている複数のトランザクションデータの中から、ブロックに格納する1以上の第1トランザクションデータを選択する(S204)。
次に、ノードAは、ブロックの価値、つまり、ブロックに格納する1以上の第1トランザクションデータの全体の価値(統合価値)を算出する(S205)。
次に、ノードAは、算出した統合価値に基づいて、マイニングの難易度として、ナンス探索の閾値を決定する(S206)。ノードAは、コンセンサスアルゴリズムの種類に応じた閾値を決定する。つまり、ノードAは、コンセンサスアルゴリズムとしてPoWを用いる場合、PoW用の閾値を決定し、PoSを用いる場合、PoS用の閾値を決定し、PoIを用いる場合、PoI用の閾値を決定する。
次に、ノードAは、ハッシュ値が、決定した閾値以下となるナンスを探索する(S207)。
このように、変形例1では、価値情報のテーブルを含む第2トランザクションデータは、第1ブロックチェーンとは異なる第2ブロックチェーンに格納されている。第2ブロックチェーンは、ノードAとは異なる他のノードによって管理されている。1以上のデータの価値を決定する場合、他のノードから価値情報のテーブルを取得し、価値情報のテーブルを参照して1以上のデータの価値を決定する。このため、データと、データ価値とを異なるブロックチェーンに分けて管理することができる。
(変形例2)
上記実施の形態及び変形例1では、サーバ200または他のノードが価値情報を格納しており、ノード100は、サーバ200または他のノードから価値情報を取得するとしたが、これに限らずに、価値情報は、ノード100で管理されている第1ブロックチェーンに格納されていてもよい。
上記実施の形態及び変形例1では、サーバ200または他のノードが価値情報を格納しており、ノード100は、サーバ200または他のノードから価値情報を取得するとしたが、これに限らずに、価値情報は、ノード100で管理されている第1ブロックチェーンに格納されていてもよい。
図15は、変形例2に係る管理システムのコンセンサスアルゴリズムの一例を示すフローチャートである。
ノードAは、トランザクションプール内のトランザクションデータに含まれるデータの価値を取得する(S221)。具体的には、ノードAは、ノードAが格納している第1ブロックチェーンから、第1ブロックチェーンに格納されている価値情報を取得する。
ノードAは、価値情報を受信すると、価値情報に基づいて、トランザクションプール101に格納されている複数のトランザクションデータの中から、ブロックに格納する1以上の第1トランザクションデータを選択する(S204)。
次に、ノードAは、ブロックの価値、つまり、ブロックに格納する1以上の第1トランザクションデータの全体の価値(統合価値)を算出する(S205)。
次に、ノードAは、算出した統合価値に基づいて、マイニングの難易度として、ナンス探索の閾値を決定する(S206)。ノードAは、コンセンサスアルゴリズムの種類に応じた閾値を決定する。つまり、ノードAは、コンセンサスアルゴリズムとしてPoWを用いる場合、PoW用の閾値を決定し、PoSを用いる場合、PoS用の閾値を決定し、PoIを用いる場合、PoI用の閾値を決定する。
次に、ノードAは、ハッシュ値が、決定した閾値以下となるナンスを探索する(S207)。
このように、変形例2では、価値情報のテーブルを含む第2トランザクションデータは、第1ブロックチェーンに格納されている。ノードAは、1以上のデータの価値を決定する場合、第1ブロックチェーンから価値情報のテーブルを取得し、価値情報のテーブルを参照して1以上のデータの価値を決定する。このため、データと、データ価値とを同じブロックチェーンで管理することができる。
なお、価値情報のテーブルを含むデータが、トランザクションプール101に格納されており、ノードAが当該データを第1ブロックチェーンに格納する場合、当該データを含む第2トランザクションデータの価値は、予め定められた固定の価値に決定されてもよい。
また、第2トランザクションデータには、基準難易度のマイニングが実行されてもよい。つまり、第1トランザクションデータを第1ブロックチェーンに格納するときのマイニングの難易度と、第2トランザクションデータを第1ブロックチェーンに格納するときのマイニングの難易度は、互いに異なる。このため、第2トランザクションデータに対するマイニングと、1以上の第1トランザクションデータに対するマイニングとを異ならせることができる。
また、1以上の第1トランザクションデータと、第2トランザクションデータとは、異なるブロックに格納されてもよい。このため、1以上の第1トランザクションデータと、第2トランザクションデータとを異なるブロックで管理することができる。
(変形例3)
上記変形例2では、サーバ200または他のノードが価値情報を格納しており、ノード100は、サーバ200または他のノードから価値情報を取得するとしたが、これに限らずに、価値情報は、ノード100で管理されている第3ブロックチェーンに格納されていてもよい。第3ブロックチェーンは、第1ブロックチェーンとは異なるブロックチェーンである。
上記変形例2では、サーバ200または他のノードが価値情報を格納しており、ノード100は、サーバ200または他のノードから価値情報を取得するとしたが、これに限らずに、価値情報は、ノード100で管理されている第3ブロックチェーンに格納されていてもよい。第3ブロックチェーンは、第1ブロックチェーンとは異なるブロックチェーンである。
このように、変形例3では、価値情報のテーブルを含む第2トランザクションデータは、第3ブロックチェーンに格納されている。ノードAは、1以上のデータの価値を決定する場合、第3ブロックチェーンから価値情報のテーブルを取得し、価値情報のテーブルを参照して1以上のデータの価値を決定する。
(変形例4)
ノードAは、上記実施の形態にさらに、マイニングの報酬の授受を行ってもよい。
ノードAは、上記実施の形態にさらに、マイニングの報酬の授受を行ってもよい。
図16は、変形例4に係る管理システムのコンセンサスアルゴリズムの一例を示すシーケンス図である。
ノードAは、トランザクションプール内のトランザクションデータに含まれるデータの価値を取得する処理を開始する(S201)。
ノードAは、価値情報の要求をサーバ200へ送信する(S202)。要求では、価値を特定する対象となるデータの種類に対応する価値情報を要求してもよい。つまり、要求では、価値を特定する対象となるデータの種類に対応しない価値情報を要求しなくてもよい。要求には、特定する対象となるデータの種類を示す情報が含まれていてもよい。
サーバ200は、要求を受信すると、要求に応じた価値情報をノードAへ送信する(S203)。サーバ200は、要求に含まれるデータの種類を示す情報に対応する価値情報をノードAへ送信する。サーバ200は、保有する全ての価値情報をノードAへ送信してもよい。これにより、ノードAは、要求に応じた価値情報を取得する。
ノードAは、価値情報を受信すると、価値情報に基づいて、トランザクションプール101に格納されている複数のトランザクションデータの中から、ブロックに格納する1以上の第1トランザクションデータを選択する(S204)。
次に、ノードAは、ブロックの価値、つまり、ブロックに格納する1以上の第1トランザクションデータの全体の価値(統合価値)を算出する(S205)。
次に、ノードAは、算出した統合価値に基づいて、マイニングの難易度として、ナンス探索の閾値を決定する(S206)。ノードAは、コンセンサスアルゴリズムの種類に応じた閾値を決定する。つまり、ノードAは、コンセンサスアルゴリズムとしてPoWを用いる場合、PoW用の閾値を決定し、PoSを用いる場合、PoS用の閾値を決定し、PoIを用いる場合、PoI用の閾値を決定する。
次に、ノードAは、ハッシュ値が、決定した閾値以下となるナンスを探索する(S207)。
次に、ノードAは、他のノードよりも早く閾値以下となるナンスの探索に成功した場合、マイニングの報酬を取得する(S238)。報酬は、利用するブロックチェーンプラットフォーム(例えば、Bitcoin、Ethereum)に基づくコインであってもよい。例えば、Bitcoinでは、マイニングの報酬として、新規に発行される一定量のコインと、ブロックに含めた1以上の第1トランザクションデータに定められている手数料の総和であってもよい。第1トランザクションデータの手数料は、ユーザが第1トランザクションデータを生成する際に、ユーザに要求されるコインである。手数料は、第1トランザクションデータのデータサイズコインの量は、第1トランザクションデータのデータサイズなどに依存して決定される。
また、マイニングの報酬は、第1トランザクションデータに含まれる第1データの価値に基づいて決定されてもよい。マイニングによって第1データの価値に基づいて決定される量のコインがさらに新規に発行され、報酬は、上記で説明した報酬にさらに新規で発行されたコインが加えられて決定されてもよい。
また、管理システムから固定額の報酬と、手数料との合計が報酬として決定されてもよい。固定額は、第1データの価値に応じて変更されてもよい。
(変形例5)
ノードAは、上記変形例2にさらに、マイニングの報酬の授受を行ってもよい。
ノードAは、上記変形例2にさらに、マイニングの報酬の授受を行ってもよい。
図17は、変形例5に係る管理システムのコンセンサスアルゴリズムの一例を示すフローチャートである。
ノードAは、トランザクションプール内のトランザクションデータに含まれるデータの価値を取得する(S221)。具体的には、ノードAは、ノードAが格納している第1ブロックチェーンから、第1ブロックチェーンに格納されている価値情報を取得する。
ノードAは、価値情報を受信すると、価値情報に基づいて、トランザクションプール101に格納されている複数のトランザクションデータの中から、ブロックに格納する1以上の第1トランザクションデータを選択する(S204)。
次に、ノードAは、ブロックの価値、つまり、ブロックに格納する1以上の第1トランザクションデータの全体の価値(統合価値)を算出する(S205)。
次に、ノードAは、算出した統合価値に基づいて、マイニングの難易度として、ナンス探索の閾値を決定する(S206)。ノードAは、コンセンサスアルゴリズムの種類に応じた閾値を決定する。つまり、ノードAは、コンセンサスアルゴリズムとしてPoWを用いる場合、PoW用の閾値を決定し、PoSを用いる場合、PoS用の閾値を決定し、PoIを用いる場合、PoI用の閾値を決定する。
次に、ノードAは、ハッシュ値が、決定した閾値以下となるナンスを探索する(S207)。
次に、ノードAは、マイニングの報酬を取得する(S248)。報酬は、利用するブロックチェーンプラットフォーム(例えば、Bitcoin、Ethereum)に基づくコインであってもよい。例えば、Bitcoinでは、マイニングの報酬として、新規に発行される一定量のコインと、ブロックに含めた1以上の第1トランザクションデータに定められている手数料の総和であってもよい。第1トランザクションデータの手数料は、ユーザが第1トランザクションデータを生成する際に、ユーザに要求されるコインである。手数料は、第1トランザクションデータのデータサイズコインの量は、第1トランザクションデータのデータサイズなどに依存して決定される。
また、マイニングの報酬は、第1トランザクションデータに含まれる第1データの価値に基づいて決定されてもよい。マイニングによって第1データの価値に基づいて決定される量のコインがさらに新規に発行され、報酬は、上記で説明した報酬にさらに新規で発行されたコインが加えられて決定されてもよい。なお、マイニングの難易度は第1データの価値に基づいて決定されるため、第1データの価値に基づいて決定されるマイニングの報酬は、マイニングの難易度に応じて決定されるとも言える。
また、管理システムから固定額の報酬と、手数料との合計が報酬として決定されてもよい。固定額は、第1データの価値に応じて変更されてもよい。
(変形例6)
上記実施の形態及び変形例1~5では、特に言及していないが、選択部102は、1以上の第1トランザクションデータをトランザクションプールの複数のトランザクションデータから選択する場合、複数のトランザクションデータのうち、所定値以上の数値で示される価値を有するデータを含む1以上のトランザクションデータを1以上の第1トランザクションデータとして選択してもよい。このため、価値が高いトランザクションデータを、複数のトランザクションデータの中から優先して選択することができる。
上記実施の形態及び変形例1~5では、特に言及していないが、選択部102は、1以上の第1トランザクションデータをトランザクションプールの複数のトランザクションデータから選択する場合、複数のトランザクションデータのうち、所定値以上の数値で示される価値を有するデータを含む1以上のトランザクションデータを1以上の第1トランザクションデータとして選択してもよい。このため、価値が高いトランザクションデータを、複数のトランザクションデータの中から優先して選択することができる。
なお、選択部102は、1つのトランザクションデータの価値を算出して、そのトランザクションデータの価値が所定値以上であるか否かで、1以上の第1トランザクションデータとして選択するトランザクションデータを決定してもよい。
(その他)
探索部103は、価値情報に価値が対応付けられていない種類のデータの価値を、固定の価値として算出してもよい。つまり、テーブルに含まれていない種類のデータの価値は、予め定められた固定の価値に決定されてもよい。例えば、探索部103は、価値情報で価値が対応付けられているデータの種類に該当しないデータである場合、当該データの価値を固定の価値として算出する。なお、価値情報で価値が対応付けられているデータの種類に該当しないデータである場合とは、価値情報で価値が対応付けられているタグを有していないデータである場合、または、価値情報で価値が対応付けられている単語を有していないデータである場合である。このため、テーブルに含まれていない種類のデータの価値を一意に決定することができる。
探索部103は、価値情報に価値が対応付けられていない種類のデータの価値を、固定の価値として算出してもよい。つまり、テーブルに含まれていない種類のデータの価値は、予め定められた固定の価値に決定されてもよい。例えば、探索部103は、価値情報で価値が対応付けられているデータの種類に該当しないデータである場合、当該データの価値を固定の価値として算出する。なお、価値情報で価値が対応付けられているデータの種類に該当しないデータである場合とは、価値情報で価値が対応付けられているタグを有していないデータである場合、または、価値情報で価値が対応付けられている単語を有していないデータである場合である。このため、テーブルに含まれていない種類のデータの価値を一意に決定することができる。
また、1以上の第1トランザクションデータは、第1価値のデータを含む第3トランザクションデータと、第1価値よりも低い価値の第2価値のデータを含む第4トランザクションデータとを含む場合、ノード100は、第3トランザクションデータには基準難易度及び統合価値に基づいて決定した難易度のマイニングを実行し、かつ、第4トランザクションデータには基準難易度のマイニングを実行してもよい。このため、第3トランザクションデータに対するマイニングと、第4トランザクションデータに対するマイニングとを異ならせることができる。例えば、第2の価値のデータは、価値情報であってもよい。
[その他の実施の形態等]
以上のように、本開示について上記の実施の形態に基づいて説明してきたが、本開示は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本開示に含まれる。
以上のように、本開示について上記の実施の形態に基づいて説明してきたが、本開示は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本開示に含まれる。
(1)上記の実施の形態における各装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAMまたはハードディスクユニットには、コンピュータプログラムが記録されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
(2)上記の実施の形態における各装置は、構成する構成要素の一部または全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記録されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムLSIは、その機能を達成する。
また、上記の各装置を構成する構成要素の各部は、個別に1チップ化されていても良いし、一部またはすべてを含むように1チップ化されてもよい。
また、ここでは、システムLSIとしたが、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
(3)上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしてもよい。前記ICカードまたは前記モジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記ICカードまたは前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ICカードまたは前記モジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。
(4)本開示は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本開示は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータで読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(Blu-ray(登録商標) Disc)、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。
また、本開示は、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
また、本開示は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記録しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を、前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
(5)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
本開示は、制御方法、サーバ、及び、プログラムに利用でき、例えばデータの価値が高いほど当該データを優先的にブロックに格納することができる制御方法、端末、及び、プログラムなどに利用可能である。
100、100a~100c ノード
101 トランザクションプール
102 選択部
103 探索部
104 台帳部
105 通信部
200 サーバ
201 データ価値データベース
202 通信部
101 トランザクションプール
102 選択部
103 探索部
104 台帳部
105 通信部
200 サーバ
201 データ価値データベース
202 通信部
Claims (21)
- 第1分散台帳上で第1ブロックチェーンを管理する第1ノードの制御方法であって、
メモリ上のプール領域に格納されている複数のトランザクションデータから、ブロックに格納する1以上の第1トランザクションデータを選択し、
選択した前記1以上の第1トランザクションデータに含まれる1以上の第1データの価値に基づいて、前記1以上の第1トランザクションデータを前記第1ブロックチェーンに格納する際に実行するマイニングの難易度を決定する
制御方法。 - さらに、
前記複数のトランザクションデータに含まれる1以上のデータの価値を示す価値情報を取得し、
前記1以上の第1トランザクションデータは、前記価値情報に基づいて前記複数のトランザクションデータから選択される
請求項1に記載の制御方法。 - 前記価値情報は、データ毎に予め定められたデータの種類と、価値とが対応付けられたテーブルを含み、
前記1以上のデータの価値は、前記テーブルを参照して決定される
請求項2に記載の制御方法。 - 前記テーブルに含まれていない種類のデータの価値は、予め定められた固定の価値に決定される
請求項3に記載の制御方法。 - 前記テーブルでは、データの第1の種類が正の価値と対応付けられ、データの第2の種類が負の価値と対応付けられる
請求項3に記載の制御方法。 - 前記選択において選択される前記1以上の第1トランザクションデータに含まれる前記1以上の第1データのそれぞれの価値を統合した統合価値は、0以上である
請求項5に記載の制御方法。 - 前記テーブルにおいてデータの種類毎に対応付けられている価値は、負である
請求項3に記載の制御方法。 - 前記テーブルを含む第2トランザクションデータは、前記第1ブロックチェーンとは異なる第2ブロックチェーンに格納されており、
前記第2ブロックチェーンは、前記第1ノードとは異なる第2ノードによって管理されており、
前記1以上のデータの価値を決定する場合、前記第2ノードから前記テーブルを取得し、前記テーブルを参照して前記1以上のデータの価値を決定する
請求項3に記載の制御方法。 - 前記テーブルを含む第2トランザクションデータは、前記第1ブロックチェーンに格納されており、
前記1以上のデータの価値を決定する場合、前記第1ブロックチェーンから前記テーブルを取得し、前記テーブルを参照して前記1以上のデータの価値を決定する
請求項3に記載の制御方法。 - 前記テーブルの価値は、予め定められた固定の価値に決定される
請求項9に記載の制御方法。 - 前記マイニングの難易度は、基準として設定される基準難易度と、選択した前記1以上の第1データのそれぞれの価値を統合した統合価値とに基づく演算により、前記統合価値が大きいほど小さくなるように決定され、
前記テーブルを含む第2トランザクションデータには、前記基準難易度のマイニングが実行される
請求項9に記載の制御方法。 - 前記1以上の第1トランザクションデータと、前記第2トランザクションデータとは、異なるブロックに格納される
請求項11に記載の制御方法。 - 前記難易度の決定において、選択した前記1以上の第1データのそれぞれの価値を統合した統合価値を算出し、算出した前記統合価値に基づいて、前記マイニングの難易度を決定する
請求項2から10のいずれか1項に記載の制御方法。 - 前記マイニングの難易度は、基準として設定される基準難易度と前記統合価値とに基づく演算により、前記統合価値が大きいほど小さくなるように決定される
請求項13に記載の制御方法。 - 前記価値情報により示される前記価値は、数値で示され、
前記1以上の第1トランザクションデータは、前記複数のトランザクションデータのうち、所定値以上の数値で示される価値を有するデータを含むトランザクションである
請求項2から10のいずれか1項に記載の制御方法。 - さらに、
算出されるハッシュ値が、決定した前記マイニングの難易度で示される閾値以下となるナンスを探索し、
前記ハッシュ値が前記閾値以下である前記ナンスの探索に成功した場合、前記1以上の第1トランザクションデータをブロックに格納し、前記ブロックを前記第1ブロックチェーンに格納する
請求項2から10のいずれか1項に記載の制御方法。 - さらに、
前記マイニングの難易度に応じた報酬を取得する
請求項2から10のいずれか1項に記載の制御方法。 - 前記1以上の第1トランザクションデータは、第1価値のデータを含む第3トランザクションデータと、前記第1価値よりも低い価値の第2価値のデータを含む第4トランザクションデータと、を含み、
前記第4トランザクションデータには、前記基準難易度のマイニングが実行される
請求項14に記載の制御方法。 - 前記データの種類は、データに付加されているタグによって示され、
前記制御方法は、さらに、
前記複数のトランザクションデータに含まれる、前記1以上のデータのタグを取得し、
前記テーブルにおいて、取得した前記タグに対応付けられている価値を、前記1以上のデータの価値として決定する
請求項3に記載の制御方法。 - 第1分散台帳上で第1ブロックチェーンを管理する端末であって、
メモリ上のプール領域に格納されている複数のトランザクションデータから、ブロックに格納する1以上の第1トランザクションデータを選択する選択部と、
選択した前記1以上の第1トランザクションデータに含まれる1以上の第1データの価値に基づいて、前記1以上の第1トランザクションデータを前記第1ブロックチェーンに格納する際に実行するマイニングの難易度を決定する決定部と、を備える
端末。 - 第1分散台帳上で第1ブロックチェーンを管理する第1ノードの制御方法をコンピュータに実行させるためのプログラムであって、
メモリ上のプール領域に格納されている複数のトランザクションデータから、ブロックに格納する1以上の第1トランザクションデータを選択し、
選択した前記1以上の第1トランザクションデータに含まれる1以上の第1データの価値に基づいて、前記1以上の第1トランザクションデータを前記第1ブロックチェーンに格納する際に実行するマイニングの難易度を決定することを、
コンピュータに実行させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023515499A JPWO2022224991A1 (ja) | 2021-04-22 | 2022-04-20 | |
CN202280028948.0A CN117178281A (zh) | 2021-04-22 | 2022-04-20 | 控制方法、终端、以及程序 |
US18/377,408 US20240265388A1 (en) | 2021-04-22 | 2023-10-06 | Control method, apparatus, and recording medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163178137P | 2021-04-22 | 2021-04-22 | |
US63/178,137 | 2021-04-22 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/377,408 Continuation US20240265388A1 (en) | 2021-04-22 | 2023-10-06 | Control method, apparatus, and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022224991A1 true WO2022224991A1 (ja) | 2022-10-27 |
Family
ID=83722380
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2022/018292 WO2022224991A1 (ja) | 2021-04-22 | 2022-04-20 | 制御方法、端末、及び、プログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240265388A1 (ja) |
JP (1) | JPWO2022224991A1 (ja) |
CN (1) | CN117178281A (ja) |
WO (1) | WO2022224991A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019175435A (ja) * | 2018-03-28 | 2019-10-10 | インヴァスト証券株式会社 | 取引支援システム、取引支援方法および取引支援プログラム |
JP2019204465A (ja) * | 2018-05-21 | 2019-11-28 | 国新 吉永 | 仮想通貨サービスシステム及びその方法 |
JP2019212241A (ja) * | 2018-06-08 | 2019-12-12 | 豊 仲宗根 | 情報処理装置、情報処理方法、プログラム及び取引システム |
-
2022
- 2022-04-20 CN CN202280028948.0A patent/CN117178281A/zh active Pending
- 2022-04-20 WO PCT/JP2022/018292 patent/WO2022224991A1/ja active Application Filing
- 2022-04-20 JP JP2023515499A patent/JPWO2022224991A1/ja active Pending
-
2023
- 2023-10-06 US US18/377,408 patent/US20240265388A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019175435A (ja) * | 2018-03-28 | 2019-10-10 | インヴァスト証券株式会社 | 取引支援システム、取引支援方法および取引支援プログラム |
JP2019204465A (ja) * | 2018-05-21 | 2019-11-28 | 国新 吉永 | 仮想通貨サービスシステム及びその方法 |
JP2019212241A (ja) * | 2018-06-08 | 2019-12-12 | 豊 仲宗根 | 情報処理装置、情報処理方法、プログラム及び取引システム |
Also Published As
Publication number | Publication date |
---|---|
US20240265388A1 (en) | 2024-08-08 |
CN117178281A (zh) | 2023-12-05 |
JPWO2022224991A1 (ja) | 2022-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11042876B2 (en) | Transaction method and system based on centralized settlement and blockchain deposit certificates | |
US20220108285A1 (en) | Methods and Systems for Object Validated Blockchain Accounts | |
US20210049608A1 (en) | Transaction method and system based on centralized clearing and blockchain record keeping | |
US11736288B2 (en) | Traceable key block-chain ledger | |
US20210049595A1 (en) | Transaction method and system based on centralized settlement and block chain storage | |
US20230109969A1 (en) | Data processing method and apparatus based on node internal memory, device and medium | |
WO2018228973A1 (en) | Improved hardware security module management | |
US20210326328A1 (en) | Integrity verification method, apparatus, and system and device for data in a blockchain-type ledger | |
US11676135B2 (en) | Blockchain consensus protocol using predictive proof of metrics | |
WO2019097322A1 (en) | Optimization of high volume transaction performance on a blockchain | |
EP3817333B1 (en) | Method and system for processing requests in a consortium blockchain | |
US10791122B2 (en) | Blockchain user account data | |
Alizadeh et al. | Efficient decentralized data storage based on public blockchain and IPFS | |
EP3779816A1 (en) | Method and device for recognizing validity of evidence based on blockchain evidence deposition | |
US10790968B2 (en) | Ledger verification method and apparatus, and device | |
US10771241B2 (en) | Time authentication method, apparatus and device in blockchain-type ledger | |
WO2022224991A1 (ja) | 制御方法、端末、及び、プログラム | |
CN111899104B (zh) | 一种业务执行方法及装置 | |
CN112906171B (zh) | 一种综合能源系统可信协同优化方法及仿真平台 | |
CN110889040B (zh) | 用于推送信息的方法和装置 | |
CN114185896B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN116846531A (zh) | 信息处理方法、装置、电子设备及存储介质 | |
CN115120985A (zh) | 基于区块链的信誉积分处理方法及相关装置 | |
EP3702931A1 (en) | Compound transaction processing in a distributed sequential transactional database | |
CN117130563A (zh) | 一种固态硬盘容量分享方法、装置、电子设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22791762 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2023515499 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22791762 Country of ref document: EP Kind code of ref document: A1 |