JP2021048430A - Transaction recording device, transaction recording method, and transaction recording program - Google Patents

Transaction recording device, transaction recording method, and transaction recording program Download PDF

Info

Publication number
JP2021048430A
JP2021048430A JP2019167925A JP2019167925A JP2021048430A JP 2021048430 A JP2021048430 A JP 2021048430A JP 2019167925 A JP2019167925 A JP 2019167925A JP 2019167925 A JP2019167925 A JP 2019167925A JP 2021048430 A JP2021048430 A JP 2021048430A
Authority
JP
Japan
Prior art keywords
transaction
blockchain
data
sub
aggregated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019167925A
Other languages
Japanese (ja)
Other versions
JP7322621B2 (en
Inventor
俊也 清水
Toshiya Shimizu
俊也 清水
藤本 真吾
Shingo Fujimoto
真吾 藤本
正信 森永
Masanobu Morinaga
正信 森永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2019167925A priority Critical patent/JP7322621B2/en
Publication of JP2021048430A publication Critical patent/JP2021048430A/en
Application granted granted Critical
Publication of JP7322621B2 publication Critical patent/JP7322621B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

To provide a transaction recording device, a transaction recording method, and a transaction recording program to prevent a blockchain from being enlarged.SOLUTION: A transaction recording device 10 participates in a network sharing a first blockchain, and includes an acquisition unit 21, a generation unit 22, and a registration processing unit 33. The acquisition unit acquires information from a second blockchain in which a transaction time and data related to a transaction performed at the transaction time are registered. The generation unit uses the information acquired by the acquisition unit to generate aggregated data obtained by aggregating data related to transactions performed during a predetermined period. The registration processing unit registers aggregated data in the first blockchain when the aggregated data matches other aggregated data generated from data about transactions made during a predetermined period of time in other transaction recording devices participating in the network.SELECTED DRAWING: Figure 2

Description

本発明は、取引記録装置、取引記録方法、および、取引記録プログラムに関する。 The present invention relates to a transaction recording device, a transaction recording method, and a transaction recording program.

取引記録を1つのブロックにまとめ、ブロック同士をチェーンのように繋げるブロックチェーンの技術が知られている。ブロックチェーンは、デジタル仮想通貨のサービスでよく用いられる。この場合、仮想通貨の取引情報(トランザクション)がブロックと呼ばれる単位でまとめられ、ネットワークを介して参加者が共有する台帳情報が生成される。近年、ブロックチェーン技術を、コンテンツ管理、著作権情報管理、サプライチェーン、電力の取引など、仮想通貨以外のサービスにも適用する試みが行われている。 There is known a blockchain technology that collects transaction records into one block and connects the blocks like a chain. Blockchain is often used in digital cryptocurrency services. In this case, transaction information (transactions) of virtual currency is collected in units called blocks, and ledger information shared by participants via a network is generated. In recent years, attempts have been made to apply blockchain technology to services other than virtual currencies, such as content management, copyright information management, supply chain, and power trading.

関連する技術として、トランザクション情報中の一次情報をブロック生成検証装置の一時情報用データ格納領域に格納し、一時情報を含まない格納用ブロックを台帳データにつなげるシステムが提案されている(例えば、特許文献1など)。また、複数のノードが参加しているグループで共有されるデータに対するトランザクションを、その複数のノードの一定割合のノードから承認信号を受信した場合に実行する信号処理方法も知られている(例えば、特許文献2など)。さらに、下位ネットワークから上位ネットワークに引き渡す資産の総量を、上位ネットワークより受け取った資産の総量以下にするシステムも提案されている(例えば、特許文献3など)。 As a related technology, a system has been proposed in which primary information in transaction information is stored in a temporary information data storage area of a block generation verification device, and a storage block that does not include temporary information is connected to ledger data (for example, a patent). Reference 1 etc.). There is also known a signal processing method that executes a transaction for data shared by a group in which a plurality of nodes participates when an approval signal is received from a certain percentage of the nodes of the plurality of nodes (for example,). Patent Document 2 etc.). Further, a system has been proposed in which the total amount of assets delivered from the lower network to the upper network is less than or equal to the total amount of assets received from the upper network (for example, Patent Document 3).

特開2018−112827号公報Japanese Unexamined Patent Publication No. 2018-112827 国際公開第2018/154793号International Publication No. 2018/154793 特開2018−166000号公報Japanese Unexamined Patent Publication No. 2018-166000

ブロックチェーン技術が電力の取引に使用される場合、ブロックチェーンではデータの改ざんが困難なことから、電力の取引情報や発電量などの計測データをブロックチェーンで管理することが考えられる。ブロックチェーンでは、情報が複数の装置によって分散的に共有されるが、大量のデータをブロックチェーンに記録すると各装置が保持するデータ量も増大するため、データの維持管理が困難になる。従って、電力の取引情報や発電量などの計測データをブロックチェーンで管理すると、ブロックチェーンが肥大化するという問題が発生するが、ブロックチェーンを用いてこれらの情報を管理しないと、情報が改ざんされてしまうおそれがある。電力の取引に限らず、仮想通貨を含む様々な他の取引にブロックチェーンを使用する場合にも同様の問題が発生する。また、関連する技術として述べた技術を用いても、この問題は解決されない。 When blockchain technology is used for electricity trading, it is difficult to falsify data with blockchain, so it is conceivable to manage measurement data such as electricity transaction information and power generation amount with blockchain. In a blockchain, information is distributed and shared by a plurality of devices, but when a large amount of data is recorded in the blockchain, the amount of data held by each device also increases, which makes it difficult to maintain and manage the data. Therefore, if the blockchain manages measurement data such as power transaction information and power generation amount, there will be a problem that the blockchain will become bloated, but if this information is not managed using the blockchain, the information will be tampered with. There is a risk that it will end up. Similar problems occur when using blockchain not only for electricity transactions but also for various other transactions including virtual currencies. Also, using the techniques described as related techniques does not solve this problem.

本発明は、1つの側面として、ブロックチェーンの肥大化を防止することを目的とする。 One aspect of the present invention is to prevent the blockchain from becoming bloated.

ある1つの態様にかかる取引記録装置は、第1のブロックチェーンを共有するネットワークに参加し、取得部、生成部、および、登録処理部を備える。取得部は、取引時刻と前記取引時刻に行われた取引に関するデータが登録された第2のブロックチェーンから情報を取得する。生成部は、前記取得部が取得した前記情報を用いて、所定の期間中に行われた前記取引に関するデータを集約した集約データを生成する。登録処理部は、前記集約データが、前記ネットワークに参加している他の取引記録装置での前記所定の期間中に行われた前記取引に関するデータから生成された他の集約データと一致する場合に、前記集約データを前記第1のブロックチェーンに登録する。 A transaction recording device according to one embodiment participates in a network sharing a first blockchain and includes an acquisition unit, a generation unit, and a registration processing unit. The acquisition unit acquires information from the second blockchain in which the transaction time and the data related to the transaction performed at the transaction time are registered. The generation unit uses the information acquired by the acquisition unit to generate aggregated data that aggregates data related to the transactions performed during a predetermined period. When the registration processing unit matches the aggregated data with other aggregated data generated from the data relating to the transaction performed during the predetermined period in other transaction recording devices participating in the network. , The aggregated data is registered in the first blockchain.

ブロックチェーンの肥大化を防止する。 Prevent blockchain bloat.

実施形態にかかる取引の記録を行うシステムの例を説明する図である。It is a figure explaining the example of the system which records the transaction concerning embodiment. 取引記録装置の構成の例を説明する図である。It is a figure explaining the example of the structure of the transaction recording apparatus. サブブロックチェーンノードの構成の例を説明する図である。It is a figure explaining the example of the configuration of the sub blockchain node. ハードウェア構成の例を説明する図である。It is a figure explaining an example of a hardware configuration. 取引データの例を説明する図である。It is a figure explaining the example of transaction data. 取引データの登録処理の例を説明するシーケンス図である。It is a sequence diagram explaining the example of the registration process of transaction data. データ集約モデルの例を説明する図である。It is a figure explaining an example of a data aggregation model. 集約データの生成処理の例を説明するシーケンス図である。It is a sequence diagram explaining an example of the generation process of aggregated data. 集約データの例を説明する図である。It is a figure explaining an example of aggregated data. 検証処理の例を説明するシーケンス図である。It is a sequence diagram explaining an example of a verification process. 最終的に発行されるトランザクションの例を説明する図である。It is a figure explaining the example of the transaction which is finally issued. 第1の実施形態にかかる処理の例を説明するフローチャートである。It is a flowchart explaining the example of the process which concerns on 1st Embodiment. 第2の実施形態にかかるシステムの例を説明する図である。It is a figure explaining the example of the system which concerns on 2nd Embodiment. サブブロックチェーンノードの構成の例を説明する図である。It is a figure explaining the example of the configuration of the sub blockchain node. サブブロックチェーンの切り替え処理の例を説明する図である。It is a figure explaining the example of the sub-blockchain switching process. サブブロックチェーンの切り替え処理の例を説明するフローチャートである。It is a flowchart explaining an example of a sub-blockchain switching process.

図1は、実施形態にかかる取引の記録を行うシステムの例を説明する図である。図1に示すシステムは、端末6(6a〜6e)、サブブロックチェーンノード50(50a、50b)、取引記録装置10(10a〜10d)を含み、メインブロックチェーン1とサブブロックチェーン5を有する。サブブロックチェーンノード50の各々はサブブロックチェーン5で記録された情報の分散台帳を保持するものとする。一方、取引記録装置10は、サブブロックチェーン5中の情報を取得できるが、サブブロックチェーン5に登録された情報の分散台帳を保持していないとする。さらに、取引記録装置10は、メインブロックチェーン1に記録された情報の分散台帳を保持しているものとする。 FIG. 1 is a diagram illustrating an example of a system for recording transactions according to an embodiment. The system shown in FIG. 1 includes terminals 6 (6a to 6e), subblockchain nodes 50 (50a, 50b), transaction recording devices 10 (10a-10d), and has a main blockchain 1 and a subblockchain 5. Each of the sub-blockchain nodes 50 shall hold a distributed ledger of information recorded in the sub-blockchain 5. On the other hand, it is assumed that the transaction recording device 10 can acquire the information in the sub-blockchain 5, but does not hold the distributed ledger of the information registered in the sub-blockchain 5. Further, it is assumed that the transaction recording device 10 holds a distributed ledger of information recorded in the main blockchain 1.

各端末6は、測定などによって得られた情報をサブブロックチェーンノード50に送信する。例えば、端末6は、任意のIoT(Internet of Things)機器端末であり得る。例えば、端末6が発電量の測定メータなどの電力の取引に使用される機器端末である場合、端末6からサブブロックチェーンノード50に通知される情報は、発電量や電気の使用量などに関する情報である。サブブロックチェーンノード50は、端末6から受信した情報をサブブロックチェーン5に登録する。なお、登録処理の際に、サブブロックチェーンノード50は、データの送信元の端末6がサブブロックチェーン5へのアクセス権を有するかなどの確認を行い、アクセス権を有する端末6から受信した情報をサブブロックチェーン5に登録しても良い。図1の例では、端末6a〜6cはサブブロックチェーンノード50aを介してデータの登録処理を行い、端末6d〜6eはサブブロックチェーンノード50bを介してデータの登録処理を行う。 Each terminal 6 transmits the information obtained by measurement or the like to the sub-blockchain node 50. For example, the terminal 6 can be any IoT (Internet of Things) device terminal. For example, when the terminal 6 is a device terminal used for power trading such as a meter for measuring the amount of power generation, the information notified from the terminal 6 to the sub-blockchain node 50 is information on the amount of power generation, the amount of electricity used, and the like. Is. The sub-blockchain node 50 registers the information received from the terminal 6 in the sub-blockchain 5. At the time of the registration process, the sub-blockchain node 50 confirms whether the terminal 6 that is the source of the data has the access right to the sub-blockchain 5, and the information received from the terminal 6 that has the access right. May be registered in the sub-blockchain 5. In the example of FIG. 1, the terminals 6a to 6c perform data registration processing via the sub-blockchain node 50a, and the terminals 6d to 6e perform data registration processing via the sub-blockchain node 50b.

取引記録装置10a〜10dの各々は、サブブロックチェーン5に登録された取引データについて、所定の期間中のデータを集計することにより、集約データを生成する。例えば、集約データは端末6ごとに所定の期間中のデータを用いて計算され得る。取引記録装置10a〜10dの各々は、他の取引記録装置10が同じ端末6についての同じ期間に対して計算した集約データを取得するとともに、取得した集約データが自装置で計算した集約データと一致するかを判定する。取引記録装置10が計算した集約データを他の取引記録装置10に通知する際には、例えば、集約データを含むトランザクション(集約データトランザクション)が使用される。さらに、各取引記録装置10は、受信した集約トランザクション中の集約データが自装置で計算した集約データと一致すると判定した際に署名を行い、署名した集約データを他の取引記録装置10に送信する。なお、取引記録装置10が比較する集約データを取得する方法や署名した集約データを送信する方法などは、取引記録装置10間で共有しているメインブロックチェーン1で採用されているアルゴリズムに従った任意の方法であるとする。 Each of the transaction recording devices 10a to 10d generates aggregated data by aggregating the data of the transaction data registered in the sub-blockchain 5 during a predetermined period. For example, the aggregated data can be calculated for each terminal 6 using the data during a predetermined period. Each of the transaction recording devices 10a to 10d acquires the aggregated data calculated by the other transaction recording devices 10 for the same period for the same terminal 6, and the acquired aggregated data matches the aggregated data calculated by the own device. Determine if you want to. When notifying another transaction recording device 10 of the aggregated data calculated by the transaction recording device 10, for example, a transaction including the aggregated data (aggregated data transaction) is used. Further, each transaction recording device 10 signs when it is determined that the aggregated data in the received aggregated transaction matches the aggregated data calculated by its own device, and transmits the signed aggregated data to another transaction recording apparatus 10. .. The method of acquiring the aggregated data to be compared by the transaction recording device 10 and the method of transmitting the signed aggregated data follow the algorithm adopted in the main blockchain 1 shared between the transaction recording devices 10. It is assumed to be any method.

