CN111311210B - Asymmetric encryption digital currency transaction data processing method and device - Google Patents

Asymmetric encryption digital currency transaction data processing method and device Download PDF

Info

Publication number
CN111311210B
CN111311210B CN202010079664.7A CN202010079664A CN111311210B CN 111311210 B CN111311210 B CN 111311210B CN 202010079664 A CN202010079664 A CN 202010079664A CN 111311210 B CN111311210 B CN 111311210B
Authority
CN
China
Prior art keywords
client
digital currency
currency
server
public key
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN202010079664.7A
Other languages
Chinese (zh)
Other versions
CN111311210A (en
Inventor
夏禾
陈朝明
肖月亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CCB Finetech Co Ltd
Original Assignee
CCB Finetech Co Ltd
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 CCB Finetech Co Ltd filed Critical CCB Finetech Co Ltd
Priority to CN202010079664.7A priority Critical patent/CN111311210B/en
Publication of CN111311210A publication Critical patent/CN111311210A/en
Application granted granted Critical
Publication of CN111311210B publication Critical patent/CN111311210B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • 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/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

The invention provides a method and a device for processing asymmetric encrypted digital currency transaction data, wherein the method comprises the following steps: performing identity authentication on the second client according to the authentication instruction sent by the first client; signing the first digital currency sent by the second client through identity verification; the signed first digital currency is sent to a second client for confirmation, and basic information of the first digital currency is updated after the second client confirms; the basic information includes: issue unit number, currency serial number, currency issue date, currency denomination and version number. The method and the device at least solve the problems that various digital currency systems in the prior art must operate independently, currency cannot cross systems and account concepts need to be established.

Description

Asymmetric encryption digital currency transaction data processing method and device
Technical Field
The application belongs to the field of financial science and technology, and particularly relates to an asymmetric encryption digital currency transaction data processing method and device.
Background
With the continuous development of information technology, mobile payment has penetrated into various fields of life and has become a major innovation for transforming social consumption behavior. Meanwhile, digital currency is used as a medium of mobile payment, a new form of currency and a new economic noun, has been widely used in economic lives of people in recent years, the digital currency has moved from laboratories to markets for nearly 20 years so far, and with the implementation of new development policies, the promotion of urban "banknote-free" has been fully developed. Currently, digital currencies can be divided into five major categories: debit card type digital currency, credit card type digital currency, prepaid card type digital currency (bus card), prepaid card type digital currency (Q currency), and virtual currency. Of these five categories, the first 4 electronic currencies have a price unit and an intrinsic value that are in accordance with those of the electronic currencies issued in the home country, and can be considered as electronic representations of conventional currencies. However, the virtual currency is different from the electronic currency, and there are the following problems, whether the electronic currency or the virtual currency is different from the electronic currency:
1. The various digital money systems operate independently, sharing is difficult and money cannot exist across the systems.
2. Conventional electronic money must have the concept of an account, which is closely related to the funds therein.
3. The currency and the system cannot be divided, and all account information must be stored in the central service system; for virtual currency, a distributed ledger requires that the client expend a significant amount of resources to store and calculate.
Disclosure of Invention
The application provides an asymmetric encryption digital currency transaction data processing method and device, which at least solve the problems that various digital currency systems in the prior art must operate independently, currency cannot cross systems and account concepts need to be established.
According to one aspect of the present application, there is provided a method of asymmetrically encrypted digital money transaction data processing, comprising:
performing identity authentication on the second client according to the authentication instruction sent by the first client;
signing the first digital currency sent by the second client through identity verification;
the signed first digital currency is sent to a second client for confirmation, and basic information of the first digital currency is updated after the second client confirms; the basic information includes: issue unit number, currency serial number, currency issue date, currency denomination and version number.
In an embodiment, performing authentication on the second client according to the authentication instruction sent by the first client includes:
sending the random number to the second client so that the second client generates a random number signature;
verifying whether the received random number signature is correct.
In one embodiment, signing the first digital currency sent by the authenticated second client comprises:
searching a corresponding server public key through a currency serial number in the first digital currency, and verifying the validity of the first digital currency through the server public key;
after verification, generating a new public key of the server and a new private key of the server by using an asymmetric encryption algorithm;
and signing the verified first digital currency by using the server private key.
In one embodiment, the present application further provides a method for processing asymmetrically encrypted digital money transaction data, including:
generating a second digital currency according to the first digital currency provided by the client;
generating a local public key and a local private key by using an asymmetric encryption algorithm;
the local public key and the second digital currency are sent to the client, and a verification instruction is initiated to the server so that the server verifies the client and completes the signature of the second digital currency;
And receiving the second digital currency signed by the server.
In one embodiment, the present application further provides a method for processing asymmetrically encrypted digital money transaction data, including:
sending the first digital currency to the client so that the client generates a second digital currency and generates a client public key and a client private key according to an asymmetric encryption algorithm;
the received second digital currency is changed by the received client public key and then sent to the server, so that the server signs the second digital currency;
and receiving the second digital currency signed by the server and forwarding the second digital currency to the client.
In one embodiment, altering the received second digital currency using the received client public key includes:
filling the client public key into a second digital currency;
the second digital currency filled in the client public key is signed with the local private key.
According to another aspect of the present application, there is also provided an asymmetrically encrypted digital money transaction data processing apparatus, comprising:
the identity verification unit is used for carrying out identity verification on the second client according to the verification instruction sent by the first client;
a first signing unit for signing the first digital currency sent by the second client through authentication;
The base information updating unit is used for sending the signed first digital currency to the second client for confirmation, and updating the base information of the first digital currency after the second client confirms; the basic information includes: issue unit number, currency serial number, currency issue date, currency denomination and version number.
In an embodiment, the authentication unit comprises:
the random number sending module is used for sending the random number to the second client so that the second client generates a random number signature;
and the random number signature verification module is used for verifying whether the received random number signature is correct.
In an embodiment, the first signature unit comprises:
the public key verification module is used for searching a corresponding server public key through the currency serial number in the first digital currency and verifying the validity of the first digital currency through the server public key;
the public key and private key generation module is used for generating a new server public key and a new server private key by using an asymmetric encryption algorithm after verification;
and the new signature module is used for signing the first digital currency which passes the verification by utilizing the private key of the server.
In one embodiment, the present application also provides another asymmetrically encrypted digital money transaction data processing device, comprising:
A second digital money generating unit for generating a second digital money from the first digital money provided by the client;
the asymmetric encryption generation unit is used for generating a local public key and a local private key by utilizing an asymmetric encryption algorithm;
the second signature unit is used for sending the local public key and the second digital currency to the client and initiating a verification instruction to the server so that the server verifies the client and completes the signature of the second digital currency;
and the receiving unit is used for receiving the second digital currency signed by the server.
In one embodiment, the present application also provides another asymmetrically encrypted digital money transaction data processing device, comprising:
the sending unit is used for sending the first digital currency to the client so that the client generates the second digital currency and generates a client public key and a client private key according to an asymmetric encryption algorithm;
the changing unit is used for changing the received second digital currency by using the received client public key and then sending the second digital currency to the server so that the server signs the second digital currency;
and the receiving and forwarding unit is used for receiving the second digital currency signed by the server and forwarding the second digital currency to the client.
In one embodiment, the changing unit includes:
The public key filling module is used for filling the client public key into the second digital currency;
and the third signature module is used for signing the second digital currency filled in the client public key by using the local private key.
The application provides a brand-new method for forming digital currency and processing transaction data, which particularly comprises a method for issuing the digital currency, a method for transacting and a method for guaranteeing safety. The brand new digital currency structure and transaction data processing method has the advantages that the issuer of the digital currency does not need to store any characteristics of the currency and record the owner information of the currency, and meanwhile, the function that the owner of the currency can check the account information of the owner without logging in a server is realized.
Drawings
In order to more clearly illustrate the embodiments of the invention or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, it being obvious that the drawings in the following description are only some embodiments of the invention, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flow chart of a method for processing asymmetrically encrypted digital money transaction data.
Fig. 2 is a flowchart of a method for performing identity authentication on a second client according to an authentication instruction sent by a first client in an embodiment of the present application.
Fig. 3 is a flowchart of a method for signing a first digital currency sent by a second client that passes authentication in an embodiment of the present application.
FIG. 4 is a flowchart of a method for processing asymmetrically encrypted digital money transaction data according to an embodiment of the present application.
FIG. 5 is a flowchart of another method for processing asymmetrically encrypted digital money transaction data according to an embodiment of the present application.
FIG. 6 is a flow chart of a method for altering a received second digital currency using a received client public key in an embodiment of the present application.
FIG. 7 is a block diagram of an asymmetrically encrypted digital money transaction data processing device according to the present application.
Fig. 8 is a block diagram of the configuration of the authentication unit in the embodiment of the present application.
Fig. 9 is a block diagram of the first signature unit in the embodiment of the present application.
FIG. 10 is a block diagram of an asymmetrically encrypted digital money transaction data processing device according to an embodiment of the present application.
FIG. 11 is a block diagram of another asymmetrically encrypted digital money transaction data processing device according to an embodiment of the present application.
Fig. 12 is a block diagram showing the configuration of the changing unit in the embodiment of the present application.
Fig. 13 is a specific implementation of an electronic device in an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present invention, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
Digital currencies on the market at present can be divided into five main categories: debit card type digital currency, credit card type digital currency, prepaid card type digital currency (bus card), prepaid card type digital currency (Q currency), and virtual currency. Of these five categories, the first 4 electronic currencies have a price unit and an intrinsic value that are in accordance with those of the electronic currencies issued in the home country, and can be considered as electronic representations of conventional currencies. However, the virtual currency is different from the electronic currency, and there are the following problems, whether the electronic currency or the virtual currency is different from the electronic currency:
1. The various digital money systems operate independently, sharing is difficult and money cannot exist across the systems.
2. Conventional electronic money must have the concept of an account, which is closely related to the funds therein.
3. The currency and the system cannot be divided, and all account information must be stored in the central service system; for virtual currency, a distributed ledger requires that the client expend a significant amount of resources to store and calculate.
In order to solve the above-described problems, the present application proposes a new digital currency composed of information such as a denomination, a unique serial number, a time of issuance, a public key of an owner, and a digital signature of an issuer. And the currency account corresponding to the digital currency is composed of the digital currency and the private key of the owner. By adding the public key of the owner to the digital currency, a function can be achieved that knows who the digital currency is owned without the need for a traditional account.
Before describing the specific scheme of the present application, the key encryption mode-asymmetric encryption algorithm which is different from the prior art and is required by the present application is described.
Concept of asymmetric encryption: two keys are required for encryption and decryption, a public key (public key) and a private key (private key), the information encrypted by the public key can only be unlocked, and the information encrypted by the private key can only be unlocked.
Principle of asymmetric encryption: the public and private keys must be present in pairs, and if the data is encrypted with the public key, then only the corresponding private key is used to decrypt the data, so that our data is secure as long as the private key is not compromised.
Common asymmetric encryption: RSA, ECC (elliptic curve cryptography), diffie-Hellman, el Gamal, DSA (digital signature).
RSA algorithm description:
the first step: the two prime numbers P and Q are found randomly, and the larger the P and Q are, the safer is.
Such as p=67, q=71. Calculating their product n=pxq=4757, converting into binary 1001010010101, the encryption algorithm is 13 bits, the actual algorithm is 1024 bits or 2048 bits, and the longer the number of bits, the more difficult the algorithm is to crack.
And a second step of: and calculating the Euler function phi (n) of n.
Phi (n) represents the number of numbers forming a mutual relationship with n among positive integers of n or less. For example: of 1 to 8, 1, 3, 5, 7 are in a reciprocal relationship with 8, so Φ (n) =4.
If n=p×q, both P and Q are prime numbers, then Φ (n) =Φ (p×q) =Φ (P-1) Φ (Q-1) = (P-1) (Q-1).
In this example, Φ (n) =66×70=4620, here denoted as m, m=Φ (n) =4620
And a third step of: an integer e is randomly selected, provided that 1< e < m, and e is mutually exclusive with m.
The common divisor is only 1, called a prime integer, where we choose e=101 at random. Note that instead of selecting 4619, if this is selected, the public and private keys will become the same.
Fourth step: there is an integer d such that the remainder of dividing e by m is 1.
I.e. find an integer d such that (e x d)% m=1. Equivalent to e x d-1=y x m (y is an integer), finding d is essentially solving the following binary first-order equation. e x-m y=1, where e=101, m=4620
This equation 101 x-4620y=1 can be solved using the "extended euclidean algorithm", and the specific procedure is omitted here. In summary, a set of integer solutions (x, y) = (1601, 35), i.e. d=1601, is calculated. The key pair is generated up to this point. Different e generates different d, so multiple key pairs can be generated.
Fifth step: a public key and a private key are generated.
In this example, the public key is (n, e) = (4757, 101), the private key is (n, d) = (4757, 1601), only (n, e) = (4757, 101) is disclosed, and none of the remaining numbers is disclosed.
It can be thought how d can be deduced if only n and e are used, and the current method can only be broken by violence, and the longer the number of bits, the longer the time of the violence breaking.
Application of asymmetric encryption algorithm:
asymmetric encryption algorithms are commonly used for encryption and digital signatures.
For encrypted communications: public key encryption and private key decryption. After all, the public key may be public, but the private key is only known per se and therefore can only be decrypted per se.
For digital signatures: private key encryption and public key decryption. If you just sign your signature is true, others sign false.
In the present application, an asymmetric encryption algorithm is selected. The longest RSA key that is currently hacked is 768 bits. In practical application, the key length of RSA is 1024 bits, 2048 bits in important occasion, and the future half century is impossible to crack. The method provided by the application has higher safety requirements and can be realized by adopting an RSA-2056 algorithm. The specific implementation method is described in RSA algorithm above.
Based on this new digital currency, as shown in fig. 1, the present application provides an asymmetrically encrypted digital currency transaction data processing method, which includes:
s101: and authenticating the second client according to the authentication instruction sent by the first client.
In one embodiment, in conducting a digital money transaction, client a wishes to send digital money to client B, and after receiving a verification instruction, the server of the digital money issuer (server) performs authentication on client a.
S102: the first digital currency sent by the authenticated second client is signed.
In a specific embodiment, the client a transfers the original digital currency held by itself to the client B, the client B generates the public key pk_b and the private key sk_b through an asymmetric encryption algorithm, sends the public key pk_b and the original digital currency to the client a, and stores the private key sk_b. The client A generates new digital currency (first digital currency) according to the sent public key PK_B and the original digital currency, then sends the new digital currency to the server, and the server generates a server private key and a server public key according to the new digital currency by using an asymmetric encryption algorithm and signs the new digital currency by using the server private key.
S103: the signed first digital currency is sent to a second client for confirmation, and basic information of the first digital currency is updated after the second client confirms; the basic information includes: issue unit number, currency serial number, currency issue date, currency denomination and version number.
In a specific embodiment, after signing a new digital currency with a server private key, the server sends the new digital currency to the client a, the client a returns a piece of acknowledgement information to the server after receiving the new digital currency, and then the client a sends the digital currency to the client B, and the client B stores the digital currency and sk_b corresponding to the digital currency, so that the digital currency transaction from the client a to the client B is completed.
In an embodiment, as shown in fig. 2, performing identity authentication on a second client according to an authentication instruction sent by a first client includes:
s201: the random number is sent to the second client to cause the second client to generate a random number signature.
In a specific embodiment, during authentication, the server sends a random number to the client a, so that the client a generates a random number signature according to the random number.
S202: verifying whether the received random number signature is correct.
In a specific embodiment, after the client a generates a random number signature according to the random number, the random number signature is sent to the server, and the server verifies whether the random number signature is correct, if so, the authentication is successful, and if not, the transaction is stopped.
In one embodiment, as shown in fig. 3, signing the first digital currency sent by the authenticated second client includes:
s301: and searching a corresponding server public key through the currency serial number in the first digital currency, and verifying the validity of the first digital currency through the server public key.
In a specific embodiment, when the server receives the new digital currency (the first digital currency) sent by the client a, the server public key pre-stored in the server is searched according to the currency serial number of the new digital currency, and the server public key is used to verify whether the first digital currency is valid, such as whether the first digital currency has expired.
S302: and after verification, generating a new public key of the server and a new private key of the server by using an asymmetric encryption algorithm.
In one embodiment, after the first digital currency is verified by the server public key, if the first digital currency is valid, the server generates a new pair of the server public key and the server private key according to the first digital currency by using an asymmetric encryption algorithm.
S303: and signing the verified first digital currency by using the server private key.
In one embodiment, the first digital currency is signed with the new server private key generated in S302.
In one embodiment, as shown in fig. 4, the present application further provides an asymmetrically encrypted digital money transaction data processing method, including:
s401: and generating the second digital currency according to the first digital currency provided by the client.
In a specific embodiment, the client B receives the digital currency entity (first digital currency) sent by the client a, then generates the client public key pk_b and the private key sk_b of the client B according to the first digital currency, and sends the digital currency (second digital currency) and the client public key pk_b to the client a.
S402: the local public key and the local private key are generated using an asymmetric encryption algorithm.
In a specific embodiment, the client B generates the public key pk_b and the private key sk_b using an asymmetric encryption algorithm after receiving the first digital currency sent by the client a.
S403: and sending the local public key and the second digital currency to the client, and initiating a verification instruction to the server to enable the server to verify the client and complete the signature of the second digital currency.
In one embodiment, client B sends the second digital currency and client public key PK_B to client A to cause client A to complete the signature.
S404: and receiving the second digital currency signed by the server.
In a specific embodiment, the client a signs after receiving the second digital currency, and forwards the second digital currency to the server, and the server signs the second digital currency and sends the second digital currency to the client a, and then sends the second digital currency to the client B.
In one embodiment, as shown in fig. 5, the present application further provides an asymmetrically encrypted digital money transaction data processing method, including:
s501: the first digital currency is sent to the client such that the client generates a second digital currency and generates a client public key and a client private key according to an asymmetric encryption algorithm.
In a specific embodiment, if the client a wants to trade digital currency to the client B, the client a sends an entity of the digital currency to the client B, the client B generates a public key pk_b and a private key sk_b according to the digital currency by using an asymmetric encryption algorithm, then sends the public key pk_b and the digital currency to the client a, and the client a replaces the original public key in the digital currency with the public key pk_b and fills the digital currency with the public key pk_b to obtain a new digital currency.
S502: and the received second digital currency is changed by using the received client public key and then sent to the server, so that the server signs the second digital currency.
In a specific embodiment, the client a generates the local public key pk_a and the local private key sk_a by an asymmetric encryption algorithm, and then replaces the original public key in the digital currency with the received public key pk_b sent by the client B.
S503: and receiving the second digital currency signed by the server and forwarding the second digital currency to the client.
In a specific embodiment, the client a sends the obtained new digital currency to the server, the server returns the new digital currency to the client a for acknowledgement after completing the signature, and then the client a forwards the digital currency to the client B.
In one embodiment, as shown in FIG. 6, altering the received second digital currency with the received client public key includes:
s601: the client public key is filled in with a second digital currency.
In one embodiment, client a replaces the original public key in the digital currency with the received public key pk_b sent by client B.
S602: the second digital currency filled in the client public key is signed with the local private key.
In a specific embodiment, the client a sends the obtained new digital currency to the server, and the server returns the new digital currency to the client a for acknowledgement after completing the signature.
In addition to the transaction process of digital currency between two clients, the present application also includes the issuing process of digital currency, and the specific steps are as follows:
the server completes the basic information construction of the digital currency, including filling in the currency issue unit number (this field may be the unique signature of the issuer), the currency serial number, the currency issue date, the currency denomination, and initializing version number vno to 0. The digital currency is sent to the client, the client generates a public key PK_A and a private key SK_A by adopting an asymmetric encryption algorithm, the public key is filled into the digital currency and is sent to the server, and the private key is stored in the client. The server also generates public key PK_S and private key SK_S using an asymmetric encryption algorithm, signs digital currency other than the server signature using private key SK_S and fills in the digital currency to generate a complete digital currency. The digital currency is sent to the client for validation. After receiving the confirmation message, the server side stores the information of the currency serial numbers sn, PK_S and SK_S.
In the actual use process, when the authenticity of the digital currency needs to be verified, the digital currency adopts the non-public property of the private key in the asymmetric encryption to ensure the security of the digital currency. Currency authenticity verification involves two aspects: currency entity authentication and currency owner (client) authentication. (1) monetary entity verification: inquiring a corresponding public key from a server through sn in the currency entity, and verifying whether the signature of the currency entity is correct or not by using the public key; (2) currency owner verification: by sending a random number to the owner, the owner signs it using the currency private key, and the verifier verifies the currency owner by the public key of the owner in the currency entity.
When the denomination of the digital currency needs to be exchanged, the issuer recovers the large denomination of the currency after verifying the identity of the currency owner through the digital currency authenticity verification method, and the issuer issues the denomination-equal currency composed of a plurality of small denominations through the digital currency issuing method to realize the currency-size denomination exchange.
Based on the same inventive concept, the embodiments of the present application also provide an asymmetrically encrypted digital money transaction data processing device, which may be used to implement the method described in the above embodiments, as described in the following embodiments. Because the principle of the asymmetric encryption digital currency transaction data processing device for solving the problem is similar to that of the asymmetric encryption digital currency transaction data processing method, the implementation of the asymmetric encryption digital currency transaction data processing device can refer to the implementation of the asymmetric encryption digital currency transaction data processing method, and the repetition is omitted. As used below, the term "unit" or "module" may be a combination of software and/or hardware that implements the intended function. While the system described in the following embodiments is preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and contemplated.
As shown in fig. 7, the present application further provides an asymmetrically encrypted digital money transaction data processing apparatus, including:
an identity verification unit 701, configured to perform identity verification on the second client according to a verification instruction sent by the first client;
a first signing unit 702 for signing a first digital currency sent by a second client that passes authentication;
a base information updating unit 703, configured to send the signed first digital currency to the second client for acknowledgement, and update the base information of the first digital currency after the second client acknowledges the first digital currency; the basic information includes: issue unit number, currency serial number, currency issue date, currency denomination and version number.
In one embodiment, as shown in fig. 8, the authentication unit 701 includes:
a random number sending module 801, configured to send a random number to the second client, so that the second client generates a random number signature;
a random number signature verification module 802, configured to verify whether the received random number signature is correct.
In one embodiment, as shown in fig. 9, the first signature unit 702 includes:
the public key verification module 901 is configured to search a corresponding server public key through a currency serial number in the first digital currency, and perform validity verification on the first digital currency through the server public key;
The public key private key generation module 902 is configured to generate a new server public key and a new server private key by using an asymmetric encryption algorithm after the verification is passed;
the new signing module 903 is configured to sign the verified first digital currency with a server private key.
In one embodiment, as shown in fig. 10, the present application further provides another asymmetrically encrypted digital money transaction data processing device, including:
a second digital money generating unit 1001 for generating a second digital money from the first digital money provided by the client;
an asymmetric encryption generation unit 1002, configured to generate a local public key and a local private key using an asymmetric encryption algorithm;
a second signing unit 1003, configured to send the local public key and the second digital currency to the client, and initiate a verification instruction to the server, so that the server verifies the client and completes signing of the second digital currency;
and a receiving unit 1004, configured to receive the second digital currency signed by the server.
In one embodiment, as shown in fig. 11, the present application further provides another asymmetrically encrypted digital money transaction data processing device, including:
a sending unit 1101, configured to send the first digital currency to the client, so that the client generates a second digital currency and generates a client public key and a client private key according to an asymmetric encryption algorithm;
A changing unit 1102, configured to change the received second digital currency with the received client public key, and send the changed second digital currency to the server, so that the server signs the second digital currency;
the receiving and forwarding unit 1103 is configured to receive the second digital currency signed by the server and forward the second digital currency to the client.
In one embodiment, as shown in fig. 12, the changing unit 1102 includes:
a public key filling module 1201, configured to fill the client public key into the second digital currency;
a third signing module 1202 for signing the second digital currency filled in the client public key with the local private key.
Compared with the existing digital currency, the digital currency based on the asymmetric encryption algorithm has the following advantages:
weakly centralized, the information of the digital currency is stored on the terminals of all owners, the owners themselves ensure the security of the currency, and the owners of the currency can check the account information of themselves without logging in a server; the security is high, the security of the digital currency is ensured by adopting an asymmetric encryption algorithm, and the owner can ensure the security of the digital currency only by ensuring the security of the private key corresponding to the currency entity. Meanwhile, the digital currency is stored on the terminal of the owner, and a hacker cannot acquire the currency by attacking the server, so that the security of the currency is improved; the digital currency has strong circulation, can be used across systems, and does not need to be converted and processed in a plurality of systems; the complexity is low, the concept of an electronic account is weakened by a digital currency issuer, only a small amount of information of the digital currency is recorded, the development, storage and operation and maintenance costs of a server are reduced, and the security of the digital currency is ensured to be based on an asymmetric encryption algorithm, so that the security is high; meanwhile, the digital currency has the characteristics of weak centralization, strong circulation, low complexity and the like; in addition, the digital money management method is public and transparent.
It will be appreciated by those skilled in the art that embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The principles and embodiments of the present invention have been described in detail with reference to specific examples, which are provided to facilitate understanding of the method and core ideas of the present invention; meanwhile, as those skilled in the art will have variations in the specific embodiments and application scope in accordance with the ideas of the present invention, the present description should not be construed as limiting the present invention in view of the above.
The embodiment of the present application further provides a specific implementation manner of an electronic device capable of implementing all the steps in the method in the foregoing embodiment, and referring to fig. 13, the electronic device specifically includes the following:
a processor 1301, a memory 1302, a communication interface (Communications Interface) 1303, a bus 1304, and a nonvolatile memory 1305;
the processor 1301, the memory 1302, and the communication interface 1303 complete communication with each other through the bus 1304;
the processor 1301 is configured to invoke the computer program in the memory 1302 and the nonvolatile storage 1305, where the processor executes the computer program to implement all the steps in the method in the foregoing embodiment, for example, the processor executes the computer program to implement the following steps:
s101: and authenticating the second client according to the authentication instruction sent by the first client.
S102: the first digital currency sent by the authenticated second client is signed.
S103: the signed first digital currency is sent to a second client for confirmation, and basic information of the first digital currency is updated after the second client confirms; the basic information includes: issue unit number, currency serial number, currency issue date, currency denomination and version number.
The embodiments of the present application also provide a computer-readable storage medium capable of implementing all the steps of the method in the above embodiments, the computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements all the steps of the method in the above embodiments, for example, the processor implements the following steps when executing the computer program:
s101: and authenticating the second client according to the authentication instruction sent by the first client.
S102: the first digital currency sent by the authenticated second client is signed.
S103: the signed first digital currency is sent to a second client for confirmation, and basic information of the first digital currency is updated after the second client confirms; the basic information includes: issue unit number, currency serial number, currency issue date, currency denomination and version number.
In this specification, each embodiment is described in a progressive manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for a hardware+program class embodiment, the description is relatively simple, as it is substantially similar to the method embodiment, as relevant see the partial description of the method embodiment. Although the present description provides method operational steps as described in the examples or flowcharts, more or fewer operational steps may be included based on conventional or non-inventive means. The order of steps recited in the embodiments is merely one way of performing the order of steps and does not represent a unique order of execution. When implemented in an actual device or end product, the instructions may be executed sequentially or in parallel (e.g., in a parallel processor or multi-threaded processing environment, or even in a distributed data processing environment) as illustrated by the embodiments or by the figures. The terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, it is not excluded that additional identical or equivalent elements may be present in a process, method, article, or apparatus that comprises a described element. For convenience of description, the above devices are described as being functionally divided into various modules, respectively. Of course, when implementing the embodiments of the present disclosure, the functions of each module may be implemented in the same or multiple pieces of software and/or hardware, or a module that implements the same function may be implemented by multiple sub-modules or a combination of sub-units, or the like. The above-described apparatus embodiments are merely illustrative, for example, the division of the units is merely a logical function division, and there may be additional divisions when actually implemented, for example, multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form. The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In this specification, schematic representations of the above terms are not necessarily directed to the same embodiment or example. Furthermore, the different embodiments or examples described in this specification and the features of the different embodiments or examples may be combined and combined by those skilled in the art without contradiction. The foregoing is merely an example of an embodiment of the present disclosure and is not intended to limit the embodiment of the present disclosure. Various modifications and variations of the illustrative embodiments will be apparent to those skilled in the art. Any modification, equivalent replacement, improvement, or the like, which is within the spirit and principles of the embodiments of the present specification, should be included in the scope of the claims of the embodiments of the present specification.

Claims (4)

1. An asymmetrically encrypted digital money transaction data processing method applied to a first client, a second client and a server is characterized by comprising the following steps:
the second client sends first digital currency to the first client, the first client generates second digital currency according to the first digital currency provided by the second client, generates a client public key and a client private key by using an asymmetric encryption algorithm, sends the client public key and the second digital currency to the second client, and sends a verification instruction to the server so that the server verifies the second client and completes signing the second digital currency;
The second client changes the received second digital currency by using the received client public key and then sends the second digital currency to the server so that the server signs the second digital currency;
the server side performs identity verification on the second client side according to the verification instruction sent by the first client side, and signs the second digital currency sent by the second client side through the identity verification;
the server sends the signed second digital currency to the second client for confirmation, and updates the basic information of the second digital currency after the second client confirms; the basic information includes: issue unit number, currency serial number, currency issue date, currency denomination and version number;
the second client receives the second digital currency signed by the server and forwards the second digital currency to the first client;
the second client making a change to the received second digital currency using the received client public key, comprising:
the second client side fills the client side public key into the second digital currency;
signing the second digital currency filled in the client public key by using a local private key;
The server side performs identity verification on the second client side according to the verification instruction sent by the first client side, and the method comprises the following steps:
the server side sends a random number to the second client side so that the second client side generates a random number signature;
verifying whether the received random number signature is correct;
the server signs the second digital currency sent by the second client through authentication, and the method comprises the following steps:
the server searches a corresponding server public key through a currency serial number in the second digital currency, and verifies the validity of the second digital currency through the server public key;
after verification, generating a new public key of the server and a new private key of the server by using an asymmetric encryption algorithm;
and signing the verified second digital currency by using the new server private key.
2. An asymmetrically encrypted digital money transaction data processing device applied to a first client, a second client and a server, comprising:
the sending unit is used for sending the first digital currency to the first client through the second client, the first client generates second digital currency according to the first digital currency provided by the second client, generates a client public key and a client private key by utilizing an asymmetric encryption algorithm, sends the client public key and the second digital currency to the second client, and sends a verification instruction to the server so that the server verifies the second client and completes signing the second digital currency;
The changing unit is used for changing the received second digital currency by the second client by using the received client public key and then sending the second digital currency to the server so that the server signs the second digital currency;
the identity verification unit is used for carrying out identity verification on the second client through the server according to the verification instruction sent by the first client, and signing the second digital currency sent by the second client through the identity verification;
the base information updating unit is used for sending the signed second digital currency to the second client for confirmation through the server, and updating the base information of the second digital currency after the second client confirms; the basic information includes: issue unit number, currency serial number, currency issue date, currency denomination and version number;
the receiving and forwarding unit is used for receiving the second digital currency signed by the server through the second client and forwarding the second digital currency to the first client;
the changing unit includes:
a public key filling module for filling the client public key into the second digital currency through the second client;
A third signing module for signing the second digital currency filled in the client public key by using a local private key;
the authentication unit includes:
the random number sending module is used for sending a random number to the second client through the server so as to enable the second client to generate a random number signature;
the random number signature verification module is used for verifying whether the received random number signature is correct or not;
the public key verification module is used for searching a corresponding service side public key through the service side through the currency serial number in the second digital currency, and verifying the validity of the second digital currency through the service side public key;
the public key private key generation module is used for generating a new server public key and a new server private key by utilizing an asymmetric encryption algorithm after verification is passed;
and the new signature module is used for signing the second digital currency which passes the verification by utilizing the new server private key.
3. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the asymmetrically encrypted digital money transaction data processing method of claim 1 when the program is executed by the processor.
4. A computer-readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the asymmetrically encrypted digital money transaction data processing method as claimed in claim 1.
CN202010079664.7A 2020-02-04 2020-02-04 Asymmetric encryption digital currency transaction data processing method and device Active CN111311210B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010079664.7A CN111311210B (en) 2020-02-04 2020-02-04 Asymmetric encryption digital currency transaction data processing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010079664.7A CN111311210B (en) 2020-02-04 2020-02-04 Asymmetric encryption digital currency transaction data processing method and device

Publications (2)

Publication Number Publication Date
CN111311210A CN111311210A (en) 2020-06-19
CN111311210B true CN111311210B (en) 2023-12-26

Family

ID=71146965

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010079664.7A Active CN111311210B (en) 2020-02-04 2020-02-04 Asymmetric encryption digital currency transaction data processing method and device

Country Status (1)

Country Link
CN (1) CN111311210B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112711742B (en) * 2020-11-23 2023-06-06 中国联合网络通信集团有限公司 Digital currency anti-counterfeiting method and device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105096118A (en) * 2015-08-21 2015-11-25 廖小谦 Electronic currency transfer payment system and method
CN106910072A (en) * 2017-02-15 2017-06-30 捷德(中国)信息科技有限公司 Digital cash management method and system
CN108122098A (en) * 2018-01-10 2018-06-05 晋商博创(北京)科技有限公司 Digital coin systems, method of payment and terminal based on CPK
CN108805538A (en) * 2018-06-14 2018-11-13 清华大学 A kind of digital cash method of commerce and device
CN109934582A (en) * 2019-02-25 2019-06-25 矩阵元技术(深圳)有限公司 Digital cash transaction data processing method, server, client and system
CN109961276A (en) * 2019-02-27 2019-07-02 深圳市朗科科技股份有限公司 Digital cash wallet, method of commerce, transaction system and computer storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105096118A (en) * 2015-08-21 2015-11-25 廖小谦 Electronic currency transfer payment system and method
CN106910072A (en) * 2017-02-15 2017-06-30 捷德(中国)信息科技有限公司 Digital cash management method and system
CN108122098A (en) * 2018-01-10 2018-06-05 晋商博创(北京)科技有限公司 Digital coin systems, method of payment and terminal based on CPK
CN108805538A (en) * 2018-06-14 2018-11-13 清华大学 A kind of digital cash method of commerce and device
CN109934582A (en) * 2019-02-25 2019-06-25 矩阵元技术(深圳)有限公司 Digital cash transaction data processing method, server, client and system
CN109961276A (en) * 2019-02-27 2019-07-02 深圳市朗科科技股份有限公司 Digital cash wallet, method of commerce, transaction system and computer storage medium

Also Published As

Publication number Publication date
CN111311210A (en) 2020-06-19

Similar Documents

Publication Publication Date Title
US11842317B2 (en) Blockchain-based authentication and authorization
JP7244537B2 (en) Computer-implemented systems and methods suitable for enhancing the security of instant offline blockchain transactions
CN110337665B (en) System and method for information protection
EP4235479A1 (en) Computer-implemented systems and methods for authorising blockchain transactions with low-entropy passwords
RU2718229C1 (en) Establishing secure channel
CN113874897A (en) Computer-implemented system and method for effecting transfers over blockchain networks
KR20200066257A (en) System and method for information protection
EP3692489A1 (en) Quantumproof blockchain
CN112437938A (en) System and method for block chain address and owner verification
JP7449423B2 (en) Security system and method implemented in blockchain for blinded outcome selection
CN118041602A (en) System and method for ensuring correct execution of a computer program using a mediator computer system
JP2022534056A (en) hash function attack
CN111429138A (en) Block link point data safety interaction method and first interaction node
CN102239714A (en) Safe communication method and device for mobile financial service based on application layer
CN112470423A (en) Computer-implemented system and method for asset blending
CN111314066B (en) Block chain-based data transfer method, terminal and computer-readable storage medium
CN111311210B (en) Asymmetric encryption digital currency transaction data processing method and device
CN112184245B (en) Transaction identity confirmation method and device for cross-region block chain
Maharramov et al. The Dusk network whitepaper
EP4379631A1 (en) Digital wallet device and dual offline transaction method thereof
Alnajjar et al. Mitigating MEV Attacks with a Two-Tiered Architecture Utilizing Verifiable Decryption
Yang Practical escrow protocol for cryptocurrencies

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20220922

Address after: 12 / F, 15 / F, 99 Yincheng Road, Pudong New Area pilot Free Trade Zone, Shanghai, 200120

Applicant after: Jianxin Financial Science and Technology Co.,Ltd.

Address before: 25 Financial Street, Xicheng District, Beijing 100033

Applicant before: CHINA CONSTRUCTION BANK Corp.

Applicant before: Jianxin Financial Science and Technology Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant