Search

US-12619959-B2 - Data structure, transmission device, receiving device, settlement device, method, and computer program

US12619959B2US 12619959 B2US12619959 B2US 12619959B2US-12619959-B2

Abstract

Provided is a data structure of virtual currency data with high safety. The virtual currency data, which is used in combination with a settlement device that accepts settlement when the virtual currency data is received from a predetermined device via a network and when predetermined conditions are satisfied, includes virtual currency encryption data which is data obtained by, according to a predetermined encryption method, encryption of issuer information including at least information on an issuer of the virtual currency data, amount information that is information for specifying a monetary value, and settlement condition information that is information on conditions for accepting payment with virtual currency.

Inventors

  • Takatoshi Nakamura

Assignees

  • NTI, INC.

Dates

Publication Date
20260505
Application Date
20240430
Priority Date
20170517

Claims (3)

  1. 1 . A settlement device comprising: a memory; a network interface; and one or more processors coupled to the network interface and the memory, and configured to: upon request of a user, generate virtual currency data corresponding to virtual currency having a monetary value and including plaintext serial number information unique to each virtual currency data for distinguishing the virtual currency data from other virtual currency data, and virtual currency encryption data, which is generated by encrypting, using a pseudo-random number as an encryption key, issuer information including at least information on an issuer of the virtual currency data, amount information that is information for specifying the monetary value, and settlement condition information that is information on conditions for accepting payment with the virtual currency; record the issuer information, the amount information, the settlement condition information, and the serial number information in association with each other in the memory; transmit the virtual currency data, via the network interface to a user device of the user, wherein the user device transmits the virtual currency data to a predetermined device; receive the virtual currency data, via the network interface from the predetermined device for requesting settlement; compare the virtual currency encryption data which has remained encrypted from a time of its generation, extracted from the virtual currency data received to new virtual currency encryption data which is generated by encrypting the issuer information, the amount information, the settlement condition information recorded in the memory and associated with the serial number information that is the same as the serial number information extracted from virtual currency data the received, and determine that the virtual currency data sent from the predetermined device is authentic when both of the data coincide with each other; determine whether a condition specified by the settlement condition information recorded in the memory and associated with the serial number information that is the same as the serial number information extracted from the virtual currency data received is satisfied; and accept settlement of an amount of money specified by the amount information recorded in the memory and associated with the serial number information that is the same as the serial number information extracted from the virtual currency data received in response to the condition specified by the settlement condition information being satisfied.
  2. 2 . A settlement method executed by a settlement device capable of receiving data via a network and including a recording medium and a computer for performing data processing, the settlement method includes steps executed by the computer of: upon request of a user, generating virtual currency data corresponding to virtual currency having a monetary value and including plaintext serial number information unique to each virtual currency data for distinguishing the virtual currency data from other virtual currency data, and virtual currency encryption data, which is generated by encrypting, using a pseudo-random number as an encryption key, issuer information including at least information on an issuer of the virtual currency data, amount information that is information for specifying the monetary value, and settlement condition information that is information on conditions for accepting payment with the virtual currency; recording the issuer information, the amount information, the settlement condition information, and the serial number information in association with each other in the recording medium; transmitting the virtual currency data, via the network to a user device of the user, wherein the user device transmits the virtual currency data to a predetermined device; receiving the virtual currency data, via the network from the predetermined device for requesting settlement; comparing the virtual currency encryption data which has remained encrypted from a time of its generation, extracted from the virtual currency data received to new virtual currency encryption data which is generated by encrypting the issuer information, the amount information, the settlement condition information recorded in the memory and associated with the serial number information that is the same as the serial number information extracted from virtual currency data the received, and determine that the virtual currency data sent from the predetermined device is authentic when both of the data coincide with each other; determining whether a condition specified by the settlement condition information recorded in the recording medium and associated with the serial number information that is the same as the serial number information extracted from the virtual currency data received is satisfied; and accepting settlement of an amount of money specified by the amount information recorded in the recording medium and associated with the serial number information that is the same as the serial number information extracted from the virtual currency data received in response to the condition specified by the settlement condition information being satisfied.
  3. 3 . One or more non-transitory computer readable storage media encoded with instructions that, when executed by a processor, cause the processor to receive data via a network and perform data processing to function as a settlement device, the instructions causing the processor to: upon request of a user, generate virtual currency data corresponding to virtual currency having a monetary value and including plaintext serial number information unique to each virtual currency data for distinguishing the virtual currency data from other virtual currency data, and virtual currency encryption data, which is generated by encrypting, using a pseudo-random number as an encryption key, issuer information including at least information on an issuer of the virtual currency data, amount information that is information for specifying the monetary value, and settlement condition information that is information on conditions for accepting payment with the virtual currency; record the issuer information, the amount information, the settlement condition information, and the serial number information in association with each other in memory; transmit the virtual currency data, via the network to a user device of the user, wherein the user device transmits the virtual currency data to a predetermined device; receive the virtual currency data, via the network from the predetermined device for requesting settlement; compare the virtual currency encryption data which has remained encrypted from a time of its generation, extracted from the virtual currency data received to new virtual currency encryption data which is generated by encrypting the issuer information, the amount information, the settlement condition information recorded in the memory and associated with the serial number information that is the same as the serial number information extracted from virtual currency data the received, and determine that the virtual currency data sent from the predetermined device is authentic when both of the data coincide with each other; determine whether a condition specified by the settlement condition information recorded in the memory and associated with the serial number information that is the same as the serial number information extracted from the virtual currency data received is satisfied; and accept settlement of an amount of money specified by the amount information recorded in the memory and associated with the serial number information that is the same as the serial number information extracted from the virtual currency data received in response to the condition specified by the settlement condition information being satisfied.

