[go: up one dir, main page]

JP7231291B1 - Information processing system, information processing method, server, blockchain node, and program - Google Patents

Information processing system, information processing method, server, blockchain node, and program Download PDF

Info

Publication number
JP7231291B1
JP7231291B1 JP2022061015A JP2022061015A JP7231291B1 JP 7231291 B1 JP7231291 B1 JP 7231291B1 JP 2022061015 A JP2022061015 A JP 2022061015A JP 2022061015 A JP2022061015 A JP 2022061015A JP 7231291 B1 JP7231291 B1 JP 7231291B1
Authority
JP
Japan
Prior art keywords
item
transaction data
data
generated
source
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
JP2022061015A
Other languages
Japanese (ja)
Other versions
JP2023151422A (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.)
Chaintope Inc
Original Assignee
Chaintope Inc
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 Chaintope Inc filed Critical Chaintope Inc
Priority to JP2022061015A priority Critical patent/JP7231291B1/en
Priority to JP2023018759A priority patent/JP2023152714A/en
Application granted granted Critical
Publication of JP7231291B1 publication Critical patent/JP7231291B1/en
Priority to US18/851,672 priority patent/US20250392484A1/en
Priority to PCT/JP2023/012002 priority patent/WO2023190249A1/en
Priority to EP23780259.0A priority patent/EP4502991A1/en
Priority to CN202380031527.8A priority patent/CN118974799B/en
Publication of JP2023151422A publication Critical patent/JP2023151422A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Figure 0007231291000001

【課題】アイテムに含まれている原料の数量を秘密にしつつ、アイテムに含まれる原料の取引に不正がないことを検証する。
【解決手段】情報処理システム10は、サーバ14と、複数のブロックチェーンノード16と、複数の端末12とを含む。複数のブロックチェーンノード16の各々は、サーバ14によりブロードキャストされた第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出す。複数のブロックチェーンノード16の各々は、第2トランザクションデータに含まれる生成対象アイテムのコミットメント値と、第1トランザクションデータに含まれる生成元アイテムのコミットメント値との間の関係性に基づいて、第2トランザクションデータのアイテムが、第1トランザクションデータの生成元アイテムに含まれる原料によって構成されているか否かを検証する。
【選択図】図1

Figure 0007231291000001

The object of the present invention is to verify that there is no fraudulent transaction of raw materials contained in an item while keeping the quantity of the raw materials contained in the item secret.
An information processing system (10) includes a server (14), a plurality of blockchain nodes (16), and a plurality of terminals (12). Each of the plurality of blockchain nodes 16 reads each of the first transaction data, which is past transaction data linked to the second transaction data broadcast by the server 14, from the blockchain. Each of the plurality of blockchain nodes 16 generates a second It verifies whether or not the item of transaction data is composed of raw materials included in the source item of the first transaction data.
[Selection drawing] Fig. 1

Description

本発明は、情報処理システム、情報処理方法、サーバ、ブロックチェーンノード、及びプログラムに関する。 The present invention relates to an information processing system, an information processing method, a server, a blockchain node, and a program.

従来、移動対象のアイテムのトラッキング情報のデータ量を低減させつつ、アイテムのトラッキング情報をブロックチェーンへ記録する技術が知られている(例えば、特許文献1)。特許文献1に開示されている技術では、サーバが、追跡対象のアイテムの識別情報を含む要求信号を受け付けた場合、要求信号に含まれる識別情報に対応するアイテムの移動を行ったトランザクションデータの系列と、トランザクションデータの系列に対応するアキュムレータの系列とをブロックチェーンから取得する。そして、サーバは、取得したアキュムレータの系列のうちの各アキュムレータに追跡対象のアイテムの識別情報が格納されているか否かの検証を行い、検証結果を出力する。 Conventionally, there is known a technique for recording tracking information of an item on a blockchain while reducing the data amount of the tracking information of the item to be moved (for example, Patent Document 1). In the technology disclosed in Patent Document 1, when a server receives a request signal including identification information of an item to be tracked, a sequence of transaction data in which an item corresponding to the identification information included in the request signal has been moved is generated. and the series of accumulators corresponding to the series of transaction data from the blockchain. Then, the server verifies whether or not the identification information of the tracked item is stored in each accumulator in the acquired series of accumulators, and outputs the verification result.

特開2021-64219号公報Japanese Patent Application Laid-Open No. 2021-64219

ところで、商品又はサービスであるアイテムを利用するユーザは、そのアイテムがどのような要素によって構成されているのか知りたい場合がある。例えば、ある工業製品が製造される場合を考える。なお、工業製品は様々な原料(例えば、レアメタル等)を含んで構成されることが多い。 By the way, a user who uses an item, which is a product or service, may want to know what kind of elements the item is composed of. For example, consider the case where an industrial product is manufactured. Industrial products often contain various raw materials (for example, rare metals).

特に、近年では国際連合によって持続可能な開発目標(SDGs:Sustainable Development Goals)が定められ、地球環境に配慮したアイテムの提供が求められている。このため、アイテムを構成する要素が地球環境に配慮したものであるかを検証することができれば、その検証結果をSDGs指標として利用することもできると考えられる。しかし、同種の原料を使った加工品又は工業製品に関しては、その外観等から違いを見分けることは難しい。その一方で、アイテムの原料に関する情報(又はエネルギーが供給された過程に関する情報)が追跡可能な状態となれば、それらの情報に基づく指標の設定、測定、及び評価が可能になり、それらの指標が所定の基準を満たさないアイテムの移動を制限することも可能になる。 In particular, in recent years, the United Nations has established Sustainable Development Goals (SDGs), demanding the provision of environmentally friendly items. Therefore, if it is possible to verify whether the elements that make up an item are environmentally friendly, the results of that verification can be used as SDGs indicators. However, it is difficult to distinguish the difference from the appearance of processed products or industrial products using the same kind of raw materials. On the other hand, if information about the raw materials of items (or information about the process in which energy is supplied) becomes traceable, it will be possible to set, measure, and evaluate indicators based on such information. It is also possible to restrict the movement of items that do not meet predetermined criteria.

なお、工業製品が消費者へ供給されるまでには、複数の事業者により原料及び中間素材のサプライチェーンが形成されることが多い。例えば、ある事業者Aは、複数の原料a1,a2,a3を調達し、それらの原料a1,a2,a3から中間素材Mを製造する。次に、事業者Bは、事業者Aから中間素材Mを調達し、その中間素材Mに対して原料b1,b2を添加して中間素材Mを製造する。次に、事業者Cは、事業者Bから中間素材Mを調達し、その中間素材Mと他のいくつかの異なる中間素材とを組み合わせて工業製品Mを製造する。そして、事業者Cから消費者へ工業製品Mが供給される。 In addition, a supply chain of raw materials and intermediate materials is often formed by multiple business operators before industrial products are supplied to consumers. For example, a business operator A procures a plurality of raw materials a1, a2, and a3, and manufactures an intermediate material MA from these raw materials a1, a2, and a3. Next, business operator B procures intermediate material MA from business operator A, adds raw materials b1 and b2 to intermediate material MA , and manufactures intermediate material MB . Next, business operator C procures an intermediate material MB from business operator B, and combines the intermediate material MB with several other intermediate materials to manufacture industrial products MC . Then, the industrial product MC is supplied from the business operator C to the consumer.

この場合、例えば、消費者又は品質検査を行う機関等は、工業製品Mに含まれている原料の原産地、リサイクル素材の含有率、精製過程で測定された純度、及び元素又は分子等の成分の配合比率等に関する情報を知りたい場合がある。さらに、消費者又は流通を監督する機関等は、工業製品Mがどのような事業者を経て製造及び供給されたのかに関する情報も知りたい場合がある。また、各事業者も、自らが調達した原料又は部品に関する情報を知りたい場合がある。 In this case, for example, consumers or quality inspection organizations, etc., must consider the origin of the raw materials contained in the industrial products MC , the content of recycled materials, the purity measured in the refining process, and the components such as elements and molecules. There are cases where you want to know information about the compounding ratio of In addition, consumers or organizations that supervise distribution may also want to know information about the business operators through which the industrial product MC was manufactured and supplied. Also, each business operator may want to know information about raw materials or parts procured by itself.

仮に、このような取引対象のアイテムに関連するデータをブロックチェーン等のネットワーク技術を用いて公開すれば、複数の事業者及び消費者は、取引対象に関連する情報を自由に閲覧することができる。例えば、複数の事業者及び消費者は、ある部品に含まれている原料の原産地、リサイクル素材の含有率、精製過程で測定した純度、及び元素又は分子等の成分の配合比率等に関する情報を閲覧することにより、自らが取得した部品又は中間素材等がどのような原料によって構成されているのかを確認して、自らが出荷する製品の表示に利用することや、自らが目標に設定した基準に適合しない部品又は中間素材等を見分けることに利用することができる。 If such data related to traded items were made public using network technology such as blockchain, multiple business operators and consumers would be able to freely view information related to traded items. . For example, multiple business operators and consumers view information on the origin of raw materials contained in a part, the content of recycled materials, the purity measured in the refining process, and the blending ratio of components such as elements and molecules. By doing so, you can confirm what kind of raw materials the parts or intermediate materials you have acquired are composed of, and use them for labeling the products you ship or meet the standards you have set as your goals. It can be used to identify incompatible parts or intermediate materials.

しかし、このようなデータがブロックチェーンに記録され、そのデータが公開されると、不特定多数の第三者がそのデータを自由に閲覧することが可能となる。例えば、ブロックチェーンに記録されそのデータに工業製品を製造する際のノウハウに関するデータが含まれてしまうと、その事業者の競争力が損なわれてしまう可能性がある。 However, when such data is recorded on a blockchain and made public, it becomes possible for an unspecified number of third parties to freely view the data. For example, if the data recorded on the blockchain includes data related to know-how for manufacturing industrial products, the competitiveness of the business may be impaired.

例えば、ある特定の事業者は、原料の配合比率に関する情報を競合する事業者には秘密にしたいと考え、その情報は直接取引する契約関係にある事業者へは開示してもよいが契約関係にない第三者へは開示したくない、と考えている場合もある。 For example, a particular business operator may wish to keep information about ingredient ratios confidential from competing businesses, and may disclose that information to business operators with whom it has a direct contractual relationship, but In some cases, we do not want to disclose personal information to third parties that are not covered by the law.

本発明は、上記の事情を鑑みてなされたもので、アイテムに含まれている原料の数量を秘密にしつつ、アイテムに含まれる原料の取引に不正がないことを検証することを目的とする。 SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and an object of the present invention is to verify that there is no fraudulent transaction of raw materials contained in an item while keeping the quantity of raw materials contained in the item secret.

上記の目的を達成するために本発明に係る情報処理システムは、サーバと、複数のブロックチェーンノードと、複数の端末とを含む情報処理システムであって、前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、前記サーバが、前記原料に対応するパラメータ値と前記数量データとに基づく秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造がアウトプットデータに含まれる第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、複数のブロックチェーンノードの各々が、前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録する、情報処理システムである。 In order to achieve the above object, an information processing system according to the present invention includes a server, a plurality of blockchain nodes, and a plurality of terminals, wherein the terminals include identification information of an item to be generated. , raw material identification data that is identification information of raw materials used when generating the target item, quantity data that represents the quantity of the raw materials, and generation that represents the identification information of the source item original item identification data to the server, and the server performs secure calculation based on the parameter value corresponding to the raw material and the quantity data to calculate the commitment value of the item to be generated, and the raw material transaction data stored in a predetermined data structure of a combination of identification data and the item identification data to be generated, and recorded in a blockchain stored in a storage unit of the blockchain node; First transaction data, which is transaction data in which item identification data is included in output data, is obtained, and an address representing the source of the item to be generated, an address representing the destination of the item to be generated, and the data structure are obtained. second transaction data, wherein the source item identification data is included in input data, and the data structure including the generation target item identification data is included in output data; , and each of a plurality of blockchain nodes reads from the blockchain each first transaction data that is past transaction data linked to the second transaction data broadcast by the server, and the second transaction data and the commitment value of the generation source item included in the first transaction data, the generation target item of the second transaction data is the verifying whether or not the item to be generated of the second transaction data is composed of the material included in the source item of the first transaction data, and determining that the item to be generated of the second transaction data is composed of the material of the first transaction data; If determined, record the second transaction data in the blockchain It is an information processing system that

