WO2019167116A1 - ブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置及びブロックチェーン管理方法 - Google Patents

ブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置及びブロックチェーン管理方法 Download PDF

Info

Publication number
WO2019167116A1
WO2019167116A1 PCT/JP2018/007207 JP2018007207W WO2019167116A1 WO 2019167116 A1 WO2019167116 A1 WO 2019167116A1 JP 2018007207 W JP2018007207 W JP 2018007207W WO 2019167116 A1 WO2019167116 A1 WO 2019167116A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
information
ledger
management device
block chain
Prior art date
Application number
PCT/JP2018/007207
Other languages
English (en)
French (fr)
Inventor
諒 古川
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to PCT/JP2018/007207 priority Critical patent/WO2019167116A1/ja
Priority to US16/965,042 priority patent/US20200402026A1/en
Priority to JP2020503122A priority patent/JP6969664B2/ja
Publication of WO2019167116A1 publication Critical patent/WO2019167116A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • G06Q20/0655Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed centrally
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3674Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q2220/00Business processing using cryptography
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Definitions

  • the present invention relates to a block chain management system, a block chain management device, an information providing device, a block chain management method, and a program.
  • Non-Patent Document 1 a peer-to-peer (P2P) network represented by Bitcoin (see Non-Patent Document 1) that can be used by anyone without a central management server is common among all nodes participating in the network.
  • P2P peer-to-peer
  • the spread of blockchain that can manage the ledgers is expanding.
  • a block chain represented by bitcoin is a system in which a plurality of block chain management nodes (block chain management devices) are interconnected.
  • the block chain management node includes a ledger storage unit, a transaction verification unit, and an agreement formation unit.
  • the ledger storage means stores transactions issued from transaction issuers that issue history information (hereinafter referred to as “transactions”) stored on the block chain.
  • the transaction verification unit verifies the transaction.
  • the consensus building means performs processing for making the contents of transactions accumulated between blockchain management nodes the same (referred to as “consensus building”, also referred to as “mining”).
  • Transactions stored in the ledger storage means have a feature that a unit in which one or a plurality of transactions are aggregated as a data structure is a block, and the block includes a block header including at least the hash value of the previous block.
  • a set of blocks accumulated in this way is called a ledger.
  • Each blockchain management node receives one or more transaction information issued from one or more transaction issuers.
  • the transaction verification unit verifies one or a plurality of received transaction information, and aggregates at least one transaction that has passed the verification to create a block.
  • the contents of the block can be different at each blockchain management node.
  • the consensus building means makes the contents of the blocks accumulated between the block chain management nodes the same.
  • the block that is the same in each block chain management node by the consensus forming means is stored in the ledger storage means.
  • the blockchain management node is designed to have an incentive to receive transactions and generate and store blocks correctly.
  • a block chain management node can obtain a virtual currency by generating a block. For this reason, many blockchain management nodes behave so as to correctly verify and generate blocks.
  • Patent Document 1 discloses a virtual currency management program and a virtual currency management method capable of reducing the processing capacity and storage capacity of a terminal necessary for the above-described agreement formation (mining).
  • the virtual currency system represented by the above bitcoin is designed to have an incentive to correctly generate and accumulate blocks. For this reason, all the blockchain management nodes hold and accumulate information for correctly generating blocks, and there is a problem that the storage cost in the entire network increases.
  • Bitcoin has implemented a mode that can reduce the capacity of the ledger by discarding unnecessary transactions.
  • the motivation for holding the ledger data in the entire network is lowered, the possibility that important data contained in the ledger will be lost increases.
  • the present invention relates to a block chain management system, a block chain management device, an information providing device, a block chain management method, and a program capable of contributing to reduction of storage cost in the entire network while suppressing the possibility of loss of block chain ledger data
  • the purpose is to provide.
  • a block chain management system including an information providing device, a first block chain management device, and a second block chain management device.
  • the information providing device provides a predetermined payment address and a summary value generated from the ledger information and the payment address to the block chain management device.
  • the first block chain management device generates a block including a first transaction using information provided from the information providing device.
  • the second block chain management device includes, in the block received from the first block chain management device, a summary value generated from at least the ledger information and the payment address, and the ledger addressed to the payment address.
  • a block verification unit for verifying a block on the condition that a second transaction for paying for the provision of information is included, and when the verification of the block is successful, an agreement is formed with another block chain management device
  • a consensus forming unit for adding the consensus formed block to the ledger.
  • the information provided from the information providing apparatus is received from a predetermined information providing apparatus, a predetermined payment address, and a summary value generated from the ledger information and the payment address.
  • a block including: a first transaction; a summary value generated from the ledger information and a payment address; and a second transaction that pays a fee for providing the ledger information to the payment address.
  • a first blockchain management device for generating is provided.
  • the block received from the first block chain management device includes at least a summary value generated from the ledger information and a predetermined payment address, and the ledger addressed to the predetermined payment address.
  • a block verification unit for verifying a block on the condition that a second transaction for paying for the provision of information is included, and when the verification of the block is successful, an agreement is formed with another block chain management device And a consensus forming unit that adds the consensus-formed block to the ledger.
  • a second block chain management device is provided.
  • a ledger storage unit that manages a ledger that constitutes a block chain, and an address information storage unit that holds a payee address that is a payment destination for the provision of data held in the ledger storage unit;
  • An information providing device includes an information providing unit that provides the blockchain management device with the predetermined payment address, a summary value generated from the ledger information and the payment address.
  • the block chain management device includes at least a summary value generated from the ledger information and a predetermined payment address in the block received from another block chain management device, and the predetermined payment address. Verifying a block on the condition that a second transaction for paying for the provision of information of the ledger is included, and if the verification of the block is successful, another block chain management device; Performing a consensus building and adding the consensus building block to the ledger.
  • This method is linked to a specific machine called a block chain management device that updates a ledger in cooperation with other block chain management devices.
  • the computer constituting the blockchain management device, the block received from another blockchain management device, at least a summary value generated from the ledger information and a predetermined payment address, and the predetermined A process for verifying a block on the condition that a second transaction for paying compensation for provision of information of the ledger addressed to the payment address is included, and if the verification of the block is successful, another block
  • a program for executing a consensus building with a chain management device and adding the consensus-formed block to the ledger can be recorded on a computer-readable (non-transitory) storage medium. That is, the present invention can be embodied as a computer program product.
  • connection lines between blocks such as drawings referred to in the following description include both bidirectional and unidirectional directions.
  • the unidirectional arrow schematically shows the main signal (data) flow and does not exclude bidirectionality.
  • a block chain management system including an information providing apparatus 200A, a first block chain management apparatus 100A, and a second block chain management apparatus 100B is provided.
  • the information providing apparatus 200A provides a predetermined payment address, a summary value generated from the ledger information and the payment address to the first blockchain management apparatus 100A.
  • the block chain management apparatus 100A generates a block including the first transaction using the information provided from the information providing apparatus 200A.
  • the block chain management apparatus 100B includes a block verification unit 101, an agreement formation unit 102, and a ledger storage unit 103.
  • the block verification unit 101 performs verification to confirm whether or not the block received from the block chain management apparatus 100A is an appropriate block at least from the following viewpoints.
  • (1) The summary value generated from the ledger information and the payment address is included.
  • (2) The second transaction for paying the compensation for the provision of the ledger information to the payment address is included.
  • the block verification unit 101 determines that the received block is correctly generated.
  • the consensus building unit 102 forms a consensus with another block chain management device (not shown), and the consensus block is stored in the ledger storage unit 103.
  • the block chain management apparatus 100A generates a block and the block chain management apparatus 100B verifies, but this may vary depending on which one generates the block first. That is, when the block chain management apparatus 100B generates a block first, the block chain management apparatus 100A may verify the block generated by the block chain management apparatus 100B. Of course, when other block chain management devices (not shown) generate blocks first, the block chain management devices 100A and 100B can be verification nodes.
  • the block chain management device 100A (corresponding to the first block chain management device) that does not have complete ledger data requests information from the information providing device 200A when creating a block ( Step S001).
  • the information providing apparatus 200A Upon receiving the information request, the information providing apparatus 200A provides information necessary for creating a block to the block chain management apparatus 100A as shown in FIG. 3 (step S002).
  • the block chain management apparatus 100A calculates, for example, the hash value and nonce of the previous block using the partial information of the ledger held by itself and the information provided from the information providing apparatus 200A as necessary. Do. Further, the block chain management apparatus 100A generates a block obtained by adding the reference information summary value and the second transaction for paying the price for providing the ledger information to the payment address to the information.
  • the reference information summary value a summary value (hash) generated from the ledger information selected by a predetermined rule and the payment address can be used (see the reference information summary value in FIG. 8). Further, as shown in FIG. 4, the block chain management apparatus 100A transmits the generated block to another block chain management apparatus (the block chain management apparatus 100B in FIG. 4).
  • the second block chain management device 100B (corresponding to the second block chain management device) confirms that at least the received block includes an appropriate reference information summary value and an appropriate second transaction. Perform verification processing.
  • the consensus building unit 102 When the consensus building unit 102 succeeds in verifying the block, the consensus building unit 102 forms a consensus with another block chain management device and adds the consensus formed block to the ledger stored in the ledger storage unit 103. .
  • the block including the second transaction is registered in the ledger.
  • the installer or operator of the information providing apparatus 200A can receive the price for providing information by the information providing apparatus 200A through the second transaction. For this reason, it is possible to give an incentive for holding the ledger data to the installer or operator of the information providing apparatus 200A.
  • the installer and operator of the block chain management device can concentrate their management resources on improving the mining ability of the block chain management device. As a result, nodes that do not have high mining capacity but have sufficient storage capacity, and conversely, nodes that have high mining capacity but have insufficient storage capacity, or nodes that are in the middle of these, collaborate to pay for block generation. Can be obtained.
  • FIG. 5 is a diagram showing a configuration of the first exemplary embodiment of the present invention.
  • a configuration in which one information providing device 200 and four block chain management devices (block chain management nodes) 100 are connected to each other is shown.
  • These block chain management devices 100 verify the transaction received from the transaction issuer. Then, using the information provided from the information providing apparatus 200, the block chain management apparatus 100 aggregates transactions that have passed verification and creates a block.
  • the block chain management device 100 that created the block distributes the created block to other block chain management devices 100.
  • Each block chain management device 100 verifies the validity and adds the contents of the block to the ledger.
  • the block chain management apparatus 100 can be a block creation entity, so that blocks having different contents may be created.
  • an illegal block may be generated and distributed.
  • the procedure of consensus building is performed to make the contents of the blocks accumulated between the block chain management devices 100 the same. This maintains the consistency of the ledger.
  • four block chain management devices are shown, but the number of block chain management devices only needs to be plural, and is not limited to the configuration of FIG. 5.
  • the information providing apparatus 200 may have a function as a block chain management apparatus.
  • FIG. 6 is a functional block diagram illustrating a configuration of the information providing apparatus according to the first embodiment of this invention.
  • an information providing apparatus 200 including a ledger storage unit 210, an address information storage unit 220, a reference information summary value providing unit 240, and a reference information summary value generating unit 250 is shown.
  • the ledger storage unit 210 stores a ledger that is a set of blocks agreed upon by consensus building between blockchain management devices.
  • the ledger update may be performed by the information providing apparatus 200 itself or by another block chain management apparatus.
  • the ledger storage unit 210 does not have to hold all data in the ledger.
  • the configuration may be such that the information providing apparatus 200 acquires ledger data from another apparatus (including a case where the information providing apparatus 200 is equivalent to the information providing apparatus 200).
  • the address information storage unit 220 stores a payment address for compensation for providing information stored in the ledger storage unit 210 to the other blockchain management device by the information providing device.
  • a payment address is a Bitcoin address in Bitcoin (registered trademark).
  • any other virtual currency payment address, bank account information, or the like may be used as long as it is suitable as a payment address for transactions that can be registered in the block.
  • the reference information summary value providing unit 240 selects information (hereinafter referred to as “reference information”) selected from a ledger stored in the ledger storage unit 210 and a payment address. And a summary value (hereinafter referred to as “reference information summary value”). More specifically, the reference information summary value providing unit 240 requests the reference information summary value generating unit 250 to generate a reference information summary value. When the reference information summary value is received from the reference information summary value generating unit 250, the reference information summary value providing unit 240 transmits the reference information summary value to the blockchain management device 100 that is the request source.
  • reference information information
  • the reference information summary value providing unit 240 transmits the reference information summary value to the blockchain management device 100 that is the request source.
  • the reference information summary value generation unit 250 extracts the reference information designated by the reference information summary value providing unit 240 and the payment address from the ledger storage unit 210 and the address information storage unit 220, and generates a reference information summary value. .
  • the reference information summary value is calculated by a predetermined calculation method. For example, the hash value may be used as the reference information summary value by combining the reference information and the payment address.
  • FIG. 7 is a functional block diagram illustrating the configuration of the block chain management device according to the first embodiment of this invention.
  • a block chain management apparatus 100 including a block receiving unit 110, a block verification unit 120, an agreement forming unit 130, and a ledger storage unit 140 is shown.
  • the block receiving unit 110 receives a block transmitted to the block chain network.
  • the block B is configured by adding a block header BH to one or a plurality of transactions.
  • the block header BH includes a block header summary value (Hash in FIG. 8) obtained by summarizing the block header included in the immediately preceding block and the reference information summary value described above.
  • a transaction TRX2 which is called an incentive payment transaction and is different from the normal transaction TRX1, is stored in the block B determined to be valid in the present embodiment.
  • the incentive payment transaction TRX2 corresponds to the second transaction, and includes the payment address provided from the information providing apparatus 200 together with the reference information summary value, and the payment amount.
  • the reference information may be determined by a predetermined rule shared between the blockchain management apparatuses 100, and may be a plurality of parts of the ledger. In this case, there are a plurality of reference information, and one or a plurality of reference information summary values are generated from the plurality of reference information.
  • the block verification unit 120 includes a second transaction extraction unit 121, a reference information summary value verification unit 122, and a reference information determination unit 123, and verifies that the received block is correctly generated. Specifically, the second transaction extraction unit 121 extracts the above-described incentive payment transaction (second transaction) from the received block.
  • the reference information determination unit 123 determines reference information that is partial information of the ledger based on part or all of the information of the ledger based on the predetermined rule.
  • the predetermined rule may be a rule that allows all the block chain management devices 100 to specify the reference information that is the same partial information from the information in the ledger. Further, the case where a rule that selects a ledger that does not exist (is discarded) in the ledger storage unit 140 of the blockchain management apparatus as reference information will be described in the third embodiment.
  • the reference information summary value verification unit 122 checks whether or not the block is generated in accordance with the rules specified in the block chain and verifies the block from the following viewpoint. First, the reference information summary value verification unit 122 uses the payment address information included in the incentive payment transaction (second transaction) and the reference information determined by the reference information determination unit 123 to use the reference information summary value. Calculate When the reference information summary value matches the reference information summary value included in the block, the reference information summary value verification unit 122 determines that the block is generated correctly.
  • the ledger storage unit 140 stores at least a part of a ledger that is a set of blocks agreed by the agreement forming unit 130.
  • the block receiving unit 110 receives a block from another block chain management device 100 or the like (step A1).
  • block B shown in FIG. 8 is received.
  • this block B has a body that is a set of transactions, a block header summary value (Hash) that summarizes the block header of the immediately preceding block, and a value called Nonce that is used by the consensus building unit 130. And a block header including a reference information summary value is added.
  • the body of block B includes an incentive payment transaction (second transaction).
  • the block verification unit 120 verifies the received block B (step A2).
  • the contents of the verification here will be described later using the flowchart of FIG.
  • Step A4 when it is determined that the block is not generated correctly (No in Step A3), the block chain management apparatus 100 discards the block (Step A4).
  • Step A3 when it is determined that the block has been correctly generated (Yes in Step A3), the consensus building unit 130 forms consensus with another block chain management device 100 (Step A5). This consensus building method will be described later using the flowchart of FIG.
  • FIG. 10 is a diagram illustrating an example of ledger data held in the ledger storage unit 140.
  • the example of FIG. 10 shows a state in which a block having a block height 501 is added as a result of consensus formation.
  • the storage mode of the ledger in the ledger storage unit 140 is not limited to the example shown in FIG. 10, and various changes can be made.
  • the block height and the block main body are associated with each other, but the configuration is not limited to this.
  • the information providing apparatus 200 receives a reference information summary value transmission request from the block chain management apparatus 100 that generates a block (step D1).
  • the information providing apparatus 200 extracts reference information, which is partial information of the ledger based on a part or all of the information of the ledger, from the ledger storage unit 210 based on the predetermined rule (step D2).
  • the information providing apparatus 200 extracts payment address information from the address information storage unit 220 (step D3).
  • the information providing apparatus 200 generates a reference information summary value using the reference information and payment address information (step D4).
  • the information providing apparatus 200 transmits the generated reference information summary value and payment address information to the block chain management apparatus 100 that has transmitted the reference information summary value transmission request (step D5).
  • the block chain management apparatus 100 creates the block shown in FIG. 8 using the reference information summary value and the payment address information received from the information providing apparatus 200.
  • step A2 of FIG. 9 the block verification processing by the block verification unit 120 in step A2 of FIG. 9 will be described in detail using the flowchart of FIG. In the following description, it is assumed that the block chain management apparatus 100 has received the block shown in FIG.
  • the reference information determination unit 123 of the block verification unit 120 follows at least one identifier that can identify (specify) partial information in the ledger according to the predetermined rule. Generate and specify reference information (step B1).
  • the height of a block can be used as the identifier of the reference information (see FIG. 8).
  • the predetermined rule for designating reference information for example, the following can be used.
  • a hexadecimal value is created for a part of the immediately preceding block (Nonce value, hash value of the immediately preceding block, etc.) using a hash function such as SHA-256.
  • SHA-256 hash function
  • the hash value of the immediately preceding block included in the block having a height of 500 (that is, the hash value of the block header having a height of 499) in the ledger shown in FIG. Take a hash value.
  • a value of '9a796cbfa5cc884d7f3e7ddf6c743dfeb9a78e876766d3243e893e4ded4e638d' is obtained as the hash value.
  • the lower 16 blocks of the hexadecimal number “3e893e4ded4e638d” is obtained by taking the remainder at 500, which is the current block height, and adding +1 to “294”.
  • the identifier of the reference information and its determination method are not limited to this.
  • the identifier of the reference information may be composed of a plurality of pieces of information such as a block height and a number for identifying a transaction in the block.
  • an identifier composed of a plurality of pieces of information may be acquired from a plurality of pieces of partial information of the immediately preceding block, or may be generated from each of a plurality of nearest blocks.
  • the identifier for selecting the reference information may be any information as long as it can identify the reference information from the ledger.
  • the identifier of the reference information may be such that partial information of the ledger is selected to some extent uniformly.
  • the second transaction extraction unit 121 of the block verification unit 120 extracts the incentive payment transaction TRX2 from the received block (step B2).
  • the reference information summary value verification unit 122 acquires the reference information determined by the reference information determination unit 123 from the ledger storage unit 140 (step B3).
  • the reference information summary value verification unit 122 calculates a reference information summary value using the payment address information included in the incentive payment transaction TRX2 and the reference information. If the reference information summary value matches the reference information summary value included in the block, it is determined that the block has been generated correctly (step B4).
  • the verification method is not limited to the above method, and it is only necessary to verify that the reference information summary value is generated from the reference information and the payment address information.
  • the consensus building unit 130 first confirms the hash value of the block (step C1).
  • the hash value may be taken for the entire block, or it may be taken for a value summarizing the block characteristics.
  • a description will be given assuming that the value “00000000000000000000000000000000000000002bcad85e7b40d3a4” in hexadecimal is obtained as the hash value of the block shown in FIG.
  • the consensus building unit 130 determines whether or not the hash value of the block is smaller than the target value, and determines that consensus has been formed when the hash value of the block is small (step C2).
  • the target value may be determined in advance as a value unique to the system, or may be generated by referring to a previous block. If the target value for the block shown in FIG. 8 is “000000000000000000000000000000000000000000010000000000000000”, it is determined that consensus has been formed because the hash value of the block in FIG.
  • This consensus building method is called Proof of Work.
  • a block is generated, a value called Nonce as shown in the block of FIG. 8 is changed so that the hash value of the block becomes smaller than the target value.
  • Generate a block Since the nonce cannot be calculated backward from the hash value, the block chain management apparatus 100 needs to try the nonce with a brute force. For this reason, a certain amount of calculation cost and time are required to generate a block.
  • the time required to generate a block can be controlled by a target value. For example, in Bitcoin, the time required to generate a block is adjusted to be about 10 minutes from the generation interval of the most recent blocks.
  • the consensus building unit 130 using Proof of Work can verify whether the block is generated by multiplying the calculation cost by the hash value of the block.
  • Most block chain management devices 100 participating in the block chain network verify the hash value of the block in accordance with the same rule, and only blocks that have passed the verification are stored in the ledger storage unit 140, so that the network Overall, an agreement can be
  • an agreement is formed in the block including the incentive payment transaction TRX2 which is a price for providing information to the information providing apparatus 200, and the ledger Can be registered.
  • an incentive for holding a transaction and an incentive for block generation (mining) can be separated.
  • a reward can also be given to the information providing apparatus 200 that holds a transaction.
  • a reward can also be given to the information providing apparatus 200 that holds a transaction.
  • the blockchain management apparatus 100 may have these functions.
  • the block chain management apparatus 100C may include a transaction reception unit 150 and a block generation unit 160 (second embodiment).
  • the transaction receiver 150 receives a transaction from a transaction issuer or another blockchain management apparatus 100 (see (1) in FIG. 15). Then, the block generation unit 160 generates a block by collecting the transaction including the hash value of the immediately preceding block stored in the ledger storage unit 140, the reference information summary value, and the incentive payment transaction. It is distributed to 100 ((2) in FIG. 15). Subsequent operations are the same as those in the first embodiment, and a description thereof will be omitted.
  • the block verification function can also be provided in the block chain management apparatus 100 having a function of receiving a transaction and generating a block.
  • the block chain management device 100 has been described as acquiring reference information from its own ledger storage unit 140 when performing block verification. However, as reference information is acquired from the information providing device. Also good.
  • FIG. 16 is a functional block diagram showing the configuration of the information providing apparatus according to the third embodiment of the present invention. The difference from the first information providing apparatus 200 shown in FIG. 6 is that a reference information providing unit 230 is added to the information providing apparatus 200A.
  • the reference information providing unit 230 extracts the reference information from the ledger storage unit 210 based on the reference information transmission request from the block chain management device 100D, and transmits the reference information to the block chain management device 100D.
  • a malicious blockchain management device can generate a reference information summary value by receiving provision of reference information. Therefore, the reference information providing unit 230 transmits a reference information to the block chain management apparatus 100 by providing a condition such as sufficient time from the arrival of the previous block or arrival of the next block. Is preferred.
  • the reference information providing unit 230 corresponds to a second information providing unit.
  • FIG. 17 is a diagram illustrating a configuration of a block chain management device 100D having a reference information acquisition function. The difference from the block chain management apparatus 100 shown in FIG. 7 is that a reference information acquisition unit 124 is added in the block verification unit 120.
  • the reference information acquisition unit 124 requests transmission of the reference information determined by the reference information determination unit 123 and receives the reference information from the information providing apparatus 200.
  • the reference information acquisition unit 124 sends the received reference information to the reference information summary value verification unit 122. It is assumed that the reference information request transmitted from the reference information acquisition unit 124 to the information providing apparatus 200A includes information (identifier) that identifies the height of the block and the reference information.
  • the reference information summary value verification unit 122 uses the payment address information included in the incentive payment transaction (second transaction) and the reference information acquired by the reference information acquisition unit 124 as in the first embodiment. To calculate a reference information summary value. When the reference information summary value matches the reference information summary value included in the block, it is determined that the block is generated correctly.
  • FIG. 18 is a flowchart showing the operation of the information providing apparatus 200A according to the third embodiment of the present invention.
  • the information providing apparatus 200A checks whether or not there is a block having the corresponding block height in the ledger storage unit 210. (Step E2).
  • the information providing apparatus 200A ends the process (step E6).
  • the information providing apparatus 200A checks whether or not the information (identifier) for specifying the reference information is appropriate (step E3).
  • the information providing apparatus 200A ends the process (step E6).
  • the reference information providing unit 230 of the information providing apparatus 200A extracts the corresponding reference information from the ledger storage unit 210 and transmits it to the block chain management apparatus 100. Subsequent operations are the same as those in the first embodiment, and a description thereof will be omitted.
  • the present embodiment it is possible to verify a block even when the reference information is deleted from the ledger storage unit 140 of the block chain management apparatus 100. That is, it is possible to use a rule based on the assumption that reference information is received from the information providing apparatus 200 as a reference information determination rule (predetermined rule), and to reduce storage costs.
  • a reference information determination rule predetermined rule
  • each unit (processing means) of the block chain management device and the information providing device shown in FIGS. 1, 6, 7, 14, 16, and 17 uses the hardware of the processor mounted on these devices, It can also be realized by a computer program that executes the above-described processes.
  • the second information providing unit of the information providing apparatus described above is A second information providing unit (reference information providing unit) that extracts and provides information necessary for verifying the block from the ledger storage unit in response to a request from a predetermined block chain management device. It is preferable.
  • the second information providing unit described above further includes: In response to a request from the predetermined block chain management device, it is preferable to provide information necessary for verifying the block after a predetermined time has elapsed since the arrival of the block.
  • the second information providing unit of the information providing apparatus described above is The block is verified when it is determined that the combination of the height of the block included in the request from the predetermined block chain management device and the information for specifying the information necessary for verifying the block is correct It is preferable to provide information necessary for this.
  • [Ninth Embodiment] (Refer to the blockchain management method from the fifth viewpoint above)
  • [Tenth embodiment] (Refer to the computer program according to the sixth aspect)
  • Block chain management device 101 100, 100A to 100D Block chain management device 101, 120 Block verification unit 102, 130 Agreement formation unit 103, 140, 210 Ledger storage unit 110 Block reception unit 102, 120 Block verification unit 121 Second transaction extraction unit 122 Reference information summary value Verification unit 123 Reference information determination unit 124 Reference information acquisition unit 150 Transaction reception unit 160 Block generation unit 200, 200A Information provision device 220 Address information storage unit 230 Reference information provision unit 240 Reference information summary value provision unit 250 Reference information summary value generation unit B block BH block header TRX1 transaction TRX2 Incentive payment transaction (second transaction)

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

