Patent ID: 6711678
Filing Date: 2004-03-23
Classification: H04L,H04W

Abstract:
A method for secure network communication between a client and an internal server using a middleware server, the method comprising the steps of:using the middleware server to generate a server key; storing the server key in memory on the middleware server; pre-authenticating the client with the server key by securely copying the server key from the middleware server to the client; storing the server key in memory on the client; using the client to generate location information for identifying the location of the internal server; encrypting the location information using the server key stored in memory on the client to produce server key encrypted location information; sending the encrypted location information from the client to the middleware server; decrypting the server key encrypted location information using the server key stored in memory on the middleware server to produce the location information; using the middleware server to perform public key encryption for communication with the internal server; using the middleware server to request a connection with the internal server specified by the location information; using the internal server specified by the location information to generate a session key; sending the session key from the internal server to the middleware server; encrypting the session key using the server key stored in memory on the middleware server to produce a server key encrypted session key; sending the server key encrypted session key from the middleware server to the client; decrypting the server key encrypted session key using the server key stored in memory on the client to produce the session key; using the client, creating connection information for a connection between the client and the internal server; using the session key on the client to encrypt the connection information in order to produce session key encrypted connection information; using the middleware server, relaying the session key encrypted connection information from the client to the internal server; decrypting the session key encrypted connection information using the session key on the internal server in order to produce the connection information; completing a connection between the client and the internal server with the connection information; and using the middleware server, patching the connection through to the client from the internal server.