WO2020008658A1 - 通貨情報処理装置および通貨情報処理システム - Google Patents

通貨情報処理装置および通貨情報処理システム Download PDF

Info

Publication number
WO2020008658A1
WO2020008658A1 PCT/JP2018/034077 JP2018034077W WO2020008658A1 WO 2020008658 A1 WO2020008658 A1 WO 2020008658A1 JP 2018034077 W JP2018034077 W JP 2018034077W WO 2020008658 A1 WO2020008658 A1 WO 2020008658A1
Authority
WO
WIPO (PCT)
Prior art keywords
cryptocurrency
cancellation
temporary
custodian
information processing
Prior art date
Application number
PCT/JP2018/034077
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 JP2019506470A priority Critical patent/JP6521421B1/ja
Priority to SG11201906140PA priority patent/SG11201906140PA/en
Priority to US16/466,205 priority patent/US10810586B2/en
Priority to EP18882275.3A priority patent/EP3611680A4/en
Publication of WO2020008658A1 publication Critical patent/WO2020008658A1/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/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/405Establishing or using transaction specific rules
    • 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/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • 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
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • 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
    • G06Q2220/00Business processing using cryptography
    • 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 a currency information processing device and a currency information processing system.
  • tokens and borrowed letters are issued on the blockchain in accordance with agreements (promises) between the parties concerned, and their assets are not necessarily secured or approved by the person or organization that secured the assets Is not necessarily performed. For this reason, there are cases in which only fictitious numbers are exchanged on the blockchain and marketing activities are called tokens, and cases where funds are raised in accordance with ICO (coin trading listing).
  • ICO coin trading listing
  • assets can be registered without going through the underlying cryptocurrency, and the registration of the assets can be performed by the institution that manages the assets or custodians (for example, trust banks and other custodian). It is also conceivable to build a mechanism on a blockchain that can be used as a coin (currency) upon approval of the institution (for example, see Patent Document 1).
  • a multi-signature (multi-sig) method is adopted to express a specific asset. It is conceivable to adopt a configuration in which a plurality of signatures are required for a coin transaction to be performed. In such a scheme, a plurality of signatures may be performed by a user, a coin issuer, and a custodian, or a plurality of signatures may be performed by a user and a custodian. Is also good.
  • the present invention has been made in view of the above circumstances, and a currency information processing apparatus for securely and reliably using cryptocurrencies on a blockchain whose value is secured and the risk of value fluctuation is reduced. And a currency information processing system.
  • the currency information processing device can process cryptocurrencies in a method of validating cryptocurrency transactions on the blockchain based on a plurality of signatures, and has a receiving unit, a temporary issuing unit, and a setting unit.
  • the receiving unit can receive a cryptocurrency issuance application including a first signature from the user regarding issuance of the cryptocurrency.
  • the temporary issuing unit issues a temporary cryptocurrency on the blockchain based on the cryptocurrency issuance application received by the receiving unit.
  • the setting unit receives a second signature by the custodian regarding the temporary cryptocurrency from the custodian within a predetermined period after the temporary cryptocurrency is issued by the temporary issuing unit, and the second signature is valid. Is set, the provisional cryptocurrency issued by the provisional issuance unit is set to be processed as an approved valid cryptocurrency.
  • the currency information processing system is composed of a user terminal, a currency information processing device, and a custodian system connected via a network, and uses a plurality of signatures to activate a cryptocurrency transaction on a blockchain using a cryptocurrency. Can be processed.
  • the user terminal generates a cryptocurrency issuance application including a first signature by the user regarding issuance of a cryptocurrency having a predetermined value in a predetermined currency and transmits the cryptocurrency issuance request to the currency information processing device based on the user's instruction.
  • a transmitting unit; and a notifying unit that notifies the custodian system of information on remittance of a predetermined amount to the custodian system and information on transmission of a cryptocurrency issuance application to the currency information processing device.
  • the currency information processing device includes a receiving unit capable of receiving a cryptocurrency issuance application transmitted from a user terminal, and a temporary issuance unit that issues a temporary cryptocurrency on a blockchain based on the cryptocurrency issuance application received by the receiving unit. And a second signature by the custodian regarding the temporary cryptocurrency is received from the custodian within a predetermined period after the temporary cryptocurrency is issued by the temporary issuance unit, and the second signature is valid. And a setting unit for setting the temporary cryptocurrency issued by the temporary issuing unit to be processed as an approved valid cryptocurrency.
  • the custodian system confirms that a temporary cryptocurrency corresponding to a predetermined amount has been issued in the currency information processing device and that the remittance of the predetermined amount has been executed based on the notification from the user terminal.
  • the confirmation unit and the confirmation unit confirm the issuance of the provisional cryptocurrency corresponding to the predetermined amount and the execution of the remittance of the predetermined amount, generate a second signature by the custodian regarding the provisional cryptocurrency.
  • a transmission unit for transmitting to the currency information processing device.
  • a cryptocurrency issuance request including a user signature is received from a user in a method of validating cryptocurrency transactions on a blockchain based on a plurality of signatures, Issues a temporary cryptocurrency. If a valid custodian signature for the temporary cryptocurrency is received from the custodian within a predetermined period of time after the provisional cryptocurrency is issued, the issued temporary cryptocurrency is a valid cryptocurrency approved Set to be processed as. This makes it possible to securely and reliably provide a cryptocurrency on the blockchain whose value is secured and the risk of value fluctuation is reduced. Therefore, the cryptocurrency whose value is stable and which can be used as asset holding means can be used safely and reliably.
  • FIG. 2 is a block diagram illustrating a schematic configuration of a user terminal. It is a block diagram which shows schematic structure of a currency information processing server. It is a block diagram showing a schematic structure of a custodian system. It is a sequence diagram which shows the flow of a cryptocurrency issuing process in a currency information processing system. It is a sequence diagram which shows the flow of a cryptocurrency cancellation process in a currency information processing system.
  • FIG. 1 is a diagram showing an overall configuration of a system to which a currency information processing device is applied.
  • the currency information processing system according to the present embodiment is provided so that a user can safely and reliably use cryptocurrencies on a blockchain whose value is secured.
  • a method of validating a cryptocurrency transaction on a blockchain based on a plurality of signatures is used.
  • the currency information processing system includes a user terminal 100, a currency information processing server 200, and a custodian system 300. Each component is configured to be able to communicate with each other through a peer-to-peer network.
  • the blockchain of is stored.
  • the user terminal 100 is a mobile terminal such as a smartphone used by the user or an information terminal such as a notebook PC or a desktop PC.
  • the currency information processing server 200 is a server provided by a provider of a cryptocurrency (coin) and provides a cryptocurrency.
  • the currency information processing server 200 receives a cryptocurrency issuance application from the user terminal 100 and receives a first electronic signature by the user to provisionally issue a cryptocurrency, or issues a second digital signature by the custodian from the custodian system 300. It approves received and provisionally issued cryptocurrencies as valid.
  • the currency information processing server 200 functions as a currency information processing device.
  • the custodian system 300 is a system constructed in a trust bank or another institution that performs custodian business, and is a system for managing various assets of users.
  • the custodian system 300 is configured by, for example, a server.
  • the trust bank or the like constructing the custodian system 300 secures the value of the cryptocurrency issued on the blockchain in the present embodiment. For example, if a cryptocurrency is issued in units of "yen coin” that has the same value as the real currency "yen”, the trust bank etc. will convert “yen coin” to the equivalent of "yen” And processing such as currency conversion.
  • the currency information processing server 200 When receiving the cryptocurrency generation application including the first signature by the user relating to the issuance of the cryptocurrency from the user terminal 100, the currency information processing server 200 changes the temporary cryptocurrency on the blockchain based on the received cryptocurrency issuance application. Issue.
  • the currency information processing server 200 receives the custodian's second signature related to the temporary cryptocurrency from the custodian system 300 within a predetermined period after the temporary cryptocurrency is issued, and the second signature is valid. If it is determined that the cryptocurrency is valid, the provisional cryptocurrency is set to be processed as an approved valid cryptocurrency.
  • the method of validating cryptocurrency transactions based on a plurality of signatures is adopted, and even if a plurality of signatures are not aligned, the issuance of cryptocurrencies on the blockchain (Create) can be applied. If it is confirmed that the first digital signature by the user (hereinafter, also referred to as a user signature) is valid, the issuance of a temporary cryptocurrency on the blockchain based on the user's intention is disclosed. Can be.
  • the user designates a custodian who secures the value of the cryptocurrency, remits the amount corresponding to the value of the cryptocurrency to the custodian, and also sends the amount of remittance and the address, etc. Send information to custodians.
  • the custodian assures that "1 yen coin” which is a cryptocurrency on the blockchain has a value equivalent to "1 yen” which is a real currency.
  • the unit of the currency corresponding to the cryptocurrency is not limited to "yen”, and any cryptocurrency corresponding to any real currency unit such as "dollar", “yuan”, “euro” can be issued.
  • a custodian may ensure that “$ 1 coin” has a value corresponding to “$ 1” which is a real currency.
  • the custodian who received the notification confirms the existence of application information on the issuance of "1 million coin” on the blockchain, confirms the deposit information such as the deposit amount, and checks the application information and the deposit information on the blockchain. If is matched, a digital signature (hereinafter, also referred to as a custodian signature) by a custodian relating to the temporary cryptocurrency, which is the second signature, is generated. Since only the designated custodian can generate a valid second signature, the fact that the asset is secured by the custodian is published on the blockchain.
  • a digital signature hereinafter, also referred to as a custodian signature
  • the custodian does not generate a second signature for the transaction related to the provisional cryptocurrency if there is a mismatch between the application information and the payment information.
  • the custodian may notify the user to correct the inconsistency by, for example, e-mail or telephone.
  • the user may again apply for issuance of the correct content on the blockchain, or may additionally execute remittance processing or asset transfer to resolve the inconsistency. This allows the custodians to secure assets on the blockchain after the users and custodians cooperate and agree.
  • the second signature can be generated only by the designated custodian, the risk of impropriety due to hacking or eavesdropping by a third party is also suppressed.
  • FIG. 2 is a block diagram showing a schematic configuration of the user terminal.
  • the user terminal 100 includes a CPU (Central Processing Unit) 110, a ROM (Read Only Memory) 120, a RAM (Random Access Memory) 130, a storage 140, a communication interface 150, and an operation display unit 160.
  • the components are connected to each other via a bus 170 so that they can communicate with each other.
  • the CPU 110 controls the above-described components and performs various arithmetic processes according to programs recorded in the ROM 120 and the storage 140.
  • the CPU 110 functions as a transmission unit and a notification unit by executing a program stored in the storage 140.
  • the ROM 120 stores various programs and various data.
  • the RAM 130 temporarily stores programs and data as a work area.
  • the storage 140 stores various programs including an operating system and various data. For example, in the storage 140, an application for receiving an application for issuing a cryptocurrency from a user and transmitting the application to the currency information processing server 200, or generating a first signature (user signature) by the user and sending the first signature to the currency information processing server 200 An application for sending has been installed.
  • the storage 140 also stores a blockchain 500 in which information on cryptocurrencies is recorded. Since the block chain 500 can be configured by a known block chain that can process various types of cryptocurrencies, detailed description is omitted. In addition, a method of an electronic signature using a secret key and a public key is also a known technique, and thus detailed description is omitted.
  • the communication interface 150 is an interface for communicating with other devices via a network.
  • standards such as 3G and 4G for mobile phone communication and standards such as Wi-Fi (registered trademark) are used.
  • the operation display unit 160 is, for example, a touch panel display, which displays various information and receives various inputs from the user.
  • FIG. 3 is a block diagram showing a schematic configuration of the currency information processing server.
  • the currency information processing server 200 includes a CPU 210, a ROM 220, a RAM 230, a storage 240, a communication interface 250, an operation unit 260, and a display unit 270.
  • the components are connected to each other via a bus 280 so that they can communicate with each other.
  • the CPU 210, the ROM 220, and the RAM 230 have the same functions as the CPU 110, the ROM 120, and the RAM 130 of the user terminal 100, and a description thereof will be omitted to avoid redundant description.
  • the CPU 210 functions as a receiving unit, a temporary issuing unit, a setting unit, a notification unit, a cancel accepting unit, a temporary canceling unit, and a cancel setting unit by executing a program stored in the storage 240.
  • the storage 240 stores various programs including an operating system and various data.
  • the storage 240 stores a blockchain 500 in which information on cryptocurrencies is recorded.
  • a program for receiving a cryptocurrency issuance application including a first signature from the user regarding the generation of cryptocurrency from the user terminal 100 is installed in the storage 240.
  • a program for issuing (temporarily issuing) a temporary cryptocurrency on the blockchain 500 based on the received cryptocurrency issuance application is also installed in the storage 240.
  • a program for receiving a second signature (custodian signature) by the custodian regarding the temporary cryptocurrency from the custodian within a predetermined period after the temporary cryptocurrency is issued is also installed in the storage 240.
  • a program for setting the issued temporary cryptocurrency as an approved valid cryptocurrency when the second signature is confirmed to be valid is also installed in the storage 240. Have been.
  • the communication interface 250 is an interface for communicating with other devices via a network.
  • standards such as 3G and 4G for mobile phone communication and standards such as Wi-Fi (registered trademark) are used.
  • the operation unit 260 includes a pointing device such as a mouse and a keyboard, and is used for performing various inputs.
  • the display unit 270 is, for example, a liquid crystal display, and displays various information.
  • FIG. 4 is a block diagram showing a schematic configuration of the custodian system.
  • the custodian system 300 includes a CPU 310, a ROM 320, a RAM 330, a storage 340, a communication interface 350, an operation unit 360, and a display unit 370.
  • the components are connected to each other via a bus 380 so that they can communicate with each other.
  • the CPU 310, the ROM 320, the RAM 330, the storage 340, the communication interface 350, the operation unit 360, and the display unit 370 are the same as the CPU 210, the ROM 220, the RAM 230, the communication interface 250, the operation unit 260, and the display unit 270 of the currency information processing server 200. Since it has a function, its description is omitted to avoid duplication of description.
  • the CPU 310 functions as a confirmation unit by executing a program stored in the storage 340.
  • the storage 340 stores various programs including an operating system and various data.
  • the storage 340 stores a blockchain 500 in which information on cryptocurrencies is recorded. Based on the notification from the user terminal 100, the storage 340 reports that a temporary cryptocurrency corresponding to a predetermined amount has been issued in the currency information processing server 200 and that the remittance of the predetermined amount has been executed.
  • the program for confirming is installed. In addition, when it is confirmed that the issuance of the provisional cryptocurrency corresponding to the predetermined amount and the execution of the remittance of the predetermined amount are performed, the storage 340 generates a second signature by the custodian regarding the provisional cryptocurrency and generates the currency.
  • a program for transmitting to the information processing server 200 is also installed.
  • Each component of the currency information processing system may include a component other than the above components, or may not include a part of the above components.
  • FIG. 5 is a sequence diagram showing a flow of cryptocurrency issuing processing in the currency information processing system.
  • the processing of each device shown in the sequence chart of FIG. 5 is stored as a program in the storage of each device, and is executed by the CPU of each device controlling each unit.
  • the user terminal 100 accepts an application for issuing a cryptocurrency according to an instruction from the user and generates a user signature (step S101).
  • the user signature is an electronic signature generated to prove that the cryptocurrency issuance application has been generated by the user, and is executed using a private key owned by the user.
  • the user performs remittance processing and notifies the custodian of information on remittance and information on transmission of the cryptocurrency issuance application.
  • the processing of remittance and notification may be performed on the custodian system 300 using the user terminal 100, or may be performed using another device or method.
  • the remittance process is not limited to the transfer of money, and other assets such as ETFs and money corresponding to the value of the cryptocurrency for which issuance is applied may be transferred to the custodian.
  • the information related to remittance includes, for example, information such as the amount to be remitted and the date and time.
  • the information related to the transmission of the cryptocurrency issuance application includes, for example, address information indicating the address at which the application was made, the number of cryptocurrencies for which issuance was requested, and information indicating the designated custodian.
  • the address information includes public key information corresponding to the private key owned by the user for generating the user signature, and public key information corresponding to the private key owned by the custodian for generating the custodian signature. included.
  • the user terminal 100 transmits the cryptocurrency issuance application and the user signature, which are information on the application for issuance of the cryptocurrency, to the currency information processing server 200 (step S102).
  • the cryptocurrency issuance application includes the type of cryptocurrency (a unit of currency such as yen coins and dollar coins), information on the amount and custodian that guarantees the value, and the like.
  • the currency information processing server 200 receives the cryptocurrency issuance application and the user signature transmitted from the user terminal 100 (step S201).
  • the currency information processing server 200 confirms that the user signature is valid using the user's public key included in the address information, and if it is confirmed that the user signature is valid, the currency Is issued (step S202).
  • the provisional cryptocurrency is represented, for example, by the same data structure as an approved valid (formal) cryptocurrency, and by setting a flag indicating that it is provisional so as to be distinguishable from the valid cryptocurrency. Is expressed.
  • the temporary issuance time limit is set in advance in the storage 240 or the like, and is a time limit for accepting a custodian signature relating to a temporary cryptocurrency.
  • the deadline can be expressed by the number of blocks added (mined) at any time in the block chain. For example, it is possible to set a time limit from the number of blocks at the time of provisional issuance until reaching a predetermined number of blocks.
  • the time limit may be a unit other than the number of blocks. For example, normal time information may be set as the time limit.
  • the currency information processing server 200 determines whether or not the custodian signature has been received within the deadline for provisional issuance (step S204).
  • step S204 the currency information processing server 200 confirms that the custodian signature is valid using the custodian's public key included in the address information. If the cryptographic information is confirmed to be valid, the currency information processing server 200 sets the issued temporary cryptocurrency to be processed as an approved valid cryptocurrency (step S205), and Publish valid cryptocurrencies on the blockchain.
  • step S204 determines that the issued temporary cryptocurrency is invalid. Set to be treated as one. Alternatively, the currency information processing server 200 does not perform an aggressive process of invalidating, and does not perform the above-described process of setting the temporary cryptocurrency to be processed as an approved valid cryptocurrency. May be. In this case, by confirming the information on the blockchain 500, each user can confirm that a valid custodian signature has not been obtained within the time limit and is not valid.
  • the custodian system 300 obtains information such as remittance information and the address on the blockchain where the application for issuing cryptocurrency was made, which is notified from the user terminal 100 or the like in the processing of step S101 (step S301).
  • the custodian system 300 performs a cryptocurrency issuance application and a provisional cryptocurrency issuance (provisional issuance) on the blockchain 500 based on the information acquired in the process of step S301 and the information notified in step S203. The existence is confirmed (step S302).
  • the custodian system 300 confirms that the remittance from the user has been performed within the time limit and has been deposited into a predetermined account based on the remittance information and the like acquired in the processing of step S301 (step S303). . If the remittance process from the user is performed by transfer of other assets such as EFT and money, not money, the custodian confirms the arrival of those assets and reflects it on the custodian system 300.
  • the custodian system 300 receives the payment information such as the amount of money and the date and time of payment confirmed in the processing of step S303, and the information such as the amount of the provisional cryptocurrency confirmed in the processing of step S302 and the expiration date of provisional issuance. Is checked (step S304).
  • the custodian system 300 determines whether there is a problem such as inconsistency in the amount of money in the result of the confirmation in each of the steps S302 to S304 (step S305).
  • the custodian system 300 If there is no problem in the result of the confirmation (step S305: YES), the custodian system 300 generates a custodian signature (step S306), and transmits the generated custodian signature to the currency information processing server 200 (step S307).
  • the custodian signature is an electronic signature generated to prove that the custodian secures the value of the temporary cryptocurrency, and is executed using a custodian's private key.
  • the currency information processing server 200 Upon receiving the custodian signature from the custodian system 300, the currency information processing server 200 performs the processing of steps S204 and S205, sets the temporary cryptocurrency to approved, and notifies the user terminal 100 or the like via the network of the fact. Notify.
  • the user terminal 100 acquires an approved cryptocurrency on the blockchain 500 (Step S105).
  • step S305 the custodian system 300 transmits the confirmation result to the user terminal 100 (step S308).
  • the user terminal 100 receives the confirmation result from the custodian system 300, and receives an instruction from the user, such as additional remittance or correction of the content of the cryptocurrency issuance application, if necessary (step S103).
  • the user terminal 100 determines whether an instruction for correction or the like has been received (step S104). If an instruction such as correction has been received (step S104: YES), the user terminal 100 returns to the process of step S101. When an instruction for correction or the like is not received (step S104: NO), the user terminal 100 proceeds to the process of step S105, and acquires an approved cryptocurrency on the blockchain 500.
  • FIG. 6 is a sequence diagram showing the flow of the cryptocurrency cancellation process in the currency information processing system.
  • the processing of each device shown in the sequence chart of FIG. 6 is stored as a program in the storage of each device, and is executed by the CPU of each device controlling each unit.
  • the user terminal 100 accepts an application for canceling the cryptocurrency according to an instruction from the user and generates a user signature (step S111).
  • the user signature is an electronic signature generated to prove that the cryptocurrency cancellation request has been generated by the user, and is executed using a private key owned by the user.
  • the user notifies the custodian of information regarding withdrawal and information regarding transmission of the application for canceling the cryptocurrency.
  • the above notification process may be performed on custodian system 300 using user terminal 100, or may be performed using another device or method.
  • the information related to withdrawal includes, for example, information such as the amount and date and time of the cryptocurrency to be dispensed.
  • the information related to the transmission of the application for canceling the cryptocurrency includes, for example, address information indicating the address of the application that has made the application, information on the number of cryptocurrencies that have applied for the cancellation, and information indicating the designated custodian.
  • the address information includes public key information corresponding to the private key owned by the user for generating the user signature, and public key information corresponding to the private key owned by the custodian for generating the custodian signature. included.
  • the user terminal 100 transmits the application for canceling the cryptocurrency and the user signature, which are information relating to the application for canceling the cryptocurrency, to the currency information processing server 200 (step S112).
  • the application for canceling the cryptocurrency includes the type of the cryptocurrency (a unit of currency such as yen coins and dollar coins), the amount, information on the custodian who secures the value of the cryptocurrency, and the like.
  • the currency information processing server 200 receives the cryptocurrency cancellation request and the user signature transmitted from the user terminal 100 (step S211).
  • the currency information processing server 200 confirms that the user signature is valid using the user's public key included in the address information, and if the user signature is confirmed to be valid, encrypts it on the blockchain 500.
  • the currency is invalidated (step S212).
  • the revocation is realized by, for example, setting a flag or the like indicating revocation so as to be distinguished from a valid cryptocurrency.
  • the currency information processing server 200 transmits the information indicating that the cryptocurrency has been invalidated by the cancellation or the information on the cancellation or correction deadline of the cancellation to another user terminal 100 or the custodian system 300 via the network. And the like (step S213).
  • the term of cancellation or correction of cancellation is set in advance in the storage 240 or the like, and is a time period during which a custodian signature relating to cancellation or correction of cancellation of a cryptocurrency can be accepted.
  • the deadline can be expressed by the number of blocks added (mined) at any time in the block chain. For example, it is possible to set a time limit from the number of blocks at the time of invalidation until the number of blocks reaches a predetermined number.
  • the time limit may be a unit other than the number of blocks. For example, normal time information may be set as the time limit.
  • the custodian system 300 obtains information such as withdrawal information and the address on the blockchain where the application for canceling the cryptocurrency was made, which is notified from the user terminal 100 or the like in the processing of step S111 (step S311).
  • the custodian system 300 confirms the application for canceling the cryptocurrency on the blockchain 500 and the invalidation of the cryptocurrency on the blockchain 500 based on the information acquired in the processing of step S311 and the information notified in step S213 (step S312). ).
  • the custodian system 300 checks the consistency between the withdrawal information confirmed in the processing in step S311 and the information on the cryptocurrency cancellation application confirmed in the processing in step S312 (step S313).
  • the custodian system 300 determines whether there is a problem such as information inconsistency in the result of the confirmation in each of the steps S312 and S313 (step S314).
  • step S314 If there is no problem with the result of the check (step S314: YES), the custodian system 300 proceeds to the process of step S316.
  • the processing in step S316 will be described later.
  • the custodian system 300 transmits the confirmation result to the user terminal 100 (step S315).
  • the user terminal 100 receives the confirmation result from the custodian system 300, and receives an instruction from the user to cancel or correct the cancellation (step S113). Note that the user terminal 100 can accept an instruction from the user to cancel or correct the cancellation without receiving the confirmation result from the custodian system 300.
  • the user terminal 100 determines whether cancellation or correction is performed (step S114). When cancellation or correction is not performed (step S114: NO), the user terminal 100 receives the withdrawal notification from the custodian system 300, and ends the process. If cancellation or correction has been performed (step S114: YES), the user terminal 100 transmits cancellation cancellation correction information indicating cancellation or correction of cancellation to the currency information processing server 200 and the custodian system 300 (step S115). ).
  • the custodian system 300 determines whether or not the cancellation cancellation correction information has been obtained from the user terminal 100 (step S316). This process may be repeated until, for example, the time limit notified in step S213, or may be repeated until a predetermined time elapses after the processes in steps S213 and S315 and the like are performed.
  • step S316 If the cancellation cancellation correction information has not been acquired (step S316: NO), the custodian system 300 performs a withdrawal process for the user (step S319), and notifies the user terminal 100 that the withdrawal process has been performed.
  • step S316 If the cancellation cancellation correction information has been acquired (step S316: YES), the custodian system 300 generates a custodian signature after confirming that there is no problem in canceling or correcting the cancellation (step S317). The generated custodian signature is transmitted to the currency information processing server 200 (step S318).
  • the currency information processing server 200 also determines whether or not cancellation cancellation correction information has been obtained from the user terminal 100 (step S316). This processing may be repeated until the time limit notified in step S213, for example, or may be repeated until a predetermined time has elapsed after the processing in step S213 or the like is performed.
  • step S214 NO
  • the currency information processing server 200 ends the processing.
  • the currency information processing server 200 performs a temporary cancellation process or a correction process for canceling the cryptocurrency (step S215).
  • the currency information processing server 200 may notify the user terminal 100 or the custodian system 300 of the fact that the temporary cancellation processing or the correction processing has been performed for the cancellation and share the same.
  • the provisional cancellation cancellation processing or correction processing is expressed by, for example, setting a flag or the like indicating provisional cancellation to data indicating the cryptocurrency in which cancellation is canceled or corrected.
  • the currency information processing server 200 determines whether or not the custodian signature has been received within the deadline for provisional issuance (step S216).
  • the currency information processing server 200 If received within the time limit (step S216: YES), the currency information processing server 200 confirms that the custodian signature is valid using the custodian's public key included in the address information. If it is confirmed that the data is valid, the currency information processing server 200 treats the provisional cancellation cancellation processing or correction processing as an approved valid processing, and sends the data indicating the cryptocurrency on the blockchain 500 to the cancellation of the cancellation. The cancellation or correction is reflected (step S217). The currency information processing server 200 may notify the user terminal 100 and the custodian system 300 of the cancellation or correction of the cancellation and share the same.
  • step S216 the currency information processing server 200 does not perform the cancellation cancellation or correction processing of step S217.
  • the custodian system 300 determines that the cancellation or correction is not performed, and performs a withdrawal process for the user in step S319, and notifies the user terminal 100 that the withdrawal process has been performed.
  • multi-sig multi-signature
  • a transaction on the blockchain is performed based on a plurality of signatures.
  • a transaction can be generated on the blockchain only when a plurality of signatures are aligned and the validity is confirmed. Things. Therefore, multiple signatures must be generated with multiple private keys before a transaction is generated on the blockchain.
  • key information and signature information are collected through a network or a recording medium such as the Internet where security is weak to align the plurality of signatures. It was necessary to exchange, and there was a risk such as hacking.
  • the blockchain Issue a temporary cryptocurrency above. If a valid custodian signature for the temporary cryptocurrency is received from the custodian within a predetermined period of time after the provisional cryptocurrency is issued, the issued temporary cryptocurrency is a valid cryptocurrency approved Set to be processed as. This makes it possible to securely and reliably provide a cryptocurrency on the blockchain whose value is secured and the risk of value fluctuation is reduced.
  • the transaction is provisionally determined when the user's signature can be obtained, while using a method of validating a transaction such as issuance of a cryptocurrency based on a plurality of signatures on the blockchain. It can be published (shared) on the blockchain as an activated state. As a result, even before a plurality of signatures are prepared, the transaction can be disclosed on the blockchain, and the transaction can be executed safely and reliably. Then, when the signature of the custodian is obtained, it is possible to provide a cryptocurrency whose value is secured by the custodian by setting it to be treated as an approved and valid transaction.
  • the asset value of the cryptocurrency on the blockchain can be secured by a secure method that allows anyone to confirm the transaction on the blockchain.
  • the currency information processing server 200 publishes an approved and valid cryptocurrency on the blockchain. This ensures that the custodian secures the cryptocurrency, and provides a safer and more reliable cryptocurrency on the blockchain where the value is secured by the custodian and the risk of value fluctuation is reduced. can do.
  • the currency information processing server 200 when the custodian signature is not received from the custodian within a predetermined period of time, or when the received custodian signature is not confirmed to be valid, the issued temporary Set the cryptocurrency to be treated as invalid. This makes it possible to easily grasp a temporary cryptocurrency that has been invalidated by a custodian without guaranteeing its value, and to provide a cryptocurrency on a blockchain more securely and reliably.
  • the currency information processing server 200 can receive the specification of the custodian regarding the cryptocurrency from the user, and only when the custodian signature is received from the custodian that has received the specification, the temporary cryptocurrency is validated and valid. Set to be processed as a cryptocurrency. This makes it possible to more reliably prove that the value of the cryptocurrency is secured by the custodian specified by the user.
  • the currency information processing server 200 notifies the user via the network.
  • the user or custodian can easily confirm that the provisional cryptocurrency has been issued, and can smoothly execute subsequent transactions.
  • the currency information processing server 200 reports information on a predetermined period via a network. Thereby, the user and the custodian can grasp the validity period of the temporary cryptocurrency, and can smoothly execute the subsequent transactions.
  • the cryptocurrency on the blockchain You can apply for issuance (creation). If the first signature by the user is confirmed to be valid, the issuance of the temporary cryptocurrency on the blockchain can be announced based on the user's intention. Then, the user designates a custodian who guarantees the value of the cryptocurrency, remits an amount corresponding to the value of the cryptocurrency to the custodian, and transmits the amount of the remittance and an address such as an address for which issuance of the cryptocurrency was requested. Send information to custodians.
  • a user issues a cryptocurrency with a value of 1,000,000 yen secured on a blockchain
  • he / she applies for issuance of a "1,000,000 yen coin” and remits 1,000,000 yen to a custodian.
  • the custodian who received the notification confirms the presence of application information on the issuance of "1 million coin” on the blockchain, checks the deposit information such as the deposit amount, and checks the application information and the deposit information on the blockchain. If is matched, generate a second custodian signature for the provisional cryptocurrency. Since only the designated custodian can generate a valid second signature, the fact that the asset is secured by the custodian is published on the blockchain.
  • the custodian does not match the application information and the payment information, the custodian does not create a second signature for the transaction related to the provisional cryptocurrency.
  • the custodian may notify the user to correct the inconsistency, for example, by e-mail or telephone.
  • the user may make an application again with correct contents on the blockchain, or may additionally execute a payment process or transfer an asset to resolve the inconsistency. This allows the custodians to secure assets on the blockchain after the users and custodians cooperate and agree.
  • the second signature can be generated only by a custodian, the risk of fraud by hacking or eavesdropping is also suppressed.
  • the functions of the currency information processing server 200 may be implemented as functions of the user terminal 100 or the custodian system 300.
  • each of the user terminal 100, the currency information processing server 200, and the custodian system 300 may be configured by a plurality of devices, or any device may be included in another device and configured as a single device. Is also good.
  • steps may be omitted from the sequence chart described above, and other steps may be added. Further, some of the steps may be executed simultaneously, or one step may be divided into a plurality of steps and executed. The execution order of each step may be changed.
  • the means and method for performing various processes in the system according to the above-described embodiment can be realized by either a dedicated hardware circuit or a programmed computer.
  • the above program may be provided by a computer-readable recording medium such as a flexible disk and a CD-ROM, or may be provided online via a network such as the Internet.
  • the program recorded on the computer-readable recording medium is usually transferred and stored in a storage unit such as a hard disk.
  • the program may be provided as independent application software, or may be incorporated in the software of the device as a function of the system.
  • 100 user terminals 110 CPU, 120 ROM, 130 RAM, 140 storage, 150 communication interface, 160 operation display section, 170 bus, 200 currency information processing server, 210 CPU, 220 ROM, 230 RAM, 240 storage, 250 communication interface, 260 operation unit, 270 display, 280 bus, 300 custodian systems, 310 CPU, 320 ROM, 330 RAM, 340 storage, 350 communication interface, 360 operation unit, 370 display unit, 380 bus, 500 blockchain.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

