Establishing authentication persistence

Information

  • Patent Grant
  • 11637826
  • Patent Number
    11,637,826
  • Date Filed
    Wednesday, February 24, 2021
    3 years ago
  • Date Issued
    Tuesday, April 25, 2023
    a year ago
Abstract
Various embodiments are generally directed to performing an authentication persistence check and, based on the check, allowing a previously successful authentication to persist on a user apparatus. The check may involve a stability check on the user apparatus. If the user apparatus is stable, device fingerprinting on the apparatus may be performed, the result of which may be compared to a snapshot of apparatus taken at the time of successful authentication. If the comparison reveals changes or drifts that are within a predetermined threshold, then the persistence of the authentication is allowed.
Description
BACKGROUND

Authentication may be the act of proving or verifying an assertion, such as an identity of a user of a computing device. The ways in which the user is authenticated may fall into three categories based on what are known as the factors of authentication: something that the user knows, something the user has, and something the user is. Each authentication factor may cover a range of elements used to authenticate or verify the user's identity prior to being granted access, approving a request, signing a document or other work product, granting authority to others, establishing chain of authority, etc.


SUMMARY

Various embodiments are generally directed to performing an authentication persistence check and, based on the check, allowing a previously successful authentication to persist on a user apparatus. The check may involve a stability check on the user apparatus. If the user apparatus is stable, device fingerprinting on the apparatus may be performed, the result of which may be compared to a snapshot of apparatus taken at the time of successful authentication. If the comparison reveals changes or drifts that are within a predetermined threshold, then the persistence of the authentication may be allowed.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1A illustrates an example data transmission system in accordance with one or more embodiments.



FIG. 1B illustrates an example sequence diagram for providing authenticated access in accordance with one or more embodiments.



FIG. 2 illustrates an example system using a contactless card in accordance with one or more embodiments.



FIG. 3A illustrates an example contactless card in accordance with one or more embodiments.



FIG. 3B illustrates an example contact pad of a contactless card in accordance with one or more embodiments.



FIG. 4 illustrates an example timing diagram in accordance with one or more embodiments.



FIG. 5 illustrates example first factor and second factor authentications in accordance with one or more embodiments.



FIG. 6 illustrates an example snapshot of the device settings and user behavioral biometrics in accordance with one or more embodiments.



FIG. 7 illustrates an example stability check of a user apparatus in accordance with one or more embodiments.



FIG. 8 illustrates an example device fingerprinting in accordance with one or more embodiments.



FIG. 9 illustrates an example drift analysis in accordance with one or more embodiments.



FIG. 10 illustrates an example flow diagram in accordance with one or more embodiments.





DETAILED DESCRIPTION

Various embodiments are generally directed to performing an authentication persistence check on a user apparatus (e.g., mobile computing device), and based on a positive persistence check, allowing a previously successful authentication (e.g., first factor authentication, second factor authentication) to persist for a predetermined period of time. For example, the authentication persistence check may be triggered or caused by one or more factors, such as a passing of a specific amount of time after a first instance of the authentication or when an authentication event occurs, which may include any action or instance that would typically require an authentication to be performed or processed, e.g., high-risk action or behavior, risk level of user action.


According to embodiments, the authentication persistence check may be considered positive if: (i) the user apparatus is stable based on a stability check and (ii) device settings of the user apparatus and/or behavioral biometrics associated with the user are within a predetermined drift threshold. Based on a positive persistence check, the previously successful authentication may persist for the predetermined period of time, and thus, does not require the user to reauthenticate. If, however, the persistence check is negative, the user would be required to reauthenticate.


After the predetermined period of time has passed since the positive authentication persistence check or when a subsequent authentication event occurs, a subsequent persistence check may be performed to determine if the authentication can continue to persist. In some instances, the number of consecutive positive persistence checks may be limited, and thus, the user may be required to reauthenticate after that limit has been reached.


According to embodiments, the types of authentication that can persist may include first factor authentication and second factor authentication, where the first factor and second factor authentications may be different from each other. For instance, the first factor authentication process may require the authenticating user to know something, such as a login ID and password. The second factor authentication may require the authenticating user to possess and utilize something, such as a contactless smart card.


In examples, the second factor authentication may involve the user tapping a contactless card to the user apparatus such that near field communication (NFC) is established between the apparatus and the contactless card. The user apparatus may receive encrypted authentication information from the contactless card via an NFC reader, send the authentication information to one or more remote authentication servers, and receive from the authentication servers an indication that the user is verified and authenticated.


At time of successful authentication, one or more device settings of the user apparatus and/or one or more user behavioral biometrics associated with the use of or interaction with the user apparatus may be determined. This may be referred to or described herein as taking a “snapshot” of a “constellation” of the various device settings and user behavioral biometrics. As will be further described below, the snapshot may be used as a reference point for determining how much the device settings and/or user behavioral biometrics have drifted, deviated, or changed at the time of the authentication persistence check. The allotted degree of drift, deviation, or change may be referred to herein as the predetermined drift threshold.


When the authentication persistence check is triggered, a stability check may be performed on the user apparatus. For example, the stability check may be a mobile network operator (MNO) verification, which may involve verifying or checking with the appropriate MNO(s) that the user apparatus has not substantially changed (e.g., has not changed SIM cards, has not changed phone numbers, has not changed owners, etc.) so as to at least confirm that the user apparatus still belongs to and is associated with the user.


In response to the user apparatus having passed the stability check or otherwise being stable, a device fingerprinting of the user apparatus may be performed. Device fingerprinting may be process in which a current constellation of the device settings and/or user behavioral biometrics corresponding to the user apparatus is determined. In at least that regard, device fingerprinting may be similar to the process of taking the snapshot at the time of successful authentication, as described above.


According to further embodiments, it may be determined whether the current constellation of the device settings and/or user behavioral biometrics provided by the device fingerprinting is within the predetermined drift threshold. If within the drift threshold, the authentication may be allowed to persist. If outside the drift threshold, the user may be required to reauthenticate, and in some examples, reauthenticate via both the first and second factor authentications.


In previous solutions, each instance of authentication required the user to manually perform authentication-related acts to complete the authentication process, which would cause user annoyance and friction between the user and platform. The embodiments and examples described herein are advantageous over conventional solutions in various ways. For example, authentication may be allowed to automatically persist based on a positive authentication persistence check in a highly secure manner, which makes the authentication process convenient for the user and improves overall quality of user experience.


Reference is now made to the drawings, where like reference numerals are used to refer to like elements throughout. In the following description, for the purpose of explanation, numerous specific details are set forth in order to provide a thorough understanding thereof. It may be evident, however, that the novel embodiments can be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form to facilitate a description thereof. The intention is to cover all modification, equivalents, and alternatives within the scope of the claims.



FIG. 1A illustrates an example data transmission system according to one or more embodiments. As further discussed below, system 100 may include contactless card 105, client device 110, network 115, and server 120. Although FIG. 1A illustrates single instances of the components, system 100 may include any number of components.


System 100 may include one or more contactless cards 105, which are further explained below with reference to FIG. 3A and FIG. 3B. In some embodiments, contactless card 105 may be in wireless communication, utilizing NFC in an example, with client device 110.


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 smartphone, 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 computing device, for example, an iPhone, iPod, iPad from Apple® or any other suitable 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 suitable mobile computing device, such as a smartphone, a 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, anti-collision algorithms, controllers, command decoders, security primitives and tamper-proofing 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 touchscreen, keyboard, mouse, cursor-control device, touchscreen, 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 802.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 include 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.



FIG. 1B illustrates an example sequence diagram for providing authenticated access according to one or more embodiments. The diagram may include contactless card 105 and client device 110, which may include an application 122 and processor 124. FIG. 1B may reference similar components as illustrated in FIG. 1A.


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 FIG. 1A). For example, processor 124 may output the MAC cryptogram for transmission to server 120, which may verify the MAC cryptogram.


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.


It may be understood that in some examples, the contactless card 105 may initiate communication after the contactless card is brought near the client device 110. By way of example, the contactless card 105 may send the client device 110 a message, for instance, indicating that the contactless card has established communication. Thereafter, the application 122 of client device 110 may proceed to communicate with the contactless card at step 102, as described above.



FIG. 2 illustrates an example system 200 using a contactless card. System 200 may include a contactless card 205, one or more client devices 210, network 215, servers 220, 225, one or more hardware security modules 230, and a database 235. Although FIG. 2 illustrates single instances of the components, system 200 may include any number of components.


System 200 may include one or more contactless cards 205, which are further explained below with respect to FIG. 3A and FIG. 3B. In some examples, contactless card 205 may be in wireless communication, for example NFC, with client device 210. For example, contactless card 205 may include one or more chips, such as a radio frequency identification chip, configured to communication via NFC or other short-range protocols. In other embodiments, contactless card 205 may communicate with client device 210 through other means including, but not limited to, Bluetooth, satellite, Wi-Fi, wired communications, and/or any combination of wireless and wired connections. According to some embodiments, contactless card 205 may be configured to communicate with card reader 213 (which may otherwise be referred to herein as NFC reader, NFC card reader, or reader) of client device 210 through NFC when contactless card 205 is within range of card reader 213. In other examples, communications with contactless card 205 may be accomplished through a physical interface, e.g., a universal serial bus interface or a card swipe interface.


System 200 may include client device 210, 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 210 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 210 may be the same as, or similar to, a client device 110 as described with reference to FIG. 1A or FIG. 1B.


Client device 210 may be in communication with one or more servers 220 and 225 via one or more networks 215. Client device 210 may transmit, for example from an application 211 executing on client device 210, one or more requests to one or more servers 220 and 225. The one or more requests may be associated with retrieving data from one or more servers 220 and 225. Servers 220 and 225 may receive the one or more requests from client device 210. Based on the one or more requests from client device 210, one or more servers 220 and 225 may be configured to retrieve the requested data from one or more databases 235. Based on receipt of the requested data from the one or more databases 235, one or more servers 220 and 225 may be configured to transmit the received data to client device 210, the received data being responsive to one or more requests.


System 200 may include one or more hardware security modules (HSM) 230. For example, one or more HSMs 230 may be configured to perform one or more cryptographic operations as disclosed herein. In some examples, one or more HSMs 230 may be configured as special purpose security devices that are configured to perform the one or more cryptographic operations. The HSMs 230 may be configured such that keys are never revealed outside the HSM 230, and instead are maintained within the HSM 230. For example, one or more HSMs 230 may be configured to perform at least one of key derivations, decryption, and MAC operations. The one or more HSMs 230 may be contained within, or may be in data communication with, servers 220 and 225.


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 client device 210 to servers 220 and/or 225. For example, network 215 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 205 and client device 210 may include NFC-based communication, cellular network between client device 210 and a carrier, and Internet between the carrier and a backend.


In addition, network 215 may include, without limitation, telephone lines, fiber optics, IEEE Ethernet 802.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 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 include 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 210 of system 200 may execute one or more applications 211, and include one or more processors 212, and one or more card readers 213. For example, one or more applications 211, such as software applications, may be configured to enable, for example, network communications with one or more components of system 200 and transmit and/or receive data. It is understood that although only single instances of the components of client device 210 are illustrated in FIG. 2, any number of devices 210 may be used. Card reader 213 may be configured to read from and/or communicate with contactless card 205. In conjunction with the one or more applications 211, card reader 213 may communicate with contactless card 205. In examples, the card reader 213 may include circuitry or circuitry components, e.g., NFC reader coil, that generates a magnetic field to allow communication between the client device 210 and the contactless card 205.


The application 211 of any of client device 210 may communicate with the contactless card 205 using short-range wireless communication (e.g., NFC). The application 211 may be configured to interface with a card reader 213 of client device 210 configured to communicate with a contactless card 205. 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 211 communicates through an associated reader (e.g., card reader 213) with the contactless card 205.


In some embodiments, card activation may occur without user authentication. For example, a contactless card 205 may communicate with the application 211 through the card reader 213 of the client device 210 through NFC. The communication (e.g., a tap of the card proximate the card reader 213 of the client device 210) allows the application 211 to read the data associated with the card and perform an activation. In some cases, the tap may activate or launch application 211 and then initiate one or more actions or communications with an account server 225 to activate the card for subsequent use. In some cases, if the application 211 is not installed on client device 210, a tap of the card against the card reader 213 may initiate a download of the application 211 (e.g., navigation to an application download page). Subsequent to installation, a tap of the card may activate or launch the application 211, 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 205 may include a virtual payment card. In those embodiments, the application 211 may retrieve information associated with the contactless card 205 by accessing a digital wallet implemented on the client device 210, 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 220 may include a web server in communication with database 235. Server 225 may include an account server. In some examples, server 220 may be configured to validate one or more credentials from contactless card 205 and/or client device 210 by comparison with one or more credentials in database 235. Server 225 may be configured to authorize one or more requests, such as payment and transaction, from contactless card 205 and/or client device 210.



FIG. 3A illustrates one or more contactless cards 300, which may include a payment card, such as a credit card, debit card, or gift card, issued by a service provider 305 displayed on the front or back of the card 300. In some examples, the contactless card 300 is not related to a payment card, and may include, without limitation, an identification card. In some examples, the payment card may include a dual interface contactless payment card. The contactless card 300 may include a substrate 310, which may include a single layer, or one or more laminated layers composed of plastics, metals, and other materials. Exemplary substrate materials include polyvinyl chloride, polyvinyl chloride acetate, acrylonitrile butadiene styrene, polycarbonate, polyesters, anodized titanium, palladium, gold, carbon, paper, and biodegradable materials. In some examples, the contactless card 300 may have physical characteristics compliant with the ID-1 format of the ISO/IEC 7810 standard, and the contactless card may otherwise be compliant with the ISO/IEC 14443 standard. However, it is understood that the contactless card 300 according to the present disclosure may have different characteristics, and the present disclosure does not require a contactless card to be implemented in a payment card.


The contactless card 300 may also include identification information 315 displayed on the front and/or back of the card, and a contact pad 320. The contact pad 320 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 300 may also include processing circuitry, antenna and other components not shown in FIG. 3A. These components may be located behind the contact pad 320 or elsewhere on the substrate 310. The contactless card 300 may also include a magnetic strip or tape, which may be located on the back of the card (not shown in FIG. 3A).


As illustrated in FIG. 3B, the contact pad 320 of FIG. 3A may include processing circuitry 325 for storing and processing information, including a microprocessor 330 and a memory 335. It is understood that the processing circuitry 325 may contain additional components, including processors, memories, error and parity/CRC checkers, data encoders, anti-collision algorithms, controllers, command decoders, security primitives and tamper-proofing hardware, as necessary to perform the functions described herein.


The memory 335 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 300 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 335 may be configured to store one or more applets 340, one or more counters 345, one or more diversified keys 347, one or more customer identifiers 350, and other types of suitable data or information. The one or more applets 340 may include 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 340 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 345 may include a numeric counter sufficient to store an integer. As will be further described below, the one or more diversified keys 347 may be used to encrypt various information, such as information about the user or customer (e.g., customer identifier 450) to generate cryptogram(s) that can be sent to, for example, a mobile device for at least authentication purposes. The customer identifier 350 may include a unique alphanumeric identifier assigned to a user of the contactless card 300, and the identifier may distinguish the user of the contactless card from other contactless card users. In some examples, the customer identifier 350 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 320 or entirely separate from it, or as further elements in addition to microprocessor 330 and memory 335 elements located within the contact pad 320.


In some examples, the contactless card 300 may include one or more antennas 355. The one or more antennas 355 may be placed within the contactless card 300 and around the processing circuitry 325 of the contact pad 320. For example, the one or more antennas 355 may be integral with the processing circuitry 325 and the one or more antennas 355 may be used with an external booster coil. As another example, the one or more antennas 355 may be external to the contact pad 320 and the processing circuitry 325.


In an embodiment, the coil of contactless card 300 may act as the secondary of an air core transformer. The terminal may communicate with the contactless card 300 by cutting power or amplitude modulation. The contactless card 300 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 300 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 300 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 includes a cryptographically secure OTP encoded as an NDEF text tag.


In examples, when preparing to send data (e.g., to a mobile device, to a server, etc.), the contactless card 300 may increment a counter value of a counter of the one or more counters 345. The contactless card 300 may then provide a master key, which may be a distinct key stored on the card 300, and the counter value as input to a cryptographic algorithm, which may also be stored on the card 300 and produces a diversified key as output, which may be one of the diversified keys 347. It is understood that the master key and the counter value is also securely stored in memory of a device or component receiving data from the contactless card 300 so as to decrypt the data using the diversified key that was used by the card to encrypt the transmitted data. The cryptographic algorithm may include encryption algorithms, hash-based message authentication code (HMAC) algorithms, cipher-based message authentication code (CMAC) algorithms, and the like. Non-limiting examples of the cryptographic 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. The contactless card 300 may then encrypt the data (e.g., the customer identifier 350 and any other data) using the diversified key in the form of one or more cryptograms that can be sent to a mobile device, for example, as NFC data exchange format (NDEF) messages. The contactless card 300 may then transmit the encrypted data (e.g., cryptograms) to the mobile device, which can then decrypt the cryptograms using the diversified key (e.g., the diversified key generated by the mobile device using the counter value and the master key stored in memory thereof).