各取引記録装置10は、自装置が計算した集約データに対して一定数以上の取引記録装置10が署名すると、自装置が計算した集約データが正しいと判定して、メインブロックチェーン1の分散台帳情報に記録する。このため、サブブロックチェーン5中の情報を用いて計算した集約データのうち、メインブロックチェーン1に参加している取引記録装置10の所定の割合の装置が正しいと判定した集約データがメインブロックチェーン1に記録される。 When a certain number or more of the transaction recording devices 10 sign the aggregated data calculated by the own device, each transaction recording device 10 determines that the aggregated data calculated by the own device is correct, and the distributed ledger of the main blockchain 1 Record in information. Therefore, among the aggregated data calculated using the information in the sub-blockchain 5, the aggregated data in which a predetermined ratio of the transaction recording devices 10 participating in the main blockchain 1 is determined to be correct is the main blockchain. Recorded in 1.

このように、図1に示すシステムでは、メインブロックチェーン1には端末6から得られた取引データは含まれず、所定期間ごとに集約された集約データが記録される。換言すると、図1に示すシステムでは個々の取引データの代わりに集約データがメインブロックチェーン1に記録される。このため、メインブロックチェーン1に記録される情報の量は、端末6で得られた個々の取引データの全てを記録する場合に比べて削減される。さらに、端末6で得られた個々の取引データは、メインブロックチェーン1とは異なるサブブロックチェーン5に記録されている。このため、実施形態にかかるシステムでは、メインブロックチェーン1に記録する集約データの計算のもととなる端末6で得られた取引履歴の改ざんも防止できる。 As described above, in the system shown in FIG. 1, the main blockchain 1 does not include the transaction data obtained from the terminal 6, and the aggregated data aggregated for each predetermined period is recorded. In other words, in the system shown in FIG. 1, aggregated data is recorded in the main blockchain 1 instead of individual transaction data. Therefore, the amount of information recorded in the main blockchain 1 is reduced as compared with the case of recording all of the individual transaction data obtained by the terminal 6. Further, the individual transaction data obtained by the terminal 6 is recorded in the sub-blockchain 5 which is different from the main blockchain 1. Therefore, in the system according to the embodiment, falsification of the transaction history obtained by the terminal 6 which is the basis of the calculation of the aggregated data recorded in the main blockchain 1 can be prevented.

なお、図1は、システムの一例であり、システム中で使用される端末6、サブブロックチェーンノード50、取引記録装置10の数は、いずれも実装に応じて任意に変更され得る。例えば、端末6は、IoT機器以外の装置であっても良い。また、端末6が測定する情報の種類も実装に応じて任意に変更され得る。例えば、端末6は、図1のシステムの用途に応じて、電力の販売に関する情報以外の情報を測定しても良い。 Note that FIG. 1 is an example of a system, and the numbers of terminals 6, sub-blockchain nodes 50, and transaction recording devices 10 used in the system can all be arbitrarily changed according to the implementation. For example, the terminal 6 may be a device other than the IoT device. Further, the type of information measured by the terminal 6 can be arbitrarily changed according to the implementation. For example, the terminal 6 may measure information other than the information related to the sale of electric power, depending on the use of the system shown in FIG.

<装置構成>
図2は、取引記録装置10の構成の例を説明する図である。取引記録装置10は、制御部15と記憶部40を備える。記憶部40は、メインブロックチェーン(BC)台帳41、設定情報42、および、公開鍵情報43を記憶する。記憶部40は、さらに、取引記録装置10自身が暗号化に使用する秘密鍵も保持する。
<Device configuration>
FIG. 2 is a diagram illustrating an example of the configuration of the transaction recording device 10. The transaction recording device 10 includes a control unit 15 and a storage unit 40. The storage unit 40 stores the main blockchain (BC) ledger 41, the setting information 42, and the public key information 43. The storage unit 40 also holds a private key used by the transaction recording device 10 itself for encryption.

メインブロックチェーン台帳41は、メインブロックチェーン1を用いて共有される情報を記録する。なお、集約データを計算するための期間の情報や計算対象の端末6の情報などの、集約データを計算するために使用される情報は、メインブロックチェーン1を用いて取引記録装置10間で共有されるものとする。設定情報42は、取引記録装置10が他の取引記録装置10との間で集約データの計算結果や署名付きの情報を交換する際の確認の順序などの設定情報が含まれる。公開鍵情報43は、取引記録装置10の識別情報と、その識別情報で識別される取引記録装置10が暗号化に使用する秘密鍵の対となっている公開鍵を対応付けた情報である。なお、公開鍵情報43は、メインブロックチェーン1で共有されていても良い。公開鍵情報43がメインブロックチェーン1で共有される場合、各取引記録装置10は、メインブロックチェーン台帳41を参照することにより公開鍵の情報を取得しても良い。 The main blockchain ledger 41 records information shared using the main blockchain 1. Information used for calculating aggregated data, such as period information for calculating aggregated data and information on the terminal 6 to be calculated, is shared among transaction recording devices 10 using the main blockchain 1. It shall be done. The setting information 42 includes setting information such as a calculation result of aggregated data and a confirmation order when the transaction recording device 10 exchanges signed information with another transaction recording device 10. The public key information 43 is information in which the identification information of the transaction recording device 10 is associated with the public key that is a pair of the private key used for encryption by the transaction recording device 10 identified by the identification information. The public key information 43 may be shared by the main blockchain 1. When the public key information 43 is shared by the main blockchain 1, each transaction recording device 10 may acquire the public key information by referring to the main blockchain ledger 41.

制御部15は、集約処理部20とメインブロックチェーン(BC)制御部30を有する。集約処理部20は、取得部21と生成部22を有する。取得部21は、メインブロックチェーン1で共有している条件に従って、サブブロックチェーン5で共有されている情報を取得する。なお、取得部21は、サブブロックチェーン5で共有されている情報を取得するためにアクセスするサブブロックチェーンノード50のアドレスなどの情報を予め保持しているか、記憶部40から取得可能であるものとする。生成部22は、取得部21が取得した情報を用いて集約データを計算する。 The control unit 15 has an aggregation processing unit 20 and a main blockchain (BC) control unit 30. The aggregation processing unit 20 has an acquisition unit 21 and a generation unit 22. The acquisition unit 21 acquires the information shared by the sub-blockchain 5 according to the conditions shared by the main blockchain 1. The acquisition unit 21 holds in advance information such as the address of the sub-blockchain node 50 to be accessed in order to acquire the information shared by the sub-blockchain 5, or can be acquired from the storage unit 40. And. The generation unit 22 calculates the aggregated data using the information acquired by the acquisition unit 21.

メインブロックチェーン制御部30は、トランザクション受信部31、トランザクション発行部32、および、登録処理部33を有する。トランザクション受信部31は、他の取引記録装置10などの他の装置から送信されたトランザクションを受信する。トランザクション発行部32は、他の取引記録装置10などの他の装置にトランザクションを送信する。登録処理部33は、他の取引記録装置10から受信したトランザクション中に含まれている集約データの検証処理を行う。さらに、登録処理部33は、所定の割合以上の取引記録装置10の間で集約データの計算結果が一致した場合、集約データが正しいと判定して、メインブロックチェーン1に登録するための処理を行う。 The main blockchain control unit 30 includes a transaction receiving unit 31, a transaction issuing unit 32, and a registration processing unit 33. The transaction receiving unit 31 receives a transaction transmitted from another device such as another transaction recording device 10. The transaction issuing unit 32 transmits a transaction to another device such as another transaction recording device 10. The registration processing unit 33 performs verification processing of aggregated data included in the transaction received from the other transaction recording device 10. Further, the registration processing unit 33 determines that the aggregated data is correct when the calculation results of the aggregated data match between the transaction recording devices 10 having a predetermined ratio or more, and performs a process for registering the aggregated data in the main blockchain 1. Do.

図3は、サブブロックチェーンノード50の構成の例を説明する図である。サブブロックチェーンノード50は、サブブロックチェーン制御部60と記憶部70を備える。記憶部70は、サブブロックチェーン(BC)台帳71を記憶する。サブブロックチェーン台帳71には、サブブロックチェーン5を用いて共有される情報が記録されている。 FIG. 3 is a diagram illustrating an example of the configuration of the sub-blockchain node 50. The sub-blockchain node 50 includes a sub-blockchain control unit 60 and a storage unit 70. The storage unit 70 stores the sub-blockchain (BC) ledger 71. Information shared by the sub-blockchain 5 is recorded in the sub-blockchain ledger 71.

サブブロックチェーン制御部60は、トランザクション受信部61、トランザクション発行部62、および、登録処理部63を有する。トランザクション受信部61は、端末6や他のサブブロックチェーンノード50などの他の装置から送信されたトランザクションを受信する。トランザクション発行部62は、他のサブブロックチェーンノード50などの他の装置にトランザクションを送信する。登録処理部63は、端末6から受信したトランザクション中に含まれている取引データをサブブロックチェーン5に登録するための処理を行う。 The sub-blockchain control unit 60 includes a transaction receiving unit 61, a transaction issuing unit 62, and a registration processing unit 63. The transaction receiving unit 61 receives a transaction transmitted from another device such as the terminal 6 or another sub-blockchain node 50. The transaction issuing unit 62 transmits a transaction to another device such as another sub-blockchain node 50. The registration processing unit 63 performs a process for registering the transaction data included in the transaction received from the terminal 6 in the sub-blockchain 5.

図4は、ハードウェア構成の例を説明する図である。取引記録装置10とサブブロックチェーンノード50のいずれも、プロセッサ101、メモリ102、バス105、ネットワークインタフェース109を備える。さらに、取引記録装置10とサブブロックチェーンノード50のいずれも、入力装置103、出力装置104、記憶装置106、可搬記憶媒体駆動装置107の1つ以上を有していても良い。取引記録装置10およびサブブロックチェーンノード50は、例えば、コンピュータ、サーバ装置などによって実現され得る。 FIG. 4 is a diagram illustrating an example of a hardware configuration. Both the transaction recording device 10 and the subblockchain node 50 include a processor 101, a memory 102, a bus 105, and a network interface 109. Further, each of the transaction recording device 10 and the sub-blockchain node 50 may have one or more of the input device 103, the output device 104, the storage device 106, and the portable storage medium drive device 107. The transaction recording device 10 and the sub-blockchain node 50 can be realized by, for example, a computer, a server device, or the like.

プロセッサ101は、任意の処理回路であり、例えば、Central Processing Unit(CPU)とすることができる。プロセッサ101は、例えば、メモリ102や記憶装置106に記憶されたプログラムを実行することができる。メモリ102は、プロセッサ101の動作により得られたデータや、プロセッサ101の処理に用いられるデータを、適宜、記憶する。記憶装置106は、プログラムやデータなどを格納し、格納している情報を、適宜、プロセッサ101などに提供する。ネットワークインタフェース109は、取引記録装置10またはサブブロックチェーンノード50が他の装置と通信するための処理を行う。 The processor 101 is an arbitrary processing circuit, and can be, for example, a Central Processing Unit (CPU). The processor 101 can execute, for example, a program stored in the memory 102 or the storage device 106. The memory 102 appropriately stores the data obtained by the operation of the processor 101 and the data used for the processing of the processor 101. The storage device 106 stores programs, data, and the like, and appropriately provides the stored information to the processor 101 and the like. The network interface 109 performs a process for the transaction recording device 10 or the sub-blockchain node 50 to communicate with another device.

バス105は、プロセッサ101、メモリ102、入力装置103、出力装置104、記憶装置106、可搬記憶媒体駆動装置107、ネットワークインタフェース109を、相互にデータの送受信が可能になるように接続する。入力装置103は、キーボード、マウス、マイク、カメラなど、情報の入力に使用される任意の装置であり、出力装置104は、ディスプレイなど、データの出力に使用される任意の装置である。可搬記憶媒体駆動装置107は、メモリ102や記憶装置106のデータを可搬記憶媒体108に出力することができ、また、可搬記憶媒体108からプログラムやデータ等を読み出すことができる。ここで、可搬記憶媒体108は、Compact Disc Recordable(CD−R)やDigital Versatile Disk Recordable(DVD−R)を含む、持ち運びが可能な任意の記憶媒体とすることができる。 The bus 105 connects the processor 101, the memory 102, the input device 103, the output device 104, the storage device 106, the portable storage medium drive device 107, and the network interface 109 so that data can be transmitted and received to each other. The input device 103 is an arbitrary device used for inputting information such as a keyboard, mouse, microphone, and camera, and the output device 104 is an arbitrary device used for data output such as a display. The portable storage medium driving device 107 can output the data of the memory 102 and the storage device 106 to the portable storage medium 108, and can read programs, data, and the like from the portable storage medium 108. Here, the portable storage medium 108 can be any portable storage medium, including a Compact Disc Recordable (CD-R) and a Digital Versatile Disk Recordable (DVD-R).

取引記録装置10において、プロセッサ101とネットワークインタフェース109は、制御部15として動作する。メモリ102および記憶装置106は、記憶部40として動作する。 In the transaction recording device 10, the processor 101 and the network interface 109 operate as the control unit 15. The memory 102 and the storage device 106 operate as the storage unit 40.

サブブロックチェーンノード50において、プロセッサ101とネットワークインタフェース109は、サブブロックチェーン制御部60として動作する。メモリ102および記憶装置106は、記憶部70として動作する。 In the sub-blockchain node 50, the processor 101 and the network interface 109 operate as the sub-blockchain control unit 60. The memory 102 and the storage device 106 operate as the storage unit 70.

<第1の実施形態>
以下、第1の実施形態を、取引データの登録、データ集約モデルの登録と集約データの生成、集約データの検証と登録に分けて説明する。以下の説明では、端末6が発電量測定メータであり、電力の取引に使用される発電量を所定の周期で計測している場合を例として説明する。この場合、集約データは、端末6ごとの所定期間内の発電量である。
<First Embodiment>
Hereinafter, the first embodiment will be described separately for registration of transaction data, registration of data aggregation model and generation of aggregated data, and verification and registration of aggregated data. In the following description, a case where the terminal 6 is a power generation amount measuring meter and the amount of power generation used for electric power trading is measured at a predetermined cycle will be described as an example. In this case, the aggregated data is the amount of power generated within a predetermined period for each terminal 6.

