Control method, device, and program

The method of combining multiple consensus algorithms in blockchain systems addresses throughput limitations and security vulnerabilities by dynamically selecting algorithms based on transaction data, enhancing efficiency and adaptability.

WO2025211308A1PCT designated stage Publication Date: 2025-10-09PANASONIC INTELLECTUAL PROPERTY MANAGEMENT CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2025/013061
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-04-05
Filing Date
2025-03-31
Publication Date
2025-10-09

AI Technical Summary

Technical Problem

Existing blockchain systems face challenges in throughput limitations due to high consensus algorithm costs, potential security vulnerabilities when transitioning to new algorithms, and difficulties in reverting to previous algorithms if vulnerabilities are discovered.

Method used

A control method that allows multiple consensus algorithms to be used in combination, determining the appropriate algorithm based on transaction data characteristics, enabling nodes to use conventional algorithms when necessary and reducing computational costs.

Benefits of technology

This approach enhances blockchain system efficiency by reducing computational costs and maintaining security, allowing nodes to adapt to different transaction types and ensuring seamless transitions between consensus algorithms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025013061_09102025_PF_FP_ABST
    Figure JP2025013061_09102025_PF_FP_ABST
Patent Text Reader

Abstract

A control method according to the present invention is a control method which is executed by a device, wherein: transaction data scheduled for storage in a block chain is acquired (S104); relevant information related to data included in the transaction data is transmitted, on the basis of the relevant information, to an information terminal in which is stored a program for determining the type of consensus algorithm to be used for the transaction data (S105); the type of consensus algorithm determined by the program is received from an information terminal (300) (S107); and a consensus algorithm corresponding to the type of consensus algorithm is executed to thereby generate a block for storage in the block chain, the block including the transaction data (S108).
Need to check novelty before this filing date? Find Prior Art

Description

Control method, device, and program

[0001] The present disclosure relates to a control method, an apparatus, and a program.

[0002] Patent Literature 1 discloses a blockchain technology that ensures data tamper resistance and consistency by forming a consensus among multiple servers by executing a consensus algorithm on transaction data.

[0003] JP 2019-181149 A

[0004] The present disclosure provides a control method that allows multiple types of consensus algorithms to be used in combination as consensus algorithms used in blockchain technology.

[0005] A control method according to one aspect of the present disclosure is a control method executed by an apparatus, which acquires transaction data to be stored in a blockchain, transmits the related information to an information terminal storing a program that determines the type of consensus algorithm to use for the transaction data based on related information regarding data included in the transaction data, receives the type of consensus algorithm determined by the program from the information terminal, and executes a consensus algorithm according to the type of consensus algorithm to generate a block to be stored in the blockchain, the block including the transaction data.

[0006] Furthermore, an apparatus according to one aspect of the present disclosure includes a processor and a memory, wherein the processor uses the memory to acquire transaction data to be stored in a blockchain, transmits the related information to an information terminal storing a program that determines the type of consensus algorithm to be used for the transaction data based on related information regarding data included in the transaction data, receives the type of consensus algorithm determined by the program from the information terminal, and executes a consensus algorithm according to the type of consensus algorithm to generate a block to be stored in the blockchain, the block including the transaction data.

[0007] These comprehensive or specific aspects may be realized as a system, a device, an integrated circuit, a computer program, or a computer-readable recording medium such as a CD-ROM, or may be realized as any combination of a system, a device, an integrated circuit, a computer program, and a recording medium.

[0008] According to the control method and the like disclosed herein, multiple types of consensus algorithms can be used in combination as the consensus algorithm used in blockchain technology.

[0009] FIG. 1 is a block diagram showing the configuration of a system according to the first embodiment. FIG. 2 is a diagram showing an example of the configuration of an information terminal 100 according to the first embodiment. FIG. 3 is a diagram showing an example of the configuration of a node according to the first embodiment. FIG. 4 is a diagram showing an example of the configuration of an information terminal 300 according to the first embodiment. FIG. 5 is a sequence diagram showing an example of the operation of the system according to the first embodiment. FIG. 6 is a flowchart showing an example of a consensus algorithm determination process performed by the information terminal 300 according to the first embodiment. FIG. 7 is a block diagram showing the configuration of a system according to the second embodiment. FIG. 8 is a diagram showing an example of the configuration of a node according to the second embodiment. FIG. 9 is a sequence diagram showing an example of the operation of the system according to the second embodiment. FIG. 10 is an explanatory diagram showing the data structure of a blockchain. FIG. 11 is an explanatory diagram showing the data structure of transaction data. FIG. 12 is an explanatory diagram showing transaction data related to the execution of a smart contract. FIG. 13 is an explanatory diagram showing processing related to the execution of a smart contract. FIG. 14 is an explanatory diagram showing the structures of NFTs and metadata.

[0010] (Findings underlying the present disclosure) In a blockchain, a consensus algorithm is used to reach an agreement among multiple nodes participating in the blockchain on the validity of transaction data. Achieving consensus requires a certain cost (e.g., the power and time required for a certain calculation), and if this cost is high, it limits the throughput of the blockchain system. For example, in Bitcoin, it takes about 10 minutes to generate a block.

[0011] In response to this, it is possible to consider transitioning to a new consensus algorithm with weaker consensus conditions for all transaction data, but the following issues are anticipated:

[0012] (1) In a blockchain system, nodes that cannot adapt to the new consensus algorithm will no longer be able to participate in the blockchain.

[0013] (2) The new consensus algorithm is less secure than the conventional consensus algorithm, so when the new consensus algorithm is used, the cost for an attacker to complete a fraudulent transaction decreases, thus reducing the security of the blockchain.

[0014] (3) If a vulnerability is discovered after switching to a new consensus algorithm, the cost of reverting to the previous consensus algorithm is high.

[0015] In order to solve the above problems, the present inventors have discovered a control method that allows multiple types of consensus algorithms to be used in combination as consensus algorithms for blockchain technology.

[0016] A control method according to a first aspect of the present disclosure is a control method executed by an apparatus, which acquires transaction data to be stored in a blockchain, transmits the related information to an information terminal storing a program that determines the type of consensus algorithm to use for the transaction data based on related information regarding data included in the transaction data, receives the type of consensus algorithm determined by the program from the information terminal, and executes a consensus algorithm according to the type of consensus algorithm to generate a block to be stored in the blockchain, the block including the transaction data.