【課題】価値が担保されて価値の変動リスクが低減されたブロックチェーン上の暗号通貨を、安全かつ確実に利用可能とするための通貨情報処理装置を提供する。 【解決手段】通貨情報処理装置200は、複数の署名に基づいてブロックチェーン500上における暗号通貨のトランザクションを有効化する方式において暗号通貨を処理可能であり、受信部、仮発行部および設定部を有する。受信部は、ユーザーから第1の署名を含む暗号通貨発行申請を受信可能である。仮発行部は、暗号通貨発行申請に基づいてブロックチェーン上において仮の暗号通貨を発行する。設定部は、仮の暗号通貨が発行されてから所定の期間内にカストディアンから第2の署名が受信され、当該第2の署名が正当なものであると確認された場合に、仮発行部によって発行された仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定する。

Description

通貨情報処理装置および通貨情報処理システム
 本発明は、通貨情報処理装置および通貨情報処理システムに関する。
 近年、暗号通貨(または仮想通貨)等のブロックチェーン技術を利用した様々な技術が知られている。ブロックチェーン技術は2009年頃に確立され、ビットコインをはじめとした様々なブロックチェーン上の通貨が提案されている。ブロックチェーンという新しい技術によって、通貨の処理におけるサーバーコストやリスク、さらには信用リスクやフェイルリスクをはじめとする多くのリスクを軽減することが可能である。また、ピア・ツー・ピア(peer-to-peer:P2P)ネットワークや分散型台帳技術を組み合わせることによって、世界中から監視される透明性のある新しいインフラとしても確立されつつある。
 一方、ブロックチェーン上の通貨において解決できていない問題も存在する。その一つが、ブロックチェーン上にある通貨の資産価値に確実性がないことによる高い価格ボラティリティである。このようにブロックチェーン上の通貨には、高い価格ボラティリティという問題が潜在的に残っているため、上記のような様々な利点があるにも関わらず、ブロックチェーンという革新的な技術が一般に広く浸透していないという問題がある。
 また、ブロックチェーン上における暗号通貨においては、トークンや借用書の発行(一般にIOUと称される)によって、またはブロックチェーンに層(いわゆるセカンド・レイヤー)を設けることによって、暗号通貨以外の情報を記述することもできる。さらに、上記の暗号通貨以外の情報を用いて、そのブロックチェーン上での暗号通貨の交換を可能とすることによって、間接的に価値保証されるという原理でトークンやセカンド・レイヤーなどにおいて発行されたコインの価値を担保することも提案されている。しかし、上記のようなトークンやコインは、基礎とする何らかの暗号通貨を必ず使用するものであるため、その基礎とする暗号通貨である大元の暗号通貨の価格ボラティリティに影響を受けてしまう。また、トークンや借用書は関係者間の取り決め(約束事)に従ってブロックチェーン上に発行されるものであり、その資産が担保されているとは限らず、あるいはその担保を行った人物や機関の承認が行われているとも限らない。そのため、架空の数字のみをブロックチェーン上でやり取りしたものをトークンと称してマーケティング活動を行うようなケースや、資金をICO(コインの取引上場)に合わせて調達するようなケースも散見される。
 上記のような問題を解決するために、基礎とする暗号通貨を介さずとも資産の登録ができ、その資産の登録を、資産を管理する機関やカストディアン(例えば信託銀行やカストディ業務を行うその他の機関)が承認することによってコイン(通貨)としての利用が可能となる仕組みをブロックチェーン上に構築することも考えられる(たとえば特許文献1参照)。
特開2018-032080号公報
 上記特許文献1記載のような技術において、第三者によるハッキング等の不正を防止して安全に取引を行うためには、例えば、マルチシグニチャー(マルチシグ)方式を採用し、ある特定の資産を表現するコインの取引(トランザクション)について複数の署名を必要とするような構成とすることが考えられる。このような方式においては、複数の署名をユーザー、コインの発行者、およびカストディアンの3者によって行うようにしてもよく、あるいは、複数の署名をユーザーおよびカストディアンの2者によって行うようにしてもよい。
 しかしながら、従来のマルチシグ方式は、コインのトランザクションに関する複数の署名が揃ってはじめてトランザクションが成立し、そのトランザクションをブロックチェーン上において共有できるというものである。したがって、そのトランザクションがブロックチェーン上において共有される前の時点において、例えばカストディアン等から署名をもらうための連絡を行っている間にハッキング等の不正が行われるという問題がある。また、カストディアンによって行われるべき署名がカストディアンによって行われたことが証明できないという問題もある。
 本発明は、上記事情に鑑みてなされたものであり、価値が担保されて価値の変動リスクが低減されたブロックチェーン上の暗号通貨を、安全かつ確実に利用可能とするための通貨情報処理装置および通貨情報処理システムを提供することを目的とする。
 上記目的は、下記の手段によって達成される。
 通貨情報処理装置は、複数の署名に基づいてブロックチェーン上における暗号通貨のトランザクションを有効化する方式において暗号通貨を処理可能であり、受信部、仮発行部および設定部を有する。受信部は、ユーザーから暗号通貨の発行に関するユーザーによる第1の署名を含む暗号通貨発行申請を受信可能である。仮発行部は、受信部において受信した暗号通貨発行申請に基づいてブロックチェーン上において仮の暗号通貨を発行する。設定部は、仮発行部において仮の暗号通貨が発行されてから所定の期間内にカストディアンから仮の暗号通貨に関するカストディアンによる第2の署名が受信され、当該第2の署名が正当なものであると確認された場合に、仮発行部によって発行された仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定する。
 通貨情報処理システムは、ネットワークを介して接続されたユーザー端末、通貨情報処理装置およびカストディアンシステムから構成され、複数の署名を用いてブロックチェーン上における暗号通貨のトランザクションを有効化する方式において暗号通貨を処理可能である。ユーザー端末は、ユーザーの指示に基づいて、所定の通貨における所定の金額の価値を有する暗号通貨の発行に関するユーザーによる第1の署名を含む暗号通貨発行申請を生成して通貨情報処理装置に送信する送信部と、カストディアンシステムに対する所定の金額の送金に関する情報および通貨情報処理装置に対する暗号通貨発行申請の送信に関する情報をカストディアンシステムに通知する通知部と、を有する。通貨情報処理装置は、ユーザー端末から送信された暗号通貨発行申請を受信可能な受信部と、受信部において受信した暗号通貨発行申請に基づいてブロックチェーン上において仮の暗号通貨を発行する仮発行部と、仮発行部において仮の暗号通貨が発行されてから所定の期間内にカストディアンから仮の暗号通貨に関するカストディアンによる第2の署名が受信され、当該第2の署名が正当なものであると確認された場合に、仮発行部によって発行された仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定する設定部と、を有する。カストディアンシステムは、ユーザー端末からの通知に基づいて、通貨情報処理装置において所定の金額に対応する仮の暗号通貨が発行されたことと、所定の金額の送金が実行されたこととを確認する確認部と、確認部によって、所定の金額に対応する仮の暗号通貨の発行および所定の金額の送金の実行が確認された場合、仮の暗号通貨に関するカストディアンによる第2の署名を生成して通貨情報処理装置に送信する送信部と、を有する。
 本実施形態の通貨情報処理装置によれば、複数の署名に基づいてブロックチェーン上における暗号通貨のトランザクションを有効化する方式において、ユーザーからユーザー署名を含む暗号通貨発行申請を受信すると、ブロックチェーン上において仮の暗号通貨を発行する。仮の暗号通貨が発行されてから所定の期間内にカストディアンから当該仮の暗号通貨に関する正当なカストディアン署名が受信された場合に、発行された仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定する。これにより、価値が担保されて価値の変動リスクが低減されたブロックチェーン上の暗号通貨を、安全かつ確実に提供することができる。したがって、価値が安定し、資産保有手段として利用可能な暗号通貨を安全かつ確実に利用可能とすることができる。