また、以下の説明では、処理を行っている取引記録装置10などを明確にするために、処理を行っている取引記録装置10などの装置の符号の末尾のアルファベットを符号の末尾に示すことがある。例えば、登録処理部33aは取引記録装置10aの登録処理部33であり、メインブロックチェーン台帳41bは取引記録装置10bのメインブロックチェーン台帳41である。 Further, in the following description, in order to clarify the transaction recording device 10 or the like performing the processing, the alphabet at the end of the code of the device such as the transaction recording device 10 performing the processing may be indicated at the end of the code. is there. For example, the registration processing unit 33a is the registration processing unit 33 of the transaction recording device 10a, and the main blockchain ledger 41b is the main blockchain ledger 41 of the transaction recording device 10b.

(1)取引データの登録
図5は、取引データの例を説明する図である。図5の取引データは、端末6からサブブロックチェーンノード50に送信される取引データ登録トランザクションに含まれる。図5の例では、取引データ登録トランザクションには、トランザクション番号、送信元の機器の識別情報(測定器名)、発電量、時刻が含まれる。例えば、端末6aの測定器名がAであるとする。また、端末6aは、15:00に0.1kwhの発電が行われたことを計測したとする。すると、測定器名=A、発電量=0.1kwh、時刻=15:00の情報を含む取引データ登録トランザクションを生成する。図5の例では、生成されたトランザクションの番号は1である。
(1) Registration of transaction data FIG. 5 is a diagram illustrating an example of transaction data. The transaction data of FIG. 5 is included in the transaction data registration transaction transmitted from the terminal 6 to the sub-blockchain node 50. In the example of FIG. 5, the transaction data registration transaction includes a transaction number, identification information (measuring instrument name) of the source device, power generation amount, and time. For example, assume that the measuring instrument name of the terminal 6a is A. Further, it is assumed that the terminal 6a measures that 0.1 kwh of power generation is performed at 15:00. Then, a transaction data registration transaction including information of measuring instrument name = A, power generation amount = 0.1 kwh, and time = 15:00 is generated. In the example of FIG. 5, the generated transaction number is 1.

図6は、取引データの登録処理の例を説明するシーケンス図である。図5に示す取引データトランザクションを発行した端末6は、発行した取引データ登録トランザクションをサブブロックチェーンノード50に送信する(ステップS1)。なお、各端末6は、その端末6が取引データトランザクションを送信する先のサブブロックチェーンノード50のアドレス情報などを予め記憶しているものとする。サブブロックチェーンノード50のトランザクション受信部61は、取引データ登録トランザクションを受信すると登録処理部63に出力する(ステップS2)。 FIG. 6 is a sequence diagram illustrating an example of transaction data registration processing. The terminal 6 that has issued the transaction data transaction shown in FIG. 5 transmits the issued transaction data registration transaction to the sub-blockchain node 50 (step S1). It is assumed that each terminal 6 stores in advance the address information and the like of the sub-blockchain node 50 to which the terminal 6 transmits the transaction data transaction. When the transaction receiving unit 61 of the sub-blockchain node 50 receives the transaction data registration transaction, it outputs it to the registration processing unit 63 (step S2).

登録処理部63は、サブブロックチェーン5に対するアクセス権を有する端末6の測定器名を予め記憶しているか、サブブロックチェーン台帳71から取得できるものとする。登録処理部63は、入力された取引データ登録トランザクションに含まれている測定器名を用いて、サブブロックチェーン5へのアクセス権を有する端末6が取引データ登録トランザクションの送信元であるかを判定する(ステップS3)。サブブロックチェーン5へのアクセス権を有する端末6が取引データ登録トランザクションの送信元ではない場合、登録処理部63は処理を終了する(ステップS3でNo)。この場合、取引データ登録トランザクションで通知された発電量の情報はサブブロックチェーン5に登録されない。 It is assumed that the registration processing unit 63 stores in advance the name of the measuring instrument of the terminal 6 having the access right to the sub-blockchain 5, or can obtain it from the sub-blockchain ledger 71. The registration processing unit 63 determines whether the terminal 6 having the access right to the sub-blockchain 5 is the transmission source of the transaction data registration transaction by using the measuring instrument name included in the input transaction data registration transaction. (Step S3). If the terminal 6 having the access right to the sub-blockchain 5 is not the source of the transaction data registration transaction, the registration processing unit 63 ends the process (No in step S3). In this case, the power generation amount information notified in the transaction data registration transaction is not registered in the sub-blockchain 5.

一方、サブブロックチェーン5へのアクセス権を有する端末6が取引データ登録トランザクションの送信元である場合、サブブロックチェーンノード50間での合意形成処理が行われる。データの登録対象のサブブロックチェーンに参加しているサブブロックチェーンノード50間で、トランザクションを登録するための合意形成処理に成功すると、登録処理部63は、サブブロックチェーン台帳71に取引データを登録する(ステップS3でYes、ステップS4)。なお、ステップS4で登録される取引データは、取引データ登録トランザクションに含まれている発電量や時刻情報などである。 On the other hand, when the terminal 6 having the access right to the sub-blockchain 5 is the transmission source of the transaction data registration transaction, the consensus building process is performed between the sub-blockchain nodes 50. When the consensus building process for registering the transaction is successful between the sub-blockchain nodes 50 participating in the sub-blockchain for data registration, the registration processing unit 63 registers the transaction data in the sub-blockchain ledger 71. (Yes in step S3, step S4). The transaction data registered in step S4 is power generation amount, time information, etc. included in the transaction data registration transaction.

(2)データ集約モデルの登録と集約データの生成
図7は、データ集約モデルの例を説明する図である。データ集約モデルはメインブロックチェーン1を用いてデータを管理しようとするクライアントが、クライアントの端末(クライアント端末)を用いてメインブロックチェーン1に登録するモデルである。
(2) Registration of Data Aggregation Model and Generation of Aggregated Data FIG. 7 is a diagram illustrating an example of a data aggregation model. The data aggregation model is a model in which a client who intends to manage data using the main blockchain 1 registers in the main blockchain 1 using a client terminal (client terminal).

図7に示すデータ集約モデルは、サブブロックチェーン5の識別情報、集約データを生成する対象とする端末6の情報、集約処理を行う期間の情報、および、集約方法を含む。図7の例では、「サブBC−X」という識別情報で識別されるサブブロックチェーン5が集約データの計算に用いられる。さらに、集約データは、測定器名がA、B、Cの各々の測定器に対して個別に、15:00〜15:29の期間に計測されたデータの総和として計算される。 The data aggregation model shown in FIG. 7 includes identification information of the sub-blockchain 5, information of the terminal 6 for generating aggregated data, information on a period for performing aggregation processing, and an aggregation method. In the example of FIG. 7, the sub-blockchain 5 identified by the identification information "sub BC-X" is used for the calculation of the aggregated data. Further, the aggregated data is calculated individually for each of the measuring instruments whose measuring instrument names are A, B, and C, as the sum of the data measured in the period from 15:00 to 15:29.

図8は、集約データの生成処理の例を説明するシーケンス図である。図8を参照しながら、図7に示すデータ集約モデルが登録された場合に行われる処理の例を説明する。クライアント端末7は、メインブロックチェーン1を共有している取引記録装置10のうちの取引記録装置10aに対して、データ集約モデルの登録を要求したとする(ステップS11)。ステップS11において、データ集約モデルがクライアント端末7から取引記録装置10aに送信される。 FIG. 8 is a sequence diagram illustrating an example of aggregation data generation processing. An example of processing performed when the data aggregation model shown in FIG. 7 is registered will be described with reference to FIG. It is assumed that the client terminal 7 requests the transaction recording device 10a of the transaction recording devices 10 sharing the main blockchain 1 to register the data aggregation model (step S11). In step S11, the data aggregation model is transmitted from the client terminal 7 to the transaction recording device 10a.

取引記録装置10aがデータ集約モデルの登録の要求を受信すると、トランザクション発行部32aは、データ集約モデルを登録するためのトランザクション(データ集約モデル登録トランザクション)を生成する。データ集約モデル登録トランザクションには、クライアント端末7の情報が含まれていてもよい。トランザクション発行部32aは、データ集約モデル登録トランザクションを登録処理部33aに送信するとともに、メインブロックチェーン1を共有する他の取引記録装置10に対しても送信する(ステップS12)。取引記録装置10aでは、登録処理部33aが、受信したデータ集約モデル登録トランザクションを用いて、データ集約モデルをメインブロックチェーン台帳41aに記録する。データ集約モデル登録トランザクションにクライアント端末7の情報が含まれている場合、登録処理部33aは、クライアント端末7が取引記録装置10aへのアクセス権を有する装置であるかの認証を行っても良い。この場合、登録処理部33aは、認証処理に成功すると、メインブロックチェーンに参加している取引記録装置10間での、トランザクションを登録するための合意形成処理を行う。トランザクションを登録するための合意形成処理に成功すると、登録処理部33aは、データ集約モデルをメインブロックチェーン台帳41aに登録する。 When the transaction recording device 10a receives the request for registration of the data aggregation model, the transaction issuing unit 32a generates a transaction for registering the data aggregation model (data aggregation model registration transaction). The data aggregation model registration transaction may include information on the client terminal 7. The transaction issuing unit 32a transmits the data aggregation model registration transaction to the registration processing unit 33a, and also transmits the data aggregation model registration transaction to another transaction recording device 10 sharing the main blockchain 1 (step S12). In the transaction recording device 10a, the registration processing unit 33a records the data aggregation model in the main blockchain ledger 41a by using the received data aggregation model registration transaction. When the data aggregation model registration transaction includes the information of the client terminal 7, the registration processing unit 33a may authenticate whether the client terminal 7 is a device having an access right to the transaction recording device 10a. In this case, if the authentication process is successful, the registration processing unit 33a performs a consensus building process for registering the transaction between the transaction recording devices 10 participating in the main blockchain. When the consensus building process for registering the transaction is successful, the registration processing unit 33a registers the data aggregation model in the main blockchain ledger 41a.

メインブロックチェーン1を共有している取引記録装置10a以外の装置の各々では、登録処理部33が、トランザクション受信部31を介してデータ集約モデル登録トランザクションを取得する。登録処理部33は、データ集約モデルをその装置が保持するメインブロックチェーン台帳41に記録する。なお、登録処理の前に登録処理部33は、データ集約モデル登録トランザクションに含まれるクライアント端末7の情報を用いた認証処理を行っても良い。各取引記録装置10においてメインブロックチェーン台帳41にデータ集約モデルが記録されることにより、データ集約モデルがメインブロックチェーン1に登録される。 In each of the devices other than the transaction recording device 10a that shares the main blockchain 1, the registration processing unit 33 acquires the data aggregation model registration transaction via the transaction receiving unit 31. The registration processing unit 33 records the data aggregation model in the main blockchain ledger 41 held by the device. Before the registration process, the registration processing unit 33 may perform an authentication process using the information of the client terminal 7 included in the data aggregation model registration transaction. By recording the data aggregation model in the main blockchain ledger 41 in each transaction recording device 10, the data aggregation model is registered in the main blockchain 1.

各取引記録装置10では、集約処理部20中の取得部21は、データ集約モデルを参照する(ステップS13)。なお、データ集約モデルに複数の期間が含まれている場合や、複数のデータ集約モデルがメインブロックチェーン1に登録される可能性もある。このため、取得部21は、例えば、ポーリングなどにより一定期間ごとにメインブロックチェーン台帳41にアクセスすることによりデータ集約モデルを参照しても良い。データ集約モデルで指定された集約期間が経過すると、取得部21は、集約期間の時刻情報に対応付けられた取引データを、データ集約モデルで指定された測定器の各々について取得する(ステップS14)。例えば、図7に示すデータ集約モデルがメインブロックチェーン1に登録されており、測定器名A〜Cの各々の装置が1分ごとに発電量のデータをサブブロックチェーン5に登録しているとする。この場合、各取引記録装置10の取得部21は、測定器Aが15:00〜15:29の期間に計測したデータ、測定器Bが15:00〜15:29の期間に計測したデータ、および、測定器Cが15:00〜15:29の期間に計測したデータを取得する。 In each transaction recording device 10, the acquisition unit 21 in the aggregation processing unit 20 refers to the data aggregation model (step S13). In addition, there is a possibility that the data aggregation model includes a plurality of periods, or a plurality of data aggregation models are registered in the main blockchain 1. Therefore, the acquisition unit 21 may refer to the data aggregation model by accessing the main blockchain ledger 41 at regular intervals, for example, by polling or the like. When the aggregation period specified by the data aggregation model elapses, the acquisition unit 21 acquires transaction data associated with the time information of the aggregation period for each of the measuring instruments specified by the data aggregation model (step S14). .. For example, if the data aggregation model shown in FIG. 7 is registered in the main blockchain 1, and each device of the measuring instrument names A to C registers the power generation amount data in the subblockchain 5 every minute. To do. In this case, the acquisition unit 21 of each transaction recording device 10 has data measured by the measuring instrument A during the period from 15:00 to 15:29, and data measured by the measuring instrument B during the period from 15:00 to 15:29. Then, the data measured by the measuring instrument C during the period from 15:00 to 15:29 is acquired.

生成部22は、取得部21が取得したデータを用いて、データ集約モデルに指定された集約方法により集約データを生成する(ステップS15)。図7に示すデータ集約モデルでは、集約方法として総和が指定されている。そこで、生成部22は、測定器Aで識別される端末6について、15:00〜15:29の期間に計測されたデータの総和を計算する。同様に、生成部22は、測定器Bで識別される端末6と、測定器Cで識別される端末6に対しても、15:00〜15:29の期間に計測されたデータの総和を計算する。生成部22は、得られた総和を、集約データとしてトランザクション発行部32に出力する(ステップS16)。 The generation unit 22 uses the data acquired by the acquisition unit 21 to generate aggregated data by the aggregation method specified in the data aggregation model (step S15). In the data aggregation model shown in FIG. 7, the sum is specified as the aggregation method. Therefore, the generation unit 22 calculates the total sum of the data measured in the period from 15:00 to 15:29 for the terminal 6 identified by the measuring instrument A. Similarly, the generation unit 22 also calculates the sum of the data measured in the period from 15:00 to 15:29 for the terminal 6 identified by the measuring instrument B and the terminal 6 identified by the measuring instrument C. calculate. The generation unit 22 outputs the obtained sum to the transaction issuing unit 32 as aggregated data (step S16).

