Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6495346B2 - Information processing system - Google Patents
[go: Go Back, main page]

JP6495346B2 - Information processing system - Google Patents

Information processing system Download PDF

Info

Publication number
JP6495346B2
JP6495346B2 JP2017001935A JP2017001935A JP6495346B2 JP 6495346 B2 JP6495346 B2 JP 6495346B2 JP 2017001935 A JP2017001935 A JP 2017001935A JP 2017001935 A JP2017001935 A JP 2017001935A JP 6495346 B2 JP6495346 B2 JP 6495346B2
Authority
JP
Japan
Prior art keywords
information
block
transaction
temporary
digest value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017001935A
Other languages
Japanese (ja)
Other versions
JP2018112827A (en
Inventor
盛徳 大橋
盛徳 大橋
宮崎 泰彦
泰彦 宮崎
篤 中平
篤 中平
滋 藤村
滋 藤村
大喜 渡邊
大喜 渡邊
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.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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 Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2017001935A priority Critical patent/JP6495346B2/en
Publication of JP2018112827A publication Critical patent/JP2018112827A/en
Application granted granted Critical
Publication of JP6495346B2 publication Critical patent/JP6495346B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報処理システムに関する。   The present invention relates to an information processing system.

近年、ブロックチェーンまたはブロックチェーン技術と呼ばれる仕組みが仮想通貨を中心に普及しつつある。ブロックチェーンは2008年に仮想通貨ビットコインの中核技術として登場した。ブロックチェーンとは、分散ノードで構成されるネットワークにおいて、悪意のあるノードが一定割合以内という条件下で分散ノード間の情報同期を可能にする技術である。分散ノードが保有する情報は、台帳データまたは台帳と呼ばれ、データブロックをつないだ論理構造を持つ。   In recent years, a mechanism called block chain or block chain technology is becoming popular mainly in virtual currency. Blockchain appeared in 2008 as the core technology of virtual currency bitcoin. Blockchain is a technology that enables information synchronization between distributed nodes under a condition that malicious nodes are within a certain ratio in a network composed of distributed nodes. Information held by a distributed node is called ledger data or ledger, and has a logical structure that connects data blocks.

データブロックには、ブロックチェーンネットワークに発行されたトランザクションに関する情報が格納される。ブロックチェーンネットワークの維持に参加するノードは、ブロックチェーンネットワークに発行された各トランザクションを検証し、複数のトランザクションをまとめてデータブロックの生成を始める。データブロックの生成にはある条件があり、ブロックチェーンの維持に参加するノードは条件を満たすデータブロックを探す。条件を満たすデータブロックを生成できたノードは他のノードに対して見つけたデータブロックを送信するとともに自身の台帳データにそのブロックを追加する。データブロックを受け取ったノードは、データブロックに格納されているトランザクションやデータブロックを検証し、自身が持つ台帳データにつなぐ。   The data block stores information related to transactions issued to the block chain network. A node participating in the maintenance of the blockchain network verifies each transaction issued to the blockchain network, and collects a plurality of transactions to start generating a data block. There are certain conditions for generating data blocks, and nodes participating in the maintenance of the block chain search for data blocks that satisfy the conditions. A node that has been able to generate a data block that satisfies the condition transmits the data block found to other nodes and adds the block to its own ledger data. The node that has received the data block verifies the transaction and data block stored in the data block, and connects to the ledger data held by the node.

データブロックには、格納するトランザクションの情報の他、ひとつ前のデータブロックを示す情報やブロック生成条件に関する情報も含まれており、誰でも検証し、情報の正しさを確認することができる。データブロック間には依存関係があり、さらにブロック生成には条件があるため、過去のデータブロックになるほど改竄が困難になるという特徴がある。台帳データには、ブロックチェーンネットワークに発行された全部のトランザクションが格納される。   The data block includes information on the transaction to be stored, information indicating the immediately preceding data block, and information on the block generation condition, and anyone can verify and confirm the correctness of the information. Since there is a dependency relationship between data blocks and there are conditions for block generation, there is a feature that the past data blocks become more difficult to falsify. The ledger data stores all transactions issued to the blockchain network.

ブロックチェーンの実装はいくつか知られている。最初に実装されたブロックチェーンは仮想通貨のビットコインである(非特許文献1参照)。ビットコインでは、トランザクションのつながりで取引を表現している。近年では、台帳データにプログラムコードを埋め込み、任意の処理をトランザクションにより実行させ、その結果を台帳データに格納することができるブロックチェーンの実装も登場している(非特許文献2参照)。プログラムコードを実行できるプラットフォームでは、トランザクションの他、プログラムコードや処理結果に関する情報も台帳データに保持され、分散ノード間で同期されている。   Several blockchain implementations are known. The first implemented blockchain is a virtual currency bit coin (see Non-Patent Document 1). In Bitcoin, transactions are expressed as a series of transactions. In recent years, blockchain implementations have also appeared that can embed program code in ledger data, execute arbitrary processing by transactions, and store the results in the ledger data (see Non-Patent Document 2). In the platform that can execute the program code, in addition to the transaction, information about the program code and the processing result is also held in the ledger data and is synchronized between the distributed nodes.

Satoshi Nakamoto、[online]、 “Bitcoin: A Peer-to-Peer Electronic Cash System”、[平成28年12月8日検索]、インターネット<URL:http://www.cryptovest.co.uk/resources/Bitcoin%20paper%20Original.pdf>Satoshi Nakamoto, [online], “Bitcoin: A Peer-to-Peer Electronic Cash System”, [Search December 8, 2016], Internet <URL: http://www.cryptovest.co.uk/resources/ Bitcoin% 20paper% 20Original.pdf> “ETHEREUM: A SECURE DECENTRALISED GENERALISED TRANSACTION LEDGER” 、[online]、[平成28年12月8日検索]、インターネット<URL:http://bitcoinaffiliatelist.com/wp-content/uploads/ethereum.pdf>“ETHEREUM: A SECURE DECENTRALISED GENERALISED TRANSACTION LEDGER”, [online], [Search December 8, 2016], Internet <URL: http: //bitcoinaffiliatelist.com/wp-content/uploads/ethereum.pdf>

しかしながら、ブロックチェーンでは、トランザクション情報のすべてがブロックチェーンに格納されるため、永続的に格納する必要のない一時情報のやり取りや保持が目的でも長期に渡り残り、情報が読み取られる危険性がある(分散ノードの数だけ流出のリスクが高まる)。また、台帳データにはすべてのトランザクションが格納されるため、永続的に必要とされる情報以外も格納されると台帳データが膨大になる。   However, in the blockchain, all transaction information is stored in the blockchain. Therefore, there is a risk that the information will be read for a long time even for the purpose of exchanging and maintaining temporary information that does not need to be stored permanently. The risk of outflow increases by the number of distributed nodes). Further, since all transactions are stored in the ledger data, the ledger data becomes enormous if information other than information that is permanently required is stored.

一時情報を保持するために台帳データとは別に一時情報用データ格納領域を新設し、一時情報をそのデータ格納領域に格納するとともに、ブロックへトランザクションを格納するときにトランザクションから一時情報を除くというアプローチをとった場合、次の課題がある。   In order to retain temporary information, a new temporary information data storage area is created separately from the ledger data, temporary information is stored in the data storage area, and temporary information is excluded from transactions when storing transactions in blocks. If you take this, there are the following issues.

一時情報を除けるようにするためには、その部分を除いてトランザクションに署名する必要があるが、一時情報を記載するフィールドを第三者により置き換えられてしまう可能性がある。仮に、トランザクションへの署名の他に、一時情報にのみ新たに電子署名を付与したとしても、同じ発行者の別のトランザクションの一時情報に置き換えられてしまう可能性がある。   In order to be able to remove the temporary information, it is necessary to sign the transaction excluding that part, but there is a possibility that the field describing the temporary information may be replaced by a third party. Even if a new electronic signature is given only to temporary information in addition to the signature on the transaction, it may be replaced with temporary information of another transaction of the same issuer.

したがって、かかる点に鑑みてなされた本発明の目的は、一時情報を格納することができるとともに、台帳データまたは、台帳データおよび台帳データ用データ格納領域を軽量化することを可能にすることである。   Accordingly, an object of the present invention made in view of such a point is to be able to store temporary information and to reduce the ledger data or the ledger data and the data storage area for the ledger data. .