FIG. 4 illustrates an example timing diagram 400 according to one or more embodiments. The timing diagram 400 shows at least the various timing-related features associated with an authentication persistence check and the communication between a user apparatus (e.g., user mobile computing device such as a smartphone, laptop, etc.) and one or more remote backend computing devices (e.g., servers). In examples, the authentication persistence check may be for the second factor authentication, which may otherwise be referred to as a second factor authentication persistence check.


As shown, at time 402 a first factor authentication may be required and performed. As will be further described in detail below, the first factor authentication may involve user ID-password authentication. For example, a user may enter a user ID and password, which may be provided to the backend servers to verify that the entered user ID and password are correct.


At time 404, after successful first factor authentication, a second factor authentication may be required and performed. The second factor authentication may be different type of authentication than the first factor authentication. For example, the second factor authentication may involve the user tapping a contactless card to the user apparatus, which may otherwise be known as one-tap or single tap authentication. The user apparatus, via NFC, receives encrypted user authentication information from the contactless card, e.g., one or more cryptograms containing a user identifier, authentication identifier, etc. The user apparatus may send the cryptogram(s) to remote computing devices, which may be the backed servers, where those servers decrypt the cryptograms to verify whether the user identifier contained therein corresponds to or matches the user. The remote computing devices may then send back an indication to the user apparatus that the user has been successfully authenticated.