通貨情報処理装置が適用される通貨情報処理システムの全体構成を示す図である。 ユーザー端末の概略構成を示すブロック図である。 通貨情報処理サーバーの概略構成を示すブロック図である。 カストディアンシステムの概略構成を示すブロック図である。 通貨情報処理システムにおける暗号通貨発行処理の流れを示すシーケンス図である。 通貨情報処理システムにおける暗号通貨解約処理の流れを示すシーケンス図である。
 以下、添付した図面を参照して、本発明の実施形態を説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
 図1は、通貨情報処理装置が適用されるシステムの全体構成を示す図である。
 本実施形態の通貨情報処理システムは、価値が担保されたブロックチェーン上の暗号通貨を、ユーザーが安全かつ確実に利用可能とするために提供される。
 本実施形態の通貨情報処理システムでは、複数の署名に基づいてブロックチェーン上における暗号通貨のトランザクションを有効化する方式を使用する。
 図1に示すように、通貨情報処理システムは、ユーザー端末100、通貨情報処理サーバー200およびカストディアンシステム300を有し、各構成はピア・ツー・ピアネットワークを通じて相互に通信可能に構成され、共通のブロックチェーンを記憶する。
 ユーザー端末100は、ユーザーが使用するスマートフォン等のモバイル端末やノートPC、デスクトップPCなどの情報端末である。
 通貨情報処理サーバー200は、暗号通貨(コイン)の提供者によって設けられるサーバーであり、暗号通貨を提供する。通貨情報処理サーバー200は、ユーザー端末100から暗号通貨の発行申請およびユーザーによる第1の電子署名を受信して暗号通貨を仮発行したり、カストディアンシステム300からカストディアンによる第2の電子署名を受信して仮発行された暗号通貨を有効なものとして承認したりする。通貨情報処理サーバー200は、通貨情報処理装置として機能する。
 カストディアンシステム300は、信託銀行やカストディ業務を行う他の機関等において構築されるシステムであり、ユーザーの各種資産を管理するためのシステムである。カストディアンシステム300は、例えばサーバーによって構成される。カストディアンシステム300を構築する信託銀行等は、本実施形態においてブロックチェーン上で発行される暗号通貨の価値を担保する。例えば、暗号通貨が現実の通貨である「円」と同等の価値を有する「円コイン」という単位で発行された場合、信託銀行等は、「円コイン」を「円」と等価なものとして換金や通貨変換等の処理を行う。
 通貨情報処理サーバー200は、ユーザー端末100から暗号通貨の発行に関するユーザーによる第1の署名を含む暗号通貨生成申請を受信すると、受信した暗号通貨発行申請に基づいてブロックチェーン上において仮の暗号通貨を発行する。
 通貨情報処理サーバー200は、仮の暗号通貨が発行されてから所定の期間内にカストディアンシステム300から仮の暗号通貨に関するカストディアンによる第2の署名を受信し、当該第2の署名が正当なものであると確認した場合、発行した仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定する。
 本実施形態の通貨情報処理システムによれば、複数の署名に基づいて暗号通貨のトランザクションを有効化する方式を採用しつつ、複数の署名が揃っていない状態でも、ブロックチェーン上における暗号通貨の発行(作成)を申請することができる。第1の署名であるユーザーによる電子署名(以下、ユーザー署名とも称する)が正当であることが確認されれば、ユーザーの意向に基づいて、ブロックチェーン上において仮の暗号通貨の発行を公表することができる。
 ユーザーは、暗号通貨の価値を担保するカストディアンを指定して、当該カストディアンに対して暗号通貨の価値に相当する金額を送金すると共に、送金した金額や暗号通貨の発行を申請したアドレス等の情報をカストディアンに送信する。
 例えば、ユーザーが100万円分の価値が担保された暗号通貨をブロックチェーン上において発行する場合、「100万円コイン」の発行を申請し、カストディアンに対して、100万円を送金し、その旨を通知する。本実施形態では、ブロックチェーン上の暗号通貨である「1円コイン」は、現実の通貨である「1円」に相当する価値を有することをカストディアンが担保する。暗号通貨が対応する通貨の単位は「円」に限定されず、例えば「ドル」、「元」、「ユーロ」等、あらゆる現実の通貨の単位に対応する暗号通貨を発行可能である。例えば「1ドルコイン」は、現実の通貨である「1ドル」に相当する価値を有することがカストディアンによって担保されてもよい。
 通知を受けたカストディアンは、ブロックチェーン上において「100万円コイン」の発行に関する申請情報の存在を確認すると共に、入金額等の入金情報を確認し、ブロックチェーン上の申請情報と入金情報とが整合されている場合、第2の署名である仮の暗号通貨に関するカストディアンによる電子署名(以下、カストディアン署名とも称する)を生成する。指定されたカストディアンのみが正当な第2の署名を生成できるため、資産がカストディアンによって担保されていることが、ブロックチェーン上において公開される。
 カストディアンは、申請情報と入金情報に不整合がある場合、仮の暗号通貨に関するトランザクションに対して第2の署名を生成しない。この場合、カストディアンは、例えばメールや電話等によって、不整合を修正するようにユーザーに通知してもよい。これに対して、ユーザーはブロックチェーン上において再度正しい内容の発行申請を行ってもよく、あるいは、追加で送金処理や資産の移管を実行して不整合を解消してもよい。これにより、ユーザーとカストディアンが協力して合意した上で、ブロックチェーン上の資産がカストディアンによって担保される。また、第2の署名は、指定されたカストディアンのみが生成できるため、第三者によるハッキングや盗聴によって不正が行われるリスクも抑止される。
 以下、通貨情報処理システムの各構成について具体的に説明する。
 図2は、ユーザー端末の概略構成を示すブロック図である。
 図2に示すように、ユーザー端末100は、CPU(Central Processing Unit)110、ROM(Read Only Memory)120、RAM(Random Access Memory)130、ストレージ140、通信インターフェース150および操作表示部160を有する。各構成は、バス170を介して相互に通信可能に接続されている。
 CPU110は、ROM120やストレージ140に記録されているプログラムにしたがって、上記各構成の制御や各種の演算処理を行う。CPU110は、ストレージ140に記憶されたプログラムを実行することによって、送信部、通知部として機能する。
 ROM120は、各種プログラムや各種データを格納する。
 RAM130は、作業領域として一時的にプログラムやデータを記憶する。
 ストレージ140は、オペレーティングシステムを含む各種プログラムや、各種データを格納する。たとえば、ストレージ140には、ユーザーから暗号通貨の発行申請を受け付けて通貨情報処理サーバー200に送信するためのアプリケーションや、ユーザーによる第1の署名(ユーザー署名)を生成して通貨情報処理サーバー200に送信するためのアプリケーションがインストールされている。また、ストレージ140には、暗号通貨に関する情報が記録されたブロックチェーン500も記憶されている。ブロックチェーン500については、各種の暗号通貨を処理可能な公知のブロックチェーンによって構成され得るため、詳細な説明は割愛する。また、秘密鍵、公開鍵を用いた電子署名の方式についても、公知の技術であるため、詳細な説明は割愛する。
 通信インターフェース150は、ネットワークを介して他の機器と通信するためのインターフェースであり、たとえば、携帯電話通信用の3G、4G等の規格や、Wi-Fi(登録商標)等の規格が用いられる。
 操作表示部160は、たとえば、タッチパネル式のディスプレイであり、各種情報を表示すると共に、ユーザーからの各種入力を受け付ける。
 図3は、通貨情報処理サーバーの概略構成を示すブロック図である。
 図3に示すように、通貨情報処理サーバー200は、CPU210、ROM220、RAM230、ストレージ240、通信インターフェース250、操作部260および表示部270を有する。各構成は、バス280を介して相互に通信可能に接続されている。なお、CPU210、ROM220およびRAM230は、ユーザー端末100のCPU110、ROM120およびRAM130と同様の機能を有するので、説明の重複を避けるためその説明を省略する。CPU210は、ストレージ240に記憶されたプログラムを実行することによって、受信部、仮発行部、設定部、報知部、キャンセル受付部、仮キャンセル部、キャンセル設定部として機能する。
 ストレージ240は、オペレーティングシステムを含む各種プログラムや、各種データを格納する。ストレージ240には、暗号通貨に関する情報が記録されたブロックチェーン500が記憶されている。また、ストレージ240には、ユーザー端末100から暗号通貨の生成に関するユーザーによる第1の署名を含む暗号通貨発行申請を受信するためのプログラムがインストールされている。また、ストレージ240には、受信した暗号通貨発行申請に基づいてブロックチェーン500上において仮の暗号通貨を発行(仮発行)するためのプログラムもインストールされている。また、ストレージ240には、仮の暗号通貨が発行されてから所定の期間内にカストディアンから仮の暗号通貨に関するカストディアンによる第2の署名(カストディアン署名)を受信するためのプログラムもインストールされている。また、ストレージ240には、第2の署名が正当なものであると確認された場合に、発行された仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定するプログラムもインストールされている。
 通信インターフェース250は、ネットワークを介して他の機器と通信するためのインターフェースであり、たとえば、携帯電話通信用の3G、4G等の規格や、Wi-Fi(登録商標)等の規格が用いられる。
 操作部260は、マウス等のポインティングデバイス、およびキーボードを含み、各種の入力を行うために使用される。
 表示部270は、たとえば、液晶ディスプレイであり、各種の情報を表示する。
 図4は、カストディアンシステムの概略構成を示すブロック図である。
 図4に示すように、カストディアンシステム300は、CPU310、ROM320、RAM330、ストレージ340、通信インターフェース350、操作部360および表示部370を有する。各構成は、バス380を介して相互に通信可能に接続されている。なお、CPU310、ROM320、RAM330、ストレージ340、通信インターフェース350、操作部360および表示部370は、通貨情報処理サーバー200のCPU210、ROM220、RAM230、通信インターフェース250、操作部260および表示部270と同様の機能を有するので、説明の重複を避けるためその説明を省略する。CPU310は、ストレージ340に記憶されたプログラムを実行することによって、確認部として機能する。
 ストレージ340は、オペレーティングシステムを含む各種プログラムや、各種データを格納する。ストレージ340には、暗号通貨に関する情報が記録されたブロックチェーン500が記憶されている。ストレージ340には、ユーザー端末100からの通知に基づいて、通貨情報処理サーバー200において所定の金額に対応する仮の暗号通貨が発行されたことと、所定の金額の送金が実行されたこととを確認するためのプログラムがインストールされている。また、ストレージ340には、所定の金額に対応する仮の暗号通貨の発行および所定の金額の送金の実行が確認された場合、仮の暗号通貨に関するカストディアンによる第2の署名を生成して通貨情報処理サーバー200に送信するためのプログラムもインストールされている。
 なお、通貨情報処理システムの各構成は、それぞれ上記の構成要素以外の構成要素を含んでいてもよく、あるいは、上記の構成要素のうちの一部が含まれていなくてもよい。
 以下、通貨情報処理システムの動作について説明する。
 まず、暗号通貨を発行する処理の流れを説明する。
 図5は、通貨情報処理システムにおける暗号通貨発行処理の流れを示すシーケンス図である。図5のシーケンスチャートに示される各装置の処理は、各装置のストレージにプログラムとして記憶されており、各装置のCPUが各部を制御することにより実行される。
 図5に示すように、ユーザー端末100は、ユーザーからの指示によって、暗号通貨の発行に関する申請を受け付け、ユーザー署名を生成する(ステップS101)。ユーザー署名は、暗号通貨発行申請がユーザーによって生成されたものであることを証明するために生成される電子署名であり、ユーザーが所有する秘密鍵を用いて実行される。
 また、ユーザーは、カストディアンに対して、送金処理を行うと共に、送金に関する情報および暗号通貨発行申請の送信に関する情報を通知する。送金や通知の処理は、ユーザー端末100を用いてカストディアンシステム300に対して行なわれてもよく、あるいは別の装置や方法を用いて行なわれてもよい。また、送金処理は、金銭の授受に限定されず、発行を申請する暗号通貨の価値に対応するETFや金等の他の資産がカストディアンに対して移転されてもよい。送金に関する情報には、例えば送金される金額や日時等の情報が含まれる。暗号通貨発行申請の送信に関する情報には、例えば申請を行なったアドレスを示すアドレス情報や、発行を申請した暗号通貨の数量、指定したカストディアンを示す情報等が含まれる。アドレス情報には、ユーザー署名の生成のためにユーザーが所有する秘密鍵に対応する公開鍵の情報と、カストディアン署名の生成のためにカストディアンが所有する秘密鍵に対応する公開鍵の情報が含まれる。
 続いて、ユーザー端末100は、暗号通貨の発行の申請に関する情報である暗号通貨発行申請およびユーザー署名を通貨情報処理サーバー200に送信する(ステップS102)。暗号通貨発行申請には、暗号通貨の種類(円コインやドルコイン等の通貨の単位)や、金額、価値を担保するカストディアンの情報等が含まれる。
 続いて、通貨情報処理サーバー200は、ユーザー端末100から送信された暗号通貨発行申請およびユーザー署名を受信する(ステップS201)。通貨情報処理サーバー200は、アドレス情報に含まれるユーザーの公開鍵を用いてユーザー署名が正当なものであることを確認し、正当なものであることが確認された場合、ブロックチェーン500上において仮の暗号通貨を発行する(ステップS202)。仮の暗号通貨は、例えば承認済みの有効な(正式な)暗号通貨と同様のデータ構成によって表現され、有効な暗号通貨と区別できるように、仮であることを示すフラグ等を設定することによって表現される。
 続いて、通貨情報処理サーバー200は、仮の暗号通貨の発行を示す仮発行情報や、仮発行の期限に関する情報を、ネットワークを介して他のユーザー端末100やカストディアンシステム300等に報知する(ステップS203)。仮発行の期限は、ストレージ240等に予め設定されるものであり、仮の暗号通貨に関するカストディアン署名を受け付け可能な期限である。期限は、ブロックチェーンにおいて随時追加(採掘)されるブロック数によって表現され得る。例えば、仮発行された時点のブロック数から所定のブロック数に到達するまでという期限を設定することができる。期限は、ブロック数以外の単位でもよく、例えば通常の時間情報を期限として設定してもよい。
 続いて、通貨情報処理サーバー200は、仮発行の期限内にカストディアン署名を受信したか否かを判断する(ステップS204)。
 期限内に受信された場合(ステップS204:YES)、通貨情報処理サーバー200は、アドレス情報に含まれるカストディアンの公開鍵を用いてカストディアン署名が正当なものであることを確認する。正当なものであることが確認された場合、通貨情報処理サーバー200は、発行された仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定し(ステップS205)、承認済みの有効な暗号通貨を、ブロックチェーン上において公開する。
 一方、期限内に受信されない場合または受信されたカストディアン署名が正当なものであると確認できない場合(ステップS204:NO)、通貨情報処理サーバー200は、発行された前記仮の暗号通貨が無効なものとして処理されるように設定する。あるいは、通貨情報処理サーバー200は、無効に設定するという積極的な処理を行わず、仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定する上記の処理を行わないようにしてもよい。この場合、各ユーザーはブロックチェーン500上の情報を確認することにより、期限内に正当なカストディアン署名が取得されておらず、有効なものでないことを確認できる。
 また、カストディアンシステム300は、ステップS101の処理においてユーザー端末100等から通知される、送金情報や暗号通貨発行申請が行なわれたブロックチェーン上のアドレス等の情報を取得する(ステップS301)。
 続いて、カストディアンシステム300は、ステップS301の処理において取得した情報およびステップS203において報知された情報に基づいて、ブロックチェーン500上における暗号通貨発行申請および仮の暗号通貨の発行(仮発行)の存在を確認する(ステップS302)。
 続いて、カストディアンシステム300は、ステップS301の処理において取得した送金情報等に基づいて、ユーザーからの送金が期限内に行なわれ、所定の口座に入金していることを確認する(ステップS303)。ユーザーからの送金処理が金銭ではなく、EFTや金等の他の資産の移転によって行われる場合、カストディアンはそれらの資産の到着を確認してカストディアンシステム300に反映する。
 続いて、カストディアンシステム300は、ステップS303の処理において確認された入金金額、入金日時等の入金情報と、ステップS302の処理において確認された仮の暗号通貨の金額、仮発行の期限等の情報の整合性を確認する(ステップS304)。
 続いて、カストディアンシステム300は、ステップS302~S304の各処理における確認の結果に、金額の不整合等の問題がないか否かを判断する(ステップS305)。
 確認の結果に問題がない場合(ステップS305:YES)、カストディアンシステム300は、カストディアン署名を生成し(ステップS306)、生成したカストディアン署名を通貨情報処理サーバー200に送信する(ステップS307)。カストディアン署名は、仮の暗号通貨の価値をカストディアンが担保することを証明するために生成される電子署名であり、カストディアンが所有する秘密鍵を用いて実行される。カストディアンシステム300からカストディアン署名を受信した通貨情報処理サーバー200は、ステップS204、S205の処理を行って仮の暗号通貨を承認済みに設定し、ネットワークを介してユーザー端末100等にその旨を報知する。ユーザー端末100は、ブロックチェーン500上において承認済みの暗号通貨を取得する(ステップS105)。
 一方、確認の結果に問題がある場合(ステップS305:NO)、カストディアンシステム300は、ユーザー端末100に確認結果を送信する(ステップS308)。ユーザー端末100は、カストディアンシステム300から確認結果を受信して、必要に応じてユーザーから追加の送金や暗号通貨発行申請の内容の訂正等の指示を受け付ける(ステップS103)。ユーザー端末100は、訂正等の指示を受け付けたか否かを判断する(ステップS104)。訂正等の指示を受け付けた場合(ステップS104:YES)、ユーザー端末100は、ステップS101の処理に戻る。訂正等の指示を受け付けない場合(ステップS104:NO)、ユーザー端末100は、ステップS105の処理に進み、ブロックチェーン500上において承認済みの暗号通貨を取得する。
 次に、暗号通貨を解約する処理の流れを説明する。
 図6は、通貨情報処理システムにおける暗号通貨解約処理の流れを示すシーケンス図である。図6のシーケンスチャートに示される各装置の処理は、各装置のストレージにプログラムとして記憶されており、各装置のCPUが各部を制御することにより実行される。
 図6に示すように、ユーザー端末100は、ユーザーからの指示によって、暗号通貨の解約に関する申請を受け付け、ユーザー署名を生成する(ステップS111)。ユーザー署名は、暗号通貨解約申請がユーザーによって生成されたものであることを証明するために生成される電子署名であり、ユーザーが所有する秘密鍵を用いて実行される。
 また、ユーザーは、カストディアンに対して、出金に関する情報および暗号通貨解約申請の送信に関する情報を通知する。上記の通知処理は、ユーザー端末100を用いてカストディアンシステム300に対して行なわれてもよく、あるいは別の装置や方法を用いて行なわれてもよい。出金に関する情報には、例えば出金される暗号通貨の金額や日時等の情報が含まれる。暗号通貨解約申請の送信に関する情報には、例えば申請を行なったアドレスを示すアドレス情報や、解約を申請した暗号通貨の数量、指定したカストディアンを示す情報等が含まれる。アドレス情報には、ユーザー署名の生成のためにユーザーが所有する秘密鍵に対応する公開鍵の情報と、カストディアン署名の生成のためにカストディアンが所有する秘密鍵に対応する公開鍵の情報が含まれる。
 続いて、ユーザー端末100は、暗号通貨の解約の申請に関する情報である暗号通貨解約申請およびユーザー署名を通貨情報処理サーバー200に送信する(ステップS112)。暗号通貨解約申請には、暗号通貨の種類(円コインやドルコイン等の通貨の単位)や、金額、暗号通貨の価値を担保しているカストディアンの情報等が含まれる。
 続いて、通貨情報処理サーバー200は、ユーザー端末100から送信された暗号通貨解約申請およびユーザー署名を受信する(ステップS211)。通貨情報処理サーバー200は、アドレス情報に含まれるユーザーの公開鍵を用いてユーザー署名が正当なものであることを確認し、正当なものであることが確認された場合、ブロックチェーン500上において暗号通貨を無効化する(ステップS212)。無効化は、例えば有効な暗号通貨と区別できるように無効化されていることを示すフラグ等を設定することによって実現される。
 続いて、通貨情報処理サーバー200は、暗号通貨が解約によって無効化されたことを示す情報や、解約のキャンセルまたは訂正の期限に関する情報を、ネットワークを介して他のユーザー端末100やカストディアンシステム300等に報知する(ステップS213)。解約のキャンセルまたは訂正の期限は、ストレージ240等に予め設定されるものであり、暗号通貨の解約のキャンセまたは訂正に関するカストディアン署名を受け付け可能な期限である。期限は、ブロックチェーンにおいて随時追加(採掘)されるブロック数によって表現され得る。例えば、無効化された時点のブロック数から所定のブロック数に到達するまでという期限を設定することができる。期限は、ブロック数以外の単位でもよく、例えば通常の時間情報を期限として設定してもよい。
 一方、カストディアンシステム300は、ステップS111の処理においてユーザー端末100等から通知される、出金情報や暗号通貨解約申請が行なわれたブロックチェーン上のアドレス等の情報を取得する(ステップS311)。
 続いて、カストディアンシステム300は、ステップS311の処理において取得した情報およびステップS213において報知された情報に基づいて、ブロックチェーン500上における暗号通貨解約申請および暗号通貨の無効化を確認する(ステップS312)。
 続いて、カストディアンシステム300は、ステップS311の処理において確認された出金情報と、ステップS312の処理において確認された暗号通貨解約申請に関する情報の整合性を確認する(ステップS313)。
 続いて、カストディアンシステム300は、ステップS312、S313の各処理における確認の結果に、情報の不整合等の問題がないか否かを判断する(ステップS314)。
 確認の結果に問題がない場合(ステップS314:YES)、カストディアンシステム300は、ステップS316の処理に進む。ステップS316の処理については、後述する。
 確認の結果に問題がある場合(ステップS314:NO)、カストディアンシステム300は、ユーザー端末100に確認結果を送信する(ステップS315)。ユーザー端末100は、カストディアンシステム300から確認結果を受信し、ユーザーから解約のキャンセルまたは訂正の指示を受け付ける(ステップS113)。なお、ユーザー端末100は、カストディアンシステム300から確認結果を受信していなくても、ユーザーから解約のキャンセルまたは訂正の指示を受け付けることができる。ユーザー端末100は、解約のキャンセルまたは訂正が行われるか否かを判断する(ステップS114)。解約のキャンセルまたは訂正が行われない場合(ステップS114:NO)、ユーザー端末100は、カストディアンシステム300から出金通知を受け取り、処理を終了する。解約のキャンセルまたは訂正が行われた場合(ステップS114:YES)、ユーザー端末100は、解約のキャンセルまたは訂正を示す解約キャンセル訂正情報を通貨情報処理サーバー200およびカストディアンシステム300に送信する(ステップS115)。
 続いて、カストディアンシステム300は、ユーザー端末100から解約キャンセル訂正情報を取得しているか否かを判断する(ステップS316)。この処理は、例えばステップS213において報知された期限まで繰り返されてもよく、あるいはステップS213やステップS315等の処理が行われてから所定の時間が経過するまで繰り返されてもよい。
 解約キャンセル訂正情報を取得していない場合(ステップS316:NO)、カストディアンシステム300は、ユーザーに対する出金処理を行い(ステップS319)、出金処理を行った旨をユーザー端末100に通知する。
 解約キャンセル訂正情報を取得している場合(ステップS316:YES)、カストディアンシステム300は、解約のキャンセルまたは訂正に問題がないことを確認した上で、カストディアン署名を生成し(ステップS317)、生成したカストディアン署名を通貨情報処理サーバー200に送信する(ステップS318)。
 一方、通貨情報処理サーバー200においても、ユーザー端末100から解約キャンセル訂正情報を取得しているか否かを判断する(ステップS316)。この処理は、例えばステップS213において報知された期限まで繰り返されてもよく、あるいはステップS213等の処理が行われてから所定の時間が経過するまで繰り返されてもよい。
 解約キャンセル訂正情報を取得していない場合(ステップS214:NO)、通貨情報処理サーバー200は、処理を終了する。
 解約キャンセル訂正情報を取得している場合(ステップS214:YES)、通貨情報処理サーバー200は、暗号通貨の解約について、仮のキャンセル処理または訂正処理を行う(ステップS215)。通貨情報処理サーバー200は、解約について仮のキャンセル処理または訂正処理が行われたことをユーザー端末100やカストディアンシステム300に報知して共有してもよい。仮の解約キャンセル処理または訂正処理は、例えば解約がキャンセルまたは訂正された暗号通貨を示すデータに、仮であることを示すフラグ等を設定することによって表現される。
 
 続いて、通貨情報処理サーバー200は、仮発行の期限内にカストディアン署名を受信したか否かを判断する(ステップS216)。
 期限内に受信された場合(ステップS216:YES)、通貨情報処理サーバー200は、アドレス情報に含まれるカストディアンの公開鍵を用いてカストディアン署名が正当なものであることを確認する。正当なものであることが確認された場合、通貨情報処理サーバー200は、仮の解約キャンセル処理または訂正処理を承認済みの有効な処理として扱い、ブロックチェーン500上の暗号通貨を示すデータに解約のキャンセルまたは訂正を反映する(ステップS217)。通貨情報処理サーバー200は、解約についてキャンセルまたは訂正が行われたことをユーザー端末100やカストディアンシステム300に報知して共有してもよい。
 一方、期限内に受信されない場合または受信されたカストディアン署名が正当なものであると確認できない場合(ステップS216:NO)、通貨情報処理サーバー200は、ステップS217の解約キャンセルまたは訂正処理を行わず、カストディアンシステム300に通知する。カストディアンシステム300は、解約のキャンセルや訂正が行われないと判断して、ステップS319においてユーザーに対する出金処理を行い、出金処理を行った旨をユーザー端末100に通知する。
 本実施形態によれば、以下のような効果が奏される。
 従来、複数の署名に基づいてブロックチェーン上における暗号通貨のトランザクションを有効化する方式としては、いわゆるマルチシグ(マルチシグニチャー)という方式が用いられている。しかしながら、マルチシグ方式は、複数の署名に基づいてブロックチェーン上のトランザクションを行うものであるが、複数の署名が揃い、正当性が確認された段階で初めてブロックチェーン上にトランザクションを生成することができるものである。したがって、トランザクションがブロックチェーン上に生成される前に、複数の秘密鍵を用いて複数の署名を生成する必要がある。この複数の署名を生成する段階では、トランザクションがブロックチェーン上で公開されていない状態で、複数の署名を揃えるために鍵情報や署名情報をインターネット等のセキュリティが脆弱なネットワークや記録媒体を介してやり取りする必要があり、ハッキング等のリスクがあった。
 本実施形態の通貨情報処理サーバー200によれば、複数の署名に基づいてブロックチェーン上における暗号通貨のトランザクションを有効化する方式において、ユーザーからユーザー署名を含む暗号通貨発行申請を受信すると、ブロックチェーン上において仮の暗号通貨を発行する。仮の暗号通貨が発行されてから所定の期間内にカストディアンから当該仮の暗号通貨に関する正当なカストディアン署名が受信された場合に、発行された仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定する。これにより、価値が担保されて価値の変動リスクが低減されたブロックチェーン上の暗号通貨を、安全かつ確実に提供することができる。
 すなわち、通貨情報処理サーバー200によれば、ブロックチェーン上において複数の署名に基づいて暗号通貨の発行等のトランザクションを有効化する方法を用いつつ、ユーザーの署名が取得できた時点でトランザクションを仮の有効化状態としてブロックチェーン上で公開(共有)することができる。これにより、複数の署名が揃う前の段階でも、トランザクションをブロックチェーン上で公開することができ、安全かつ確実にトランザクションを実行できる。そして、カストディアンの署名が取得できた時点で、承認済みの有効なトランザクションとして扱われるように設定することで、価値がカストディアンによって担保された暗号通貨を提供することができる。
 このように、本実施形態によれば、ブロックチェーン上で誰もがトランザクションを確認できる安全な方法によって、ブロックチェーン上の暗号通貨の資産価値を担保することが可能となる。
 また、通貨情報処理サーバー200は、カストディアン署名が正当なものであると確認された場合に、承認済みの有効な暗号通貨をブロックチェーン上において公開する。これにより、暗号通貨がカストディアンに担保されていることが確実に証明され、カストディアンによって価値が担保されて価値の変動リスクが低減されたブロックチェーン上の暗号通貨を、より安全かつ確実に提供することができる。
 また、通貨情報処理サーバー200は、所定の期間内にカストディアンからカストディアン署名が受信されない場合、または、受信されたカストディアン署名が正当なものであると確認されない場合に、発行された仮の暗号通貨が無効なものとして処理されるように設定する。これにより、カストディアンによって価値が担保されずに無効となった仮の暗号通貨を容易に把握することができ、ブロックチェーン上の暗号通貨を、より安全かつ確実に提供することができる。
 また、通貨情報処理サーバー200は、ユーザーから暗号通貨に関するカストディアンの指定を受信可能であり、指定を受け付けたカストディアンからカストディアン署名を受信した場合にのみ仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定する。これにより、ユーザーが指定したカストディアンによって暗号通貨の価値が担保されていることをより確実に証明することができる。
 また、通貨情報処理サーバー200は、仮の暗号通貨が発行された際に、ネットワークを介してその旨を報知する。これにより、ユーザーやカストディアンは仮の暗号通貨が発行されたことを容易に確認することができ、以降の取引をスムーズに実行することができる。
 また、通貨情報処理サーバー200は、仮の暗号通貨が発行された際に、ネットワークを介して所定の期間に関する情報を報知する。これにより、ユーザーやカストディアンは仮の暗号通貨の有効期間を把握することができ、以降の取引をスムーズに実行することができる。
 また、本実施形態の通貨情報処理システムによれば、複数の署名に基づいて暗号通貨のトランザクションを有効化する方式を採用しつつ、複数の署名が揃っていない状態でも、ブロックチェーン上における暗号通貨の発行(作成)を申請することができる。ユーザーによる第1の署名が正当であることが確認されれば、ユーザーの意向に基づいて、ブロックチェーン上において仮の暗号通貨の発行を公表することができる。そして、ユーザーは、暗号通貨の価値を担保するカストディアンを指定して、当該カストディアンに暗号通貨の価値に相当する金額を送金すると共に、送金した金額や暗号通貨の発行を申請したアドレス等の情報をカストディアンに送信する。例えば、ユーザーが100万円分の価値が担保された暗号通貨をブロックチェーン上において発行する場合、「100万円コイン」の発行を申請し、カストディアンに対して、100万円を送金し、その旨を通知する。通知を受けたカストディアンは、ブロックチェーン上において「100万円コイン」の発行に関する申請情報の存在を確認すると共に、入金額等の入金情報を確認し、ブロックチェーン上の申請情報と入金情報とが整合されている場合、仮の暗号通貨に関するカストディアンによる第2の署名を生成する。指定されたカストディアンのみが正当な第2の署名を生成できるため、資産がカストディアンによって担保されていることが、ブロックチェーン上において公開される。カストディアンは、申請情報と入金情報に不整合ある場合、仮の暗号通貨に関するトランザクションに対して第2の署名を作成しない。この場合、カストディアンは、例えばメールや電話等によって、不整合を修正するようにユーザーに通知してもよい。これに対して、ユーザーはブロックチェーン上において再度正しい内容で申請を行ってもよく、追加で入金処理や資産の移管を実行して不整合を解消してもよい。これにより、ユーザーとカストディアンが協力して合意した上で、ブロックチェーン上の資産がカストディアンによって担保される。また、第2の署名は、カストディアンのみが生成できるため、ハッキングや盗聴によって不正が行われるリスクも抑止される。
 本発明は、上述した実施形態のみに限定されるものではなく、特許請求の範囲内において、種々改変することができる。
 例えば、通貨情報処理サーバー200が有する機能の一部または全部を、ユーザー端末100またはカストディアンシステム300の機能として実装してもよい。
 また、ユーザー端末100、通貨情報処理サーバー200、カストディアンシステム300は、それぞれ複数の装置により構成されてもよく、あるいはいずれかの装置が他の装置に含まれて単一の装置として構成されてもよい。
 また、上述したシーケンスチャートは、一部のステップが省略されてもよく、他のステップが追加されてもよい。また各ステップの一部は同時に実行されてもよく、一つのステップが複数のステップに分割されて実行されてもよい。また各ステップの実行順序が変更されてもよい。
 上述した実施形態に係るシステムにおける各種処理を行う手段および方法は、専用のハードウェア回路、またはプログラムされたコンピューターのいずれによっても実現することが可能である。上記プログラムは、たとえば、フレキシブルディスクおよびCD-ROM等のコンピューター読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピューター読み取り可能な記録媒体に記録されたプログラムは、通常、ハードディスク等の記憶部に転送され記憶される。また、上記プログラムは、単独のアプリケーションソフトとして提供されてもよいし、システムの一機能としてその装置のソフトウェアに組み込まれてもよい。