上記の課題を解決するため、本発明に係る情報処理システムは、互いに情報を送受信する1つ以上のトランザクション発行装置と、複数のブロック生成検証装置とを備える情報処理システムであって、前記トランザクション発行装置は、本トランザクション情報及び一時情報を含むトランザクション情報(実施形態では、第1のトランザクション情報又は第2のトランザクション情報を意味する)を生成するトランザクション生成部と、前記トランザクション情報を前記ブロック生成検証装置に送信するトランザクション通信部と、を有し、前記ブロック生成検証装置は、前記本トランザクション情報及び前記本トランザクション情報のダイジェスト値を含み、前記一時情報を含まない格納用ブロックを生成するブロック生成部と、前記一時情報を一時情報用データ格納領域に格納し、前記格納用ブロックを台帳データに繋げる格納制御部と、前記一時情報、前記本トランザクション情報、前記本トランザクション情報のダイジェスト値、及び前記一時情報用データ格納領域のダイジェスト値を送信するブロック通信部と、他のブロック生成検証装置から送信された前記一時情報を格納した一時情報用データ格納領域から算出したダイジェスト値と、前記一時情報用データ格納領域のダイジェスト値とに基づいて前記一時情報を検証するブロック検証部と、を有することを特徴とする。   In order to solve the above-described problem, an information processing system according to the present invention is an information processing system including one or more transaction issuing devices that transmit / receive information to / from each other and a plurality of block generation verification devices. An apparatus includes a transaction generation unit that generates transaction information including the transaction information and temporary information (in the embodiment, means first transaction information or second transaction information), and the block generation verification apparatus that transmits the transaction information. A block generation unit that generates a storage block that includes the transaction information and a digest value of the transaction information, and does not include the temporary information. , Said temporary Information is stored in the temporary information data storage area and the storage block is connected to the ledger data, the temporary information, the transaction information, the digest value of the transaction information, and the temporary information data storage A block communication unit that transmits the digest value of the area; a digest value calculated from the temporary information data storage area that stores the temporary information transmitted from another block generation verification device; and a digest of the temporary information data storage area And a block verification unit that verifies the temporary information based on the value.

本発明によれば、一時情報を格納することができるとともに、ブロックチェーン及び台帳データ用データ格納領域を軽量化することができる。   ADVANTAGE OF THE INVENTION According to this invention, while being able to store temporary information, the block chain and the data storage area for ledger data can be reduced in weight.

第1の実施形態に係る情報処理システムの機能構成図である。It is a functional lineblock diagram of the information processing system concerning a 1st embodiment. 図1に示すトランザクション発行装置の機能構成図である。It is a function block diagram of the transaction issuing apparatus shown in FIG. 第1の実施形態における電子署名付きの第1のトランザクション情報を示す概念図である。It is a conceptual diagram which shows the 1st transaction information with a digital signature in 1st Embodiment. 図1に示すブロック生成検証装置の機能構成図である。It is a functional block diagram of the block production | generation verification apparatus shown in FIG. 第1の実施形態におけるブロックを示す概念図であり、図5(a)は格納用ブロックを示す概念図であり、図5(b)は送受信用ブロックを示す概念図である。FIG. 5A is a conceptual diagram showing blocks in the first embodiment, FIG. 5A is a conceptual diagram showing storage blocks, and FIG. 5B is a conceptual diagram showing transmission / reception blocks. 第1の実施形態におけるブロックチェーンを示す概念図である。It is a conceptual diagram which shows the block chain in 1st Embodiment. 第1の実施形態におけるブロック生成検証装置の情報処理方法を示す処理フロー図である。It is a processing flowchart which shows the information processing method of the block generation verification apparatus in 1st Embodiment. 第1の実施形態における他のブロック生成検証装置の情報処理方法を示す処理フロー図である。It is a processing flowchart which shows the information processing method of the other block production | generation verification apparatus in 1st Embodiment. 第2の実施形態における電子署名付きの第2のトランザクション情報を示す概念図である。It is a conceptual diagram which shows the 2nd transaction information with an electronic signature in 2nd Embodiment. 第2の実施形態におけるブロック生成検証装置の機能構成図である。It is a functional block diagram of the block generation verification apparatus in 2nd Embodiment. 第2の実施形態における格納用ブロックを示す概念図である。It is a conceptual diagram which shows the block for storage in 2nd Embodiment. 第2の実施形態におけるブロックチェーンを示す概念図である。It is a conceptual diagram which shows the block chain in 2nd Embodiment. 第1の実施形態におけるブロック生成検証装置の情報処理方法を示す処理フロー図である。It is a processing flowchart which shows the information processing method of the block generation verification apparatus in 1st Embodiment. 第1の実施形態における他のブロック生成検証装置の情報処理方法を示す処理フロー図である。It is a processing flowchart which shows the information processing method of the other block production | generation verification apparatus in 1st Embodiment. トランザクション情報に含まれるプログラムコードの例である。It is an example of the program code contained in transaction information.

[第1の実施形態]
まず、図1を参照して、本発明の第1の実施形態の機能構成について説明する。図1は、第1の実施形態に係る情報処理システム1の機能構成図である。
[First Embodiment]
First, the functional configuration of the first embodiment of the present invention will be described with reference to FIG. FIG. 1 is a functional configuration diagram of an information processing system 1 according to the first embodiment.

図1に示すように、情報処理システム1は、1つ以上のトランザクション発行装置2、及び複数のブロック生成検証装置3を備える。複数のトランザクション発行装置2及び複数のブロック生成検証装置3は、互いにP2P(Peer to Peer)型の通信ネットワーク(以降、「ブロックチェーンネットワーク」という)により接続され、情報を送受信する。   As shown in FIG. 1, the information processing system 1 includes one or more transaction issuing devices 2 and a plurality of block generation verification devices 3. The plurality of transaction issuing devices 2 and the plurality of block generation verification devices 3 are connected to each other by a P2P (Peer to Peer) type communication network (hereinafter referred to as “block chain network”), and transmit and receive information.

トランザクション発行装置2は、スマートフォン、PC(Personal Computer)、タブレット等のコンピュータである。トランザクション発行装置2は、図2に示すようにトランザクション生成部21、電子署名付与部22、及びトランザクション通信部23を備える。   The transaction issuing device 2 is a computer such as a smartphone, a PC (Personal Computer), or a tablet. As illustrated in FIG. 2, the transaction issuing device 2 includes a transaction generation unit 21, an electronic signature assignment unit 22, and a transaction communication unit 23.

トランザクション生成部21は、ユーザの入力に基づき、図3に示すような第1のトランザクション情報を生成する。第1のトランザクション情報には、本トランザクション情報と一時情報とが含まれる。本トランザクション情報の一例は、情報処理システム1で利用される仮想通貨(ビットコイン)を用いた取引の情報である。また、本トランザクション情報は、計算処理を行うためのプログラムコード、計算処理の結果であってもよい。一例として、本トランザクション情報は、ユーザU1がユーザU2に送金したことを示す情報であり、金額、ユーザU1の識別情報、ユーザU2の識別情報等が含まれる。一時情報とは、取引の履歴としてブロックに永続的に保存される必要のない情報であり、例えば、暗号化された情報、該暗号化された情報を復号するためのコンテンツ復号鍵等である。このように、暗号化された情報、コンテンツ復号鍵等が一時情報に含まれることによって、例えば、暗号化された個人情報の利用者からの要望やサービス利用終了に伴い削除する運用や情報処理システム1に参加している利用者間でコンテンツ復号鍵の送受が完了した時点で削除する運用をすることが可能となる。   The transaction generation unit 21 generates first transaction information as shown in FIG. 3 based on a user input. The first transaction information includes the transaction information and temporary information. An example of the transaction information is information on a transaction using a virtual currency (bit coin) used in the information processing system 1. Further, the transaction information may be a program code for performing a calculation process or a result of the calculation process. As an example, the transaction information is information indicating that the user U1 has transferred money to the user U2, and includes an amount, identification information of the user U1, identification information of the user U2, and the like. Temporary information is information that does not need to be permanently stored in a block as a transaction history, such as encrypted information, a content decryption key for decrypting the encrypted information, and the like. As described above, when the encrypted information, the content decryption key, etc. are included in the temporary information, for example, the operation or information processing system that deletes the request from the user of the encrypted personal information or the use of the service is terminated. It is possible to delete the content decryption key when the transmission / reception of the content decryption key is completed between the users participating in 1.

電子署名付与部22は、トランザクション生成部21によって生成された、本トランザクション情報と一時情報とを含む第1のトランザクション情報に秘密鍵を用いて暗号化することによって第1の電子署名を付与する。また、電子署名付与部22は、本トランザクション情報のみに、第1の電子署名と同一の秘密鍵による第2の電子署名を付与する。   The electronic signature attaching unit 22 assigns a first electronic signature by encrypting the first transaction information generated by the transaction generating unit 21 including the transaction information and the temporary information using a secret key. In addition, the electronic signature giving unit 22 gives the second electronic signature with the same secret key as the first electronic signature only to the transaction information.

トランザクション通信部23はトランザクション生成部21によって生成された、第1のトランザクション情報、電子署名付与部22によって付与された第1の電子署名及び第2の電子署名をブロードキャストで、複数のブロック生成検証装置3に送信する。   The transaction communication unit 23 broadcasts the first transaction information generated by the transaction generation unit 21, the first electronic signature and the second electronic signature added by the electronic signature addition unit 22, and generates a plurality of block generation verification devices 3 to send.

ブロック生成検証装置3は、図4に示すように、ブロック通信部31、格納部32、トランザクション検証部33、ブロック生成部34、ブロック検証部35、及び格納制御部36を備える。   As shown in FIG. 4, the block generation verification device 3 includes a block communication unit 31, a storage unit 32, a transaction verification unit 33, a block generation unit 34, a block verification unit 35, and a storage control unit 36.

ブロック通信部31は、トランザクション発行装置2又は他のブロック生成検証装置3から送信された第1のトランザクション情報、第1の電子署名、及び第2の電子署名を受信する。また、ブロック通信部31は、他のブロック生成検証装置3から受信した、第1のトランザクション情報、第1の電子署名、及び第2の電子署名をさらに別のブロック生成検証装置3にブロードキャストで送信する。   The block communication unit 31 receives the first transaction information, the first electronic signature, and the second electronic signature transmitted from the transaction issuing device 2 or another block generation verification device 3. The block communication unit 31 broadcasts the first transaction information, the first electronic signature, and the second electronic signature received from the other block generation verification device 3 to another block generation verification device 3 by broadcast. To do.

格納部32は、各種情報及び各種情報をまとめた格納用ブロックを格納する。格納部32は、台帳データ格納領域321、台帳データ用データ格納領域322、及び一時情報用データ格納領域323を備える。   The storage unit 32 stores various information and a storage block in which the various information is collected. The storage unit 32 includes a ledger data storage area 321, a ledger data storage area 322, and a temporary information data storage area 323.

台帳データ格納領域321は、台帳データを格納する。台帳データとは、図5(a)に示すように前のブロックのブロックヘッダのハッシュ値、台帳データ用データ格納領域322に格納されている複数のトランザクション情報のダイジェスト値、一時情報用データ格納領域323のダイジェスト値、及び複数の本トランザクション情報を含む格納用ブロックを図6に示すように前のブロックに連鎖させたチェーン状の情報の集合である。なお、一時情報用データ格納領域323のダイジェスト値とは、一時情報用データ格納領域323に記憶されている一時情報全体のダイジェスト値である。   The ledger data storage area 321 stores ledger data. As shown in FIG. 5A, the ledger data is a hash value of the block header of the previous block, a digest value of a plurality of transaction information stored in the ledger data storage area 322, and a temporary information data storage area. This is a chain-like set of information in which a storage block including a digest value of 323 and a plurality of pieces of transaction information is chained to the previous block as shown in FIG. The digest value in the temporary information data storage area 323 is the digest value of the entire temporary information stored in the temporary information data storage area 323.

ここで、「連鎖する」とは、各ブロックに、1つ前のブロックのブロックヘッダのハッシュ値を含めることである。このため、例えば、ブロックチェーンで互いに連鎖されているブロックのいずれかについて改竄が行われると、該ブロックのブロックヘッダのハッシュ値は全く異なる値となる。このため、ブロックヘッダのハッシュ値と、1つ後ろのブロックのブロックヘッダに記載されたハッシュ値とが異なることになる。したがって、トランザクション情報を改竄したことが明らかになり、改竄を防止する仕組みとして利用される。   Here, “to chain” means to include the hash value of the block header of the previous block in each block. For this reason, for example, if any of the blocks chained together in the block chain is altered, the hash value of the block header of the block becomes a completely different value. For this reason, the hash value of the block header is different from the hash value described in the block header of the next block. Therefore, it becomes clear that the transaction information has been tampered with and is used as a mechanism for preventing tampering.

台帳データ用データ格納領域322は、第1のトランザクション情報に含まれる電子署名付きの本トランザクション情報を格納する。   The ledger data storage area 322 stores the main transaction information with an electronic signature included in the first transaction information.

一時情報用データ格納領域323は、台帳データに繋がれるブロックにそれぞれ含まれる本トランザクション情報に対応する一時情報を格納する。   The temporary information data storage area 323 stores temporary information corresponding to the transaction information included in each block connected to the ledger data.

トランザクション検証部33は、ブロック通信部31がトランザクション発行装置2から受信した第1のトランザクション情報の形式及び電子署名を検証する。具体的には、トランザクション検証部33は、第1のトランザクション情報の形式が所定の形式であるか否かを判定する。また、トランザクション検証部33は、電子署名の署名検証により第1のトランザクション情報が正当な発行者によるものであるか否かを判定する。また、トランザクション検証部33は、ブロック通信部31が他のブロック生成検証装置3から電子署名付きの第1のトランザクション情報を受信すると、受信した第1のトランザクション情報の形式及び電子署名を同様に検証する。   The transaction verification unit 33 verifies the format and electronic signature of the first transaction information received by the block communication unit 31 from the transaction issuing device 2. Specifically, the transaction verification unit 33 determines whether or not the format of the first transaction information is a predetermined format. Further, the transaction verification unit 33 determines whether or not the first transaction information is from a valid issuer by signature verification of the electronic signature. Further, when the block communication unit 31 receives the first transaction information with the electronic signature from the other block generation verification device 3, the transaction verification unit 33 similarly verifies the format of the received first transaction information and the electronic signature. To do.

ブロック生成部34は、トランザクション検証部33によってトランザクション情報の形式が所定の形式であり、該トランザクション情報が正当な発行者によるものであると判定された場合、図5(a)に示すような、ブロック本体及びブロックヘッダからなる格納用ブロックを生成する。ブロック生成部34は、格納用ブロックのブロック本体に複数の、電子署名付きの本トランザクション情報を含め、一時情報を含めない。なお、ブロック本体に含まれる複数の本トランザクション情報の1つ以上は、対応する第1のトランザクション情報に一時情報が含まれていないものであってもよい。   When the transaction verification unit 33 determines that the transaction information format is a predetermined format and the transaction information is from a valid issuer, the block generation unit 34, as shown in FIG. A storage block including a block body and a block header is generated. The block generation unit 34 includes a plurality of main transaction information with an electronic signature in the block body of the storage block, and does not include temporary information. Note that one or more of the plurality of main transaction information included in the block main body may not include temporary information in the corresponding first transaction information.

また、ブロック生成部34は、ブロックヘッダに、前に格納されたブロックのブロックヘッダのハッシュ値と、ブロック本体に含まれる複数のトランザクション情報のダイジェスト値と、一時情報用データ格納領域323のダイジェスト値とを含める。なお、ブロック生成部34は、トランザクション情報をツリー構造で台帳データ格納領域321に記憶させるが、このツリー構造におけるルートノードをダイジェスト値としてブロックヘッダに含んでもよい。   In addition, the block generation unit 34 includes, in the block header, a hash value of the block header of the previously stored block, a digest value of a plurality of transaction information included in the block body, and a digest value of the temporary information data storage area 323. And include. The block generation unit 34 stores the transaction information in the ledger data storage area 321 in a tree structure, but the root node in this tree structure may be included in the block header as a digest value.

このとき、ブロック生成部34は、格納用ブロックがブロック生成条件を満たすためのノンス(Nonce)を探索する。ブロック生成条件とは、例えば、格納用ブロックのブロックヘッダのハッシュ値が閾値より小さくなるという条件である。   At this time, the block generator 34 searches for a nonce for the storage block to satisfy the block generation condition. The block generation condition is, for example, a condition that the hash value of the block header of the storage block is smaller than a threshold value.

ブロック生成部34は、所定の条件を満たすノンスをみつけると、格納用ブロックを台帳データに繋げる。また、ブロック生成部34は、所定の条件を満たすノンスをみつけると、ブロック通信部31に、送受信用ブロックを他のブロック生成検証装置3に対してブロードキャストで送信させる。また、ブロック生成部34がノンスをみつけると、ブロック通信部31が送受信用ブロックを送信し、さらに送信した送受信用ブロックを自ら受信してもよい。この場合、格納制御部36は、受信した送受信用ブロックに対応する格納用ブロックを台帳データに繋げる。送受信用ブロックは、図5(b)に示すように、格納用ブロックに一時情報を加えた情報である。すなわち送受信用ブロックは、第1のトランザクション情報、第1の電子署名、及び第2の電子署名を有するブロック本体と、前のブロックのブロックヘッダのハッシュ値、台帳データ用データ格納領域322に格納されている複数のトランザクション情報のダイジェスト値、及び一時情報用データ格納領域323のダイジェスト値とを有するブロックヘッダと含む。   When the block generation unit 34 finds a nonce that satisfies a predetermined condition, it connects the storage block to the ledger data. Further, when the block generation unit 34 finds a nonce that satisfies the predetermined condition, the block generation unit 34 causes the block communication unit 31 to transmit the transmission / reception block to other block generation verification devices 3 by broadcast. Further, when the block generation unit 34 finds a nonce, the block communication unit 31 may transmit the transmission / reception block, and may further receive the transmitted transmission / reception block itself. In this case, the storage control unit 36 connects the storage block corresponding to the received transmission / reception block to the ledger data. The transmission / reception block is information obtained by adding temporary information to the storage block, as shown in FIG. That is, the transmission / reception block is stored in the block main body having the first transaction information, the first electronic signature, and the second electronic signature, the hash value of the block header of the previous block, and the ledger data storage area 322. And a block header having a digest value of a plurality of transaction information and a digest value of the temporary information data storage area 323.