ブロックチェーンの台帳データ消失可能性を抑えつつ、ネットワーク全体でのストレージコストを低減する。第1のブロックチェーン管理装置は、ブロック生成の際に、所定の情報提供装置から、台帳の情報と所定の支払いアドレスとから生成した要約値と、所定の支払いアドレスを受け取り、ブロックを生成する。第2のブロックチェーン管理装置は、第1のブロックチェーン管理装置から受信したブロックに、少なくとも、台帳の情報と所定の支払いアドレスとから生成した要約値と、前記所定の支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションとが含まれていることを条件にブロックを検証する。前記ブロックの検証に成功した場合に、第2のブロックチェーン管理装置は、他のブロックチェーン管理装置と合意形成を行って、前記合意形成された前記ブロックを前記台帳に追加する。

Description

ブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置及びブロックチェーン管理方法
 本発明は、ブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置、ブロックチェーン管理方法及びプログラムに関する。
 近年、ビットコイン(非特許文献1を参照)を代表として、中央管理サーバーを必要とせず誰もが参加可能なピアツーピア(Peer to Peer:P2P)ネットワークで、ネットワークに参加するすべてのノード間で共通の台帳を管理することが可能なブロックチェーンの普及が拡大している。
 ビットコインに代表されるブロックチェーンは、複数のブロックチェーン管理ノード(ブロックチェーン管理装置)が相互接続されたシステムである。ブロックチェーン管理ノードは、台帳格納手段とトランザクション検証手段と合意形成手段とを備える。台帳格納手段は、ブロックチェーン上に蓄積する履歴情報(以下、「トランザクション」と呼ぶ)を発行するトランザクション発行者から発行されたトランザクションを蓄積する。トランザクション検証手段は、トランザクションを検証する。合意形成手段は、ブロックチェーン管理ノード間で蓄積するトランザクションの内容を同一にする処理(「合意形成」という。「マイニング」とも呼ばれる。)を行う。台帳格納手段に蓄積されるトランザクションはデータ構造として一つまたは複数のトランザクションを集約した単位をブロックとし、当該ブロックの中に少なくとも前のブロックのハッシュ値を含むブロックヘッダを含むという特徴を持つ。このように蓄積されたブロックの集合を台帳と呼ぶ。
 そして、ブロックチェーンは概略以下のように動作する。各ブロックチェーン管理ノードは一人または複数のトランザクション発行者から発行された一つまたは複数のトランザクション情報を受信する。トランザクション検証手段は、受信した一つまたは複数のトランザクション情報の検証を行い、検証を通過した少なくとも一つ以上のトランザクションを集約してブロックを作成する。各ブロックチェーン管理ノードでブロックの内容は異なりうる。このため、合意形成手段が、ブロックチェーン管理ノード間で蓄積するブロックの内容を同一にする。合意形成手段により各ブロックチェーン管理ノードで同一となったブロックが台帳格納手段に格納される。
 また、ブロックチェーン管理ノードにはトランザクションを受け取り、ブロックを正しく生成・蓄積していくことにインセンティブがあるように設計される。例えば、ビットコインでは、ブロックを生成することで、ブロックチェーン管理ノードが仮想通貨を得ることができる。このため、多くのブロックチェーン管理ノードは正しくブロックの検証・生成を行うようにふるまう。
 このような構成及び動作により、ブロックチェーン管理ノードとして悪意のあるノードが参加した場合でも改ざんが困難かつ、各ブロックチェーン管理ノードで台帳の内容が同一となり、トランザクションが同一の順序で蓄積されていく。
 また、ブロックチェーンは上述した構成及び動作をするブロックチェーン管理ノードが複数存在し、すべてのデータを複製して管理することから、データが改ざんされないことに加えて、データの消失が起こらないことも期待されている。このようなブロックチェーンの性質を利用して、トランザクションの形でデータを登録してブロックチェーンをデータベースシステムとして利用するようなサービスが出現している。
 特許文献1には、上記した合意形成(マイニング)に必要な端末の処理能力及び記憶容量を低減することができるという仮想通貨管理プログラム及び仮想通貨管理方法が開示されている。