Description

This application is a divisional of U.S. Application Ser. No. 16/613,229, filed Apr. 22, 2020, which is a § 371 National Stage Application of PCT/JP2018/019030, filed May 17, 2018, which claims priority to JP 2017098099, filed May 17, 2017, the entireties of which are incorporated herein by reference. TECHNICAL FIELD The present invention relates to a virtual currency (virtual cash). BACKGROUND ART In recent years, various proposals related to FinTech have been made, and some of the proposals have already been put into practical use. Some of the proposals are called virtual currency. For example, Bitcoin (trademark), which began with a thesis published by someone using the name Satoshi Nakamoto and is realized by a system constructed on the Internet, is also generally called a virtual currency. On the other hand, bitcoin is sometimes referred to as cryptocurrency or crypto cash. First, a structure of bitcoin will be described. Bitcoin is generally established by the following structure. First, bitcoin is generated as follows. A person who has the right to generate bitcoins is limited to an administrator who manages nodes to be described below. The node administrator participates in a certain game played on the Internet. The game is repeated, and the node administrator, who has won the game, can obtain a predetermined number of bitcoins every time the administrator wins the game. The bitcoins generated in this way are transferred to a third party including a person other than the node administrator from the node administrator who obtains the bitcoins, for example, for “payment” in the same manner as general currency, and will be distributed as a result. By the way, how to prevent double transfer is very important problem in the field of virtual currency or virtual money without being limited to bitcoin. Since general money, which is a tangible object, disappears from the transferor's hands when transferred from the transferor to the transferee, after the transferor transfers the money to the transferee, it is not possible for the transfer to transfer the same money to another transferee in principle. However, since the virtual currency is easy to duplicate and it is possible that the virtual currency as data owned by the transferor is not extinguished even when the transferor transfers the virtual currency to the transferee, it is very easy to transfer the same virtual currency to many people. Unless the same virtual currency can be prevented from being transferred to many people, such virtual currency cannot gain any trust as currency. Bitcoin intends to solve such a problem of double transfer through a method of preserving all transaction records. The transaction records are as follows, for example. For simplicity, it is assumed that only four persons A to D participate in the structure of bitcoin and the node administrators are only two persons A and B. Assuming that the node administrator A wins the above-described game and gains 1,000 bitcoins, and the node administrator B wins the above-described game and gains 500 bitcoins. In this state, A to D respectively have bitcoins described as follows. TABLE 1A+1000B+500C0D0 Next, assuming that A has paid 100 bitcoins to C and B has paid 200 bitcoins to D. In this state, A to D respectively have bitcoins described as follows. TABLE 2A+1000−100(to C)B+500−200(to D)C0+100(from A)D0+200(from B) Next, assuming that A has paid 300 bitcoins to B and D has paid 100 bitcoins to C. In this state, A to D respectively have bitcoins described as follows. TABLE 3A+1000−100(to C)−300(to B)B+500−200(to D)+300(from A)C0+100(from A)+100(from D)D0+200(from B)−100(to C) All of the records indicated in Tables 1 to 3 described above are transaction records. According to the transaction records described above, it can be seen at the time of Table 3 that A has bitcoins of 600 (=+1000-100-300), B similarly has bitcoins of 600, C has bitcoins of 200, and D has bitcoins of 100. The bitcoin having such a structure is interesting in that some data as a main body of bitcoin is not delivered from the transferor to the transferee in the transfer of bitcoin between A to D in the example described above. In spite of this, attraction of the bitcoin structure is to specify the current balance of bitcoin of A to D as long as the transaction records exist. Again, in the bitcoin structure, there is no data corresponding to a coin entity, even though a naming of “coin” is used to recall a tangible object. Noted that the phenomenon that the node administrator in the bitcoin structure wins the game and gains bitcoins can occur after the transaction is advanced to some extent, for example, after the time of Table 3. In the bitcoin structure, as described above, each participant who participates in the bitcoin structure does not have data corresponding to his/her bitcoin. In other words, even though each participant's wallet is empty, since all past transaction records exist so as to be accessible and