図9は、図7に示すデータ集約モデルを用いて計算された集約データの例を説明する図である。図9の例では、測定器Aで識別される端末6が15:00〜15:29の期間に計測した発電量の総和は4.2kwhである。集約データには、測定器B、測定器Cについて得られた情報も含められる。 FIG. 9 is a diagram illustrating an example of aggregated data calculated using the data aggregation model shown in FIG. 7. In the example of FIG. 9, the total amount of power generation measured by the terminal 6 identified by the measuring instrument A during the period from 15:00 to 15:29 is 4.2 kwh. The aggregated data also includes information obtained about measuring instrument B and measuring instrument C.

(3)集約データの検証と登録
図10は、検証処理の例を説明するシーケンス図である。図10では、取引記録装置10a〜10cの3台の間での集約データの検証と登録処理の例を説明する。さらに、以下の説明では、取引記録装置10aは秘密鍵KeyAを用いて暗号化を行うものとする。また、秘密鍵KeyAの対となる公開鍵をKeyAPとする。同様に、取引記録装置10bは秘密鍵KeyBを用いて暗号化を行い、取引記録装置10cは秘密鍵KeyCを用いて暗号化を行うものとする。また、秘密鍵KeyBの対となる公開鍵はKeyBPであり、秘密鍵KeyCの対となる公開鍵はKeyCPであるとする。
(3) Verification and Registration of Aggregated Data FIG. 10 is a sequence diagram illustrating an example of verification processing. FIG. 10 describes an example of verification and registration processing of aggregated data between the three transaction recording devices 10a to 10c. Further, in the following description, it is assumed that the transaction recording device 10a performs encryption using the private key KeyA. In addition, the public key that is a pair of the private key KeyA is KeyAP. Similarly, the transaction recording device 10b shall perform encryption using the private key KeyB, and the transaction recording device 10c shall perform encryption using the private key KeyC. Further, it is assumed that the public key paired with the private key KeyB is KeyBP, and the public key paired with the private key KeyC is KeyCP.

まず、取引記録装置10a〜10cの間で、集約データの検証に関する合意形成方法を設定し、得られた設定を設定情報42として記録する(ステップS21)。図10の例では、取引記録装置10aから集約データを提示し、他の取引記録装置10が提示されたデータを検証するとする。なお、合意形成方法は、ブロックチェーン基盤に応じた任意の方法が用いられ得る。例えば、合意形成方法として、PBFT(Practical Byzantine Fault Tolelance)に基づくアルゴリズムが用いられても良い。 First, a consensus building method for verifying aggregated data is set between the transaction recording devices 10a to 10c, and the obtained settings are recorded as setting information 42 (step S21). In the example of FIG. 10, it is assumed that the aggregated data is presented from the transaction recording device 10a and the presented data is verified by another transaction recording device 10. As the consensus building method, any method depending on the blockchain infrastructure can be used. For example, as a consensus building method, an algorithm based on PBFT (Practical Byzantine Fault Tolelance) may be used.

ステップS21での合意形成方法の設定の後で、データ集約モデルで指定された期間が経過すると、各取引記録装置10は、集約データを生成する(ステップS22、S23)。集約データの生成処理は、図8、図9などを参照しながら説明した処理と同様である。なお、取引記録装置10aでも、図8、図9を参照しながら説明した処理が行われたとする。取引記録装置10aのトランザクション発行部32aは、設定情報42を参照することにより、自装置から他の取引記録装置10に集約データを含むトランザクションを送信することを特定できる。そこで、トランザクション発行部32aは、集約データを含む集約トランザクションを生成する(ステップS24)。トランザクション発行部32aは、取引記録装置10aの秘密鍵KeyAを用いて署名を生成し、集約データを含む集約トランザクションに署名を付加する(ステップS25)。トランザクション発行部32aは、署名後の集約トランザクションを取引記録装置10b、取引記録装置10cに送信する(ステップS26、S27)。 After the period specified in the data aggregation model elapses after the setting of the consensus building method in step S21, each transaction recording device 10 generates aggregated data (steps S22 and S23). The process of generating the aggregated data is the same as the process described with reference to FIGS. 8 and 9. It is assumed that the transaction recording device 10a also performs the processing described with reference to FIGS. 8 and 9. The transaction issuing unit 32a of the transaction recording device 10a can specify that the transaction including the aggregated data is transmitted from the own device to the other transaction recording device 10 by referring to the setting information 42. Therefore, the transaction issuing unit 32a generates an aggregated transaction including the aggregated data (step S24). The transaction issuing unit 32a generates a signature using the private key KeyA of the transaction recording device 10a, and adds the signature to the aggregated transaction including the aggregated data (step S25). The transaction issuing unit 32a transmits the aggregated transaction after the signature to the transaction recording device 10b and the transaction recording device 10c (steps S26 and S27).

取引記録装置10bのトランザクション受信部31bは、受信した集約トランザクションを登録処理部33bに出力する。登録処理部33bは、集約トランザクションに含まれている集約データをステップS23で生成した集約データと比較する。なお、集約データの比較処理の際に、登録処理部33bは、集約トランザクション中の集約データに対応する集約の条件に対応する条件で生成した集約データを比較対象とする。例えば、図9に示す集約データを含む集約トランザクションを受信した場合、登録処理部33bは、15:00〜15:29の期間の測定器名=Aの発電量のデータの総和を、測定器名=Aについての集約データと比較する。登録処理部33bは、測定器名=B、測定器名=Cでの発電量の集約データについても同様に比較を行う。集約トランザクションに含まれている集約データとステップS23で生成した集約データが一致する場合、登録処理部33bは、集約データを取引記録装置10bの秘密鍵KeyBで暗号化して署名を生成する。なお、図9に示す集約データのように複数の機器で得られたデータに関する複数の値を含む集約データの場合、集約トランザクション中のデータと計算した集約データが全ての機器について一致すると、登録処理部33bは集約データが一致したと判定する。登録処理部33bは、集約トランザクションに秘密鍵KeyBを用いた署名を付加する(ステップS28)。 The transaction receiving unit 31b of the transaction recording device 10b outputs the received aggregated transaction to the registration processing unit 33b. The registration processing unit 33b compares the aggregated data included in the aggregated transaction with the aggregated data generated in step S23. At the time of the comparison processing of the aggregated data, the registration processing unit 33b targets the aggregated data generated under the conditions corresponding to the aggregated conditions corresponding to the aggregated data in the aggregated transaction as the comparison target. For example, when an aggregate transaction including the aggregated data shown in FIG. 9 is received, the registration processing unit 33b sets the sum of the power generation amount data of the measuring instrument name = A in the period from 15:00 to 15:29 as the measuring instrument name. Compare with the aggregated data for = A. The registration processing unit 33b also compares the aggregated data of the amount of power generation when the measuring instrument name = B and the measuring instrument name = C in the same manner. When the aggregated data included in the aggregated transaction and the aggregated data generated in step S23 match, the registration processing unit 33b encrypts the aggregated data with the private key KeyB of the transaction recording device 10b to generate a signature. In the case of aggregated data including a plurality of values related to data obtained by a plurality of devices such as the aggregated data shown in FIG. 9, if the data in the aggregated transaction and the calculated aggregated data match for all the devices, the registration process is performed. Unit 33b determines that the aggregated data match. The registration processing unit 33b adds a signature using the private key KeyB to the aggregated transaction (step S28).

なお、登録処理部33bは、検証処理を行う際に、取引記録装置10aによって行われた署名と取引記録装置10aの公開鍵KeyAPを使用することにより、集約トランザクション中の集約データに対する改ざんの有無を検証できる。この場合、登録処理部33bは、集約トランザクション中の集約データが改ざんされておらず、集約トランザクション中の集約データが自装置で計算した集約データと一致するときに、自装置の署名を集約トランザクションに付加する。 When performing the verification process, the registration processing unit 33b uses the signature made by the transaction recording device 10a and the public key KeyAP of the transaction recording device 10a to determine whether or not the aggregated data in the aggregated transaction has been tampered with. Can be verified. In this case, when the aggregated data in the aggregated transaction has not been tampered with and the aggregated data in the aggregated transaction matches the aggregated data calculated by the own device, the registration processing unit 33b sets the signature of the own device into the aggregated transaction. Add.

トランザクション発行部32bは、登録処理部33bによる処理後の集約トランザクションを、トランザクションの送信元である取引記録装置10aに送信する(ステップS30)。なお、登録処理部33bによる処理後の集約トランザクションは、取引記録装置10bの秘密鍵を用いた署名の有無で取引記録装置10bでの検証の結果を表しているので、検証結果であるといえる。 The transaction issuing unit 32b transmits the aggregated transaction processed by the registration processing unit 33b to the transaction recording device 10a, which is the source of the transaction (step S30). The aggregated transaction after processing by the registration processing unit 33b can be said to be a verification result because the result of verification by the transaction recording device 10b is represented by the presence or absence of a signature using the private key of the transaction recording device 10b.

取引記録装置10cも、集約トランザクションに対して、取引記録装置10bと同様の処理を行う。すなわち、登録処理部33cは、集約トランザクション中の集約データとステップS22で生成した集約データが一致する場合、集約データを秘密鍵KeyCで暗号化して生成した署名を集約トランザクションに付加する(ステップS29)。トランザクション発行部32cは、登録処理部33cによる処理後の集約トランザクションを、トランザクションの送信元である取引記録装置10aに送信する(ステップS30)。 The transaction recording device 10c also performs the same processing as the transaction recording device 10b for the aggregated transaction. That is, when the aggregated data in the aggregated transaction and the aggregated data generated in step S22 match, the registration processing unit 33c adds the signature generated by encrypting the aggregated data with the private key KeyC to the aggregated transaction (step S29). .. The transaction issuing unit 32c transmits the aggregated transaction processed by the registration processing unit 33c to the transaction recording device 10a, which is the source of the transaction (step S30).

取引記録装置10aの登録処理部33aは、メインブロックチェーン1を共有する全ての取引記録装置10から検証結果を含む集約トランザクションを受け取る。登録処理部33aは、検証結果を含むトランザクションの各々について、署名が含まれているかを判定する。登録処理部33aは、得られた検証結果を用いて、メインブロックチェーン1を共有する全ての取引記録装置10に公開するための最終的なトランザクションを発行する。最終的に発行されるトランザクションは、集約データの集約トランザクションに、いずれかの検証結果に含まれていた全ての署名をトランザクションに追加したものである。 The registration processing unit 33a of the transaction recording device 10a receives the aggregated transaction including the verification result from all the transaction recording devices 10 sharing the main blockchain 1. The registration processing unit 33a determines whether or not a signature is included for each transaction including the verification result. The registration processing unit 33a uses the obtained verification result to issue a final transaction to be disclosed to all transaction recording devices 10 sharing the main blockchain 1. The finally issued transaction is the aggregated data aggregated transaction with all signatures included in any of the validation results added to the transaction.

図11は、最終的に発行されるトランザクションの例を説明する図である。図11は、取引記録装置10aが発行した図9の集約データを含む集約トランザクションに対して、取引記録装置10bと取引記録装置10cの両方から署名が得られた場合に生成される最終的なトランザクションの例である。署名には、その署名をした装置の識別情報が対応付けられる。 FIG. 11 is a diagram illustrating an example of a transaction to be finally issued. FIG. 11 shows the final transaction generated when a signature is obtained from both the transaction recording device 10b and the transaction recording device 10c for the aggregated transaction including the aggregated data of FIG. 9 issued by the transaction recording device 10a. Is an example of. The signature is associated with the identification information of the device that signed the signature.

再度、図10を参照してメインブロックチェーン1への登録処理について説明する。取引記録装置10aのトランザクション発行部32aは、最終的なトランザクションを取引記録装置10bと取引記録装置10cに送信する(図10のステップS31)。登録処理部33aは、最終的なトランザクションに含まれる署名の各々を検証する。署名の検証の際に、登録処理部33aは、署名を行った取引記録装置10が使用する秘密鍵の対となっている公開鍵を用いることができる。例えば、登録処理部33aは、公開鍵KeyBPを用いて取引記録装置10bの署名を検証し、公開鍵KeyCPを用いて取引記録装置10cの署名を検証する。正しい署名数が閾値Th以上の場合、最終的なトランザクションに含まれている集約データをメインブロックチェーン台帳41aに登録する(ステップS32)。なお、最終的なトランザクションに含まれる署名数と比較される閾値は予め登録処理部33aが保持している。また、閾値は、設定情報42などに設定されていても良い。 The registration process to the main blockchain 1 will be described again with reference to FIG. The transaction issuing unit 32a of the transaction recording device 10a transmits the final transaction to the transaction recording device 10b and the transaction recording device 10c (step S31 in FIG. 10). The registration processing unit 33a verifies each of the signatures included in the final transaction. When verifying the signature, the registration processing unit 33a can use the public key that is a pair of the private key used by the transaction recording device 10 that has signed the signature. For example, the registration processing unit 33a verifies the signature of the transaction recording device 10b using the public key KeyBP, and verifies the signature of the transaction recording device 10c using the public key KeyCP. When the correct number of signatures is the threshold value Th or more, the aggregated data included in the final transaction is registered in the main blockchain ledger 41a (step S32). The registration processing unit 33a holds in advance a threshold value to be compared with the number of signatures included in the final transaction. Further, the threshold value may be set in the setting information 42 or the like.

