Electronic currency system, electronic currency processing device, electronic currency processing method, and program
The electronic currency system addresses data size bloating by periodically updating and deleting transaction history, ensuring robustness, security, and early fraud detection, while maintaining manageable data size and privacy.
Patent Information
- Application Number
- PCT/JP2024/019292
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-24
- Publication Date
- 2025-11-27
AI Technical Summary
Existing electronic currency systems face issues with data size bloating due to cumulative addition of signatures and additional information during transactions, making it difficult to maintain robustness and instantaneous settlement while ensuring security and traceability.
An electronic currency system that includes a currency processing device capable of deleting additional information and adding update information using the private key of the processing device, thereby maintaining a manageable data size and enhancing security through periodic updates.
Prevents data size growth, enables early fraud detection, reduces the risk of fraudulent currency, and protects user privacy by periodically updating and deleting transaction history.
Smart Images

Figure JP2024019292_27112025_PF_FP_ABST
Abstract
Description
Electronic currency system, electronic currency processing device, electronic currency processing method and program
[0001] The present invention relates to an electronic currency system, an electronic currency processing device, an electronic currency processing method, and a program.
[0002] Consideration of CBDC (Central Bank Digital Currency) is underway in various countries around the world, and the Bank of Japan has stated that digital currency must have the following characteristics:
[0003] (1) Universal access (2) Security (3) Robustness (4) Instantaneous settlement (5) Interoperability To meet the requirements of robustness and instantaneous settlement, the currency must be circulated through user-to-user settlement (offline settlement without the mediation of a central server). Furthermore, because currency has the property of being traded between users multiple times (transferability), authentication of transaction and traceability of fraud are essential from a security perspective.
[0004] Since it is difficult to detect tampering with offline digital currencies, a known method is to chain signatures to detect fraud and verify them all at once when making a deposit.
[0005] Okuda, et al., "Initial Study on Formal Verification Methods for Token-Based Electronic Cash Systems," Research Report, Electronic Intellectual Property and Infrastructure (EIP), 2022-EIP-98, 24, pp.1-8, 2022 / 12 / 15; Okuda, et al., "Considerations on Formal Verification of Double-Spending Detection and Privacy for Token-Based Electronic Cash Systems," Research Report, Computer Security (CSEC), 2023-CSEC-100, 66, pp.1-8, 2023 / 2 / 27
[0006] However, in the conventional technology, the data size of electronic currency may become bloated because additional information, such as signatures, is cumulatively added to the currency as it is circulated.
[0007] The present invention has been made in view of the above points, and has as its object to suppress the data size of electronic currency from becoming too large.
[0008] In order to solve the above problem, in an electronic currency system including a user device used by a user of electronic currency to which additional information is added each time a remittance is made, and a currency processing device, the currency processing device has an update request receiving unit configured to receive the electronic currency and the user's public key from the user device, an update unit configured to delete the additional information from the electronic currency and add update information to the electronic currency including a signature for the public key using the private key of the currency processing device and the public key, and a currency sending unit configured to send the electronic currency with the update information added to the user device.
[0009] This can prevent the data size of electronic currency from increasing.
[0010] Fig. 1 is a diagram showing an example of the configuration of an electronic currency system according to an embodiment of the present invention. Fig. 2 is a diagram showing an example of the hardware configuration of an issuing bank server 10 according to an embodiment of the present invention. Fig. 3 is a diagram showing an example of the functional configuration of an electronic currency system according to an embodiment of the present invention. Fig. 4 is a sequence diagram for explaining an example of a processing procedure executed in the electronic currency system.
[0011] An embodiment of the present invention will now be described with reference to the accompanying drawings. FIG. 1 is a diagram showing an example of the configuration of an electronic currency system according to an embodiment of the present invention. In FIG. 1, the electronic currency system includes an issuing bank server 10 and multiple user devices 20. The issuing bank server 10 and each user device 20 are connected via a network such as the Internet (whether wired or wireless). Note that only some of the user devices 20 may be able to communicate with the issuing bank server 10.
[0012] The issuing bank server 10 is one or more computers managed by an issuing bank that issues electronic currency (hereinafter simply referred to as "currency"). The issuing bank server 10 issues currency and accepts currency withdrawals.
[0013] The user device 20 is a computer used by a user of the currency. For example, a server computer, a PC, a tablet terminal, a smartphone, or the like may be used as the user device 20.
[0014] A currency user is any person (individual or organization) who sends or receives currency during the currency circulation process. Examples of users include financial institutions other than the issuing bank (e.g., commercial banks), companies, stores, and general consumers.
[0015] Each user device 20 acts as a remitter or a remittance destination depending on the situation of the transaction using the currency. The remitter is the party that sends the currency, and the remittance destination is the party that receives the currency.
[0016] Remittances include, for example, withdrawals from financial institutions other than the issuing bank (for example, commercial banks), deposits to financial institutions, and payments in commercial transactions.
[0017] For example, in the case of a withdrawal from a financial institution, the user device 20 managed by the financial institution is the sender, and the user device 20 used by the person receiving the withdrawn currency is the recipient. In the case of a deposit at a financial institution, the user device 20 used by the person depositing currency at the financial institution is the sender, and the user device 20 managed by the financial institution is the recipient. In the case of a payment, the user device 20 used by the person making the payment (the purchaser of the product or service) is the sender, and the user device 20 used by the person receiving the payment (the seller of the product or service) is the recipient. In this way, the sender and the recipient have a relative relationship. In other words, the user device 20 used by a user of an electronic currency system can be the sender in one transaction and the recipient in another transaction.
[0018] In this embodiment, the basic protocol for currency circulation (hereinafter referred to as the "basic protocol") conforms to "4. Protocol to be verified" in Non-Patent Document 1 and Non-Patent Document 2. A pair of public and private keys is issued to the issuing bank server 10 and each user in advance, and the issuing bank server 10 and each user device 20 store the pair of public and private keys.
[0019] An outline of the basic protocol that is a prerequisite for this embodiment will be described.
[0020] Currency is issued by the issuing bank server 10. Issuing currency means newly generating a token (data) as currency. In this embodiment, currency at the time of issuance (immediately after issuance) is called T0 In the basic protocol, T 0 has the following structure:
[0021] T 0 :=(id, v, y, pkU, S 0 ) In other words, T 0 , d, v, y, pkU i , and S 0 id is the currency ID. The currency ID is a unique value for each currency. v is the face value of the currency. The face value of the currency may be the smallest unit (for example, 1 yen) or may be different for each currency. y is the year of issue of the currency. pkU i is the public key of the user to whom the currency is issued. The currency is issued to, for example, a financial institution. S 0 is (id, v, y, pkU i ) using the private key of the issuing bank server 10 (hereinafter simply referred to as "signature").
[0022] The issued currency is transferred from the user device 20 as the remitter to the user device 20 as the recipient in accordance with the transaction. In the basic protocol, when a certain currency is transferred from the user device 20 of user i (hereinafter referred to as "user device 20i") to the user device 20 of user i+1 (hereinafter referred to as "user device 20i+1"), (pkU i+1 , S i ) (hereinafter referred to as "additional information") is added (recorded) to the currency by the remitter's user device 20i.
[0023] Here, pkU i+1 is the public key of the user device 20i+1, which is the remittance destination. i , pkU i+1 is a signature of the sender user i using the private key of the hash value of
[0024] Additional information from the first remittance immediately after issuance 1 The n-th additional information is t n Then, a currency T that has been remitted n times since its issuance has the following structure:
[0025] T = {T 0, t 1 , ..., t n-1 , t n} In this way, each time a remittance is made, additional information is added to the currency T. In this embodiment, the issuing bank server 10 executes a process to prevent the data size of the currency from expanding due to the accumulation of such additional information history.
[0026] 2 is a diagram showing an example of the hardware configuration of issuing bank server 10 according to an embodiment of the present invention. Issuing bank server 10 in Fig. 2 includes drive device 100, auxiliary storage device 102, memory device 103, processor 104, and interface device 105, all of which are interconnected via bus B.
[0027] The program that realizes the processing on the issuing bank server 10 is provided on a recording medium 101 such as a CD-ROM. When the recording medium 101 storing the program is set in the drive device 100, the program is installed from the recording medium 101 to the auxiliary storage device 102 via the drive device 100. However, the program does not necessarily have to be installed from the recording medium 101; it may be downloaded from another computer via a network. The auxiliary storage device 102 stores the installed program as well as necessary files, data, etc.
[0028] When an instruction to start a program is received, the memory device 103 reads and stores the program from the auxiliary storage device 102. The processor 104 is a CPU or a GPU (Graphics Processing Unit), or a CPU and a GPU, and executes functions related to the issuing bank server 10 in accordance with the program stored in the memory device 103. The interface device 105 is used as an interface for connecting to a network.
[0029] The user device 20 may also have the same hardware configuration as that shown in FIG.
[0030] FIG. 3 is a diagram showing an example of the functional configuration of an electronic currency system according to an embodiment of the present invention.
[0031] 3, the user device 20 has an update request unit 21 and a currency receiving unit 22. These units are realized by one or more programs installed in the user device 20 and executed by a processor of the user device 20. The user device 20 also uses a currency storage unit 23. The currency storage unit 23 can be realized, for example, by using an auxiliary storage device of the user device 20.
[0032] The issuing bank server 10 has an update request receiving unit 11, a verification unit 12, an update unit 13, and a currency sending unit 14. Each of these units is realized by the processor 104 executing one or more programs installed on the issuing bank server 10.
[0033] The processing procedures executed in the electronic currency system will be described below. Fig. 4 is a sequence diagram for explaining an example of the processing procedures executed in the electronic currency system.
[0034] When the update request unit 21 of the user device 20 detects the presence of a currency to which a predetermined number (N or more) of additional information items are added among the currencies stored in the currency storage unit 23, the update request unit 21 of the user device 20 transmits an update request for the additional information for the currency to the issuing bank server 10 (S101). and a public key of the user of the user device 20. The public key is stored in advance in the user device 20 in pair with the private key of the user.
[0035] Note that step S101 may be executed when transferring T to another user, when receiving T from another user, or at any timing between receiving T and transferring it.
[0036] Each piece of additional information includes the public key of the remittance destination. Therefore, by installing the public key of a trusted institution in advance in each user device 20, the update request unit 21 of each user device 20 can determine whether each piece of additional information has been added by a trusted institution. A trusted institution is the issuing bank or a specialized institution approved by the issuing bank.
[0037] When the update request receiving unit 11 of the issuing bank server 10 receives the update request, the verification unit 12 verifies T included in the update request (S102). For example, if the issued currency DB that stores issued currencies does not store a currency with the same currency ID as T, the verification unit 12 determines that T is a duplicated currency. The verification unit 12 may also verify the signatures included in all or the final additional information added to T.
[0038] When it is verified that T is the correct currency, the update unit 13 updates the additional information of T (S103). Specifically, the update unit 13 deletes all the additional information added to T. As a result, T 0 The update unit 13 generates a signature S using the private key of the issuing bank for the hash value of the public key included in the update request. A and additional information t containing the public key A T 0 For example, T = {T 0 , t 1 , ..., t n-1 , t n}, then {t 1 , ..., t n-1 , t n} is deleted and t A By adding T = {T 0 , t A}. For convenience, the currency updated by the update unit 13 is denoted as T'. Note that the additional information added by the update unit 13 is an example of update information.
[0039] Next, the currency transmitting unit 14 transmits T' to the user device 20 (S104).
[0040] When the currency receiving unit 22 of the user device 20 receives T', it records T' in place of T in the currency storage unit 23. At this time, the currency receiving unit 22 stores the signature S added to T'. A may be verified.
[0041] The process executed by the issuing bank server 10 in FIG. 4 may be executed by the user device 20 of the user associated with the above-mentioned trusted institution.
[0042] Furthermore, the processing procedure of FIG. 4 may be executed only by a user device 20 that can communicate with the issuing bank server 10, such as a user device 20 used by a store or the like.
[0043] As described above, according to this embodiment, additional information can be periodically deleted from currency, thereby preventing the data size of electronic currency from becoming too large.
[0044] In addition, by periodically sending currency to a trusted institution, fraud detection can be made earlier than with conventional technology, reducing the risk of fraudulent currency spreading and enabling early identification of fraudulent issuers. Furthermore, deleting additional information equivalent to transaction history is also effective from the perspective of privacy protection.
[0045] It is also possible to withdraw currency with a large amount of additional information and issue new currency. However, this would have side effects such as an increase in the number of records in the issued currency DB and an increase in currency issuance transactions. This embodiment makes it possible to avoid such side effects.
[0046] In this embodiment, the issuing bank server 10 is an example of a currency processing device.
[0047] Although the embodiments of the present invention have been described in detail above, the present invention is not limited to such specific embodiments, and various modifications and changes are possible within the scope of the gist of the present invention described in the claims.
[0048] REFERENCE SIGNS LIST 10 Issuing bank server 11 Update request receiving unit 12 Verification unit 13 Update unit 14 Currency transmitting unit 20 User device 21 Update request unit 22 Currency receiving unit 23 Currency storage unit 100 Drive device 101 Recording medium 102 Auxiliary storage device 103 Memory device 104 Processor 105 Interface device B Bus
Claims
1. An electronic currency system including a user device used by a user of electronic currency to which additional information is added each time a remittance is made, and a currency processing device, wherein the currency processing device has: an update request receiving unit configured to receive the electronic currency and the user's public key from the user device; an updating unit configured to delete the additional information from the electronic currency and add to the electronic currency update information including a signature of the public key using the currency processing device's private key and the public key; and a currency sending unit configured to send the electronic currency with the update information added to the user device.
2. The electronic currency system according to claim 1, characterized in that the update request receiving unit is configured to receive the electronic currency to which a predetermined number or more of the additional information has been added, and the update unit is configured to delete all of the additional information added to the electronic currency.
3. A currency processing device comprising: an update request receiving unit configured to receive electronic currency and a public key of a user from a user device used by the user of electronic currency to which additional information is added each time the currency is remitted; an updating unit configured to delete the additional information from the electronic currency and add update information to the electronic currency, the update information including a signature for the public key using the private key of the currency processing device and the public key; and a currency sending unit configured to send the electronic currency with the update information added to the user device.
4. A currency processing method characterized in that a currency processing device executes the following steps: an update request receiving procedure for receiving electronic currency and the user's public key from a user device used by the user of electronic currency to which additional information is added each time the currency is remitted; an update procedure for deleting the additional information from the electronic currency and adding to the electronic currency update information including a signature for the public key using the private key of the currency processing device and the public key; and a currency sending procedure for sending the electronic currency with the update information added to the user device.
5. A program for causing a computer to execute the following steps: an update request receiving procedure for receiving electronic currency and the public key of a user from a user device used by the user of electronic currency to which additional information is added each time the currency is remitted; an update procedure for deleting the additional information from the electronic currency and adding to the electronic currency update information including a signature for the public key using the private key of the computer and the public key; and a currency sending procedure for sending the electronic currency with the update information added to the user device.
Citation Information
Patent Citations
Electronic-currency system
JP1994162059A
Electronic money system, key switching method, and recording medium
JP2000259748A
Electronic money management device, electronic money recorder, electronic money management system, electronic money management method, electronic money recording method, program and recording medium
JP2004287917A
Electronic currency system, information processing device, electronic currency issuance method, and program
WO2022254624A1