Contactless card with multiple rotating security keys

Information

  • Patent Grant
  • 11562346
  • Patent Number
    11,562,346
  • Date Filed
    Tuesday, December 22, 2020
    3 years ago
  • Date Issued
    Tuesday, January 24, 2023
    a year ago
Abstract
A contactless card can include a plurality of keys for a specific operation, e.g., encryption or signing a communication. The contactless card can also include an applet which uses a key selection module. The key selection module can select one of the plurality of keys and the applet can use the key to, e.g., encrypt or sign a communication using an encryption or signature algorithm. The contactless card can send the encrypted or signed communication to a host computer through a client device. The host computer can repeat the key selection technique of the contactless device to select the same key and thereby decrypt or verify the communication.
Description
BACKGROUND

Contactless cards have become very popular recently because these cards have simplified in-store and online transactions. At the same time, because of the popularity of these cards, hackers actively try to forge contactless cards to conduct unauthorized transactions. As a result, there has been a renewed focus on enhancing the security of these cards.


SUMMARY

A communication can be encrypted such that an unauthorized recipient would not be able to determine the content of the communication. There are various techniques for encrypting a communication. When using symmetric cryptographic algorithms, such as encryption algorithms, hash-based message authentication code (HMAC) algorithms, and cipher-based message authentication code (CMAC) algorithms, it is important that the key remains secret between the party that originally processes the data that is protected using a symmetric algorithm and the key, and the party who receives and processes the data using the same cryptographic algorithm and the same key.


A brute-force attack can consist of systematically checking all possible keys until the correct one is found. Hackers oftentimes use brute-force attacks to steal a key stored on a contactless card. As such, it is important that the same key is not used too many times. If a key is used or reused too frequently, that key may be compromised. Each time the key is used, it provides an attacker an additional sample of data which was processed by the cryptographic algorithm using the same key. The more data an attacker has which was processed with the same key, the greater the likelihood that the attacker may discover the value of the key. A key used frequently may be comprised in a variety of different attacks.


Moreover, each time a symmetric cryptographic algorithm is executed, it may reveal information, such as side-channel data, about the key used during the symmetric cryptographic operation. Side-channel data may include minute power fluctuations which occur as the cryptographic algorithm executes while using the key. Sufficient measurements may be taken of the side-channel data to reveal enough information about the key to allow it to be recovered by the attacker. Using the same key for exchanging data would repeatedly reveal data processed by the same key.


However, by limiting the number of times a particular key is used, the amount of side-channel data which the attacker is able to gather is limited and thereby exposure to this type of attack is reduced. Therefore, it is an object of this disclosure to implement a cryptographic system which enhances the security of a contactless card against such attacks by implementing multiple security keys. In one example embodiment, a contactless card can include a plurality of keys for a specific operation, e.g., encrypting or signing a communication. The contactless card can also include an applet which uses a key selection module. The key selection module can select one of the plurality of keys and the applet can use the key to, e.g., encrypt or sign a communication using an encryption or signature algorithm. The contactless card can send the encrypted or signed communication to a host computer through a terminal or a client device. The host computer can repeat or replicate the key selection technique of the contactless device to select the same key and thereby decrypt or verify the communication. For example, the host computer can use the same key selection module or algorithm as the contactless card. Thus, the key selection module of the host computer can select the same key as the key selected by the contactless card. Using the same key, the host computer can decrypt or verify the authenticity of the communication.


In one example embodiment, the key selection module can receive an input and select the key based on the input. The input can be provided by the contactless card or by an external device, e.g., a terminal or host computer. The key selection module can execute a mathematical algorithm or function which assigns the input to one of the keys stored on the contactless card.


In one example embodiment, a contactless card can store a plurality of encryption algorithms. Also, the contactless card can include an encryption algorithm selection module. For each encryption operation, the encryption algorithm selection module, when executed, can select one of the plurality of encryption algorithms. Using the selected encryption algorithm and a selected key, the contactless card can encrypt a communication and transmit the encrypted communication to a terminal.


Further features of the disclosed design, and the advantages offered thereby, are explained in greater detail hereinafter with reference to specific example embodiments described below and illustrated in the accompanying drawings.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 illustrates a contactless card according to an example embodiment.



FIG. 2 illustrates a terminal or client device according to an example embodiment.



FIG. 3 illustrates exemplary hardware components for a server or host computer.



FIG. 4 shows an example flowchart for transmission of information from a contactless card to a host computer.





DETAILED DESCRIPTION

The following description of embodiments provides non-limiting representative examples referencing numerals to particularly describe features and teachings of different aspects of the invention. The embodiments described should be recognized as capable of implementation separately, or in combination, with other embodiments from the description of the embodiments. A person of ordinary skill in the art reviewing the description of embodiments should be able to learn and understand the different described aspects of the invention. The description of embodiments should facilitate understanding of the invention to such an extent that other implementations, not specifically covered but within the knowledge of a person of skill in the art having read the description of embodiments, would be understood to be consistent with an application of the invention.


A contactless card can include a substrate and processing circuitry for storing and processing information. The processing circuitry can include processors, memories, error and parity/CRC checkers, data encoders, anticollision algorithms, controllers, command decoders, security primitives and tamperproofing hardware.


The size of a contactless card can be the same as the size of a payment card, credit card or a debit card. According to ID-1 of the ISO/IEC 7810 standard, the dimensions of a contactless card can be 85.60 by 53.98 millimeters (3.37 in×2.13 in). However, a contactless card according to these disclosures can have a different size, and it is not necessary for a contactless card to be implemented in a payment card.


The storage of information can take place in a memory of the processing circuitry, which can be a read-only memory, write-once read-multiple memory or read/write memory, e.g., RAM, ROM and EEPROM. A contactless card can include one or more of these memories. A read-only memory can be factory programmable as read-only or one-time programmable. One-time programmability provides the opportunity to write once then read many times. A write once/read-multiple memory can be programmed at a point in time after the memory chip has left the factory. Once the memory is programmed, it cannot be rewritten, but it can be read many times. A read/write memory can be programmed and re-programed many times after leaving the factory. It can also be read many times.


The memory of a contactless card can be divided into several zones, each provided with a different level of security. The contactless card processor can keep track of which memory addresses belong to which zones and the circumstances under which each zone can be accessed. A contactless card processor can also process information and store the information onto the memory. In an example embodiment, a contactless card memory can be divided into four zones: a secret zone, a confidential zone, a usage zone, and a public zone.


A secret zone can be used for storage of information which can be used only by the processor itself, e.g., passwords, cryptographic keys. The information stored in this zone is not readable outside of the contactless card. In an embodiment, the secret zone can be implemented with a separate processor that is capable of performing cryptographic functions. Cryptographic keys can be passed in to the secret zone or can be generated in the secret zone, and in either case the keys can be stored in the secret zone and used to support cryptographic services. If necessary, cryptographic keys can be exported from the secret zone.


In an example embodiment, the contactless card can be a JavaCard which can include one or more applets. The applets can be firewalled, and data can be allocated to the applet for storage. The data can be stored transactionally in an EEPROM flash memory, e.g., if the write isn't complete when the power is removed, the contents remain the same as before.


A confidential zone can be used to store a list of all transactions made with the card. The confidential zone can have password protection. In an example embodiment, the password is known only to the card issuer, who can examine the history of the card for evidence of misuse of the system. The confidential zone can have a read-only access restriction so that the information stored in this zone could not be modified, e.g., transaction list could not be modified.


A usage zone could be used for storage of information which can be periodically updated or modified. Depending on the sensitivity of the data, a password can be implemented for this zone. The usage zone can have both read and write access protected by a password.


A public zone can be used for keeping nonsensitive information, such as the card issuer's name and address. The public zone can have read-only access, without a password.


In one example embodiment, the memory of the contactless card can store a plurality of keys. These keys can be used for various operations, e.g., encryption or signing. Additionally, the contactless card can store a plurality of encryption algorithms. The memory can also store a key selection module and an encryption selection module. Using the key selection module, an applet of the contactless card can select a key for an operation of the contactless card, e.g., encryption. Using the encryption algorithm selection module, the contactless card can select an encryption algorithm to encrypt a communication.


A contactless card can wirelessly communicate with a terminal. For example, a contactless card can be a credit card including a magnetic tape or a radio-frequency identification (“RFID”) tag. Some contactless cards can include both the magnetic tape and the RFID tag.


A terminal can communicate with a contactless card if the contactless card is held in proximity to the terminal. The terminal can read the contactless card over a short distance using near-field communication (“NFC”) technology, which uses radio frequency induction. A contactless card can include an inductor to capture some of the incident radio-frequency interrogation signals transmitted by the terminal, rectify it, and use it to power the card's processing circuitry. As such, contactless cards can function without an internal power source. However, in some embodiments, contactless cards can include an internal power source.


The contactless card can be EMV-compliant. Europay, MasterCard and Visa (“EMV”) is a payment method based upon a technical standard for smart payment cards. EMV cards can store their data on integrated circuits in addition to magnetic stripes.


The standard for contact cards can be based on ISO/IEC 7816, and the standard for contactless card can be based on ISO/IEC 14443.



FIG. 1 illustrates a contactless card 100 according to an example embodiment. In this embodiment, the contactless card 100 can be a payment card issued by a service provider 101, the name of which can be displayed on the front or back of the contactless card 100. The size of the contactless card 100 can be compliant with ID-1 of the ISO/IEC 7810 standard, i.e., 85.60 by 53.98 millimeters. The contactless card 100 can include a contact pad 102 for establishing contact with a contact terminal. The contactless card 100 can also include processing circuitry, antenna and other components not displayed in FIG. 1 (e.g., one or more microprocessors and one or more memories). These components can be located behind the contact pad 102, however, it is understood that these components can also be located elsewhere within the contactless card 100 and do not need to be located behind the contactless card 100. The contactless card 100 can also include various identification information 103 displayed on front or back of the card. The contactless card 100 can also include a magnetic strip or tape, which can be located on the back of the card.


In one example embodiment, the contactless card 100 can include a power source and a timer. The timer can be powered by the power source. The processor of the contactless card can receive a time signal from the timer, e.g., when processing transactions or encrypting messages. The processor can encrypt a message, select a key or select an encryption algorithm based on the time signal. In one example embodiment, the contactless card can receive a time signal from a terminal, client device or a host computer. In this embodiment, the contactless card can encrypt a message or select a key based on the time signal received.


In another example, an applet of the contactless card 100 can include a counter module. The counter module can maintain a count number which can count the number of occurrences of an event. For example, the module can count the number of times the contactless card interacts with a terminal, client device or host computer. Each time the contactless card is scanned at a terminal, the processor of the contactless card can send a signal to the counter module to increment the count number.


In an example embodiment, the contactless card is provided with a radio-frequency identification (“RFID”) tag. In some embodiments, the RFID tag can include processing circuitry for storing and processing information that modulates and demodulates a radio-frequency signal (usually received from a terminal, reader/writer or scanner). An RFID tag can also include an antenna for receiving and transmitting the signal. Additionally, an RFID tag can include a power source or means for collecting DC power from the incident terminal signal. These means can include modulators, voltage regulators, resets, and connections to an antenna. The antenna can be an electric dipole antenna or a coil antenna.


In an example embodiment, the coil of a contactless card can act as the secondary of an air core transformer. The terminal can communicate with the contactless card by cutting power or amplitude modulation. The contactless card can infer the data transmitted from the terminal using the gaps in the contactless card's power connection, which is functionally maintained through capacitors. The contactless card can communicate back by switching a load on the contactless card's coil or load modulation. Load modulation can be detected in the terminal's coil through interference.


A terminal can read information from a contactless card and write information onto the contactless card. In some embodiments, the terminal can pass information from the contactless card to a host computer (or server) and write information from the host computer into the contactless card. In some embodiments, the host computer can be the terminal. The terminal can provide power to the contactless card and communicatively connect the card's hardware interface to the host computer. Since the contactless card's processor can control the actual flow of information into and out of the card's memories, the terminal can operate with only minimal processing capabilities for sending the information to the host computer. In one embedment, the terminal can be a payment terminal. In other embodiments, the terminal can be a client device such as a cellphone, smart phone, laptop, desktop, wearable device, etc.


In some embodiments, the terminal can include a processor and a transceiver. The processor of the terminal can decode any data received from the contactless card. The terminal can also update, delete or modify the information stored on the contactless card.


A terminal can write data on the contactless card by passing the data to the processor of the contactless card. The processor can process the data and store it in the contactless card's memory. A terminal can have a two-way communication with a contactless card as described in ISO 14443. The contactless card can include an RFID tag. The two-way communication can be digitally encoded. There can be several frequency ranges, and several proprietary formats for the two-way communication (e.g., HID in the 125 Mhz range). The 13.56 Mhz frequency range (NFC) is dominated by ISO 14443 compatible cards.


A terminal and a contactless card can exchange messages, which can include commands or data. For example, a terminal can send a command message to the contactless card, the contactless card can process the command message in its processor and the contactless card can send back a response message to the terminal. Each of the command message and the response message can include data. A message can include TLV (Type, Length and Value) data and a command such as STORE_DATA command which prompts storage of the data included in the message in the contactless card.



FIG. 2 illustrates a terminal 200 according to an example embodiment. In this example embodiment, the terminal 200 can include a display screen 201. This display screen can be any type of display screen, e.g., an LCD display screen. The terminal 200 can also include a keypad 202. Using the keypad 202, a customer can enter information into the terminal 200. The terminal 200 can also include an opening 203 for inserting a chip card into the terminal 200. Using the opening 203, a customer can insert a chip card into the terminal 200 so that the pins of the terminal 200 can electrically connect with the contact pad of the chip card. In some embodiments, the terminal 200 can include a magnetic card opening 204. Using the magnetic card opening 204, the customer can swipe the contactless card at the terminal 200 and the terminal 200 can obtain any information stored on the magnetic tape of the contactless card.


In an example embodiment, the terminal 200 can be a contactless RFID terminal, which can include antennas for sending and receiving signals, a transceiver, and a processor to decode data. In a passive system, the terminal can transmit an energy field that can wake up the tag and power its chip, thereby enabling it to transmit or store data. In turn, the tag converts the radio signal into usable power, and responds to the terminal in the form of a radio signal. The signal can include the tag's identity and other information. Once the terminal receives the response, the terminal converts the response and extracts any information included in the radio signal. The information collected from the tag is then transferred through a communications interface to a host computer system, where the data can be stored in a database or analyzed by the computer system. The terminal can also update, delete or modify the information stored on the contactless card.


In the example embodiment of FIG. 2, the terminal 200 is provided with one or more antennas (not displayed), which enable the device to read information from a contactless card and write information on the contactless card. The terminal 200 can include an indicator 205, which shows that the device can be contactless.


In this disclosure, the terms reader/writer, scanner, terminal and client device have been used interchangeably, and they all refer to a device which can scan a contactless card and/or write information on the contactless card.


In some embodiments, the terminal can be communicatively connected to a host computer, backend server or server. In other embodiments, the terminal can be integrated in the host computer (or server). The host computer can receive encrypted or signed communication from the contactless card (e.g., through a terminal) and can decrypt the communication or verify the communication's authenticity.



FIG. 3 illustrates exemplary hardware components of a host computer or backend server. A computer system 300, or other computer systems similarly configured, may include and execute one or more subsystem components to perform functions described herein, including the steps of various flow processes described above. Likewise, a mobile device, a cell phone, a smartphone, a laptop, a desktop, a notebook, a tablet, a wearable device, a server, etc., which includes some of the same components of the computer system 300, may run an application (or software) and perform the steps and functionalities described above. Computer system 300 may connect to a network 314, e.g., Internet, or other network, to receive inquiries, obtain data, and transmit information and incentives as described above.


The computer system 300 typically includes a memory 302, a secondary storage device 304, and a processor 306. The computer system 300 may also include a plurality of processors 306 and be configured as a plurality of, e.g., bladed servers, or other known server configurations. The computer system 300 may also include a network connection device 308, a display device 310, and an input device 312.


The memory 302 may include RAM or similar types of memory, and it may store one or more applications for execution by processor 306. Secondary storage device 304 may include a hard disk drive, floppy disk drive, CD-ROM drive, or other types of non-volatile data storage. Processor 306 executes the application(s), such as those described herein, which are stored in memory 302 or secondary storage 304, or received from the Internet or other network 314. The processing by processor 306 may be implemented in software, such as software modules, for execution by computers or other machines. These applications preferably include instructions executable to perform the system and subsystem component functions and methods described above and illustrated in the FIGS. herein. The applications preferably provide graphical user interfaces (GUIs) through which users may view and interact with subsystem components.


The computer system 300 may store one or more database structures in the secondary storage 304, for example, for storing and maintaining the information necessary to perform the above-described functions. Alternatively, such information may be in storage devices separate from these components.


Also, as noted, processor 306 may execute one or more software applications to provide the functions described in this specification, specifically to execute and perform the steps and functions in the process flows described above. Such processes may be implemented in software, such as software modules, for execution by computers or other machines. The GUIs may be formatted, for example, as web pages in HyperText Markup Language (HTML), Extensible Markup Language (XML) or in any other suitable form for presentation on a display device depending upon applications used by users to interact with the computer system 300.


The input device 312 may include any device for entering information into the computer system 300, such as a touch-screen, keyboard, mouse, cursor-control device, microphone, digital camera, video recorder or camcorder. The input and output device 312 may be used to enter information into GUIs during performance of the methods described above. The display device 310 may include any type of device for presenting visual information such as, for example, a computer monitor or flat-screen display (or mobile device screen). The display device 310 may display the GUIs and/or output from sub-system components (or software).


Examples of the computer system 300 include dedicated server computers, such as bladed servers, personal computers, laptop computers, notebook computers, palm top computers, network computers, mobile devices, or any processor-controlled device capable of executing a web browser or other type of application for interacting with the system.


Although only one computer system 300 is shown in detail, system 300 may use multiple computer systems or servers as necessary or desired to support the users and may also use back-up or redundant servers to prevent network downtime in the event of a failure of a particular server. In addition, although computer system 300 is depicted with various components, one skilled in the art will appreciate that the system can contain additional or different components. In addition, although aspects of an implementation consistent with the above are described as being stored in a memory, one skilled in the art will appreciate that these aspects can also be stored on or read from other types of computer program products or computer-readable media, such as secondary storage devices, including hard disks, floppy disks, or CD-ROM; or other forms of RAM or ROM. The computer-readable media may include instructions for controlling the computer system 300, to perform a particular method, such as methods described above.


In an example embodiment, a contactless card can communicate (i.e., transmit or receive) data from the host computer, e.g., through the terminal or client device. The contactless card can communicate with the terminal, e.g., using at least one of NFC, Bluetooth, RFID, Wi-Fi, and/or the like technologies. The terminal can act as an intermediary between the contactless card and the host computer, e.g., the terminal can forward a communication received from the contactless card to the host computer and vice versa. The terminal can communicate with the host computer using a network. For example, the network can include one or more of a fiber optics network, a passive optical network, a cable network, an Internet network, a satellite network, a wireless LAN, a Global System for Mobile Communication, a Personal Communication Service, a Personal Area Network, Wireless Application Protocol, Multimedia Messaging Service, Enhanced Messaging Service, Short Message Service, Time Division Multiplexing based systems, Code Division Multiple Access based systems, D-AMPS, Wi-Fi, Fixed Wireless Data, IEEE 802.11b, 802.15.1, 802.11n and 802.11g, Bluetooth, NFC, RFID, Wi-Fi, and/or the like.


In some embodiments, a communication between the contactless card and the terminal can be encrypted, e.g., the communication can be encoded in such a way that only authorized parties or devices (e.g., the contactless card or the host computer) can decode or decrypt the communication. For example, the communication can be encrypted using a symmetric-key or a public-key scheme. For each one of these encryption schemes, there can be at least one key and an encryption algorithm stored on the contactless card. Similarly, an associated key and an associated encryption (decryption) algorithm can be stored on the host computer. The contactless card can encrypt a communication using the key and the encryption algorithm. The contactless card can transmit the communication to the host computer, e.g., through a client device such as a cell phone. The host computer can decrypt the communication using the associated key and associated encryption algorithm.


In an example embodiment, the encryption scheme is the symmetric-key scheme. In this example, the contactless card can store a symmetric key and an encryption algorithm. Example encryption algorithms can include Twofish, Serpent, AES (Rijndael), Blowfish, CAST5, Kuznyechik, RC4, DES, 3DES, Skipjack, Safer+/++ (Bluetooth), and IDEA. The host computer can also store a copy of the symmetric key and the encryption (or decryption) algorithm. In response to a message from the terminal, the processor of the contactless card can encrypt a communication using the symmetric key and the encryption algorithm to create a cryptogram. The contactless card can transmit the cryptogram to the terminal using a transceiver of the contactless card. The terminal can in turn transmit the cryptogram to the host computer. The host computer can decrypt the cryptogram using the symmetric key and the encryption (or decryption) algorithm.


In an example embodiment, the encryption scheme is the public-key scheme. In this example, the contactless card can store a public (or private) key and an encryption algorithm. Examples of public-key encryption algorithms include Diffie-Hellman key exchange protocol, DSS, ElGamal, Paillier cryptosystem, RSA, Cramer-Shoup cryptosystem and YAK authenticated key agreement protocol. The host computer can store a private (or public) key and the encryption (or decryption) algorithm. In response to a message from the terminal, the processor of the contactless card can encrypt a communication using the public (or private) key and the encryption algorithm to create a cryptogram. The contactless card can transmit the cryptogram to the terminal using a transceiver of the contactless card. The terminal can in turn transmit the cryptogram to the host computer. The host computer can decrypt the cryptogram using the private (or public) key and the encryption (or decryption) algorithm.


In an example embodiment, a communication between the contactless card and the host computer can include a message authentication code (MAC), a hashed message authentication code (HMAC) or a digital signature. The MAC, HMAC or digital signature can be a mathematical code or scheme which can establish authenticity of the information included in the communication. For example, when a contactless card is scanned at a terminal, the contactless card can transmit a communication to the host computer to seek authorization of a transaction. The communication can include various data, such as an account number, a name, a card security value, an expiration date and a MAC (or HMAC or digital signature). Using the MAC (or HMAC or digital signature) included in the communication, the host computer can establishes that the content of the communication is authentic (i.e., not altered). Specifically, the host computer can recreate the MAC (or HMAC or digital signature), and if the value of the MAC (or HMAC or digital signature) is the same as the MAC (or HMAC or digital signature) included in the communication, the host computer can ensure that the content of the communication is not altered. Also, the digital signature prevents (the owner of) the contactless card from denying that it transmitted the information because only the contactless card could create the MAC (or HMAC or digital signature) included with the message.


A MAC can include the following algorithms. In the first step, a key generation algorithm can generate a key. In the second step, a signing algorithm can return a tag created using the generated key and a message. In the third step, a verifying algorithm verifies the authenticity of the message given the key and the tag.


A digital signature scheme can include the following algorithms. In the first step, a key generation algorithm generates a private key and a corresponding public key. In the second step, a signing algorithm generates a digital signature using a message and a private key. In the third step, a signature verifying algorithm can verify the message using the digital signature and the public key. A MAC differs from a digital signature in that a MAC scheme uses only one key but a digital signature scheme uses two keys, i.e., a public key and a private key.


In an example digital signature scheme, the authenticity of the digital signature generated from the fixed message and fixed private key can be verified by using the corresponding public key. Moreover, these algorithms are selected such that it is computationally infeasible to generate a valid signature for a party without knowing that party's private key. This digital signature scheme can ensure authenticity of the content of a communication because if the content is digitally signed, any change in the content after signature invalidates the signature. In other words, it is practically impossible to modify the content and its signature to produce new content with a valid signature.


In an example embodiment, a contactless card can be provided with a private key and a signing algorithm. The host computer can be provided with a public key and a verifying algorithm. When a contactless card is scanned at a terminal, the contactless card can transmit a communication including a digital signature to the terminal, and the terminal can forward this communication to the host computer. The digital signature can be generated using the signing algorithm and the private key of the contactless card. The digital signature can include data such as an account number, an expiration date and a code verification value. When the host computer receives the communication, the host computer can verify the authenticity of the information included in the communication using the public key, the verifying algorithm and information included in the communication. For example, the host computer can regenerate the digital signature using the information included in the communication. If the regenerated digital signature matches the digital signature included in the communication, the host computer can verify the authenticity of the information. Otherwise, the host computer can conclude that the content of the communication is forged.


A digital signature scheme can have several advantages. For example, a hacker would be motivated to forge the content of a communication to seek authorization of a sham transaction. A digital signature can prevent this by authenticating the information included in the communication. So long as the private key associated with the contactless card is secret, the digital signature can authenticate and verify the communication.


In some example embodiments, before the content is converted into a MAC or digital signature using a signing algorithm, the message or content can be hashed. A hash function is a mathematical algorithm that maps a message of arbitrary size to a bit string of a fixed size (i.e., a hash). A hash function can be a one-way function, i.e., it is infeasible to invert the function. In an example embodiment, the MAC is built from a hash function, and thus, the product is a HMAC. In another example embodiment, the digital signature is built from a hash function.


There are several reasons to make a MAC or digital signature form hashed content as opposed to the content itself. For example, because a hash has a fixed size, the hash of the content can be shorter than the actual content, and thus, the MAC or the digital signature of the hash can be much shorter than the MAC or the digital signature of the actual content. Moreover, because it is faster to hash the content than to convert it into MAC or digital signature, it is faster to convert the hash of the content into a MAC or digital signature. In an example embodiment, the content of the contactless card is written using a HMAC.


In an example embodiment, a contactless card can include a plurality of security keys (or “keys”). For example, a contactless card can include five keys for a first operation, e.g., encryption. As another example, the contactless card can include six keys for a second operation, e.g., signing a digital signature. When the contactless card is manufactured, the manufacturer can store these keys on the contactless card. For each key stored on the contactless card, the manufacturer can also store an associated key on the host computer. In the symmetric-key scheme, each associated key can be the same as one of the keys stored on the contactless card. In the public-key scheme, a private (or public) key can be associated with one of the public (or private) keys stored on the contactless card. In one example, the card manufacturer can generate the key pairs. In another example, the key pairs can be generated by the contactless card or the host computer.


An applet of the contactless card can include a key selection module, which can select the key to be used for an operation. For example, each time the contactless card encrypts (or signs) a communication, the key selection module selects one of the keys for the encryption (or signing) operation. The key selection module can use a variety of techniques for selecting the key.


For example, the key selection module can choose the keys sequentially. In this example, for each operation requiring a key, an order can be assigned to the keys stored on the contactless card for that operation. The key selection module can select the keys in the assigned order. For example, the key selection module can select the keys based on a modular index. Once every key is used to perform the operation (e.g., encrypt or sign a communication), the key selection module can select the keys in the same order again. The order or sequence of the keys can be known to the host computer. For example, the manufacturer of the card assigned the order of the keys when the manufacturer placed the keys on the card. In this example, the manufacturer can provide the order to the host computer. As another example, the applet of the contactless card assigns the order of the keys, and the applet can communicate this order to the host computer (e.g., through a client device). As yet another example, a terminal or client device can determine the order and the terminal or client device can send the order to the contactless card and the host computer.


In an example embodiment, the key selection module can include a mathematical function or algorithm which receives an input and selects a key based on the input (e.g., the function defines a many-to-many relationship between the inputs and keys). For example, the key selection module can receive a counter number or* time signal and based on the counter number or time signal can select a key among the plurality of keys available. In this example embodiment, the host computer can also store the same key selection module (or the algorithm embedded therein) to select the keys. The host computer can also obtain the same counter number or time signal. For example, every time the contactless card is used to conduct a transaction, the counter of the contactless card increments the counter number at the contactless card and the counter of the host computer increments the count number at the host computer. This way, both the contactless card and the host computer can include the same count number when selecting the key. As another example, each of the contactless card and the host computer can include a timer. The timer can provide a time signal to the contactless card and the host computer. When both the contactless card and the host computer include the same counter number or time signal, using the key selection module, each of the contactless card and the host computer can select the same key for the operation.


As yet another example, the key selection module can select a key based on an input provided by a source outside of the contactless card. For example, the contactless card and the host computer can receive an input or signal from a terminal or client device, e.g., the input or signal can include information such as date, location coordinates of the terminal, location of the Hubble telescope, a photo of the user taken at the terminal, a number provided by the user on the terminal, etc. Based on this input, the key selection algorithm of each of the contactless card and the host computer can select a key and process a transaction.


As yet another example, the key selection module can randomly select the keys. In this example, the host computer does not know which key is selected by the contactless card. However, when the host computer receives a communication, the host computer can try all of its keys to decrypt the communication. In some examples, the key selection module can select keys based on a replaceable random selection algorithm.


As yet another example, the key selection module can select the keys based on the last transaction value conducted by the card. The contactless card can store the transaction value for the last transaction. Similarly, the host computer can store the transaction value for the last transaction. Using the transaction value, the key selection module can derive a value, which can select the key. For example, if the last transaction value for the card is $9.95, the key selection module can select a key for encryption based on the last digit of the transaction value, which here is 5. The key selection module can select the key that, e.g., is ranked as 5


As yet another example embodiment, there can be a plurality of key selection algorithms, and each algorithm can receive an input and produce an output which determines the key to be selected for an operation. In this embodiment, there can be an algorithm selection module which selects the key selection algorithm based on an input. For example, the contactless card can include two key selection algorithms, and each algorithm can use the count number to designate a key for an encryption operation. In this example, a user can provide a PIN to the client device. The client device can transmit the PIN to both the contactless card and the host computer and each device can use the PIN as an input for the algorithm selection module. Using the PIN and the algorithm selection module, each of the contactless card and the host computer can select one of the two key selection algorithms. Using the count number and the chosen key selection algorithm, each of the contactless card and the host computer can select the same key for the operation.



