User identity authentication method and system, electronic device and readable storage medium
By using digital currency hardware wallets for identity authentication in transactions, the problem of password and biometric data leakage in existing methods is solved, achieving higher transaction security and reliability.
Patent Information
- Application Number
- CN202510405846.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-01
- Publication Date
- 2026-02-24
AI Technical Summary
Existing user authentication methods have security vulnerabilities during transactions, as passwords and biometric data are easily leaked, making it impossible to guarantee transaction security.
Identity authentication is performed using digital currency hardware wallets. A connection is established between the user's device and the hardware wallet, and identity authentication is performed using the hardware wallet information. Multi-factor authentication is combined to improve security.
It improves the security and reliability of transactions, reduces the risk of password and biometric data leakage, and enhances the stability and credibility of identity authentication.
Smart Images

Figure CN121563535A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of this disclosure relate to user authentication methods, systems, electronic devices, and readable storage media. Background Technology
[0002] During transactions, to protect security, methods such as passwords (PIN codes) or biometrics are generally used to authenticate users. However, these methods have certain security risks. For example, passwords may be stolen, and biometric databases may be hacked, leading to the leakage of passwords and biometric data, thus failing to guarantee transaction security. Summary of the Invention
[0003] At least one embodiment of this disclosure provides a user authentication method, comprising: a digital currency backend server receiving an authentication request associated with a user's digital currency account from a digital currency application on a user's device, and initiating an authentication procedure based on a digital currency hard wallet in response to the authentication request; the digital currency backend server sending a response message to the digital currency application, wherein the response message indicates that the authentication procedure based on a digital currency hard wallet has been enabled for the digital currency account; the digital currency backend server receiving hard wallet information read from the digital currency hard wallet sent by the digital currency application in response to the response message, and determining the relationship between the digital currency hard wallet and the digital currency account based on the hard wallet information to authenticate the user's identity.
[0004] At least one embodiment of this disclosure provides a digital currency backend server, including: an identity authentication module configured to receive an identity authentication request associated with a user's digital currency account from a digital currency application on a user's device, and to initiate an identity authentication procedure based on a digital currency hard wallet in response to the identity authentication request; a communication module configured to send response information to the digital currency application, wherein the response information indicates that an identity authentication procedure based on a digital currency hard wallet has been enabled for the digital currency account; the identity authentication module is further configured to receive hard wallet information read from the digital currency hard wallet sent by the digital currency application in response to the response information, and to determine the relationship between the digital currency hard wallet and the digital currency account based on the hard wallet information to authenticate the user's identity.
[0005] At least one embodiment of this disclosure provides an electronic device, including: one or more processors; a memory storing one or more computer program modules; wherein the one or more computer program modules are configured to be executed by the one or more processors to implement a user authentication method according to at least one embodiment of this disclosure.
[0006] At least one embodiment of this disclosure provides a computer-readable storage medium for storing non-transitory computer-readable instructions, wherein the non-transitory computer-readable instructions, when executed by one or more processors, implement a user authentication method according to at least one embodiment of this disclosure.
[0007] This disclosure proposes a user authentication scheme based on a digital currency hard wallet, which improves security and reliability compared to conventional user authentication schemes in transactions. Attached Figure Description
[0008] To more clearly illustrate the technical solutions of the embodiments of this disclosure, the accompanying drawings of the embodiments of this disclosure will be briefly described below. Clearly, the drawings described below only relate to some embodiments of this disclosure and are not intended to limit the scope of this disclosure.
[0009] Figure 1 A block diagram of a user authentication system according to at least one embodiment of the present disclosure is shown;
[0010] Figure 2 A flowchart illustrating the creation of a user identity and hardware wallet association binding relationship according to at least one embodiment of the present disclosure is shown;
[0011] Figure 3 A flowchart of a user authentication method according to at least one embodiment of the present disclosure is shown;
[0012] Figure 4 A block diagram of a digital currency back-end server according to at least one embodiment of the present disclosure is shown;
[0013] Figure 5 A schematic diagram of an electronic device according to at least one embodiment of the present disclosure is shown;
[0014] Figure 6 A schematic diagram of a computer-readable storage medium according to at least one embodiment of the present disclosure is shown. Detailed Implementation
[0015] To make the objectives, technical solutions, and advantages of the embodiments of this disclosure clearer, the technical solutions of the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this disclosure. All other embodiments obtained by those skilled in the art based on the described embodiments of this disclosure without creative effort are within the scope of protection of this disclosure.
[0016] Unless otherwise defined, the technical or scientific terms used herein should have the ordinary meaning understood by one of ordinary skill in the art to which this disclosure pertains. The terms “first,” “second,” and similar terms used in this disclosure do not indicate any order, quantity, or importance, but are merely used to distinguish different components. Similarly, terms such as “comprising” or “including” mean that the element or object preceding the word encompasses the elements or objects listed following the word and their equivalents, without excluding other elements or objects. Terms such as “connected” or “linked” are not limited to physical or mechanical connections, but can include electrical connections, whether direct or indirect. Terms such as “upper,” “lower,” “left,” and “right” are used only to indicate relative positional relationships, which may change accordingly when the absolute position of the described objects changes.
[0017] Note that the examples described below are merely specific examples and are not intended to limit the embodiments of this disclosure to the specific shapes, hardware, connections, operations, values, conditions, data, sequences, etc., shown and described. Those skilled in the art can utilize the concepts of this disclosure to construct further embodiments not mentioned herein by reading this specification.
[0018] The terminology used in this disclosure is that which is currently widely used in the art in consideration of the functionality of this disclosure; however, these terms may vary depending on the intent, precedent, or new technology of those skilled in the art. Furthermore, specific terms may be chosen by the applicant, and in such cases, their detailed meanings will be described in the detailed description of this disclosure. Therefore, the terminology used in this specification should not be construed as simple names, but rather based on the meaning of the terms and the overall description of this disclosure.
[0019] This disclosure uses flowcharts to illustrate the operations performed by a system according to embodiments of this disclosure. It should be understood that the preceding or following operations are not necessarily performed in exact order. Instead, various steps can be processed in reverse order or simultaneously, as needed. Furthermore, other operations can be added to these processes, or one or more steps can be removed from them.
[0020] First, the abbreviations and related terms involved in this disclosure are defined and explained.
[0021] User equipment primarily includes devices involving communication technologies. Specifically, it includes any electronic device that a user can easily carry or operate, which can also provide remote communication capabilities with networks, such as mobile communication terminals. Mobile communication terminals can communicate using mobile phone (wireless) networks, wireless data networks (e.g., 3G, 4G, 5G, or similar networks), Wi-Fi, Bluetooth, Bluetooth Low Energy (BLE), Wi-Max, or any other communication medium that provides access to networks such as the Internet or private networks. Specific examples include mobile phone terminals, tablet computers, netbooks, laptop computers, wearable devices (e.g., smartwatches), etc.
[0022] Secure Element (SE): May include an on-chip computer or microprocessor. A secure element can perform cryptographic operations and may be embedded in a package with one or more physical security measures. In some embodiments, a secure element may include components capable of securely performing functions. A secure element may be a memory that securely stores data, making its access protected. Examples of secure elements are Universal Integrated Circuit Cards (UICCs) or Hardware Security Modules (HSMs), which are physical computing devices that protect and manage cryptographic keys used for authentication and provide cryptographic processing functions.
[0023] Digital currency application: Abbreviated as "digital currency App", a digital currency App can be a mobile application that provides full lifecycle management functions for digital currency wallets. During use, it can communicate and interact with the digital currency backend server.
[0024] Digital currency back-end server: Abbreviated as "digital currency back-end", it can be the back-end support system for the management of digital currency apps and wallet ecosystems, providing services such as user system, wallet information, and the relationship between users and wallets.
[0025] Digital currency hardware wallets: Based on secure chip technology, they can provide digital currency payment services to customers by relying on IC cards, mobile terminals, wearable devices, and other hardware carriers.
[0026] Hard wallet association code: This can be an alternative value for the hard wallet identity credential. The association code can be a string of numbers, letters, or any other suitable characters.
[0027] It should be noted that the collection, gathering, updating, analysis, processing, use, transmission, and storage of user personal information involved in this publicly disclosed technical solution all comply with relevant laws and regulations, are used for legitimate purposes, and do not violate public order and good morals. Necessary measures are taken to prevent unauthorized access to user personal information data and to safeguard user personal information security, network security, and national security.
[0028] Traditional authentication methods pose security risks when verifying user identities. For example, when logging in over a public network, security vulnerabilities may exist, allowing hackers to obtain user passwords through network sniffing and other methods. Furthermore, some users choose simple, common passwords for ease of remembering, making them easier to crack. Biometric information (such as fingerprints, facial features, and iris scans) is typically stored in databases. However, these databases are not absolutely secure; hackers can potentially breach databases storing user biometric data to obtain this sensitive information. Once biometric data is leaked, users face significant security risks because biometric data is unchangeable; once stolen, users can hardly change their biometrics like they can change their passwords.
[0029] At least one embodiment of this disclosure provides a user authentication method, system, electronic device, and storage medium that utilizes a digital currency hard wallet (hereinafter referred to as "hard wallet") to authenticate user identity. The user's digital currency app can trigger the digital currency backend to initiate a hard wallet-based identity authentication process. Based on the hard wallet information received from the digital currency app and read from the hard wallet, the system determines whether there is an association or binding relationship between the hard wallet and the digital currency account, thereby authenticating the user's identity. This method can solve the security problems existing in traditional methods and provide higher transaction security and reliability.
[0030] The embodiments and some examples of this disclosure will now be described in detail with reference to the accompanying drawings.
[0031] Figure 1 A block diagram of a user authentication system 100 according to an embodiment of the present disclosure is shown. Figure 1 As shown, the user authentication system 100 includes a hardware wallet 110, a user device 120, and a digital currency backend 130.
[0032] In the authentication system 100, the hardware wallet 110 and the user device 120 can be operated by the user. In some embodiments, the user device 120 can be a smartphone, and the hardware wallet 110 can be a card-shaped or wearable hardware wallet, manifested as a single device independent of the user device 120. In other embodiments, the hardware wallet 110 can also be integrated with the user device 120, with the hardware wallet 110 as part of the user device 120. The digital currency app 1200 can directly read the hardware wallet information from the secure element of the user device and associate it with the digital currency account.
[0033] User device 120 can communicate with hard wallet 110 and digital currency backend 130. For example, user device 120 typically communicates with hard wallet 110 using short-range communication methods such as Near Field Communication (NFC), Wi-Fi, or Bluetooth. For example, messages between user device 120 and digital currency backend 130 can be sent over a communication network using secure communication protocols, such as, but not limited to, File Transfer Protocol (FTP), Hypertext Transfer Protocol (HTTP), and Secure Hypertext Transfer Protocol (HTTPS). The communication network can include any one and / or a combination of the following: direct interconnect, Internet, Local Area Network (LAN), Metropolitan Area Network (MAN), Secure Custom Connection, Wide Area Network (WAN), Wireless Network, etc.
[0034] like Figure 1 As shown, user device 120 may include a digital currency App (also referred to as "digital currency App") 1200. The digital currency App 1200 can provide users with a user interaction page (UI) required to perform user authentication or digital currency transactions through the display module of user device 120, and can also respond to data and instructions received from digital currency backend 130 to perform user authentication or digital currency payment transactions, etc.
[0035] For example, in some embodiments of this disclosure, the digital currency app 1200 can interact with the hardware wallet 110 in advance to read the hardware wallet information and send an association binding request including the hardware wallet information to the digital currency backend 130 to associate the hardware wallet 110 with the user's digital currency account. This allows the associated hardware wallet to be selected for identity authentication when needed. This association binding relationship is a clear, one-to-one or one-to-many correspondence, and it has strong stability.
[0036] In this embodiment, the hard wallet 110 may be a visual card hard wallet with display capabilities, and may include a secure element 1100 and a communication module (not shown, such as a Near Field Communication (NFC) card chip). For example, the hard wallet may be a portable terminal capable of supporting NFC payment functionality, performing payments or communications using NFC. When using NFC to perform payments or communications, a built-in application (such as a hard wallet application app) can be driven and used.
[0037] In some embodiments, the hard wallet application may respond to an account binding request sent by the user equipment 120 via the communication module and send the hard wallet information to the user equipment 120 via the communication module to associate and bind the hard wallet with the digital currency account.
[0038] For example, in some embodiments of this disclosure, the security element 1100 may pre-store multiple hardware wallet certificates for authentication, such as a first hardware wallet certificate and a second hardware wallet certificate. The first hardware wallet certificate is sent in response to a first instruction received by the hardware wallet application, and the second hardware wallet certificate is sent in response to a second instruction received by the hardware wallet application. For example, the first instruction is a hardware wallet information reading instruction, and the second instruction is a hardware wallet transaction instruction. In some embodiments, the first hardware wallet certificate and the second hardware wallet certificate are also configured with different keys; for example, the first hardware wallet certificate is configured with a first key, and the second hardware wallet certificate is configured with a second key. When the hardware wallet sends different certificates, the corresponding keys are used to sign the certificates. Moreover, this data is pre-stored in the digital currency backend 130. Upon receiving the signed first certificate, the digital currency backend 130 verifies the signed first certificate using the public key associated with the private key as part of the user authentication process based on the hardware wallet.
[0039] Before describing the user authentication methods of some embodiments of this disclosure, refer to Figure 2 This describes how to create a user identity and hardware wallet association.
[0040] Figure 2 A flowchart is shown of a process 200 for creating a user identity and a hard wallet association according to at least one embodiment of the present disclosure. This process 200 is executed between a hard wallet 110, a digital currency app 1200 on a user device 120, and a digital currency backend 130.
[0041] The digital currency app 1200 on user device 120 can store the user's digital currency account, which can be a personal or corporate digital currency account. The digital currency account information is stored in the digital currency backend 130. In some embodiments, a user can bind multiple hardware wallets to a single digital currency account. Because a hardware wallet is a physical hardware device and is isolated from the network, it is difficult to forge or attack after issuance. Therefore, it can be used as a trusted verification device for user authentication. In some embodiments of this disclosure, a hardware wallet can be associated with a digital currency account. When a user conducts transactions or identity verification through, for example, a smartphone (an example of a user device), verification and authentication can be completed using the hardware wallet.
[0042] In some embodiments of this disclosure, when a hard wallet is issued, it contains hard wallet information, which may include, for example, a hard wallet association code, keys, and certificates. This information is stored in the secure element 1100 of the hard wallet. When the user device 120 performs an authentication operation on the user, it reads the required hard wallet information from the secure element 1100 of the hard wallet 110. In other embodiments, the hard wallet information may also include a hard wallet identifier (such as a hard wallet ID), a transaction counter (ATC), a wallet level, and a wallet type (personal or corporate).
[0043] like Figure 2 As shown, in step S210, the digital currency App 1200 of the user device 120 generates an account binding instruction in response to the account binding operation performed by the user, and prompts the user to establish a communication connection between the hardware wallet to be bound and the digital currency App 1200.
[0044] In some embodiments, the account binding operation may include clicking to enter the account binding interface, entering account information, submitting account information, etc.
[0045] In step S220, a communication connection is established between the hard wallet 110 and the user device 120, enabling the digital currency app 1200 to read hard wallet information from the hard wallet 110.
[0046] In some embodiments, the user, guided by the prompts displayed on the UI of the Digital Currency App 1200, places the hardware wallet to be bound close to the NFC sensing area of the user device 120 (the hardware wallet supports NFC communication), or uses other specified methods (such as scanning the hardware wallet's QR code) to enable the Digital Currency App 1200 to read the hardware wallet's information. When the Digital Currency App 1200 reads the hardware wallet information, it may require the user to enter the password set when the hardware wallet was activated for preliminary verification.
[0047] In step S230, the digital currency App 1200 of the user device 120 sends an account binding request to the digital currency backend 130 to associate and bind the hardware wallet and the digital currency account.
[0048] In some embodiments, the account binding request includes information regarding the association between the hardware wallet and the cryptocurrency account to be bound. The cryptocurrency account is pre-issued to the user by the cryptocurrency backend 130, and data related to the cryptocurrency account can be stored in a... Figure 1 The user identity database 140 shown.
[0049] like Figure 1As shown, after receiving an account binding request, the digital currency backend 130 can associate and bind the hard wallet and the digital currency account based on the digital currency account and hard wallet information in the account binding request, and store this binding relationship in the user identity database 140. Subsequently, the digital currency account can be used to query all the hard wallets associated with it from the user identity database 140, so as to use the list of hard wallets of this digital currency account for user identity authentication.
[0050] In step S240, the digital currency backend 130 sends a successful binding notification to the digital currency app 1200, which may include the association binding information. The digital currency app 1200 can store the association binding information or transmit it to a hardware wallet, store the association information in a secure element, and encrypt the association information using the hardware wallet's key.
[0051] After linking the hardware wallet to the target cryptocurrency account, users can use the hardware wallet for identity verification, for example, in cryptocurrency transactions.
[0052] Figure 3 A flowchart of a user authentication method 300 according to at least one embodiment of the present disclosure is shown. The diagram illustrates the user authentication process in a digital currency payment transaction, with specific steps executed between a hardware wallet 110, a digital currency app 1200 on a user device 120, and a digital currency backend 130.
[0053] For example, when purchasing multiple goods and / or services, users can choose to complete the transaction using cryptocurrency. However, before payment, the cryptocurrency backend typically needs to verify the user's authenticity, especially when the transaction amount is very high. To avoid certain risks, user identity verification is essential.
[0054] In step S310, a digital currency transaction is initiated through the digital currency App 1200 on the user device 120, and digital currency transaction information is sent to the digital currency backend 130.
[0055] In step S320, after receiving the digital currency transaction information, the digital currency backend 130 determines that user identity authentication is required for this transaction. For example, if the transaction amount in the digital currency transaction information is greater than the set amount of digital currency that does not require authentication, then it is determined that the authenticity of the user's identity needs to be verified.
[0056] In step S330, the digital currency backend 130 sends a user identity authentication instruction to the digital currency App 1200 of the user device 120.
[0057] In step S340, the digital currency App 1200 responds to the user authentication instruction by sending an authentication request associated with the user's digital currency account to the digital currency backend 130.
[0058] In some embodiments of this disclosure, an authentication request may trigger the digital currency backend 130 to initiate an identity authentication procedure based on a digital currency hard wallet (hereinafter referred to as the "hard wallet identity authentication procedure"). The "hard wallet identity authentication procedure" can be an identity and access management security procedure that uses hard wallet information associated with and bound to a digital currency account to authenticate the user's identity.
[0059] In some examples, users can choose to enable or configure one or more authentication processes for different cryptocurrency accounts. For instance, if a hardware wallet authentication process is selected for cryptocurrency account A, then when using cryptocurrency account A for cryptocurrency transactions, the system will determine whether the user is a legitimate user by reading the hardware wallet information. Of course, in some examples, hardware wallet authentication can be configured by default for all cryptocurrency accounts. In addition to hardware wallet authentication, multi-factor authentication, such as password authentication and biometric authentication, can be combined to further verify the user's identity.
[0060] In step S350, the digital currency backend 130 identifies, based on the identity authentication request, that the user identity authentication process of the digital currency account in the request includes hardware wallet identity authentication, and then initiates an identity authentication procedure based on the digital currency hardware wallet in response to the identity authentication request.
[0061] In one example, if the authentication request includes an authentication method (represented by a code) for the digital currency account, the system will directly respond to that authentication method to initiate the hardware wallet authentication process; alternatively, if the digital currency backend 130 determines that the digital currency account has pre-registered hardware wallet authentication in the backend based on the authentication method, the system will initiate a hardware wallet-based authentication process; or, if the digital currency backend 130 queries the user identity database 140 to determine that the digital currency account is bound to multiple hardware wallets, it can also initiate a hardware wallet-based authentication process.
[0062] In step S360, the digital currency backend 130 sends a response message to the digital currency App 1200 on the user device 120. The response message indicates that an identity authentication process based on a digital currency hardware wallet has been enabled for the digital currency account.
[0063] In step S370, the Digital Currency App 1200 receives and parses the response information, prompting the user to establish a communication connection between the hardware wallet 110 and the user device 120.
[0064] Based on the received response information, such as subsequent operation guidance, the Digital Currency App 1200 issues operation prompts to the user. These prompts can be presented in several ways. For example, text prompts can be displayed on the App interface, such as "Please bring the hard wallet close to the device to establish a connection"; the App can also inform the user of the next step through voice prompts. Following the App's prompts, if both the hard wallet and the user's device support NFC, the user brings the hard wallet close to the device's NFC sensing area, and the Digital Currency App 1200 will automatically detect and establish a connection. Alternatively, a connection can be established via communication methods such as Bluetooth, scanning a QR code on the hard wallet, or connecting the hard wallet and user's device via a USB data cable.
[0065] In step S380, after establishing a communication connection, the digital currency App 1200 reads the hard wallet information from the hard wallet and sends it to the digital currency backend 130. The hard wallet information may include the transaction counter ATC, the association code, and the MAC signature (including timestamps, transaction indexes, etc.).
[0066] In step S390, the digital currency backend 130 receives the hard wallet information sent by the digital currency App 1200, and verifies the user's identity by determining the relationship between the digital currency hard wallet and the digital currency account based on the hard wallet information.
[0067] In some embodiments, in step S360, after initiating the identity authentication process based on the digital currency hard wallet, the digital currency backend 130 identifies that the digital currency account is associated with at least one digital currency hard wallet. The response information sent includes a list of at least one digital currency hard wallet associated with the digital currency account. This list is provided to the user via the digital currency app 1200 so that the user can refer to the list to select a suitable hard wallet to complete the subsequent hard wallet information reading operation. In step S390, the digital currency backend 130 parses the received hard wallet information. Based on the parsing result, it determines whether the hard wallet corresponding to the hard wallet information is associated with the digital currency account or is any hard wallet in the hard wallet list. If the determination is yes, an identity verification success notification is sent to the digital currency app 1200 of the user device 120.
[0068] After initiating the identity authentication process based on the digital currency hard wallet, the digital currency backend 130 queries the user identity information database 140 for all associated and bound information related to the digital currency account. After confirming that the digital currency account is associated with at least one digital currency hard wallet, the digital currency backend 130 further obtains detailed information for each associated hard wallet. This information may include, but is not limited to, the hard wallet's unique identifier, hard wallet level, creation time, and last usage time. Simultaneously, it checks the status of each hard wallet, such as whether it is normally available, whether it is locked, and whether there are any abnormal transaction records. Based on the obtained hard wallet details and status, the digital currency backend 130 organizes and filters this information, removing hard wallets with abnormal or unusable statuses (such as damaged or reported lost hard wallets). Then, the remaining hard wallets that are normally available and associated with the digital currency account are sorted according to certain rules (such as creation time, security level, etc.) to generate a hard wallet list.
[0069] It should be noted that the cryptocurrency backend 130 can encapsulate the generated list of hard wallets within a response message in a specific format. The response message can be in common data formats such as JSON or XML, and will include metadata related to the hard wallet list (such as the list's version number and generation time) as well as the specific content of the hard wallet list. To ensure the security of data transmission, the cryptocurrency backend 130 will also encrypt the response message using appropriate encryption algorithms and add a digital signature to prevent data tampering or forgery during transmission.
[0070] Upon receiving the response information, the Digital Currency App 1200 first decrypts and verifies the digital signature to ensure data integrity and source reliability. After successful verification, the Digital Currency App 1200 parses the response information, extracts the hard wallet list, and displays it to the user using the display module of the user device 120. The display method can be a list view, card view, etc., with each hard wallet displaying its key information (hard wallet name, carrier type, etc.) so that users can quickly understand the basic information of each hard wallet. Simultaneously, the Digital Currency App 1200 can also provide auxiliary information or prompts to help users make choices, such as recommending suitable hard wallets based on user habits or transaction scenarios.
[0071] After reviewing the list of hard wallets, users can select a suitable hard wallet based on their needs and preferences. Once a selection is made, the Digital Currency App 1200 will interact with the selected hard wallet to initiate a hard wallet information reading operation. During this process, the Digital Currency App 1200 will send a read request to the hard wallet and receive the information returned by the hard wallet. If the Digital Currency App 1200 detects that the read hard wallet information does not match the hard wallet selected by the user from the list, the Digital Currency App 1200 will prompt the user that the currently selected hard wallet is inconsistent with the selected hard wallet, and suggest that the user exit the current page and reselect the correct hard wallet. In some other examples, users can also directly tap any hard wallet from the list onto their device 120 without selecting one, allowing the Digital Currency App 1200 to read the hard wallet information of the current hard wallet. The latter method can improve the user experience to some extent.
[0072] In some embodiments of this disclosure, the hard wallet information sent by the digital currency app 1200 includes signature data that uses a hard wallet key to sign data including a hard wallet identifier. The digital currency backend 130 verifies whether the signature data is valid. If it is valid, it parses out the hard wallet identifier and queries the user identity database 140 based on the identifier to determine if there is an association between the identifier and the digital currency account. If an association is found, it sends an authentication success notification to the digital currency app 1200 on the user device 120. The validity of the digital signature can be verified using symmetric encryption, hash functions, and certificate trust chains.
[0073] In some embodiments of this disclosure, the digital currency backend 130 uses a symmetric key associated with the hard wallet to verify the validity of the signature data. After successful verification, it obtains the hard wallet identifier (e.g., hard wallet ID or hard wallet association code) and determines whether the hard wallet identifier belongs to at least one digital currency hard wallet associated with the digital currency account. For example, the hard wallet information may include a transaction counter (ATC), an association code (hard wallet ID), a timestamp, and a MAC signature calculated by encrypting this information. After receiving the hard wallet information, the digital currency backend 130 extracts the transaction counter (ATC), association code (hard wallet ID), and timestamp, and uses the symmetric key associated with the hard wallet to calculate a MAC signature from the extracted information. It then determines whether the obtained MAC signature matches the MAC signature in the hard wallet information; if they match, the signature is considered valid.
[0074] In one example, a hardware wallet application can use its private key to sign the hardware wallet identifier and send the signature along with its own public key certificate as hardware wallet information. The cryptocurrency backend 130 verifies the public key certificate using the institution's public key. After successful verification, it uses the public key from the public key certificate to verify the signature. Once the signature verification is successful, it queries the user identity database 140 based on the hardware wallet identifier to determine if the identifier is associated with a cryptocurrency account. It should be noted that the public key certificate and the institution's public key are a public key pair; the institution's public key can verify the authenticity of the public key certificate.
[0075] In some embodiments of this disclosure, the hard wallet information includes a hard wallet association code (contextId), which represents an identity credential corresponding to the hard wallet identifier. The digital currency backend server determines the legitimacy of the digital currency hard wallet based on the hard wallet association code, and if the hard wallet association code is associated with a digital currency account, it sends an authentication success notification to the user's digital currency application.
[0076] When a user initiates an operation related to the hard wallet 110 through the digital currency app 120 on user device 120, the hard wallet application within the hard wallet 110 sends information including the hard wallet association code to the digital currency backend 130. Upon receiving the information, the digital currency backend 130 first verifies the hard wallet association code to determine its legality. For example, the digital currency backend 130 pre-sets hard wallet association code verification rules. On one hand, the digital currency backend 130 checks whether the format of the association code conforms to the specific encoding rules in the hard wallet association code. For example, this may include the length of the association code, the character composition, and the order of the information parts; any association code that does not conform to the established format will be initially judged as illegal. On the other hand, the digital currency backend 130 can also compare the received hard wallet association code with a pre-stored list of legal hard wallet association codes. When each number or character matches any association code in the list, the association code is determined to be legal.
[0077] After verifying the legality of the hard wallet association code and confirming its validity, the cryptocurrency backend 130 further checks whether a binding relationship exists between the hard wallet association code and the cryptocurrency account. The cryptocurrency backend 130 queries the user identity database 140, which records detailed binding information between each cryptocurrency account and its corresponding hard wallet association code. Using the hard wallet association code as an index, the cryptocurrency backend 130 quickly retrieves the associated cryptocurrency account information. If a binding record is found between the association code and the cryptocurrency account, it indicates a valid association between the hard wallet association code and the cryptocurrency account.
[0078] Once the cryptocurrency backend 130 confirms that the hardware wallet association code is valid and linked to the cryptocurrency account, it will send an identity verification success notification to the cryptocurrency app 1200 on the user device 120. The notification may include a clear identifier of successful verification, a relevant timestamp, and a possible verification reference number, so that the cryptocurrency app 1200 on the user device 120 can accurately receive and recognize the notification, thereby informing the user that their identity verification has been successfully completed and that the user can continue with subsequent cryptocurrency operations, such as trading and checking their balance.
[0079] In some embodiments, the response information sent by the digital currency backend 130 in step S360 may also indicate that the digital currency account has initiated other authentication processes. For example, these include biometric authentication (e.g., facial scanning) and password authentication (e.g., comparing the entered password with a stored password).
[0080] After the digital currency app 1200 on user device 120 parses the response information, it can request the user to provide a password and biometrics for identity authentication through the UI interface.
[0081] In some embodiments of this disclosure, before receiving an identity authentication request or hardware wallet information, the method further includes: verifying the user's identity using a biometric template stored on the user's device.
[0082] For example, when the response information includes biometric authentication, the user can use biometric sensors (e.g., camera, fingerprint scanner, microphone, etc.) in user device 120 to measure biometric features (e.g., face scan, iris scan, ear scan, fingerprint, voice recording, etc.) and compare the collected biometric features with biometric templates pre-stored in user device 120. If the two biometric features match (e.g., the difference between them is within a certain allowed threshold), the user's identity is confirmed.
[0083] In some embodiments of this disclosure, before receiving an authentication request or hardware wallet information, the method further includes: verifying the user's identity using an authentication key stored on the user's device.
[0084] For example, when the response information includes password authentication, the user can use an input device (e.g., a touchscreen, physical buttons, etc.) in user equipment 120 to receive user-input symbols and compare the collected symbols with an authentication key pre-stored in user equipment 120. If they match, the user's identity is confirmed.
[0085] Based on the above method, by adding verification of other factors before each sensitive operation, attacks that occur during the interaction process can be avoided, the attack surface can be narrowed, and risks that may arise before large-scale digital currency payments can be reduced.
[0086] Figure 4 A block diagram of a digital currency backend server 130 according to at least one embodiment of the present disclosure is shown. Reference is made below. Figure 4 This will explain the various functional modules of the digital currency backend server.
[0087] like Figure 4 As shown, the digital currency backend 130 includes an identity authentication module 130A, a communication module 130B, and a user identity database 140. The contents of the user identity database 140 can be found in the aforementioned content and will not be repeated here.
[0088] For example, in some embodiments of this disclosure, the identity authentication module 130A is configured to receive an identity authentication request associated with the user's digital currency account from the digital currency App 1200 of the user device 120, and initiate an identity authentication procedure based on the digital currency hardware wallet in response to the identity authentication request; the communication module 130B is configured to send a response message to the digital currency App 1200, wherein the response message indicates that the identity authentication procedure based on the digital currency hardware wallet has been enabled for the digital currency account; the identity authentication module 130A is also configured to receive hardware wallet information read from the hardware wallet 110 sent by the digital currency App 1200 in response to the response message, and determine the relationship between the hardware wallet 110 and the digital currency account based on the hardware wallet information to authenticate the user's identity.
[0089] For example, in some embodiments of this disclosure, the identity authentication module 130A is further configured to identify at least one hard wallet that is associated with the digital currency account after the digital currency hard wallet-based identity authentication program is initiated. The response information also includes a list of hard wallets associated with at least one digital currency hard wallet, which is provided to the user via the digital currency App 1200.
[0090] For example, in some embodiments of this disclosure, the identity authentication module 130A is configured to send an identity verification pass notification to the digital currency App 1200 of the user device 120 when it is determined from the hard wallet information that the corresponding hard wallet is associated with the digital currency account or is any hard wallet in the hard wallet list.
[0091] For example, in some embodiments of this disclosure, the hard wallet information includes signature data that uses a hard wallet key to sign data including a hard wallet identifier; the identity authentication module 130A is configured to verify whether the signature data is a valid signature, and if the signature data is verified to be a valid signature, to parse out the hard wallet identifier therein, and if it is determined that the hard wallet identifier is associated with a digital currency account, to send an identity verification pass notification to the digital currency App 1200 of the user device 120.
[0092] For example, in some embodiments of this disclosure, the identity authentication module 130A is configured to use a symmetric key associated with the hard wallet to parse the signature data to obtain the hard wallet identifier, and determine whether the hard wallet identifier is at least one hard wallet associated with and bound to a digital currency account.
[0093] For example, in some embodiments of this disclosure, the hard wallet information includes a hard wallet association code, which represents an identity credential corresponding to the hard wallet identifier; the identity authentication module 130A is configured to determine the legality of the digital currency hard wallet based on the hard wallet association code, and send an identity verification pass notification to the digital currency App 1200 of the user device 120 when there is an association between the hard wallet association code and the digital currency account.
[0094] The additional aspects of the digital currency backend server 130 according to at least one embodiment of the present disclosure can correspond to the additional aspects of the user authentication method 300 according to at least one embodiment of the present disclosure. Therefore, the technical effects of the additional aspects of the user authentication method 300 according to at least one embodiment of the present disclosure can also be mapped to the additional aspects of the digital currency backend server 130 according to at least one embodiment of the present disclosure, which will not be repeated here.
[0095] It should be noted that the above application scenarios are merely exemplary in order to describe one or more aspects of this disclosure in specific scenarios. However, these aspects are not essential, and various modifications can be made to the application scenario. The embodiments of this disclosure are not limited.
[0096] At least some embodiments of this disclosure also provide an electronic device. Figure 5 A schematic diagram of an electronic device 500 according to at least one embodiment of the present disclosure is shown.
[0097] like Figure 5As shown, the electronic device 500 includes one or more processors 510 and a memory 520. The memory 520 includes one or more computer program modules 521. The one or more computer program modules 521 are stored in the memory 520 and configured to be executed by the processor 510. These computer program modules 521 include instructions for performing user authentication 300 and its additional aspects according to at least one embodiment of the present disclosure. When executed by the processor 510, they can perform one or more steps of the user authentication method 300 and its additional aspects according to at least one embodiment of the present disclosure. The memory 520 and the processor 510 can be interconnected via a bus system and / or other forms of connection mechanism (not shown). For example, the bus can be a Peripheral Component Interconnect Standard (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc.
[0098] For example, processor 510 may be a central processing unit (CPU), a digital signal processor (DSP), or other processing unit with data processing and / or program execution capabilities, such as a field-programmable gate array (FPGA). Processor 510 may be a general-purpose processor or a special-purpose processor, capable of controlling other components in electronic device 500 to perform desired functions.
[0099] Exemplarily, memory 520 may include any combination of one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. Volatile memory may include, for example, random access memory (RAM) and / or cache memory. Non-volatile memory may include, for example, read-only memory (ROM), hard disk, erasable programmable read-only memory (EPROM), portable compact disc read-only memory (CD-ROM), USB memory, flash memory, etc. One or more computer program modules 521 may be stored on the computer-readable storage medium, and processor 510 may execute one or more computer program modules 521 to implement various functions of electronic device 500. The computer program modules include multiple computer-executable instructions. Various application programs and various data, as well as various data used and / or generated by the application programs, may also be stored in the computer-readable storage medium.
[0100] For example, electronic device 500 may also include input devices such as touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, and gyroscopes; output devices such as liquid crystal displays, speakers, and vibrators; storage devices such as magnetic tapes and hard disks (HDDs or SDDs); and communication devices such as network interface cards like LAN cards and modems. The communication devices allow electronic device 500 to communicate wirelessly or wiredly with other devices to exchange data and perform communication processing via networks such as the Internet. A drive is connected to the I / O interface as needed. Removable storage media, such as disks, optical disks, magneto-optical disks, and semiconductor memories, are installed on the drive as needed so that computer programs read from them can be installed into the storage device as required.
[0101] For example, the electronic device 500 may further include a peripheral interface (not shown in the figure). This peripheral interface can be of various types, such as a USB interface, a Lightning interface, etc. The communication device can communicate wirelessly with networks and other devices, such as the Internet, intranets and / or wireless networks such as cellular telephone networks, wireless local area networks (LANs) and / or metropolitan area networks (MANs). Wireless communication can use any of a variety of communication standards, protocols, and technologies, including but not limited to Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth, Wi-Fi (e.g., based on IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, and / or IEEE 802.11n standards), Voice over Internet Protocol (VoIP), Wi-MAX, protocols for email, instant messaging, and / or Short Message Service (SMS), or any other suitable communication protocol.
[0102] The electronic device 500 may be, for example, a system-on-a-chip (SOC) or a device including the SOC. For instance, it may be any device such as a mobile phone, tablet computer, laptop computer, e-reader, game console, television, digital photo frame, navigator, home appliance, communication base station, industrial controller, server, etc., or any combination of data processing devices and hardware. The embodiments of this disclosure do not limit this. The specific functions and technical effects of the electronic device 500 can be found in the foregoing description of the user authentication method 300 and its additional aspects according to at least one embodiment of this disclosure, and will not be repeated here.
[0103] Figure 6 A schematic diagram of a computer-readable storage medium 600 according to at least one embodiment of the present disclosure is shown.
[0104] like Figure 6 As shown, a non-transitory computer instruction 610 is stored on a computer-readable storage medium 600, which, when executed by a processor, performs one or more steps of the user authentication method 300 and its additional aspects as described above.
[0105] For example, when the program code is read by a computer, the computer can execute the program code stored in the computer storage medium to perform one or more steps to implement, for example, the method 300 for processing digital currency hard wallet transactions according to at least one embodiment of the present disclosure and its additional aspects.
[0106] For example, the computer-readable storage medium may include a memory card of a smartphone, a storage component of a tablet computer, a hard disk of a personal computer, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), portable compact disc read-only memory (CD-ROM), flash memory, and other computer-readable media or any combination thereof.
[0107] At least some of the embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other.
[0108] It should be noted that, in this document, relational terms such as "first," "second," etc., are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. The terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes the element.
[0109] The following points should be noted regarding this disclosure:
[0110] (1) The accompanying drawings of the embodiments of this disclosure only involve the structures involved in the embodiments of this disclosure. Other structures can be referred to the general design.
[0111] (2) Where there is no conflict, the embodiments of this disclosure and the features in the embodiments can be combined with each other to obtain new embodiments.
[0112] The above description is merely an exemplary embodiment of this disclosure and is not intended to limit the scope of protection of this disclosure, which is determined by the appended claims.
Claims
1. A user authentication method, comprising: The digital currency backend server receives an identity authentication request associated with the user's digital currency account from the digital currency application on the user's device, and initiates an identity authentication procedure based on the digital currency hardware wallet in response to the identity authentication request; The digital currency backend server sends a response message to the digital currency application, wherein the response message indicates that a digital currency hardware wallet-based identity authentication program has been enabled for the digital currency account. The digital currency backend server receives hardware wallet information read from the digital currency hardware wallet sent by the digital currency application in response to the response information, and authenticates the user's identity by determining the relationship between the digital currency hardware wallet and the digital currency account based on the hardware wallet information.
2. The method according to claim 1, wherein, After initiating the identity authentication process based on the digital currency hard wallet, the digital currency backend server identifies that the digital currency account is associated with at least one digital currency hard wallet. The response information also includes a list of hard wallets associated with the digital currency account, and the list of hard wallets is provided to the user through the digital currency application.
3. The method according to claim 2, wherein, Based on the hard wallet information, if it is determined that the corresponding digital currency hard wallet is associated with the digital currency account or is any digital currency hard wallet in the hard wallet list, the digital currency backend server sends an authentication pass notification to the digital currency application on the user device.
4. The method according to claim 1, wherein, The method further includes: The hard wallet information includes signature data that uses the hard wallet key to sign data including the hard wallet identifier; The digital currency backend server verifies whether the signature data is a valid signature. If the signature data is valid, it parses out the hardware wallet identifier. If it is determined that the hardware wallet identifier is associated with the digital currency account, it sends an authentication success notification to the digital currency application on the user device.
5. The method according to claim 4, wherein, The step of verifying whether the signature data is a valid signature includes: The validity of the signature data is verified using the symmetric key associated with the hard wallet.
6. The method according to claim 1, wherein, The hardware wallet information includes a hardware wallet association code, which represents an identity credential corresponding to the hardware wallet identifier. The digital currency backend server determines the legitimacy of the digital currency hard wallet based on the hard wallet association code, and if the hard wallet association code is associated with the digital currency account, it sends an identity verification success notification to the digital currency application on the user device.
7. The method according to claim 1, wherein, Before receiving the identity authentication request or hardware wallet information, the process also includes: The user's identity is verified using a biometric template stored in the user's device.
8. The method according to claim 1, wherein, Before receiving the identity authentication request or hardware wallet information, the process also includes: The user's identity is verified using the authentication password stored on the user's device.
9. A digital currency backend server, comprising: The identity authentication module is configured to receive an identity authentication request associated with the user's digital currency account from the digital currency application on the user's device, and initiate an identity authentication procedure based on the digital currency hard wallet in response to the identity authentication request; A communication module is configured to send a response message to the digital currency application, wherein the response message indicates that a digital currency hardware wallet-based identity authentication procedure has been enabled for the digital currency account; The identity authentication module is further configured to receive hardware wallet information read from the digital currency hardware wallet sent by the digital currency application in response to the response information, and to authenticate the user's identity by determining the relationship between the digital currency hardware wallet and the digital currency account based on the hardware wallet information.
10. The digital currency backend server according to claim 9, wherein, The identity authentication module is further configured to identify that the digital currency account has been associated with at least one digital currency hard wallet after the digital currency hard wallet-based identity authentication program is launched. The response information also includes a list of hard wallets associated with at least one digital currency hard wallet, which is provided to the user by the digital currency application.
11. The digital currency backend server according to claim 10, wherein, The identity authentication module is configured to send an identity verification success notification to the digital currency application on the user device when it is determined, based on the hardware wallet information, that the corresponding digital currency hardware wallet is associated with or bound to the digital currency account, or is any digital currency hardware wallet in the hardware wallet list.
12. The digital currency backend server according to claim 9, wherein, The hard wallet information includes signature data that uses the hard wallet key to sign data including the hard wallet identifier; The identity authentication module is configured to verify whether the signature data is a valid signature. If the signature data is verified to be a valid signature, the module parses out the hardware wallet identifier. If it is determined that the hardware wallet identifier is associated with the digital currency account, the module sends an identity verification success notification to the digital currency application on the user device.
13. The digital currency backend server according to claim 12, wherein, The identity authentication module is configured to use the symmetric key associated with the hard wallet to parse the signature data to obtain the hard wallet identifier, and to determine whether the hard wallet identifier is at least one digital currency hard wallet associated with and bound to the digital currency account.
14. The digital currency backend server according to claim 9, wherein, The hardware wallet information includes a hardware wallet association code, which represents an identity credential corresponding to the hardware wallet identifier. The identity authentication module is configured to determine the legitimacy of the digital currency hard wallet based on the hard wallet association code, and if there is an association between the hard wallet association code and the digital currency account, send an identity verification success notification to the digital currency application on the user device.
15. An electronic device comprising: One or more processors; Memory, which stores one or more computer program modules. The one or more computer program modules are configured to be executed by the one or more processors to implement the method according to any one of claims 1-8.
16. A computer-readable storage medium for storing non-transitory computer-readable instructions, wherein, When a non-transitory computer-readable instruction is executed by one or more processors, it is used to implement the method according to any one of claims 1-8.