100 ユーザー端末、
110 CPU、
120 ROM、
130 RAM、
140 ストレージ、
150 通信インターフェース、
160 操作表示部、
170 バス、
200 通貨情報処理サーバー、
210 CPU、
220 ROM、
230 RAM、
240 ストレージ、
250 通信インターフェース、
260 操作部、
270 表示部、
280 バス、
300 カストディアンシステム、
310 CPU、
320 ROM、
330 RAM、
340 ストレージ、
350 通信インターフェース、
360 操作部、
370 表示部、
380 バス、
500 ブロックチェーン。

Claims (9)

  1.  複数の署名に基づいてブロックチェーン上における暗号通貨のトランザクションを有効化する方式において前記暗号通貨を処理可能な通貨情報処理装置であって、
     ユーザーから前記暗号通貨の発行に関する前記ユーザーによる第1の署名を含む暗号通貨発行申請を受信可能な受信部と、
     前記受信部において受信した前記暗号通貨発行申請に基づいて前記ブロックチェーン上において仮の暗号通貨を発行する仮発行部と、
     前記仮発行部において前記仮の暗号通貨が発行されてから所定の期間内にカストディアンから前記仮の暗号通貨に関する前記カストディアンによる第2の署名が受信され、当該第2の署名が正当なものであると確認された場合に、前記仮発行部によって発行された前記仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定する設定部と、
     を有する通貨情報処理装置。
  2.  前記設定部は、前記第2の署名が正当なものであると確認された場合に、前記承認済みの有効な暗号通貨を、前記ブロックチェーン上において公開する請求項1に記載の通貨情報処理装置。
  3.  前記設定部は、前記所定の期間内に前記カストディアンから前記第2の署名が受信されない場合、または、受信された前記第2の署名が正当なものであると確認されない場合に、前記仮発行部によって発行された前記仮の暗号通貨が無効なものとして処理されるように設定する請求項1または請求項2に記載の通貨情報処理装置。
  4.  前記受信部は、前記ユーザーから前記暗号通貨に関する前記カストディアンの指定を受信可能であり、
     前記設定部は、受信部において指定を受け付けた前記カストディアンから前記第2の署名を受信した場合にのみ前記仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定する請求項1~3のいずれか一項に記載の通貨情報処理装置。
  5.  前記仮発行部において前記仮の暗号通貨が発行された際に、ネットワークを介してその旨を報知する報知部をさらに有する請求項1~4のいずれか一項に記載の通貨情報処理装置。
  6.  前記報知部は、前記仮発行部において前記仮の暗号通貨が発行された際に、ネットワークを介して前記所定の期間に関する情報を報知する請求項5に記載の通貨情報処理装置。
  7.  前記受信部は、ユーザーから前記暗号通貨の解約に関する前記ユーザーによる第1の署名を含む暗号通貨解約申請を受信可能であり、
     前記設定部は、前記受信部において受信した前記暗号通貨解約申請に基づいて前記ブロックチェーン上において前記暗号通貨を無効化するように設定し、
     前記暗号通貨解約申請に基づいて無効化された前記暗号通貨について、ユーザーから解約のキャンセルまたは訂正の指示を受け付け可能なキャンセル受付部と、
     前記キャンセル受付部において受け付けた前記指示に基づいて前記ブロックチェーン上において仮の解約のキャンセルまたは訂正を行う仮キャンセル部と、
     前記設定部において前記暗号通貨が無効化されてから所定の期間内にカストディアンから前記仮の解約のキャンセルまたは訂正に関する前記カストディアンによる第2の署名が受信され、当該第2の署名が正当なものであると確認された場合に、前記仮キャンセル部によって行われた前記仮の解約のキャンセルまたは訂正が承認済みの有効なキャンセルまたは訂正として処理されるように設定するキャンセル設定部と、
     を有する請求項1~6のいずれか一項に記載の通貨情報処理装置。
  8.  ネットワークを介して接続されたユーザー端末、通貨情報処理装置およびカストディアンシステムから構成され、複数の署名を用いてブロックチェーン上における暗号通貨のトランザクションを有効化する方式において前記暗号通貨を処理可能な通貨情報処理システムにおいて、
     前記ユーザー端末は、
     ユーザーの指示に基づいて、所定の通貨における所定の金額の価値を有する前記暗号通貨の発行に関する前記ユーザーによる第1の署名を含む暗号通貨発行申請を生成して前記通貨情報処理装置に送信する送信部と、
     前記カストディアンシステムに対する前記所定の金額の送金に関する情報および前記通貨情報処理装置に対する前記暗号通貨発行申請の送信に関する情報を前記カストディアンシステムに通知する通知部と、を有し、
     前記通貨情報処理装置は、
     前記ユーザー端末から送信された前記暗号通貨発行申請を受信可能な受信部と、
     前記受信部において受信した前記暗号通貨発行申請に基づいて前記ブロックチェーン上において仮の暗号通貨を発行する仮発行部と、
     前記仮発行部において前記仮の暗号通貨が発行されてから所定の期間内に前記カストディアンシステムから前記仮の暗号通貨に関するカストディアンによる第2の署名が受信され、当該第2の署名が正当なものであると確認された場合に、前記仮発行部によって発行された前記仮の暗号通貨が承認済みの有効な暗号通貨として処理されるように設定する設定部と、を有し、
     前記カストディアンシステムは、
     前記ユーザー端末からの通知に基づいて、前記通貨情報処理装置において前記所定の金額に対応する前記仮の暗号通貨が発行されたことと、前記所定の金額の送金が実行されたこととを確認する確認部と、
     前記確認部によって、前記所定の金額に対応する前記仮の暗号通貨の発行および前記所定の金額の送金の実行が確認された場合、前記仮の暗号通貨に関する前記カストディアンによる前記第2の署名を生成して前記通貨情報処理装置に送信する送信部と、
     を有する通貨情報処理システム。
  9.  前記ユーザー端末の前記送信部は、前記ユーザーの指示に基づいて、前記暗号通貨の解約に関する前記ユーザーによる第1の署名を含む暗号通貨解約申請を生成して前記通貨情報処理装置に送信可能であり、
     前記ユーザー端末の前記送信部は、前記通知部は、前記解約に関する情報および前記通貨情報処理装置に対する前記暗号通貨解約申請の送信に関する情報を前記カストディアンシステムに通知し、
     前記通貨情報処理装置の前記受信部は、前記ユーザー端末から送信された前記暗号通貨解約申請を受信可能であり、
     前記通貨情報処理装置の前記設定部は、前記受信部において受信した前記暗号通貨解約申請に基づいて前記ブロックチェーン上において前記暗号通貨を無効化するように設定し、
     前記ユーザー端末は、
     前記ユーザーから前記暗号通貨の解約のキャンセルまたは訂正に関する指示を受け付けて前記通貨情報処理装置および前記カストディアンシステムに送信し、
     前記通貨情報処理システムは、
     前記ユーザー端末から受信した前記指示に基づいて前記ブロックチェーン上において仮の解約のキャンセルまたは訂正を行う仮キャンセル部と、
     前記設定部において前記暗号通貨が無効化されてから所定の期間内に前記カストディアンシステムから前記仮の解約のキャンセルまたは訂正に関するカストディアンによる第2の署名が受信され、当該第2の署名が正当なものであると確認された場合に、前記仮キャンセル部によって行われた仮の解約のキャンセルまたは訂正が承認済みの有効なキャンセルまたは訂正として処理されるように設定するキャンセル設定部と、をさらに有し、
     前記カストディアンシステムは、前記ユーザー端末から受信した前記指示に基づいて前記仮の解約のキャンセルまたは訂正に関する前記カストディアンによる前記第2の署名を生成して前記通貨情報処理装置に送信する請求項8に記載の通貨情報処理システム。