FIG. 4 shows an example flowchart for transmission of information from a contactless card to a host computer. In this example embodiment, a public-key scheme is implemented as the encryption technique. In step 401, a plurality of pairs of private and public keys are generated. These keys can be generated using a key generation algorithm. In step 402, the private keys are stored on a contactless card and the public keys are stored on a host computer. In step 403, a customer scans the contactless card at a terminal to request a transaction. The terminal can power up the contactless card and an applet of the contactless card can generate a communication. The communication can include an account number of the user.


In step 404, a key selection module of the applet can select one of the private keys stored on the contactless card. For example, the applet can transmit a request to the terminal to prompt the user to enter a number. In response, the user can enter the number and the terminal can transmit the number to the contactless card. The terminal can also transmit the number to the host computer. Using the number, the key selection module can select one of the private keys stored on the contactless card. In another example, the contactless card can request the terminal to transmit the terminal's location, e.g., zip code, to the contactless card. The terminal can transmit the location to the contactless card and the host computer. Based on the location, the key selection module can select one of the private keys.


In step 405, the applet can encrypt the communication using the selected private key. In step 406, the contactless card can transmit the encrypted communication to the terminal and the terminal can transmit the encrypted communication to the host computer. In step 407, the host computer can select a public key for decrypting the communication. For example, the host computer can use the number that the terminal transmitted to the host computer to select the public key. The public key can be selected using the key selection module stored on the host computer. In step 408, the host computer decrypts the communication using the public key that was selected in step 407.


In one example embodiment, the contactless card can include a plurality of encryption algorithms. The contactless card can encrypt communications or create cryptograms using each of the encryption algorithms. The contactless card can also include an encryption algorithm selection module. The encryption algorithm selection module can select one of the plurality of encryption algorithms, and the contactless card can encrypt the communication using the selected encryption algorithm. Similarly, the host computer can include the plurality of encryption algorithms and the encryption algorithm selection module. When the host computer receives an encrypted communication, using the encryption algorithm selection module, the host computer can decide which encryption algorithm use to decrypt the communication.


In one embodiment, the encryption algorithm selection module can operate similar to the algorithm selection module or key selection module discussed above, e.g., receive an input and, based on the input, select one of the plurality of encryption algorithms.


In an example embodiment, for an encryption operation, a contactless card can include ten keys and two encryption algorithms, e.g., AES and 3DES. When processing a transaction, the contactless card can receive a number input from the terminal, e.g., the user provides the number input on a keypad of the terminal. The contactless card can also store a counter number in the memory of the contactless card. The counter number can represent the number of transactions the contactless card has requested.


The contactless card can include a key selection module and an encryption algorithm selection module. The key selection module can receive the number input and, for example, based on the last digit of the number input, select one of the ten keys stored on the contactless card for the encryption operation. The encryption algorithm selection module can receive the counter number and select the AES algorithm if the counter number is even, or select the 3DES algorithm if the counter number is odd. The contactless card can create a cryptogram using a selected key and selected encryption algorithm and transmit the cryptogram to the terminal.


In one example embodiment, the contactless card can switch between a secret key OTP (or one-time password) for some transactions, and if possible, (e.g., two-way communication is possible) Public key for other transactions. As described above for various selection modules, the encryption algorithm selection module can select or switch between the two encryption schemes.


In one example embodiment, the contactless card can include a plurality of keys for a specific operation, and each time the contactless card needs to perform the operation, the key selection module can select one of the keys for the operation.


In another example embodiment, the contactless card can include a master key and a key diversification algorithm. The key diversification algorithm can generate a plurality of distinct keys using an input. In this example embodiment, for at least one of the operations on the contactless card, the contactless card can store a master key. The key selection module can provide an output to the key diversification algorithm, and, using the output, the key diversification algorithm can generate a diversified key for the master key. The contactless card can perform the operation using the diversified key, e.g., encrypt a communication. Similarly, as described above, the host computer can generate the same output using the key selection module. The host computer can also store the same key diversification algorithm and master key. Using the output, the key diversification algorithm and master key, the host computer can generate the same diversified key as the contactless card and perform an associated operation on the host computer, e.g., decrypt the communication.


The present disclosure is not to be limited in terms of the particular embodiments described in this application, which are intended as illustrations of various aspects. Many modifications and variations can be made without departing from its spirit and scope, as may be apparent. Functionally equivalent methods and apparatuses within the scope of the disclosure, in addition to those enumerated herein, may be apparent from the foregoing representative descriptions. Such modifications and variations are intended to fall within the scope of the appended representative claims. The present disclosure is to be limited only by the terms of the appended representative claims, along with the full scope of equivalents to which such representative claims are entitled. It is also to be understood that the terminology used herein is for the purpose of describing particular embodiments only, and is not intended to be limiting.

Claims
  • 1. A system, comprising: a server comprising a processor and a memory, the memory storing a first plurality of keys, a first input value, a key selection algorithm configured to select one of the first plurality of security keys based on the first input value, and a first encrypted communication from a contactless card; andthe contactless card, wherein the contactless card comprises a card processor and a card memory, the card memory storing the first plurality of security keys, the key selection algorithm, and the first input value, andwherein the server: updates the first input value to derive a second input value using a first number derived from a first transaction associated with the contactless cardselects a first selected key using the key selection algorithm and the updated input value, the first selected key being one of the first plurality of keys,decrypts the first encrypted communication using the first selected key to obtain a first unencrypted communication,receives a second encrypted communication from the contactless card,updates the second input value to derive a third input value using a second number derived from a second transaction associated with the contactless card,selects a second selected key using the key selection algorithm and the third input value, the second selected key being one of the first plurality of keys, anddecrypts the second encrypted communication using the second selected key to obtain a second unencrypted communication.
  • 2. The system of claim 1, wherein: the memory of the server stores a second plurality of security keys, a fourth input value, a verification algorithm, and a fifth input value; and the card memory stores the second plurality of security keys, the fourth input value, the verification algorithm, and the fifth input value,wherein the server: receives a third encrypted communication from the contactless card through the client device,selects a third selected key using the key selection algorithm and the fourth input value, the third selected key being one of the first plurality of security keys,decrypts the third encrypted communication using the third selected security key to obtain a third unencrypted communication,selects a fourth selected key using the verification algorithm and the fifth input value, the fourth selected key being one of the second plurality of security keys, andverifies the third communication using the fifth selected security key.
  • 3. The system of claim 2, wherein the key selection algorithm is selecting the third selected key based on the counter value.
  • 4. The system of claim 1, wherein the first input value is a counter number and each time the contactless card is scanned at the client device, the counter number is incremented at the contactless card and the server.
  • 5. The system of claim 1, wherein the key selection algorithm is selecting the third selected key based a time of the transaction.
  • 6. The system of claim 1, wherein the key selection algorithm is selecting the third selected key based on a modular index.
  • 7. The system of claim 1, wherein the first number derived from the transaction is a last digit of a total for a purchase transaction by a credit card.
  • 8. The system of claim 1, wherein the contactless card generated the first encrypted communication using a contactless card selected key.
  • 9. A method performed by a server comprising a processor and a memory, the memory storing a first plurality of keys, a first input value, a key selection algorithm configured to select one of the first plurality of security keys based on the first input value, and a first encrypted communication from a contactless card and a second encrypted communication from the contactless card, the method comprising: updating the first input value to derive a second input value using a first number derived from a first transaction associated with the contactless card; selecting a first selected key using the key selection algorithm and the second input value, the first selected key being one of the first plurality of keys;decrypting the first encrypted communication using the first selected key to obtain a first unencrypted communication;updating the second input value to derive the third input value using a second number derived from a second transaction associated with the contactless card;selecting a second selected key using the key selection algorithm and the third input value, the second selected key being one of the first plurality of keys; anddecrypting the second encrypted communication using the second selected key to obtain a second unencrypted communication,wherein the contactless card includes a card processor and a card memory, the card memory storing the first plurality of security keys, the key selection algorithm, and the first input value.
  • 10. The method of claim 9, wherein the third input value is a counter number and each time the contactless card is scanned at the client device, the counter number is incremented at the contactless card and the server.
  • 11. The method of claim 9, wherein the key selection algorithm is selecting the second selected key based on the counter value.
  • 12. The method of claim 9, wherein the key selection algorithm is selecting the third selected key based on a replaceable random selection algorithm.
  • 13. The method of claim 9, wherein the first number derived from the first transaction is a last digit of a total for a purchase transaction by a credit card.
  • 14. The method of claim 9, wherein the contactless card generated the first encrypted communication using a contactless card selected key.
  • 15. A contactless card, comprising: a memory containing one or more applets, a counter value, a plurality of keys, and a key selection algorithm configured to select one of the first plurality of keys based on the counter value;a transceiver; anda processor in communication with the memory and the transceiver,wherein the processor: increments the counter value when the transceiver is within a range of a communication field of a client device,selects a first selected key using a key selection algorithm stored on the memory,generates a communication,encrypts the communication using the first selected key to obtained an encrypted communication, andtransmits, via the transceiver, the encrypted communication to the client device.
  • 16. The contactless card of claim 15, wherein the key selection algorithm is selecting the first selected key based on an assigned order.
  • 17. The contactless card of claim 15, wherein the key selection algorithm is selecting the first selected key randomly.
  • 18. The contactless card of claim 15, wherein the key selection algorithm is selecting the first selected key based on a transaction value for the last transaction conducted by the contactless card.
  • 19. The contactless card of claim 15, wherein: the contactless card further comprises a timer configured to provide a time signal to the processor, and the processor selects the first key based on the time signal.
  • 20. The contactless card of claim 15, wherein: the memory further contains a plurality of key selection algorithms, the contactless card further comprises a timer configured to provide a time signal to the processor, and the processor selects the key selection algorithm from the plurality of key selection algorithms based on the time signal.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 16/863,902 filed Apr. 30, 2020, the disclosure of which is incorporated herein by reference in its entirety.

