WO2023079832A1 - 情報処理装置、情報処理方法、及びプログラム - Google Patents

情報処理装置、情報処理方法、及びプログラム Download PDF

Info

Publication number
WO2023079832A1
WO2023079832A1 PCT/JP2022/033998 JP2022033998W WO2023079832A1 WO 2023079832 A1 WO2023079832 A1 WO 2023079832A1 JP 2022033998 W JP2022033998 W JP 2022033998W WO 2023079832 A1 WO2023079832 A1 WO 2023079832A1
Authority
WO
WIPO (PCT)
Prior art keywords
contract
information
amount
information processing
contract information
Prior art date
Application number
PCT/JP2022/033998
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 ソニーグループ株式会社
Publication of WO2023079832A1 publication Critical patent/WO2023079832A1/ja

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/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • 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
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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

Definitions

  • the present technology relates to an information processing device, an information processing method, and a program applicable to payments based on contracts.
  • Patent Document 1 describes a post-processing method based on copyright registration information in which participant information and post-processing information are acquired based on copyright registration information.
  • the participant information and the post-processing information are transmitted within the blockchain network as a transaction request and stored in addition to the block (paragraph [ 0018] to [0033] FIG. 1, etc.).
  • Patent Document 2 information on the ownership of products that are the subject of transactions that occur in the commercial distribution of products by workers starting from workers in the primary industry and the claims that are transferred between the parties involved in the transactions
  • a revenue sharing system that manages the is described.
  • this revenue distribution system by transferring the ownership of the deliverables associated with a prescribed transaction in the commercial distribution to a prescribed intermediary, the debt in the prescribed transaction with the intermediary as the buyer is executed, and the creditor of the prescribed transaction is executed. Payment processing is executed according to the difference between the amount of debt held by the intermediary and the amount of credit held by the obligee by the purchase processing addressed to (Patent Document 2, paragraphs [0014] to [0028] , 2, etc.).
  • the purpose of the present technology is to provide an information processing device, an information processing method, and a program capable of realizing privacy protection.
  • an information processing device includes a transmission unit and an execution unit.
  • the sending unit sends encrypted contract information regarding a payer to pay a predetermined amount and a recipient to receive the predetermined amount to the blockchain.
  • the execution unit automatically executes payment based on the contract information.
  • encrypted contract information regarding the payer who pays the predetermined amount and the recipient who receives the predetermined amount is sent to the blockchain. Payment is automatically made based on the contract information. This makes it possible to automatically make payments while protecting the privacy of contract information managed by blockchain.
  • the contract information may include at least one of attribute information indicating attributes of contractors, including the payer and the recipient, and the predetermined amount.
  • the predetermined amount may include an amount based on the distribution rate.
  • the information processing apparatus may further include a creation unit that creates consent information indicating consent of the recipient with respect to the contract information.
  • the transmission unit may transmit the consent information to the blockchain.
  • the information processing device may further include a conversion unit that converts one or more pieces of contract information into one piece of new contract information.
  • the conversion unit comprises first contract information relating to a first person who pays a first amount of money and a second person who receives the first amount of money, and the second person who pays a second amount of money and the second person who receives the first amount of money.
  • second contract information relating to a third person who receives an amount of money, said first person who pays said first amount, and said second person who receives the difference between said first amount and said second amount , and third contract information relating to said third person receiving said second amount of money.
  • the conversion unit comprises: first contract information relating to a first person paying a first amount of money and a second person receiving the first amount of money; second contract information about a third person who receives the amount of money, the first person who pays the total amount of the first amount and the second amount, and the second person who receives the first amount of money Third contract information relating to a person and said third person receiving said second amount of money may be converted.
  • the encrypted contract information may include a zero-knowledge proof that proves the validity of the contract information.
  • the consent information may include zero-knowledge proof that the contract information has been correctly encrypted.
  • An information processing method is an information processing method executed by a computer system, which blocks encrypted contract information regarding a payer who pays a predetermined amount of money and a recipient who receives the predetermined amount of money. Including sending to the chain. Payment is automatically made based on the contract information.
  • a program causes a computer system to execute the following steps. Sending encrypted contract information to the blockchain regarding a payer paying a predetermined amount and a recipient receiving said predetermined amount. automatically effecting payment based on said contract information;
  • FIG. 1 is a diagram schematically showing an information processing device according to the present technology.
  • FIG. 1A is a diagram showing an overview of functions of an information processing apparatus.
  • the information processing device 10 acquires contract information regarding a payer 1 who pays a predetermined amount of money and a recipient 3 who receives a predetermined amount of money.
  • the contract information is created by the payer 1 via the user terminal 2 .
  • Constract information is information that indicates how much is paid from whom to whom.
  • the contract information includes at least one of attribute information indicating attributes of contractors including payers and receivers and a predetermined amount of money.
  • the contract information is A as the payer, B as the recipient, and the amount to be paid is 1,000 yen.
  • balance information of the payer and the payee is recorded on the blockchain.
  • the predetermined amount includes payment based on the distribution rate. That is, the predetermined amount includes a variable such as 5% of the rate of return in addition to a fixed amount such as 1000 yen. In addition to this, there are no restrictions on the figures and content, such as net profit or 10% of sales.
  • the information processing device 10 also acquires consent information indicating that the recipient 3, who is the other party to the contract, has agreed to the contract information acquired from the payer 1.
  • the consent information is created when the recipient 3 confirms the contract information via the user terminal 4 and determines that the contract information has no problem.
  • the information processing device 10 encrypts the acquired contract information and transmits the encrypted contract information (hereinafter referred to as contract data) to the blockchain 20.
  • Encryption refers to a state in which the contract information is not known to anyone other than the payer and the recipient (hidden state). In other words, privacy protection becomes possible by encrypting the contract information. Encrypting the contract information is also used when all or part of the contract information is concealed.
  • FIG. 1B is a diagram showing contract data.
  • the information processing device 10 acquires contract information created by payer A stating that "payer A will pay payee B 1000 yen”.
  • the information processing device 10 encrypts the payment amount (Pay) in the contract information.
  • [x (arbitrary number)] shown in FIG. 1B indicates that x is encrypted with the payer's public key.
  • the information processing device 10 samples dummy contractors U to Z whose payment amount is 0 yen. This makes it possible to conceal who is the payer and who is the recipient among A, B, and U to Z, and to secure anonymity, that is, to conclude a contract with privacy protected.
  • the contract data may also include contract information regarding the above dummy contractor.
  • the contents of the contract information are not limited and may be set arbitrarily according to the contract.
  • the contract information may include the number of times of payment such as dividing a predetermined amount into n times, the due date until the payment is made, and the like. Further, for example, if a specific condition such as a delay of the Shinkansen or aircraft due to a typhoon or equipment trouble is met, a specific condition such as paying 50% of the price of the reserved seat may be set as the contract information. .
  • functions realized by smart contracts may be added.
  • the contract information such as the number of times and the time limit may not be concealed.
  • FIG. 1C is a diagram showing another example of contract data.
  • FIG. 1C is an example of contract data including contract information other than payer, receipt, and payment amount shown in FIG. 1B.
  • the contract data indicates a contract that "Payer A pays Payee B 20% of the revenue and Payee C 30% of the revenue by 10/1.”
  • the total payment amount may be randomized.
  • FIG. 2 is a block diagram showing a configuration example of the information processing device 10. As shown in FIG.
  • the information processing device 10 has an encryption unit 11, a consent information creation unit 12, a transmission unit 13, a contract information conversion unit 14, and an execution unit 15.
  • the encryption unit 11 encrypts the contract information. Note that the method of encrypting the contract information is not limited. In this embodiment, the encryption unit 11 creates a ZKproof (Zero Knowledge proof) that indicates that the contract information is valid. Also, in this embodiment, the contract data and proof are supplied to the transmission unit 13 .
  • ZKproof Zaero Knowledge proof
  • the consent information creation unit 12 creates consent information for the contract information confirmed by the recipient 3.
  • the consent information creation unit 12 creates a consent ZKproof based on a ZKproof creation request indicating that the recipient 3 has consented to the contract information (hereinafter referred to as consent ZKproof). Further, in this embodiment, the proof of consent created by the consent information creation unit 12 is supplied to the transmission unit 13 .
  • the transmission unit 13 transmits the contract data to the blockchain 20.
  • the transmission unit 13 transmits the contract data and proof created by the encryption unit 11 to the blockchain 20 .
  • the transmitting unit 13 also transmits the proof of consent created by the consent information creating unit 12 to the blockchain 20 .
  • the contract information conversion unit 14 converts one or more pieces of contract information into new contract information. For example, the contract information conversion unit 14 converts a contract in which 1000 yen is paid from payer A to receiver B and a contract in which 700 yen is paid from payer B to receiver C from payer A to receiver B. 300 Yen is paid and converts to a contract in which payer A pays payee C 700 Yen.
  • a contract under which payer A pays 1000 yen to recipient B and a contract under which payer A pays 700 yen to recipient C is a contract in which payer A pays 1700 yen and recipient B pays 1000 yen.
  • Yen is received and converted into a contract in which Recipient C receives Yen 700.
  • the contract information conversion unit 14 converts the contract for multi-stage payments from A to B and from B to C into a new contract that pays from A to B and C at once, and contract payment into a new contract that pays B and C in lump sum from A.
  • the execution unit 15 automatically executes payment based on the contract information registered in the blockchain 20.
  • the execution unit 15 transmits to the blockchain 20 total payment data indicating the total payment amount of the payer 1 and ZKproof indicating that the balance of the payer 1 is equal to or greater than the total payment amount.
  • the information processing device 10 allows the payer 1 to make a payment based on the contract only by creating the contract information and executing the payment based on the contract.
  • Payment based on the contract may be performed by the information processing device 10.
  • the information processing apparatus 10 may execute payment based on the contract when a contract is made to pay a predetermined amount of money when the due date is reached.
  • whether payment is made by the information processing device 10 or by the payer 1 may be set by the payer 1 or the payee 3 .
  • the consent information creation unit 12 corresponds to a creation unit that creates consent information indicating the recipient's consent to the contract information.
  • the transmission unit 13 corresponds to a transmission unit that transmits encrypted contract information regarding a payer who pays a predetermined amount of money and a recipient who receives a predetermined amount of money to the blockchain.
  • the contract information conversion unit 14 corresponds to a conversion unit that converts one or more pieces of contract information into one piece of new contract information.
  • the execution unit 15 corresponds to an execution unit that automatically executes payment based on contract information.
  • FIG. 3 is a diagram showing the flow of the contract phase (from creation of contract data to registration in the blockchain 20).
  • the information processing apparatus 10 pre-generates a private key and a public key for each contractor and internally manages them.
  • encryption and ZKproof generation also include these keys as inputs as needed.
  • payer 1 creates contract information 30 via user terminal 2 (step 101).
  • the payer 1 transmits the contract information 30 to the information processing device 10 .
  • the payer 1 also sends the plaintext contract information 30 to the user terminal 4 of the payee 3 off-chain.
  • the encryption unit 11 encrypts the acquired contract information 30 (step 102).
  • the encryption unit 11 also creates a ZKproof indicating that the contract content of the contract data 31 is valid (step 103).
  • the transmission unit 13 transmits the contract data 31 and the proof 32 to the blockchain 20 (step 104).
  • the payee 3 confirms the contract information 30 created by the payer 1 (step 105).
  • the recipient 3 confirms the contract information 30 and transmits a request to create a proof of consent to the information processing device 10 (step 106).
  • the consent information creation unit 12 determines whether the contract information 30 transmitted from the payer 1 and the recipient 3 match (step 107). If the contract information 30 matches, an agreement ZKproof is created (step 108). The transmission unit 14 also transmits the created proof of consent 33 to the blockchain 20 (step 109).
  • the blockchain 20 verifies the proof 32 sent from the transmission unit 13 (step 110). If the verification passes, the contract data 31 and proof 32 are registered in the distributed ledger 35 of the blockchain 20 (step 111). The blockchain 20 also verifies the consent proof 33 sent from the consent information creation unit 12 (step 112). If the verification passes, the consent proof 33 is registered in the distributed ledger 36 of the blockchain 20 (step 113).
  • FIG. 4 is a diagram showing balance data.
  • the blockchain 20 records the balance of each contractor in a form encrypted by additive homomorphic encryption. For example, as shown in the left diagram of FIG. 4, A's balance of 1200 yen and B's balance of 500 yen are recorded on the blockchain as balance data at the time of contract.
  • FIG. 5 is a diagram showing the flow of the payment phase (from creation of total payment data and balance data to update of balance).
  • the payer 1 creates total payment data 40 and balance data 41 via the user terminal 2 (step 201).
  • the payer 1 transmits the total payment data 40 and the balance data 41 to the information processing device 10 (step 202).
  • the execution unit 15 creates a ZKproof 42 from the balance data 41 indicating that the balance of the payer 1 is greater than or equal to the total payment amount (step 203).
  • the execution unit 15 also transmits the total payment data 40 and the ZKproof 42 to the blockchain 20 (step 204).
  • Blockchain 20 verifies ZKproof 42 (step 205). If verification passes, a payment operation is performed (step 206). In this embodiment, updating of balance data and registration of total payment data and ZKproof are executed. If the verification fails, the payment operation stops.
  • the blockchain 20 updates the balance by adding the encrypted text of the contract data 43 to the balance (distributed ledger 44) of each contractor.
  • the updated encrypted balance data 45 , total payment data 40 and ZKproof 42 are recorded in the distributed ledger 46 .
  • contract information by one payer and one payee is taken as an example.
  • a contract between payer A and payee B and a contract between payer B and payee C are taken as examples.
  • the contract information conversion unit 14 executes the flow shown in FIG. 7 to combine a plurality of pieces of contract information.
  • FIG. 6 is a diagram showing a plurality of pieces of contract information.
  • FIG. 6A is a diagram showing payer A and payee B contract data.
  • FIG. 6B is a diagram showing payer B and payee C contract data.
  • FIG. 6C is a diagram showing new contract data in which the contract data of Payer B and Payee C are converted.
  • the contract information indicating the contract "50% of the revenue will be paid from Payer A to Recipient B" and the contract data indicating sampled dummy contractors UZ are illustrated. .
  • contract information indicating a contract that "payer B pays recipient C 30% of the revenue" and contract data indicating sample dummy contractors P ⁇ R and U ⁇ W. is illustrated. Note that payer B's profit in FIG. 6B refers to the total amount paid by payer A.
  • the contract information conversion unit 14 converts the contract data shown in FIG. 6B into the contract data shown in FIG. 6C.
  • the amount received by Recipient C is 15% of the total amount paid by A, because it is 30% of 50%. That is, as shown in FIG. 6, the contract information conversion unit 14 converts the rate of payment to C to 15%.
  • FIG. 7 is a diagram showing the flow of the payment preparation phase (conversion of contract data to registration in blockchain 20). Note that attribute information may be omitted in FIG. 7 .
  • a payer A and payee B contract is referred to as an A and B contract.
  • contract information of B and C refers to contract information of payer B and recipient C.
  • B transmits contract information 51 of A and B and contract information 52 of B and C to the information processing device 10 via the user terminal 50 .
  • the contract information conversion unit 14 converts the contract information 52 of B and C based on the contract information 51 of A and B and the contract information 52 of B and C (step 301). In this embodiment, the contract information conversion unit 14 converts the contract information 52 of B and C into a convenient form so that the payment can be made in a lump sum while maintaining consistency with the contract information 51 of A and B. .
  • the encryption unit 11 encrypts the converted contract information 53 of B and C (step 302).
  • the encryption unit 11 also creates a ZKproof indicating that no unauthorized operation is included during conversion and encryption (step 303).
  • the transmission unit 13 integrates the contract information 51 of A and B and the contract data 54 of B and C converted by the contract information conversion unit 14 into new contract data (hereinafter referred to as converted contract data 55). ) and proof 56 to blockchain 20 (step 304).
  • the blockchain 20 verifies the proof 56 sent from the transmission unit 13 (step 305). If the verification passes, the converted contract data 55 and proof 56 are registered in the distributed ledger 57 of the blockchain 20 (step 306).
  • the contract from B to C is automatically executed when the contracts of A and B are executed.
  • B does not have to make another payment to C after A has made a payment to B.
  • the payment can be made any number of times after that, so the operation of making the payment can be omitted, and usability can be improved.
  • An example is the payment of usage fees for subscription services, such as "pay x yen every month".
  • the payer is the service user and the recipient is the service provider.
  • payment is automatically performed by the contract phase and the payment phase.
  • An example is the payment of copyright fees associated with the xth creation of content, such as "pay x% of revenue to the original author". For example, a contract stating that "x% of the usage fee will be paid to the secondary creator by the user of the secondary creation content" and a contract that "the secondary creator will pay x'% of the usage fee to the original author”. A contract is assumed. In this case, the user and the secondary creator, the secondary creator and the original creator each conclude a contract in the contract phase, and the secondary creator converts the contract data in the contract preparation phase. By executing the payment phase after this, payment is made from the user to the secondary creator and the original author.
  • the encrypted contract information regarding the payer 1 who pays the predetermined amount and the recipient 3 who receives the predetermined amount is transmitted to the blockchain 20 . Payments are made automatically based on contract information. This makes it possible to automatically make payments while protecting the privacy of contract information managed by blockchain.
  • encrypted contract information about the payer who pays the predetermined amount and the recipient who receives the predetermined amount is registered in the blockchain, and the payment is automatically made based on the registered contract information. executed. This makes it possible to automatically make payments while protecting the privacy of contract information managed by blockchain. In addition, it is possible to flexibly respond to various use cases by using the functions of blockchain and smart contracts while protecting privacy.
  • various data were sent to the blockchain 20 via the information processing device 10 when the contract phase, payment phase, and payment preparation phase were executed.
  • Various data may be transmitted to the blockchain 20 from the user terminals of the payer and the recipient without being limited to this. That is, the user terminals of the payer and the payee may implement the functions of the information processing device 10 .
  • FIG. 8 is a diagram showing another flow of the contract phase.
  • each contractor generates a private key and a public key in advance on his/her own terminal, and the public key is disclosed to other contractors (parties).
  • encryption and ZKproof generation also include these keys as inputs as needed.
  • payer 1 creates contract information 60 via user terminal 2 (step 401).
  • the payer 1 also sends the plaintext contract information 60 to the user terminal 4 of the payee 3 off-chain.
  • the encryption unit 11 encrypts the created contract information 60 (step 402).
  • the encryption unit 11 also creates a ZKproof indicating that the contract content of the contract data is valid (step 403).
  • the transmission unit 13 transmits the contract data 61 and the proof 62 to the blockchain 20 (step 104).
  • the payee 3 confirms the contract information 60 created by the payer 1 (step 405). In this embodiment, the payee 3 confirms whether there is no objection to the contents of the contract information 60 and whether the contract information 60 on the blockchain 20 correctly encrypts the contract information 60 received from the payer 1.
  • the consent information creation unit 12 creates a consent ZKproof (step 406).
  • the transmission unit 13 transmits the created proof of consent 63 to the blockchain 20 (step 407).
  • the blockchain 20 verifies the proof 62 sent from the transmission unit 13 (step 408). If the verification passes, the contract data 61 and proof 62 are registered in the distributed ledger 64 of the blockchain 20 (step 409). The blockchain 20 also verifies the consent proof 63 sent from the user terminal 4 (step 410). If the verification passes, the consent proof 63 is registered in the distributed ledger 65 of the blockchain 20 (step 411).
  • FIG. 9 is a diagram showing another flow of the payment phase.
  • the payer 1 creates total payment data 70 and balance data via the user terminal 2 (step 501).
  • the execution unit 15 creates a ZKproof from the balance data indicating that the balance of the payer 1 is greater than or equal to the total payment amount (step 502).
  • the execution unit 15 also transmits the total payment data 70 and the ZKproof 71 to the blockchain 20 (step 503).
  • the blockchain 20 verifies the ZKproof 71 (step 504). If the verification passes, the payment operation is performed (step 505). In this embodiment, updating of balance data and registration of total payment data and ZKproof are executed.
  • the blockchain 20 updates the balance by adding the encrypted text of the contract data 72 to the balance (distributed ledger 73) of each contractor.
  • the updated encrypted balance data 74 , total payment data 70 and ZKproof 71 are recorded in the distributed ledger 75 .
  • FIG. 10 is a diagram showing another flow of the payment preparation phase. Note that FIG. 10 may be described by omitting attribute information as in FIG.
  • the contract information conversion unit 14 converts the contract information 82 of B and C based on the contract information 81 of A and B and the contract information 82 of B and C acquired by the user terminal 80 of B. (step 601).
  • the contract information conversion unit 14 converts the contract information 82 of B and C into a convenient form so that the payment can be made in a lump sum while maintaining consistency with the contract information 81 of A and B. .
  • the encryption unit 11 encrypts the converted contract information 82 of B and C (step 602).
  • the encryption unit 11 also creates a ZKproof indicating that no unauthorized operation is included during conversion and encryption (step 603).
  • the transmission unit 13 integrates the contract information 81 of A and B and the contract data 83 of B and C converted by the contract information conversion unit 14 into new contract data (hereinafter referred to as converted contract data 84). ) and proof 85 to blockchain 20 (step 604).
  • the blockchain 20 verifies the proof 85 sent from the transmission unit 13 (step 605). If the verification passes, the converted contract data 84 and proof 85 are registered in the distributed ledger 86 of the blockchain 20 (step 606).
  • the total payment data, ZKproof, etc. were sent to the blockchain 20 in the contract phase, payment phase, and payment preparation phase.
  • the information is not limited to this, and information necessary for a contract, payment, etc. may be transmitted as appropriate.
  • information such as the random number used for encryption, which is necessary for ZKproof when B in FIG. 7 makes a payment, may be transmitted.
  • FIG. 11 is a block diagram showing a hardware configuration example of the information processing device 10. As shown in FIG.
  • the information processing apparatus 10 includes a CPU 101, a ROM 102, a RAM 103, an input/output interface 105, and a bus 104 that connects these to each other.
  • the input/output interface 105 is connected to the display unit 106, the input unit 107, the storage unit 108, the communication unit 109, the drive unit 110, and the like.
  • the display unit 106 is, for example, a display device using liquid crystal, EL, or the like.
  • the input unit 107 is, for example, a keyboard, pointing device, touch panel, or other operating device. When input unit 107 includes a touch panel, the touch panel can be integrated with display unit 106 .
  • the storage unit 108 is a non-volatile storage device, such as an HDD, flash memory, or other solid-state memory.
  • the drive unit 110 is a device capable of driving a removable recording medium 111 such as an optical recording medium or a magnetic recording tape.
  • the communication unit 109 is a modem, router, and other communication equipment for communicating with other devices that can be connected to a LAN, WAN, or the like.
  • the communication unit 109 may use either wired or wireless communication.
  • the communication unit 109 is often used separately from the information processing apparatus 10 .
  • the communication unit 109 enables communication with other devices via the network.
  • Information processing by the information processing apparatus 10 having the hardware configuration as described above is realized by cooperation between software stored in the storage unit 108 or the ROM 102 or the like and the hardware resources of the information processing apparatus 10 .
  • the information processing method according to the present technology is realized by loading a program constituting software stored in the ROM 102 or the like into the RAM 103 and executing the program.
  • the program is installed in the information processing device 10 via the recording medium 111, for example.
  • the program may be installed in the information processing device 10 via a global network or the like.
  • any computer-readable non-transitory storage medium may be used.
  • An information processing device, an information processing method, and a program according to the present technology are executed by linking a computer installed in a communication terminal with another computer that can communicate via a network, etc., and the information processing device according to the present technology. may be constructed.
  • the information processing device, information processing method, and program according to the present technology can be executed not only in a computer system configured by a single computer, but also in a computer system in which a plurality of computers operate in conjunction.
  • a system means a set of multiple components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Therefore, a plurality of devices housed in separate housings and connected via a network, and a single device housing a plurality of modules within a single housing, are both systems.
  • Execution of the information processing device, information processing method, and program according to the present technology by a computer system for example, when encryption of contract information, creation of consent information, conversion of contract information, etc. are executed by a single computer , and when each process is executed by a different computer.
  • Execution of each process by a predetermined computer includes causing another computer to execute part or all of the process and obtaining the result.
  • the information processing device, information processing method, and program according to the present technology can be applied to a configuration of cloud computing in which a single function is shared by a plurality of devices via a network and processed jointly. .
  • Each configuration such as the encryption unit, the consent information creation unit, the contract information conversion unit, etc., and the control flow of the communication system, etc. described with reference to each drawing are merely one embodiment, and within the scope of the present technology, It can be arbitrarily deformed. That is, any other configuration, algorithm, or the like for implementing the present technology may be employed.
  • the present technology can also adopt the following configuration.
  • a transmitting unit that transmits encrypted contract information about a payer paying a predetermined amount and a recipient receiving the predetermined amount to a blockchain; and an execution unit that automatically executes payment based on the contract information.
  • the information processing device according to (1) The information processing apparatus, wherein the contract information includes at least one of attribute information indicating attributes of contractors including the payer and the recipient and the predetermined amount of money.
  • An information processing apparatus comprising a creation unit that creates consent information indicating consent of the recipient for the contract information.
  • the information processing device (4), The information processing device, wherein the transmission unit transmits the consent information to the blockchain.
  • the information processing device according to (1) further comprising: An information processing apparatus comprising a conversion unit that converts one or more pieces of contract information into one piece of new contract information.
  • the conversion unit comprises first contract information relating to a first person who pays a first amount of money and a second person who receives the first amount of money, and the second person who pays a second amount of money and the second person who receives the first amount of money.
  • the conversion unit comprises: first contract information relating to a first person paying a first amount of money and a second person receiving the first amount of money; second contract information about a third person who receives the amount of money, the first person who pays the total amount of the first amount and the second amount, and the second person who receives the first amount of money
  • An information processing apparatus for converting into third contract information relating to a person and the third person who receives the second amount of money.
  • the encrypted contract information includes zero-knowledge proof that proves the correctness of the contract information.
  • Information processing device includes zero-knowledge proof that proves the correctness of the contract information.
  • Information processing device includes zero-knowledge proof that the contract information has been correctly encrypted.
  • (11) sending encrypted contract information about a payer paying a given amount and a recipient receiving said given amount to the blockchain; An information processing method in which a computer system executes automatic payment based on said contract information.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Finance (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本技術の一形態に係る情報処理装置は、送信部と、実行部とを具備する。前記送信部は、暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報をブロックチェーンに送信する。前記実行部は、前記契約情報に基づいて、支払を自動的に実行する。これにより、ブロックチェーンで管理された契約情報のプライバシーを保護しながら自動的に支払を行うことが可能となる。またプライバシーを保護した状態で、ブロックチェーンとスマートコントラクトとの機能を用いることで様々なユースケースに柔軟に対応できる。

Description

情報処理装置、情報処理方法、及びプログラム
 本技術は、契約に基づいた支払等に適用可能な情報処理装置、情報処理方法、及びプログラムに関する。
 特許文献1には、著作権登録情報に基づいて、参加者情報及び後処理情報が取得される著作権登録情報に基づく後処理方法が記載される。この著作権登録情報に基づく後処理方法では、参加者情報と後処理情報とが、トランザクション要求としてブロックチェーンネットワーク内で送信され、ブロックに追加して記憶される(特許文献1の明細書段落[0018]~[0033]図1等)。
 特許文献2には、第一次産業の従事者を起点にした従事者による産物の商流で生じる取引の対象となった産物の所有権、及び取引の関係者間で移動する債権の各情報を管理する収益配分システムが記載される。この収益配分システムでは、商流における所定取引に伴う納入物の所有権を所定の仲介業者に移すことで、仲介業者を買い主とした所定取引における債務の買取処理を実行し、所定取引の債権者に宛てた買取処理により仲介業者が保有する債務額と債権者に関して保持する債権額との差分に応じた支払処理が実行される(特許文献2の明細書段落[0014]~[0028]図1、2等)。
特表2021-500811号公報 特開2019-49930号公報
 このような、契約に基づいた支払において、プライバシー保護を実現することが可能な技術が求められている。
 以上のような事情に鑑み、本技術の目的は、プライバシー保護を実現することが可能な情報処理装置、情報処理方法、及びプログラムを提供することにある。
 上記目的を達成するため、本技術の一形態に係る情報処理装置は、送信部と、実行部とを具備する。
 前記送信部は、暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報をブロックチェーンに送信する。
 前記実行部は、前記契約情報に基づいて、支払を自動的に実行する。
 この情報処理装置では、暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報がブロックチェーンに送信される。前記契約情報に基づいて、支払が自動的に実行される。これにより、ブロックチェーンで管理された契約情報のプライバシーを保護しながら自動的に支払を行うことが可能となる。
 前記契約情報は、前記支払者及び前記受取者を含む契約者の属性を示す属性情報及び前記所定の金額の少なくとも一方を含んでもよい。
 前記所定の金額は、分配率に基づく金額を含んでもよい。
 前記情報処理装置であって、さらに、前記契約情報に対して、前記受取者の同意を示す同意情報を作成する作成部を具備してもよい。
 前記送信部は、前記同意情報を前記ブロックチェーンに送信してもよい。
 前記情報処理装置であって、さらに、1以上の前記契約情報を、新たな1つの契約情報へ変換する変換部を具備してもよい。
 前記変換部は、第1の金額を支払う第1の人物及び前記第1の金額を受け取る第2の人物に関する第1の契約情報と、第2の金額を支払う前記第2の人物及び前記第2の金額を受け取る第3の人物に関する第2の契約情報とを、前記第1の金額を支払う前記第1の人物、前記第1の金額から前記第2の金額の差額を受け取る前記第2の人物、及び前記第2の金額を受け取る前記第3の人物に関する第3の契約情報へ変換してもよい。
 前記変換部は、第1の金額を支払う第1の人物及び前記第1の金額を受け取る第2の人物に関する第1の契約情報と、第2の金額を支払う前記第1の人物及び前記第2の金額を受け取る第3の人物に関する第2の契約情報とを、前記第1の金額及び前記第2の金額の合計金額を支払う前記第1の人物、前記第1の金額を受け取る前記第2の人物、及び前記第2の金額を受け取る前記第3の人物に関する第3の契約情報へ変換してもよい。
 前記暗号化された契約情報は、前記契約情報の正当性を証明するゼロ知識証明を含んでもよい。
 前記同意情報は、前記契約情報が正しく暗号化されたことのゼロ知識証明を含んでもよい。
 本技術の一形態に係る情報処理方法は、コンピュータシステムが実行する情報処理方法であって、暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報をブロックチェーンに送信することを含む。
 前記契約情報に基づいて、支払が自動的に実行される。
 本技術の一形態に係るプログラムは、コンピュータシステムに以下のステップを実行させる。
 暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報をブロックチェーンに送信するステップ。
 前記契約情報に基づいて、支払を自動的に実行するステップ。
情報処理装置を模式的に示す図である。 情報処理装置の構成例を示すブロック図である。 契約フェイズのフローを示す図である。 残高データを示す図である。 支払フェイズのフローを示す図である。 複数の契約情報を示す図である。 支払準備フェイズのフローを示す図である。 契約フェイズの他のフローを示す図である。 支払フェイズの他のフローを示す図である。 支払準備フェイズの他のフローを示す図である。 情報処理装置のハードウェア構成例を示すブロック図である。
 以下、本技術に係る実施形態を、図面を参照しながら説明する。
 図1は、本技術に係る情報処理装置を模式的に示す図である。図1Aは、情報処理装置の機能の概要を示す図である。
 図1Aに示すように、情報処理装置10は、所定の金額を支払う支払者1及び所定の金額を受け取る受取者3に関する契約情報を取得する。本実施形態では、契約情報は、ユーザ端末2を介して支払者1により作成される。
 契約情報とは、誰から誰へいくら支払うか、を示す情報である。本実施形態では、契約情報は、支払者及び受取者を含む契約者の属性を示す属性情報及び所定の金額の少なくとも1つを含む。
 例えば、残高3000円のAがBへ1000円を支払う、という契約の場合、契約情報は、Aが支払者、Bが受取者、支払われる金額1000円となる。なお本実施形態では、支払者及び受取者の残高の情報はブロックチェーン上に記録されている。
 なお、所定の金額とは、分配率に基づく支払いを含む。すなわち、所定の金額は、1000円等の定数以外にも、収益率の5%等の変数も含まれる。これ以外にも、純利益や売上の10%など数値及び内容は限定されない。
 また情報処理装置10は、支払者1から取得された契約情報に対して、契約相手である受取者3から同意した旨を示す同意情報を取得する。例えば、同意情報は、ユーザ端末4を介して受取者3により契約情報が確認され、受取者3によりその契約情報が問題ないと判断された場合に作成される。
 情報処理装置10は、取得された契約情報の暗号化を行い、暗号化された契約情報(以下、契約データと記載)をブロックチェーン20に送信する。
 暗号化とは、契約情報が、支払者及び受取者以外に知られることがない状態(秘匿された状態)を示す。すなわち、契約情報が暗号化されることでプライバシー保護が可能となる。なお契約情報の全て、又は契約情報の一部が秘匿された場合も契約情報の暗号化と記載する。
 図1Bは、契約データを示す図である。
 例えば、情報処理装置10は、支払者Aにより作成された「支払者Aから受取者Bに1000円支払う」という契約情報を取得する。情報処理装置10は、契約情報の支払金額(Pay)を暗号化する。なお図1Bに示す、[x(任意の数字)]は、xが支払者の公開鍵により暗号化されていることを示す。
 本実施形態では、情報処理装置10は、支払金額を0円としたダミーの契約者U~Zをサンプルする。これにより、A、B、U~Zの内、誰が支払者で誰が受取者であるかを秘匿し、匿名性の確保、すなわちプライバシーが保護された状態で契約を結ぶことが可能となる。なお、契約データは、暗号化された契約情報以外にも、上記のダミーの契約者に関する契約情報が含まれてもよい。
 契約情報の内容は限定されず、契約に応じて任意に設定されてもよい。例えば、所定の金額をn回に分割する等の支払いを行う回数、支払いを行うまでの期日等が契約情報に含まれてもよい。また例えば、台風又は機材トラブルにより新幹線や航空機が遅延した等の特定の条件が満たされた場合、予約した席の料金の50%が支払われるなどの特定の条件が契約情報として設定されてもよい。
 これ以外にも、例えばスマートコントラクト等により実現される機能が追加されてもよい。また回数や期限等の契約情報が秘匿されなくてもよい。また1人の支払者対多人数の受取者等の、契約に関わる契約者が複数いてもよい。
 図1Cは、契約データの他の例を示す図である。例えば、図1Cでは、図1Bに示す支払者、受取、及び支払額以外の契約情報を含む契約データの例である。図1Cに示すように、契約データは、「支払者Aから受取者Bに収益の20%、受取者Cに収益の30%を10/1までに支払う」という契約を示す。
 なお、支払われる所定の金額として分配率が用いられる場合、支払総額がランダマイズ等されてもよい。
 図2は、情報処理装置10の構成例を示すブロック図である。
 図2に示すように、情報処理装置10は、暗号化部11、同意情報作成部12、送信部13、契約情報変換部14、及び実行部15を有する。
 暗号化部11は、契約情報の暗号化を行う。なお、契約情報の暗号化の方法は限定されない。本実施形態では、暗号化部11は、契約情報が正当なものであることを示すZKproof(Zero Knowledge proof)を作成する。また本実施形態では、契約データ及びproofは、送信部13に供給される。
 同意情報作成部12は、受取者3により確認された契約情報に対する、同意情報を作成する。本実施形態では、同意情報作成部12は、受取者3が契約情報に対して、同意した旨を示すZKproof(以下、同意ZKproofと記載)の作成リクエストに基づいて、同意ZKproofを作成する。また本実施形態では、同意情報作成部12により作成された同意のproofは、送信部13に供給される。
 送信部13は、契約データをブロックチェーン20に送信する。本実施形態では、送信部13は、暗号化部11により作成された、契約データ及びproofをブロックチェーン20に送信する。また送信部13は、同意情報作成部12により作成された同意のproofをブロックチェーン20に送信する。
 契約情報変換部14は、1以上の契約情報を、新たな契約情報へ変換する。例えば、契約情報変換部14は、支払者Aから受取者Bへ1000円が支払われる契約と、支払者Bから受取者Cへ700円が支払われる契約とを、支払者Aから受取者Bへ300円が支払われ、支払者Aから受取者Cへ700円が支払われる契約へ変換する。
 また例えば、支払者Aから受取者Bへ1000円が支払われる契約と、支払者Aから受取者Cへ700円が支払われる契約とが、支払者Aが1700円を支払い、受取者Bが1000円を受け取り、受取者Cが700円を受け取る契約へ変換される。
 すなわち、契約情報変換部14は、AからB、BからCという多段階の支払いを行う契約をAからB及びCへ一括で支払う新たな契約へ変換し、AからB、AからCという複数の契約の支払いをAからB及びCへ一括で支払う新たな契約へ変換するように、複数の契約情報を組み合わせることが可能である。
 実行部15は、ブロックチェーン20に登録された契約情報に基づいて、支払いを自動的に実行する。本実施形態では、実行部15は、支払者1の支払う総額を示す支払総額データ、及び支払者1の残高が支払総額以上であることを示すZKproofを、ブロックチェーン20に送信する。
 なお、自動的とは、ユーザ(支払者1及び受取者3)による支払い等に関する煩雑な操作を必要としないことを示す。例えば、新たな契約情報を作成する操作、ブロックチェーン20に登録する操作、新たに作成された契約情報に基づく支払いを行う操作、等が挙げられる。本実施形態では、情報処理装置10により、支払者1は契約情報の作成と、契約に基づく支払いの実行とを行うだけで契約に基づく支払いが実行される。
 なお契約に基づく支払い(後述する支払フェイズ)が情報処理装置10によって行われてもよい。例えば、期日に達した場合、所定の金額が支払われる、という契約の際に情報処理装置10により契約に基づく支払いが実行されてもよい。もちろん情報処理装置10により支払われるか支払者1によって支払われるかは支払者1や受取者3により設定されてもよい。
 なお、本実施形態において、同意情報作成部12は、契約情報に対して、受取者の同意を示す同意情報を作成する作成部に相当する。
 なお、本実施形態において、送信部13は、暗号化された、所定の金額を支払う支払者及び所定の金額を受け取る受取者に関する契約情報をブロックチェーンに送信する送信部に相当する。
 なお、本実施形態において、契約情報変換部14は、1以上の前記契約情報を、新たな1つの契約情報へ変換する変換部に相当する。
 なお、本実施形態において、実行部15は、契約情報に基づいて、支払を自動的に実行する実行部に相当する。
 [契約フェイズ]
 図3は、契約フェイズ(契約データの作成からブロックチェーン20に登録するまで)のフローを示す図である。本実施形態では、情報処理装置10は、契約者ごとに秘密鍵及び公開鍵を事前に生成し、内部で管理をしているものとする。また図3では、暗号化やZKproof生成にはこれらの鍵も必要に応じて入力として含める。
 図3に示すように、支払者1は、ユーザ端末2を介して、契約情報30を作成する(ステップ101)。支払者1は、契約情報30を情報処理装置10に送信する。また支払者1は、平文での契約情報30を受取者3のユーザ端末4にオフチェーンで送る。
 暗号化部11は、取得された契約情報30を暗号化する(ステップ102)。また暗号化部11は、契約データ31の契約内容が正当なものであることを示すZKproofを作成する(ステップ103)。
 送信部13は、契約データ31及びproof32をブロックチェーン20に送信する(ステップ104)。
 受取者3は、支払者1により作成された契約情報30を確認する(ステップ105)。受取者3は、契約情報30を確認し、同意proofの作成リクエストを情報処理装置10へ送信する(ステップ106)。
 同意情報作成部12は、支払者1及び受取者3から送信された契約情報30が一致しているか否かを判定する(ステップ107)。契約情報30が一致している場合、同意ZKproofが作成される(ステップ108)。また送信部14は、作成された同意のproof33をブロックチェーン20に送信する(ステップ109)。
 ブロックチェーン20は、送信部13から送られてきたproof32を検証する(ステップ110)。検証が通った場合、契約データ31及びproof32がブロックチェーン20の分散台帳35に登録される(ステップ111)。またブロックチェーン20は、同意情報作成部12から送られてきた同意のproof33を検証する(ステップ112)。検証が通った場合、同意のproof33がブロックチェーン20の分散台帳36に登録される(ステップ113)。
 [支払フェイズ]
 図4は、残高データを示す図である。
 本実施形態では、ブロックチェーン20には、加法準同型暗号で暗号化された形で各契約者の残高が記録されているとする。例えば、図4の左図に示すように、契約時における残高データとして、Aの残高1200円とBの残高500円とがブロックチェーン上に記録されている。
 図4の右図に示すように、AからBに1000円支払うという契約が行われた場合、Aの残高から1000円が引かれ、Bの残高が1000円足される。これら支払いに関する処理を図5を用いて説明する。
 図5は、支払フェイズ(支払総額データ及び残高データの作成から残高が更新されるまで)のフローを示す図である。
 図5に示すように、支払者1は、ユーザ端末2を介して、支払総額データ40及び残高データ41を作成する(ステップ201)。支払者1は、支払総額データ40及び残高データ41を情報処理装置10へ送信する(ステップ202)。
 本実施形態では、実行部15は、残高データ41から支払者1の残高が支払総額以上であることを示すZKproof42を作成する(ステップ203)。また実行部15は、支払総額データ40及びZKproof42をブロックチェーン20に送信する(ステップ204)。
 ブロックチェーン20は、ZKproof42を検証する(ステップ205)。検証が通った場合、支払操作が実行される(ステップ206)。本実施形態では、残高データの更新と、支払総額データ及びZKproofの登録とが実行される。また検証が通らない場合、支払操作が停止する。
 またブロックチェーン20は、契約データ43の暗号文を各契約者の残高(分散台帳44)に足し込むことで残高を更新する。更新後の暗号化された残高データ45及び支払総額データ40及びZKproof42は分散台帳46に記録される。
 すなわち、支払フェイズでは、契約データの暗号文を直接残高に足し込むことで契約通りの支払いが可能となる。
 [支払準備フェイズ]
 図3及び図5では、1人の支払者及び1人の受取者による契約情報を例として挙げた。図6及び図7では、支払者A及び受取者Bの契約、支払者B及び受取者Cの契約を例とする。本実施形態では、契約情報変換部14により、図7に示すフローが実行されることで複数の契約情報を組み合わせることが可能である。
 図6は、複数の契約情報を示す図である。図6Aは、支払者A及び受取者Bの契約データを示す図である。図6Bは、支払者B及び受取者Cの契約データを示す図である。図6Cは、支払者B及び受取者Cの契約データが変換された新たな契約データを示す図である。
 図6Aに示すように、「支払者Aから受取者Bに収益の50%が支払われる」という契約を示す契約情報とサンプルされたダミーの契約者U~Zとを示す契約データが図示される。
 図6Bに示すように、「支払者Bから受取者Cに収益の30%が支払われる」という契約を示す契約情報とサンプルされたダミーの契約者P~RとU~Wとを示す契約データが図示される。なお、図6Bにおける支払者Bの収益とは、支払者Aから支払われた支払総額を指す。
 契約情報変換部14は、図6Bに示す契約データを図6Cに示す契約データに変換する。
 図6における例では、受取者Cの受け取る金額は、Aの支払総額の内、50%の30%のため15%となる。すなわち、図6に示すように契約情報変換部14は、Cに支払われる割合を15%に変換する。
 変換された後は支払フェイズが実行されることで支払が行われる。なお支払の際は、変換後の契約データが参照される。
 図7は、支払準備フェイズ(契約データの変換からブロックチェーン20に登録するまで)のフローを示す図である。なお図7では、属性情報を省略して記載することがある。例えば、支払者A及び受取者Bの契約をA及びBの契約と記載する。また契約情報についても同様である。例えば、B及びCの契約情報と記載した場合は、支払者B及び受取者Cに関する契約情報を指す。
 図7に示すように本実施形態では、Bは、ユーザ端末50を介して、A及びBの契約情報51とB及びCの契約情報52とを情報処理装置10へ送信する。
 契約情報変換部14は、A及びBの契約情報51とB及びCの契約情報52とに基づいて、B及びCの契約情報52を変換する(ステップ301)。本実施形態では、契約情報変換部14は、B及びCの契約情報52を、A及びBの契約情報51との整合性を取りながら一括で支払いが出来る様に都合の良い形に変換をする。
 暗号化部11は、変換されたB及びCの契約情報53を暗号化する(ステップ302)。また暗号化部11は、変換及び暗号化の途中に不正な操作が含まれていないことを示すZKproofを作成する(ステップ303)。
 送信部13は、契約情報変換部14によりA及びBの契約情報51と変換されたB及びCの契約データ54とが、統合された新たな契約データ(以下、変換後の契約データ55と記載)及びproof56をブロックチェーン20に送信する(ステップ304)。
 ブロックチェーン20は、送信部13から送られてきたproof56を検証する(ステップ305)。検証が通った場合、変換後の契約データ55及びproof56がブロックチェーン20の分散台帳57に登録される(ステップ306)。
 図7に示す支払い準備フェイズが実行されることで、A及びBの契約が実行された際にBからCへの契約が自動的に実行される。すなわち、AからBへの支払いが実行された後に、Bが改めてCへの支払いを実行する必要がなくなる。また支払準備フェイズは、1度実行されることで、その後何度でも支払いが可能となるため、支払いを行う動作を省略することができ、ユーザビリティの向上が可能となる。
 [実施例]
 本技術が適用可能な実施例を挙げる。なお、下記の実施例では、x、x'は任意の数字を示す。
 「毎月x円を支払う」等のサブスクリプションサービスの利用料の支払いが実施例として挙げられる。例えば、支払者がサービスの利用者、受取者がサービスの提供者である。この場合、契約フェイズ及び支払フェイズにより自動的に支払が実行される。
 「収益のx%を著作者に支払う」等の著作権料の支払いが実施例として挙げられる。音楽の場合、「配信サービスを行う事業者から、収益のx%が出版社に支払われる」という契約と、「出版社から、収益のx'%がアーティストに支払われる」という契約とが想定される。この場合、事業者及び出版社、出版社及びアーティストの各々が契約フェイズで契約を結び、契約準備フェイズにおいて出版社が契約データの変換を行う。この後に支払フェイズが実行されることで、事業者から出版社及びアーティストへの支払いが行われる。
 「収益のx%を原作者に支払う」等のコンテンツにおけるx次創作に伴う著作権料の支払いが実施例として挙げられる。例えば、「2次創作コンテンツの利用者から、利用料のx%が2次創作者に支払われる」という契約と、「2次創作者から、利用料のx'%が原作者に支払われる」という契約とが想定される。この場合、利用者及び2次創作者、2次創作者及び原作者の各々が契約フェイズで契約を結び、契約準備フェイズにおいて2次創作者が契約データの変換を行う。この後に支払フェイズが実行されることで、利用者から2次創作者及び原作者への支払いが行われる。
 以上、本実施形態に係る情報処理装置10では、暗号化された、所定の金額を支払う支払者1及び所定の金額を受け取る受取者3に関する契約情報がブロックチェーン20に送信される。契約情報に基づいて、支払いが自動的に実行される。これにより、ブロックチェーンで管理された契約情報のプライバシーを保護しながら自動的に支払を行うことが可能となる。
 従来、ブロックチェーンは、同一の台帳を参加者全員で複製して保持するという特性上、ブロックチェーン上のデータは参加者全員に公開されてしまい、プライバシー保護の観点からユースケースが限られる。またゼロ知識証明等の暗号技術を用いる場合、単純な支払い機能のみを使うこととなり、ブロックチェーンに記録された契約を自動で執行するスマートコントラクトの活用が難しい。
 そこで本技術では、暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報をブロックチェーンに登録し、登録された契約情報に基づいて、支払が自動的に実行される。これにより、ブロックチェーンで管理された契約情報のプライバシーを保護しながら自動的に支払を行うことが可能となる。またプライバシーを保護した状態で、ブロックチェーンとスマートコントラクトとの機能を用いることで様々なユースケースに柔軟に対応できる。
 <その他の実施形態>
 本技術は、以上説明した実施形態に限定されず、他の種々の実施形態を実現することができる。
 上記の実施形態では、契約フェイズ、支払フェイズ、及び支払準備フェイズが実行される際に情報処理装置10を介してブロックチェーン20に種々のデータが送信された。これに限定されず、支払者及び受取者のユーザ端末からブロックチェーン20に種々のデータが送信されてもよい。すなわち、支払者及び受取者のユーザ端末が情報処理装置10の機能を実現してもよい。
 図8は、契約フェイズの他のフローを示す図である。本実施形態では、各契約者は、自身の端末上で秘密鍵及び公開鍵を事前に生成し、公開鍵は自分以外の契約者(パーティ)に公開しているとする。また図8では、暗号化やZKproof生成にはこれらの鍵も必要に応じて入力として含める。
 図8に示すように、支払者1は、ユーザ端末2を介して、契約情報60を作成する(ステップ401)。また支払者1は、平文での契約情報60を受取者3のユーザ端末4にオフチェーンで送る。
 暗号化部11は、作成された契約情報60を暗号化する(ステップ402)。また暗号化部11は、契約データの契約内容が正当なものであることを示すZKproofを作成する(ステップ403)。
 送信部13は、契約データ61及びproof62をブロックチェーン20に送信する(ステップ104)。
 受取者3は、支払者1により作成された契約情報60を確認する(ステップ405)。本実施形態では、受取者3は、契約情報60の内容に異論がなく、かつ、ブロックチェーン20上の契約情報60が支払者1から受け取った契約情報60を正しく暗号化しているかを確認する。
 契約情報が正しい場合、同意情報作成部12は、同意ZKproofを作成する(ステップ406)。送信部13は、作成された同意のproof63をブロックチェーン20に送信する(ステップ407)。
 ブロックチェーン20は、送信部13から送られてきたproof62を検証する(ステップ408)。検証が通った場合、契約データ61及びproof62がブロックチェーン20の分散台帳64に登録される(ステップ409)。またブロックチェーン20は、ユーザ端末4から送られてきた同意のproof63を検証する(ステップ410)。検証が通った場合、同意のproof63がブロックチェーン20の分散台帳65に登録される(ステップ411)。
 図9は、支払フェイズの他のフローを示す図である。
 図9に示すように、支払者1は、ユーザ端末2を介して、支払総額データ70及び残高データを作成する(ステップ501)。実行部15は、残高データから支払者1の残高が支払総額以上であることを示すZKproofを作成する(ステップ502)。また実行部15は、支払総額データ70及びZKproof71をブロックチェーン20に送信する(ステップ503)。
 ブロックチェーン20は、ZKproof71を検証する(ステップ504)。検証が通った場合、支払操作が実行される(ステップ505)。本実施形態では、残高データの更新と、支払総額データ及びZKproofの登録とが実行される。
 またブロックチェーン20は、契約データ72の暗号文を各契約者の残高(分散台帳73)に足し込むことで残高を更新する。更新後の暗号化された残高データ74及び支払総額データ70及びZKproof71は分散台帳75に記録される。
 図10は、支払準備フェイズの他のフローを示す図である。なお図10は、図7同様に属性情報を省略して記載することがある。
 図10に示すように契約情報変換部14は、Bのユーザ端末80により取得された、A及びBの契約情報81とB及びCの契約情報82とに基づいて、B及びCの契約情報82を変換する(ステップ601)。本実施形態では、契約情報変換部14は、B及びCの契約情報82を、A及びBの契約情報81との整合性を取りながら一括で支払いが出来る様に都合の良い形に変換をする。
 暗号化部11は、変換されたB及びCの契約情報82を暗号化する(ステップ602)。また暗号化部11は、変換及び暗号化の途中に不正な操作が含まれていないことを示すZKproofを作成する(ステップ603)。
 送信部13は、契約情報変換部14によりA及びBの契約情報81と変換されたB及びCの契約データ83とが、統合された新たな契約データ(以下、変換後の契約データ84と記載)及びproof85をブロックチェーン20に送信する(ステップ604)。
 ブロックチェーン20は、送信部13から送られてきたproof85を検証する(ステップ605)。検証が通った場合、変換後の契約データ84及びproof85がブロックチェーン20の分散台帳86に登録される(ステップ606)。
 上記の実施形態では、契約フェイズ、支払フェイズ、及び支払準備フェイズにおいて、支払総額データやZKproof等がブロックチェーン20に送信された。これに限定されず、契約や支払等に必要な情報が適宜送信されてもよい。例えば、図7におけるBが支払いを行う際のZKproofに必要な、暗号化に使った乱数の情報等が送信されてもよい。
 図11は、情報処理装置10のハードウェア構成例を示すブロック図である。
 情報処理装置10は、CPU101、ROM102、RAM103、入出力インタフェース105、及びこれらを互いに接続するバス104を備える。入出力インタフェース105には、表示部106、入力部107、記憶部108、通信部109、及びドライブ部110等が接続される。
 表示部106は、例えば液晶、EL等を用いた表示デバイスである。入力部107は、例えばキーボード、ポインティングデバイス、タッチパネル、その他の操作装置である。入力部107がタッチパネルを含む場合、そのタッチパネルは表示部106と一体となり得る。
 記憶部108は、不揮発性の記憶デバイスであり、例えばHDD、フラッシュメモリ、その他の固体メモリである。ドライブ部110は、例えば光学記録媒体、磁気記録テープ等、リムーバブルの記録媒体111を駆動することが可能なデバイスである。
 通信部109は、LAN、WAN等に接続可能な、他のデバイスと通信するためのモデム、ルータ、その他の通信機器である。通信部109は、有線及び無線のどちらを利用して通信するものであってもよい。通信部109は、情報処理装置10とは別体で使用される場合が多い。本実施形態では、通信部109により、ネットワークを介した他の装置との通信が可能となる。
 上記のようなハードウェア構成を有する情報処理装置10による情報処理は、記憶部108またはROM102等に記憶されたソフトウェアと、情報処理装置10のハードウェア資源との協働により実現される。具体的には、ROM102等に記憶された、ソフトウェアを構成するプログラムをRAM103にロードして実行することにより、本技術に係る情報処理方法が実現される。
 プログラムは、例えば記録媒体111を介して情報処理装置10にインストールされる。あるいは、グローバルネットワーク等を介してプログラムが情報処理装置10にインストールされてもよい。その他、コンピュータ読み取り可能な非一過性の任意の記憶媒体が用いられてよい。
 通信端末に搭載されたコンピュータとネットワーク等を介して通信可能な他のコンピュータとが連動することにより本技術に係る情報処理装置、情報処理方法、及びプログラムが実行され、本技術に係る情報処理装置が構築されてもよい。
 すなわち本技術に係る情報処理装置、情報処理方法、及びプログラムは、単体のコンピュータにより構成されたコンピュータシステムのみならず、複数のコンピュータが連動して動作するコンピュータシステムにおいても実行可能である。なお、本開示において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれもシステムである。
 コンピュータシステムによる本技術に係る情報処理装置、情報処理方法、及びプログラムの実行は、例えば、契約情報の暗号化、同意情報の作成、及び契約情報の変換等が、単体のコンピュータにより実行される場合、及び各処理が異なるコンピュータにより実行される場合の両方を含む。また所定のコンピュータによる各処理の実行は、当該処理の一部又は全部を他のコンピュータに実行させその結果を取得することを含む。
 すなわち本技術に係る情報処理装置、情報処理方法、及びプログラムは、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成にも適用することが可能である。
 各図面を参照して説明した暗号化部、同意情報作成部、契約情報変換部等の各構成、通信システムの制御フロー等はあくまで一実施形態であり、本技術の趣旨を逸脱しない範囲で、任意に変形可能である。すなわち本技術を実施するための他の任意の構成やアルゴリズム等が採用されてよい。
 なお、本開示中に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。上記の複数の効果の記載は、それらの効果が必ずしも同時に発揮されるということを意味しているのではない。条件等により、少なくとも上記した効果のいずれかが得られることを意味しており、もちろん本開示中に記載されていない効果が発揮される可能性もある。
 以上説明した各形態の特徴部分のうち、少なくとも2つの特徴部分を組み合わせることも可能である。すなわち各実施形態で説明した種々の特徴部分は、各実施形態の区別なく、任意に組み合わされてもよい。
 なお、本技術は以下のような構成も採ることができる。
(1)
 暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報をブロックチェーンに送信する送信部と、
 前記契約情報に基づいて、支払を自動的に実行する実行部と
 を具備する情報処理装置。
(2)(1)に記載の情報処理装置であって、
 前記契約情報は、前記支払者及び前記受取者を含む契約者の属性を示す属性情報及び前記所定の金額の少なくとも一方を含む
 情報処理装置。
(3)(2)に記載の情報処理装置であって、
 前記所定の金額は、分配率に基づく金額を含む
 情報処理装置。
(4)(1)に記載の情報処理装置であって、さらに、
 前記契約情報に対して、前記受取者の同意を示す同意情報を作成する作成部を具備する
 情報処理装置。
(5)(4)に記載の情報処理装置であって、
 前記送信部は、前記同意情報を前記ブロックチェーンに送信する
 情報処理装置。
(6)(1)に記載の情報処理装置であって、さらに、
 1以上の前記契約情報を、新たな1つの契約情報へ変換する変換部を具備する
 情報処理装置。
(7)(6)に記載の情報処理装置であって、
 前記変換部は、第1の金額を支払う第1の人物及び前記第1の金額を受け取る第2の人物に関する第1の契約情報と、第2の金額を支払う前記第2の人物及び前記第2の金額を受け取る第3の人物に関する第2の契約情報とを、前記第1の金額を支払う前記第1の人物、前記第1の金額から前記第2の金額の差額を受け取る前記第2の人物、及び前記第2の金額を受け取る前記第3の人物に関する第3の契約情報へ変換する
 情報処理装置。
(8)(6)に記載の情報処理装置であって、
 前記変換部は、第1の金額を支払う第1の人物及び前記第1の金額を受け取る第2の人物に関する第1の契約情報と、第2の金額を支払う前記第1の人物及び前記第2の金額を受け取る第3の人物に関する第2の契約情報とを、前記第1の金額及び前記第2の金額の合計金額を支払う前記第1の人物、前記第1の金額を受け取る前記第2の人物、及び前記第2の金額を受け取る前記第3の人物に関する第3の契約情報へ変換する
 情報処理装置。
(9)(1)に記載の情報処理装置であって、
 前記暗号化された契約情報は、前記契約情報の正当性を証明するゼロ知識証明を含む
 情報処理装置。
(10)(4)に記載の情報処理装置であって、
 前記同意情報は、前記契約情報が正しく暗号化されたことのゼロ知識証明を含む
 情報処理装置。
(11)
 暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報をブロックチェーンに送信し、
 前記契約情報に基づいて、支払を自動的に実行する
 ことをコンピュータシステムが実行する情報処理方法。
(12)
 暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報をブロックチェーンに送信するステップと、
 前記契約情報に基づいて、支払を自動的に実行するステップと
 をコンピュータシステムが実行するプログラム。
 10…情報処理装置
 12…同意情報作成部
 13…送信部
 14…契約情報変換部
 15…実行部
 20…ブロックチェーン

Claims (12)

  1.  暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報をブロックチェーンに送信する送信部と、
     前記契約情報に基づいて、支払を自動的に実行する実行部と
     を具備する情報処理装置。
  2.  請求項1に記載の情報処理装置であって、
     前記契約情報は、前記支払者及び前記受取者を含む契約者の属性を示す属性情報及び前記所定の金額の少なくとも一方を含む
     情報処理装置。
  3.  請求項2に記載の情報処理装置であって、
     前記所定の金額は、分配率に基づく金額を含む
     情報処理装置。
  4.  請求項1に記載の情報処理装置であって、さらに、
     前記契約情報に対して、前記受取者の同意を示す同意情報を作成する作成部を具備する
     情報処理装置。
  5.  請求項4に記載の情報処理装置であって、
     前記送信部は、前記同意情報を前記ブロックチェーンに送信する
     情報処理装置。
  6.  請求項1に記載の情報処理装置であって、さらに、
     1以上の前記契約情報を、新たな1つの契約情報へ変換する変換部を具備する
     情報処理装置。
  7.  請求項6に記載の情報処理装置であって、
     前記変換部は、第1の金額を支払う第1の人物及び前記第1の金額を受け取る第2の人物に関する第1の契約情報と、第2の金額を支払う前記第2の人物及び前記第2の金額を受け取る第3の人物に関する第2の契約情報とを、前記第1の金額を支払う前記第1の人物、前記第1の金額から前記第2の金額の差額を受け取る前記第2の人物、及び前記第2の金額を受け取る前記第3の人物に関する第3の契約情報へ変換する
     情報処理装置。
  8.  請求項6に記載の情報処理装置であって、
     前記変換部は、第1の金額を支払う第1の人物及び前記第1の金額を受け取る第2の人物に関する第1の契約情報と、第2の金額を支払う前記第1の人物及び前記第2の金額を受け取る第3の人物に関する第2の契約情報とを、前記第1の金額及び前記第2の金額の合計金額を支払う前記第1の人物、前記第1の金額を受け取る前記第2の人物、及び前記第2の金額を受け取る前記第3の人物に関する第3の契約情報へ変換する
     情報処理装置。
  9.  請求項1に記載の情報処理装置であって、
     前記暗号化された契約情報は、前記契約情報の正当性を証明するゼロ知識証明を含む
     情報処理装置。
  10.  請求項4に記載の情報処理装置であって、
     前記同意情報は、前記契約情報が正しく暗号化されたことのゼロ知識証明を含む
     情報処理装置。
  11.  暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報をブロックチェーンに送信し、
     前記契約情報に基づいて、支払を自動的に実行する
     ことをコンピュータシステムが実行する情報処理方法。
  12.  暗号化された、所定の金額を支払う支払者及び前記所定の金額を受け取る受取者に関する契約情報をブロックチェーンに送信するステップと、
     前記契約情報に基づいて、支払を自動的に実行するステップと
     をコンピュータシステムが実行するプログラム。
PCT/JP2022/033998 2021-11-04 2022-09-12 情報処理装置、情報処理方法、及びプログラム WO2023079832A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-180271 2021-11-04
JP2021180271 2021-11-04

Publications (1)

Publication Number Publication Date
WO2023079832A1 true WO2023079832A1 (ja) 2023-05-11

Family

ID=86241260

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/033998 WO2023079832A1 (ja) 2021-11-04 2022-09-12 情報処理装置、情報処理方法、及びプログラム

Country Status (1)

Country Link
WO (1) WO2023079832A1 (ja)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020501402A (ja) * 2018-11-30 2020-01-16 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited 分権的決定を使用するブロックチェーンスマートコントラクトの更新
JP2020013405A (ja) * 2018-07-19 2020-01-23 株式会社ユナイテッドスマイルズ 情報処理方法、情報処理装置及びプログラム
JP2020068388A (ja) * 2018-10-19 2020-04-30 日本電信電話株式会社 コンテンツ契約システム、コンテンツ契約方法、権利者端末、譲受人端末、制御端末、コンテンツ蓄積サーバ、権利者プログラム、譲受人プログラム、制御プログラムおよびコンテンツ蓄積プログラム
KR102103553B1 (ko) * 2019-08-07 2020-06-01 주식회사 요트북 블록체인기술을 이용한 선박의 이력 및 등록 서비스 제공 서버 및 시스템
US20200374700A1 (en) * 2018-02-09 2020-11-26 Intel Corporation Trusted iot device configuration and onboarding
JP2021064891A (ja) * 2019-10-16 2021-04-22 株式会社日立製作所 コンソーシアムブロックチェーンシステム、計算機、トランザクション承認方法
WO2021181606A1 (ja) * 2020-03-12 2021-09-16 株式会社日立物流 対価支払支援システム、情報処理装置、対価支払支援方法、及びプログラム
JP2021166499A (ja) * 2020-04-13 2021-10-21 積水化学工業株式会社 情報処理方法、情報処理装置、情報処理システム及びプログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200374700A1 (en) * 2018-02-09 2020-11-26 Intel Corporation Trusted iot device configuration and onboarding
JP2020013405A (ja) * 2018-07-19 2020-01-23 株式会社ユナイテッドスマイルズ 情報処理方法、情報処理装置及びプログラム
JP2020068388A (ja) * 2018-10-19 2020-04-30 日本電信電話株式会社 コンテンツ契約システム、コンテンツ契約方法、権利者端末、譲受人端末、制御端末、コンテンツ蓄積サーバ、権利者プログラム、譲受人プログラム、制御プログラムおよびコンテンツ蓄積プログラム
JP2020501402A (ja) * 2018-11-30 2020-01-16 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited 分権的決定を使用するブロックチェーンスマートコントラクトの更新
KR102103553B1 (ko) * 2019-08-07 2020-06-01 주식회사 요트북 블록체인기술을 이용한 선박의 이력 및 등록 서비스 제공 서버 및 시스템
JP2021064891A (ja) * 2019-10-16 2021-04-22 株式会社日立製作所 コンソーシアムブロックチェーンシステム、計算機、トランザクション承認方法
WO2021181606A1 (ja) * 2020-03-12 2021-09-16 株式会社日立物流 対価支払支援システム、情報処理装置、対価支払支援方法、及びプログラム
JP2021166499A (ja) * 2020-04-13 2021-10-21 積水化学工業株式会社 情報処理方法、情報処理装置、情報処理システム及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Cryptocurrency Monthly", 23 August 2018, PLEASURE PUBLISHING , JP, ISBN: 978-4-9909183-8-5, article ANONYMOUS: "Quras", pages: 64 - 65, XP009546006 *

Similar Documents

Publication Publication Date Title
JP7480222B2 (ja) スマートコントラクトに基づく自動給与支払方法及びシステムをもたらす、ブロックチェーン上の給与支払に関連付けられた暗号通貨の効率的な転送のための方法及びシステム
JP7281514B2 (ja) デジタルコンテンツの制御及び配信のためのブロックチェーンにより実施される方法
KR102180991B1 (ko) 블록 체인 기밀 거래의 규제
US11018851B2 (en) Multi-blockchain digital transaction information segregation system
Warren et al. 0x: An open protocol for decentralized exchange on the Ethereum blockchain
WO2020103566A1 (zh) 一种区块链存证方法、装置和计算机设备
EP3794773B1 (en) Blockchain-based trustable guarantees
CN110796449B (zh) 交易处理方法、系统、介质和计算设备
CN111373431A (zh) 基于区块链的可信保函
CN111417945B (zh) 基于区块链的可信保函
CN113826134B (zh) 基于区块链的可信保函
EP3794484B1 (en) Blockchain-based trustable guarantees
CN111433799A (zh) 基于区块链的可信保函
CN104200365A (zh) 一种电子支票的开票及解付方法
CN111915302B (zh) 关联数据处理方法、装置、电子设备及计算机可读介质
WO2023079832A1 (ja) 情報処理装置、情報処理方法、及びプログラム
CN112400298B (zh) 验证交易系统和方法用于加至电子区块链
JP2020184125A (ja) 支払支援システム、支払支援方法及び支払支援プログラム
JP4249423B2 (ja) 支払管理サーバ、支払管理方法および支払管理用プログラム
KR102263220B1 (ko) 블록체인을 이용한 전자상거래 지불 방법
CN113475037A (zh) 使用虚拟区块链协议来实施公平电子交换
TWI684931B (zh) 使用區塊鏈技術之代幣交換系統及其方法
TWI684932B (zh) 使用區塊鏈技術之代幣交易系統及其方法
JP2022011103A (ja) 仮想通貨を用いたエスクロー処理方法、システムおよびプログラム
CN114626843A (zh) 预付费支付方法、装置、设备和存储介质

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2023557639

Country of ref document: JP

Kind code of ref document: A