ブロック検証部35は、ブロック通信部31が他のブロック生成検証装置3から送受信用ブロックを受信し、トランザクション検証部33が該送受信用ブロックに含まれる第1のトランザクション情報の正当性を検証する。   In the block verification unit 35, the block communication unit 31 receives a transmission / reception block from another block generation verification device 3, and the transaction verification unit 33 verifies the validity of the first transaction information included in the transmission / reception block.

具体的には、ブロック検証部35は、送受信用ブロックに含まれる本トランザクション情報からダイジェスト値を算出し、算出されたダイジェスト値とブロックヘッダに記載された台帳データ用データ格納領域322のダイジェスト値とが同一である場合に正当性を確認する。また、ブロック検証部35は、一時情報用データ格納領域323からダイジェスト値を算出し、算出されたダイジェスト値とブロックヘッダに記載された一時情報用データ格納領域323のダイジェスト値とが同一である場合に正当性を確認する。   Specifically, the block verification unit 35 calculates a digest value from the transaction information included in the transmission / reception block, and calculates the digest value and the digest value in the ledger data storage area 322 described in the block header. Confirm the correctness if they are the same. The block verification unit 35 calculates a digest value from the temporary information data storage area 323, and the calculated digest value and the digest value of the temporary information data storage area 323 described in the block header are the same. Check the legitimacy.

ブロック検証部35は、正当性が確認されると、本トランザクション情報を含み、一時情報を含まない格納用ブロックがブロック生成条件を満たすか否かを検証する。   When the validity is confirmed, the block verification unit 35 verifies whether the storage block including the transaction information and not including the temporary information satisfies the block generation condition.

格納制御部36は、第1のトランザクション情報を一意に識別するためのトランザクションID(Identification)、及び第1のトランザクション情報に含まれる一時情報を一時情報用データ格納領域323に格納させる。   The storage control unit 36 stores the transaction ID (Identification) for uniquely identifying the first transaction information and the temporary information included in the first transaction information in the temporary information data storage area 323.

また、格納制御部36は、ブロック生成部34が所定の条件を満たすノンスをみつけると、図6に示すように、格納用ブロックを台帳データ格納領域321に繋げる。また、格納制御部36は、ブロック通信部31が受信した送受信用ブロックに対応する格納用ブロックがブロック生成条件を満たすと判定されると、該格納用ブロックを台帳データに繋げる。   In addition, when the block generation unit 34 finds a nonce that satisfies a predetermined condition, the storage control unit 36 connects the storage block to the ledger data storage area 321 as shown in FIG. Further, when it is determined that the storage block corresponding to the transmission / reception block received by the block communication unit 31 satisfies the block generation condition, the storage control unit 36 connects the storage block to the ledger data.

また、格納制御部36は、所定のタイミングで一時情報用データ格納領域323に格納されている一時情報を削除する。例えば、格納制御部36は、トランザクションIDとともに一時情報を削除する旨の命令を含むトランザクション情報を受信し、該トランザクションに係る一時情報を削除することができる。また、格納制御部36は、一時情報用データ格納領域323に一時情報が格納されてから所定の時間が経過したときに一時情報を削除してもよいし、トランザクションの発生日時から所定の期間が経過したとき、又は他の情報管理装置に管理されている契約期間が徒過したときに一時情報を削除してもよい。削除のタイミングについては適宜設計される。   The storage control unit 36 deletes the temporary information stored in the temporary information data storage area 323 at a predetermined timing. For example, the storage control unit 36 can receive transaction information including an instruction to delete temporary information together with a transaction ID, and delete temporary information related to the transaction. Further, the storage control unit 36 may delete the temporary information when a predetermined time has elapsed since the temporary information was stored in the temporary information data storage area 323, or the predetermined period from the occurrence date and time of the transaction. Temporary information may be deleted when it has passed or when the contract period managed by another information management device has passed. The timing of deletion is designed as appropriate.

続いて、第1の実施形態におけるブロック生成検証装置3の情報処理方法について図7に示すシーケンス図を参照して説明する。   Next, an information processing method of the block generation verification apparatus 3 in the first embodiment will be described with reference to the sequence diagram shown in FIG.

ブロック生成検証装置3のブロック通信部31は、トランザクション発行装置2からブロードキャストで送信された第1のトランザクション情報を受信する(ステップS11)。   The block communication unit 31 of the block generation verification device 3 receives the first transaction information broadcast from the transaction issuing device 2 (step S11).

ステップS11で第1のトランザクション情報が受信されると、トランザクション検証部33は、第1のトランザクション情報の形式及び電子署名を検証し、正当な発行者によるトランザクションであるか否かを判定する(ステップS12)。   When the first transaction information is received in step S11, the transaction verification unit 33 verifies the format and electronic signature of the first transaction information and determines whether the transaction is a valid issuer (step S11). S12).

ステップS12で、第1のトランザクション情報が正当な発行者によるトランザクションであると判定されると、格納制御部36は、一時情報をトランザクションIDなどのキー情報とともに一時情報用データ格納領域323に格納する(ステップS13)。   If it is determined in step S12 that the first transaction information is a transaction by a valid issuer, the storage control unit 36 stores the temporary information in the temporary information data storage area 323 together with key information such as a transaction ID. (Step S13).

ステップS13で、一時情報が格納されると、ブロック生成部34は、格納用ブロックを生成する(ステップS14)。具体的には、ブロック生成部34は、ブロック本体に、複数の電子署名付き本トランザクションを含み、ブロックヘッダに複数の本トランザクションのダイジェスト値と、前のブロックのブロックヘッダのハッシュ値と、一時情報用データ格納領域323のダイジェスト値とを記載する。このとき、ブロック生成部34は、格納用ブロックがブロック生成条件を満たすようなノンスを探索する。   When the temporary information is stored in step S13, the block generator 34 generates a storage block (step S14). Specifically, the block generation unit 34 includes a plurality of main transactions with electronic signatures in the block body, a digest value of the plurality of main transactions in the block header, a hash value of the block header of the previous block, and temporary information The digest value of the data storage area 323 is described. At this time, the block generation unit 34 searches for a nonce that the storage block satisfies the block generation condition.

ステップS14で、ノンスがみつかると、格納制御部36は格納用ブロックを台帳データに繋げる。また、ブロック通信部31は、ブロック生成部34によって生成された格納用ブロックに含まれる第1のトランザクション情報と、ブロックヘッダに含まれるハッシュ値及びダイジェスト値とを含む送受信用ブロックを他のブロック生成検証装置3に対してブロードキャストで送信する(ステップS15)。このとき、ブロック通信部31が送信した送受信用ブロックを自ら受信し、格納制御部36が、受信した送受信用ブロックに対応する格納用ブロックを台帳データに繋げてもよい。   If a nonce is found in step S14, the storage control unit 36 connects the storage block to the ledger data. In addition, the block communication unit 31 generates another block for transmission / reception including the first transaction information included in the storage block generated by the block generation unit 34 and the hash value and digest value included in the block header. Broadcast to the verification device 3 (step S15). At this time, the transmission / reception block transmitted by the block communication unit 31 may be received by itself, and the storage control unit 36 may connect the storage block corresponding to the received transmission / reception block to the ledger data.

次に、送受信用ブロックを受信する他のブロック生成検証装置3の情報処理方法について図8を参照して説明する。   Next, an information processing method of another block generation verification apparatus 3 that receives a transmission / reception block will be described with reference to FIG.

他のブロック生成検証装置3のブロック通信部31は、ブロードキャストで送信された送受信用ブロックを受信する(ステップS21)。   The block communication unit 31 of the other block generation verification device 3 receives the transmission / reception block transmitted by broadcast (step S21).

ステップS21で送受信用ブロックが受信されると、トランザクション検証部33は、送受信用ブロックに含まれる第1のトランザクションの形式及び電子署名を検証する(ステップS22)。   When the transmission / reception block is received in step S21, the transaction verification unit 33 verifies the format and electronic signature of the first transaction included in the transmission / reception block (step S22).

ステップS22で、第1のトランザクション情報が正当な発行者によるトランザクションであると確認されると、格納制御部36は、送受信用ブロックに含まれる一時情報を一時情報用データ格納領域323に格納する(ステップS23)。   When it is confirmed in step S22 that the first transaction information is a transaction by a valid issuer, the storage control unit 36 stores the temporary information included in the transmission / reception block in the temporary information data storage area 323 ( Step S23).

