Transaction method and transaction system based on digital currency hard wallet
By adopting feature negotiation and two-way authentication in the rail transit industry, the problem of segmented and time-based fee deduction for digital currency hard wallets in this field has been solved, enabling more flexible and reliable transaction processing and expanding the application scope of hard wallets.
Patent Information
- Application Number
- CN202410978625.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-19
- Publication Date
- 2026-01-20
AI Technical Summary
Existing digital currency hardware wallets fail to meet the specific requirements of segmented and time-based fee deductions in industries such as rail transit, thus hindering effective transactions.
The system generates an authentication key through feature negotiation between the industry terminal and the hardware wallet for two-way authentication verification. After the transaction is completed, the payment transaction is processed through the industry back-end system, supporting a delayed transaction mode to ensure the smooth progress of the transaction.
It enables segmented and time-based payment transactions in industries such as rail transit, expands the scope of use of digital currency hardware wallets, and improves user experience.
Smart Images

Figure CN121365972A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] Embodiments of the present disclosure relate to a transaction method and a transaction system based on a digital currency hardware wallet. BACKGROUND
[0002] Existing digital currency hardware wallets have unified specifications in the field of POS consumption and are widely used. However, in other industries with special requirements, for example, in the field of rail transit, there is no suitable solution for digital currency hardware wallet transactions. SUMMARY
[0003] At least one embodiment of the present disclosure provides a transaction method based on a digital currency hardware wallet, wherein the method comprises: an industry terminal sending a feature negotiation request to a hardware wallet in interaction, the feature negotiation request comprising feature negotiation parameters of an industry scene type, an industry terminal type, a delay transaction mode and a security algorithm supported by the hardware wallet; in response to receiving a feature negotiation result of the hardware wallet indicating a match success according to the feature negotiation request and its own features, the industry terminal generates a first authentication key using the security algorithm; the industry terminal initiates a two-way authentication check to the hardware wallet and checks information sent by the hardware wallet using the first authentication key, and the hardware wallet checks information sent by the industry terminal using a second authentication key generated by the security algorithm; in response to a result of the two-way authentication check passing, the industry terminal performs an overwrite operation on the hardware wallet for industry data, and performs a transaction service in response to completion of the overwrite operation; and after completion of the transaction service, the industry terminal sends transaction information to an associated operating agency system via an industry background system for payment transaction processing according to the transaction information, the transaction information comprising a transaction amount calculated by the industry terminal according to the industry data.
[0004] For example, the transaction method according to at least one embodiment of the present disclosure further comprises: in response to the feature negotiation result of the match success, the industry terminal obtains industry data and a user identifier from the hardware wallet, and judges whether a transaction exception occurs based on the industry data and the user identifier.
[0005] For example, the transaction method according to at least one embodiment of the present disclosure, the first authentication key and the second authentication key are the same; the first authentication key is obtained by M+N level dispersion using a first key pre-stored in the industry terminal, wherein M≥1 and N≥1; the second authentication key is obtained by N level dispersion using a second key pre-stored in the hardware wallet, and the second key is obtained by M level dispersion using the first key.
[0006] For example, according to the transaction method of at least one embodiment of the present disclosure, the industry terminal receives the hard wallet random number sent by the hard wallet, obtains a first authentication key by dispersing the user identifier, the hard wallet random number and the terminal random number using a pre-stored first key; the hard wallet receives the key identifier and the terminal random number sent by the industry terminal, and generates a second authentication key by dispersing the hard wallet random number and the terminal random number using a second key found according to the key identifier; wherein the first key is a superior key of the hard wallet, and the second key is a key obtained by dispersing the superior key using the user identifier.
[0007] For example, according to the transaction method of at least one embodiment of the present disclosure, the step of two-way authentication verification includes: the industry terminal receives the information and the first MAC value sent by the hard wallet, and verifies the first MAC value using the first authentication key and the first information, wherein the first MAC value is calculated by the hard wallet using the second authentication key on the first information; the hard wallet receives the second information and the second MAC value sent by the industry terminal, and verifies the second MAC value using the second authentication key and the second information, wherein the second MAC value is calculated by the industry terminal using the first authentication key on the second information.
[0008] For example, according to the transaction method of at least one embodiment of the present disclosure, the industry terminal sends an instruction to obtain transaction information to the hard wallet, and the instruction includes a transaction amount; the industry terminal obtains the transaction information returned in response to the instruction from the hard wallet, and the transaction information includes payment information, a transaction verification code and a MAC value; the industry terminal verifies the MAC value in the transaction information using the first authentication key, and after the MAC value verification is passed, the payment information and the transaction verification code are sent to the associated operating agency system through the industry background system within a predetermined time, so that the associated operating agency system verifies the transaction verification code and executes a payment transaction process according to the payment information after the verification is passed.
[0009] For example, according to the transaction method of at least one embodiment of the present disclosure, the associated operating agency system includes a first operating agency system and a second operating agency system; the first operating agency system determines whether the current transaction is an internal transaction of the agency according to the transaction information, and selects to execute a payment transaction process by the first operating agency system or forwards the transaction information to the second operating agency system via an interconnection platform to execute a payment transaction process according to the determination result.
[0010] For example, according to the transaction method of at least one embodiment of the present disclosure, the first operating agency system or the second operating agency system executes a payment transaction process by the following steps: determining whether the transaction counter value in the payment information meets the condition, if yes, verifying the transaction verification code according to the transaction counter value and the payment information; if the verification is passed, storing the transaction counter value; and reducing the balance of the hard wallet according to the transaction amount of the payment information.
[0011] At least one embodiment of the present disclosure provides a transaction system based on a digital currency hard wallet, the transaction system comprising: a hard wallet, an industry terminal, an industry background system, and an associated operation agency system, wherein the industry terminal is configured to send a feature negotiation request to the hard wallet in interaction, the feature negotiation request comprising feature negotiation parameters of an industry scene type, an industry terminal type, a delay transaction mode, and a security algorithm supported by the hard wallet; in response to a matching successful feature negotiation result, a first authentication key is generated using the security algorithm to verify information sent by the hard wallet, in response to a result of a two-way authentication verification passing, an industry data rewriting operation is performed on the hard wallet, and in response to completion of the rewriting operation, a current transaction service is executed, and after completion of the current transaction service, transaction information is sent to the industry background system, the transaction information comprising a transaction amount calculated by the industry terminal according to the industry data; the hard wallet is configured to have feature capabilities supporting the delay transaction mode and the security algorithm, and to determine a feature negotiation result according to the received feature negotiation request and its own features; in response to a matching successful feature negotiation result, a second authentication key is generated using the security algorithm to verify information sent by the industry terminal; in response to a result of a two-way authentication verification passing, the industry data is rewritten, or transaction information is sent to the industry terminal; the industry background system is configured to record the transaction information and send the transaction information to the associated operation agency system; and the associated operation agency system is configured to perform payment transaction processing according to the transaction information.
[0012] For example, the transaction system according to at least one embodiment of the present disclosure, wherein the industry terminal is further configured to, in response to the matching successful feature negotiation result, acquire the industry data and a user identifier from the hard wallet, and judge whether a transaction exception occurs based on the industry data and the user identifier.
[0013] For example, the transaction system according to at least one embodiment of the present disclosure, wherein the first authentication key and the second authentication key are the same; the first authentication key is obtained by M+N-level dispersion using a first key pre-stored by the industry terminal, wherein M≥1 and N≥1; and the second authentication key is obtained by N-level dispersion using a second key pre-stored by the hard wallet, the second key being obtained by M-level dispersion using the first key.
[0014] For example, the transaction system according to at least one embodiment of the present disclosure, wherein the industry terminal is further configured to receive a hard wallet random number sent by the hard wallet, and to obtain the first authentication key by dispersing a user identifier, the hard wallet random number, and a terminal random number using the pre-stored first key; and the hard wallet is further configured to receive a key identifier and a terminal random number sent by the industry terminal, to find the second key according to the key identifier, and to generate the second authentication key by dispersing the hard wallet random number and the terminal random number using the second key; wherein the first key is a superior key of the hard wallet, and the second key is a key obtained by dispersing the superior key using the user identifier.
[0015] For example, the transaction system according to at least one embodiment of the present disclosure, the industry terminal is further configured to receive the first information and the first MAC value sent by the hard wallet, verify the first MAC value by using the first authentication key and the first information, and calculate a second MAC value of the first information by using the first authentication key; and the hard wallet is further configured to receive the second information and the second MAC value sent by the industry terminal, verify the second MAC value by using the second authentication key and the second information, and calculate a first MAC value of the second information by using the second authentication key.
[0016] For example, the transaction system according to at least one embodiment of the present disclosure, the industry terminal is further configured to send an instruction of obtaining transaction information to the hard wallet, the instruction including a transaction amount; obtain the transaction information returned in response to the instruction from the hard wallet, the transaction information including payment information, a transaction verification code and a MAC value; verify the MAC value in the transaction information by using the first authentication key, and send the payment information and the transaction verification code to the industry background system at a predetermined time after the MAC value is verified; the industry background system is configured to send the payment information and the transaction verification code to the associated operation agency system; and the associated operation agency system is further configured to verify the transaction verification code and execute a payment transaction process according to the payment information after the verification is passed.
[0017] For example, the transaction system according to at least one embodiment of the present disclosure, the associated operation agency system includes a first operation agency system and a second operation agency system; the first operation agency system is configured to determine whether the current transaction is an intra-agency transaction according to the transaction information, and select to execute a payment transaction process by the first operation agency system or forward the transaction information to the second operation agency system via an interconnection platform to execute a payment transaction process according to the determination result.
[0018] For example, the transaction system according to at least one embodiment of the present disclosure, the first operation agency system or the second operation agency system is further configured to: determine whether a transaction counter value in the payment information meets a condition, and if so, verify the transaction verification code according to the transaction counter value and the payment information; if the verification is passed, store the transaction counter value; and reduce the balance of the hard wallet according to the transaction amount of the payment information.
[0019] At least one embodiment of the present 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 the transaction method based on the digital currency hard wallet according to at least one embodiment of the present disclosure.
[0020] At least one embodiment of the present disclosure provides a computer readable medium storing computer executable instructions, wherein the computer executable instructions, when executed by one or more processors, implement a digital currency hard wallet based transaction method according to at least one embodiment of the present disclosure.
[0021] The digital currency hard wallet based transaction scheme of the embodiments of the present disclosure realizes hard wallet transactions in the rail transit industry field, can meet special needs of the industry field that needs to perform segmented and time-based deduction transactions, and expands the use range of the digital currency hard wallet. BRIEF DESCRIPTION OF DRAWINGS
[0022] In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the drawings of the embodiments of the present disclosure will be briefly introduced below. Obviously, the drawings described below only relate to some embodiments of the present disclosure, but not limit the present disclosure.
[0023] Figure 1 A scene schematic diagram describing transaction application of a digital currency hard wallet in the rail transit industry field is shown;
[0024] Figure 2 A block diagram of a digital currency hard wallet based transaction system according to at least one embodiment of the present disclosure is shown;
[0025] Figure 3 A block diagram of an exemplary industry terminal and digital currency hard wallet according to at least one embodiment of the present disclosure is shown;
[0026] Figure 4 An exemplary operation flowchart of a digital currency hard wallet based transaction method in a rail transit entry scene according to at least one embodiment of the present disclosure is shown;
[0027] Figure 5 An exemplary operation flowchart of a digital currency hard wallet based transaction method in a rail transit exit scene according to at least one embodiment of the present disclosure is shown;
[0028] Figure 6 A flowchart of a digital currency hard wallet based transaction method according to at least one embodiment of the present disclosure is shown;
[0029] Figure 7 A schematic diagram of an electronic device according to at least one embodiment of the present disclosure is shown;
[0030] Figure 8 A schematic diagram of a computer readable medium according to at least one embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0031] Reference will now be made in detail to the specific embodiments of the present disclosure, examples of which are illustrated in the accompanying drawings. The present disclosure will be described in connection with the specific embodiments, but it will be understood that the present disclosure is not limited to the described embodiments. Rather, the present disclosure is intended to cover any alternatives, modifications, and equivalents, as can be included within the spirit and scope of the present disclosure as defined by the appended claims. It should be noted that the method operations described herein can all be implemented by any of the functional blocks or functional arrangements, and any functional block or functional arrangement can be implemented as a physical entity or a logical entity, or a combination of both.
[0032] For a better understanding of the present disclosure, the present disclosure will be described in further detail below in connection with the accompanying drawings and specific embodiments.
[0033] Note that the examples to be described next are merely specific examples, and are not intended to limit the embodiments of the present disclosure to the specific shapes, hardware, connection relationships, operations, values, conditions, data, sequences, etc. shown and described. Those skilled in the art can construct more embodiments not mentioned in the present specification by reading the present specification using the concept of the present disclosure.
[0034] The terms used in the present disclosure are those general terms currently widely used in the art in consideration of the functions in the present disclosure, but these terms can vary according to the intention of those skilled in the art, precedents, or new technology in the art. Also, specific terms can be chosen by the applicant, and in this case, the detailed meanings thereof will be described in the detailed description of the present disclosure. Therefore, the terms used in the specification should be understood not as simple names but based on the meaning of the terms and the overall description of the present disclosure.
[0035] Flowcharts are used in the present disclosure to illustrate operations performed by systems according to embodiments of the present disclosure. It should be understood that the preceding or following operations are not necessarily performed in sequence. Rather, various steps can be processed in reverse order or simultaneously, as needed. Also, other operations can be added to these processes, or one or more steps can be removed from these processes.
[0036] First, the related terms and related terms related to the present disclosure are defined and explained.
[0037] In order to better understand the embodiments of the present disclosure, first, the related terms related to the present disclosure are defined and explained.
[0038] Secure Element (SE): It is usually provided in the form of a chip, which can also be called a secure chip. It is equivalent to a microcomputer and can realize functions such as secure storage of data and encryption and decryption operations.
[0039] Digital wallet: is the carrier of digital currency and the medium to reach users, according to the carrier is divided into soft wallet and hard wallet. Hard wallet is based on secure chip technology to realize digital currency related functions, relying on IC card, mobile terminal, wearable device, Internet of Things device and other services for users.
[0040] Non-contact consumption: also known as "contactless payment", a technology that can complete payment without contacting (such as card transaction) terminal equipment. This technology uses wireless communication technology, such as radio frequency identification (RFID) or near field communication (NFC) technology, to allow data transmission and interaction between payment terminals and receiving terminals.
[0041] Industry data: can represent the scene information corresponding to the industry field associated with the receiving terminal in the transaction process. For example, wholesale and retail, catering and travel, education and medical care, public services and other fields. In terms of scenarios, taking public services as an example, such as the in-out station scenario data of the rail transit system in the public transportation field, the entrance and exit scenario data of different sections of the highway toll system, and the parking timing scenario data of the parking lot toll system, in addition to shopping in supermarkets, hospital fees, campus card, and public utility fee payment scenarios.
[0042] Account identifier: can refer to one or more types of identifiers associated with an account (for example, a primary account number associated with a user's account, a card number associated with an account, a payment card number associated with an account, a token associated with an account, etc.). The account identifier uniquely identifies one or more accounts associated with the user, and the account identifier can be any combination of numbers, characters and / or symbols, etc. In the embodiments of the present disclosure, the account identifier is mainly for the hard wallet or the account identifier related to the hard wallet application.
[0043] Digital currency application: generally set in the security authentication module of the hard wallet, the security authentication module may be a secure chip, for example. The digital currency application provides opening and management of digital currency personal wallet, exchange and circulation services of digital currency (such as transaction process control, secure storage, issuer management, etc.).
[0044] Feature negotiation: In the field of digital currency, feature negotiation refers to the classification of key capabilities involved in various business models, technical implementation schemes, and hardware medium forms (card wallet, smart watch, mobile terminal, bracelet, POS machine, IC card, ATM, etc.) of hard wallet. According to the ability interaction and feature negotiation requirements, the intercommunication between institutions is achieved, and part of the functions can be realized according to the business needs in the implementation process.
[0045] It should be noted that in the technical solutions of the present disclosure, the collection, collection, updating, analysis, processing, use, transmission, storage, etc. of user personal information involved in the technical solutions comply with relevant laws and regulations, are used for legal purposes, and do not violate public order and good customs. Necessary measures are taken for user personal information to prevent illegal access to user personal information data, and to maintain user personal information security, network security and national security.
[0046] In the industry field such as rail transit (hereinafter referred to as "rail transit"), the transaction scheme based on the digital currency hard wallet has not been widely applied, and cannot meet the special requirements such as segmented and timed charge when the user uses the hard wallet transaction, so it is necessary to provide a transaction method and transaction system based on the digital currency hard wallet suitable for the industry field such as rail transit.
[0047] At least one embodiment of the present disclosure provides a transaction method and system based on a digital currency hard wallet. Through this scheme, the special needs of the industry terminal in the industry field such as rail transit (hereinafter referred to as "rail transit") for segmented and timed charge transaction of the hard wallet can be met.
[0048] In the following, embodiments according to the present disclosure will be described in detail with reference to the accompanying drawings. In the drawings, the same elements are denoted by using the same reference numerals. Furthermore, throughout the detailed description, the same terms are used to refer to the same elements.
[0049] Figure 1 A schematic diagram of a scene describing the application of a digital currency hard wallet in the rail transit industry is shown.
[0050] Reference Figure 1 The application scenario includes a hard wallet 120, an industry terminal 130 used in the rail transit scenario, an industry background system 140, and a related operation mechanism system 150, etc.
[0051] In one example, the hard wallet 120 can be an electronic device including an NFC card chip. For example, the hard wallet 120 can be a mobile terminal (such as a mobile phone or a hard wallet card) capable of supporting one or more NFC functions (NFC payment function). Generally, the hard wallet 120 can use NFC to perform payment or communication. In the case of using NFC to perform payment or communication, the internal digital currency application, such as the hard wallet application program, can be driven.
[0052] Corresponding to the above example, the industry terminal 130 can communicate with the hardware wallet 120 in a non-contact manner through NFC. By using NFC, the industry terminal 130 can perform the following functions with the hardware wallet 120: non-contact mobile payment, security authentication, and data exchange. According to different industry scenarios, the industry terminal can include, for example, a public facility acceptance terminal, such as the access gate of the illustrated rail transit system, and the like. In addition, other industry terminals that can transact with a digital currency hardware wallet are also included, such as a parking lot, a highway entrance and exit access management system, and the like, which are not limited here. In the following, the access gate of the rail transit system will be taken as an example of the industry terminal to describe the contents of the embodiments of the present disclosure.
[0053] During the transaction process, the user holds the hardware wallet 120 to perform transaction operations on the industry terminal 130 in a non-contact manner. In this scenario, the requirements of time-sharing and segmented fee deduction need to be met, and in order to provide more convenient services, the transaction system adopts a delayed fee deduction mode, that is, after the transaction service is completed, for example, after the user is released by opening the gate, the background payment transaction is performed within a certain time.
[0054] As shown in Figure 1 The transaction system also includes an industry background 140 and an associated operating agency system (or simply operating agency system) 150, which can be in operative communication with each other through any suitable communication channel or communication network. The suitable communication network can be any one and / or combination of the following: the Internet, a local area network (LAN), a metropolitan area network (MAN), an operating mission as an Internet node (OMNI), a secure custom connection, a wide area network (WAN), a wireless network (for example, using a protocol such as, but not limited to, the wireless application protocol (WAP), I-mode, etc.), and the like.
[0055] The industry background 140 is mainly to uniformly manage the industry terminal 130 set in different places, including requesting transaction processing from the operating agency system 150, managing transaction information, managing a blacklist, and the like. For example, the industry background 140 can record transaction information and send the transaction information (including payment information and transaction verification code) to the associated operating agency system 150 to request transaction processing. For example, the industry background 140 can receive the operation of payment completion information from the associated operating agency system 150 and record it, and the payment completion information can include receipt information, which includes transaction type, payment account identifier, transaction amount, transaction index number, and the like related to the hardware wallet transaction.
[0056] In one example, the associated operation agency system 150 can include a back-end system of a payee operation agency, a back-end system of a payer operation agency, an interconnection platform, etc., which can be a bank or other financial institution authorized to open a financial account. Through the associated operation agency system 150, transaction information transmission, transaction information verification, payment and collection, etc. can be performed.
[0057] Figure 2 A block diagram of a transaction system 100 based on a digital currency hardware wallet according to at least one embodiment of the present disclosure is shown. As shown, the transaction system 100 mainly includes a hardware wallet 120, an industry terminal 130, an industry back-end 140, and an associated operation agency system (as an example in the figure, which can include a first operation agency system 150A and a second operation agency system 150B, and an interconnection platform 160). Figure 2
[0058] At the front end of the transaction service, mainly the interaction between the hardware wallet 120 and the industry terminal 130, after the two complete the transaction service content, at the back end of the transaction service, the industry back-end 140 sends transaction information to the associated operation agency system 150 to perform payment transaction processing.
[0059] Figure 3 A block diagram of an exemplary industry terminal 130 and a digital currency hardware wallet 120 according to at least one embodiment of the present disclosure is shown.
[0060] As shown, the industry terminal 130 can include a processor 131, a memory 133, and a communicator 135. Of course, the industry terminal 130 can further include other components. Figure 3 In the embodiments of the present disclosure, the processor 131 can control at least one different component of the industry terminal 130, and / or can perform operations related to communication or data processing. For example, the processor 131 can be configured to have the following functions: an operation of selecting a hardware wallet application to perform capability negotiation, an operation of verifying information sent by the hardware wallet, and an operation of controlling the communicator 135 to send digital currency transaction information to an external device (e.g., an industry back-end server).
[0061]
[0062] For example, communicator 135 can communicate with another electronic device at least via a wireless communication network. According to embodiments of this disclosure, communicator 135 is configured to wirelessly communicate with hardware wallet 120. Specifically, the communication connection method can include a short-range wireless communication connection for forming a device-to-device (D2D) communication channel. Here, the short-range wireless communication connection can include a communication connection via a short-range wireless communication network according to short-range wireless communication standards such as Bluetooth, Wi-Fi, BLE, Near Field Communication (NFC) / Radio Frequency Identification (RFID), Wi-Fi Direct, Ultra Wideband (UWB), Zigbee, etc. For example, communicator 135 in embodiments of this disclosure includes an NFC card chip to transmit information via NFC wireless communication. Additionally, communicator 135 can also network with industry backend 140 via a communication network, such as the Internet or other data networks, to send messages.
[0063] Memory 133 may store data, one or more programs, one or more instructions, or at least one of one or more applications. Memory 133 may include at least one type of storage medium selected from flash memory, hard disk storage, multimedia card microstorage, card-type memory (e.g., SD or XD memory), RAM, static RAM (SRAM), ROM, electrically erasable programmable ROM (EEPROM), programmable ROM (PROM), magnetic storage, magnetic disk, and optical disk. The code stored in memory 133 may be executed by processor 131 to perform operations related to industry terminal 130 in the methods of the following embodiments.
[0064] like Figure 3 As shown, the hard wallet 120 includes a communication module 121 and a security unit 123, wherein the security unit 123 includes a hard wallet application 123A and a wallet data storage area 123B. Figure 3 The illustration shown is merely an example; the hard wallet of this disclosure embodiment can also be an active device with a battery (power module 125).
[0065] For example, the communication module 121 is mainly responsible for the communication connection with the industry terminal 130, and the communication method followed by the communication module 121 can be Bluetooth, near field NFC radio frequency, WIFI, UWB, and mobile network, etc. The hard wallet application 123A is mainly responsible for the management of the digital currency payment behavior, and the functions thereof include the read-write of the account personalized information, the wallet management, the wallet transaction, and the wallet query function. The wallet data storage area 123B stores the wallet SEID, the wallet ID, the wallet control information, the wallet transaction related information, the key and the certificate information. The wallet ID can be a real wallet account ID or an associated code of the wallet account. The associated code is one-to-one corresponding to the wallet account in order to ensure the safety of the wallet data. In addition, the key and the authentication information include the symmetric key, the asymmetric key, and the institution certificate. When the wallet is initialized (i.e., the wallet is opened), the symmetric key, the asymmetric key, and the institution certificate are issued by the wallet issuing party 110, and the above data are written into the secure element 123.
[0066] Next, with reference to Figure 1 and Figure 2 , the transaction process based on the hard wallet is described.
[0067] The industry terminal 130 is configured to send a feature negotiation request to the hard wallet 120 in the interaction.
[0068] For example, in some embodiments, the user holds the hard wallet 120 close to the non-contact card swiping area of the industry terminal 130 (such as the gate of the rail transit industry), and the industry terminal 130 establishes a communication connection with the communication module 121 of the hard wallet 120 through the communicator 135. Then, the industry terminal 130 selects the hard wallet application 123A in the hard wallet 120, and enables the hard wallet application 123A to implement the digital currency transaction process. Next, the industry terminal 130 sends a feature negotiation request to the hard wallet 120.
[0069] For example, in the embodiments of the present disclosure, the feature negotiation request can include the industry scene type, the industry terminal type, the feature negotiation parameters of the delay transaction mode and the security algorithm supported by the request hard wallet. In addition to the above parameters, other parameters can be added according to the needs, and the specific limitation is not made.
[0070] For example, the industry scene type can be represented by an industry scene identifier. When the collection scene is a public transportation POS or a rail transit gate, the industry scene identifier corresponding to this collection scene is used, for example, the industry scene identifier of the public transportation POS is A001, and the industry scene identifier of the rail transit gate is A002. The main purpose of setting the industry scene identifier is to facilitate the hard wallet 120 and the industry terminal to determine the key used in the transaction process based on the identifier, and then complete the encryption and decryption of the interaction information and the like.
[0071] For the setting of the delay transaction mode, mainly considering that in the field of rail transit industry, if the transaction mode is set to real-time transaction, when the networking state between the industry terminal and the background appears, for example, network interruption, industry terminal offline, network jitter, serious network interference, serious data transmission packet loss and the like, the transaction cannot be smoothly carried out, which will affect the service of the rail transit system to the user, especially during the peak period of transaction service, transaction failure will cause the gate to be unable to open, thereby greatly affecting the user's experience. Then by setting the transaction mode to the delay payment mode, the service can be provided first, and then the transaction and deduction are completed, which is more in line with the transaction demand of time-sharing and segmentation in this scenario.
[0072] In addition, in the transaction service process, in order to ensure that the hard wallet and the industry terminal verify each other's information or perform bidirectional authentication, each party needs to encrypt (scatter) and verify the information by using the security algorithm supported by each other. Therefore, when the industry terminal negotiates the features with the hard wallet, it needs to inform the hard wallet of the algorithm it supports so as to confirm whether the security algorithms of the two are matched. The parameters of the supported security algorithm can include support for national encryption algorithm (indicated by "01") and support for international algorithm (indicated by "02"), and the specific algorithm is not limited here, and a cryptographic algorithm in the related art can be selected.
[0073] For example, the industry terminal type can adopt an industry terminal identifier, through which it can be determined whether the terminal is a public infrastructure terminal or a merchant consumption POS terminal, and whether the transaction is a default password-free operation for different terminals, based on which risk control can be performed.
[0074] For example, in the embodiment of the present disclosure, the hard wallet 120 is configured to determine the feature negotiation result according to the feature negotiation request and its own features, and return the feature negotiation result to the industry terminal 130.
[0075] For example, after receiving the feature negotiation request, the hard wallet 120 starts the hard wallet application program 123A therein, and judges whether its own features match the parameters in the feature negotiation request through the program 123A. The capability features of the hard wallet itself can include, for example, parameters describing the communication mode between the two devices for data interaction, networking state (used to describe the networking state of the two devices when performing operations, such as online and offline), human-computer interaction input and output capability, supported security algorithm, supported transaction model and the like. In this example, when the hard wallet application program 123A judges that its own features meet the delay transaction mode and the security algorithm, it is judged that the features of the industry terminal are matched successfully, and the feature negotiation result of the matched success is sent to the industry terminal 130. In addition, the capability information of the hard wallet can also be sent to the industry terminal together with the feature negotiation result.
[0076] For example, in the embodiments of the present disclosure, the industry terminal 130 is configured to generate a first authentication key using a secure algorithm in response to a successful feature negotiation result received from the hardware wallet 120; and the hardware wallet 120 is further configured to generate a second authentication key using a secure algorithm. For example, the processor 131 of the industry terminal 130 generates an authentication key for interaction with the hardware wallet 120 using a preset encryption algorithm in response to a result of successful feature negotiation. Moreover, the program 123A of the hardware wallet 120 also generates an authentication key for interaction with the industry terminal 130 using a preset encryption algorithm. The specific encryption algorithm is not limited, as long as the authentication keys generated by each party are the same.
[0077] For example, in the embodiments of the present disclosure, the first authentication key and the second authentication key are the same, the first authentication key is obtained by M+N-level dispersion using a first key pre-stored in the industry terminal, where M≥1 and N≥1; and the second authentication key is obtained by N-level dispersion using a second key pre-stored in the hardware wallet, the second key being obtained by M-level dispersion using the first key.
[0078] “Dispersion” refers to encrypting a string of content using a key, which can also be referred to as “key dispersion”. Taking “M+N-level dispersion” as an example, it is dispersed M+N times using a first key and M+N information, for example, the first key is used to encrypt information 1 to obtain a first-level key, then the first-level key is used to encrypt information 2 to obtain a second-level key, and so on, and the M+N-1 level key is used to encrypt information N to obtain an M+N level key.
[0079] In this example, in order to ensure that the first authentication key obtained by M+N-level dispersion and the second authentication key obtained by N-level dispersion are the same, the second key used in the N-level dispersion is obtained by M-level dispersion of the first key. The process of “N-level dispersion” is similar to the method of “M+N-level dispersion” described above, except that the second key is used, and the specific dispersion method can be referred to the above method.
[0080] According to the above example, the industry terminal 130 can pre-store an encryption key as a superior key of the hardware wallet, and the superior key can generate an independent and unique authentication key for each wallet according to the wallet ID; and the “encryption key obtained by encrypting the set information using the superior key” is pre-stored in the user's hardware wallet 120 as an inferior key. Such a setting ensures the security of the superior key.
[0081] For example, in one example of the embodiments of the present disclosure, the industry terminal 130 is configured to receive the hard wallet random number sent by the hard wallet 120, and obtain a first authentication key by dispersing the user identifier, the hard wallet random number and the terminal random number using a pre-stored first key. The hard wallet 120 is configured to receive the key identifier and the terminal random number sent by the industry terminal 130, and find a second key according to the key identifier, and generate a second authentication key by dispersing the hard wallet random number and the terminal random number using the second key; wherein the first key is a superior key of the hard wallet, and the second key is a key obtained by dispersing the superior key using the user identifier.
[0082] For example, the user identifier can be an account identifier of the hard wallet. The random numbers on both ends can be pre-stored or generated in real time using a random generator. For details of random number generation, refer to related technologies, which will not be described in this example.
[0083] For example, a plurality of sets of industry keys corresponding to the key identifier can be pre-stored in the hard wallet. The key identifier, as an example of a key index, can be a number or an industry identifier. Through the number, the corresponding key value can be found in the hard wallet, and the found key value is the "key that has been dispersed using the user identifier". Through the above calculation, the industry terminal 130 and the hard wallet 120 can obtain a temporary authentication key, which can be used to verify the integrity and authenticity of the transmitted information in the transaction process.
[0084] In the above example, the industry terminal is dispersed by two levels and the hard wallet is dispersed by one level to obtain the same authentication key. It can be easily understood that in other examples, the number of dispersion can be changed, and according to actual needs, it can also be three levels or four levels of dispersion. In addition, the information performing the dispersion operation can also be a payee identifier, a digital currency identifier or other content, which is not limited by the embodiments of the present disclosure.
[0085] For example, in one embodiment of the present disclosure, the industry terminal 130 is configured to initiate a two-way authentication verification with the hard wallet 120, and the industry terminal 130 verifies the information sent by the hard wallet 120 using the first authentication key, and the hard wallet 120 verifies the information sent by the industry terminal 130 using the second authentication key generated by a security algorithm. In the transaction service process, it is necessary to ensure the legitimacy of the identities of both parties to avoid tampering with transaction information by a third party, and therefore, in the process of interaction between the two parties, the accuracy of the interaction information needs to be verified.
[0086] For example, in the embodiments of the present disclosure, the industry terminal 130 is further configured to receive the first information and the first MAC value sent by the hard wallet 120, and check the first MAC value by using the first authentication key and the first information, wherein the first MAC value is calculated by the hard wallet 120 using the second authentication key on the first information. Specifically, the industry terminal 130 calculates the MAC value on the first information by using the first authentication key, and compares the calculated MAC value with the first MAC value. If they are the same, the verification is passed; if they are different, the verification is failed.
[0087] Moreover, the hard wallet 120 is further configured to receive the second information and the second MAC value sent by the industry terminal 130, and check the second MAC value by using the second authentication key and the second information, wherein the second MAC value is calculated by the industry terminal 130 using the first authentication key on the second information. Specifically, the hard wallet 120 calculates the MAC value on the second information by using the second authentication key, and compares the calculated MAC value with the second MAC value. If they are the same, the verification is passed; if they are different, the verification is failed.
[0088] For example, the information sent by the interaction can be an instruction or a content returned according to the instruction, such as an operation instruction for rewriting the industry data, which can include the rewritten industry data and the MAC value calculated on the industry data; an authentication instruction, which can include the payee account identifier and the transaction time, and the MAC value calculated on the two information; an instruction for obtaining the payment information, which can include the payee account identifier, the transaction amount, the terminal random number, the industry identifier, and the MAC value calculated on the information; and the payment information, which can include the payee and payer account identifiers, the transaction counter, the transaction index number, the transaction type, the digital currency information, the transaction amount, and the MAC value calculated on the information.
[0089] For example, in the embodiments of the present disclosure, the industry terminal 130 is further configured to perform the rewriting operation of the industry data on the hard wallet 120 in response to the result of the two-way authentication verification, that is, the industry terminal itself completes the MAC verification and receives the response code returned by the hard wallet.
[0090] In the embodiments of the present disclosure, the main purpose of modifying the industry data of the hard wallet is that the industry terminal determines the transaction amount to be paid according to the industry data. For example, in the scenario that the industry terminal is a passage gate of a rail transit system, the industry data includes data related to the in-out station scenario, for example, can include the station number, time, terminal number, city number, in-out station state identifier, etc. In the public transportation scenario, the gate needs to update the industry data in the hard wallet every time the station is entered or exited, and in addition to ensuring the normal state, it also needs to be segmented according to the station information. For example, the payment amount (transaction amount) calculated according to the in-station point number and the current (out-station) point number in the hard wallet. Or, the payment amount can also be calculated according to the in-station time and the out-station time.
[0091] Taking the in-station scenario in the rail transit industry field as an example, after the industry terminal completes the two-way authentication with the hard wallet, the in-station information is written into the hard wallet, and after the hard wallet executes the in-station information rewriting operation, the gate is opened for release; in the out-station scenario, after the industry terminal completes the two-way authentication with the hard wallet, the out-station information is written into the hard wallet, and after the hard wallet executes the in-station information rewriting operation, the transaction amount to be paid is calculated according to the out-station information and the in-station information of the hard wallet, and the transaction information acquisition instruction containing the transaction amount is sent to the hard wallet, and after the transaction information is acquired, the gate is opened for release, completing the transaction service.
[0092] For example, in the embodiments of the present disclosure, the industry terminal 130 is also configured to execute the transaction service operation in response to the completion of the rewriting operation, and send the transaction information to the associated operating agency system 150 through the industry background system 140. The related transaction service operation can include, for example, opening the gate of the passage gate (an example of the industry terminal) in the rail transit field, etc. For example, the industry terminal 130 opens the gate after receiving the execution result of the industry data rewriting and the transaction information sent by the hard wallet 120.
[0093] For example, in the embodiments of the present disclosure, the industry terminal 130 is also configured to send an instruction to the hard wallet 120 to acquire transaction information, the instruction including a transaction amount, and acquire transaction information returned in response to the instruction from the hard wallet 120, the transaction information including payment information, a transaction authentication code TAC and a MAC value. The industry terminal 130 verifies the MAC value in the transaction information by using the first authentication key, and after the MAC value verification is passed, the industry terminal 130 sends the payment information and the transaction authentication code TAC to the associated operating agency system 150 through the industry background system 140 within a predetermined time. It should be noted that the above transaction authentication code TAC is essentially a MAC value, and the purpose of transmission to the background is to verify the information and determine the integrity and authenticity of the transaction information.
[0094] For example, the messages between the industry background 140 and the associated operating agency system can be sent through a communication network using a secure communication protocol, such as but not limited to: File Transfer Protocol (FTP), HyperText Transfer Protocol (HTTP), Secure HyperText Transfer Protocol (HTTPS), etc.
[0095] In the embodiments of the present disclosure, the associated operating agency system is a background system supporting the function of digital currency payment, supporting digital currency transactions within and across agencies.
[0096] As shown in Figure 2 In most cases, the associated operating agency system includes a first operating agency system 150A and a second operating agency system 150B. The first operating agency system 150A is the operating agency system or server corresponding to the receiving party (such as the industry background), and the second operating agency system 150B is the operating agency system or server corresponding to the payer (such as the hard wallet 120), which can process digital currency transactions within the agency.
[0097] In order to facilitate information exchange between multiple operating agencies, in the embodiments of the present disclosure, the associated operating agency system further includes an interconnection and intercommunication system or server (such as the interconnection and intercommunication platform 160 in Figure 2 ).
[0098] For example, in the embodiments of the present disclosure, when the payer account identifier and the payee account identifier correspond to the same operating agency during the digital currency transaction according to the payer account identifier, the payee account identifier, and the transaction amount, the intra-agency transaction is performed; when the payer account identifier and the payee account identifier correspond to different operating agencies, the transaction request is sent through the interconnection and intercommunication platform, and the cross-agency transaction is performed.
[0099] For example, in some transaction scenarios, the payee account and the payer account belong to the same digital currency operating agency, and the digital currency transaction is performed in the server of the same digital currency operating agency, and the server or system of the digital currency operating agency performs the transfer of digital currency.
[0100] For example, in other transaction scenarios, if the payee account and the payer account do not belong to the same digital currency operating institution, the transaction process will be carried out between the server or system of the payee operating institution, the server or system of the payer operating institution and the interconnection server or system. For example, after the industry background 140 in this example sends the transaction information to the server or system of the payee operating institution (for example, the first operating institution system 150A), the transaction information is sent to the operating institution corresponding to the payer hard wallet through the interconnection system or server according to the identification of the payer wallet, and the server or system of the operating institution corresponding to the payer hard wallet (for example, the second operating institution system 150B) reduces the digital currency corresponding to the transaction amount in the payer hard wallet (hard wallet 120), and then the payee operating institution increases the digital currency corresponding to the transaction amount in the payee account.
[0101] In addition to the above, before the digital currency transaction is executed, the issuer (system) 110 is also involved. When issuing some hard wallets, the issuer 110 needs to configure specific capability features for the hard wallet 102 according to the scene requirements. When issuing these hard wallets, user information and corresponding capability parameters are written, such as supporting the delay payment transaction mode and some security algorithms, and a set of industry keys for interacting with the industry terminal can also be pre-stored. In this way, the hard wallet has personalized configuration and can be applied to different industry fields for transaction.
[0102] For example, in an embodiment of the present disclosure, the associated operating institution system 150 is configured to perform payment transaction processing according to the transaction information, and return the transaction result information to the industry background 140, so that the industry background 140 records the transaction result.
[0103] For example, in an embodiment of the present disclosure, the associated operating institution system 150 is configured to verify the transaction verification code TAC and perform payment transaction processing according to the payer information after the verification is passed.
[0104] For example, in an embodiment of the present disclosure, the associated operating institution system 150 includes a first operating institution system 150A and a second operating institution system 150B.
[0105] The first operation agency system 150A is configured to determine whether the transaction is an intra-agency transaction according to the transaction information, and to select to perform the payment transaction processing by the first operation agency system 150A or to forward the transaction information to the second operation agency system 150B via the interconnection platform 160 to perform the payment transaction processing according to the determination result. Specifically, the first operation agency system 150A determines whether the payee and the payer account identifiers in the transaction information belong to the accounts of the same agency, and if so, determines to perform the payment transaction by the agency system, and if not, sends the transaction information to the second operation agency system 150B associated with the payer account for processing.
[0106] For example, in an embodiment of the present disclosure, the first operation agency system 150A or the second operation agency system 150B is configured to perform the payment transaction processing by determining whether the transaction counter value (ATC value) in the payment information meets the condition, if so, verifying the transaction verification code according to the transaction counter value and the payment information, if the verification is passed, storing the transaction counter value, and reducing the balance of the hard wallet according to the transaction amount of the payment information.
[0107] First, the transaction counter value (denoted as "first ATC value") is extracted from the payment information, which is compared with the locally stored transaction counter value (denoted as "second ATC value"), and it is determined whether the first ATC value is greater than the locally stored second ATC value, if so, it is determined that the condition is met. Then, the first ATC value is encrypted using the same security algorithm on the hard wallet side to obtain a background transaction key, and the background transaction key is used to calculate the transaction verification code TAC from the payment information, and it is compared whether the calculated transaction verification code is consistent with the received transaction verification code, if so, the verification is passed, and the first ATC value is replaced by the second ATC value and stored in the local system.
[0108] Specifically, when it is determined that the transaction meets the intra-agency transaction, the payment transaction processing is performed by the first operation agency system 150A, which is associated with the receiving end operation agency, and after reducing the balance of the hard wallet account, the balance of the industry side account is also increased accordingly.
[0109] When it is determined that the transaction is a cross-agency transaction, the first operation agency system 150A sends the transaction information to the second operation agency system 150B, and after deducting the balance of the hard wallet account, the transaction result is returned to the first operation agency system 150A through the interconnection platform, and the first operation agency system 150A increases the balance of the digital currency of the hard wallet account of the industry party. The first operation agency system 150A returns the transaction result to the industry background system 140 for recording.
[0110] For example, in other embodiments, if the industry party accesses through a receiving service agency (for example, a third-party payment service agency), the receiving service agency can send the transaction to the receiving operating agency through the interconnection platform. The specific payment transaction processing is similar to the above-mentioned embodiments, and will not be described here.
[0111] For example, in an embodiment of the present disclosure, the industry terminal 130 is further configured to obtain industry data and user identification from the hard wallet 120 in response to the matching successful feature negotiation result, and determine whether a transaction exception occurs based on the industry data and the user identification.
[0112] Taking the rail transit industry field as an example, the industry terminal 130 determines whether the in-out station state is normal according to the in-out station state information in the industry data, and identifies whether the digital currency account identification appears in the blacklist. If the state is normal and does not appear in the blacklist, the transaction continues, otherwise the transaction is rejected.
[0113] In the in-station scenario, the in-out station state identification in the read industry data should be the un-in-station state, and if it is consistent, it is determined that the state is normal; in the out-station scenario, the in-out station state identification in the read industry data should be the in-station state, and if it is consistent, it is determined that the state is normal.
[0114] Figure 6 A flowchart of a transaction method based on a digital currency hard wallet according to at least one embodiment of the present disclosure is shown.
[0115] As shown in Figure 6 Step S610, the industry terminal 130 sends a feature negotiation request to the hard wallet 130 in the interaction.
[0116] For example, in an embodiment of the present disclosure, the feature negotiation request can include industry scene type, industry terminal type, feature negotiation parameters of delay transaction mode and security algorithm supported by the request hard wallet.
[0117] In step S620, the hard wallet 120 determines the feature negotiation result according to the feature negotiation request and its own features, and returns the feature negotiation result to the industry terminal 130.
[0118] In step S630, the industry terminal 130 generates a first authentication key using a security algorithm in response to the matching successful feature negotiation result received from the hard wallet 120; the hard wallet 120 generates a second authentication key using a security algorithm.
[0119] For example, in an embodiment of the present disclosure, the first authentication key and the second authentication key are the same, the first authentication key is obtained by M+N level dispersion of a first key pre-stored by the industry terminal, where M≥1, N≥1; the second authentication key is obtained by N level dispersion of a second key pre-stored by the hard wallet, and the second key is obtained by M level dispersion of the first key.
[0120] For example, in one example of the embodiments of the present disclosure, the industry terminal 130 receives the hard wallet random number sent by the hard wallet 120, and obtains a first authentication key by dispersing the user identifier, the hard wallet random number and the terminal random number using a pre-stored first key. The hard wallet 120 receives the key identifier and the terminal random number sent by the industry terminal 130, and finds a second key according to the key identifier, and generates a second authentication key by dispersing the hard wallet random number and the terminal random number using the second key; wherein the first key is an authentication root key, and the second key is a key obtained by dispersing the authentication root key using the user identifier.
[0121] In step S640, the industry terminal 130 initiates a two-way authentication check with the hard wallet 120, and the hard wallet 120 checks the information sent by the industry terminal 130 using the second authentication key generated by the security algorithm.
[0122] In step S650, the industry terminal 130 checks the information sent by the hard wallet 120 using the first authentication key.
[0123] For example, in the embodiments of the present disclosure, the step of two-way authentication check includes: the industry terminal 130 receives the first information and the first MAC value sent by the hard wallet 120, and checks the first MAC value using the first authentication key and the first information, wherein the first MAC value is calculated by the hard wallet 120 using the second authentication key on the first information. The hard wallet 120 receives the second information and the second MAC value sent by the industry terminal 130, and checks the second MAC value using the second authentication key and the second information, wherein the second MAC value is calculated by the industry terminal 130 using the first authentication key on the second information.
[0124] In step S660, the industry terminal 130 performs an industry data rewriting operation on the hard wallet 120 in response to the result of passing the two-way authentication check.
[0125] In step S670, the hard wallet 120 rewrites the industry data and sends the execution result and the transaction information.
[0126] In step S680, the industry terminal 130 completes the current transaction service and sends the transaction information to the associated operating agency system 150 through the industry background system 140.
[0127] For example, in the embodiments of the present disclosure, the industry terminal 130 obtains the transaction information from the hard wallet 120, and the transaction information includes the payment information, the transaction authentication code TAC and the MAC value. The industry terminal 130 checks the MAC value in the transaction information using the first authentication key, and completes the current transaction service after the check passes. Then, the industry terminal 130 sends the payment information and the transaction authentication code TAC to the associated operating agency system 150 through the industry background system 140 at a predetermined time.
[0128] In step S690, the association operator system 150 performs payment transaction processing according to the transaction information.
[0129] In step S691, the association operator system 150 returns transaction result information to the industry background 140, and the industry background 140 records the transaction result.
[0130] For example, in the embodiment of the present disclosure, the association operator system 150 checks the transaction authentication code TAC and performs payment transaction processing according to the payment information after the check is passed.
[0131] For example, in the embodiment of the present disclosure, the association operator system 150 includes a first operator system 150A and a second operator system 150B.
[0132] The first operator system 150A determines whether the transaction is an intra-agency transaction according to the transaction information, and selects to perform payment transaction processing by the first operator system 150A or forwards the transaction information to the second operator system 150B via the interconnection platform 160 to perform payment transaction processing according to the determination result. Specifically, the first operator system 150A determines whether the payee and payer account identifiers in the transaction information belong to the accounts of the same agency, and if so, determines to perform payment transaction by the agency system, and if not, sends the transaction information to the second operator system 150B associated with the payer account for processing.
[0133] For example, in the embodiment of the present disclosure, the first operator system 150A or the second operator system 150B performs payment transaction processing by the following steps: determining whether the transaction counter value (ATC value) in the payment information meets the condition, if so, checking the transaction authentication code according to the transaction counter value and the payment information; if the check is passed, storing the transaction counter value; and reducing the balance of the hard wallet according to the transaction amount of the payment information.
[0134] For example, in the embodiment of the present disclosure, the industry terminal 130 further acquires industry data and user identifier from the hard wallet 120 in response to the matching successful feature negotiation result, and determines whether a transaction anomaly occurs based on the industry data and the user identifier.
[0135] Figure 6 Embodiments of the method are basically similar to the aforementioned embodiments of the transaction system based on the digital currency hard wallet, and thus will not be described here again. For relevant parts, please refer to the description of the system embodiment part.
[0136] Figure 4 An exemplary operation flowchart of a transaction method based on a digital currency hard wallet in a rail transit entry scenario according to at least one embodiment of the present disclosure is shown.
[0137] As Figure 4 shown, the parties involved in this digital currency transaction include the hard wallet 120, the industry terminal (gate machine) 130, and the industry background 140. The specific operations performed by each party in the transaction will be described below with reference to Figure 4 .
[0138] S401: The hard wallet 120 establishes communication with the gate machine 130, and the gate machine 130 selects the hard wallet application of the hard wallet.
[0139] The hard wallet 120 is close to the gate machine 130, and the gate machine 130 establishes a communication channel (such as NFC, UWB, Bluetooth, NearLink, etc. Wireless communication methods) with the hard wallet 120, and the gate machine 130 selects the hard wallet application of the hard wallet 120, and opens the hard wallet application for subsequent transaction process.
[0140] S402: After the gate machine 130 receives the response of the successful selection of the application, it sends a feature negotiation request to the hard wallet 120 to perform a feature negotiation operation.
[0141] In one example, the negotiation parameters in the feature negotiation request can include the delay payment transaction mode, the supported security algorithm, the industry identifier, the industry terminal type, the input capability of the industry terminal, the display capability of the industry terminal, and the like.
[0142] S403: After the hard wallet 120 receives the feature negotiation request, it matches the feature negotiation parameters sent by the gate machine 130 according to its own supported transaction mode, supported algorithm, and industry identifier.
[0143] S404: The matching result (or negotiation result) is returned to the gate machine 130.
[0144] In this example, the matching result includes negotiation success or negotiation failure. If the negotiation is successful, it at least indicates that the hard wallet 120 supports the delay payment transaction with the gate machine 130 and the supported security algorithms of both parties match. If the negotiation fails, after the hard wallet 120 returns the result of negotiation failure, the gate machine 130 refuses the subsequent transaction.
[0145] S405: The gate machine 130 initiates the transaction process in response to the negotiation success result sent by the hard wallet 120.
[0146] In this step, the gate machine 130 reads the industry data of the hard wallet 120 (including the entry / exit station status, entry / exit station number, entry / exit station time, entry / exit terminal number, transaction serial number, and the like) and the digital currency account identifier (or user identifier).
[0147] S406: The gate machine 130 checks the blacklist according to the user identification and judges whether the entry and exit information is normal. If the entry and exit state is normal and the user identification does not appear in the blacklist, the transaction is continued, otherwise the transaction is rejected.
[0148] Since this scenario is in the entry stage, if the entry and exit state identifier in the read industry information is the non-entry state, it is judged that the entry and exit state is normal. When it is judged that the transaction can continue, the gate machine 130 generates a terminal random number.
[0149] S407: The gate machine 130 sends an authentication initialization instruction to the hard wallet 120, and the instruction data includes key index (for example, including key identification), terminal random number and other information. Among them, the key index is used to find the industry key corresponding to the key identification in the hard wallet 120, the industry key is pre-stored in the hard wallet 120, and is the key obtained by using the user identification to disperse the root key.
[0150] S408: After receiving the authentication initialization instruction, the hard wallet 120 determines the corresponding industry key according to the key identification, generates a hard wallet random number, and uses the hard wallet random number, the terminal random number and other information to disperse the industry key to obtain the authentication process key (an example of the second authentication key), that is, the temporary authentication process key is obtained by encrypting the random numbers of both parties with the industry key.
[0151] S409: The hard wallet 120 returns the information of the hard wallet random number to the gate machine 130.
[0152] S410: The gate machine 130 uses the hard wallet random number, the terminal random number and the user identification to disperse the key (the root key which has not been dispersed in advance) to obtain the authentication process key (an example of the second authentication key), that is, by encrypting the user identification with the key first to obtain a first-level key, and then encrypting the hard wallet random number and the terminal random number with the first-level key to obtain the authentication process key.
[0153] In addition, in this step, the industry terminal 130 also organizes the entry information, and calculates the MAC of the entry information using the authentication process key. The entry information can include entry and exit state, entry and exit time, entry and exit station, entry and exit city and other data.
[0154] S411: The gate machine 130 sends an instruction to update the industry data (including entry information, MAC) to the hard wallet 120.
[0155] S412: The hard wallet 120 verifies the MAC sent by the gate machine 130 using the authentication process key, and after the verification is passed, the entry data is cached.
[0156] S413: The hard wallet 120 returns the execution result, for example, returns the execution success response code.
[0157] S414: The gate machine 130 calculates a MAC (denoted as MAC1) for the terminal payee account identifier, the transaction time, and the terminal number using the authentication process key, organizes and sends an authentication instruction (the instruction data includes the terminal payee account identifier, the transaction time, the terminal number, and the MAC1 information).
[0158] S415: The authentication instruction is sent to the hard wallet 120.
[0159] S416: After the hard wallet 120 receives the instruction, the MAC1 is verified using the authentication process key. After the MAC1 verification is passed, a MAC (denoted as MAC2) is calculated for the hard wallet account identifier, the terminal payee account identifier, the transaction time, and the terminal number using the authentication process key, and the cached entry information is saved to the industry file.
[0160] S417: The hard wallet 120 returns the hard wallet account identifier and the MAC2 to the gate machine 130.
[0161] S418: The gate machine 130 verifies the MAC2 using the authentication process key. After the MAC2 verification is passed, the gate is opened to allow the entry.
[0162] S419: The gate machine 130 sends the relevant transaction information (such as the hard wallet account identifier, the entry state, and other information) to the industry background 140.
[0163] Figure 5 An exemplary operation flowchart of a transaction method based on a digital currency hard wallet in a rail transit entry scenario is shown.
[0164] As shown in Figure 5 , parties participating in the transaction include the hard wallet 120, the industry terminal (gate machine) 130, and the industry background 140, in addition to the receiving and operating agency (system) 150, the interconnection platform 160, and the payment operating agency (system) 170. The operations performed by the transaction parties are described below with reference to Figure 5 . Only different operation flows are described below, and the same operations are not described herein. Figure 4
[0165] S406: The gate machine 130 determines whether the entry and exit state is normal. Since it is an entry scenario, if the entry and exit state identifier in the read industry information is an entry state, it is determined that the entry and exit state is normal.
[0166] S410’: The gate machine 130 organizes entry information and calculates a MAC for the entry information using the authentication process key. The entry information can include the entry and exit state, the entry and exit time, the entry and exit site, the entry and exit city, and the like.
[0167] S411’ The gate machine 130 sends an instruction to update industry data (including outbound information, MAC) to the hardware wallet 120.
[0168] S412’ The hardware wallet 120 verifies the MAC authentication code sent by the gate machine 130 by using the authentication process key, and after verification, caches the outbound industry data.
[0169] S416’ After the hardware wallet 120 receives the authentication instruction, it verifies MAC1 by using the authentication process key, and after MAC1 verification, it calculates MAC (denoted as MAC2) using the authentication process key on the hardware wallet account identifier, terminal payee account identifier, transaction time, and terminal number information.
[0170] S418’ The gate machine 130 verifies MAC2 by using the authentication process key.
[0171] S420: After the gate machine 130 verifies MAC2, it sends an instruction to obtain payment information, which includes payee account identifier, transaction amount, second terminal random number, industry identifier, etc.
[0172] S421: After receiving the instruction, the hardware wallet 120 increments the transaction counter ATC by 1, then generates a background transaction process key for the new ATC, and then calculates a background transaction verification code TAC for the payment information (including hardware wallet account identifier, ATC, digital currency information, transaction type, transaction index, and data in the instruction to obtain payment information)., and calculates MAC (denoted as MAC3) using the authentication process key on the payment information and TAC, and writes the cached outbound information into the industry file.
[0173] S422: The hardware wallet 120 returns the payment information, TAC, and MAC3 to the gate machine 130.
[0174] S423: The gate machine 130 verifies MAC3 by using the authentication process key, and after verification, opens the gate to release the outbound, completing the transaction service this time.
[0175] S424: The gate machine 130 sends the relevant payment information and TAC to the industry background 140.
[0176] S425: The industry background 140 sends the payment information and TAC to the receiving operating agency 150.
[0177] S426: The receiving operating agency 150 identifies the institution 170 to which the payment hardware wallet belongs through the institution identifier in the hardware wallet account identifier.
[0178] S427: The receiving operating agency 150 sends the payment information and TAC to the interconnection platform 160.
[0179] S428: The interconnection platform 160 sends the payment information and the TAC to the payment operation agency 170.
[0180] S429: The payment operation agency background 170 identifies the transaction counter ATC from the payment information, checks whether the ATC is greater than the transaction counter ATC stored in the background, rejects the transaction if it is not greater, calculates the background transaction process key using the ATC if it is greater, calculates the TAC for the payment information using the background transaction process key, compares the calculated TAC with the TAC uploaded by the hard wallet, and verifies the TAC if it is consistent. After passing the TAC, the information integrity and authenticity are confirmed, and the background stored ATC is replaced.
[0181] In addition, it can also be checked whether the transaction type in the payment information conforms to the industry scene, such as rejecting the transaction if it does not conform, then deducting the payment wallet balance according to the transaction amount, and modifying the digital currency information.
[0182] S430: The transaction result is returned to the interconnection platform 160.
[0183] S431: The interconnection platform 160 returns the transaction result to the receiving operation agency 150.
[0184] S432: The receiving operation agency 150 increases the balance of the payment wallet account according to the transaction result, and modifies the digital currency information.
[0185] S433: The receiving operation agency 150 returns the transaction result to the industry background 140.
[0186] S434: The industry background 140 records the transaction result.
[0187] It should be noted that the above application scenario is only exemplary, so as to describe one or more aspects of the present disclosure in a specific scenario, but these aspects are not necessarily required, and various modifications can be made to the application scenario. It is easy to understand that the specific application scenario can be a parking lot or a highway scenario in addition to the above rail transit system communication gate machine aspect, and the embodiments of the present disclosure are not limited.
[0188] At least some embodiments of the present disclosure also provide an electronic device. Figure 7 A schematic diagram of an electronic device 700 according to at least one embodiment of the present disclosure is shown.
[0189] As Figure 7As shown, the electronic device 700 includes one or more processors 710 and memory 720. The memory 720 includes one or more computer program modules 721. The one or more computer program modules 721 are stored in the memory 720 and configured to be executed by the processor 710, and the one or more computer program modules 721 include instructions for performing the method for transaction based on digital currency hard wallet and additional aspects thereof according to at least one embodiment of the present disclosure, which, when executed by the processor 710, can perform one or more steps of the method for transaction based on digital currency hard wallet and additional aspects thereof according to at least one embodiment of the present disclosure. The memory 720 and the processor 710 can be interconnected by a bus system and / or other form of connection mechanism (not shown). For example, the bus can be a peripheral component interconnect (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.
[0190] Exemplarily, the processor 710 can be a central processing unit (CPU), a digital signal processor (DSP), or other forms of processing units with data processing and / or program executing capabilities, such as field programmable gate array (FPGA), etc. The processor 710 can be a general purpose processor or a dedicated processor, and can control other components in the electronic device 700 to perform desired functions.
[0191] Exemplarily, the memory 720 can include any combination of one or more computer program products, which can include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. Volatile memory, for example, can include random access memory (RAM), cache memory, and / or the like. Non-volatile memory, for example, can include read only memory (ROM), hard disk, erasable programmable read only memory (EPROM), compact disc read only memory (CD-ROM), USB memory, flash memory, and / or the like. One or more computer program modules 721 can be stored on the computer-readable storage media, and the processor 710 can run the one or more computer program modules 721 to implement various functions of the electronic device 700. The computer program modules include a plurality of computer-executable instructions. Various application programs and various data used and / or generated by the application programs, etc. can also be stored in the computer-readable storage media.
[0192] For example, the electronic device 700 can further include input devices such as a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; output devices such as a liquid crystal display, a speaker, a vibrator, etc.; storage devices such as a magnetic tape, a hard disk (HDD or SDD), etc.; and communication devices such as a LAN card, a modem, etc. The communication devices can allow the electronic device 700 to perform wireless or wired communication with other devices to exchange data, perform communication processing via a network such as the Internet. Drivers are connected to the I / O interface as needed. Removable storage media such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc. are mounted on the drivers as needed, so that computer programs read out from them are installed in the storage devices as needed.
[0193] For example, the electronic device 700 can further include a peripheral interface (not shown) and the like. The peripheral interface can be various types of interfaces, such as a USB interface, a lighting interface, and the like. The communication devices can communicate with networks and other devices by wireless communication, the networks being, for example, the Internet, an intranet, and / or a wireless network such as a cellular telephone network, a wireless local area network (LAN), and / or a metropolitan area network (MAN). The wireless communication can use any of a plurality 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.
[0194] The electronic device 700 can be, for example, a system on chip (SOC) or a device including the SOC, such as a mobile phone, a tablet computer, a notebook computer, an e-book, a game console, a television, a digital photo frame, a navigator, a home appliance, a communication base station, an industrial controller, a server, or any device, and can be any data processing apparatus and combination of hardware, without limitation. The specific functions and technical effects of the electronic device 700 can be referred to the description of the transaction method based on a digital currency hard wallet and additional aspects thereof according to at least one embodiment of the present disclosure above, which will not be repeated here.
[0195] Figure 8 A schematic diagram of a computer-readable medium 800 according to at least one embodiment of the present disclosure is shown.
[0196] As shown in Figure 8 The computer readable medium 800 stores computer instructions 810 which, when executed by a processor, perform one or more steps of the method for transaction based on digital currency hard wallet and additional aspects thereof as described above.
[0197] Exemplarily, when the program code is read by the computer, the computer can execute the program code stored in the computer storage medium to perform one or more steps of the method for transaction based on digital currency hard wallet and additional aspects thereof according to at least one embodiment of the present disclosure, for example.
[0198] Exemplarily, the computer readable medium can include a memory card of a smart phone, a memory component of a tablet computer, a hard disk of a personal computer, a random access memory (RAM), a read only memory (ROM), an erasable programmable read only memory (EPROM), a portable compact disc read only memory (CD-ROM), a flash memory, and other computer readable medium or any combination thereof.
[0199] At least part of the embodiments in the specification are described in a progressive manner, and each embodiment focuses on the difference from other embodiments. The same or similar parts between embodiments can be referred to each other.
[0200] It should be noted that, in this document, the relationship terms such as first, second and the like are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply that there is any such actual relationship or order between these entities or operations. The terms "include", "contain" or any other variants thereof are intended to cover non-exclusive inclusion, so that the process, method, article or equipment including a series of elements not only includes those elements, but also further includes other elements not explicitly listed, or further includes elements inherent to such process, method, article or equipment. Without more limitations, the elements defined by the statement "include" do not exclude the presence of other same elements in the process, method, article or equipment including the elements.
[0201] For the present disclosure, the following points need to be explained:
[0202] (1) The drawings of the embodiments of the present disclosure only involve the structures related to the embodiments of the present disclosure, and other structures can refer to the general design.
[0203] (2) In the case of no conflict, the embodiments of the present disclosure and the features in the embodiments can be combined with each other to obtain new embodiments.
[0204] The above-described exemplary embodiments of the present disclosure are merely for the purpose of illustration and are not intended to limit the scope of the present disclosure, which is defined by the appended claims.
Claims
1. A transaction method based on a digital currency hardware wallet, wherein, The method includes: The industry terminal sends a feature negotiation request to the hardware wallet in the interaction. The feature negotiation request includes the industry scenario type, industry terminal type, delayed transaction mode, and feature negotiation parameters of the security algorithm supported by the hardware wallet. In response to receiving a successfully matched feature negotiation result determined by the hardware wallet based on the feature negotiation request and its own features, the industry terminal generates a first authentication key using the security algorithm; The industry terminal initiates a two-way authentication verification to the hardware wallet and uses the first authentication key to verify the information sent by the hardware wallet. The hardware wallet uses the second authentication key generated by the security algorithm to verify the information sent by the industry terminal. In response to the successful two-way authentication verification, the industry terminal performs an industry data rewriting operation on the hardware wallet, and executes the transaction service upon completion of the rewriting operation; and After the transaction service is completed, the industry terminal will send the transaction information to the associated operating institution system through the industry back-end system so that the associated operating institution system can process the payment transaction based on the transaction information. The transaction information includes the transaction amount calculated by the industry terminal based on the industry data.
2. The transaction method according to claim 1, wherein, The method further includes: In response to a successful feature negotiation result, the industry terminal obtains industry data and user identifier from the hardware wallet, and determines whether a transaction anomaly has occurred based on the industry data and user identifier.
3. The transaction method according to claim 1 or 2, wherein, The first authentication key and the second authentication key are the same; The first authentication key is obtained by distributing the first key pre-stored in the industry terminal through M+N levels, where M≥1 and N≥1; The second authentication key is obtained by distributing the second key pre-stored in the hard wallet through N-level distribution, and the second key is obtained by distributing the first key through M-level distribution.
4. The transaction method according to claim 3, wherein, The industry terminal receives the hardware wallet random number sent by the hardware wallet, and uses the pre-stored first key to disperse the user identifier, the hardware wallet random number and the terminal random number to obtain the first authentication key; The hardware wallet receives a key identifier and a terminal random number sent by the industry terminal, and searches for a second key based on the key identifier. It then uses the second key to disperse the hardware wallet random number and the terminal random number to generate the second authentication key. Wherein, the first key is the upper-level key of the hardware wallet, and the second key is the key obtained by distributing the upper-level key using the user identifier.
5. The transaction method according to claim 1, wherein, The steps of the two-way authentication verification include: The industry terminal receives the first information and the first MAC value sent by the hardware wallet, and verifies the first MAC value using the first authentication key and the first information. The first MAC value is calculated by the hardware wallet using the second authentication key on the first information. The hardware wallet receives the second information and the second MAC value sent by the industry terminal, and uses the second authentication key and the second information to verify the second MAC value, wherein the second MAC value is calculated by the industry terminal using the first authentication key on the second information.
6. The transaction method according to claim 1, wherein, Also includes: The industry terminal sends an instruction to the hardware wallet to obtain transaction information, the instruction including the transaction amount; The industry terminal obtains transaction information returned in response to the instruction from the hardware wallet. The transaction information includes payment information, transaction verification code, and MAC value. The industry terminal uses the first authentication key to verify the MAC value in the transaction information. After the MAC value verification is successful, the payment information and transaction verification code are sent to the associated operating institution system through the industry back-end system at a predetermined time, so that the associated operating institution system can verify the transaction verification code and execute the payment transaction processing according to the payment information after the verification is successful.
7. The transaction method according to claim 6, wherein, The associated operating organization system includes a first operating organization system and a second operating organization system; The first operating institution system determines whether the transaction is an internal transaction based on the transaction information. Based on the determination result, it chooses to either execute the payment transaction processing by the first operating institution system or forward the transaction information to the second operating institution system via the interconnection platform to execute the payment transaction processing.
8. The transaction method according to claim 7, wherein, The first or second operating system performs payment transaction processing through the following steps: Determine whether the transaction counter value in the payment information meets the conditions. If it does, verify the transaction verification code based on the transaction counter value and the payment information. If the verification passes, store the transaction counter value. Reduce the balance of the hard wallet according to the transaction amount in the payment information.
9. A transaction system based on a digital currency hard wallet, the transaction system comprising: Hardware wallets, industry terminals, industry back-end systems, and related operating agency systems, among which, The industry terminal is configured to send a feature negotiation request to the hardware wallet during the interaction. The feature negotiation request includes the industry scenario type, industry terminal type, delayed transaction mode, and feature negotiation parameters for the security algorithm supported by the hardware wallet. In response to a successful feature negotiation result, a first authentication key is generated using the security algorithm to verify the information sent by the hardware wallet. In response to a successful two-way authentication verification, an industry data rewriting operation is performed on the hardware wallet. Upon completion of the rewriting operation, the transaction service is executed. After the transaction service is completed, the transaction information is sent to the industry backend system. The transaction information includes the transaction amount calculated by the industry terminal based on the industry data. The hardware wallet is configured to support delayed transaction mode and security algorithm. It determines the feature negotiation result based on the received feature negotiation request and its own features. In response to the successfully matched feature negotiation result, it uses the security algorithm to generate a second authentication key to verify the information sent by the industry terminal. In response to the successful two-way authentication verification, it rewrites the industry data or sends transaction information to the industry terminal. The industry back-end system is configured to record the transaction information and send the transaction information to the associated operating institution system; The associated operating institution system is configured to process payment transactions based on the transaction information.
10. The transaction system according to claim 9, wherein, The industry terminal is also configured to, in response to a successful feature negotiation result, obtain industry data and user identifier from the hardware wallet, and determine whether a transaction anomaly has occurred based on the industry data and user identifier.
11. The transaction system according to claim 9 or 10, wherein, The first authentication key and the second authentication key are the same; The first authentication key is obtained by distributing the first key pre-stored in the industry terminal through M+N levels, where M≥1 and N≥1; The second authentication key is obtained by distributing the second key pre-stored in the hard wallet through N-level distribution, and the second key is obtained by distributing the first key through M-level distribution.
12. The transaction system according to claim 10 or 11, wherein, The industry terminal is also configured to receive a hardware wallet random number sent by the hardware wallet, and use a pre-stored first key to disperse the user identifier, the hardware wallet random number and the terminal random number to obtain a first authentication key; The hardware wallet is further configured to receive a key identifier and a terminal random number sent by the industry terminal, and to find a second key based on the key identifier, and to use the second key to disperse the hardware wallet random number and the terminal random number to generate the second authentication key; Wherein, the first key is the upper-level key of the hardware wallet, and the second key is the key obtained by distributing the upper-level key using the user identifier.
13. The transaction system according to claim 9, wherein, The industry terminal is further configured to receive first information and a first MAC value sent by the hardware wallet, verify the first MAC value using the first authentication key and the first information, and calculate a second MAC value using the first authentication key on the second information. The hardware wallet is also configured to receive the second information and the second MAC value sent by the industry terminal, and to verify the second MAC value using the second authentication key and the second information; And use the second authentication key to calculate the first MAC value based on the first information.
14. The transaction system according to claim 9, wherein, The industry terminal is also configured to send an instruction to the hardware wallet to obtain transaction information, the instruction including the transaction amount; and to obtain transaction information returned by the hardware wallet in response to the instruction, the transaction information including payment information, transaction verification code and MAC value; The first authentication key is used to verify the MAC value in the transaction information, and after the MAC value verification is successful, the payment information and transaction verification code are sent to the industry back-end system at a predetermined time. The industry back-end system is configured to send the payment information and transaction verification code to the associated operating institution system; The associated operating institution system is also configured to verify the transaction verification code and, upon successful verification, execute payment transaction processing based on the payment information.
15. The transaction system according to claim 14, wherein, The associated operating organization system includes a first operating organization system and a second operating organization system; The first operating institution system is configured to determine whether the transaction is an internal transaction based on the transaction information, and select, based on the determination result, whether to execute the payment transaction processing by the first operating institution system or to forward the transaction information to the second operating institution system via the interconnection platform to execute the payment transaction processing.
16. The transaction system according to claim 15, wherein, The first operating agency system or the second operating agency system is further configured as follows: Determine whether the transaction counter value in the payment information meets the conditions. If it does, verify the transaction verification code based on the transaction counter value and the payment information. If the verification passes, store the transaction counter value. Reduce the balance of the hard wallet according to the transaction amount in the payment information.
17. An electronic device, characterized in that, include: One or more processors; Storage device for storing one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the method as described in any one of claims 1-8.
18. A computer-readable medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the method as described in any one of claims 1-8.
Citation Information
Cited By
Hardware wallet online interest settlement method
CN121581980A