PCT/JP2018/034077 2018-07-03 2018-09-13 通貨情報処理装置および通貨情報処理システム WO2020008658A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019506470A JP6521421B1 (ja) 2018-07-03 2018-09-13 通貨情報処理装置および通貨情報処理システム
SG11201906140PA SG11201906140PA (en) 2018-07-03 2018-09-13 Currency information processor and currency information processing system
US16/466,205 US10810586B2 (en) 2018-07-03 2018-09-13 Currency information processor and currency information processing system
EP18882275.3A EP3611680A4 (en) 2018-07-03 2018-09-13 CURRENCY INFORMATION PROCESSOR AND CURRENCY INFORMATION PROCESSING SYSTEM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-126586 2018-07-03
JP2018126586 2018-07-03

Publications (1)

Publication Number Publication Date
WO2020008658A1 true WO2020008658A1 (ja) 2020-01-09

Family

ID=67225965

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/034077 WO2020008658A1 (ja) 2018-07-03 2018-09-13 通貨情報処理装置および通貨情報処理システム

Country Status (4)

Country Link
US (1) US10810586B2 (ja)
EP (1) EP3611680A4 (ja)
SG (1) SG11201906140PA (ja)
WO (1) WO2020008658A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022021081A (ja) * 2020-07-21 2022-02-02 三菱Ufj信託銀行株式会社 権利移転完結型電子帳簿サーバ、及び権利移転完結型電子帳簿システム

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10810586B2 (en) * 2018-07-03 2020-10-20 Standard Transaction Co., Ltd. Currency information processor and currency information processing system
CN111783114B (zh) 2018-08-06 2024-04-02 创新先进技术有限公司 区块链交易方法及装置、电子设备
CN109359974B (zh) * 2018-08-30 2020-10-30 创新先进技术有限公司 区块链交易方法及装置、电子设备
US11416854B2 (en) 2018-12-29 2022-08-16 Advanced New Technologies Co., Ltd. System and method for information protection
US20240152638A1 (en) * 2022-11-03 2024-05-09 Avago Technologies International Sales Pte. Limited Blockchain-enforced data access control

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002222318A (ja) * 2001-01-26 2002-08-09 Chuo Mitsui Trust & Banking Co Ltd 電子決済処理システム
JP2017162019A (ja) * 2016-03-07 2017-09-14 株式会社 みずほ銀行 証券取引支援システム
JP2018032080A (ja) 2016-08-22 2018-03-01 株式会社 みずほ銀行 カストディ支援システム及びカストディ支援方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017060816A1 (en) * 2015-10-05 2017-04-13 402 Technologies S.A. Private networks and content requests in a resource transfer system
KR101837166B1 (ko) * 2016-10-26 2018-03-09 주식회사 코인플러그 블록체인 내의 블록별로 발란스 데이터베이스를 관리하여 통화를 발행 및 지급 결제하는 방법과 이를 이용한 서버
WO2018145024A1 (en) * 2017-02-03 2018-08-09 Terry Aronson System and method for asset backed crypto-currency
US20190034919A1 (en) * 2017-12-29 2019-01-31 Intel Corporation Securing Electronic Wallet Transactions
KR20200104413A (ko) * 2018-01-17 2020-09-03 메디씨 벤쳐스, 인코포레이티드 거래 주소를 생성하기 위해 n개의 키 중 m개를 사용하는 다중 승인 시스템
US10810586B2 (en) * 2018-07-03 2020-10-20 Standard Transaction Co., Ltd. Currency information processor and currency information processing system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002222318A (ja) * 2001-01-26 2002-08-09 Chuo Mitsui Trust & Banking Co Ltd 電子決済処理システム
JP2017162019A (ja) * 2016-03-07 2017-09-14 株式会社 みずほ銀行 証券取引支援システム
JP2018032080A (ja) 2016-08-22 2018-03-01 株式会社 みずほ銀行 カストディ支援システム及びカストディ支援方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3611680A4

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022021081A (ja) * 2020-07-21 2022-02-02 三菱Ufj信託銀行株式会社 権利移転完結型電子帳簿サーバ、及び権利移転完結型電子帳簿システム
JP7038764B2 (ja) 2020-07-21 2022-03-18 三菱Ufj信託銀行株式会社 権利移転完結型電子帳簿サーバ、及び権利移転完結型電子帳簿システム

