WO2019117311A1 - ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法及びノード - Google Patents

ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法及びノード Download PDF

Info

Publication number
WO2019117311A1
WO2019117311A1 PCT/JP2018/046214 JP2018046214W WO2019117311A1 WO 2019117311 A1 WO2019117311 A1 WO 2019117311A1 JP 2018046214 W JP2018046214 W JP 2018046214W WO 2019117311 A1 WO2019117311 A1 WO 2019117311A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
node
transaction
identifier
block chain
Prior art date
Application number
PCT/JP2018/046214
Other languages
English (en)
French (fr)
Inventor
裕三 加納
峰史 小宮山
Original Assignee
株式会社bitFlyer
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 株式会社bitFlyer filed Critical 株式会社bitFlyer
Priority to EP18889511.4A priority Critical patent/EP3726388A4/en
Priority to CN201880089046.1A priority patent/CN112074818A/zh
Priority to US16/954,139 priority patent/US20210166220A1/en
Publication of WO2019117311A1 publication Critical patent/WO2019117311A1/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/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/3678Payment 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 e-cash details, e.g. blinded, divisible or detecting double spending
    • 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
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • G06Q20/0658Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed locally
    • 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/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • G06Q20/204Point-of-sale [POS] network systems comprising interface for record bearing medium or carrier for electronic funds transfer or payment credit
    • 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/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/352Contactless payments by cards
    • 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/3672Payment 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 initialising or reloading thereof
    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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
    • 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/30Compression, e.g. Merkle-Damgard construction
    • 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/34Encoding or coding, e.g. Huffman coding or error correction