ステップS23で一時情報が格納されると、ブロック検証部35は、一時情報用データ格納領域323からダイジェスト値を算出し、算出されたダイジェスト値とブロックヘッダに記載された一時情報用データ格納領域323のダイジェスト値とが同一である場合に正当性を確認する(ステップS24)。   When the temporary information is stored in step S23, the block verification unit 35 calculates the digest value from the temporary information data storage area 323, and the temporary information data storage area 323 described in the calculated digest value and the block header. If the digest value is the same, the validity is confirmed (step S24).

ステップS24で、一時情報用データ格納領域323の正当性が確認されると、ブロック検証部35は、格納用ブロックがブロック生成条件を満たすか否かを検証する(ステップS25)。   When the validity of the temporary information data storage area 323 is confirmed in step S24, the block verification unit 35 verifies whether the storage block satisfies the block generation condition (step S25).

ステップS25で格納用ブロックがブロック生成条件を満たすと確認されると、格納制御部36は、格納用ブロックを台帳データに繋げる(ステップS26)。   When it is confirmed in step S25 that the storage block satisfies the block generation condition, the storage control unit 36 connects the storage block to the ledger data (step S26).

以上のように、第1の実施形態によれば、ブロック生成検証装置3は、第1のトランザクション情報に含まれる情報のうち、永続的に格納する必要のない一時情報を一時情報用データ格納領域323に格納し、一時情報用データ格納領域323に格納された一時情報を適宜削除する。これにより台帳データ格納領域321及び台帳データ用データ格納領域322には一時情報を格納させる必要がないため、これらの領域の容量を低減することができる。   As described above, according to the first embodiment, the block generation verification device 3 stores temporary information that does not need to be stored permanently among information included in the first transaction information. The temporary information stored in the H.323 and stored in the temporary information data storage area 323 is appropriately deleted. As a result, since it is not necessary to store temporary information in the ledger data storage area 321 and the ledger data storage area 322, the capacity of these areas can be reduced.

このとき、永続的に格納する本トランザクション情報の真正性を担保するために、本トランザクション情報に電子署名を付与する必要がある。また、一時情報の真正性を担保するために一時情報にも電子署名することが考えられるが、この場合、一時情報を記載するフィールドを第三者により置き換えられてしまう可能性がある。しかし、第1の実施形態によれば、本トランザクション情報に電子署名が付されるだけでなく、一時情報と本トランザクション情報を含む第1のトランザクション情報に電子署名が付されるため、一時情報が改竄されたり、第1のトランザクション情報に含まれる一時情報のみが置き換えられたりした場合にその旨を検出することができる。したがって、情報処理システム1は一時情報の真正性を担保することができる。   At this time, in order to secure the authenticity of the transaction information stored permanently, it is necessary to give an electronic signature to the transaction information. Further, in order to ensure the authenticity of the temporary information, it is conceivable to digitally sign the temporary information as well, but in this case, there is a possibility that the field describing the temporary information may be replaced by a third party. However, according to the first embodiment, not only the electronic signature is attached to the transaction information, but also the temporary information and the first transaction information including the transaction information are attached with the electronic signature. This can be detected when tampering occurs or only temporary information included in the first transaction information is replaced. Therefore, the information processing system 1 can ensure the authenticity of the temporary information.

また、第1の実施形態によれば、ブロック生成検証装置3は、一時情報を含まない本トランザクション情報のみを含む格納用ブロックを台帳データ格納領域321に格納するが、他のブロック生成検証装置3には一時情報を含む送受信用ブロックを送信する。そのため、他のブロック生成検証装置3は、一時情報と本トランザクション情報とのいずれをも含む第1のトランザクション情報を受信し、受信した第1のトランザクション情報を正確に検証することができる。他のブロック生成検証装置3は、一時情報が真に対応する本トランザクション情報に対応していることを確認することができる。また、ブロック生成検証装置3は、台帳データに繋がれている本トランザクション情報に対応する一時情報全体を、一時情報用データ格納領域323のダイジェスト値を用いて検証するため、一時情報用データ格納領域323に格納されている一時情報のうちのいずれかの一時情報が取り換えられていた場合にもその旨を明らかにすることができる。これにより、一時情報全体についての真正性を確保することができる。   Further, according to the first embodiment, the block generation verification apparatus 3 stores the storage block including only the transaction information not including the temporary information in the ledger data storage area 321, but the other block generation verification apparatus 3 Transmits a transmission / reception block including temporary information. Therefore, the other block generation verification device 3 can receive the first transaction information including both the temporary information and the present transaction information, and can accurately verify the received first transaction information. The other block generation verification device 3 can confirm that the temporary information corresponds to the transaction information that truly corresponds. In addition, the block generation verification device 3 verifies the entire temporary information corresponding to the transaction information connected to the ledger data using the digest value of the temporary information data storage area 323, so that the temporary information data storage area This can be clarified even if any of the temporary information stored in the H.323 is replaced. Thereby, the authenticity of the entire temporary information can be ensured.

また、第1の実施形態によれば、ブロック生成検証装置3は、台帳データ用データ格納領域322のダイジェスト値をブロックヘッダに含めて、他のブロック生成検証装置3に送信する。このため、他のブロック生成検証装置3は、ブロック本体に含まれる、複数の本トランザクション情報からダイジェスト値を算出し、算出されたダイジェスト値とブロックヘッダに含まれるダイジェスト値とに基づいて、複数の本トランザクション情報のうちのいずれかが置き換えられているか否かを判定することができる。具体的には、ブロック生成検証装置3は、算出されたダイジェスト値とブロックヘッダに含まれるダイジェスト値とが同一である場合、いずれの本トランザクション情報も置き換えられていないと判定し、算出されたダイジェスト値とブロックヘッダに含まれるダイジェスト値とが異なる場合、いずれか1つ以上の本トランザクション情報が置き換えられたと判定することができる。したがって、ブロック生成検証装置3から他のブロック生成検証装置3に送信されたブロックに含まれる複数の本トランザクション情報の真正性を確保することができる。   Further, according to the first embodiment, the block generation verification device 3 includes the digest value of the ledger data storage area 322 in the block header and transmits the block header to the other block generation verification device 3. For this reason, the other block generation verification device 3 calculates the digest value from the plurality of main transaction information included in the block body, and based on the calculated digest value and the digest value included in the block header, It can be determined whether or not any of the transaction information has been replaced. Specifically, when the calculated digest value and the digest value included in the block header are the same, the block generation verification device 3 determines that none of the transaction information has been replaced, and calculates the calculated digest. When the value and the digest value included in the block header are different, it can be determined that any one or more of the transaction information has been replaced. Therefore, it is possible to ensure the authenticity of a plurality of the transaction information included in the block transmitted from the block generation verification device 3 to the other block generation verification device 3.

したがって、ブロックチェーンが実現する全ての本トランザクション情報の記録性、改竄耐性を損なうことなく、格納部32に永続的に格納させる必要のない一時情報を一時的に保持したうえで記憶容量を低減させることができる。   Accordingly, the storage capacity is reduced after temporarily storing temporary information that does not need to be stored permanently in the storage unit 32 without impairing the recordability and tamper resistance of all the transaction information realized by the blockchain. be able to.

[第2の実施形態]
続いて、本発明の第2の実施形態について図面を参照して説明する。
[Second Embodiment]
Next, a second embodiment of the present invention will be described with reference to the drawings.

第2の実施形態に係る情報処理システム5は、第1の実施形態に係る情報処理システム1と同様に、1つ以上のトランザクション発行装置2、及び複数のブロック生成検証装置6を備える。複数のトランザクション発行装置2及び複数のブロック生成検証装置6は、互いにP2P(Peer to Peer)型の通信ネットワークにより接続され、情報を送受信する。なお、第1の実施形態における情報処理システム1と同様の構成ブロックについては同一の参照符号を付して、適宜、説明を省略する。   Similar to the information processing system 1 according to the first embodiment, the information processing system 5 according to the second embodiment includes one or more transaction issuing devices 2 and a plurality of block generation verification devices 6. The plurality of transaction issuing devices 2 and the plurality of block generation verification devices 6 are connected to each other via a P2P (Peer to Peer) type communication network, and transmit and receive information. Note that the same constituent blocks as those of the information processing system 1 in the first embodiment are denoted by the same reference numerals, and description thereof will be omitted as appropriate.

第2の実施形態においては、トランザクション生成部21は、ユーザによる入力に基づいて、図9に示すように、本トランザクション情報及び一時情報を生成する。また、トランザクション生成部21は、一時情報に基づいて一時情報のダイジェスト値を算出する。   In the second embodiment, the transaction generation unit 21 generates the transaction information and the temporary information as shown in FIG. 9 based on the input by the user. Moreover, the transaction generation part 21 calculates the digest value of temporary information based on temporary information.