[0017] This allows related information to be sent to the information terminal, and a consensus algorithm corresponding to the type of consensus algorithm determined based on the related information is executed, thereby enabling a block containing the transaction data to be generated using an appropriate consensus algorithm corresponding to the transaction data.

[0018] For example, if multiple types of consensus algorithms are available, including a conventional consensus algorithm and a next-generation consensus algorithm, a device that does not support the next-generation consensus algorithm can use the conventional consensus algorithm. Furthermore, devices that support the next-generation consensus algorithm use a consensus algorithm of a type appropriate to the transaction data, and therefore use the next-generation consensus algorithm as needed, potentially reducing the use of the conventional consensus algorithm. For example, by using the next-generation consensus algorithm for data that does not require security, the use of the conventional consensus algorithm can be reduced, thereby reducing the cost required to reach consensus (e.g., the power and time required for calculations). Furthermore, because the conventional consensus algorithm remains available, if the next-generation consensus algorithm is compromised, it can be reverted to the conventional consensus algorithm at low cost.

[0019] A control method according to a second aspect of the present disclosure is a control method according to the first aspect, wherein the program is a contract code constituting a smart contract, the smart contract is stored in the blockchain, and the information terminal is one of a plurality of information terminals constituting a blockchain system that manages the blockchain.

[0020] Therefore, by transmitting relevant information to the blockchain system, the device can receive the type of consensus algorithm determined by the smart contract of the blockchain system based on the relevant information. Because the smart contract is stored in the blockchain system, tampering with the smart contract can be prevented. In other words, the device can receive the type of consensus algorithm as a highly reliable decision result from the blockchain system.

[0021] A control method according to a third aspect of the present disclosure is the control method according to the first or second aspect, further comprising: the information terminal determining whether the related information is information indicating an FT (Fungible Token) or information indicating an NFT (Non-Fungible Token); if the related information is information indicating the FT, determining the type of consensus algorithm to be a first consensus algorithm; if the related information is information indicating the NFT, determining the type of consensus algorithm to be a second consensus algorithm that has a higher cost for reaching consensus than the first consensus algorithm; and transmitting the type of consensus algorithm determined by the determination to the device.

[0022] According to this, the first consensus algorithm is used for transaction data including FT, which does not require much security, so the use of the second consensus algorithm, which has a high cost for reaching consensus, can be reduced, thereby reducing the cost.

[0023] A control method according to a fourth aspect of the present disclosure is a control method according to the first or second aspect, wherein the related information is information indicating a token, and the information terminal further determines whether the tone amount of the token is less than a predetermined token amount, and if the token amount is less than the predetermined token amount, determines the type of consensus algorithm to be a first consensus algorithm, and if the token amount is equal to or greater than the predetermined token amount, determines the type of consensus algorithm to be a second consensus algorithm that has a higher cost for reaching consensus than the first consensus algorithm, and transmits the type of consensus algorithm determined by the determination to the device.

[0024] According to this, the first consensus algorithm is used for transaction data that includes tokens less than a predetermined amount, which means that there is little need to ensure security, so the use of the second consensus algorithm, which has a high cost for reaching consensus, can be reduced, thereby reducing the cost.

[0025] A control method according to a fifth aspect of the present disclosure is the control method according to the first or second aspect, wherein the related information is information indicating a token, and the information terminal further determines whether the period until the expiration date of the token is less than a predetermined period, and if the period is less than the predetermined period, determines the type of consensus algorithm to be a first consensus algorithm, and if the period is equal to or greater than the predetermined period, determines the type of consensus algorithm to be a second consensus algorithm that has a higher cost for reaching consensus than the first consensus algorithm, and transmits the type of consensus algorithm determined by the determination to the device.

[0026] According to this, the first consensus algorithm is used for transaction data including tokens whose expiration date is less than a predetermined period and for which there is little need to ensure security, so the use of the second consensus algorithm, which has a high cost for reaching consensus, can be reduced, thereby reducing the cost.

[0027] A control method according to a sixth aspect of the present disclosure is the control method according to the first or second aspect, further comprising: the information terminal determines whether the related information includes privacy information; if the related information does not include privacy information, determines the type of consensus algorithm to be a first consensus algorithm; if the transaction data includes privacy information, determines the type of consensus algorithm to be a second consensus algorithm that has a higher cost for reaching consensus than the first consensus algorithm; and transmits the type of consensus algorithm determined by the determination to the device.

[0028] According to this, the first consensus algorithm is used for transaction data that does not contain privacy information for which there is little need to ensure security, thereby reducing the use of the second consensus algorithm, which has a high cost for reaching consensus, and thereby reducing the cost.

[0029] A control method according to a seventh aspect of the present disclosure is a control method according to the third or fifth aspect, further comprising: the information terminal determines whether the related information includes privacy information; if the related information does not include privacy information, determines the type of consensus algorithm to be the second consensus algorithm; if the transaction data includes privacy information, determines the type of consensus algorithm to be the third consensus algorithm, which has a higher cost for reaching consensus than the second consensus algorithm; and transmits the type of consensus algorithm determined by the determination to the device.

[0030] According to this, the second consensus algorithm is used for transaction data that does not contain privacy information for which there is little need to ensure security, thereby reducing the use of the third consensus algorithm, which has a high cost for reaching consensus, and thereby reducing the cost.

[0031] A control method according to an eighth aspect of the present disclosure is a control method according to any one of the third to sixth aspects, wherein the second consensus algorithm is more difficult to mine than the first consensus algorithm.

[0032] An apparatus according to a ninth aspect of the present disclosure includes a processor and a memory, wherein the processor uses the memory to acquire transaction data to be stored in a blockchain, transmits the related information regarding data included in the transaction data to an information terminal storing a program that determines the type of consensus algorithm to use for the transaction data based on the related information, receives the type of consensus algorithm determined by the program from the information terminal, and executes a consensus algorithm according to the type of consensus algorithm to generate a block to be stored in the blockchain, the block including the transaction data.

[0033] This allows related information to be sent to the information terminal, and a consensus algorithm corresponding to the type of consensus algorithm determined based on the related information is executed, thereby enabling a block containing the transaction data to be generated using an appropriate consensus algorithm corresponding to the transaction data.

[0034] A program according to a tenth aspect of the present disclosure is a program for causing a computer to execute a control method executed by an apparatus, the program acquiring transaction data to be stored in a blockchain, transmitting related information regarding data included in the transaction data to an information terminal storing a program that determines the type of consensus algorithm to use for the transaction data based on the related information, receiving the type of consensus algorithm determined by the program from the information terminal, and executing a consensus algorithm according to the type of consensus algorithm, thereby generating a block to be stored in the blockchain, the block including the transaction data.