特開2016-218633号公報
 以下の分析は、本発明によって与えられたものである。上記ビットコインに代表される仮想通貨システムは、ブロックを正しく生成・蓄積していくことにインセンティブがあるように設計されている。このため、すべてのブロックチェーン管理ノードがブロックを正しく生成するための情報を保持し、蓄積していくことになり、ネットワーク全体でのストレージコストが増大してしまうという問題点がある。
 この対策として、ビットコインでは実際に不必要なトランザクションを捨てて台帳の容量を削減できるモードが実装されている。しかしながら、ネットワーク全体で、台帳データの保持に対するモチベーションが下がれば、台帳に含まれる重要なデータが消失する可能性が高まってしまう。
 本発明は、ブロックチェーンの台帳データ消失可能性を抑えつつ、ネットワーク全体でのストレージコストの低減に貢献することのできるブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置、ブロックチェーン管理方法及びプログラムを提供することを目的とする。
 第1の視点によれば、情報提供装置と、第1のブロックチェーン管理装置と、第2のブロックチェーン管理装置と、を含むブロックチェーン管理システムが提供される。前記情報提供装置は、ブロックチェーン管理装置に対して、所定の支払いアドレスと、前記台帳の情報と前記支払いアドレスとから生成した要約値と、を提供する。前記第1のブロックチェーン管理装置は、前記情報提供装置から提供された情報を用いて、第1のトランザクションを含むブロックを生成する。前記第2のブロックチェーン管理装置は、前記第1のブロックチェーン管理装置から受信したブロックに、少なくとも、前記台帳の情報と支払いアドレスとから生成した要約値と、前記支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションとが含まれていることを条件にブロックを検証するブロック検証部と、前記ブロックの検証に成功した場合に、他のブロックチェーン管理装置と合意形成を行って、前記合意形成した前記ブロックを前記台帳に追加する合意形成部と、を備える。
 第2の視点によれば、所定の情報提供装置から、所定の支払いアドレスと、前記台帳の情報と前記支払いアドレスとから生成した要約値と、を受信し、前記情報提供装置から提供された情報を用いて、第1のトランザクションと、前記台帳の情報と支払いアドレスとから生成した要約値と、前記支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションと、を含むブロックを生成する第1のブロックチェーン管理装置が提供される。
 第3の視点によれば、第1のブロックチェーン管理装置から受信したブロックに、少なくとも、台帳の情報と所定の支払いアドレスとから生成した要約値と、前記所定の支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションとが含まれていることを条件にブロックを検証するブロック検証部と、前記ブロックの検証に成功した場合に、他のブロックチェーン管理装置と合意形成を行って、前記合意形成した前記ブロックを前記台帳に追加する合意形成部と、を備える第2のブロックチェーン管理装置が提供される。
 第4の視点によれば、ブロックチェーンを構成する台帳を管理する台帳格納部と、前記台帳格納部に保持されたデータの提供対価の支払い先となる支払先アドレスを保持するアドレス情報記憶部と、ブロックチェーン管理装置に対して、前記所定の支払いアドレスと、前記台帳の情報と前記支払いアドレスとから生成した要約値と、を提供する情報提供部と、を備える情報提供装置が提供される。
 第5の視点によれば、ブロックチェーン管理装置が、他のブロックチェーン管理装置から受信したブロックに、少なくとも、台帳の情報と所定の支払いアドレスとから生成した要約値と、前記所定の支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションとが含まれていることを条件にブロックを検証するステップと、前記ブロックの検証に成功した場合に、他のブロックチェーン管理装置と合意形成を行って、前記合意形成された前記ブロックを前記台帳に追加するステップと、を含むブロックチェーン管理方法が提供される。本方法は、他のブロックチェーン管理装置と連携して台帳を更新していくブロックチェーン管理装置という、特定の機械に結びつけられている。
 第6の視点によれば、ブロックチェーン管理装置を構成するコンピュータに、他のブロックチェーン管理装置から受信したブロックに、少なくとも、台帳の情報と所定の支払いアドレスとから生成した要約値と、前記所定の支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションとが含まれていることを条件にブロックを検証する処理と、前記ブロックの検証に成功した場合に、他のブロックチェーン管理装置と合意形成を行って、前記合意形成された前記ブロックを前記台帳に追加する処理と、を実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な(非トランジトリーな)記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
 本発明によれば、ブロックチェーンの台帳データ消失可能性を抑えつつ、ネットワーク全体でのストレージコストを低減することが可能となる。