また、本発明のサーバは、サーバと、複数のブロックチェーンノードと、複数の端末とを含む情報処理システムにおける前記サーバであって、前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、前記サーバが、前記原料に対応するパラメータ値と前記数量データとに基づく秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造がアウトプットデータに含まれる第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、複数のブロックチェーンノードの各々が、前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録する、サーバである。 Further, the server of the present invention is an information processing system including a server, a plurality of blockchain nodes, and a plurality of terminals, wherein the terminal includes a generation target item identifier representing identification information of a generation target item. data, raw material identification data that is identification information of raw materials used when generating an item to be generated, quantity data that represents the quantity of the raw materials, and source item identification data that represents the identification information of the source item. is sent to the server, and the server performs secure calculation based on the parameter value corresponding to the raw material and the quantity data, thereby calculating the commitment value of the item to be generated, and calculating the raw material identification data and the generation target Transaction data stored in a predetermined data structure in combination with item identification data, recorded in a blockchain stored in a storage unit of the blockchain node, and the generation source item identification data is output Transaction data obtained by obtaining first transaction data, which is transaction data included in the data, and including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure , broadcasting to a plurality of blockchain nodes second transaction data whose input data includes the source item identification data and whose output data includes the data structure including the generation target item identification data; Each of the blockchain nodes reads each of the first transaction data, which is past transaction data linked to the second transaction data broadcast by the server, from the blockchain, and the generation target included in the second transaction data. Based on the relationship between the commitment value of the item and the commitment value of the source item included in the first transaction data, the generation target item of the second transaction data is the It is verified whether or not it is composed of the raw material contained in the source item, and if it is determined that the generation target item of the second transaction data is composed of the raw material of the first transaction data, the A server that records second transaction data to the blockchain be.

また、本発明のブロックチェーンノードは、サーバと、複数のブロックチェーンノードと、複数の端末とを含む情報処理システムにおける前記ブロックチェーンノードであって、前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、前記サーバが、前記原料に対応するパラメータ値と前記数量データとに基づく秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造がアウトプットデータに含まれる第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、複数のブロックチェーンノードの各々が、前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録する、ブロックチェーンノードである。 Also, a blockchain node of the present invention is the blockchain node in an information processing system including a server, a plurality of blockchain nodes, and a plurality of terminals, wherein the terminals represent identification information of an item to be generated. identification data of the item to be generated, raw material identification data that is identification information of raw materials used when generating the item to be generated, quantity data representing the quantity of the raw material, and source item that represents the identification information of the source item and the identification data to the server, and the server performs secure calculation based on the parameter value corresponding to the raw material and the quantity data to calculate the commitment value of the item to be generated, and the raw material identification data. and the generation target item identification data are stored in a predetermined data structure, transaction data recorded in the blockchain stored in the storage unit of the blockchain node, and the generation source item identification A transaction that acquires first transaction data whose data is transaction data included in output data, and that includes an address representing the source of the item to be generated, an address representing the destination of the item to be generated, and the data structure. Broadcast second transaction data, wherein input data includes the source item identification data, and output data includes the data structure including the generation target item identification data, to a plurality of blockchain nodes. and each of the plurality of blockchain nodes reads from the blockchain each of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server, and included in the second transaction data. based on the relationship between the commitment value of the item to be generated of the second transaction data and the commitment value of the item to be generated included in the first transaction data, the item to be generated of the second transaction data verifying whether or not the item to be generated of the second transaction data is composed of the raw material contained in the source item of the transaction data, and determining that the item to be generated of the second transaction data is composed of the raw material of the first transaction data; the second transaction data in the block It is a blockchain node that records to the blockchain.

また、本発明の情報処理方法は、サーバと、複数のブロックチェーンノードと、複数の端末とを含む情報処理システムが実行する情報処理方法であって、前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、前記サーバが、前記原料に対応するパラメータ値と前記数量データとに基づく秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造がアウトプットデータに含まれる第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、複数のブロックチェーンノードの各々が、前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録する、情報処理方法である。 Further, an information processing method of the present invention is an information processing method executed by an information processing system including a server, a plurality of blockchain nodes, and a plurality of terminals, wherein the terminal receives identification information of an item to be generated. raw material identification data that is identification information of raw materials used when generating the target item; quantity data that represents the quantity of the raw material; and item identification data to the server, and the server performs secure calculation based on the parameter value corresponding to the raw material and the quantity data to calculate the commitment value of the item to be generated, and the raw material identification. transaction data stored in a predetermined data structure of a combination of data and the generation target item identification data, and recorded in a blockchain stored in a storage unit of the blockchain node, and the generation source item; First transaction data, which is transaction data whose identification data is included in output data, is obtained, and includes an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure. second transaction data, wherein input data includes the source item identification data, and output data includes the data structure including the generation target item identification data, to a plurality of blockchain nodes; broadcast, and each of a plurality of blockchain nodes reads from the blockchain each first transaction data that is past transaction data linked to the second transaction data broadcast by the server, and converts the second transaction data to the second transaction data Based on the relationship between the commitment value of the item to be generated included and the commitment value of the source item included in the first transaction data, the item to be generated of the second transaction data Verifies whether or not the item to be generated of the second transaction data is composed of the raw material contained in the source item of the first transaction data, and determines that the item to be generated of the second transaction data is composed of the raw material of the first transaction data. recording the second transaction data to the blockchain when It is an information processing method.

本発明のプログラムは、サーバと、複数のブロックチェーンノードと、複数の端末とを含む情報処理システムにおける前記サーバに実行させるためのプログラムであって、前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、前記サーバが、前記原料に対応するパラメータ値と前記数量データとに基づく秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造がアウトプットデータに含まれる第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、複数のブロックチェーンノードの各々が、前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録する、プログラムである。 A program of the present invention is a program to be executed by the server in an information processing system including a server, a plurality of blockchain nodes, and a plurality of terminals, wherein the terminal represents identification information of an item to be generated. identification data of the item to be generated, raw material identification data that is identification information of raw materials used when generating the item to be generated, quantity data representing the quantity of the raw material, and source item that represents the identification information of the source item and the identification data to the server, and the server performs secure calculation based on the parameter value corresponding to the raw material and the quantity data to calculate the commitment value of the item to be generated, and the raw material identification data. and the generation target item identification data are stored in a predetermined data structure, transaction data recorded in the blockchain stored in the storage unit of the blockchain node, and the generation source item identification A transaction that acquires first transaction data whose data is transaction data included in output data, and that includes an address representing the source of the item to be generated, an address representing the destination of the item to be generated, and the data structure. Broadcast second transaction data, wherein input data includes the source item identification data, and output data includes the data structure including the generation target item identification data, to a plurality of blockchain nodes. and each of the plurality of blockchain nodes reads from the blockchain each of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server, and included in the second transaction data. based on the relationship between the commitment value of the item to be generated of the second transaction data and the commitment value of the item to be generated included in the first transaction data, the item to be generated of the second transaction data verifying whether or not the item to be generated of the second transaction data is composed of the raw material contained in the source item of the transaction data, and determining that the item to be generated of the second transaction data is composed of the raw material of the first transaction data; the second transaction data in the block chain It is a program that records to the screen.

本発明のプログラムは、サーバと、複数のブロックチェーンノードと、複数の端末とを含む情報処理システムにおける前記ブロックチェーンノードに実行させるためのプログラムであって、前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、前記サーバが、前記原料に対応するパラメータ値と前記数量データとに基づく秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造がアウトプットデータに含まれる第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、複数のブロックチェーンノードの各々が、前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録する、プログラムである。 A program of the present invention is a program to be executed by the blockchain node in an information processing system including a server, a plurality of blockchain nodes, and a plurality of terminals, wherein the terminal includes identification information of an item to be generated. , raw material identification data that is identification information of raw materials used when generating the target item, quantity data that represents the quantity of the raw materials, and generation that represents the identification information of the source item original item identification data to the server, and the server performs secure calculation based on the parameter value corresponding to the raw material and the quantity data to calculate the commitment value of the item to be generated, and the raw material transaction data stored in a predetermined data structure of a combination of identification data and the item identification data to be generated, and recorded in a blockchain stored in a storage unit of the blockchain node; First transaction data, which is transaction data in which item identification data is included in output data, is obtained, and an address representing the source of the item to be generated, an address representing the destination of the item to be generated, and the data structure are obtained. second transaction data, wherein the source item identification data is included in input data, and the data structure including the generation target item identification data is included in output data; , and each of a plurality of blockchain nodes reads from the blockchain each first transaction data that is past transaction data linked to the second transaction data broadcast by the server, and the second transaction data and the commitment value of the generation source item included in the first transaction data, the generation target item of the second transaction data is the verifying whether or not the item to be generated of the second transaction data is composed of the material included in the source item of the first transaction data, and determining that the item to be generated of the second transaction data is composed of the material of the first transaction data; If determined, the second transaction data It is a program that records to the blockchain.

本発明によれば、アイテムに含まれている原料の数量を秘密にしつつ、アイテムに含まれる原料の取引に不正がないことを検証することができる、という効果が得られる。 According to the present invention, it is possible to obtain the effect that it is possible to verify that there is no fraudulent transaction of the raw materials contained in the item while keeping the quantity of the raw materials contained in the item secret.

本実施形態の情報処理システムの概略構成の一例を示す図である。It is a figure showing an example of a schematic structure of an information processing system of this embodiment. 情報処理システムを構成する各装置として機能するコンピュータの概略ブロック図である。1 is a schematic block diagram of a computer functioning as each device constituting an information processing system; FIG. 本実施形態の情報処理システムの処理を説明するための説明図である。It is an explanatory view for explaining processing of an information processing system of this embodiment. 本実施形態を説明するための図である。It is a figure for explaining this embodiment.

以下、図面を参照して実施形態を詳細に説明する。 Hereinafter, embodiments will be described in detail with reference to the drawings.

<情報処理システムのシステム構成> <System configuration of information processing system>

図1は、本実施形態の情報処理システム10を示すブロック図である。図1に示されるように、本実施形態の情報処理システム10は、端末12と、サーバ14と、ブロックチェーンノード16とを含んで構成されている。情報処理システム10の各装置は、例えばインターネット等のネットワーク20によって接続されている。なお、複数のブロックチェーンノード16A,16B,16Cのうちの特定のノードを説明する場合以外は、ブロックチェーンノードを単に「ブロックチェーンノード16」と表記する。また、複数の端末12A,12B,12C,・・・,12Xのうちの特定の端末を説明する場合以外は、端末を単に「端末12」と表記する。 FIG. 1 is a block diagram showing an information processing system 10 of this embodiment. As shown in FIG. 1 , an information processing system 10 of this embodiment includes a terminal 12 , a server 14 and a blockchain node 16 . Each device of the information processing system 10 is connected by a network 20 such as the Internet. Note that the blockchain node is simply referred to as "blockchain node 16" except when describing a specific node among the plurality of blockchain nodes 16A, 16B, and 16C. In addition, the terminal is simply referred to as "terminal 12" except when describing a specific terminal among the plurality of terminals 12A, 12B, 12C, . . . , 12X.

なお、図1には、3つのブロックチェーンノードが示されているが、より多くのブロックチェーンノードが含まれていても良い。また、図1には、4つの端末が示されているが、より多くの端末が含まれていても良い。 Although three blockchain nodes are shown in FIG. 1, more blockchain nodes may be included. Also, although four terminals are shown in FIG. 1, more terminals may be included.

近年、商品又はサービス(以下、単に「アイテム」とも称する。)の生産又は流通の過程で起きた事象の一部を公開するように求められるケースが増加している。例えば、環境問題への取り組みのエビデンスとして、各事業者がアイテムを提供した際の再生エネルギーの利用率、CO排出量、又はそのアイテムに用いられている原料のリサイクル率の数値を公開するように求められる場合もある。 In recent years, there have been an increasing number of cases in which disclosure of some of the events that occur in the process of production or distribution of goods or services (hereinafter also simply referred to as "items") is required. For example, as evidence of efforts to address environmental issues, each business operator should disclose the utilization rate of renewable energy, the amount of CO2 emissions, or the recycling rate of the raw materials used in the item when it provides the item. may be required.

現在、このような情報の公開は、一定期間(例えば、1年間)における企業活動の総和として報告されることが多い。その一方で、個々のアイテムに対して明細を付加すれば、それらの情報はアイテムの付加価値とみなすこともできる。また、アイテムに対して明細を付加することにより、そのアイテムが国際社会での流通規制に対して適合していることを証明することも可能となる。 Currently, such information disclosure is often reported as the sum of corporate activities over a period of time (eg, one year). On the other hand, if details are added to individual items, such information can also be regarded as added value of the item. In addition, by adding a description to an item, it becomes possible to prove that the item conforms to distribution regulations in the international community.