電子署名付与部22は、トランザクション生成部21によって生成された、本トランザクション情報と、一時情報のダイジェスト値とを含む情報に電子署名を付与することによって暗号化トランザクション情報を生成する。   The electronic signature adding unit 22 generates encrypted transaction information by adding an electronic signature to the information generated by the transaction generating unit 21 and including the transaction information and the digest value of the temporary information.

トランザクション通信部23は、電子署名付与部22によって生成された暗号化トランザクション情報と一時情報とを含む第2のトランザクション情報をブロック生成検証装置6に送信する。   The transaction communication unit 23 transmits the second transaction information including the encrypted transaction information generated by the electronic signature adding unit 22 and the temporary information to the block generation verification device 6.

ブロック生成検証装置6は、図10に示すように、第1の実施形態のブロック生成検証装置3の各機能部に加えてキャッシュテーブル37を備える。キャッシュテーブル37には、第2のトランザクション情報に含まれる一時情報が記憶される。   As illustrated in FIG. 10, the block generation verification device 6 includes a cache table 37 in addition to the functional units of the block generation verification device 3 of the first embodiment. The cache table 37 stores temporary information included in the second transaction information.

トランザクション検証部33は、ブロック通信部31がトランザクション発行装置2から受信した第2のトランザクション情報の形式及び電子署名を検証する。   The transaction verification unit 33 verifies the format and electronic signature of the second transaction information received by the block communication unit 31 from the transaction issuing device 2.

ブロック生成部34は、図11に示すような、ブロック本体及びブロックヘッダからなる格納用ブロックを生成する。ブロック生成部34は、ブロック本体に複数の、電子署名付きの暗号化トランザクション情報を含める。また、ブロック生成部34は、図12に示すように、前のブロックのブロックヘッダのハッシュ値、複数の本トランザクション情報のハッシュ値に加えて、キャッシュテーブル37のダイジェスト値をブロックヘッダに含める。   The block generation unit 34 generates a storage block including a block body and a block header as shown in FIG. The block generation unit 34 includes a plurality of encrypted transaction information with an electronic signature in the block body. Further, as shown in FIG. 12, the block generation unit 34 includes the digest value of the cache table 37 in the block header in addition to the hash value of the block header of the previous block and the hash values of the plurality of transaction information.

ブロック検証部35は、他のブロック生成検証装置6から受信した、一時情報を格納しているキャッシュテーブル37からダイジェスト値を算出する。そして、ブロック検証部35は、算出したダイジェスト値と、送受信用ブロックのブロックヘッダに記載されたキャッシュテーブル37のダイジェスト値とが一致するか否かを検証する。   The block verification unit 35 calculates the digest value from the cache table 37 storing temporary information received from the other block generation verification device 6. Then, the block verification unit 35 verifies whether or not the calculated digest value matches the digest value of the cache table 37 described in the block header of the transmission / reception block.

また、ブロック検証部35は、一時情報用データ格納領域323からダイジェスト値を算出する。そして、ブロック検証部35は、算出したダイジェスト値と、送受信用ブロックのブロックヘッダに記載された一時情報用データ格納領域323のダイジェスト値とが一致するか否かを検証する。   Further, the block verification unit 35 calculates a digest value from the temporary information data storage area 323. Then, the block verification unit 35 verifies whether the calculated digest value matches the digest value of the temporary information data storage area 323 described in the block header of the transmission / reception block.

次に、ブロック検証部35は、一時情報を格納しているキャッシュテーブル37のダイジェスト値がブロックヘッダに記載されているキャッシュテーブルのダイジェスト値と一致し、一時情報用データ格納領域323のダイジェスト値がブロックヘッダに記載されている一時情報用データ格納領域のダイジェスト値と一致すると、キャッシュテーブル37に格納された一時情報のダイジェスト値が、該一時情報に対応する暗号化トランザクション情報に記載された一時情報のダイジェスト値と一致するか否かを検証する。   Next, the block verification unit 35 matches the digest value of the cache table 37 storing the temporary information with the digest value of the cache table described in the block header, and the digest value of the temporary information data storage area 323 is When the digest value of the temporary information data storage area described in the block header matches the digest value of the temporary information stored in the cache table 37, the temporary information described in the encrypted transaction information corresponding to the temporary information It is verified whether or not it matches the digest value.

格納制御部36は、キャッシュテーブル37に格納された一時情報のダイジェスト値が、該一時情報に対応する暗号化トランザクション情報に記載された一時情報のダイジェスト値と一致すると判定され、かつ格納用ブロックがブロック生成条件を満たすと判定されると、格納用ブロックを台帳データに繋げる。   The storage control unit 36 determines that the digest value of the temporary information stored in the cache table 37 matches the digest value of the temporary information described in the encrypted transaction information corresponding to the temporary information, and the storage block is If it is determined that the block generation condition is satisfied, the storage block is connected to the ledger data.

また、ブロック通信部31は、ブロック生成部34がブロック生成条件を満たすノンスをみつけると、格納用ブロックとキャッシュテーブル37に格納されている一時情報とを他のブロック生成検証装置6に対してブロードキャストで送信する。   Further, when the block generation unit 34 finds a nonce that satisfies the block generation condition, the block communication unit 31 broadcasts the storage block and the temporary information stored in the cache table 37 to other block generation verification devices 6. Send with.

続いて、第2の実施形態における情報処理システム5の情報処理方法について図13を参照して説明する。   Next, an information processing method of the information processing system 5 in the second embodiment will be described with reference to FIG.

ステップS31〜S33、及びS35については、それぞれ第1の実施形態におけるステップS11〜S13,及びS15と同様である。   Steps S31 to S33 and S35 are the same as steps S11 to S13 and S15 in the first embodiment, respectively.

ステップS33で一時情報が格納されると、ブロック生成部34は、格納用ブロックを生成する。具体的には、ブロック生成部34は、ブロック本体に、複数の電子署名付き本トランザクションを含め、ブロックヘッダに複数の本トランザクションのダイジェスト値と、前のブロックのブロックヘッダのハッシュ値と、一時情報用データ格納領域323のダイジェスト値とに加え、キャッシュテーブル37のダイジェスト値を記載する(ステップS34)。   When the temporary information is stored in step S33, the block generator 34 generates a storage block. Specifically, the block generation unit 34 includes a plurality of electronic signature-added main transactions in the block body, a plurality of main transaction digest values in the block header, a block header hash value of the previous block, and temporary information. In addition to the digest value in the data storage area 323, the digest value in the cache table 37 is described (step S34).

次に、送受信用ブロックを受信する他のブロック生成検証装置6の情報処理方法について図14を参照して説明する。   Next, an information processing method of another block generation verification apparatus 6 that receives a transmission / reception block will be described with reference to FIG.

ステップS41及びS42については、それぞれ第1の実施形態におけるステップS11及びS12と同様である。   Steps S41 and S42 are the same as steps S11 and S12 in the first embodiment, respectively.

ステップS42で第2のトランザクション情報が検証されると、ブロック検証部35は、キャッシュテーブル37からダイジェスト値を算出する。そして、ブロック検証部35は、算出したダイジェスト値が、送受信用ブロックのブロックヘッダに記載された、キャッシュテーブル37のダイジェスト値と同一である場合に正当性を確認する。(ステップS43)。   When the second transaction information is verified in step S42, the block verification unit 35 calculates a digest value from the cache table 37. The block verification unit 35 confirms the validity when the calculated digest value is the same as the digest value of the cache table 37 described in the block header of the transmission / reception block. (Step S43).

ステップS43でキャッシュテーブル37のダイジェスト値が一致されていると判定されると、格納制御部36は、一時情報を一時情報用データ格納領域323に格納する(ステップS44)。   If it is determined in step S43 that the digest values in the cache table 37 match, the storage control unit 36 stores temporary information in the temporary information data storage area 323 (step S44).

ステップS44で一時情報が格納されると、ブロック検証部35は、一時情報用データ格納領域323からダイジェスト値を算出する。そして、ブロック検証部35は、算出したダイジェスト値が、送受信用ブロックのブロックヘッダに記載された、一時情報用データ格納領域323のダイジェスト値と一致するか否かを検証し、キャッシュテーブル37に格納された一時情報のダイジェスト値が、該一時情報に対応する本トランザクション情報に記載されたダイジェスト値と一致するか検証する(ステップS45)。   When the temporary information is stored in step S44, the block verification unit 35 calculates a digest value from the temporary information data storage area 323. Then, the block verification unit 35 verifies whether or not the calculated digest value matches the digest value in the temporary information data storage area 323 described in the block header of the transmission / reception block, and stores it in the cache table 37. It is verified whether the digest value of the received temporary information matches the digest value described in the transaction information corresponding to the temporary information (step S45).