最終的なトランザクションを受信した取引記録装置10bおよび取引記録装置10cにおいても、登録処理部33は、登録処理部33aと同様に最終的なトランザクションを処理する。すなわち、登録処理部33bと登録処理部33cのいずれも、最終的なトランザクションに含まれている正しい署名の数が閾値以上の場合、最終的なトランザクションに含まれている集約データをメインブロックチェーン台帳41に登録する(ステップS33、S34)。各取引記録装置10のメインブロックチェーン台帳41に集約データが登録されることで、メインブロックチェーン1においてその集約データが共有される。 In the transaction recording device 10b and the transaction recording device 10c that have received the final transaction, the registration processing unit 33 processes the final transaction in the same manner as the registration processing unit 33a. That is, in both the registration processing unit 33b and the registration processing unit 33c, when the number of correct signatures included in the final transaction is equal to or greater than the threshold value, the aggregated data included in the final transaction is stored in the main blockchain ledger. Register in 41 (steps S33, S34). By registering the aggregated data in the main blockchain ledger 41 of each transaction recording device 10, the aggregated data is shared in the main blockchain 1.

なお、図10は処理の一例を示しているにすぎず、実装に応じて処理の順序等が変更され得る。例えば、ステップS31で最終的なトランザクションが送信されるより前に、最終的なトランザクションの発行元の取引記録装置10aにおいてメインブロックチェーン台帳41aの登録処理(ステップS32)が行われてもよい。 Note that FIG. 10 is only an example of processing, and the order of processing and the like can be changed depending on the implementation. For example, the registration process (step S32) of the main blockchain ledger 41a may be performed in the transaction recording device 10a of the issuer of the final transaction before the final transaction is transmitted in step S31.

(4)処理フロー
図12は、第1の実施形態にかかる処理の例を説明するフローチャートである。図12は、図7〜図11を参照しながら説明した処理の例を時系列に沿って示している。
(4) Processing Flow FIG. 12 is a flowchart illustrating an example of processing according to the first embodiment. FIG. 12 shows an example of the processing described with reference to FIGS. 7 to 11 in chronological order.

クライアントは、クライアント端末7を用いてデータ集約モデルをメインブロックチェーン1に登録する(ステップS41)。各取引記録装置10の取得部21は、集約モデルで指定された期間ごとにサブブロックチェーン5からデータを取得する(ステップS42)。生成部22は、取得部21が取得したデータとメインブロックチェーン1に登録されているデータ集約モデルから、集約データを生成する(ステップS43)。その後、メインブロックチェーン1を共有する取引記録装置10同士が、PBFTプロトコルなどを用いてトランザクションの署名/検証順序を決定する(ステップS44)。署名/検証順序が最初に設定された取引記録装置10は、集約データに対して自装置の秘密鍵を用いて署名を行い、トランザクション(集約トランザクション)を発行する(ステップS45)。このとき、集約トランザクションは、集約トランザクションの発行元以外の全ての取引記録装置10に送信される。集約トランザクションを受信した取引記録装置10の登録処理部33は、受信した集約トランザクション中の集約データについて、自装置が計算した集約データと一致するかを判定する(ステップS45)。 The client registers the data aggregation model in the main blockchain 1 using the client terminal 7 (step S41). The acquisition unit 21 of each transaction recording device 10 acquires data from the sub-blockchain 5 every period specified by the aggregation model (step S42). The generation unit 22 generates aggregated data from the data acquired by the acquisition unit 21 and the data aggregation model registered in the main blockchain 1 (step S43). After that, the transaction recording devices 10 sharing the main blockchain 1 determine the transaction signature / verification order using the PBFT protocol or the like (step S44). The transaction recording device 10 in which the signature / verification order is first set signs the aggregated data using the private key of its own device, and issues a transaction (aggregated transaction) (step S45). At this time, the aggregated transaction is transmitted to all transaction recording devices 10 other than the issuer of the aggregated transaction. The registration processing unit 33 of the transaction recording device 10 that has received the aggregated transaction determines whether the aggregated data in the received aggregated transaction matches the aggregated data calculated by its own device (step S45).

集約トランザクション中の集約データと自装置が計算した集約データが一致したとする(ステップS45で一致)。この場合、登録処理部33は、集約トランザクションに自装置の秘密鍵を用いて署名を行い、署名したトランザクションを集約トランザクションの発行元に送信するためのトランザクションを発行する(ステップS47)。 It is assumed that the aggregated data in the aggregated transaction and the aggregated data calculated by the own device match (match in step S45). In this case, the registration processing unit 33 signs the aggregated transaction using the private key of its own device, and issues a transaction for transmitting the signed transaction to the issuer of the aggregated transaction (step S47).

一方、集約トランザクション中の集約データと自装置が計算した集約データが一致しなかったとする(ステップS45で不一致)。この場合、登録処理部33は、集約トランザクションに署名を行わず、受信したトランザクションを集約トランザクションの発行元に送信するためのトランザクションを発行する(ステップS48)。集約トランザクションの発行元は、各取引記録装置10から受信した検証結果を用いて、最終的なトランザクションを発行する。最終的なトランザクションには、集約トランザクション中の集約データに対して行われた署名が含まれている。集約トランザクションの発行元の取引記録装置10のトランザクション発行部32は、最終的なトランザクションを、メインブロックチェーン1を共有する全ての取引記録装置10に送信する。 On the other hand, it is assumed that the aggregated data in the aggregated transaction and the aggregated data calculated by the own device do not match (mismatch in step S45). In this case, the registration processing unit 33 does not sign the aggregated transaction, but issues a transaction for transmitting the received transaction to the issuer of the aggregated transaction (step S48). The issuer of the aggregated transaction issues the final transaction using the verification result received from each transaction recording device 10. The final transaction contains the signature made on the aggregated data during the aggregated transaction. The transaction issuing unit 32 of the transaction recording device 10 that issues the aggregated transaction transmits the final transaction to all the transaction recording devices 10 that share the main blockchain 1.

各取引記録装置10の登録処理部33は、最終的に発行されたトランザクションについて、署名の検証を行う(ステップS49)。なお、署名の検証の際には、適宜、署名を行った取引記録装置10の公開鍵が用いられる。登録処理部33は、正しい署名が閾値以上あるかを判定する(ステップS50)。正しい署名の数が閾値以上の場合、登録処理部33は、最終的なトランザクションをメインブロックチェーン台帳41に登録する(ステップS50でYes、ステップS51)。一方、正しい署名の数が閾値未満の場合、登録処理部33は処理を終了する(ステップS50でNo)。 The registration processing unit 33 of each transaction recording device 10 verifies the signature of the finally issued transaction (step S49). When verifying the signature, the public key of the signed transaction recording device 10 is used as appropriate. The registration processing unit 33 determines whether the correct signature is equal to or greater than the threshold value (step S50). When the number of correct signatures is equal to or greater than the threshold value, the registration processing unit 33 registers the final transaction in the main blockchain ledger 41 (Yes in step S50, step S51). On the other hand, if the number of correct signatures is less than the threshold value, the registration processing unit 33 ends the process (No in step S50).

このように、第1の実施形態にかかるシステムでは、メインブロックチェーン1には端末6から得られた取引データは含まれず、所定期間ごとに集約された集約データが記録される。すなわち、個々の取引データの代わりに集約データがメインブロックチェーン1に記録される。このため、メインブロックチェーン1に記録される情報の量は、端末6で得られた個々の発電量の計測データの全てを記録する場合に比べて削減される。さらに、端末6で得られた発電量の計測データは、メインブロックチェーン1とは異なるサブブロックチェーン5に記録されているので、発電量の計測データが改ざんされるおそれもない。換言すると、第1の実施形態にかかるシステムでは、メインブロックチェーン1に記録する集約データの計算のもととなる端末6で得られた取引履歴の改ざんも防止されている。さらに、メインブロックチェーン1への集約データの登録は、所定の数以上の取引記録装置10での集約データの計算結果が一致した場合に行われる。このため、メインブロックチェーン1に登録されるデータの信頼性も担保される。 As described above, in the system according to the first embodiment, the main blockchain 1 does not include the transaction data obtained from the terminal 6, and the aggregated data aggregated for each predetermined period is recorded. That is, aggregated data is recorded in the main blockchain 1 instead of individual transaction data. Therefore, the amount of information recorded in the main blockchain 1 is reduced as compared with the case of recording all the measurement data of the individual power generation amount obtained by the terminal 6. Further, since the measurement data of the power generation amount obtained by the terminal 6 is recorded in the sub-blockchain 5 different from the main blockchain 1, there is no possibility that the measurement data of the power generation amount is falsified. In other words, in the system according to the first embodiment, falsification of the transaction history obtained by the terminal 6 which is the basis of the calculation of the aggregated data recorded in the main blockchain 1 is also prevented. Further, the registration of the aggregated data in the main blockchain 1 is performed when the calculation results of the aggregated data in the transaction recording device 10 of a predetermined number or more match. Therefore, the reliability of the data registered in the main blockchain 1 is also ensured.

<第2の実施形態>
図13は、第2の実施形態にかかるシステムの例を説明する図である。第2の実施形態では、複数のサブブロックチェーン5を用い、集約データがメインブロックチェーン1に登録された後の取引データを削除する場合について説明する。
<Second embodiment>
FIG. 13 is a diagram illustrating an example of the system according to the second embodiment. In the second embodiment, a case where a plurality of sub-blockchains 5 are used and transaction data is deleted after the aggregated data is registered in the main blockchain 1 will be described.

第2の実施形態にかかるシステムでは、サブブロックチェーン5aとサブブロックチェーン5bが使用され、個々のサブブロックチェーンノード80(80a、80b)は、サブブロックチェーン5aとサブブロックチェーン5bの両方を共有している。端末6(6a〜6e)は、サブブロックチェーンノード80を介してサブブロックチェーン5に計測データを登録する。第2の実施形態でも、第1の実施形態と同様に、取引記録装置10(10a〜10d)はメインブロックチェーン1を共有するものとする。 In the system according to the second embodiment, the sub-blockchain 5a and the sub-blockchain 5b are used, and the individual sub-blockchain nodes 80 (80a, 80b) share both the sub-blockchain 5a and the sub-blockchain 5b. are doing. The terminals 6 (6a to 6e) register the measurement data in the sub-blockchain 5 via the sub-blockchain node 80. In the second embodiment as well, the transaction recording device 10 (10a to 10d) shares the main blockchain 1 as in the first embodiment.

各々のサブブロックチェーンノード80は、共有するサブブロックチェーン5のうちサブブロックチェーンノード80同士で予め設定した所定のサブブロックチェーン5に、端末6から受信した取引データを格納する。例えば、15:30より前の時刻に関する取引データをサブブロックチェーン5aに登録し、15:30以降の時刻に関する取引データをサブブロックチェーン5bに登録することが全てのサブブロックチェーンノード80の間で設定されているとする。この場合、いずれのサブブロックチェーンノード80も、15:30より前に計測された取引データをサブブロックチェーン5aに登録し、15:30以降に計測された取引データをサブブロックチェーン5bに登録する。 Each sub-blockchain node 80 stores transaction data received from the terminal 6 in a predetermined sub-blockchain 5 preset between the sub-blockchain nodes 80 among the shared sub-blockchains 5. For example, it is possible to register transaction data related to the time before 15:30 in the sub-blockchain 5a and register transaction data related to the time after 15:30 in the sub-blockchain 5b among all the sub-blockchain nodes 80. Suppose it is set. In this case, each sub-blockchain node 80 registers the transaction data measured before 15:30 in the sub-blockchain 5a and the transaction data measured after 15:30 in the sub-blockchain 5b. ..

図14は、サブブロックチェーンノード80の構成の例を説明する図である。サブブロックチェーンノード80は、サブブロックチェーン制御部85と記憶部70を備える。サブブロックチェーンノード80のハードウェア構成は図4に示すとおりである。また、サブブロックチェーンノード80もコンピュータやサーバ装置として実現され得る。 FIG. 14 is a diagram illustrating an example of the configuration of the sub-blockchain node 80. The sub-blockchain node 80 includes a sub-blockchain control unit 85 and a storage unit 70. The hardware configuration of the sub-blockchain node 80 is as shown in FIG. Further, the sub-blockchain node 80 can also be realized as a computer or a server device.

記憶部70は、サブブロックチェーン台帳71Xとサブブロックチェーン台帳71Yを記憶する。サブブロックチェーン台帳71Xは、「サブBC−X」という識別情報で識別され、サブブロックチェーン5aを用いて共有される情報を保持するものとする。サブブロックチェーン台帳71Yは、「サブBC−Y」という識別情報で識別され、サブブロックチェーン5bを用いて共有される情報を保持するものとする。 The storage unit 70 stores the sub-blockchain ledger 71X and the sub-blockchain ledger 71Y. The sub-blockchain ledger 71X is identified by the identification information "sub BC-X" and holds the information shared by the sub-blockchain 5a. The sub-blockchain ledger 71Y is identified by the identification information "sub-BC-Y" and holds the information shared by the sub-blockchain 5b.

サブブロックチェーン制御部85は、トランザクション受信部61、トランザクション発行部62、データ削除判定部86、および、登録処理部87を有する。トランザクション受信部61とトランザクション発行部62は、第1の実施形態のサブブロックチェーンノード50と同様の処理を行う。登録処理部87は、取引データを記録するサブブロックチェーン5の切り替えに関する処理を行う。登録処理部87は、サブブロックチェーン5の切り替えに関する処理を行うために、適宜、サブブロックチェーン5を共有する他のサブブロックチェーンノード80や取引記録装置10と通信する。なお、登録処理部87は、通信先のサブブロックチェーンノード50や取引記録装置10のアドレスなどの情報を予め保持しているか、記憶部70から取得できるものとする。登録処理部87は、端末6から受信したトランザクション中に含まれている取引データを、その取引データの計測時刻に対応付けられたサブブロックチェーン5に登録するための処理を行う。 The sub-blockchain control unit 85 includes a transaction receiving unit 61, a transaction issuing unit 62, a data deletion determination unit 86, and a registration processing unit 87. The transaction receiving unit 61 and the transaction issuing unit 62 perform the same processing as the subblockchain node 50 of the first embodiment. The registration processing unit 87 performs processing related to switching of the sub-blockchain 5 for recording transaction data. The registration processing unit 87 communicates with other sub-blockchain nodes 80 and the transaction recording device 10 that share the sub-blockchain 5 as appropriate in order to perform processing related to switching of the sub-blockchain 5. It is assumed that the registration processing unit 87 holds information such as the addresses of the sub-blockchain node 50 and the transaction recording device 10 of the communication destination in advance, or can acquire the information from the storage unit 70. The registration processing unit 87 performs a process for registering the transaction data included in the transaction received from the terminal 6 in the sub-blockchain 5 associated with the measurement time of the transaction data.