そこで、ある事業者U1から別の事業者U2へアイテムXが引き渡され、事業者U2がアイテムXに基づいて新たなアイテムYを製造した場合に、それら一連の事象を1つの取引伝票を表すデータとして表現する場合を考える。そして、取引伝票を表すデータをブロックチェーンへ記録する。取引伝票を表すデータは複数のブロックチェーンノード16A,16B,16Cの記憶部(図示省略)へ格納されるため、ブロックチェーンに記録されたトランザクションデータは公開される。第三者はそのトランザクションデータを閲覧可能となる。これにより、アイテムに明細が付与され、アイテムが製造又は提供される際の一連の情報が公開されることになる。 Therefore, when an item X is handed over from a certain business operator U1 to another business operator U2, and the business operator U2 manufactures a new item Y based on the item X, the series of events is data representing one transaction slip. Consider the case of expressing as Then, the data representing the transaction slip is recorded on the blockchain. Since the data representing the transaction slip is stored in the storage units (not shown) of the multiple blockchain nodes 16A, 16B, and 16C, the transaction data recorded in the blockchain is disclosed. Third parties can view the transaction data. This allows the item to be specified and a set of information to be published when the item is manufactured or provided.

しかし、その一方で、アイテムが製造又は提供される際の情報の中には秘匿しておきたい情報も存在する。例えば、複数の原料を混合させて中間素材を製造している事業者にとっては、原料の混合比率に関する情報は自社のノウハウでもあり、秘匿しておきたいと考えることが想定される。これらのノウハウに関する情報は、各事業者の知的財産でもあるため、各事業者はその知的財産が第三者に無償で公開されるのは避けたいと考えることが一般的である。 However, on the other hand, there is information that should be kept secret among the information when the item is manufactured or provided. For example, a company that manufactures an intermediate material by mixing a plurality of raw materials may want to keep information about the mixing ratio of the raw materials confidential because it is their own know-how. Since the information on these know-hows is also the intellectual property of each business operator, it is common for each business operator to avoid disclosing the intellectual property to third parties free of charge.

そこで、本実施形態の情報処理システム10では、アイテムに含まれている原料の数量に関する情報はブロックチェーンに記録せずに、アイテムに含まれている原料の数量を秘密にしつつ、アイテムに含まれる原料の取引に不正がないことを検証する。 Therefore, in the information processing system 10 of the present embodiment, the information about the quantity of raw materials contained in the item is not recorded in the blockchain, but the quantity of raw materials contained in the item is kept secret. Verify that raw material transactions are not fraudulent.

具体的には、本実施形態の情報処理システム10では、アイテムに含まれている原料の数量を表す数量データと原料毎に設定されたパラメータ値とに基づいて、所定の秘密計算を実行することにより、アイテム毎のコミットメント値を計算する。本実施形態の情報処理システム10では、このコミットメント値をブロックチェーンに記録し、コミットメント値に基づいて各アイテムに含まれる原料の取引に不正がないことを検証する。これにより、アイテムに含まれている原料の数量に関する情報はブロックチェーンに記録せずに、アイテムに含まれている原料の数量を秘密にしつつ、アイテムに含まれる原料の取引に不正がないことを検証することが可能となる。 Specifically, in the information processing system 10 of the present embodiment, predetermined secure calculation is executed based on quantity data representing the quantity of raw materials contained in the item and parameter values set for each raw material. to calculate the commitment value for each item. In the information processing system 10 of the present embodiment, this commitment value is recorded in the block chain, and based on the commitment value, it is verified that there is no fraudulent transaction of raw materials included in each item. As a result, information about the quantity of raw materials contained in the item is not recorded on the blockchain, and the quantity of raw materials contained in the item is kept secret, while ensuring that there is no fraudulent transaction of raw materials contained in the item. Verification is possible.

情報処理システム10に含まれる各装置は、CPU(Central Processing Unit)、各処理ルーチンを実現するためのプログラム等を記憶したROM(Read Only Memory)、データを一時的に記憶するRAM(Random Access Memory)、記憶手段としてのメモリ、ネットワークインタフェース等を含んだコンピュータによって実現される。 Each device included in the information processing system 10 includes a CPU (Central Processing Unit), a ROM (Read Only Memory) that stores programs and the like for realizing each processing routine, and a RAM (Random Access Memory) that temporarily stores data. ), a memory as storage means, a network interface, and the like.

端末12、サーバ14、及びブロックチェーンノード16は、例えば、図2に示すコンピュータ70で実現することができる。コンピュータ70はCPU71、一時記憶領域としてのメモリ72、及び不揮発性の記憶部73を備える。また、コンピュータ70は、入出力装置等(図示省略)が接続される入出力interface(I/F)74、及び記録媒体に対するデータの読み込み及び書き込みを制御するread/write(R/W)部75を備える。また、コンピュータ70は、インターネット等のネットワークに接続されるネットワークI/F76を備える。CPU71、メモリ72、記憶部73、入出力I/F74、R/W部75、及びネットワークI/F76は、バス77を介して互いに接続される。 Terminal 12, server 14, and blockchain node 16 may be implemented, for example, by computer 70 shown in FIG. The computer 70 includes a CPU 71 , a memory 72 as a temporary storage area, and a non-volatile storage section 73 . The computer 70 also includes an input/output interface (I/F) 74 to which an input/output device (not shown) is connected, and a read/write (R/W) unit 75 for controlling reading and writing of data to and from a recording medium. Prepare. The computer 70 also has a network I/F 76 connected to a network such as the Internet. The CPU 71 , memory 72 , storage section 73 , input/output I/F 74 , R/W section 75 and network I/F 76 are connected to each other via a bus 77 .

記憶部73は、Hard Disk Drive(HDD)、solid state drive(SSD)、フラッシュメモリ等によって実現できる。記憶媒体としての記憶部73には、コンピュータ70を機能させるためのプログラムが記憶されている。CPU71は、プログラムを記憶部73から読み出してメモリ72に展開し、プログラムが有するプロセスを順次実行する。 The storage unit 73 can be implemented by a hard disk drive (HDD), solid state drive (SSD), flash memory, or the like. A program for causing the computer 70 to function is stored in the storage unit 73 as a storage medium. The CPU 71 reads out the program from the storage unit 73, develops it in the memory 72, and sequentially executes the processes of the program.

<情報処理システム10の作用> <Action of information processing system 10>

次に、本実施形態の情報処理システム10の作用について説明する。本実施形態では、情報処理システム10が、プロダクトCの明細をブロックチェーンへ記録する場合を例に説明する。 Next, the operation of the information processing system 10 of this embodiment will be described. In this embodiment, an example will be described in which the information processing system 10 records the details of the product C in the blockchain.

なお、プロダクトCは、その原料としてコバルトとニッケルとマンガンとを含んで構成されているものとする。以下では、プロダクトA及びプロダクトBから、プロダクトCの原料であるコバルトとニッケルとマンガンとを抽出し、抽出された原料を利用してプロダクトCを生成する場合を例に説明する。なお、プロダクトCが生成される過程において、プロダクトAを構成する原料の一部(又は全部)又はプロダクトBを構成する原料の一部(又は全部)が消費されず、消費されない余りの原料に相当するプロダクトDが生成される場合を例に説明する。このため、プロダクトA,Bは生成元アイテムの一例であり、プロダクトCは生成対象アイテムの一例である。 It is assumed that product C contains cobalt, nickel, and manganese as its raw materials. In the following, an example will be described in which cobalt, nickel, and manganese, which are raw materials for product C, are extracted from product A and product B, and product C is produced using the extracted raw materials. In the process of producing product C, some (or all) of the raw materials that make up product A or some (or all) of the raw materials that make up product B are not consumed, and correspond to surplus raw materials that are not consumed. An example will be described in which a product D is generated. Therefore, products A and B are examples of source items, and product C is an example of items to be created.

本実施形態では、アイテムであるプロダクトとその原料(例えば、プロダクトCは、原料であるコバルト:5,ニッケル:4,マンガン:9によって構成されている点)との組み合わせが追跡可能となる。なお、その際には、原料の数量データは秘匿される必要がある。その一方で、第三者に対しては、例えば、プロダクトCはプロダクトAとプロダクトBとから生成されていることを証明する必要がある。 In this embodiment, a combination of a product as an item and its raw materials (for example, product C is composed of raw materials cobalt: 5, nickel: 4, manganese: 9) can be tracked. In that case, the raw material quantity data must be kept confidential. On the other hand, it is necessary to prove to a third party that product C is generated from product A and product B, for example.

そこで、本実施形態では、アイテムを構成する原料の数量データを秘匿しつつ、アイテムが適切に製造されていることを証明可能とする。以下、具体的に説明する。 Therefore, in this embodiment, it is possible to prove that the item is properly manufactured while concealing the quantity data of the raw materials that make up the item. A specific description will be given below.

端末12を操作するユーザが、生成対象アイテムであるプロダクトCに関する情報を端末12へ入力すると、図3に示されるシーケンスが実行される。 When the user operating the terminal 12 inputs information about the product C, which is the item to be generated, to the terminal 12, the sequence shown in FIG. 3 is executed.

ステップS100において、端末12は、ユーザから入力されたアイテムに関する情報を受け付ける。なお、このアイテムに関する情報には、例えば、生成対象のアイテムであるプロダクトCを構成する原料の数量を表す数量データが含まれている。なお、例えば、プロダクトCを構成している原料の数量(又は構成比)は以下であるとする。 In step S100, the terminal 12 receives information about items input by the user. Note that this item information includes, for example, quantity data representing the quantity of raw materials that constitute product C, which is the item to be generated. For example, it is assumed that the quantities (or composition ratios) of raw materials constituting product C are as follows.

コバルト:5
ニッケル:4
マンガン:9
Cobalt: 5
Nickel: 4
Manganese: 9

また、生成元アイテムであるプロダクトAを構成している原料の数量は以下であるとする。 Also, assume that the quantities of raw materials that make up the product A, which is the source item, are as follows.

コバルト:3
ニッケル:7
マンガン:5
Cobalt: 3
Nickel: 7
Manganese: 5

また、生成元アイテムであるプロダクトBを構成している原料の数量は以下であるとする。 Also, assume that the quantities of raw materials that make up the product B, which is the originating item, are as follows.

コバルト:4
マンガン:8
Cobalt: 4
Manganese: 8

また、消費されない余りの原料に相当するプロダクトDを構成している原料の数量は以下であるとする。 Also, assume that the quantity of raw materials constituting product D corresponding to surplus raw materials that are not consumed is as follows.

コバルト:2
ニッケル:3
マンガン:4
Cobalt: 2
Nickel: 3
Manganese: 4

ステップS102において、端末12は、生成対象のプロダクトCの識別情報を表すアイテム識別データ(以下、単に「アイテムID」と称する。)と、生成元のプロダクトAのアイテムIDと、生成元のプロダクトBのアイテムIDと、プロダクトCを構成する原料の識別情報である原料識別データ(以下、単に「原料ID」と称する。)と、プロダクトCを生成する際に消費される原料の数量(又は比率)を表す数量データとを、サーバ14へ送信する。 In step S102, the terminal 12 receives item identification data representing identification information of product C to be generated (hereinafter simply referred to as "item ID"), the item ID of product A as the generation source, and the item ID of product B as the generation source. item ID, raw material identification data (hereinafter simply referred to as "raw material ID") that is identification information of raw materials that make up product C, and the quantity (or ratio) of raw materials consumed when producing product C to the server 14.

ステップS104において、サーバ14は、ステップS102で端末12から送信されたデータを受信する。また、ステップS104において、サーバ14は、受信した原料IDの原料に対応するパラメータ値と、ブラインドファクターに対応するブラインドパラメータ値Gと、ブラインドパラメータ値Gに対するランダムな係数rとを取得する。ブラインドファクターrGは、プロダクトCには実際には含まれていない仮想的な原料を表すデータである。ブラインドパラメータ値Gに対するランダムな係数rは、ブラインドファクターの数量に対応するブラインド数量データの値でもある。 At step S104, the server 14 receives the data transmitted from the terminal 12 at step S102. Further, in step S104, the server 14 acquires a parameter value corresponding to the raw material of the received raw material ID, a blind parameter value G corresponding to the blind factor, and a random coefficient r for the blind parameter value G. The blind factor rG is data representing a virtual raw material that is not actually contained in the product C. The random coefficient r for the blind parameter value G is also the blind quantity data value corresponding to the blind factor quantity.