本発明の一実施形態の構成を示す図である。 本発明の一実施形態の動作を説明するための図である。 本発明の一実施形態の動作を説明するための図である。 本発明の一実施形態の動作を説明するための図である。 本発明の第1の実施形態のブロックチェーン管理システムの構成を示す図である。 本発明の第1の実施形態の情報提供装置の構成を示す機能ブロック図である。 本発明の第1の実施形態のブロックチェーン管理装置の構成を示す機能ブロック図である。 本発明の第1の実施形態のブロックチェーン管理装置が作成するブロックの一例を示す図である。 本発明の第1の実施形態のブロックチェーン管理装置の動作を表したフローチャートである。 本発明の第1の実施形態のブロックチェーン管理装置の台帳格納部に保持される台帳データの一例を示す図である。 本発明の第1の実施形態の情報提供装置の動作(ブロック生成用情報提供)を表したフローチャートである。 本発明の第1の実施形態のブロックチェーン管理装置の動作(ブロック検証)を表したフローチャートである。 本発明の第1の実施形態のブロックチェーン管理装置の動作(合意形成)を表したフローチャートである。 本発明の第2の実施形態のブロックチェーン管理装置の構成を示す機能ブロック図である。 本発明の第2の実施形態の典型的な動作を示す図である。 本発明の第3の実施形態の情報提供装置の構成を示す機能ブロック図である。 本発明の第3の実施形態のブロックチェーン管理装置の構成を示す機能ブロック図である。 本発明の第3の実施形態の情報提供装置の動作(ブロック検証用情報提供)を表したフローチャートである。
 はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。また、以降の説明で参照する図面等のブロック間の接続線は、双方向及び単方向の双方を含む。一方向矢印については、主たる信号(データ)の流れを模式的に示すものであり、双方向性を排除するものではない。
 本発明は、その一実施形態において、図1に示すように、情報提供装置200Aと、第1のブロックチェーン管理装置100Aと、第2のブロックチェーン管理装置100Bと、を含むブロックチェーン管理システムが提供される。情報提供装置200Aは、第1のブロックチェーン管理装置100Aに対して、所定の支払いアドレスと、台帳の情報と前記支払いアドレスとから生成した要約値と、を提供する。ブロックチェーン管理装置100Aは、情報提供装置200Aから提供された情報を用いて、第1のトランザクションを含むブロックを生成する。
 ブロックチェーン管理装置100Bは、ブロック検証部101と、合意形成部102と、台帳格納部103とを備える。ブロック検証部101は、ブロックチェーン管理装置100Aから受信したブロックについて、少なくとも以下の観点で適正なブロックであるか否かを確認する検証を行う。