[0035] These comprehensive or specific aspects may be realized as a system, a device, an integrated circuit, a computer program, or a computer-readable recording medium such as a CD-ROM, or may be realized as any combination of a system, a device, an integrated circuit, a computer program, and a recording medium.

[0036] Hereinafter, embodiments will be described with reference to the drawings. Note that each of the embodiments described below represents a specific example of the present disclosure. In other words, the numerical values, shapes, materials, components, component arrangements and connection forms, steps, and step orders shown in the following embodiments are merely examples and are not intended to limit the present disclosure. Furthermore, among the components according to the following embodiments, components not recited in the independent claims representing the highest concepts are not necessarily required to achieve the objectives of the present disclosure, but are described as components constituting a more preferred embodiment.

[0037] (First Embodiment) In this embodiment, a control method that allows multiple types of consensus algorithms to be used in combination as consensus algorithms used in blockchain technology will be described.

[0038] [System Configuration] FIG. 1 is a block diagram showing the configuration of a system according to the first embodiment.

[0039] As shown in FIG. 1 , the system 1 includes an information terminal 100 , a blockchain system 200 , and an information terminal 300 .

[0040] The information terminal 100 is a terminal (computer) owned by an issuer that issues transaction data. The information terminal 100 is an example of a device.

[0041] The blockchain system 200 includes nodes 200a to 200c that are communicatively connected to each other. The blockchain system 200 manages a blockchain that is composed of blocks containing arbitrary data. The arbitrary data may be, for example, data containing a Fungible Token (FT), data containing a Non-Fungible Token (NFT), or other data. The arbitrary data may include privacy information related to a user (e.g., personal information of the user). The FT is, for example, a virtual currency such as Bitcoin. The NFT can prove, for example, the uniqueness of digital content or the ownership of digital content.

[0042] The information terminal 300 is a computer having a program based on an algorithm that determines the type of consensus algorithm to be used for transaction data based on related information about data included in the transaction data to be stored in the blockchain system 200. That is, the information terminal 300 determines the type of consensus algorithm to be used for storing a block including the transaction data to be stored in the blockchain system 200 in the blockchain based on the related information. Here, the transaction data may be, for example, data for transferring a token from a first account to a second account different from the first account. Transferring from the first account to the second account may indicate changing the owner of the token from a first user to a second user. When the information terminal 300 receives transaction data or related information about the data included in the transaction data, it executes the algorithm defined in the program based on the related information obtained from the received transaction data or the received related information.

[0043] The information terminal 100, the blockchain system 200, and the information terminal 300 may all be connected to each other via a network 500, or all may be directly connected to be able to communicate, or some may be connected via the network 500 and other parts may be directly connected to be able to communicate. The network 500 may be, for example, the Internet or a mobile phone carrier network, but may be composed of any communication line or network.

[0044] FIG. 2 is a diagram showing an example of the configuration of the information terminal 100 according to the first embodiment.

[0045] The information terminal 100 includes a communication unit 101 , an input receiving unit 102 , a display unit 103 , a control unit 104 , and a storage unit 105 .

[0046] The communication unit 101 may transmit information to the blockchain system 200 or the information terminal 300 via the network 500, or may receive information from the blockchain system 200 or the information terminal 300. Specifically, the communication unit 101 may transmit transaction data to the blockchain system 200. The communication unit 101 may receive information different from the above-mentioned information from another information terminal communicatively connected thereto, or may transmit the information to the other terminal.

[0047] In this way, the communication unit 101 communicates with the blockchain system 200 and the information terminal 300 via the network 500. This communication may be performed using TLS (Transport Layer Security), and an encryption key for TLS communication may be held in the communication unit 101. The communication unit 101 is realized by a communication IF (Interface).

[0048] The input receiving unit 102 receives inputs from an issuer. The input receiving unit 102 displays the received inputs on the display unit 103, transmits them to the control unit 104, or transmits them to the communication unit 101. The input receiving unit 102 is realized by an input IF (Interface).

[0049] The display unit 103 displays a UI (User Interface) for receiving input by the input receiving unit 102. The display unit 103 also displays the input received by the input receiving unit 102 on the UI. The display unit 103 may display information received from the blockchain system 200 or the information terminal 300. The display unit 103 is realized by a display.

[0050] The control unit 104 may generate transaction data based on the information input accepted by the input accepting unit 102, and transmit the generated transaction data to the blockchain system 200 via the communication unit 101. The control unit 104 is realized by a processor.

[0051] The memory unit 105 stores information received by the communication unit 101, input accepted by the input accepting unit 102, transaction data generated by the control unit 104, etc. The memory unit 105 may also store data other than the above-mentioned information. The memory unit 105 is realized by a storage.

[0052] The information terminal 100 is realized by the processor executing a predetermined program using the memory.

[0053] FIG. 3 is a diagram illustrating an example of a configuration of a node according to the first embodiment.

[0054] 3, each of the nodes 200a to 200c includes a communication unit 201, a control unit 202, a recording unit 203, a transaction data verification unit 204, and a distributed ledger 205. The nodes 200a to 200c manage the blockchain.

[0055] The communication unit 201 transmits information to the information terminals 100, 300 or other nodes among the nodes 200a to 200c, and receives information from the information terminals 100, 300 or other nodes via the network 500. Specifically, the communication unit 201 may transmit related information about data included in transaction data to the information terminal 300. The communication unit 201 may receive type information from the information terminal 300. Note that the other nodes are nodes among the nodes 200a to 200c that are different from the node that includes the communication unit 201. The communication unit 201 also transmits and receives transaction data to and from the other nodes 200a to 200c.

[0056] In this way, the communication unit 201 communicates with the information terminals 100 and 300 or other nodes via the network 500. This communication may be performed using TLS (Transport Layer Security), and the encryption key for TLS communication may be held by the communication unit 201.

[0057] The control unit 202 executes a consensus algorithm of the type indicated by the type information on the transaction data received by the communication unit 201. As a result, the control unit 202 stores the transaction data in the distributed ledger 205. The control unit 202 stores information included in the transaction data in the blockchain, for example, by linking a block including the transaction data to the blockchain of the distributed ledger 205.

[0058] Furthermore, if the information received by the communication unit 201 is a request to issue an NFT, the control unit 202 may issue an NFT and record the issued NFT in the distributed ledger 205. This may result in a block containing the NFT being added to the blockchain. In the case of an NFT corresponding to content, upon receiving a request to issue an NFT, the communication unit 201 generates an NFT corresponding to the content based on the address (URL1) included in the issuance request and stores the NFT in the blockchain. The NFT is recorded in the blockchain ledger by a smart contract as a set of data linking the address included in the issuance request, the NFT ID generated by the smart contract, and the initially set owner. The data recorded in the NFT may include other information. For example, the data may include the date and time the content was created, or information about other content that was used as material to create the content.

[0059] When the communication unit 201 receives transaction data, the transaction data verification unit 204 verifies the validity of the transaction data. For example, the transaction data verification unit 204 verifies whether the transaction data received by the communication unit 201 is accompanied by a digital signature generated using a correct method. If the validity is verified, the communication unit 201 transmits a copy of the transaction data to multiple other nodes 200a-200c, thereby causing the verified authenticated transaction data to be recorded in the recording units 203 of the other nodes 200a-200c. This allows only transaction data whose validity has been verified to be transmitted to other servers, thereby suppressing increases in computer power consumption. Note that this verification may be skipped.

[0060] The transaction data verifier 204 also executes a consensus algorithm together with the other nodes 200a to 200c to agree on the validity of the transaction data. The consensus algorithm executed at this time is the consensus algorithm of the type indicated by the type information. For example, if the type information indicates the first consensus algorithm, the first consensus algorithm is executed; if the type information indicates the second consensus algorithm, the second consensus algorithm is executed; and if the type information indicates the third consensus algorithm, the third consensus algorithm is executed.

[0061] The consensus algorithm used here may be Practical Byzantine Fault Tolerance (PBFT), or another known consensus algorithm. Examples of known consensus algorithms include Proof of Work (PoW) and Proof of Stake (PoS). When PBFT is used as the consensus algorithm, the transaction data verifier 204 receives reports from each of the multiple nodes 200a to 200c indicating whether the transaction data verification was successful or not, and determines whether the number of reports exceeds a predetermined number (a threshold for the number of reports). When the number of reports exceeds the predetermined number, the transaction data verifier 204 determines that the validity of the transaction data has been verified by the consensus algorithm.

[0062] If the transaction data verification unit 204 confirms the legitimacy of the transaction data, it records the transaction data in the recording unit 203. If the legitimacy of the transaction data cannot be verified, the transaction data verification unit 204 discards the transaction data. This prevents transaction data whose legitimacy cannot be verified from being recorded in the recording unit 203, thereby reducing the required amount of computer resources. The transaction data verification unit 204 may generate a block including transaction data whose legitimacy has been confirmed, and store the generated block in the distributed ledger 205.

[0063] In this embodiment, the transaction data verification unit 204 verifies the validity of the transaction data received by the communication unit 201 .

[0064] The recording unit 203 records the transaction data by storing the transaction data whose validity has been verified by the transaction data verification unit 204 in the distributed ledger 205. This makes it possible to prevent tampering with the transaction data.

[0065] The recording unit 203 may be configured inside the distributed ledger 205.

[0066] The distributed ledger 205 stores transaction data. The distributed ledger 205 sequentially acquires and stores transaction data, and therefore stores one or more pieces of transaction data. The distributed ledger 205 is realized by a storage.

[0067] Note that, when the information received by the communication unit 201 is a request to issue an NFT, the control unit 202 may issue the NFT and record the issued NFT in the distributed ledger 205. As a result, a block including the NFT may be added to the blockchain.

[0068] FIG. 4 is a diagram showing an example of the configuration of the information terminal 300 according to the first embodiment.

[0069] The information terminal 300 includes a communication unit 301 , an input receiving unit 302 , a display unit 303 , a control unit 304 , and a storage unit 305 .

[0070] The communication unit 301 may transmit information to the information terminal 100 or the blockchain system 200 via the network 500, or may receive information from the information terminal 100 or the blockchain system 200. Specifically, the communication unit 301 may receive related information about data included in the transaction data from the blockchain system 200. The communication unit 301 may transmit type information indicating the type of consensus algorithm to the blockchain system 200. The communication unit 301 may receive information different from the above-mentioned information from another information terminal communicatively connected, or may transmit information to the other terminal.

[0071] In this way, the communication unit 301 communicates with the information terminal 100 and the blockchain system 200 via the network 500. This communication may be performed using TLS (Transport Layer Security), and an encryption key for TLS communication may be held in the communication unit 301. The communication unit 301 is realized by a communication IF (Interface).

[0072] The input reception unit 302 receives inputs from the administrator. The input reception unit 302 displays the received inputs on the display unit 303, transmits them to the control unit 304, or transmits them to the communication unit 301. The input reception unit 302 is realized by an input IF (Interface).

[0073] The display unit 303 displays a UI (User Interface) for receiving input by the input receiving unit 302. The display unit 303 also displays the input received by the input receiving unit 302 on the UI. The display unit 303 may display information received from the information terminal 100 or the blockchain system 200. The display unit 303 is realized by a display.

[0074] The control unit 304 determines the type of consensus algorithm to be used for the transaction data based on the received related information. The control unit 304 may transmit type information indicating the type of consensus algorithm to the information terminal 100 or the blockchain system 200 via the communication unit 301. The control unit 304 is realized by a processor. Here, the "consensus algorithm to be used for the transaction data" means an algorithm by which each of the nodes 200a to 200c analyzes the contents of the transaction data to be stored in the blockchain and determines whether or not to store it in the distributed ledger, and then forms a consensus to generate a decision for the nodes as a whole from the results of each determination.

[0075] The memory unit 305 stores information received by the communication unit 301, input accepted by the input accepting unit 302, type information indicating the type of consensus algorithm generated by the control unit 304, etc. The memory unit 305 may also store data other than the above-mentioned information. The memory unit 305 is realized by a storage.

[0076] The information terminal 300 is realized by a processor executing a predetermined program using a memory.

[0077] [System Operation] Next, the operation of the system 1 configured as above will be described.

[0078] 5 is a sequence diagram showing an example of the operation of the system according to embodiment 1. In the diagram, transaction data may be expressed as Tx data.

[0079] The information terminal 100 generates transaction data including data to be stored in a blockchain in response to, for example, an input from an issuer (S101). The data to be stored is, for example, data for transferring tokens from a first account to a second account different from the first account.