なお、このパラメータ値及びブラインドパラメータ値Gは、加法準同型性のあるコミットメントスキームを用いた計算によって求められる。例えば、既知の手法の一例であるPedersen commitment(例えば、https://link.springer.com/content/pdf/10.1007%2F3-540-46766-1_9.pdf#page=3!のSection3を参照。)を用いて、パラメータ値及びブラインドパラメータ値Gが計算される。Pedersen commitmentを用いてパラメータ値及びブラインドパラメータ値Gが計算される場合、楕円曲線上の離散対数が未知の点(座標)が各原料に対応するパラメータ値及びブラインドパラメータ値Gとして選択される。これにより、加法準同型性を有するパラメータ値及びブラインドパラメータ値Gが取得される。例えば、各原料のパラメータ値として以下が取得される。 Note that this parameter value and the blind parameter value G are obtained by calculation using a commitment scheme with additive homomorphism. For example, the Pedersen commitment, which is an example of a known technique (see, e.g., Section 3 of https://link.springer.com/content/pdf/10.1007%2F3-540-46766-1_9.pdf#page=3!). is used to calculate the parameter value and the blind parameter value G. When the Pedersen commitment is used to calculate the parameter value and the blind parameter value G, points (coordinates) of unknown discrete logarithms on the elliptic curve are selected as the parameter value and the blind parameter value G corresponding to each raw material. As a result, parameter values and blind parameter values G having additive homomorphism are obtained. For example, the following are obtained as parameter values for each raw material.

コバルト:H
ニッケル:H
マンガン:H
ブラインドパラメータ値:G
Cobalt: HC
Nickel: HN
Manganese: HM
Blind parameter value: G

なお、生成元アイテムであるプロダクトAのコミットメント値Cと、生成元アイテムであるプロダクトBのコミットメント値Cとは、以下の式に従って計算される。r,rは、ブラインドパラメータ値Gに対するランダムな係数である。これらコミットメント値C,Cは、後述するようにブロックチェーンにおける過去のトランザクションデータに記録されている。 Note that the commitment value CA of product A, which is the originating item, and the commitment value CB of product B, which is the originating item, are calculated according to the following equations. r 1 , r 2 are random coefficients for the blind parameter value G; These commitment values C A and C B are recorded in past transaction data in the blockchain as described later.

Figure 0007231291000002
Figure 0007231291000002

ステップS106において、サーバ14は、以下の式に示されているように、各原料に対応するパラメータ値H,H,H及びブラインドパラメータ値Gと、各原料の数量データ及びブラインドパラメータ値Gに対するランダムな係数rとを積和演算する秘密計算を実行することにより、プロダクトCのコミットメント値Cを計算する。 In step S106, the server 14 generates the parameter values H C , H N , and H M and the blind parameter value G corresponding to each raw material, and the quantity data and blind parameter value of each raw material, as shown in the following equations. Commitment value C C of product C is calculated by performing a secure computation of multiplying G with a random coefficient r 3 .

Figure 0007231291000003
Figure 0007231291000003

なお、上記のコミットメント値は、離散対数が未知である楕円曲線上の1点に相当する。このため、上記のコミットメント値Cからは、プロダクトCに原料がどれくらい含まれているのかを計算することはできない。 Note that the above commitment value corresponds to one point on the elliptic curve whose discrete logarithm is unknown. Therefore, it is not possible to calculate how much raw material is included in product C from the commitment value C C described above.

また、ステップS106において、サーバ14は、以下の式に示されているように、各原料に対応するパラメータ値H,H,H及びブラインドパラメータ値Gと、各原料の数量データ及びブラインドパラメータ値Gに対するランダムな係数rとを積和演算する秘密計算を実行することにより、プロダクトDのコミットメント値Cを計算する。 Further, in step S106, the server 14 generates parameter values H C , H N , H M and blind parameter values G corresponding to each raw material, quantity data of each raw material and blinds, as shown in the following equations. Commitment value C D of product D is calculated by performing a secure calculation of multiplying and adding random coefficient r4 to parameter value G.

Figure 0007231291000004
Figure 0007231291000004

なお、ブラインドファクターrGを導入せずにコミットメント値を計算する場合には、異なるアイテムが同一数量の原料又は同一の原料比によって構成されている場合にコミットメント値が同一の値となる。ブラインドファクターrGを導入することにより、異なるアイテムが同一数量の原料又は同一の原料比によって構成されている場合であっても、異なるアイテムのコミットメント値を異なるものとすることが可能となる。 If the commitment value is calculated without introducing the blind factor rG, the commitment value will be the same value if different items are made up of the same quantity of raw materials or the same ratio of raw materials. By introducing the blind factor rG, it is possible to have different commitment values for different items even if they are made up of the same quantity of raw materials or the same ratio of raw materials.

また、後述する以下の式(A)を成立させるために、以下の式(B)が満たされるように、ランダムな係数r,r,r,rは予め調整されて設定される。 In order to establish the following formula (A), which will be described later, the random coefficients r 1 , r 2 , r 3 , r 4 are adjusted and set in advance so that the following formula (B) is satisfied. .

Figure 0007231291000005

(A)
Figure 0007231291000006

(B)
Figure 0007231291000005

(A)
Figure 0007231291000006

(B)

ステップS108において、サーバ14は、プロダクトCのアイテムIDと各原料の原料IDとの組み合わせを、例えば、特開2021-064219号公報に開示されているアキュムレータへ格納する。アキュムレータに各種データが格納されることにより、アイテムのトラッキング情報のデータ量を低減させつつ、アイテムのトラッキング情報をブロックチェーンへ記録することが可能となる。また、サーバ14は、同様に、プロダクトDのアイテムIDと各原料の原料IDとの組み合わせも、所定のデータ構造に格納する。 In step S108, the server 14 stores the combination of the item ID of product C and the raw material ID of each raw material in the accumulator disclosed in Japanese Unexamined Patent Application Publication No. 2021-064219, for example. By storing various data in the accumulator, it is possible to record the item tracking information on the blockchain while reducing the data amount of the item tracking information. Similarly, the server 14 also stores the combination of the item ID of the product D and the raw material ID of each raw material in a predetermined data structure.

なお、前述したように、サーバ14は、パラメータ値H,H,H及びブラインドパラメータ値Gを設定する。パラメータ値H,H,H及びブラインドパラメータ値Gと、原料の組み合わせに対応する数量データ及びランダムな係数とに基づいて計算されたコミットメント値は、他の原料の組み合わせで計算されたコミットメント値と異なりユニークである。このため、コミットメント値は、識別データとしても利用可能である。コミットメント値を計算する際に使用されたパラメータ値H,H,H及びブラインドパラメータ値Gは、サーバ14の記憶部(図示省略)へ格納され管理される。 Note that the server 14 sets the parameter values H C , H N , H M and the blind parameter value G, as described above. The commitment value calculated based on the parameter values H C , H N , and H M and the blind parameter value G, and the quantity data and random coefficients corresponding to the raw material combination is the commitment calculated for the other raw material combination. Unique unlike the value. Therefore, the commitment value can also be used as identification data. The parameter values H C , H N , H M and the blind parameter value G used when calculating the commitment value are stored and managed in a storage unit (not shown) of the server 14 .

次に、サーバ14は、ブロックチェーンノード16へアクセスすることにより、生成元のプロダクトAのアイテムIDをアウトプットデータに含むアキュムレータが記録されているトランザクションデータと、生成元のプロダクトBのアイテムIDをアウトプットデータに含むアキュムレータが記録されているトランザクションデータとを取得する。なお、サーバ14は、トランザクションデータに付与されているトランザクションIDに基づき、トランザクションデータを取得する。 Next, the server 14 accesses the blockchain node 16 to obtain the transaction data in which the accumulator including the item ID of the product A that is the origin of the generation is recorded in the output data, and the item ID of the product B that is the origin of the generation. Acquire the transaction data in which the accumulator included in the output data is recorded. The server 14 acquires transaction data based on the transaction ID assigned to the transaction data.

具体的には、ステップS110において、サーバ14は、生成元のプロダクトAのアイテムIDと生成元のプロダクトBのアイテムIDとをアウトプットデータに含むアキュムレータが記録されているトランザクションデータを取得するために、ブロックチェーンノード16に対して要求信号を送信する。 Specifically, in step S110, the server 14 acquires the transaction data in which the accumulator containing the item ID of the product A and the item ID of the product B in the output data is recorded. , sends a request signal to the blockchain node 16 .

ステップS112において、ブロックチェーンノード16は、上記ステップS110でサーバ14から送信された要求信号を受信すると、プロダクトAのアイテムIDがアウトプット情報として記録されている過去のトランザクションデータと、プロダクトBのアイテムIDがアウトプットデータとして記録されている過去のトランザクションデータとを、サーバ14へ送信する。本実施形態では、このような過去のトランザクションデータを第1トランザクションデータとも称する。 In step S112, when the block chain node 16 receives the request signal transmitted from the server 14 in step S110, the past transaction data in which the item ID of product A is recorded as output information and the item of product B The past transaction data in which the ID is recorded as output data are transmitted to the server 14 . In this embodiment, such past transaction data is also referred to as first transaction data.

ステップS114において、サーバ14は、ブロックチェーンノード16から出力された第1トランザクションデータを取得する。 At step S<b>114 , the server 14 obtains first transaction data output from the blockchain node 16 .

ステップS116において、サーバ14は、生成対象のアイテムであるプロダクトCの送り元を表すアドレスとプロダクトCの送り先を表すアドレスと上記のデータ構造とを含むトランザクションデータである第2トランザクションデータを生成する。 In step S116, the server 14 generates second transaction data, which is transaction data including the address representing the source of the product C, which is the item to be generated, the address representing the destination of the product C, and the above data structure.

具体的には、サーバ14は、第2トランザクションデータのインプットデータに、過去の第1トランザクションデータのアウトプットデータを含める。なお、サーバ14は、過去の第1トランザクションデータに関するブロックチェーン上でのトランザクションIDも、第2トランザクションデータのインプットデータに含めるようにして第2トランザクションデータを生成する。また、サーバ14は、第2トランザクションデータを構成するアウトプットデータに、プロダクトCのアイテムIDと原料IDとコミットメント値とを含める。なお、上述したように、プロダクトCのアイテムIDと原料IDとは、所定のデータ構造であるアキュムレータに格納される。なお、コミットメント値をアキュムレータへ更に格納してもよい。本実施形態では、アイテムIDと原料IDとをアキュムレータへ格納する場合を例に説明するが、アイテムIDと原料IDとをアキュムレータへは格納せずに、そのまま第2トランザクションデータを構成するアウトプットデータに記録するようにしてもよい。 Specifically, the server 14 includes the past output data of the first transaction data in the input data of the second transaction data. In addition, the server 14 generates the second transaction data so that the transaction ID on the block chain related to the past first transaction data is also included in the input data of the second transaction data. In addition, the server 14 includes the item ID, raw material ID, and commitment value of product C in the output data constituting the second transaction data. As described above, the item ID and raw material ID of product C are stored in the accumulator, which is a predetermined data structure. Note that the commitment value may be further stored in the accumulator. In the present embodiment, the case where the item ID and raw material ID are stored in the accumulator will be described as an example. may be recorded in the

なお、上述したように、プロダクトCを生成する過程において、原料の一部(又は全部)が消費されない場合には、消費されない余りの原料に相当するプロダクトDに関するデータもアキュムレータに含ませる。この記録の方法は、インプットデータが表す原料とアウトプットデータが表す原料との間の保存則を1つのトランザクションデータ内において表現する実装例の1つである。他の方法としては、生成対象のアイテムを生成する際に発生した余りの原料である廃棄物を別のブロックチェーンに記録し、異なるブロックチェーンの間で参照する実装例も考えられる。 As described above, if some (or all) of the raw materials are not consumed in the process of generating product C, the accumulator also contains data on product D corresponding to the surplus raw materials that are not consumed. This recording method is one of the implementation examples of expressing the conservation law between the raw material represented by the input data and the raw material represented by the output data within one transaction data. As another method, it is possible to record the waste, which is the surplus raw material generated when generating the item to be generated, in another blockchain and refer to it between different blockchains.

図4に、トランザクションデータのデータ構造を説明するための図を示す。図4に示されているように、トランザクションデータTX2には、プロダクトの送り元を表すアドレスとプロダクトの送り先を表すアドレスが含まれている。 FIG. 4 shows a diagram for explaining the data structure of transaction data. As shown in FIG. 4, transaction data TX2 includes an address representing the source of the product and an address representing the destination of the product.

さらに、図4に示されているように、トランザクションデータTX2のインプットデータには、過去のトランザクションデータTX1-1のアウトプットデータと、過去のトランザクションデータTX1-2のアウトプットデータとが含まれている。 Furthermore, as shown in FIG. 4, the input data of the transaction data TX2 includes the output data of the past transaction data TX1-1 and the output data of the past transaction data TX1-2. there is

一方で、図4に示されているように、トランザクションデータTX2のアウトプットデータには、生成対象のプロダクトCのアイテムIDと原料IDとを含むアキュムレータが含まれている。さらに、このアキュムレータには、余りの原料により生成されるプロダクトDのアイテムID及び原料IDも含まれている。また、生成元アイテムのトランザクションデータであるトランザクションデータTX1-1とトランザクションデータTX1-2のアウトプットデータには、過去に生成対象であったプロダクトA,BのアイテムIDと原料IDとが格納されているアキュムレータが含まれている。 On the other hand, as shown in FIG. 4, the output data of transaction data TX2 includes an accumulator containing the item ID and raw material ID of product C to be produced. In addition, this accumulator also contains the Item ID and Ingredient ID of Product D produced from the surplus ingredients. The output data of the transaction data TX1-1 and the transaction data TX1-2, which are the transaction data of the source item, store the item ID and raw material ID of the products A and B that have been generated in the past. It contains an accumulator with

ステップS118において、サーバ14は、ステップS118で生成された第2トランザクションデータを、複数のブロックチェーンノード16へブロードキャストする。 At step S<b>118 , the server 14 broadcasts the second transaction data generated at step S<b>118 to the plurality of blockchain nodes 16 .

ステップS120において、複数のブロックチェーンノード16の各々は、第2トランザクションデータを受信する。ステップS120において、複数のブロックチェーンノード16の各々は、第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出す。具体的には、複数のブロックチェーンノード16の各々は、第2トランザクションデータに含まれている、過去の第1トランザクションデータに関するブロックチェーン上での識別データに基づいて、所定のプロトコルに則り、ブロックチェーンから第1トランザクションデータの各々を読み出す。 At step S120, each of the plurality of blockchain nodes 16 receives the second transaction data. In step S120, each of the plurality of blockchain nodes 16 reads each of the first transaction data, which are past transaction data linked to the second transaction data, from the blockchain. Specifically, each of the plurality of blockchain nodes 16 blocks in accordance with a predetermined protocol based on the identification data on the blockchain related to the past first transaction data, which is included in the second transaction data. Read each of the first transaction data from the chain.

ステップS122において、複数のブロックチェーンノード16の各々は、第2トランザクションデータTX2に含まれるプロダクトCのコミットメント値C及び余りのプロダクトDのコミットメント値Cと、第1トランザクションデータTX1-1に含まれるプロダクトAのコミットメント値C及び第1トランザクションデータTX1-2に含まれるプロダクトBのコミットメント値Cとの間の関係性に基づいて、第2トランザクションデータTX2の生成対象アイテムであるプロダクトCが、第1トランザクションデータTX1-1,TX1-2の生成元アイテムであるプロダクトA,Bの原料によって構成されているか否かを検証する。 In step S122, each of the plurality of blockchain nodes 16 exchanges the commitment value CC of product C and the remaining commitment value CD of product D included in the second transaction data TX2 with the commitment value CD included in the first transaction data TX1-1. Based on the relationship between the commitment value C A of product A included in the first transaction data TX1-2 and the commitment value C B of product B included in the first transaction data TX1-2, the product C that is the target item for generating the second transaction data TX2 is , is composed of raw materials of products A and B, which are origin items of the first transaction data TX1-1 and TX1-2.

上述したように、Pedersen commitmentによって各パラメータ値及びブラインドファクターが生成されている場合には、第2トランザクションデータ内のインプットデータに含まれる過去のトランザクションデータのコミットメント値と、アウトプットデータに含まれるコミットメント値とが等しくなるはずである。このため、例えば、第2トランザクションデータ内のインプットデータに含まれるコミットメント値の総和と、第2ランザクションデータ内のアウトプットデータ含まれるコミットメント値の総和とが等しくない場合には、生成対象のアイテムは何らかの事情により適切に生成されていないことになる。 As described above, when each parameter value and blind factor are generated by Pedersen commitment, the commitment value of the past transaction data included in the input data in the second transaction data and the commitment included in the output data should be equal to the value For this reason, for example, if the total commitment value included in the input data in the second transaction data is not equal to the total commitment value included in the output data in the second transaction data, the item to be generated is not generated properly for some reason.

このため、複数のブロックチェーンノード16の各々は、第1トランザクションデータ内のアウトプットデータに含まれるコミットメント値の総和(第2トランザクションデータ内のインプットデータに含まれるコミットメント値の総和)と、第2トランザクションデータ内のアウトプットデータ含まれるコミットメント値の総和とが等しい場合に、第2トランザクションデータをブロックチェーンへ記録する。 For this reason, each of the plurality of blockchain nodes 16 includes the sum of the commitment values included in the output data in the first transaction data (the sum of the commitment values included in the input data in the second transaction data) and the second Second transaction data is recorded in the blockchain when the sum of the commitment values included in the output data in the transaction data is equal.

一方、複数のブロックチェーンノード16の各々は、第1トランザクションデータ内のアウトプットデータに含まれるコミットメント値の総和(第2トランザクションデータ内のインプットデータに含まれるコミットメント値の総和)と、第2トランザクションデータ内のアウトプットデータ含まれるコミットメント値の総和とが等しくない場合には、第2トランザクションデータをブロックチェーンへ記録せずに破棄する。 On the other hand, each of the plurality of blockchain nodes 16 is the sum of the commitment values included in the output data in the first transaction data (the sum of the commitment values included in the input data in the second transaction data) and the second transaction If the sum of the commitment values included in the output data in the data is not equal, the second transaction data is discarded without being recorded in the blockchain.

なお、例えば、アウトプットデータに複数のアイテムIDが含まれている場合には、トランザクションデータのアウトプットデータに含まれている複数のコミットメント値の合計値がブロックチェーン上において公開される。 Note that, for example, when multiple item IDs are included in the output data, the total value of multiple commitment values included in the output data of the transaction data is published on the blockchain.

具体的には、複数のブロックチェーンノード16の各々は、以下の計算式に示されているように、第2トランザクションデータTX2に含まれるプロダクトCのコミットメント値CとプロダクトCを生成する際に発生する原料の余りに相当するコミットメント値Cとの和が、複数の第1トランザクションデータTX1-1,TX-2に含まれる原料のコミットメント値の総和(CとCとの和)と等しい場合に、第2トランザクションデータTX2のプロダクトCが複数の第1トランザクションデータTX1-1,TX-2の原料によって構成されていると判定する。 Specifically, when each of the plurality of blockchain nodes 16 generates the commitment value CC of product C and product C included in the second transaction data TX2, as shown in the following formula: The sum of the commitment value C D corresponding to the surplus of the generated raw materials is equal to the sum of the commitment values of the raw materials (the sum of C A and C B ) included in the plurality of first transaction data TX1-1, TX-2. In this case, it is determined that the product C of the second transaction data TX2 is composed of a plurality of raw materials of the first transaction data TX1-1 and TX-2.

Figure 0007231291000007
Figure 0007231291000007

ステップS124において、複数のブロックチェーンノード16の各々は、第2トランザクションデータTX2のプロダクトCが、第1トランザクションデータTX1-1,TX-2の原料によって構成されていると判定した場合に、第2トランザクションデータTX2をブロックチェーンへ記録する。 In step S124, if each of the plurality of blockchain nodes 16 determines that the product C of the second transaction data TX2 is composed of the raw materials of the first transaction data TX1-1 and TX-2, the second Record the transaction data TX2 to the blockchain.

なお、トランザクションデータに記載されるコミットメント値によっては、各ブロックチェーンノード16が実施するコミットメント値の加算処理の際にオーバーフローが発生し、誤った計算結果が得られる可能性がある。そのため、コミットメント値が適正な範囲内にあることの証明(プルーフ)を含める方が好ましい。この実施に、例えば、Range proofを含めることができる。既知の手法の一例として、Borromean Ring Signatures(https://www.semanticscholar.org/paper/Borromean-Ring-Signatures-%E2%88%97-Maxwell-Poelstra/4160470c7f6cf05ffc81a98e8fd67fb0c84836ea)や、Bulletproofs(https://eprint.iacr.org/2017/1066.pdf)などの証明スキームを利用できる。 Depending on the commitment value described in the transaction data, an overflow may occur during the addition process of the commitment value performed by each blockchain node 16, resulting in an erroneous calculation result. Therefore, it is preferable to include proof that the commitment value is within the proper range. This implementation can include, for example, Range proofs. Examples of known techniques include Borromean Ring Signatures (https://www.semanticscholar.org/paper/Borromean-Ring-Signatures-%E2%88%97-Maxwell-Poelstra/4160470c7f6cf05ffc81a98e8fd67fb0c84836ea) and Bulletproofs (https:// eprint.iacr.org/2017/1066.pdf) can be used.

なお、サーバ14は、原料IDに対応するパラメータ値の開示要求を表す要求信号を端末12から受け付けた場合、要求信号の送信元の端末12との間において認証処理を実行する。そして、サーバ14は、要求信号の送信元の端末12が、パラメータ値の開示について予め許可されている端末である場合に、要求信号の送信元の端末12へパラメータ値を開示する。この端末12は、開示されたパラメータ値と、トランザクションデータに記録されているコミットメント値とに基づいて、プロダクトCが適切に製造されたものであるか否かを検証する。 When the server 14 receives from the terminal 12 a request signal indicating a request to disclose the parameter value corresponding to the raw material ID, the server 14 performs authentication processing with the terminal 12 that has sent the request signal. Then, the server 14 discloses the parameter values to the terminal 12, which is the source of the request signal, when the terminal 12, which is the source of the request signal, is a terminal permitted to disclose the parameter values in advance. This terminal 12 verifies whether or not the product C has been manufactured appropriately based on the disclosed parameter values and the commitment values recorded in the transaction data.

例えば、生成対象のプロダクトCを受け取ったユーザは、プロダクトCが適切な原料に基づいて製造されたのか否かを確かめるために、ブロックチェーンに記録されているコミットメント値を用いてデコミットを実施する。 For example, a user who has received product C to be generated decommits using the commitment value recorded in the blockchain in order to confirm whether product C was manufactured based on appropriate raw materials.

なお、コミットメント値の計算にPedersen commitmentを用いた場合には、以下の手順に従ってデコミットが実施され得る。 Note that when Pedersen commitment is used to calculate the commitment value, decommitment can be performed according to the following procedure.

具体的には、例えば、プロダクトCを受け取ったユーザ又は第三者であるユーザが操作する端末12Xは、ユーザの操作に応じてサーバ14に対して所定の要求信号を送信する。サーバ14は、要求信号に応答して、上述した認証処理を経て、パラメータ値H,H,Hと、原料の数量データ(コバルト:5、ニッケル:4、マンガン:9)と、ブラインドファクターrGとを、当該ユーザが操作する端末12Xへ送信する。また、端末12Xは、ブロックチェーンノード16へアクセスし、第2トランザクションデータに記録されているプロダクトCのコミットメント値Cを取得する。 Specifically, for example, the terminal 12X operated by the user who received the product C or a third party user transmits a predetermined request signal to the server 14 according to the user's operation. In response to the request signal, the server 14 passes through the authentication process described above, the parameter values HC , HN , and HM , raw material quantity data (cobalt: 5, nickel: 4, manganese: 9), blind and the factor rG to the terminal 12X operated by the user. Also, the terminal 12X accesses the blockchain node 16 and acquires the commitment value CC of the product C recorded in the second transaction data.

端末12Xは、パラメータ値H,H,Hと、原料の数量データ(コバルト:5、ニッケル:4、マンガン:9)と、ブラインドファクターrGと、ブロックチェーンに記録されている第2トランザクションデータのコミットメント値Cとに基づいて、既知のデコミット方法を用いて、プロダクトCはプロダクトA,Bから適切に製造されたものか否かを表す検証結果を生成する。端末12Xは、第2トランザクションデータに記録されているプロダクトCのコミットメント値Cが原料の数量データに基づいて算出されており、かつ、プロダクトCがプロダクトA,Bから適切に製造されたもの(以下、単に「プロダクトCが適切に生成」と称する)である場合には、その旨の検証結果を表示部(図示省略)へ表示する。一方、端末12Xは、プロダクトCが適切に生成されたものでない場合には、その旨の検証結果を表示部(図示省略)へ表示する。 The terminal 12X receives the parameter values H C , H N , and H M , raw material quantity data (cobalt: 5, nickel: 4, manganese: 9), blind factor rG, and the second transaction recorded in the block chain. Based on the data commitment values C and C , a known decommit method is used to generate a verification result indicating whether or not product C was properly manufactured from products A and B. The terminal 12X confirms that the commitment value CC of the product C recorded in the second transaction data is calculated based on the raw material quantity data, and that the product C is properly manufactured from the products A and B ( hereinafter simply referred to as "product C is properly generated"), the verification result to that effect is displayed on the display unit (not shown). On the other hand, if the product C is not properly generated, the terminal 12X displays the verification result to that effect on the display unit (not shown).

なお、プロダクトCを受け取ったユーザは、プロダクトCを生成したユーザからプロダクトCの成分表等を受け取っている可能性が高い。そのため、プロダクトCを受け取ったユーザが操作する端末12Xは、成分表等に記録されている原料の数量データ(コバルト:5、ニッケル:4、マンガン:9)と、パラメータ値H,H,Hと、ブラインドファクターrGとに基づいて、プロダクトCのコミットメント値C’を自ら計算することも可能である。このため、プロダクトCを受け取ったユーザが操作する端末12Xは、自ら計算したコミットメント値C’とブロックチェーンに記録されているコミットメント値Cとを比較して、プロダクトCが適切に生成されたものか否かを表す検証結果を生成するようにしてもよい。 It is highly probable that the user who received the product C received the ingredient list of the product C from the user who generated the product C. Therefore, the terminal 12X operated by the user who received the product C displays the raw material quantity data (cobalt: 5, nickel: 4, manganese: 9) recorded in the composition table, etc., and the parameter values H C , H N , It is also possible to calculate the commitment value C C ' for the product C itself based on H M and the blind factor rG. Therefore, the terminal 12X operated by the user who received the product C compares the commitment value C C ' calculated by itself with the commitment value C C recorded in the block chain, and confirms that the product C has been properly generated. It is possible to generate a verification result indicating whether or not the object is true.

なお、ブラインドファクターrGに関しては、プロダクトCを受け取るユーザが操作する端末12Xが生成し、生成した各値をサーバ14へ送信するようにしてもよい。この場合には、ステップS104において、プロダクトCを受け取るユーザが操作する端末12XがブラインドファクターrGをサーバ14へ送信する。 Note that the blind factor rG may be generated by the terminal 12X operated by the user who receives the product C, and each generated value may be transmitted to the server . In this case, the terminal 12X operated by the user who receives the product C transmits the blind factor rG to the server 14 in step S104.

また、ブラインドファクターrGを端末12Xへは開示せずに、既知のデコミット方法を用いて、各コミットメント値からブラインドファクターrGを減算した減算値と、ブラインドファクターrGから生成したデジタル署名とに基づいて、プロダクトCが適切に生成されたものか否かを表す検証結果を生成することもできる。 Also, without disclosing the blind factor rG to the terminal 12X, using a known decommit method, based on a subtraction value obtained by subtracting the blind factor rG from each commitment value and a digital signature generated from the blind factor rG, It is also possible to generate a verification result indicating whether or not product C was properly generated.

なお、コミットメント値の計算にKZG commitment(例えば、https://www.iacr.org/archive/asiacrypt2010/6477178/6477178.pdfを参照。)を用いることも可能である。Pedersen commitmentを利用した場合、デコミットする際は、コミットメント値に含まれる原料の数量データを公開する必要がある。これに対し、多項式を利用したコミットメントスキームであるKZG commitmentを利用すると、一部の原料の数量データのみを公開することも可能である。 It is also possible to use KZG commitment (see, for example, https://www.iacr.org/archive/asiacrypt2010/6477178/6477178.pdf) to calculate the commitment value. When using the Pedersen commitment, when decommitting, it is necessary to disclose the quantity data of raw materials included in the commitment value. On the other hand, by using the KZG commitment, which is a commitment scheme using polynomials, it is possible to disclose only the quantity data of some raw materials.

なお、上述した例では、Pedersen commitment及びKZG commitmentをコミットメント値の計算に利用する場合を例に説明したが、加法準同型性のあるコミットメントスキームであればどのようなコミットメントスキームであっても利用することができる。 In the above example, the Pedersen commitment and KZG commitment are used to calculate the commitment value, but any commitment scheme with additive homomorphism can be used. be able to.

以上説明したように、本実施形態に係る情報処理システムの端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとをサーバへ送信する。サーバは、原料に対応するパラメータ値と数量データとに基づく秘密計算をすることにより、生成対象アイテムのコミットメント値を計算する。サーバは、コミットメント値と原料識別データと生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納する。サーバは、ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ生成元アイテム識別データがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得する。そして、サーバは、生成対象アイテムの送り元を表すアドレスと生成対象アイテムの送り先を表すアドレスとデータ構造とを含むトランザクションデータであって、生成元アイテム識別データがインプットデータに含まれ、かつ生成対象アイテム識別データを含むデータ構造がアウトプットデータに含まれる第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストする。複数のブロックチェーンノードの各々は、サーバによりブロードキャストされた第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出す。複数のブロックチェーンノードの各々は、第2トランザクションデータに含まれる生成対象アイテムのコミットメント値と、第1トランザクションデータに含まれる生成元アイテムのコミットメント値との間の関係性に基づいて、第2トランザクションデータのアイテムが、第1トランザクションデータの生成元アイテムに含まれる原料によって構成されているか否かを検証し、第2トランザクションデータの生成対象アイテムが第1トランザクションデータの原料によって構成されていると判定した場合に、第2トランザクションデータをブロックチェーンへ記録する。これにより、アイテムに含まれている原料の数量を秘密にしつつ、アイテムに含まれる原料の取引に不正がないことを検証することができる。 As described above, the terminal of the information processing system according to the present embodiment has the generation target item identification data representing the identification information of the generation target item and the identification information of the raw material used when generating the generation target item. Raw material identification data, quantity data representing the quantity of raw materials, and source item identification data representing the identification information of the source item are transmitted to the server. The server calculates the commitment value of the item to be produced by performing secure calculations based on the parameter values corresponding to the raw materials and quantity data. The server stores the combination of the commitment value, raw material identification data, and generation target item identification data in a predetermined data structure. The server provides first transaction data, which is transaction data recorded in the blockchain stored in the storage unit of the blockchain node and in which the generation source item identification data is included in the output data. to get Then, the server provides transaction data including an address representing the source of the item to be generated, an address representing the destination of the item to be generated, and a data structure, wherein the input data includes identification data of the item to be generated, and Broadcast second transaction data, wherein the output data includes a data structure containing item identification data, to a plurality of blockchain nodes. Each of the plurality of blockchain nodes reads from the blockchain each first transaction data, which is past transaction data linked to the second transaction data broadcast by the server. Each of the plurality of blockchain nodes performs the second transaction based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data Verifies whether or not the item of data is composed of raw materials included in the source item of the first transaction data, and determines that the item to be generated of the second transaction data is composed of the raw materials of the first transaction data. If so, record the second transaction data to the blockchain. As a result, it is possible to verify that the transaction of the raw materials contained in the item is not fraudulent while keeping the quantity of the raw materials contained in the item secret.

また、アイテムのコミットメント値を計算する際に、ブラインドファクターrGを導入することにより、異なるアイテムのコミットメント値が同一の値となることを防止することができる。 Also, by introducing the blind factor rG when calculating the commitment value of an item, it is possible to prevent the commitment values of different items from becoming the same value.

なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。 The present invention is not limited to the above-described embodiments, and various modifications and applications are possible without departing from the gist of the present invention.

例えば、アイテムとしては現実物に限らず特定のデータも含まれる。 For example, items include not only actual objects but also specific data.

また、上記実施形態では、コミットメント値を計算する際に、ブラインドファクターrGを導入する場合を例に説明したが、これに限定されるものではない。ブラインドファクターrGを導入せずに、コミットメント値を計算するようにしてもよい。 Further, in the above embodiment, the case of introducing the blind factor rG when calculating the commitment value has been described as an example, but the present invention is not limited to this. The commitment value may be calculated without introducing the blind factor rG.

また、上記実施形態では、上記式(B)が満たされるように、ランダムな係数r,r,r,rは予め調整される場合を例に説明したが、これに限定されるものではない。ランダムな係数r,r,r,rが上記式(B)を満たさない場合には、以下の式の右辺に相当する値に対してデジタル署名を付加することにより、既知の手法を用いて、生成対象のプロダクトが生成元のプロダクトから適切に製造されているか否かを検証することもできる。 Further, in the above embodiment, the random coefficients r 1 , r 2 , r 3 , r 4 are adjusted in advance so that the above formula (B) is satisfied. not a thing If the random coefficients r 1 , r 2 , r 3 , and r 4 do not satisfy the above formula (B), a known method is can also be used to verify whether the product to be generated is properly manufactured from the original product.

Figure 0007231291000008
Figure 0007231291000008

この場合には、上述したように、サーバ14は、生成対象のプロダクトCのコミットメント値を計算する際に、ブラインドファクターrGを用いて生成対象のプロダクトCのコミットメント値Cを計算する。そして、サーバ14は、第2トランザクションデータに含まれる生成対象のプロダクトCのコミットメント値Cと、原料の余りに相当するコミットメント値Cとの和(C+C)と、複数の第1トランザクションデータに含まれる生成元のプロダクトA,Bのコミットメント値の総和(C+C)との間の差分を表す情報に対して、サーバ14のデジタル署名を生成し、そのデジタル署名を第2トランザクションデータへ追加する。これにより、(C+C)-(C+C)の演算結果が0とならない場合であっても、その演算結果にはデジタル署名が付加されているため、そのデジタル署名を元に生成対象のプロダクトが生成元のプロダクトから適切に製造されているか否かを検証することができる。 In this case, as described above, the server 14 calculates the commitment value CC of the product C to be generated using the blind factor rG when calculating the commitment value of the product C to be generated. Then, the server 14 generates the sum (C C +C D ) of the commitment value C C of the product C to be generated included in the second transaction data and the commitment value C D corresponding to the surplus of raw materials, and a plurality of first transactions A digital signature of the server 14 is generated for the information representing the difference between the sum of the commitment values (C A +C B ) of the products A and B of the generation source contained in the data, and the digital signature is used in the second transaction. Add to data. As a result, even if the operation result of (C A +C B )-(C C +C D ) does not become 0, since the operation result has a digital signature attached, it is generated based on the digital signature. It is possible to verify whether the target product is properly manufactured from the original product.

また、上記実施形態では、プロダクトCを生成する際に消費されない余りの原料に相当するプロダクトDが生成される場合を例に説明したが、これに限定されるものではなく、余りの原料が発生しない場合であっても本実施形態を適用することが可能である。 Further, in the above embodiment, the case where the product D corresponding to the surplus material that is not consumed when the product C is produced has been described as an example, but the present invention is not limited to this, and the surplus material is generated. It is possible to apply this embodiment even if it does not.

また、上記実施形態では、サーバ14が各種処理を実行する場合を例に説明したが、それらの各種処理の一部又は全部を、端末12又はブロックチェーンノード16が実行するようにしてもよい。 In the above embodiment, the server 14 executes various processes as an example, but the terminal 12 or the blockchain node 16 may execute part or all of the various processes.

また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。例えば、プログラムは、CD-ROM(Compact Disk Read Only Memory)、DVD-ROM(Digital Versatile Disk Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の非一時的(non-transitory)記憶媒体に記憶された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。 Further, in the specification of the present application, an embodiment in which the program is pre-installed has been described, but it is also possible to store the program in a computer-readable recording medium and provide it. For example, the program is stored in non-transitory storage media such as CD-ROM (Compact Disk Read Only Memory), DVD-ROM (Digital Versatile Disk Read Only Memory), and USB (Universal Serial Bus) memory. may be provided in any form. Also, the program may be downloaded from an external device via a network.

なお、上記実施形態でCPUがソフトウェア(プログラム)を読み込んで実行した処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。または、プロセッサとしては、GPGPU(General-purpose graphics processing UNIT)を用いてもよい。また、各処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。 Note that the processing executed by the CPU by reading the software (program) in the above embodiment may be executed by various processors other than the CPU. In this case, the processor is a PLD (Programmable Logic Device) whose circuit configuration can be changed after manufacturing such as an FPGA (Field-Programmable Gate Array), and an ASIC (Application Specific Integrated Circuit) for executing specific processing. A dedicated electric circuit or the like, which is a processor having a specially designed circuit configuration, is exemplified. Alternatively, a GPGPU (General-purpose graphics processing UNIT) may be used as the processor. Also, each process may be executed by one of these various processors, or a combination of two or more processors of the same or different type (for example, a plurality of FPGAs, a combination of a CPU and an FPGA, etc.). ) can be run. More specifically, the hardware structure of these various processors is an electric circuit in which circuit elements such as semiconductor elements are combined.

また、本実施形態の各処理を、汎用演算処理装置及び記憶装置等を備えたコンピュータ又はサーバ等により構成して、各処理がプログラムによって実行されるものとしてもよい。このプログラムは記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。もちろん、その他いかなる構成要素についても、単一のコンピュータやサーバによって実現しなければならないものではなく、ネットワークによって接続された複数のコンピュータに分散して実現してもよい。 Moreover, each process of the present embodiment may be configured by a computer or server having a general-purpose arithmetic processing unit, a storage device, or the like, and each process may be executed by a program. This program is stored in a storage device, and can be recorded on a recording medium such as a magnetic disk, optical disk, or semiconductor memory, or can be provided through a network. Of course, any other component does not have to be realized by a single computer or server, but may be distributed and realized by a plurality of computers connected by a network.

本明細書に記載された全ての文献、特許出願、および技術規格は、個々の文献、特許出願、および技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。 All publications, patent applications and technical standards mentioned herein are to the same extent as if each individual publication, patent application and technical standard were specifically and individually noted to be incorporated by reference. incorporated herein by reference.

なお、上記実施形態においては、「××のみに基づいて」、「××のみに応じて」、「××のみの場合」というように「のみ」との記載がなければ、本明細書においては、付加的な情報も考慮し得ることが想定されていることに留意されたい。一例として、「aの場合にbする」という記載は、明示した場合を除き、「aの場合に常にbする」ことを必ずしも意味しない。 It should be noted that, in the above embodiment, if there is no description of "only" such as "based only on XX", "only in response to XX", or "only in the case of XX", in this specification Note that it is assumed that , may also consider additional information. As an example, the statement "when a, do b" does not necessarily mean "when a, do b", unless explicitly stated.

また、何らかの方法、プログラム、端末、装置、サーバ又はシステム(以下「方法等」)において、本明細書で記述された動作と異なる動作を行う側面があるとしても、開示の技術の各態様は、本明細書で記述された動作のいずれかと同一の動作を対象とするものであり、本明細書で記述された動作と異なる動作が存在することは、当該方法等を本開示の技術の各態様の範囲外とするものではない。 In addition, even if there is an aspect in which some method, program, terminal, device, server, or system (hereinafter "method, etc.") performs operations different from those described in this specification, each aspect of the disclosed technology is The existence of operations that are the same as any of the operations described herein and that differ from the operations described herein indicate that the methods, etc. is not outside the scope of

10 情報処理システム
12,12A,12B,12C,12X 端末
14 サーバ
16,16A,16B,16C ブロックチェーンノード
20 ネットワーク
70 コンピュータ
72 メモリ
73 記憶部
10 information processing system 12, 12A, 12B, 12C, 12X terminal 14 server 16, 16A, 16B, 16C block chain node 20 network 70 computer 72 memory 73 storage unit

Claims (13)

サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムであって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値と予め調整されたランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和が、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と等しい場合に、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されていると判定する、
情報処理システム。
An information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material that is not actually included in the item to be generated and blind quantity data representing a random pre-adjusted blind factor quantity, calculating the commitment value of the item to be generated by adding it to the sum-of-products operation result of the parameter value and the quantity data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when generating the item to be generated is included in the plurality of first transaction data. determining that the generation target item of the second transaction data is composed of a plurality of the raw materials of the first transaction data when equal to the sum of the commitment values of the generation source item;
Information processing system.
サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムであって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値とランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和との間の差分を表す情報に対して、前記サーバのデジタル署名を生成し、前記デジタル署名を前記第2トランザクションデータへ追加し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータのうちの前記デジタル署名と前記差分を表す情報と、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と、を参照することにより、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証する、
情報処理システム。
An information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material not actually contained in the item to be generated and blind quantity data representing a random quantity of the blind factor is defined as the parameter value. calculating the commitment value of the item to be generated by adding it to the result of the sum-of-products operation with the quantity data;
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when the item to be generated is generated, and the sum is included in the plurality of first transaction data. generating a digital signature of the server for information representing a difference between the sum of commitment values of the originating item and adding the digital signature to the second transaction data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
information representing the digital signature and the difference in the second transaction data; a commitment value of the item to be generated included in the second transaction data; By referring to the sum of the corresponding commitment values and the sum of the commitment values of the generation source items included in the plurality of the first transaction data, the generation target item of the second transaction data is the first transaction data. 1 verifying whether or not it is composed of the raw material contained in the originating item of transaction data;
Information processing system.
前記サーバは、前記パラメータ値の開示要求を表す要求信号を受け付けた場合、前記要求信号の送信元の端末との間において認証処理を実行し、前記要求信号の送信元の端末が前記パラメータ値の開示について予め許可されている端末である場合に、前記要求信号の送信元の端末へ前記パラメータ値を開示する、
請求項1又は請求項2に記載の情報処理システム。
When the server receives a request signal representing a request for disclosing the parameter value, the server performs authentication processing with the terminal that has transmitted the request signal, and the terminal that has transmitted the request signal confirms the parameter value. Disclosing the parameter value to the terminal that sent the request signal if the terminal is pre-permitted for disclosure;
The information processing system according to claim 1 or 2.
サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムにおける前記サーバであって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値と予め調整されたランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和が、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と等しい場合に、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されていると判定する、
サーバ。
The server in an information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material that is not actually included in the item to be generated and blind quantity data representing a random pre-adjusted blind factor quantity, calculating the commitment value of the item to be generated by adding it to the sum-of-products operation result of the parameter value and the quantity data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when generating the item to be generated is included in the plurality of first transaction data. determining that the generation target item of the second transaction data is composed of a plurality of the raw materials of the first transaction data when equal to the sum of the commitment values of the generation source item;
server.
サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムにおける前記サーバであって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値とランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和との間の差分を表す情報に対して、前記サーバのデジタル署名を生成し、前記デジタル署名を前記第2トランザクションデータへ追加し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータのうちの前記デジタル署名と前記差分を表す情報と、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と、を参照することにより、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証する、
サーバ。
The server in an information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material not actually contained in the item to be generated and blind quantity data representing a random quantity of the blind factor is defined as the parameter value. calculating the commitment value of the item to be generated by adding it to the result of the sum-of-products operation with the quantity data;
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when the item to be generated is generated, and the sum is included in the plurality of first transaction data. generating a digital signature of the server for information representing a difference between the sum of commitment values of the originating item and adding the digital signature to the second transaction data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
information representing the digital signature and the difference in the second transaction data; a commitment value of the item to be generated included in the second transaction data; By referring to the sum of the corresponding commitment values and the sum of the commitment values of the generation source items included in the plurality of the first transaction data, the generation target item of the second transaction data is the first transaction data. 1 verifying whether or not it is composed of the raw material contained in the originating item of transaction data;
server.
サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムにおける前記ブロックチェーンノードであって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値と予め調整されたランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和が、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と等しい場合に、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されていると判定する、
ブロックチェーンノード。
The blockchain node in an information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material that is not actually included in the item to be generated and blind quantity data representing a random pre-adjusted blind factor quantity, calculating the commitment value of the item to be generated by adding it to the sum-of-products operation result of the parameter value and the quantity data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when generating the item to be generated is included in the plurality of first transaction data. determining that the generation target item of the second transaction data is composed of a plurality of the raw materials of the first transaction data when equal to the sum of the commitment values of the generation source item;
blockchain node.
サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムにおける前記ブロックチェーンノードであって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値とランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和との間の差分を表す情報に対して、前記サーバのデジタル署名を生成し、前記デジタル署名を前記第2トランザクションデータへ追加し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータのうちの前記デジタル署名と前記差分を表す情報と、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と、を参照することにより、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証する、
ブロックチェーンノード。
The blockchain node in an information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material not actually contained in the item to be generated and blind quantity data representing a random quantity of the blind factor is defined as the parameter value. calculating the commitment value of the item to be generated by adding it to the result of the sum-of-products operation with the quantity data;
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when the item to be generated is generated, and the sum is included in the plurality of first transaction data. generating a digital signature of the server for information representing a difference between the sum of commitment values of the originating item and adding the digital signature to the second transaction data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
information representing the digital signature and the difference in the second transaction data; a commitment value of the item to be generated included in the second transaction data; By referring to the sum of the corresponding commitment values and the sum of the commitment values of the generation source items included in the plurality of the first transaction data, the generation target item of the second transaction data is the first transaction data. 1 verifying whether or not it is composed of the raw material contained in the originating item of transaction data;
blockchain node.
サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムが実行する情報処理方法であって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値と予め調整されたランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和が、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と等しい場合に、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されていると判定する、
情報処理方法。
An information processing method executed by an information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material that is not actually included in the item to be generated and blind quantity data representing a random pre-adjusted blind factor quantity, calculating the commitment value of the item to be generated by adding it to the sum-of-products operation result of the parameter value and the quantity data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when generating the item to be generated is included in the plurality of first transaction data. determining that the generation target item of the second transaction data is composed of a plurality of the raw materials of the first transaction data when equal to the sum of the commitment values of the generation source item;
Information processing methods.
サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムが実行する情報処理方法であって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されて
いるトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値とランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和との間の差分を表す情報に対して、前記サーバのデジタル署名を生成し、前記デジタル署名を前記第2トランザクションデータへ追加し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータのうちの前記デジタル署名と前記差分を表す情報と、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と、を参照することにより、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証する、
情報処理方法。
An information processing method executed by an information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material not actually contained in the item to be generated and blind quantity data representing a random quantity of the blind factor is defined as the parameter value. calculating the commitment value of the item to be generated by adding it to the result of the sum-of-products operation with the quantity data;
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when the item to be generated is generated, and the sum is included in the plurality of first transaction data. generating a digital signature of the server for information representing a difference between the sum of commitment values of the originating item and adding the digital signature to the second transaction data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
information representing the digital signature and the difference in the second transaction data; a commitment value of the item to be generated included in the second transaction data; By referring to the sum of the corresponding commitment values and the sum of the commitment values of the generation source items included in the plurality of the first transaction data, the generation target item of the second transaction data is the first transaction data. 1 verifying whether or not it is composed of the raw material contained in the originating item of transaction data;
Information processing methods.
サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムにおける前記サーバに実行させるためのプログラムであって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値と予め調整されたランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和が、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と等しい場合に、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されていると判定する、
プログラム。
A program to be executed by the server in an information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material that is not actually included in the item to be generated and blind quantity data representing a random pre-adjusted blind factor quantity, calculating the commitment value of the item to be generated by adding it to the sum-of-products operation result of the parameter value and the quantity data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when generating the item to be generated is included in the plurality of first transaction data. determining that the generation target item of the second transaction data is composed of a plurality of the raw materials of the first transaction data when equal to the sum of the commitment values of the generation source item;
program.
サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムにおける前記サーバに実行させるためのプログラムであって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値とランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和との間の差分を表す情報に対して、前記サーバのデジタル署名を生成し、前記デジタル署名を前記第2トランザクションデータへ追加し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータのうちの前記デジタル署名と前記差分を表す情報と、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と、を参照することにより、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証する、
プログラム。
A program to be executed by the server in an information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material not actually contained in the item to be generated and blind quantity data representing a random quantity of the blind factor is defined as the parameter value. calculating the commitment value of the item to be generated by adding it to the result of the sum-of-products operation with the quantity data;
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when the item to be generated is generated, and the sum is included in the plurality of first transaction data. generating a digital signature of the server for information representing a difference between the sum of commitment values of the originating item and adding the digital signature to the second transaction data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
information representing the digital signature and the difference in the second transaction data; a commitment value of the item to be generated included in the second transaction data; By referring to the sum of the corresponding commitment values and the sum of the commitment values of the generation source items included in the plurality of the first transaction data, the generation target item of the second transaction data is the first transaction data. 1 verifying whether or not it is composed of the raw material contained in the originating item of transaction data;
program.
サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムにおける前記ブロックチェーンノードに実行させるためのプログラムであって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値と予め調整されたランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和が、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と等しい場合に、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されていると判定する、
プログラム。
A program for execution by the blockchain node in an information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material that is not actually included in the item to be generated and blind quantity data representing a random pre-adjusted blind factor quantity, calculating the commitment value of the item to be generated by adding it to the sum-of-products operation result of the parameter value and the quantity data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when generating the item to be generated is included in the plurality of first transaction data. determining that the generation target item of the second transaction data is composed of a plurality of the raw materials of the first transaction data when equal to the sum of the commitment values of the generation source item;
program.
サーバと、複数のブロックチェーンノードと、ユーザが操作する端末と、を含む情報処理システムにおける前記ブロックチェーンノードに実行させるためのプログラムであって、
複数のユーザ間においてアイテムの取引がされる際に、第1ユーザにより生成対象アイテムが生成され、前記生成対象アイテムの送り元である前記第1ユーザから、前記生成対象アイテムの送り先である第2ユーザへ、前記生成対象アイテムが送られる際に、
前記第1ユーザの操作に応じて、前記第1ユーザが操作する前記端末が、生成対象アイテムの識別情報を表す生成対象アイテム識別データと、生成対象アイテムを生成する際に使用される原料の識別情報である原料識別データと、前記原料の数量を表す数量データと、生成元アイテムの識別情報を表す生成元アイテム識別データとを前記サーバへ送信し、
前記サーバが、
前記原料に対応するパラメータ値と前記数量データとに基づいて、加法準同型性のあるコミットメントスキームを用いた秘密計算をすることにより、前記生成対象アイテムのコミットメント値を計算し、
前記原料識別データと前記生成対象アイテム識別データとの組み合わせを所定のデータ構造へ格納し、
前記ブロックチェーンノードの記憶部に格納されているブロックチェーンに記録されているトランザクションデータであって、かつ前記生成元アイテム識別データと前記生成元アイテムのコミットメント値とがアウトプットデータに含まれているトランザクションデータである第1トランザクションデータを取得し、
前記生成対象アイテムの送り元を表すアドレスと前記生成対象アイテムの送り先を表すアドレスと前記データ構造とを含むトランザクションデータであって、前記生成元アイテム識別データがインプットデータに含まれ、かつ前記生成対象アイテム識別データを含む前記データ構造と前記生成対象アイテムのコミットメント値とがアウトプットデータに含まれる第2トランザクションデータを取得し、前記第2トランザクションデータを、複数のブロックチェーンノードへブロードキャストし、
複数のブロックチェーンノードの各々が、
前記サーバによりブロードキャストされた前記第2トランザクションデータに紐づく過去のトランザクションデータである第1トランザクションデータの各々をブロックチェーンから読み出し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と、前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値との間の関係性に基づいて、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証し、前記第2トランザクションデータの前記生成対象アイテムが前記第1トランザクションデータの前記原料によって構成されていると判定した場合に、前記第2トランザクションデータを前記ブロックチェーンへ記録し、
前記サーバは、前記生成対象アイテムのコミットメント値を計算する際に、
前記生成対象アイテムには実際には含まれていない原料を表すブラインドファクターに対応するブラインドパラメータ値とランダムな前記ブラインドファクターの数量を表すブラインド数量データとの積和演算の結果を、前記パラメータ値と前記数量データとの積和演算の結果へ加算することにより、前記生成対象アイテムのコミットメント値を計算し、
前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和との間の差分を表す情報に対して、前記サーバのデジタル署名を生成し、前記デジタル署名を前記第2トランザクションデータへ追加し、
前記複数のブロックチェーンノードは、前記第2トランザクションデータの前記生成対象アイテムが複数の前記第1トランザクションデータの前記原料によって構成されているか否かを検証する際に、
前記第2トランザクションデータのうちの前記デジタル署名と前記差分を表す情報と、前記第2トランザクションデータに含まれる前記生成対象アイテムのコミットメント値と前記生成対象アイテムを生成する際に発生する前記原料の余りに相当するコミットメント値との和と、複数の前記第1トランザクションデータに含まれる前記生成元アイテムのコミットメント値の総和と、を参照することにより、前記第2トランザクションデータの前記生成対象アイテムが、前記第1トランザクションデータの前記生成元アイテムに含まれる前記原料によって構成されているか否かを検証する、
プログラム。
A program for execution by the blockchain node in an information processing system including a server, a plurality of blockchain nodes, and a terminal operated by a user ,
When an item is traded between a plurality of users, a first user generates an item to be generated, and from the first user who is the source of the item to be generated, the second user who is the destination of the item to be generated When the item to be generated is sent to the user,
In response to an operation by the first user, the terminal operated by the first user outputs generation target item identification data representing identification information of the generation target item and identification of raw materials used when generating the generation target item. transmitting raw material identification data, which is information, quantity data representing the quantity of the raw material, and source item identification data representing the identification information of the source item to the server;
the server
calculating a commitment value of the item to be generated by performing secure calculation using a commitment scheme with additive homomorphism based on the parameter value corresponding to the raw material and the quantity data;
storing a combination of the raw material identification data and the generation target item identification data in a predetermined data structure;
Transaction data recorded in the blockchain stored in the storage unit of the blockchain node, wherein the source item identification data and the commitment value of the source item are included in the output data. Acquiring first transaction data, which is transaction data;
Transaction data including an address representing a source of the item to be generated, an address representing a destination of the item to be generated, and the data structure, wherein the source item identification data is included in input data, and the object to be generated obtaining second transaction data in which output data includes the data structure including item identification data and the commitment value of the item to be generated , and broadcasting the second transaction data to a plurality of blockchain nodes;
Each of the multiple blockchain nodes
reading from the blockchain each piece of first transaction data, which is past transaction data linked to the second transaction data broadcast by the server;
the generation of the second transaction data based on the relationship between the commitment value of the generation target item included in the second transaction data and the commitment value of the generation source item included in the first transaction data; verifying whether or not the target item is composed of the raw material included in the source item of the first transaction data, and verifying whether the target item of the second transaction data is composed of the raw material of the first transaction data; If determined to be configured, record the second transaction data to the blockchain ;
When the server calculates the commitment value of the item to be generated,
The result of a product-sum operation between a blind parameter value corresponding to a blind factor representing a raw material not actually contained in the item to be generated and blind quantity data representing a random quantity of the blind factor is defined as the parameter value. calculating the commitment value of the item to be generated by adding it to the result of the sum-of-products operation with the quantity data;
The sum of the commitment value of the item to be generated included in the second transaction data and the commitment value corresponding to the surplus of raw materials generated when the item to be generated is generated, and the sum is included in the plurality of first transaction data. generating a digital signature of the server for information representing a difference between the sum of commitment values of the originating item and adding the digital signature to the second transaction data;
When verifying whether the generation target item of the second transaction data is composed of the raw materials of the plurality of first transaction data, the plurality of blockchain nodes:
information representing the digital signature and the difference in the second transaction data; a commitment value of the item to be generated included in the second transaction data; By referring to the sum of the corresponding commitment values and the sum of the commitment values of the generation source items included in the plurality of the first transaction data, the generation target item of the second transaction data is the first transaction data. 1 verifying whether or not it is composed of the raw material contained in the originating item of transaction data;
program.
JP2022061015A 2022-03-31 2022-03-31 Information processing system, information processing method, server, blockchain node, and program Active JP7231291B1 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2022061015A JP7231291B1 (en) 2022-03-31 2022-03-31 Information processing system, information processing method, server, blockchain node, and program
JP2023018759A JP2023152714A (en) 2022-03-31 2023-02-09 Information processing system, information processing method, server, blockchain node, and program
US18/851,672 US20250392484A1 (en) 2022-03-31 2023-03-24 Information processing system, information processing method, server, block chain node, and program
PCT/JP2023/012002 WO2023190249A1 (en) 2022-03-31 2023-03-24 Information processing system, information processing method, server, blockchain node, and program
EP23780259.0A EP4502991A1 (en) 2022-03-31 2023-03-24 Information processing system, information processing method, server, blockchain node, and program
CN202380031527.8A CN118974799B (en) 2022-03-31 2023-03-24 Information processing system, information processing method, server in information processing system, blockchain node and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022061015A JP7231291B1 (en) 2022-03-31 2022-03-31 Information processing system, information processing method, server, blockchain node, and program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023018759A Division JP2023152714A (en) 2022-03-31 2023-02-09 Information processing system, information processing method, server, blockchain node, and program

Publications (2)

Publication Number Publication Date
JP7231291B1 true JP7231291B1 (en) 2023-03-01
JP2023151422A JP2023151422A (en) 2023-10-16

Family

ID=85380654

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022061015A Active JP7231291B1 (en) 2022-03-31 2022-03-31 Information processing system, information processing method, server, blockchain node, and program

Country Status (1)

Country Link
JP (1) JP7231291B1 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190180291A1 (en) 2016-10-01 2019-06-13 James L. Schmeling 3d-printed packaging with blockchain integration
CN110503438A (en) 2019-07-10 2019-11-26 王伟林 A kind of production anti-fake traceability system and method based on block chain
JP2020035436A (en) 2018-08-01 2020-03-05 雋名有限公司Smart Brand Limited Traceability system for pet food
JP2020071617A (en) 2018-10-30 2020-05-07 株式会社Crypto Garage Transaction method, program, verifying apparatus and creating method
JP2020524924A (en) 2017-05-23 2020-08-20 マテリアリティックス、エルエルシー A distributed ledger of physical materials
CN112330345A (en) 2020-12-01 2021-02-05 宁波旺链信息科技有限公司 Traceability management system for wine industry supply chain based on block chain
JP2021064219A (en) 2019-10-15 2021-04-22 株式会社chaintope Information processing system, information processing method, server, information processing program, and block chain data structure
WO2022071365A1 (en) 2020-10-01 2022-04-07 Green Earth Institute 株式会社 Usage history management system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190180291A1 (en) 2016-10-01 2019-06-13 James L. Schmeling 3d-printed packaging with blockchain integration
JP2020524924A (en) 2017-05-23 2020-08-20 マテリアリティックス、エルエルシー A distributed ledger of physical materials
JP2020035436A (en) 2018-08-01 2020-03-05 雋名有限公司Smart Brand Limited Traceability system for pet food
JP2020071617A (en) 2018-10-30 2020-05-07 株式会社Crypto Garage Transaction method, program, verifying apparatus and creating method
CN110503438A (en) 2019-07-10 2019-11-26 王伟林 A kind of production anti-fake traceability system and method based on block chain
JP2021064219A (en) 2019-10-15 2021-04-22 株式会社chaintope Information processing system, information processing method, server, information processing program, and block chain data structure
WO2022071365A1 (en) 2020-10-01 2022-04-07 Green Earth Institute 株式会社 Usage history management system
CN112330345A (en) 2020-12-01 2021-02-05 宁波旺链信息科技有限公司 Traceability management system for wine industry supply chain based on block chain

Also Published As

Publication number Publication date
JP2023151422A (en) 2023-10-16

Similar Documents

Publication Publication Date Title
US8712858B2 (en) Supplier capability methods, systems, and apparatuses for extended commerce
WO2023095415A1 (en) Information coordination system for handling information on greenhouse gas emissions, information processing device, and program
CN112184175A (en) Whole-process project management platform
Sutanto et al. Product-service system design concept development based on product and service integration
US20190188627A1 (en) System for creating collaborative project data
CN114693283B (en) Cross-system business process approval processing method and device and computer equipment
CN112328575B (en) Data asset lineage generation method, device, and electronic device
AU2011203185A1 (en) Methods, systems, and apparatuses for extended enterprise commerce
CN112416893B (en) Data sharing method, system, device, computer equipment and storage medium
JP7231291B1 (en) Information processing system, information processing method, server, blockchain node, and program
JP6287501B2 (en) Information processing apparatus and information processing program
US20250184115A1 (en) Method of managing carbon data using blockchain network and system for the same
WO2023190249A1 (en) Information processing system, information processing method, server, blockchain node, and program
US20240178988A1 (en) Performance benchmarking with cascaded decryption
JP7262033B1 (en) Information processing system, information processing device, information processing method, and information processing program
CN117240605A (en) Data transaction methods, devices, equipment and storage media
JP2023099052A (en) Mediation server, mediation method, and program
US20210287234A1 (en) Tracking manufacturing information
JP2007249873A (en) Analysis model creation method, analysis model creation program, and analysis model creation device
WO2015190080A1 (en) Associated information generation device, associated information generation method, and recording medium storing associated information generation program
JP6511749B2 (en) INFORMATION PROCESSING APPARATUS AND INFORMATION PROCESSING PROGRAM
CN117726076A (en) Method, device, equipment and medium for determining resource conversion service influence information
CN116452062A (en) Object rating method, device, computer equipment and storage medium thereof
Rashid et al. Leveraging Blockchain Technology for Enhanced Data Sharing in Environmental Science
Pan et al. Mutual dependency grid for stakeholder mapping: a component-based approach to supply chain participant analysis

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220725

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20221019

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221208

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230209

R150 Certificate of patent or registration of utility model

Ref document number: 7231291

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150