Definitions

  • the present invention relates to a method for making past transactions accessible in a blockchain network and a node for configuring the network.
  • each node has a blockchain that is a series of blocks for which an agreement has been made for adoption.
  • Each block has a header and a body that contains one or more transactions.
  • Each transaction may have a hash value of the transaction as its identifier, which may be referred to as "transaction id (txid)".
  • the txid is used in referring to past transactions, and its dictionary may be held in one or more or all nodes as needed.
  • txid is generally a 32-byte hash value, and as the number of transactions increases, the corresponding data of txid becomes enormous. Data bloat causes a decrease in access speed when using txid.
  • the present invention has been made in view of such problems, and its object is to provide a method for efficiently accessing past transactions in a block chain network, a program therefor, and the network.
  • a method for making past transactions accessible in a block chain network wherein the nodes forming the block chain network have finality. Storing, for each transaction included in the block, an identifier based on the height of the block and the order in the block, for a block agreed upon under a consensus algorithm.
  • one or more conditions associated with the transaction are specified in the block chain network, and an identifier corresponding to the transaction associated with the specified condition is stored. It is characterized by being.
  • the condition is an address of a virtual currency or a cryptographic currency.
  • the identifier has a block height area of a first number of bytes and an ordered area of a second number of bytes. It features.
  • the first number of bytes is any one of three to four.
  • the second number of bytes is 1 or 2.
  • the number of bytes of the identifier is any one of 4 to 6.
  • An eighth aspect of the present invention is a program for causing a computer to execute a method for making it possible to access past transactions in a block chain network, the method comprising the steps of: And, for each block included in the block, the configuring node stores an identifier based on the height of the block and the order in the block, for a block agreed upon under a consensus algorithm with finality. It is characterized by including.
  • a ninth aspect of the present invention is a node for configuring a block chain network that enables access to past transactions, and for a block agreed under a consensus algorithm with finality, An identifier based on the height of the block and the order in the block is stored for each transaction included in the block.
  • a tenth aspect of the present invention is a method for making it possible to access a past transaction possessed by a block chain network, and accessing a block chain possessed by any of the nodes constituting the block chain network.
  • the possible computers are based on the height of the block and the order within the block for each transaction included in the block, for the blocks agreed under the consensus algorithm with finality included in the block chain Storing the identifier.
  • FIG. 1 illustrates a block chain network according to an embodiment of the present invention.
  • FIG. 5 illustrates a method for efficiently accessing past transactions according to an embodiment of the present invention.
  • FIG. 1 shows a block chain network according to a first embodiment of the present invention.
  • the network 100 comprises a first node 101, a second node 102, a third node 103 and a fourth node 104.
  • Each of these nodes has its own block chain and participates in the consensus building on adoption of new blocks. Although four examples are shown in FIG. 1, this is merely an example. Also, nodes that do not participate in consensus building may be included in the network 100.
  • the first node 101 includes a communication unit 101A such as a communication interface, a processor 101B such as a processor and a CPU, and a storage unit 101C including a memory or a storage device such as a hard disk or a storage medium, and performs each process. And one or more devices or servers may be included, and the program may include one or more programs, and a computer readable storage medium Can be recorded as a non-transitory program product.
  • a communication unit 101A such as a communication interface
  • a processor 101B such as a processor and a CPU
  • a storage unit 101C including a memory or a storage device such as a hard disk or a storage medium, and performs each process.
  • the program may include one or more programs, and a computer readable storage medium Can be recorded as a non-transitory program product.
  • the first node 101 generates a new block from one or more transactions in which storage devices or storage media accessible from the storage unit 101C or the first node 101 are stored as a memory pool (S201).
  • the generated block is added to the block chain at each node (S202).
  • various agreement algorithms can be adopted, provided that the agreement algorithm is a finality.
  • finality means that once an agreement is formed for a block, all nodes that behave normally do not overturn the agreement.
  • ordering of the added blocks is possible and that the order is not reversed.
  • Each node can generate an identifier for uniquely identifying each transaction based on the height of the added block and the order in the block (S203).
  • the identifier is called "transaction pointer (txp)".
  • the generated txp can be stored in the database 101D as illustrated for the first node 101.
  • the storage unit 101C or a storage device or storage medium accessible from the first node 101 can also be stored, but in the following, description will be made under an example of storage in the database 101D.
  • the identifier txp is generated after the block is added, but may be generated before the addition of the block. However, in order for txp to be effectively stored at each node, it is required that the block be added. In addition, txp does not necessarily have to be generated and stored for all transactions, and may not be stored immediately after block addition, but may be performed at an appropriate timing.
  • Txp can be indicated as, for example, 321: 3 when the block height is 321 and the transaction is placed third in the body of the block.
  • the first three digits represent the block height, and the last one represents the order of transactions.
  • txp has a block height region of a first number of bytes and an ordered region of a second number of bytes, and by way of example, depending on the allowed block chain height and block size,
  • the number of bytes of 1 may be 3 bytes, and the number of second bytes may be 1 byte.
  • a block chain network 100 suitable for a wide range of applications by setting the first number of bytes to 3 to 4 bytes and the second number of bytes to 1 to 2 bytes, for a total of 4 to 6 bytes. It is possible to cope.
  • one or more transactions contained within the block are executed, often changing the state of each node.
  • a blockchain network for remittance of virtual currency or cryptocurrency
  • the balance status of address A and the balance of address B change respectively .
  • the deposit and withdrawal history of the addresses A and B can be stored in a memory area which is significantly smaller than the conventional one.
  • txp corresponding to the transaction associated with the key in the block is stored using the address as a key.
  • txp is not limited to the deposit / withdrawal history of the virtual currency or the cryptocurrency, and the state of each node which fluctuates due to the execution of the transaction is designated in advance or later as a key, and is associated with the key Historical data can be generated.
  • txp can be used when it is desired to store information on one or more transactions that meet certain conditions. For example, in the case of extracting a transaction whose transfer amount is 1 million yen or more, "1 million yen or more" is a condition to be specified. A list of one or more txp's corresponding to one or more transactions that satisfy the condition can be stored.
  • the txp according to the invention itself has block height and transaction order Is included to speed up the search for the block chain.
  • each method, program, terminal, device, server or system may have aspects that perform operations different from the operations described in the present specification.
  • the aspect is directed to the same operation as any of the operations described herein, and the existence of an operation different from the operations described herein means that the respective methods of the present invention It is added that it is not out of the scope of the embodiment.
  • the form in which the list of one or more txp is stored in each node constituting the block chain network 100 has been described, but any node constituting the block chain network 100 is described. Only, a list of one or more txp may be stored as historical data.
  • the node which may or may not participate in consensus building, functions as an application node that performs the processing required for a particular application.
  • the block chain possessed by any node of the block chain network 100 is accessed from an external computer of the block chain network 100, and the external computer stores a list of one or more txp according to the application. It is also good.
  • the external computer may access the transaction in the block chain based on the stored txp.
  • a node providing such a search function maintain a correspondence such as a correspondence table between block height and its added time or determined time.