[0080] The information terminal 100 transmits the generated transaction data to the blockchain system 200 that manages the blockchain in order to store the data in the blockchain (S102). As a result, the blockchain system 200 receives (acquires) the transaction data from the information terminal 100.

[0081] When the blockchain system 200 receives the transaction data, it stores the received transaction data in a transaction pool (S103).

[0082] The blockchain system 200 obtains one or more transaction data for block generation from the transaction pool (S104).

[0083] The blockchain system 200 transmits related information regarding data included in one or more pieces of transaction data acquired from the transaction pool to the information terminal 300 (S105). As a result, the information terminal 300 receives (acquires) related information regarding data included in one or more pieces of transaction data from the blockchain system 200. The related information may be, for example, information indicating whether the token to be transferred is a Fungible Token (FT) or a Non-Fungible Token (NFT), the token quantity of the token, the token expiration date (or expiration date), or privacy information of the issuer. The related information may include all or only some (including one) of the multiple pieces of information exemplified above.

[0084] When the information terminal 300 receives the related information, it executes a program based on the related information and determines the type of consensus algorithm to be used for the transaction data including the data to which the related information relates (S106). Note that the specific processing of step S106 will be described later.

[0085] The information terminal 300 transmits type information indicating the type of the determined consensus algorithm to the blockchain system 200 (S107). As a result, the blockchain system 200 receives the type information from the information terminal 300.

[0086] When the blockchain system 200 receives the type information, it executes a consensus algorithm according to the type of consensus algorithm indicated by the type information to generate a block to be stored in the blockchain, the block including the transaction data (S108).

[0087] The blockchain system 200 stores the generated block in the blockchain by linking it to the blockchain (S109).

[0088] 6 is a flowchart showing an example of a consensus algorithm determination process performed by the information terminal 300 according to embodiment 1. This determination process is a specific example of step S106.

[0089] When the information terminal 300 receives the related information or transaction data, it executes a program based on the received related information or related information based on the received transaction data, thereby executing steps S121 to S131.

[0090] The information terminal 300 determines whether the token is FT or NFT based on the related information (S121). If the token is FT (FT in S121), the information terminal 300 proceeds to step S127, and if the token is NFT (NFT in S121), the information terminal 300 proceeds to step S122.

[0091] The information terminal 300 determines whether the time remaining until the token expires is equal to or greater than a predetermined time based on the related information (S122). The predetermined time may be, for example, 10 years, 5 years, a period between 5 and 10 years, or some other time period. If the time remaining until the token expires is equal to or greater than the predetermined time (Yes in S122), the information terminal 300 proceeds to step S123. If the time remaining until the token expires is less than the predetermined time (No in S122), the information terminal 300 proceeds to step S126.

[0092] The information terminal 300 determines whether or not the transaction data includes privacy information based on the related information (S123). If the transaction data includes privacy information (Yes in S123), the information terminal 300 proceeds to step S124, and if the transaction data does not include privacy information (No in S123), the information terminal 300 proceeds to step S125.

[0093] The information terminal 300 determines the type of consensus algorithm to be the third consensus algorithm (S124). The third consensus algorithm is a type of consensus algorithm that includes the first consensus algorithm of the next-generation type and the second consensus algorithm of the conventional type. The third consensus algorithm is an algorithm that determines consensus when consensus is achieved using both the first consensus algorithm and the second consensus algorithm. In other words, the third consensus algorithm is a consensus algorithm that requires a higher cost to reach consensus than the first consensus algorithm and the second consensus algorithm. Note that the second consensus algorithm is a consensus algorithm that requires a higher cost to reach consensus than the first consensus algorithm.

[0094] For example, the second consensus algorithm may be more difficult to mine than the first consensus algorithm, and therefore may require a higher cost to reach consensus than the first consensus algorithm. Furthermore, the second consensus algorithm may be an algorithm in which a predetermined number, which is a threshold for the number of reports during verification of transaction data, is set higher than the first consensus algorithm. The second consensus algorithm may be more expensive to reach consensus than the first consensus algorithm, and therefore may require a higher cost to reach consensus than the first consensus algorithm.

[0095] The information terminal 300 determines the type of consensus algorithm to be the second consensus algorithm (S125).

[0096] The information terminal 300 determines the type of consensus algorithm to be the second consensus algorithm (S126).

[0097] The information terminal 300 determines whether the token amount of the tokens is equal to or greater than a predetermined token amount based on the related information (S127). The predetermined token amount may be, for example, 1 BTC or another token amount. The predetermined token amount may be set to any value greater than 0 and less than infinity. If the token amount of the tokens is equal to or greater than the predetermined token amount (Yes in S127), the information terminal 300 proceeds to step S128, and if the token amount of the tokens is less than the predetermined token amount (No in S127), the information terminal 300 proceeds to step S129.

[0098] The information terminal 300 determines the type of consensus algorithm to be the second consensus algorithm (S128).

[0099] The information terminal 300 determines the type of digital signature to be the first consensus algorithm (S129).

[0100] 6, the type of consensus algorithm is determined based on the results of the four determinations in steps S121 to S123 and step S127, but this is not limitative. The type of consensus algorithm may be determined using at least one of these four determinations.

[0101] For example, in the determination of step S121, if the token is FT, the information terminal 300 may determine the type of consensus algorithm to be the first consensus algorithm, and if the token is NFT, the information terminal 300 may determine the type of consensus algorithm to be the second consensus algorithm, which requires a higher cost to reach consensus than the first consensus algorithm.

[0102] Also, for example, in the determination of step S122, if the period until the token's expiration date is less than a predetermined period, the information terminal 300 may determine the type of consensus algorithm to be the first consensus algorithm, and if the period until the execution deadline is greater than or equal to the predetermined period, the information terminal 300 may determine the type of consensus algorithm to be the second consensus algorithm, which requires a higher cost to reach consensus than the first consensus algorithm.

[0103] Also, for example, in the determination of step S123, if the transaction data does not contain privacy information, the information terminal 300 may determine the type of consensus algorithm to be the first consensus algorithm, and if the transaction data contains privacy information, the information terminal 300 may determine the type of consensus algorithm to be the second consensus algorithm, which requires a higher cost to reach consensus than the first consensus algorithm.

[0104] Also, for example, in the determination of step S127, if the amount of tokens is less than a predetermined amount of tokens, the information terminal 300 may determine the type of consensus algorithm to be the first consensus algorithm, and if the amount of tokens is equal to or greater than the predetermined amount of tokens, the information terminal 300 may determine the type of consensus algorithm to be the second consensus algorithm, which requires a higher cost to reach consensus than the first consensus algorithm.