At the time of successful second factor authentication (time 406) or near that time, a snapshot of the one or more device settings (e.g., number of apps installed on the phone, types of apps, of the user apparatus and information on one or more user behavioral biometrics (e.g., unique behaviors or patterns related to the use of or interactions with the user apparatus by the user) may be captured. The captured result may be considered a constellation of the device settings and the user behavioral biometrics. The snapshot may be sent or shared with the one or more backend servers for later comparisons to device fingerprints during future persistence checks. While FIG. 4 shows snapshot occurring after the second factor authentication of time 404, it may be understood that the snapshot may occur at the same time or near the same time as second factor authentication. The snapshot may be provided to the one or more remote backend computing devices at time 408.


Thereafter, the second factor authentication persistence check may be performed. The check may be triggered by one of at least: a passage of a specific amount of time or a specific second factor authentication event. The specific amount of time may be predetermined or preset, e.g., a maximum of time that can pass before the user is required to perform the second factor authentication again. The second factor authentication event may be any action or event, either caused or triggered by the user, that requires the second factor authentication, such as high-risk transactions.


At time 410, a stability check or verification on the user apparatus may be performed. The user apparatus may request and cause the one or more backend remote computing devices to conduct the stability check by communicating with one or more mobile operator servers associated with a mobile operator network (MNO), e.g., via application programming interface (API) calls. In other instances, the one or more remote backend servers automatically initiate or may be automatically caused to perform the stability check in response to the second factor authentication persistence check, an indication of which may be provided to the remote backend servers by the user apparatus. One example of the stability check is an MNO stability check, which involves the backend computing devices to request and receive indication from the mobile operator servers that the user apparatus has not substantially changed, e.g., the SIM card of the user apparatus remains the same, the telephone number associated with the user apparatus remains the same, etc.


At time 412, in response to a determination that the user apparatus is stable, the one or more backed computing devices may request that the user apparatus perform device fingerprinting. Alternatively, at time 412, in response to a determination that the user apparatus is unstable, the one or more backend servers may return a negative result for the persistence check and require that the user to reauthenticate via the second factor authentication (not shown).


At time 414, the user apparatus may perform device fingerprinting. As will be further described below, device fingerprinting may be a process in which a current constellation of the device settings of the user apparatus and the one or more user behavioral biometrics associated with the use or interaction with the user apparatus is determined. The current constellation may be provided to the one or more backend computing devices at time 416.


At time 418, the backend computing devices may perform a drift analysis. For example, the drift analysis may involve at least determining whether the current constellation of the user apparatus that was provided at time 416 is within a predetermined drift threshold relative to the snapshot taken at time 406. As will be further described in detail below, the drift threshold is a maximum amount of deviation or drift between the current constellation and the snapshot that can be allowed. If the current constellation is within the predetermined drift threshold, the backend computing devices may provide indication at time 420 to the user apparatus that the second factor authentication may be allowed to persist. If the current constellation is outside the drift threshold, the backend computing devices may return a negative persistence check result and the user would be required to reauthenticate via the second factor authentication.



FIG. 5 illustrates example first factor and second factor authentications according to one or more embodiments. As shown, an example of the first factor authentication 501 may involve a user inputting a user ID and password. As further shown, an example of the second factor authentication 511 may involve a user placing or tapping a contactless card to the user apparatus, which may be referred to as single tap or one-tap contactless card authentication.


In examples, a user may be required to authenticate via the first factor authentication to login to a transaction app. The user may open transaction app interface 502, which displays a welcome screen 504 and login icon 506. When the login icon 506 is selected, fields for the user ID and password are presented to the user for user ID and password entry. The interface may also display an icon 508 for logging in to the transaction app via biometric authentication, such as user fingerprint authentication.


When the login ID and password are entered by the user, the user apparatus may send the login information to one or more remote computing devices (e.g., backend authentication servers) that are at least configured to determine and verify that the login ID and password combination is valid and associated with the user. If valid, the user may gain access to the transaction app 502. It may be understood that the first factor authentication may be any type of authentication, such as biometric, passcode, PIN, etc., and not limited to just user ID and password authentication.


Once the user has logged in to the transaction app 502, the user may want to perform a specific transaction, e.g., transfer money to an account. The sum of money being transferred may be large enough to trigger a high-risk indication or warning by the transaction app 502. As described above, this high-risk indication or warning may be considered the authentication event (specifically, in this example, may be considered the second factor authentication event since high-risk fund transfers may require second factor authentication).


As shown, for example, the user may select the fund transfer icon 512 to initiate and perform the transfer. Thereafter, a graphic 514 may display that the user is required to perform single tap or one-tap authentication. The transaction app 502 may display a dashed box 516 indicating where the user should place or tap the user's contactless card 520 to the user apparatus. When the contactless card 520 is brought near the user apparatus to a requisite communication distance, NFC may be established and the NFC reader of the user apparatus may read or receive at least one or more cryptograms from the card 520. The cryptograms may contain various types of encrypted information, such as user authentication information, which may be any indicator or identifier (e.g., unique alphanumeric identifier, code, personally identifiable information, etc.) or the unique customer identifier described above with respect to FIG. 3B that identifies the authorized user of the card.


In embodiments, the user apparatus may receive and send the one or more cryptograms to the one or more remote computing devices, such as backend authentication servers. On the backend server side, the server computers may decrypt the cryptogram(s) and determine whether the user authentication information contained therein actually corresponds to the user. One example of this matching process may involve the backend servers correlating the information of user that has logged into the transaction app to the user authentication information contained in the cryptograms. Thereafter, the backend server computers may send the user apparatus indication of successful authentication. In other instances, it may be understood that one or more cryptograms from the contactless card may be decrypted on the user apparatus side to determine whether the user is an authorized user of the contactless card.



FIG. 6 illustrates an example snapshot 600 of the device settings and user behavioral biometrics at time of second factor authentication according to one or more embodiments. At the time of successful second factor authentication or near such time, a snapshot of a constellation of the device settings of the user apparatus and the user behavioral biometrics. It may be understood that the snapshot 600 may include only the device settings, only the user behavioral biometrics or biometric data, or both the device settings and the behavioral biometrics.


In examples, the one or more device settings may include: (i) one or more applications installed on the apparatus, (ii) one or more wireless devices connected to the apparatus via wireless connection, (iii) a list of saved wireless devices connectable to the apparatus, (iv) a network that the apparatus is connected to, (v) a list of saved networks the apparatus is connectable to, (vi) version of an operating system on the apparatus, (vii) one or more setting preferences, etc.


As shown, sub-constellation 602 indicates that, at the time of successful second factor authentication, the device settings were that there were eight apps installed, three of which were social media apps, three were entertainment apps, one was a food app, and one was a map app. Moreover, there were two wireless devices connected to the user apparatus (e.g., wireless earbuds, smartwatch) and that there were five different types of devices saved to the wireless device connection list. The user apparatus was not connected to Wi-Fi at the time of snapshot, but there were four different types of wireless networks saved to the Wi-Fi network list. Further, the version of the operating system was 2.0 and the display setting was set such that hibernation mode kicks in after three minutes and the notification setting was set at vibration.


In further examples, the one or more user behavioral biometrics or data may be received via one or more sensors (e.g., gyroscope, accelerometer, camera, microphone, etc.) or one or more interfaces of the user apparatus and may be analyzed by the user apparatus. The one or more user behavioral biometrics or biometric data may include: (i) how the user physically holds the apparatus, (ii) how the user swipes or interacts with a display interface, (iii) how the user uses keyboard or gestural shortcuts, (iv) how the user types words, (v) a duration of time for the user to type words, (vi) how the user transitions between two or more icons, (vii) typing speed of user, (viii) typing cadence of user, etc.


As illustrated, sub-constellation 604 indicates that, at the time of successful second factor authentication, various aspects the user's unique behavior or interaction with the user apparatus are that the user rarely holds the user apparatus horizontally, always swipes left to right, has no gestural shortcuts, types approximately 55 words per minute on the user apparatus, the user presses the home button to transition between apps and rarely uses the app tabs to transition, and selects app 606 before app 608 a majority of the time.


It may be understood that user behavioral biometrics broadly refers to identifying an individual based on the unique way(s) the individual interacts or uses with a computing device, such as measuring how the user holds the device, how the individual swipes the screen, which keyboard or gestural shortcuts are used, and building a unique behavioral profile of the individual, etc. The user behavioral biometrics are based on human behavioral patterns consisting of a variety of distinctive actions or behaviors (or semi-behaviors) that make up the individual and may reflect that individual's observable habits and micro-habits.



FIG. 7 illustrates an example stability check 700 of a user apparatus according to one or more embodiments. As described above, the stability check of the user apparatus may be performed to at least confirm that the user associated with the user apparatus has not changed. In examples, the stability check may be a mobile network operator (MNO) verification.


In embodiments, the user apparatus 702 may cause the MNO verification to be initiated. The MNO verification may be initiated or triggered (may otherwise be referred to as a “MNO verification trigger”), for example, when the first instance of the second factor authentication has been performed and (i) when an authentication event occurs or is requested (e.g., high-risk transaction, high amount transfer in the transaction app) or (ii) if a specific amount of time has passed after the first instance of the second factor authentication, e.g., which can be based on or adjusted in accordance with various backend security procedures or protocols.


As shown, the user apparatus 702 may communicate or provide information to the one or more backend servers 704 via network 705 that MNO verification is to be performed based on the above described MNO verification trigger. The backend servers 704 may then establish communication and communicate with one or more MNO computing devices 706, e.g., MNO servers, which may be wirelessly communicating with one or more cell towers 708 or any type of wireless communication devices (e.g., base stations). Because the user apparatus 702 may also be connected to and wireless communicating with the one or more cell towers 708, the MNO computing devices 706 may receive various types of mobile-network-based information about the user apparatus 702 via the cell towers 708, such as what (e.g., model number, identifier) subscriber identity (or identification) module (SIM) card of the user apparatus 702 is being used to communicate with the cell towers 708, whether the SIM card has been changed or replaced, phone number(s) or any other user information associated with the SIM card, whether the phone number(s) or the other user information has changed, etc.


The one or more MNO computing devices 706 may provide these types of information back to the backend servers 704, which may determine based on this information, whether the user apparatus 702 is “stable” and remains unchanged in terms of the MNO-based characteristics. If the SIM card has been changed or replaced, or if the phone number has changed, etc., it is presumed that the user apparatus 702 has changed users, and thus, the backend servers 704 may determine that the user apparatus 702 is unstable. The result of the stability check is then sent to the user apparatus 702 so that the user apparatus can perform device fingerprinting.


It may be understood that the MNO computing devices 706 and cell towers 708 are components external to the system in which the backend servers 704 reside and may be owned or operated by a third-party mobile network operator. A mobile network operator may be understood to be a wireless service provider, carrier, cellular company, mobile network carrier, etc. that provides wireless communications services and may own or control all elements necessary to sell and deliver services to end users including radio spectrum allocation, wireless network infrastructure, back haul infrastructure, etc.



FIG. 8 illustrates an example device fingerprinting according to one or more embodiments. As described above, a user apparatus may receive a request or an indication from one or more backend servers to conduct device fingerprinting. Device fingerprinting involves the user apparatus capturing the current constellation 800 of the device settings of the user apparatus and the user behavior biometrics. It may be understood that device fingerprinting and capturing the current constellation 800 may be similar to the process of taking the snapshot 600 described above with respect to FIG. 6.


As shown, sub-constellation 802 indicates that, at the time of device fingerprinting, the device settings were that there were ten apps installed, three of which were social media apps, three were entertainment apps, one was a food app, one was a map app, one was a TV app, and one was a photo app. Moreover, there was one wireless device connected to the user apparatus (e.g., smartwatch) and that there were six different types of devices saved to the wireless device connection list. The user apparatus was not connected to Wi-Fi at the time of device fingerprinting, but there were five different types of wireless networks saved to the Wi-Fi network list. Further, the version of the operating system was 2.0 and the display setting was set such that hibernation mode kicks in after three minutes and the notification setting was set at silent.


As further shown, sub-constellation 804 indicates that, at the time of device fingerprinting, various aspects the user's unique behavior or interaction with the user apparatus are that the user rarely holds the user apparatus horizontally, always swipes left to right, has no gestural shortcuts, types approximately 50 words per minute on the user apparatus, the user presses the home button to transition between apps and rarely uses the app tabs to transition, selects app 606 before app 608 a majority of the time and similarly selects app 806 before app 808. As described above, the captured constellation 800 of the device fingerprinting may be provided to the one or more backend servers for drift analysis.



FIG. 9 illustrates an example drift analysis 900 according to one or more embodiments. For example, the drift analysis 900 may involve at least (i) comparing the captured result of the current constellation 800 at the time of device fingerprinting and the snapshot 600 taken at the time of the successful second factor authentication and (ii) determining whether the differences between the current constellation 800 and the snapshot 600 are within predetermined drift threshold(s). The predetermined drift threshold limit may be a threshold deviation limit of the one or more device settings and/or the one or more user behavioral biometrics from the time of the second factor authentication to the time the device fingerprinting, e.g., a limit on how much of the device settings and/or user behavioral biometrics can change or deviate within that time span.


According to embodiments, examples of the types of deviations analyzed may include change(s) in the number of apps, change in the types of apps, change in the number of wireless devices connected to the user apparatus, change in the types of wireless devices connected to the user apparatus, change in which network the user apparatus is connected to, change in the saved list of networks that the apparatus can connect to, change in the version of the operating system, change in display settings, change in notification settings, etc.


For example, the predetermined drift threshold may set such that the difference in the number of changed apps cannot exceed three, the difference in the number of changed connected devices cannot exceed three, the difference in the number of changed wireless networks that the user apparatus can connect to cannot exceed three, the version of the operating system cannot change. Other factors may also be analyzed, such as, if the types of the apps that have been added, removed, modified or if the changed display, notification, or other settings are completely or vastly different from snapshot 600 to the current constellation 800, then such differences may exceed and violate the predetermined drift threshold. A similar type of analysis may be applied to the differences in the user behavioral biometrics. For instance, if the types of behavior remain similar or substantially the same, then the changes would fall within the predetermined drift threshold. It may be understood that a machine learning model or neural network may be used to perform the drift analysis, where the machine learning model or neural network may be trained using training data or datasets that contain examples of various drift violations or examples of acceptable drift, etc.


As illustrated, the device setting changes between the snapshot 600 and current constellation 800 are shown in underline in current constellation 800, e.g., the number of apps increased from eight to ten (difference of two), the number of wireless devices connected to the user apparatus decreased from two to one (difference of one), the number of wireless devices saved to the wireless device list increased from five to six (difference of one), the number of saved Wi-Fi networks increased from four to five (difference of one), and the notification setting changed from vibration to silent.


Moreover, the user behavioral changes between snapshot 600 and current constellation 800 are shown in underline, e.g., typing speed decreased from 55 words per minute to 50 words per minute, and that the user selects app 806 before selecting app 808, which is a new behavior metric. The drift analysis 900 may reveal that all device setting changes are within the above-defined drift thresholds. Importantly, the version of the operating system remained the same. The analysis may further reveal that all user behavior changes remain substantially unchanged and that the addition of the new behavior is similar or in line with the behavior previously observed.


Accordingly, based on the drift analysis 900, it may be determined that the changes between the snapshot 600 and the current constellation 800 are within the predetermined drift threshold. Thus, the second factor authentication described above (e.g., the single tap or one-tap authentication) may be allowed to persist for a predetermined duration of time until a subsequent authentication persistence check.


It may be understood that deviations in user behavior may be given more weight than deviations in device settings when determining drift violations. For example, if the user always swipes from the left to right direction (e.g., 99 percent of the time), but now more often swipes right to left, that may indicate that the user may not be the originally authenticated user. In other situations, changes in device settings may be given more weight, e.g., if the apps completely change in type (apps that are majority non-social media change to mostly social media apps). It may further be understood that the predetermined drift threshold may be dependent on at least the risk level of the user action, e.g., higher risk level may warrant more stringent or tighter thresholds, lower risk level may warrant lax or loose thresholds.



FIG. 10 illustrates an example flow diagram 1000 according to one or more embodiments. The flow diagram 1000 is related to at least performing an authentication persistence check and, based on the check, either allowing or disallowing a previously successful authentication to persist. It may be understood that the blocks of the flow diagram 1000 and the features described therein are not required to be performed in any particular order. Moreover, it may be understood that the flow diagram 1000 and the features described therein may be executed by one or more processors or any suitable computing device or computing architecture described herein.


At block 1002, first and second factor authentications may be performed. The first factor authentication may be based on something the user knows, e.g., ID and password input. The second factor authentication may be triggered by a second factor authentication event, such as the transfer of a large amount of money. The second factor authentication may be the single or one tap of the user's contactless smart card, as described above.


At block 1004, a snapshot of the constellation of the device settings of the user apparatus and/or one or more user behavioral biometrics may be taken at the time of successful second factor authentication (or first factor authentication depending on which authentication will persist) at block 1002. The snapshot may be provided to one or more remote backend computing devices (e.g., backend servers associated with a transaction app platform), which may be later used by the backend computing devices as a reference point for determining how much the device settings and behavioral metrics have changed.


At block 1006, a stability check on the user apparatus may be caused to be performed. The check may be caused by the apparatus or may be automatically initiated by the backend computing devices. The stability check may be triggered: when a specific period of time has passed since the first instance of successful authentication or based on the occurrence of an authentication event (e.g., requesting to transfer a large amount of funds via the transaction app). The stability check may be an MNO verification, which involves an MNO providing verification that the user apparatus has not significantly changed, e.g., SIM card has not changed. The result of the MNO verification may be provided to the one or more backend computing devices.


At block 1008, in response to a successful stability check, the backend computing devices may request the user apparatus to perform device fingerprinting. As described above, device fingerprinting may be similar to the snapshot taken at block 1004, except it is done at the time of the device fingerprinting. The result of the device fingerprinting is a current constellation of the device settings of the user apparatus and/or the one or more user behavioral biometrics. The current constellation may be provided to the backend computing devices for drift analysis, as described in detail above.


At block 1010, the user apparatus may receive the result of the drift analysis from the backend computing devices, which indicates that the authentication (e.g., second factor authentication) can or cannot persist. If it can persist, the user is not required to perform the single tap or one tap authentication again and the transfer of the funds can proceed. If it cannot persist, the user is asked to reauthenticate via the single tap or one tape authentication.


The components and features of the devices described above may be implemented using any combination of discrete circuitry, application specific integrated circuits (ASICs), logic gates and/or single chip architectures. Further, the features of the devices may be implemented using microcontrollers, programmable logic arrays and/or microprocessors or any combination of the foregoing where suitably appropriate. It is noted that hardware, firmware and/or software elements may be collectively or individually referred to herein as “logic” or “circuit.”


At least one computer-readable storage medium may include instructions that, when executed, cause a system to perform any of the computer-implemented methods described herein.


Some embodiments may be described using the expression “one embodiment” or “an embodiment” along with their derivatives. These terms mean that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment. Moreover, unless otherwise noted the features described above are recognized to be usable together in any combination. Thus, any features discussed separately may be employed in combination with each other unless it is noted that the features are incompatible with each other.


With general reference to notations and nomenclature used herein, the detailed descriptions herein may be presented in terms of program procedures executed on a computer or network of computers. These procedural descriptions and representations are used by those skilled in the art to most effectively convey the substance of their work to others skilled in the art.


A procedure is here, and generally, conceived to be a self-consistent sequence of operations leading to a desired result. These operations are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical, magnetic or optical signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It proves convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like. It should be noted, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to those quantities.


Further, the manipulations performed are often referred to in terms, such as adding or comparing, which are commonly associated with mental operations performed by a human operator. No such capability of a human operator is necessary, or desirable in most cases, in any of the operations described herein, which form part of one or more embodiments. Rather, the operations are machine operations.


Some embodiments may be described using the expression “coupled” and “connected” along with their derivatives. These terms are not necessarily intended as synonyms for each other. For example, some embodiments may be described using the terms “connected” and/or “coupled” to indicate that two or more elements are in direct physical or electrical contact with each other. The term “coupled,” however, may also mean that two or more elements are not in direct contact with each other, but yet still co-operate or interact with each other.


Various embodiments also relate to apparatus or systems for performing these operations. This apparatus may be specially constructed for the required purpose and may be selectively activated or reconfigured by a computer program stored in the computer. The procedures presented herein are not inherently related to a particular computer or other apparatus. The required structure for a variety of these machines will appear from the description given.


It is emphasized that the Abstract of the Disclosure is provided to allow a reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus, the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment. In the appended claims, the terms “including” and “in which” are used as the plain-English equivalents of the respective terms “comprising” and “wherein,” respectively. Moreover, the terms “first,” “second,” “third,” and so forth, are used merely as labels, and are not intended to impose numerical requirements on their objects.


What has been described above includes examples of the disclosed architecture. It is, of course, not possible to describe every conceivable combination of components and/or methodologies, but one of ordinary skill in the art may recognize that many further combinations and permutations are possible. Accordingly, the novel architecture is intended to embrace all such alterations, modifications and variations that fall within the spirit and scope of the appended claims.

Claims
  • 1. An apparatus comprising: a near-field communication (NFC) reader;one or more processors operable to execute stored instructions that, when executed, cause the one or more processors to:authenticate a user via first factor authentication;authenticate the user via second factor authentication different from the first factor authentication, wherein the second factor authentication comprises: a contactless card being tapped to the apparatus such that NFC communication is established, receiving user authentication information from the contactless card via the NFC reader, sending the user authentication information to one or more remote computing devices, and receiving indication from the one or more remote computing devices that the user is authenticated;determine one or more device settings of the apparatus and one or more user behavioral biometrics at a first time of the second factor authentication;cause a stability check on the apparatus to be performed: (i) at a second time after the first time or (ii) when a authentication event occurs after the first time;in response to the apparatus being stable, perform device fingerprinting on the apparatus to determine whether the apparatus is within a predetermined drift threshold;in response to the apparatus being within the predetermined drift threshold, allow the second factor authentication to persist for a predetermined time period; andin response to the apparatus not being within the predetermined drift threshold, reauthenticate the user via the second factor authentication.
  • 2. The apparatus of claim 1, wherein the one or more device settings includes: (i) one or more applications installed on the apparatus, (ii) one or more wireless devices connected to the apparatus via wireless connection, (iii) a list of saved wireless devices connectable to the apparatus, (iv) a network that the apparatus is connected to, (v) a list of saved networks the apparatus is connectable to, (vi) version of an operating system on the apparatus, and/or (vii) one or more setting preferences.
  • 3. The apparatus of claim 1, wherein the determination of the one or more user behavioral biometrics comprises the one or more processors to: receive, via one or more sensors or one or more interfaces, user behavioral data, anddetermine based on the user behavioral data: (i) how the user physically holds the apparatus, (ii) how the user swipes or interacts with a display interface, (iii) how the user uses keyboard or gestural shortcuts, (iv) how the user types words, (v) a duration of time for the user to type words, (vi) how the user transitions between two or more icons, (vii) typing speed of user, and/or (viii) typing cadence of user.
  • 4. The apparatus of claim 1, wherein the stability check on the apparatus comprises a mobile network operator (MNO) verification.
  • 5. The apparatus of claim 1, wherein the one or more device settings of the apparatus and the one or more user behavioral biometrics associated with the apparatus are unique to the user at the first time of the second factor authentication, wherein the device fingerprinting captures a current constellation of the one or more device settings of the apparatus and the one or more user behavioral biometrics associated with the apparatus at a third time of the device fingerprinting, andwherein the predetermined drift threshold is a threshold deviation limit of the one or more device settings and the one or more user behavioral biometrics from the first time of the second factor authentication to the third time of the device fingerprinting.
  • 6. The apparatus of claim 1, wherein the one or more processors are further caused to, in response to the apparatus not being stable, reauthenticate the user via both the first and second factor authentications.
  • 7. The apparatus of claim 1, wherein the one or more processors are further caused to: determine a risk level of a user action to be processed or performed; andprocess or perform the user action, andwherein the predetermined drift threshold is at least dependent on the risk level of the user action.
  • 8. A method comprising: authenticating, via one or more processors, a user based on first factor authentication;authenticating, via the one or more processors, the user based on second factor authentication different from the first factor authentication, wherein the second factor authentication comprises: a contactless card being tapped to an apparatus such that near field communication (NFC) is established, receiving user authentication information from the contactless card via an NFC reader, sending the user authentication information to one or more remote computing devices, and receiving indication from the one or more remote computing devices that the user is authenticated;determining, via the one or more processors, one or more device settings of the apparatus and one or more user behavioral biometrics at a first time of the second factor authentication;causing, via the one or more processors, a stability check on the apparatus to be performed: (i) at a second time after the first time or (ii) when a authentication event occurs after the first time;performing, via the one or more processors, device fingerprinting on the apparatus to determine whether the apparatus is within a predetermined drift threshold in response to the apparatus being stable;allowing, via the one or more processors, the second factor authentication to persist for a predetermined time period in response to the apparatus being within the predetermined drift threshold; andreauthenticating, via the one or more processors, the user based on the second factor authentication in response to the apparatus not being within the predetermined drift threshold.
  • 9. The method of claim 8, wherein the one or more device settings includes: (i) one or more applications installed on the apparatus, (ii) one or more wireless devices connected to the apparatus via wireless connection, (iii) a list of saved wireless devices connectable to the apparatus, (iv) a network that the apparatus is connected to, (v) a list of saved networks the apparatus is connectable to, (vi) version of an operating system on the apparatus, and/or (vii) one or more setting preferences.
  • 10. The method of claim 8, wherein the determining of the one or more user behavioral biometrics further comprises: receiving, via one or more sensors or one or more interfaces, user behavioral data, anddetermining, via the one or more processors, based on the user behavioral data: (i) how the user physically holds the apparatus, (ii) how the user swipes or interacts with a display interface, (iii) how the user uses keyboard or gestural shortcuts, (iv) how the user types words, (v) a duration of time for the user to type words, (vi) how the user transitions between two or more icons, (vii) typing speed of user, and/or (viii) typing cadence of user.
  • 11. The method of claim 8, wherein the stability check on the apparatus comprises a mobile network operator (MNO) verification.
  • 12. The method of claim 8, wherein the one or more device settings of the apparatus and the one or more user behavioral biometrics associated with the apparatus are unique to the user at the first time of the second factor authentication, wherein the device fingerprinting captures a current constellation of the one or more device settings of the apparatus and the one or more user behavioral biometrics associated with the apparatus at a third time of the device fingerprinting, andwherein the predetermined drift threshold is a threshold deviation limit of the one or more device settings and the one or more user behavioral biometrics from the first time of the second factor authentication to the third time of the device fingerprinting.
  • 13. The method of claim 8, further comprising reauthenticating, via the one or more processors, the user based on both the first and second factor authentications in response to the apparatus not being stable.
  • 14. The method of claim 8, further comprising: determining, via the one or more processors, a risk level of a user action to be processed or performed; andprocessing or performing, via the one or more processors, the user action, andwherein the predetermined drift threshold is at least dependent on the risk level of the user action.
  • 15. At least one non-transitory computer-readable storage medium storing computer-readable program code executable by at least one processor to: authenticate a user via first factor authentication;authenticate the user via second factor authentication different from the first factor authentication, wherein the second factor authentication comprises: a contactless card being tapped to an apparatus such that near field communication (NFC) is established, receiving user authentication information from the contactless card via an NFC reader, sending the user authentication information to one or more remote computing devices, and receiving indication from the one or more remote computing devices that the user is authenticated;determine one or more device settings of the apparatus and one or more user behavioral biometrics at a first time of the second factor authentication;cause a stability check on the apparatus to be performed: (i) at a second time after the first time or (ii) when a authentication event occurs after the first time;in response to the apparatus being stable, perform device fingerprinting on the apparatus to determine whether the apparatus is within a predetermined drift threshold;in response to the apparatus being within the predetermined drift threshold, allow the second factor authentication to persist for a predetermined time period; andin response to the apparatus not being within the predetermined drift threshold, reauthenticate the user via the second factor authentication.
  • 16. The at least one non-transitory computer-readable storage medium of claim 15, wherein the one or more device settings includes: (i) one or more applications installed on the apparatus, (ii) one or more wireless devices connected to the apparatus via wireless connection, (iii) a list of saved wireless devices connectable to the apparatus, (iv) a network that the apparatus is connected to, (v) a list of saved networks the apparatus is connectable to, (vi) version of an operating system on the apparatus, and/or (vii) one or more setting preferences.
  • 17. The at least one non-transitory computer-readable storage medium of claim 15, wherein the determination of the one or more user behavioral biometrics comprises the computer-readable program code to cause the one or more processors to: receive, via one or more sensors or one or more interfaces, user behavioral data, anddetermine based on the user behavioral data: (i) how the user physically holds the apparatus, (ii) how the user swipes or interacts with a display interface, (iii) how the user uses keyboard or gestural shortcuts, (iv) how the user types words, (v) a duration of time for the user to type words, (vi) how the user transitions between two or more icons, (vii) typing speed of user, and/or (viii) typing cadence of user.
  • 18. The at least one non-transitory computer-readable storage medium of claim 15, wherein the stability check on the apparatus comprises a mobile network operator (MNO) verification.
  • 19. The at least one non-transitory computer-readable storage medium of claim 15, wherein the one or more device settings of the apparatus and the one or more user behavioral biometrics associated with the apparatus are unique to the user at the first time of the second factor authentication, wherein the device fingerprinting captures a current constellation of the one or more device settings of the apparatus and the one or more user behavioral biometrics associated with the apparatus at a third time of the device fingerprinting, andwherein the predetermined drift threshold is a threshold deviation limit of the one or more device settings and the one or more user behavioral biometrics from the first time of the second factor authentication to the third time of the device fingerprinting.
  • 20. The at least one non-transitory computer-readable storage medium of claim 15, wherein the computer-readable program code causes the one or more processors to, in response to the apparatus not being stable, reauthenticate the user via both the first and second factor authentications.
US Referenced Citations (557)
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
5763373 Robinson et al. Jun 1998 A
5764789 Pare, Jr. et al. Jun 1998 A
5768373 Lohstroh et al. Jun 1998 A
5778072 Samar Jul 1998 A
5796827 Coppersmith et al. Aug 1998 A
5832090 Raspotnik Nov 1998 A
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
7373515 Owen et al. May 2008 B2
7374099 de Jong May 2008 B2
7375616 Rowse et al. May 2008 B2
7380710 Brown Jun 2008 B2
7424977 Smets et al. Sep 2008 B2
7453439 Kushler et al. Nov 2008 B1
7472829 Brown Jan 2009 B2
7487357 Smith et al. Feb 2009 B2
7568631 Gibbs et al. Aug 2009 B2
7584153 Brown et al. Sep 2009 B2
7597250 Finn Oct 2009 B2
7628322 Holtmanns et al. Dec 2009 B2
7652578 Braun et al. Jan 2010 B2
7689832 Talmor et al. Mar 2010 B2
7703142 Wilson et al. Apr 2010 B1
7748609 Sachdeva et al. Jul 2010 B2
7748617 Gray Jul 2010 B2
7748636 Finn Jul 2010 B2
7762457 Bonalle et al. Jul 2010 B2
7789302 Tame Sep 2010 B2
7793851 Mullen Sep 2010 B2
7796013 Murakami et al. Sep 2010 B2
7801799 Brake, Jr. et al. Sep 2010 B1
7801829 Gray et al. Sep 2010 B2
7805755 Brown et al. Sep 2010 B2
7809643 Phillips et al. Oct 2010 B2
7827115 Weller et al. Nov 2010 B2
7828214 Narendra et al. Nov 2010 B2
7848746 Juels Dec 2010 B2
7882553 Tuliani Feb 2011 B2
7900048 Andersson Mar 2011 B2
7908216 Davis et al. Mar 2011 B1
7922082 Muscato Apr 2011 B2
7933589 Mamdani et al. Apr 2011 B1
7949559 Freiberg May 2011 B2
7954716 Narendra et al. Jun 2011 B2
7954723 Charrat Jun 2011 B2
7962369 Rosenberg Jun 2011 B2
7993197 Kaminkow Aug 2011 B2
8005426 Huomo et al. Aug 2011 B2
8010405 Bortolin et al. Aug 2011 B1
RE42762 Shin et al. Sep 2011 E
8041954 Plesman Oct 2011 B2
8060012 Sklovsky et al. Nov 2011 B2
8074877 Mullen et al. Dec 2011 B2
8082450 Frey et al. Dec 2011 B2
8095113 Kean et al. Jan 2012 B2
8099332 Lemay et al. Jan 2012 B2
8103249 Markison Jan 2012 B2
8108687 Ellis et al. Jan 2012 B2
8127143 Abdallah et al. Feb 2012 B2
8135648 Oram et al. Mar 2012 B2
8140010 Symons et al. Mar 2012 B2
8141136 Lee et al. Mar 2012 B2
8150321 Winter et al. Apr 2012 B2
8150767 Wankmueller Apr 2012 B2
8186602 Itay et al. May 2012 B2
8196131 von Behren et al. Jun 2012 B1
8215563 Levy et al. Jul 2012 B2
8224753 Atef et al. Jul 2012 B2
8232879 Davis Jul 2012 B2
8233841 Griffin et al. Jul 2012 B2
8245292 Buer Aug 2012 B2
8249654 Zhu Aug 2012 B1
8266451 Leydier et al. Sep 2012 B2
8285329 Zhu Oct 2012 B1
8302872 Mullen Nov 2012 B2
8312519 Bailey et al. Nov 2012 B1
8316237 Felsher et al. Nov 2012 B1
8332272 Fisher Dec 2012 B2
8365988 Medina, III et al. Feb 2013 B1
8369960 Tran et al. Feb 2013 B2
8371501 Hopkins Feb 2013 B1
8381307 Cimino Feb 2013 B2
8391719 Alameh et al. Mar 2013 B2
8417231 Sanding et al. Apr 2013 B2
8439271 Smets et al. May 2013 B2
8475367 Yuen et al. Jul 2013 B1
8489112 Roeding et al. Jul 2013 B2
8511542 Pan Aug 2013 B2
8559872 Butler Oct 2013 B2
8566916 Bailey 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
8819803 Richards Aug 2014 B1
8850538 Vernon et al. Sep 2014 B1
8861733 Benteo et al. Oct 2014 B2
8880027 Darringer Nov 2014 B1
8888002 Marshall 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
9237146 Casillas Jan 2016 B1
9251330 Boivie et al. Feb 2016 B2
9251518 Levin et al. Feb 2016 B2
9258715 Borghei Feb 2016 B2
9270337 Zhu et al. Feb 2016 B2
9306626 Hall et al. Apr 2016 B2
9306942 Bailey et al. Apr 2016 B1
9324066 Archer et al. Apr 2016 B2
9324067 Van Os et al. Apr 2016 B2
9332587 Salahshoor May 2016 B2
9338622 Bjontegard May 2016 B2
9373141 Shakkarwar Jun 2016 B1
9379841 Fine et al. Jun 2016 B2
9413430 Royston et al. Aug 2016 B2
9413768 Gregg et al. Aug 2016 B1
9420496 Indurkar Aug 2016 B1
9426132 Alikhani Aug 2016 B1
9432339 Bowness Aug 2016 B1
9455968 Machani et al. Sep 2016 B1
9473509 Arsanjani et al. Oct 2016 B2
9491626 Sharma et al. Nov 2016 B2
9553637 Yang et al. Jan 2017 B2
9619952 Zhao et al. Apr 2017 B1
9635000 Muftic Apr 2017 B1
9665858 Kumar May 2017 B1
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 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
9940571 Herrington Apr 2018 B1
9953323 Candelore 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
11184766 Lord Nov 2021 B1
20010010723 Pinkas Aug 2001 A1
20010029485 Brody et al. Oct 2001 A1
20010034702 Mockett et al. Oct 2001 A1
20010054003 Chien et al. Dec 2001 A1
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
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
20040127256 Goldthwaite et al. Jul 2004 A1
20040215674 Odinak et al. Oct 2004 A1
20040230799 Davis Nov 2004 A1
20050044367 Gasparini et al. Feb 2005 A1
20050075985 Cartmell Apr 2005 A1
20050081038 Arditti Modiano et al. Apr 2005 A1
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
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
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
20090235339 Mennes et al. Sep 2009 A1
20090249077 Gargaro et al. Oct 2009 A1
20090260080 Yami Oct 2009 A1
20090282264 Ameil et al. Nov 2009 A1
20100023449 Skowronek et al. Jan 2010 A1
20100023455 Dispensa et al. Jan 2010 A1
20100029202 Jolivet et al. Feb 2010 A1
20100033310 Narendra et al. Feb 2010 A1
20100036769 Winters et al. Feb 2010 A1
20100078471 Lin et al. Apr 2010 A1
20100082491 Rosenblatt et al. Apr 2010 A1
20100094754 Bertran et al. Apr 2010 A1
20100095130 Bertran 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
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 Varadarajan 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 et al. 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 et al. Jun 2012 A1
20120178366 Levy et al. Jul 2012 A1
20120196583 Kindo Aug 2012 A1
20120207305 Gallo et al. Aug 2012 A1
20120209773 Ranganathan Aug 2012 A1
20120238206 Singh et al. Sep 2012 A1
20120239560 Pourfallah et al. Sep 2012 A1
20120252350 Steinmetz et al. Oct 2012 A1
20120254394 Barras Oct 2012 A1
20120284194 Liu et al. Nov 2012 A1
20120290472 Mullen et al. Nov 2012 A1
20120296818 Nuzzi et al. Nov 2012 A1
20120316992 Oborne Dec 2012 A1
20120317035 Royyuru et al. Dec 2012 A1
20120317628 Yeager Dec 2012 A1
20130005245 Royston Jan 2013 A1
20130008956 Ashfield Jan 2013 A1
20130026229 Jarman et al. Jan 2013 A1
20130048713 Pan Feb 2013 A1
20130054474 Yeager Feb 2013 A1
20130065564 Conner et al. Mar 2013 A1
20130080228 Fisher Mar 2013 A1
20130080229 Fisher Mar 2013 A1
20130099587 Lou et al. 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
20130179351 Wallner Jul 2013 A1
20130185772 Jaudon et al. Jul 2013 A1
20130191279 Calman et al. Jul 2013 A1
20130200999 Spodak et al. Aug 2013 A1
20130216108 Hwang et al. Aug 2013 A1
20130226791 Springer et al. Aug 2013 A1
20130226796 Jiang et al. Aug 2013 A1
20130232082 Krawczewicz et al. Sep 2013 A1
20130238894 Ferg et al. Sep 2013 A1
20130282360 Shimota et al. Oct 2013 A1
20130303085 Boucher et al. Nov 2013 A1
20130304651 Smith Nov 2013 A1
20130312082 Izu et al. Nov 2013 A1
20130314593 Reznik et al. Nov 2013 A1
20130344857 Berionne et al. Dec 2013 A1
20140002238 Taveau et al. Jan 2014 A1
20140019352 Shrivastava Jan 2014 A1
20140027506 Heo et al. Jan 2014 A1
20140032409 Rosano Jan 2014 A1
20140032410 Georgiev et al. Jan 2014 A1
20140040120 Cho et al. Feb 2014 A1
20140040139 Brudnicki et al. Feb 2014 A1
20140040147 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
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
20140229377 Vakklaganti 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
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
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
20150242605 Du Aug 2015 A1
20150302409 Malek et al. Oct 2015 A1
20150317626 Ran et al. Nov 2015 A1
20150332266 Friedlander et al. Nov 2015 A1
20150339474 Paz et al. Nov 2015 A1
20150371234 Huang et al. Dec 2015 A1
20160012465 Sharp Jan 2016 A1
20160026997 Tsui et al. Jan 2016 A1
20160048913 Rausaria et al. Feb 2016 A1
20160055480 Shah Feb 2016 A1
20160057619 Lopez Feb 2016 A1
20160065370 Le Saint et al. Mar 2016 A1
20160087957 Shah et al. Mar 2016 A1
20160092696 Guglani et al. Mar 2016 A1
20160148193 Kelley et al. May 2016 A1
20160232523 Venot et al. Aug 2016 A1
20160239672 Khan et al. Aug 2016 A1
20160253651 Park et al. Sep 2016 A1
20160255072 Liu Sep 2016 A1
20160267486 Mitra et al. Sep 2016 A1
20160277383 Guyomarc'h et al. Sep 2016 A1
20160277388 Lowe et al. Sep 2016 A1
20160307187 Guo et al. Oct 2016 A1
20160307189 Zarakas et al. Oct 2016 A1
20160314472 Ashfield Oct 2016 A1
20160330027 Ebrahimi Nov 2016 A1
20160335531 Mullen et al. Nov 2016 A1
20160379217 Hammad Dec 2016 A1
20170004502 Quentin et al. Jan 2017 A1
20170011395 Pillai et al. Jan 2017 A1
20170011406 Tunnell et al. Jan 2017 A1
20170017957 Radu Jan 2017 A1
20170017964 Janefalkar et al. Jan 2017 A1
20170024716 Jiam et al. Jan 2017 A1
20170039566 Schipperheijn Feb 2017 A1
20170041759 Gantert et al. Feb 2017 A1
20170068950 Kwon Mar 2017 A1
20170103388 Pillai et al. Apr 2017 A1
20170104739 Lansler et al. Apr 2017 A1
20170109509 Baghdasaryan Apr 2017 A1
20170109730 Locke et al. Apr 2017 A1
20170116447 Cimino et al. Apr 2017 A1
20170124568 Moghadam May 2017 A1
20170140379 Deck May 2017 A1
20170154328 Zarakas et al. Jun 2017 A1
20170154333 Gleeson et al. Jun 2017 A1
20170180134 King Jun 2017 A1
20170230189 Toll et al. Aug 2017 A1
20170237301 Elad et al. Aug 2017 A1
20170289127 Hendrick Oct 2017 A1
20170295013 Claes Oct 2017 A1
20170316696 Bartel Nov 2017 A1
20170317834 Smith et al. Nov 2017 A1
20170330173 Woo et al. Nov 2017 A1
20170346851 Drake Nov 2017 A1
20170374070 Shah et al. Dec 2017 A1
20180034507 Wobak et al. Feb 2018 A1
20180039986 Essebag et al. Feb 2018 A1
20180068316 Essebag et al. Mar 2018 A1
20180129945 Saxena et al. May 2018 A1
20180160255 Park Jun 2018 A1
20180191501 Lindemann Jul 2018 A1
20180205712 Versteeg et al. Jul 2018 A1
20180240106 Garrett et al. Aug 2018 A1
20180254909 Hancock Sep 2018 A1
20180268132 Buer et al. Sep 2018 A1
20180270214 Caterino et al. Sep 2018 A1
20180294959 Traynor et al. Oct 2018 A1
20180300716 Carlson Oct 2018 A1
20180302396 Camenisch et al. Oct 2018 A1
20180315050 Hammad Nov 2018 A1
20180316666 Koved et al. Nov 2018 A1
20180322486 Deliwala et al. Nov 2018 A1
20180359100 Gaddam et al. Dec 2018 A1
20190014107 George Jan 2019 A1
20190019375 Foley Jan 2019 A1
20190036678 Ahmed Jan 2019 A1
20190238517 D'Agostino et al. Aug 2019 A1
20210014256 Malhotra Jan 2021 A1
20210019756 Rule Jan 2021 A1
20210342840 Rule Nov 2021 A1
20210367944 Gupta Nov 2021 A1
20220255929 Rafferty Aug 2022 A1
Foreign Referenced Citations (42)
Number Date Country
3010336 Jul 2017 CA
101192295 Jun 2008 CN
103023643 Apr 2013 CN
103417202 Dec 2013 CN
1085424 Mar 2001 EP
1085424 Mar 2001 EP
1223565 Jul 2002 EP
1265186 Dec 2002 EP
1783919 May 2007 EP
2139196 Dec 2009 EP
1469419 Aug 2012 EP
2852070 Mar 2015 EP
2457221 Aug 2009 GB
2516861 Feb 2015 GB
2551907 Jan 2018 GB
101508320 Apr 2015 KR
0049586 Aug 2000 WO
2006070189 Jul 2006 WO
2008055170 May 2008 WO
2009025605 Feb 2009 WO
2010049252 May 2010 WO
2011112158 Sep 2011 WO
2012001624 Jan 2012 WO
2013039395 Mar 2013 WO
2013155562 Oct 2013 WO
2013192358 Dec 2013 WO
2014043278 Mar 2014 WO
2014170741 Oct 2014 WO
2015179649 Nov 2015 WO
WO-2015179649 Nov 2015 WO
2015183818 Dec 2015 WO
2016097718 Jun 2016 WO
2016160816 Oct 2016 WO
2016168394 Oct 2016 WO
WO-2016168394 Oct 2016 WO
2017042375 Mar 2017 WO
2017042400 Mar 2017 WO
2017157859 Sep 2017 WO
2017208063 Dec 2017 WO
2018063809 Apr 2018 WO
WO-2018063809 Apr 2018 WO
2018137888 Aug 2018 WO
Non-Patent Literature Citations (41)
Entry
Batina, L. and Poll, E., “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, H., “Component of the RFID System”, RFID Design Principles, 2nd edition pp. 133-201 (2012).
Author Unknown, “CardrefresherSM from American Express®”, [online] 2019 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://merchant-channel.americanexpress.com/merchant/en_US/cardrefresher, 2 pages.
Author Unknown, “Add Account Updater to your recurring payment tool”, [online] 2018-19 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://www.authorize.net/our-features/account-updater/, 5 pages.
Author Unknown, “Visa® Account Updater for Merchants”, [online] 2019 [retrieved on Mar. 25, 2019], Retrieved from Internet URL: https://usa.visa.com/dam/VCOM/download/merchants/visa-account-updater-product-infomnation-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 Specifcations 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, 2019]. Retrieved from Internet URL: https://sf.net/projects/goldbug/files/bigseven-crypto-audit.pdf, 309 pages.
Author Unknown, “Triple DES”, Wikipedia [online] 2018 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://simple.wikipedia.org/wiki/Triple_DES, 2 pages.
Song F., and Yun, A.I., “Quantum Security of NMAC and Related Constructions—PRF domain extension against quantum attacks”, IACR Cryptology ePrint Archive [online] 2017 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: https://eprint.iacr.org/2017/509.pdf, 41 pages.
Saxena, N., “Lecture 10: NMAC, HMAC and Number Theory”, CS 6903 Modern Cryptography [online] 2008 [retrieved on Mar. 25, 2019]. Retrieved from Internet URL: http://isis.poly.edu/courses/cs6903/Lectures/lecture10.pdf, 8 pages.
Berg, G., “Fundamentals of EMV”, Smart Card Alliance [online] date unknown [retrieved on Mar. 27, 2019]. Retrieveed from Internet URL: https://www.securetechalliance.org/resources/media/scap13_preconference/02.pdf, 37 pages.
Pierce, K., “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., “Distinguishing users with capacitive touch communication”, Proceedings of the Annual International Conference on Mobile Computing and Networking, 2012, MOBICOM. 10.1145/2348543.2348569.
Pourghomi, P., et al., “A Proposed NFC Payment Application, International Journal of Advanced Computer Science and Applications,” 4(8):173-181 (2013).
Author unknown, “EMV Card Personalization Specification”, EMVCo., LLC., specification version 1.0, (2003) 81 pages.
Ullmann et al., “On-Card User Authentication for Contactless Smart Cards based on Gesture Recognition”, paper presentation LNI proceedings, (2012) 12 pages.
Faraj, S.T., et al., “Investigation of Java Smart Card Technology for Multi-Task Applications”, J of Al-Anbar University for Pure Science, 2(1):23 pages (2008).
Dhamdhere, P., “Key Benefits of a Unified Platform for Loyalty, Referral Marketing, and UGC” Annex Cloud [online] May 19, 2017 [retrieved on Jul. 3, 2019]. Retrieved from Internet URL: https://www.annexcloude.com/blog/benefits-unified-platform/, 13 pages.
Related Publications (1)
Number Date Country
20220272083 A1 Aug 2022 US