SECURE DATA EXCHANGE BETWEEN DATA PROCESSING SYSTEMS
A data transfer method performed at a proxy server includes intercepting a data request from a client computer that is directed to a target server, encrypting profile information, augmenting the data request by adding the encrypted profile information to the data request, and sending the augmented data request to the target server. A data transfer method that is performed at an information server includes receiving a data request from a proxy server, extracting profile information added to the data request by the proxy server, using the extracted profile information to generate a response, and sending the response to the proxy server.
1 . A data transfer method performed at a proxy server, the method comprising:
intercepting a data request from a client computer that is directed to a target server;
encrypting profile information;
augmenting the data request by adding the encrypted profile information to the data request; and
sending the augmented data request to the target server.
2 . The method of claim 1 further comprising:
receiving a reference token from the target server;
receiving a second data request from the client computer that is directed to the target server;
augmenting the second data request by adding the reference token to the second data request; and
sending the augmented second data request to the target server.
3 . The method of claim 2 wherein the reference token comprises a reference to the profile information sent to the target server.
4 . The method of claim 1 further comprising retrieving the profile information from a database based on an identity of a user.
5 . The method of claim 4 further comprising using the Internet Engineering Task Force IDENT protocol to determine the identity of the user.
6 . The method of claim 1 wherein encrypting profile information comprises determining a session key and using the session key as an encryption key.
7 . The method of claim 6 further comprising encrypting the session key, and wherein augmenting the data request further comprises adding the encrypted session key to the data request.
8 . The method of claim 7 wherein using the session key to encrypt the profile information comprises using the session key as a symmetric encryption algorithm encryption key, and wherein encrypting the session key comprises encrypting using a public key encryption algorithm and a public key associated with the target server.
9 . The method of claim 8 further comprising obtaining the public key from the target server.
10 . The method of claim 9 wherein obtaining the public key from the target server comprises sending a request to the target server to retrieve the public key.
11 . The method of claim 1 wherein the data request comprises a hypertext transfer protocol (HTTP) request comprising a HTTP field, the target server comprises a HTTP server, and the client computer comprises a web browser application.
12 . The method of claim 1 wherein the profile information comprises information associated with the client computer.
13 . A data transfer method performed at an information server, the method comprising:
receiving a data request from a proxy server;
extracting profile information added to the data request by the proxy server;
using the extracted profile information to generate a response; and
sending the response to the proxy server.
14 . The method of claim 13 wherein using the extracted profile information to generate a response comprises providing the extracted profile information to a web application and generating the response by processing the web application.
15 . The method of claim 14 wherein providing the extracted profile information comprises setting HTTP environment variables at a web server and wherein the web application comprises a common gateway interface script.
16 . The method of claim 13 further comprising storing the extracted profile information at the information server and associating a reference token with the stored profile information, and wherein the response further comprises the reference token.
17 . The method of claim 16 further comprising:
receiving from the proxy server a second data request comprising the reference token;
extracting the reference token from the second data request;
accessing the stored profile information based on the reference token; and
using the stored profile information to generate a response to the second data request.
18 . The method of claim 13 wherein extracting the profile information comprises decrypting the profile information.
19 . The method of claim 18 wherein the data request further comprises a session key added to the data request by the proxy server and wherein decrypting the profile information comprises using the session key to decrypt the profile information.
20 . The method of claim 19 further comprising decrypting the session key.
21 - 32 . (canceled)