ステップS45でダイジェスト値が一致していると判定されると、ブロック検証部35は、ノンスを用いて格納用ブロックがブロック生成条件を満たすか否かを検証する(ステップS46)。   If it is determined in step S45 that the digest values match, the block verification unit 35 verifies whether the storage block satisfies the block generation condition using a nonce (step S46).

ステップS45でブロック生成条件を満たすと確認されると、格納制御部36は、格納用ブロックを台帳データに繋げる(ステップS47)。   If it is confirmed in step S45 that the block generation condition is satisfied, the storage control unit 36 connects the storage block to the ledger data (step S47).

以上のように、第2の実施形態においては、第1の実施形態と同様に、情報処理システム5は、ブロック生成検証装置6の記憶容量を低減させ、一時情報の真正性を担保することができる。   As described above, in the second embodiment, as in the first embodiment, the information processing system 5 can reduce the storage capacity of the block generation verification device 6 and ensure the authenticity of temporary information. it can.

また、第2の実施形態においては、ブロック生成検証装置6は、キャッシュテーブルのダイジェスト値を生成し、生成したダイジェスト値を含む送受信用ブロックを他のブロック生成検証装置6に送信する。このため、他のブロック生成検証装置6は、キャッシュテーブルに格納されている一時情報に電子署名が付与されていなくても、ブロックヘッダに記載されているキャッシュテーブルのダイジェスト値を用いて一時情報の真正性を確認することができる。   In the second embodiment, the block generation verification device 6 generates a digest value of the cache table, and transmits a transmission / reception block including the generated digest value to another block generation verification device 6. For this reason, the other block generation verification device 6 uses the digest value of the cache table described in the block header even if the electronic signature is not given to the temporary information stored in the cache table. Authenticity can be confirmed.

また、ブロック生成検証装置3は、台帳データに繋がれている本トランザクション情報に対応する一時情報全体を、一時情報用データ格納領域323のダイジェスト値を用いて検証するため、一時情報用データ格納領域323に格納されている一時情報のうちのいずれかの一時情報が取り換えられていた場合にもその旨を明らかにすることができる。これにより、一時情報全体についての真正性を確保することができるという第1の実施形態と同様の効果を奏する。   In addition, the block generation verification device 3 verifies the entire temporary information corresponding to the transaction information connected to the ledger data using the digest value of the temporary information data storage area 323, so that the temporary information data storage area This can be clarified even if any of the temporary information stored in the H.323 is replaced. Thereby, the same effect as 1st Embodiment that the authenticity about the whole temporary information is securable is produced.

なお、上述の実施形態における情報処理システム1及び情報処理システム5は、ビットコイン型ブロックチェーンプラットフォームとして説明したが、これに限られない。情報処理システム1及び情報処理システム5は、プログラムコード実行型ブロックチェーンプラットフォームであってもよい。   In addition, although the information processing system 1 and the information processing system 5 in the above-mentioned embodiment were described as a bit coin type block chain platform, it is not limited to this. The information processing system 1 and the information processing system 5 may be a program code execution type block chain platform.

トランザクション発行装置2のトランザクション生成部21は、本トランザクション情報にプログラムコード(スマートコントラクト)が含まれるように第1のトランザクション情報又は第2のトランザクション情報(以降、単に「トランザクション情報」という)を生成する。なお、トランザクション生成部21は、格納領域を指定する指定子(例えば、図15の「nohistory」)がプロパティに記載されたプログラムコードが本トランザクション情報に含まれるようトランザクション情報を生成する。   The transaction generation unit 21 of the transaction issuing device 2 generates first transaction information or second transaction information (hereinafter simply referred to as “transaction information”) such that the program code (smart contract) is included in the transaction information. . Note that the transaction generation unit 21 generates transaction information so that a program code in which a specifier (for example, “nohistory” in FIG. 15) specifying a storage area is written in the property is included in the transaction information.

また、トランザクション発行装置2のトランザクション生成部21は、本トランザクション情報及び一時情報の1つ以上にプログラムのメソッドが含まれるようにトランザクション情報を生成する。トランザクション生成部21は、メソッドの引数が本トランザクション情報である場合、本トランザクション情報にメソッドおよび引数が含まれるようにトランザクション情報を生成する。また、トランザクション生成部21は、メソッドの引数が一時情報である場合、メソッドおよび一時情報への参照情報を本トランザクション情報に記載したトランザクション情報を生成する。   Further, the transaction generation unit 21 of the transaction issuing device 2 generates transaction information so that one or more of the transaction information and the temporary information includes a program method. When the method argument is the transaction information, the transaction generation unit 21 generates the transaction information so that the method and the argument are included in the transaction information. Further, when the method argument is temporary information, the transaction generation unit 21 generates transaction information in which reference information to the method and temporary information is described in the transaction information.

また、格納制御部36は、トランザクション発行装置2から送信されたトランザクションにプログラムコードが含まれる場合には、該プログラムコードを台帳データ用データ格納領域322に格納する。格納制御部36は、プログラムコードのプロパティに記載された格納領域を指定する指定子にもとづき、台帳データ用データ格納領域322および一時情報用データ格納領域323に領域を確保する。   In addition, when the program transmitted from the transaction issuing device 2 includes a program code, the storage control unit 36 stores the program code in the ledger data storage area 322. The storage control unit 36 secures areas in the ledger data storage area 322 and the temporary information data storage area 323 based on a specifier designating the storage area described in the property of the program code.

また、格納制御部36は、トランザクション発行装置2から送信されたトランザクションに含まれるメソッドの引数が本トランザクション情報に記載されている場合、該メソッドを実行し、実行結果のプロパティに指定された指定子にもとづき実行結果を格納し、引数は台帳データ用データ格納領域322に格納する。格納制御部36は、メソッドの引数が一時情報である旨の記載がある場合、該メソッドを実行し、実行結果のプロパティに指定された指定子にもとづき格納し、引数は一時情報用データ格納領域323に格納する。   In addition, when the argument of the method included in the transaction transmitted from the transaction issuing device 2 is described in the transaction information, the storage control unit 36 executes the method and specifies the specifier specified in the property of the execution result. The execution result is stored based on the data, and the argument is stored in the data storage area 322 for ledger data. When there is a description that the method argument is temporary information, the storage control unit 36 executes the method and stores the method based on the specifier specified in the property of the execution result, and the argument is a temporary information data storage area. Stored in H.323.

また、格納制御部36は、所定のタイミングで一時情報用データ格納領域323に格納されている一時情報を削除する。例えば、格納制御部36は、削除メソッドが記載されたトランザクションがトランザクション発行装置2から発行された場合に該トランザクションに係る一時情報を削除することができる。   The storage control unit 36 deletes the temporary information stored in the temporary information data storage area 323 at a predetermined timing. For example, the storage control unit 36 can delete temporary information related to a transaction when a transaction in which a deletion method is described is issued from the transaction issuing device 2.

上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。   Although the above embodiment has been described as a representative example, it will be apparent to those skilled in the art that many changes and substitutions can be made within the spirit and scope of the invention. Therefore, the present invention should not be construed as being limited by the above-described embodiments, and various modifications and changes can be made without departing from the scope of the claims.

1,5 情報処理システム
2 トランザクション発行装置
3,6 ブロック生成検証装置
4 通信ネットワーク
21 トランザクション生成部
22 電子署名付与部
23 トランザクション通信部
31 ブロック通信部
32 格納部
33 トランザクション検証部
34 ブロック生成部
35 ブロック検証部
36 格納制御部
37 キャッシュテーブル
321 台帳データ格納領域
322 台帳データ用データ格納領域
323 一時情報用データ格納領域
DESCRIPTION OF SYMBOLS 1,5 Information processing system 2 Transaction issuing apparatus 3,6 Block generation verification apparatus 4 Communication network 21 Transaction generation part 22 Electronic signature provision part 23 Transaction communication part 31 Block communication part 32 Storage part 33 Transaction verification part 34 Block generation part 35 Block Verification unit 36 Storage control unit 37 Cache table 321 Ledger data storage area 322 Ledger data storage area 323 Temporary information data storage area

Claims (5)

