WO2022180752A1 - 制御システム、制御プログラム、制御方法、および制御装置 - Google Patents

制御システム、制御プログラム、制御方法、および制御装置 Download PDF

Info

Publication number
WO2022180752A1
WO2022180752A1 PCT/JP2021/007214 JP2021007214W WO2022180752A1 WO 2022180752 A1 WO2022180752 A1 WO 2022180752A1 JP 2021007214 W JP2021007214 W JP 2021007214W WO 2022180752 A1 WO2022180752 A1 WO 2022180752A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
transaction information
blockchain
information
transaction
Prior art date
Application number
PCT/JP2021/007214
Other languages
English (en)
French (fr)
Inventor
真吾 藤本
Original Assignee
富士通株式会社
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 富士通株式会社 filed Critical 富士通株式会社
Priority to PCT/JP2021/007214 priority Critical patent/WO2022180752A1/ja
Priority to JP2023501929A priority patent/JPWO2022180752A1/ja
Publication of WO2022180752A1 publication Critical patent/WO2022180752A1/ja
Priority to US18/355,797 priority patent/US20230360037A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/22Payment schemes or models
    • G06Q20/24Credit schemes, i.e. "pay after"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/407Cancellation of a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/06Asset management; Financial planning or analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Definitions

  • the present invention relates to control systems, control programs, control methods, and control devices.
  • blockchain that realizes a distributed ledger that manages transaction information by linking blocks that record transaction information.
  • blockchain is used in decentralized financial systems. At this time, if it is desired to reserve the operation of recording the transaction information on the blockchain so that the transaction information indicating the transaction details such as payment of money or transfer of rights is recorded on the blockchain after the specified time has passed.
  • At least a predetermined node among a plurality of nodes forming a distributed ledger system executes an operation smart contract for operation management based on whether the received transaction type is an operation smart contract.
  • the present invention aims to make it possible to reserve the operation of recording transaction information in the blockchain.
  • a plurality of nodes forming a first blockchain network, one or more nodes forming a second blockchain network, said first blockchain network and said second wherein each node of the plurality of nodes manages a first blockchain that records a scheduled time point for validating transaction information; Based on the recorded contents of the first blockchain managed by the self-node, identifying the transaction information that has passed the scheduled time, recording the identified result in the first blockchain managed by the self-node, and the information a processing device that transmits transaction information identified by a node that satisfies a predetermined condition among the plurality of nodes to each of the one or more nodes based on the recorded content of the first blockchain; Each node of the one or more nodes manages a second blockchain that records validated transaction information, generates a block that includes the received transaction information, and manages the second block chain in its own node.
  • a control system is proposed to add to the blockchain.
  • FIG. 1 is an explanatory diagram of an example of a control method according to an embodiment.
  • FIG. 2 is an explanatory diagram showing an example of the control system 110.
  • FIG. 3 is a block diagram showing a hardware configuration example of the information processing apparatus 100.
  • FIG. 4 is a block diagram showing a hardware configuration example of the first node 101.
  • FIG. 5 is an explanatory diagram showing an example of the contents of the schedule transaction management information 500.
  • FIG. FIG. 6 is a block diagram showing a hardware configuration example of the second node 102.
  • FIG. 7 is a block diagram showing a functional configuration example of the control system 110.
  • FIG. FIG. 3 is a block diagram showing a hardware configuration example of the information processing apparatus 100.
  • FIG. 4 is a block diagram showing a hardware configuration example of the first node 101.
  • FIG. 5 is an explanatory diagram showing an example of the contents of the schedule transaction management information 500.
  • FIG. 6 is a block diagram showing a hardware configuration example of the second no
  • FIG. 8 is an explanatory diagram (Part 1) showing an example of the operation of the control system 110.
  • FIG. 9 is an explanatory diagram (part 2) showing an example of the operation of the control system 110.
  • FIG. 10 is an explanatory diagram (part 3) showing an example of the operation of the control system 110.
  • FIG. 11 is an explanatory diagram (part 4) showing an example of the operation of the control system 110.
  • FIG. 12 is an explanatory diagram (part 1) showing a specific example of the operation of the control system 110.
  • FIG. FIG. 13 is an explanatory diagram (part 2) showing a specific example of the operation of the control system 110.
  • FIG. FIG. 10 is an explanatory diagram (part 3) showing an example of the operation of the control system 110.
  • FIG. 11 is an explanatory diagram (part 4) showing an example of the operation of the control system 110.
  • FIG. 12 is an explanatory diagram (part 1) showing a specific example of the operation of the control system 110.
  • FIG. FIG. 13 is
  • FIG. 14 is an explanatory diagram (part 3) showing a specific example of the operation of the control system 110.
  • FIG. 15 is an explanatory diagram (part 4) showing a specific example of the operation of the control system 110.
  • FIG. 16 is a flow chart showing an example of the overall processing procedure.
  • FIG. 1 is an explanatory diagram of an example of a control method according to an embodiment.
  • the information processing device 100 is a computer capable of cooperating with a blockchain network and capable of reserving an operation of recording transaction information in a blockchain.
  • blockchain may be referred to as "BC (Block Chain)".
  • the BC network manages BC.
  • a BC network is formed by one or more nodes.
  • the BC is managed by each node included in the BC network storing and monitoring the same BC.
  • BC is a list that serves as a distributed ledger that manages transaction information by linking blocks in which transaction information is registered. Examples of BC networks include public, consortium, and private BC networks.
  • Transaction information is, for example, called transaction (Tx: Transaction) information.
  • Tx Transaction
  • BC implements a distributed ledger technology that makes it difficult to falsify transaction information registered in blocks.
  • BC can be used, for example, in a decentralized financial system and used for credit management.
  • credit management it is desirable to determine a transaction schedule so that transactions such as payment of money or transfer of rights are performed at predetermined times.
  • the transfer of rights is, for example, redemption of investment or dividend payment. For this reason, it is desirable to make it possible to reserve the operation of recording the transaction information in the BC so that the transaction information indicating the content of the transaction is recorded in the BC after a specified time has passed.
  • a method called Ethereum Alarm Clock can be considered.
  • Reference 1 below can be referred to.
  • This method has the problem that the timer is held in the external device that performs the timer processing, resulting in an increase in the processing load.
  • a control system 110 including a plurality of first nodes 101 forming a first BC network, one or more second nodes 102 forming a second BC network, and an information processing device 100 exist.
  • the information processing device 100 can cooperate with a first BC network and a second BC network.
  • Each first node 101 manages a first BC that records a scheduled point in time for validating transaction information.
  • the scheduled point in time is the scheduled point in time at which transaction information relating to a certain transaction will be validated in response to the execution of the transaction.
  • Each first node 101 identifies transaction information whose scheduled time has passed, based on the recorded contents of the first BC managed by the own node.
  • Each first node 101 records information indicating transaction information for which the specified scheduled time has passed in the first BC managed by the own node.
  • Information indicating transaction information is, for example, the transaction information itself.
  • Each first node 101 distributes the recorded contents of the first BC managed by the own node to the information processing device 100 . Processing of each first node 101 is implemented by, for example, a smart contract. In the following description, the smart contract may be referred to as "SC (Smart Contract)".
  • the information processing apparatus 100 acquires the recorded content of the first BC.
  • the information processing apparatus 100 performs consensus building based on the recorded contents of the first BC, and selects transaction information specified by the first node 101 that satisfies a predetermined condition.
  • the predetermined condition is, for example, the number of first nodes 101 .
  • the predetermined condition may be, for example, a condition regarding attributes of the first node 101 .
  • the information processing apparatus 100 performs consensus building based on the recorded contents of the first BC, and selects transaction information commonly specified by a predetermined number or more of the first nodes 101 .
  • the information processing device 100 transmits information indicating the selected transaction information to each of the second nodes 102 .
  • Each second node 102 manages a second BC that records validated transaction information. Each second node 102 receives information indicating transaction information from the information processing device 100 . Each second node 102 generates a block containing information indicating the received transaction information and adds it to the second BC managed by the own node.
  • the control system 110 can make it possible to reserve the operation of recording the transaction information in the second BC.
  • the information processing device 100 intervenes between a first BC network and a second BC network, and presents transaction information to the second BC based on the scheduled time recorded in the first BC.
  • the timing at which information is recorded can be controlled. Therefore, the information processing device 100 can cooperate with the first BC network and make it possible to reserve the operation of recording the transaction information in the second BC.
  • the information processing device 100 can select transaction information specified by the first node 101 that satisfies a predetermined condition and record it in the second BC.
  • the information processing apparatus 100 can select, for example, transaction information specified by a predetermined number or more of the first nodes 101 to be recorded in the second BC. Therefore, the information processing apparatus 100 can prevent the transaction information erroneously specified by any of the first nodes 101 from being recorded in the second BC, thereby improving security. be able to.
  • information indicating transaction information may be identification information for identifying transaction information.
  • the information indicating the transaction information may be feature values obtained from the transaction information.
  • information indicating transaction information may be a hash value obtained from the transaction information.
  • control system 110 (Example of control system 110) Next, an example of a control system 110 to which the information processing apparatus 100, the first BC network 201, and the second BC network 202 shown in FIG. 1 are applied will be described with reference to FIG.
  • FIG. 2 is an explanatory diagram showing an example of the control system 110.
  • the control system 110 includes an information processing device 100 , a first BC network 201 , a second BC network 202 and a client device 203 .
  • a first BC network 201 is formed by a plurality of first nodes 101 .
  • a second BC network 202 is formed by one or more second nodes 102 .
  • the information processing device 100 and the first BC network 201 are connected via a wired or wireless network 210.
  • the network 210 is, for example, a LAN (Local Area Network), a WAN (Wide Area Network), the Internet, or the like.
  • the information processing device 100 and the second BC network 202 are connected via the network 210 .
  • the first BC network 201 and the client device 203 are connected via the network 210 .
  • the information processing device 100 is a computer that can cooperate with the first BC network 201 and the second BC network 202 .
  • the information processing apparatus 100 acquires the recorded content of the first BC 211 that records the scheduled time point for validating the transaction information.
  • the scheduled point in time is the scheduled point in time at which transaction information relating to a certain transaction will be validated in response to the execution of the transaction.
  • the information processing apparatus 100 performs consensus building based on the recorded contents of the first BC 211 and selects transaction information specified by the first node 101 that satisfies a predetermined condition.
  • the information processing device 100 transmits information indicating the selected transaction information to each of the second nodes 102 .
  • the information processing apparatus 100 is, for example, a server or a PC (Personal Computer).
  • the first node 101 is a computer that manages the first BC 211.
  • the first node 101 receives from the client device 203 the information indicating the transaction information and the scheduled time for validating the transaction information, and records it in the first BC 211 .
  • Information indicating transaction information is, for example, the transaction information itself.
  • the first node 101 identifies transaction information whose scheduled time has passed, based on the recorded contents of the first BC 211 managed by the own node.
  • the first node 101 records, in the first BC 211, information indicating transaction information for which the identified scheduled time has passed.
  • the processing of the first node 101 is realized by smart contract, for example.
  • the first node 101 is, for example, a server or a PC.
  • the second node 102 is a computer that manages the second BC 212 that records validated transaction information.
  • the second node 102 receives information indicating transaction information from the information processing device 100 .
  • the second node 102 records the information indicating the received transaction information in the second BC 212 managed by the own node.
  • the second node 102 for example, generates a block containing information indicating the received transaction information, and adds it to the second BC 212 managed by its own node.
  • the processing of the second node 102 is realized by smart contracts, for example.
  • the second node 102 is, for example, a server or PC.
  • the client device 203 is a computer used by a certain trader.
  • the client device 203 transmits, to each first node 101, information indicating transaction information related to a certain transaction and a scheduled time point for validating the transaction information, based on an operation input by the executor.
  • the client device 203 is, for example, a PC, tablet terminal, smart phone, wearable terminal, or the like.
  • Control system 110 is applied, for example, to a decentralized financial system.
  • the information processing device 100 may be one of the first nodes 101 in some cases.
  • FIG. 3 is a block diagram showing a hardware configuration example of the information processing apparatus 100.
  • the information processing apparatus 100 has a CPU (Central Processing Unit) 301 , a memory 302 , a network I/F (Interface) 303 , a recording medium I/F 304 and a recording medium 305 . Also, each component is connected by a bus 300 .
  • the CPU 301 controls the entire information processing apparatus 100 .
  • the memory 302 has, for example, a ROM (Read Only Memory), a RAM (Random Access Memory), a flash ROM, and the like. Specifically, for example, a flash ROM or ROM stores various programs, and a RAM is used as a work area for the CPU 301 .
  • a program stored in the memory 302 causes the CPU 301 to execute coded processing by being loaded into the CPU 301 .
  • the network I/F 303 is connected to the network 210 through a communication line, and is connected to other computers via the network 210.
  • a network I/F 303 serves as an internal interface with the network 210 and controls input/output of data from other computers.
  • Network I/F 303 is, for example, a modem or a LAN adapter.
  • the recording medium I/F 304 controls reading/writing of data from/to the recording medium 305 under the control of the CPU 301 .
  • the recording medium I/F 304 is, for example, a disk drive, SSD (Solid State Drive), USB (Universal Serial Bus) port, or the like.
  • a recording medium 305 is a nonvolatile memory that stores data written under control of the recording medium I/F 304 .
  • the recording medium 305 is, for example, a disk, a semiconductor memory, a USB memory, or the like.
  • the recording medium 305 may be removable from the information processing apparatus 100 .
  • the information processing apparatus 100 may have, for example, a keyboard, mouse, display, printer, scanner, microphone, speaker, etc., in addition to the components described above. Further, the information processing apparatus 100 may have a plurality of recording medium I/Fs 304 and recording media 305 . Further, the information processing apparatus 100 may not have the recording medium I/F 304 and the recording medium 305 .
  • FIG. 4 is a block diagram showing a hardware configuration example of the first node 101.
  • the first node 101 has a CPU 401 , a memory 402 , a network I/F 403 , a recording medium I/F 404 and a recording medium 405 . Also, each component is connected by a bus 400 .
  • the CPU 401 controls the entire first node 101 .
  • the memory 402 has, for example, ROM, RAM and flash ROM. Specifically, for example, a flash ROM or ROM stores various programs, and a RAM is used as a work area for the CPU 401 .
  • the program stored in the memory 402 causes the CPU 401 to execute coded processing by being loaded into the CPU 401 .
  • the memory 402 specifically stores the smart contract 410 .
  • the smart contract 410 manages the first BC 211 that records the scheduled time to activate the transaction information.
  • the smart contract 410 receives from the client device 203 and records in the first BC 211 the information indicating the transaction information and the scheduled time to activate the transaction information.
  • the smart contract 410 identifies transaction information whose scheduled time has passed based on the recorded contents of the first BC 211 managed by its own node, and records the identified result in the first BC 211 .
  • the network I/F 403 is connected to the network 210 through a communication line, and is connected to other computers via the network 210.
  • a network I/F 403 serves as an internal interface with the network 210 and controls input/output of data from other computers.
  • Network I/F 403 is, for example, a modem or a LAN adapter.
  • the recording medium I/F 404 controls reading/writing of data from/to the recording medium 405 under the control of the CPU 401 .
  • a recording medium I/F 404 is, for example, a disk drive, an SSD, a USB port, or the like.
  • a recording medium 405 is a nonvolatile memory that stores data written under the control of the recording medium I/F 404 .
  • the recording medium 405 stores, for example, the first BC 211 .
  • the first BC 211 stores, for example, schedule transaction management information 500, which will be described later with reference to FIG.
  • the recording medium 405 is, for example, a disk, a semiconductor memory, a USB memory, or the like.
  • the recording medium 405 may be removable from the first node 101 .
  • the first node 101 may have, for example, a keyboard, mouse, display, printer, scanner, microphone, speaker, and the like. Also, the first node 101 may have a plurality of recording medium I/Fs 404 and recording media 405 . Also, the first node 101 may not have the recording medium I/F 404 and the recording medium 405 .
  • Scheduled transaction management information 500 is implemented by, for example, a storage area such as memory 402 or recording medium 405 of information processing apparatus 100 shown in FIG.
  • FIG. 5 is an explanatory diagram showing an example of the contents of the schedule transaction management information 500.
  • the schedule transaction management information 500 has fields for an escrow transaction ref, schedule transaction details, schedule time, whether execution can be canceled, and schedule execution conditions.
  • a scheduled trade is a trade that is scheduled to execute.
  • the escrow transaction ref field contains identification information that identifies the escrow transaction referenced in the schedule transaction.
  • An escrow transaction is, for example, a transaction in which money handled in a schedule transaction is deposited with a third party in advance.
  • the content of the schedule transaction to be executed with reference to the content of the escrow transaction is set in the content of schedule transaction field.
  • the content of the schedule transaction indicates, for example, the content of the transaction for sending money, and specifically indicates the amount to be transferred and the destination to which the money for the transfer amount is to be sent.
  • the scheduled time for executing the above schedule transaction is set in the Schedule Time field.
  • Information indicating whether or not execution of the schedule transaction can be canceled is set in the execution cancelability field.
  • a condition for executing the schedule transaction is set in the schedule execution condition field. The condition is, for example, that a predetermined number or more of the first nodes 101 determine that the scheduled time has passed. The above conditions may be different for each scheduled transaction.
  • FIG. 6 is a block diagram showing a hardware configuration example of the second node 102.
  • the second node 102 has a CPU 601 , memory 602 , network I/F 603 , recording medium I/F 604 and recording medium 605 . Also, each component is connected by a bus 600 .
  • the CPU 601 controls the entire second node 102 .
  • the memory 602 has, for example, ROM, RAM and flash ROM. Specifically, for example, a flash ROM or ROM stores various programs, and a RAM is used as a work area for the CPU 601 .
  • a program stored in the memory 602 causes the CPU 601 to execute coded processing by being loaded into the CPU 601 .
  • the memory 602 specifically stores a smart contract 610.
  • Smart contract 610 manages a second BC 212 that records validated transaction information.
  • the smart contract 610 receives information indicating transaction information from the information processing device 100 .
  • the smart contract 610 generates a block containing information indicating the received transaction information and adds it to the second BC 212 managed by its own node.
  • the network I/F 603 is connected to the network 210 through a communication line, and is connected to other computers via the network 210.
  • a network I/F 603 serves as an internal interface with the network 210 and controls input/output of data from other computers.
  • the network I/F 603 is, for example, a modem or LAN adapter.
  • a recording medium I/F 604 controls reading/writing of data from/to the recording medium 605 under the control of the CPU 601 .
  • a recording medium I/F 604 is, for example, a disk drive, an SSD, a USB port, or the like.
  • a recording medium 605 is a nonvolatile memory that stores data written under control of the recording medium I/F 604 .
  • the recording medium 605 stores, for example, the second BC 212 .
  • the recording medium 605 is, for example, a disk, semiconductor memory, USB memory, or the like.
  • the recording medium 605 may be removable from the second node 102 .
  • the second node 102 may have, for example, a keyboard, mouse, display, printer, scanner, microphone, speaker, and the like. Also, the second node 102 may have a plurality of recording medium I/Fs 604 and recording media 605 . Also, the second node 102 may not have the recording medium I/F 604 and the recording medium 605 .
  • FIG. 7 is a block diagram showing a functional configuration example of the control system 110.
  • a control system 110 includes a plurality of first nodes 101 forming a first BC network 201, one or more second nodes 102 forming a second BC network 202, an information processing device 100 including.
  • the first node 101 includes a first storage unit 700 , a first acquisition unit 701 , a first recording unit 702 , an identification unit 703 and a first output unit 704 .
  • the first storage unit 700 is implemented by, for example, a storage area such as the memory 402 or the recording medium 405 shown in FIG. Although a case where the first storage unit 700 is included in the first node 101 will be described below, the present invention is not limited to this.
  • the first storage unit 700 may be included in a device different from the first node 101 and the storage contents of the first storage unit 700 may be referenced from the first node 101 .
  • the first acquisition unit 701 to first output unit 704 function as an example of a control unit. Specifically, the first acquisition unit 701 to the first output unit 704, for example, cause the CPU 401 to execute a program stored in a storage area such as the memory 402 or the recording medium 405 shown in FIG.
  • the network I/F 403 implements that function.
  • the processing result of each functional unit is stored in a storage area such as the memory 402 or recording medium 405 shown in FIG. 4, for example.
  • the first storage unit 700 stores various information that is referred to or updated in the processing of each functional unit.
  • the first storage unit 700 stores a first BC 211 that records a scheduled point in time for validating transaction information.
  • Transaction information is, for example, information indicating the content of a certain transaction.
  • Transactions are, for example, deposits or remittances.
  • Activation is, for example, activating transaction information.
  • Validation corresponds to, for example, executing a transaction indicated by the transaction information.
  • the scheduled time is represented, for example, by the time format.
  • a scheduled point in time is represented, for example, by an addition point in time at which a given block is added to the first BC 211 .
  • the predetermined block is, for example, the Nth block from the top of the first BC 211 .
  • the additional time points are represented by the block number N, for example.
  • the first BC 211 is formed, for example, by concatenating blocks that record scheduled time points for validating transaction information. Specifically, the first BC 211 is formed by linking blocks that record information indicating transaction information and a scheduled time point for validating the transaction information in association with each other. The block may, for example, also record information indicating transaction information past the scheduled time.
  • a predetermined condition is, for example, a predetermined number of nodes. The predetermined condition may be variable for each transaction information. The predetermined condition may include a node's long participation time in the BC network. The predetermined condition may include that the reliability of the node is high.
  • the first storage unit 700 also stores a smart contract that records the scheduled time of transaction information in the first BC 211.
  • the first storage unit 700 also stores a smart contract that specifies transaction information whose scheduled time has passed.
  • the first acquisition unit 701 acquires various types of information used for processing of each functional unit.
  • the first acquisition unit 701 stores the acquired various information in the first storage unit 700 or outputs the information to each functional unit. Further, the first acquisition unit 701 may output various information stored in the first storage unit 700 to each functional unit.
  • the first acquisition unit 701 acquires various types of information, for example, based on user's operation input.
  • the first acquisition unit 701 may receive various types of information from a device different from the first node 101, for example.
  • the first acquisition unit 701 accepts a recording request to record the scheduled point in time for validating any transaction information.
  • the record request includes, for example, information indicating any transaction information to be validated and the scheduled time at which the transaction information is validated.
  • the first acquisition unit 701 accepts the recording request by, for example, receiving the recording request from the client device 203 .
  • the first acquisition unit 701 acquires a cancellation request for canceling the scheduled point in time for validating any transaction information.
  • the cancellation request includes, for example, information indicating any transaction information that cancels the scheduled time.
  • the first acquisition unit 701 accepts a cancellation request by, for example, receiving the cancellation request from the client device 203 .
  • the first acquisition unit 701 may accept a start trigger for starting processing of any of the functional units.
  • the start trigger is, for example, that there is a predetermined operation input by the user.
  • the start trigger may be, for example, reception of predetermined information from another computer.
  • the start trigger may be, for example, the output of predetermined information by any of the functional units.
  • the first acquisition unit 701 accepts, for example, reception of a recording request or cancellation request as a start trigger for starting the processing of the first recording unit 702 .
  • the first acquisition unit 701 receives, for example, that the first recording unit 702 has updated the first BC 211 as a start trigger for starting the processing of the identification unit 703 .
  • the first acquisition unit 701 receives, for example, the occurrence of a predetermined signal that occurs periodically as a start trigger for starting the processing of the identification unit 703 .
  • the first recording unit 702 manages the first BC 211. For example, when receiving a recording request, the first recording unit 702 records the scheduled time point for validating any transaction information in the first BC 211 . Specifically, the first recording unit 702 generates a block containing information indicating any transaction information to be validated and correspondence information associated with the scheduled time point at which the transaction information is to be validated, Add to the first BC 211 . Generation may be performed by a computer other than the first node 101 by requesting that computer. Thereby, the first recording unit 702 can appropriately update the first BC 211 and manage the first BC 211 .
  • the first recording unit 702 when a cancellation request is received, the first recording unit 702 records cancellation information indicating that the scheduled time for activating any transaction information is to be canceled in the first BC 211 . Specifically, the first recording unit 702 generates a block including cancellation information indicating cancellation of the scheduled time to validate any transaction information, and adds it to the first BC 211 . As a result, the first recording unit 702 can cancel the scheduled time of activation of the transaction information without deleting the scheduled time of activation of the transaction information itself from the first BC 211, thereby improving convenience. can be planned.
  • the first recording unit 702 For example, if the first recording unit 702 does not receive a recording request for a certain period of time, it records the scheduled time point for activating the dummy transaction information in the first BC 211 . Specifically, the first recording unit 702 generates a block including the scheduled time point for validating the dummy transaction information, and adds it to the first BC 211 . As a result, the first recording unit 702 can generate a start trigger for starting the processing of the specifying unit 703 without receiving a recording request.
  • the identifying unit 703 identifies transaction information whose scheduled time has passed based on the recorded contents of the first BC 211 .
  • the processing of the identifying unit 703 is implemented using, for example, a smart contract. For example, each time a certain number of new blocks are added to the first BC 211 , the identifying unit 703 identifies transaction information whose scheduled time has passed, based on the recorded contents of the first BC 211 .
  • the certain number is, for example, 1 or a number of 2 or more. As a result, if the constant number is 1, the specifying unit 703 can suppress a delay from a certain scheduled time until it is determined that the scheduled time has passed.
  • the identification unit 703 can reduce the amount of processing if the fixed number is 2 or more.
  • the identifying unit 703 identifies, for example, based on the recorded contents of the first BC 211, transaction information whose scheduled time has passed, other than any transaction information whose scheduled time has been cancelled. Specifically, each time a certain number of new blocks are added to the first BC 211, the identifying unit 703 detects any transaction information whose scheduled time point has been canceled based on the recorded contents of the first BC 211. Other than that, the transaction information whose scheduled time has passed is specified. As a result, the identification unit 703 can exclude any transaction information whose scheduled time has been cancelled, and can appropriately identify transaction information whose scheduled time has passed.
  • the specifying unit 703 records the specified result in the first BC 211.
  • the identifying unit 703 records information indicating the transaction information identified by the identifying unit 703 in the first BC 211, for example. Accordingly, the identifying unit 703 can allow the information processing apparatus 100 to refer to information indicating transaction information identified by the first node 101 that satisfies a predetermined condition.
  • the first output unit 704 outputs the processing result of at least one of the functional units.
  • the output format is, for example, display on a display, print output to a printer, transmission to an external device via the network I/F 403, or storage in a storage area such as the memory 402 or recording medium 405. This enables the first output unit 704 to notify the user of the processing result of at least one of the functional units, thereby improving the convenience of the first node 101 .
  • the first output unit 704 outputs the recorded contents of the first BC 211, for example. Specifically, the first output unit 704 transmits the recorded content of the first BC 211 to the information processing apparatus 100 . This allows the first output unit 704 to allow the information processing apparatus 100 to grasp the content recorded in the first BC 211 .
  • the second node 102 includes a second storage unit 710 , a second acquisition unit 711 , a second recording unit 712 and a second output unit 713 .
  • the second storage unit 710 is implemented by, for example, a storage area such as the memory 602 or recording medium 605 shown in FIG. Although a case where the second storage unit 710 is included in the second node 102 will be described below, the present invention is not limited to this.
  • the second storage unit 710 may be included in a device different from the second node 102 and the storage contents of the second storage unit 710 may be referenced from the second node 102 .
  • the second acquisition unit 711 to second output unit 713 function as an example of a control unit. Specifically, for example, the second acquisition unit 711 to the second output unit 713 cause the CPU 601 to execute a program stored in a storage area such as the memory 602 or the recording medium 605 shown in FIG. 6, or The network I/F 603 realizes that function. The processing result of each functional unit is stored in a storage area such as the memory 602 or recording medium 605 shown in FIG. 6, for example.
  • the second storage unit 710 stores various information that is referred to or updated in the processing of each functional unit.
  • the second storage unit 710 stores a second BC 212 that records validated transaction information.
  • the second BC 212 is formed, for example, by concatenating blocks that record validated transaction information.
  • the second storage unit 710 also stores a smart contract that records activated transaction information in the second BC 212 .
  • the second acquisition unit 711 acquires various information used for processing of each functional unit.
  • the second acquisition unit 711 stores the acquired various information in the second storage unit 710 or outputs the acquired information to each functional unit. Further, the second acquisition unit 711 may output various information stored in the second storage unit 710 to each functional unit.
  • the second acquisition unit 711 acquires various types of information, for example, based on the user's operation input.
  • the second acquisition unit 711 may receive various types of information from a device other than the second node 102, for example.
  • the second acquisition unit 711 receives, for example, validated transaction information from the information processing device 100 .
  • the second acquisition unit 711 may receive, for example, information indicating activated transaction information from the information processing device 100 .
  • the second acquisition unit 711 may accept a start trigger to start processing of any of the functional units.
  • the start trigger is, for example, that there is a predetermined operation input by the user.
  • the start trigger may be, for example, reception of predetermined information from another computer.
  • the start trigger may be, for example, the output of predetermined information by any of the functional units.
  • the second acquisition unit 711 receives, for example, the reception of validated transaction information as a start trigger for starting the processing of the second recording unit 712 .
  • the second acquisition unit 711 receives, for example, reception of information indicating activated transaction information as a start trigger for starting the processing of the second recording unit 712 .
  • the second recording unit 712 manages the second BC 212 that records validated transaction information.
  • the 2nd recording part 712 produces
  • the second recording unit 712 for example, generates a block containing information indicating the received transaction information and adds it to the second BC 212 .
  • the second recording unit 712 acquires the transaction information based on the information indicating the received transaction information, generates a block including the acquired transaction information, and adds the block to the second BC 212 . Thereby, the second recording unit 712 can appropriately update the second BC 212 .
  • the second output unit 713 outputs the processing result of at least one of the functional units.
  • the output format is, for example, display on a display, print output to a printer, transmission to an external device via the network I/F 603, or storage in a storage area such as the memory 602 or recording medium 605. Thereby, the second output unit 713 can notify the user of the processing result of at least one of the functional units, and the convenience of the second node 102 can be improved.
  • the second output unit 713 outputs the recorded content of the second BC 212, for example.
  • the information processing apparatus 100 includes a third storage section 720 , a third acquisition section 721 , a selection section 722 and a third output section 723 .
  • the third storage unit 720 is implemented by, for example, a storage area such as the memory 602 or recording medium 605 shown in FIG. Although a case where the third storage unit 720 is included in the information processing apparatus 100 will be described below, the present invention is not limited to this.
  • the third storage unit 720 may be included in a device different from the information processing device 100 , and the information stored in the third storage unit 720 may be referenced from the information processing device 100 .
  • the third acquisition unit 721 to third output unit 723 function as an example of a control unit. Specifically, for example, the third acquisition unit 721 to the third output unit 723 cause the CPU 601 to execute a program stored in a storage area such as the memory 602 or the recording medium 605 shown in FIG. 6, or The network I/F 603 realizes that function. The processing result of each functional unit is stored in a storage area such as the memory 602 or recording medium 605 shown in FIG. 6, for example.
  • the third storage unit 720 stores various information that is referred to or updated in the processing of each functional unit.
  • the third storage unit 720 stores the recorded contents of the first BC 211 .
  • the third storage unit 720 stores, for example, the recorded contents of the first BC 211 in which information indicating transaction information specified by the first node 101 is recorded.
  • the third acquisition unit 721 acquires various information used for processing of each functional unit.
  • the third acquisition unit 721 stores the acquired various information in the third storage unit 720 or outputs the information to each functional unit. Further, the third acquisition unit 721 may output various information stored in the third storage unit 720 to each functional unit.
  • the third acquisition unit 721 acquires various types of information, for example, based on user's operation input.
  • the third acquisition unit 721 may receive various types of information from a device different from the information processing device 100, for example.
  • the third acquisition unit 721 acquires the recorded content of the first BC 211, for example. Specifically, the third acquisition unit 721 receives the recorded content of the first BC 211 from each first node 101 .
  • the third acquisition unit 721 may accept a start trigger for starting processing of any functional unit.
  • the start trigger is, for example, that there is a predetermined operation input by the user.
  • the start trigger may be, for example, reception of predetermined information from another computer.
  • the start trigger may be, for example, the output of predetermined information by any of the functional units.
  • the third acquisition unit 721 receives, for example, acquisition of the recorded content of the first BC 211 as a start trigger for starting the processing of the selection unit 722 .
  • the selection unit 722 performs consensus building based on the recorded contents of the first BC 211, and selects the transaction information specified by the first node 101 that satisfies a predetermined condition among the plurality of first nodes 101. For example, the selection unit 722 forms a consensus based on the recorded contents of the first BC 211, and selects a transaction that is commonly specified by a predetermined number or more of the first nodes 101 among the plurality of first nodes 101. Select information. As a result, the selection unit 722 is non-centralized and can select transaction information whose scheduled time has passed, thereby improving security.
  • the specifying unit 703 specifically selects the transaction information specified by the first node 101 having a predetermined attribute among the plurality of first nodes 101 based on the recorded contents of the first BC 211. You may Further, the identifying unit 703 specifically, based on the recorded contents of the first BC 211, the transaction information identified by the first node 101 that satisfies a predetermined condition among the plurality of first nodes 101 is Furthermore, it may be determined whether or not conditions for execution are satisfied. Then, the identifying unit 703 may select transaction information that satisfies execution conditions.
  • the third output unit 723 outputs the processing result of at least one of the functional units.
  • the output format is, for example, display on a display, print output to a printer, transmission to an external device via the network I/F 603, or storage in a storage area such as the memory 602 or recording medium 605. Thereby, the third output unit 723 can notify the user of the processing result of at least one of the functional units, and the convenience of the information processing apparatus 100 can be improved.
  • the third output unit 723 transmits information indicating the transaction information selected by the selection unit 722 to each second node 102 . This allows the third output unit 723 to update the second BC 212 .
  • FIG. 8 to 11 are explanatory diagrams showing an example of the operation of the control system 110.
  • FIG. 8-1) the client device 203 transmits escrow transaction information related to an escrow transaction for depositing funds to the transaction execution BC network based on the user's operation input.
  • the client device 203 for example, transmits escrow transaction information related to an escrow transaction in which funds are deposited to each recording node 802 forming the transaction execution BC network.
  • Each record node 802 creates a block containing the received escrow transaction information and adds it to the transaction execution BC 820 at a predetermined timing.
  • Any recording node 802 transmits the escrow transaction information recorded in the block added to the transaction execution BC 820 to the schedule management BC network.
  • Any recording node 802 may, for example, send escrow transaction information recorded in blocks added to the transaction execution BC 820 to respective approval nodes 801 forming the schedule management BC network.
  • Any recording node 802 distributes the escrow transaction information from the approval node 801 to other approval nodes 801 by transmitting the escrow transaction information to any approval node 801 forming the schedule management BC network, for example. You may let
  • the client device 203 requests registration of the scheduled time for validating the scheduled transaction information indicating the details of the scheduled transaction to be executed with reference to the details of the escrow transaction. Send to network.
  • the registration request includes, for example, the scheduled transaction information and the scheduled time for activation of the scheduled transaction information.
  • the registration request may, for example, further include identification information identifying the escrow transaction information.
  • the registration request specifically includes schedule transaction management information 500 .
  • the client device 203 transmits a registration request to each approval node 801 forming the schedule management BC network.
  • the client device 203 may, for example, transmit the registration request to any of the approval nodes 801 forming the schedule management BC network, thereby distributing the registration request from the approval node 801 to other approval nodes 801. good.
  • Each approval node 801 generates, at a predetermined timing, a block containing schedule transaction information corresponding to the received registration request and the scheduled time for validating the schedule transaction information, and records it in the schedule management BC 810.
  • Each approval node 801, for example, at a predetermined timing generates a block containing the schedule transaction management information 500 corresponding to the received registration request, and records it in the schedule management BC810. This allows each approval node 801 to store the plan 800 for activating each schedule transaction information as a local database. Next, the description of FIG. 9 will be described.
  • the client device 203 transmits a cancellation request for canceling the scheduled time for validating the schedule transaction information to the schedule management BC network based on the user's operation input.
  • the cancellation request includes, for example, identification information identifying the scheduled transaction information whose scheduled time is to be canceled.
  • the client device 203 transmits a cancellation request to each approval node 801 forming the schedule management BC network.
  • the client device 203 may, for example, transmit the cancellation request to any of the approval nodes 801 forming the schedule management BC network, thereby distributing the cancellation request from the approval node 801 to other approval nodes 801. good.
  • Each approval node 801 generates, at a predetermined timing, a block containing identification information identifying schedule transaction information whose scheduled time is to be canceled, corresponding to the received cancellation request, and records it in the schedule management BC 810. As a result, each approval node 801 can cancel the scheduled time for validating the scheduled transaction information without deleting the scheduled time itself from the schedule management BC 810, thereby improving convenience.
  • FIG. 10 the description of FIG. 10 will be described.
  • each approval node 801 generates a block containing dummy transaction information and records it in the schedule management BC 810 when it does not receive a registration request for a certain period of time.
  • each approval node 801 can generate a trigger for determining whether or not there is any scheduled transaction information that has passed the scheduled time, and can identify the scheduled transaction information that has passed the scheduled time at an appropriate timing. can be made possible.
  • FIG. 11 will be described.
  • each approval node 801 refers to the recorded contents of the schedule management BC 810 each time a block is generated a certain number of times to identify schedule transaction information whose scheduled time has passed. The fixed number of times is, for example, one time.
  • Each approval node 801 generates approval information indicating approval for activating the specified schedule transaction information because the scheduled time for validating the specified schedule transaction information has passed, and records it in the schedule management BC 810. .
  • Approval information includes, for example, a signature indicating approval for activating schedule transaction information. Approval corresponds to approval to execute the scheduled transaction associated with the scheduled transaction information.
  • Authorization information includes, for example, the specified scheduled transaction information and a signature indicating authorization to validate the scheduled transaction information.
  • Each approval node 801 determines whether or not the scheduled time for activating each schedule transaction information recorded in the generated block has passed. Also, each approval node 801 determines whether or not the scheduled time for activating each scheduled transaction information recorded in other blocks before the generated block has passed. Each approval node 801, for example, identifies scheduled transaction information whose scheduled time has passed, based on the determination result. Each approval node 801, for example, generates approval information based on the specified result and records it in the schedule management BC810.
  • the information processing device 100 receives the schedule management BC 810 from each approval node 801 .
  • the information processing apparatus 100 builds a consensus based on the received approval information recorded in the schedule management BC 810, and selects schedule transaction information whose activation is approved by a certain number of approval nodes 801 or more. .
  • the selected schedule transaction information is transmitted to the recording node 802, and the funds corresponding to the predetermined remittance amount deposited by the escrow transaction specified by the escrow transaction ref included in the schedule transaction information are transferred to the set destination. You will realize a schedule transaction that will be sent to. In addition, when the scheduled time to be activated is canceled and the schedule transaction information is not selected, the schedule transaction for transmitting the funds of the prescribed remittance amount deposited by the escrow transaction to the set destination is not executed. At this time, the deposit by escrow transaction may also be canceled.
  • the information processing device 100 transmits the selected schedule transaction information to the transaction execution BC network.
  • the information processing apparatus 100 for example, transmits the selected scheduled transaction information to each recording node 802 forming the transaction execution BC network.
  • Each recording node 802 generates a block containing the received schedule trade information and adds it to the trade execution BC 820 at predetermined times. This allows the control system 110 to schedule the act of activating the scheduled trade information.
  • control system 110 (Specific example of operation of control system 110) Next, a specific example of the operation of the control system 110 will be described with reference to FIGS. 12 to 15. FIG.
  • FIG. 12 to 15 are explanatory diagrams showing specific examples of the operation of the control system 110.
  • the approval node 801 has reception means 1201 , recording means 1202 and determination means 1203 .
  • the information processing apparatus 100 has issuing means 1204 .
  • the approval node 801 stores a schedule management BC 810. Also, the approval node 801 stores a schedule management ledger for managing scheduled times for validating schedule transaction information based on the schedule management BC 810 .
  • the schedule management ledger is stored, for example, as a local database.
  • the schedule management ledger shows, for example, schedule transaction information to be activated at each scheduled time in association with each scheduled time.
  • the schedule management ledger may identifiably indicate activated schedule transaction information.
  • the approval node 801 generates blocks to be added to the schedule management BC 810 every 10 minutes.
  • Accepting means 1201 accepts a registration request including a scheduled time for validating the scheduled transaction information.
  • the registration request includes schedule transaction management information 500 .
  • the receiving means 1201 includes the schedule transaction management information 500 included in each registration request received during the last 10 minutes in the block to be added to the schedule management BC 810 each time a block is generated.
  • the determining means 1203 identifies schedule transaction information whose scheduled time has passed based on the schedule management ledger each time a block is generated.
  • the determining means 1203 generates approval information including a signature indicating approval for activating the specified schedule transaction information, and generates an activation transaction list including the specified schedule transaction information and the generated approval information in association with each other. do.
  • the determination means 1203 includes the generated activation transaction list in the block added to the schedule management BC810. Approval node 801 adds the generated block to schedule management BC 810 .
  • the recording means 1202 updates the schedule management ledger based on the recorded contents of the schedule management BC 810 each time a block is generated.
  • the recording means 1202 identifies schedule transaction information that has not yet been validated based on the schedule transaction management information 500 recorded in the block added to the schedule management BC810.
  • the recording unit 1202 associates the identified scheduled transaction information that has not yet been validated with the scheduled time for activating the scheduled transaction information, and registers them in the schedule management ledger.
  • the approval node 801 transmits the activation transaction list recorded in the block added to the schedule management BC 810 to the information processing device 100 .
  • Issuing means 1204 receives the activation transaction list recorded in the block added to schedule management BC810.
  • the issuing means 1204 builds a consensus based on the received activation transaction list, and selects scheduled transaction information that has passed the scheduled time and is commonly identified by a predetermined number or more of approval nodes 801 .
  • the issuing means 1204 transmits the selected scheduled transaction information to each record node 802 forming the transaction execution BC network. For example, the issuing means 1204 may further determine whether or not the schedule execution condition corresponding to the selected schedule transaction information is satisfied. Then, the issuing means 1204 transmits the selected scheduled transaction information to each of the record nodes 802 forming the transaction execution BC network, for example, when the conditions for schedule execution are satisfied.
  • Each record node 802 records the received schedule transaction information in the transaction execution BC 820. This allows the control system 110 to make it possible to reserve the operation of recording the schedule transaction information in the transaction execution BC 820, thereby improving convenience. Next, the description of FIG. 13 will be described.
  • receiving means 1201 receives a cancellation request for canceling the scheduled time for validating the scheduled transaction information.
  • the cancellation request includes schedule cancellation information that identifiably indicates the scheduled transaction information to be canceled.
  • the receiving unit 1201 includes schedule cancellation information included in each cancellation request received during the last 10 minutes in the block to be added to the schedule management BC 810 each time a block is generated.
  • the recording means 1202 updates the schedule management ledger based on the recorded contents of the schedule management BC 810 each time a block is generated.
  • the recording means 1202 acquires the schedule transaction management information 500 recorded in the block added to the schedule management BC810. Based on the acquired scheduled transaction management information 500, the recording means 1202 associates the scheduled transaction information that has not yet been validated with the scheduled time for activating the scheduled transaction information, and registers them in the schedule management ledger.
  • the recording means 1202 acquires the schedule cancellation information recorded in the block added to the schedule management BC810. Recording means 1202 cancels the scheduled time registered in the schedule management ledger based on the schedule cancellation information. As a result, the control system 110 can cancel the scheduled time after the fact, thereby improving convenience. Next, the description of FIG. 14 will be described.
  • the receiving means 1201 includes dummy transaction management information in the block to be added to the schedule management BC 810 if no registration request has been received in the last 10 minutes when the block is generated.
  • the control system 110 can execute the processing of the recording means 1202 and the determination means 1203 without receiving a registration request.
  • the client device 203 transmits the schedule transaction management information 500 to each approval node 801 forming the schedule management BC network.
  • Approval node 801 uses transaction monitoring SC 1501 to add a block including schedule transaction management information 500 to schedule management BC 810 .
  • the approval node 801 uses the transaction monitoring SC 1501 to update the schedule management ledger based on the blocks added to the schedule management BC 810 .
  • the approval node 801 uses the schedule monitoring SC 1502 to identify schedule transaction information whose scheduled time has passed based on the schedule management ledger.
  • the approval node 801 uses the schedule monitoring SC 1502 to generate approval information by associating a scheduled transaction ID that identifies scheduled transaction information whose scheduled time has passed with a signature indicating approval for activating the scheduled transaction information. do.
  • the approval node 801 uses the schedule monitoring SC 1502 to record the generated approval information in the schedule management BC 810 .
  • the information processing apparatus 100 uses the schedule transaction execution SC 1503 to acquire the recorded contents of the schedule management BC 810.
  • the information processing apparatus 100 uses the scheduled transaction execution SC 1503 to select scheduled transaction information that has passed the scheduled time determined to be appropriate through consensus building.
  • the information processing apparatus 100 uses the scheduled transaction execution SC 1503, for example, to process the scheduled transaction information that has passed the scheduled time and that has been approved for activation by a certain number or more of the approval nodes 801 as appropriate for consensus building. I judge.
  • the information processing apparatus 100 uses the scheduled transaction execution SC 1503 to transmit the selected scheduled transaction information to each recording node 802 forming the transaction execution BC network.
  • the scheduled transaction information includes, for example, the contents of the scheduled transaction for remittance from the deposit account to the destination and a signature for transaction approval. This allows the control system 110 to enable scheduling of recording schedule trade information to the trade execution BC 820 .
  • the overall processing is realized by, for example, the CPU 401, storage areas such as the memory 402 and the recording medium 405, and the network I/F 403 shown in FIG.
  • FIG. 16 is a flowchart showing an example of the overall processing procedure.
  • the approval node 801 receives data (step S1601).
  • Approval node 801 determines whether the received data is transaction request data requesting recording of the scheduled time of activation of the scheduled transaction information (step S1602).
  • step S1602 if it is not transaction request data (step S1602: No), the approval node 801 proceeds to the process of step S1604. On the other hand, if it is transaction request data (step S1602: Yes), the approval node 801 proceeds to the process of step S1603.
  • the approval node 801 replies whether or not to approve the transaction, which indicates whether to approve the schedule transaction (step S1603). If the approval node 801 approves the schedule transaction, it records the schedule transaction information in the schedule management BC 810 . The approval node 801 then returns to the process of step S1601.
  • step S1604 the approval node 801 determines whether the received data is block data (step S1604). Here, if it is not block data (step S1604: No), the approval node 801 proceeds to the process of step S1608. On the other hand, if it is block data (step S1604: Yes), the approval node 801 proceeds to the process of step S1605.
  • step S1605 the approval node 801 updates the internal state based on the schedule transaction information in the block data (step S1605).
  • the internal state is the schedule management ledger.
  • step S1606 determines whether or not the block number is to be executed. Here, if it is not an execution target (step S1606: No), the approval node 801 returns to the process of step S1601. On the other hand, if it is to be executed (step S1606: Yes), the approval node 801 proceeds to the process of step S1607.
  • the approval node 801 updates the activation transaction list and distributes it by P2P (step S1607).
  • the approval node 801 causes the information processing apparatus 100 to identify scheduled transaction information approved to be activated by a predetermined number or more of the approval nodes 801 from the distributed activation transaction list.
  • the approval node 801 then returns to the process of step S1601.
  • step S1608 the approval node 801 discards the received data (step S1608).
  • the approval node 801 then returns to the process of step S1601. This allows the approval node 801 to be able to schedule the action of validating the scheduled transaction information.
  • each first node 101 can manage the first BC that records the scheduled time of transaction information validation.
  • the transaction information that has passed the scheduled time is specified, and the specified result is managed by the first node managed by the own node.
  • BC can be recorded.
  • the information processing apparatus 100 based on the recorded content of the first BC, the transaction information specified by the first node 101 that satisfies a predetermined condition among the plurality of first nodes 101 is transferred to each second can be sent to the node 102 of
  • Each second node 102 may manage a second BC that records validated transaction information.
  • Each second node 102 can generate a block containing the received transaction information and add it to the second BC managed by the own node. This allows the control system 110 to be able to schedule the act of recording the transaction information to the second BC.
  • the transaction information commonly specified by a predetermined number or more of the plurality of first nodes 101 is stored in each of the second It can be sent to node 102 .
  • the control system 110 can record the transaction information in the second BC when a consensus is formed on the transaction information after the scheduled time, thereby improving security.
  • Each first node 101 can accept a cancellation request that cancels the scheduled time to activate any transaction information. According to each first node 101, when receiving a cancellation request, it generates a block containing cancellation information indicating that the scheduled time for activating any transaction information is to be cancelled, and manages the first node 101 in its own node. can be added to the BC of According to each first node 101, based on the recorded contents of the first BC managed by the own node, other than any transaction information, transaction information whose scheduled time has passed is specified, and the specified result is It can be recorded in the first BC managed by its own node. As a result, the control system 110 can cancel the scheduled time without deleting the scheduled time itself from the first BC, thereby improving convenience.
  • each first node 101 upon receiving a recording request to record a scheduled time to validate any transaction information, generate a block containing a scheduled time to validate any transaction information, It can be added to the first BC managed by its own node. This allows the control system 110 to update the first BC to the latest state.
  • each first node 101 each time a certain number of new blocks are added to the first BC managed by its own node, based on the recorded contents of the first BC managed by its own node, Transaction information that has passed the scheduled time can be identified.
  • Each first node 101 can record the specified result in the first BC managed by the own node. As a result, the control system 110 can identify transaction information that has passed the scheduled time appropriately at a predetermined timing.
  • the fixed number can be a number of 2 or more.
  • the control system 110 can reduce the amount of processing.
  • each first node 101 if no recording request is received for a certain period of time, a block containing a scheduled time point for activating dummy transaction information is generated and added to the first BC managed by its own node. can do.
  • This allows the control system 110 to update the first BC without receiving a recording request. As such, the control system 110 can enable consensus building for outdated transaction information.
  • Each first node 101 may have a smart contract specifying transaction information specified by the first node 101 that satisfies a predetermined condition.
  • Each of the first nodes 101 can identify the transaction information past the scheduled point in time based on the recorded contents of the first BC managed by the node using the smart contract. According to each first node 101, if the transaction information is transaction information specified by the first node 101 that satisfies a predetermined condition, the first BC that manages the transaction information at its own node. can be recorded in As a result, the control system 110 can easily implement various processes using smart contracts.
  • the scheduled point in time can be expressed as the point in time of adding a given block to the first BC.
  • the control system 110 can express the scheduled point in time other than the time, and can improve the convenience.
  • control method described in the present embodiment can be realized by executing a prepared program on a computer such as a PC or workstation.
  • the control program described in the present embodiment is recorded in a computer-readable recording medium and executed by being read from the recording medium by a computer.
  • Recording media include a hard disk, flexible disk, CD (Compact Disc)-ROM, MO (Magneto Optical disc), DVD (Digital Versatile Disc), and the like.
  • the control program described in this embodiment may be distributed via a network such as the Internet.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Computer Security & Cryptography (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Human Resources & Organizations (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

それぞれの第1のノード(101)は、取引情報を有効化する予定時点を記録する第1のBCを管理する。それぞれの第1のノード(101)は、自ノードで管理する第1のBCの記録内容に基づいて、予定時点が経過した取引情報を特定する。それぞれの第1のノード(101)は、特定した予定時点が経過した取引情報を示す情報を、自ノードで管理する第1のBCに記録する。情報処理装置(100)は、第1のBCの記録内容に基づいて、所定の条件を満たす第1のノード(101)によって特定された取引情報を選択する。情報処理装置(100)は、選択した取引情報を示す情報を、それぞれの第2のノード(102)に送信する。それぞれの第2のノード(102)は、受信した取引情報を示す情報を含むブロックを生成し、自ノードで管理する第2のBCに追加する。

Description

制御システム、制御プログラム、制御方法、および制御装置
 本発明は、制御システム、制御プログラム、制御方法、および制御装置に関する。
 従来、取引情報が記録されたブロックを連結することにより、取引情報を管理する分散台帳を実現する、ブロックチェーンと呼ばれるリストが存在する。例えば、ブロックチェーンは、分散型金融システムに利用される。この際、金銭授受または権利移転などの取引内容を示す取引情報を、指定した時点を経過してからブロックチェーンに記録するよう、取引情報をブロックチェーンに記録する動作を予約することが望まれる場合がある。
 先行技術としては、例えば、分散台帳システムを形成する複数のノードのうち少なくとも所定のノードが、受け取ったトランザクションの種別が運用スマートコントラクトであるか否かに基づき、運用管理用の運用スマートコントラクトを実行するものがある。
特開2019-028525号公報
 しかしながら、従来技術では、取引情報をブロックチェーンに記録する動作を予約しておくことは難しい。例えば、ブロックチェーンを管理する複数のノードのそれぞれのノードで、時刻を同期することが難しく、タイマー処理を行う外部装置を導入しなければ、取引情報をブロックチェーンに記録する動作を予約しておくことは難しい。
 1つの側面では、本発明は、取引情報をブロックチェーンに記録する動作を予約可能にすることを目的とする。
 1つの実施態様によれば、第1のブロックチェーンネットワークを形成する複数のノードと、第2のブロックチェーンネットワークを形成する1以上のノードと、前記第1のブロックチェーンネットワーク、および、前記第2のブロックチェーンネットワークと連携可能な情報処理装置とを含む制御システムであって、前記複数のノードのそれぞれのノードは、取引情報を有効化する予定時点を記録する第1のブロックチェーンを管理し、自ノードで管理する前記第1のブロックチェーンの記録内容に基づいて、予定時点が経過した取引情報を特定し、特定した結果を自ノードで管理する前記第1のブロックチェーンに記録し、前記情報処理装置は、前記第1のブロックチェーンの記録内容に基づいて、前記複数のノードのうち所定の条件を満たすノードによって特定された取引情報を、前記1以上のノードのそれぞれのノードに送信し、前記1以上のノードのそれぞれのノードは、有効化された取引情報を記録する第2のブロックチェーンを管理し、受信した前記取引情報を含むブロックを生成し、自ノードで管理する前記第2のブロックチェーンに追加する制御システムが提案される。
 一態様によれば、取引情報をブロックチェーンに記録する動作を予約することが可能になる。
図1は、実施の形態にかかる制御方法の一実施例を示す説明図である。 図2は、制御システム110の一例を示す説明図である。 図3は、情報処理装置100のハードウェア構成例を示すブロック図である。 図4は、第1のノード101のハードウェア構成例を示すブロック図である。 図5は、スケジュール取引管理情報500の記憶内容の一例を示す説明図である。 図6は、第2のノード102のハードウェア構成例を示すブロック図である。 図7は、制御システム110の機能的構成例を示すブロック図である。 図8は、制御システム110の動作の一例を示す説明図(その1)である。 図9は、制御システム110の動作の一例を示す説明図(その2)である。 図10は、制御システム110の動作の一例を示す説明図(その3)である。 図11は、制御システム110の動作の一例を示す説明図(その4)である。 図12は、制御システム110の動作の具体例を示す説明図(その1)である。 図13は、制御システム110の動作の具体例を示す説明図(その2)である。 図14は、制御システム110の動作の具体例を示す説明図(その3)である。 図15は、制御システム110の動作の具体例を示す説明図(その4)である。 図16は、全体処理手順の一例を示すフローチャートである。
 以下に、図面を参照して、本発明にかかる制御システム、制御プログラム、制御方法、および制御装置の実施の形態を詳細に説明する。
(実施の形態にかかる制御方法の一実施例)
 図1は、実施の形態にかかる制御方法の一実施例を示す説明図である。情報処理装置100は、ブロックチェーンネットワークと連携可能な、取引情報をブロックチェーンに記録する動作を予約可能にするためのコンピュータである。以下の説明では、ブロックチェーンを「BC(Block Chain)」と表記する場合がある。
 BCネットワークは、BCを管理する。BCネットワークは、1以上のノードによって形成される。例えば、BCネットワークに含まれるそれぞれのノードが、同一のBCを記憶し、監視することにより、BCが管理される。BCは、取引情報が登録されたブロックを連結することにより、取引情報を管理する分散台帳となるリストである。BCネットワークの一例として、パブリック型、コンソーシアム型、または、プライベート型のBCネットワークが存在する。
 取引情報は、例えば、トランザクション(Tx:Transaction)情報と呼ばれる。以下の説明では、トランザクションを「Tx」と表記する場合がある。BCは、例えば、ブロックに登録された取引情報の改ざんが困難である分散台帳技術を実現する。
 ここで、BCは、例えば、分散型金融システムに利用され、債権管理に活用されることが考えられる。債権管理では、金銭授受または権利移転などの取引が、予め定められた時点に行われるよう、取引のスケジュールを決定することが望まれる。権利移転は、例えば、出資金の償還、または、配当支払いなどである。このため、取引内容を示す取引情報を、指定した時点を経過してからBCに記録するよう、取引情報をBCに記録する動作を予約可能にすることが望まれる。
 しかしながら、従来技術では、取引情報をBCに記録する動作を予約しておくことは難しい。例えば、BCを管理する、BCネットワークを形成するそれぞれのノードで、時刻を同期することが難しい。このため、BCネットワークに、タイマー処理を行う外部装置を組み合わせなければ、取引情報をBCに記録する動作を予約しておくことは難しい。
 例えば、Ethereum Alarm Clockと呼ばれる手法が考えられる。この手法については、例えば、下記参考文献1などを参照することができる。この手法では、タイマー処理を行う外部装置で、タイマーを保持しておくことになり、処理負担の増大化を招くという問題がある。
 参考文献1 : “ETHEREUM ALARM CLOCK”、[online]、[令和3年2月16日検索]、インターネット< URL :https://www.ethereum-alarm-clock.com/>
 そこで、本実施の形態では、取引情報をBCに記録する動作を予約可能にすることができる制御方法について説明する。
 図1において、第1のBCネットワークを形成する複数の第1のノード101と、第2のBCネットワークを形成する1以上の第2のノード102と、情報処理装置100とを含む制御システム110が存在する。情報処理装置100は、第1のBCネットワークおよび第2のBCネットワークと連携可能である。
 (1-1)それぞれの第1のノード101は、取引情報を有効化する予定時点を記録する第1のBCを管理する。予定時点は、ある取引が実行されたことに応じて当該取引にかかる取引情報を有効化する予定時点である。それぞれの第1のノード101は、自ノードで管理する第1のBCの記録内容に基づいて、予定時点が経過した取引情報を特定する。
 それぞれの第1のノード101は、特定した予定時点が経過した取引情報を示す情報を、自ノードで管理する第1のBCに記録する。取引情報を示す情報は、例えば、取引情報そのものである。それぞれの第1のノード101は、自ノードで管理する第1のBCの記録内容を、情報処理装置100に配信する。それぞれの第1のノード101の処理は、例えば、スマートコントラクトによって実現される。以下の説明では、スマートコントラクトを「SC(Smart Contract)」と表記する場合がある。
 (1-2)情報処理装置100は、第1のBCの記録内容を取得する。情報処理装置100は、第1のBCの記録内容に基づいて、合意形成を行い、所定の条件を満たす第1のノード101によって特定された取引情報を選択する。所定の条件は、例えば、第1のノード101の数である。所定の条件は、例えば、第1のノード101の属性に関する条件であってもよい。情報処理装置100は、例えば、第1のBCの記録内容に基づいて、合意形成を行い、所定の数以上の第1のノード101によって共通して特定された取引情報を選択する。情報処理装置100は、選択した取引情報を示す情報を、それぞれの第2のノード102に送信する。
 (1-3)それぞれの第2のノード102は、有効化された取引情報を記録する第2のBCを管理する。それぞれの第2のノード102は、情報処理装置100から、取引情報を示す情報を受信する。それぞれの第2のノード102は、受信した取引情報を示す情報を含むブロックを生成し、自ノードで管理する第2のBCに追加する。
 これにより、制御システム110は、取引情報を第2のBCに記録する動作を予約可能にすることができる。例えば、情報処理装置100は、第1のBCネットワークと、第2のBCネットワークとの中間に介在し、第1のBCに記録された予定時点に基づいて、第2のBCに取引情報を示す情報が記録されるタイミングを制御することができる。このため、情報処理装置100は、第1のBCネットワークと協働し、取引情報を第2のBCに記録する動作を予約可能にすることができる。
 また、情報処理装置100は、所定の条件を満たす第1のノード101によって特定された取引情報を選択し、第2のBCに記録する対象とすることができる。情報処理装置100は、例えば、所定の数以上の第1のノード101によって特定された取引情報を選択し、第2のBCに記録する対象とすることができる。このため、情報処理装置100は、いずれかの第1のノード101で誤って特定された取引情報を、第2のBCに記録する対象とすることを防止することができ、セキュリティの向上を図ることができる。
 ここでは、取引情報を示す情報が、取引情報そのものである場合について説明したが、これに限らない。例えば、取引情報を示す情報が、取引情報を識別する識別情報である場合があってもよい。例えば、取引情報を示す情報が、取引情報から得られる特徴値である場合があってもよい。具体的には、取引情報を示す情報が、取引情報から得られるハッシュ値である場合があってもよい。
(制御システム110の一例)
 次に、図2を用いて、図1に示した情報処理装置100と、第1のBCネットワーク201と、第2のBCネットワーク202とを適用した、制御システム110の一例について説明する。
 図2は、制御システム110の一例を示す説明図である。図2において、制御システム110は、情報処理装置100と、第1のBCネットワーク201と、第2のBCネットワーク202と、クライアント装置203とを含む。第1のBCネットワーク201は、複数の第1のノード101によって形成される。第2のBCネットワーク202は、1以上の第2のノード102によって形成される。
 制御システム110において、情報処理装置100と、第1のBCネットワーク201とは、有線または無線のネットワーク210を介して接続される。ネットワーク210は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。また、制御システム110において、情報処理装置100と、第2のBCネットワーク202とは、ネットワーク210を介して接続される。また、制御システム110において、第1のBCネットワーク201と、クライアント装置203とは、ネットワーク210を介して接続される。
 情報処理装置100は、第1のBCネットワーク201および第2のBCネットワーク202と連携可能なコンピュータである。情報処理装置100は、取引情報を有効化する予定時点を記録する第1のBC211の記録内容を取得する。予定時点は、ある取引が実行されたことに応じて当該取引にかかる取引情報を有効化する予定時点である。情報処理装置100は、第1のBC211の記録内容に基づいて、合意形成を行い、所定の条件を満たす第1のノード101によって特定された取引情報を選択する。情報処理装置100は、選択した取引情報を示す情報を、それぞれの第2のノード102に送信する。情報処理装置100は、例えば、サーバ、または、PC(Personal Computer)などである。
 第1のノード101は、第1のBC211を管理するコンピュータである。第1のノード101は、取引情報を示す情報と、取引情報を有効化する予定時点とを、クライアント装置203から受信し、第1のBC211に記録する。取引情報を示す情報は、例えば、取引情報そのものである。第1のノード101は、自ノードで管理する第1のBC211の記録内容に基づいて、予定時点が経過した取引情報を特定する。第1のノード101は、特定した予定時点が経過した取引情報を示す情報を、第1のBC211に記録する。第1のノード101の処理は、例えば、スマートコントラクトによって実現される。第1のノード101は、例えば、サーバ、または、PCなどである。
 第2のノード102は、有効化された取引情報を記録する第2のBC212を管理するコンピュータである。第2のノード102は、情報処理装置100から、取引情報を示す情報を受信する。第2のノード102は、受信した取引情報を示す情報を、自ノードで管理する第2のBC212に記録する。第2のノード102は、例えば、受信した取引情報を示す情報を含むブロックを生成し、自ノードで管理する第2のBC212に追加する。第2のノード102の処理は、例えば、スマートコントラクトによって実現される。第2のノード102は、例えば、サーバ、または、PCなどである。
 クライアント装置203は、ある取引の実行者によって用いられるコンピュータである。クライアント装置203は、実行者の操作入力に基づき、ある取引にかかる取引情報を示す情報と、取引情報を有効化する予定時点とを、それぞれの第1のノード101に送信する。クライアント装置203は、例えば、PC、タブレット端末、スマートフォン、または、ウェアラブル端末などである。制御システム110は、例えば、分散型金融システムに適用される。情報処理装置100が、いずれかの第1のノード101である場合があってもよい。
(情報処理装置100のハードウェア構成例)
 次に、図3を用いて、情報処理装置100のハードウェア構成例について説明する。
 図3は、情報処理装置100のハードウェア構成例を示すブロック図である。図3において、情報処理装置100は、CPU(Central Processing Unit)301と、メモリ302と、ネットワークI/F(Interface)303と、記録媒体I/F304と、記録媒体305とを有する。また、各構成部は、バス300によってそれぞれ接続される。
 ここで、CPU301は、情報処理装置100の全体の制御を司る。メモリ302は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることにより、コーディングされている処理をCPU301に実行させる。
 ネットワークI/F303は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F303は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F303は、例えば、モデムやLANアダプタなどである。
 記録媒体I/F304は、CPU301の制御に従って記録媒体305に対するデータのリード/ライトを制御する。記録媒体I/F304は、例えば、ディスクドライブ、SSD(Solid State Drive)、USB(Universal Serial Bus)ポートなどである。記録媒体305は、記録媒体I/F304の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体305は、例えば、ディスク、半導体メモリ、USBメモリなどである。記録媒体305は、情報処理装置100から着脱可能であってもよい。
 情報処理装置100は、上述した構成部の他、例えば、キーボード、マウス、ディスプレイ、プリンタ、スキャナ、マイク、スピーカーなどを有してもよい。また、情報処理装置100は、記録媒体I/F304や記録媒体305を複数有していてもよい。また、情報処理装置100は、記録媒体I/F304や記録媒体305を有していなくてもよい。
(第1のノード101のハードウェア構成例)
 次に、図4を用いて、第1のノード101のハードウェア構成例について説明する。
 図4は、第1のノード101のハードウェア構成例を示すブロック図である。図4において、第1のノード101は、CPU401と、メモリ402と、ネットワークI/F403と、記録媒体I/F404と、記録媒体405とを有する。また、各構成部は、バス400によってそれぞれ接続される。
 ここで、CPU401は、第1のノード101の全体の制御を司る。メモリ402は、例えば、ROM、RAMおよびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU401のワークエリアとして使用される。メモリ402に記憶されるプログラムは、CPU401にロードされることにより、コーディングされている処理をCPU401に実行させる。
 メモリ402は、具体的には、スマートコントラクト410を記憶する。スマートコントラクト410は、取引情報を有効化する予定時点を記録する第1のBC211を管理する。スマートコントラクト410は、取引情報を示す情報と、取引情報を有効化する予定時点とを、クライアント装置203から受信し、第1のBC211に記録する。スマートコントラクト410は、自ノードで管理する第1のBC211の記録内容に基づいて、予定時点が経過した取引情報を特定し、特定した結果を、第1のBC211に記録する。
 ネットワークI/F403は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F403は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F403は、例えば、モデムやLANアダプタなどである。
 記録媒体I/F404は、CPU401の制御に従って記録媒体405に対するデータのリード/ライトを制御する。記録媒体I/F404は、例えば、ディスクドライブ、SSD、USBポートなどである。記録媒体405は、記録媒体I/F404の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体405は、例えば、第1のBC211を記憶する。第1のBC211は、例えば、図5に後述するスケジュール取引管理情報500を記憶する。記録媒体405は、例えば、ディスク、半導体メモリ、USBメモリなどである。記録媒体405は、第1のノード101から着脱可能であってもよい。
 第1のノード101は、上述した構成部の他、例えば、キーボード、マウス、ディスプレイ、プリンタ、スキャナ、マイク、スピーカーなどを有してもよい。また、第1のノード101は、記録媒体I/F404や記録媒体405を複数有していてもよい。また、第1のノード101は、記録媒体I/F404や記録媒体405を有していなくてもよい。
(スケジュール取引管理情報500の記憶内容)
 次に、図5を用いて、スケジュール取引管理情報500の記憶内容の一例について説明する。スケジュール取引管理情報500は、例えば、図4に示した情報処理装置100のメモリ402や記録媒体405などの記憶領域により実現される。
 図5は、スケジュール取引管理情報500の記憶内容の一例を示す説明図である。図5に示すように、スケジュール取引管理情報500は、エスクロー取引refと、スケジュール取引の内容と、スケジュールする時刻と、実行キャンセルの可否と、スケジュール実行の条件とのフィールドを有する。スケジュール取引は、実行することが予約された取引である。
 エスクロー取引refのフィールドには、スケジュール取引で参照されるエスクロー取引を識別する識別情報が設定される。エスクロー取引は、例えば、スケジュール取引で扱う金銭を、予め第三者に預けておく取引である。スケジュール取引の内容のフィールドには、上記エスクロー取引の内容を参照して実行される上記スケジュール取引の内容が設定される。スケジュール取引の内容は、例えば、金銭を送信する取引の内容を示し、具体的には、送金額、および、送金額分の金銭を送信する宛先などを示す。
 スケジュールする時刻のフィールドには、上記スケジュール取引を実行する予定時刻が設定される。実行キャンセルの可否のフィールドには、上記スケジュール取引の実行をキャンセル可能であるか否かを示す情報が設定される。スケジュール実行の条件のフィールドには、上記スケジュール取引を実行する条件が設定される。上記条件は、例えば、所定の数以上の第1のノード101によって、上記予定時刻を経過したと判定されることである。上記条件は、スケジュール取引ごとに異なっていてもよい。
(第2のノード102のハードウェア構成例)
 次に、図6を用いて、第2のノード102のハードウェア構成例について説明する。
 図6は、第2のノード102のハードウェア構成例を示すブロック図である。図6において、第2のノード102は、CPU601と、メモリ602と、ネットワークI/F603と、記録媒体I/F604と、記録媒体605とを有する。また、各構成部は、バス600によってそれぞれ接続される。
 ここで、CPU601は、第2のノード102の全体の制御を司る。メモリ602は、例えば、ROM、RAMおよびフラッシュROMなどを有する。具体的には、例えば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU601のワークエリアとして使用される。メモリ602に記憶されるプログラムは、CPU601にロードされることにより、コーディングされている処理をCPU601に実行させる。
 メモリ602は、具体的には、スマートコントラクト610を記憶する。スマートコントラクト610は、有効化された取引情報を記録する第2のBC212を管理する。スマートコントラクト610は、情報処理装置100から、取引情報を示す情報を受信する。スマートコントラクト610は、受信した取引情報を示す情報を含むブロックを生成し、自ノードで管理する第2のBC212に追加する。
 ネットワークI/F603は、通信回線を通じてネットワーク210に接続され、ネットワーク210を介して他のコンピュータに接続される。そして、ネットワークI/F603は、ネットワーク210と内部のインターフェースを司り、他のコンピュータからのデータの入出力を制御する。ネットワークI/F603は、例えば、モデムやLANアダプタなどである。
 記録媒体I/F604は、CPU601の制御に従って記録媒体605に対するデータのリード/ライトを制御する。記録媒体I/F604は、例えば、ディスクドライブ、SSD、USBポートなどである。記録媒体605は、記録媒体I/F604の制御で書き込まれたデータを記憶する不揮発メモリである。記録媒体605は、例えば、第2のBC212を記憶する。記録媒体605は、例えば、ディスク、半導体メモリ、USBメモリなどである。記録媒体605は、第2のノード102から着脱可能であってもよい。
 第2のノード102は、上述した構成部の他、例えば、キーボード、マウス、ディスプレイ、プリンタ、スキャナ、マイク、スピーカーなどを有してもよい。また、第2のノード102は、記録媒体I/F604や記録媒体605を複数有していてもよい。また、第2のノード102は、記録媒体I/F604や記録媒体605を有していなくてもよい。
(制御システム110の機能的構成例)
 次に、図7を用いて、制御システム110の機能的構成例について説明する。
 図7は、制御システム110の機能的構成例を示すブロック図である。図7において、制御システム110は、第1のBCネットワーク201を形成する複数の第1のノード101と、第2のBCネットワーク202を形成する1以上の第2のノード102と、情報処理装置100とを含む。
 第1のノード101は、第1記憶部700と、第1取得部701と、第1記録部702と、特定部703と、第1出力部704とを含む。第1記憶部700は、例えば、図4に示したメモリ402や記録媒体405などの記憶領域によって実現される。以下では、第1記憶部700が、第1のノード101に含まれる場合について説明するが、これに限らない。例えば、第1記憶部700が、第1のノード101とは異なる装置に含まれ、第1記憶部700の記憶内容が第1のノード101から参照可能である場合があってもよい。
 第1取得部701~第1出力部704は、制御部の一例として機能する。第1取得部701~第1出力部704は、具体的には、例えば、図4に示したメモリ402や記録媒体405などの記憶領域に記憶されたプログラムをCPU401に実行させることにより、または、ネットワークI/F403により、その機能を実現する。各機能部の処理結果は、例えば、図4に示したメモリ402や記録媒体405などの記憶領域に記憶される。
 第1記憶部700は、各機能部の処理において参照され、または更新される各種情報を記憶する。第1記憶部700は、取引情報を有効化する予定時点を記録する第1のBC211を記憶する。取引情報は、例えば、ある取引の内容を示す情報である。取引は、例えば、入金、または、送金などである。有効化は、例えば、取引情報をアクティブにすることである。有効化は、例えば、取引情報が示す取引を実行することに対応する。
 予定時点は、例えば、時刻形式によって表される。予定時点は、例えば、第1のBC211に所定のブロックが追加された追加時点によって表される。所定のブロックは、例えば、第1のBC211の先頭からN番目のブロックである。追加時点は、例えば、ブロック番号Nによって表される。
 第1のBC211は、例えば、取引情報を有効化する予定時点を記録するブロックを連結して形成される。第1のBC211は、具体的には、取引情報を示す情報と、取引情報を有効化する予定時点とを対応付けて記録するブロックを連結して形成される。ブロックは、例えば、さらに、予定時点を経過した取引情報を示す情報を記録する。所定の条件は、例えば、ノードの所定の数である。所定の条件は、取引情報ごとに可変であってもよい。所定の条件は、ノードのBCネットワークへの参加時間が長いことを含んでもよい。所定の条件は、ノードの信頼性が高いことを含んでもよい。
 また、第1記憶部700は、取引情報の予定時点を、第1のBC211に記録するスマートコントラクトを記憶する。また、第1記憶部700は、予定時点が経過した取引情報を特定するスマートコントラクトを記憶する。
 第1取得部701は、各機能部の処理に用いられる各種情報を取得する。第1取得部701は、取得した各種情報を、第1記憶部700に記憶し、または、各機能部に出力する。また、第1取得部701は、第1記憶部700に記憶しておいた各種情報を、各機能部に出力してもよい。第1取得部701は、例えば、利用者の操作入力に基づき、各種情報を取得する。第1取得部701は、例えば、第1のノード101とは異なる装置から、各種情報を受信してもよい。
 第1取得部701は、いずれかの取引情報を有効化する予定時点を記録する記録要求を受け付ける。記録要求は、例えば、有効化する対象となるいずれかの取引情報を示す情報と、当該取引情報を有効化する予定時点とを含む。第1取得部701は、例えば、記録要求をクライアント装置203から受信することにより、記録要求を受け付ける。
 第1取得部701は、いずれかの取引情報を有効化する予定時点を取り消す取消要求を取得する。取消要求は、例えば、予定時点を取り消すいずれかの取引情報を示す情報を含む。第1取得部701は、例えば、取消要求をクライアント装置203から受信することにより、取消要求を受け付ける。
 第1取得部701は、いずれかの機能部の処理を開始する開始トリガーを受け付けてもよい。開始トリガーは、例えば、利用者による所定の操作入力があったことである。開始トリガーは、例えば、他のコンピュータから、所定の情報を受信したことであってもよい。開始トリガーは、例えば、いずれかの機能部が所定の情報を出力したことであってもよい。
 第1取得部701は、例えば、記録要求、または、取消要求を受け付けたことを、第1記録部702の処理を開始する開始トリガーとして受け付ける。第1取得部701は、例えば、第1記録部702が第1のBC211を更新したことを、特定部703の処理を開始する開始トリガーとして受け付ける。第1取得部701は、例えば、定期的に発生する所定の信号が発生したことを、特定部703の処理を開始する開始トリガーとして受け付ける。
 第1記録部702は、第1のBC211を管理する。第1記録部702は、例えば、記録要求を受け付けた場合、いずれかの取引情報を有効化する予定時点を、第1のBC211に記録する。第1記録部702は、具体的には、有効化する対象となるいずれかの取引情報を示す情報と、当該取引情報を有効化する予定時点と対応付けた対応情報を含むブロックを生成し、第1のBC211に追加する。生成は、第1のノード101以外のコンピュータに依頼することにより、当該コンピュータで実行されてもよい。これにより、第1記録部702は、第1のBC211を適切に更新することができ、第1のBC211を管理することができる。
 第1記録部702は、例えば、取消要求を受け付けた場合、いずれかの取引情報を有効化する予定時点を取り消すことを示す取消情報を、第1のBC211に記録する。第1記録部702は、具体的には、いずれかの取引情報を有効化する予定時点を取り消すことを示す取消情報を含むブロックを生成し、第1のBC211に追加する。これにより、第1記録部702は、取引情報を有効化する予定時点そのものを第1のBC211から削除せずとも、当該取引情報を有効化する予定時点を取り消すことができ、利便性の向上を図ることができる。
 第1記録部702は、例えば、一定の期間に記録要求を受け付けない場合、ダミーの取引情報を有効化する予定時点を、第1のBC211に記録する。第1記録部702は、具体的には、ダミーの取引情報を有効化する予定時点を含むブロックを生成し、第1のBC211に追加する。これにより、第1記録部702は、記録要求を受け付けずとも、特定部703の処理を開始する開始トリガーを発生させることができる。
 特定部703は、第1のBC211の記録内容に基づいて、予定時点が経過した取引情報を特定する。特定部703の処理は、例えば、スマートコントラクトを利用して実現される。特定部703は、例えば、第1のBC211に新たなブロックが一定の数分追加される都度、第1のBC211の記録内容に基づいて、予定時点が経過した取引情報を特定する。一定の数は、例えば、1、または、2以上の数である。これにより、特定部703は、一定の数が1であれば、ある予定時点から、当該予定時点が経過したと判定するまでの遅れを抑制することができる。特定部703は、一定の数が2以上であれば、処理量の低減化を図ることができる。
 特定部703は、例えば、第1のBC211の記録内容に基づいて、予定時点が取り消されたいずれかの取引情報以外で、予定時点が経過した取引情報を特定する。特定部703は、具体的には、第1のBC211に新たなブロックが一定の数分追加される都度、第1のBC211の記録内容に基づいて、予定時点が取り消されたいずれかの取引情報以外で、予定時点が経過した取引情報を特定する。これにより、特定部703は、予定時点が取り消されたいずれかの取引情報を除外し、予定時点を経過した取引情報を適切に特定することができる。
 特定部703は、特定した結果を、第1のBC211に記録する。特定部703は、例えば、特定部703で特定した取引情報を示す情報を、第1のBC211に記録する。これにより、特定部703は、所定の条件を満たす第1のノード101によって特定された取引情報を示す情報を、情報処理装置100が参照可能にすることができる。
 第1出力部704は、少なくともいずれかの機能部の処理結果を出力する。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、ネットワークI/F403による外部装置への送信、または、メモリ402や記録媒体405などの記憶領域への記憶である。これにより、第1出力部704は、少なくともいずれかの機能部の処理結果を利用者に通知可能にし、第1のノード101の利便性の向上を図ることができる。
 第1出力部704は、例えば、第1のBC211の記録内容を出力する。第1出力部704は、具体的には、第1のBC211の記録内容を、情報処理装置100に送信する。これにより、第1出力部704は、第1のBC211の記録内容を、情報処理装置100が把握可能にすることができる。
 第2のノード102は、第2記憶部710と、第2取得部711と、第2記録部712と、第2出力部713とを含む。第2記憶部710は、例えば、図6に示したメモリ602や記録媒体605などの記憶領域によって実現される。以下では、第2記憶部710が、第2のノード102に含まれる場合について説明するが、これに限らない。例えば、第2記憶部710が、第2のノード102とは異なる装置に含まれ、第2記憶部710の記憶内容が第2のノード102から参照可能である場合があってもよい。
 第2取得部711~第2出力部713は、制御部の一例として機能する。第2取得部711~第2出力部713は、具体的には、例えば、図6に示したメモリ602や記録媒体605などの記憶領域に記憶されたプログラムをCPU601に実行させることにより、または、ネットワークI/F603により、その機能を実現する。各機能部の処理結果は、例えば、図6に示したメモリ602や記録媒体605などの記憶領域に記憶される。
 第2記憶部710は、各機能部の処理において参照され、または更新される各種情報を記憶する。第2記憶部710は、有効化された取引情報を記録する第2のBC212を記憶する。第2のBC212は、例えば、有効化された取引情報を記録するブロックを連結して形成される。また、第2記憶部710は、有効化された取引情報を、第2のBC212に記録するスマートコントラクトを記憶する。
 第2取得部711は、各機能部の処理に用いられる各種情報を取得する。第2取得部711は、取得した各種情報を、第2記憶部710に記憶し、または、各機能部に出力する。また、第2取得部711は、第2記憶部710に記憶しておいた各種情報を、各機能部に出力してもよい。第2取得部711は、例えば、利用者の操作入力に基づき、各種情報を取得する。第2取得部711は、例えば、第2のノード102とは異なる装置から、各種情報を受信してもよい。第2取得部711は、例えば、有効化された取引情報を、情報処理装置100から受信する。第2取得部711は、例えば、有効化された取引情報を示す情報を、情報処理装置100から受信してもよい。
 第2取得部711は、いずれかの機能部の処理を開始する開始トリガーを受け付けてもよい。開始トリガーは、例えば、利用者による所定の操作入力があったことである。開始トリガーは、例えば、他のコンピュータから、所定の情報を受信したことであってもよい。開始トリガーは、例えば、いずれかの機能部が所定の情報を出力したことであってもよい。第2取得部711は、例えば、有効化された取引情報を受信したことを、第2記録部712の処理を開始する開始トリガーとして受け付ける。第2取得部711は、例えば、有効化された取引情報を示す情報を受信したことを、第2記録部712の処理を開始する開始トリガーとして受け付ける。
 第2記録部712は、有効化された取引情報を記録する第2のBC212を管理する。第2記録部712は、例えば、受信した取引情報を含むブロックを生成し、第2のBC212に追加する。第2記録部712は、例えば、受信した取引情報を示す情報を含むブロックを生成し、第2のBC212に追加する。第2記録部712は、例えば、受信した取引情報を示す情報に基づいて、当該取引情報を取得し、取得した当該取引情報を含むブロックを生成し、第2のBC212に追加する。これにより、第2記録部712は、第2のBC212を適切に更新することができる。
 第2出力部713は、少なくともいずれかの機能部の処理結果を出力する。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、ネットワークI/F603による外部装置への送信、または、メモリ602や記録媒体605などの記憶領域への記憶である。これにより、第2出力部713は、少なくともいずれかの機能部の処理結果を利用者に通知可能にし、第2のノード102の利便性の向上を図ることができる。第2出力部713は、例えば、第2のBC212の記録内容を出力する。
 情報処理装置100は、第3記憶部720と、第3取得部721と、選択部722と、第3出力部723とを含む。第3記憶部720は、例えば、図6に示したメモリ602や記録媒体605などの記憶領域によって実現される。以下では、第3記憶部720が、情報処理装置100に含まれる場合について説明するが、これに限らない。例えば、第3記憶部720が、情報処理装置100とは異なる装置に含まれ、第3記憶部720の記憶内容が情報処理装置100から参照可能である場合があってもよい。
 第3取得部721~第3出力部723は、制御部の一例として機能する。第3取得部721~第3出力部723は、具体的には、例えば、図6に示したメモリ602や記録媒体605などの記憶領域に記憶されたプログラムをCPU601に実行させることにより、または、ネットワークI/F603により、その機能を実現する。各機能部の処理結果は、例えば、図6に示したメモリ602や記録媒体605などの記憶領域に記憶される。
 第3記憶部720は、各機能部の処理において参照され、または更新される各種情報を記憶する。第3記憶部720は、第1のBC211の記録内容を記憶する。第3記憶部720は、例えば、第1のノード101によって特定された取引情報を示す情報が記録された第1のBC211の記録内容を記憶する。
 第3取得部721は、各機能部の処理に用いられる各種情報を取得する。第3取得部721は、取得した各種情報を、第3記憶部720に記憶し、または、各機能部に出力する。また、第3取得部721は、第3記憶部720に記憶しておいた各種情報を、各機能部に出力してもよい。第3取得部721は、例えば、利用者の操作入力に基づき、各種情報を取得する。第3取得部721は、例えば、情報処理装置100とは異なる装置から、各種情報を受信してもよい。
 第3取得部721は、例えば、第1のBC211の記録内容を取得する。第3取得部721は、具体的には、第1のBC211の記録内容を、それぞれの第1のノード101から受信する。第3取得部721は、いずれかの機能部の処理を開始する開始トリガーを受け付けてもよい。開始トリガーは、例えば、利用者による所定の操作入力があったことである。開始トリガーは、例えば、他のコンピュータから、所定の情報を受信したことであってもよい。開始トリガーは、例えば、いずれかの機能部が所定の情報を出力したことであってもよい。第3取得部721は、例えば、第1のBC211の記録内容を取得したことを、選択部722の処理を開始する開始トリガーとして受け付ける。
 選択部722は、第1のBC211の記録内容に基づいて、合意形成を行い、複数の第1のノード101のうち所定の条件を満たす第1のノード101によって特定された取引情報を選択する。選択部722は、例えば、第1のBC211の記録内容に基づいて、合意形成を行い、複数の第1のノード101のうち所定の数以上の第1のノード101によって共通して特定された取引情報を選択する。これにより、選択部722は、非中央集権型で、予定時点が経過した取引情報を選択することができ、セキュリティの向上を図ることができる。
 また、特定部703は、具体的には、第1のBC211の記録内容に基づいて、複数の第1のノード101のうち所定の属性を有する第1のノード101によって特定された取引情報を選択してもよい。また、特定部703は、具体的には、第1のBC211の記録内容に基づいて、複数の第1のノード101のうち所定の条件を満たす第1のノード101によって特定された取引情報が、さらに、実行の条件を満たすか否かを判定してもよい。そして、特定部703は、実行の条件を満たす取引情報を選択してもよい。
 第3出力部723は、少なくともいずれかの機能部の処理結果を出力する。出力形式は、例えば、ディスプレイへの表示、プリンタへの印刷出力、ネットワークI/F603による外部装置への送信、または、メモリ602や記録媒体605などの記憶領域への記憶である。これにより、第3出力部723は、少なくともいずれかの機能部の処理結果を利用者に通知可能にし、情報処理装置100の利便性の向上を図ることができる。第3出力部723は、選択部722が選択した取引情報を示す情報を、それぞれの第2のノード102に送信する。これにより、第3出力部723は、第2のBC212を更新可能にすることができる。
(制御システム110の動作の一例)
 次に、図8~図11を用いて、制御システム110の動作の一例について説明する。
 図8~図11は、制御システム110の動作の一例を示す説明図である。図8において、(8-1)クライアント装置203は、ユーザの操作入力に基づき、資金の預託を行うエスクロー取引にかかるエスクロー取引情報を、取引実行BCネットワークに送信する。クライアント装置203は、例えば、資金の預託を行うエスクロー取引にかかるエスクロー取引情報を、取引実行BCネットワークを形成するそれぞれの記録ノード802に送信する。それぞれの記録ノード802は、所定のタイミングで、受信したエスクロー取引情報を含むブロックを生成し、取引実行BC820に追加する。
 (8-2)いずれかの記録ノード802は、取引実行BC820に追加したブロックに記録したエスクロー取引情報を、スケジュール管理BCネットワークに送信する。いずれかの記録ノード802は、例えば、取引実行BC820に追加したブロックに記録したエスクロー取引情報を、スケジュール管理BCネットワークを形成するそれぞれの承認ノード801に送信する。いずれかの記録ノード802は、例えば、エスクロー取引情報を、スケジュール管理BCネットワークを形成するいずれかの承認ノード801に送信することにより、エスクロー取引情報を当該承認ノード801から他の承認ノード801に配信させてもよい。
 (8-3)クライアント装置203は、ユーザの操作入力に基づき、エスクロー取引の内容を参照して実行するスケジュール取引の内容を示すスケジュール取引情報を有効化する予定時刻の登録要求を、スケジュール管理BCネットワークに送信する。登録要求は、例えば、スケジュール取引情報と、スケジュール取引情報を有効化する予定時刻とを含む。登録要求は、例えば、さらに、エスクロー取引情報を識別する識別情報を含んでもよい。登録要求は、具体的には、スケジュール取引管理情報500を含む。
 クライアント装置203は、例えば、登録要求を、スケジュール管理BCネットワークを形成するそれぞれの承認ノード801に送信する。クライアント装置203は、例えば、登録要求を、スケジュール管理BCネットワークを形成するいずれかの承認ノード801に送信することにより、当該登録要求を、当該承認ノード801から他の承認ノード801に配信させてもよい。
 それぞれの承認ノード801は、所定のタイミングで、受信した登録要求に対応するスケジュール取引情報と、当該スケジュール取引情報を有効化する予定時刻とを含むブロックを生成し、スケジュール管理BC810に記録する。それぞれの承認ノード801は、例えば、所定のタイミングで、受信した登録要求に対応するスケジュール取引管理情報500を含むブロックを生成し、スケジュール管理BC810に記録する。これにより、それぞれの承認ノード801は、それぞれのスケジュール取引情報を有効化する計画800を、ローカルデータベースとして記憶することができる。次に、図9の説明に移行する。
 図9において、(9-1)クライアント装置203は、ユーザの操作入力に基づき、スケジュール取引情報を有効化する予定時刻を取り消す取消要求を、スケジュール管理BCネットワークに送信する。取消要求は、例えば、予定時刻を取り消す対象となるスケジュール取引情報を識別する識別情報を含む。
 クライアント装置203は、例えば、取消要求を、スケジュール管理BCネットワークを形成するそれぞれの承認ノード801に送信する。クライアント装置203は、例えば、取消要求を、スケジュール管理BCネットワークを形成するいずれかの承認ノード801に送信することにより、当該取消要求を、当該承認ノード801から他の承認ノード801に配信させてもよい。
 それぞれの承認ノード801は、所定のタイミングで、受信した取消要求に対応する、予定時刻を取り消す対象となるスケジュール取引情報を識別する識別情報を含むブロックを生成し、スケジュール管理BC810に記録する。これにより、それぞれの承認ノード801は、予定時刻そのものをスケジュール管理BC810から削除せずとも、スケジュール取引情報を有効化する予定時点を取り消すことができ、利便性の向上を図ることができる。次に、図10の説明に移行する。
 図10において、(10-1)それぞれの承認ノード801は、登録要求を一定時間受信しない場合、ダミー取引情報を含むブロックを生成し、スケジュール管理BC810に記録する。これにより、それぞれの承認ノード801は、予定時刻を経過したスケジュール取引情報が存在するか否かを判定するトリガーを発生させることができ、適切なタイミングで、予定時刻を経過したスケジュール取引情報を特定可能にすることができる。次に、図11の説明に移行する。
 図11において、(11-1)それぞれの承認ノード801は、ブロックを一定回数生成する都度、スケジュール管理BC810の記録内容を参照して、予定時刻を経過したスケジュール取引情報を特定する。一定回数は、例えば、1回である。それぞれの承認ノード801は、特定したスケジュール取引情報を有効化する予定時刻を経過したため、特定したスケジュール取引情報を有効化することを承認することを示す承認情報を生成し、スケジュール管理BC810に記録する。
 承認情報は、例えば、スケジュール取引情報を有効化することの承認を示す署名を含む。承認は、スケジュール取引情報にかかるスケジュール取引を実行することの承認に対応する。承認情報は、例えば、特定したスケジュール取引情報と、当該スケジュール取引情報を有効化することの承認を示す署名とを含む。
 それぞれの承認ノード801は、例えば、生成したブロックに記録された、それぞれのスケジュール取引情報を有効化する予定時刻が経過したか否かを判定する。また、それぞれの承認ノード801は、例えば、生成したブロック以前の他ブロックに記録された、まだ有効化されていないそれぞれのスケジュール取引情報を有効化する予定時刻が経過したか否かを判定する。それぞれの承認ノード801は、例えば、判定した結果に基づいて、予定時刻が経過したスケジュール取引情報を特定する。それぞれの承認ノード801は、例えば、特定した結果に基づいて、承認情報を生成し、スケジュール管理BC810に記録する。
 (11-2)情報処理装置100は、それぞれの承認ノード801から、スケジュール管理BC810を受信する。情報処理装置100は、受信したスケジュール管理BC810に記録された承認情報に基づいて、合意形成を行い、一定数以上の承認ノード801で、有効化することが承認されているスケジュール取引情報を選択する。
 選択したスケジュール取引情報は、記録ノード802に送信されることにより、当該スケジュール取引情報に含まれるエスクロー取引refで特定されるエスクロー取引によって預託された所定の送金額分の資金を、設定された宛先に送信するスケジュール取引を実現することになる。また、有効化する予定時刻が取り消され、スケジュール取引情報が選択されなかった場合、エスクロー取引によって預託された所定の送金額分の資金を、設定された宛先に送信するスケジュール取引は実行されなくなる。この際、エスクロー取引による預託も取り消されてもよい。
 情報処理装置100は、選択したスケジュール取引情報を、取引実行BCネットワークに送信する。情報処理装置100は、例えば、選択したスケジュール取引情報を、取引実行BCネットワークを形成するそれぞれの記録ノード802に送信する。それぞれの記録ノード802は、所定のタイミングで、受信したスケジュール取引情報を含むブロックを生成し、取引実行BC820に追加する。これにより、制御システム110は、スケジュール取引情報を有効化する動作を予約可能にすることができる。
(制御システム110の動作の具体例)
 次に、図12~図15を用いて、制御システム110の動作の具体例について説明する。
 図12~図15は、制御システム110の動作の具体例を示す説明図である。図12において、承認ノード801は、受付手段1201と、記録手段1202と、判定手段1203とを有する。情報処理装置100は、発行手段1204を有する。
 承認ノード801は、スケジュール管理BC810を記憶する。また、承認ノード801は、スケジュール管理BC810に基づいて、スケジュール取引情報を有効化する予定時刻を管理するスケジュール管理台帳を記憶する。スケジュール管理台帳は、例えば、ローカルデータベースとして記憶される。スケジュール管理台帳は、例えば、予定時刻ごとに、当該予定時刻に有効化するスケジュール取引情報を対応付けて示す。スケジュール管理台帳は、有効化済みのスケジュール取引情報を特定可能に示してもよい。
 承認ノード801は、10分ごとに、スケジュール管理BC810に追加するブロックを生成する。受付手段1201は、スケジュール取引情報を有効化する予定時刻を含む登録要求を受け付ける。登録要求は、スケジュール取引管理情報500を含む。
 受付手段1201は、ブロックが生成される都度、直前の10分の間に受け付けたそれぞれの登録要求に含まれるスケジュール取引管理情報500を、スケジュール管理BC810に追加するブロックに含める。判定手段1203は、ブロックが生成される都度、スケジュール管理台帳に基づいて、予定時刻を経過したスケジュール取引情報を特定する。
 判定手段1203は、特定したスケジュール取引情報を有効化することの承認を示す署名を含む承認情報を生成し、特定したスケジュール取引情報と、生成した承認情報とを対応付けて含む起動取引リストを生成する。判定手段1203は、生成した起動取引リストを、スケジュール管理BC810に追加するブロックに含める。承認ノード801は、生成したブロックを、スケジュール管理BC810に追加する。
 記録手段1202は、ブロックが生成される都度、スケジュール管理BC810の記録内容に基づいて、スケジュール管理台帳を更新する。記録手段1202は、スケジュール管理BC810に追加されたブロックに記録されたスケジュール取引管理情報500に基づいて、まだ有効化されていないスケジュール取引情報を特定する。記録手段1202は、特定したまだ有効化されていないスケジュール取引情報と、当該スケジュール取引情報を有効化する予定時刻とを対応付けて、スケジュール管理台帳に登録する。
 承認ノード801は、スケジュール管理BC810に追加されたブロックに記録された起動取引リストを、情報処理装置100に送信する。発行手段1204は、スケジュール管理BC810に追加されたブロックに記録された起動取引リストを受信する。発行手段1204は、受信した起動取引リストに基づいて、合意形成を行い、所定の数以上の承認ノード801によって共通して特定された、予定時刻を経過したスケジュール取引情報を選択する。
 発行手段1204は、選択したスケジュール取引情報を、取引実行BCネットワークを形成するそれぞれの記録ノード802に送信する。発行手段1204は、例えば、さらに、選択したスケジュール取引情報に対応するスケジュール実行の条件を満たすか否かを判定してもよい。そして、発行手段1204は、例えば、スケジュール実行の条件を満たす場合に、選択したスケジュール取引情報を、取引実行BCネットワークを形成するそれぞれの記録ノード802に送信する。
 それぞれの記録ノード802は、受信したスケジュール取引情報を、取引実行BC820に記録する。これにより、制御システム110は、スケジュール取引情報を取引実行BC820に記録する動作を予約可能にすることができ、利便性の向上を図ることができる。次に、図13の説明に移行する。
 図13において、受付手段1201は、スケジュール取引情報を有効化する予定時刻を取り消す取消要求を受け付ける。取消要求は、取り消す対象となるスケジュール取引情報を特定可能に示すスケジュール取消情報を含む。受付手段1201は、ブロックが生成される都度、直前の10分の間に受け付けたそれぞれの取消要求に含まれるスケジュール取消情報を、スケジュール管理BC810に追加するブロックに含める。
 記録手段1202は、ブロックが生成される都度、スケジュール管理BC810の記録内容に基づいて、スケジュール管理台帳を更新する。記録手段1202は、スケジュール管理BC810に追加されたブロックに記録されたスケジュール取引管理情報500を取得する。記録手段1202は、取得したスケジュール取引管理情報500に基づいて、まだ有効化されていないスケジュール取引情報と、当該スケジュール取引情報を有効化する予定時刻とを対応付けて、スケジュール管理台帳に登録する。
 また、記録手段1202は、スケジュール管理BC810に追加されたブロックに記録されたスケジュール取消情報を取得する。記録手段1202は、スケジュール取消情報に基づいて、スケジュール管理台帳に登録された予定時刻を取り消す。これにより、制御システム110は、予定時刻を事後的に取消可能にすることができ、利便性の向上を図ることができる。次に、図14の説明に移行する。
 図14において、受付手段1201は、ブロックが生成された際、直前の10分の間に、登録要求を受け付けていなければ、ダミー取引管理情報を、スケジュール管理BC810に追加するブロックに含める。これにより、制御システム110は、登録要求を受け付けずとも、記録手段1202と、判定手段1203との処理を実行可能にすることができる。次に、図15の説明に移行し、制御システム110の適用例について説明する。
 図15において、クライアント装置203は、スケジュール取引管理情報500を、スケジュール管理BCネットワークを形成するそれぞれの承認ノード801に送信する。承認ノード801は、取引監視SC1501を利用して、スケジュール取引管理情報500を含めたブロックを、スケジュール管理BC810に追加する。承認ノード801は、取引監視SC1501を利用して、スケジュール管理BC810に追加したブロックに基づいて、スケジュール管理台帳を更新する。
 承認ノード801は、スケジュール監視SC1502を利用して、スケジュール管理台帳に基づいて、予定時刻を経過したスケジュール取引情報を特定する。承認ノード801は、スケジュール監視SC1502を利用して、予定時刻を経過したスケジュール取引情報を識別するスケジュール取引IDに、スケジュール取引情報を有効化することの承認を示す署名を対応付けた承認情報を生成する。承認ノード801は、スケジュール監視SC1502を利用して、生成した承認情報を、スケジュール管理BC810に記録する。
 情報処理装置100は、スケジュール取引実行SC1503を利用して、スケジュール管理BC810の記録内容を取得する。情報処理装置100は、スケジュール取引実行SC1503を利用して、合意形成により適切と判断された予定時刻を経過したスケジュール取引情報を選択する。情報処理装置100は、例えば、スケジュール取引実行SC1503を利用して、一定の数以上の承認ノード801によって有効化することが承認された、予定時刻を経過したスケジュール取引情報を、合意形成上で適切と判断する。
 情報処理装置100は、スケジュール取引実行SC1503を利用して、選択したスケジュール取引情報を、取引実行BCネットワークを形成するそれぞれの記録ノード802に送信する。スケジュール取引情報は、例えば、預託口座から宛先へ送金するスケジュール取引の内容と、取引承認用の署名とを含む。これにより、制御システム110は、スケジュール取引情報を取引実行BC820に記録する動作を予約可能にすることができる。
(全体処理手順)
 次に、図16を用いて、承認ノード801が実行する、全体処理手順の一例について説明する。全体処理は、例えば、図4に示したCPU401と、メモリ402や記録媒体405などの記憶領域と、ネットワークI/F403とによって実現される。
 図16は、全体処理手順の一例を示すフローチャートである。図16において、承認ノード801は、データを受信する(ステップS1601)。次に、承認ノード801は、受信したデータが、スケジュール取引情報を有効化する予定時点を記録することを要求する取引依頼データであるか否かを判定する(ステップS1602)。
 ここで、取引依頼データではない場合(ステップS1602:No)、承認ノード801は、ステップS1604の処理に移行する。一方で、取引依頼データである場合(ステップS1602:Yes)、承認ノード801は、ステップS1603の処理に移行する。
 ステップS1603では、承認ノード801は、スケジュール取引を承認するか否かを示す取引承認可否を回答する(ステップS1603)。承認ノード801は、スケジュール取引を承認すれば、スケジュール取引情報を、スケジュール管理BC810に記録する。そして、承認ノード801は、ステップS1601の処理に戻る。
 ステップS1604では、承認ノード801は、受信したデータがブロックデータであるか否かを判定する(ステップS1604)。ここで、ブロックデータではない場合(ステップS1604:No)、承認ノード801は、ステップS1608の処理に移行する。一方で、ブロックデータである場合(ステップS1604:Yes)、承認ノード801は、ステップS1605の処理に移行する。
 ステップS1605では、承認ノード801は、ブロックデータ内のスケジュール取引情報に基づいて、内部状態を更新する(ステップS1605)。内部状態は、スケジュール管理台帳である。次に、承認ノード801は、ブロック番号が実行対象であるか否かを判定する(ステップS1606)。ここで、実行対象ではない場合(ステップS1606:No)、承認ノード801は、ステップS1601の処理に戻る。一方で、実行対象である場合(ステップS1606:Yes)、承認ノード801は、ステップS1607の処理に移行する。
 ステップS1607では、承認ノード801は、起動取引リストを更新し、P2Pで配信する(ステップS1607)。承認ノード801は、配信した起動取引リストにより、情報処理装置100に、所定の数以上の承認ノード801によって有効化することが承認されたスケジュール取引情報を特定させる。そして、承認ノード801は、ステップS1601の処理に戻る。
 ステップS1608では、承認ノード801は、受信したデータを破棄する(ステップS1608)。そして、承認ノード801は、ステップS1601の処理に戻る。これにより、承認ノード801は、スケジュール取引情報を有効化する動作を予約可能にすることができる。
 以上説明したように、それぞれの第1のノード101によれば、取引情報を有効化する予定時点を記録する第1のBCを管理することができる。それぞれの第1のノード101によれば、自ノードで管理する第1のBCの記録内容に基づいて、予定時点が経過した取引情報を特定し、特定した結果を自ノードで管理する第1のBCに記録することができる。情報処理装置100によれば、第1のBCの記録内容に基づいて、複数の第1のノード101のうち所定の条件を満たす第1のノード101によって特定された取引情報を、それぞれの第2のノード102に送信することができる。それぞれの第2のノード102によれば、有効化された取引情報を記録する第2のBCを管理することができる。それぞれの第2のノード102によれば、受信した取引情報を含むブロックを生成し、自ノードで管理する第2のBCに追加することができる。これにより、制御システム110は、取引情報を第2のBCに記録する動作を予約可能にすることができる。
 情報処理装置100によれば、第1のBCの記録内容に基づいて、複数の第1のノード101のうち所定の数以上のノードによって共通して特定された取引情報を、それぞれの第2のノード102に送信することができる。これにより、制御システム110は、予定時点が経過した取引情報について合意形成された場合、取引情報を第2のBCに記録することができ、セキュリティの向上を図ることができる。
 それぞれの第1のノード101によれば、いずれかの取引情報を有効化する予定時点を取り消す取消要求を受け付けることができる。それぞれの第1のノード101によれば、取消要求を受け付けた場合、いずれかの取引情報を有効化する予定時点を取り消すことを示す取消情報を含むブロックを生成し、自ノードで管理する第1のBCに追加することができる。それぞれの第1のノード101によれば、自ノードで管理する第1のBCの記録内容に基づいて、いずれかの取引情報以外で、予定時点が経過した取引情報を特定し、特定した結果を自ノードで管理する第1のBCに記録することができる。これにより、制御システム110は、予定時点そのものを第1のBCから削除せずとも、予定時点を取り消すことができ、利便性の向上を図ることができる。
 それぞれの第1のノード101によれば、いずれかの取引情報を有効化する予定時点を記録する記録要求を受け付けた場合、いずれかの取引情報を有効化する予定時点を含むブロックを生成し、自ノードで管理する第1のBCに追加することができる。これにより、制御システム110は、第1のBCを最新の状態に更新することができる。
 それぞれの第1のノード101によれば、自ノードで管理する第1のBCに新たなブロックが一定の数分追加される都度、自ノードで管理する第1のBCの記録内容に基づいて、予定時点が経過した取引情報を特定することができる。それぞれの第1のノード101によれば、特定した結果を自ノードで管理する第1のBCに記録することができる。これにより、制御システム110は、所定のタイミングで適切に予定時点が経過した取引情報を特定することができる。
 それぞれの第1のノード101によれば、一定の数に、2以上の数を採用することができる。これにより、制御システム110は、処理量の低減化を図ることができる。
 それぞれの第1のノード101によれば、一定の期間に記録要求を受け付けない場合、ダミーの取引情報を有効化する予定時点を含むブロックを生成し、自ノードで管理する第1のBCに追加することができる。これにより、制御システム110は、記録要求を受け付けずとも、第1のBCを更新することができる。このため、制御システム110は、予定時点が経過した取引情報について合意形成を実施可能にすることができる。
 それぞれの第1のノード101によれば、所定の条件を満たす第1のノード101によって特定された取引情報を特定するスマートコントラクトを有することができる。それぞれの第1のノード101によれば、スマートコントラクトを利用して、自ノードで管理する第1のBCの記録内容に基づいて、予定時点が経過した取引情報を特定することができる。それぞれの第1のノード101によれば、当該取引情報が、所定の条件を満たす第1のノード101によって特定された取引情報であれば、当該取引情報を、自ノードで管理する第1のBCに記録することができる。これにより、制御システム110は、スマートコントラクトにより、各種処理を実現し易くすることができる。
 それぞれの第1のノード101によれば、予定時点を、第1のBCに所定のブロックが追加された追加時点で表すことができる。これにより、制御システム110は、予定時点を時刻以外で表すことができ、利便性の向上を図ることができる。
 なお、本実施の形態で説明した制御方法は、予め用意されたプログラムをPCやワークステーションなどのコンピュータで実行することにより実現することができる。本実施の形態で説明した制御プログラムは、コンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。記録媒体は、ハードディスク、フレキシブルディスク、CD(Compact Disc)-ROM、MO(Magneto Optical disc)、DVD(Digital Versatile Disc)などである。また、本実施の形態で説明した制御プログラムは、インターネットなどのネットワークを介して配布してもよい。
 100 情報処理装置
 101 第1のノード
 102 第2のノード
 110 制御システム
 201 第1のBCネットワーク
 202 第2のBCネットワーク
 203 クライアント装置
 210 ネットワーク
 211 第1のBC
 212 第2のBC
 300,400,600 バス
 301,401,601 CPU
 302,402,602 メモリ
 303,403,603 ネットワークI/F
 304,404,604 記録媒体I/F
 305,405,605 記録媒体
 410,610 スマートコントラクト
 500 スケジュール取引管理情報
 700 第1記憶部
 701 第1取得部
 702 第1記録部
 703 特定部
 704 第1出力部
 710 第2記憶部
 711 第2取得部
 712 第2記録部
 713 第2出力部
 720 第3記憶部
 721 第3取得部
 722 選択部
 723 第3出力部
 800 計画
 801 承認ノード
 802 記録ノード
 810 スケジュール管理BC
 820 取引実行BC
 1201 受付手段
 1202 記録手段
 1203 判定手段
 1204 発行手段
 1501 取引監視SC
 1502 スケジュール監視SC
 1503 スケジュール取引実行SC

Claims (12)

  1.  第1のブロックチェーンネットワークを形成する複数のノードと、
     第2のブロックチェーンネットワークを形成する1以上のノードと、
     前記第1のブロックチェーンネットワーク、および、前記第2のブロックチェーンネットワークと連携可能な情報処理装置とを含む制御システムであって、
     前記複数のノードのそれぞれのノードは、
     取引情報を有効化する予定時点を記録する第1のブロックチェーンを管理し、
     自ノードで管理する前記第1のブロックチェーンの記録内容に基づいて、予定時点が経過した取引情報を特定し、特定した結果を自ノードで管理する前記第1のブロックチェーンに記録し、
     前記情報処理装置は、
     前記第1のブロックチェーンの記録内容に基づいて、前記複数のノードのうち所定の条件を満たすノードによって特定された取引情報を、前記1以上のノードのそれぞれのノードに送信し、
     前記1以上のノードのそれぞれのノードは、
     有効化された取引情報を記録する第2のブロックチェーンを管理し、
     受信した前記取引情報を含むブロックを生成し、自ノードで管理する前記第2のブロックチェーンに追加する、
     ことを特徴とする制御システム。
  2.  前記所定の条件は、ノードの所定の数であり、
     前記情報処理装置は、
     前記第1のブロックチェーンの記録内容に基づいて、前記複数のノードのうち前記所定の数以上のノードによって共通して特定された取引情報を、前記1以上のノードのそれぞれのノードに送信する、ことを特徴とする請求項1に記載の制御システム。
  3.  前記複数のノードのそれぞれのノードは、
     いずれかの取引情報を有効化する予定時点を取り消す取消要求を受け付けた場合、前記いずれかの取引情報を有効化する予定時点を取り消すことを示す取消情報を含むブロックを生成し、自ノードで管理する前記第1のブロックチェーンに追加し、
     自ノードで管理する前記第1のブロックチェーンの記録内容に基づいて、前記いずれかの取引情報以外で、予定時点が経過した取引情報を特定し、特定した結果を自ノードで管理する前記第1のブロックチェーンに記録する、ことを特徴とする請求項1または2に記載の制御システム。
  4.  前記複数のノードのそれぞれのノードは、
     いずれかの取引情報を有効化する予定時点を記録する記録要求を受け付けた場合、前記いずれかの取引情報を有効化する予定時点を含むブロックを生成し、自ノードで管理する前記第1のブロックチェーンに追加する、ことを特徴とする請求項1~3のいずれか一つに記載の制御システム。
  5.  前記複数のノードのそれぞれのノードは、
     自ノードで管理する前記第1のブロックチェーンに新たなブロックが一定の数分追加される都度、自ノードで管理する前記第1のブロックチェーンの記録内容に基づいて、予定時点が経過した取引情報を特定し、特定した結果を自ノードで管理する前記第1のブロックチェーンに記録する、ことを特徴とする請求項4に記載の制御システム。
  6.  前記一定の数は2以上の数である、ことを特徴とする請求項5に記載の制御システム。
  7.  前記複数のノードのそれぞれのノードは、
     一定の期間に前記記録要求を受け付けない場合、ダミーの取引情報を有効化する予定時点を含むブロックを生成し、自ノードで管理する前記第1のブロックチェーンに追加する、ことを特徴とする請求項5または6に記載の制御システム。
  8.  前記複数のノードのそれぞれのノードは、
     前記所定の条件を満たすノードによって特定された取引情報を特定するスマートコントラクトを有し、前記スマートコントラクトを利用して、自ノードで管理する前記第1のブロックチェーンの記録内容に基づいて、予定時点が経過した取引情報を特定し、当該取引情報が、前記所定の条件を満たすノードによって特定された取引情報であれば、当該取引情報を、自ノードで管理する前記第1のブロックチェーンに記録する、ことを特徴とする請求項1~7のいずれか一つに記載の制御システム。
  9.  前記予定時点は、前記第1のブロックチェーンに所定のブロックが追加された追加時点を示す、ことを特徴とする請求項1~8のいずれか一つに記載の制御システム。
  10.  第1のブロックチェーンネットワークを形成するノードに、
     取引情報を有効化する予定時点を記録する第1のブロックチェーンを管理し、
     自ノードで管理する前記第1のブロックチェーンの記録内容に基づいて、予定時点が経過した取引情報を特定し、
     前記第1のブロックチェーンの記録内容に基づいて、前記第1のブロックチェーンネットワークを形成する複数のノードのうち所定の条件を満たすノードによって特定された取引情報を、有効化された取引情報を記録する第2のブロックチェーンを管理するノードに送信する情報処理装置が参照可能に、特定した結果を自ノードで管理する前記第1のブロックチェーンに記録する、
     処理を実行させることを特徴とする制御プログラム。
  11.  第1のブロックチェーンネットワークを形成するノードが、
     取引情報を有効化する予定時点を記録する第1のブロックチェーンを管理し、
     自ノードで管理する前記第1のブロックチェーンの記録内容に基づいて、予定時点が経過した取引情報を特定し、
     前記第1のブロックチェーンの記録内容に基づいて、前記第1のブロックチェーンネットワークを形成する複数のノードのうち所定の条件を満たすノードによって特定された取引情報を、有効化された取引情報を記録する第2のブロックチェーンを管理するノードに送信する情報処理装置が参照可能に、特定した結果を自ノードで管理する前記第1のブロックチェーンに記録する、
     処理を実行することを特徴とする制御方法。
  12.  第1のブロックチェーンネットワークを形成する制御装置であって、
     取引情報を有効化する予定時点を記録する第1のブロックチェーンを管理し、
     自ノードで管理する前記第1のブロックチェーンの記録内容に基づいて、予定時点が経過した取引情報を特定し、
     前記第1のブロックチェーンの記録内容に基づいて、前記第1のブロックチェーンネットワークを形成する複数のノードのうち所定の条件を満たすノードによって特定された取引情報を、有効化された取引情報を記録する第2のブロックチェーンを管理するノードに送信する情報処理装置が参照可能に、特定した結果を自ノードで管理する前記第1のブロックチェーンに記録する、
     制御部を有することを特徴とする制御装置。
PCT/JP2021/007214 2021-02-25 2021-02-25 制御システム、制御プログラム、制御方法、および制御装置 WO2022180752A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2021/007214 WO2022180752A1 (ja) 2021-02-25 2021-02-25 制御システム、制御プログラム、制御方法、および制御装置
JP2023501929A JPWO2022180752A1 (ja) 2021-02-25 2021-02-25
US18/355,797 US20230360037A1 (en) 2021-02-25 2023-07-20 Control system, storage medium, and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/007214 WO2022180752A1 (ja) 2021-02-25 2021-02-25 制御システム、制御プログラム、制御方法、および制御装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/355,797 Continuation US20230360037A1 (en) 2021-02-25 2023-07-20 Control system, storage medium, and control method

Publications (1)

Publication Number Publication Date
WO2022180752A1 true WO2022180752A1 (ja) 2022-09-01

Family

ID=83048879

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/007214 WO2022180752A1 (ja) 2021-02-25 2021-02-25 制御システム、制御プログラム、制御方法、および制御装置

Country Status (3)

Country Link
US (1) US20230360037A1 (ja)
JP (1) JPWO2022180752A1 (ja)
WO (1) WO2022180752A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019028525A (ja) 2017-07-26 2019-02-21 株式会社日立製作所 運用管理方法、運用管理システム、および、運用管理プログラム
US20190205884A1 (en) * 2017-12-28 2019-07-04 International Business Machines Corporation Converting processes into multiple blockchain smart contracts
JP2020126577A (ja) * 2018-05-11 2020-08-20 株式会社Maxele 価値交換媒体の単位交換価値を制御するためのシステム、プログラム、情報処理装置、及び方法
JP2020134997A (ja) * 2019-02-13 2020-08-31 ログトレ株式会社 突合システム、突合装置、突合システム用の方法及び、突合システム用のプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019028525A (ja) 2017-07-26 2019-02-21 株式会社日立製作所 運用管理方法、運用管理システム、および、運用管理プログラム
US20190205884A1 (en) * 2017-12-28 2019-07-04 International Business Machines Corporation Converting processes into multiple blockchain smart contracts
JP2020126577A (ja) * 2018-05-11 2020-08-20 株式会社Maxele 価値交換媒体の単位交換価値を制御するためのシステム、プログラム、情報処理装置、及び方法
JP2020134997A (ja) * 2019-02-13 2020-08-31 ログトレ株式会社 突合システム、突合装置、突合システム用の方法及び、突合システム用のプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ETHEREUM ALARM CLOCK, 16 February 2021 (2021-02-16), Retrieved from the Internet <URL:https://www.ethereum-alarm-clock.com>

Also Published As

Publication number Publication date
JPWO2022180752A1 (ja) 2022-09-01
US20230360037A1 (en) 2023-11-09

Similar Documents

Publication Publication Date Title
US11531981B2 (en) Digital contracts in blockchain environments
JP7108611B2 (ja) 電子手形管理方法及び装置並びに記憶媒体
TWI829626B (zh) 用於指定電子通訊之接收者的基於區塊鏈之方法及系統
CN110620810B (zh) 在区块链上的连续资产转移的非链接所有权
CN112381646A (zh) 基于区块链的隐私交易及其应用方法和装置
CN113435994A (zh) 基于区块链的金融借贷多方共享交易元数据信息的方法、装置及系统
CN111727428A (zh) 基于区块链的房间库存管理系统
US11151122B2 (en) Distributed ledger data linkage management
EP3696766A1 (en) Program, system and method for determining credit worthiness of a user
KR20190138614A (ko) 신뢰가 없는 네트워크에서 데이터 전달을 증명하는 방법 및 장치
CN110009320B (zh) 资源转换方法、装置、系统、存储介质和计算机设备
WO2022180752A1 (ja) 制御システム、制御プログラム、制御方法、および制御装置
KR102123487B1 (ko) 암호화폐 교환을 위한 트랜잭션을 매칭하는 전자 장치 및 방법
US20070027835A1 (en) Systems and methods for processing data in a Web services environment
WO2023204954A1 (en) Offline cryptocurrency transactions
JPWO2022180752A5 (ja)
KR20200078069A (ko) 블록체인 네트워크와 금융 시스템의 연동을 위한 검증 장치 및 방법
CN112150157B (zh) 通过区块链发行应收凭证的方法及装置
JP2023106055A (ja) エビデンス管理方法、エビデンス管理システム及びノード
CN110852891A (zh) 基于轧差的数据处理方法、装置以及可读存储介质
US20230267459A1 (en) Method and device for stake-based token management on a blockchain system
KR20190136617A (ko) 용도 지정형 암호 화폐의 거래 정보 처리 시스템
KR20190136487A (ko) 용도 지정형 암호 화폐의 거래 정보 처리 방법 및 그 장치
KR102475662B1 (ko) 분산원장 기반의 블록체인을 이용한 포인트 관리 방법 및 시스템
KR102131548B1 (ko) 전자지갑 생성 방법 및 이를 이용한 암호화폐 거래 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21927854

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2023501929

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2021927854

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2021927854

Country of ref document: EP

Effective date: 20230925

122 Ep: pct application non-entry in european phase

Ref document number: 21927854

Country of ref document: EP

Kind code of ref document: A1