[0105] [Effects, etc.] In the system 1 according to this embodiment, each of the nodes 200a to 200c acquires transaction data to be stored in the blockchain (S104). Each of the nodes 200a to 200c transmits related information to an information terminal 300 that stores a program for determining the type of consensus algorithm to be used for the transaction data, based on related information about the data included in the transaction data (S105). Each of the nodes 200a to 200c receives the type of consensus algorithm determined by the program from the information terminal 300 (S107). Each of the nodes 200a to 200c executes a consensus algorithm according to the type of consensus algorithm, thereby generating a block containing the transaction data, which is to be stored in the blockchain (S108).

[0106] According to this, related information is sent to the information terminal 300, and a consensus algorithm is executed according to the type of consensus algorithm determined based on the related information, so that a block containing the transaction data can be generated using an appropriate consensus algorithm according to the transaction data.

[0107] For example, if there are multiple types of consensus algorithms, including a conventional consensus algorithm and a next-generation consensus algorithm, and a node does not support the next-generation consensus algorithm, it can use the conventional consensus algorithm. Furthermore, nodes that support the next-generation consensus algorithm use a consensus algorithm of a type appropriate to the transaction data, and therefore use the next-generation consensus algorithm as needed, potentially reducing the use of the conventional consensus algorithm. For example, by using the next-generation consensus algorithm for data that does not require security, it is possible to reduce the use of the conventional consensus algorithm and reduce the cost required to reach consensus (e.g., power and time required for calculation). Furthermore, because the conventional consensus algorithm remains available, if the next-generation consensus algorithm is compromised, it is possible to revert to the conventional consensus algorithm at low cost.

[0108] In the system 1 according to the present embodiment, the information terminal 300 further determines whether the related information is information indicating a Fungible Token (FT) or information indicating a Non-Fungible Token (NFT). If the related information is information indicating an FT, the information terminal 300 may determine the type of consensus algorithm to be the first consensus algorithm, and if the related information is information indicating an NFT, the information terminal 300 may determine the type of consensus algorithm to be the second consensus algorithm, which has a higher cost for achieving consensus than the first consensus algorithm. The information terminal 300 transmits the type of consensus algorithm determined by the above determination to each of the nodes 200a to 200c.

[0109] According to this, the first consensus algorithm is used for transaction data including FT, which does not require much security, so the use of the second consensus algorithm, which has a high cost for reaching consensus, can be reduced, thereby reducing the cost.

[0110] In the system 1 according to the present embodiment, the related information is information indicating a token. The information terminal 300 further determines whether the token tone amount is less than a predetermined token amount. If the token amount is less than the predetermined token amount, the information terminal 300 may determine the type of consensus algorithm to be the first consensus algorithm, and if the token amount is equal to or greater than the predetermined token amount, the information terminal 300 may determine the type of consensus algorithm to be the second consensus algorithm, which has a higher cost for achieving consensus than the first consensus algorithm. The information terminal 300 transmits the type of consensus algorithm determined by the above determination to each of the nodes 200a to 200c.

[0111] According to this, the first consensus algorithm is used for transaction data that includes tokens less than a predetermined amount, which means that there is little need to ensure security, so the use of the second consensus algorithm, which has a high cost for reaching consensus, can be reduced, thereby reducing the cost.

[0112] In the system 1 according to the present embodiment, the related information is information indicating a token. The information terminal 300 further determines whether the time remaining until the token expires is less than a predetermined time. If the time remaining until the token expires is less than the predetermined time, the information terminal 300 may determine the type of consensus algorithm to be the first consensus algorithm, and if the time remaining until the token expires is equal to or greater than the predetermined time, the information terminal 300 may determine the type of consensus algorithm to be the second consensus algorithm, which requires a higher cost for reaching consensus than the first consensus algorithm. The information terminal 300 transmits the type of consensus algorithm determined by the above determination to each of the nodes 200a to 200c.

[0113] According to this, the first consensus algorithm is used for transaction data including tokens whose expiration date is less than a predetermined period and for which there is little need to ensure security, so the use of the second consensus algorithm, which has a high cost for reaching consensus, can be reduced, thereby reducing the cost.

[0114] In the system 1 according to the present embodiment, the information terminal 300 further determines whether the related information includes privacy information. If the related information does not include privacy information, the information terminal 300 may determine the type of consensus algorithm to be the first consensus algorithm, and if the transaction data includes privacy information, the information terminal 300 may determine the type of consensus algorithm to be the second consensus algorithm, which has a higher cost for achieving consensus than the first consensus algorithm. The information terminal 300 transmits the type of consensus algorithm determined by the above determination to each of the nodes 200a to 200c.

[0115] According to this, the first consensus algorithm is used for transaction data that does not contain privacy information for which there is little need to ensure security, thereby reducing the use of the second consensus algorithm, which has a high cost for reaching consensus, and thereby reducing the cost.

[0116] In the system 1 according to the present embodiment, the information terminal 300 further determines whether the related information includes privacy information. If the related information does not include privacy information, the information terminal 300 may determine the type of consensus algorithm to be the second consensus algorithm, and if the transaction data includes privacy information, the information terminal 300 may determine the type of consensus algorithm to be the third consensus algorithm, which requires a higher cost for reaching consensus than the second consensus algorithm. The information terminal 300 transmits the type of consensus algorithm determined by the above determination to each of the nodes 200a to 200c.

[0117] According to this, the second consensus algorithm is used for transaction data that does not contain privacy information for which there is little need to ensure security, thereby reducing the use of the third consensus algorithm, which has a high cost for reaching consensus, and thereby reducing the cost.

[0118] Second Embodiment [System Configuration] FIG. 7 is a block diagram showing the configuration of a system according to a second embodiment.

[0119] 7, the system 1A includes an information terminal 100 and a blockchain system 200A. The system 1A according to the second embodiment differs from the system 1 according to the first embodiment in that the information terminal 300 is incorporated into the blockchain system 200A. Therefore, the differences from the system 1 according to the first embodiment will be described.

[0120] FIG. 8 is a diagram illustrating an example of a configuration of a node according to the second embodiment.

[0121] The nodes 200Aa to 200Ac differ from the nodes 200a to 200c of the first embodiment in that they further include a smart contract execution unit 206.

[0122] The smart contract execution unit 206 operates the smart contract by executing the contract code and the like included in the transaction data stored in the blockchain of the distributed ledger 205. The smart contract includes the contract code for executing the algorithm that determines the type of consensus algorithm to be used for the transaction data, which was stored in the information terminal 300 in the first embodiment. In other words, the smart contract execution unit 206 realizes the function of determining the type of consensus algorithm of the information terminal 300 in the first embodiment.

[0123] In this way, the smart contract execution unit 206 can manage various processes using the distributed ledger 205 by running smart contracts. Note that smart contracts are generated by applications on the nodes 200a to 200c or the information terminals 100 and 300 based on user operations, for example, and blocks containing these smart contracts are stored in the blockchain in advance. In other words, the blockchain stores the contract code of the smart contract.

[0124] The contract code of the smart contract may be separated and stored separately in the blockchain, or may be stored as a single integrated contract code in the blockchain.

[0125] [System Operation] Next, the operation of the system 1A configured as above will be described.

[0126] 9 is a sequence diagram showing an example of the operation of the system according to embodiment 2. In the diagram, transaction data may be expressed as Tx data.

[0127] The information terminal 100 executes steps S101 and S102 of the first embodiment.

[0128] The blockchain system 200A executes steps S103 and S104 of the first embodiment.

[0129] The blockchain system 200A generates related transaction data including related information based on one or more transaction data acquired from the transaction pool and stores the generated related transaction data in the blockchain, thereby executing a smart contract based on the related information and determining the type of consensus algorithm to be used for the transaction data including data related to the related information (S106a). Note that the specific processing of step S106a is the same as step S106 in the first embodiment.

[0130] The blockchain system 200A executes step S108 of embodiment 1 using the determined type of consensus algorithm, and further executes step S109 of embodiment 1.

[0131] [Effects, etc.] In the system 1A according to this embodiment, the program is a contract code that constitutes a smart contract. The smart contract is stored in a blockchain. Each of the multiple nodes 200Aa to 200Ac that constitute the blockchain system 200A has the same functions as the information terminal 300 according to the first embodiment.

[0132] Therefore, by transmitting related information to the blockchain system 200A, the information terminal 100 can receive the type of consensus algorithm determined by the smart contract of the blockchain system 200A based on the related information. Because the smart contract is stored in the blockchain system 200A, tampering with the smart contract can be prevented. In other words, the information terminal 100 can receive the type of consensus algorithm as a highly reliable determination result from the blockchain system 200A.

[0133] (Supplementary Note) The following provides a supplementary explanation of the distributed ledger in the above embodiment or modification. Here, a blockchain will be described as an example of a distributed ledger, but the same applies to other distributed ledgers.

[0134] FIG. 10 is an explanatory diagram showing the data structure of a blockchain.

[0135] A blockchain is a chain of blocks, which are the units of record. Each block contains multiple transaction data and the hash value of the immediately preceding block. Specifically, block B2 contains the hash value of the previous block B1. A hash value calculated from the multiple transaction data contained in block B2 and the hash value of block B1 is then included in block B3 as the hash value of block B2. In this way, by connecting blocks in a chain while including the contents of the previous block as a hash value, tampering with the recorded transaction data is effectively prevented.

[0136] If past transaction data were to be changed, the hash value of the block would be different from before the change, and in order to make the altered block appear correct, all subsequent blocks would have to be recreated, which is extremely difficult in reality. This property is used to ensure that blockchains are tamper-resistant.

[0137] FIG. 11 is an explanatory diagram showing the data structure of transaction data.

[0138] The transaction data shown in Figure 11 includes a transaction body P1 and a digital signature P2. The transaction body P1 is the data body included in the transaction data. The digital signature P2 is a digital signature generated for the hash value of the transaction body P1 using the signature key of the creator of the transaction data. More specifically, it is generated by encrypting the hash value with the private key of the creator of the transaction data. Examples of digital signature methods include ECDSA (Elliptic Curve Digital Signature Algorithm), CRYSTALS-Dilithium, Falcon, and SPHINCS+.

[0139] The transaction data has digital signature P2, making it virtually impossible to tamper with. If the transaction data were to be tampered with, verification using digital signature P2 would fail, revealing that the transaction data had been tampered with. This prevents tampering with the transaction body P1.

[0140] 12 and 13 are explanatory diagrams showing transaction data related to the execution of a smart contract, and processing related to the execution of a smart contract, respectively.

[0141] A series of processes related to the execution of a smart contract using a distributed ledger will be described with reference to Figures 12 and 13.

[0142] In step SB1, the node stores transaction data B11, including contract code B12 that describes the processing of the smart contract, in the distributed ledger B10. For example, the node acquires transaction data B11 by receiving the transaction data B11 from an information processing device via communication or by the node itself generating the transaction data B11, and stores the acquired transaction data B11 in the distributed ledger B10. Step SB1 is performed before executing the smart contract.

[0143] In step SB2, the node stores transaction data B15, including instructions B16 for executing the smart contract, in the distributed ledger B10. For example, the node receives transaction data B15 from an information processing device via communication and stores the received transaction data B15 in the distributed ledger B10.

[0144] In step SB3, in response to the transaction data B15 including the instruction B16 being stored in the distributed ledger B10 in step SB2, the node reads the contract code B12 from the distributed ledger B10 and executes processing based on the contract code B12. The results of the processing may be included in the transaction data and stored in the distributed ledger B10.

[0145] FIG. 14 is an explanatory diagram showing the structure of an NFT and metadata. An NFT is a token stored in a distributed ledger and is a unique token (in other words, a non-fungible token). NFTs are standardized, for example, as ERC (Ethereum Request for Comments) 721, but are not limited to this. NFTs may conform to a different standard or may be non-standard (for example, proprietary to an organization). While ERC 721 is a standard for unique tokens, the NFTs described herein do not necessarily have to be unique tokens.

[0146] 14 shows transaction data B21 stored in the distributed ledger. The transaction data B21 stores an NFT. The NFT includes a token ID (i.e., identification information that can uniquely identify the NFT) and a metadata uniform resource identifier (URI).

[0147] The NFT has metadata. The metadata may be located in a location accessible via a network (e.g., storage device B22). A metadata URI indicating the location of the metadata may be calculated using the NFT's token ID and a predetermined base URI.

[0148] The information managed as an NFT may be included in the transaction data B21 or in the metadata. Including the information managed as an NFT in the metadata has the advantage of reducing the amount of information included in the transaction data B21 (in other words, the information included in the blockchain). In this case, it can be said that the metadata contains the actual information managed as an NFT. When an image is managed as an NFT, a URL indicating the image data of the image may be managed as an NFT.

[0149] Through the above series of processes, when the distributed ledger system receives transaction data B15 including instructions B16 for executing a smart contract, it automatically (i.e., without manual intervention) executes the processing in accordance with the instructions B16, enabling highly efficient (i.e., high speed or short processing time). Achieving highly efficient processing has the effect of reducing power consumption. Furthermore, since no manual intervention is required, it is possible to prevent human tampering with information, fraud, or human error. Furthermore, since the results of the processing thus executed are stored in the blockchain, it is virtually impossible to tamper with the results of the processing.

[0150] In the above embodiments, each component may be configured with dedicated hardware, or may be realized by executing a software program suitable for each component. Each component may be realized by a program execution unit such as a CPU or processor reading and executing a software program recorded on a recording medium such as a hard disk or semiconductor memory. Here, the software that realizes the devices of the above embodiments is the following program.

[0151] In other words, this program causes a computer to execute a control method for acquiring transaction data to be stored in a blockchain, transmitting related information about data contained in the transaction data to an information terminal that stores a program that determines the type of consensus algorithm to use for the transaction data based on the related information, receiving the type of consensus algorithm determined by the program from the information terminal, and executing a consensus algorithm according to the type of consensus algorithm, thereby generating a block that includes the transaction data and is to be stored in a blockchain.

[0152] Although the devices according to one or more aspects have been described based on the embodiments, the present invention is not limited to these embodiments. As long as they do not deviate from the spirit of the present invention, various modifications conceivable by those skilled in the art to the present embodiments and configurations constructed by combining components of different embodiments may also be included within the scope of one or more aspects.

[0153] The present disclosure is useful as a control method that allows multiple types of consensus algorithms to be used in combination as consensus algorithms used in blockchain technology.

[0154] 1, 1A System 100, 300 Information terminal 200, 200A Blockchain system 200a to 200c, 200Aa to 200Ac Node 101, 201, 301 Communication unit 102, 302 Input reception unit 103, 303 Display unit 104, 202, 304 Control unit 105, 305 Memory unit 203 Recording unit 204 Transaction data verification unit 205 Distributed ledger 206 Smart contract execution unit 500 Network

Claims

1. A control method executed by a device, comprising: acquiring transaction data to be stored in a blockchain; transmitting related information about data included in the transaction data to an information terminal storing a program that determines the type of consensus algorithm to be used for the transaction data based on the related information; receiving the type of consensus algorithm determined by the program from the information terminal; and executing a consensus algorithm according to the type of consensus algorithm to generate a block to be stored in the blockchain, the block including the transaction data.

2. The control method described in claim 1, wherein the program is a contract code constituting a smart contract, the smart contract is stored in the blockchain, and the information terminal is one of a plurality of information terminals constituting a blockchain system that manages the blockchain.

3. The control method according to claim 1 or 2, further comprising: the information terminal determines whether the related information is information indicating an FT (Fungible Token) or information indicating an NFT (Non-Fungible Token); if the related information is information indicating an FT, determines the type of consensus algorithm to be a first consensus algorithm; if the related information is information indicating an NFT, determines the type of consensus algorithm to be a second consensus algorithm that has a higher cost for reaching consensus than the first consensus algorithm; and transmits the type of consensus algorithm determined by the determination to the device.

4. The control method described in claim 1 or 2, wherein the related information is information indicating a token, and the information terminal further determines whether the tone amount of the token is less than a predetermined token amount, and if the token amount is less than the predetermined token amount, determines the type of consensus algorithm to be a first consensus algorithm, and if the token amount is equal to or greater than the predetermined token amount, determines the type of consensus algorithm to be a second consensus algorithm that has a higher cost for reaching consensus than the first consensus algorithm, and transmits the type of consensus algorithm determined by the determination to the device.

5. The control method described in claim 1 or 2, wherein the related information is information indicating a token, and the information terminal further determines whether the period until the expiration date of the token is less than a predetermined period, and if the period is less than the predetermined period, determines the type of consensus algorithm to be a first consensus algorithm, and if the period is equal to or greater than the predetermined period, determines the type of consensus algorithm to be a second consensus algorithm that has a higher cost for reaching consensus than the first consensus algorithm, and transmits the type of consensus algorithm determined by the determination to the device.

6. The control method according to claim 1 or 2, further comprising: the information terminal determining whether or not the related information includes privacy information; determining the type of consensus algorithm to be a first consensus algorithm if the related information does not include privacy information; determining the type of consensus algorithm to be a second consensus algorithm that has a higher cost for reaching consensus than the first consensus algorithm if the transaction data includes privacy information; and transmitting the type of consensus algorithm determined by the determination to the device.

7. The control method described in claim 3, further comprising: determining whether the related information includes privacy information; if the related information does not include privacy information, determining the type of consensus algorithm to be the second consensus algorithm; if the transaction data includes privacy information, determining the type of consensus algorithm to be the third consensus algorithm, which has a higher cost for reaching consensus than the second consensus algorithm; and transmitting the type of consensus algorithm determined by the determination to the device.

8. The control method described in claim 3, wherein the second consensus algorithm is more difficult to mine than the first consensus algorithm.

9. A device comprising: a processor; and a memory, wherein the processor uses the memory to acquire transaction data to be stored in a blockchain; transmits related information about data included in the transaction data to an information terminal storing a program that determines the type of consensus algorithm to be used for the transaction data based on the related information; receives the type of consensus algorithm determined by the program from the information terminal; and executes a consensus algorithm according to the type of consensus algorithm to generate a block to be stored in a blockchain, the block including the transaction data.

10. A program for causing a computer to execute a control method executed by an apparatus, the program comprising: acquiring transaction data to be stored in a blockchain; transmitting related information regarding data included in the transaction data to an information terminal storing a program that determines the type of consensus algorithm to be used for the transaction data based on the related information; receiving the type of consensus algorithm determined by the program from the information terminal; and executing a consensus algorithm according to the type of consensus algorithm to generate a block to be stored in a blockchain, the block including the transaction data.

Citation Information

Patent Citations

  • Wallet system and transaction method

    CN114723438A

  • Authentication system, authentication apparatus, authentication method and authentication program

    JP2007048256A

  • Provision device, processing system, and communication method

    JP2020035040A