IP Library Granted Patent US 8,978,093
Granted Patent B1
US 8,978,093 · App. 13/463,668 · Granted Mar 10, 2015

Policy based trust of proxies

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,978,093
App. No.
13/463,668
Granted
Mar 10, 2015
Kind
B1
Abstract

A proxy connect component establishes a connection with a proxy, and provides the proxy with a name of a host with which to establish a connection. A negotiation component negotiates a tunnel directly with the host, and a security component classifies the tunnel as at least one of a private-tunnel or a public-tunnel based at least in part on a set of privacy policies. If the tunnel is classified as a public-tunnel, then the proxy is provided a set of security credentials to inspect and/or modify data passing through the tunnel, or a NULL cipher is employed. If the tunnel is classified as a private-tunnel, then the proxy is not provided the security credentials to inspect and/or modify data passing through the tunnel.

Claims (38)

1. A system, comprising:

a client comprising:

a memory storing computer executable components; and

a processor configured to execute the following computer executable components stored in the memory, the components comprising:

a proxy connect component that establishes a first connection between the client and a proxy, and provides the proxy with a name of a host with which to establish a second connection;

a negotiation component that negotiates directly with the host a tunnel between the client and the host through the proxy;

a security component that classifies the tunnel as at least one of a private-tunnel or a public-tunnel based at least in part on a set of privacy policies;

a credentials component configured to

in response to the to the tunnel being classified as a public-tunnel, provide a set of security credentials for the public-tunnel to the proxy or employ a NULL cipher for encryption of communications between the client and the host; and

in response to the tunnel being classified as a private-tunnel, encrypt communications between the client and the host through the proxy and does not provide a set of security credentials for the private-tunnel to the proxy; and

a bypass component that in response to the tunnel being classified as a private-tunnel and a determination that the proxy has closed the private-tunnel, bypasses the proxy, and establishes a connection between the client and the host.

2. The system of claim 1 , further comprising a policy component that at least one of receives a first subset of the privacy policies from a user or dynamically determines a second subset of the privacy policies.

3. The system of claim 2 , wherein the policy component dynamically determines the second subset of privacy policies based in part on at least one of a type of content to be transmitted, an identity of the proxy, a type of proxy usage, an identity of the host, or a type of service provided by the host.

4. The system of claim 1 , wherein the proxy connect component establishes a virtual connection with the proxy.

5. The system of claim 4 , wherein the proxy connect component establishes the virtual connection with the proxy over a pre-existing connection.

6. The system of claim 5 , wherein the virtual connection is employed for messages not associated with the tunnel.

7. A method, comprising:

establishing a first connection between a client and a proxy;

providing the proxy with a name of a host with which to establish a second connection between the proxy and the host;

directly negotiating with the host a tunnel between the client and the host through the proxy;

classifying the tunnel as at least one of a private-tunnel or a public-tunnel;

in response to the to the tunnel being classified as a public-tunnel, providing a set of security credentials for the public-tunnel to the proxy or employing a NULL cipher for encryption of communications between the client and the host;

in response to the tunnel being classified as a private-tunnel, encrypting communications between the client and the host through the proxy and not providing a set of security credentials for the private-tunnel to the proxy; and

in response to the tunnel being classified as a private-tunnel and a determination that the proxy has closed the private-tunnel, bypassing the proxy, and establishing a connection directly between the client and the host.

8. The method of claim 7 , wherein the establishing the first connection with the proxy, includes establishing a virtual connection with the proxy.

9. The method of claim 8 , wherein the establishing the virtual connection with the proxy, includes establishing the virtual connection over a pre-existing connection.

10. The method of claim 9 , further comprising employing the virtual connection for messages that are not associated with the tunnel.

11. A non-transitory computer-readable medium having instructions stored thereon that, in response to execution, cause a system including a processor to perform operations comprising:

establishing a first connection between a client and a proxy;

providing the proxy with a name of a host with which to establish a second connection;

directly negotiating with the host a tunnel between the client and the host through the proxy;

classifying the tunnel as at least one of a private-tunnel or a public-tunnel;

in response to the to the tunnel being classified as a public-tunnel, providing a set of security credentials for the public-tunnel to the proxy or employing a NULL cipher for encryption of communications between the client and the host;

in response to the tunnel being classified as a private-tunnel, encrypting communications between the client and the host through the proxy and not providing a set of security credentials for the private-tunnel to the proxy; and

in response to the tunnel being classified as a private-tunnel and a determination that the proxy has closed the private-tunnel, bypassing, by the system, the proxy, and establishing, by the system, a connection directly between the client and the host.

12. The non-transitory computer-readable medium of claim 11 , further comprising receiving at least one of a first subset of the privacy policies from a user or dynamically determines a second subset of the privacy policies.

13. The non-transitory computer-readable medium of claim 11 , further comprising determining the second subset of privacy policies based in part on at least one of a type of content to be transmitted, an identity of the proxy, a type of proxy usage, an identity of the host, or a type of service provided by the host.

14. The non-transitory computer-readable medium of claim 11 , wherein the establishing the first connection with the proxy, includes establishing a virtual connection with the proxy.

Assignments (2)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044334/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2012
From: PEON, ROBERTO
To: GOOGLE INC.
Reel/Frame 028153/0066 →