Patent ID: 8527758

Claim:
A method for facilitating user authentication by a server over a network, the method comprising: communicating with a user via a user device over the network; receiving an authentication request from the user via the user device over the network; analyzing the authentication request to obtain user information, wherein the user information includes a username; verifying that the server has a first and a second shared secret data related to the user, wherein a shared secrecy of the first and the second shared secret data is maintained between the user and the server, and wherein the first shared secret data includes biometric identification data related to the user stored in the user device and the second shared secret data includes data known by the user; generating user challenge data; sending the user challenge data to the user via the user device over the network; defining one or more relationships between the first shared secret data, the second shared secret data, and the user challenge data; determining intersection data for the one or more relationships; calculating first user hash data from the user challenge data and the intersection data; receiving second user hash data from the user via the user device over the network; and comparing the first user hash data with the second user hash data to authenticate user identity, wherein if user identity is authenticated, then continue communicating with the user via the user device over the network, and wherein if user identity is not authenticated, then abort communicating with the user via the user device over the network.