US20060168657A1 - Providing a user device with a set of a access codes - Google Patents
Providing a user device with a set of a access codes Download PDFInfo
- Publication number
- US20060168657A1 US20060168657A1 US10/532,195 US53219505A US2006168657A1 US 20060168657 A1 US20060168657 A1 US 20060168657A1 US 53219505 A US53219505 A US 53219505A US 2006168657 A1 US2006168657 A1 US 2006168657A1
- Authority
- US
- United States
- Prior art keywords
- key
- user device
- access codes
- server
- new
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/08—Access security
Definitions
- the present invention generally relates to methods, apparatus, and computer program elements for providing a user device with sets of access codes such as one time authentication codes via data communications networks such as wireless communications networks.
- OTACS One time authentication codes
- TANS transaction authentication numbers
- OTAC transaction authentication numbers
- paper based scratch lists are both relatively insecure and inconvenient to access.
- a scratch list is sent from a service provider such as a bank to a customer via plain mail.
- a mailed scratch list can be intercepted en route to the customer and copied.
- many customers cannot be relied upon to store scratch lists in a secure location such as a safe. This is especially the case where the scratch list is used regularly.
- a regularly used scratch list may be left in the open, on a desk for example. This provides others with access to the scratch list. If a scratch list is carried by a customer, it may be lost or stolen.
- OTACs on scratch lists are not usually encrypted. Customer account numbers, which are generally combined with an OTAC to effect a transaction, are widely regarded as being publicly known. It is inconvenient for many customers to manually keep track of which OTACs have been used. When moving from one scratch list to another, customers need to temporarily store or carry two scratch lists. This enhances security risk. Furthermore, paper based scratch lists are complicated for the issuing service providers to print and mail in a timely manner.
- WO98/37524 describes a transaction method using a mobile device. This method employs International Debit User Identification (IDUI) numbers to identify individual accounts.
- IDUI is analogous to a customer bank account number. Specifically, the IDUI is pre-loaded onto credit/debit card.
- POS point of sale
- POS terminal reads the IDUI from a credit/debit card and display an amount to be deducted from an identified account. The customer completes the transaction by pressing an OK button of the POS terminal. The POS terminal sends a transaction receipt to a server in the bank responsible for the account.
- SIM Subscriber Identification Module
- the IDUI is then read from the smart card by the terminal in a contact-less manner.
- Transaction receipts are sent to the server for verification by SMS messages.
- This scheme discusses only the uses of IDUIs for transactions with POS terminals via a contact-less interface and exchanging SMS messages for transaction verification.
- the scheme is not suitable for OTAC delivery. This is because IDUIs are fixed for each account. OTACs, however, are not.
- Similar electronic payment systems are described in EP1 176 844, WO99/16029, WO00/495585, WO01/09851, WO02/21464, and WO01/93528.
- a method for providing a user device with a set of access codes comprising: in the user device, storing an encryption key and an identification code, and sending a message containing the identification code to a server via a communications network; in the server, storing an encryption key corresponding to the key stored in the user device, allocating the set of access codes on receipt of the identification code from the user device, performing a look up function based on the identification code received in the message to retrieve the key from storage, encrypting the set of access codes using the retrieved key to produce an encrypted set, and sending a message containing the encrypted set to the user device via the network; and, in the user device, decrypting the encrypted set received from the server using the key in storage, and storing the decrypted set of access codes for use by a user of the user device.
- the method further comprises: in the server, generating a new key, encrypting the new key with the previous key, and sending a message containing the encrypted new key to the user device via the network; and, in the user device, decrypting the new key received from the server using the previous key, and storing the decrypted new key in place of the previous key.
- the method may also extend to, in the server, encrypting a new set of access codes with the new key to produce a new key encrypted set, and sending a message containing the new key encrypted set to the user device via the network; and, in the user device, decrypting the new key encrypted set using the new key, and storing the decrypted new set for use by a user of the user device.
- the method further comprises: in the server, sending a message containing a new set of access codes to the user device via the network; and, in the user device, storing the new set for use by a user of the user device.
- the method may further comprise: in the user device, tracking the access codes used by the user, generating a request in response to the number of unused access codes reaching a predetermined threshold, and sending a message containing the request to the server; and, in the server, sending the message containing the new set of access codes on receipt of the request.
- the method may comprise: in the server, tracking the access codes used by the user, and sending the message containing the new set of access codes to the user device in response to the number of unused access codes reaching a predetermined threshold.
- the method may comprise: in the user device, generating a request in response to a manual input from the user, and sending a message containing the request to the server; and, in the server, sending the message containing the new set of access codes on receipt of the request.
- the method further comprises: in the user device, generating a public/private key pair, and sending a message containing the public key of the pair to the server via the network; in the server, generating a session key, encrypting the set of access codes with the session key to produce a session key encrypted set, encrypting the session key with the public key to produce an encrypted session key, sending a message containing the session key encrypted set and the encrypted session key to the user device via the network; and, in the user device, decrypting the encrypted session key with the private key of the pair to recover the session key, decrypting the session key encrypted set with the recovered session key to recover the set, and storing the decrypted set for use by a user of the user device.
- a method for providing a user device with a set of access codes comprising, in the user device: storing an encryption key and an identification code; sending a message containing the identification code to a server via a communications network; receiving from the server a message containing the set of access codes encrypted with the key; decrypting the received set of access codes using the key in storage; and, storing the decrypted set of access codes for use by a user of the user device.
- the present invention also extends to a computer program element comprising computer program code mean when loaded in a processor of a user device, configures the processor to perform a method as described in this paragraph.
- a method for providing a user device with a set of access codes comprising, in a server for communicating with the user device via a network: storing an encryption key corresponding to an encryption key stored in the user device; allocating the set of access codes to the user device on receipt of a message containing an identification code from the user device via the network; performing a look up function based on the identification code received in the message to retrieve the key from storage; encrypting the set of access codes using the retrieved key to produce an encrypted set; and, sending a message containing the encrypted set to the user device via the network.
- the present invention also extends to a computer program element comprising computer program code mean when loaded in a processor of a server computer system, configures the processor to perform a method as described in this paragraph.
- the access codes are one time authentication codes.
- the network comprises a wireless communication network.
- the user device may comprise a mobile phone.
- the user device may comprise a smart card.
- the messages are SMS messages.
- apparatus for providing a user with a set of access codes comprising: a user device; and, server for communicating with the user device via a communications network; the user device comprising means for storing an encryption key and an identification code, and means for sending a message containing the identification code to the server via the network; the server comprising means for storing an encryption key corresponding to the key stored in the user device, means for allocating the set of access codes on receipt of the identification code from the user device, means for performing a look up function based on the identification code received in the message to retrieve the key from storage, means for encrypting the set of access codes using the retrieved key to produce an encrypted set, and means for sending a message containing the encrypted set to the user device via the network; and, the user device further comprising means for decrypting the encrypted set received from the server using the key stored in the user device, and means for storing the decrypted set of access codes for use by the user.
- the present invention further extends to a user device for receiving a set of access codes from a server via a communications network, the device comprising: means for storing an encryption key and an identification code; means for sending a message containing the identification code to a server via a communications network; means for receiving from the server a message containing the set of access codes encrypted with the key; means for decrypting the received set of access codes using the key in storage; and, means for storing the decrypted set of access codes for use by a user of the user device.
- the present invention extends to a server for providing a user device with a set of access codes via a communications network
- the server comprising: means for storing an encryption key corresponding to an encryption key stored in the user device; means for allocating the set of access codes to the user device on receipt of a message containing an identification code from the user device via the network; means for performing a look up function based on the identification code received in the message to retrieve the key from storage; means for encrypting the set of access codes using the retrieved key to produce an encrypted set; and, means for sending a message containing the encrypted set to the user device via the network.
- a particularly preferred embodiment of the present invention comprises: a smart card on which one or more scratch lists are stored in a tamper resistant manner; a mobile device for conveniently accessing the scratch lists stored on the smart card; and, encrypted messaging over a wireless communications channel between the mobile device and a server computer for updating the scratch lists stored on the smart card.
- the mobile device may be a mobile phone, personal digital assistant (PDA) or the like.
- the smart card may be a SIM module for insertion into a mobile phone or the like.
- the wireless communications channel may be a Short Message Service (SMS) in a GSM channel or the like.
- SMS Short Message Service
- the mobile device is implemented by a mobile phone; the smart card is implemented by a SIM module, and the wireless communications channel is implemented by an SMS channel in a GSM network.
- the customer is equipped with a mobile phone having a SIM module.
- the SIM module comprises a central processing unit and a memory.
- Java (trademark of Sun Microsystems) compatible operating platform software and Java tool kit applet software are stored in the memory.
- the operating platform software configures the CPU for executing the tool kit.
- the tool kit facilitates handling of OTACs.
- the tool kit may be loaded into the memory during personalizing of the SIM for the customer. Alternatively, if permitted by the GSM network service provider, the tool kit may be loaded into the memory and refreshed dynamically via the GSM network. Access to the tool kit in the memory is protected by a Personal Identification Number (PIN) set by the customer via the mobile phone.
- PIN Personal Identification Number
- a bank sends the customer an initializing paper mail via the conventional postal system.
- the initializing paper mail contains: a customer specific symmetrical key K, such as a 16 byte DES key; a customer identification (ID) code N; and a phone number for an SMS compatible server at the bank.
- K customer specific symmetrical key
- ID customer identification
- the ID code N is used by the bank to identify the customer.
- the ID code need not be the customer's account number and may instead be implemented by unique random information.
- the tool kit asks the customer to enter the key K, the information N, and the phone number of the server via the keypad of the mobile phone.
- the tool kit then sends an initialization SMS message containing the identification code N to the server.
- the initialization message indicates that the tool kit is enabled.
- the server responds to receipt of the initialization message by sending an SMS reply message to the customer containing a list of OTACs encrypted with the key K.
- the OTAC list may be spread across a series of SMS messages depending on the amount of data to transferred.
- the tool kit decrypts the OTAC list received using the key K. Initialization is then complete.
- the customer When the customer needs an OTAC, to perform an on-line banking transaction over the Internet for example, the customer again enters the PIN into the mobile phone to unlock the tool kit and requests from the tool kit the next OTAC or a specific OTAC, depending on the bank's OTAC allocation system.
- the tool kit keeps track of the OTACs issued. When all the OTACs stored by the tool kit have been issued, a new OTAC list is obtained from the server. The new list is again delivered via the SMS channel as herein before described.
- the server also keeps track of how many and which OTACs have been used by each customer at any time, and automatically initiates updates when required. Note this scheme involves only an end to end encryption between the server and the tool kit in the customer's SIM module. No assumptions need be made regarding the security of the intervening wireless channel.
- the key K can be updated on demand by sending a new key K′ encrypted with the key K to the tool kit from the server via the wireless channel. Thereafter, the tool kit accepts only messages encrypted with the new key K′. Distribution of the new key K′ may be performed with distribution of new OTAC lists. Alternatively, distribution of the new key K′ may be performed independently of new OTAC list distribution.
- the server may send another key S encrypted with the key K to the tool kit via the wireless channel.
- the other key S may be used for signature verification for example. Further messages from the server are then signed with the signature key S prior to being encrypted with the key K.
- the tool kit can then verify the signature accordingly.
- asymmetric cryptography is employed in place of the symmetric cryptography herein before described.
- the customer need not manually enter the initial symmetric key K.
- the tool kit generates a public/private key pair, such as a 1024 bit RSA key pair, on the SIM module.
- the tool kit then enables itself by sending the public key E together with the ID code N to the server via the communications channel.
- the server now generates a symmetric session key.
- the server encrypts the message with the secure session key, encrypts the session key with the public key E, and sends the encrypted message, together with the encrypted session key to the tool kit via the wireless channel.
- the tool kit decrypts the session key with it private key D.
- the tool kit then decrypts the or each message using the decrypted session key to recover the OTAC list.
- the server may also employ a public/private key pair for signature generation and verification, sending its public key to the tool kit for future verification actions. Note that the server may issue the same public key for signature verification to all tool kits, possibly signed by a trusted third party certificate authority having a public key pre-stored on the smart card.
- At least one of the mobile device and the smart card comprises a contact-less interface such as an infrared or inductive interface.
- the interface permits access to the tool kit on the smart card via a data terminal.
- OTACs can be read through the interface on issuance of a request from the customer via the data terminal. Such a request may be issued for example via a keyboard of the data terminal. Alternatively, OTACs may be read through the interface without requiring such manual requests.
- Various challenge and response schemes may be employed between the smart card and the data terminal. For example, the data terminal itself may not gain access to the OTAC. Instead, the data terminal may send a challenge to the tool kit.
- the tool kit generates a response to the challenge based on the OTAC.
- the OTAC effectively comprises a cryptographic key, such as a 3 DES key
- the tool kit may digitally sign and/or encrypt the challenge with the OTAC.
- the response thus calculated may be used for authentication or to enable a transaction.
- One advantage of the present invention in that it provides a secure technique for distributing OTACs to user devices.
- user devices include mobile devices equipped with tamper resistant smart card technology, without preventing convenient access to the OTACs whenever and wherever needed. Such access can be manually initiated or automatically initiated via a wireless channel.
- the present invention is particularly attractive for banking applications because no changes are required to typical computer infrastructures conventionally employed in banks. Distribution of OTAC lists is made cheaper, simpler, and more secure.
- utilizing existing infrastructure means that no additional OTAC specific mobile devices and/or smart cards need be issued to customers already in possession of a mobile phone with a SIM card that allows downloading and execution of tool kit applets.
- FIG. 1 is a block diagram of a data processing network
- FIG. 2 is a block diagram of a smart card of the network
- FIG. 3 is a block diagram of a mobile device of the network
- FIG. 4 is a block diagram of a server computer system of the network
- FIG. 5 is a flow chart associated with the smart card
- FIG. 6 is a block diagram of a memory of the smart card
- FIG. 7 is a flow chart associated with the server
- FIG. 8 is another flow chart associated with the smart card
- FIG. 9 is another block diagram of the smart card memory
- FIG. 10 is yet another flow chart associated with the smart card
- FIG. 11 is another flow chart associated with refreshment of OTACs stored in the memory of the smart card
- FIG. 12 is yet another flow chart associated with the server
- FIG. 13 is a further flow chart associated with the smart card
- FIG. 14 is still another flow chart associated with the smart card
- FIG. 15 is a further flow chart associated with the server
- FIG. 16 is also a flow chart associated with the smart card.
- FIG. 17 is a block diagram of a data processing system embodying the present invention.
- a data processing network embodying the present invention comprises a user device 100 in the form of a mobile phone connectable to a server computer system 200 via a communications network infrastructure 300 having a wireless access network in the form of a GSM access network.
- a smart card 10 in the form of a SIM card is also connectable to the network via the user device 100 .
- the smart card 10 comprises a memory 20 , a central processing unit (CPU) 30 , an encryption engine 90 , and an input/output (I/O) subsystem 40 , all interconnected via a bus subsystem 50 .
- the memory 20 is stored computer program code executable by the CPU 30 .
- the computer program code comprises an operating system 60 in the form of a Java compatible operating platform and tool kit 70 application software in the form of a Java applet.
- the memory 20 also facilitates the storage of a scratch list 80 in a tamper resistant manner.
- the scratch list 80 comprises a plurality of OTACs.
- the operating system 60 configures the CPU 30 for executing the tool kit 70 .
- the tool kit 70 facilitates handling of OTACs in the scratch list 80 . Aspects of the functionality of the tool kit 70 will be described in detail shortly.
- the encryption engine 80 comprises cryptographic processing logic for encrypting and decrypting data to be transmitted from and received by the smart card 10 .
- the cryptographic processing logic may be implemented in hardware, software, or hardware and software in combination.
- the user device 100 comprises a radio frequency (RF) stage 110 having an RF antenna 170 , control logic 130 , a visual display 140 , and a keypad 160 all interconnected by a bus subsystem 120 .
- the smart card 10 is removeably inserted into the user device 100 and the I/O subsystem 40 of the smart card 10 is releasably connected to the bus subsystem 120 of the user device 100 .
- the RF stage 110 and RF antenna facilitate wireless communications between the user device 100 and other devices connected to the network 300 .
- the visual display 140 provides a graphical user interface between the user and the mobile devices for functions such as preparing messages and reading messages.
- the key pad 160 provides the user with keyboard control of the user device 10 for functions such as data entry and call handling.
- the control logic 130 controls functions of the user device 100 such as call handling based on inputs received from, for example, the keypad 160 .
- Outputs from the user device 100 such as data displays on the visual display unit 140 or outgoing calls via the RF stage 110 , are also controlled by the control logic 130 .
- the control logic 130 coordinates transfers of data from the smart card 10 and the other elements of the user device 100 via the bus subsystem 120 .
- the control logic 130 may implemented in dedicated hardware, a programmed CPU, or a combination of a dedicated hardware and a programmed CPU.
- the server 200 comprises a memory 210 , a CPU 220 , and an I/O subsystem 230 all interconnected by a bus subsystem 240 .
- the memory 210 is stored computer program code executable by the CPU 220 .
- the computer program code comprises an operating system 250 and OTAC service application software 260 .
- the operating system 250 configures the CPU 220 for executing the OTAC service 260 .
- the OTAC service 260 facilitates handling of OTACs in the user device 100 . Aspects of the functionality of the OTAC service 260 will be described in detail shortly.
- a wireless communication channel in the form of an SMS channel is established between the user device 100 and the server 200 .
- the SMS channel facilitates secure transfer of the scratch list 80 from the OTAC service 260 in the server 200 to the smart card 10 via the user device 100 .
- the tool kit 70 may be loaded into the memory 20 of the user device 100 during configuration of the smart card 10 for the user. Alternatively, if permitted by the network infrastructure 300 , the tool kit 70 may be loaded into the memory 20 and refreshed dynamically via the network infrastructure 300 . Access to the tool kit 70 in the memory 20 is protected by a PIN set by the user via the user device 100 .
- the keypad 160 may be employed for this purpose. Alternatively, if the user device 100 has voice recognition, the PIN may be set and reset orally. Other devices may support still further means of data entry.
- the server 200 is located at a bank and the user of the user device 100 is a customer of the bank.
- the bank supplies the user with a paper mail.
- the paper mail may be supplied via, for example, the conventional postal system.
- the paper mail contains: a customer specific symmetrical key K, such as a 16 byte DES key; a customer identification (ID) code N; and a phone number for accessing the server 200 via the network infrastructure 300 .
- the banks uses the ID code N to identify the user.
- the ID code need not be the user's customer account number and may instead be implemented by unique random information.
- the user enters the PIN via the key pad 160 . See step 400 .
- the tool kit 70 requests that the user enters the key K, the ID code N, and the phone number of the server 200 via the key pad 160 . See step 410 .
- this data may be entered orally. However, it will be appreciated that, this is a less secure entry technique as the user may be overheard reciting the data.
- the tool kit 70 sends an initialization SMS message containing the identification code N to the OTAC service 260 on the server 200 . See step 420 .
- the initialization message indicates to the OTAC service 260 that the tool kit 70 has been enabled.
- the memory 20 on the smart card now contains the PIN, the key K, and the ID code N.
- the OTAC service 260 on receipt of the initialization message at the server 200 , the OTAC service 260 looks up the user based on the ID code N and retrieves the key K issued to the user. See step 430 . The OTAC service 260 then encrypts a new scratch list of OTACs for the user with the key K. See step 440 . The OTAC service 260 then sends a SMS reply message containing the encrypted list to the tool kit 70 . The list may be spread across a series of SMS messages depending on the amount of data to transferred.
- the tool kit 70 extracts the encrypted list. See step 460 .
- the tool kit 70 utilizes the encryption engine 90 to decrypt the list using the key K. See step 470 .
- the tool kit 70 then stores the decrypted list in the memory 60 . See step 480 .
- Initialization is then complete.
- the memory 20 now contains, the key K, the PIN, the ID code N, and the list of OTACs.
- the user when the user needs an OTAC, to perform a banking transaction over the Internet for example, the user again enters the PIN via the key pad 160 to unlock the tool kit 70 . See step 500 .
- the user requests an OTAC from the tool kit 70 .
- the OTAC may be the next OTAC in the list or a specific OTAC, depending on the OTAC allocation system employed by the bank.
- the tool kit 70 tracks the OTACs issued. See step 520 .
- refreshment of the list 80 of OTACs is automatically triggered by the tool kit 70 .
- a test is performed by the tool kit 70 to determine if the number of unused OTACs remaining in the list 80 is less than a predetermined threshold. See 540 . In the event that the number of unused OTACs is greater than the threshold, the tool kit 70 waits for the next OTAC to be used.
- the tool kit 70 automatically generates and sends a message to the server 200 via the network 300 to request a new list of OTACs.
- the ID code N is included in the request message as herein before described with reference to FIG. 5 in order that the OTAC service 260 in the server 200 can look up the appropriate key for encrypting the new list of OTACS.
- the new list is delivered to the smart card 10 via the channel as herein before described with reference to FIG. 7 .
- the list 80 of OTACs stored in the memory 20 is automatically refreshed by the OTAC service 260 on the server 200 . Specifically, referring again to FIG.
- the OTAC service 260 on the server 200 now keeps track of how many and which OTACs have been used by each user at any time. See step 530 .
- the OTAC service 260 determines if the number of unused OTACs remaining on the list is less than a predetermined threshold. See step 540 . If not, the OTAC service 260 waits for the next OTAC to be used. If so, the OTAC service 260 automatically sends a new list, encrypted with the key K, to the tool kit 70 as herein before described with reference to FIG. 7 .
- the thresholds herein before described may be set such that a new list 80 is issued when all previously issued OTACs are used up.
- the thresholds may be set such that a new list 80 is issued when only a preset number of OTACs are left unused in the previous list.
- refreshment of the list 80 of OTACs stored in the memory 20 may be triggered manually by the user.
- the tool kit 70 in response to manual input to the user device 100 , the tool kit 70 generates and sends a message to the server 200 via the network 300 to request a new list of OTACs.
- the ID code N is included in the request message as herein before described with reference to FIG. 5 in order that the OTAC service 260 in the server 200 can look up the appropriate key for encrypting the new list of OTACs.
- the new list is delivered to the smart card 10 via the channel as herein before described with reference to FIG. 7 .
- these refreshment schemes involve only end to end encryption between the OTAC service 260 and the tool kit 70 . No assumptions need be made regarding the security of the intervening network infrastructure 300 .
- the key K stored in the memory 20 can be updated on demand.
- the OTAC service 260 generates a new key K′. See step 550 .
- the OTAC service 260 encrypts the new key K′ with the existing key K. See step 560 .
- the OTAC service 260 then sends a SMS message containing the new key K′ encrypted by the existing key K to the tool kit 70 via the network infrastructure 300 .
- the tool kit 70 receives the encrypted new key K′. See step 600 .
- the tool kit 70 decrypts the new key K′ via the encryption engine 280 using the preexisting key K stored in the memory 20 . See step 610 .
- the tool kit 70 replaces the preexisting key K in the memory 20 with the new key K′.
- the tool kit 70 accepts only messages encrypted with the new key K′.
- Distribution of the new key K′ may be performed with distribution of new lists by the server 200 . Alternatively, distribution of the new key K′ may be performed independently of new list distribution.
- the OTAC service 260 sends another key S encrypted with the key K to the tool kit 70 via the network infrastructure 300 .
- the other key S may be used for signature verification for example. Further messages from the OTAC service 260 are then signed with the signature key S prior to encryption with the key K. The tool kit 70 can then verify the signature accordingly. Keys K and S are not necessarily different.
- symmetric cryptography is employed.
- asymmetric cryptography is employed.
- the user need not manually enter the initial symmetric key K.
- the tool kit 70 via the encryption engine 280 , instead generates a public/private key pair such as a 1024 bit RSA key pair. See step 630 .
- the tool kit 70 then sends the public key E of the pair together with the ID code N to the OTAC service 260 via the network infrastructure 300 . See step 640 .
- the tool kit 70 is now enabled.
- the OTAC service 260 now generates a symmetric secure session key P. See step 650 .
- the OTAC service 260 generates a message containing a list of OTACs. See step 660 .
- the OTAC service 260 now encrypts the message with the session key P. See step 670 .
- the OTAC service 260 also encrypts the session key P with the public key E. See step 680 .
- the OTAC service 260 then sends the encrypted message, together with the encrypted session key P, to the tool kit 70 via the network infrastructure 300 . See step 690 .
- the tool kit 70 decrypts the session key P with its private key D via the encryption engine 280 . See step 700 .
- the tool kit 70 then decrypts the message using the decrypted session key via the encryption engine 280 . See step 710 .
- the tool kit 70 recovers the list from the decrypted message. See step 720 .
- the OTAC service 260 also employs a public/private key pair for signature generation and verification.
- the OTAC service 260 sends its public key to the tool kit 70 for future verification actions.
- the OTAC service 260 may issue the same public key for signature verification to all tool kits 70 it services, possibly signed by a trusted third party certificate authority having a public key pre-stored on the smart card 10 .
- the user device 100 comprises a contact-less interface 800 such as an infrared or inductive interface.
- the interface 800 permits access to the tool kit 70 on the smart card 10 via a data terminal 810 .
- the data terminal 810 also comprises a contact-less interface 880 for communicating with the interface 800 of the user device 100 .
- the data terminal 800 further comprises a keypad 830 , display 840 , and I/O subsystem 850 all interconnected, together with the interface 880 via a bus subsystem 820 .
- the I/O subsystem 850 is connected to a remote transaction processing computer system 870 via an intervening data network 860 .
- OTACs can be read by the data terminal 810 from the smart card 10 resident in the user device 100 via the interfaces 800 and 880 in response to a request issued by the customer via the keypad 830 of the date terminal 810 .
- OTACs may be read by the data terminal 810 through the interfaces 800 and 880 without requiring such manual requests.
- Various challenge and response schemes may be employed between the smart card 10 and the data terminal 810 .
- the data terminal 810 does not gain access to the OTACs. Instead, the data terminal 810 sends a challenge to the tool kit 70 in the smart card 10 . In turn, the tool kit 70 generates a response to the challenge based on the OTAC.
- the tool kit 70 may digitally sign and encrypt the challenge with the OTAC.
- the response thus calculated may be used for authentication or to enable a transaction.
- the contact less interface 800 may be integral to the smart card 800 rather than the user device 100 .
- the user device 100 is in the form of a mobile phone.
- the user device 100 may be of a different form, such as a PDA, portable computer, desktop computer, or the like.
- a wireless network is employed for effecting communications between the user device 100 and the server 200 .
- a wired network or a combination of wireless and wired networks may be employed for effecting communications between the user device 100 and the server 200 .
- wireless communications between the user device 100 and the server 200 are effected via an SMS channel.
- the smart card 10 is in the form of a SIM module.
- the smart card 10 may be in different form, such as a credit or charge card form factor.
- Other analogous forms of dedicated processor systems may be employed in place of the smart card 10 .
- a Java compliant operating system 60 is employed in the smart card 10 for executing the tool kit 70 in the form of a Java applet.
- a different form of smart card operating system and a correspondingly different form of tool kit application software may be employed.
- the access codes are in the form of one time authentication codes.
- the present invention is equally applicable to delivery of other types of access codes, such as entry codes for gaining access to restricted areas, for example. Many other applications of the present invention will be apparent.
- a method for providing a user device with a set of access codes comprises, in the user device, storing an encryption key and an identification code, and sending a message containing the identification code to a server via a communications network.
- an encryption key is stored corresponding to the key stored in the user device, allocating the set of access codes on receipt of the identification code from the user device.
- a look up function is performed based on the identification code received in the message to retrieve the key from storage.
- the set of access codes is encrypted using the retrieved key to produce an encrypted set.
- a message containing the encrypted set is sent to the user device via the network.
- the encrypted set received from the server is decrypted using the key in storage, and storing the decrypted set of access codes for use by a user of the user device.
Abstract
Description
- The present invention generally relates to methods, apparatus, and computer program elements for providing a user device with sets of access codes such as one time authentication codes via data communications networks such as wireless communications networks.
- One time authentication codes (OTACS) with paper based scratch lists of transaction authentication numbers (TANS) or one time credit card numbers are increasingly popular in the field of on line transactions. It would be desirable to permit secure storage and distribution of OTACs. It would be equally desirable to permit convenient access to OTACs wherever and whenever needed. Unfortunately, paper based scratch lists are both relatively insecure and inconvenient to access. Typically, a scratch list is sent from a service provider such as a bank to a customer via plain mail. A mailed scratch list can be intercepted en route to the customer and copied. In addition, many customers cannot be relied upon to store scratch lists in a secure location such as a safe. This is especially the case where the scratch list is used regularly. A regularly used scratch list may be left in the open, on a desk for example. This provides others with access to the scratch list. If a scratch list is carried by a customer, it may be lost or stolen. OTACs on scratch lists are not usually encrypted. Customer account numbers, which are generally combined with an OTAC to effect a transaction, are widely regarded as being publicly known. It is inconvenient for many customers to manually keep track of which OTACs have been used. When moving from one scratch list to another, customers need to temporarily store or carry two scratch lists. This enhances security risk. Furthermore, paper based scratch lists are complicated for the issuing service providers to print and mail in a timely manner.
- WO98/37524 describes a transaction method using a mobile device. This method employs International Debit User Identification (IDUI) numbers to identify individual accounts. The IDUI is analogous to a customer bank account number. Specifically, the IDUI is pre-loaded onto credit/debit card. In operation, a point of sale (POS) terminal reads the IDUI from a credit/debit card and display an amount to be deducted from an identified account. The customer completes the transaction by pressing an OK button of the POS terminal. The POS terminal sends a transaction receipt to a server in the bank responsible for the account. WO98/37524 proposes pre-storing the IDUI on a Subscriber Identification Module (SIM) smart card as used in GSM mobile phone networks instead of on a magnetic strip or memory card. The IDUI is then read from the smart card by the terminal in a contact-less manner. Transaction receipts are sent to the server for verification by SMS messages. This scheme discusses only the uses of IDUIs for transactions with POS terminals via a contact-less interface and exchanging SMS messages for transaction verification. The scheme is not suitable for OTAC delivery. This is because IDUIs are fixed for each account. OTACs, however, are not. Similar electronic payment systems are described in EP1 176 844, WO99/16029, WO00/495585, WO01/09851, WO02/21464, and WO01/93528.
- In accordance with the present invention, there is now provided a method for providing a user device with a set of access codes, the method comprising: in the user device, storing an encryption key and an identification code, and sending a message containing the identification code to a server via a communications network; in the server, storing an encryption key corresponding to the key stored in the user device, allocating the set of access codes on receipt of the identification code from the user device, performing a look up function based on the identification code received in the message to retrieve the key from storage, encrypting the set of access codes using the retrieved key to produce an encrypted set, and sending a message containing the encrypted set to the user device via the network; and, in the user device, decrypting the encrypted set received from the server using the key in storage, and storing the decrypted set of access codes for use by a user of the user device.
- This advantageously provides a scheme for providing access codes such as OTACs to customers in a convenient yet secure manner.
- Preferably, the method further comprises: in the server, generating a new key, encrypting the new key with the previous key, and sending a message containing the encrypted new key to the user device via the network; and, in the user device, decrypting the new key received from the server using the previous key, and storing the decrypted new key in place of the previous key.
- This advantageously provides additional security by facilitating secure refreshment of keys employed.
- The method may also extend to, in the server, encrypting a new set of access codes with the new key to produce a new key encrypted set, and sending a message containing the new key encrypted set to the user device via the network; and, in the user device, decrypting the new key encrypted set using the new key, and storing the decrypted new set for use by a user of the user device.
- This advantageously provides for secure refreshment of the access codes in a convenient manner.
- Preferably, the method further comprises: in the server, sending a message containing a new set of access codes to the user device via the network; and, in the user device, storing the new set for use by a user of the user device. The method may further comprise: in the user device, tracking the access codes used by the user, generating a request in response to the number of unused access codes reaching a predetermined threshold, and sending a message containing the request to the server; and, in the server, sending the message containing the new set of access codes on receipt of the request. Alternatively, the method may comprise: in the server, tracking the access codes used by the user, and sending the message containing the new set of access codes to the user device in response to the number of unused access codes reaching a predetermined threshold. In another alternative, the method may comprise: in the user device, generating a request in response to a manual input from the user, and sending a message containing the request to the server; and, in the server, sending the message containing the new set of access codes on receipt of the request.
- In a preferred embodiment of the present invention, the method further comprises: in the user device, generating a public/private key pair, and sending a message containing the public key of the pair to the server via the network; in the server, generating a session key, encrypting the set of access codes with the session key to produce a session key encrypted set, encrypting the session key with the public key to produce an encrypted session key, sending a message containing the session key encrypted set and the encrypted session key to the user device via the network; and, in the user device, decrypting the encrypted session key with the private key of the pair to recover the session key, decrypting the session key encrypted set with the recovered session key to recover the set, and storing the decrypted set for use by a user of the user device.
- This advantageously provides further security via multiple key encryption.
- Viewing the present invention from another aspect, there is now provided a method for providing a user device with a set of access codes, the method comprising, in the user device: storing an encryption key and an identification code; sending a message containing the identification code to a server via a communications network; receiving from the server a message containing the set of access codes encrypted with the key; decrypting the received set of access codes using the key in storage; and, storing the decrypted set of access codes for use by a user of the user device. The present invention also extends to a computer program element comprising computer program code mean when loaded in a processor of a user device, configures the processor to perform a method as described in this paragraph.
- Viewing the present invention from yet another aspect, there is now provided, a method for providing a user device with a set of access codes, the method comprising, in a server for communicating with the user device via a network: storing an encryption key corresponding to an encryption key stored in the user device; allocating the set of access codes to the user device on receipt of a message containing an identification code from the user device via the network; performing a look up function based on the identification code received in the message to retrieve the key from storage; encrypting the set of access codes using the retrieved key to produce an encrypted set; and, sending a message containing the encrypted set to the user device via the network. The present invention also extends to a computer program element comprising computer program code mean when loaded in a processor of a server computer system, configures the processor to perform a method as described in this paragraph.
- In a particularly preferred embodiment of the present invention, the access codes are one time authentication codes. Similarly, in a preferred embodiment of the present invention, the network comprises a wireless communication network. The user device may comprise a mobile phone. Similarly, the user device may comprise a smart card. I an especially preferred embodiment of the present invention, the messages are SMS messages.
- Viewing the present invention from still another aspect, there is now provided apparatus for providing a user with a set of access codes, the apparatus comprising: a user device; and, server for communicating with the user device via a communications network; the user device comprising means for storing an encryption key and an identification code, and means for sending a message containing the identification code to the server via the network; the server comprising means for storing an encryption key corresponding to the key stored in the user device, means for allocating the set of access codes on receipt of the identification code from the user device, means for performing a look up function based on the identification code received in the message to retrieve the key from storage, means for encrypting the set of access codes using the retrieved key to produce an encrypted set, and means for sending a message containing the encrypted set to the user device via the network; and, the user device further comprising means for decrypting the encrypted set received from the server using the key stored in the user device, and means for storing the decrypted set of access codes for use by the user.
- The present invention further extends to a user device for receiving a set of access codes from a server via a communications network, the device comprising: means for storing an encryption key and an identification code; means for sending a message containing the identification code to a server via a communications network; means for receiving from the server a message containing the set of access codes encrypted with the key; means for decrypting the received set of access codes using the key in storage; and, means for storing the decrypted set of access codes for use by a user of the user device.
- Additionally, the present invention extends to a server for providing a user device with a set of access codes via a communications network, the server comprising: means for storing an encryption key corresponding to an encryption key stored in the user device; means for allocating the set of access codes to the user device on receipt of a message containing an identification code from the user device via the network; means for performing a look up function based on the identification code received in the message to retrieve the key from storage; means for encrypting the set of access codes using the retrieved key to produce an encrypted set; and, means for sending a message containing the encrypted set to the user device via the network.
- In a preferred embodiment of the present invention, there is provided a secure transaction scheme which is both more secure and more convenient for both customers and, for example, banking service providers compared with conventional schemes. A particularly preferred embodiment of the present invention comprises: a smart card on which one or more scratch lists are stored in a tamper resistant manner; a mobile device for conveniently accessing the scratch lists stored on the smart card; and, encrypted messaging over a wireless communications channel between the mobile device and a server computer for updating the scratch lists stored on the smart card. Advantageously, no assumptions need be made regarding the security or encryption capabilities of the wireless communications channel. The mobile device may be a mobile phone, personal digital assistant (PDA) or the like. The smart card may be a SIM module for insertion into a mobile phone or the like. The wireless communications channel may be a Short Message Service (SMS) in a GSM channel or the like.
- In a particularly preferred embodiment of the present invention to be described shortly, the mobile device is implemented by a mobile phone; the smart card is implemented by a SIM module, and the wireless communications channel is implemented by an SMS channel in a GSM network. In this embodiment, the customer is equipped with a mobile phone having a SIM module. The SIM module comprises a central processing unit and a memory. Java (trademark of Sun Microsystems) compatible operating platform software and Java tool kit applet software are stored in the memory. The operating platform software configures the CPU for executing the tool kit. The tool kit facilitates handling of OTACs. The tool kit may be loaded into the memory during personalizing of the SIM for the customer. Alternatively, if permitted by the GSM network service provider, the tool kit may be loaded into the memory and refreshed dynamically via the GSM network. Access to the tool kit in the memory is protected by a Personal Identification Number (PIN) set by the customer via the mobile phone.
- In an especially preferred embodiment of the present invention, a bank sends the customer an initializing paper mail via the conventional postal system. The initializing paper mail contains: a customer specific symmetrical key K, such as a 16 byte DES key; a customer identification (ID) code N; and a phone number for an SMS compatible server at the bank. The ID code N is used by the bank to identify the customer. The ID code need not be the customer's account number and may instead be implemented by unique random information.
- On initial activation by the customer, the tool kit asks the customer to enter the key K, the information N, and the phone number of the server via the keypad of the mobile phone. The tool kit then sends an initialization SMS message containing the identification code N to the server. The initialization message indicates that the tool kit is enabled. The server responds to receipt of the initialization message by sending an SMS reply message to the customer containing a list of OTACs encrypted with the key K. The OTAC list may be spread across a series of SMS messages depending on the amount of data to transferred. The tool kit decrypts the OTAC list received using the key K. Initialization is then complete. When the customer needs an OTAC, to perform an on-line banking transaction over the Internet for example, the customer again enters the PIN into the mobile phone to unlock the tool kit and requests from the tool kit the next OTAC or a specific OTAC, depending on the bank's OTAC allocation system. The tool kit keeps track of the OTACs issued. When all the OTACs stored by the tool kit have been issued, a new OTAC list is obtained from the server. The new list is again delivered via the SMS channel as herein before described. The server also keeps track of how many and which OTACs have been used by each customer at any time, and automatically initiates updates when required. Note this scheme involves only an end to end encryption between the server and the tool kit in the customer's SIM module. No assumptions need be made regarding the security of the intervening wireless channel.
- In another preferred embodiment of the present invention, the key K can be updated on demand by sending a new key K′ encrypted with the key K to the tool kit from the server via the wireless channel. Thereafter, the tool kit accepts only messages encrypted with the new key K′. Distribution of the new key K′ may be performed with distribution of new OTAC lists. Alternatively, distribution of the new key K′ may be performed independently of new OTAC list distribution.
- In yet another preferred embodiment of the present invention, the server may send another key S encrypted with the key K to the tool kit via the wireless channel. The other key S may be used for signature verification for example. Further messages from the server are then signed with the signature key S prior to being encrypted with the key K. The tool kit can then verify the signature accordingly.
- In a further embodiment of the present invention, asymmetric cryptography is employed in place of the symmetric cryptography herein before described. In this case, the customer need not manually enter the initial symmetric key K. Instead, the tool kit generates a public/private key pair, such as a 1024 bit RSA key pair, on the SIM module. The tool kit then enables itself by sending the public key E together with the ID code N to the server via the communications channel. For each message to the tool kit, the server now generates a symmetric session key. In each case, the server encrypts the message with the secure session key, encrypts the session key with the public key E, and sends the encrypted message, together with the encrypted session key to the tool kit via the wireless channel. The tool kit decrypts the session key with it private key D. The tool kit then decrypts the or each message using the decrypted session key to recover the OTAC list.
- The server may also employ a public/private key pair for signature generation and verification, sending its public key to the tool kit for future verification actions. Note that the server may issue the same public key for signature verification to all tool kits, possibly signed by a trusted third party certificate authority having a public key pre-stored on the smart card.
- In a further embodiment of the present invention, at least one of the mobile device and the smart card comprises a contact-less interface such as an infrared or inductive interface. The interface permits access to the tool kit on the smart card via a data terminal. OTACs can be read through the interface on issuance of a request from the customer via the data terminal. Such a request may be issued for example via a keyboard of the data terminal. Alternatively, OTACs may be read through the interface without requiring such manual requests. Various challenge and response schemes may be employed between the smart card and the data terminal. For example, the data terminal itself may not gain access to the OTAC. Instead, the data terminal may send a challenge to the tool kit. In turn, the tool kit generates a response to the challenge based on the OTAC. For example, if the OTAC effectively comprises a cryptographic key, such as a 3 DES key, the tool kit may digitally sign and/or encrypt the challenge with the OTAC. The response thus calculated may be used for authentication or to enable a transaction.
- It will be appreciated that advantages of the present invention are manifold. One advantage of the present invention in that it provides a secure technique for distributing OTACs to user devices. Examples of such user devices include mobile devices equipped with tamper resistant smart card technology, without preventing convenient access to the OTACs whenever and wherever needed. Such access can be manually initiated or automatically initiated via a wireless channel. The present invention is particularly attractive for banking applications because no changes are required to typical computer infrastructures conventionally employed in banks. Distribution of OTAC lists is made cheaper, simpler, and more secure. Furthermore, utilizing existing infrastructure means that no additional OTAC specific mobile devices and/or smart cards need be issued to customers already in possession of a mobile phone with a SIM card that allows downloading and execution of tool kit applets.
- Preferred embodiment of the present invention will now be described, by way of example only, with reference to the accompanying drawings, in which:
-
FIG. 1 is a block diagram of a data processing network; -
FIG. 2 is a block diagram of a smart card of the network; -
FIG. 3 is a block diagram of a mobile device of the network; -
FIG. 4 is a block diagram of a server computer system of the network; -
FIG. 5 is a flow chart associated with the smart card; -
FIG. 6 is a block diagram of a memory of the smart card; -
FIG. 7 is a flow chart associated with the server; -
FIG. 8 is another flow chart associated with the smart card; -
FIG. 9 is another block diagram of the smart card memory; -
FIG. 10 is yet another flow chart associated with the smart card; -
FIG. 11 is another flow chart associated with refreshment of OTACs stored in the memory of the smart card; -
FIG. 12 is yet another flow chart associated with the server; -
FIG. 13 is a further flow chart associated with the smart card; -
FIG. 14 is still another flow chart associated with the smart card; -
FIG. 15 is a further flow chart associated with the server; -
FIG. 16 is also a flow chart associated with the smart card; and, -
FIG. 17 , is a block diagram of a data processing system embodying the present invention. - Referring first to
FIG. 1 , a data processing network embodying the present invention comprises auser device 100 in the form of a mobile phone connectable to aserver computer system 200 via acommunications network infrastructure 300 having a wireless access network in the form of a GSM access network. Asmart card 10 in the form of a SIM card is also connectable to the network via theuser device 100. - With reference now to
FIG. 2 , thesmart card 10 comprises amemory 20, a central processing unit (CPU) 30, anencryption engine 90, and an input/output (I/O)subsystem 40, all interconnected via abus subsystem 50. In thememory 20 is stored computer program code executable by theCPU 30. The computer program code comprises anoperating system 60 in the form of a Java compatible operating platform andtool kit 70 application software in the form of a Java applet. Thememory 20 also facilitates the storage of ascratch list 80 in a tamper resistant manner. Thescratch list 80 comprises a plurality of OTACs. Theoperating system 60 configures theCPU 30 for executing thetool kit 70. Thetool kit 70 facilitates handling of OTACs in thescratch list 80. Aspects of the functionality of thetool kit 70 will be described in detail shortly. Theencryption engine 80 comprises cryptographic processing logic for encrypting and decrypting data to be transmitted from and received by thesmart card 10. The cryptographic processing logic may be implemented in hardware, software, or hardware and software in combination. - Referring to
FIG. 3 , theuser device 100 comprises a radio frequency (RF)stage 110 having anRF antenna 170,control logic 130, avisual display 140, and akeypad 160 all interconnected by abus subsystem 120. Thesmart card 10 is removeably inserted into theuser device 100 and the I/O subsystem 40 of thesmart card 10 is releasably connected to thebus subsystem 120 of theuser device 100. In operation, theRF stage 110 and RF antenna facilitate wireless communications between theuser device 100 and other devices connected to thenetwork 300. Thevisual display 140 provides a graphical user interface between the user and the mobile devices for functions such as preparing messages and reading messages. Thekey pad 160 provides the user with keyboard control of theuser device 10 for functions such as data entry and call handling. Thecontrol logic 130 controls functions of theuser device 100 such as call handling based on inputs received from, for example, thekeypad 160. Outputs from theuser device 100, such as data displays on thevisual display unit 140 or outgoing calls via theRF stage 110, are also controlled by thecontrol logic 130. Similarly, thecontrol logic 130 coordinates transfers of data from thesmart card 10 and the other elements of theuser device 100 via thebus subsystem 120. Thecontrol logic 130 may implemented in dedicated hardware, a programmed CPU, or a combination of a dedicated hardware and a programmed CPU. - With reference to
FIG. 4 , theserver 200 comprises amemory 210, aCPU 220, and an I/O subsystem 230 all interconnected by abus subsystem 240. In thememory 210 is stored computer program code executable by theCPU 220. The computer program code comprises anoperating system 250 and OTACservice application software 260. Theoperating system 250 configures theCPU 220 for executing theOTAC service 260. TheOTAC service 260 facilitates handling of OTACs in theuser device 100. Aspects of the functionality of theOTAC service 260 will be described in detail shortly. - In operation, a wireless communication channel in the form of an SMS channel is established between the
user device 100 and theserver 200. The SMS channel facilitates secure transfer of thescratch list 80 from theOTAC service 260 in theserver 200 to thesmart card 10 via theuser device 100. Thetool kit 70 may be loaded into thememory 20 of theuser device 100 during configuration of thesmart card 10 for the user. Alternatively, if permitted by thenetwork infrastructure 300, thetool kit 70 may be loaded into thememory 20 and refreshed dynamically via thenetwork infrastructure 300. Access to thetool kit 70 in thememory 20 is protected by a PIN set by the user via theuser device 100. Thekeypad 160 may be employed for this purpose. Alternatively, if theuser device 100 has voice recognition, the PIN may be set and reset orally. Other devices may support still further means of data entry. - In a particularly preferred application of the present invention, the
server 200 is located at a bank and the user of theuser device 100 is a customer of the bank. Initially, the bank supplies the user with a paper mail. The paper mail may be supplied via, for example, the conventional postal system. The paper mail contains: a customer specific symmetrical key K, such as a 16 byte DES key; a customer identification (ID) code N; and a phone number for accessing theserver 200 via thenetwork infrastructure 300. The banks uses the ID code N to identify the user. The ID code need not be the user's customer account number and may instead be implemented by unique random information. - Referring now to
FIG. 5 , to activate thetool kit 70 for the first time, the user enters the PIN via thekey pad 160. Seestep 400. On receipt of the PIN, thetool kit 70 requests that the user enters the key K, the ID code N, and the phone number of theserver 200 via thekey pad 160. Seestep 410. Again, if theuser device 100 has voice recognition, this data may be entered orally. However, it will be appreciated that, this is a less secure entry technique as the user may be overheard reciting the data. On receipt of the above-listed user entries, thetool kit 70 sends an initialization SMS message containing the identification code N to theOTAC service 260 on theserver 200. Seestep 420. The initialization message indicates to theOTAC service 260 that thetool kit 70 has been enabled. With reference toFIG. 6 , thememory 20 on the smart card now contains the PIN, the key K, and the ID code N. - Referring to
FIG. 7 , on receipt of the initialization message at theserver 200, theOTAC service 260 looks up the user based on the ID code N and retrieves the key K issued to the user. Seestep 430. TheOTAC service 260 then encrypts a new scratch list of OTACs for the user with the keyK. See step 440. TheOTAC service 260 then sends a SMS reply message containing the encrypted list to thetool kit 70. The list may be spread across a series of SMS messages depending on the amount of data to transferred. - Turning to
FIG. 8 , on receipt of the reply message at theuser device 100, thetool kit 70 extracts the encrypted list. Seestep 460. Thetool kit 70 utilizes theencryption engine 90 to decrypt the list using the keyK. See step 470. Thetool kit 70 then stores the decrypted list in thememory 60. Seestep 480. Initialization is then complete. With reference toFIG. 9 , thememory 20 now contains, the key K, the PIN, the ID code N, and the list of OTACs. - Referring now to
FIG. 10 , when the user needs an OTAC, to perform a banking transaction over the Internet for example, the user again enters the PIN via thekey pad 160 to unlock thetool kit 70. Seestep 500. The user then requests an OTAC from thetool kit 70. Seestep 510, the OTAC may be the next OTAC in the list or a specific OTAC, depending on the OTAC allocation system employed by the bank. Thetool kit 70 tracks the OTACs issued. Seestep 520. - Numerous methods may be employed for refreshing the
list 80 of OTACs stored in thememory 20. For example, in a preferred embodiment of the present invention, refreshment of thelist 80 of OTACs is automatically triggered by thetool kit 70. Specifically, referring toFIG. 11 , each time an OTAC is used, at 530, a test is performed by thetool kit 70 to determine if the number of unused OTACs remaining in thelist 80 is less than a predetermined threshold. See 540. In the event that the number of unused OTACs is greater than the threshold, thetool kit 70 waits for the next OTAC to be used. However, in the event that the threshold is reached, thetool kit 70 automatically generates and sends a message to theserver 200 via thenetwork 300 to request a new list of OTACs. The ID code N is included in the request message as herein before described with reference toFIG. 5 in order that theOTAC service 260 in theserver 200 can look up the appropriate key for encrypting the new list of OTACS. Specifically, the new list is delivered to thesmart card 10 via the channel as herein before described with reference toFIG. 7 . In another embodiment of the present invention, thelist 80 of OTACs stored in thememory 20 is automatically refreshed by theOTAC service 260 on theserver 200. Specifically, referring again toFIG. 11 , theOTAC service 260 on theserver 200 now keeps track of how many and which OTACs have been used by each user at any time. Seestep 530. Each time an OTAC is used, theOTAC service 260 determines if the number of unused OTACs remaining on the list is less than a predetermined threshold. Seestep 540. If not, theOTAC service 260 waits for the next OTAC to be used. If so, theOTAC service 260 automatically sends a new list, encrypted with the key K, to thetool kit 70 as herein before described with reference toFIG. 7 . The thresholds herein before described may be set such that anew list 80 is issued when all previously issued OTACs are used up. Alternatively, the thresholds may be set such that anew list 80 is issued when only a preset number of OTACs are left unused in the previous list. In yet another embodiment of the present invention, refreshment of thelist 80 of OTACs stored in thememory 20 may be triggered manually by the user. Specifically, in response to manual input to theuser device 100, thetool kit 70 generates and sends a message to theserver 200 via thenetwork 300 to request a new list of OTACs. The ID code N is included in the request message as herein before described with reference toFIG. 5 in order that theOTAC service 260 in theserver 200 can look up the appropriate key for encrypting the new list of OTACs. Again, the new list is delivered to thesmart card 10 via the channel as herein before described with reference toFIG. 7 . Note that these refreshment schemes involve only end to end encryption between theOTAC service 260 and thetool kit 70. No assumptions need be made regarding the security of the interveningnetwork infrastructure 300. - In a modification to the preferred embodiment of the present invention herein before described with reference to FIGS. 5 to 11, the key K stored in the
memory 20 can be updated on demand. Specifically, referring toFIG. 12 , theOTAC service 260 generates a new key K′. Seestep 550. TheOTAC service 260 encrypts the new key K′ with the existing keyK. See step 560. TheOTAC service 260 then sends a SMS message containing the new key K′ encrypted by the existing key K to thetool kit 70 via thenetwork infrastructure 300. - Referring to
FIG. 13 , thetool kit 70 receives the encrypted new key K′. Seestep 600. Thetool kit 70 decrypts the new key K′ via the encryption engine 280 using the preexisting key K stored in thememory 20. Seestep 610. Then, thetool kit 70 replaces the preexisting key K in thememory 20 with the new key K′. Thereafter, thetool kit 70 accepts only messages encrypted with the new key K′. Distribution of the new key K′ may be performed with distribution of new lists by theserver 200. Alternatively, distribution of the new key K′ may be performed independently of new list distribution. - In another modification of preferred embodiment of the present invention herein before described with reference to FIGS. 5 to 11, the
OTAC service 260 sends another key S encrypted with the key K to thetool kit 70 via thenetwork infrastructure 300. The other key S may be used for signature verification for example. Further messages from theOTAC service 260 are then signed with the signature key S prior to encryption with the key K. Thetool kit 70 can then verify the signature accordingly. Keys K and S are not necessarily different. - In the preferred embodiments of the present invention herein before described, symmetric cryptography is employed. However, in another embodiment of the present invention, asymmetric cryptography is employed. In this embodiment, the user need not manually enter the initial symmetric key K. Referring to
FIG. 14 , thetool kit 70, via the encryption engine 280, instead generates a public/private key pair such as a 1024 bit RSA key pair. Seestep 630. Thetool kit 70 then sends the public key E of the pair together with the ID code N to theOTAC service 260 via thenetwork infrastructure 300. Seestep 640. Thetool kit 70 is now enabled. - Referring now to
FIG. 15 , theOTAC service 260 now generates a symmetric secure session keyP. See step 650. TheOTAC service 260 generates a message containing a list of OTACs. Seestep 660. TheOTAC service 260 now encrypts the message with the session keyP. See step 670. TheOTAC service 260 also encrypts the session key P with the public keyE. See step 680. TheOTAC service 260 then sends the encrypted message, together with the encrypted session key P, to thetool kit 70 via thenetwork infrastructure 300. Seestep 690. Referring toFIG. 16 , thetool kit 70 decrypts the session key P with its private key D via the encryption engine 280. Seestep 700. Thetool kit 70 then decrypts the message using the decrypted session key via the encryption engine 280. Seestep 710. Then, thetool kit 70 recovers the list from the decrypted message. Seestep 720. - In a preferred embodiment of the present invention, the
OTAC service 260 also employs a public/private key pair for signature generation and verification. TheOTAC service 260 sends its public key to thetool kit 70 for future verification actions. Note that theOTAC service 260 may issue the same public key for signature verification to alltool kits 70 it services, possibly signed by a trusted third party certificate authority having a public key pre-stored on thesmart card 10. - Referring to
FIG. 17 , in another embodiment of the present invention, theuser device 100 comprises acontact-less interface 800 such as an infrared or inductive interface. Theinterface 800 permits access to thetool kit 70 on thesmart card 10 via adata terminal 810. Thedata terminal 810 also comprises acontact-less interface 880 for communicating with theinterface 800 of theuser device 100. Thedata terminal 800 further comprises akeypad 830,display 840, and I/O subsystem 850 all interconnected, together with theinterface 880 via abus subsystem 820. The I/O subsystem 850 is connected to a remote transactionprocessing computer system 870 via an interveningdata network 860. - In operation, OTACs can be read by the data terminal 810 from the
smart card 10 resident in theuser device 100 via theinterfaces keypad 830 of thedate terminal 810. Alternatively, OTACs may be read by thedata terminal 810 through theinterfaces smart card 10 and thedata terminal 810. For example, in a preferred embodiment of the present invention, thedata terminal 810 does not gain access to the OTACs. Instead, thedata terminal 810 sends a challenge to thetool kit 70 in thesmart card 10. In turn, thetool kit 70 generates a response to the challenge based on the OTAC. For example, if the OTAC effectively comprises a cryptographic key such as a 3 DES key, thetool kit 70 may digitally sign and encrypt the challenge with the OTAC. The response thus calculated may be used for authentication or to enable a transaction. In other embodiments of the present invention, the contactless interface 800 may be integral to thesmart card 800 rather than theuser device 100. - In the preferred embodiments of the present invention herein before described, the
user device 100 is in the form of a mobile phone. However, in other embodiments of the present invention, theuser device 100 may be of a different form, such as a PDA, portable computer, desktop computer, or the like. Similarly, in the preferred embodiments of the present invention herein before described, a wireless network is employed for effecting communications between theuser device 100 and theserver 200. However, in other embodiments of the present invention a wired network or a combination of wireless and wired networks may be employed for effecting communications between theuser device 100 and theserver 200. Additionally, in the preferred embodiments of the present invention herein before described, wireless communications between theuser device 100 and theserver 200 are effected via an SMS channel. However, in other embodiments of the present invention, a different form of messaging service may be employed. Furthermore, in the preferred embodiments of the present invention herein before described, thesmart card 10 is in the form of a SIM module. However, in other embodiments of the present invention, thesmart card 10 may be in different form, such as a credit or charge card form factor. Other analogous forms of dedicated processor systems may be employed in place of thesmart card 10. In the embodiments of the present invention, a Javacompliant operating system 60 is employed in thesmart card 10 for executing thetool kit 70 in the form of a Java applet. However, in other embodiments of the present invention, a different form of smart card operating system and a correspondingly different form of tool kit application software may be employed. Still furthermore, in the preferred embodiments of the present invention, the access codes are in the form of one time authentication codes. However, it will be appreciated that the present invention is equally applicable to delivery of other types of access codes, such as entry codes for gaining access to restricted areas, for example. Many other applications of the present invention will be apparent. - In summary, described herein by way of example of the present invention is a method for providing a user device with a set of access codes comprises, in the user device, storing an encryption key and an identification code, and sending a message containing the identification code to a server via a communications network. In the server, an encryption key is stored corresponding to the key stored in the user device, allocating the set of access codes on receipt of the identification code from the user device. A look up function is performed based on the identification code received in the message to retrieve the key from storage. The set of access codes is encrypted using the retrieved key to produce an encrypted set. A message containing the encrypted set is sent to the user device via the network. In the user device, the encrypted set received from the server is decrypted using the key in storage, and storing the decrypted set of access codes for use by a user of the user device.
Claims (36)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/125,247 US8302173B2 (en) | 2002-11-06 | 2008-05-22 | Providing a user device with a set of access codes |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP02405954 | 2002-11-06 | ||
EP02405954.5 | 2002-11-06 | ||
PCT/IB2003/004720 WO2004043037A1 (en) | 2002-11-06 | 2003-10-24 | Providing a user device with a set of access codes |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/125,247 Continuation US8302173B2 (en) | 2002-11-06 | 2008-05-22 | Providing a user device with a set of access codes |
Publications (1)
Publication Number | Publication Date |
---|---|
US20060168657A1 true US20060168657A1 (en) | 2006-07-27 |
Family
ID=32309513
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/532,195 Abandoned US20060168657A1 (en) | 2002-11-06 | 2003-10-24 | Providing a user device with a set of a access codes |
US12/125,247 Expired - Fee Related US8302173B2 (en) | 2002-11-06 | 2008-05-22 | Providing a user device with a set of access codes |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/125,247 Expired - Fee Related US8302173B2 (en) | 2002-11-06 | 2008-05-22 | Providing a user device with a set of access codes |
Country Status (11)
Country | Link |
---|---|
US (2) | US20060168657A1 (en) |
EP (1) | EP1559256B1 (en) |
JP (1) | JP2006505993A (en) |
KR (1) | KR100791432B1 (en) |
CN (1) | CN100539581C (en) |
AT (1) | ATE336135T1 (en) |
AU (1) | AU2003269415A1 (en) |
CA (1) | CA2504843C (en) |
DE (1) | DE60307498T2 (en) |
TW (1) | TWI246289B (en) |
WO (1) | WO2004043037A1 (en) |
Cited By (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060259445A1 (en) * | 2005-05-20 | 2006-11-16 | Neopost Technologies | Method of paying for a franking service in a self-service mail-handling machine |
US20060264240A1 (en) * | 2005-05-10 | 2006-11-23 | Sony Ericsson Mobile Communications Japan, Inc. | Portable terminal and function limiting method |
US20060281441A1 (en) * | 2005-06-13 | 2006-12-14 | Hitachi, Ltd. | Authentication systems, wireless communication terminals, and wireless base stations |
US20070118736A1 (en) * | 2005-11-23 | 2007-05-24 | Proton World International N.V. | Customization of a bank card for other applications |
US20070118753A1 (en) * | 2005-11-23 | 2007-05-24 | Proton World International N.V. | Customization of an electronic circuit |
US20070192602A1 (en) * | 2004-12-17 | 2007-08-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Clone resistant mutual authentication in a radio communication network |
US20070266245A1 (en) * | 2004-10-08 | 2007-11-15 | Sergio Sestili | System and Method for Inherently Secure Identification Over Insecure Data Communications Networks |
US20080040813A1 (en) * | 2006-08-09 | 2008-02-14 | Yoichi Kanai | Image reading apparatus, an image information verification apparatus, an image reading method, an image information verification method, and an image reading program |
US20080081601A1 (en) * | 2006-05-25 | 2008-04-03 | Sean Moshir | Dissemination of real estate information through text messaging |
US20080108324A1 (en) * | 2006-05-25 | 2008-05-08 | Sean Moshir | Methods of authorizing actions |
US20080109370A1 (en) * | 2006-05-25 | 2008-05-08 | Moshir Kevin K | Extraction of information from e-mails and delivery to mobile phones, system and method |
US20080133930A1 (en) * | 2006-05-25 | 2008-06-05 | Moshir Kevin K | Methods to authenticate access and alarm as to proximity to location |
US20080167060A1 (en) * | 2006-05-25 | 2008-07-10 | Sean Moshir | Distribution of lottery tickets through mobile devices |
US20080214111A1 (en) * | 2007-03-02 | 2008-09-04 | Celltrust Corporation | Lost phone alarm system and method |
US20080226076A1 (en) * | 2002-11-06 | 2008-09-18 | Michael Baentsch | Providing a user device with a set of access codes |
US20080250244A1 (en) * | 2007-04-05 | 2008-10-09 | Michael Baentsch | System and method for distribution of credentials |
US20090060199A1 (en) * | 2006-10-17 | 2009-03-05 | Clay Von Mueller | System and method for updating a transactional device |
US20090265552A1 (en) * | 2008-03-28 | 2009-10-22 | Celltrust Corporation | Systems and methods for secure short messaging service and multimedia messaging service |
US20090300361A1 (en) * | 2004-03-22 | 2009-12-03 | International Business Machines Corporation | Method for receiving/sending multimedia messages |
EP2187363A1 (en) * | 2008-11-12 | 2010-05-19 | Oberthur Technologies Denmark A/S | Personal identification number distribution device and method |
US20110151903A1 (en) * | 2006-05-25 | 2011-06-23 | Celltrust Corporation | Secure mobile information management system and method |
US20110295707A1 (en) * | 2009-02-09 | 2011-12-01 | Huawei Device Co., Ltd. | Method, system, and device for implementing network banking service |
US9572033B2 (en) | 2006-05-25 | 2017-02-14 | Celltrust Corporation | Systems and methods for encrypted mobile voice communications |
US20170104762A1 (en) * | 2015-10-13 | 2017-04-13 | International Business Machines Corporation | Encryption policies for various nodes of a file |
US20170142123A1 (en) * | 2015-11-13 | 2017-05-18 | Kabushiki Kaisha Toshiba | Data distribution apparatus, communication system, moving object, and data distribution method |
US9818249B1 (en) | 2002-09-04 | 2017-11-14 | Copilot Ventures Fund Iii Llc | Authentication method and system |
US10367642B1 (en) * | 2012-12-12 | 2019-07-30 | EMC IP Holding Company LLC | Cryptographic device configured to transmit messages over an auxiliary channel embedded in passcodes |
US10482529B1 (en) | 2011-04-07 | 2019-11-19 | Wells Fargo Bank, N.A. | ATM customer messaging systems and methods |
US10522007B1 (en) | 2011-04-07 | 2019-12-31 | Wells Fargo Bank, N.A. | Service messaging system and method for a transaction machine |
US10592878B1 (en) * | 2011-04-07 | 2020-03-17 | Wells Fargo Bank, N.A. | Smart chaining |
US10789594B2 (en) | 2013-01-31 | 2020-09-29 | Moshir Vantures, Limited, LLC | Method and system to intelligently assess and mitigate security risks on a mobile device |
US11288256B2 (en) * | 2019-07-23 | 2022-03-29 | Vmware, Inc. | Dynamically providing keys to host for flow aggregation |
US11296960B2 (en) | 2018-03-08 | 2022-04-05 | Nicira, Inc. | Monitoring distributed applications |
US11321213B2 (en) | 2020-01-16 | 2022-05-03 | Vmware, Inc. | Correlation key used to correlate flow and con text data |
US11340931B2 (en) | 2019-07-23 | 2022-05-24 | Vmware, Inc. | Recommendation generation based on selection of selectable elements of visual representation |
US11349876B2 (en) | 2019-07-23 | 2022-05-31 | Vmware, Inc. | Security policy recommendation generation |
US11398987B2 (en) | 2019-07-23 | 2022-07-26 | Vmware, Inc. | Host-based flow aggregation |
US11436075B2 (en) | 2019-07-23 | 2022-09-06 | Vmware, Inc. | Offloading anomaly detection from server to host |
US11743135B2 (en) | 2019-07-23 | 2023-08-29 | Vmware, Inc. | Presenting data regarding grouped flows |
US11785032B2 (en) | 2021-01-22 | 2023-10-10 | Vmware, Inc. | Security threat detection based on network flow analysis |
US11792151B2 (en) | 2021-10-21 | 2023-10-17 | Vmware, Inc. | Detection of threats based on responses to name resolution requests |
US11831667B2 (en) | 2021-07-09 | 2023-11-28 | Vmware, Inc. | Identification of time-ordered sets of connections to identify threats to a datacenter |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7099477B2 (en) * | 2004-10-21 | 2006-08-29 | International Business Machines Corporation | Method and system for backup and restore of a context encryption key for a trusted device within a secured processing system |
JP4498165B2 (en) * | 2005-02-10 | 2010-07-07 | 株式会社エヌ・ティ・ティ・データ | Encryption communication key management apparatus and program |
CN101192918B (en) * | 2006-11-24 | 2011-05-11 | 中兴通讯股份有限公司 | A method and system for processing encrypted stream in broadcast network |
US9069940B2 (en) * | 2010-09-23 | 2015-06-30 | Seagate Technology Llc | Secure host authentication using symmetric key cryptography |
US20150326576A1 (en) * | 2014-05-12 | 2015-11-12 | Key Systems, Inc. | Secure asset management system |
EP3289749B1 (en) * | 2015-04-29 | 2020-09-23 | Telefonaktiebolaget LM Ericsson (publ) | Method and apparatus for enabling sharing of an asset |
CN105872118A (en) * | 2015-11-25 | 2016-08-17 | 乐视云计算有限公司 | Detection method and device of node servers in DNS (Domain Name System) network |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4890321A (en) * | 1986-07-08 | 1989-12-26 | Scientific Atlanta, Inc. | Communications format for a subscription television system permitting transmission of individual text messages to subscribers |
US5604803A (en) * | 1994-06-03 | 1997-02-18 | Sun Microsystems, Inc. | Method and apparatus for secure remote authentication in a public network |
US5850444A (en) * | 1996-09-09 | 1998-12-15 | Telefonaktienbolaget L/M Ericsson (Publ) | Method and apparatus for encrypting radio traffic in a telecommunications network |
US20020087860A1 (en) * | 2000-10-20 | 2002-07-04 | David William Kravitz | Cryptographic data security system and method |
US20020141588A1 (en) * | 2001-03-27 | 2002-10-03 | Rollins Doug L. | Data security for digital data storage |
US20020159601A1 (en) * | 2001-04-30 | 2002-10-31 | Dennis Bushmitch | Computer network security system employing portable storage device |
US20030182576A1 (en) * | 2002-02-14 | 2003-09-25 | Morlang Keven P. | Establishing an encrypted session |
US20040083373A1 (en) * | 2002-10-28 | 2004-04-29 | Perkins Gregory M. | Automatically generated cryptographic functions for renewable tamper resistant security systems |
US7366702B2 (en) * | 1999-07-30 | 2008-04-29 | Ipass Inc. | System and method for secure network purchasing |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57202154A (en) * | 1981-06-05 | 1982-12-10 | Hitachi Ltd | Terminal device with encryption function |
JPS6231231A (en) * | 1985-08-02 | 1987-02-10 | Nec Corp | Password collating system |
JPH06237249A (en) * | 1992-12-18 | 1994-08-23 | Kawasaki Steel Corp | Security system for network management |
JP2828218B2 (en) * | 1993-09-20 | 1998-11-25 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | Method and system for changing an authorized password or key in a distributed communication network |
GB9321357D0 (en) * | 1993-10-15 | 1993-12-22 | British Telecomm | Personal identification systems |
US5812991A (en) * | 1994-01-03 | 1998-09-22 | E-Stamp Corporation | System and method for retrieving postage credit contained within a portable memory over a computer network |
US5812671A (en) * | 1996-07-17 | 1998-09-22 | Xante Corporation | Cryptographic communication system |
FI115686B (en) * | 1997-08-27 | 2005-06-15 | Teliasonera Finland Oyj | Method of using a service in a telecommunication system and telecommunication system |
EP1038368B1 (en) * | 1997-11-13 | 2013-07-31 | Intellectual Ventures I LLC | File transfer system |
MY141663A (en) * | 1998-02-17 | 2010-05-31 | Sia Yik Hei | Code based access systems |
US6300873B1 (en) * | 1999-09-16 | 2001-10-09 | Atlantes Services, Inc. | Locking mechanism for use with one-time access code |
ATE368981T1 (en) * | 2000-03-29 | 2007-08-15 | Vadium Technology Inc | UNIQUE PAD ENCRYPTION WITH CENTRAL KEY SERVICE AND KEY-ENABLED CHARACTERS |
US7308575B2 (en) * | 2000-03-30 | 2007-12-11 | Arris Group, Inc. | Data scrambling system for a shared transmission media |
US7093128B2 (en) * | 2000-04-06 | 2006-08-15 | Sony Corporation | Information recording/reproducing apparatus and method |
EP1401143B1 (en) * | 2002-09-17 | 2006-01-11 | Errikos Pitsos | Methods and system for providing a public key fingerprint list in a PK system |
CN100539581C (en) * | 2002-11-06 | 2009-09-09 | 国际商业机器公司 | Provide a set of access codes to subscriber equipment |
-
2003
- 2003-10-24 CN CNB2003801028184A patent/CN100539581C/en not_active Expired - Fee Related
- 2003-10-24 DE DE60307498T patent/DE60307498T2/en not_active Expired - Lifetime
- 2003-10-24 AU AU2003269415A patent/AU2003269415A1/en not_active Abandoned
- 2003-10-24 WO PCT/IB2003/004720 patent/WO2004043037A1/en active IP Right Grant
- 2003-10-24 KR KR1020057006238A patent/KR100791432B1/en not_active IP Right Cessation
- 2003-10-24 AT AT03751197T patent/ATE336135T1/en not_active IP Right Cessation
- 2003-10-24 EP EP03751197A patent/EP1559256B1/en not_active Expired - Lifetime
- 2003-10-24 JP JP2004549440A patent/JP2006505993A/en active Pending
- 2003-10-24 CA CA2504843A patent/CA2504843C/en not_active Expired - Fee Related
- 2003-10-24 US US10/532,195 patent/US20060168657A1/en not_active Abandoned
- 2003-10-31 TW TW092130397A patent/TWI246289B/en not_active IP Right Cessation
-
2008
- 2008-05-22 US US12/125,247 patent/US8302173B2/en not_active Expired - Fee Related
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4890321A (en) * | 1986-07-08 | 1989-12-26 | Scientific Atlanta, Inc. | Communications format for a subscription television system permitting transmission of individual text messages to subscribers |
US5604803A (en) * | 1994-06-03 | 1997-02-18 | Sun Microsystems, Inc. | Method and apparatus for secure remote authentication in a public network |
US5850444A (en) * | 1996-09-09 | 1998-12-15 | Telefonaktienbolaget L/M Ericsson (Publ) | Method and apparatus for encrypting radio traffic in a telecommunications network |
US7366702B2 (en) * | 1999-07-30 | 2008-04-29 | Ipass Inc. | System and method for secure network purchasing |
US20020087860A1 (en) * | 2000-10-20 | 2002-07-04 | David William Kravitz | Cryptographic data security system and method |
US20020141588A1 (en) * | 2001-03-27 | 2002-10-03 | Rollins Doug L. | Data security for digital data storage |
US20020159601A1 (en) * | 2001-04-30 | 2002-10-31 | Dennis Bushmitch | Computer network security system employing portable storage device |
US7228438B2 (en) * | 2001-04-30 | 2007-06-05 | Matsushita Electric Industrial Co., Ltd. | Computer network security system employing portable storage device |
US20030182576A1 (en) * | 2002-02-14 | 2003-09-25 | Morlang Keven P. | Establishing an encrypted session |
US20040083373A1 (en) * | 2002-10-28 | 2004-04-29 | Perkins Gregory M. | Automatically generated cryptographic functions for renewable tamper resistant security systems |
Cited By (74)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9818249B1 (en) | 2002-09-04 | 2017-11-14 | Copilot Ventures Fund Iii Llc | Authentication method and system |
US20080226076A1 (en) * | 2002-11-06 | 2008-09-18 | Michael Baentsch | Providing a user device with a set of access codes |
US8302173B2 (en) * | 2002-11-06 | 2012-10-30 | International Business Machines Corporation | Providing a user device with a set of access codes |
US20090300361A1 (en) * | 2004-03-22 | 2009-12-03 | International Business Machines Corporation | Method for receiving/sending multimedia messages |
US8275990B2 (en) * | 2004-03-22 | 2012-09-25 | International Business Machines Corporation | Method for receiving/sending multimedia messages |
US20070266245A1 (en) * | 2004-10-08 | 2007-11-15 | Sergio Sestili | System and Method for Inherently Secure Identification Over Insecure Data Communications Networks |
US8612758B2 (en) * | 2004-10-08 | 2013-12-17 | Sergio Sestili | System and method for inherently secure identification over insecure data communications networks |
US20070192602A1 (en) * | 2004-12-17 | 2007-08-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Clone resistant mutual authentication in a radio communication network |
US20060264240A1 (en) * | 2005-05-10 | 2006-11-23 | Sony Ericsson Mobile Communications Japan, Inc. | Portable terminal and function limiting method |
US7275695B2 (en) * | 2005-05-10 | 2007-10-02 | Sony Ericsson Mobile Communications Japan, Inc. | Portable terminal and function limiting method |
US20060259445A1 (en) * | 2005-05-20 | 2006-11-16 | Neopost Technologies | Method of paying for a franking service in a self-service mail-handling machine |
US7302252B2 (en) * | 2005-06-13 | 2007-11-27 | Hitachi, Ltd. | Authentication systems, wireless communication terminals, and wireless base stations |
US20060281441A1 (en) * | 2005-06-13 | 2006-12-14 | Hitachi, Ltd. | Authentication systems, wireless communication terminals, and wireless base stations |
US20070118753A1 (en) * | 2005-11-23 | 2007-05-24 | Proton World International N.V. | Customization of an electronic circuit |
US8117453B2 (en) * | 2005-11-23 | 2012-02-14 | Proton World International N.V. | Customization of an electronic circuit |
US20070118736A1 (en) * | 2005-11-23 | 2007-05-24 | Proton World International N.V. | Customization of a bank card for other applications |
US8965416B2 (en) | 2006-05-25 | 2015-02-24 | Celltrust Corporation | Distribution of lottery tickets through mobile devices |
US20110151903A1 (en) * | 2006-05-25 | 2011-06-23 | Celltrust Corporation | Secure mobile information management system and method |
US20080133930A1 (en) * | 2006-05-25 | 2008-06-05 | Moshir Kevin K | Methods to authenticate access and alarm as to proximity to location |
US9848081B2 (en) | 2006-05-25 | 2017-12-19 | Celltrust Corporation | Dissemination of real estate information through text messaging |
US20080109370A1 (en) * | 2006-05-25 | 2008-05-08 | Moshir Kevin K | Extraction of information from e-mails and delivery to mobile phones, system and method |
US20080108324A1 (en) * | 2006-05-25 | 2008-05-08 | Sean Moshir | Methods of authorizing actions |
US20110145564A1 (en) * | 2006-05-25 | 2011-06-16 | Celltrust Corporation | Systems and methods for secure short messaging service and multimedia messaging service |
US20080167060A1 (en) * | 2006-05-25 | 2008-07-10 | Sean Moshir | Distribution of lottery tickets through mobile devices |
US20080081601A1 (en) * | 2006-05-25 | 2008-04-03 | Sean Moshir | Dissemination of real estate information through text messaging |
US8862129B2 (en) | 2006-05-25 | 2014-10-14 | Celltrust Corporation | Systems and methods for encrypted mobile voice communications |
US9680803B2 (en) * | 2006-05-25 | 2017-06-13 | Celltrust Corporation | Systems and methods for secure short messaging service and multimedia messaging service |
US9572033B2 (en) | 2006-05-25 | 2017-02-14 | Celltrust Corporation | Systems and methods for encrypted mobile voice communications |
US8225380B2 (en) | 2006-05-25 | 2012-07-17 | Celltrust Corporation | Methods to authenticate access and alarm as to proximity to location |
US8260274B2 (en) | 2006-05-25 | 2012-09-04 | Celltrust Corporation | Extraction of information from e-mails and delivery to mobile phones, system and method |
US9154612B2 (en) | 2006-05-25 | 2015-10-06 | Celltrust Corporation | Secure mobile information management system and method |
US8280359B2 (en) | 2006-05-25 | 2012-10-02 | Celltrust Corporation | Methods of authorizing actions |
US20080040813A1 (en) * | 2006-08-09 | 2008-02-14 | Yoichi Kanai | Image reading apparatus, an image information verification apparatus, an image reading method, an image information verification method, and an image reading program |
US8561201B2 (en) * | 2006-08-09 | 2013-10-15 | Ricoh Company, Limited | Image reading apparatus, an image information verification apparatus, an image reading method, an image information verification method, and an image reading program |
US9818108B2 (en) * | 2006-10-17 | 2017-11-14 | Verifone, Inc. | System and method for updating a transactional device |
US20090060199A1 (en) * | 2006-10-17 | 2009-03-05 | Clay Von Mueller | System and method for updating a transactional device |
US20080214111A1 (en) * | 2007-03-02 | 2008-09-04 | Celltrust Corporation | Lost phone alarm system and method |
US20080250244A1 (en) * | 2007-04-05 | 2008-10-09 | Michael Baentsch | System and method for distribution of credentials |
US9112680B2 (en) * | 2007-04-05 | 2015-08-18 | International Business Machines Corporation | Distribution of credentials |
US20120233465A1 (en) * | 2007-04-05 | 2012-09-13 | International Business Machines Corporation | Distribution of Credentials |
US8214642B2 (en) * | 2007-04-05 | 2012-07-03 | International Business Machines Corporation | System and method for distribution of credentials |
US20090265552A1 (en) * | 2008-03-28 | 2009-10-22 | Celltrust Corporation | Systems and methods for secure short messaging service and multimedia messaging service |
EP2187363A1 (en) * | 2008-11-12 | 2010-05-19 | Oberthur Technologies Denmark A/S | Personal identification number distribution device and method |
EP2461297A1 (en) * | 2008-11-12 | 2012-06-06 | Oberthur Technologies Denmark A/S | Personal identification number distribution device and method |
US9015065B2 (en) * | 2009-02-09 | 2015-04-21 | Huawei Device Co., Ltd. | Method, system, and device for implementing network banking service |
US20110295707A1 (en) * | 2009-02-09 | 2011-12-01 | Huawei Device Co., Ltd. | Method, system, and device for implementing network banking service |
US11107332B1 (en) | 2011-04-07 | 2021-08-31 | Wells Fargo Bank, N.A. | Service messaging system and method for a transaction machine |
US11587160B1 (en) | 2011-04-07 | 2023-02-21 | Wells Fargo Bank, N.A. | ATM customer messaging systems and methods |
US11704639B1 (en) | 2011-04-07 | 2023-07-18 | Wells Fargo Bank, N.A. | Smart chaining |
US11694523B1 (en) | 2011-04-07 | 2023-07-04 | Welk Fargo Bank, N.A. | Service messaging system and method for a transaction machine |
US11138579B1 (en) | 2011-04-07 | 2021-10-05 | Wells Fargo Bank, N.A. | Smart chaining |
US10482529B1 (en) | 2011-04-07 | 2019-11-19 | Wells Fargo Bank, N.A. | ATM customer messaging systems and methods |
US10522007B1 (en) | 2011-04-07 | 2019-12-31 | Wells Fargo Bank, N.A. | Service messaging system and method for a transaction machine |
US10592878B1 (en) * | 2011-04-07 | 2020-03-17 | Wells Fargo Bank, N.A. | Smart chaining |
US10929922B1 (en) | 2011-04-07 | 2021-02-23 | Wells Fargo Bank, N.A. | ATM customer messaging systems and methods |
US10367642B1 (en) * | 2012-12-12 | 2019-07-30 | EMC IP Holding Company LLC | Cryptographic device configured to transmit messages over an auxiliary channel embedded in passcodes |
US10789594B2 (en) | 2013-01-31 | 2020-09-29 | Moshir Vantures, Limited, LLC | Method and system to intelligently assess and mitigate security risks on a mobile device |
US20170104762A1 (en) * | 2015-10-13 | 2017-04-13 | International Business Machines Corporation | Encryption policies for various nodes of a file |
US10169600B2 (en) * | 2015-10-13 | 2019-01-01 | International Business Machines Corporation | Encryption policies for various nodes of a file |
US20170142123A1 (en) * | 2015-11-13 | 2017-05-18 | Kabushiki Kaisha Toshiba | Data distribution apparatus, communication system, moving object, and data distribution method |
US9998476B2 (en) * | 2015-11-13 | 2018-06-12 | Kabushiki Kaisha Toshiba | Data distribution apparatus, communication system, moving object, and data distribution method |
US11296960B2 (en) | 2018-03-08 | 2022-04-05 | Nicira, Inc. | Monitoring distributed applications |
US11349876B2 (en) | 2019-07-23 | 2022-05-31 | Vmware, Inc. | Security policy recommendation generation |
US11398987B2 (en) | 2019-07-23 | 2022-07-26 | Vmware, Inc. | Host-based flow aggregation |
US11436075B2 (en) | 2019-07-23 | 2022-09-06 | Vmware, Inc. | Offloading anomaly detection from server to host |
US11340931B2 (en) | 2019-07-23 | 2022-05-24 | Vmware, Inc. | Recommendation generation based on selection of selectable elements of visual representation |
US11693688B2 (en) | 2019-07-23 | 2023-07-04 | Vmware, Inc. | Recommendation generation based on selection of selectable elements of visual representation |
US11288256B2 (en) * | 2019-07-23 | 2022-03-29 | Vmware, Inc. | Dynamically providing keys to host for flow aggregation |
US11743135B2 (en) | 2019-07-23 | 2023-08-29 | Vmware, Inc. | Presenting data regarding grouped flows |
US11321213B2 (en) | 2020-01-16 | 2022-05-03 | Vmware, Inc. | Correlation key used to correlate flow and con text data |
US11921610B2 (en) | 2020-01-16 | 2024-03-05 | VMware LLC | Correlation key used to correlate flow and context data |
US11785032B2 (en) | 2021-01-22 | 2023-10-10 | Vmware, Inc. | Security threat detection based on network flow analysis |
US11831667B2 (en) | 2021-07-09 | 2023-11-28 | Vmware, Inc. | Identification of time-ordered sets of connections to identify threats to a datacenter |
US11792151B2 (en) | 2021-10-21 | 2023-10-17 | Vmware, Inc. | Detection of threats based on responses to name resolution requests |
Also Published As
Publication number | Publication date |
---|---|
ATE336135T1 (en) | 2006-09-15 |
CN1711738A (en) | 2005-12-21 |
CA2504843C (en) | 2011-02-22 |
CN100539581C (en) | 2009-09-09 |
EP1559256A1 (en) | 2005-08-03 |
WO2004043037A1 (en) | 2004-05-21 |
KR100791432B1 (en) | 2008-01-07 |
DE60307498T2 (en) | 2007-09-13 |
AU2003269415A1 (en) | 2004-06-07 |
JP2006505993A (en) | 2006-02-16 |
TWI246289B (en) | 2005-12-21 |
KR20050073490A (en) | 2005-07-13 |
DE60307498D1 (en) | 2006-09-21 |
TW200420060A (en) | 2004-10-01 |
CA2504843A1 (en) | 2004-05-21 |
US8302173B2 (en) | 2012-10-30 |
EP1559256B1 (en) | 2006-08-09 |
US20080226076A1 (en) | 2008-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2504843C (en) | Providing a user device with a set of access codes | |
US11521194B2 (en) | Trusted service manager (TSM) architectures and methods | |
US7107246B2 (en) | Methods of exchanging secure messages | |
US7362869B2 (en) | Method of distributing a public key | |
US8016189B2 (en) | Electronic transaction systems and methods therefor | |
US7357309B2 (en) | EMV transactions in mobile terminals | |
EP2481230B1 (en) | Authentication method, payment authorisation method and corresponding electronic equipments | |
HU224268B1 (en) | Method of carrying out electronic transactions, chipcard, as well as system containing chipcard and communication unit controlled by the user | |
US20120143771A1 (en) | Method and system for securing pin entry on a mobile payment device by disabling tone emissions | |
EP1862948A1 (en) | IC card with OTP client | |
EP2415003A1 (en) | Method and system for securing a payment transaction with trusted code base | |
US20230086015A1 (en) | Ic card asymmetric labelling system and ic card built-in password input system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BAENTSCH, MICHAEL;BUHLER, PETER;EIRICH, THOMAS;AND OTHERS;REEL/FRAME:017098/0865;SIGNING DATES FROM 20050602 TO 20050606 |
|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BAENTSCH, MICHAEL;BUHLER, PETER;EIRICH, THOMAS;AND OTHERS;REEL/FRAME:017109/0297;SIGNING DATES FROM 20050602 TO 20050606 |
|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BAENTSCH, MICHAEL;BUHLER, PETER;EIRICH, THOMAS;AND OTHERS;REEL/FRAME:017559/0419;SIGNING DATES FROM 20050602 TO 20050606 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |