Electronic wallet deposit method, device, deposit chip card and deposit system
By generating card circle storage confirmation code and QR code, combined with server comparison and hash encryption, the problem of offline electronic wallet chip cards cannot be recharged anytime and anywhere, and a convenient and secure recharge process is achieved.
Patent Information
- Application Number
- CN202210502184.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-10
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2042-05-10
AI Technical Summary
In the prior art, the recharge/circle storage of offline electronic wallet chip cards requires a mobile terminal with contact/contactless IC card reader or NFC function at a fixed location, resulting in users being unable to recharge anytime and anywhere, and the recharge failure rate is high, affecting the convenience and security of use.
By generating card Circle Confirmation Code and Circle Confirm QR Code, the user terminal scans and sends it to the Circle Confirmation Server for consistency comparison, receives the verification code generated by the server and updates the local electronic wallet balance, combining hash encryption operations and identity authentication to ensure the security and convenience of recharge.
It realizes the convenience and security of recharge e-wallets at any location, reduces the recharge failure rate, and improves information security.
Smart Images

Figure CN114757673B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of information security and can also be used in the financial field. Specifically, it relates to an electronic wallet deposit method, device, deposit chip card and deposit system. Background Art
[0002] Currently, most of the existing electronic wallets with contactless electronic wallet chip cards on the market, including but not limited to (bank card electronic cash, bus cards, etc.) have offline payment functions. The consumption funds of their offline electronic wallets need to be recharged to the security chip through offline deposit. To ensure that the wallet balance of the chip is not illegally changed, when the chip performs a recharge action, it needs to execute a recharge instruction that can pass the chip security verification before the chip offline balance update is allowed to be completed.
[0003] Under existing technical conditions, recharging / top-up of offline electronic wallet chip cards generally requires reliance on recharging terminals equipped with dedicated contact / contactless IC card readers or mobile terminals with NFC functionality. However, recharging terminals are typically deployed in fixed locations, resulting in insufficient device coverage and preventing users from recharging their electronic wallet chip cards anytime, anywhere. Furthermore, many mobile terminals currently lack NFC functionality, preventing these users from independently recharging their offline electronic wallets using ordinary mobile phones. Furthermore, when recharging existing contactless electronic wallet security chip products through contactless terminals, the movement of the card creates uncertainty in the command execution environment on the recharging terminal, leading to recharge failures and situations where the balance in the chip offline wallet is less than the balance in the backend offline account. These factors significantly inconvenience offline electronic wallet chip card users. Summary of the Invention
[0004] In response to the problems in the prior art, the present application provides an electronic wallet top-up method, device, top-up chip card and top-up system, which can effectively improve the information security and ease of use of the electronic wallet.
[0005] In order to solve at least one of the above problems, the present application provides the following technical solutions:
[0006] In a first aspect, the present application provides an electronic wallet loading method, comprising:
[0007] Receive a user's credit request, generate a card credit confirmation code and a credit QR code corresponding to the card credit confirmation code based on the credit request, and display them. After the user's terminal scans the credit QR code, the credit request is sent to the corresponding credit server. The credit server parses the credit request, generates a server credit confirmation code locally, and compares it with the card credit confirmation code in the credit request. If the comparison is successful, a server credit verification code is generated according to a verification code generation rule and returned to the user's terminal for display.
[0008] The server deposit verification code input by the user is received, a card deposit verification code is generated according to the same verification code generation rule as that of the deposit server, and a consistency comparison is performed between the card deposit verification code and the server deposit verification code. After the consistency comparison is passed, a local electronic wallet balance update operation is performed according to the deposit amount in the deposit request.
[0009] Furthermore, the receiving of a user's deposit request, generating a card deposit confirmation code and a deposit QR code corresponding to the card deposit confirmation code according to the deposit request, and displaying the generated code, includes:
[0010] The dispersion factor is formed by combining the count of the local deposit counter and the deposit random number;
[0011] The character string of the dispersion factor is dispersed according to the local card loading key to obtain the first calculation factor of the confirmation code;
[0012] Receive a user's deposit request, and obtain a second calculation factor of the confirmation code based on the deposit trigger timestamp and deposit amount in the deposit request;
[0013] A hash encryption operation is performed based on the first calculation factor of the confirmation code and the second calculation factor of the confirmation code to generate a card deposit confirmation code and a corresponding deposit QR code for display.
[0014] Furthermore, the generating of the card top-up verification code according to the same verification code generation rule as that of the top-up server includes:
[0015] Determine the dispersion factor based on the e-wallet card number and the random number of the deposit;
[0016] A hash encryption operation is performed based on the dispersion factor, the deposit trigger timestamp in the deposit request, and the deposit amount. The hash encryption operation result is converted into a digital string and the number in the set position is taken as the card deposit verification code.
[0017] Furthermore, after the credit loading server parses the credit loading request, the following steps are performed:
[0018] The loading server performs identity authentication on the electronic wallet card number and / or cardholder information in the loading request, and returns a loading failure signal if the identity authentication fails.
[0019] In a second aspect, the present application provides an electronic wallet loading device, comprising:
[0020] A loading request module is configured to receive a loading request from a user, generate a card loading confirmation code and a loading QR code corresponding to the card loading confirmation code based on the loading request, and display them. After the user's terminal scans the loading QR code, the loading request is sent to a corresponding loading server. The loading server then parses the loading request, generates a server loading confirmation code locally, and compares the locally generated server loading confirmation code with the card loading confirmation code in the loading request. If the consistency is successful, the server loading verification code is generated according to a verification code generation rule and returned to the user's terminal for display.
[0021] The load execution module is configured to receive the server load verification code input by the user, generate a card load verification code according to the same verification code generation rules as those of the load server, perform a consistency comparison between the card load verification code and the server load verification code, and execute a local electronic wallet balance update operation according to the load amount in the load request if the comparison passes.
[0022] In a third aspect, the present application provides a chip card for loading funds, comprising: a card base, a display device arranged on the card base, a security chip arranged in the card base that can implement the above-mentioned electronic wallet loading method, a power supply system, and a pressure-sensitive button.
[0023] The pressure-sensitive button is signal-connected to the security chip, and is used to trigger a user's credit request and receive a server credit verification code input by the user.
[0024] Furthermore, the security chip includes an electronic wallet module with a built-in electronic wallet, a loading control module for generating a card loading confirmation code and two loading digits and controlling the loading of the electronic wallet module, a key file for storing a card loading key, and a Java card and its COS. The security chip is electrically connected to the display device and the pressure-sensitive button respectively.
[0025] In a fourth aspect, the present application provides a loading system, comprising: the loading chip card as described above, a user terminal, and a loading server signal-connected to the user terminal;
[0026] It also includes a mobile base station for signal connection between the user terminal and the credit server.
[0027] In a fifth aspect, the present application provides an electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the electronic wallet loading method when executing the program.
[0028] In a sixth aspect, the present application provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the steps of the electronic wallet loading method are implemented.
[0029] In a seventh aspect, the present application provides a computer program product, comprising a computer program / instruction, which, when executed by a processor, implements the steps of the electronic wallet loading method.
[0030] As can be seen from the above technical solution, the present application provides an e-wallet top-up method, device, top-up chip card and top-up system, which receive a user's top-up request through the top-up chip card, generate a card top-up confirmation code and a top-up QR code corresponding to the card top-up confirmation code according to the top-up request and display them, receive a server top-up verification code input by the user, generate a card top-up verification code according to the same verification code generation rule as the top-up server, and compare the card top-up verification code with the server top-up verification code for consistency. After the comparison is passed, the local e-wallet balance is updated according to the top-up amount in the top-up request, which can effectively improve the information security and ease of use of the e-wallet. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0032] Figure 1 This is one of the flow charts of the electronic wallet deposit method in the embodiment of the present application;
[0033] Figure 2 This is a second flow chart of the electronic wallet deposit method in an embodiment of the present application;
[0034] Figure 3 This is the third flow chart of the electronic wallet deposit method in the embodiment of the present application;
[0035] Figure 4 This is a structural diagram of an electronic wallet deposit device in an embodiment of the present application;
[0036] Figure 5This is a diagram showing the external structure of a chip card used in a specific embodiment of the present application;
[0037] Figure 6 This is a diagram of the internal structure of a chip card used in a specific embodiment of the present application;
[0038] Figure 7 This is a structural diagram of a security chip in a specific embodiment of the present application;
[0039] Figure 8 This is a schematic diagram of the QR code display of a chip card for depositing funds in a specific embodiment of the present application;
[0040] Figure 9 This is a schematic diagram of the process of generating a QR code for a chip card in a specific embodiment of the present application;
[0041] Figure 10 This is a schematic diagram of a process for generating a verification code for a deposit in a specific embodiment of the present application;
[0042] Figure 11 Schematic diagram of a loading system in a specific embodiment of the present application;
[0043] Figure 12 Schematic diagram of the structure of the electronic device in the embodiment of the present application. DETAILED DESCRIPTION
[0044] To make the purpose, technical solutions, and advantages of the embodiments of this application more clear, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0045] The acquisition, storage, use, and processing of data in this application's technical solution comply with relevant national laws and regulations.
[0046] Considering the existing technical conditions, recharging / top-up of offline electronic wallet chip cards generally requires relying on recharging terminals with dedicated contact / contactless IC card readers, or mobile terminals with NFC functions. However, in general, recharging terminals are deployed in fixed locations, and the equipment coverage is insufficient, so users cannot recharge electronic wallet chip cards anytime and anywhere; on the other hand, many mobile terminals currently do not have NFC functions, and these users cannot use ordinary mobile phones to independently recharge offline electronic wallets; furthermore, when existing contactless electronic wallet security chip products are recharged on contactless terminals, the instruction execution environment on the recharging terminal is uncertain due to the movement of the card, which may lead to recharge failures and chip disconnection. In cases where the balance in the mobile wallet is less than the balance in the backend offline account, the present application provides an e-wallet top-up method, device, top-up chip card, and top-up system. The method receives a user's top-up request through the top-up chip card, generates a card top-up confirmation code and a top-up QR code corresponding to the card top-up confirmation code according to the top-up request, and displays them. The method receives a server top-up verification code input by the user, generates a card top-up verification code according to the same verification code generation rules as the top-up server, and compares the card top-up verification code with the server top-up verification code for consistency. After the comparison is successful, the local e-wallet balance is updated according to the top-up amount in the top-up request, which can effectively improve the information security and ease of use of the e-wallet.
[0047] In order to effectively improve the information security and convenience of electronic wallets, this application provides an embodiment of an electronic wallet top-up method, see Figure 1 The electronic wallet top-up method specifically includes the following contents:
[0048] Step S101: Receive a user's credit request, generate a card credit confirmation code and a credit QR code corresponding to the card credit confirmation code based on the credit request, and display them. After the user's terminal scans the credit QR code, the credit request is sent to the corresponding credit server. The credit server parses the credit request, generates a server credit confirmation code locally, and compares it with the card credit confirmation code in the credit request. If the comparison is successful, a server credit verification code is generated according to a verification code generation rule and returned to the user's terminal for display.
[0049] Step S102: Receive the server top-up verification code input by the user, generate a card top-up verification code according to the same verification code generation rules as the top-up server, and compare the card top-up verification code with the server top-up verification code for consistency. If the comparison is successful, perform a local e-wallet balance update operation according to the top-up amount in the top-up request.
[0050] Optionally, first, the user of this application chooses to press the deposit button on the electronic wallet chip card, and the electronic wallet chip card switches to the deposit state. According to the card's deposit record, the last deposit confirmation code LastCLAC is recorded. If the last deposit confirmation code LastCLAC is empty, it is determined that the last deposit of the card was unsuccessful; if the card status code is that the deposit has been successful, proceed to the next step.
[0051] Then, the card switches to the loading amount input state, and the electronic display screen of the electronic wallet chip card displays the input loading amount and the next operation prompt, waiting for the user to enter the loading amount. The user enters the card loading amount through the card numeric keypad according to the prompts on the electronic wallet chip card display screen. The status after input is shown in the figure below. Figure 8 As shown, the user presses the OK button to proceed to the next step.
[0052] Optionally, this application receives the deposit amount entered in the previous step, obtains relevant information of the e-wallet module, including but not limited to the card number PAN, deposit counter ALTC (App Load Transaction Code), deposit amount AMT (Amount), card deposit random number RandomCode, last deposit confirmation code LLAC (Last Load Affirm Code), deposit service address ServiceURL, deposit timestamp TimeStamp and other information, generates a QR code for this deposit, and outputs the QR code information to the e-wallet chip card display screen, prompting the user to scan the QR code to complete the deposit operation.
[0053] At the same time, a current deposit record is added to the internal deposit record of the card. The record content includes but is not limited to the deposit amount AMT (Amount), card deposit random number RandomCode, deposit timestamp TimeStamp and other information. The last deposit confirmation code LLAC is registered as 01 unknown.
[0054] Optionally, the user of this application uses a mobile APP with a scanning function to scan and identify the QR code displayed on the electronic wallet chip card. The smart mobile terminal parses the QR code, opens and jumps to the load service of LoadURL. The load server receives the load request, interprets and obtains the card number PAN, load counter ALTC, load amount AMT, last load confirmation code LLAC, load timestamp TimeStamp, and card load confirmation code (CLAC) from the load URL. Use the server-side LoadKey and the card number PAN to generate the PanLoadKey of the PAN, and generate a message verification code, which is compared with the CLAC sent in the message. If the results are consistent, the transaction continues.
[0055] Optionally, the application's top-up server queries the card's last top-up record based on the electronic wallet chip card PAN transaction. Based on the last top-up record, the server verifies the last top-up confirmation code (LLAC) sent by the card. If the LLAC indicates a successful top-up, the server confirms the last top-up record. If the LLAC indicates a failed top-up, the server initiates a reverse transaction for the last top-up record, completing the offline account balance recovery or top-up refund process.
[0056] Optionally, the application's loading server determines the cardholder authentication method based on the source of the loaded funds as specified by the PAN of the e-wallet chip card. If the loaded funds are used from an account associated with the card number PAN, the cardholder is authenticated according to the standard cardholder authentication process. If the top-up funds come from a payment account other than the PAN, the user is directed to pay for the load request. After the cardholder's identity is authenticated or the user successfully pays the top-up amount, the loading server generates a 2-digit server loading random number (ServerRandomCode) and an 8-digit server loading verification code (SLVC).
[0057] In another embodiment of the present application, the loading server of the present application registers the loading record information including but not limited to the card number PAN, loading counter ALTC, loading amount AMT, card loading random number RandomCode, and server loading random number ServerRandomCode.
[0058] Optionally, after successfully scanning the QR code and obtaining the deposit verification code, the user can press the OK button according to the card screen prompt to enter the card deposit verification code entry process. The user uses the card's numeric keys to enter the generated verification code and press the OK button. If the user does not press the OK button within a certain period of time, the card screen will automatically close.
[0059] Optionally, after receiving the server-side load verification code SLVC entered by the user, the card of this application reads the latest load record of the card, and obtains the load amount AMT (Amount), card load random number RandomCode, load counter ALTC, load timestamp TimeStamp and other elements from the electronic wallet and its load record from the input verification code. The leftmost two digits are intercepted from the server-side load verification code SLVC as the server-side load random number ServerRandomCode, and the card load verification code CLVC (Card Load Verify Code) is generated. The CLVC is compared with the SLVC. If the card load verification code is verified to be consistent with the server load verification code, the balance of the electronic wallet is added, and the card transaction calculator is synchronously updated to update the card's load confirmation code CLVC in the load record.
[0060] Optionally, the card in this application obtains information including but not limited to the card number PAN, load counter ALTC, load amount AMT, card load confirmation code CLAC, load service address ServiceURL, last load timestamp TimeStamp, etc. based on the last load record read, and regenerates the load QR code using the last transaction information and prompts the user to scan the code, such as Figure 8 shown.
[0061] Optionally, the user of this application uses a mobile APP to scan the QR code and jump to the credit-collection service. The credit-collection service module determines that the relevant data of the credit-collection request already exists in the system and has generated a server-side credit-collection verification code SLVC, then directly returns to display SLVC; if the server confirms that the credit-collection record does not exist, it completes the deduction of the credit-collection fund account according to the user identity authentication and payment process, adds a credit-collection offline account, and generates a server-side credit-collection verification code according to a credit-collection verification code generation / verification method, and displays it to the user.
[0062] As can be seen from the above description, the electronic wallet loading method provided in the embodiment of the present application can receive a user's loading request through a loading chip card, generate a card loading confirmation code and a loading QR code corresponding to the card loading confirmation code according to the loading request and display them, receive a server loading verification code input by the user, generate a card loading verification code according to the same verification code generation rule as the loading server, and compare the card loading verification code with the server loading verification code for consistency. After the comparison is passed, the local electronic wallet balance is updated according to the loading amount in the loading request, which can effectively improve the information security and ease of use of the electronic wallet.
[0063] In order to accurately generate the QR code, in one embodiment of the electronic wallet deposit method of the present application, see Figure 2 and Figure 9 , the above step S101 may further specifically include the following contents:
[0064] Step S201: A dispersion factor is formed by combining the count of the local credit counter and the credit random number.
[0065] Step S202: The character string of the dispersion factor is dispersed according to the local card loading key to obtain a first calculation factor of the confirmation code.
[0066] Step S203: Receive the user's loading request, and obtain the second calculation factor of the confirmation code according to the loading trigger timestamp and loading amount in the loading request.
[0067] Step S204: performing a hash encryption operation based on the first calculation factor of the confirmation code and the second calculation factor of the confirmation code to generate a card top-up confirmation code and a corresponding top-up QR code for display.
[0068] Optionally, the loading control module of this application obtains information including but not limited to card number PAN, loading counter ALTC (App Load Transaction Code), loading amount AMT (Amount), card loading random number RandomCode, last loading confirmation code LLAC (Last Load Affirm Code), loading service address ServiceURL, loading timestamp TimeStamp, etc. by reading the basic card information and last loading record of the electronic wallet module.
[0069] Then, this application uses ALTC and the card random number to be spliced, and fills it with zeros to 16 digits as a dispersion factor, and uses the card storage key PanLoadKey to disperse the string to obtain SessionLoadKey.
[0070] SessionLoadKey=ENC(PanLoadKey)[ALTC||RandomCode].
[0071] Next, this application concatenates the transaction elements, including the time factor (TimeStamp) || Amount Deposited (AMT) || Last Deposit Confirmation Code (LLAC), as the calculation factor, and pads the left with zeros to 256 bits. The generated calculation factors are hashed using an irreversible hash algorithm, denoted as H, to obtain an irreversible hash value.
[0072] Calculation factor = TimeStamp||AMT||LLAC
[0073] Hash value = H (calculation factor)
[0074] Finally, this application uses the generated process key SessionLoadKey to encrypt the generated hash value to generate the encrypted result card loading confirmation code CLAC. The algorithm of the card loading application ciphertext includes but is not limited to 3DES, SM4 and other Mac calculation methods.
[0075] CLAC = ENC (SessionLoadKey) ['hash value']
[0076] Optionally, the above information is concatenated to form a loading URL, namely, the string "LoadURL=$ServiceURL?PAN=XXXX&AMT=xxx.00&TimeStamp=TTTTTTTTTT&ALTC=XX XXX&RandomCode=xxxxx&LLAC=XXXXX&CLAC=XXXXXXXXX," to form the final service request URL. The LoadURL generated in this step is then encoded into a QR code using a common QR code image encoding algorithm.
[0077] In order to accurately generate the card top-up verification code, in one embodiment of the electronic wallet top-up method of this application, see Figure 3 and Figure 10 , and can also include the following:
[0078] Step S301: Determine a dispersion factor based on the electronic wallet card number and the loading random number.
[0079] Step S302: performing a hash encryption operation based on the dispersion factor, the load trigger timestamp in the load request, and the load amount, converting the hash encryption operation result into a digital string, and taking the number in the set position as the card load verification code.
[0080] Optionally, the application's deposit server uses the e-wallet card number (PAN) as a dispersion factor when generating the deposit verification code, and encrypts the PAN with the VerifyKey to obtain the PanVerifyKey. During card verification, since the card key is already the PanVerifyKey, this step is not required.
[0081] PanVerifyKey=ENC(VerifyKey)['PAN']
[0082] Then, this application uses ALTC and the server random number spliced, padded with zeros to 16 bits, as a dispersion factor, and encrypts it with PanVerifyKey to obtain SessionVerifyKey.
[0083] SessionVerifyKey=ENC(PanVerifyKey)[ALTC||ServerRandomCode]
[0084] Next, this application concatenates the transaction elements, including the time factor (TimeStamp) || Amount Deposited (AMT) || Service Verification Result (SLRC), as the calculation factor, and pads the left with zeros to 256 bits. The generated calculation factors are hashed using an irreversible hash algorithm, denoted as H, to obtain an irreversible hash value.
[0085] Calculation factor = TimeStamp||AMT||SLRC
[0086] Hash value = H (calculation factor)
[0087] Optionally, this application can use the process key SessionVerifyKey generated above to encrypt the generated hash value to generate an encrypted result BLOCK:
[0088] BLOCK = ENC (process key) ['hash value']
[0089] Optionally, select hexadecimal characters A through F from BLOCK, subtract 10 from each character to convert them into a decimal digit string, and insert them back into the corresponding position to obtain a pure numeric BLOCK H. Use ServerRandomCode modulo 16 to obtain a result as Position. Starting from the Position position in BLOCK H, select 6 digits from left to right. If there are fewer than 6 digits, continue to select from position 0 until the number reaches 6.
[0090] BLOCK NUM=SUB(BLOCK H, POSITION, 6)
[0091] Deposit verification code = ServerRandomCode||BLOCK S
[0092] In order to accurately perform identity authentication, in one embodiment of the electronic wallet loading method of the present application, the following contents may also be specifically included:
[0093] The loading server performs identity authentication on the electronic wallet card number and / or cardholder information in the loading request, and returns a loading failure signal if the identity authentication fails.
[0094] Optionally, the application's loading server determines the cardholder authentication method based on the source of the loaded funds as specified by the PAN of the e-wallet chip card. If the loaded funds are used from an account associated with the card number PAN, the cardholder is authenticated according to the standard cardholder authentication process. If the top-up funds come from a payment account other than the PAN, the user is directed to pay for the load request. After the cardholder's identity is authenticated or the user successfully pays the top-up amount, the loading server generates a 2-digit server loading random number (ServerRandomCode) and an 8-digit server loading verification code (SLVC).
[0095] In order to effectively improve the information security and ease of use of the electronic wallet, the present application provides an embodiment of a chip card for implementing all or part of the content of the electronic wallet loading method, see Figure 4 The chip card specifically contains the following contents:
[0096] The loading request module 10 is configured to receive a loading request from a user, generate a card loading confirmation code and a loading QR code corresponding to the card loading confirmation code according to the loading request, and display them. After the user's terminal scans the loading QR code, the loading request is sent to a corresponding loading server. The loading server then parses the loading request, generates a server loading confirmation code locally, and compares the locally generated server loading confirmation code with the card loading confirmation code in the loading request. If the consistency is successful, the server loading verification code is generated according to a verification code generation rule and returned to the user's terminal for display.
[0097] The load execution module 20 is configured to receive the server load verification code input by the user, generate a card load verification code according to the same verification code generation rules as those of the load server, perform a consistency comparison between the card load verification code and the server load verification code, and, if the consistency is successful, execute an operation to update the local electronic wallet balance according to the load amount in the load request.
[0098] As can be seen from the above description, the chip card provided in the embodiment of the present application can receive a user's loading request through the chip card, generate a card loading confirmation code and a loading QR code corresponding to the card loading confirmation code according to the loading request, and display them, receive a server loading verification code input by the user, generate a card loading verification code according to the same verification code generation rules as the loading server, and compare the card loading verification code with the server loading verification code for consistency. After the comparison is passed, the local electronic wallet balance is updated according to the loading amount in the loading request, which can effectively improve the information security and ease of use of the electronic wallet.
[0099] For further explanation of this scheme, see Figure 5 and Figure 6 The present application also provides a chip card for loading funds, which specifically includes the following contents: a card base, a display device arranged on the card base, a security chip arranged in the card base that can implement the above-mentioned electronic wallet loading method, a power supply system and a pressure-sensitive button.
[0100] The pressure-sensitive button is signal-connected to the security chip, and is used to trigger a user's credit request and receive a server credit verification code input by the user.
[0101] Optional, see Figure 5 The front side consists of security chip contacts 11, display screen 12, pressure-sensitive buttons 13, and a printed area. The card base can be a PVC card, which is widely used in production. The battery can be a wireless rechargeable thin-film battery or a solar cell, directly laminated and encapsulated on the front or back of the card device. The pressure-sensitive buttons are numeric keys with preset function keys such as a numeric keypad, delete, confirm, and transfer. The remaining blank area is a printed area, where relevant information such as the card number, network access identifier, and application identifier are printed in accordance with industry requirements.
[0102] Optional, see Figure 6 The internal structure consists of core modules such as a thin-film battery assembly 14, a security chip 15, a clock and control circuit 16, a display control circuit 17, a pressure-sensitive button circuit 18, and a contactless communication coil 19. The thin-film battery assembly 14, the security chip 15, the clock and control circuit 16, the display controller 17, and the pressure-sensitive button 18 are all connected via an integrated circuit and packaged on a PCV card base.
[0103] The display screen 12 is used to display the deposit reminder information, deposit QR code and the input deposit amount. This product can choose to use, including but not limited to, electronic paper readers (ELNK), low-power LCDs, etc. as the display screen.
[0104] The thin-film battery assembly 14 includes a charging controller, an inverter, a battery and a supporting integrated circuit to form an internal power supply system of the card, providing power for the dynamic display signature strip 11, the clock and control circuit 16, the security chip 13, the display controller 17, the pressure-sensitive button circuit 18, etc. The thin-film battery assembly of this product can be charged by, but not limited to, solar energy, NFC and other charging methods.
[0105] The security chip 15 is the core of the electronic wallet chip card, and the electronic wallet module inside it is the functional core of the electronic wallet chip card for recharging and offline consumption. The internal module structure is detailed in Figure 3 shown.
[0106] The clock and control circuit 16 is the main control core circuit of the smart chip card, responsible for the entire smart chip card logic control, data calculation, display screen, keyboard and other peripheral scheduling, various internal / external instructions reception and processing, etc.
[0107] The display screen 12 and the display control circuit 17 constitute a display module of the chip card, which provides the chip card with functions such as deposit operation prompts, deposit QR code display, and deposit input echo.
[0108] The pressure-sensitive button 13 and the pressure-sensitive button circuit 18 constitute the input module of the chip card, providing a trigger for the chip card to transfer the funds and serving as the input device of the chip card, which can be used to input elements such as the transfer amount and the transaction verification code.
[0109] See also Figure 7 The security chip 15 includes a set of Java card-based hardware modules and its COS 154, as well as components such as an electronic wallet module 151, a transfer control module 152, and a key module 153.
[0110] The electronic wallet module 151 is a secure chip application with an offline digital wallet designed to meet offline payment requirements. This wallet features a dedicated offline balance storage space, which deducts the offline balance upon purchase and adds value when the balance is insufficient. The QR code loading / recharging method provided in this patent is applicable to electronic wallet chip cards including, but not limited to, electronic cash applications and electronic wallet applications in the financial industry with electronic wallet features, as well as any other industry wallet requiring offline balance loading / recharging.
[0111] The load control module 152 is a dedicated module provided by the present invention for recharging the balance of the electronic wallet module 151. This module provides functions such as loading amount entry, loading QR code generation, loading verification code entry, loading verification code verification, and electronic wallet loading. Based on the entered loading amount, this module uses the loading key PanLoadKey to generate a loading QR code. This module also implements a loading QR code generation method. After scanning the code and completing the loading, the mobile application receives the server-side loading verification code entered by the card, uses a loading verification code generation method provided by the present invention to generate a card loading verification code, verifies the server-side loading verification code, and performs operations such as increasing the electronic wallet's offline balance.
[0112] The key file 153 is key data stored in the sensitive data area of the security chip module 15. The keys stored in this area include but are not limited to the card loading key PanLoadKey and the loading verification key PanVerifyKey. The stored key data cannot be read and can only be updated under security control conditions and used by calculation calls in Java card internal applications.
[0113] The Java Card hardware module and its COS 154 are the basic architecture of the security chip module used in the present invention. The security chip module that meets this requirement can be used as an offline transaction chip card in the financial industry and any other industry.
[0114] For further explanation of this scheme, see Figure 11 The present application also provides a cash-in system, which specifically includes the following contents: an electronic wallet chip card 1, a smart mobile terminal 2, a mobile base station 3, a cash-in server 4, etc.
[0115] The electronic wallet chip card 1 is a security chip card with pressure-sensitive buttons and a QR code display screen. The security chip card product has an electronic wallet. Through the pressure-sensitive buttons and QR code display screen of the electronic wallet chip card 1, the electronic wallet can be loaded / recharged based on the QR code.
[0116] The smart mobile terminal 2 is installed with an application that allows users to scan and top up their electronic wallet chip card 1. This application can be a dedicated mobile app or a functional app, such as an H5 application or mini-program that is activated by scanning a code. Users activate the app's code scanning function, scan the electronic wallet chip card 1, and enter the electronic wallet chip card top-up page. The mobile app also provides functions such as guiding users through user identity verification, top-up payment, and generating a verification code.
[0117] The mobile base station 3 provides mobile network data communication services for the smart mobile terminal 2 .
[0118] The loading server 4 authenticates the holder of the electronic wallet chip card 1 or the recharge payment account, and locks or debits the corresponding amount in the fund account based on the transaction amount received from the QR code, and recharges or credits the user's offline account. Based on the recharge or credit result, the server collects the recharge request data of the electronic wallet chip card and generates a recharge verification code.
[0119] From a hardware perspective, in order to effectively improve the information security and ease of use of an electronic wallet, the present application provides an embodiment of an electronic device for implementing all or part of the electronic wallet top-up method. The electronic device specifically includes the following:
[0120] A processor, memory, a communications interface, and a bus; wherein the processor, memory, and communications interface communicate with each other via the bus; the communications interface is used to transmit information between the chip card and related devices such as the core business system, user terminals, and related databases; the logic controller can be a desktop computer, a tablet computer, a mobile terminal, etc., but this embodiment is not limited thereto. In this embodiment, the logic controller can be implemented with reference to the embodiments of the electronic wallet loading method and the chip card loading method in the embodiments, and their contents are incorporated herein, and any repetitions are not repeated.
[0121] It is understandable that the user terminal may include a smart phone, a tablet electronic device, a network set-top box, a portable computer, a desktop computer, a personal digital assistant (PDA), a vehicle-mounted device, a smart wearable device, etc. Among them, the smart wearable device may include smart glasses, a smart watch, a smart bracelet, etc.
[0122] In practical applications, portions of the e-wallet top-up method may be executed on the electronic device as described above, or all operations may be performed on the client device. The specific method may be selected based on the processing capabilities of the client device and user usage scenario constraints. This application does not impose any restrictions on this. If all operations are performed on the client device, the client device may further include a processor.
[0123] The client device may include a communication module (i.e., a communication unit) that can establish a communication connection with a remote server to implement data transmission with the server. The server may include a server on the task scheduling center side, and in other implementation scenarios, may also include a server on an intermediate platform, such as a server on a third-party server platform that has a communication link with the task scheduling center server. The server may include a single computer device, a server cluster consisting of multiple servers, or a server structure of a distributed device.
[0124] Figure 12 Schematic block diagram of the system structure of the electronic device 9600 according to an embodiment of the present application. Figure 12 As shown, the electronic device 9600 may include a central processing unit 9100 and a memory 9140; the memory 9140 is coupled to the central processing unit 9100. It is worth noting that the Figure 12 is exemplary; other types of structures may also be used to supplement or replace this structure to implement telecommunication functions or other functions.
[0125] In one embodiment, the electronic wallet top-up method function may be integrated into the central processing unit 9100. The central processing unit 9100 may be configured to perform the following control:
[0126] Step S101: Receive a user's credit request, generate a card credit confirmation code and a credit QR code corresponding to the card credit confirmation code based on the credit request, and display them. After the user's terminal scans the credit QR code, the credit request is sent to the corresponding credit server. The credit server parses the credit request, generates a server credit confirmation code locally, and compares it with the card credit confirmation code in the credit request. If the comparison is successful, a server credit verification code is generated according to a verification code generation rule and returned to the user's terminal for display.
[0127] Step S102: Receive the server top-up verification code input by the user, generate a card top-up verification code according to the same verification code generation rules as the top-up server, and compare the card top-up verification code with the server top-up verification code for consistency. If the comparison is successful, perform a local e-wallet balance update operation according to the top-up amount in the top-up request.
[0128] As can be seen from the above description, the electronic device provided in the embodiment of the present application receives a user's deposit request through a deposit chip card, generates a card deposit confirmation code and a deposit QR code corresponding to the card deposit confirmation code according to the deposit request and displays them, receives a server deposit verification code input by the user, generates a card deposit verification code according to the same verification code generation rule as the deposit server, and compares the card deposit verification code with the server deposit verification code for consistency. After the comparison is passed, the local electronic wallet balance is updated according to the deposit amount in the deposit request, which can effectively improve the information security and ease of use of the electronic wallet.
[0129] In another embodiment, the chip card for loading funds may be configured separately from the central processor 9100. For example, the chip card for loading funds may be configured as a chip connected to the central processor 9100, and the functions of the electronic wallet loading method may be implemented under the control of the central processor.
[0130] like Figure 12 As shown, the electronic device 9600 may further include: a communication module 9110, an input unit 9120, an audio processor 9130, a display 9160, and a power supply 9170. It is worth noting that the electronic device 9600 does not necessarily have to include Figure 12 In addition, the electronic device 9600 may also include all components shown in Figure 12 For components not shown, reference may be made to the prior art.
[0131] like Figure 12 As shown, the central processing unit 9100 is sometimes also referred to as a controller or operation control, and may include a microprocessor or other processor device and / or logic device. The central processing unit 9100 receives input and controls the operation of various components of the electronic device 9600.
[0132] Memory 9140 can be, for example, one or more of a cache, flash memory, hard drive, removable media, volatile memory, non-volatile memory, or other suitable devices. It can store the aforementioned failure-related information and also store programs that execute the relevant information. The CPU 9100 can execute the programs stored in memory 9140 to implement information storage or processing.
[0133] The input unit 9120 provides input to the central processing unit 9100. The input unit 9120 may be, for example, a keypad or touch input device. The power supply 9170 is used to provide power to the electronic device 9600. The display 9160 is used to display objects such as images and text. The display may be, for example, an LCD display, but is not limited thereto.
[0134] The memory 9140 may be a solid-state memory, such as a read-only memory (ROM), a random access memory (RAM), or a SIM card. Alternatively, it may be a memory that retains information even when power is off, can be selectively erased, and is provided with more data. Examples of such memory are sometimes referred to as EPROMs. The memory 9140 may also be some other type of device. The memory 9140 includes a buffer memory 9141 (sometimes referred to as a buffer). The memory 9140 may include an application / function storage unit 9142 for storing application programs and function programs or processes for executing the operation of the electronic device 9600 by the central processing unit 9100.
[0135] The memory 9140 may also include a data storage unit 9143 for storing data, such as contacts, digital data, pictures, sounds, and / or any other data used by the electronic device. The driver storage unit 9144 of the memory 9140 may include various driver programs for communication functions of the electronic device and / or for executing other functions of the electronic device (such as messaging applications, address book applications, etc.).
[0136] The communication module 9110 is a transmitter / receiver 9110 that transmits and receives signals via an antenna 9111. The communication module (transmitter / receiver) 9110 is coupled to the central processor 9100 to provide input signals and receive output signals, which may be the same as in a conventional mobile communication terminal.
[0137] Based on different communication technologies, multiple communication modules 9110 can be provided in the same electronic device, such as a cellular network module, a Bluetooth module, and / or a wireless local area network module. The communication module (transmitter / receiver) 9110 is also coupled to a speaker 9131 and a microphone 9132 via an audio processor 9130 to provide audio output via the speaker 9131 and receive audio input from the microphone 9132, thereby implementing common telecommunication functions. The audio processor 9130 may include any suitable buffer, decoder, amplifier, etc. Furthermore, the audio processor 9130 is also coupled to the central processing unit 9100, enabling local recording via the microphone 9132 and playback of stored audio via the speaker 9131.
[0138] Embodiments of the present application also provide a computer-readable storage medium capable of implementing all steps of the electronic wallet top-up method in the above-mentioned embodiment, where the execution subject is a server or a client. The computer-readable storage medium stores a computer program. When the computer program is executed by a processor, the computer program implements all steps of the electronic wallet top-up method in the above-mentioned embodiment, where the execution subject is a server or a client. For example, when the processor executes the computer program, the following steps are implemented:
[0139] Step S101: Receive a user's credit request, generate a card credit confirmation code and a credit QR code corresponding to the card credit confirmation code based on the credit request, and display them. After the user's terminal scans the credit QR code, the credit request is sent to the corresponding credit server. The credit server parses the credit request, generates a server credit confirmation code locally, and compares it with the card credit confirmation code in the credit request. If the comparison is successful, a server credit verification code is generated according to a verification code generation rule and returned to the user's terminal for display.
[0140] Step S102: Receive the server top-up verification code input by the user, generate a card top-up verification code according to the same verification code generation rules as the top-up server, and compare the card top-up verification code with the server top-up verification code for consistency. If the comparison is successful, perform a local e-wallet balance update operation according to the top-up amount in the top-up request.
[0141] As can be seen from the foregoing description, the computer-readable storage medium provided in the embodiments of the present application receives a user's deposit request via a deposit chip card, generates a card deposit confirmation code and a deposit QR code corresponding to the card deposit confirmation code based on the deposit request and displays them, receives a server deposit verification code input by the user, generates a card deposit verification code according to the same verification code generation rules as the deposit server, performs a consistency comparison between the card deposit verification code and the server deposit verification code, and, if the comparison is successful, performs a local e-wallet balance update operation based on the deposit amount in the deposit request, thereby effectively improving the information security and ease of use of the e-wallet.
[0142] The embodiments of the present application also provide a computer program product capable of implementing all steps of the electronic wallet top-up method in the above embodiments, where the execution subject is a server or a client. When the computer program / instructions are executed by a processor, the computer program / instructions implement the steps of the electronic wallet top-up method. For example, the computer program / instructions implement the following steps:
[0143] Step S101: Receive a user's credit request, generate a card credit confirmation code and a credit QR code corresponding to the card credit confirmation code based on the credit request, and display them. After the user's terminal scans the credit QR code, the credit request is sent to the corresponding credit server. The credit server parses the credit request, generates a server credit confirmation code locally, and compares it with the card credit confirmation code in the credit request. If the comparison is successful, a server credit verification code is generated according to a verification code generation rule and returned to the user's terminal for display.
[0144] Step S102: Receive the server top-up verification code input by the user, generate a card top-up verification code according to the same verification code generation rules as the top-up server, and compare the card top-up verification code with the server top-up verification code for consistency. If the comparison is successful, perform a local e-wallet balance update operation according to the top-up amount in the top-up request.
[0145] As can be seen from the foregoing description, the computer program product provided in the embodiments of the present application receives a user's deposit request via a deposit chip card, generates a card deposit confirmation code and a deposit QR code corresponding to the card deposit confirmation code based on the deposit request and displays them, receives a server deposit verification code input by the user, generates a card deposit verification code according to the same verification code generation rules as the deposit server, compares the card deposit verification code with the server deposit verification code for consistency, and, if the comparison is successful, updates the local electronic wallet balance based on the deposit amount in the deposit request, thereby effectively improving the information security and ease of use of the electronic wallet.
[0146] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, apparatus, or computer program products. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0147] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (apparatus), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as a combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0148] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0149] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0150] Specific embodiments are used in the present invention to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core ideas. At the same time, for those skilled in the art, according to the ideas of the present invention, there may be changes in the specific implementation methods and application scopes. In summary, the contents of this specification should not be understood as limiting the present invention.
Claims
1. An electronic wallet loading method, characterized in that: Applied to a chip card, the method includes: Receive a user's credit request, generate a card credit confirmation code and a credit QR code corresponding to the card credit confirmation code based on the credit request, and display them. After the user's terminal scans the credit QR code, the credit request is sent to the corresponding credit server. The credit server parses the credit request, generates a server credit confirmation code locally, and compares it with the card credit confirmation code in the credit request. If the comparison is successful, a server credit verification code is generated according to a verification code generation rule and returned to the user's terminal for display. receiving the server top-up verification code input by the user, generating a card top-up verification code according to the same verification code generation rules as those of the top-up server, performing a consistency comparison between the card top-up verification code and the server top-up verification code, and executing a local electronic wallet balance update operation according to the top-up amount in the top-up request if the comparison passes; The method includes receiving a user's deposit request, generating a card deposit confirmation code and a deposit QR code corresponding to the card deposit confirmation code according to the deposit request, and displaying the generated code. The method includes: forming a dispersion factor based on a count of a local deposit counter and a deposit random number; dispersing a character string of the dispersion factor according to a local card deposit key to obtain a first calculation factor of the confirmation code; receiving the user's deposit request, obtaining a second calculation factor of the confirmation code according to a deposit trigger timestamp and a deposit amount in the deposit request; performing a hash encryption operation on the first calculation factor of the confirmation code and the second calculation factor of the confirmation code to generate a card deposit confirmation code and a corresponding deposit QR code for display; The card loading verification code is generated according to the same verification code generation rule as the loading server, including: determining a dispersion factor according to the electronic wallet card number and the loading random number; performing a hash encryption operation according to the dispersion factor, the loading trigger timestamp and the loading amount in the loading request, converting the hash encryption operation result into a digital string, and then taking the number in the set position as the card loading verification code.
2. The electronic wallet loading method according to claim 1, characterized in that: After the credit server parses the credit request, the following steps are performed: The loading server performs identity authentication on the electronic wallet card number and / or cardholder information in the loading request, and returns a loading failure signal if the identity authentication fails.
3. An electronic wallet loading device, characterized in that: include: A loading request module is configured to receive a loading request from a user, generate a card loading confirmation code and a loading QR code corresponding to the card loading confirmation code based on the loading request, and display them. After the user's terminal scans the loading QR code, the loading request is sent to a corresponding loading server. The loading server then parses the loading request, generates a server loading confirmation code locally, and compares the locally generated server loading confirmation code with the card loading confirmation code in the loading request. If the consistency is successful, the server loading verification code is generated according to a verification code generation rule and returned to the user's terminal for display. a load execution module, configured to receive the server load verification code input by the user, generate a card load verification code according to the same verification code generation rules as the load server, perform a consistency comparison between the card load verification code and the server load verification code, and, if the comparison passes, execute a local electronic wallet balance update operation based on the load amount in the load request; The method includes receiving a user's deposit request, generating a card deposit confirmation code and a deposit QR code corresponding to the card deposit confirmation code according to the deposit request, and displaying the generated code. The method includes: forming a dispersion factor based on a count of a local deposit counter and a deposit random number; dispersing a character string of the dispersion factor according to a local card deposit key to obtain a first calculation factor of the confirmation code; receiving the user's deposit request, obtaining a second calculation factor of the confirmation code according to a deposit trigger timestamp and a deposit amount in the deposit request; performing a hash encryption operation on the first calculation factor of the confirmation code and the second calculation factor of the confirmation code to generate a card deposit confirmation code and a corresponding deposit QR code for display; The card loading verification code is generated according to the same verification code generation rule as the loading server, including: determining a dispersion factor according to the electronic wallet card number and the loading random number; performing a hash encryption operation according to the dispersion factor, the loading trigger timestamp and the loading amount in the loading request, converting the hash encryption operation result into a digital string, and then taking the number in the set position as the card loading verification code.
4. A chip card with a loaded card, characterized in that: include: A card base, a display device provided on the card base, a security chip provided in the card base capable of implementing the electronic wallet loading method according to any one of claims 1 to 2, a power supply system, and a pressure-sensitive button; The pressure-sensitive button is signal-connected to the security chip, and is used to trigger a user's credit request and receive a server credit verification code input by the user.
5. The chip card according to claim 4, characterized in that: The security chip includes an electronic wallet module with a built-in electronic wallet, a loading control module for generating a card loading confirmation code and a loading QR code and controlling the loading of the electronic wallet module, a key file for storing a card loading key, and a Java card and its COS. The security chip is electrically connected to the display device and the pressure-sensitive button respectively.
6. A cash-on-deposit system, characterized in that: include: The chip card for loading funds, the user terminal, and the server for loading funds signal-connected to the user terminal according to any one of claims 4 to 5; It also includes a mobile base station for signal connection between the user terminal and the credit server.
7. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the steps of the electronic wallet loading method according to any one of claims 1 to 2 are implemented.
8. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the electronic wallet loading method according to any one of claims 1 to 2 are implemented.
9. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instruction is executed by a processor, the steps of the electronic wallet loading method according to any one of claims 1 to 2 are implemented.
Citation Information
Patent Citations
Air business implement method and system based on mobile phone client-side
CN103108277A
Method, system and server for recharging electronic wallet and recharging operating terminal
CN103714624A