System and method for implementing a hosted authentication service

Information

  • Patent Grant
  • 10148630
  • Patent Number
    10,148,630
  • Date Filed
    Thursday, July 31, 2014
    10 years ago
  • Date Issued
    Tuesday, December 4, 2018
    5 years ago
Abstract
A system, apparatus, method, and machine readable medium are described for a hosted authentication service. For example, one embodiment of a system comprises: a hosted authentication service to provide authentication services for relying parties, the hosted authentication service registering a relying party by sharing a key with the relying party; a first program code component inserted into an application hosted by the relying party, the first program code component causing a client device accessing the application to be redirected to the hosted authentication service for authentication-related functions; and the hosted authentication service transmitting one or more assertions to the relying party specifying authentication-related events occurring between the client device and the hosted authentication service, the relying party validating the assertions using the key.
Description
BACKGROUND

Field of the Invention


This invention relates generally to the field of data processing systems. More particularly, the invention relates to a system and method for implementing a hosted authentication service.


Description of Related Art


Systems have also been designed for providing secure user authentication over a network using biometric sensors. In such systems, the a score generated by an authenticator, and/or other authentication data, may be sent over a network to authenticate the user with a remote server. For example, Patent Application No. 2011/0082801 (“'801 Application”) describes a framework for user registration and authentication on a network which provides strong authentication (e.g., protection against identity theft and phishing), secure transactions (e.g., protection against “malware in the browser” and “man in the middle” attacks for transactions), and enrollment/management of client authentication tokens (e.g., fingerprint readers, facial recognition devices, smartcards, trusted platform modules, etc).


The assignee of the present application has developed a variety of improvements to the authentication framework described in the '801 application. Some of these improvements are described in the following set of US Patent Applications, which are assigned to the present assignee: Ser. No. 13/730,761, Query System and Method to Determine Authentication Capabilities; Ser. No. 13/730,776, System and Method for Efficiently Enrolling, Registering, and Authenticating With Multiple Authentication Devices; Ser. No. 13/730,780, System and Method for Processing Random Challenges Within an Authentication Framework; Ser. No. 13/730,791, System and Method for Implementing Privacy Classes Within an Authentication Framework; Ser. No. 13/730,795, System and Method for Implementing Transaction Signaling Within an Authentication Framework; and Ser. No. 14/218,504, Advanced Authentication Techniques and Applications (hereinafter “'504 Application”). These applications are sometimes referred to herein as the (“Co-pending Applications”).


Briefly, the Co-Pending applications describe authentication techniques in which a user enrolls with authentication devices (or Authenticators) such as biometric devices (e.g., fingerprint sensors) on a client device. When a user enrolls with a biometric device, biometric reference data is captured (e.g., by swiping a finger, snapping a picture, recording a voice, etc). The user may subsequently register/provision the authentication devices with one or more servers over a network (e.g., Websites or other relying parties equipped with secure transaction services as described in the Co-Pending Applications); and subsequently authenticate with those servers using data exchanged during the registration process (e.g., cryptographic keys provisioned into the authentication devices). Once authenticated, the user is permitted to perform one or more online transactions with a Website or other relying party. In the framework described in the Co-Pending Applications, sensitive information such as fingerprint data and other data which can be used to uniquely identify the user, may be retained locally on the user's authentication device to protect a user's privacy.


The '504 Application describes a variety of additional techniques including techniques for designing composite authenticators, intelligently generating authentication assurance levels, using non-intrusive user verification, transferring authentication data to new authentication devices, augmenting authentication data with client risk data, and adaptively applying authentication policies, and creating trust circles, to name just a few.





BRIEF DESCRIPTION OF THE DRAWINGS

A better understanding of the present invention can be obtained from the following detailed description in conjunction with the following drawings, in which:



FIGS. 1A-B illustrate two different embodiments of a secure authentication system architecture;



FIG. 2 is a transaction diagram showing how keys may be registered into authentication devices;



FIG. 3 illustrates a transaction diagram showing remote authentication;



FIG. 4 illustrates one embodiment of a system for implementing a hosted authentication service;



FIG. 5 illustrates one embodiment of a method for registering a relying party with a hosted authentication service;



FIG. 6 illustrates one embodiment of a method for using a hosted authentication service;



FIG. 7 illustrates one embodiment of a computer architecture used for servers and/or clients; and



FIG. 8 illustrates one embodiment of a computer architecture used for servers and/or clients.





DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Described below are embodiments of an apparatus, method, and machine-readable medium for implementing advanced authentication techniques and associated applications. Throughout the description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without some of these specific details. In other instances, well-known structures and devices are not shown or are shown in a block diagram form to avoid obscuring the underlying principles of the present invention.


The embodiments of the invention discussed below involve authentication devices with user verification capabilities such as biometric modalities or PIN entry. These devices are sometimes referred to herein as “tokens,” “authentication devices,” or “authenticators.” While certain embodiments focus on facial recognition hardware/software (e.g., a camera and associated software for recognizing a user's face and tracking a user's eye movement), some embodiments may utilize additional biometric devices including, for example, fingerprint sensors, voice recognition hardware/software (e.g., a microphone and associated software for recognizing a user's voice), and optical recognition capabilities (e.g., an optical scanner and associated software for scanning the retina of a user). The user verification capabilities may also include non-biometric modalities, like PIN entry. The authenticators might use devices like trusted platform modules (TPMs), smartcards and secure elements for cryptographic operations and key storage.


In a mobile biometric implementation, the biometric device may be remote from the relying party. As used herein, the term “remote” means that the biometric sensor is not part of the security boundary of the computer it is communicatively coupled to (e.g., it is not embedded into the same physical enclosure as the relying party computer). By way of example, the biometric device may be coupled to the relying party via a network (e.g., the Internet, a wireless network link, etc) or via a peripheral input such as a USB port. Under these conditions, there may be no way for the relying party to know if the device is one which is authorized by the relying party (e.g., one which provides an acceptable level of authentication strength and integrity protection) and/or whether a hacker has compromised or even replaced the biometric device. Confidence in the biometric device depends on the particular implementation of the device.


The term “local” is used herein to refer to the fact that the user is completing a transaction in person, at a particular location such as at an automatic teller machine (ATM) or a point of sale (POS) retail checkout location. However, as discussed below, the authentication techniques employed to authenticate the user may involve non-location components such as communication over a network with remote servers and/or other data processing devices. Moreover, while specific embodiments are described herein (such as an ATM and retail location) it should be noted that the underlying principles of the invention may be implemented within the context of any system in which a transaction is initiated locally by an end user.


The term “relying party” is sometimes used herein to refer, not merely to the entity with which a user transaction is attempted (e.g., a Website or online service performing user transactions), but also to the secure transaction servers (sometimes referred to as “au implemented on behalf of that entity which may performed the underlying authentication techniques described herein. The secure transaction servers may be owned and/or under the control of the relying party or may be under the control of a third party offering secure transaction services to the relying party as part of a business arrangement.


The term “server” is used herein to refer to software executed on a hardware platform (or across multiple hardware platforms) that receives requests over a network from a client, responsively performs one or more operations, and transmits a response to the client, typically including the results of the operations. The server responds to client requests to provide, or help to provide, a network “service” to the clients. Significantly, a server is not limited to a single computer (e.g., a single hardware device for executing the server software) and may, in fact, be spread across multiple hardware platforms, potentially at multiple geographical locations.


Exemplary System Architectures and Transactions


FIGS. 1A-B illustrate two embodiments of a system architecture comprising client-side and server-side components for registering authentication devices (also sometimes referred to as “provisioning”) and authenticating a user. The embodiment shown in FIG. 1A uses a web browser plugin-based architecture for communicating with a website while the embodiment shown in FIG. 1B does not require a web browser. The various techniques described herein such as enrolling a user with authentication devices, registering the authentication devices with a secure server, and verifying a user may be implemented on either of these system architectures. Thus, while the architecture shown in FIG. 1A is used to demonstrate the operation of several of the embodiments described below, the same basic principles may be easily implemented on the system shown in FIG. 1B (e.g., by removing the browser plugin 105 as the intermediary for communication between the server 130 and the secure transaction service 101 on the client).


Turning first to FIG. 1A, the illustrated embodiment includes a client 100 equipped with one or more authentication devices 110-112 (sometimes referred to in the art as authentication “tokens” or “Authenticators”) for enrolling and verifying an end user. As mentioned above, the authentication devices 110-112 may include biometric device such as fingerprint sensors, voice recognition hardware/software (e.g., a microphone and associated software for recognizing a user's voice), facial recognition hardware/software (e.g., a camera and associated software for recognizing a user's face), and optical recognition capabilities (e.g., an optical scanner and associated software for scanning the retina of a user) and support for non-biometric modalities, such as PIN verification. The authentication devices might use trusted platform modules (TPMs), smartcards or secure elements for cryptographic operations and key storage.


The authentication devices 110-112 are communicatively coupled to the client through an interface 102 (e.g., an application programming interface or API) exposed by a secure transaction service 101. The secure transaction service 101 is a secure application for communicating with one or more secure transaction servers 132-133 over a network and for interfacing with a secure transaction plugin 105 executed within the context of a web browser 104. As illustrated, the Interface 102 may also provide secure access to a secure storage device 120 on the client 100 which stores information related to each of the authentication devices 110-112 such as a device identification code, user identification code, user enrollment data (e.g., scanned fingerprint or other biometric data) protected by the authentication device, and keys wrapped by the authentication device used to perform the secure authentication techniques described herein. For example, as discussed in detail below, a unique key may be stored into each of the authentication devices and used when communicating to servers 130 over a network such as the Internet.


As discussed below, certain types of network transactions are supported by the secure transaction plugin 105 such as HTTP or HTTPS transactions with websites 131 or other servers. In one embodiment, the secure transaction plugin is initiated in response to specific HTML tags inserted into the HTML code of a web page by the web server 131 within the secure enterprise or Web destination 130 (sometimes simply referred to below as “server 130”). In response to detecting such a tag, the secure transaction plugin 105 may forward transactions to the secure transaction service 101 for processing. In addition, for certain types of transactions (e.g., such as secure key exchange) the secure transaction service 101 may open a direct communication channel with the on-premises transaction server 132 (i.e., co-located with the website) or with an off-premises transaction server 133.


The secure transaction servers 132-133 are coupled to a secure transaction database 120 for storing user data, authentication device data, keys and other secure information needed to support the secure authentication transactions described below. It should be noted, however, that the underlying principles of the invention do not require the separation of logical components within the secure enterprise or web destination 130 shown in FIG. 1A. For example, the website 131 and the secure transaction servers 132-133 may be implemented within a single physical server or separate physical servers. Moreover, the website 131 and transaction servers 132-133 may be implemented within an integrated software module executed on one or more servers for performing the functions described below.


As mentioned above, the underlying principles of the invention are not limited to a browser-based architecture shown in FIG. 1A. FIG. 1B illustrates an alternate implementation in which a stand-alone application 154 utilizes the functionality provided by the secure transaction service 101 to authenticate a user over a network. In one embodiment, the application 154 is designed to establish communication sessions with one or more network services 151 which rely on the secure transaction servers 132-133 for performing the user/client authentication techniques described in detail below.


In either of the embodiments shown in FIGS. 1A-B, the secure transaction servers 132-133 may generate the keys which are then securely transmitted to the secure transaction service 101 and stored into the authentication devices within the secure storage 120. Additionally, the secure transaction servers 132-133 manage the secure transaction database 120 on the server side.


Certain basic principles associated with remotely registering authentication devices and authenticating with a relying party will be described with respect to FIGS. 2-3, followed by a detailed description of embodiments of the invention for establishing trust using secure communication protocols.



FIG. 2 illustrates a series of transactions for registering authentication devices on a client (such as devices 110-112 on client 100 in FIGS. 1A-B) (sometimes referred to as “provisioning” authentication devices). For simplicity, the secure transaction service 101 and interface 102 are combined together as authentication client 201 and the secure enterprise or web destination 130 including the secure transaction servers 132-133 are represented as a relying party 202.


During registration of an authenticator (e.g., a fingerprint authenticator, voice authenticator, etc), a key associated with the authenticator is shared between the authentication client 201 and the relying party 202. Referring back to FIGS. 1A-B, the key may be stored within the secure storage 120 of the client 100 and the secure transaction database 120 used by the secure transaction servers 132-133. In one embodiment, the key is a symmetric key generated by one of the secure transaction servers 132-133. However, in another embodiment discussed below, asymmetric keys are be used. In this embodiment, the public/private key pair may be generated by the secure transaction servers 132-133. The public key may then be stored by the secure transaction servers 132-133 and the related private key may be stored in the secure storage 120 on the client. In an alternate embodiment, the key(s) may be generated on the client 100 (e.g., by the authentication device or the authentication device interface rather than the secure transaction servers 132-133). The underlying principles of the invention are not limited to any particular types of keys or manner of generating the keys.


A secure key provisioning protocol is employed in one embodiment to share the key with the client over a secure communication channel. One example of a key provisioning protocol is the Dynamic Symmetric Key Provisioning Protocol (DSKPP) (see, e.g., Request for Comments (RFC) 6063). However, the underlying principles of the invention are not limited to any particular key provisioning protocol. In one particular embodiment, the client generates a public/private key pair and sends the public key to the server, which may be attested with an attestation key.


Turning to the specific details shown in FIG. 2, to initiate the registration process, the relying party 202 generates a randomly generated challenge (e.g., a cryptographic nonce) that must be presented by the authentication client 201 during device registration. The random challenge may be valid for a limited period of time. In response, the authentication client 201 initiates an out-of-band secure connection with the relying party 202 (e.g., an out-of-band transaction) and communicates with the relying party 202 using the key provisioning protocol (e.g., the DSKPP protocol mentioned above). To initiate the secure connection, the authentication client 201 may provide the random challenge back to the relying party 202 (potentially with a signature generated over the random challenge). In addition, the authentication client 201 may transmit the identity of the user (e.g., a user ID or other code) and the identity of the authentication device(s) to be provisioned registered (e.g., using the authentication attestation ID (AAID) which uniquely identify the type of authentication device(s) being provisioned).


The relying party locates the user with the user name or ID code (e.g., in a user account database), validates the random challenge (e.g., using the signature or simply comparing the random challenge to the one that was sent), validates the authentication device's authentication code if one was sent (e.g., the AAID), and creates a new entry in a secure transaction database (e.g., database 120 in FIGS. 1A-B) for the user and the authentication device(s). In one embodiment, the relying party maintains a database of authentication devices which it accepts for authentication. It may query this database with the AAID (or other authentication device(s) code) to determine if the authentication device(s) being provisioned are acceptable for authentication. If so, then it will proceed with the registration process.


In one embodiment, the relying party 202 generates an authentication key for each authentication device being provisioned. It writes the key to the secure database and sends the key back to the authentication client 201 using the key provisioning protocol. Once complete, the authentication device and the relying party 202 share the same key if a symmetric key was used or different keys if asymmetric keys were used. For example, if asymmetric keys were used, then the relying party 202 may store the public key and provide the private key to the authentication client 201. Upon receipt of the private key from the relying party 202, the authentication client 201 provisions the key into the authentication device (storing it within secure storage associated with the authentication device). It may then use the key during authentication of the user (as described below). In an alternate embodiment, the key(s) are generated by the authentication client 201 and the key provisioning protocol is used to provide the key(s) to the relying party 202. In either case, once provisioning is complete, the authentication client 201 and relying party 202 each have a key and the authentication client 201 notifies the relying party of the completion.



FIG. 3 illustrates a series of transactions for user authentication with the provisioned authentication devices. Once device registration is complete (as described in FIG. 2), the relying party 202 will accept an authentication response (sometimes referred to as a “token”) generated by the local authentication device on the client as a valid authentication response.


Turning to the specific details shown in FIG. 3, in response to the user initiating a transaction with the relying party 202 which requires authentication (e.g., initiating payment from the relying party's website, accessing private user account data, etc), the relying party 202 generates an authentication request which includes a random challenge (e.g., a cryptographic nonce). In one embodiment, the random challenge has a time limit associated with it (e.g., it is valid for a specified period of time). The relying party may also identify the authenticator to be used by the authentication client 201 for authentication. As mentioned above, the relying party may provision each authentication device available on the client and stores a public key for each provisioned authenticator. Thus, it may use the public key of an authenticator or may use an authenticator ID (e.g., AAID) to identify the authenticator to be used. Alternatively, it may provide the client with a list of authentication options from which the user may select.


In response to receipt of the authentication request, the user may be presented with a graphical user interface (GUI) requesting authentication (e.g., in the form of a web page or a GUI of an authentication application/app). The user then performs the authentication (e.g., swiping a finger on a fingerprint reader, etc). In response, the authentication client 201 generates an authentication response containing a signature over the random challenge with the private key associated with the authenticator. It may also include other relevant data such as the user ID code in the authentication response.


Upon receipt of the authentication response, the relying party may validate the signature over the random challenge (e.g., using the public key associated with the authenticator) and confirm the identity of the user. Once authentication is complete, the user is permitted to enter into secure transactions with the relying party, as illustrated.


A secure communication protocol such as Transport Layer Security (TLS) or Secure Sockets Layer (SSL) may be used to establish a secure connection between the relying party 201 and the authentication client 202 for any or all of the transactions illustrated in FIGS. 2-3.


System and Method for Implementing a Hosted Authentication Service

One embodiment of the invention includes a hosted authentication service which provides full authentication server functionality to multiple relying parties in parallel but which requires minimal integration efforts by relying party developers.


Typical authentication server implementations are deployed within relying party's network infrastructure. This is a common deployment option for large organizations whose policies do not allow critical security assets to be outside of their own infrastructure. However integrating authentication servers into an existing infrastructure is not a straightforward task and may require significant investment.


Some relying parties may prefer to forgo such investments and instead integrate with a hosted authentication service which provides the same authentication server capabilities while hiding the complexity of integration. However, sufficient security mechanisms must be in place for hosted authentication services to be accepted.


As illustrated in FIG. 4, one embodiment of the invention includes a hosted authentication service (HAS) 450 implemented as an online system communicatively coupled to the relying party 430 over a network (e.g., the Internet) to provide the authentication capabilities mentioned above. As illustrated, the HAS-based architecture involves three components: a relying party (RP) web application 440; a hosted authentication service 450; and a client device 460 configured with authenticator(s) 465, an authentication client 462, and a browser or application 461.


In one embodiment, the RP web application 440 is a web-based online service such as a financial institution website, a social network website, a web-based email service, a web-based entertainment portal, etc. It has a database of users 435 who subscribe to the services offered by the web application 440 and a login system. The RP web application 440 is typically designed with a front-end component 441 and a back end component 442. The front-end component 441 may be a web server implemented with Hypertext Markup Language (HTML) code or other web-based code to dynamically generate web pages in response to user requests. The back-end component 442 typically has access to one or more databases 435 and includes the business logic for retrieving and/or generating the underlying data to be used in the web pages generated by the front-end component 441. For example, if the relying party is a financial institution, the back-end code 442 may access a database 435 containing account data in response to a user request. The back-end component 442 may then perform calculations using the account data and/or simply provide the account data to the front-end component 441 which will then include the account data or calculations performed using the account data in a web page. The manner in which the underlying data is presented to the user is typically defined by the front-end component 441.


In one embodiment, the hosted authentication service 450 is an online service which has authentication servers 455 deployed on behalf relying parties 430. As previously discussed, a client device 460 equipped with an authentication client 462 may register its authenticators 465 with the authentication server 455 (see, e.g., FIG. 2). Keys and other credentials associated with the authenticators 465 may then be stored in secure storage 456 by the authentication server 455 (and retrieved to authenticate the end user as illustrated in FIG. 3). In one embodiment, illustrated in FIG. 4, the hosted authentication service 450 also maintains a database 452 for storing registered authentication credentials (authentication registrations) for multiple RP web applications 440.


As mentioned, the client device 460 can be a laptop, tablet, phone, or any other data processing device with an authentication client 462 and access to an authenticator 465. The client device also includes a browser or application 461 to access the services offered by relying parties 430 (e.g., to access the relying parties website or other form of online service).



FIG. 4 illustrates one embodiment in which the RP web application 440 has an out-of-band association with a hosted authentication service (discussed below) and the RP web application's web page manages communication with the hosted authentication service 450. The hosted authentication architecture illustrated in FIG. 4 provides number of benefits for RP Web Application developers. In particular, users have the same user experience as with any other authentication-based web application. In addition, relying parties do not need to maintain authentication credentials in-house and only a small integration effort is required on the web application's 440's back-end 442 and front-end 441 (as discussed below).


In one embodiment, the integration process is initiated by registering a RP web application 440 with the hosted authentication service 450. A web application administrator (e.g., a member of the relying party's information technology staff) may be provided with access via a hosted authentication service administration portal 451 and may create an account by providing the necessary details (e.g., information related to the web application 440 as discussed below). In one embodiment, the relying party administrator is provided with authentication credentials (e.g., a secret code such as a PIN or password) to access the administration portal 451 ahead of time. The administrator may then log into the administration portal 451 using the credentials. In one embodiment, the administration portal 451 is a web-based portal accessible via the administrator's browser. However, the underlying principles of the invention are not limited to any particular manner of accessing the administrative portal 451.


The web application administrator may provide the administrative portal 451 with the necessary login credentials and other pertinent information such as the network address(es) needed to access the web application's front-end program code and back-end program code. In one embodiment, in response to a request from the web application administrator to register the web application 440 with the hosted authentication service 450, the administration portal 451 generates HTML code 443 which is incorporated into web application's 440's front-end 441 (e.g., the web app's webpage). The HTML code 443 may be implemented in pure Javascript, HTML iframe or using any other programming language compatible with the web application 440. In one embodiment, the HTML code will directly communicate with the web application 440 program code (e.g., the front-end code 441).


In one embodiment, the hosted authentication service portal 451 also generates back-end code 444 which is incorporated into the web application's back-end 442. Both the HTML code 443 and back-end code 444 generated by the administration portal 451 are shown being applied to an active instance of the web application 440 in FIG. 4. However, in one embodiment, the installation of the new code 443-444 may be performed prior to execution of the web application (e.g., applied to the application binaries and libraries stored on a mass storage device).


In one embodiment, the hosted authentication service portal 451 also generates a cryptographic key (e.g., a symmetric key or a certificate), referred to herein as the hosted authentication service “assertion key” which is then stored in secure storage 436 in the web application's backend infrastructure. In one embodiment, the key 436 is then used by the back-end 442 to validate hosted authentication service 450 assertions (as discussed below). After integrating the hosted authentication service code 443-444 into the web application and providing the key(s) 436, the integration is complete.


Once the integration process has been completed, the web application users can start using client-side authenticators 465 to authenticate with the relying party 430. In one embodiment, the HTML code 443 provided by hosted authentication service 450 will manage the user authentication experience including authentication-related communication. It one embodiment, once downloaded into the user's browser 461, the HTML code 443 will directly communicate with the authentication client 462 to direct the authentication client 462 to the authentication server 455 on the hosted authentication service 450. In one embodiment, the HTML code 443 communicates with a plugin (e.g., the secure transaction plugin 101 shown in FIG. 1A), which is installed on the client device's browser 461 to enable secure communication with the hosted authentication service 450 and authentication client 462.


In one embodiment, the authentication server 455 on the hosted authentication service 450 will then generate authentication requests and exchange other authentication-related messages with the authentication client (see, e.g., FIGS. 2-3 and associated text). When the authentication-related operations are completed (e.g., registration, user authentication, deregistration, etc) the hosted authentication service 450 will notify the web application 440 via cryptographic assertions using the hosted authentication service assertion key 436. For example, the authentication server 455 may use the assertion key 436 to generate a signature over each assertion sent to the web application 440. The back-end code 444 running in the web application 440 may then verify the assertions by using its own copy of the key 436 to validate the signature. Similarly, the back end code 444 may generate a signature using the key 436 over any communication sent from the web application 440 to the hosted authentication service 450, which may validate the communication using its copy of the key.


In one embodiment, the assertions sent from the hosted authentication service 450 may include any information related to the provisioning/registration of authenticators 465 and authentications performed via the authenticators 465. For example, the assertions may notify the web application 440 about activities such as the registration of authentication devices and pertinent information related to the authentication devices such as security strength (e.g., User X has just registered an authenticator with a security strength of Y); successful authentications by the user using a particular authenticator or authenticator type (e.g., User X has just authenticated with an authenticator with a security strength Y); and the deregistration of authenticators (e.g., User X has just deregistered an authenticator Y).


The assertions may be implemented using Security Assertion Markup Language (SAML), OAuth, Open ID or any other similar technology. In some hosted authentication service architectures the assertions may go from hosted authentication service servers 455 directly to the web application 440 servers (e.g., bypassing the client device 460). In an alternate implementation, the assertions may be sent through the client device 460 (e.g., as Javascript sent to the browser 461, which then forwards the assertions on to the web application 440).



FIG. 5 illustrates a method for registering a relying party with a hosted authentication service in accordance with one embodiment of the invention and FIG. 6 illustrates a method for performing operations such as registration and deregistration of authentication devices and user authentication with a hosted authentication service. The methods may be implemented within the context of the architecture shown in FIG. 4, but are not limited to any particular system architecture.


At 501, the relying party administrator logs in to an administrative portal of the hosted authentication service (e.g., using provided credentials) and provides the data needed to create a new relying party account. This may include networking data needed to identify the relying party web application(s) over the network and potentially authentication credentials (e.g., user name/password) to access the web applications (particularly, the web application's front-end program code and back-end program code).


At 502, in response to a request from the web application administrator to register a web application with the hosted authentication service, the administration portal generates front-end code (e.g., HTML code) which is incorporated into web application's front-end (e.g., the web app's webpage) and back-end code which is incorporated into the web application's back-end. In addition, at 502, the hosted authentication service portal generates a cryptographic assertion key (e.g., a symmetric key or a certificate).


At 503, the front-end code, back-end code, and assertion key are transmitted to the relying party. At 504, the relying party integrates the front-end code and back-end code into its platform and securely stores the assertion key. As mentioned, in one embodiment, the assertion key is subsequently used to validate hosted authentication service assertions.


Turning now to FIG. 6, at 601 a client device equipped with one or more authentication devices connects to the relying party's website and downloads a web page containing the front-end code. In some instances the webpage may contain code which is dynamically generated by the front-end code (rather than the front-end code itself). As used herein, the “front-end code” refers to both the front-end code itself and code which is dynamically generated by the front-end code for use on the client device.


At 602, the front-end code establishes communication with the authentication client on the client device and the hosted authentication service (or, more precisely, an authentication server at the hosted authentication service). At 603, one or more transactions are performed such as registering a new authenticator, performing user authentication, and/or deregistering an authenticator.


At 604, the hosted authentication service generates cryptographic assertions related to the transactions using the assertion key. For example, a cryptographic assertion may indicate new registered authenticators, deregistered authenticators, information related to the authenticators such as the accuracy/precision of the authenticators (e.g., the authenticator strength), and user authentications with the authenticators. As mentioned, the cryptographic assertions may be signed with the assertion key.


At 605, the cryptographic assertions are transmitted to the relying part and, at 606, validates the assertions using the assertion key. For example, the back-end code may retrieve the assertion key, generate its own signature and compare the generated signature to the signature sent from the hosted authentication service. If the signatures match, then the assertion is validated and the user may be permitted to perform a transaction based on the assertion. For example, if the assertion indicates that the user has successfully authenticated with the hosted authentication service, the relying party may accept the authentication and permit the user to complete a transaction (e.g., a financial transaction, access to private data, etc).


In one embodiment, the hosted authentication service may be implemented using a variety of different protocols/languages including, for example, Security Assertion Markup Language (SAML), JavaScript Objection Notation (JSON) Web Signatures, OAuth, or similar technology to convey the hosted authentication service assertions to the relying party. Moreover, the hosted authentication service system may use iframes for the front-end and back-end code embedded into the relying party's webpage (e.g., which communicates to the relying party's website about hosted authentication service assertions). It should be noted, however, that the underlying principles of the invention are not limited to any particular protocol and/or programming language.


The embodiments of the invention described herein are preferable to existing federation identity servers and identity providers because an end user's privacy is better protected. While the relying party may itself have information related to the user, this information need not be shared with the authentication hosting service (or any other relying parties) to implement the hosted authentication techniques described herein. This is in contrast to existing identity providers and federation servers which allow relying parties to track users across different relying parties.


Exemplary Data Processing Devices


FIG. 7 is a block diagram illustrating an exemplary clients and servers which may be used in some embodiments of the invention. It should be understood that while FIG. 7 illustrates various components of a computer system, it is not intended to represent any particular architecture or manner of interconnecting the components as such details are not germane to the present invention. It will be appreciated that other computer systems that have fewer components or more components may also be used with the present invention.


As illustrated in FIG. 7, the computer system 700, which is a form of a data processing system, includes the bus(es) 750 which is coupled with the processing system 720, power supply 725, memory 730, and the nonvolatile memory 740 (e.g., a hard drive, flash memory, Phase-Change Memory (PCM), etc.). The bus(es) 750 may be connected to each other through various bridges, controllers, and/or adapters as is well known in the art. The processing system 720 may retrieve instruction(s) from the memory 730 and/or the nonvolatile memory 740, and execute the instructions to perform operations as described above. The bus 750 interconnects the above components together and also interconnects those components to the optional dock 760, the display controller & display device 770, Input/Output devices 780 (e.g., NIC (Network Interface Card), a cursor control (e.g., mouse, touchscreen, touchpad, etc.), a keyboard, etc.), and the optional wireless transceiver(s) 790 (e.g., Bluetooth, WiFi, Infrared, etc.).



FIG. 8 is a block diagram illustrating an exemplary data processing system which may be used in some embodiments of the invention. For example, the data processing system 800 may be a handheld computer, a personal digital assistant (PDA), a mobile telephone, a portable gaming system, a portable media player, a tablet or a handheld computing device which may include a mobile telephone, a media player, and/or a gaming system. As another example, the data processing system 800 may be a network computer or an embedded processing device within another device.


According to one embodiment of the invention, the exemplary architecture of the data processing system 800 may be used for the mobile devices described above. The data processing system 800 includes the processing system 820, which may include one or more microprocessors and/or a system on an integrated circuit. The processing system 820 is coupled with a memory 810, a power supply 825 (which includes one or more batteries) an audio input/output 840, a display controller and display device 860, optional input/output 850, input device(s) 870, and wireless transceiver(s) 830. It will be appreciated that additional components, not shown in FIG. 8, may also be a part of the data processing system 800 in certain embodiments of the invention, and in certain embodiments of the invention fewer components than shown in FIG. 8 may be used. In addition, it will be appreciated that one or more buses, not shown in FIG. 8, may be used to interconnect the various components as is well known in the art.


The memory 810 may store data and/or programs for execution by the data processing system 800. The audio input/output 840 may include a microphone and/or a speaker to, for example, play music and/or provide telephony functionality through the speaker and microphone. The display controller and display device 860 may include a graphical user interface (GUI). The wireless (e.g., RF) transceivers 830 (e.g., a WiFi transceiver, an infrared transceiver, a Bluetooth transceiver, a wireless cellular telephony transceiver, etc.) may be used to communicate with other data processing systems. The one or more input devices 870 allow a user to provide input to the system. These input devices may be a keypad, keyboard, touch panel, multi touch panel, etc. The optional other input/output 850 may be a connector for a dock.


Embodiments of the invention may include various steps as set forth above. The steps may be embodied in machine-executable instructions which cause a general-purpose or special-purpose processor to perform certain steps. Alternatively, these steps may be performed by specific hardware components that contain hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.


Elements of the present invention may also be provided as a machine-readable medium for storing the machine-executable program code. The machine-readable medium may include, but is not limited to, floppy diskettes, optical disks, CD-ROMs, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, or other type of media/machine-readable medium suitable for storing electronic program code.


Throughout the foregoing description, for the purposes of explanation, numerous specific details were set forth in order to provide a thorough understanding of the invention. It will be apparent, however, to one skilled in the art that the invention may be practiced without some of these specific details. For example, it will be readily apparent to those of skill in the art that the functional modules and methods described herein may be implemented as software, hardware or any combination thereof. Moreover, although some embodiments of the invention are described herein within the context of a mobile computing environment, the underlying principles of the invention are not limited to a mobile computing implementation. Virtually any type of client or peer data processing devices may be used in some embodiments including, for example, desktop or workstation computers. Accordingly, the scope and spirit of the invention should be judged in terms of the claims which follow.


Embodiments of the invention may include various steps as set forth above. The steps may be embodied in machine-executable instructions which cause a general-purpose or special-purpose processor to perform certain steps. Alternatively, these steps may be performed by specific hardware components that contain hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.

Claims
  • 1. A system comprising: one or more hardware platforms implementing a hosted authentication service to provide authentication services for relying parties, the hosted authentication service and the relying parties being separate parties, the hosted authentication service registering a relying party by sharing a key with the relying party, the hosted authentication service comprising an administration portal through which a relying party administrator configures the hosted authentication service to provide authentication services on behalf of the relying party; a first program code component provided by the hosted authentication service is inserted into an application hosted by the relying party, the first program code component causing a client device accessing the application to be redirected to the hosted authentication service for user-authentication and other authentication-related functions including registering one or more new authenticators and deregistering one or more authenticators of a user's client device; andthe hosted authentication service, based on a plurality of different authentication-related events occurring between the client device and the hosted authentication service, transmitting a plurality of assertions directly to the relying party thereby bypassing the client device, each assertion of the plurality of assertions specifying one different authentication-related event occurring between the client device and the hosted authentication service, each assertion of the plurality of assertions including at least one indication, wherein a first assertion indicates that the user has registered a new authenticator, a second assertion indicates that the user has deregistered an authenticator, and a third assertion indicates that the user has authenticated with the authentication service using an authenticator, wherein the relying party validating each one of the plurality of assertions using the key.
  • 2. The system as in claim 1 wherein the key comprises a symmetric assertion key.
  • 3. The system as in claim 2 wherein the hosted authentication service generates a first signature over data in one of the plurality of assertions using the symmetric assertion key, the relying party using its copy of the symmetric assertion key to generate a second signature over the data in the one of the plurality of assertions and comparing the first signature with the second signature to validate the one of the plurality of assertions.
  • 4. The system as in claim 1 wherein the first program code component comprises hypertext markup language (HTML) code and wherein the application comprises a Web application.
  • 5. The system as in claim 1 further comprising: a second program code component inserted into a back-end component of the application hosted by the relying party, the second program code component securely storing the key.
  • 6. The system as in claim 5 wherein the application comprises a Web application including the back-end and a front-end comprising hypertext markup language (HTML) code.
  • 7. The system as in claim 1 wherein the administration portal generates front-end code to be applied to a front-end of the application and back-end code to be applied to a back-end of the application, the front-end code usable to redirect client devices to the hosted authentication service and the back-end code usable to securely store and access the key.
  • 8. The system as in claim 1 wherein each one of the plurality of assertions further includes an indication of an authenticator type, model, and/or strength.
  • 9. A method comprising: registering a relying party at a hosted authentication service by sharing a key with the relying party, the hosted authentication service and the relying parties being separate parties, the hosted authentication service comprising an administration portal through which a relying party administrator configures the hosted authentication service to provide authentication services on behalf of the relying party; inserting a first program code component provided by the hosted authentication device into an application hosted by the relying party, the first program code component causing a client device accessing the application to be redirected to the hosted authentication service for user-authentication and other authentication-related functions including registering one or more new authenticators and deregistering one or more authenticators of a user's client device; andtransmitting, based on a plurality of authentication-related events occurring between the client device and the hosted authentication service, a plurality of assertions from the hosted authentication service directly to the relying party thereby bypassing the client device, each assertion of the plurality of assertions specifying one different authentication-related event occurring between the client device and the hosted authentication service, each assertion of the plurality of assertions including at least one indication, wherein a first assertion indicates that the user has registered a new authenticator, a second assertion indicates that the user has deregistered an authenticator, and a third assertion indicates that the user has authenticated with the authentication service using an authenticator, wherein the relying party validating each one of the plurality of assertions using the key.
  • 10. The method as in claim 9 wherein the key comprises a symmetric assertion key.
  • 11. The method as in claim 10 wherein the hosted authentication service generates a first signature over data in one of the plurality of assertions using the symmetric assertion key, the relying party using its copy of the symmetric assertion key to generate a second signature over the data in the one of the plurality of assertions and comparing the first signature with the second signature to validate the one of the plurality of assertions.
  • 12. The method as in claim 9 wherein the first program code component comprises hypertext markup language (HTML) code and wherein the application comprises a Web application.
  • 13. The method as in claim 9 further comprising: a second program code component inserted into a back-end component of the application hosted by the relying party, the second program code component securely storing the key.
  • 14. The method as in claim 13 wherein the application comprises a Web application including the back-end and a front-end comprising hypertext markup language (HTML) code.
  • 15. The method as in claim 9 wherein the administration portal generates front-end code to be applied to a front-end of the application and back-end code to be applied to a back-end of the application, the front-end code usable to redirect client devices to the hosted authentication service and the back-end code usable to securely store and access the key.
  • 16. The method as in claim 9 wherein each one of the plurality of assertions further includes an indication of an authenticator type, model, and/or strength.
  • 17. A non-transitory machine-readable medium having program code stored thereon which, when executed by a machine, causes the machine to perform operations of: registering a relying party at a hosted authentication service by sharing a key with the relying party, the hosted authentication service and the relying parties being separate parties, the hosted authentication service comprising an administration portal through which a relying party administrator configures the hosted authentication service to provide authentication services on behalf of the relying party; inserting a first program code component provided by the hosted authentication service into an application hosted by the relying party, the first program code component causing a client device accessing the application to be redirected to the hosted authentication service for user-authentication and other authentication-related functions including registering one or more new authenticators and deregistering one or more authenticators of a user's client device; andtransmitting, based on a plurality of different authentication-related-events occurring between the client device and the hosted authentication service, a plurality of assertions from the hosted authentication service directly to the relying party thereby bypassing the client device, each assertion of the plurality of assertions specifying one different authentication-related event occurring between the client device and the hosted authentication service, each assertion of the plurality of assertions including at least one indication, wherein a first assertion indicates that the user has registered a new authenticator, a second assertion indicates that the user has deregistered an authenticator, and a third assertion indicates that the user has authenticated with the authentication service using an authenticator, wherein the relying party validating each one of the plurality of assertions using the key.
  • 18. The non-transitory machine-readable medium as in claim 17 wherein the key comprises a symmetric assertion key.
  • 19. The non-transitory machine-readable medium as in claim 18 wherein the hosted authentication service generates a first signature over data in one of the plurality of assertions using the symmetric assertion key, the relying party using its copy of the symmetric assertion key to generate a second signature over the data in the one of the plurality of assertions and comparing the first signature with the second signature to validate the one of the plurality of assertions.
  • 20. The non-transitory machine-readable medium as in claim 17 wherein the first program code component comprises hypertext markup language (HTML) code and wherein the application comprises a Web application.
US Referenced Citations (330)
Number Name Date Kind
5280527 Gullman et al. Jan 1994 A
5764789 Pare, Jr. et al. Jun 1998 A
6088450 Davis et al. Jul 2000 A
6178511 Cohen et al. Jan 2001 B1
6377691 Swift et al. Apr 2002 B1
6618806 Brown et al. Sep 2003 B1
6751733 Nakamura et al. Jun 2004 B1
6842896 Redding et al. Jan 2005 B1
6938156 Wheeler et al. Aug 2005 B2
7155035 Kondo et al. Dec 2006 B2
7194763 Potter et al. Mar 2007 B2
7263717 Boydstun et al. Aug 2007 B1
7444368 Wong et al. Oct 2008 B1
7487357 Smith et al. Feb 2009 B2
7512567 Bemmel et al. Mar 2009 B2
7698565 Bjorn et al. Apr 2010 B1
7865937 White Jan 2011 B1
7941669 Foley et al. May 2011 B2
8060922 Crichton et al. Nov 2011 B2
8166531 Suzuki Apr 2012 B2
8245030 Lin Aug 2012 B2
8284043 Judd et al. Oct 2012 B2
8291468 Chickering Oct 2012 B1
8353016 Pravetz et al. Jan 2013 B1
8359045 Hopkins, III Jan 2013 B1
8458465 Stern et al. Jun 2013 B1
8489506 Hammad et al. Jul 2013 B2
8516552 Raleigh Aug 2013 B2
8555340 Potter et al. Oct 2013 B2
8561152 Novak et al. Oct 2013 B2
8584219 Toole et al. Nov 2013 B1
8584224 Pei et al. Nov 2013 B1
8607048 Nogawa Dec 2013 B2
8646060 Ben Ayed Feb 2014 B1
8713325 Ganesan Apr 2014 B2
8719905 Ganesan May 2014 B2
8776180 Kumar et al. Jul 2014 B2
8856541 Chaudhury et al. Oct 2014 B1
8949978 Lin Feb 2015 B1
8958599 Starner Feb 2015 B1
8978117 Bentley et al. Mar 2015 B2
9015482 Baghdasaryan et al. Apr 2015 B2
9032485 Chu et al. May 2015 B2
9083689 Lindemann et al. Jul 2015 B2
9161209 Ghoshal et al. Oct 2015 B1
9171306 He et al. Oct 2015 B1
9172687 Baghdasaryan et al. Oct 2015 B2
9367678 Pal et al. Jun 2016 B2
9396320 Lindemann Jul 2016 B2
20010037451 Bhagavatula et al. Nov 2001 A1
20020010857 Karthik Jan 2002 A1
20020016913 Wheeler et al. Feb 2002 A1
20020040344 Preiser et al. Apr 2002 A1
20020073316 Collins et al. Jun 2002 A1
20020073320 Rinkevich et al. Jun 2002 A1
20020087894 Foley et al. Jul 2002 A1
20020112170 Foley et al. Aug 2002 A1
20020174344 Ting Nov 2002 A1
20020174348 Ting Nov 2002 A1
20020190124 Piotrowski Dec 2002 A1
20030021283 See et al. Jan 2003 A1
20030055792 Kinoshita et al. Mar 2003 A1
20030065805 Barnes et al. Apr 2003 A1
20030084300 Koike May 2003 A1
20030087629 Juitt May 2003 A1
20030115142 Brickell et al. Jun 2003 A1
20030135740 Talmor et al. Jul 2003 A1
20030152252 Kondo Aug 2003 A1
20030226036 Bivens et al. Dec 2003 A1
20030236991 Letsinger Dec 2003 A1
20040101170 Tisse et al. May 2004 A1
20040123153 Wright et al. Jun 2004 A1
20050021964 Bhatnagar et al. Jan 2005 A1
20050080716 Belyi et al. Apr 2005 A1
20050097320 Golan et al. May 2005 A1
20050125295 Tidwell et al. Jun 2005 A1
20050160052 Schneider et al. Jul 2005 A1
20050187883 Bishop et al. Aug 2005 A1
20050223217 Howard et al. Oct 2005 A1
20050223236 Yamada et al. Oct 2005 A1
20050278253 Meek et al. Dec 2005 A1
20060026671 Potter et al. Feb 2006 A1
20060029062 Rao Feb 2006 A1
20060156385 Chiviendacz et al. Jul 2006 A1
20060161435 Atef et al. Jul 2006 A1
20060161672 Jolley Jul 2006 A1
20060282670 Karchov Dec 2006 A1
20070005988 Zhang et al. Jan 2007 A1
20070077915 Black et al. Apr 2007 A1
20070088950 Wheeler Apr 2007 A1
20070100756 Varma May 2007 A1
20070106895 Huang et al. May 2007 A1
20070107048 Halls et al. May 2007 A1
20070118883 Potter et al. May 2007 A1
20070165625 Eisner et al. Jul 2007 A1
20070168677 Kudo et al. Jul 2007 A1
20070169182 Wolfond et al. Jul 2007 A1
20070198435 Siegal et al. Aug 2007 A1
20070234417 Blakley, III et al. Oct 2007 A1
20070239980 Funayama Oct 2007 A1
20070278291 Rans et al. Dec 2007 A1
20070286130 Shao et al. Dec 2007 A1
20080005562 Sather et al. Jan 2008 A1
20080025234 Zhu Jan 2008 A1
20080028453 Nguyen et al. Jan 2008 A1
20080034207 Cam-Winget et al. Feb 2008 A1
20080046334 Lee et al. Feb 2008 A1
20080046984 Bohmer et al. Feb 2008 A1
20080049983 Miller et al. Feb 2008 A1
20080072054 Choi Mar 2008 A1
20080086759 Colson Apr 2008 A1
20080134311 Medvinsky Jun 2008 A1
20080141339 Gomez et al. Jun 2008 A1
20080172725 Fujii et al. Jul 2008 A1
20080184351 Gephart et al. Jul 2008 A1
20080209545 Asano Aug 2008 A1
20080232565 Kutt et al. Sep 2008 A1
20080235801 Soderberg et al. Sep 2008 A1
20080271150 Boerger et al. Oct 2008 A1
20080289019 Lam Nov 2008 A1
20080289020 Cameron et al. Nov 2008 A1
20080313719 Kaliski, Jr. et al. Dec 2008 A1
20080320308 Kostiainen et al. Dec 2008 A1
20090049510 Zhang et al. Feb 2009 A1
20090064292 Carter et al. Mar 2009 A1
20090089870 Wahl Apr 2009 A1
20090100269 Naccache Apr 2009 A1
20090116651 Liang et al. May 2009 A1
20090119221 Weston et al. May 2009 A1
20090133113 Schneider May 2009 A1
20090138724 Chiou et al. May 2009 A1
20090138727 Campello May 2009 A1
20090158425 Chan Jun 2009 A1
20090183003 Haverinen Jul 2009 A1
20090187988 Hulten et al. Jul 2009 A1
20090193508 Brenneman Jul 2009 A1
20090196418 Tkacik et al. Aug 2009 A1
20090199264 Lang Aug 2009 A1
20090204964 Foley Aug 2009 A1
20090235339 Mennes et al. Sep 2009 A1
20090271618 Camenisch et al. Oct 2009 A1
20090271635 Liu et al. Oct 2009 A1
20090300714 Ahn Dec 2009 A1
20090300720 Guo et al. Dec 2009 A1
20090307139 Mardikar et al. Dec 2009 A1
20090327131 Beenau et al. Dec 2009 A1
20090328197 Newell Dec 2009 A1
20100010932 Law et al. Jan 2010 A1
20100023454 Exton et al. Jan 2010 A1
20100029300 Chen Feb 2010 A1
20100042848 Rosener Feb 2010 A1
20100062744 Ibrahim Mar 2010 A1
20100070424 Monk Mar 2010 A1
20100082484 Erhart et al. Apr 2010 A1
20100083000 Kesanupalli Apr 2010 A1
20100094681 Almen et al. Apr 2010 A1
20100105427 Gupta Apr 2010 A1
20100107222 Glasser Apr 2010 A1
20100114776 Weller et al. May 2010 A1
20100169650 Brickell et al. Jul 2010 A1
20100175116 Gum Jul 2010 A1
20100186072 Kumar Jul 2010 A1
20100192209 Steeves et al. Jul 2010 A1
20100205658 Griffin Aug 2010 A1
20100223663 Morimoto et al. Sep 2010 A1
20100242088 Thomas Sep 2010 A1
20100287369 Monden Nov 2010 A1
20100299738 Wahl Nov 2010 A1
20100325427 Ekberg et al. Dec 2010 A1
20100325664 Kang Dec 2010 A1
20100325684 Grebenik Dec 2010 A1
20100325711 Etchegoyen Dec 2010 A1
20110004918 Chow et al. Jan 2011 A1
20110004933 Dickinson et al. Jan 2011 A1
20110022835 Schibuk Jan 2011 A1
20110047608 Levenberg Feb 2011 A1
20110071841 Fomenko et al. Mar 2011 A1
20110078443 Greentstein et al. Mar 2011 A1
20110082801 Baghdasaryan Apr 2011 A1
20110083016 Kesanupalli et al. Apr 2011 A1
20110093942 Koster et al. Apr 2011 A1
20110099361 Shah et al. Apr 2011 A1
20110107087 Lee et al. May 2011 A1
20110138450 Kesanupalli et al. Jun 2011 A1
20110157346 Zyzdryn et al. Jun 2011 A1
20110167154 Bush et al. Jul 2011 A1
20110167472 Evans et al. Jul 2011 A1
20110191200 Bayer et al. Aug 2011 A1
20110197267 Gravel et al. Aug 2011 A1
20110219427 Hito et al. Sep 2011 A1
20110225431 Stufflebeam, Jr. et al. Sep 2011 A1
20110228330 Nogawa Sep 2011 A1
20110231911 White et al. Sep 2011 A1
20110246766 Orsini et al. Oct 2011 A1
20110265159 Ronda Oct 2011 A1
20110279228 Kumar et al. Nov 2011 A1
20110280402 Ibrahim et al. Nov 2011 A1
20110296518 Faynberg et al. Dec 2011 A1
20110307706 Fielder Dec 2011 A1
20110307949 Ronda et al. Dec 2011 A1
20110313872 Carter et al. Dec 2011 A1
20110314549 Song et al. Dec 2011 A1
20110320823 Saroiu et al. Dec 2011 A1
20120018506 Hammad et al. Jan 2012 A1
20120023568 Cha et al. Jan 2012 A1
20120046012 Forutanpour et al. Feb 2012 A1
20120047555 Xiao et al. Feb 2012 A1
20120075062 Osman et al. Mar 2012 A1
20120084566 Chin et al. Apr 2012 A1
20120102553 Hsueh et al. Apr 2012 A1
20120124639 Shaikh et al. May 2012 A1
20120124651 Ganesan et al. May 2012 A1
20120144461 Rathbun Jun 2012 A1
20120159577 Belinkiy et al. Jun 2012 A1
20120191979 Feldbau Jul 2012 A1
20120203906 Jaudon et al. Aug 2012 A1
20120204032 Wilkins et al. Aug 2012 A1
20120210135 Panchapakesan et al. Aug 2012 A1
20120249298 Sovio et al. Oct 2012 A1
20120272056 Ganesan Oct 2012 A1
20120278873 Calero et al. Nov 2012 A1
20120291114 Poliashenko et al. Nov 2012 A1
20120313746 Rahman et al. Dec 2012 A1
20120317297 Bailey Dec 2012 A1
20130042327 Chow Feb 2013 A1
20130046976 Rosati et al. Feb 2013 A1
20130046991 Lu et al. Feb 2013 A1
20130047200 Radhakrishnan et al. Feb 2013 A1
20130054967 Davoust et al. Feb 2013 A1
20130055370 Goldberg et al. Feb 2013 A1
20130061055 Schibuk Mar 2013 A1
20130067546 Thavasi et al. Mar 2013 A1
20130073859 Carlson Mar 2013 A1
20130086669 Sondhi et al. Apr 2013 A1
20130090939 Robinson Apr 2013 A1
20130097682 Zeljkovic Apr 2013 A1
20130104187 Weidner Apr 2013 A1
20130104190 Simske Apr 2013 A1
20130119130 Braams May 2013 A1
20130124285 Pravetz May 2013 A1
20130124422 Hubert et al. May 2013 A1
20130125197 Pravetz et al. May 2013 A1
20130125222 Pravetz et al. May 2013 A1
20130133049 Peirce May 2013 A1
20130133054 Davis et al. May 2013 A1
20130144785 Karpenko Jun 2013 A1
20130159413 Davis et al. Jun 2013 A1
20130159716 Buck et al. Jun 2013 A1
20130160083 Schrix et al. Jun 2013 A1
20130160100 Langley Jun 2013 A1
20130167196 Spencer et al. Jun 2013 A1
20130191884 Leicher et al. Jul 2013 A1
20130212637 Guccione et al. Aug 2013 A1
20130219456 Sharma et al. Aug 2013 A1
20130227646 Haggerty et al. Aug 2013 A1
20130239173 Dispensa Sep 2013 A1
20130282589 Shoup et al. Oct 2013 A1
20130308778 Fosmark et al. Nov 2013 A1
20130318343 Bjarnason et al. Nov 2013 A1
20130326215 Leggette et al. Dec 2013 A1
20130337777 Deutsch et al. Dec 2013 A1
20130346176 Alolabi et al. Dec 2013 A1
20140002238 Taveau et al. Jan 2014 A1
20140007215 Romano Jan 2014 A1
20140013422 Janus et al. Jan 2014 A1
20140033271 Barton et al. Jan 2014 A1
20140040987 Haugsnes Feb 2014 A1
20140044265 Kocher et al. Feb 2014 A1
20140047510 Belton et al. Feb 2014 A1
20140066015 Aissi Mar 2014 A1
20140068746 Gonzalez et al. Mar 2014 A1
20140075516 Chermside Mar 2014 A1
20140089243 Oppenheimer Mar 2014 A1
20140096182 Smith Apr 2014 A1
20140101439 Pettigrew et al. Apr 2014 A1
20140109174 Barton Apr 2014 A1
20140115702 Li et al. Apr 2014 A1
20140130127 Toole et al. May 2014 A1
20140137191 Goldsmith et al. May 2014 A1
20140164776 Hook et al. Jun 2014 A1
20140173754 Barbir Jun 2014 A1
20140188770 Agrafioti et al. Jul 2014 A1
20140189350 Baghdasaryan et al. Jul 2014 A1
20140189360 Baghdasaryan et al. Jul 2014 A1
20140189779 Baghdasaryan et al. Jul 2014 A1
20140189791 Lindemann et al. Jul 2014 A1
20140189807 Cahill et al. Jul 2014 A1
20140189808 Mahaffey et al. Jul 2014 A1
20140189828 Baghdasaryan et al. Jul 2014 A1
20140189835 Umerley Jul 2014 A1
20140201809 Choyi et al. Jul 2014 A1
20140230032 Duncan Aug 2014 A1
20140245391 Adenuga Aug 2014 A1
20140250523 Savvides et al. Sep 2014 A1
20140258125 Gerber et al. Sep 2014 A1
20140258711 Brannon Sep 2014 A1
20140279516 Rellas et al. Sep 2014 A1
20140282868 Sheller et al. Sep 2014 A1
20140282945 Smith et al. Sep 2014 A1
20140282965 Sambamurthy et al. Sep 2014 A1
20140289117 Baghdasaryan Sep 2014 A1
20140289820 Lindemann et al. Sep 2014 A1
20140289833 Briceno et al. Sep 2014 A1
20140289834 Lindemann Sep 2014 A1
20140298419 Boubez Oct 2014 A1
20140304505 Dawson Oct 2014 A1
20140335824 Abraham Nov 2014 A1
20140337948 Hoyos Nov 2014 A1
20150046340 Dimmick Feb 2015 A1
20150058931 Miu et al. Feb 2015 A1
20150095999 Toth et al. Apr 2015 A1
20150121068 Lindemann et al. Apr 2015 A1
20150134330 Baldwin et al. May 2015 A1
20150142628 Suplee et al. May 2015 A1
20150180869 Verma Jun 2015 A1
20150244696 Ma Aug 2015 A1
20150269050 Filimonov Sep 2015 A1
20150326529 Morita Nov 2015 A1
20150373039 Wang Dec 2015 A1
20150381580 Graham et al. Dec 2015 A1
20160036588 Thackston Feb 2016 A1
20160072787 Balabine et al. Mar 2016 A1
20160078869 Syrdal et al. Mar 2016 A1
20160087952 Tartz et al. Mar 2016 A1
20160087957 Shah et al. Mar 2016 A1
20160188958 Martin Jun 2016 A1
20170004487 Hagen et al. Jan 2017 A1
20170048070 Gulati et al. Feb 2017 A1
20170109751 Dunkelberger et al. Apr 2017 A1
20170221068 Krauss et al. Aug 2017 A1
Foreign Referenced Citations (14)
Number Date Country
1705925 Dec 2005 CN
101394283 Mar 2009 CN
102763111 Oct 2012 CN
2357754 Aug 2011 EP
2004348308 Dec 2004 JP
2007220075 Aug 2007 JP
2008065844 Mar 2008 JP
2013016070 Jan 2013 JP
03017159 Feb 2003 WO
2005003985 Jan 2005 WO
2009158530 Dec 2009 WO
2013082190 Jun 2013 WO
2014105994 Jul 2014 WO
2015130734 Sep 2015 WO
Non-Patent Literature Citations (270)
Entry
Transmittal of International Preliminary Report on Patentability from foreign counterpart PCT/US2013/077888, dated Jul. 9, 2015, 7 pages.
Notification of Transmittal of the International Search Report and the Written Opinion from counterpart Patent Cooperation Treaty Application No. PCT/US2015/042870, dated Oct. 30, 2015, 9 pages.
Notification of Transmittal of the International Search Report and the Written Opinion from counterpart Patent Cooperation Treaty Application No. PCT/US2015/42827, dated Oct. 30, 2015, 9 pages.
Validity, OSTP Framework, 24 pages, 2010.
Notice of Allowance from U.S. Appl. No. 14/268,686, dated Nov. 5, 2015, 23 pages.
Notification of Transmittal of the International Search Report and the Written Opinion from counterpart Patent Cooperation Treaty Application No. PCT/US15/50348, dated Dec. 22, 2015, 9 pages.
Office Action from U.S. Appl. No. 14/448,868, dated Dec. 3, 2015, 15 pages.
Office Action from U.S. Appl. No. 14/487,992, dated Dec. 31, 2015, 12 pages.
Final Office Action from U.S. Appl. No. 14/268,619, dated Dec. 14, 2015, 10 pages.
Notification of Transmittal of International Search Report and Written Opinion from PCT/US2015/028927, dated Jul. 30, 2015, 12 pages.
Transmittal of International Preliminary Report on Patentability from foreign counterpart PCT Patent Application No. PCT/US2014/039627 dated Dec. 10, 2015, 8 pages.
Notice of Allowance from U.S. Appl. No. 14/448,697, dated Jan. 14, 2016, 23 pages.
Final Office Action from U.S. Appl. No. 14/268,733, dated Jan. 15, 2016, 14 pages.
Notice of Allowance from U.S. Appl. No. 14/145,533, dated Jan. 20, 2016, 12 pages.
Office Action from U.S. Appl. No. 14/218,743, dated Jan. 21, 2016, 12 pages.
Office Action from U.S. Appl. No. 14/218,551, dated Jan. 21, 2016, 11 pages.
Office Action from U.S. Appl. No. 14/218,575, dated Jan. 29, 2016, 25 pages.
Transmittal of International Preliminary Report on Patentability from foreign counterpart PCT Patent Application No. PCT/US2014/031344 dated Oct. 1, 2015, 9 pages.
Notice of Allowance from U.S. Appl. No. 14/145,607, dated Feb. 1, 2016, 28 pages.
Final Office Action from U.S. Appl. No. 14/066,273, dated Feb. 11, 2016, 29 pages.
Final Office Action from U.S. Appl. No. 14/218,692, dated Mar. 2, 2016, 24 pages.
Final Office Action from U.S. Appl. No. 14/218,646, dated Mar. 10, 2016, 23 pages.
Notice of Allowance from U.S. Appl. No. 14/145,439, dated Mar. 14, 2016, 17 pages.
Notice of Allowance from U.S. Appl. No. 14/066,384, dated Mar. 17, 2016, 40 pages.
Office Action from U.S. Appl. No. 14/268,619, dated Mar. 21, 2016, 7 pages.
Notice of Allowance from U.S. Appl. No. 14/268,686, dated Mar. 30, 2016, 38 pages.
Office Action from U.S. Appl. No. 14/218,551, dated May 12, 2016, 11 pages.
Office Action from U.S. Appl. No. 14/448,868, dated May 12, 2016, 11 pages.
Non-Final Office Action from U.S. Appl. No. 13/730,761 dated Sep. 9, 2014, 36 pages.
Non-Final Office Action from U.S. Appl. No. 13/730,776 dated Jul. 15, 2014, 16 pages.
Non-Final Office Action from U.S. Appl. No. 13/730,780 dated Aug. 4, 2014, 30 pages.
Non-Final Office Action from U.S. Appl. No. 13/730,780 dated Mar. 12, 2014, 22 pages.
Non-Final Office Action from U.S. Appl. No. 13/730,791 dated Jun. 27, 2014, 17 pages.
Non-Final Office Action from U.S. Appl. No. 13/730,795 dated Jan. 5, 2015, 19 pages.
Non-Final Office Action from U.S. Appl. No. 13/730,795 dated Jun. 11, 2014, 14 pages.
Non-Final Office Action from U.S. Appl. No. 14/066,273 dated Jun. 16, 2016, 43 pages.
Non-Final Office Action from U.S. Appl. No. 14/066,273 dated May 8, 2015, 31 pages.
Non-Final Office Action from U.S. Appl. No. 14/066,384 dated Jan. 7, 2015, 24 pages.
Non-Final Office Action from U.S. Appl. No. 14/145,439 dated Feb. 12, 2015, 18 pages.
Non-Final Office Action from U.S. Appl. No. 14/145,466 dated Sep. 9, 2016, 13 pages.
Non-Final Office Action from U.S. Appl. No. 14/145,533 dated Jan. 26, 2015, 13 pages.
Non-Final Office Action from U.S. Appl. No. 14/145,607 dated Mar. 20, 2015, 22 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,551 dated Apr. 23, 2015, 9 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,575 dated Feb. 10, 2015, 17 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,611 dated Jun. 16, 2016, 13 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,677 dated Aug. 2, 2016, 15 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,692 dated Nov. 4, 2015, 16 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,692 dated Oct. 25, 2016, 33 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,743 dated Aug. 19, 2016, 11 pages.
Non-Final Office Action from U.S. Appl. No. 14/268,619 dated Aug. 24, 2015, 17 pages.
Non-Final Office Action from U.S. Appl. No. 14/268,733 dated Jul. 16, 2015, 13 pages.
Non-Final Office Action from U.S. Appl. No. 14/448,641 dated Nov. 9, 2015, 21 pages.
Non-Final Office Action from U.S. Appl. No. 14/448,747 dated Aug. 19, 2016, 21 pages.
Non-Final Office Action from U.S. Appl. No. 14/448,868 dated Dec. 31, 2015, 12 pages.
Non-Final Office Action from U.S. Appl. No. 14/487,992 dated Dec. 3, 2015, 15 pages.
Non-Final Office Action from U.S. Appl. No. 14/859,328 dated Sep. 15, 2016, 39 pages.
Notice of Allowance from U.S. Appl. No. 14/487,992 dated May 12, 2016, 11 pages.
Notice of Allowance from U.S. Appl. No. 13/730,761 dated Jun. 10, 2015, 15 pages.
Notice of Allowance from U.S. Appl. No. 13/730,761 dated Sep. 28, 2015, 5 pages.
Notice of Allowance from U.S. Appl. No. 13/730,776 dated Feb. 13, 2015, 16 pages.
Notice of Allowance from U.S. Appl. No. 13/730,776 dated Mar. 24, 2015, 3 pages.
Notice of Allowance from U.S. Appl. No. 13/730,780 dated Aug. 13, 2015, 13 pages.
Notice of Allowance from U.S. Appl. No. 13/730,791 dated Mar. 10, 2015, 17 pages.
Notice of Allowance from U.S. Appl. No. 13/730,795 dated Jan. 14, 2016, 11 pages.
Notice of Allowance from U.S. Appl. No. 13/730,795 dated May 15, 2015, 8 pages.
Notice of Allowance from U.S. Appl. No. 13/730,795 dated Sep. 17, 2015, 11 pages.
Notice of Allowance from U.S. Appl. No. 14/066,384 dated Sep. 27, 2016, 19 pages.
Notice of Allowance from U.S. Appl. No. 14/145,439 dated Jul. 6, 2015, 6 pages.
Notice of Allowance from U.S. Appl. No. 14/145,439 dated Oct. 28, 2015, 12 pages.
Notice of Allowance from U.S. Appl. No. 14/145,533 dated May 11, 2015, 5 pages.
Notice of Allowance from U.S. Appl. No. 14/145,533 dated Sep. 14, 2015, 13 pages.
Notice of Allowance from U.S. Appl. No. 14/145,607 dated Sep. 2, 2015, 19 pages.
Notice of Allowance from U.S. Appl. No. 14/268,619 dated Oct. 3, 2016, 65 pages.
Notice of Allowance from U.S. Appl. No. 14/268,619 dated Jul. 19, 2016, 5 pages.
Notice of Allowance from U.S. Appl. No. 14/268,686 dated Apr. 18, 2016, 16 pages.
Notice of Allowance from U.S. Appl. No. 14/268,686 dated Jul. 8, 2016, 4 pages.
Notice of Allowance from U.S. Appl. No. 14/268,733 dated Sep. 23, 2016, 8 pages.
Notice of Allowance from U.S. Appl. No. 14/448,641 dated Jun. 7, 2016, 13 pages.
Notice of Allowance from U.S. Appl. No. 14/448,697 dated May 20, 2016, 14 pages.
Notice of Allowance from U.S. Appl. No. 14/448,697 dated Sep. 1, 2016, 3 pages.
Notice of Allowance from U.S. Appl. No. 14/448,697 dated Sep. 15, 2015, 14 pages.
Notice of Allowance from U.S. Appl. No. 14/487,992 dated Sep. 6, 2016, 26 pages.
Notification of Transmittal of the International Search Report and the Written Opinion from counterpart Patent Cooperation Treaty Application No. PCT/US13/77888, dated Aug. 4, 2014, 10 pages.
Notification of Transmittal of the International Search Report and the Written Opinion from counterpart Patent Cooperation Treaty Application No. PCT/US14/31344, dated Nov. 3, 2014, 16 pages.
Notification of Transmittal of the International Search Report and the Written Opinion from counterpart Patent Cooperation Treaty Application No. PCT/US14/39627, dated Oct. 16, 2014, 10 pages.
Notification of Transmittal of the International Search Report and the Written Opinion from counterpart Patent Cooperation Treaty Application No. PCT/US2015/042786, dated Oct. 16, 2015, 8 pages.
Notification of Transmittal of the International Search Report and the Written Opinion from counterpart Patent Cooperation Treaty Application No. PCT/US2015/042799, dated Oct. 16, 2015, 8 pages.
Notification of Transmittal of the International Search Report and the Written Opinion from counterpart Patent Cooperation Treaty Application No. PCT/US2015/42783, dated Oct. 19, 2015, 13 pages.
Pan G., et al., “Liveness Detection for Face Recognition” in: Recent Advances in Face Recognition, 2008, pp. 109-124, Vienna : I-Tech, 2008, Ch. 9, ISBN: 978-953-7619-34-3.
Pan G., et al., “Monocular Camera-based Face Liveness Detection by Combining Eyeblink and Scene Context,” pp. 215-225, s.l. : Springer Science+Business Media, LLC, Aug. 4, 2010. Retrieved from the Internet: URL: http://www.cs.zju.edu.cn/-gpan/publication/2011-TeleSysliveness.pdf.
Peng Y., et al., “RASL: Robust Alignment by Sparse and Low-Rank Decomposition for Linearly Correlated Images”, IEEE Conference on Computer Vision and Pattern Recognition, 2010, pp. 763-770. Retrieved from the Internet: URL: http://yima.csl.illinois.edu/psfile/RASL CVPR10.pdf.
Phillips P. J., et al., “Biometric Image Processing and Recognition,” Chellappa, 1998, Eusipco, 8 pages.
Phillips P.J., et al., “Face Recognition Vendor Test 2002: Evaluation Report,” s.l. : NISTIR 6965, 2002, 56 pages. Retrieved from the Internet: URL: http://www.facerec.org/vendors/FRVT2002_Evaluation_Report.pdf.
Phillips P.J., et al., “FRVT 2006 and ICE 2006 Large-Scale Results”, NIST IR 7408, Gaithersburg, NIST, 2006, Mar. 29, 2007, pp. 1-55.
Pinto A., et al., “Video-Based Face Spoofing Detection through Visual Rhythm Analysis,” Los Alamitos : IEEE Computer Society Conference Publishing Services, 2012, Conference on Graphics, Patterns and Images, 8 pages. (SIBGRAPI). Retrieved from the Internet: URL: http://sibgrapi.sid.inpe.br/rep/sid.inpe.br/sibgrapi/2012/07.13.21.16?mirror=sid.inpe.br/ banon/2001/03.30.15.38.24&metadatarepository=sid.inpe.br/sibgrapi/2012/07.13.21.1 6.53.
Quinn G.W., et al., “Performance of Face Recognition Algorithms on Compressed Images”, NIST Inter Agency Report 7830, NIST, Dec. 4, 2011, 35 pages.
Ratha N.K., et al., “An Analysis of Minutiae Matching Strength,” Audio-and Video-Based Biometric Person Authentication, Springer Berlin Heidelberg, 2001, 7 pages.
Ratha N.K., et al., “Enhancing Security and Privacy in Biometrics-Based Authentication Systems,” IBM Systems Journal, 2001, vol. 40 (3), pp. 614-634.
Requirement for Restriction/Election from U.S. Appl. No. 14/218,504 dated Aug. 16, 2016, 11 pages.
Roberts C., “Biometric Attack Vectors and Defences,” Sep. 2006, 25 pages. Retrieved from the Internet: URL: http://otago.ourarchive.ac.nz/bitstream/handle/10523/1243/BiometricAttackVectors.pdf.
Rocha A., et al., “Vision of the Unseen: Current Trends and Challenges in Digital Image and Video Forensics,” ACM Computing Surveys, 2010, 47 pages. Retrieved from the Internet: URL: http://www.wjscheirer.com/papers/wjscsur2011forensics.pdf.
Rodrigues R.N., et al., “Robustness of Multimodal Biometric Fusion Methods Against Spoof Attacks,” Journal of Visual Language and Computing. 2009. 11 pages, doi:10.1016/j.jvlc.2009.01.010; Retrieved from the Internet: URL: http://cubs.buffalo.edu/govind/papers/visual09.pdf.
Ross A., et al., “Multimodal Biometrics: An Overview,” Proceedings of 12th European Signal Processing Conference (EUSIPCO), Sep. 2004, pp. 1221-1224. Retrieved from the Internet: URL: http://www.csee.wvu.edu/-ross/pubs/RossMultimodaiOverview EUSIPC004.pdf.
Schneier B., Biometrics: Uses and Abuses. Aug. 1999. Inside Risks 110 (CACM 42, Aug. 8, 1999), Retrieved from the Internet: URL: http://www.schneier.com/essay-019.pdf, 3 pages.
Schuckers, “Spoofing and Anti-Spoofing Measures,” Information Security Technical Report, 2002, vol. 2002, pp. 56-62.
Schwartz., et al., “Face Spoofing Detection Through Partial Least Squares and Low-Level Descriptors,” International Conference on Biometrics, 2011, vol. 2011, pp. 1-8.
Smiatacz M., et al., Gdansk University of Technology. Liveness Measurements Using Optical Flow for Biometric Person Authentication. Metrology and Measurement Systems. 2012, vol. XIX, 2. pp. 257-268.
Supplementary Partial European Search Report for Application No. 13867269, dated Aug. 3, 2016, 7 pages.
T. Weigold et al., “The Zurich Trusted Information Channel—An Efficient Defence against Man-in-the-Middle and Malicious Software Attacks,” P. Lipp, A.R. Sadeghi, and K.M. Koch, eds., Proc. Trust Conf. (Trust 2008), LNCS 4968, Springer-Verlag, 2008, pp. 75-91.
Tan., et al., “Face Liveness Detection from a Single Image with Sparse Low Rank Bilinear Discriminative Model,” European Conference on Computer Vision, 2010, vol. 2010, pp. 1-14.
The Extended M2VTS Database, [retrieved on Sep. 29, 2012], Retrieved from the Internet: URL: http://www.ee.surrey.ac.uk/CVSSP/xm2vtsdb/, 1 page.
The Online Certificate Status Protocol, OCSP, RFC2560, 22 pages.
The source for Linux information, Linux.com, [online], [retrieved on Jan. 28, 2015], 2012, 3 pages.
Tresadern P., et al., “Mobile Biometrics (MoBio): Joint Face and Voice Verification for a Mobile Platform”, 2012, 7 pages. Retrieved from the Internet: URL: http://personal.ee.surrey.ac.uk/Personai/Norman.Poh/data/tresadern_PervComp2012draft.pdf.
Tronci R., et al., “Fusion of Multiple Clues for Photo-Attack Detection in Face Recognition Systems,” Inti. Joint Conference on Biometrics, 2011. pp. 1-6.
Uludag, Umut, and Anil K. Jain. “Attacks on biometric systems: a case study in fingerprints.” Electronic Imaging 2004. International Society for Optics and Photonics, 2004, 12 pages.
Unobtrusive User-Authentication on Mobile Phones using Biometric Gait Recognition, 2010, 6 pages.
Vassilev, A.T.; du Castel, B.; Ali, A.M., “Personal Brokerage of Web Service Access,” Security & Privacy, IEEE , vol. 5, No. 5, pp. 24-31, Sep.-Oct. 2007.
WikiPedia article for Eye Tracking, 15 pages, Last Modified Jun. 21, 2014, en.wikipedia.org/wiki/Eye_tracking.
Willis N., Linux.com. Weekend Project: Take a Tour of Open Source Eye-Tracking Software. [Online] Mar. 2, 2012. [Cited: Nov. 1, 2012.], 4 pages. Retrieved from the Internet: URL: https://www.linux.com/learn/tutorials/550880-weekend-project-take-a-tour-of -opensource-eye-tracking-software.
Wilson, R., James. Unbuntu Life, “How to Trick Google's New Face Unlock on Android 4.1 Jelly Bean”. Print Screen Mac. [Online] Aug. 6, 2012. [Cited: Sep. 28, 2012], 5 pages. http://printscreenmac.info/how-to-trick-android-jelly-bean-faceunlock/. downloaded Aug. 13, 2015.
World Wide Web Consortium, W3C Working Draft: Media Capture and Streams, 2013, 36 pages.
Zhang, “Security Verification of Hardware-enabled Attestation Protocols,” IEEE, 2012, pp. 47-54.
Zhao W., et al., “Face Recognition: A Literature Survey,” ACM Computing Surveys, 2003, vol. 35 (4), pp. 399-458.
Zhou, et al., “Face Recognition from Still Images and Videos”. University of Maryland, College Park, MD 20742 Maryland : s.n., Nov. 5, 2004.pp. 1-23, Retrieved from the Internet: http://citeseerx.ist.psu.edu/viewdoc/download?doi=1 0.1.1.77.1312&rep=rep1 &type=pdf.
Abate A., et al.,“2D and 3D face recognition: A survey”, 2007, pp. 1885-1906.
Advisory Action from U.S. Appl. No. 13/730,791 dated Jan. 23, 2015, 4 pages.
Akhtar Z., et al.,“Spoof Attacks on Multimodal Biometric Systems”, International Conference on Information and Network Technology, 2011, vol. 4, pp. 46-51.
Bao, W., et al., “A liveness detection method for face recognition based on optical flow field”, 2009, pp. 233-236, http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5054589&isnumber=5054562.
Barker E., et al.,“Recommendation for key management Part 3: Application -Specific Key Management Guidance”, NIST Special Publication 800-57, 2009, pp. 1-103.
BehavioSec, “Measuring FAR/FRR/EER in Continuous Authentication,” Stockholm, Sweden (2009), 8 pages.
Brickell, E., et al., Intel Corporation; Jan Camenish, IBM Research; Liqun Chen, HP Laboratories. “Direct Anonymous Attestation”. Feb. 11, 2004, pp. 1-28 [online]. Retrieved from the Internet: URL:https://eprint.iacr.org/2004/205.pdf.
Chakka M., et al., “Competition on Counter Measures to 2-D Facial Spoofing Attacks”. 6 pages .2011. http://www.csis.pace.edu/-ctappert/dps/IJCB2011/papers/130.pdf. 978-1-4577-1359- 0/11.
Chen L., et al., “Flexible and scalable digital signatures in TPM 2.0.” Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security. ACM, 2013, 12 pages.
Chetty G. School of ISE University of Canberra Australia. “Multilevel liveness verification for face-voice biometric authentication”. BYSM-2006 Symposium. Baltimore: BYSM-Symposium 9 pages. Sep. 19, 2006. http://www.biometrics.org/bc2006/presentations/Tues_Sep_19/BSYM/19_Chetty_research.pdf.
Continuous User Authentication Using Temporal Information, http://www.cse.msu.edu/biometrics/Publications/Face/NiinumaJain_ContinuousAuth_SPIE10.pdf, 11 pages.
Crazy Egg Heatmap Shows Where People Click on Your Website, 2012, 3 pages, www.michaelhartzell.com/Blog/bid/92970/Crazy-Egg-Heatmap-shows-where-people-click-on-your-website).
Dawei Zhang; Peng Hu, “Trusted e-commerce user agent based on USB Key”, Proceedings of the International MultiConference of Engineers and Computer Scientists 2008 vol. I, IMECS 2008, Mar. 19-21, 2008, Hong Kong, 7 pages.
Delac K. et al., Eds., InTech, Jun. 1, 2008, Retrieved from the Internet:, ISBN 978-953-7619-34-3, Uploaded as individual Chapters 1-15, 15 pages.
Doherty, et al., Internet Engineering Task Force (IETF), “Dynamic Symmetric Key Provisioning Protocol (DSKPP)”, Dec. 2010, 105 pages.
Edited by Kresimir Delac, Mislav Grgic and Marian Stewart Bartlett. s.l. : InTech Jun. 1, 2008. http://cdn.intechopen.com/finals/81/InTech- Recent_advances_in_face_recognition.zip. ISBN 978-953-7619-34-3. Uploaded as Chapters 1-15.
Final Office Action from U.S. Appl. No. 13/730,761 dated Jan. 15, 2015, 31 pages.
Final Office Action from U.S. Appl. No. 13/730,761 dated Jul. 8, 2014, 36 pages.
Final Office Action from U.S. Appl. No. 13/730,776 dated Nov. 3, 2014, 20 pages.
Final Office Action from U.S. Appl. No. 13/730,780 dated Jan. 27, 2015, 30 pages.
Final Office Action from U.S. Appl. No. 13/730,780 dated May 12, 2014, 34 pages.
Final Office Action from U.S. Appl. No. 13/730,791 dated Nov. 13, 2014, 22 pages.
Final Office Action from U.S. Appl. No. 13/730,795 dated Aug. 14, 2014, 20 pages.
Final Office Action from U.S. Appl. No. 14/066,384 dated Aug. 20, 2015, 23 pages.
Final Office Action from U.S. Appl. No. 14/218,551 dated Sep. 9, 2015, 15 pages.
Final Office Action from U.S. Appl. No. 14/218,551 dated Sep. 16, 2016, 11 pages.
Final Office Action from U.S. Appl. No. 14/218,575 dated Aug. 7, 2015, 19 pages.
Final Office Action from U.S. Appl. No. 14/218,575 dated Jul. 7, 2016, 29 pages.
Final Office Action from U.S. Appl. No. 14/218,646 dated Aug. 11, 2016, 25 pages.
Final Office Action from U.S. Appl. No. 14/448,868 dated Aug. 19, 2016, 11 pages.
Grother, P.J., et al., NIST. Report on the Evaluation of 2D Still-Image Face Recognition Algorithms, NIST IR 7709.s.l, NIST, 2011, Jun. 22, 2010, pp. 1-58.
GSM Arena. [Online] Nov. 13, 2011, [Cited: Sep. 29, 2012.], 2 pages, [retrieved on Aug. 18, 2015]. Retrieved from the Internet: URL: http://www.gsmarena.com/ice_cream_sandwichs_face_unlock_duped_using_a_photograph-news-3377.php.
Heikkila, M., et al., “A Texture-Based Method for Modeling the Background and Detecting Moving Objects”. Oulu : IEEE [online]. Jun. 22 2005. Draft. 16 pages Retrieved from the Internet: URL:http://www.ee.oulu.fi/mvg/files/pdf/pdf_662.pdf.
Hernandez, T., “But What Does It All Mean? Understanding Eye-Tracking Results (Part 3)”, Sep. 4, 2007, 2 pages. EyeTools. Part III: What is a heatmap . . . really? [Online] [Cited: Nov. 1, 2012.] Retrieved from the Internet: URL:http://eyetools.com/articles/p3- understanding-eye-tracking-what-is-a-heatmap-really.
Himanshu, et al., “A Review of Face Recognition”. International Journal of Research in Engineering & Applied Sciences. Feb. 2012, vol. 2, pp. 835-846. Retrieved from the Internet: URL:http://euroasiapub.org/IJREAS/Feb2012/81.pdf.
Huang L., et al., “Clickjacking: Attacks and Defenses”. S.I. : Usenix Security 2012, pp. 1-16, 2012 [online]. Retrieved from the Internet: URL:https://www.usenix.org/system/files/conference/usenixsecurity12/sec12-final39.pdf.
International Search Report and Written Opinion for Application No. PCT/US2015/028924 dated Jul. 30, 2015, 10 pages.
Jafri R., et al. “A Survey of Face Recognition Techniques,” Journal of Information Processing Systems, 2009, vol. 5 (2), pp. 41-68.
Kollreider K., et al., “Evaluating Liveness by Face Images and the Structure Tensor,” Halmstad, Sweden: s.n., Halmstad University, SE-30118, Sweden, [online], 2005, Retrieved from the Internet: URL: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.62.6534&rep=rep1 &type=pdf, pp. 75-80.
Kollreider K., et al., “Non-Instrusive Liveness Detection by Face Images,” Image and Vision Computing, 2007, vol. 27 (3), pp. 233-244.
Kong S., et al. “Recent Advances in Visual and Infrared Face Recognition: A Review,” Journal of Computer Vision and Image Understanding, 2005, vol. 97 (1), pp. 103-135.
Li J., et al., “Live Face Detection Based on the Analysis of Fourier Spectra,” Biometric Technology for Human Identification, 2004, pp. 296-303.
Lubin, G., et al., “16 Heatmaps That Reveal Exactly Where People Look,” Business Insider, [online], May 21, 2012, [Cited: Nov. 1, 2012], Retrieved from the Internet: URL: http://www.businessinsider.com/eye-tracking-heatmaps-2012-5? pp=1, pp. 1-21.
Maatta J., et al., “Face Spoofing Detection From Single Images Using Micro-Texture Analysis,” Machine Vision Group, University of Oulu, Finland, Oulu, IEEE, [online], 2011, Retrieved from the Internet: URL: http://www.ee.oulu.fi/research/mvmp/mvg/files/pdf/131.pdf., pp. 1-7.
Marcialis G.L., et al. “First International Fingerprint Liveness Detection Competition-Livdet 2009,” Image Analysis and Processing-ICIAP, Springer Berlin Heidelberg, 2009. pp. 12-23.
Mobile Device Security Using Transient Authentication, IEEE Transactions on Mobile Computing, 2006, vol. 5 (11), pp. 1489-1502.
National Science & Technology Council's Subcommittee on Biometrics. Biometrics Glossary. 33 pages, Last updated Sep. 14, 2006. NSTC. http://www.biometrics.gov/documents/glossary.pdf.
Nielsen, Jakib. useit.com. Jakob Nielsen's Alertbox—Horizontal Attention Leans Left. [Online] Apr. 6, 2010. [Cited: Nov. 1, 2012.] 4 pages. http://www.useit.com/alertbox/horizontal-attention.html.
Nielsen, Jakob. useit.com. Jakob Nielsen's Alertbox—Scrolling and Attention. [Online] Mar. 22, 2010. [Cited: Nov. 1, 2012.] 6 pages. http://www.useit.com/alertbox/scrolling-attention.html.
Non-Final Office Action from U.S. Appl. No. 13/730,761 dated Feb. 27, 2014, 24 pages.
Communication pursuant to Rules 161(2) and 162 EPC for EP Application No. 15826364.0, dated Mar. 7, 2017, 2 pages.
Extended European Search Report for Application No. 13867269, dated Nov. 4, 2016, 10 pages.
Extended European Search Report for Application No. 14803988.6, dated Dec. 23, 2016, 10 pages.
Extended European Search Report from European Patent Application No. 14770682.4, dated Jan. 17, 2017, 14 pages.
Final Office Action from U.S. Appl. No. 14/066,273, dated Jan. 10, 2017, 24 pages.
Final Office Action from U.S. Appl. No. 14/145,466, dated Apr. 13, 2017, 61 pages.
Final Office Action from U.S. Appl. No. 14/218,611, dated Jan. 27, 2017, 14 pages.
Final Office Action from U.S. Appl. No. 14/218,692, dated Feb. 28, 2017, 27 pages.
Final Office Action from U.S. Appl. No. 14/218,743, dated Mar. 3, 2017, 67 pages.
Final Office Action from U.S. Appl. No. 14/448,747, dated Feb. 13, 2017, 74 pages.
Final Office Action from U.S. Appl. No. 14/859,328, dated Mar. 6, 2017, 26 pages.
International Preliminary Report on Patentability for Application No. PCT/US2015/028924 dated Nov. 17, 2016, 9 pages.
International Preliminary Report on Patentability for Application No. PCT/US2015/028927 dated Nov. 17, 2016, 10 pages.
Julian J., et al., “Biometric Enabled Portable Trusted Computing Platform,” Trust Security and Privacy in Computing and Communications (TRUSTCOM), 2011 IEEE 10th International Conference on Nov. 16, 2011, pp. 436-442, XP032086831, DOI:10.1109/TRUSTCOM.2011.56, ISBN: 978-1-4577-2135-9.
Kim et al., “Secure User Authentication based on the Trusted Platform for Mobile Devices,” EURASIP Journal on Wireless Communications and Networking, pp. 1-15.
Non-Final Office Action from U.S. Appl. No. 14/066,273 dated May 18, 2017, 46 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,504, dated Feb. 27, 2017, 12 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,575, dated May 4, 2017, 88 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,646, dated Mar. 27, 2017, 24 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,677, dated Feb. 10, 2017, 18 pages.
Non-final Office Action from U.S. Appl. No. 14/268,563, dated Apr. 21, 2017, 83 pages.
Notice of Allowance from U.S. Appl. No. 14/066,384, dated May 23, 2017, 50 pages.
Notice of Allowance from U.S. Appl. No. 14/218,551, dated Feb. 8, 2017, 56 pages.
Notice of Allowance from U.S. Appl. No. 14/218,551, dated Mar. 1, 2017, 7 pages.
Notice of Allowance from U.S. Appl. No. 14/268,733, dated Jan. 20, 2017, 62 pages.
Notice of Allowance from U.S. Appl. No. 14/448,868, dated Apr. 27, 2017, 62 pages.
Notice of Allowance from U.S. Appl. No. 14/448,868, dated Mar. 23, 2017, 57 pages.
Notice of Allowance from U.S. Appl. No. 14/487,992, dated Apr. 12, 2017, 14 pages.
Notice of Allowance from U.S. Appl. No. 14/487,992, dated Dec. 27, 2016, 28 pages.
Office Action from foreign counterpart Taiwan Patent Application No. 102148853, dated Feb. 17, 2017, 9 pages.
Partial Supplementary European Search Report from European Patent Application No. 14770682.4, dated Oct. 14, 2016, 8 pages.
TechTarget, What is network perimeter? Definition from WhatIs.com downloaded from http://searchnetworking.techtarget.com/definition/network-perimeter on Apr. 14, 2017, 5 pages.
Communication pursuant to Rules 70(2) and 70a(2) EPC for European Application No. 15786487.7, dated Nov. 9, 2017, 1 page.
Extended European Search Report for Application No. 15786487.7, dated Oct. 23, 2017, 8 pages.
Extended European Search Report for Application No. 15786796.1, dated Nov. 3, 2017, 9 pages.
Extended European Search Report for Application No. 15826660.1, dated Nov. 16, 2017, 9 pages.
Extended European Search Report for Application No. 15827334.2, dated Nov. 17, 2017, 8 pages.
Final Office Action from U.S. Appl. No. 14/066,273, dated Sep. 8, 2017, 30 pages.
Final Office Action from U.S. Appl. No. 14/218,504, dated Sep. 12, 2017, 83 pages.
Final Office Action from U.S. Appl. No. 14/218,575, dated Jul. 31, 2017, 42 pages.
Final Office Action from U.S. Appl. No. 14/218,646, dated Sep. 27, 2017, 81 pages.
Final Office Action from U.S. Appl. No. 14/218,677, dated Sep. 28, 2017, 16 pages.
Final Office Action from U.S. Appl. No. 14/218,743, dated Feb. 7, 2018, 27 pages.
Final Office Action from U.S. Appl. No. 14/268,563, dated Nov. 3, 2017, 46 pages.
Final Office Action from U.S. Appl. No. 15/595,460, dated Jan. 11, 2018, 19 pages.
First Office Action and Search Report from foreign counterpart China Patent Application No. 201380068869.3, dated Sep. 19, 2017, 17 pages.
First Office Action and Search Report from foreign counterpart China Patent Application No. 201480025959.9, dated Jul. 7, 2017, 10 pages.
International Preliminary Report on Patentability for Application No. PCT/US2015/042786, dated Feb. 9, 2017, 7 pages.
International Preliminary Report on Patentability for Application No. PCT/US2015/042799, dated Feb. 9, 2017, 7 pages.
International Preliminary Report on Patentability for Application No. PCT/US2015/042870, dated Feb. 9, 2017, 8 pages.
International Preliminary Report on Patentability for Application No. PCT/US2015/050348, dated Mar. 30, 2017, 7 pages.
International Preliminary Report on Patentability for Application No. PCT/US2015/42783, dated Feb. 9, 2017, 12 pages.
International Preliminary Report on Patentability for Application No. PCT/US2015/42827, dated Feb. 9, 2017, 6 pages.
International Search Report and Written Opinion for Application No. PCT/US2017/045534, dated Nov. 27, 2017, 14 pages.
Kim H.C., et al., “A Design of One-Time Password Mechanism Using Public Key Infrastructure,” Networked Computing and Advanced Information Management, 2008, NCM'08, 4th International Conference on IEEE, Sep. 2, 2008, pp. 18-24.
Martins R A., et al., “A Potpourri of Authentication Mechanisms the Mobile Device Way,” CISTI, Jan. 2013, pp. 843-848.
Non-Final Office Action from U.S. Appl. No. 14/218,611, dated Sep. 19, 2017, 76 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,677, dated Feb. 2, 2018, 25 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,692, dated Sep. 19, 2017, 37 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,743, dated Aug. 2, 2017, 24 pages.
Non-Final Office Action from U.S. Appl. No. 14/859,328, dated Jul. 14, 2017, 29 pages.
Non-Final Office Action from U.S. Appl. No. 15/396,452 dated Oct. 13, 2017, 76 pages.
Non-Final Office action from U.S. Appl. No. 15/595,460, dated Jul. 27, 2017, 09 pages.
Notice of Allowance from U.S. Appl. No. 14/066,273, dated Jan. 18, 2018, 26 pages.
Notice of Allowance from U.S. Appl. No. 14/066,384, dated Dec. 1, 2017, 23 pages.
Notice of Allowance from U.S. Appl. No. 14/066,384, dated Jul. 26, 2017, 20 pages.
Notice of Allowance from U.S. Appl. No. 14/218,551, dated Aug. 16, 2017, 24 pages.
Notice of Allowance from U.S. Appl. No. 14/218,551, dated Dec. 13, 2017, 13 pages.
Notice of Allowance from U.S. Appl. No. 14/448,747, dated Jun. 20, 2017, 14 pages.
Notice of Allowance from U.S. Appl. No. 14/448,868, dated Jun. 26, 2017, 14 pages.
Notice of Allowance from U.S. Appl. No. 14/448,868, dated Nov. 17, 2017, 15 pages.
Notice of Allowance from U.S. Appl. No. 14/487,992, dated Jul. 17, 2017, 8 pages.
Notice of Allowance from U.S. Appl. No. 14/487,992, dated Jun. 14, 2017, 14 pages.
Notice of Allowance from U.S. Appl. No. 14/859,328, dated Feb. 1, 2018, 18 pages.
Office Action and Search Report from foreign counterpart Chinese Patent Application No. 201480031042.X, dated Dec. 4, 2017, 20 pages.
Starnberger G., et al., “QR-TAN: Secure Mobile Transaction Authentication,” Availability, Reliability and Security, 2009, ARES'09, International Conference on IEEE, Mar. 16, 2009, pp. 578-585.
Uymatiao M.L.T., et al., “Time-based OTP authentication via secure tunnel (TOAST); A mobile TOTP scheme using TLS seed exchage and encrypted offline keystore,” 2014 4th IEEE International Conference on Information Science and Technology, IEEE, Apr. 26, 2014, pp. 225-229.
Corrected Notice of Allowance from U.S. Appl. No. 14/066,273, dated Feb. 8, 2018, 4 pages.
Extended European Search Report for Application No. 15826364.0, dated Feb. 20, 2018, 6 pages.
Extended European Search Report for Application No. 15827363.1, dated Feb. 22, 2018, 7 pages.
Extended European Search Report for Application No. 15828152.7, dated Feb. 20, 2018, 8 pages.
Final Office Action from U.S. Appl. No. 15/396,452, dated Feb. 27, 2018, 24 pages.
Monden A., et al., “Remote Authentication Protocol,” Multimedia, Distributed, Cooperative and Mobile Symposium (DICOM02007), Information Processing Society of Japan, Jun. 29, 2007, pp. 1322-1331.
Non-Final Office Action from U.S. Appl. No. 14/218,575, dated Mar. 8, 2018, 29 pages.
Non-Final Office Action from U.S. Appl. No. 14/218,646, dated Mar. 7, 2018, 32 pages.
Non-Final Office Action from U.S. Appl. No. 15/229,254, dated Feb. 14, 2018, 75 pages.
Notification of Reason for Rejection from foreign counterpart Japanese Patent Application No. 2016-505506, dated Feb. 13, 2018, 6 pages.
Office Action from foreign counterpart Japanese Patent Application No. 2015-550778, dated Feb. 7, 2018, 14 pages.
Final Office Action from U.S. Appl. No. 14/218,677, dated May 31, 2018, 16 pages.
Final Office Action from U.S. Appl. No. 14/218,611, dated May 3, 2018, 26 pages.
Final Office Action from U.S. Appl. No. 14/218,692, dated Apr. 17, 2018, 99 pages.
Non-Final Office Action from U.S. Appl. No. 14/145,466, dated May 11, 2018, 33 pages.
Non-Final Office Action from U.S. Appl. No. 15/881,522, dated Jun. 6, 2018, 87 pages.
Non-Final Office action from U.S. Appl. No. 15/595,460, dated May 3, 2018, 20 pages.
Notice of Allowance from U.S. Appl. No. 14/218,504, dated May 31, 2018, 95 pages.
Related Publications (1)
Number Date Country
20160248742 A1 Aug 2016 US