Landscapes

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

Abstract

ブロックチェーン・ネットワークにおいて過去のトランザクションに効率的にアクセス可能とするための方法を提供する。第1のノード101は、記憶部101C又は第1のノード101からアクセス可能な記憶装置又は記憶媒体をメモリプールとして蓄積した1又は複数のトランザクションから新たなブロックを生成する(S201)。生成されたブロックは、ブロックチェーン・ネットワーク100においてその採択が合意された場合、各ノードにおいて、ブロックチェーンに追加される(S202)。本発明の実施形態では、さまざまな合意アルゴリズムを採用可能であるが、ファイナリティ(finality)のある合意アルゴリズムであることを条件とする。各ノードでは、追加されたブロックの高さと当該ブロック内における順序とに基づいて、各トランザクションを一意に特定する識別子を生成して記憶する(S203)。

Description

ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法及びノード
 本発明は、ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法及び当該ネットワークを構成するためのノードに関する。
 複数のノードを備えるブロックチェーン・ネットワークにおいて、各ノードは、採択について合意が形成されたブロックが連なったブロックチェーンを有する。各ブロックは、ヘッダと、1又は複数のトランザクションを含むボディとを有する。
 各トランザクションは、当該トランザクションのハッシュ値をその識別子とすることができ、当該識別子は「トランザクションid(txid)」と呼ばれることがある。txidは、過去のトランザクションを参照する際に用いられ、そのディクショナリが必要に応じて、1若しくは複数又はすべてのノードにおいて保持されることがある。
 しかしながら、txidは一般的に32バイトのハッシュ値であり、トランザクションの数が増加すればするだけ、それに対応するtxidのデータが膨大となる。データの肥大化は、txidを用いる際のアクセス速度の低下を招く。
 本発明は、このような問題点に鑑みてなされたものであり、その目的は、ブロックチェーン・ネットワークにおいて過去のトランザクションに効率的にアクセス可能とするための方法及びそのためのプログラム並びに当該ネットワークを構成するためのノードを提供することにある。
 このような目的のために、本発明の第1の態様は、ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法であって、前記ブロックチェーン・ネットワークを構成するノードが、ファイナリティのある合意アルゴリズムの下で合意されたブロックについて、前記ブロックに含まれる各トランザクションに対して、前記ブロックの高さ及び前記ブロック内の順序に基づく識別子を記憶するステップを含むことを特徴とする。
 また、本発明の第2の態様は、第1の態様において、前記ブロックチェーン・ネットワークにおいてトランザクションに関連する1又は複数の条件が指定され、指定された条件と関連するトランザクションに対応する識別子が記憶されることを特徴とする。
 また、本発明の第3の態様は、第2の態様において、前記条件は、仮想通貨又は暗号通貨のアドレスであることを特徴とする。
 また、本発明の第4の態様は、第1から第3のいずれかの態様において、前記識別子は、第1のバイト数のブロック高領域と第2のバイト数の順序領域とを有することを特徴とする。
 また、本発明の第5の態様は、第4の態様において、前記第1のバイト数は、3から4のいずれかであることを特徴とする。
 また、本発明の第6の態様は、第4の態様において、前記第2のバイト数は、1又は2であることを特徴とする。
 また、本発明の第7の態様は、第4から第6のいずれかの態様において、前記識別子のバイト数は、4から6のいずれかであることを特徴とする。
 また、本発明の第8の態様は、コンピュータに、ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法を実行させるためのプログラムであって、前記方法は、前記ブロックチェーン・ネットワークを構成するノードが、ファイナリティのある合意アルゴリズムの下で合意されたブロックについて、前記ブロックに含まれる各トランザクションに対して、前記ブロックの高さ及び前記ブロック内の順序に基づく識別子を記憶するステップを含むことを特徴とする。
 また、本発明の第9の態様は、過去のトランザクションへのアクセスを可能とするブロックチェーン・ネットワークを構成するためのノードであって、ファイナリティのある合意アルゴリズムの下で合意されたブロックについて、前記ブロックに含まれる各トランザクションに対して、前記ブロックの高さ及び前記ブロック内の順序に基づく識別子を記憶することを特徴とする。
 また、本発明の第10の態様は、ブロックチェーン・ネットワークが有する過去のトランザクションにアクセス可能とするための方法であって、前記ブロックチェーン・ネットワークを構成するいずれかのノードが有するブロックチェーンにアクセス可能なコンピュータが、前記ブロックチェーンに含まれる、ファイナリティのある合意アルゴリズムの下で合意されたブロックについて、前記ブロックに含まれる各トランザクションに対して前記ブロックの高さ及び前記ブロック内の順序に基づく識別子を記憶するステップを含むことを特徴とする。
 本発明の一態様によれば、ファイナリティのある合意アルゴリズムの下で合意されたブロックについて、当該ブロックに含まれる1又は複数のトランザクションに対して、当該ブロックの高さ及び当該ブロック内の順序に基づく識別子を用いて各トランザクションを特定することによって、データ量の膨大化を回避することができる。