互いに情報を送受信する1つ以上のトランザクション発行装置と、複数のブロック生成検証装置とを備える情報処理システムであって、
前記トランザクション発行装置は、
本トランザクション情報及び一時情報を含むトランザクション情報を生成するトランザクション生成部と、
前記トランザクション情報を前記ブロック生成検証装置に送信するトランザクション通信部と、を有し、
前記ブロック生成検証装置は、
前記本トランザクション情報及び前記本トランザクション情報のダイジェスト値を含み、前記一時情報を含まない格納用ブロックを生成するブロック生成部と、
前記一時情報を一時情報用データ格納領域に格納し、前記格納用ブロックを台帳データに繋げる格納制御部と、
前記一時情報、前記本トランザクション情報、前記本トランザクション情報のダイジェスト値、及び前記一時情報用データ格納領域のダイジェスト値を送信するブロック通信部と、
他のブロック生成検証装置から送信された前記一時情報を格納した一時情報用データ格納領域から算出したダイジェスト値と、前記一時情報用データ格納領域のダイジェスト値とに基づいて前記一時情報を検証するブロック検証部と、
を有することを特徴とする情報処理システム。
An information processing system comprising one or more transaction issuing devices that transmit / receive information to / from each other and a plurality of block generation verification devices,
The transaction issuing device
A transaction generator for generating transaction information including the transaction information and temporary information;
A transaction communication unit that transmits the transaction information to the block generation verification device,
The block generation verification device
A block generation unit that generates a storage block that includes the transaction information and a digest value of the transaction information and does not include the temporary information;
A storage control unit for storing the temporary information in a temporary information data storage area, and connecting the storage block to ledger data;
A block communication unit that transmits the temporary information, the transaction information, the digest value of the transaction information, and the digest value of the data storage area for temporary information;
A block for verifying the temporary information based on the digest value calculated from the temporary information data storage area storing the temporary information transmitted from another block generation verification device and the digest value of the temporary information data storage area A verification unit;
An information processing system comprising:
前記トランザクション発行装置は、
前記トランザクション情報に第1の電子署名を付与し、前記本トランザクション情報に第2の電子署名を付与する電子署名付与部をさらに有し、
前記格納用ブロックは、前記第2の電子署名が付与された前記本トランザクション情報を含み、一時情報及び第1の電子署名を含まないことを特徴とする請求項1に記載の情報処理システム。
The transaction issuing device
An electronic signature providing unit that assigns a first electronic signature to the transaction information and a second electronic signature to the transaction information;
The information processing system according to claim 1, wherein the storage block includes the main transaction information to which the second electronic signature is attached, and does not include temporary information and the first electronic signature.
前記トランザクション発行装置は、
前記本トランザクション情報及び前記一時情報のダイジェスト値に電子署名を付与する電子署名付与部を有し、
前記格納用ブロックは、前記電子署名が付与された前記本トランザクション情報及び前記一時情報のダイジェスト値を含み、前記一時情報を含まないことを特徴とする請求項1に記載の情報処理システム。
The transaction issuing device
An electronic signature giving unit for giving an electronic signature to the digest value of the transaction information and the temporary information;
The information processing system according to claim 1, wherein the storage block includes the main transaction information to which the electronic signature is attached and a digest value of the temporary information, and does not include the temporary information.
前記ブロック通信部は、さらに一時情報を含むキャッシュテーブルを送信し、
他の前記ブロック生成検証装置から受信した前記キャッシュテーブルのダイジェスト値を算出し、算出されたダイジェスト値と、受信したブロックに含まれるキャッシュテーブルのダイジェスト値とが一致する場合に、他の前記ブロック生成検証装置から受信した本トランザクション情報に対応する格納用ブロックを検証するブロック検証部を有することを特徴とする請求項3に情報処理システム。
The block communication unit further transmits a cache table including temporary information,
The digest value of the cache table received from the other block generation verification device is calculated, and when the calculated digest value matches the digest value of the cache table included in the received block, the other block generation 4. The information processing system according to claim 3, further comprising a block verification unit that verifies a storage block corresponding to the transaction information received from the verification device.
前記ブロック検証部は、他の前記ブロック生成検証装置から、前記一時情報、本トランザクション情報のダイジェスト値、前記一時情報用データ格納領域のダイジェスト値、及び前記本トランザクション情報を受信すると、前記格納用ブロックがブロック生成条件を満たすか否かを判定し、
前記格納制御部は、前記格納用ブロックがブロック生成条件を満たすと判定されると、該格納用ブロックを台帳データに繋げることを特徴とする請求項1から4のいずれか一項に記載の情報処理システム。
When the block verification unit receives the temporary information, the digest value of the transaction information, the digest value of the temporary information data storage area, and the transaction information from the other block generation verification device, the storage block Determines whether the block generation condition is satisfied,
5. The information according to claim 1, wherein the storage control unit connects the storage block to ledger data when it is determined that the storage block satisfies a block generation condition. 6. Processing system.
JP2017001935A 2017-01-10 2017-01-10 Information processing system Active JP6495346B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017001935A JP6495346B2 (en) 2017-01-10 2017-01-10 Information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017001935A JP6495346B2 (en) 2017-01-10 2017-01-10 Information processing system

Publications (2)

Publication Number Publication Date
JP2018112827A JP2018112827A (en) 2018-07-19
JP6495346B2 true JP6495346B2 (en) 2019-04-03

Family

ID=62912366

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017001935A Active JP6495346B2 (en) 2017-01-10 2017-01-10 Information processing system

Country Status (1)

Country Link
JP (1) JP6495346B2 (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11212084B2 (en) * 2018-07-21 2021-12-28 Fundacja “Blockchain Development Foundation” System and a method for signing transactions using air-gapped private keys
JP6526299B1 (en) * 2018-07-31 2019-06-05 株式会社メルカリ INFORMATION PROCESSING METHOD, INFORMATION PROCESSING DEVICE, AND PROGRAM
KR102206940B1 (en) * 2018-11-27 2021-01-26 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. How to execute multiparty transactions using smart contracts
CN112513853A (en) 2018-12-11 2021-03-16 松下电器(美国)知识产权公司 Data management method, data management system, and program
JP2020021446A (en) * 2019-01-11 2020-02-06 株式会社メルカリ Method for processing information, information processor, and program
CN110264187B (en) * 2019-01-23 2021-06-04 腾讯科技(深圳)有限公司 Data processing method and device, computer equipment and storage medium
JP7137077B2 (en) * 2019-04-02 2022-09-14 日本電信電話株式会社 Blockchain system, approval terminal, user terminal, history management method, and history management program
JP7256064B2 (en) * 2019-04-18 2023-04-11 三菱重工業株式会社 Management system, management method, upper block chain computing device, and program
US11295031B2 (en) * 2019-10-08 2022-04-05 International Business Machines Corporation Event log tamper resistance
EP4080394B1 (en) 2019-12-20 2026-04-08 NTT, Inc. Control server, data sharing system, and control program
CN116048389A (en) * 2022-12-16 2023-05-02 成都航天科工大数据研究院有限公司 Collaborative procurement method, device, equipment and storage medium based on block chain

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160260095A1 (en) * 2015-03-02 2016-09-08 Dell Products, Lp Containerized Computational Task Execution Management Using a Secure Distributed Transaction Ledger
JP5858507B1 (en) * 2015-05-18 2016-02-10 株式会社Orb Virtual currency management program and virtual currency management method
US10097356B2 (en) * 2015-07-02 2018-10-09 Nasdaq, Inc. Systems and methods of secure provenance for distributed transaction databases

Also Published As

Publication number Publication date
JP2018112827A (en) 2018-07-19

Similar Documents

Publication Publication Date Title
JP6495346B2 (en) Information processing system
JP7499852B2 (en) Random Node Selection for Permissioned Blockchains
AU2018348334C1 (en) Achieving consensus among network nodes in a distributed system
JP6841911B2 (en) Information protection systems and methods
Cucurull et al. Distributed immutabilization of secure logs
CN107851253B (en) Contract consent method, consent verification method, contract consent system, consent verification device, contract consent device, computer readable recording medium
US20210314396A1 (en) Streaming content via blockchain technology
JP6355168B2 (en) Block chain generation device, block chain generation method, block chain verification device, block chain verification method and program
JP6514831B1 (en) Method and system for verifying ownership of digital assets using distributed hash tables and peer-to-peer distributed ledgers
US20210192512A1 (en) Method and apparatus for storing and obtaining merchant authentication data in blockchain network
US20220029815A1 (en) Streaming content via blockchain technology
CN110458560B (en) Method and apparatus for transaction verification
JP6756041B2 (en) Information protection systems and methods
EP3070630A2 (en) Data system and method
JPWO2018020944A1 (en) Bulletin board information management system
WO2017082238A1 (en) Block chain generation device, block chain generation method, block chain verification device, block chain verification method and program
CN113259130B (en) Transaction data processing method, device, equipment and medium
CN111047324A (en) Method and apparatus for updating public key sets at blockchain nodes
JP2023551458A (en) Key regeneration in blockchain networks via OPRF
JP6951649B2 (en) Block verification device, block verification method, and program
CN114128216B (en) Methods and systems for multi-input transactions
CN112801778B (en) Alliance-based non-performing asset blockchain system
JPWO2019038839A1 (en) Blockchain management device, blockchain management method and program
CN112052474A (en) Blu-ray copy service
JP7607672B2 (en) Authorized event processing in a distributed database.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180525

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190212

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190306

R150 Certificate of patent or registration of utility model

Ref document number: 6495346

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350