US Referenced Citations (583)
Number Name Date Kind
4683553 Mollier Jul 1987 A
4827113 Rikuna May 1989 A
4910773 Hazard et al. Mar 1990 A
5036461 Elliott et al. Jul 1991 A
5363448 Koopman, Jr. et al. Nov 1994 A
5377270 Koopman, Jr. et al. Dec 1994 A
5533126 Hazard Jul 1996 A
5537314 Kanter Jul 1996 A
5592553 Guski et al. Jan 1997 A
5616901 Crandall Apr 1997 A
5666415 Kaufman Sep 1997 A
5737419 Ganesan Apr 1998 A
5748735 Ganesan May 1998 A
5764789 Pare, Jr. et al. Jun 1998 A
5768373 Lohstroh et al. Jun 1998 A
5778072 Samar Jul 1998 A
5796827 Coppersmith et al. Aug 1998 A
5832090 Raspotnik Nov 1998 A
5850443 Van Oorschot et al. Dec 1998 A
5883810 Franklin et al. Mar 1999 A
5901874 Deters May 1999 A
5929413 Gardner Jul 1999 A
5960411 Hartman et al. Sep 1999 A
6021203 Douceur et al. Feb 2000 A
6049328 Vanderheiden Apr 2000 A
6058373 Blinn et al. May 2000 A
6061666 Do et al. May 2000 A
6105013 Curry et al. Aug 2000 A
6199114 White et al. Mar 2001 B1
6199762 Hohle Mar 2001 B1
6216227 Goldstein et al. Apr 2001 B1
6227447 Campisano May 2001 B1
6282522 Davis et al. Aug 2001 B1
6324271 Sawyer et al. Nov 2001 B1
6342844 Rozin Jan 2002 B1
6367011 Lee et al. Apr 2002 B1
6402028 Graham, Jr. et al. Jun 2002 B1
6438550 Doyle et al. Aug 2002 B1
6501847 Helot et al. Dec 2002 B2
6631197 Taenzer Oct 2003 B1
6641050 Kelley et al. Nov 2003 B2
6655585 Shinn Dec 2003 B2
6662020 Aaro et al. Dec 2003 B1
6721706 Strubbe et al. Apr 2004 B1
6731778 Oda et al. May 2004 B1
6769060 Dent et al. Jul 2004 B1
6779115 Naim Aug 2004 B1
6792533 Jablon Sep 2004 B2
6829711 Kwok et al. Dec 2004 B1
6834271 Hodgson et al. Dec 2004 B1
6834795 Rasmussen et al. Dec 2004 B1
6852031 Rowe Feb 2005 B1
6865547 Brake, Jr. et al. Mar 2005 B1
6873260 Lancos et al. Mar 2005 B2
6877656 Jaros et al. Apr 2005 B1
6889198 Kawan May 2005 B2
6905411 Nguyen et al. Jun 2005 B2
6910627 Simpson-Young et al. Jun 2005 B1
6971031 Haala Nov 2005 B2
6990588 Yasukura Jan 2006 B1
7006986 Sines et al. Feb 2006 B1
7007164 Euchner Feb 2006 B1
7085931 Smith et al. Aug 2006 B1
7127605 Montgomery et al. Oct 2006 B1
7128274 Kelley et al. Oct 2006 B2
7140550 Ramachandran Nov 2006 B2
7152045 Hoffman Dec 2006 B2
7165727 de Jong Jan 2007 B2
7175076 Block et al. Feb 2007 B1
7202773 Oba et al. Apr 2007 B1
7206806 Pineau Apr 2007 B2
7221757 Alao May 2007 B2
7232073 de Jong Jun 2007 B1
7246752 Brown Jul 2007 B2
7254569 Goodman et al. Aug 2007 B2
7263507 Brake, Jr. et al. Aug 2007 B1
7270276 Vayssiere Sep 2007 B2
7278025 Saito et al. Oct 2007 B2
7287692 Patel et al. Oct 2007 B1
7290709 Tsai et al. Nov 2007 B2
7306143 Bonneau, Jr. et al. Dec 2007 B2
7319986 Praisner et al. Jan 2008 B2
7325132 Takayama et al. Jan 2008 B2
7373515 Owen et al. May 2008 B2
7374099 de Jong May 2008 B2
7375616 Rowse et al. May 2008 B2
7380710 Brown Jun 2008 B2
7424977 Smets et al. Sep 2008 B2
7453439 Kushler et al. Nov 2008 B1
7472829 Brown Jan 2009 B2
7487357 Smith et al. Feb 2009 B2
7568631 Gibbs et al. Aug 2009 B2
7584153 Brown et al. Sep 2009 B2
7597250 Finn Oct 2009 B2
7628322 Holtmanns et al. Dec 2009 B2
7652578 Braun et al. Jan 2010 B2
7689832 Talmor et al. Mar 2010 B2
7703142 Wilson et al. Apr 2010 B1
7748609 Sachdeva et al. Jul 2010 B2
7748617 Gray Jul 2010 B2
7748636 Finn Jul 2010 B2
7762457 Bonalle et al. Jul 2010 B2
7789302 Tame Sep 2010 B2
7793851 Mullen Sep 2010 B2
7796013 Murakami et al. Sep 2010 B2
7801799 Brake, Jr. et al. Sep 2010 B1
7801829 Gray et al. Sep 2010 B2
7805755 Brown et al. Sep 2010 B2
7809643 Phillips et al. Oct 2010 B2
7827115 Weller et al. Nov 2010 B2
7828214 Narendra et al. Nov 2010 B2
7848746 Juels Dec 2010 B2
7882553 Tuliani Feb 2011 B2
7900048 Andersson Mar 2011 B2
7908216 Davis et al. Mar 2011 B1
7922082 Muscato Apr 2011 B2
7933589 Mamdani et al. Apr 2011 B1
7949559 Freiberg May 2011 B2
7954716 Narendra et al. Jun 2011 B2
7954723 Charrat Jun 2011 B2
7958362 Hwang Jun 2011 B2
7962369 Rosenberg Jun 2011 B2
7993197 Mamdani et al. Aug 2011 B2
8005426 Huomo et al. Aug 2011 B2
8010405 Bortolin et al. Aug 2011 B1
RE42762 Shin Sep 2011 E
8041954 Plesman Oct 2011 B2
8060012 Sklovsky et al. Nov 2011 B2
8074877 Mullen et al. Dec 2011 B2
8082450 Frey et al. Dec 2011 B2
8095113 Kean et al. Jan 2012 B2
8099332 Lemay et al. Jan 2012 B2
8103249 Markison Jan 2012 B2
8108687 Ellis et al. Jan 2012 B2
8127143 Abdallah et al. Feb 2012 B2
8135648 Oram et al. Mar 2012 B2
8140010 Symons et al. Mar 2012 B2
8141136 Lee et al. Mar 2012 B2
8150321 Winter et al. Apr 2012 B2
8150767 Wankmueller Apr 2012 B2
8161565 Langford Apr 2012 B1
8186602 Itay et al. May 2012 B2
8196131 von Behren et al. Jun 2012 B1
8215563 Levy et al. Jul 2012 B2
8224753 Atef et al. Jul 2012 B2
8232879 Davis Jul 2012 B2
8233841 Griffin et al. Jul 2012 B2
8245292 Buer Aug 2012 B2
8249654 Zhu Aug 2012 B1
8266451 Leydier et al. Sep 2012 B2
8285329 Zhu Oct 2012 B1
8302872 Mullen Nov 2012 B2
8312519 Bailey et al. Nov 2012 B1
8316237 Felsher et al. Nov 2012 B1
8332272 Fisher Dec 2012 B2
8365988 Medina, III et al. Feb 2013 B1
8369960 Tran et al. Feb 2013 B2
8371501 Hopkins Feb 2013 B1
8381307 Cimino Feb 2013 B2
8391719 Alameh et al. Mar 2013 B2
8417231 Sanding et al. Apr 2013 B2
8439271 Smets et al. May 2013 B2
8475367 Yuen et al. Jul 2013 B1
8489112 Roeding et al. Jul 2013 B2
8511542 Pan Aug 2013 B2
8559872 Butler Oct 2013 B2
8566916 Vernon et al. Oct 2013 B1
8567670 Stanfield et al. Oct 2013 B2
8572386 Takekawa et al. Oct 2013 B2
8577810 Dalit et al. Nov 2013 B1
8583454 Beraja et al. Nov 2013 B2
8589335 Smith et al. Nov 2013 B2
8594730 Bona et al. Nov 2013 B2
8615468 Varadarajan Dec 2013 B2
8620218 Awad Dec 2013 B2
8667285 Coulier et al. Mar 2014 B2
8723941 Shirbabadi et al. May 2014 B1
8726405 Bailey et al. May 2014 B1
8740073 Vijay shankar et al. Jun 2014 B2
8750514 Gallo et al. Jun 2014 B2
8752189 De Jong Jun 2014 B2
8794509 Bishop et al. Aug 2014 B2
8799668 Cheng Aug 2014 B2
8806592 Ganesan Aug 2014 B2
8807440 Von Behren et al. Aug 2014 B1
8811892 Khan et al. Aug 2014 B2
8814039 Bishop et al. Aug 2014 B2
8814052 Bona et al. Aug 2014 B2
8818867 Baldwin et al. Aug 2014 B2
8850538 Vernon et al. Sep 2014 B1
8861733 Benteo et al. Oct 2014 B2
8868911 Tseng et al. Oct 2014 B2
8880027 Darringer Nov 2014 B1
8888002 Chesney et al. Nov 2014 B2
8898088 Springer et al. Nov 2014 B2
8930274 Brickell et al. Jan 2015 B1
8934837 Zhu et al. Jan 2015 B2
8977569 Rao Mar 2015 B2
8989390 Gantman et al. Mar 2015 B2
8994498 Agrafioti et al. Mar 2015 B2
9004365 Bona et al. Apr 2015 B2
9038894 Khalid May 2015 B2
9042814 Royston et al. May 2015 B2
9047531 Showering et al. Jun 2015 B2
9069976 Toole et al. Jun 2015 B2
9081948 Magne Jul 2015 B2
9104853 Mathur et al. Aug 2015 B2
9118663 Bailey et al. Aug 2015 B1
9122964 Krawczewicz Sep 2015 B2
9129280 Bona et al. Sep 2015 B2
9152832 Royston et al. Oct 2015 B2
9203800 Izu et al. Dec 2015 B2
9209867 Royston Dec 2015 B2
9209974 Akinyele et al. Dec 2015 B1
9251330 Boivie et al. Feb 2016 B2
9251518 Levin et al. Feb 2016 B2
9258715 Borghei Feb 2016 B2
9270337 Zhu et al. Feb 2016 B2
9306626 Hall et al. Apr 2016 B2
9306942 Bailey et al. Apr 2016 B1
9324066 Archer et al. Apr 2016 B2
9324067 Van Os et al. Apr 2016 B2
9332587 Salahshoor May 2016 B2
9338622 Bjontegard May 2016 B2
9373141 Shakkarwar Jun 2016 B1
9379841 Fine et al. Jun 2016 B2
9384485 McDonald Jul 2016 B1
9413430 Royston et al. Aug 2016 B2
9413768 Gregg et al. Aug 2016 B1
9420496 Indurkar Aug 2016 B1
9426132 Alikhani Aug 2016 B1
9432339 Bowness Aug 2016 B1
9455968 Machani et al. Sep 2016 B1
9473509 Arsanjani et al. Oct 2016 B2
9491626 Sharma et al. Nov 2016 B2
9553637 Yang et al. Jan 2017 B2
9619952 Zhao et al. Apr 2017 B1
9635000 Muftic Apr 2017 B1
9665858 Kumar May 2017 B1
9667428 Camenisch et al. May 2017 B2
9674705 Rose et al. Jun 2017 B2
9679286 Colnot et al. Jun 2017 B2
9680942 Dimmick Jun 2017 B2
9704159 Pauker Jul 2017 B2
9710804 Zhou et al. Jul 2017 B2
9740342 Paulsen et al. Aug 2017 B2
9740988 Levin et al. Aug 2017 B1
9763097 Robinson et al. Sep 2017 B2
9767329 Forster Sep 2017 B2
9769662 Quern Sep 2017 B1
9773151 Mil'shtein et al. Sep 2017 B2
9780953 Gaddam et al. Oct 2017 B2
9805384 Chauhan Oct 2017 B2
9891823 Feng et al. Feb 2018 B2
9940571 Herrington Apr 2018 B1
9953323 Candelore et al. Apr 2018 B2
9961194 Wiechman et al. May 2018 B1
9965756 Davis et al. May 2018 B2
9965911 Wishne May 2018 B2
9978058 Wurmfeld et al. May 2018 B2
10026507 Cho Jul 2018 B2
10043164 Dogin et al. Aug 2018 B2
10075437 Costigan et al. Sep 2018 B1
10129648 Hernandez et al. Nov 2018 B1
10133979 Eidam et al. Nov 2018 B1
10217105 Sangi et al. Feb 2019 B1
10223856 Johnson Mar 2019 B2
20010010723 Pinkas Aug 2001 A1
20010029485 Brody et al. Oct 2001 A1
20010034702 Mockett et al. Oct 2001 A1
20010054003 Chien et al. Dec 2001 A1
20020076042 Sandhu et al. Jun 2002 A1
20020078345 Sandhu et al. Jun 2002 A1
20020078353 Sandhu et al. Jun 2002 A1
20020093530 Krothapalli et al. Jul 2002 A1
20020100808 Norwood et al. Aug 2002 A1
20020108041 Watanabe et al. Aug 2002 A1
20020120583 Keresman, III et al. Aug 2002 A1
20020152116 Yan et al. Oct 2002 A1
20020153424 Li Oct 2002 A1
20020165827 Gien et al. Nov 2002 A1
20030023554 Yap et al. Jan 2003 A1
20030034873 Chase et al. Feb 2003 A1
20030055727 Walker et al. Mar 2003 A1
20030078882 Sukeda et al. Apr 2003 A1
20030167350 Davis et al. Sep 2003 A1
20030208449 Diao Nov 2003 A1
20040015958 Veil et al. Jan 2004 A1
20040039919 Takayama et al. Feb 2004 A1
20040103276 Jing et al. May 2004 A1
20040127256 Goldthwaite et al. Jul 2004 A1
20040215674 Odinak et al. Oct 2004 A1
20040230799 Davis Nov 2004 A1
20050044367 Gasparini et al. Feb 2005 A1
20050075985 Cartmell Apr 2005 A1
20050081038 Arditti Modiano et al. Apr 2005 A1
20050138374 Zheng et al. Jun 2005 A1
20050138387 Lam et al. Jun 2005 A1
20050156026 Ghosh et al. Jul 2005 A1
20050160049 Lundholm Jul 2005 A1
20050195975 Kawakita Sep 2005 A1
20050247797 Ramachandran Nov 2005 A1
20060006230 Bear et al. Jan 2006 A1
20060040726 Szrek et al. Feb 2006 A1
20060041402 Baker Feb 2006 A1
20060044153 Dawidowsky Mar 2006 A1
20060047954 Sachdeva et al. Mar 2006 A1
20060085848 Aissi et al. Apr 2006 A1
20060098824 Mao May 2006 A1
20060136334 Atkinson et al. Jun 2006 A1
20060159269 Braun et al. Jul 2006 A1
20060173985 Moore Aug 2006 A1
20060174331 Schuetz Aug 2006 A1
20060242698 Inskeep et al. Oct 2006 A1
20060280338 Rabb Dec 2006 A1
20070033642 Ganesan et al. Feb 2007 A1
20070055630 Gauthier et al. Mar 2007 A1
20070061266 Moore et al. Mar 2007 A1
20070061487 Moore et al. Mar 2007 A1
20070116292 Kurita et al. May 2007 A1
20070118745 Buer May 2007 A1
20070197261 Humbel Aug 2007 A1
20070224969 Rao Sep 2007 A1
20070241182 Buer Oct 2007 A1
20070256134 Lehtonen et al. Nov 2007 A1
20070258594 Sandhu et al. Nov 2007 A1
20070278291 Rans et al. Dec 2007 A1
20080008315 Fontana et al. Jan 2008 A1
20080011831 Bonalle et al. Jan 2008 A1
20080013721 Hwang Jan 2008 A1
20080014867 Finn Jan 2008 A1
20080035738 Mullen Feb 2008 A1
20080071681 Khalid Mar 2008 A1
20080072303 Syed Mar 2008 A1
20080086767 Kulkarni et al. Apr 2008 A1
20080103968 Bies et al. May 2008 A1
20080109309 Landau et al. May 2008 A1
20080110983 Ashfield May 2008 A1
20080120711 Dispensa May 2008 A1
20080123842 Pohja May 2008 A1
20080156873 Wilhelm et al. Jul 2008 A1
20080162312 Sklovsky et al. Jul 2008 A1
20080164308 Aaron et al. Jul 2008 A1
20080207307 Cunningham, II et al. Aug 2008 A1
20080209543 Aaron Aug 2008 A1
20080223918 Williams et al. Sep 2008 A1
20080285746 Landrock et al. Nov 2008 A1
20080298594 Yonge, III Dec 2008 A1
20080308641 Finn Dec 2008 A1
20090037275 Pollio Feb 2009 A1
20090048026 French Feb 2009 A1
20090132417 Scipioni et al. May 2009 A1
20090143104 Loh et al. Jun 2009 A1
20090144202 Hurry Jun 2009 A1
20090171682 Dixon et al. Jul 2009 A1
20090210308 Toomer et al. Aug 2009 A1
20090235339 Mennes et al. Sep 2009 A1
20090249077 Gargaro et al. Oct 2009 A1
20090282264 Amiel et al. Nov 2009 A1
20100023449 Skowronek et al. Jan 2010 A1
20100023455 Dispensa et al. Jan 2010 A1
20100029202 Jolivet et al. Feb 2010 A1
20100033310 Narendra et al. Feb 2010 A1
20100036769 Winters et al. Feb 2010 A1
20100078471 Lin et al. Apr 2010 A1
20100082491 Rosenblatt et al. Apr 2010 A1
20100094754 Bertran et al. Apr 2010 A1
20100095130 Bertran Apr 2010 A1
20100100480 Altman et al. Apr 2010 A1
20100114731 Kingston et al. May 2010 A1
20100192230 Steeves et al. Jul 2010 A1
20100207742 Buhot et al. Aug 2010 A1
20100211797 Westerveld et al. Aug 2010 A1
20100240413 He et al. Sep 2010 A1
20100257357 McClain Oct 2010 A1
20100312634 Cervenka Dec 2010 A1
20100312635 Cervenka Dec 2010 A1
20100316219 Boubion et al. Dec 2010 A1
20110028160 Roeding et al. Feb 2011 A1
20110035604 Habraken Feb 2011 A1
20110060631 Grossman et al. Mar 2011 A1
20110068170 Lehman Mar 2011 A1
20110084132 Tofighbakhsh Apr 2011 A1
20110101093 Ehrensvard May 2011 A1
20110113245 Varadrajan May 2011 A1
20110125638 Davis et al. May 2011 A1
20110131415 Schneider Jun 2011 A1
20110153437 Archer et al. Jun 2011 A1
20110153496 Royyuru Jun 2011 A1
20110208658 Makhotin Aug 2011 A1
20110208965 Machani Aug 2011 A1
20110211219 Bradley Sep 2011 A1
20110218911 Spodak Sep 2011 A1
20110238564 Lim et al. Sep 2011 A1
20110246780 Yeap et al. Oct 2011 A1
20110258452 Coulier et al. Oct 2011 A1
20110280406 Ma et al. Nov 2011 A1
20110282785 Chin Nov 2011 A1
20110294418 Chen Dec 2011 A1
20110312271 Ma et al. Dec 2011 A1
20120024947 Naelon Feb 2012 A1
20120030047 Fuentes et al. Feb 2012 A1
20120030121 Grellier Feb 2012 A1
20120047071 Mullen et al. Feb 2012 A1
20120079281 Lowenstein et al. Mar 2012 A1
20120109735 Krawczewicz et al. May 2012 A1
20120109764 Martin et al. May 2012 A1
20120143754 Patel Jun 2012 A1
20120150737 Rottink Jun 2012 A1
20120178366 Levy et al. Jul 2012 A1
20120196583 Kindo Aug 2012 A1
20120207305 Gallo et al. Aug 2012 A1
20120209773 Ranganathan Aug 2012 A1
20120238206 Singh et al. Sep 2012 A1
20120239560 Pourfallah et al. Sep 2012 A1
20120252350 Steinmetz et al. Oct 2012 A1
20120254394 Barras Oct 2012 A1
20120284194 Liu et al. Nov 2012 A1
20120290472 Mullen et al. Nov 2012 A1
20120296818 Nuzzi et al. Nov 2012 A1
20120316992 Oborne Dec 2012 A1
20120317035 Royyuru et al. Dec 2012 A1
20120317628 Yeager Dec 2012 A1
20130005245 Royston Jan 2013 A1
20130008956 Ashfield Jan 2013 A1
20130026229 Jarman et al. Jan 2013 A1
20130048713 Pan Feb 2013 A1
20130054474 Yeager Feb 2013 A1
20130065564 Conner et al. Mar 2013 A1
20130080228 Fisher Mar 2013 A1
20130080229 Fisher Mar 2013 A1
20130099587 Lou Apr 2013 A1
20130104251 Moore et al. Apr 2013 A1
20130106576 Hinman et al. May 2013 A1
20130119130 Braams May 2013 A1
20130121493 von Behren et al. May 2013 A1
20130130614 Busch-Sorensen May 2013 A1
20130144793 Royston Jun 2013 A1
20130171929 Adams et al. Jul 2013 A1
20130179351 Wallner Jul 2013 A1
20130185772 Jaudon et al. Jul 2013 A1
20130191279 Calman et al. Jul 2013 A1
20130200999 Spodak et al. Aug 2013 A1
20130216108 Hwang et al. Aug 2013 A1
20130226791 Springer et al. Aug 2013 A1
20130226796 Jiang et al. Aug 2013 A1
20130232082 Krawczewicz et al. Sep 2013 A1
20130238894 Ferg et al. Sep 2013 A1
20130282360 Shimota et al. Oct 2013 A1
20130303085 Boucher et al. Nov 2013 A1
20130304651 Smith Nov 2013 A1
20130312082 Izu et al. Nov 2013 A1
20130314593 Reznik et al. Nov 2013 A1
20130344857 Berionne et al. Dec 2013 A1
20140002238 Taveau et al. Jan 2014 A1
20140019352 Shrivastava Jan 2014 A1
20140027506 Heo et al. Jan 2014 A1
20140032409 Rosano Jan 2014 A1
20140032410 Georgiev et al. Jan 2014 A1
20140040120 Cho et al. Feb 2014 A1
20140040139 Brudnicki et al. Feb 2014 A1
20140040147 Varadarajan Feb 2014 A1
20140047235 Lessiak et al. Feb 2014 A1
20140067690 Pitroda et al. Mar 2014 A1
20140074637 Hammad Mar 2014 A1
20140074655 Lim et al. Mar 2014 A1
20140081720 Wu Mar 2014 A1
20140138435 Khalid May 2014 A1
20140171034 Aleksin et al. Jun 2014 A1
20140171039 Bjontegard Jun 2014 A1
20140172700 Teuwen et al. Jun 2014 A1
20140180851 Fisher Jun 2014 A1
20140208112 McDonald et al. Jul 2014 A1
20140214674 Narula Jul 2014 A1
20140229375 Zaytzsev et al. Aug 2014 A1
20140245391 Adenuga Aug 2014 A1
20140256251 Caceres et al. Sep 2014 A1
20140258099 Rosano Sep 2014 A1
20140258113 Gauthier et al. Sep 2014 A1
20140258125 Gerber et al. Sep 2014 A1
20140274179 Zhu et al. Sep 2014 A1
20140279479 Maniar et al. Sep 2014 A1
20140325225 Liu et al. Oct 2014 A1
20140337235 Van Heerden et al. Nov 2014 A1
20140339315 Ko Nov 2014 A1
20140346860 Aubry et al. Nov 2014 A1
20140365780 Movassaghi Dec 2014 A1
20140379361 Mahadkar et al. Dec 2014 A1
20150012444 Brown et al. Jan 2015 A1
20150032635 Guise Jan 2015 A1
20150071486 Rhoads et al. Mar 2015 A1
20150088757 Zhou et al. Mar 2015 A1
20150089586 Ballesteros Mar 2015 A1
20150106622 Matsuda et al. Apr 2015 A1
20150134452 Williams May 2015 A1
20150140960 Powell et al. May 2015 A1
20150154595 Collinge et al. Jun 2015 A1
20150170138 Rao Jun 2015 A1
20150178724 Ngo et al. Jun 2015 A1
20150186871 Laracey Jul 2015 A1
20150205379 Mag et al. Jul 2015 A1
20150302409 Malek Oct 2015 A1
20150317626 Ran et al. Nov 2015 A1
20150326545 Khan Nov 2015 A1
20150332266 Friedlander et al. Nov 2015 A1
20150339474 Paz et al. Nov 2015 A1
20150371234 Huang et al. Dec 2015 A1
20160012465 Sharp Jan 2016 A1
20160026997 Tsui et al. Jan 2016 A1
20160048913 Rausaria et al. Feb 2016 A1
20160055480 Shah Feb 2016 A1
20160057619 Lopez Feb 2016 A1
20160065370 Le Saint et al. Mar 2016 A1
20160087957 Shah et al. Mar 2016 A1
20160092696 Guglani et al. Mar 2016 A1
20160148193 Kelley et al. May 2016 A1
20160232523 Venot et al. Aug 2016 A1
20160239672 Khan et al. Aug 2016 A1
20160253651 Park et al. Sep 2016 A1
20160255072 Liu Sep 2016 A1
20160267486 Mitra et al. Sep 2016 A1
20160277383 Guyomarc'h et al. Sep 2016 A1
20160277388 Lowe et al. Sep 2016 A1
20160307187 Guo et al. Oct 2016 A1
20160307189 Zarakas et al. Oct 2016 A1
20160314472 Ashfield Oct 2016 A1
20160330027 Ebrahimi Nov 2016 A1
20160335531 Mullen et al. Nov 2016 A1
20160379217 Hammad Dec 2016 A1
20170004502 Quentin et al. Jan 2017 A1
20170011395 Pillai et al. Jan 2017 A1
20170011406 Tunnell et al. Jan 2017 A1
20170017957 Radu Jan 2017 A1
20170017964 Janefalkar et al. Jan 2017 A1
20170024716 Jiam et al. Jan 2017 A1
20170039566 Schipperheijn Feb 2017 A1
20170041759 Gantert et al. Feb 2017 A1
20170068950 Kwon Mar 2017 A1
20170103388 Pillai et al. Apr 2017 A1
20170104739 Lansler et al. Apr 2017 A1
20170109509 Baghdasaryan Apr 2017 A1
20170109730 Locke et al. Apr 2017 A1
20170116447 Cimino et al. Apr 2017 A1
20170124568 Moghadam May 2017 A1
20170140379 Deck May 2017 A1
20170154328 Zarakas et al. Jun 2017 A1
20170154333 Gleeson et al. Jun 2017 A1
20170180134 King Jun 2017 A1
20170230189 Toll et al. Aug 2017 A1
20170237301 Elad et al. Aug 2017 A1
20170289127 Hendrick Oct 2017 A1
20170295013 Claes Oct 2017 A1
20170295016 Revell Oct 2017 A1
20170316696 Bartel Nov 2017 A1
20170317834 Smith et al. Nov 2017 A1
20170330173 Woo et al. Nov 2017 A1
20170374070 Shah et al. Dec 2017 A1
20180034507 Wobak et al. Feb 2018 A1
20180039986 Essebag et al. Feb 2018 A1
20180068316 Essebag et al. Mar 2018 A1
20180129945 Saxena et al. May 2018 A1
20180160255 Park Jun 2018 A1
20180191501 Lindemann Jul 2018 A1
20180205712 Versteeg et al. Jul 2018 A1
20180240106 Garrett et al. Aug 2018 A1
20180254909 Hancock Sep 2018 A1
20180268132 Buer et al. Sep 2018 A1
20180270214 Caterino et al. Sep 2018 A1
20180294959 Traynor et al. Oct 2018 A1
20180300716 Carlson Oct 2018 A1
20180302396 Camenisch et al. Oct 2018 A1
20180315050 Hammad Nov 2018 A1
20180316666 Koved et al. Nov 2018 A1
20180322486 Deliwala et al. Nov 2018 A1
20180359100 Gaddam et al. Dec 2018 A1
20190014107 George Jan 2019 A1
20190019375 Foley Jan 2019 A1
20190036678 Ahmed Jan 2019 A1
20190205244 Smith Jul 2019 A1
20190238517 D'Agostino et al. Aug 2019 A1
20190363746 Zalewski et al. Nov 2019 A1
20200106609 Osborn et al. Apr 2020 A1
20200151311 Noe May 2020 A1
Foreign Referenced Citations (39)
Number Date Country
3010336 Jul 2017 CA
101192295 Jun 2008 CN
103023643 Apr 2013 CN
103417202 Dec 2013 CN
1 085 424 Mar 2001 EP
1 223 565 Jul 2002 EP
1 265 186 Dec 2002 EP
1 783 919 May 2007 EP
2 852 070 Jan 2009 EP
2 139 196 Dec 2009 EP
1 469 419 Feb 2012 EP
2 457 221 Aug 2009 GB
2 516 861 Feb 2015 GB
2 551 907 Jan 2018 GB
101508320 Apr 2015 KR
WO 0049586 Aug 2000 WO
WO 2006070189 Jul 2006 WO
WO 2008055170 May 2008 WO
WO 2009025605 Feb 2009 WO
WO 2010049252 May 2010 WO
WO 2011112158 Sep 2011 WO
WO 2012001624 Jan 2012 WO
WO 2013039395 Mar 2013 WO
WO 2013155562 Oct 2013 WO
WO 2013192358 Dec 2013 WO
WO 2014043278 Mar 2014 WO
WO 2014170741 Oct 2014 WO
WO 2015179649 Nov 2015 WO
WO 2015183818 Dec 2015 WO
WO 2016097718 Jun 2016 WO
WO 2016160816 Oct 2016 WO
WO 2016168394 Oct 2016 WO
WO 2017042375 Mar 2017 WO
WO 2017042400 Mar 2017 WO
WO 2017157859 Sep 2017 WO
WO 2017208063 Dec 2017 WO
WO 2018063809 Apr 2018 WO
WO 2018137888 Aug 2018 WO
20200072382 Apr 2020 WO
Non-Patent Literature Citations (45)
Entry
Yeh, Kuo-Hui, “A Secure Transaction Scheme With Certificateless Cryptographic Primitives for IoT-Based Mobile Payments,” IEEE Systems Journal Year: 2018 | vol. 12, Issue: 2 | Journal Article | Publisher: IEEE.
Pasquet et al., “Secure payment with NFC mobile phone in the SmartTouch project,” 2008 International Symposium on Collaborative Technologies and Systems Year: 2008 | Conference Paper | Publisher: IEEE.
Batina, Lejla and Poll, Erik, “SmartCards and RFID”, Course PowerPoint Presentation for IPA Security Course, Digital Security at University of Nijmegen, Netherlands (date unknown) 75 pages.
Haykin M. and Wamar, R., “Smart Card Technology: New Methods for Computer Access Control,” Computer Science and Technology NIST Special Publication 500-157:1-60 (1988).
Lehpamer, Harvey, “Component of the RFID System,” RFID Design Principles, 2nd edition pp. 133-201 (2012).
Pourghomi, Pardis et al., “A Proposed NFC Payment Application,” International Journal of Advanced Computer Science and Applications, vol. 4, No. 8, 2013.
Author Unknown, “CardrefresherSM from American Express®,” [online] 2019 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://merchant-channel.americanexpress.com/merchant/en_US/cardrefresher, 2 pages.
Author Unknown, “Add Account Updater to your recurring payment tool,” [online] 2018-19 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://www.authorize.net/our-features/account-updater/, 5 pages.
Author Unknown, “Visa® Account Updater for Merchants,” [online] 2019 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://usa.visa.com/dam/VCOM/download/merchants/visa-account-updater-product-information-fact-sheet-for-merchants.pdf, 2 pages.
Author Unknown, “Manage the cards that you use with Apple Pay,” Apple Support [online] 2019 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://support.apple.com/en-us/HT205583, 5 pages.
Author Unknown, “Contactless Specifications for Payment Systems,” EMV Book B—Entry Point Specification [online] 2016 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://www.emvco.com/wp-content/uploads/2017/05/BookB_Entry_Point_Specification_v2_6_20160809023257319.pdf, 52 pages.
Author Unknown, “EMV Integrated Circuit Card Specifications for Payment Systems, Book 2, Security and Key Management,” Version 3.4, [online] 2011 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://www.emvco.com/wp-content/uploads/2017/05/EMV_v4.3_Book_2_Security_and_Key_Management_20120607061923900.pdf, 174 pages.
Author unknown, “NFC Guide: All You Need to Know About Near Field Communication” Square Guide [online] 2018[retrieved on Nov. 13, 2018], Retrieved from Internet URL: https://squareup.com/guides/nfc, 8 pages.
Profis, S., “Everything you need to know about NFC and mobile payments” CNET Directory [online], 2014 [retrieved on Mar. 25, 2019], Retrieved from the Internet URL: https://www.cnet.com/how-to/how-nfc-works-and-mobile-payments/, 6 pages.
Cozma, N., “Copy data from other devices in Android 5.0 Lollipop setup” CNET Directory [online] 2014 [retrieved on Mar. 25, 2019]. Retrieved from the Internet URL: https://www.cnet.com/how-to/copy-data-from-other-devices-in-android-5-0-lollipop-setup/, 5 pages.
Kevin, Android Enthusiast, “How to copy text string from nfc tag” StackExchange [online] 2013 [retrieved on Mar. 25, 2019]. Retrieved from the Internet URL: https://android.stackexchange.com/questions/55689/how-to-copy-text-string-from-nfc-tag, 11 pages.
Author unknown, “Tap & Go Device Setup” Samsung [online] date unknown [retrieved on Mar. 25, 2019]. Retrieved from the Internet URL: https://www.samsung.com/us/switch-me/switch-to-the-galaxy-s-5/app/partial/setup-device/tap-go.html, 1 page.
Author Unknown, “Multiple encryption”, Wikipedia [online] 2019 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://en.wikipedia.org/wiki/Multiple_encryption, 4 pages.
Krawczyk, et al., “HMAC: Keyed-Hashing for Message Authentication”, Network Working Group RFC:2104 memo [online] 1997 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://tools.ietf.org/html/rfc2104, 12 pages.
Song, et al., “The AES-CMAC Algorithm”, Network Working Group RFC: 4493 memo [online] 2006 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://tools.ietf.org/html/rfc4493, 21 pages.
Katz, J., and Lindell, Y., “Aggregate Message Authentication Codes”, Topics in Cryptology [online] 2008 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://www.cs.umd.edu/˜jkatz/papers/aggregateMAC.pdf, 11 pages.
Adams, D., and Maier, A-K, “Goldbug Big Seven open source crypto-messengers to be compared -: or Comprehensive Confidentiality Review & Audit of GoldBug Encrypting E-Mail-Client & Secme Instant Messenger”, Big Seven Study 2016 [online] [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://sf.net/projects/goldbug/files/bigseven-crypto-audit.pdf, 309 pages.
Author Unknown, “Triple DES”, Wikipedia [online] 2018 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://simple.wikipedia.org/wiki/Triple_DES, 2 pages.
Song, F., and Yun, A.1, “Quantum Security of NMAC and Related Constructions—PRF domain extension against quantum attacks”, IACR Cryptology ePrint Archive [online] 2017 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://eprint.iacr.org/2017/509.pdf, 41 pages.
Saxena, N., “Lecture 10: NMAC, HMAC and Number Theory”, CS 6903 Modern Cryptography [online] 2008 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: http://isis.poly.edu/courses/cs6903/Lectures/lecture10.pdf, 8 pages.
Berg, Guy, “Fundamentals of EMV” Smart Card Alliance [online] date unknown [retrieved on Mar. 27, 2019]. Retrieved from Internet URL: https://www.securetechalliance.org/resources/media/scap13_preconference/02.pdf, 37 pages.
Pierce, Kevin, “Is the amazon echo NFC compatible,?” Amazon.com Customer Q&A [online] 2016 [retrieved on Mar. 26, 2019]. Retrieved from Internet URL: https://www.amazon.com/ask/questions/Tx1RJXYSPE6XLJD?_encodi . . . , 2 pages.
Author Unknown, “Multi-Factor Authentication”, idaptive [online] 2019 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://www.centrify.com/products/application-services/adaptive-multi-factor-authentication/risk-based-mfa/, 10 pages.
Author Unknown, “Adaptive Authentication”, SecureAuth [online] 2019 [retrieved on Mar. 25, 2019}. Retrieved from Internet URL: https://www.secureauth.com/products/access-management/adaptive-authentication, 7 pages.
van den Breekel, J., et al., “EMV inanutshell”, Technical Report, 2016 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://www.es.ru.nl/E.Poll/papers/EMVtechreport.pdf, 37 pages.
Author Unknown, “Autofill”, Computer Hope [online] 2018 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://www.computerhope.eom/jargon/a/autofill.htm, 2 pages.
Author Unknown, “Fill out forms automatically”, Google Chrome Help [online] 2019 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://support.google.com/chrome/answer/142893?co-GENIE.Platform%3DDesktop&h1=en, 3 pages.
Author unknown, “Autofill credit cards, contacts, and passwords in Safari on Mac”, Apple Safari User Guide [online] 2019 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://support.apple.com/guide/safari/use-autofill-ibrw1103/mac, 3 pages.
Menghin, M.J., “Power Optimization Techniques for Near Field Communication Systems” 2014 Dissertation at Technical University of Graz [online]. Retrieved from Internet URL: https://diglib.tugraz.at/download.php?id=576a7b910d2d6&location=browse, 135 pages.
Mareli, M., et al., “Experimental evaluation of NFC reliability between an RFID tag and a smartphone” Conference paper (2013) IEEE AFRICON at Mamitius [online] [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://core.ac.uk/download/pdf/54204839.pdf, 5 pages.
Davison, A., et al., “MonoSLAM: Real-Time Single Camera SLAM”, IEEE Transactions on Pattern Analysis and Machine Intelligence 29(6): 1052-1067 (2007).
Barba, R., “Sharing your location with your bank sounds creepy, but it's also useful”, Bankrate, LLC [online] 2017 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://www.bankrate.com/banking/banking-app-location-sharing/, 6 pages.
Author unknown: “onetappayment™”, [online] Jan. 24, 2019, [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://www.payubiz.in/onetap, 4 pages.
Vu et al., (2012). “Distinguishing users with capacitive touch communication” Proceedings of the Annual International Conference on Mobile Computing and Networking, MOBICOM. 10.1145/2348543.2348569.
EMVCo, EMV Card Personalization Specification, version 1.0 (Jun. 2003), 81 pages.
Ullmann et al., (2012). “On-Card” User Authentication for Contactless Smart Cards based on Gesture Recognition, LNI, 223-234, 12 pages.
Faraj et al. (2008). “Investigation of Java Smart Card Technology for Multi-Task Applications” J. of Al-Anbar University for Pure Science, vol. 2: No. 1: 2008, 11 pages.
Dhamdhere (2017) “Key Benefits of a Unified Platform for Loyalty, Referral Marketing, and UGC” Annex Cloud [retrieved on Jul. 3, 2019]. Retrieved from Internet URL: https://www.annexcloude.com/blog/benefits-unified-platform/, 13 pages.
Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority issued in PCT/US2019/054036, dated Dec. 12, 2019.
European Extended Search Report issued in related European Patent Application No. EP 21160447.5, dated Jul. 14, 2021.
Related Publications (1)
Number Date Country
20210342819 A1 Nov 2021 US
Continuations (1)
Number Date Country
Parent 16863902 Apr 2020 US
Child 17131311 US