本発明の一実施形態にかかるブロックチェーン・ネットワークを示す図である。 本発明の一実施形態にかかる過去のトランザクションに効率的にアクセス可能とするための方法を示す図である。
 以下、本発明の実施形態を図面を参照して詳細に説明する。
 (第1の実施形態) 
 図1に、本発明の第1の実施形態にかかるブロックチェーン・ネットワークを示す。ネットワーク100は、第1のノード101と、第2のノード102と、第3のノード103と、第4のノード104とを備える。これらのノードは、それぞれブロックチェーンを有し、新たなブロックの採択にかかる合意形成に参加する。図1では、4個の例を示しているが、これはあくまで例示である。また、合意形成に参加しないノードがネットワーク100に含まれることもある。
 第1のノード101は、通信インターフェースなどの通信部101Aと、プロセッサ、CPU等の処理部101Bと、メモリ、ハードディスク等の記憶装置又は記憶媒体を含む記憶部101Cとを備え、各処理を行うためのプログラムを実行することによって構成することができ、1又は複数の装置ないしサーバを含むことがあり、また当該プログラムは、1又は複数のプログラムを含むことがあり、また、コンピュータ読み取り可能な記憶媒体に記録して非一過性のプログラムプロダクトとすることができる。
 第1のノード101は、記憶部101C又は第1のノード101からアクセス可能な記憶装置又は記憶媒体をメモリプールとして蓄積した1又は複数のトランザクションから新たなブロックを生成する(S201)。
 生成されたブロックは、ブロックチェーン・ネットワーク100においてその採択が合意された場合、各ノードにおいて、ブロックチェーンに追加される(S202)。本実施形態では、さまざまな合意アルゴリズムを採用可能であるが、ファイナリティ(finality)のある合意アルゴリズムであることを条件とする。ここで、「ファイナリティ」とは、あるブロックに対して一度合意が形成されれば正常に振る舞うノードのすべてが当該合意を覆すことがないことを意味する。加えて、追加されたブロックの順序付けが可能であり、かつ、その順序が覆らないことが適当である。
 具体的には、1本のブロックチェーンに何らかの分岐が生じ得る場合、いずれかのチェーンに収束していくとすると、選択されなかったチェーンのためになされた合意は覆ることとなるから、この場合、ファイナリティがない。また、本実施形態では、合意アルゴリズムにファイナリティがあることに加えて、各ブロック内で、1又は複数のトランザクションが順序付け可能であることを条件とする。
 各ノードでは、追加されたブロックの高さと当該ブロック内における順序とに基づいて、各トランザクションを一意に特定する識別子を生成可能である(S203)。ここで、当該識別子を「トランザクションポインタ(txp)」と呼ぶ。生成されたtxpは、第1のノード101について図示するように、データベース101Dに記憶することができる。当然、記憶部101C又は第1のノード101からアクセス可能な記憶装置又は記憶媒体に記憶することもできるが、以下ではデータベース101Dに記憶する例の下で説明を行う。
 上述の説明では、ブロックが追加された後に識別子であるtxpを生成しているが、ブロックの追加前に生成しておくこともできる。ただし、txpが各ノードにおいて有効に記憶されるためには、当該ブロックが追加された後であることは求められる。また、txpは、必ずしもすべてのトランザクションについて生成・記憶される必要はなく、また、ブロック追加の直後に記憶されるのではなく、適宜のタイミングで行ってもよい。
 txpは、たとえばブロックの高さが321で、トランザクションが当該ブロックのボディ内で3番目に配置されている場合、321:3のように示すことができる。先頭の3桁がブロック高を表し、最後の1桁がトランザクションの順序を表す。
 より一般には、txpは、第1のバイト数のブロック高領域と第2のバイト数の順序領域とを有し、例示として、許容するブロックチェーンの高さ及びブロックの大きさに応じて、第1のバイト数を3バイト、第2のバイト数を1バイトとすることが挙げられる。第1のバイト数を3バイトから4バイト、第2のバイト数を1バイトから2バイト、合計して4バイトから6バイト程度とすることで、広範な用途に適したブロックチェーン・ネットワーク100に対応可能である。
 従来は、ブロックチェーンに追加されたブロックに含まれる過去のトランザクションを一意に特定する上で、32バイトのハッシュ値が用いられてきたところ、本実施形態では、追加されたブロックの高さと当該ブロック内における順序とに基づくtxpを特定でき、これを必要に応じて記憶していくことで、データ量を大きく低減して過去のトランザクションへの一意的な参照が可能となる。
 ブロックが追加されると、当該ブロック内に含まれる1又は複数のトランザクションが実行されて、多くの場合、各ノードの状態が変化する。たとえば、仮想通貨又は暗号通貨の送金を行うためのブロックチェーン・ネットワークにおいて、アドレスAからアドレスBに送金を行うトランザクションが実行されると、アドレスAの残高及びアドレスBの残高の状態がそれぞれ変化する。このような入出金が繰り返される際にtxpを用いると、アドレスA及びBの入出金履歴を従来よりも大幅に少ない記憶領域で記憶することができる。
 すなわち、1又は複数のアドレスの入出金履歴を記憶するためには、追加されたブロックに対して、各アドレスをキーとして、当該ブロック内の当該キーに関連するトランザクションに対応するtxpを記憶していけばよい。こうしたtxpの活用は、仮想通貨又は暗号通貨の入出金履歴に限られず、トランザクションが実行されることにより変動する各ノードの状態をキーとして予め又は事後的に指定しておき、当該キーに関連づけられた履歴データを生成することができる。
 また、上記に限らず、より一般には、何らかの条件に合致する1又は複数のトランザクションに関する情報を保存したいときにtxpの活用が可能である。たとえば、送金額が100万円以上のトランザクションを抽出する場合「100万円以上」が指定されるべき条件になる。当該条件を満たす1又はトランザクションに対応する1又は複数のtxpのリストを記憶することができる。
 データ量を抑えて何らかの条件に関連づけれた履歴データを記憶可能であることによって、履歴データへのアクセス速度が向上することに加えて、本発明にかかるtxpは、それ自体にブロック高及びトランザクション順序が含まれているため、ブロックチェーンに対する検索の高速化が図られる。
 なお、「××のみに基づいて」、「××のみに応じて」、「××のみの場合」というように「のみ」との記載がなければ、本明細書においては、付加的な情報も考慮し得ることが想定されていることに留意されたい。
 また、念のため、なんらかの方法、プログラム、端末、装置、サーバ又はシステム(以下「方法等」)において、本明細書で記述された動作と異なる動作を行う側面があるとしても、本発明の各態様は、本明細書で記述された動作のいずれかと同一の動作を対象とするものであり、本明細書で記述された動作と異なる動作が存在することは、当該方法等を本発明の各態様の範囲外とするものではないことを付言する。
 (第2の実施形態) 
 第1の実施形態では、ブロックチェーン・ネットワーク100を構成する各ノードにおいて、1又は複数のtxpのリストの記憶が行われる形態を説明したが、ブロックチェーン・ネットワーク100を構成するいずれかのノードでのみ、1又は複数のtxpのリストを履歴データとして記憶してもよい。当該ノードは、合意形成に参加してもしなくともよく、特定の用途に求められる処理を行うアプリケーションノードとして機能する。
 また、ブロックチェーン・ネットワーク100のいずれかのノードが有するブロックチェーンにブロックチェーン・ネットワーク100の外部コンピュータからアクセスして、当該外部コンピュータにおいて、用途に応じた1又は複数のtxpのリストを記憶してもよい。当該外部コンピュータからは、記憶されたtxpに基づいてブロックチェーン内のトランザクションにアクセスすればよい。
 (第3の実施形態) 
 第1又は第2の実施形態にかかる履歴データは、txpに含まれるブロック高に関する情報が各ブロックの追加時刻に対応することから、日時を指定した検索を行うことができる。たとえば、3日前の午前1時00分以降のブロックに含まれるトランザクションを表すtxpを抽出したり、3日前の午前1時00分以降のブロックに含まれるトランザクションのうち特定の条件を満たすものを抽出したりすることができる。
 このような検索を行うために、このような検索機能を提供するノードは、ブロック高とその追加時刻又は確定時刻との間の対応テーブル等の対応づけを保持するのが望ましい。
 100 ブロックチェーン・ネットワーク
 101 第1のノード
 101A 通信部
 101B 処理部
 101C 記憶部
 101D データベース
 102 第2のノード
 103 第3のノード
 104 第4のノード

 

