The present disclosure relates to cryptography, and more particularly, to systems and methods for the cryptographic authentication of contactless cards.
Data security and transaction integrity are of critical importance to businesses and consumers. This need continues to grow as electronic transactions and order pick up associated with electronic transaction constitute an increasingly large share of commercial activity.
Many products ordered on-line are delivered to a location and left for the user to pick up at a later time. These products are vulnerable to damage and theft while they are waiting to be picked up. A secure storage may be used to address concerns, however authenticating a user identification to allow a user to pick up an item typically requires a human in the loop or may be subject to fraud.
Email may be used as a tool to verify transactions, but email is susceptible to attack and vulnerable to hacking or other unauthorized access. Short message service (SMS) messages may also be used, but that is subject to compromise as well. Moreover, even data encryption algorithms, such as triple DES algorithms, have similar vulnerabilities.
These and other deficiencies exist. Accordingly, there is a need to provide users with an appropriate solution that overcomes these deficiencies to provide data security, authentication, and verification for contactless cards that may be used to authenticate a user identity and allow a user to pick up items from a secure storage.
Aspects of the disclosed technology include systems and methods for cryptographic authentication of contactless cards. Various embodiments describe systems and methods for implementing and managing cryptographic authentication of contactless cards.
Embodiments of the present disclosure provide an order pick up system comprising: a contactless card comprising a processor, a memory, and a contactless communication interface, wherein the memory contains an applet; a card reader comprising a processor, and a contactless communication interface configured to generate a contactless communication field; an authentication server in data communication with the card reader; and a secure storage comprising a lock in data communication with the card reader, wherein, upon entry of the contactless card into the contactless communication field, the card reader is configured to: request an identification token from the applet via the contactless communication interface of the card reader; authenticate the token by generating an identification message based on the identification token; transmit the identification message to the authentication server; receive an authentication message from the authentication server; and upon receipt of the authentication message, transmit an access message to the secure storage lock, wherein, upon receipt of the access message, the lock allows access to the secure storage.
Embodiments of the present disclosure provide an order pick up method comprising: providing a card comprising a processor, a memory containing an applet, and a contactless communication interface; moving the card within a communication field of a secondary device in data communication with a secure storage, wherein the secondary device requests an identification certificate from the card via the contactless communication interface; transmitting an identification certificate from the card to the secondary device; the secondary device generating an identification message based on the identification certificate and transmitting the identification message to an authorization server; the authorization server authenticating the identification certificate based on the identification message and transmitting an authentication message to the secondary device; and the secondary device transmitting an access message to the secure storage.
Embodiments of the present disclosure provide an object delivery system comprising: a transmitting device comprising a processor, a memory containing an applet, and a contactless communication interface; a receiving device comprising a processor, and a contactless communication interface configured to generate a near field communication field; a remote authentication server in data communication with the receiving device; and a secure locker in data communication with the receiving device, the receiving device configured to, upon entry of the transmitting device into the near field communication field: request a user identification via the contactless communication interface of the receiving device; transmit a user identification message to the authentication server, wherein the authentication server authenticates the user identification based on the user identification message and transmits an authentication message to the receiving device; and transmit an access message to the secure locker, wherein upon receipt of the access message, the secure locker allows access to the interior of the secure locker.
Further features of the disclosed design, and the advantages offered thereby, are explained in greater detail hereinafter with reference to specific example embodiments illustrated in the accompanying drawings.
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.
An objective of some embodiments of the present disclosure is to build one or more keys into one or more contactless cards. In these embodiments, the contactless card can perform authentication and numerous other functions that may otherwise require the user to carry a separate physical token in addition to the contactless card. By employing a contactless interface, contactless cards may be provided with a method to interact and communicate between a user's device (such as a mobile phone) and the card itself. For example, the EMV protocol, which underlies many credit card transactions, includes an authentication process which suffices for operating systems for Android® but presents challenges for iOS®, which is more restrictive regarding near field communication (NFC) usage, as it can be used only in a read-only manner. Exemplary embodiments of the contactless cards described herein utilize NFC technology.
System 100 may include one or more contactless cards 105, which are further explained below with reference to
System 100 may include client device 110, which may be a network-enabled computer. As referred to herein, a network-enabled computer may include, but is not limited to a computer device, or communications device including, e.g., a server, a network appliance, a personal computer, a workstation, a phone, a handheld PC, a personal digital assistant, a thin client, a fat client, an Internet browser, or other device. Client device 110 also may be a mobile device; for example, a mobile device may include an iPhone, iPod, iPad from Apple® or any other mobile device running Apple's iOS® operating system, any device running Microsoft's Windows® Mobile operating system, any device running Google' s Android® operating system, and/or any other smartphone, tablet, or like wearable mobile device.
The client device 110 device can include a processor and a memory, and it is understood that the processing circuitry may contain additional components, including processors, memories, error and parity/CRC checkers, data encoders, anticollision algorithms, controllers, command decoders, security primitives and tamperproofing hardware, as necessary to perform the functions described herein. The client device 110 may further include a display and input devices. The display may be any type of device for presenting visual information such as a computer monitor, a flat panel display, and a mobile device screen, including liquid crystal displays, light-emitting diode displays, plasma panels, and cathode ray tube displays. The input devices may include any device for entering information into the user's device that is available and supported by the user's device, such as a touch-screen, keyboard, mouse, cursor-control device, touch-screen, microphone, digital camera, video recorder or camcorder. These devices may be used to enter information and interact with the software and other devices described herein.
In some examples, client device 110 of system 100 may execute one or more applications, such as software applications, that enable, for example, network communications with one or more components of system 100 and transmit and/or receive data.
Client device 110 may be in communication with one or more servers 120 via one or more networks 115, and may operate as a respective front-end to back-end pair with server 120. Client device 110 may transmit, for example from a mobile device application executing on client device 110, one or more requests to server 120. The one or more requests may be associated with retrieving data from server 120. Server 120 may receive the one or more requests from client device 110. Based on the one or more requests from client device 110, server 120 may be configured to retrieve the requested data from one or more databases (not shown). Based on receipt of the requested data from the one or more databases, server 120 may be configured to transmit the received data to client device 110, the received data being responsive to one or more requests.
System 100 may include one or more networks 115. In some examples, network 115 may be one or more of a wireless network, a wired network or any combination of wireless network and wired network, and may be configured to connect client device 110 to server 120. For example, network 115 may include one or more of a fiber optics network, a passive optical network, a cable network, an Internet network, a satellite network, a wireless local area network (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, Radio Frequency Identification (RFID), Wi-Fi, and/or the like.
In addition, network 115 may include, without limitation, telephone lines, fiber optics, IEEE Ethernet 902.3, a wide area network, a wireless personal area network, a LAN, or a global network such as the Internet. In addition, network 115 may support an Internet network, a wireless communication network, a cellular network, or the like, or any combination thereof. Network 115 may further include one network, or any number of the exemplary types of networks mentioned above, operating as a stand-alone network or in cooperation with each other. Network 115 may utilize one or more protocols of one or more network elements to which they are communicatively coupled. Network 115 may translate to or from other protocols to one or more protocols of network devices. Although network 115 is depicted as a single network, it should be appreciated that according to one or more examples, network 115 may comprise a plurality of interconnected networks, such as, for example, the Internet, a service provider's network, a cable television network, corporate networks, such as credit card association networks, and home networks.
System 100 may include one or more servers 120. In some examples, server 120 may include one or more processors, which are coupled to memory. Server 120 may be configured as a central system, server or platform to control and call various data at different times to execute a plurality of workflow actions. Server 120 may be configured to connect to the one or more databases. Server 120 may be connected to at least one client device 110.
At step 102, the application 122 communicates with the contactless card 105 (e.g., after being brought near the contactless card 105). Communication between the application 122 and the contactless card 105 may involve the contactless card 105 being sufficiently close to a card reader (not shown) of the client device 110 to enable NFC data transfer between the application 122 and the contactless card 105.
At step 104, after communication has been established between client device 110 and contactless card 105, the contactless card 105 generates a message authentication code (MAC) cryptogram. In some examples, this may occur when the contactless card 105 is read by the application 122. In particular, this may occur upon a read, such as an NFC read, of a near field data exchange (NDEF) tag, which may be created in accordance with the NFC Data Exchange Format. For example, a reader, such as application 122, may transmit a message, such as an applet select message, with the applet ID of an NDEF producing applet. Upon confirmation of the selection, a sequence of select file messages followed by read file messages may be transmitted. For example, the sequence may include “Select Capabilities file”, “Read Capabilities file”, and “Select NDEF file”. At this point, a counter value maintained by the contactless card 105 may be updated or incremented, which may be followed by “Read NDEF file.” At this point, the message may be generated which may include a header and a shared secret. Session keys may then be generated. The MAC cryptogram may be created from the message, which may include the header and the shared secret. The MAC cryptogram may then be concatenated with one or more blocks of random data, and the MAC cryptogram and a random number (RND) may be encrypted with the session key. Thereafter, the cryptogram and the header may be concatenated, and encoded as ASCII hex and returned in NDEF message format (responsive to the “Read NDEF file” message).
In some examples, the MAC cryptogram may be transmitted as an NDEF tag, and in other examples the MAC cryptogram may be included with a uniform resource indicator (e.g., as a formatted string).
In some examples, application 122 may be configured to transmit a request to contactless card 105, the request comprising an instruction to generate a MAC cryptogram.
At step 106, the contactless card 105 sends the MAC cryptogram to the application 122. In some examples, the transmission of the MAC cryptogram occurs via NFC, however, the present disclosure is not limited thereto. In other examples, this communication may occur via Bluetooth, Wi-Fi, or other means of wireless data communication.
At step 108, the application 122 communicates the MAC cryptogram to the processor 124.
At step 112, the processor 124 verifies the MAC cryptogram pursuant to an instruction from the application 122. For example, the MAC cryptogram may be verified, as explained below.
In some examples, verifying the MAC cryptogram may be performed by a device other than client device 110, such as a server 120 in data communication with the client device 110 (as shown in
In some examples, the MAC cryptogram may function as a digital signature for purposes of verification. Other digital signature algorithms, such as public key asymmetric algorithms, e.g., the Digital Signature Algorithm and the RSA algorithm, or zero knowledge protocols, may be used to perform this verification.
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 remain 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.
It is also 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 which the 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 will be used, the amount of side-channel data which the attacker is able to gather is limited and thereby reduce exposure to this and other types of attack. As further described herein, the parties involved in the exchange of cryptographic information (e.g., sender and recipient) can independently generate keys from an initial shared master symmetric key in combination with a counter value, and thereby periodically replace the shared symmetric key being used with needing to resort to any form of key exchange to keep the parties in sync. By periodically changing the shared secret symmetric key used by the sender and the recipient, the attacks described above are rendered impossible.
Referring back to
System 200 may include one or more networks 215. In some examples, network 215 may be one or more of a wireless network, a wired network or any combination of wireless network and wired network, and may be configured to connect one or more transmitting devices 205 and one or more receiving devices 210 to server 220. For example, network 215 may 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 addition, network 215 may include, without limitation, telephone lines, fiber optics, IEEE Ethernet 902.3, a wide area network, a wireless personal area network, a LAN, or a global network such as the Internet. In addition, network 215 may support an Internet network, a wireless communication network, a cellular network, or the like, or any combination thereof. Network 215 may further include one network, or any number of the exemplary types of networks mentioned above, operating as a stand-alone network or in cooperation with each other. Network 215 may utilize one or more protocols of one or more network elements to which they are communicatively coupled. Network 215 may translate to or from other protocols to one or more protocols of network devices. Although network 215 is depicted as a single network, it should be appreciated that according to one or more examples, network 215 may comprise a plurality of interconnected networks, such as, for example, the Internet, a service provider's network, a cable television network, corporate networks, such as credit card association networks, and home networks.
In some examples, one or more transmitting devices 205 and one or more receiving devices 210 may be configured to communicate and transmit and receive data between each other without passing through network 215. For example, communication between the one or more transmitting devices 205 and the one or more receiving devices 210 may occur via at least one of NFC, Bluetooth, RFID, Wi-Fi, and/or the like.
At block 225, when the transmitting device 205 is preparing to process the sensitive data with symmetric cryptographic operation, the sender may update a counter. In addition, the transmitting device 205 may select an appropriate symmetric cryptographic algorithm, which may include at least one of a symmetric encryption algorithm, HMAC algorithm, and a CMAC algorithm. In some examples, the symmetric algorithm used to process the diversification value may comprise any symmetric cryptographic algorithm used as needed to generate the desired length diversified symmetric key. Non-limiting examples of the symmetric algorithm may include a symmetric encryption algorithm such as 3DES or AES128; a symmetric HMAC algorithm, such as HMAC-SHA-256; and a symmetric CMAC algorithm such as AES-CMAC. It is understood that if the output of the selected symmetric algorithm does not generate a sufficiently long key, techniques such as processing multiple iterations of the symmetric algorithm with different input data and the same master key may produce multiple outputs which may be combined as needed to produce sufficient length keys.
At block 230, the transmitting device 205 may take the selected cryptographic algorithm, and using the master symmetric key, process the counter value. For example, the sender may select a symmetric encryption algorithm, and use a counter which updates with every conversation between the transmitting device 205 and the receiving device 210. The transmitting device 205 may then encrypt the counter value with the selected symmetric encryption algorithm using the master symmetric key, creating a diversified symmetric key.
In some examples, the counter value may not be encrypted. In these examples, the counter value may be transmitted between the transmitting device 205 and the receiving device 210 at block 230 without encryption.
At block 235, the diversified symmetric key may be used to process the sensitive data before transmitting the result to the receiving device 210. For example, the transmitting device 205 may encrypt the sensitive data using a symmetric encryption algorithm using the diversified symmetric key, with the output comprising the protected encrypted data. The transmitting device 205 may then transmit the protected encrypted data, along with the counter value, to the receiving device 210 for processing.
At block 240, the receiving device 210 may first take the counter value and then perform the same symmetric encryption using the counter value as input to the encryption, and the master symmetric key as the key for the encryption. The output of the encryption may be the same diversified symmetric key value that was created by the sender.
At block 245, the receiving device 210 may then take the protected encrypted data and using a symmetric decryption algorithm along with the diversified symmetric key, decrypt the protected encrypted data.
At block 250, as a result of the decrypting the protected encrypted data, the original sensitive data may be revealed.
The next time sensitive data needs to be sent from the sender to the recipient via respective transmitting device 205 and receiving device 210, a different counter value may be selected producing a different diversified symmetric key. By processing the counter value with the master symmetric key and same symmetric cryptographic algorithm, both the transmitting device 205 and receiving device 210 may independently produce the same diversified symmetric key. This diversified symmetric key, not the master symmetric key, is used to protect the sensitive data.
As explained above, both the transmitting device 205 and receiving device 210 each initially possess the shared master symmetric key. The shared master symmetric key is not used to encrypt the original sensitive data. Because the diversified symmetric key is independently created by both the transmitting device 205 and receiving device 210, it is never transmitted between the two parties. Thus, an attacker cannot intercept the diversified symmetric key and the attacker never sees any data which was processed with the master symmetric key. Only the counter value is processed with the master symmetric key, not the sensitive data. As a result, reduced side-channel data about the master symmetric key is revealed. Moreover, the operation of the transmitting device 205 and the receiving device 210 may be governed by symmetric requirements for how often to create a new diversification value, and therefore a new diversified symmetric key. In an embodiment, a new diversification value and therefore a new diversified symmetric key may be created for every exchange between the transmitting device 205 and receiving device 210.
In some examples, the key diversification value may comprise the counter value. Other non-limiting examples of the key diversification value include: a random nonce generated each time a new diversified key is needed, the random nonce sent from the transmitting device 205 to the receiving device 210; the full value of a counter value sent from the transmitting device 205 and the receiving device 210; a portion of a counter value sent from the transmitting device 205 and the receiving device 210; a counter independently maintained by the transmitting device 205 and the receiving device 210 but not sent between the two devices; a one-time-passcode exchanged between the transmitting device 205 and the receiving device 210; and a cryptographic hash of the sensitive data. In some examples, one or more portions of the key diversification value may be used by the parties to create multiple diversified keys. For example, a counter may be used as the key diversification value. Further, a combination of one or more of the exemplary key diversification values described above may be used.
In another example, a portion of the counter may be used as the key diversification value. If multiple master key values are shared between the parties, the multiple diversified key values may be obtained by the systems and processes described herein. A new diversification value, and therefore a new diversified symmetric key, may be created as often as needed. In the most secure case, a new diversification value may be created for each exchange of sensitive data between the transmitting device 205 and the receiving device 210. In effect, this may create a one-time use key, such as a single-use session key.
System 300 may include one or more contactless cards 305, which are further explained below with respect to
System 300 may include client device 310, which may be a network-enabled computer. As referred to herein, a network-enabled computer may include, but is not limited to: e.g., a computer device, or communications device including, e.g., a server, a network appliance, a personal computer, a workstation, a mobile device, a phone, a handheld PC, a personal digital assistant, a thin client, a fat client, an Internet browser, or other device. One or more client devices 310 also may be a mobile device; for example, a mobile device may include an iPhone, iPod, iPad from Apple® or any other mobile device running Apple's iOS® operating system, any device running Microsoft's Windows® Mobile operating system, any device running Google's Android® operating system, and/or any other smartphone or like wearable mobile device. In some examples, the client device 310 may be the same as, or similar to, a client device 110 as described with reference to
Client device 310 may be in communication with one or more servers 320 and 325 via one or more networks 315. Client device 310 may transmit, for example from an application 311 executing on client device 310, one or more requests to one or more servers 320 and 325. The one or more requests may be associated with retrieving data from one or more servers 320 and 325. Servers 320 and 325 may receive the one or more requests from client device 310. Based on the one or more requests from client device 310, one or more servers 320 and 325 may be configured to retrieve the requested data from one or more databases 335. Based on receipt of the requested data from the one or more databases 335, one or more servers 320 and 325 may be configured to transmit the received data to client device 310, the received data being responsive to one or more requests.
System 300 may include one or more hardware security modules (HSM) 330. For example, one or more HSMs 330 may be configured to perform one or more cryptographic operations as disclosed herein. In some examples, one or more HSMs 330 may be configured as special purpose security devices that are configured to perform the one or more cryptographic operations. The HSMs 330 may be configured such that keys are never revealed outside the HSM 330, and instead are maintained within the HSM 330. For example, one or more HSMs 330 may be configured to perform at least one of key derivations, decryption, and MAC operations. The one or more HSMs 330 may be contained within, or may be in data communication with, servers 320 and 325.
System 300 may include one or more networks 315. In some examples, network 315 may be one or more of a wireless network, a wired network or any combination of wireless network and wired network, and may be configured to connect client device 315 to server 320 and 325. For example, network 315 may include one or more of a fiber optics network, a passive optical network, a cable network, a cellular 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 any combination of networks thereof. As a non-limiting example, communications from contactless card 305 and client device 310 may comprise NFC communication, cellular network between client device 310 and a carrier, and Internet between the carrier and a back-end.
In addition, network 315 may include, without limitation, telephone lines, fiber optics, IEEE Ethernet 902.3, a wide area network, a wireless personal area network, a local area network, or a global network such as the Internet. In addition, network 315 may support an Internet network, a wireless communication network, a cellular network, or the like, or any combination thereof. Network 315 may further include one network, or any number of the exemplary types of networks mentioned above, operating as a stand-alone network or in cooperation with each other. Network 315 may utilize one or more protocols of one or more network elements to which they are communicatively coupled. Network 315 may translate to or from other protocols to one or more protocols of network devices. Although network 315 is depicted as a single network, it should be appreciated that according to one or more examples, network 315 may comprise a plurality of interconnected networks, such as, for example, the Internet, a service provider's network, a cable television network, corporate networks, such as credit card association networks, and home networks.
In various examples according to the present disclosure, client device 310 of system 300 may execute one or more applications 311, and include one or more processors 312, and one or more card readers 313. For example, one or more applications 311, such as software applications, may be configured to enable, for example, network communications with one or more components of system 300 and transmit and/or receive data. It is understood that although only single instances of the components of client device 310 are illustrated in
The application 311 of any of client device 310 may communicate with the contactless card 305 using short-range wireless communication (e.g., NFC). The application 311 may be configured to interface with a card reader 313 of client device 310 configured to communicate with a contactless card 305. As should be noted, those skilled in the art would understand that a distance of less than twenty centimeters is consistent with NFC range.
In some embodiments, the application 311 communicates through an associated reader (e.g., card reader 313) with the contactless card 305.
In some embodiments, card activation may occur without user authentication. For example, a contactless card 305 may communicate with the application 311 through the card reader 313 of the client device 310 through NFC. The communication (e.g., a tap of the card proximate the card reader 313 of the client device 310) allows the application 311 to read the data associated with the card and perform an activation. In some cases, the tap may activate or launch application 311 and then initiate one or more actions or communications with an account server 325 to activate the card for subsequent use. In some cases, if the application 311 is not installed on client device 310, a tap of the card against the card reader 313 may initiate a download of the application 311 (e.g., navigation to an application download page). Subsequent to installation, a tap of the card may activate or launch the application 311, and then initiate (e.g., via the application or other back-end communication) activation of the card. After activation, the card may be used in various transactions including commercial transactions.
According to some embodiments, the contactless card 305 may include a virtual payment card. In those embodiments, the application 311 may retrieve information associated with the contactless card 305 by accessing a digital wallet implemented on the client device 310, wherein the digital wallet includes the virtual payment card. In some examples, virtual payment card data may include one or more static or dynamically generated virtual card numbers.
Server 320 may comprise a web server in communication with database 335. Server 325 may comprise an account server. In some examples, server 320 may be configured to validate one or more credentials from contactless card 305 and/or client device 310 by comparison with one or more credentials in database 335. Server 325 may be configured to authorize one or more requests, such as payment and transaction, from contactless card 305 and/or client device 310.
For example, a sender and recipient may desire to exchange data (e.g., original sensitive data) via a transmitting device and a receiving device. As explained above, although these two parties may be included, it is understood that one or more transmitting devices and one or more receiving devices may be involved so long as each party shares the same shared secret symmetric key. In some examples, the transmitting device and receiving device may be provisioned with the same master symmetric key. Further, it is understood that any party or device holding the same secret symmetric key may perform the functions of the transmitting device and similarly any party holding the same secret symmetric key may perform the functions of the receiving device. In some examples, the symmetric key may comprise the shared secret symmetric key which is kept secret from all parties other than the transmitting device and the receiving device involved in exchanging the secure data. It is further understood that both the transmitting device and receiving device may be provided with the same master symmetric key, and further that part of the data exchanged between the transmitting device and receiving device comprises at least a portion of data which may be referred to as the counter value. The counter value may comprise a number that changes each time data is exchanged between the transmitting device and the receiving device.
At block 410, a transmitting device and receiving device may be provisioned with the same master key, such as the same master symmetric key. When the transmitting device is preparing to process the sensitive data with symmetric cryptographic operation, the sender may update a counter. In addition, the transmitting device may select an appropriate symmetric cryptographic algorithm, which may include at least one of a symmetric encryption algorithm, HMAC algorithm, and a CMAC algorithm. In some examples, the symmetric algorithm used to process the diversification value may comprise any symmetric cryptographic algorithm used as needed to generate the desired length diversified symmetric key. Non-limiting examples of the symmetric algorithm may include a symmetric encryption algorithm such as 3DES or AES128; a symmetric HMAC algorithm, such as HMAC-SHA-256; and a symmetric CMAC algorithm, such as AES-CMAC. It is understood that if the output of the selected symmetric algorithm does not generate a sufficiently long key, techniques such as processing multiple iterations of the symmetric algorithm with different input data and the same master key may produce multiple outputs which may be combined as needed to produce sufficient length keys.
The transmitting device may take the selected cryptographic algorithm, and using the master symmetric key, process the counter value. For example, the sender may select a symmetric encryption algorithm, and use a counter which updates with every conversation between the transmitting device and the receiving device.
At block 420, the transmitting device may then encrypt the counter value with the selected symmetric encryption algorithm using the master symmetric key, creating a diversified symmetric key. The diversified symmetric key may be used to process the sensitive data before transmitting the result to the receiving device. For example, the transmitting device may encrypt the sensitive data using a symmetric encryption algorithm using the diversified symmetric key, with the output comprising the protected encrypted data. The transmitting device may then transmit the protected encrypted data, along with the counter value, to the receiving device for processing. In some examples, a cryptographic operation other than encryption may be performed, and a plurality of cryptographic operations may be performed using the diversified symmetric keys prior to transmittal of the protected data.
In some examples, the counter value may not be encrypted. In these examples, the counter value may be transmitted between the transmitting device and the receiving device at block 420 without encryption.
At block 430, sensitive data may be protected using one or more cryptographic algorithms and the diversified keys. The diversified session keys, which may be created by the key diversification which uses the counter, may be used with one or more cryptographic algorithms to protect the sensitive data. For example, data may be processed by a MAC using a first diversified session key, and the resulting output may be encrypted using the second diversified session key producing the protected data.
At block 440, the receiving device may perform the same symmetric encryptions using the counter value as input to the encryptions and the master symmetric keys as the keys for the encryption. The output of the encryptions may be the same diversified symmetric key values that were created by the sender. For example, the receiving device may independently create its own copies of the first and second diversified session keys using the counter. Then, the receiving device may decrypt the protected data using the second diversified session key to reveal the output of the MAC created by the transmitting device. The receiving device may then process the resultant data through the MAC operation using the first diversified session key.
At block 450, the receiving device may use the diversified keys with one or more cryptographic algorithms to validate the protected data.
At block 460, the original data may be validated. If the output of the MAC operation (via the receiving device using the first diversified session key) matches the MAC output revealed by decryption, then the data may be deemed valid.
The next time sensitive data needs to be sent from the transmitting device to the receiving device, a different counter value may be selected, which produces a different diversified symmetric key. By processing the counter value with the master symmetric key and same symmetric cryptographic algorithm, both the transmitting device and receiving device may independently produce the same diversified symmetric key. This diversified symmetric key, not the master symmetric key, is used to protect the sensitive data.
As explained above, both the transmitting device and receiving device each initially possess the shared master symmetric key. The shared master symmetric key is not used to encrypt the original sensitive data. Because the diversified symmetric key is independently created by both the transmitting device and receiving device, it is never transmitted between the two parties. Thus, an attacker cannot intercept the diversified symmetric key and the attacker never sees any data which was processed with the master symmetric key. Only the small counter value is processed with the master symmetric key, not the sensitive data. As a result, reduced side-channel data about the master symmetric key is revealed. Moreover, the sender and the recipient may agree, for example by prior arrangement or other means, how often to create a new diversification value, and therefore a new diversified symmetric key. In an embodiment, a new diversification value and therefore a new diversified symmetric key may be created for every exchange between the transmitting device and receiving device.
In some examples, the key diversification value may comprise the counter value. Other non-limiting examples of the key diversification value include: a random nonce generated each time a new diversified key is needed, the random nonce sent from the transmitting device to the receiving device; the full value of a counter value sent from the transmitting device and the receiving device; a portion of a counter value sent from the transmitting device and the receiving device; a counter independently maintained by the transmitting device and the receiving device but not sent between the two; a one-time-passcode exchanged between the transmitting device and the receiving device; cryptographic hash of the sensitive data. In some examples, one or more portions of the key diversification value may be used by the parties to create multiple diversified keys. For example, a counter may be used as the key diversification value.
In another example, a portion of the counter may be used as the key diversification value. If multiple master key values are shared between the parties, the multiple diversified key values may be obtained by the system and processes described herein. A new diversification value, and therefore a new diversified symmetric key, may be created as often as needed. In the most secure case, a new diversification value may be created for each exchange of sensitive data between the transmitting device and the receiving device. In effect, this may create a one-time use key, such as a single session key.
In other examples, such as to limit the number of times of use of the master symmetric key, it may be agreed upon by the sender of transmitting device and recipient of the receiving device that a new diversification value, and therefore a new diversified symmetric key, will happen only periodically. In one example, this may be after a pre-determined number of uses, such as every 10 transmissions between the transmitting device and the receiving device. In another example, this may be after a certain time period, a certain time period after a transmission, or on a periodic basis (e.g., daily at a designated time; weekly at a designated time on a designated day). In another example, this may be every time the receiving device signals to the transmitting device that it desires to change the key on the next communication. This may be controlled on policy and may be varied due to, for example, the current risk level perceived by the recipient of the receiving device.
The contactless card 500 may also include identification information 515 displayed on the front and/or back of the card, and a contact pad 520. The contact pad 520 may be configured to establish contact with another communication device, such as a user device, smart phone, laptop, desktop, or tablet computer. The contactless card 500 may also include processing circuitry, antenna and other components not shown in
As illustrated in
The memory 535 may be a read-only memory, write-once read-multiple memory or read/write memory, e.g., RAM, ROM, and EEPROM, and the contactless card 500 may include one or more of these memories. A read-only memory may 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 may be programmed at a point in time after the memory chip has left the factory. Once the memory is programmed, it may not be rewritten, but it may be read many times. A read/write memory may be programmed and re-programmed many times after leaving the factory. It may also be read many times.
The memory 535 may be configured to store one or more applets 540, one or more counters 545, and a customer identifier 550. The one or more applets 540 may comprise one or more software applications configured to execute on one or more contactless cards, such as Java Card applet. However, it is understood that applets 540 are not limited to Java Card applets, and instead may be any software application operable on contactless cards or other devices having limited memory. The one or more counters 545 may comprise a numeric counter sufficient to store an integer. The customer identifier 550 may comprise a unique alphanumeric identifier assigned to a user of the contactless card 500, and the identifier may distinguish the user of the contactless card from other contactless card users. In some examples, the customer identifier 550 may identify both a customer and an account assigned to that customer and may further identify the contactless card associated with the customer's account.
The processor and memory elements of the foregoing exemplary embodiments are described with reference to the contact pad, but the present disclosure is not limited thereto. It is understood that these elements may be implemented outside of the pad 520 or entirely separate from it, or as further elements in addition to processor 530 and memory 535 elements located within the contact pad 520.
In some examples, the contactless card 500 may comprise one or more antennas 555. The one or more antennas 555 may be placed within the contactless card 500 and around the processing circuitry 525 of the contact pad 520. For example, the one or more antennas 555 may be integral with the processing circuitry 525 and the one or more antennas 555 may be used with an external booster coil. As another example, the one or more antennas 555 may be external to the contact pad 520 and the processing circuitry 525.
In an embodiment, the coil of contactless card 500 may act as the secondary of an air core transformer. The terminal may communicate with the contactless card 500 by cutting power or amplitude modulation. The contactless card 500 may infer the data transmitted from the terminal using the gaps in the contactless card's power connection, which may be functionally maintained through one or more capacitors. The contactless card 500 may communicate back by switching a load on the contactless card's coil or load modulation. Load modulation may be detected in the terminal's coil through interference.
As explained above, the contactless cards 500 may be built on a software platform operable on smart cards or other devices having limited memory, such as JavaCard, and one or more or more applications or applets may be securely executed. Applets may be added to contactless cards to provide a one-time password (OTP) for multifactor authentication (MFA) in various mobile application-based use cases. Applets may be configured to respond to one or more requests, such as near field data exchange requests, from a reader, such as a mobile NFC reader, and produce an NDEF message that comprises a cryptographically secure OTP encoded as an NDEF text tag.
In some examples, data may be stored in the contactless card at personalization time by implementing STORE DATA (E2) under secure channel protocol 2. One or more values may be read by the personalization bureau from the EMBOSS files (in a section designated by the Applet ID) and one or more store data commands may be transmitted to the contactless card after authentication and secure channel establishment.
pUID may comprise a 16-digit BCD encoded number. In some examples, pUID may comprise 14 digits.
In some examples, the one or more applets may be configured to maintain its personalization state to allow personalization only if unlocked and authenticated. Other states may comprise standard states pre-personalization. On entering into a terminated state, the one or more applets may be configured to remove personalization data. In the terminated state, the one or more applets may be configured to stop responding to all application protocol data unit (APDU) requests.
The one or more applets may be configured to maintain an applet version (2 bytes), which may be used in the authentication message. In some examples, this may be interpreted as most significant byte major version, least significant byte minor version. The rules for each of the versions are configured to interpret the authentication message: For example, regarding the major version, this may include that each major version comprise a specific authentication message layout and specific algorithms. For the minor version, this may include no changes to the authentication message or cryptographic algorithms, and changes to static tag content, in addition to bug fixes, security hardening, etc.
In some examples, the one or more applets may be configured to emulate an RFID tag. The RFID tag may include one or more polymorphic tags. In some examples, each time the tag is read, different cryptographic data is presented that may indicate the authenticity of the contactless card. Based on the one or more applications, an NFC read of the tag may be processed, the token may be transmitted to a server, such as a backend server, and the token may be validated at the server.
In some examples, the contactless card and server may include certain data such that the card may be properly identified. The contactless card may comprise one or more unique identifiers. Each time a read operation takes place, a counter may be configured to update. In some examples, each time the card is read, it is transmitted to the server for validation and determines whether the counter is equal (as part of the validation).
The one or more counters may be configured to prevent a replay attack. For example, if a cryptogram has been obtained and replayed, that cryptogram is immediately rejected if the counter has been read or used or otherwise passed over. If the counter has not been used, it may be replayed. In some examples, the counter that is updated on the card is different from the counter that is updated for transactions. In some examples, the contactless card may comprise a first applet, which may be a transaction applet, and a second applet. Each applet may comprise a counter.
In some examples, the counter may get out of sync between the contactless card and one or more servers. For example, the contactless card may be activated causing the counter to be updated and a new communication to be generated by the contactless card, but the communication may be not be transmitted for processing at the one or more servers. This may cause the counter of the contactless card and the counter maintained at the one or more servers to get out of sync. This may occur unintentionally including, for example, where a card is stored adjacent to a device (e.g., carried in a pocket with a device) and where the contactless card is read at an angle may include the card being misaligned or not positioned such that the contactless card is powered up an the NFC field but is not readable. If the contactless card is positioned adjacent to a device, the device's NFC field may be turned on to power the contactless card causing the counter therein to be updated, but no application on the device receives the communication.
To keep the counter in sync, an application, such as a background application, may be executed that would be configured to detect when the mobile device wakes up and synchronize with the one or more servers indicating that a read that occurred due to detection to then move the counter forward. Since the counters of the contactless card and the one or more servers may get out of sync, the one or more servers may be configured to allow the counter of the contactless card to be updated a threshold or predetermined number of times before it is read by the one or more servers and still be considered valid. For example, if the counter is configured to increment (or decrement) by one for each occurrence indicating activation of the contactless card, the one or more servers may allow any counter value it reads from the contactless card as valid, or any counter value within a threshold range (e.g., from 1 to 10). Moreover, the one or more servers may be configured to request a gesture associated with the contactless card, such as a user tap, if it reads a counter value which has advanced beyond 10, but below another threshold range value (such as 1000). From the user tap, if the counter value is within a desired or acceptance range, authentication succeeds.
At block 820, the counter may be used as the diversification data, since it changes with each use and provides a different session key each time, as opposed to the master key derivation in which one unique set of keys per card is produced. In some examples, it is preferable to use the 4-byte method for both operations. Accordingly, at block 820, two session keys may be created for each transaction from the UDKs, i.e., one session key from AUTKEY and one session key from ENCKEY. In the card, for the MAC key (i.e., the session key created from AUTKEY), the low order of two bytes of the OTP counter may be used for diversification. For the ENC key (i.e., the session key created from ENCKEY), the full length of the OTP counter may be used for the ENC key.
At block 830, the MAC key may be used for preparing the MAC cryptogram, and the ENC key may be used to encrypt the cryptogram. For example, the MAC session key may be used to prepare the cryptogram, and the result may be encrypted with the ENC key before it is transmitted to the one or more servers.
At block 840, verification and processing of the MAC is simplified because 2-byte diversification is directly supported in the MAC authentication functions of payment HSMs. Decryption of the cryptogram is performed prior to verification of the MAC. The session keys are independently derived at the one or more servers, resulting in a first session key (the ENC session key) and a second session key (the MAC session key). The second derived key (i.e., the ENC session key) may be used to decrypt the data, and the first derived key (i.e., the MAC session key) may be used to verify the decrypted data.
For the contactless card, a different unique identifier is derived which may be related to the application primary account number (PAN) and PAN sequence number, which is encoded in the card. The key diversification may be configured to receive the identifier as input with the master key such that one or more keys may be created for each contactless card. In some examples, these diversified keys may comprise a first key and a second key. The first key may include an authentication master key (Card Cryptogram Generation/Authentication Key—Card-Key-Auth), and may be further diversified to create a MAC session key used when generating and verifying a MAC cryptogram. The second key may comprise an encryption master key (Card Data Encryption Key—Card-Key-DEK), and may be further diversified to create an ENC session key used when encrypting and decrypting enciphered data. In some examples, the first and the second keys may be created by diversifying the issuer master keys by combining them with the card's unique ID number (pUID) and the PAN sequence number (PSN) of a payment applet. The pUID may comprise a 16-digit numerical value. As explained above, pUID may comprise a 16 digit BCD encoded number. In some examples, pUID may comprise a 14-digit numerical value.
In some examples, since the EMV session key derivation method may wrap at 2{circumflex over ( )}16 uses, the counter such as the full 32-bit counter may be added to the initialization arrays of the diversification method.
In other examples, such as credit cards, a number, such as an account number or an unpredictable number provided by one or more servers, may be used for session key generation and/or diversification.
Regarding master key management, two issuer master keys 905, 910 may be required for each part of the portfolio on which the one or more applets is issued. For example, the first master key 905 may comprise an Issuer Cryptogram Generation/Authentication Key (Iss-Key-Auth) and the second master key 910 may comprise an Issuer Data Encryption Key (Iss-Key-DEK). As further explained herein, two issuer master keys 905, 910 are diversified into card master keys 925, 930, which are unique for each card. In some examples, a network profile record ID (pNPR) 915 and derivation key index (pDKI) 920, as back office data, may be used to identify which Issuer Master Keys 905, 910 to use in the cryptographic processes for authentication. The system performing the authentication may be configured to retrieve values of pNPR 915 and pDKI 920 for a contactless card at the time of authentication.
In some examples, to increase the security of the solution, a session key may be derived (such as a unique key per session) but rather than using the master key, the unique card-derived keys and the counter may be used as diversification data, as explained above. For example, each time the card is used in operation, a different key may be used for creating the message authentication code (MAC) and for performing the encryption. Regarding session key generation, the keys used to generate the cryptogram and encipher the data in the one or more applets may comprise session keys based on the card unique keys (Card-Key-Auth 925 and Card-Key-Dek 930). The session keys (Aut-Session-Key 935 and DEK-Session-Key 940) may be generated by the one or more applets and derived by using the application transaction counter (pATC) 945 with one or more algorithms. To fit data into the one or more algorithms, only the 2 low order bytes of the 4-byte pATC 945 is used. In some examples, the four byte session key derivation method may comprise: F1: =PATC (lower 2 bytes)∥‘F0’∥‘00’∥PATC (four bytes) F1: =PATC (lower 2 bytes)∥‘0F’∥‘00’∥PATC (four bytes) SK:={(ALG (MK) [F1])∥ALG (MK) [F2]}, where ALG may include 3DES ECB and MK may include the card unique derived master key.
As described herein, one or more MAC session keys may be derived using the lower two bytes of pATC 945 counter. At each tap of the contactless card, pATC 945 is configured to be updated, and the card master keys Card-Key-AUTH 925 and Card-Key-DEK 930 are further diversified into the session keys Aut-Session-Key 935 and DEK-Session-KEY 940. pATC 945 may be initialized to zero at personalization or applet initialization time. In some examples, the pATC counter 945 may be initialized at or before personalization, and may be configured to increment by one at each NDEF read.
Further, the update for each card may be unique, and assigned either by personalization, or algorithmically assigned by pUID or other identifying information. For example, odd numbered cards may increment or decrement by 2 and even numbered cards may increment or decrement by 5. In some examples, the update may also vary in sequential reads, such that one card may increment in sequence by 1, 3, 5, 2, 2, . . . repeating. The specific sequence or algorithmic sequence may be defined at personalization time, or from one or more processes derived from unique identifiers. This can make it harder for a replay attacker to generalize from a small number of card instances.
The authentication message may be delivered as the content of a text NDEF record in hexadecimal ASCII format. In some examples, only the authentication data and an 8-byte random number followed by MAC of the authentication data may be included. In some examples, the random number may precede cryptogram A and may be one block long. In other examples, there may be no restriction on the length of the random number. In further examples, the total data (i.e., the random number plus the cryptogram) may be a multiple of the block size. In these examples, an additional 8-byte block may be added to match the block produced by the MAC algorithm. As another example, if the algorithms employed used 16-byte blocks, even multiples of that block size may be used, or the output may be automatically, or manually, padded to a multiple of that block size.
The MAC may be performed by a function key (AUT-Session-Key) 935. The data specified in cryptogram may be processed with javacard.signature method: ALG_DES_MAC8_ISO9797_1_M2_ALG3 to correlate to EMV ARQC verification methods. The key used for this computation may comprise a session key AUT-Session-Key 935, as explained above. As explained above, the low order two bytes of the counter may be used to diversify for the one or more MAC session keys. As explained below, AUT-Session-Key 935 may be used to MAC data 950, and the resulting data or cryptogram A 955 and random number RND may be encrypted using DEK-Session-Key 940 to create cryptogram B or output 960 sent in the message.
In some examples, one or more HSM commands may be processed for decrypting such that the final 16 (binary, 32 hex) bytes may comprise a 3DES symmetric encrypting using CBC mode with a zero IV of the random number followed by MAC authentication data. The key used for this encryption may comprise a session key DEK-Session-Key 940 derived from the Card-Key-DEK 930. In this case, the ATC value for the session key derivation is the least significant byte of the counter pATC 945.
The format below represents a binary version example embodiment. Further, in some examples, the first byte may be set to ASCII ‘A’.
Another exemplary format is shown below. In this example, the tag may be encoded in hexadecimal format.
The UID field of the received message may be extracted to derive, from master keys Iss-Key-AUTH 905 and Iss-Key-DEK 910, the card master keys (Card-Key-Auth 925 and Card-Key-DEK 930) for that particular card. Using the card master keys (Card-Key-Auth 925 and Card-Key-DEK 930), the counter (pATC) field of the received message may be used to derive the session keys (Aut-Session-Key 935 and DEK-Session-Key 940) for that particular card. Cryptogram B 960 may be decrypted using the DEK-Session-KEY, which yields cryptogram A 955 and RND, and RND may be discarded. The UID field may be used to look up the shared secret of the contactless card which, along with the Ver, UID, and pATC fields of the message, may be processed through the cryptographic MAC using the re-created Aut-Session-Key to create a MAC output, such as MAC′. If MAC′ is the same as cryptogram A 955, then this indicates that the message decryption and MAC checking have all passed. Then the pATC may be read to determine if it is valid.
During an authentication session, one or more cryptograms may be generated by the one or more applications. For example, the one or more cryptograms may be generated as a 3DES MAC using ISO 9797-1 Algorithm 3 with Method 2 padding via one or more session keys, such as Aut-Session-Key 935. The input data 950 may take the following form: Version (2), pUID (8), pATC (4), Shared Secret (4). In some examples, the numbers in the brackets may comprise length in bytes. In some examples, the shared secret may be generated by one or more random number generators which may be configured to ensure, through one or more secure processes, that the random number is unpredictable. In some examples, the shared secret may comprise a random 4-byte binary number injected into the card at personalization time that is known by the authentication service. During an authentication session, the shared secret may not be provided from the one or more applets to the mobile application. Method 2 padding may include adding a mandatory 0x′80′ byte to the end of input data and 0x′00′ bytes that may be added to the end of the resulting data up to the 8-byte boundary. The resulting cryptogram may comprise 8 bytes in length.
In some examples, one benefit of encrypting an unshared random number as the first block with the MAC cryptogram, is that it acts as an initialization vector while using CBC (Block chaining) mode of the symmetric encryption algorithm. This allows the “scrambling” from block to block without having to pre-establish either a fixed or dynamic IV.
By including the application transaction counter (pATC) as part of the data included in the MAC cryptogram, the authentication service may be configured to determine if the value conveyed in the clear data has been tampered with. Moreover, by including the version in the one or more cryptograms, it is difficult for an attacker to purposefully misrepresent the application version in an attempt to downgrade the strength of the cryptographic solution. In some examples, the pATC may start at zero and be updated by 1 each time the one or more applications generates authentication data. The authentication service may be configured to track the pATCs used during authentication sessions. In some examples, when the authentication data uses a pATC equal to or lower than the previous value received by the authentication service, this may be interpreted as an attempt to replay an old message, and the authenticated may be rejected. In some examples, where the pATC is greater than the previous value received, this may be evaluated to determine if it is within an acceptable range or threshold, and if it exceeds or is outside the range or threshold, verification may be deemed to have failed or be unreliable. In the MAC operation 936, data 950 is processed through the MAC using Aut-Session-Key 935 to produce MAC output (cryptogram A) 955, which is encrypted.
In order to provide additional protection against brute force attacks exposing the keys on the card, it is desirable that the MAC cryptogram 955 be enciphered. In some examples, data or cryptogram A 955 to be included in the ciphertext may comprise: Random number (8), cryptogram (8). In some examples, the numbers in the brackets may comprise length in bytes. In some examples, the random number may be generated by one or more random number generators which may be configured to ensure, through one or more secure processes, that the random number is unpredictable. The key used to encipher this data may comprise a session key. For example, the session key may comprise DEK-Session-Key 940. In the encryption operation 941, data or cryptogram A 955 and RND are processed using DEK-Session-Key 940 to produce encrypted data, cryptogram B 960. The data 955 may be enciphered using 3DES in cipher block chaining mode to ensure that an attacker must run any attacks over all of the ciphertext. As a non-limiting example, other algorithms, such as Advanced Encryption Standard (AES), may be used. In some examples, an initialization vector of 0x′0000000000000000′ may be used. Any attacker seeking to brute force the key used for enciphering this data will be unable to determine when the correct key has been used, as correctly decrypted data will be indistinguishable from incorrectly decrypted data due to its random appearance.
In order for the authentication service to validate the one or more cryptograms provided by the one or more applets, the following data must be conveyed from the one or more applets to the mobile device in the clear during an authentication session: version number to determine the cryptographic approach used and message format for validation of the cryptogram, which enables the approach to change in the future; pUID to retrieve cryptographic assets, and derive the card keys; and pATC to derive the session key used for the cryptogram.
At block 1020, Issuer Master Keys may be diversified by combining them with the card's unique ID number (pUID) and the PAN sequence number (PSN) of one or more applets, for example, a payment applet.
At block 1030, Card-Key-Auth and Card-Key-DEK (unique card keys) may be created by diversifying the Issuer Master Keys to generate session keys which may be used to generate a MAC cryptogram.
At block 1040, the keys used to generate the cryptogram and encipher the data in the one or more applets may comprise the session keys of block 1030 based on the card unique keys (Card-Key-Auth and Card-Key-DEK). In some examples, these session keys may be generated by the one or more applets and derived by using pATC, resulting in session keys Aut-Session-Key and DEK-Session-Key.
At block 1120, the counter value may be encrypted by the sender using the data encryption master key to produce the data encryption derived session key, and the counter value may also be encrypted by the sender using the data integrity master key to produce the data integrity derived session key. In some examples, a whole counter value or a portion of the counter value may be used during both encryptions.
In some examples, the counter value may not be encrypted. In these examples, the counter may be transmitted between the sender and the recipient in the clear, i.e., without encryption.
At block 1130, the data to be protected is processed with a cryptographic MAC operation by the sender using the data integrity session key and a cryptographic MAC algorithm. The protected data, including plaintext and shared secret, may be used to produce a MAC using one of the session keys (AUT-Session-Key).
At block 1140, the data to be protected may be encrypted by the sender using the data encryption derived session key in conjunction with a symmetric encryption algorithm. In some examples, the MAC is combined with an equal amount of random data, for example each 8 bytes long, and then encrypted using the second session key (DEK-Session-Key).
At block 1150, the encrypted MAC is transmitted, from the sender to the recipient, with sufficient information to identify additional secret information (such as shared secret, master keys, etc.), for verification of the cryptogram.
At block 1160, the recipient uses the received counter value to independently derive the two derived session keys from the two master keys as explained above.
At block 1170, the data encryption derived session key is used in conjunction with the symmetric decryption operation to decrypt the protected data. Additional processing on the exchanged data will then occur. In some examples, after the MAC is extracted, it is desirable to reproduce and match the MAC. For example, when verifying the cryptogram, it may be decrypted using appropriately generated session keys. The protected data may be reconstructed for verification. A MAC operation may be performed using an appropriately generated session key to determine if it matches the decrypted MAC. As the MAC operation is an irreversible process, the only way to verify is to attempt to recreate it from source data.
At block 1180, the data integrity derived session key is used in conjunction with the cryptographic MAC operation to verify that the protected data has not been modified.
Some examples of the methods described herein may advantageously confirm when a successful authentication is determined when the following conditions are met. First, the ability to verify the MAC shows that the derived session key was proper. The MAC may only be correct if the decryption was successful and yielded the proper MAC value. The successful decryption may show that the correctly derived encryption key was used to decrypt the encrypted MAC. Since the derived session keys are created using the master keys known only to the sender (e.g., the transmitting device) and recipient (e.g., the receiving device), it may be trusted that the contactless card which originally created the MAC and encrypted the MAC is indeed authentic. Moreover, the counter value used to derive the first and second session keys may be shown to be valid and may be used to perform authentication operations.
Thereafter, the two derived session keys may be discarded, and the next iteration of data exchange will update the counter value (returning to block 1110) and a new set of session keys may be created (at block 1120). In some examples, the combined random data may be discarded.
Example embodiments of systems and methods described herein may be configured to provide security factor authentication. The security factor authentication may comprise a plurality of processes. As part of the security factor authentication, a first process may comprise logging in and validating a user via one or more applications executing on a device. As a second process, the user may, responsive to successful login and validation of the first process via the one or more applications, engage in one or more behaviors associated with one or more contactless cards. In effect, the security factor authentication may include both securely proving identity of the user and engaging in one or more types of behaviors, including but not limited to one or more tap gestures, associated with the contactless card. In some examples, the one or more tap gestures may comprise a tap of the contactless card by the user to a device. In some examples, the device may comprise a mobile device, a kiosk, a terminal, a tablet, or any other device configured to process a received tap gesture.
In some examples, the contactless card may be tapped to a device, such as one or more computer kiosks or terminals, to verify identity so as to receive a transactional item responsive to a purchase, such as a coffee. By using the contactless card, a secure method of proving identity in a loyalty program may be established. Securely proving the identity, for example, to obtain a reward, coupon, offer, or the like or receipt of a benefit is established in a manner that is different than merely scanning a bar card. For example, an encrypted transaction may occur between the contactless card and the device, which may configured to process one or more tap gestures. As explained above, the one or more applications may be configured to validate identity of the user and then cause the user to act or respond to it, for example, via one or more tap gestures. In some examples, data for example, bonus points, loyalty points, reward points, healthcare information, etc., may be written back to the contactless card.
In some examples, the contactless card may be tapped to a device, such as a mobile device. As explained above, identity of the user may be verified by the one or more applications which would then grant the user a desired benefit based on verification of the identity.
In some examples, the contactless card may be activated by tapping to a device, such as a mobile device. For example, the contactless card may communicate with an application of the device via a card reader of the device through NFC communication. The communication, in which a tap of the card proximate the card reader of the device may allow the application of the device to read data associated with the contactless card and activate the card. In some examples, the activation may authorize the card to be used to perform other functions, e.g., purchases, access account or restricted information, or other functions. In some examples, the tap may activate or launch the application of the device and then initiate one or more actions or communications with one or more servers to activate the contactless card. If the application is not installed on the device, a tap of the contactless card proximate the card reader may initiate a download of the application, such as navigation to a download page of the application). Subsequent to installation, a tap of the contactless card may activate or launch the application, and then initiate, for example via the application or other back-end communication), activation of the contactless card. After activation, the contactless card may be used in various activities, including without limitation commercial transactions.
In some embodiments, a dedicated application may be configured to execute on a client device to perform the activation of the contactless card. In other embodiments, a webportal, a web-based app, an applet, and/or the like may perform the activation. Activation may be performed on the client device, or the client device may merely act as a go between for the contactless card and an external device (e.g., account server). According to some embodiments, in providing activation, the application may indicate, to the account server, the type of device performing the activation (e.g., personal computer, smartphone, tablet, or point-of-sale (POS) device). Further, the application may output, for transmission, different and/or additional data to the account server depending on the type of device involved. For example, such data may comprise information associated with a merchant, such as merchant type, merchant ID, and information associated with the device type itself, such as POS data and POS ID.
In some embodiments, the example authentication communication protocol may mimic an offline dynamic data authentication protocol of the EMV standard that is commonly performed between a transaction card and a point-of-sale device, with some modifications. For example, because the example authentication protocol is not used to complete a payment transaction with a card issuer/payment processor per se, some data values are not needed, and authentication may be performed without involving real-time online connectivity to the card issuer/payment processor. As is known in the art, point of sale (POS) systems submit transactions including a transaction value to a card issuer. Whether the issuer approves or denies the transaction may be based on if the card issuer recognizes the transaction value. Meanwhile, in certain embodiments of the present disclosure, transactions originating from a mobile device lack the transaction value associated with the POS systems. Therefore, in some embodiments, a dummy transaction value (i.e., a value recognizable to the card issuer and sufficient to allow activation to occur) may be passed as part of the example authentication communication protocol. POS based transactions may also decline transactions based on the number of transaction attempts (e.g., transaction counter). A number of attempts beyond a buffer value may result in a soft decline; the soft decline requiring further verification before accepting the transaction. In some implementations, a buffer value for the transaction counter may be modified to avoid declining legitimate transactions.
In some examples, the contactless card can selectively communicate information depending upon the recipient device. Once tapped, the contactless card can recognize the device to which the tap is directed, and based on this recognition the contactless card can provide appropriate data for that device. This advantageously allows the contactless card to transmit only the information required to complete the instant action or transaction, such as a payment or card authentication. By limiting the transmission of data and avoiding the transmission of unnecessary data, both efficiency and data security can be improved. The recognition and selective communication of information can be applied to a various scenarios, including card activation, balance transfers, account access attempts, commercial transactions, and step-up fraud reduction.
If the contactless card tap is directed to a device running Apple's iOS® operating system, e.g., an iPhone, iPod, or iPad, the contactless card can recognize the iOS® operating system and transmit data appropriate data to communicate with this device. For example, the contactless card can provide the encrypted identity information necessary to authenticate the card using NDEF tags via, e.g., NFC. Similarly, if the contactless card tap is directed to a device running the Android® operating system, e.g., an Android® smartphone or tablet, the contactless card can recognize the Android® operating system and transmit appropriate and data to communicate with this device (such as the encrypted identity information necessary for authentication by the methods described herein).
As another example, the contactless card tap can be directed to a POS device, including without limitation a kiosk, a checkout register, a payment station, or other terminal. Upon performance of the tap, the contactless card can recognize the POS device and transmit only the information necessary for the action or transaction. For example, upon recognition of a POS device used to complete a commercial transaction, the contactless card can communicate payment information necessary to complete the transaction under the EMV standard.
In some examples, the POS devices participating in the transaction can require or specify additional information, e.g., device-specific information, location-specific information, and transaction-specific information, that is to be provided by the contactless card. For example, once the POS device receives a data communication from the contactless card, the POS device can recognize the contactless card and request the additional information necessary to complete an action or transaction.
In some examples the POS device can be affiliated with an authorized merchant or other entity familiar with certain contactless cards or accustomed to performing certain contactless card transactions. However, it is understood such an affiliation is not required for the performance of the described methods.
In some examples, such as a shopping store, grocery store, convenience store, or the like, the contactless card may be tapped to a mobile device without having to open an application, to indicate a desire or intent to utilize one or more of reward points, loyalty points, coupons, offers, or the like to cover one or more purchases. Thus, an intention behind the purchase is provided.
In some examples, the one or more applications may be configured to determine that it was launched via one or more tap gestures of the contactless card, such that a launch occurred at 3:51 pm, that a transaction was processed or took place at 3:56 pm, in order to verify identity of the user.
In some examples, the one or more applications may be configured to control one or more actions responsive to the one or more tap gestures. For example, the one or more actions may comprise collecting rewards, collecting points, determine the most important purchase, determine the least costly purchase, and/or reconfigure, in real-time, to another action.
In some examples, data may be collected on tap behaviors as biometric/gestural authentication. For example, a unique identifier that is cryptographically secure and not susceptible to interception may be transmitted to one or more backend services. The unique identifier may be configured to look up secondary information about individual. The secondary information may comprise personally identifiable information about the user. In some examples, the secondary information may be stored within the contactless card.
In some examples, the device may comprise an application that splits bills or check for payment amongst a plurality of individuals. For example, each individual may possess a contactless card, and may be customers of the same issuing financial institution, but it is not necessary. Each of these individuals may receive a push notification on their device, via the application, to split the purchase. Rather than accepting only one card tap to indicate payment, other contactless cards may be used. In some examples, individuals who have different financial institutions may possess contactless cards to provide information to initiate one or more payment requests from the card-tapping individual.
The following example use cases describe examples of particular implementations of the present disclosure. These are intended solely for explanatory purposes and not for purposes of limitation. In one case, a first friend (payor) owes a second friend (payee) a sum of money. Rather than going to an ATM or requiring exchange through a peer-to-peer application, payor wishes to pay via payee's smartphone (or other device) using a contactless card. Payee logs-on to the appropriate application on his smartphone and selects a payment request option. In response, the application requests authentication via payee's contactless card. For example, the application outputs a display requesting that payee tap his contactless card. Once payee taps his contactless card against the screen of his smartphone with the application enabled, the contactless card is read and verified. Next, the application displays a prompt for payor to tap his contactless card to send payment. After the payor taps his contactless card, the application reads the card information and transmits, via an associated processor, a request for payment to payor's card issuer. The card issuer processes the transaction and sends a status indicator of the transaction to the smartphone. The application then outputs for display the status indicator of the transaction.
In another example case, a credit card customer may receive a new credit card (or debit card, other payment card, or any other card requiring activation) in the mail. Rather than activating the card by calling a provided telephone number associated with the card issuer or visiting a website, the customer may decide to activate the card via an application on his or her device (e.g., a mobile device such as a smartphone). The customer may select the card activation feature from the application's menu that is displayed on a display of the device. The application may prompt the customer to tap his or her credit card against the screen. Upon tapping the credit card against the screen of the device, the application may be configured to communicate with a server, such as a card issuer server which activates the customer's card. The application may then displays a message indicating successful activation of the card. The card activation would then be complete.
In block 1210, the card may be configured to dynamically generate data. In some examples, this data may include information such as an account number, card identifier, card verification value, or phone number, which may be transmitted from the card to the device. In some examples, one or more portions of the data may be encrypted via the systems and methods disclosed herein.
In block 1220, one or more portions of the dynamically generated data may be communicated to an application of the device via NFC or other wireless communication. For example, a tap of the card proximate to the device may allow the application of the device to read the one or more portions of the data associated with the contactless card. In some examples, if the device does not comprise an application to assist in activation of the card, the tap of the card may direct the device or prompt the customer to a software application store to download an associated application to activate the card. In some examples, the user may be prompted to sufficiently gesture, place, or orient the card towards a surface of the device, such as either at an angle or flatly placed on, near, or proximate the surface of the device. Responsive to a sufficient gesture, placement and/or orientation of the card, the device may proceed to transmit the one or more encrypted portions of data received from the card to the one or more servers.
In block 1230, the one or more portions of the data may be communicated to one or more servers, such as a card issuer server. For example, one or more encrypted portions of the data may be transmitted from the device to the card issuer server for activation of the card.
In block 1240, the one or more servers may decrypt the one or more encrypted portions of the data via the systems and methods disclosed herein. For example, the one or more servers may receive the encrypted data from the device and may decrypt it in order to compare the received data to record data accessible to the one or more servers. If a resulting comparison of the one or more decrypted portions of the data by the one or more servers yields a successful match, the card may be activated. If the resulting comparison of the one or more decrypted portions of the data by the one or more servers yields an unsuccessful match, one or more processes may take place. For example, responsive to the determination of the unsuccessful match, the user may be prompted to tap, swipe, or wave gesture the card again. In this case, there may be a predetermined threshold comprising a number of attempts that the user is permitted to activate the card. Alternatively, the user may receive a notification, such as a message on his or her device indicative of the unsuccessful attempt of card verification and to call, email or text an associated service for assistance to activate the card, or another notification, such as a phone call on his or her device indicative of the unsuccessful attempt of card verification and to call, email or text an associated service for assistance to activate the card, or another notification, such as an email indicative of the unsuccessful attempt of card verification and to call, email or text an associated service for assistance to activate the card.
In block 1250, the one or more servers may transmit a return message based on the successful activation of the card. For example, the device may be configured to receive output from the one or more servers indicative of a successful activation of the card by the one or more servers. The device may be configured to display a message indicating successful activation of the card. Once the card has been activated, the card may be configured to discontinue dynamically generating data so as to avoid fraudulent use. In this manner, the card may not be activated thereafter, and the one or more servers are notified that the card has already been activated.
In another example case, a customer wants to access his financial accounts on his or her mobile phone. The customer launches an application (e.g., a bank application) on the mobile device and inputs a username and password. At this stage, the customer may see first-level account information (e.g., recent purchases) and be able to perform first-level account options (e.g., pay credit-card). However, if the user attempts to access second-level account information (e.g., spending limit) or perform a second-level account option (e.g., transfer to external system) he must have a second-factor authentication. Accordingly, the application requests that a user provide a transaction card (e.g., credit card) for account verification. The user then taps his credit card to the mobile device, and the application verifies that the credit card corresponds to the user's account. Thereafter, the user may view second-level account data and/or perform second-level account functions.
In some examples, a user may be required to confirm his or her identity prior to using an application, utilizing enhanced or restricted features of an application or device, viewing sensitive information, or taking certain actions. A transmitting device, as described herein and such as a contactless card, may be employed as means for confirming a user's identity and access these features. Examples of sensitive information include, without limitation, academic, financial, historical, medical, and technical information. Examples of restricted features include, without limitation, accessing or modifying sensitive information, generating additional sensitive information, buying, selling, or transferring assets or sensitive information, and destroying or otherwise disposing of assets or sensitive information.
The user may confirm his or her identified by providing, e.g., via the transmitting device, a user identification. The user identification may comprise certain information relating to the user that is not widely known. Examples of user identification information include, without limitation, the user's date of birth, home address, work address, phone number, credit card number, bank account number, billing zip code, security number, password, biometric identification information (e.g., facial, retina, or fingerprint scan, voice recognition), personal identification number, identification information related to the transmitting device (e.g., a unique identification number, an algorithmically determined value, a counter value), or a combination thereof. The user identification may be transmitted by the transmitting device by the methods described herein, and may encrypted prior to transfer.
For example, the user may wish to protect his or her personal, financial, medical, or other sensitive information using enhanced security features associated with a contactless card or other transmitting device with the communication and encryption capabilities described herein. A user may establish a security feature which requires identity authentication prior to performing higher-risk or otherwise sensitive operations including, but not limited to, transferring money or credits out of an account (e.g., withdrawing cash from an ATM), amending contact information, editing a password, or changing portfolio positions. Other sensitive operations may include, but are not limited to, allowing access to or transmitting personal data, medical data, and/or financial data. The user may log into an application and establish the desired security feature requiring identity authentication prior to performing certain sensitive operations. When the user wishes to perform such an operation, she may authenticate her identity by tapping, or otherwise gesturing with his or her contactless card, smartphone, or other transmitting device near a receiving device. The receiving device may detect the use of the transmitting device and authenticate the user's identity using the communication and encryption capabilities described herein. Once the user's identity has been authenticated and the authentication has been communicated from the receiving device to the application, the may be allowed to access sensitive information or perform the desired sensitive operation.
In some examples, a contactless card may be used with a terminal, kiosk, receiving device, and/or mobile device, to transmit insurance data to a doctor, medical staff, support staff, and/or billing agent. In some examples, transmitting insurance information facilitates billing operations and billing a proper amount to a user. In some examples, transmitting insurance information facilitates the preparation of a bill and/or invoice which may vary depending on the specific type and/or amount of insurance coverage applied to a user.
In some examples, a user may execute an application on a mobile device, the application being in communication, through a server, with a billing and/or accounting application associated with a medical provider. The user may authenticate his identity to the application running on the mobile device using a contactless card. The mobile device may then transfer the user's insurance information to the medical provider to be used for billing purposes.
At block 1320, the application or hotline requests the user authenticate his or her identity prior to proceeding to utilize enhanced features of the application or prior to accessing sensitive information. At block 1330, the user moves a transmitting device, with the communication and encryption capabilities described herein near a receiving device. At block 1340, the receiving device authenticates the user's identification. At block 1350, the receiving device communicates the user's authenticated identification to the application. At block 1360, the application allows the user to utilize enhanced features of the application or to access sensitive information. In some examples, the enhanced features and sensitive information available to the user will vary based on user information associated with the user's authenticated identity.
In another example, the user may wish to authenticate his or her identity in order to initiate a secure chat or call with a customer service agent. In such cases, securely authenticating the user's identity may allow the user to provide an agent access to his or her personal information, account information, transaction history, call history, previous notes, and/or other information without requiring the agent to independently verify the user's identity. In some examples, the user may call or otherwise contact an agent and the agent may request the user authenticate his or her identity using a transmitting device, with the communication and encryption capabilities described herein, and a receiving device. The user may tap, swipe, wave or perform any gesture or combination thereof with the transmitting device near the receiving device. The receiving device may communicate to the agent and/or an application that the agent is using that the user has authenticated his or her identity and allow the agent access to the user's information. In some examples, this will save the user the time of providing an agent, or multiple agents, with his or her date of birth, address, password, social security number, and/or other identifying information. In some examples, this saves time and provides greater protection of the user's sensitive information as such information need not be provided to the human agent.
In some examples, an application may require the user to authenticate his or her identity as a first step, prior to connecting to an agent at all. In some examples, an application may initially direct the user to a particular agent or category of agent based on the user's authenticated identity. In some examples, the user's authenticated identity may be associated with a rank, category, or points system, which may entitle the user to certain benefits such as, for example, faster access to an agent, access to an agent with a certain experience level, access to an agent with a certain quality rating; access to an agent with certain enhanced authorizations. Such authorizations may include, for example, the authorization to refund or credit the user a certain dollar value, the authorization to provide certain premium features or benefits to the user, the authorization to waive certain charges or fees, the authorization to renew, negotiate, and/or modify a contract or other agreement, the authorization to provide free or reduced shipping, and/or the authorization to provide additional or premium services to the user.
In some examples, the user may be required to authenticate his or her identity after an initial authentication, e.g., after authenticating to begin communication with an agent. In these examples, a limited initial amount of data relating to the user or an account associated the user may be accessible to the agent. The limited initial amount of data may be sufficient for purposes of the communication (e.g., if it is a simple inquiry), and therefore no further authentication is needed. However, if additional information is needed, such as for a further communication or a more complex inquiry, a further authentication may be necessary to make the required data accessible to the agent. Then the user may against tap, swipe, wave or perform any gesture or combination thereof with the transmitting device near the receiving device, in order to authenticate his or her identity and make additional data accessible to the agent.
At block 1420, the application or hotline requests the user authenticate his or her identity. At block 1430, the user moves a transmitting device, e.g., a contactless card, near a receiving device. At block 1440, the receiving device authenticates the user's identification. At block 1450, the receiving device communicates the user's authenticated identification to the application or hotline.
After receiving the user's authenticated identification, the application or hotline may proceed with any of blocks 1460, 1470, or 1480. At block 1460, the application or hotline provides the user's account information to a human operator, thereby saving the user time relaying that information to the operator. In block 1470, the application or hotline routes the user's call to a particular category of human operator based on user information, such as a rank, associated with the user's identity. In block 1480, the application or hotline routes the user's call to the first available human operator based on user information, such as transaction history, associated with the user's identity, thereby allowing preferred customers to avoid waiting in queues.
In some examples, a user may wish to provide information to an application using a transmitting device with the communication and encryption capabilities described herein and a receiving device which is in communication with the application. In such examples, the user's information may be recorded on the transmitting device and/or receiving device. Such information may include, but is not limited to, the user's name, date of birth, home address, work address, phone number, credit card number, bank account number, billing zip code, security number, password, and/or preferences. When prompted to provide such information, the user may tap, swipe, wave or perform any gesture or combination thereof with a contactless card, smartphone, or other transmitting device with the communication and encryption capabilities described herein in order to authenticate his or her identity to the receiving device. This may transfer information from the transmitting device to the receiving device and/or authorize the receiving device to communicate the user's information to the application, thereby reducing or eliminating the need for the user to enter his or her information manually and creating a more secure transmission of data.
In some examples, an application may record information related to a user's identity authentication behavior. Such information may include, for example, time of authentication, location of authentication, type of transmitting device utilized, the individual transmitting device utilized, type of receiving device utilized, the individual receiving device utilized, and/or information related to the movement or timing of the tap, swipe, wave or perform any gesture or combination thereof utilized for identity authentication. In some examples, the recorded information may be analyzed in order to develop a user's behavior profile. Such a profile may be used to detect potential indicators of fraud. Such indicators may include behavior which is outside of a user's established behavior profile. In some examples, a predetermined amount of variation may be determined before an activity will be determined to be fraudulent or potentially fraudulent. In some examples, the amount of acceptable behavior variation may be based on the amount of variation detected in the user's behavior profile. Such examples may be used in order to set a lower variation threshold for detecting potentially fraudulent activity for a user who has a long established record of authenticating his or her identity only from her home using a specific contactless card when compared to a user who frequently authenticates his or her identity from multiple locations using multiple transmitting devices. In some examples, the user's behavior information may be analyzed using artificial intelligence or machine learning techniques in order to establish profile patterns and the degree of variability in those patterns.
In some examples, a user's behavior profile may include information related to an application, or type of application which requires identity authentication information. This information may be used to provide the user with target advertising, features, content, or other benefits. In some examples, if a user uses a contactless card with the communication and encryption capabilities described herein for gaming applications, that user may be provided with additional content related to gaming, the specific games that the user plays, or businesses which offer products or services related to gaming. In some examples, if a user uses a contactless card with the communication and encryption capabilities described herein for travel applications, that user may be provided with additional content related to traveling, destinations that may be of interest to that user, hotels, spas, attractions or other business which offer products or services related to traveling or are in a particular destination the user may be interested in based on the user's behavior profile.
In some examples, an application may require a user to authenticate his or her identity as a first step in a multi-step security process prior at accessing sensitive information or performing sensitive operations. In such examples, an application may require a user to authenticate his or her identity using a transmitting device with the communication and encryption capabilities described herein prior to the application transmitting a passcode or pin to the user. In some examples, the step of authenticating the user's identity may be required before the application transmits a one-time, time-limited passcode to the user's smartphone. In some examples, the user may be required to authenticate his or her identity using a contactless card or other transmitting device which is not the user's smartphone. In such examples, the user must be in physical possession of both the user's contactless card and the user's smartphone in order to generate and receive a one-time use passcode from the application. This arrangement may help to reduce or prevent fraudulent activity by requiring multiple layers of security. In some examples, such enhanced security features may be implemented only if an application detects activity outside of a user's established behavior profile. For example, if an application detects that a user is attempting to access sensitive data from a different country, the application may require the user to perform a multi-factor identity authentication.
In some examples, a user may wish to facilitate a registration or check-in process. In some examples, the user may use a transmitting device with the communication and encryption capabilities described herein and a receiving device in order to authenticate his or her identity at a hotel, convention, restaurant, airline, mechanic, clinic, hospital, dentist's office, or any other location which accepts reservations. In some examples, a user may enter a hotel and tap, swipe, wave or perform any gesture or combination thereof using a transmitting device with the communication and encryption capabilities described herein near a receiving device which may be located at the front desk of a hotel. The receiving device may communicate to a reservation system that the user's identity has been authenticated in order to facilitate the check-in process. In some embodiments, the receiving device may be in communication with an automated kiosk which may issue room keys upon receiving the user's authenticated identification without the involvement of a human desk clerk.
In some embodiments, the hotel may not issue a separate room key, but may allow the user to access a room using the user's transmitting device. In such an example, the user may use his or her smartphone to authenticate his or her identity at a kiosk equipped with a receiving device. Upon authenticating the user's identity, the hotel may update its internal applications, thereby allowing the user to access a certain room for a certain time period using his or her smartphone without ever requiring a separate hotel room key.
In some embodiments, a user may use a contactless card to authenticate his or her identity at a room access terminal such as, for example, an electronic lock installed on a door. In some embodiments, the user may authenticate his or her identity using a contactless card in communication with an application executed on a mobile device. The application may interact directly with an access terminal or may communicate, using a server, with a backend hotel application or database to grant the user access to a room once the user's identity has been establishes as described herein.
In some embodiments, when a reservation is made, the hotel may update an internal application, thereby allowing a user to access a room using a contactless card configured to authenticate the user's identity. In some embodiments, the user may use a contactless card to interface directly with a terminal and/or other hotel device to gain access to a room.
In some embodiments, the user may execute an application on a mobile device which is in communication, through a server, with a hotel's internal access and control system. In some embodiments, the user may tap, swipe, wave or perform any gesture or combination thereof a contactless card in response to a prompt from an application on a mobile device in order to open a hotel room door. The user's mobile device, upon confirming the user's identity using the contactless card, may inform the hotel's internal access and control system that the user has been authenticated, thereby causing the hotel's access and control system to unlock or open a particular door.
In some examples, the user may wish to cancel, change, or modify a reservation at a hotel. In such examples, the hotel's reservation application may request the user authenticate his or her identity prior to allowing access to the reservation information or allowing the user's reservation to be modified.
In some examples, a user may wish to pay or tip a staff member at a hotel, restaurant, or other location. In such examples, the user may pre-arrange a series of gestures which initiate certain payment transactions. The user may tap a receiving device carried by or otherwise associated with a staff member in order to initiate a transaction. In some examples, following initiation of the transaction, the user may perform one or a series of gestures in order to pay the staff member a desired amount of money. In one example, the user may tap a transmitting device to the staff member's receiving device, and then perform a series of lateral sweeping motions with the transmitting device, wherein each lateral sweep transfers one dollar or other unit of currency to the staff member associated with the receiving device. In such an example, the user may tip or pay the staff member as much or as little as the user desires based on the number of lateral sweeping movements performed. In other examples, the user may prearrange gestures which initiate the transfer of certain amounts, e.g., one, five, or ten dollars each. In such an example, the user may tip or pay the staff member the desired amount of money based on a combination of the prearranged gestures.
In some examples, a user may wish to access a secure physical location, including but not limited to unlocking a locker, opening a locked door, or unlocking a safe. In such examples, the secure physical location may be equipped with a receiving device and the user may be able to access the secure location by authenticating his or her identification using a transmitting device with the communication and encryption capabilities described herein. In such examples, the user may tap, swipe, wave or perform any gesture or combination thereof with a contactless card, smartphone, or other transmitting device near the receiving device. Upon authenticating the user's identification, the receiving device may unlock the secure location.
In one example, a user may wish to unlock a locker which has been equipped with a receiving device. The user may tap, swipe, wave or perform any gesture or combination thereof with a contactless card or transmitting device with the communication and encryption capabilities described herein near the receiving device in order to authenticate the user's identity. Upon authenticating the user's identity, the locker may open. In another example, upon authenticating the user's identity, the receiving device may send a temporary passcode to the user's smartphone or mobile device, allowing the user to unlock the locker by entering the code. In such an arrangement, the user must be in physical possession of both the smartphone or mobile device associated with the user's account as well as the contactless card or transmitting device used to authenticate the user's identity. In some examples, the receiving device may require the user to perform a predetermined gesture with the contactless card, creating yet another layer of security required to access the locker.
In some examples, the user may provide the operator of controlled physical locations with a list of other individuals who are authorized to access the controlled space on behalf of the user. In such examples, the user's agent may tap, swipe, wave or perform any gesture or combination thereof with the agent's contactless card in order to authenticate his or her identity as the user's authorized agent. In some examples, upon authenticating the agent's identity, the agent may be granted access to the controlled space on behalf of the user. In some examples, upon authenticating the agent's identity, the receiving device may send the user a text message or other notification, asking if the user wishes to allow the agent access to the controlled space prior to allowing the agent to access the controlled space.
In certain secure locations, multiple users may be required to each authenticate his or her identity by swiping, tapping, or gesturing with a contactless card near a receiving device within a certain time frame or substantially simultaneously. Such examples would prevent any single individual from accessing a controlled space without the other required individuals being present.
In some examples, a user may order an item on-line and the product may be delivered to a secure location to be picked up by the user. The user may receive a notification informing the user that their package is ready for pick up. At that point the use may travel to the secure storage and tap, swipe, wave or perform any gesture or combination thereof with a contactless card or transmitting device with the communication and encryption capabilities described herein near a receiving device in order to authenticate the user's identity. Upon authenticating the user's identity, the secure storage, such as a locker, may open. This allows the user to receive a package without the package being delivered in an unsecure manner, thereby reducing or eliminating the likelihood of the item being fraudulently intercepted before the user can take possession of the item.
Embodiments of the system 1500 include a contactless card 1510 that comprises a processor 1512, a memory 1516 containing an applet 1518, and a contactless communication interface 1514. Embodiments of the system 1500 include a card reader 1520 that comprises a processor 1522, and a contactless communication interface 1524. The contactless communication interface 1524 is configured to generate a contactless communication field. In some embodiments, the contactless communication field is a near field communication (NFC) field. Embodiments of the system 1500 include an authentication server 1540. The authentication server 150 may be in data communication with the card reader 1520. Embodiments of the system 1500 include a secure storage 1530. The secure storage 1530 comprises a lock 1532. In some embodiments, the secure storage lock 1532 is in data communication with the card reader 1520.
In operation, a user may tap, swipe, wave or perform any gesture or combination thereof with contactless card 1510 near the card reader 1520 to authenticate the user's identity and gain access to the secure storage 1530 When the contactless card 1510 enters the contactless communication field created by contactless communication interface 1524 of card reader 1520, the card reader 1520 is configured to request an identification token from the applet 1518 via the contactless communication interface 1524 of the card reader 1520. In response to this request, the applet 1518 may transmit an identification token contained in the memory 1516 of the contactless card 1510, may generate an identification token, and/or may encrypt an identification token using one or more cryptographic algorithms. In some embodiments, the contactless card may transmit an identification token using the communication and encryption capabilities described herein. In such embodiments, the card reader 1520 may be configured to decrypt the encrypted identification token or may be configured to utilize and/or transmit information form the encrypted identification token.
In some embodiments, the card reader 1520 may be configured to authenticate the token by generating an identification message based on the identification token and transmitting the identification message to the authentication server 1540. In some embodiments, the identification message may include the identification token or a portion of the identification token. In some embodiments, the identification message may be derived from the identification token but not contain any of the same information or data. In embodiments in which the identification message differs from the identification token, the information contained within the identification token may be locally maintained rather than being transmitted to a remote server.
The authentication server 1540 receives the identification message from the card reader 1520 and, upon authenticating the identity of the user of the contactless card, transmits an authentication message to the card reader 1520. If the authentication server 1540 is unable to authenticate the user of the contactless card based on the identification message, the authentication server may transmit a message indicating that the user's identity could not be authenticated. In some embodiments, this message may comprise a fraud warning. Upon receipt of the authentication message, the card reader 1520 may transmit an access message to the secure storage lock 1532. The access message may indicate that the identity of the user has been authenticated and direct the secure storage lock 1532 to allow access to the secure storage 1530. In some embodiments, the authentication message direct the lock 1532 to unlock without containing information associated with the user's identity. In such embodiments, a high degree of trust is required between the secure storage lock 1532 and the card reader 1520.
In some embodiments, the authentication server 1540 is in data communication with a database 1550. Database 1550 may contain information associated with a user's account including the account used to purchase an item that have been stored in the secure storage 1530. In such embodiments, the authentication server 1540 may be configured to, upon receipt of the identification message, determine if the contactless card 1510 is associated with an account used to purchase an item contained within the secure storage 1530. In some embodiments, if the contactless card 1510 used to authenticate a user's identity is not associated with the account used to purchase an item contained within the secure storage 1530, the authentication server 1540 will not transmit an authentication message to the card reader 1520. In such embodiments, the user is prevented from accessing the secure storage 1530 unless the user has purchased an item contained within the secure storage using contactless card 1510.
By verifying that the contactless card 1510 used to authenticate the user's identity is associated with the account that was used to purchase an item contained within the secure storage 1530, the system encourages users to purchase items which may be stored in the secure storage with the contactless card 1510. In some embodiments, the determination that contactless card 1510 is associated with the account used to purchase an item contained within the secure storage may also serve as an additional fraud prevention feature.
In some embodiments, the authentication server 1540 may be configured to transmit a passcode to a mobile device 1570 associated with the account used to purchase an item contained within the secure storage. The passcode may contain a word, number, string of characters and/or a QR code or other machine readable code. In some embodiments the authentication server 1540 may only transmit such a passcode if an item stored in the secure storage 1530 costs more than a predetermined amount, for example, more than $100. In such embodiments, prior to transmitting an access message to the secure storage 1530, the card reader 1520 may be configured to require the user to input the passcode into the card reader 1520 using an input device associated with the card reader 1520. In some embodiments, the secure storage 1530 may require the user to enter the passcode prior to allowing access to the secure storage 1530 even if the secure storage 1530 receives an access massage.
In some embodiments, the authentication server 1540 is in data communication with the secure storage 1530. It will be appreciated that the authentication server may be in communication with the secure storage or any other component of the disclosed system through a network or a series of networks. The authentication server 1540 may be configured to transmit a pick up message to a user interface 1560 associated with the account used to purchase an item when the item is placed within the secure storage.
The user interface 1560 may be displayed on a client device, mobile device, or any suitable device capable of receiving an electronic message and displaying information to a user. By sending a passcode to the user via the user interface, the user may be notified when an item is ready for pick up at the secure storage 1530. In some embodiments, promptly notifying the user of the status of an order may reduce the opportunity for an item ordered online to be fraudulently or maliciously taken before the user is able to pick up the item from the secure storage.
In some embodiments, the secure storage is co-located with a retail store. The secure storage may be located within the interior of the store, thereby requiring the user to enter the store in order to pick up any items from the secure storage. In some embodiments, the secure storage is on the exterior of the store. This arrangement allows a user to pick up items from the secure storage at times that the retail store may not be open to the public. In some embodiments, the secure storage is configured to be accessible by a user within a vehicle. In such embodiments, the secure storage may be elevated so that a user may drive up to the secure storage and tap, swipe, wave or perform any gesture or combination thereof with the contactless card near the card reader in order to retrieve items from within the secure storage.
In some embodiments, the secure storage 1530 may include or be adjacent to a conveyor system 1580. The conveyor system 1580 may be configured to transport an item from within the secure storage to a user once the system allows access to the secure storage. In some embodiments, the conveyor system may transport an item a short distance, for example, a 2 feet, so that the item may be more easily retrieved by the user. In some embodiments, the conveyor 1580 may transport an item a significant distance. In some embodiments, the secure storage 1530 may be remote from the card reader 1520 and/or the location at which a user picks up their items. The conveyor 1580 may be configured to transport an item from the remove secure storage to a user at a pick up location.
Embodiments of the system 1600 include a contactless card 1610 that comprises a processor 1612, a memory 1616 containing an applet 1618, and a contactless communication interface 1614. In some embodiments, system 1600 includes a secure location 1620 containing one or more than one secure storages 1630. The secure location 1620 may be a room, building, compartment, area, or any portion or combination thereof that is able be locked or otherwise secured to prevent unwanted entry. The secure location 1620 comprises a secure location card reader 1640 and a secure location lock 1624 in data communication with the secure location card reader 1640. The secure location card reader 1640 comprises a processor 1642 and a contactless communication interface 1644 configured to generate a contactless communication field.
In operation, a user may tap, swipe, wave or perform any gesture or combination thereof with contactless card 1610 near the secure location card reader 1640 to authenticate the user's identity and gain access to the secure location 1620. In some embodiments, the user may gain access to a secure storage 1630 only after gaining access to the secure location 1620.
When the contactless card 1610 enters the contactless communication field created by the contactless communication interface 1644 of the secure location card reader 1640, the card reader 1640 is configured to request an identification token from the applet 1618 via the contactless communication interface 1644 of the secure location card reader 1640. In response to this request, the applet 1618 may transmit an identification token contained in the memory 1616 of the contactless card 1610, may generate an identification token, and/or may encrypt an identification token using one or more cryptographic algorithms. In some embodiments, the contactless card 1610 may transmit an identification token using the communication and encryption capabilities described herein. In such embodiments, the secure location card reader 1640 may be configured to decrypt the encrypted identification token or may be configured to utilize and/or transmit information form the encrypted identification token. The secure location card reader 1640 may be configured to authenticate a user identity and/or an identification token using any of the methods described here.
In some embodiments, upon authenticating a user identity or identification token, the secure location card reader is configured to transmit an access message to the secure location lock 1624. Upon receipt of the access message, the secure location lock 1624 may allow access to the secure location. In some embodiments, upon authenticating a user identity or identification token, the secure location card reader 1640 is configured to transmit an access message to a secure storage 1630 located within the secure location 1620. In some embodiments more than one secure storage 1630 may be contained within the secure location 1620. In some embodiments, a visual indicator, such as a colored or blinking light, may identity a secure storage 1630 that has received an access message from the secure location card reader 1640 and allowed access to a user.
In some embodiments, system 1600 includes an authentication server 1650 in data communication with a database 1660. Database 1660 may contain information associated with a user's account including the account used to purchase an item that has been stored in a secure storage 1630 within the secure location 1620.
In some embodiments, upon receipt of an identification token from contactless card 1610, the secure location card reader 1640 is configured to query the authentication server 1650 to determine if an item contained in the secure storage 1630 was purchased using the account associated with the contactless card 1610.
In some embodiments, the authentication server 1650 may be configured to, upon receipt of an identification message from the secure location card reader 1640, determine if the contactless card 1610 is associated with an account used to purchase an item contained within a secure storage 1630.
In some embodiments, if the contactless card 1610 used to authenticate a user's identity is not associated with an account used to purchase an item contained within a secure storage 1630, the authentication server 1650 will not transmit an authentication message to the secure location card reader 1640. In such embodiments, the user may be prevented from accessing the secure location 1620, as well as the secure storage 1630 located within the secure location 1620, unless the user has purchased an item contained within a secure storage 1630 using contactless card 1610.
In some embodiments, the secure storage may be a stationary locker or cage for securing storing items. In some embodiments, the secure storage may be mobile and/or configured to deliver an item that has been ordered to a user.
Embodiments of the system 1700 include a contactless card 1710 that comprises a processor 1712, a memory 1716 containing an applet 1718, and a contactless communication interface 1714. Embodiments of the system 1700 also include a card reader 1720 that comprises a processor 1722, and a contactless communication interface 1724. The contactless communication interface 1724 is configured to generate a contactless communication field. In some embodiments, the contactless communication field is a near field communication (NFC) field.
In an example embodiment of system 1700, the secure storage 1730 is contained within an autonomous vehicle 1740. The autonomous vehicle 1740 comprises a vehicle processor 1742 in data communication with a card reader 1720. In certain embodiments, the card reader 1720 may be a mobile device. In some embodiments, the card reader 1720 is configured to transmit a travel message to the vehicle processor 1742. The vehicle processor 1742 may be configured to, upon receipt of the travel message, direct the autonomous vehicle 1740 containing the secure storage 1730 to travel to a location associated with the card reader 1720.
In some embodiments, a user may tap, swipe, wave or perform any gesture or combination thereof with contactless card 1710 near the card reader 1720 to authenticate the user identity and gain access to the secure storage 1730. When the secure storage 1730 is contained within an autonomous vehicle 1740, the card reader 1720 may transmit information associated with the location of the card reader 1720 at the time the user authenticated their identity. The location information may be provided to the autonomous vehicle 1740, thereby allowing the autonomous vehicle to travel to the location of the user and deliver the secure storage 1730 to the user.
In operation, a user may order an item online and may receive an electronic notification when the item has been received and placed within a secure storage. When the user sees the electronic notification, the user may authenticate their identity using a mobile device, such as, for example, a smart phone which may server as a card reader. The mobile device card reader may be configured to transmit information indicating the user identity and the user's location to a remote server and/or the autonomous vehicle containing the secure storage. Once the autonomous vehicle travels to the user's location, the secure storage may allow the user access based on the user's previously authenticated identity or the user may be required to authenticate their identity using a card reader associated with the autonomous vehicle. This disclosed system allows a user to order an item online at a convenient time and also receive automated delivery of the item in a secure manner at a time and location the user chooses.
In step 1815, the secondary device requests an identification certificate from the card via the contactless communication interface. In response to the request for an identification certificate, step 1820 includes the contactless card transmitting an identification certificate from the card to the secondary device. The secondary device receives the identification certificate and, in step 1825, the secondary device generates an identification message based on the identification certificate. Step 1830 includes the secondary device transmitting the identification message to an authorization server.
The authorization server may be configured to authenticate the user identity and/or the identification certificate using any of the systems, methods and/or techniques discussed herein. Step 1835 includes the authorization server authenticating the identification certificate based on the identification message and, in step 1840 transmitting an authentication message to the secondary device. Once the secondary device has received the authentication message from the authentication server, at step 1845, the secondary device transmits an access message to the secure storage. In some embodiments, the secure storage is configured to, at step 1850 allow a user to access the interior of the secure storage upon receiving an access message from the secondary device.
In some embodiments, method 1800 comprises, at step 1855, encrypting the identification certificate using one or more cryptographic algorithms prior to transmitting the identification certificate from the card to the secondary device. Encrypting the identification certificate prior to transmitting the identification certificate, reduces the chance of the identification certificate being intercepted and/or used fraudulently.
In some embodiments, the secure storage may include or be adjacent to a conveyor system. In some embodiments, method 1800 may optionally comprise, at step 1860, transporting an item from the secure storage to a user.
In some embodiments, the secure storage itself may be mobile. The secure storage may be contained within a vehicle or otherwise be configured to be movable. A mobile secure storage may be accessed using a mobile secondary device such as, for example, a smart phone. In some embodiments, method 1800 may optionally comprise, at step 1865, transporting the secure storage to a location associated with the secondary device.
In some embodiments, in addition to requiring a user to authenticate their identity in order to access a secure storage, step 1870 includes transmitting a code to a mobile device associated with a user. Step 1875 includes the user entering the code using an input device associated with the secure storage to gain access to the secure storage. A code may be transmitted to a mobile device associated with a user in order to provide an additional authentication factor and reduce or prevent any fraudulent access to the secure storage space. In some embodiments, at step 1880, a user is requested to scan an identification card, such as a driver's license, into a card reader prior to the card reader transmitting an access message to the secure storage. Again, the user of an additional authentication factor may be used to reduce or prevent any fraudulent access to the secure storage. It will be appreciated that any additional authentication and/or security features may be used in addition to any other additional authentication feature.
In some embodiments, step 1885 includes transmitting an order ready message to a user. The order ready message may comprise any information indicating when, where, or how a user may pick up an item from a secure storage. In some embodiments, the order ready message comprises a locker identification number and a locker location. In some embodiments, an order ready message may be transmitted within a predetermined amount of time after an item has been placed inside a secure storage.
In another example, a user may wish to access a vehicle which has been equipped with a receiving device. In such an example, the user may tap, swipe, wave or perform any gesture or combination thereof with a contactless card or other transmitting device with the communication and encryption capabilities described herein near the receiving device in order to authenticate the user's identity and thereby gain access to the vehicle. In some examples, a similar tap, swipe, wave or perform any gesture or combination thereof near a receiving device may be used to start the vehicle's ignition or otherwise access the driving capabilities of the vehicle. In some examples, the vehicle or the receiving devices associated with the vehicle may maintain a list of authorized agents who may access and/or operate the vehicle on behalf of the user. In some examples, certain individuals may be granted permission to access the vehicle but not drive or operate the vehicle. For example, a user may grant each of his or her family members the ability to access the vehicle by swiping, tapping, or gesturing with that family member's contactless card, thereby authenticating the identity of the individual family member. However, the user may only grant the ability to operate the vehicle to his or her spouse, thereby preventing the user's children from operating the car despite authenticating their identification. In some embodiments, authorized agents may be granted the ability to operate the vehicle only during certain days and/or times. If a user has a teenage son who is learning to drive but the user does not want his son to drive at night, the user may modify the permissions associated with the son's identification such that the son may access the car at any time, but may only operate the car before 7:00 pm. In some examples, the transmitting device eliminates the necessity for a separate key to access and/or operate the vehicle.
In some examples, a user may wish to access his or her health care or medical information. Due to the sensitive nature of such information, the user may be required to authenticate his identity using a contactless card with the communication and encryption capabilities described herein. In such examples, the user may tap, swipe, wave or perform any gesture or combination thereof with a contactless card or other transmitting device near a receiving device in order to authenticate his identity. Once the user has authenticated his identity to the receiving device, the receiving device may communicate this information to a server which may then allow the use to access his medical information. By requiring secure identity authentication prior to granting access to medical data, hospitals, clinics, universities, and other organizations may reduce the likelihood of allowing unauthorized access to medical information. Additionally, in some examples, patients may be able to access their own medical information from an unmanned kiosk, thereby allowing greater access to the user's information without requiring additional staff or record keeping personnel.
Throughout the specification, reference is made to various accounts, e.g., a banking account, a credit card account, and a debit account. However, it is understood that the present disclosure is not limited to a particular banking account, and may include any financial account, as well as accounts related to entertainment, loyalty programs, utilities, and other services.
In some examples, the present disclosure refers to a tap of the contactless card. However, it is understood that the present disclosure is not limited to a tap, and that the present disclosure includes other gestures (e.g., a wave or other movement of the card).
Throughout the specification and the claims, the following terms take at least the meanings explicitly associated herein, unless the context clearly dictates otherwise. The term “or” is intended to mean an inclusive “or.” Further, the terms “a,” “an,” and “the” are intended to mean one or more unless specified otherwise or clear from the context to be directed to a singular form.
In this description, numerous specific details have been set forth. It is to be understood, however, that implementations of the disclosed technology may be practiced without these specific details. In other instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description. References to “some examples,” “other examples,” “one example,” “an example,” “various examples,” “one embodiment,” “an embodiment,” “some embodiments,” “example embodiment,” “various embodiments,” “one implementation,” “an implementation,” “example implementation,” “various implementations,” “some implementations,” etc., indicate that the implementation(s) of the disclosed technology so described may include a particular feature, structure, or characteristic, but not every implementation necessarily includes the particular feature, structure, or characteristic. Further, repeated use of the phrases “in one example,” “in one embodiment,” or “in one implementation” does not necessarily refer to the same example, embodiment, or implementation, although it may.
As used herein, unless otherwise specified the use of the ordinal adjectives “first,” “second,” “third,” etc., to describe a common object, merely indicate that different instances of like objects are being referred to, and are not intended to imply that the objects so described must be in a given sequence, either temporally, spatially, in ranking, or in any other manner.
While certain implementations of the disclosed technology have been described in connection with what is presently considered to be the most practical and various implementations, it is to be understood that the disclosed technology is not to be limited to the disclosed implementations, but on the contrary, is intended to cover various modifications and equivalent arrangements included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.
This written description uses examples to disclose certain implementations of the disclosed technology, including the best mode, and also to enable any person skilled in the art to practice certain implementations of the disclosed technology, including making and using any devices or systems and performing any incorporated methods. The patentable scope of certain implementations of the disclosed technology is defined in the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims if they have structural elements that do not differ from the literal language of the claims, or if they include equivalent structural elements with insubstantial differences from the literal language of the claims.
The subject application is a continuation of U.S. patent application Ser. No. 16/901,660 filed Jun. 15, 2020, which is a continuation of U.S. patent application Ser. No. 16/590,504 filed Oct. 2, 2019, now U.S. Pat. No. 10,733,645, which is a continuation-in-part of U.S. patent application Ser. No. 16/351,441 filed Mar. 12, 2019, now U.S. Pat. No. 10,579,998, which is a continuation-in-part of U.S. patent application Ser. No. 16/205,119 filed Nov. 29, 2018, now U.S. Pat. No. 10,581,611, which claims the benefit of U.S. Provisional Patent Application No. 62/740,352 filed Oct. 2, 2018, the contents of which are hereby incorporated by reference in their entireties.
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 |
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 |
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 |
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 |
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 |
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 |
7353396 | Micali et al. | Apr 2008 | B2 |
7357312 | Gangi | Apr 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 |
7676438 | Brewer et al. | Mar 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 |
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 |
8056802 | Gressel et al. | Nov 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 |
8171524 | Micali et al. | May 2012 | B2 |
8186602 | Itay et al. | May 2012 | B2 |
8196131 | von Behren et al. | Jun 2012 | B1 |
8213902 | Rowley | Jul 2012 | B2 |
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 |
8300914 | Ueda | Oct 2012 | B2 |
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 |
8464936 | Zeigler | Jun 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 | Vijayshankar 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 |
8880027 | Darringer | Nov 2014 | B1 |
8888002 | Chesney et al. | Nov 2014 | B2 |
8898088 | Springer et al. | Nov 2014 | B2 |
8934837 | Zhu et al. | Jan 2015 | B2 |
8977569 | Rao | 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 | Venkataramani 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 |
9230375 | Micali et al. | Jan 2016 | B2 |
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 |
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 |
9576159 | Templeton et al. | Feb 2017 | B1 |
9619952 | Zhao et al. | Apr 2017 | B1 |
9635000 | Muftic | Apr 2017 | B1 |
9665858 | Kumar | May 2017 | B1 |
9674705 | Rose et al. | Jun 2017 | B2 |
9679286 | Colnot et al. | Jun 2017 | B2 |
9680942 | Dimmick | Jun 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 | Queru | Sep 2017 | B1 |
9773151 | Mil'shtein et al. | Sep 2017 | B2 |
9780953 | Gaddam et al. | Oct 2017 | B2 |
9891823 | Feng et al. | Feb 2018 | B2 |
9916581 | Dorsey et al. | Mar 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 |
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 |
11423452 | Rule | Aug 2022 | B2 |
20010010723 | Pinkas | Aug 2001 | A1 |
20010029485 | Brody et al. | Oct 2001 | A1 |
20010034702 | Mockett et al. | Oct 2001 | A1 |
20010034719 | Durand et al. | Oct 2001 | A1 |
20010054003 | Chien et al. | Dec 2001 | A1 |
20020078345 | Sandhu et al. | Jun 2002 | A1 |
20020093530 | Krothapalli et al. | Jul 2002 | A1 |
20020100808 | Norwood 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 |
20030135469 | Chung | Jul 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 |
20040093496 | Colnot | May 2004 | A1 |
20040127256 | Goldthwaite et al. | Jul 2004 | A1 |
20040215674 | Odinak et al. | Oct 2004 | A1 |
20040230799 | Davis | Nov 2004 | A1 |
20050035200 | Hendrick | Feb 2005 | A1 |
20050044367 | Gasparini et al. | Feb 2005 | A1 |
20050060586 | Burger et al. | Mar 2005 | A1 |
20050068178 | Lee et al. | Mar 2005 | A1 |
20050075985 | Cartmell | Apr 2005 | A1 |
20050081038 | Arditti Modiano et al. | Apr 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 |
20060136334 | Atkinson et al. | Jun 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 |
20070215698 | Perry | Sep 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 |
20080014867 | Finn | Jan 2008 | A1 |
20080035738 | Mullen | Feb 2008 | A1 |
20080059379 | Ramaci et al. | Mar 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 |
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 |
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 |
20090171682 | Dixon et al. | Jul 2009 | A1 |
20090210308 | Toomer et al. | Aug 2009 | A1 |
20090212909 | Burger 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 |
20100057620 | Li et al. | Mar 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 et al. | 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 |
20100250435 | Pedersen et al. | Sep 2010 | A1 |
20100257357 | McClain | Oct 2010 | A1 |
20100312634 | Cervenka | Dec 2010 | A1 |
20100312635 | Cervenka | 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 |
20120271764 | Chen | 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 |
20120330787 | Hanson et al. | Dec 2012 | A1 |
20120330788 | Hanson et al. | 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 |
20130130614 | Busch-Sorensen | May 2013 | A1 |
20130144793 | Royston | Jun 2013 | A1 |
20130171929 | Adams et al. | Jul 2013 | A1 |
20130173405 | Gouessant | 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 |
20130264386 | Greenspan | Oct 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 |
20140035721 | Heppe et al. | Feb 2014 | A1 |
20140040120 | Cho et al. | Feb 2014 | A1 |
20140040139 | Brudnicki et al. | Feb 2014 | A1 |
20140040147 | Varadarakan et al. | 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 |
20140084059 | Sierchio et al. | 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 |
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 |
20150006407 | Lunn et al. | Jan 2015 | 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 |
20150134452 | Williams | May 2015 | A1 |
20150135279 | Hayat | 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 |
20150332266 | Friedlander et al. | Nov 2015 | A1 |
20150339474 | Paz et al. | Nov 2015 | A1 |
20150356801 | Nitu et al. | Dec 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 |
20160066732 | Sarvestani | 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 |
20160234416 | Xiao | 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 |
20160335822 | Ogishi et al. | Nov 2016 | A1 |
20160359629 | Nadathur | Dec 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 |
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 |
20180349656 | Lee | Dec 2018 | A1 |
20180359100 | Gaddam et al. | Dec 2018 | A1 |
20190014107 | George | Jan 2019 | A1 |
20190019375 | Foley | Jan 2019 | A1 |
20190036678 | Ahmed | Jan 2019 | A1 |
20190238517 | D'Agostino et al. | Aug 2019 | A1 |
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 |
2543612 | Apr 2017 | 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 2018037392 | Mar 2018 | WO |
WO 2018063809 | Apr 2018 | WO |
WO 2018137888 | Aug 2018 | WO |
Entry |
---|
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 Warnar, 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, “VisaR 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 & Secure Instant Messenger”, Big Seven Study 2016 [online] [retrieved on Mar. 25, 2018]. 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.l, “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/lecture 10.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 in a nutshell”, Technical Report, 2016 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://www.cs.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.com/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&hl=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 Mauritius [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/054202, mailed Dec. 23, 2019. |
SmartCard Alliance, Technologies for Payment Fraud Prevention: EMV, Encryption and Tokenization, Pub. No. PC-14002 (Oct. 2014), 34 pages. |
Notification Concerning Transmittal of International Preliminary Report on Patentability from related PCT Application No. PCT/US2019/054202 mailed Apr. 15, 2021. |
Number | Date | Country | |
---|---|---|---|
20220351263 A1 | Nov 2022 | US |
Number | Date | Country | |
---|---|---|---|
62740352 | Oct 2018 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 16901660 | Jun 2020 | US |
Child | 17868629 | US | |
Parent | 16590504 | Oct 2019 | US |
Child | 16901660 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 16351441 | Mar 2019 | US |
Child | 16590504 | US | |
Parent | 16205119 | Nov 2018 | US |
Child | 16351441 | US |