IP Library Granted Patent US 10,581,839
Granted Patent B2
US 10,581,839 · App. 16/161,817 · Granted Mar 3, 2020

Secure communications with internet-enabled devices

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 10,581,839
App. No.
16/161,817
Granted
Mar 3, 2020
Kind
B2
Abstract

A network device allows inbound connections from external addresses to a computer on a local network while forbidding output connections from the computer to that external address unless preceded by an inbound connection therefrom. In some embodiments, the computer is allowed to accept inbound connections from external addresses but is not permitted to initiate outbound connections to other computers in the local network unless preceded by an inbound connection. In some embodiments, a request from an external address is processed by the network device by transmitting network information for the computer to the external address and temporarily changes network rules to allow connections from the external address. In some embodiments, if the computer attempts a disallowed connection, the connection attempt is routed through a proxy server by providing network data for the proxy server to the computer.

Claims (41)

1. A method for managing remote communication with a plurality of internet-enabled devices inside a local network, the method comprising:

(a) initiating, by a first device, a first authenticated connection over a computer network to a second device;

(b) receiving, by the first device from the second device over the first connection, one or more network identifiers received by the second device from a third device;

(c) changing, by the first device, one or more network management rules of the first device from blocking inbound connections to allowing one or more inbound connections from the one or more network identifiers of the third device referencing one or more network identifiers of the first device;

(d) after performing (c), establishing, by the first device, at least one connection from the third device to the first device using a first identifier provided to the third device by the second device for accessing the first device; and

(e) after performing (d), blocking the access from the third device to the first device by changing the one or more network management rules of the first device to blocking again one or more inbound connections to the first device from the one or more network identifiers of the third device in response to one or more predefined conditions.

2. The method of claim 1 , wherein the one or more network identifiers of the third device are selected from the group consisting of a source internet protocol (IP) address, a source port, a transport protocol, and a data pattern for the one or more inbound connections from the third device.

3. The method of claim 1 , wherein the one or more network identifiers of the first device are selected from the group consisting of a source internet protocol (IP) address, a source port, and a transport protocol.

4. The method of claim 1 , wherein allowing the one or more inbound connections from the third device comprises using a protocol selected from the group consisting of transport level security (TLS) protocol, hypertext transfer protocol (HTTP), web real time communications (WebRTC) protocol, and a protocol using interactive connectivity establishment (ICE) framework.

5. The method of claim 1 , wherein (b) receiving, by the first device from the second device over the first connection, one or more network identifiers for a third device is in response to authorization of the third device to connect to the first device, the authorization of the third device to connect to the first device being performed prior to the third device having any record of the first device.

6. The method of claim 1 , wherein the at least one predefined condition is selected from the group consisting of:

a number of opened connections to the third device exceeding a number of allowed connections;

a number of allowed connections to the third device unused following closing of one or more of the opened connections exceeding a first threshold; and

a time interval since the one or more inbound connections were allowed exceeding a second threshold.

7. The method of claim 1 , wherein the at least one predefined condition comprises the first device blocking one or more inbound connections from a different network address than included in the one or more network identifiers of the third device.

8. The method of claim 1 , wherein changing the one or more network management rules comprises changing firewall rules on the first device.

9. The method of claim 1 , wherein the second device is at least one of a virtual private network (VPN) server and a router.

10. The method of claim 1 , further comprising at least one of:

(a) transmitting the first identifier to the third device by the second device;

(b) transmitting the first identifier to the third device from an intermediary server, the intermediary server storing the first identifier before receiving, by the first device, the one or more network identifiers of the third device.

11. A system for managing remote communication with a plurality of internet-enabled devices inside a local network, the system comprising:

a first device connected to a computer network, wherein the first device includes a non-transitory computer readable medium storing a computer program having computer executable instructions for:

(a) initiating, by a first device, a first authenticated connection over a computer network to a second device;

(b) receiving, by the first device from the second device over the first connection, one or more network identifiers received by the second device from a third device;

