IP Library › Granted Patent US 8,806,609
Granted Patent B2
US 8,806,609 · App. 13/043,222 · Granted Aug 12, 2014

Security for remote access VPN

Inventors: Philip John Steuart Gladstone (Carlisle, MA); David A. McGrew (Poolesville, MD)
Assignee: Cisco Technology, Inc.
H04L9/085H04L63/0853H04L63/06H04L63/0272
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,806,609
App. No.
13/043,222
Filed
Mar 8, 2011
Granted
Aug 12, 2014
Kind
B2
Art Unit
2431
USPC
726/15
Abstract

Techniques are disclosed for improving security in virtual private network. In one embodiment, key information is generated for a virtual private network (VPN) connection between a first device and a second device. A plurality of shares is then generated based on the key information. A first set of one or more shares is stored on a dongle that is paired to the first device. A second set of one or more shares is stored on the first device. In response to a request to resume the VPN connection, the first set of shares is retrieved from the dongle. The key information is reconstructed based on the first set of shares and the second set of shares. The reconstructed key information may then be used to resume the VPN connection.

Claims (58)

1. A method comprising;

generating, at a first device, key information for a virtual private network (VPN) connection between the first device and a second device;

wherein the key information comprises one or more session keys for a VPN session associated with the VPN connection;

generating, at the first device, a plurality of shares from the key information;

wherein the plurality of shares includes a first set of one or more shares and a second set of one or more shares;

wherein the first set of one or more shares is different than the second set of one or more shares;

causing the first set of one or more shares to be stored on a dongle that is paired to the first device;

causing the second set of one or more shares to be stored on the first device;

reconstructing the one or more session keys for the VPN session associated with the VPN connection using the first set of one or more shares and the second set of one or more shares;

resuming the VPN session based at least in part on the one or more session keys that were reconstructed using the first set of one or more shares and the second set of one or more shares.

2. The method of claim 1 , further comprising, in response to a request to establish the VPN connection between the first device and the second device: retrieving the first set of one or more shares from the dongle; establishing the VPN connection between the first device and the second device based on the first set of one or more shares and the second set of one or more shares.

3. The method of claim 1 , wherein the key information comprises one or more authentication keys associated with the VPN connection, the method further comprising reconstructing the one or more authentication keys using the first set of one or more shares and the second set of one or more shares.

4. The method of claim 1 , further comprising in response to a request to establish the VPN connection between the first device and the second device: determining that the first set of one or more shares transferred to the dongle is not available; in response to determining that the first set of one or more shares transferred to the dongle is not available, requiring that a user of the first device provide authentication information to reauthenticate the first device for the VPN connection.

5. The method of claim 4 , wherein determining that the first set of one or more shares transferred to the dongle is not available comprises determining that the dongle is not paired to the first device.

6. The method of claim 4 , wherein the first set of one or more shares stored on the dongle is associated with a timeout value and determining that the first set of one or more shares transferred to the dongle is not available comprises determining that a time associated with the first set of one or more shares has exceeded the timeout value.

7. The method of claim 1 , wherein each share of the plurality of shares is stored on a different storage device including the first device and the dongle, the method further comprising: in response to a request to establish the VPN connection between the first device and the second device:

determining whether a minimum threshold of shares is available for retrieval by the first device;

if the minimum threshold of shares is available for retrieval by the first device, retrieving the minimum threshold of shares and using the retrieved shares to establish the VPN connection between the first device and the second device;

if the minimum threshold of shares is not available for retrieval by the first device, requiring that a user of the first device provide authentication information to reauthenticate the first device for the VPN connection.

8. The method of claim 1 , wherein the first set of one or more shares comprises a random encryption key generated by the first device and wherein the second set of one or more shares comprises ciphertext generated by applying the random encryption key to the key information for the VPN connection.

9. The method of claim 1 , wherein the dongle is at least one of a Bluetooth device that is paired to the first device over a wireless Bluetooth connection or a Universal Serial Bus (USB) device that is paired to the first device over physical connection to a USB port physically coupled to the first device.

10. A non-transitory computer-readable medium storing instructions, which, when executed by one or more processors, cause performance of;

generating, at a first device, key information for a virtual private network (VPN) connection between the first device and a second device;

wherein the key information comprises one or more session keys for a VPN session associated with the VPN connection;

generating, at the first device, a plurality of shares from the key information;

wherein the plurality of shares includes a first set of one or more shares and a second set of one or more shares;