(1)前記台帳の情報と支払いアドレスとから生成した要約値が含まれていること
(2)前記支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションが含まれていること
 上記条件(1)及び(2)を確認できた場合、ブロック検証部101は、受信したブロックが正しく生成されていると判定する。
 合意形成部102は、前記ブロックの検証に成功した場合に、他のブロックチェーン管理装置(図示省略)と合意形成を行って、前記合意形成した前記ブロックを台帳格納部103に格納されている台帳に追加する。なお、以下の説明では、ブロックチェーン管理装置100Aがブロックを生成し、ブロックチェーン管理装置100Bが検証するものとして説明するが、これはどちらがブロックを先に生成するかによって変わりうる。即ち、ブロックチェーン管理装置100Bがブロックを先に生成した場合、ブロックチェーン管理装置100Aが、ブロックチェーン管理装置100Bの生成したブロックを検証することもある。また、もちろん、その他のブロックチェーン管理装置(図示省略)がブロックを先に生成した場合、ブロックチェーン管理装置100A、100Bが検証ノードとなりうる。
 例えば、図2に示すように、完全な台帳データを持たないブロックチェーン管理装置100A(第1のブロックチェーン管理装置に相当)は、ブロック作成にあたり、情報提供装置200Aに対し、情報を要求する(ステップS001)。
 前記情報要求を受けた情報提供装置200Aは、図3に示すように、ブロックチェーン管理装置100Aに対し、ブロックの作成に必要な情報を提供する(ステップS002)。
 ブロックチェーン管理装置100Aは、自身で保持している台帳の部分情報、及び、必要に応じて情報提供装置200Aから提供された情報を用いて、例えば、前ブロックのハッシュ値、Nonce等の計算を行う。さらに、ブロックチェーン管理装置100Aは、これらの情報に、参照情報要約値と、前記支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションとを加えたブロックを生成する。ここで、参照情報要約値としては、所定のルールで選択した台帳の情報と支払いアドレスとから生成した要約値(ハッシュ)を用いることができる(図8の参照情報要約値参照)。さらに、ブロックチェーン管理装置100Aは、図4に示すように、他のブロックチェーン管理装置(図4では、ブロックチェーン管理装置100B)に対して、前記生成したブロックを送信する。
 第2のブロックチェーン管理装置100B(上記第2のブロックチェーン管理装置に相当)は、少なくとも、受信したブロックに、適切な参照情報要約値と、適切な第2のトランザクションが含まれているかを確認する検証処理を行う。
 合意形成部102は、前記ブロックの検証に成功した場合に、他のブロックチェーン管理装置と合意形成を行って、台帳格納部103に格納されている台帳に、前記合意形成した前記ブロックを追加する。
 上記構成によれば、第2のトランザクションを含むブロックが台帳に登録されることになる。この結果として、情報提供装置200Aの設置者や運営者は、第2のトランザクションにより、情報提供装置200Aによる情報提供の対価を受け取ることが可能となる。また、そのために、情報提供装置200Aの設置者や運営者に対し、台帳データの保持に対するインセンティブを与えることが可能となる。一方で、ブロックチェーン管理装置の設置者や運営者は、ブロックチェーン管理装置のマイニング能力向上に、その経営資源を集中させることが可能となる。これにより、マイニング能力は高くないがストレージに余裕のあるノードや、逆に、マイニング能力は高いがストレージに余裕のないノード、あるいはこれらの中間にあるノードなどが協働してブロック生成の対価を得ることが可能となる。
[第1の実施形態]
 続いて、本発明の第1の実施形態について図面を参照して詳細に説明する。図5は、本発明の第1の実施形態の構成を示す図である。図5を参照すると、1台の情報提供装置200と、4台のブロックチェーン管理装置(ブロックチェーン管理ノード)100が相互に接続された構成が示されている。これらのブロックチェーン管理装置100がトランザクション発行者から受け取ったトランザクションを検証する。そして、ブロックチェーン管理装置100は、情報提供装置200から提供された情報を用いて、検証を通過したトランザクションを集約してブロックを作成する。ブロックを作成したブロックチェーン管理装置100は、他のブロックチェーン管理装置100に作成したブロックを配布する。それぞれのブロックチェーン管理装置100がその正当性を検証した上で台帳にブロックの内容を追加する。なお、上記の過程で、ブロックチェーン管理装置100がブロックの作成主体となりうるため、内容の異なるブロックが作成されることがある。また、悪意を持ったブロックチェーン管理装置100が存在する場合、不正なブロックが生成、配布される可能性もある。その場合、合意形成という手続を行って、ブロックチェーン管理装置100間で蓄積するブロックの内容を同一にする。これにより、台帳の一貫性が保たれる。なお、図5の例では、4台のブロックチェーン管理装置を示しているが、ブロックチェーン管理装置の数は複数あればよく、図5の構成に限られない。また、情報提供装置200がブロックチェーン管理装置としての機能を有していてもよい。
 続いて、情報提供装置200の構成について図面を参照して詳細に説明する。図6は、本発明の第1の実施形態の情報提供装置の構成を示す機能ブロック図である。図6を参照すると、台帳格納部210と、アドレス情報格納部220と、参照情報要約値提供部240と、参照情報要約値生成部250と、を含む情報提供装置200が示されている。
 台帳格納部210は、ブロックチェーン管理装置間の合意形成により合意されたブロックの集合である台帳を格納する。なお、台帳の更新は、情報提供装置200自身が行っても良いし、他のブロックチェーン管理装置が行っても良い。なお、台帳格納部210は、台帳のすべてのデータを保持している必要はない。例えば、情報提供装置200が他の装置(情報提供装置200と同等の装置である場合を含む。)から台帳のデータを取得する構成であってもよい。
 アドレス情報格納部220は、情報提供装置が他のブロックチェーン管理装置に対して、台帳格納部210に格納されている情報を提供したことに対する対価の支払いアドレスを格納する。このような支払いアドレスの例としては、Bitcoin(登録商標)におけるBitcoinアドレスが挙げられる。もちろん、ブロックに登録可能なトランザクションの支払いアドレスとして適当なものであれば、その他の仮想通貨の支払いアドレスや銀行口座情報等であってもよい。
 参照情報要約値提供部240は、ブロックチェーン管理装置100からの要求に応じて、台帳格納部210に格納された台帳から所定のルールで選択した情報(以下、「参照情報」という)と支払いアドレスとの要約値(以下、「参照情報要約値」という)を提供する。より具体的には、参照情報要約値提供部240は、参照情報要約値生成部250に対し、参照情報要約値の生成を要求する。参照情報要約値生成部250から参照情報要約値を受信すると、参照情報要約値提供部240は、要求元のブロックチェーン管理装置100に参照情報要約値を送信する。
 参照情報要約値生成部250は、台帳格納部210及びアドレス情報格納部220から、参照情報要約値提供部240から指定された参照情報と、支払いアドレスをそれぞれ取り出して、参照情報要約値を生成する。参照情報要約値は、所定の計算方法で計算される。例えば、参照情報と支払いアドレスとを結合して、そのハッシュ値を参照情報要約値としてもよい。
 続いて、ブロックチェーン管理装置100の構成について図面を参照して詳細に説明する。図7は、本発明の第1の実施形態のブロックチェーン管理装置の構成を示す機能ブロック図である。図7を参照すると、ブロック受信部110と、ブロック検証部120と、合意形成部130と、台帳格納部140と、を含むブロックチェーン管理装置100が示されている。
 ブロック受信部110は、ブロックチェーンのネットワークに送信されたブロックを受信する。このブロックBは、図8に示すように、一つまたは複数のトランザクションに、ブロックヘッダBHを付加して構成される。さらに、このブロックヘッダBHは、直前のブロックに含まれるブロックヘッダを要約したブロックヘッダ要約値(図8のHash)と、前述の参照情報要約値を含む。さらに、本実施形態で正当と判断されるブロックBには、インセンティブ支払いトランザクションと呼ばれる、通常のトランザクションTRX1とは異なるトランザクションTRX2が格納される。インセンティブ支払いトランザクションTRX2は、上記第2のトランザクションに相当し、情報提供装置200から参照情報要約値とともに提供された支払いアドレスと、支払い額を含む。なお、参照情報は、ブロックチェーン管理装置100間で共有する所定のルールによって決定されるものであればよく、台帳の複数の部分であってもよい。この場合、参照情報は複数となり、参照情報要約値は、これら複数の参照情報から1つ、又は、複数生成される。
 ブロック検証部120は、第2トランザクション抽出部121と、参照情報要約値検証部122と、参照情報決定部123と、を含み、受信したブロックが正しく生成されていることを検証する。具体的には、第2トランザクション抽出部121は、受信したブロックから、上述のインセンティブ支払いトランザクション(第2のトランザクション)を抽出する。
 参照情報決定部123は、前記所定のルールに基づいて、台帳の一部またはすべての情報に基づいた台帳の部分的情報である参照情報を決定する。なお、前記所定のルールは、すべてのブロックチェーン管理装置100が、台帳の情報から、同一の部分的情報である参照情報を特定できるようなルールであってもよい。また、参照情報としてブロックチェーン管理装置の台帳格納部140に存在しない(破棄されている)ような台帳が選択されるようなルールが用いられる場合は、第3の実施形態にて説明する。
 参照情報要約値検証部122は、ブロックがブロックチェーン規定のルールに則って生成されているか否かの確認を行うほか、次の観点でブロックの検証を行う。まず、参照情報要約値検証部122は、前記インセンティブ支払いトランザクション(第2のトランザクション)に含まれる支払いアドレス情報と、参照情報決定部123にて決定された参照情報とを用いて、参照情報要約値を計算する。そして、この参照情報要約値が、ブロックに含まれている参照情報要約値と一致した場合、参照情報要約値検証部122は、ブロックが正しく生成されていると判定する。
 合意形成部130は、前記受信したブロックが前記ブロック検証部120で正しく生成されたと判断された場合に、他のブロックチェーン管理装置との間で、当該ブロックを台帳格納部140に蓄積するかどうかについて合意する合意形成手順を実施する。
 台帳格納部140は、前記合意形成部130によって合意されたブロックの集合である台帳の少なくとも一部を格納する。
 次に、ブロックチェーン管理装置100の動作について図面を参照して詳細に説明する。はじめに、図9を参照してブロックチェーン管理装置100が受信したブロックを検証し、台帳格納部140に格納するまでの一連の動作について説明する。
 ブロック受信部110が、他のブロックチェーン管理装置100等からブロックを受信する(ステップA1)。ここでは、図8に示すブロックBを受信したとする。図8に示したとおり、このブロックBは、トランザクションの集合であるボディに、直前のブロックのブロックヘッダを要約したブロックヘッダ要約値(Hash)と、合意形成部130で使用されるNonceと呼ばれる値と、参照情報要約値を含んだブロックヘッダを付加した構成となっている。このブロックBのボディには、インセンティブ支払いトランザクション(第2のトランザクション)が含まれている。
 次に、ブロック検証部120が前記受信したブロックBに対して検証を行う(ステップA2)。ここでの検証の内容については、後に、図12のフローチャートを用いて説明する。
 前記検証の結果、前記ブロックが正しく生成されていないと判定された場合(ステップA3のNo)、ブロックチェーン管理装置100はブロックを廃棄する(ステップA4)。
 一方、ブロックが正しく生成されたと判定した場合(ステップA3のYes)、合意形成部130が、他のブロックチェーン管理装置100と合意形成を行う(ステップA5)。この合意形成の仕方については、後に、図13のフローチャートを用いて説明する。
 最後に、ブロックチェーン管理装置100は、他のブロックチェーン管理装置100と合意形成できたブロックを台帳格納部140に格納する(ステップA6)。図10は、台帳格納部140に保持される台帳データの一例を示す図である。図10の例では、合意形成の結果、ブロックの高さ501のブロックが追加された状態を示している。なお、台帳格納部140における台帳の格納態様は、図10に示した例に限られず、種々の変更を加えることが可能である。例えば、図10の例では、ブロックの高さとブロック本体とを対応付けた構成としているが、この形態に限られるものではない。
 続いて、図11のフローチャートを用いて、上記図8に示すブロックを生成するブロックチェーン管理装置100に対して、ブロックの作成に必要な情報を提供する情報提供装置200の動作について説明する。
 図11を参照すると、まず、情報提供装置200は、ブロックを生成するブロックチェーン管理装置100から、参照情報要約値の送信要求を受信する(ステップD1)。
 次に、情報提供装置200は、台帳格納部210から、前記所定のルールに基づいて、台帳の一部またはすべての情報に基づいた台帳の部分的情報である参照情報を取り出す(ステップD2)。
 次に、情報提供装置200は、アドレス情報格納部220から、支払いアドレス情報を取り出す(ステップD3)。
 次に、情報提供装置200は、参照情報と支払いアドレス情報とを用いて参照情報要約値を生成する(ステップD4)。
 次に、情報提供装置200は、参照情報要約値の送信要求の送信元のブロックチェーン管理装置100に対し、前記生成した参照情報要約値と支払いアドレス情報を送信する(ステップD5)。
 以上により、ブロックチェーン管理装置100は、情報提供装置200から受け取った参照情報要約値及び支払いアドレス情報を用いて図8に示すブロックを作成する。
 続いて、図12のフローチャートを用いて、上記図9のステップA2におけるブロック検証部120によるブロックの検証処理について詳細に説明する。以下では、ブロックチェーン管理装置100が、図8に示すブロックを受信したものとして説明する。
 検証対象となるブロックが入力されると、まず、ブロック検証部120の参照情報決定部123が、前記所定のルールに従い、台帳の中の部分的な情報を識別(特定)できる識別子を少なくとも一つ生成して、参照情報を指定する(ステップB1)。
 前記参照情報の識別子には、例えば、ブロックの高さなどを用いることができる(図8参照)。参照情報を指定する前記所定のルールとしては、例えば、次のものを用いることができる。