(c) changing, by the first device, one or more network management rules of the first device from blocking inbound connections to allowing one or more inbound connections from the one or more network identifiers of the third device referencing one or more network identifiers of the first device;

(d) after performing (c), establishing, by the first device, at least one connection from the third device to the first device using a first identifier provided to the third device by the second device for accessing the first device; and

(e) after performing (d), blocking the access from the third device to the first device by changing the one or more network management rules of the first device to blocking again one or more inbound connections to the first device from the one or more network identifiers of the third device in response to one or more predefined conditions.

12. The system of claim 11 , wherein the one or more network identifiers of the third device are selected from the group consisting of a source internet protocol (IP) address, a source port, a transport protocol, and a data pattern for the one or more inbound connections from the third device.

13. The system of claim 11 , wherein the one or more network identifiers of the first device are selected from the group consisting of a source internet protocol (IP) address, a source port, and a transport protocol.

14. The system of claim 11 , wherein allowing the one or more inbound connections from the third device comprises using a protocol selected from the group consisting of transport level security (TLS) protocol, hypertext transfer protocol (HTTP), web real time communications (WebRTC) protocol, and a protocol using interactive connectivity establishment (ICE) framework.

15. The system of claim 11 , wherein (b) receiving, by the first device from the second device over the first connection, one or more network identifiers for a third device is in response to authorization of the third device to connect to the first device, the authorization of the third device to connect to the first device being performed prior to the third device having any record of the first device.

16. The system of claim 11 , wherein the at least one predefined condition is selected from the group consisting of:

a number of opened connections to the third device exceeding a number of allowed connections;

a number of allowed connections to the third device unused following closing of one or more of the opened connections exceeding a first threshold; and

a time interval since the one or more inbound connections were allowed exceeding a second threshold.

17. The system of claim 11 , wherein the at least one predefined condition comprises the first device blocking one or more inbound connections from a different network address than included in the one or more network identifiers of the third device.

18. The system of claim 11 , wherein changing the one or more network management rules comprises changing firewall rules on the first device.

19. The system of claim 11 , wherein the second device is at least one of a virtual private network (VPN) server and a router.

20. The system of claim 11 , wherein at least one of:

(f) the system further comprises a second device programmed to transmit the first identifier to the third device;

(g) the system further comprises an intermediary server programmed to transmit the first identifier to the third device, the intermediary server storing the first identifier before receiving, by the first device, the one or more network identifiers of the third device.

Assignments (8)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE SERIAL N. 15/597,036 PREVIOUSLY RECORDED AT REEL: 053245 FRAME: 0874. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 10, 2023
From: PANGO INC.
To: TWINGATE HOLDINGS INC.
Reel/Frame 063027/0894 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE SERIAL NO. 15/597,036 PREVIOUSLY RECORDED AT REEL: 053257 FRAME: 0637. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 10, 2023
From: TWINGATE HOLDINGS INC.
To: TWINGATE INC.
Reel/Frame 063141/0210 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2020
From: TWINGATE HOLDINGS INC.
To: TWINGATE INC.
Reel/Frame 053257/0637 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2020
From: PANGO INC.
To: TWINGATE HOLDINGS INC.
Reel/Frame 053245/0874 →
RELEASE OF SECURITY INTEREST Recorded Jul 1, 2020
From: PACIFIC WESTERN BANK
To: PANGO INC. (FORMERLY KNOWN AS ANCHORFREE INC.)
Reel/Frame 053116/0489 →
SECURITY INTEREST Recorded Jun 25, 2020
From: PANGO INC.
To: PACIFIC WESTERN BANK
Reel/Frame 053039/0417 →
CHANGE OF NAME Recorded Jan 10, 2020
From: ANCHORFREE INC.
To: PANGO INC.
Reel/Frame 051566/0680 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2018
From: LAPIDOUS, EUGENE; ARSITOV, ARTEM
To: ANCHORFREE INC.
Reel/Frame 047183/0876 →