データ削除判定部86は、メインブロックチェーン1への登録済みの集約データの計算に使用された計測データを削除するための処理を行う。例えば、データ削除判定部86は、サブブロックチェーンノード80が共有するサブブロックチェーン5のうち、集約データの計算に使用されていない計測データを含まないサブブロックチェーン5のサブブロックチェーン台帳71を初期化する。なお、サブブロックチェーン台帳71の初期化のタイミングを他のサブブロックチェーンノード80と合わせるために、データ削除判定部86は適宜、他のサブブロックチェーンノード80や取引記録装置10と通信してもよい。データ削除判定部86も、登録処理部87と同様に、通信先のサブブロックチェーンノード50や取引記録装置10の情報を予め保持しているか、記憶部70から取得できるものとする。 The data deletion determination unit 86 performs a process for deleting the measurement data used for calculating the aggregated data registered in the main blockchain 1. For example, the data deletion determination unit 86 initially initializes the sub-blockchain ledger 71 of the sub-blockchain 5 that does not include the measurement data that is not used for the calculation of the aggregated data among the sub-blockchain 5 shared by the sub-blockchain node 80. To become. In order to match the initialization timing of the sub-blockchain ledger 71 with the other sub-blockchain nodes 80, the data deletion determination unit 86 may appropriately communicate with the other sub-blockchain nodes 80 or the transaction recording device 10. Good. Like the registration processing unit 87, the data deletion determination unit 86 also holds information on the communication destination sub-blockchain node 50 and the transaction recording device 10 in advance, or can acquire the information from the storage unit 70.

第2の実施形態では、データ集約モデルの中にサブブロックチェーン5の移行基準やサブブロックチェーン5の削除のタイミングを特定する情報が含まれている。サブブロックチェーン5の移行基準は、サブブロックチェーン5の切り替えのタイミング、移行元のサブブロックチェーン5、および、移行先のサブブロックチェーン5を指定可能な任意の情報である。例えば、サブブロックチェーン5の移行基準は、サブブロックチェーン5の切り替え時刻であってもよい。また、サブブロックチェーン5の移行基準は、現用のサブブロックチェーン5に記録される取引データの最大量を指定する値であっても良い。この場合、登録処理部87は、他のサブブロックチェーンノード80との間で適宜トランザクションを送受信することにより、サブブロックチェーン5の切り替えのタイミングを決定してもよい。さらに、移行基準は、特定の時刻を基準として1月ごとなどの所定の期間ごとにサブブロックチェーン5が切り替えられるように設定されてもよい。例えば、2019年6月1日を基準として1か月ごとの15:00にサブブロックチェーン5を切り替えるように移行基準が設定されても良い。 In the second embodiment, the data aggregation model includes information for specifying the migration criteria of the sub-blockchain 5 and the timing of deletion of the sub-blockchain 5. The migration criterion of the sub-blockchain 5 is arbitrary information that can specify the timing of switching the sub-blockchain 5, the sub-blockchain 5 of the migration source, and the sub-blockchain 5 of the migration destination. For example, the transition reference of the sub-blockchain 5 may be the switching time of the sub-blockchain 5. Further, the transition criterion of the sub-blockchain 5 may be a value that specifies the maximum amount of transaction data recorded in the current sub-blockchain 5. In this case, the registration processing unit 87 may determine the timing of switching the sub-blockchain 5 by appropriately transmitting and receiving transactions with the other sub-blockchain node 80. Further, the transition standard may be set so that the sub-blockchain 5 is switched at predetermined periods such as every month based on a specific time. For example, a transition standard may be set so as to switch the sub-blockchain 5 at 15:00 every month based on June 1, 2019.

例えば、以下のような情報を含むデータ集約モデルがメインブロックチェーン1に登録されたとする。 For example, suppose that a data aggregation model including the following information is registered in the main blockchain 1.

移行基準:
時刻2019年6月1日15:00に切り替え実施
移行元サブブロックチェーン :サブBC−Y
移行先サブブロックチェーン :サブBC−X
削除基準:
時刻2019年6月1日18:00に削除実施
データ削除対象のブロックチェーン:サブBC−Y
集約情報
サブBC:サブBC−X
集約対象:測定器名A、測定器名B、測定器名C
集約期間:15:00〜15:29
集約方法:測定器ごとに集約期間中のデータの総和を計算
なお、第2の実施形態においても、データ集約モデルのメインブロックチェーン1への登録処理は図8を参照しながら説明した処理と同様である。以下の説明では、データ集約モデルを受信した取引記録装置10は、その取引記録装置10がデータの取得の際にアクセスするサブブロックチェーンノード80のいずれか1つ以上に対して、データ集約モデルを登録した旨を通知するものとする。
Transition criteria:
Switched to 15:00 on June 1, 2019
Migration source sub-blockchain: Sub BC-Y
Migration destination sub blockchain: Sub BC-X
Deletion criteria:
Deleted at 18:00 on June 1, 2019
Blockchain for data deletion: Sub BC-Y
Aggregate information Sub BC: Sub BC-X
Aggregation target: Measuring instrument name A, Measuring instrument name B, Measuring instrument name C
Aggregation period: 15:00 to 15:29
Aggregation method: Calculate the total sum of data during the aggregation period for each measuring instrument. Also in the second embodiment, the process of registering the data aggregation model in the main blockchain 1 is the same as the process described with reference to FIG. Is. In the following description, the transaction recording device 10 that has received the data aggregation model sets the data aggregation model for any one or more of the sub-blockchain nodes 80 that the transaction recording device 10 accesses when acquiring data. You shall be notified that you have registered.

以下、サブブロックチェーン5の切り替え処理と切り替え後のサブブロックチェーン5からの情報の削除に分けて第2の実施形態で行われる処理の例を説明する。 Hereinafter, an example of the processing performed in the second embodiment will be described separately for the switching process of the sub-blockchain 5 and the deletion of the information from the sub-blockchain 5 after the switching.

(A)サブブロックチェーン5の切り替え処理
図15は、サブブロックチェーン5の切り替え処理の例を説明する図である。図15の例では、取引記録装置10aがクライアント端末7からデータ集約モデルを受信したとする。また、取引記録装置10aは、サブブロックチェーンノード80aに対して、データ集約モデルを受信した旨を通知したとする。図15には、図を簡略化するために、サブブロックチェーンノード80aとサブブロックチェーンノード80bでの処理を記載している。サブブロックチェーン5をサブブロックチェーンノード80aと共有するサブブロックチェーンノード80は、サブブロックチェーンノード80bと同様に動作を行うものとする。さらに、各サブブロックチェーンノード80の登録処理部87は、端末6から受信した取引データを登録するサブブロックチェーン5の識別情報を設定しているとする。すなわち、登録処理部87が登録先として設定している識別情報で識別されるサブブロックチェーン5が現用のサブブロックチェーン5である。図15の最初の段階では、いずれのサブブロックチェーンノード80でも、登録処理部87は「サブBC−Y」(サブブロックチェーン5b)を登録先の識別情報に設定しているとする。
(A) Switching Process of Sub-Blockchain 5 FIG. 15 is a diagram illustrating an example of switching processing of the sub-blockchain 5. In the example of FIG. 15, it is assumed that the transaction recording device 10a receives the data aggregation model from the client terminal 7. Further, it is assumed that the transaction recording device 10a notifies the sub-blockchain node 80a that the data aggregation model has been received. In FIG. 15, in order to simplify the figure, the processing in the sub-blockchain node 80a and the sub-blockchain node 80b is shown. The sub-blockchain node 80 that shares the sub-blockchain 5 with the sub-blockchain node 80a shall operate in the same manner as the sub-blockchain node 80b. Further, it is assumed that the registration processing unit 87 of each sub-blockchain node 80 sets the identification information of the sub-blockchain 5 for registering the transaction data received from the terminal 6. That is, the sub-blockchain 5 identified by the identification information set by the registration processing unit 87 as the registration destination is the current sub-blockchain 5. At the first stage of FIG. 15, it is assumed that the registration processing unit 87 sets "sub BC-Y" (sub blockchain 5b) as the identification information of the registration destination in any of the subblockchain nodes 80.

サブブロックチェーンノード80aの登録処理部87aは、取引記録装置10aにアクセスすることにより、メインブロックチェーン台帳41aに登録されたデータ集約モデルに含まれている移行基準を取得する。登録処理部87aは、移行基準を登録するためのトランザクションを生成し、サブブロックチェーンを共有する他のサブブロックチェーンノード80に送信することで、移行基準を共有する(ステップS61)。さらに、登録処理部87aは、移行基準を記憶部70aに登録する(ステップS62)。 By accessing the transaction recording device 10a, the registration processing unit 87a of the sub-blockchain node 80a acquires the migration standard included in the data aggregation model registered in the main blockchain ledger 41a. The registration processing unit 87a shares the migration criteria by generating a transaction for registering the migration criteria and transmitting it to another subblockchain node 80 that shares the subblockchain (step S61). Further, the registration processing unit 87a registers the transition standard in the storage unit 70a (step S62).

移行基準を登録するためのトランザクションを受信したサブブロックチェーンノード80bでは、登録処理部87bが移行基準を記憶部70bに登録する(ステップS63)。サブブロックチェーンノード80の各々においても、登録処理部87は、移行基準を記憶部70に格納する。 In the sub-blockchain node 80b that has received the transaction for registering the migration standard, the registration processing unit 87b registers the migration standard in the storage unit 70b (step S63). In each of the sub-blockchain nodes 80, the registration processing unit 87 stores the migration reference in the storage unit 70.

移行基準を用いた切り替え処理が行われるまでは、登録処理部87は端末6から受信した計測データを現用のサブブロックチェーン5b(サブBC−Y)に登録する。このときの処理は、例えば、図6を参照しながら説明した処理と同様である。計測データの登録処理と並行して、各サブブロックチェーンノード80の登録処理部87は、一定間隔の時間ごとに、記憶部70に記録されている移行基準を参照して、移行基準を満たしているかを判定する(ステップS64、S65)。 Until the switching process using the transition standard is performed, the registration processing unit 87 registers the measurement data received from the terminal 6 in the current sub-blockchain 5b (sub BC-Y). The process at this time is, for example, the same as the process described with reference to FIG. In parallel with the measurement data registration process, the registration processing unit 87 of each sub-blockchain node 80 satisfies the migration standard by referring to the migration standard recorded in the storage unit 70 at regular intervals. Is determined (steps S64, S65).

移行基準を満たしたと判定すると、各サブブロックチェーンノード80の登録処理部87は、新しいサブブロックチェーン5の設定を行う(ステップS66)。例えば、時刻2019年6月1日15:00に、各サブブロックチェーンノード80において、登録処理部87はサブブロックチェーン5の移行基準を満たしたと判定する。すると、登録処理部87は、端末6から受信した取引データを登録するサブブロックチェーン5の識別情報を「サブBC−Y」から「サブBC−X」に変更する。このため、取引データの登録先は「サブBC−Y」に対応付けられたサブブロックチェーン台帳71Yから「サブBC−X」に対応付けられたサブブロックチェーン台帳71Xに変更される。従って、取引データの共有に使用されるサブブロックチェーン5が、サブブロックチェーン5bからサブブロックチェーン5aに変更される。 When it is determined that the migration criterion is satisfied, the registration processing unit 87 of each sub-blockchain node 80 sets a new sub-blockchain 5 (step S66). For example, at 15:00 on June 1, 2019, at each sub-blockchain node 80, the registration processing unit 87 determines that the transition criteria of the sub-blockchain 5 have been satisfied. Then, the registration processing unit 87 changes the identification information of the sub blockchain 5 for registering the transaction data received from the terminal 6 from "sub BC-Y" to "sub BC-X". Therefore, the registration destination of the transaction data is changed from the sub-blockchain ledger 71Y associated with the "sub BC-Y" to the sub-blockchain ledger 71X associated with the "sub BC-X". Therefore, the sub-blockchain 5 used for sharing transaction data is changed from the sub-blockchain 5b to the sub-blockchain 5a.

ステップS66の処理後にサブブロックチェーンノード80aに端末6から計測データを含むトランザクションが送信されたとする。登録処理部87aは、トランザクション受信部61aを介してトランザクション中の計測データを取得すると、計測データをサブブロックチェーン台帳71Xに登録する(ステップS67)。このため、計測データがサブブロックチェーン5aに登録される。 It is assumed that a transaction including measurement data is transmitted from the terminal 6 to the sub-blockchain node 80a after the processing of step S66. When the registration processing unit 87a acquires the measurement data during the transaction via the transaction receiving unit 61a, the registration processing unit 87a registers the measurement data in the sub-blockchain ledger 71X (step S67). Therefore, the measurement data is registered in the sub-blockchain 5a.

ステップS66の処理後にサブブロックチェーンノード80bにも端末6から計測データを含むトランザクションが送信されたとする。この場合も、登録処理部87bは、トランザクション中の計測データをサブブロックチェーン台帳71Xに登録する(ステップS68)。このため、計測データがサブブロックチェーン5aに登録される。 It is assumed that a transaction including measurement data is also transmitted from the terminal 6 to the sub-blockchain node 80b after the process of step S66. Also in this case, the registration processing unit 87b registers the measurement data during the transaction in the sub-blockchain ledger 71X (step S68). Therefore, the measurement data is registered in the sub-blockchain 5a.