Claims (10)

  1.  ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法であって、
     前記ブロックチェーン・ネットワークを構成するノードが、ファイナリティのある合意アルゴリズムの下で合意されたブロックについて、前記ブロックに含まれる各トランザクションに対して、前記ブロックの高さ及び前記ブロック内の順序に基づく識別子を記憶するステップを含むことを特徴とする方法。
  2.  前記ブロックチェーン・ネットワークにおいてトランザクションに関連する1又は複数の条件が指定され、
     指定された条件と関連するトランザクションに対応する識別子が記憶されることを特徴とする請求項1に記載の方法。
  3.  前記条件は、仮想通貨又は暗号通貨のアドレスであることを特徴とする請求項2に記載の方法。
  4.  前記識別子は、第1のバイト数のブロック高領域と第2のバイト数の順序領域とを有することを特徴とする請求項1から3のいずれかに記載の方法。
  5.  前記第1のバイト数は、3から4のいずれかであることを特徴とする請求項4に記載の方法。
  6.  前記第2のバイト数は、1又は2であることを特徴とする請求項4に記載の方法。
  7.  前記識別子のバイト数は、4から6のいずれかであることを特徴とする請求項4から6のいずれかに記載の方法。
  8.  コンピュータに、ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法を実行させるためのプログラムであって、前記方法は、
     前記ブロックチェーン・ネットワークを構成するノードが、ファイナリティのある合意アルゴリズムの下で合意されたブロックについて、前記ブロックに含まれる各トランザクションに対して、前記ブロックの高さ及び前記ブロック内の順序に基づく識別子を記憶するステップを含むことを特徴とするプログラム。
  9.  過去のトランザクションへのアクセスを可能とするブロックチェーン・ネットワークを構成するためのノードであって、
     ファイナリティのある合意アルゴリズムの下で合意されたブロックについて、前記ブロックに含まれる各トランザクションに対して、前記ブロックの高さ及び前記ブロック内の順序に基づく識別子を記憶することを特徴とするノード。
  10.  ブロックチェーン・ネットワークが有する過去のトランザクションにアクセス可能とするための方法であって、
     前記ブロックチェーン・ネットワークを構成するいずれかのノードが有するブロックチェーンにアクセス可能なコンピュータが、前記ブロックチェーンに含まれる、ファイナリティのある合意アルゴリズムの下で合意されたブロックについて、前記ブロックに含まれる各トランザクションに対して、前記ブロックの高さ及び前記ブロック内の順序に基づく識別子を記憶するステップを含むことを特徴とする方法。

     
     
PCT/JP2018/046214 2017-12-16 2018-12-15 ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法及びノード WO2019117311A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP18889511.4A EP3726388A4 (en) 2017-12-16 2018-12-15 PROCESS FOR ALLOWING ACCESS TO A PAST TRANSACTION IN A BLOCK CHAIN NETWORK, AND NODE
CN201880089046.1A CN112074818A (zh) 2017-12-16 2018-12-15 用于能够在区块链网络中访问过去的交易的方法及节点
US16/954,139 US20210166220A1 (en) 2017-12-16 2018-12-15 Method for Enabling Access to Past Transaction in Blockchain Network, and Node

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-241256 2017-12-16
JP2017241256A JP2019109635A (ja) 2017-12-16 2017-12-16 ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法及び当該ネットワークを構成するためのノード

Publications (1)

Publication Number Publication Date
WO2019117311A1 true WO2019117311A1 (ja) 2019-06-20

Family

ID=66820456

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/046214 WO2019117311A1 (ja) 2017-12-16 2018-12-15 ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法及びノード

Country Status (5)

Country Link
US (1) US20210166220A1 (ja)
EP (1) EP3726388A4 (ja)
JP (2) JP2019109635A (ja)
CN (1) CN112074818A (ja)
WO (1) WO2019117311A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111275437A (zh) * 2020-01-12 2020-06-12 杭州复杂美科技有限公司 平行链共识方法、设备和存储介质
WO2022007345A1 (zh) * 2020-07-09 2022-01-13 江苏复杂美科技有限公司 区块并行处理方法、设备和存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109102299A (zh) * 2018-08-01 2018-12-28 腾讯科技(深圳)有限公司 资源转移数据管理方法、装置及存储介质
CN109299336B (zh) * 2018-09-30 2022-07-01 腾讯科技(深圳)有限公司 数据备份方法、装置、存储介质及计算设备
US11303442B2 (en) * 2018-10-09 2022-04-12 International Business Machines Corporation Blockchain notification board storing blockchain resources
CN110727712B (zh) * 2019-10-15 2021-06-04 腾讯科技(深圳)有限公司 基于区块链网络的数据处理方法、装置、电子设备及存储介质
JP7144490B2 (ja) * 2020-08-04 2022-09-29 株式会社三菱Ufj銀行 システム及びプログラム
JP7308887B2 (ja) * 2020-08-04 2023-07-14 株式会社三菱Ufj銀行 システム及びプログラム
CN115293769B (zh) * 2022-10-08 2022-12-27 中铱数字科技有限公司 一种基于区块链的动态管理和校验节点系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160330031A1 (en) * 2015-05-06 2016-11-10 21, Inc. Digital currency mining circuitry with adaptable difficulty compare capabilities
JP2017091148A (ja) * 2015-11-09 2017-05-25 日本電信電話株式会社 ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム
JP2017123692A (ja) * 2017-03-22 2017-07-13 株式会社bitFlyer 存在証明装置、存在証明方法、及びそのためのプログラム
WO2017170997A1 (ja) * 2016-03-31 2017-10-05 株式会社bitFlyer 階層型ネットワークシステム、これに用いられるノード及びプログラム
CN107273556A (zh) * 2017-08-23 2017-10-20 上海点融信息科技有限责任公司 区块链数据索引方法和设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3317775B1 (en) * 2015-07-02 2022-02-16 Nasdaq, Inc. Systems and methods of secure provenance for distributed transaction databases
US10204341B2 (en) * 2016-05-24 2019-02-12 Mastercard International Incorporated Method and system for an efficient consensus mechanism for permissioned blockchains using bloom filters and audit guarantees
CN107395353B (zh) * 2017-04-24 2020-01-31 阿里巴巴集团控股有限公司 一种区块链共识方法及装置
CN111247547A (zh) * 2017-05-26 2020-06-05 区块链控股有限公司 基于脚本的区块链交互
CN107330681B (zh) * 2017-06-27 2021-04-13 陈佺 一种用于确定区块链链外交易的交易时间的方法及设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160330031A1 (en) * 2015-05-06 2016-11-10 21, Inc. Digital currency mining circuitry with adaptable difficulty compare capabilities
JP2017091148A (ja) * 2015-11-09 2017-05-25 日本電信電話株式会社 ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム
WO2017170997A1 (ja) * 2016-03-31 2017-10-05 株式会社bitFlyer 階層型ネットワークシステム、これに用いられるノード及びプログラム
JP2017123692A (ja) * 2017-03-22 2017-07-13 株式会社bitFlyer 存在証明装置、存在証明方法、及びそのためのプログラム
CN107273556A (zh) * 2017-08-23 2017-10-20 上海点融信息科技有限责任公司 区块链数据索引方法和设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3726388A4 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111275437A (zh) * 2020-01-12 2020-06-12 杭州复杂美科技有限公司 平行链共识方法、设备和存储介质
CN111275437B (zh) * 2020-01-12 2023-05-30 杭州复杂美科技有限公司 平行链共识方法、设备和存储介质
WO2022007345A1 (zh) * 2020-07-09 2022-01-13 江苏复杂美科技有限公司 区块并行处理方法、设备和存储介质

Also Published As

Publication number Publication date
EP3726388A1 (en) 2020-10-21
JP2019110511A (ja) 2019-07-04
US20210166220A1 (en) 2021-06-03
JP6362805B1 (ja) 2018-07-25
CN112074818A (zh) 2020-12-11
EP3726388A4 (en) 2021-10-06
JP2019109635A (ja) 2019-07-04

Similar Documents

Publication Publication Date Title
WO2019117311A1 (ja) ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法及びノード
JP6928104B2 (ja) ブロック・チェーンにサービス・データを書き込むための方法および装置、ならびにサービス・サブセットを判定するための方法
JP6875557B2 (ja) サービス・データをブロックチェーン・システムに書き込むための方法およびデバイス
CN108389118B (zh) 资产管理系统、方法及装置、电子设备
TWI728654B (zh) 資料儲存方法及節點
TWI737152B (zh) 基於區塊鏈的分級儲存方法及裝置、電子設備
TW202101249A (zh) 基於區塊鏈的分級儲存方法及裝置、電子設備
US20210109920A1 (en) Method for Validating Transaction in Blockchain Network and Node for Configuring Same Network
TWI725728B (zh) 基於區塊鏈的分級儲存方法及裝置、電子設備
TW202016815A (zh) 一種並行化執行區塊鏈交易的方法、裝置及系統
CN108121810A (zh) 一种数据去重方法、系统、中心服务器及分布式服务器
TWI694700B (zh) 資料處理方法和裝置、用戶端
CN105335855A (zh) 一种交易风险识别方法及装置
JP2020531949A (ja) ブロックチェーン内のデータベース・ハッシュコードの遅延更新
CN109951541A (zh) 一种流水号生成方法及服务器
CN109145053B (zh) 数据处理方法和装置、客户端、服务器
JP6467540B1 (ja) ブロックチェーン・ネットワークにおいてトランザクションを検証するための方法及び当該ネットワークを構成するためのノード
CN110019205A (zh) 一种数据存储、还原方法、装置及计算机设备
CN103077198B (zh) 一种操作系统及其文件缓存定位方法
CN106302374A (zh) 一种用于提高表项访问带宽和原子性操作的装置及方法
CN109871260B (zh) 一种基于容器间共享内存的多维度服务限流方法及系统
JP2016045594A (ja) データ処理装置、データ処理方法及びデータ処理プログラム
CN114466012A (zh) 内容初始化方法、装置、电子设备和存储介质
CN109032804B (zh) 数据处理方法和装置、服务器
CN109033468A (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: 18889511

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2018889511

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2018889511

Country of ref document: EP

Effective date: 20200716