Patent Publication Number: US-8112627-B2

Title: System for self-service recharging and method for the same

Description:
FIELD OF THE INVENTION 
     The present invention relates to secure communications of online banking, and more particularly, to a system for self-service recharging and a method for the same. 
     BACKGROUND OF THE INVENTION 
     With the development of computer network technologies, the conventional cash payment mode has been gradually replaced with online banking for its convenience and availability. The so-called “online banking” is carried out on the Internet to provide financial services to the customers. The customers can almost complete any banking transactions online, such as inquiring account affairs, transferring, trading foreign exchange, shopping online, or registering the lost card, instead of laboriously going to counter of a bank. By online banking, the efficiency is improved for both the customers and the bank, and the cost is cut off at the same time. 
     The conventional payment uses cash. It is neither convenient nor safe to carry a lot of cashes. Therefore, the electronic wallet comes out. The electronic wallet is a software application used for secure electronic transactions and preservation of transaction history. The electronic wallet has such features as 
     1) managing electronic security credentials, for example, requesting, saving, or deleting an electronic security credential; 
     2) securing electronic transactions, for example, authenticating the customer and transmitting transaction information upon conducting a transaction; and 
     3) saving transaction history, for example, saving a record of a transaction for later inquiry; or encrypting and transmitting and verifying for validity account information (e.g. the account number and expiration date) and payment instructions when shopping online. 
     The process of use of the electronic wallet consists of registering an electronic wallet, adding a bank card, and bank card payment. It centralizes the management of different electronic currencies, credit cards, and personal information card, etc. The electronic wallet is secure and convenient without the need of storing personal information on a personal computer. The customer can complete a transaction online in less than 20 seconds. 
     The Public Key Infrastructure (PKI) is an infrastructure created with the public key theory and technology for providing security services. The customer can carry out secure electronic transactions, communications, and other activities on the Internet with services provided by the PKI platform. In PKI technology, certificates are used for managing public keys, and the public keys of a customer are associated with his other identification information by the Certificate Authority, a third-party trusted authority, for authenticating the customer over the Internet. Currently, the confidentiality, the authenticity, the integrity, and the non-repudiation of information transmission are maintained by encrypting and signing the digital information to be transmitted using digital certificates based on the PKI. The PKI is a set of software and hardware relating to create, issue, manage, and revoke a public key certificate. The core element of the PKI is the digital certificate, and the core implementer of the PKI is the CA. 
     The regular carrier of the electronic wallet is the smart card, which is also known as the Integrated Card (IC). A customer may have many smart cards to conduct different transactions, so that a loading process sometimes is needed. The so-called “loading” means to recharge the smart card with fund from a personal account. 
     At present, the holder of the smart card often has to go to a specified site to recharge the card. It is, to some extent, not convenient to use the electronic wallet (e.g. time and energy consuming). If the customer did not complete loading for some reason, some important information (e.g. actual amount received) cannot be updated in time. As a result, the customer may still not conduct a transaction. In prior art, the loading transaction of online banking is done by the intranet on the bank side. A secure and reliable method for conducting the loading operation by a public network has not been developed yet. 
     SUMMARY OF THE INVENTION 
     To overcome the problem of inconvenience in recharging the electronic wallet and provide a way to enable the native machine to carry out transactions through a public network, the present invention discloses a system for self-service recharging and a method for the same. The solution is as follows. 
     A system for self-service recharging, comprising a client and a server, in which the client comprises a first authentication module, a key agreement module, and a secure transaction device, while the server comprises a second storage module, a second authentication module, and a second service performance module, in which 
     the first authentication module is adapted to verify whether the server is legitimate; 
     the key agreement module is adapted to conduct, together with the secure transaction device, a key agreement process with the server, to establish a data security channel according to a result of the key agreement process, if the server is legitimate based on a verification of the first authentication module; 
     the secure transaction device comprises 
     a first storage module for storing data and a key agreement algorithm relating to the key agreement process with the server and a certificate of the secure transaction device; 
     a user authentication module for verifying whether an identifier of a user is legitimate after receiving the identifier from an input of the user; and 
     a first service performance module for allowing the user to input a recharging operation message after the user is verified by the user authentication module, transmitting a recharging operation request packet to the server and receiving a recharging permission command packet returned from the server, and conducting a recharging operation and recording an operation log and a transaction process after verifying the recharging permission command packet; the recharging operation request packet comprising a user account and a recharging amount; and 
     the server comprises 
     a second storage module for storing user account information, user identity information, data and the key agreement algorithm relating to the key agreement process with the secure transaction device, and a certificate of the server; 
     a second authentication module for verifying whether the secure transaction device is legitimate, conducting a key agreement process with the secure transaction device using the data and algorithm from the second storage module to establish a data security channel if the secure transaction device is legitimate; and verifying whether the recharging operation request packet is legitimate according to the user account information and user identity information from the second storage module, after receiving the recharging operation request packet transmitted from the secure transaction device; and 
     a second service performance module for deducting a recharging amount from the user account and returning the recharging permission command packet to the secure transaction device if the recharging operation request packet is legitimate; the recharging permission command packet comprising a transaction time and a recharging amount; 
     the recharging operation request packet transmitted from the first service performance module of the secure transaction device further comprises a first message authentication code; 
     accordingly, the second storage module of the server comprises an authentication algorithm for verifying the certificate of the secure transaction device and an algorithm for generating a first information verification code; and 
     the second authentication module comprises 
     a security authentication unit for verifying whether the certificate of the secure transaction device is legitimate using the authentication algorithm from the second storage module; if legitimate, conducting a key agreement process with the secure transaction device to establish a data security channel with the secure transaction device by the server; otherwise, the data security channel being not established, but terminating; and 
     a recharging operation request packet authentication unit for verifying whether the user account information in the second storage module complies with the recharging operation after receiving the recharging operation request packet from the secure transaction device; if the user account information complies with the recharging amount in the recharging operation request packet, generating a first information verification code using an algorithm in the second storage module and verifying the first message authentication code from the recharging operation request packet against the first information verification code; if identical, the recharging operation request packet being legitimate. 
     The recharging permission command packet returned from the service performance module of the server to the secure transaction device also comprises a second message authentication code; 
     accordingly, the first storage module of the secure transaction device is adapted to store an algorithm for generating the second information verification code; 
     the secure transaction device comprises 
     an authentication module for generating a second information verification code using the algorithm from the first storage module and verifying the second message authentication code from the recharging permission command packet against the second information verification code after receiving the recharging permission command packet returned from the server; if identical, the second information authentication being legitimate and notifying the first service performance module of performing an recharging operation; otherwise, transmitting an error message to the server; and 
     the server comprises 
     a recharging withdrawal module for canceling the recharging operation, compensating the recharging amount deducted by the service performance module from the user account and revising the operation log, after receiving the error message transmitted from the secure transaction device. 
     The first service performance module comprises 
     an initialization operation command generation unit for allowing the user to input a recharging operation message after the identifier of the user is verified by the user authentication module, packing the recharging operation message, and generating a recharging initialization operation command; 
     an operation confirmation transmission unit for transmitting an operation confirmation to the user according to the recharging initialization operation command after the initialization operation command generation unit generates a recharging initialization operation command; 
     a determination unit for determining whether the confirmation of the user is correct; 
     a recharging request transmission unit for transmitting a recharging operation request packet to the server through a computer if the confirmation of the user is correct; the recharging operation request packet comprising a user account and a recharging amount; and 
     a recharging operation performance unit for conducting a recharging operation and recording an operation log after receiving the recharging permission command packet returned from the server. 
     The secure transaction device comprises 
     a transaction notification module for transmitting a transaction performance information packet to the server after conducting the recharging operation and recording the operation log; 
     accordingly, the server comprises 
     a recharging confirmation module for determining whether the information in the transaction performance information packet is correct after receiving the transaction performance information packet transmitted from the secure transaction device; if correct, notifying the user of successfully recharging; otherwise, canceling the recharging operation, compensating the recharging amount deducted from the user account, revising the operation log, and transmitting an error message to the user. 
     The system comprises 
     a smart card device for transmitting a deposit balance message to the secure transaction device and verifying whether the user is legitimate; if legitimate, obtaining a recharging amount from the secure transaction device. 
     The secure transaction device comprises 
     a prompt module for prompting an error to the user if the user is not legitimate based on the verification of the smart card device; and 
     a recharging amount transmission module for transmitting a recharging amount to the smart card device if the user is legitimate based on the verification of the smart card device. 
     The prompt module is a sonic module with a voice prompt feature or a display module with a display feature. 
     The smart card device is a contact or contactless smart card device. 
     The contactless smart card device comprises 
     a first antenna module for transmitting the deposit balance message to the secure transaction device and inducing and receiving the recharging amount transmitted from the secure transaction device; 
     a first RF (Radio Frequency) module for converting the recharging amount from the secure transaction device from an electromagnetic wave signal to digital information by modulation/demodulation means and transmitting the information to the first antenna module, and converting the deposit balance message received by the first antenna module to an electromagnetic wave signal and transmitting the signal to the secure transaction device; and 
     an electronic cash storage module for storing the recharging amount received by the first antenna module; 
     accordingly, the secure transaction device comprises 
     a second antenna module for transmitting the recharging amount to the contactless smart card device, and inducing and receiving the deposit balance message transmitted from the contactless smart card device; and 
     a second RF (Radio Frequency) module for converting the deposit balance message transmitted from the contactless smart card device from an electromagnetic wave signal to digital information by modulation/demodulation means and transmitting the information to the second antenna module, and converting the recharging amount received by the second antenna module to an electromagnetic wave signal and transmitting the signal to the contactless smart card device. 
     In addition, the present invention also provides a method for self-service recharging. The method comprises the steps of: 
     A. connecting a client with a server; 
     B. authenticating each other between the server and a secure transaction device for legitimacy; if both legitimate, conducting a key agreement process between the client and the server to establish a data security channel, and then going to the step C; otherwise, the data security channel being not established between the client and the server, but terminating; 
     C. packing the recharging operation message, generating a recharging initialization operation command and transmitting, by the secure transaction device, an operation confirmation to the user, after receiving an input of a recharging operation message by a user; 
     D. transmitting a recharging operation request packet, by the secure transaction device, to the server after the operation confirmation being confirmed by the user; the recharging operation request packet comprising a user account of the user and a recharging amount; 
     E. verifying whether the recharging operation request packet is legitimate by the server after receiving the recharging operation request packet; if legitimate, deducting the recharging amount from the user account, recording an operation log, transmitting a recharging permission command packet to the secure transaction device, and then going to the step F; otherwise, prompting an error to the user through the secure transaction device; 
     F. conducting a recharging operation after receiving the recharging permission command packet, recording an operation log, and then transmitting a transaction performance information packet to the server by the secure transaction device; and 
     G. determining whether the recharging transaction information in the transaction performance information packet is correct by the server; if correct, prompting successfully recharging to the user; otherwise, canceling the recharging operation, compensating the recharging amount deducted from the user account, revising the operation log, and prompting a recharging failed message to the user. 
     The authenticating each other between the server and a secure transaction device for legitimacy at the step B comprises: 
     authenticating whether the certificate of the secure transaction device is legitimate by the server; and 
     authenticating whether the certificate of the server is legitimate by the secure transaction device. 
     The step C comprises: 
     inputting an identifier by the user to the secure transaction device, and determining by the secure transaction device whether the identifier is legitimate; if legitimate, allowing the user to input the recharging operation message; otherwise, prompting an error the user. 
     The recharging operation request packet at the step D comprises a first message authentication code generated by the secure transaction device; 
     accordingly, the verifying whether the recharging operation request packet is legitimate at the step E comprises: 
     verifying whether the user account information complies with the recharging amount from the recharging operation request packet by the server; if yes, going to the next operation; otherwise, terminating; and 
     verifying whether the first message authentication code from the recharging operation request packet is legitimate by the server after verifying the recharging amount; if yes, the recharging operation request packet being legitimate; otherwise, the packet being not legitimate. 
     The recharging permission command packet at the step E comprises a second message authentication code; 
     accordingly, the step F comprises: 
     verifying by the secure transaction device the second message authentication code from the recharging permission command packet; if legitimate, conducting the recharging operation; otherwise, transmitting an error message to the server; and 
     canceling the recharging operation by the server after receiving the error message, compensating the amount deducted from the user account, and then revising the operation log. 
     The method comprises the steps of: 
     H. moving the smart card device by the user into a valid range of the secure transaction device for reading the card; 
     I. reading a deposit balance amount from the smart card device by the secure transaction device, outputting the deposit balance amount through a prompting means of the secure transaction device, and prompting the user to input a user identifier for the smart card device; and 
     J. determining whether the user identifier is correct after inputting the user identifier by the user; if correct, transmitting a recharging amount to the smart card device; otherwise, prompting an error to the user. 
     The step H comprises: 
     authenticating each other between the smart card device and the secure transaction device; if both positive, going to the step I; otherwise, prompting an error to the user. 
     With the system and the method provided by the present invention, the user does not necessarily perform operations on an ATM machine specified by the bank or on a terminal at the bank and online transactions are secured by combining the PKI and digital cash services with online banking. Moreover, the interaction of recharging information between a native machine and a server is realized conveniently and securely through a public network. And both the secure transaction device and the smart card can be used for consumption, providing an improved flexibility and availability of the system, and thus bringing the online banking customers more convenience. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The present invention may be further understood from the following description in conjunction with the appended drawings. In the drawings, 
         FIG. 1  is a block diagram of a system for self-service recharging according to the first embodiment of the present invention; 
         FIG. 2  is a block diagram of another system for self-service recharging according to the first embodiment of the present invention; 
         FIG. 3  is a flow diagram of a method for authenticating between a client and a server according to the second embodiment of the present invention; and 
         FIG. 4  is a flow diagram of a method for loading with a USB key and an online banking server according to the second embodiment of the present invention. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     The present invention is further described with the embodiments and the drawings below. 
     In the following embodiments, the user is an electronic wallet user, the server is an online banking server, and the client consists of a client computer and a USB key connected to the client computer; or the client is a client computer as well as a USB key and a contactless IC card connected to the client computer. The USB key herein is a portable hardware device with a USB interface, a built-in processor and a memory, which can be connected with a computer via its data communication interface. 
     The USB key involved in the following embodiments has an electronic wallet function, and is distributed to a user by a bank as a carrier of the digital cash. The online banking server and the USB key have been associated with a PKI network, so that the online banking server and the USB key have carried legitimate certification information (e.g. digital certificates, public keys, and names). After the server and the client have authenticated each other for legitimacy and established a data security channel, the user is able to recharge the USB key online only if he has been authenticated by the USB key itself positively, and the recharging operation request packet and the recharging permission command packet have both been verified. 
     Referring to  FIG. 1 , the present embodiment provides a system for self-service recharging, which may be a loading system, a gas station card recharging system, a taxation recharging system, and a social insurance recharging system, etc. 
     The system comprises a client  100  and an online banking server  200 ; the client  100  further comprises a USB key  101  and a computer  102 ; and the online banking server  200  further comprises a 
     second storage module  201 , a second authentication module  202 , and a second service performance module  203 . 
     The USB key  101  further comprises 
     a user authentication module  1011  for verifying whether the identifier of the user is legitimate after receiving an identifier input by a user; 
     a first service performance module  1012  for allowing the user to input a recharging operation message after verifying the identifier of the user by the user authentication module  1011 , transmitting a recharging operation request packet, which comprises a user account and a recharging amount, to the online banking server  200  through the computer  102 , conducting a recharging operation after receiving a recharging permission command packet returned by the online banking server  200 , recording an operation log, and finally completing a transaction process on the transaction terminal; and 
     a first storage module  1013  for storing data and a key agreement algorithm relating to the process of a key agreement between the computer  102  and the online banking server  200 , and storing a certificate of the USB key  101 . 
     The computer  102  comprises 
     a first authentication module  1021  for verifying whether the online banking server  200  is legitimate; and 
     a key agreement module  1022  for conducting a key agreement process, together with the USB key  101 , with the online banking server  200  if the server  200  is legitimate based on the verification of the first authentication module  1021 , generating a session key according to the result of the key agreement process to establish a data security channel. 
     The online banking server  200  comprises 
     a second storage module  201  for storing user account information, user identity information, and information of the USB key  101 ; 
     a second authentication module  202  for verifying whether the USB key  101  is legitimate based on the information of the USB key  101  from the second storage module  201  after receiving the recharging operation request packet transmitted from the USB key  101 ; and 
     a second service performance module  203  for deducting a recharging amount from the user account and returning a recharging permission command packet, which comprises a transaction time and a recharging amount, to the USB key  101  if it is legitimate based on the verification of the second authentication module  202 . 
     There are user information, digital certificates, and transaction logs for performing an electronic wallet function in the second storage module  201 , where one or more digital certificates are associated with a user account of the online banking server  200 . There is also configured basic information including service types, as well as standards and/or specifications of online banking electronic transactions relating to recharging applications on the online banking server  200 . 
     The recharging operation request packet transmitted from the first service performance module  1012  of the USB key  101  also comprises a first message authentication code; 
     accordingly, the second storage module  201  of the online banking server  200  also stores an algorithm for generating a first information verification code. 
     The second authentication module  202  comprises 
     a security authentication unit for verifying whether the certificate of the USB key  101  is legitimate using a verification algorithm in the second storage module  201 ; if legitimate (i.e. the USB key  101  is legitimate), a key agreement between the USB key  101  and the online banking server  200  is conducted and a data security channel is established; otherwise, the USB key  101  is not legitimate, and a data security channel with the USB key  101  will not be established, then operations terminate; and 
     a recharging operation request packet authentication unit for verifying whether the user account information in the second storage module  201  complies with the recharging operation after receiving a recharging operation request packet transmitted from the USB key  101 ; if the user account information complies with the recharging amount in the recharging operation request packet, a first information verification code is generated using an algorithm in the second storage module  201 , and is compared with the first message authentication code from the recharging operation request packet; if they are identical, the recharging operation request packet is legitimate. 
     In addition to the first message authentication code, the recharging operation request packet also comprises user identity information, electronic wallet balance, card number of the transaction account, recharging amount, serial number of the online transaction, key version number, algorithm identifier, and pseudo random number (for IC card or USB key). The first message authentication code is a function of the recharging initialization operation command. It is generated by computing data in the recharging initialization operation command using an internal algorithm from the USB key. An algorithm is also previously stored on the online banking server  200  for generating the first information verification code. 
     Further, the recharging permission command packet returned from the second service performance module  203  to the USB key  101  also comprises a second message authentication code to prevent from counterfeiting the server by a hacker; 
     accordingly, the first storage module  1013  of the USB key  101  is also adapted to store an algorithm for generating a second information verification code. 
     The USB key  101  also comprises 
     an authentication module for generating the second information verification code using an algorithm from the first storage module  1013 , comparing the second information verification code with the second message authentication code from the recharging permission command packet after receiving the recharging operation request packet returned from the online banking server  200 ; if they are identical, the second message authentication code is legitimate, and the first service performance module  1012  is informed of conducting a recharging operation; otherwise, an error message is transmitted to the online banking server  200 ; and 
     the online banking server  200  also comprises 
     a recharging withdrawal module for canceling the recharging operation after receiving the error message transmitted from the USB key  101 , compensating the amount deducted from the user account by the second service performance module  203 , and revising the operation log. 
     The recharging permission command packet also comprises transaction date, transaction time, and recharging amount, in addition to the second message authentication code. The second message authentication code is a function of the information in the recharging operation request packet, transaction date, and transaction time transmitted from the client. It is generated by computing the information in the recharging operation request packet, transaction date, and transaction time using an internal algorithm from the server. The algorithm for generating the second information verification code is also previously stored on the USB key  101 . The algorithm may, or may not, be the same as the algorithm for generating the first message authentication code. 
     The first service performance module  1012  comprises 
     an initialization operation command generation unit for allowing the user to input a recharging operation message if the identifier of the user is legitimate based on verification of the user authentication module  1011 , packing the message, and then generating a recharging initialization operation command; 
     an operation confirmation transmission unit for transmitting an operation confirmation to the user according to the recharging initialization operation command after the command is generated by the recharging initialization operation command generation unit; 
     a determination unit for determining whether the confirmation of the user is correct; and 
     a recharging request transmission unit for transmitting a recharging operation request packet, which comprises a user account and a recharging amount, to the online banking server  200  through the computer  102  if the confirmation of the user is correct. 
     To make sure that the transaction is completed successfully, and the transaction is processed accordingly among the USB key  101  and the online banking server  200 , the USB key  101  also comprises 
     a transaction notification module for transmitting a transaction performance information packet to the online banking server  200  after conducting a recharging operation and recording an operation log; 
     accordingly, the online banking server  200  also comprises 
     a recharging confirmation module for determining whether the information in the transaction performance information packet is correct after receiving the transaction performance information packet transmitted from the USB key  101 ; if correct, notifying the user of successfully recharging; otherwise, canceling the recharging operation, compensating the amount deducted from the user account, revising the operation log, and notifying the user of failed recharging. 
     The USB key  101  can be a USB key or USB token with an electronic wallet function. The USB key can be connected with a computer via a serial interface, a USB interface, an infrared interface, a Bluetooth interface, or a RF interface. 
     Referring to  FIG. 2 , if a user is intended to transfer an amount from one of the banking cards on the USB key  101  to a smart card device (e.g. a bus IC card) after the USB key  101  is recharged through the online banking server  200 , on top of the system as shown in  FIG. 1  the system for self-service recharging also comprises: 
     a smart card device  103  for transmitting a deposit balance message to the USB key  101 , authenticating the user, and obtaining a recharging amount from the USB key  101  if the user is a legitimate user. 
     To improve the security, the smart card device  103  and the USB key  101  can authenticate each other by comparing the identification codes previously stored on each of them. In particular: 
     The USB key  101  reads an identification code, which is, for example, a card number, from the smart card device  103 , compares the identification code with each of the identification codes of legitimate smart card devices stored on the USB key  101 , and verifies whether the smart card device  103  is legitimate by determining whether the two codes are identical; and 
     The smart card device  103  receives an identification code, which is, for example, a hardware serial number, from the USB key  101 , compares the identification code with each of the identification codes of legitimate USB keys stored on the smart card device  103 , and verifies whether the USB key  101  is legitimate by determining whether the two codes are identical. 
     To improve the recharging operation between the USB key  101  and the smart card device  103 , the USB key  101  can also comprises: 
     a prompt module  1014  for prompting the user an error if the user is not legitimate based on the verification of the smart card device  103 ; and 
     a recharging amount transmission module  1015  for transmitting a recharging amount to the smart card device  103  if the user is legitimate based on the verification of the smart card device  103 . 
     The prompt module  1014  is a sonic module with a voice prompt feature or a display module with a display feature. 
     The smart card device  103  can either be a contact smart card device or a contactless smart card device. 
     If the smart card device  103  is a contactless smart card device, it comprises: 
     a first antenna module for transmitting a deposit balance to the USB key  101 , and inducing and receiving the recharging amount transmitted from the USB key  101 ; 
     a first RF (Radio Frequency) module for converting the recharging amount transmitted by the USB key  101  from an electromagnetic wave signal to digital information by modulation/demodulation means, and transmitting the information to the first antenna module, and converting the deposit balance received by the first RF module to an electromagnetic wave signal and transmitting the signal to the USB key  101 ; and 
     a digital cash storage module for storing the recharging amount received by the first antenna module. 
     Accordingly, the USB key  101  also comprises 
     a second antenna module for transmitting a recharging amount to the contactless smart card and inducing and receiving the deposit balance transmitted from the contactless smart card device; and 
     a second RF (Radio Frequency) module for converting the deposit balance transmitted from the contactless smart card device from an electromagnetic wave signal to digital information by modulation/demodulation means and transmitting the information to the second antenna module, and converting the recharging amount received by the second antenna module to an electromagnetic wave signal and transmitting the signal to the contactless smart card device. 
     The smart card device  103  as shown in  FIG. 2  can also be built into the USB key  101 . The recharging operation in this embodiment can be replaced with a loading operation or other transaction operations. 
     A second embodiment provides a method for self-service recharging with a USB key as the secure transaction device. Referring to  FIG. 3 , it demonstrates the process of authenticating each other between the client and the server before conducting the recharging operation. Referring to  FIG. 4 , it demonstrates a process of recharging with a USB key and an online banking server. In particular, the method comprises the steps of: 
     Step  301 : connecting a client computer with an online banking server; 
     Step  302 : authenticating mutually between a USB key and the online banking server for legitimacy, in which if both are legitimate, go to the step  303 ; otherwise, the client cannot establish a data security channel with the server, and operation terminates; 
     Step  303 : conducting a key agreement process between the USB key and the online banking server to establish a data security channel; 
     Step  304 : prompting, by the USB key, a user to input an identifier through the computer, and inputting, by the user, the identifier to the USB key through the computer, after establishing the data security channel; (in this embodiment, the identifier may be a user-defined password or a user biometric, such as a fingerprint or iris image, etc.) 
     Step  305 : authenticating, by the USB key, whether the identifier is legitimate; if legitimate, going to the step  306 ; otherwise, going to the step  307 ; 
     Step  306 : allowing the user to make access to an operating system of the USB key, and input a recharging operation message, including a recharging amount, to the USB key; 
     Step  307 : prompting the user an identifier error; 
     Step  308 : receiving by the USB key the recharging operation message from the user, packing the message, and transmitting a recharging initialization operation command to a controller of the USB key; 
     Step  309 : transmitting an operation confirmation to the user through an output means after receiving the recharging initialization operation command by the controller of the USB key; 
     Step  310 : determining whether the user has confirmed the operation; if confirming the confirmation by the user that it is correct, going to the step  311 ; otherwise, going to the step  304 ; (in this embodiment, the USB key will wait for confirmation of the user for a time period that can be defined as required; if the user has not confirmed after the time period, it is deemed that the operation confirmation is incorrect, and it is directed to the step  304  for a new user operation); and 
     Step  311 : transmitting a recharging operation request packet to the online banking server through the computer by the USB key, which comprises a user identifier, an electronic wallet balance amount, a card number of the transaction account, a recharging amount, a serial number of the online transaction, a key version number, an algorithm identifier, a pseudo random number (for the IC card or USB key), and a first message authentication code; 
     the first message authentication code is a function of the recharging initialization operation command, and is generated by computing data in the recharging initialization operation command using an internal algorithm of the USB key. 
     Referring to  FIG. 4 , the recharging process with the USB key and the online banking server comprises the steps of: 
     Step  311 : transmitting a recharging operation request packet to the online banking server through the computer by the USB key; 
     Step  312 : verifying, by the online banking server, whether the recharging operation request packet is legitimate after receiving the recharging operation request packet from the client; if legitimate, going to the step  313 ; otherwise, going to the step  314 ; 
     verifying whether the user account information stored natively complies with the recharging operation (e.g. whether allowed by the overdraft right); if it complies with the recharging amount from the recharging operation request packet, generating a first information verification code using an algorithm stored natively by the online banking server, reading the first message authentication code from the recharging operation request packet, and comparing the first information verification with the first message authentication code; in which if they are identical, the recharging operation request packet is legitimate; otherwise, it is not legitimate; 
     Step  313 : deducting a recharging amount from the user account according to the recharging transaction amount information, and transmitting a recharging permission command packet to the USB key through the client computer, and recording the operation log by the online banking server; 
     in this embodiment, the recharging permission command packet comprises a second message authentication code, a transaction date (host), a transaction time (host), and a recharging amount; the second message authentication code is a function of the information in the recharging operation request packet from the client, the transaction date (host), and the transaction time (host), and is generated by computing the information in the recharging operation request packet from the client, the transaction date (host), and the transaction time (host) using an internal algorithm by the online banking server; 
     Step  314 : prompting an error to the user through the client computer by the online banking server, if the recharging operation request packet is not legitimate based on verification of the online banking server; 
     Step  315 : verifying whether the second message authentication code from the recharging permission command packet is legitimate by the USB key after receiving the recharging permission command packet from the online banking server; if legitimate, going to the step  316 ; otherwise, going to the step  317 ; 
     where the second message authentication code is verified by generating a second information verification code by the USB key according to the information stored natively, and comparing it with the second message authentication code; in which if they are identical, the second message authentication code is legitimate; otherwise, the second message authentication code is not legitimate; 
     Step  316 : conducting a recharging operation, recording the operation log, and transmitting a transaction performance information packet to the online banking server by the USB key; 
     Step  317 : transmitting an error message to the online banking server through the client computer by the USB key, canceling the recharging operation by the online banking server, compensating the amount deducted from the user account by the online banking server, and revising the operation log by the online banking server; 
     Step  318 : verifying by the online banking server whether the recharging transaction information in the transaction performance information packet transmitted from the USB key is correct; if correct, going to the step  319 ; otherwise, going to the step  320 ; 
     Step  319 : prompting recharging successfully to the user by the online banking server; and 
     Step  320 : canceling the recharging operation, compensating the amount deducted from the user account, revising the operation log, and prompting an error message (the recharging operation failed) to the user through the client computer, by the online banking server. 
     In case that the user is intended to transfer an amount of money in a banking card stored from the USB key to a smart card device, the following operations should be performed, in which the smart card device is a contactless IC card. 
     1) The user moves a contactless IC card into a valid range of the USB key, so that the contactless IC card and the USB key authenticate each other for legitimacy. If both legitimate, the USB key reads the balance amount from the contactless IC card, outputs the amount through its display means or a computer, and prompts the user to input his identifier for the contactless IC card; if at least one of them is not legitimate based on authentication of the other side, the USB key prompts an error to the user through its display means or a computer. In this embodiment, the legitimacy authentication between the contactless IC card and the USB key is processed by comparing identification codes as follows. 
     The USB key reads an identification code from the contactless IC card and compares it with each of the identification codes of legitimate IC cards stored in the USB key, to authenticate the contactless IC card by determining if the two codes are identical; only if identical, the contactless IC card is legitimate; 
     the contactless IC card receives an identification code from the USB key and compares it with each of the identification codes of legitimate USB keys stored in the contactless IC card, to authenticate the USB key by determining whether the two codes are identical; only if identical, the USB key is legitimate; 
     If the two codes are not identical in at least one of the comparison operations, the authentication fails. 
     In this embodiment, the identification code of the USB key is a hardware serial number; and the identification code of the contactless IC card is a card number. 
     2) The user inputs his identifier for the contactless IC card, and then the contactless IC card verifies whether the input of the user is correct; if correct, the USB key transmits a recharging amount to the contactless IC card. The user completes the self-service recharging process and is able to pay for something using the contactless IC card. If incorrect, the USB key prompts an error to the USB by a sonic means. 
     In this embodiment, the identifier of the user is a user-defined password. 
     It will be appreciated by those of ordinary skill in the art that the invention can be embodied in other specific forms without departing from the spirit or essential character thereof. The presently disclosed embodiments are therefore considered in all respects to be illustrative and not restrictive. The scope of the invention is indicated by the appended claims rather than the foregoing description, and all changes which come within the meaning and range of equivalents thereof are intended to be embraced therein.