次に、各サブブロックチェーン5からのデータの取得処理について説明する。第2の実施形態では、各取引記録装置10の取得部21はデータの取得先とするサブブロックチェーン5を、データ集約モデルに含まれているサブブロックチェーン5の識別情報を用いて特定する。取得部21は、取得対象のデータを要求する際に、データの要求先のサブブロックチェーンノード80に対して、データを取得するサブブロックチェーン5の識別情報、データを測定した測定器名、測定時刻を通知する。サブブロックチェーンノード80のトランザクション発行部62は、通知された識別情報に対応付けられたサブブロックチェーン台帳71から、通知された条件に合致する情報を取得して、要求元の取引記録装置10に送信する。 Next, the process of acquiring data from each sub-blockchain 5 will be described. In the second embodiment, the acquisition unit 21 of each transaction recording device 10 identifies the sub-blockchain 5 as the data acquisition destination by using the identification information of the sub-blockchain 5 included in the data aggregation model. When requesting the data to be acquired, the acquisition unit 21 asks the sub-blockchain node 80 of the data request destination for the identification information of the sub-blockchain 5 to acquire the data, the name of the measuring instrument that measured the data, and the measurement. Notify the time. The transaction issuing unit 62 of the sub-blockchain node 80 acquires information matching the notified conditions from the sub-blockchain ledger 71 associated with the notified identification information, and sends the requesting transaction recording device 10 to the transaction recording device 10. Send.

例えば、取引記録装置10aの取得部21aは、識別情報=サブBC−X、集約対象=測定器名A〜C、集約期間=15:00〜15:29という情報をサブブロックチェーンノード80aに送信する。すると、トランザクション受信部61aは、通知された識別情報などの情報をトランザクション発行部62aに通知する。トランザクション発行部62aは、識別情報=サブBC−Xであることから、サブブロックチェーン台帳71Xをデータの検索先とする。トランザクション発行部62aは、集約対象=測定器名A〜C、集約期間=15:00〜15:29を満たす計測データをサブブロックチェーン台帳71Xから抽出し、取引記録装置10aに送信する。他の取引記録装置10とサブブロックチェーンノード80の間でも、同様に集約データの計算用のデータの取得処理が行われる。なお、集約データの生成、集約データの検証と登録は、第2の実施形態においても第1の実施形態と同様に行われる。 For example, the acquisition unit 21a of the transaction recording device 10a transmits information that the identification information = sub BC-X, the aggregation target = measuring instrument names A to C, and the aggregation period = 15:00 to 15:29 to the sub blockchain node 80a. To do. Then, the transaction receiving unit 61a notifies the transaction issuing unit 62a of information such as the notified identification information. Since the transaction issuing unit 62a has the identification information = sub BC-X, the sub blockchain ledger 71X is used as the data search destination. The transaction issuing unit 62a extracts measurement data satisfying the aggregation target = measuring instrument names A to C and the aggregation period = 15:00 to 15:29 from the sub-blockchain ledger 71X, and transmits the measurement data to the transaction recording device 10a. Similarly, data acquisition processing for calculating aggregated data is performed between the other transaction recording device 10 and the sub-blockchain node 80. The generation of the aggregated data, the verification and registration of the aggregated data are performed in the second embodiment in the same manner as in the first embodiment.

(B)サブブロックチェーン5からの情報の削除
次に、切り替え後に計測データの登録に使用されなくなったサブブロックチェーン5からの情報の削除処理の例を説明する。データ集約モデルが登録されると、各サブブロックチェーンノード80のデータ削除判定部86は、一定間隔の時間ごとに、記憶部70に記録されている削除基準を参照して、削除基準を満たしているかを判定する。削除基準を満たしたと判定すると、各サブブロックチェーンノード80のデータ削除判定部86は、削除対象のデータを保持しているサブブロックチェーン5のサブブロックチェーン台帳71を初期化する。
(B) Deletion of Information from Sub-Blockchain 5 Next, an example of information deletion processing from sub-blockchain 5 that is no longer used for registration of measurement data after switching will be described. When the data aggregation model is registered, the data deletion determination unit 86 of each sub-blockchain node 80 refers to the deletion standard recorded in the storage unit 70 at regular intervals and satisfies the deletion standard. Judge whether or not. When it is determined that the deletion criteria are satisfied, the data deletion determination unit 86 of each sub-blockchain node 80 initializes the sub-blockchain ledger 71 of the sub-blockchain 5 that holds the data to be deleted.

例えば、時刻2019年6月1日18:00に、サブブロックチェーンノード80aのデータ削除判定部86aはサブブロックチェーン5の削除基準を満たしたと判定する。データ集約モデルでは、削除基準で削除の対象とされているサブブロックチェーン5の識別情報は「サブBC−Y」である。そこで、データ削除判定部86aは、「サブBC−Y」に対応付けられたサブブロックチェーン台帳71Yの情報を削除して初期化する。サブブロックチェーンノード80a以外のサブブロックチェーンノード80も同様に処理を行うので、時刻2019年6月1日18:00を経過すると、サブブロックチェーン5bを共有している全てのサブブロックチェーンノード80において、サブブロックチェーン台帳71Yが初期化され、計測データが削除される。なお、サブブロックチェーン台帳71Yの初期化では、サブブロックチェーン台帳71Yに含まれている計測データだけでなく、チェーン情報を用いてつなげられたブロック全体も削除される。従って、サブブロックチェーン台帳71Yを初期化することにより、サブブロックチェーン5bに含まれる全てのブロックの情報が削除されるので、サブブロックチェーン5b自体が削除されることになる。 For example, at 18:00 on June 1, 2019, the data deletion determination unit 86a of the sub-blockchain node 80a determines that the deletion criterion of the sub-blockchain 5 is satisfied. In the data aggregation model, the identification information of the sub-blockchain 5 that is the target of deletion based on the deletion criteria is "sub BC-Y". Therefore, the data deletion determination unit 86a deletes and initializes the information of the sub-blockchain ledger 71Y associated with the "sub BC-Y". Since the sub-blockchain nodes 80 other than the sub-blockchain nodes 80a also perform the same processing, after 18:00 on June 1, 2019, all the sub-blockchain nodes 80 sharing the sub-blockchain 5b In, the sub-blockchain ledger 71Y is initialized and the measurement data is deleted. In the initialization of the sub-blockchain ledger 71Y, not only the measurement data included in the sub-blockchain ledger 71Y but also the entire block connected by using the chain information is deleted. Therefore, by initializing the sub-blockchain ledger 71Y, the information of all the blocks included in the sub-blockchain 5b is deleted, so that the sub-blockchain 5b itself is deleted.

(C)処理フロー
図16は、サブブロックチェーン5の切り替え処理の例を説明するフローチャートである。クライアントは、クライアント端末7を用いてサブブロックチェーン5の移行や削除を行うための基準を取引記録装置10に通知する(ステップS81)。ここで、サブブロックチェーン5の移行や削除を行うための基準は、データ集約モデルに含まれていても良い。サブブロックチェーンノード80中の登録処理部87は、取引記録装置10からサブブロックチェーン5の移行の基準と削除基準を取得する(ステップS82)。各サブブロックチェーンノード80は、移行基準を用いてデータを登録するサブブロックチェーン台帳71を変更する(ステップS83)。その後、サブブロックチェーンノード80は、削除基準を用いて、現在使用していないサブブロックチェーン5のサブブロックチェーン台帳71のデータを削除する(ステップS84)。
(C) Processing Flow FIG. 16 is a flowchart illustrating an example of switching processing of the sub-blockchain 5. The client notifies the transaction recording device 10 of the criteria for migrating or deleting the sub-blockchain 5 using the client terminal 7 (step S81). Here, the criteria for migrating or deleting the sub-blockchain 5 may be included in the data aggregation model. The registration processing unit 87 in the sub-blockchain node 80 acquires the migration standard and the deletion standard of the sub-blockchain 5 from the transaction recording device 10 (step S82). Each sub-blockchain node 80 changes the sub-blockchain ledger 71 for registering data using the migration criteria (step S83). After that, the sub-blockchain node 80 deletes the data in the sub-blockchain ledger 71 of the sub-blockchain 5 that is not currently used by using the deletion criterion (step S84).

なお、図16は処理の一例であり、実装に応じて処理が変更され得る。例えば、図15などを参照しながら説明したように、一部のサブブロックチェーンノード80が取引記録装置10から削除基準や移行基準を取得してサブブロックチェーンノード80間でこれらの基準を共有しても良い。さらに、ステップS84において、使用していないサブブロックチェーン5のサブブロックチェーン台帳71を削除する代わりに、サブブロックチェーン台帳71を初期化してもよい。 Note that FIG. 16 is an example of processing, and the processing can be changed depending on the implementation. For example, as described with reference to FIG. 15 and the like, some sub-blockchain nodes 80 acquire deletion criteria and migration criteria from the transaction recording device 10 and share these criteria among the sub-blockchain nodes 80. You may. Further, in step S84, instead of deleting the sub-blockchain ledger 71 of the sub-blockchain 5 that is not in use, the sub-blockchain ledger 71 may be initialized.

このように、第2の実施形態にかかるシステムでは、集約データがメインブロックチェーン1に登録された後の取引データを含むサブブロックチェーン5の情報を削除することができる。このため、第2の実施形態によると、サブブロックチェーン5を共有するサブブロックチェーンノード80においても、端末6から通知された計測データを記録し続けることによるサブブロックチェーン5の肥大化を防ぐことができる。従って、サブブロックチェーン5の肥大化によりサブブロックチェーン台帳71のデータ量が大きくなることにより、サブブロックチェーンノード80が保持するメモリ領域を消費することを防ぐことができる。従って、第2の実施形態では、メモリの容量が比較的小さい装置でもサブブロックチェーンノード80として使用可能である。 As described above, in the system according to the second embodiment, the information of the sub blockchain 5 including the transaction data after the aggregated data is registered in the main blockchain 1 can be deleted. Therefore, according to the second embodiment, even in the sub-blockchain node 80 sharing the sub-blockchain 5, it is possible to prevent the sub-blockchain 5 from becoming bloated by continuously recording the measurement data notified from the terminal 6. Can be done. Therefore, it is possible to prevent the memory area held by the sub-blockchain node 80 from being consumed by increasing the amount of data in the sub-blockchain ledger 71 due to the enlargement of the sub-blockchain 5. Therefore, in the second embodiment, even a device having a relatively small memory capacity can be used as the subblockchain node 80.

さらに、第2の実施形態でも、メインブロックチェーン1には端末6から得られた取引データは含まれず、所定期間ごとに集約された集約データが記録される。このため、メインブロックチェーン1の肥大化も防止される。ここで、第2の実施形態でも第1の実施形態と同様に、メインブロックチェーン1への登録は、所定の数以上の取引記録装置10での集約データの計算結果が一致した場合に行われるので、メインブロックチェーン1に登録されるデータの信頼性も担保される。 Further, also in the second embodiment, the main blockchain 1 does not include the transaction data obtained from the terminal 6, and the aggregated data aggregated for each predetermined period is recorded. Therefore, the enlargement of the main blockchain 1 is also prevented. Here, also in the second embodiment, as in the first embodiment, registration to the main blockchain 1 is performed when the calculation results of the aggregated data in the predetermined number or more of the transaction recording devices 10 match. Therefore, the reliability of the data registered in the main blockchain 1 is also guaranteed.

<その他>
なお、実施形態は上記に限られるものではなく、様々に変形可能である。以下にその例をいくつか述べる。
<Others>
The embodiment is not limited to the above, and can be variously modified. Some examples are given below.

以上の説明は、端末6が発電量測定メータであり、取引データが発電量である場合を例として説明したが、取引データや端末6の種類は実装に応じて任意に変更され得る。また、集約データの計算方法も、取引データの種類や取引データの使用形態に応じて任意に変更され得る。 In the above description, the case where the terminal 6 is a power generation amount measuring meter and the transaction data is the power generation amount has been described as an example, but the transaction data and the type of the terminal 6 can be arbitrarily changed depending on the implementation. Further, the calculation method of the aggregated data can be arbitrarily changed according to the type of transaction data and the usage pattern of the transaction data.

システム中の端末6の数が多い場合などには、複数のサブブロックチェーン5が使用され得る。例えば、第1の実施形態において、端末6a〜6eの他に、端末6f〜6n(図示せず)も取引データの計測を行っているとする。この状態で各端末6がサブブロックチェーンノード50を介してサブブロックチェーン5に取引データを登録することができる。例えば、端末6f〜6iはサブブロックチェーンノード50c〜50f(図示せず)を介してサブブロックチェーン5bに取引データを登録できる。さらに、端末6j〜6nは、サブブロックチェーンノード50g〜50j(図示せず)を介してサブブロックチェーン5cに取引データを登録できる。この場合においても、各取引記録装置10の取得部21には、データ取得先となるサブブロックチェーンノード50のアドレスなどの情報が設定されているものとする。また、第2の実施形態においても、第1の実施形態と同様に、計測データの記録に複数のサブブロックチェーン5を同時に使用してもよい。 When the number of terminals 6 in the system is large, a plurality of sub-blockchains 5 may be used. For example, in the first embodiment, it is assumed that terminals 6f to 6n (not shown) are also measuring transaction data in addition to terminals 6a to 6e. In this state, each terminal 6 can register transaction data in the sub-blockchain 5 via the sub-blockchain node 50. For example, terminals 6f to 6i can register transaction data in the subblockchain 5b via the subblockchain nodes 50c to 50f (not shown). Further, the terminals 6j to 6n can register transaction data in the subblockchain 5c via the subblockchain nodes 50g to 50j (not shown). Even in this case, it is assumed that information such as the address of the sub-blockchain node 50 as the data acquisition destination is set in the acquisition unit 21 of each transaction recording device 10. Further, also in the second embodiment, as in the first embodiment, a plurality of sub-blockchains 5 may be used at the same time for recording measurement data.

以上の説明では、取引記録装置10をサブブロックチェーンノード50、80とは異なる装置として説明したが、取引記録装置10はサブブロックチェーンノード50、80としても動作しても良い。例えば、プロセッサ101の処理能力が高く、メモリ102および記憶装置106の容量の大きいコンピュータが、取引記録装置10とサブブロックチェーンノード50の両方として動作してもよい。 In the above description, the transaction recording device 10 has been described as a device different from the sub-blockchain nodes 50 and 80, but the transaction recording device 10 may also operate as the sub-blockchain nodes 50 and 80. For example, a computer having a high processing capacity of the processor 101 and a large capacity of the memory 102 and the storage device 106 may operate as both the transaction recording device 10 and the subblockchain node 50.