・直前のブロックの一部(Nonceの値や直前のブロックのハッシュ値など)に対してSHA-256等のハッシュ関数を用いて16進数の数値を作成する。
・この数値の一部分(下数桁など)に対して、最新のブロックの高さで剰余演算して得られた値に1を加える。
 以上のようなルールを用いることで、どの高さのブロックを参照情報として指定するかを1~現在のブロック高さの間で決定することができる。
 例えば、図10に示した台帳の中で直前のブロックである高さが500のブロックに含まれる直前のブロックのハッシュ値(つまり高さ499のブロックヘッダのハッシュ値)についてSHA-256ハッシュ関数でハッシュ値を取る。ここで、ハッシュ値として‘9a796cbfa5cc884d7f3e7ddf6c743dfeb9a78e876766d3243e893e4ded4e638d’という値が得られたものとする。その下16ケタの16進数‘3e893e4ded4e638d’に対して現在のブロック高さである500で剰余を取って+1することで参照するブロックは‘294’となる。
 なお、参照情報の識別子及びその決定方法はこの限りではない。例えば、参照情報の識別子は、ブロックの高さと、ブロック内のトランザクションを識別する番号といった複数の情報で構成されてもよい。また、これらの複数の情報で構成される識別子を直前のブロックの複数の部分的情報から取得してもよいし、直近の複数のブロックなどからそれぞれ生成することでもよい。また、参照情報の識別子が複数存在し、複数の参照情報を指定してもよい。
 上記参照情報を選択するための識別子は、台帳の中から参照情報を識別できる情報であればよくその形態を問わない。また、参照情報の識別子は、ある程度一様に台帳の部分的情報が選択されるものであってもよい。
 次に、ブロック検証部120の第2トランザクション抽出部121が、受信したブロックからインセンティブ支払いトランザクションTRX2を抽出する(ステップB2)。
 次に、参照情報要約値検証部122は、台帳格納部140から参照情報決定部123にて決定された参照情報を取得する(ステップB3)。
 次に、参照情報要約値検証部122は、前記インセンティブ支払いトランザクションTRX2に含まれる支払いアドレス情報と、前記参照情報とを用いて、参照情報要約値を計算する。そして、この参照情報要約値が、ブロックに含まれている参照情報要約値と一致した場合、ブロックが正しく生成されていると判定する(ステップB4)。
 なお、複数の参照情報がある場合に、それらを連結したものと支払いアドレス情報による一つの参照情報要約値を検証してもよいし、複数の参照情報要約値をそれぞれ対応する参照情報と支払いアドレス情報で検証してもよい。また検証の方法は上記の方法に限定せず、参照情報要約値が参照情報と支払いアドレス情報から生成されたものであると検証できればよい。
 続いて、図13のフローチャートを用いて、上記図9のステップA5における合意形成部130による合意形成処理について詳細に説明する。なお、以下の説明では、一例としてビットコインで採用されているProof of Workと呼ばれる仕組みによる合意形成について説明するが、他の合意形成方法でもよく、合意形成の方法については問わない。
 図13を参照すると、まず、合意形成部130は、ブロックのハッシュ値を確認する(ステップC1)。ハッシュ値はブロック全体に対して取るのでもよいし、ブロックの特徴を要約した値について取るのでもよい。ここでは、図8に示すブロックのハッシュ値として、16進数で “0000000000000000000000000000000000000000000000002bcad85e7b40d3a4”という値が得られたものとして説明する。
 最後に、合意形成部130は、ブロックのハッシュ値が目標値より小さいかどうかを判定し、ブロックのハッシュ値が小さい場合に合意形成ができたと判定とする(ステップC2)。ここで、目標値(Difficulty)は事前にシステムに固有の値が決定されているのでもよいし、以前のブロックを参照して計算して生成されるのでもよい。ここで、図8に示されたブロックに対する目標値が、“0000000000000000000000000000000000000000000000010000000000000000”であった場合、前述した図8のブロックのハッシュ値<当該目標値となるため、合意形成ができたと判定される。
 このような合意形成の方法はProof of Workと呼ばれ、ブロックを生成する際に、図8のブロックに示すようなNonceと呼ばれる値を変化させ、ブロックのハッシュ値が目標値より小さくなるようにブロックを生成する。ハッシュ値からNonceを逆算することはできないことから、ブロックチェーン管理装置100は、総当たりでNonceを試す必要がある。このため、ブロックの生成には、ある程度の計算コストと時間を所要する。ブロックの生成にかかる時間は目標値によってコントロールでき、たとえばビットコインでは直近のいくつかのブロックの生成間隔から、今後もブロックの生成にかかる時間が10分程度になるように調整される。Proof of Workを用いる合意形成部130は、計算コストを掛けて生成されたブロックかどうかを、ブロックのハッシュ値によって検証できる。ブロックチェーンのネットワークに参加している大部分のブロックチェーン管理装置100が同じルールに従ってブロックのハッシュ値を検証し、検証を通過したブロックのみを台帳格納部140に格納するブロックとすることで、ネットワーク全体では合意を形成することができる。
 以上説明したように、本実施形態のブロックチェーン管理装置100と情報提供装置200によれば、情報提供装置200に対する情報提供の対価となるインセンティブ支払いトランザクションTRX2を含んだブロックにて合意形成し、台帳に登録することが可能となる。換言すると、本実施形態によれば、トランザクションを保持することに対するインセンティブと、ブロック生成(マイニング)に対するインセンティブとを切り分けることができる。
 これは、すべてのブロックチェーン管理装置100が、すべてのトランザクションを保持する必要はなく、特定のブロックチェーン管理装置100は、ブロック生成(マイニング)に専念することができることを意味する。即ち、ブロックチェーンに参加するノードのうち、マイニング報酬に魅力を感じる者は、ストレージコストを削減し、限られた計算機資源をブロック生成(マイニング)に集中させ、より効率よくマイニング報酬を得ることが可能となる。
 他方、本実施形態によれば、トランザクションを保持する情報提供装置200側にも報酬を与えることができる。これにより、ブロックチェーンの台帳データ消失可能性を抑えることが可能となる。