Also Published As

Publication number Publication date
US20200097958A1 (en) 2020-03-26
SG11201906140PA (en) 2020-02-27
EP3611680A1 (en) 2020-02-19
EP3611680A4 (en) 2020-02-19
US10810586B2 (en) 2020-10-20

Similar Documents

Publication Publication Date Title
US11720887B1 (en) System, method and program product for depositing and withdrawing stable value digital assets in exchange for fiat
US11562333B1 (en) System, method and program product for generating and utilizing stable value digital assets
WO2020008658A1 (ja) 通貨情報処理装置および通貨情報処理システム
JP6794527B2 (ja) 安全な台帳分散の方法及び安全な分散型台帳技術を用いたコンピューターシステム
US10438290B1 (en) System, method and program product for generating and utilizing stable value digital assets
JP6956062B2 (ja) 取引方法、プログラム、検証装置及び生成方法
KR102650749B1 (ko) 블록체인에서 복수개의 거래를 기록하는 방법 및 시스템
JP6704985B2 (ja) デジタル資産仲介電子決済プラットフォーム
RU2145437C1 (ru) Система и способ осуществления коммерческих платежей с использованием доверенных агентов
CA2369081C (en) System and method for electronically exchanging value among distributed users
US20170140408A1 (en) Transparent self-managing rewards program using blockchain and smart contracts
KR20190024601A (ko) 가상화폐 거래 시스템 및 방법
JP2022520656A (ja) ブロックチェーンネットワークを介した移転を実施するためのコンピュータで実施されるシステムおよび方法
CN113826134B (zh) 基于区块链的可信保函
JP6521421B1 (ja) 通貨情報処理装置および通貨情報処理システム
US20240257244A1 (en) A System And Method For Trading Cryptocurrencies, Tokenized Assets And/Or Fiat Currencies On A Permission-Less Unified And Interoperable Blockchain Distributed Ledger System With Anchor-Of-Trust Organizations
US20220300964A1 (en) Systems and methods for blockchain-based escrow management
JP6840319B1 (ja) 取引情報処理システム
CN114511321A (zh) 基于点对点的数据处理方法、系统、计算设备及存储介质
IT202100026213A1 (it) Sistema per la creazione e il trasferimento di moneta FIAT digitale basato su blockchain
US20240257243A1 (en) A system and method for trading cryptocurrencies, tokenized assets and/or fiat currencies on a single distributed ledger system with multiple issuing institutions
WO2024176410A1 (ja) 通貨利用装置、電子通貨システム、通貨利用方法、及びプログラム
Huang et al. Practical Offline Payments Using One-Time Passcodes
CA2758328C (en) System and method for synchronizing transaction information with a value exchange system
KR20180010036A (ko) 핀테크 서버 및 이체 공증 서비스 제공 방법

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2019506470

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2018882275

Country of ref document: EP

Effective date: 20190604

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

Ref document number: 18882275

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE