Patent ID: 8225384

Claim:
A non-transitory computer-readable storage medium with an executable program stored thereon for enabling an authentication system, wherein the system includes at least one item of stored user identification information received from a user and stored so as to be accessible by at least an authentication server, and further wherein the program includes code segments for instructing a microprocessor, the code segments comprising: a code segment for receiving notification that a client computer associated with the user is requesting access to a resource associated with a third-party server; a code segment for enabling the authentication server to generate a token seed upon the user requesting access to said resource associated with the third-party server; a code segment for enabling the authentication server to communicate the token seed to the client computer upon generation of the token seed; a code segment for enabling the authentication server to generate a first token from the token seed; a code segment for enabling the client computer to generate a second token from the token seed; a code segment for enabling the client computer to receive at least one item of live user identification information entered by the user; a code segment for enabling the client computer to encrypt, using the second token or information associated with the second token, the at least one item of live user identification information; a code segment for enabling receipt, by the authentication server and from the client computer, of the encrypted at least one item of live user identification information; a code segment for enabling the authentication server to decrypt the encrypted at least one item of live user identification information, wherein the decryption is performed by the authentication server using the first token; a code segment for enabling the authentication server to authenticate the decrypted at least one item of live user identification information with the stored user identification information; a code segment for enabling receipt, by the third-party server and from the client computer, of said at least the second token or information associated with the second token; a code segment for enabling receipt, by the authentication server and from the third-party server, of said at least the second token or information associated with the second token; a code segment for enabling the authentication server to verify the first token with the second token or information associated with the second token, wherein the first token is used by the authentication server to associate communications from the third-party server with a single transaction; and a code segment for enabling, upon the authentication server verifying the first token with the second token or information associated with the second token, receipt by the third-party server of information usable by the third-party server to allow the user access to the resource associated with the third-party server.