wherein the first set of one or more shares is different than the second set of one or more shares;

causing the first set of one or more shares to be stored on a dongle that is paired to the first device;

causing the second set of one or more shares to be stored on the first device;

reconstructing the one or more session keys for the VPN session associated with the VPN connection using the first set of one or more shares and the second set of one or more shares;

resuming the VPN session based at least in part on the one or more session keys that were reconstructed using the first set of one or more shares and the second set of one or more shares.

11. The non-transitory computer-readable medium of claim 10 , further comprising instructions, which, when executed by the one or more processors, cause performance of: in response to a request to establish the VPN connection between the first device and the second device: retrieving the first set of one or more shares from the dongle; establishing the VPN connection between the first device and the second device based on the first set of one or more shares and the second set of one or more shares.

12. The non-transitory computer-readable medium of claim 10 , wherein the key information comprises one or more authentication keys associated with the VPN connection the non-transitory computer readable medium further storing instructing, which, when executed by the one or more processors cause performance of: reconstructing the one or more authentication keys using the first set of one or more shares and the second set of one or more shares.

13. The non-transitory computer-readable medium of claim 10 , further comprising instructions, which, when executed by the one or more processors, cause performance of:

in response to a request to establish the VPN connection between the first device and the second device:

determining that the first set of one or more shares transferred to the dongle is not available;

in response to determining that the first set of one or more shares transferred to the dongle is not available, requiring that a user of the first device provide authentication information to reauthenticate the first device for the VPN connection.

14. The non-transitory computer-readable medium of claim 13 , wherein determining that the first set of one or more shares transferred to the dongle is not available comprises determining that the dongle is not paired to the first device.

15. The non-transitory computer-readable medium of claim 13 , wherein the first set of one or more shares stored on the dongle is associated with a timeout value and determining that the first set of one or more shares transferred to the dongle is not available comprises determining that a time associated with the first set of one or more shares has exceeded the timeout value.

16. The non-transitory computer-readable medium of claim 10 , wherein each share of the plurality of shares is stored on a different storage device including the first device and the dongle, the non-transitory computer-readable medium further comprising instructions, which, when executed by the one or more processors, cause performance of:

in response to a request to establish the VPN connection between the first device and the second device:

determining whether a minimum threshold of shares is available for retrieval by the first device;

if the minimum threshold of shares is available for retrieval by the first device, retrieving the minimum threshold of shares and using the retrieved shares to establish the VPN connection between the first device and the second device;

if the minimum threshold of shares is not available for retrieval by the first device, requiring that a user of the first device provide authentication information to reauthenticate the first device for the VPN connection.

17. The non-transitory computer-readable medium of claim 10 , wherein the first set of one or more shares comprises a random encryption key generated by the first device and wherein the second set of one or more shares comprises ciphertext generated by applying the random encryption key to the key information for the VPN connection.

18. An apparatus comprising;

one or more hardware processors;

one or more stored sequences of instructions which, when executed by the one or more hardware processors, cause the apparatus to perform:

generating, at the apparatus, key information for a virtual private network (VPN) connection between the apparatus and a second device;

wherein the key information comprises one or more session keys for a VPN session associated with the VPN connection;

generating, at the apparatus, a plurality of shares from the key information;

wherein the plurality of shares includes a first set of one or more shares and a second set of one or more shares;

wherein the first set of one or more shares is different than the second set of one or more shares;

causing the first set of one or more shares to be stored on a dongle that is paired to the apparatus;

causing the second set of one or more shares to be stored on the apparatus;

reconstructing the one or more session keys for the VPN session associated with the VPN connection using the first set of one or more shares and the second set of one or more shares;

resuming the VPN session based at least in part on the one or more session keys that were reconstructed using the set of one or more shares and the second set of one or more shares.

19. The apparatus of claim 18 , further comprising instructions, which, when executed by the one or more hardware processors, cause the apparatus to perform, in response to a request to establish the VPN connection between the apparatus and the second device: retrieving the first set of one or more shares from the dongle; establishing the VPN connection between the apparatus and the second device based on the first set of one or more shares and the second set of one or more shares.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2011
From: GLADSTONE, PHILLIP JOHN STEUART; MCGREW, DAVID A
To: CISCO TECHNOLOGY, INC.
Reel/Frame 025991/0717 →
Continuity (1)
Related Publication 20120233674A1 · Sep 13, 2012