以上の説明では、合意形成や検証の手順にPBFTプロトコルを使用する場合を例として説明したが、任意のブロックチェーンプロトコルの手順に従って合意形成や検証が行われ得る。また、各ブロックチェーンを共有する装置(取引記録装置10、サブブロックチェーンノード50、80)の数は実装に応じて任意に変更され得る。 In the above description, the case where the PBFT protocol is used for the procedure of consensus building and verification has been described as an example, but consensus building and verification can be performed according to the procedure of any blockchain protocol. Further, the number of devices (transaction recording device 10, sub-blockchain nodes 50, 80) sharing each blockchain can be arbitrarily changed according to the implementation.

以上の説明では、取引記録装置10が暗号化に使用する秘密鍵を保持する場合について説明したが、実装に応じて秘密鍵の保管方法も変更され得る。例えば、一部の取引記録装置10は、他の取引記録装置10に保持されている秘密鍵をネットワーク経由で取得して暗号化に使用するように変更され得る。 In the above description, the case where the transaction recording device 10 holds the private key used for encryption has been described, but the storage method of the private key may be changed depending on the implementation. For example, some transaction recording devices 10 may be modified to acquire a private key held in another transaction recording device 10 via a network and use it for encryption.

1 メインブロックチェーン
5 サブブロックチェーン
6 端末
7 クライアント端末
10 取引記録装置
15 制御部
20 集約処理部
21 取得部
22 生成部
30 メインブロックチェーン制御部
31、61 トランザクション受信部
32、62 トランザクション発行部
33、63 登録処理部
40、70 記憶部
41 メインブロックチェーン台帳
42 設定情報
43 公開鍵情報
50 サブブロックチェーンノード
60 サブブロックチェーン制御部
71 サブブロックチェーン台帳
101 プロセッサ
102 メモリ
103 入力装置
104 出力装置
105 バス
106 記憶装置
107 可搬記憶媒体駆動装置
108 可搬記憶媒体
109 ネットワークインタフェース
1 Main blockchain 5 Sub-blockchain 6 Terminal 7 Client terminal 10 Transaction recording device 15 Control unit 20 Aggregation processing unit 21 Acquisition unit 22 Generation unit 30 Main blockchain control unit 31, 61 Transaction receiving unit 32, 62 Transaction issuing unit 33, 63 Registration processing unit 40, 70 Storage unit 41 Main blockchain ledger 42 Setting information 43 Public key information 50 Subblockchain node 60 Subblockchain control unit 71 Subblockchain ledger 101 Processor 102 Memory 103 Input device 104 Output device 105 Bus 106 Storage device 107 Portable storage medium drive device 108 Portable storage medium 109 Network interface

Claims (7)

第1のブロックチェーンを共有するネットワークに参加する取引記録装置であって、
取引時刻と前記取引時刻に行われた取引に関するデータが登録された第2のブロックチェーンから情報を取得する取得部と、
前記取得部が取得した前記情報を用いて、所定の期間中に行われた前記取引に関するデータを集約した集約データを生成する生成部と、
前記集約データが、前記ネットワークに参加している他の取引記録装置での前記所定の期間中に行われた前記取引に関するデータから生成された他の集約データと一致する場合に、前記集約データを前記第1のブロックチェーンに登録する登録処理部
を備えることを特徴とする取引記録装置。
A transaction recording device that participates in a network that shares the first blockchain.
An acquisition unit that acquires information from the second blockchain in which data related to the transaction time and the transaction performed at the transaction time is registered, and
Using the information acquired by the acquisition unit, a generation unit that generates aggregated data that aggregates data related to the transactions performed during a predetermined period, and a generation unit.
When the aggregated data matches other aggregated data generated from the data relating to the transaction made during the predetermined period in another transaction recording device participating in the network, the aggregated data is used. A transaction recording device including a registration processing unit for registering in the first blockchain.
前記第1のブロックチェーンは、前記所定の期間中に行われた前記取引に関するデータの代わりに前記集約データを保持する
ことを特徴とする請求項1に記載の取引記録装置。
The transaction recording device according to claim 1, wherein the first blockchain holds the aggregated data in place of the data related to the transactions performed during the predetermined period.
前記集約データを前記ネットワーク中の他の取引記録装置に通知する集約トランザクションを発行するトランザクション発行部をさらに備え、
前記登録処理部は、前記集約トランザクションに前記ネットワーク中の前記他の取引記録装置が前記集約データと同じ集約結果を得たことを示す署名が所定数以上追加されたトランザクションを取得すると、前記集約データが前記他の集約データと一致すると判定する
ことを特徴とする請求項1または2に記載の取引記録装置。
Further, a transaction issuing unit for issuing an aggregated transaction for notifying the aggregated data to other transaction recording devices in the network is provided.
When the registration processing unit acquires a transaction in which a predetermined number or more signatures indicating that the other transaction recording device in the network has obtained the same aggregation result as the aggregated data are added to the aggregated transaction, the aggregated data is acquired. The transaction recording device according to claim 1 or 2, wherein is determined to match the other aggregated data.
前記第2のブロックチェーンが所定の移行基準を満たすと、前記取引を行う装置から取得した前記取引時刻と前記取引に関するデータの登録先を前記第2のブロックチェーンから第3のブロックチェーンに切り替えるノード装置が、前記取得部の通信先である場合、前記取得部は、
前記第1のブロックチェーンを介して前記集約データの計算に使用する取引データを記録したブロックチェーンの識別情報を取得し、
前記第2のブロックチェーンと前記第3のブロックチェーンのうち、前記識別情報で識別されるブロックチェーンから、前記所定の期間中に行われた前記取引に関するデータを取得する
ことを特徴とする請求項1〜3のいずれか1項に記載の取引記録装置。
When the second blockchain meets a predetermined migration criterion, a node that switches the registration destination of the transaction time and data related to the transaction acquired from the device performing the transaction from the second blockchain to the third blockchain. When the device is the communication destination of the acquisition unit, the acquisition unit
The identification information of the blockchain that records the transaction data used for the calculation of the aggregated data is acquired via the first blockchain.
A claim characterized in that data relating to the transaction performed during the predetermined period is acquired from the blockchain identified by the identification information among the second blockchain and the third blockchain. The transaction recording device according to any one of 1 to 3.
前記登録処理部は、前記所定の期間と前記集約データの計算方法を示す情報を取得すると、前記所定の期間と前記集約データの計算方法を前記第1のブロックチェーンに登録し、
前記取得部は、前記第1のブロックチェーンを介して前記所定の期間を取得することにより、前記所定の期間に行われた取引に関するデータを取得し、
前記生成部は、前記第1のブロックチェーンを介して取得した前記計算方法を用いて、前記取得部が取得した情報を処理することにより前記集約データを生成する
ことを特徴とする請求項1〜4のいずれか1項に記載の取引記録装置。
When the registration processing unit acquires the information indicating the predetermined period and the calculation method of the aggregated data, the registration processing unit registers the predetermined period and the calculation method of the aggregated data in the first blockchain.
The acquisition unit acquires data on transactions performed during the predetermined period by acquiring the predetermined period via the first blockchain.
Claims 1 to 1, wherein the generation unit generates the aggregated data by processing the information acquired by the acquisition unit by using the calculation method acquired via the first blockchain. The transaction recording device according to any one of 4.
第1のブロックチェーンを共有するネットワークに参加する取引記録装置が、
取引時刻と前記取引時刻に行われた取引に関するデータが登録された第2のブロックチェーンから情報を取得し、
取得した前記情報を用いて、所定の期間中に行われた前記取引に関するデータを集約した集約データを生成し、
前記集約データが、前記ネットワークに参加している他の取引記録装置での前記所定の期間中に行われた前記取引に関するデータから生成された他の集約データと一致する場合に、前記集約データを前記第1のブロックチェーンに登録する
ことを特徴とする取引記録方法。
A transaction recording device that participates in a network that shares the first blockchain
Information is acquired from the second blockchain in which the transaction time and the data related to the transaction performed at the transaction time are registered.
Using the acquired information, aggregate data that aggregates the data related to the transactions performed during a predetermined period is generated.
When the aggregated data matches other aggregated data generated from the data relating to the transaction made during the predetermined period in another transaction recording device participating in the network, the aggregated data is used. A transaction recording method characterized by registering in the first blockchain.
第1のブロックチェーンを共有するネットワークに参加する取引記録装置に、
取引時刻と前記取引時刻に行われた取引に関するデータが登録された第2のブロックチェーンから情報を取得し、
取得した前記情報を用いて、所定の期間中に行われた前記取引に関するデータを集約した集約データを生成し、
前記集約データが、前記ネットワークに参加している他の取引記録装置での前記所定の期間中に行われた前記取引に関するデータから生成された他の集約データと一致する場合に、前記集約データを前記第1のブロックチェーンに登録する
処理を行わせることを特徴とする取引記録プログラム。
For transaction recording devices that participate in networks that share the first blockchain,
Information is acquired from the second blockchain in which the transaction time and the data related to the transaction performed at the transaction time are registered.
Using the acquired information, aggregate data that aggregates the data related to the transactions performed during a predetermined period is generated.
When the aggregated data matches other aggregated data generated from the data relating to the transaction made during the predetermined period in another transaction recording device participating in the network, the aggregated data is selected. A transaction recording program characterized in that a process of registering in the first blockchain is performed.
JP2019167925A 2019-09-17 2019-09-17 Transaction recording device, transaction recording method, and transaction recording program Active JP7322621B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019167925A JP7322621B2 (en) 2019-09-17 2019-09-17 Transaction recording device, transaction recording method, and transaction recording program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019167925A JP7322621B2 (en) 2019-09-17 2019-09-17 Transaction recording device, transaction recording method, and transaction recording program

Publications (2)

Publication Number Publication Date
JP2021048430A true JP2021048430A (en) 2021-03-25
JP7322621B2 JP7322621B2 (en) 2023-08-08

Family

ID=74876637

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019167925A Active JP7322621B2 (en) 2019-09-17 2019-09-17 Transaction recording device, transaction recording method, and transaction recording program

Country Status (1)

Country Link
JP (1) JP7322621B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7393484B1 (en) * 2022-07-29 2023-12-06 Kddi株式会社 Information processing device and information processing method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160027229A1 (en) * 2014-07-25 2016-01-28 Blockchain Technologies Corporation System and method for securely receiving and counting votes in an election
JP5858506B1 (en) * 2015-04-09 2016-02-10 株式会社Orb Virtual currency management program and virtual currency management method
US20180218003A1 (en) * 2017-01-30 2018-08-02 General Electric Company Ephemeral blockchain data structure
JP6478361B1 (en) * 2018-08-11 2019-03-06 株式会社bitFlyer Blockchain network and determination method therefor
WO2019072301A2 (en) * 2018-12-21 2019-04-18 Alibaba Group Holding Limited Verifying integrity of data stored in a consortium blockchain using a public sidechain

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160027229A1 (en) * 2014-07-25 2016-01-28 Blockchain Technologies Corporation System and method for securely receiving and counting votes in an election
JP5858506B1 (en) * 2015-04-09 2016-02-10 株式会社Orb Virtual currency management program and virtual currency management method
US20180218003A1 (en) * 2017-01-30 2018-08-02 General Electric Company Ephemeral blockchain data structure
JP6478361B1 (en) * 2018-08-11 2019-03-06 株式会社bitFlyer Blockchain network and determination method therefor
WO2019072301A2 (en) * 2018-12-21 2019-04-18 Alibaba Group Holding Limited Verifying integrity of data stored in a consortium blockchain using a public sidechain

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ビットバンク株式会社, ブロックチェーンの衝撃, vol. 第1版, JPN6023015713, 13 June 2016 (2016-06-13), JP, pages 242, ISSN: 0005044471 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7393484B1 (en) * 2022-07-29 2023-12-06 Kddi株式会社 Information processing device and information processing method

Also Published As

Publication number Publication date
JP7322621B2 (en) 2023-08-08

Similar Documents

Publication Publication Date Title
US20220198410A1 (en) Providing data provenance, permissioning, compliance, and access control for data storage systems using an immutable ledger overlay network
JP6939791B2 (en) Bulletin board information management system
US20190172026A1 (en) Cross blockchain secure transactions
US10944570B2 (en) Method and server for providing notary service for file and verifying file recorded by notary service
US10235538B2 (en) Method and server for providing notary service for file and verifying file recorded by notary service
US20190268139A1 (en) Data authentication using a blockchain approach
JP6756041B2 (en) Information protection systems and methods
CN109726887A (en) The acquisition of mobile crowdsourcing Data Data and processing system and method based on block chain
CN109842606A (en) Block chain common recognition algorithm and system based on consistency hash algorithm
US11729000B2 (en) Methods and systems for introducing self-contained intent functionality into decentralized computer networks
JP6838388B2 (en) Information processing system, information processing method, program and information processing device
TW202034247A (en) Methods and devices for providing transaction data to blockchain system for processing
KR102041720B1 (en) Implementing system of flexible blockchain framework and p2p network constructing method thereof, recording medium for performing the method
GB2570301A (en) Interaction between blockchains
US20030014365A1 (en) Information processing method and program
WO2020160391A1 (en) An efficient, environmental and consumer friendly consensus method for cryptographic transactions
CN110009339A (en) Data processing method and device based on block chain
US20220052921A1 (en) Methods and systems for introducing self-contained intent functionality into decentralized computer networks
CN115136543A (en) Authentication service for use in blockchain networks
JP2019176381A (en) Block chain program and block chain method
WO2019186978A1 (en) Electronic transaction system, transaction server, verification server, electronic transaction method and program
JP7322621B2 (en) Transaction recording device, transaction recording method, and transaction recording program
US11831749B1 (en) Method and system for utilizing the infrastructure of a blockchain to enhance the degree of reliability of another blockchain
CN112163917B (en) Bill processing method and device based on blockchain, medium and electronic equipment
CN111008251B (en) Data processing method and device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220609

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230329

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230425

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230614

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230627

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230710

R150 Certificate of patent or registration of utility model

Ref document number: 7322621

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150