Patent ID: 8904178

Claim:
A method of directing a client to establish a secure connection with a server providing remote customer services across a network, the method comprising: (a) exchanging a server authentication public key, a client authentication public key, and a remote service unique identifier between the server and the client during a registration process, and transmitting from the client to the server a client information package encrypted with a temporary server public key provided by the server in response to initiating a connection between the client and the server, wherein the client information package includes the unique identifier and a client challenge information package encrypted with the server authentication public key to authenticate the client to the server and indicating a client session public key, wherein the unique identifier uniquely identifies a remote service customer, and decryption of the client information package by a temporary server private key and the client challenge information package by the server with a server authentication private key authenticates the client, and wherein said server authentication private key is associated with the server authentication public key and is retrieved based on the unique identifier serving as an index; (b) receiving at the client from the server a server information package encrypted with the client session public key indicated in the client information package and having the unique identifier and a server challenge information package encrypted with the client authentication public key and indicating a server session public key: (c) decrypting the received server information package utilizing a client session private key and decrypting and verifying the server challenge information package with a client authentication private key associated with the client authentication public key to authenticate the server, wherein decryption of the server challenge information package by the client with the client authentication private key authenticates the server; and (d) transmitting from the client to the server portion of the decrypted server challenge information utilizing the server session public key indicated in the received server information package to indicate decryption of the server challenge information and authenticity of the server and facilitate access by the client to the remote customer services.