[第2の実施形態]
 上記した実施形態では、ブロックチェーン管理装置100がトランザクション発行者からトランザクションを受け取ってブロックを生成する仕組みについては省略したが、ブロックチェーン管理装置100がこれらの機能を備えていてもよい。例えば、図14のように、ブロックチェーン管理装置100Cが、トランザクション受信部150と、ブロック生成部160と備えていてもよい(第2の実施形態)。
 トランザクション受信部150は、トランザクション発行者または他のブロックチェーン管理装置100からトランザクションを受信する(図15の(1)参照)。そして、ブロック生成部160は、台帳格納部140に格納された直前のブロックのハッシュ値と、参照情報要約値と、インセンティブ支払いトランザクションを含むトランザクションをまとめてブロックを生成し、他のブロックチェーン管理装置100に配布する(図15の(2))。以降の動作は第1の実施形態と同様であるので説明を省略する。
 以上のように、上記ブロックの検証機能は、トランザクションを受け取ってブロックを生成する機能を備えているブロックチェーン管理装置100にも設けることが可能である。
[第3の実施形態]
 上記した実施形態では、ブロックチェーン管理装置100が、ブロックの検証を行う際に、自身の台帳格納部140から参照情報を取得するものとして説明したが、情報提供装置から参照情報を取得することとしてもよい。
 図16は、本発明の第3の実施形態の情報提供装置の構成を示す機能ブロック図である。図6に示した第1の情報提供装置200との相違点は、情報提供装置200Aに参照情報提供部230が追加されている点である。
 参照情報提供部230は、ブロックチェーン管理装置100Dからの参照情報の送信要求に基づいて台帳格納部210から参照情報を取り出して、ブロックチェーン管理装置100Dに送信する。なお、悪意を持ったブロックチェーン管理装置が、参照情報の提供を受けることにより、参照情報要約値を作成可能になってしまう。このため、参照情報提供部230が、ブロックチェーン管理装置100に対し、参照情報を送信するタイミングとしては、前ブロックの到着から十分な時間の経過、または、次ブロックの到着などの条件を設けることが好ましい。この参照情報提供部230が、第2の情報提供部に相当する。
 図17は、参照情報の取得機能を備えたブロックチェーン管理装置100Dの構成を示す図である。図7に示したブロックチェーン管理装置100との相違点は、ブロック検証部120内に、参照情報取得部124が追加されている点である。
 参照情報取得部124は、参照情報決定部123にて決定された参照情報の送信を要求し、情報提供装置200から参照情報を受け取る。参照情報取得部124は、受信した参照情報を参照情報要約値検証部122に送る。なお、参照情報取得部124が、情報提供装置200Aに送信する参照情報の要求には、ブロックの高さ及び参照情報を識別する情報(識別子)が含まれているものとする。
 参照情報要約値検証部122は、第1の実施形態と同様に、インセンティブ支払いトランザクション(第2のトランザクション)に含まれる支払いアドレス情報と、参照情報取得部124にて取得された参照情報とを用いて、参照情報要約値を計算する。そして、この参照情報要約値が、ブロックに含まれている参照情報要約値と一致した場合、ブロックが正しく生成されていると判定する。
 図18は、本発明の第3の実施形態の情報提供装置200Aの動作を表したフローチャートである。図18を参照すると、情報提供装置200Aは、ブロックチェーン管理装置100Dから参照情報の送信要求を受信すると(ステップE1)、台帳格納部210に該当ブロック高さのブロックが存在するか否かを確認する(ステップE2)。ここで、該当するブロック高さのブロックが存在しない場合、情報提供装置200Aは、処理を終了する(ステップE6)、
 一方、台帳格納部210に、該当するブロック高さのブロックが存在する場合、情報提供装置200Aは、参照情報を特定する情報(識別子)が適切か否かを確認する(ステップE3)。ここで、参照情報を特定する情報(識別子)が適切でない場合、情報提供装置200Aは、処理を終了する(ステップE6)。
 一方、参照情報を特定する情報(識別子)が適切である場合、情報提供装置200Aの参照情報提供部230は、台帳格納部210から該当する参照情報を取り出し、ブロックチェーン管理装置100に送信する。以降の動作は、第1の実施形態と同様であるので説明を省略する。
 以上のように、本実施形態によれば、参照情報がブロックチェーン管理装置100の台帳格納部140から削除されている場合でも、ブロックの検証を行うことが可能となる。即ち、参照情報の決定ルール(所定のルール)として、情報提供装置200から参照情報を受け取ることを前提としたルールを用いることが可能となり、ストレージコストを低減することが可能となる。
 以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、各図面に示したネットワーク構成、各要素の構成、メッセージの表現形態は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。
 例えば、図1、6、7、14、16、17に示したブロックチェーン管理装置や情報提供装置の各部(処理手段)は、これらの装置に搭載されたプロセッサに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。
 最後に、本発明の好ましい形態を要約する。
[第1の形態]
 (上記第1の視点によるブロックチェーン管理システム参照)
[第2の形態]
 (上記第2の視点による第1のブロックチェーン管理装置参照)
[第3の形態]
 (上記第3の視点による第2のブロックチェーン管理装置参照)
[第4の形態]
 (上記第4の視点による情報提供装置参照)
[第5の形態]
 上記した第2のブロックチェーン管理装置は、
 前記情報提供装置から、ブロックを検証するために必要な情報を取得する情報取得部を備えることが好ましい。
[第6の形態]
 上記した情報提供装置の前記第2の情報提供部は、
 所定のブロックチェーン管理装置からの要求に対して、前記台帳格納部から、前記ブロックを検証するために必要な情報を抽出して、提供する第2の情報提供部(参照情報提供部)を備えることが好ましい。
[第7の形態]
 上記した第2の情報提供部は、さらに、
 前記所定のブロックチェーン管理装置からの要求に対し、ブロックの到着から所定の時間の経過後に、前記ブロックを検証するために必要な情報を提供することが好ましい。
[第8の形態]
 上記した情報提供装置の前記第2の情報提供部は、
 前記所定のブロックチェーン管理装置からの要求に含まれるブロックの高さと、前記ブロックを検証するために必要な情報を特定するための情報との組み合わせが正しいと判定した場合に、前記ブロックを検証するために必要な情報を提供することが好ましい。
[第9の形態]
 (上記第5の視点によるブロックチェーン管理方法参照)
[第10の形態]
 (上記第6の視点によるコンピュータプログラム参照)
 なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
 100、100A~100D ブロックチェーン管理装置
 101、120 ブロック検証部
 102、130 合意形成部
 103、140、210 台帳格納部
 110 ブロック受信部
 102、120 ブロック検証部
 121 第2トランザクション抽出部
 122 参照情報要約値検証部
 123 参照情報決定部
 124 参照情報取得部
 150 トランザクション受信部
 160 ブロック生成部
 200、200A 情報提供装置
 220 アドレス情報格納部
 230 参照情報提供部
 240 参照情報要約値提供部
 250 参照情報要約値生成部
 B ブロック
 BH ブロックヘッダ
 TRX1 トランザクション
 TRX2 インセンティブ支払いトランザクション(第2のトランザクション)

Claims (10)

  1.  ブロックチェーン管理装置に対して、所定の支払いアドレスと、台帳の情報と前記支払いアドレスとから生成した要約値と、を提供する情報提供装置と、
     前記情報提供装置から提供された情報を用いて、第1のトランザクションを含むブロックを生成する第1のブロックチェーン管理装置と、
     前記第1のブロックチェーン管理装置から受信したブロックに、少なくとも、前記台帳の情報と支払いアドレスとから生成した要約値と、前記支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションとが含まれていることを条件にブロックを検証するブロック検証部と、前記ブロックの検証に成功した場合に、他のブロックチェーン管理装置と合意形成を行って、前記合意形成した前記ブロックを前記台帳に追加する合意形成部と、を備える第2のブロックチェーン管理装置と、
     を含むブロックチェーン管理システム。
  2.  前記第2のブロックチェーン管理装置は、
     前記情報提供装置から、ブロックを検証するために必要な情報を取得する情報取得部を備える請求項1のブロックチェーン管理システム。
  3.  所定の情報提供装置から、所定の支払いアドレスと、台帳の情報と前記支払いアドレスとから生成した要約値と、を受信し、
     前記情報提供装置から提供された情報を用いて、第1のトランザクションと、前記台帳の情報と支払いアドレスとから生成した要約値と、前記支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションと、を含むブロックを生成する第1のブロックチェーン管理装置。
  4.  第1のブロックチェーン管理装置から受信したブロックに、少なくとも、台帳の情報と所定の支払いアドレスとから生成した要約値と、前記所定の支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションとが含まれていることを条件にブロックを検証するブロック検証部と、
     前記ブロックの検証に成功した場合に、他のブロックチェーン管理装置と合意形成を行って、前記合意形成した前記ブロックを前記台帳に追加する合意形成部と、
     を備える第2のブロックチェーン管理装置。
  5.  所定の情報提供装置からブロックを検証するために必要な情報を取得する情報取得部を備える請求項4の第2のブロックチェーン管理装置。
  6.  ブロックチェーンを構成する台帳を管理する台帳格納部と、
     前記台帳格納部に保持されたデータの提供対価の支払い先となる支払先アドレスを保持するアドレス情報記憶部と、
     ブロックチェーン管理装置に対して、所定の支払いアドレスと、前記台帳の情報と前記支払いアドレスとから生成した要約値と、を提供する情報提供部と、
     を備える情報提供装置。
  7.  さらに、
     所定のブロックチェーン管理装置からの要求に対して、前記台帳格納部から、ブロックを検証するために必要な情報を抽出して、提供する第2の情報提供部を備える
     請求項6の情報提供装置。
  8.  前記第2の情報提供部は、
     前記所定のブロックチェーン管理装置からの要求に対し、ブロックの到着から所定の時間の経過後に、前記ブロックを検証するために必要な情報を提供する請求項7の情報提供装置。
  9.  前記第2の情報提供部は、
     前記所定のブロックチェーン管理装置からの要求に含まれるブロックの高さと、前記ブロックを検証するために必要な情報を特定するための情報との組み合わせが正しいと判定した場合に、前記ブロックを検証するために必要な情報を提供する
     請求項7又は8の情報提供装置。
  10.  ブロックチェーン管理装置が、
     他のブロックチェーン管理装置から受信したブロックに、少なくとも、台帳の情報と所定の支払いアドレスとから生成した要約値と、前記所定の支払いアドレスに宛てて前記台帳の情報の提供に対する対価を支払う第2のトランザクションとが含まれていることを条件にブロックを検証するステップと、
     前記ブロックの検証に成功した場合に、他のブロックチェーン管理装置と合意形成を行って、前記合意形成された前記ブロックを前記台帳に追加するステップと、
     を含むブロックチェーン管理方法。
PCT/JP2018/007207 2018-02-27 2018-02-27 ブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置及びブロックチェーン管理方法 WO2019167116A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2018/007207 WO2019167116A1 (ja) 2018-02-27 2018-02-27 ブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置及びブロックチェーン管理方法
US16/965,042 US20200402026A1 (en) 2018-02-27 2018-02-27 Blockchain management system, blockchain management apparatus, information providing apparatus, and blockchain management method
JP2020503122A JP6969664B2 (ja) 2018-02-27 2018-02-27 ブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置及びブロックチェーン管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/007207 WO2019167116A1 (ja) 2018-02-27 2018-02-27 ブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置及びブロックチェーン管理方法

Publications (1)

Publication Number Publication Date
WO2019167116A1 true WO2019167116A1 (ja) 2019-09-06

Family

ID=67805974

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/007207 WO2019167116A1 (ja) 2018-02-27 2018-02-27 ブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置及びブロックチェーン管理方法

Country Status (3)

Country Link
US (1) US20200402026A1 (ja)
JP (1) JP6969664B2 (ja)
WO (1) WO2019167116A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113535847A (zh) * 2021-06-22 2021-10-22 中国人民银行数字货币研究所 区块链地址分类的方法和装置
KR20230093972A (ko) * 2021-12-20 2023-06-27 김주원 블록체인을 이용한 멤버쉽 관리 장치

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200014542A1 (en) * 2018-07-03 2020-01-09 ULedger, Inc. Detection of anomalies in a computer system
CN111899104B (zh) * 2018-11-27 2023-12-01 创新先进技术有限公司 一种业务执行方法及装置
US11177962B2 (en) * 2019-02-05 2021-11-16 Visa International Service Association Optimizations for verification of interactions system and method
US11087016B1 (en) * 2020-08-20 2021-08-10 Spideroak, Inc. Implementation of a file system on a block chain

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170046806A1 (en) * 2015-08-13 2017-02-16 The Toronto-Dominion Bank Secure real-time product ownership tracking using distributed electronic ledgers
JP2017091149A (ja) * 2015-11-09 2017-05-25 日本電信電話株式会社 ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム
JP2017220710A (ja) * 2016-06-03 2017-12-14 日本電信電話株式会社 契約合意方法、合意検証方法、契約合意装置および合意検証装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6105040A (en) * 1997-06-30 2000-08-15 Sun Microsystems, Inc. Method and apparatus for managing stored objects
US7107285B2 (en) * 2002-03-16 2006-09-12 Questerra Corporation Method, system, and program for an improved enterprise spatial system
US20170236102A1 (en) * 2016-02-12 2017-08-17 D+H Usa Corporation Peer-to-Peer Financial Transactions Using A Private Distributed Ledger
US10715331B2 (en) * 2016-12-28 2020-07-14 MasterCard International Incorported Method and system for providing validated, auditable, and immutable inputs to a smart contract
US20180349896A1 (en) * 2017-06-05 2018-12-06 Mastercard International Incorporated Method and system for anonymization of electronic transactions via blockchain
US11227284B2 (en) * 2017-12-13 2022-01-18 Mastercard International Incorporated Method and system for consumer-initiated transactions using encrypted tokens

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170046806A1 (en) * 2015-08-13 2017-02-16 The Toronto-Dominion Bank Secure real-time product ownership tracking using distributed electronic ledgers
JP2017091149A (ja) * 2015-11-09 2017-05-25 日本電信電話株式会社 ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム
JP2017220710A (ja) * 2016-06-03 2017-12-14 日本電信電話株式会社 契約合意方法、合意検証方法、契約合意装置および合意検証装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113535847A (zh) * 2021-06-22 2021-10-22 中国人民银行数字货币研究所 区块链地址分类的方法和装置
KR20230093972A (ko) * 2021-12-20 2023-06-27 김주원 블록체인을 이용한 멤버쉽 관리 장치
KR102552628B1 (ko) * 2021-12-20 2023-07-05 김주원 블록체인을 이용한 멤버쉽 관리 장치

Also Published As

Publication number Publication date
JP6969664B2 (ja) 2021-11-24
JPWO2019167116A1 (ja) 2021-02-04
US20200402026A1 (en) 2020-12-24

Similar Documents

Publication Publication Date Title
WO2019167116A1 (ja) ブロックチェーン管理システム、ブロックチェーン管理装置、情報提供装置及びブロックチェーン管理方法
JP7108611B2 (ja) 電子手形管理方法及び装置並びに記憶媒体
KR102050129B1 (ko) 블록 검증을 위한 복수의 일방향 함수를 지원하는 블록 체인
Göbel et al. Increased block size and Bitcoin blockchain dynamics
JP7021747B2 (ja) 決済システム、決済方法、利用者装置、決済プログラム
JP6628188B2 (ja) 決済システム、決済方法、トランザクション生成装置及びトランザクション生成プログラム
JP2023134665A (ja) ブロックチェーンが実現される方法及びシステム
KR101727525B1 (ko) 블록체인 기반 분산 저장 방법 및 이를 이용한 장치
WO2021184826A1 (zh) 基于区块链的资源转移方法、装置、节点设备及存储介质
JP7003995B2 (ja) ブロックチェーン管理装置、ブロックチェーン管理方法及びプログラム
US20190036702A1 (en) Private node, processing method for private node, and program for same
US20190052454A1 (en) System and method for controlling asset-related actions via a block chain
JP7508521B2 (ja) ブロックチェーンネットワークを介してデータを通信し、格納し、及び処理するためのブロックチェーンベースのシステム及び方法
WO2019235198A1 (ja) 決済システム、決済方法、利用者装置、決済プログラム
JP6495346B2 (ja) 情報処理システム
CN111640017A (zh) 一种应用于联盟链跨链转账的交易正确性验证方法及装置
KR102074381B1 (ko) 블록체인 기반의 익명 거래 수행 방법, 장치 및 기록 매체
JP7062571B2 (ja) 組織管理支援システム、組織管理支援方法、および、組織管理支援装置
JP6951649B2 (ja) ブロック検証装置、ブロック検証方法、及びプログラム
CN113994628A (zh) 通过侧信道流式传输部分数据
JP2022532889A (ja) 複数インプットトランザクション
KR20230101883A (ko) 머클 증명 엔티티
JP2023516466A (ja) ブロックチェーントランザクション二重使用証明
CN114531941A (zh) 多标准区块链协议
KR20200014682A (ko) 암호화폐 교환을 위한 트랜잭션을 매칭하는 전자 장치 및 방법

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: 18908227

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020503122

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18908227

Country of ref document: EP

Kind code of ref document: A1