IP Library Granted Patent US 8,225,102
Granted Patent B1
US 8,225,102 · App. 12/825,077 · Granted Jul 17, 2012

Local caching of one-time user passwords

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,225,102
App. No.
12/825,077
Granted
Jul 17, 2012
Kind
B1
Abstract

An intermediate network device includes a local caching module that caches user information from a remote server before a local user requests the information. In particular, the local caching module securely obtains and caches one-time passwords for a local user. The local caching device maintains separate sets of one-time passwords for each user. The local caching module may access the locally cached one-time passwords to authenticate a local user to a resource protected by a one-time password.

Claims (50)

1. A method comprising:

obtaining, with an intermediate network device, a sequence of one-time passwords generated for a local user from a remote one-time password server;

storing the sequence of one-time passwords in a local cache associated with the intermediate network device;

accessing the local cache in response to a network authentication request received from a client device associated with the local user to select a current one-time password from the sequence of one-time passwords in the local cache; and

determining, with the intermediate network device, whether to grant the network authentication request by comparing a one-time password specified by the network authentication request to the current one-time password selected from the sequence of one-time passwords.

2. The method of claim 1 , wherein accessing the local cache comprises accessing the local cache in response to the network authentication request only when a network connection from the intermediate network device to the one-time password server is unavailable.

3. The method of claim 1 , further comprising forwarding the network authentication request from the intermediate network device to the one-time password server when a network connection to the one-time password server is available.

4. The method of claim 1 , wherein obtaining one-time passwords comprises obtaining the sequence of one-time passwords from the remote one-time password server without sending a request for the sequence of one-time passwords.

5. The method of claim 1 , wherein obtaining one-time passwords comprises:

determining that a probability that the network authentication request from the local user will be received in the near future is above a threshold; and

obtaining the sequence of the one-time passwords from the remote one-time password server based on the determination.

6. The method of claim 5 , wherein determining that the probability that the network authentication request will be received in the near future is above the threshold comprises:

receiving data about activities of the local user; and

processing the data with a predictive behavior model to determine whether the probability that the local user will send the network authentication request in the near future is above the threshold.

7. The method of claim 6 , wherein the predictive behavior model comprises a set of condition-action rules.

8. The method of claim 1 , further comprising obtaining the sequence of one-time passwords for the local user from the remote one-time password server upon a request from an administrator.

9. The method of claim 1 , further comprising determining whether the current one-time password has expired and, when the current one-time password is determined to have expired, selecting a next one of the sequence of one-time passwords as the current one-time password.

10. The method of claim 1 , wherein obtaining the sequence of one-time passwords comprises maintaining a number of valid one-time passwords for the local user and requesting additional one-time passwords for the local user from the one-time password server when the number of valid one-time passwords in the cache for the local user has dropped below a threshold number.

11. The method of claim 1 , wherein the one-time passwords in the sequence expire at different respective times, and wherein obtaining the sequence of one-time passwords comprises determining a number of one-time passwords to obtain such that at least one of the sequence of one-time passwords will be valid for a predetermined period of time from a current time.

12. The method of claim 1 , wherein the one-time passwords in the sequence expire after a single use by the local user, and wherein obtaining the sequence of one-time passwords comprises obtaining a number of one-time passwords such that a predetermined number of authentication requests can be granted for the local user.

13. A system comprising:

a one-time password server that generates a sequence of one-time passwords for a local user;

a client device associated with the local user; and

an intermediate network device having a local caching module that obtains the sequence of one-time passwords from the one-time password server, stores the sequence of one-time passwords in a local cache, accesses the local cache in response to a network authentication request received from the client device associated with the local user to select a current one-time password from the sequence of one-time passwords in the local cache,

wherein the intermediate network device determines whether to grant the network authentication request by comparing a one-time password specified within the network authentication request to the current one-time password selected from the sequence of one-time passwords.

14. The system of claim 13 , wherein the local caching module accesses the local cache in response to the network authentication request only when a network connection from the intermediate network device to the one-time password server is unavailable.

15. The system of claim 13 , wherein the local caching module forwards the network authentication request to the one-time password server when a network connection from the intermediate network device to the one-time password server is available.

16. The system of claim 13 , wherein the one-time password server distributes the sequence of one-time passwords to the local caching module without a request for the sequence of one-time passwords from the local caching module.

17. The system of claim 13 , wherein the local caching module includes a data acquisition module that obtains the sequence of one-time passwords for the local user from the remote one-time password server based on a determination that a probability that a network authentication request from the local user will be received in the near future is above a threshold.

18. The system of claim 17 , wherein the local caching module stores a predictive behavior model for calculating whether the probability that the local user will send the network authentication request in the near future is above the threshold, and wherein when the predictive behavior model indicates that the probability that the local user will send the network authentication request in the near future is above the threshold, the data acquisition module sends a request to the remote one-time password server to send the sequence of one-time passwords associated with the local user.

19. The system of claim 18 , wherein the predictive behavior model comprises a set of condition-action rules.

20. The system of claim 18 , further comprising a cache-alert device that supplies information relevant to determining whether a probability that the network authentication request will be received in the near future is above a threshold.

21. The system of claim 13 ,

wherein the local caching module determines whether the current one-time password has expired and, when the local caching module determines that the current one-time password has expired, the local caching module is configured to select a next one of the sequence of one-time passwords as the current one-time password, and

wherein the local caching module includes a data acquisition element that maintains a number of valid one-time passwords for the local user and retrieves additional one-time passwords for the local user from the one-time password server when the number of valid cached one-time passwords for the local user has dropped below a threshold number.

22. An intermediate network device comprising:

a processor;

a data acquisition element executing on the processor that obtains a sequence of one-time passwords generated for a local user from a one-time password server;

a local cache that stores the sequence of one-time passwords; and

an authentication element executing on the processor that accesses the local cache in response to a network authentication request received from a client device associated with a local user to select a current one-time password from the sequence of one-time passwords in the local cache,

wherein the authentication element determines whether to grant the network authentication request by comparing a one-time password specified within the network authentication request to the current one-time password selected from the sequence of one-time passwords.

23. The intermediate network device of claim 22 , wherein the authentication element accesses the local cache in response to the network authentication request only when a network connection from the network device to the one-time password server is unavailable.

24. The intermediate network device of claim 22 , wherein the local caching module forwards the network authentication request to the one-time password server when a network connection from the network device to the one-time password server is available.

25. The intermediate network device of claim 22 , wherein the data acquisition element obtains the sequence of one-time passwords for the local user from the remote one-time password server based on a determination that a probability that the network authentication request from the local user will be received in the near future is above a threshold.

26. The intermediate network device of claim 22 , wherein the data acquisition element maintains a number of valid one-time passwords for the local user and retrieves additional one-time passwords for the local user from the one-time password server when the number of valid cached one-time passwords for the local user has dropped below a threshold number.

27. A system comprising:

a central office network comprising a one-time password server configured to generate a sequence of one-time passwords for a local user; and

a local office network comprising a client device associated with the local user and an intermediate network device connected to the client device and connected to the one-time password server, wherein the intermediate network device is configured to obtain the sequence of one-time passwords from the one-time password server, to store the sequence of one-time passwords in a local cache of the intermediate network device, to receive a network authentication request from the client device, and, in response to the network authentication request, to determine whether a connection between the intermediate network device and the one-time password server is available,

wherein the intermediate network device is configured to send the network connection request to the one-time password server without accessing the local cache when the connection is determined to be available, and

wherein the intermediate network device is configured to select a current one-time password from the sequence of one-time passwords in the local cache when the connection is determined not to be available and to determine whether to grant the network authentication request by comparing a one-time password specified within the network authentication request to the current one-time password selected from the sequence of one-time passwords.

Assignments (12)
NOTICE OF SUCCESSION OF AGENCY FOR SECURITY INTEREST AT REEL/FRAME 054665/0873 Recorded Apr 29, 2025
From: BANK OF AMERICA, N.A., AS RESIGNING AGENT
To: ALTER DOMUS (US) LLC, AS SUCCESSOR AGENT
Reel/Frame 071123/0386 →
SECURITY INTEREST Recorded Dec 9, 2020
From: CELLSEC, INC.; PULSE SECURE, LLC; INVANTI, INC.; MOBILEIRON, INC.; INVANTI US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 054665/0873 →
SECURITY INTEREST Recorded Dec 9, 2020
From: CELLSEC, INC.; PULSE SECURE, LLC; IVANTI, INC.; MOBILEIRON, INC.; IVANTI US LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 054665/0062 →
RELEASE OF SECURITY INTEREST : RECORDED AT REEL/FRAME - 053638-0220 Recorded Dec 1, 2020
From: KKR LOAN ADMINISTRATION SERVICES LLC
To: PULSE SECURE, LLC
Reel/Frame 054559/0368 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 042380/0859 Recorded Aug 29, 2020
From: CERBERUS BUSINESS FINANCE, LLC, AS AGENT
To: PULSE SECURE, LLC
Reel/Frame 053638/0259 →
SECURITY INTEREST Recorded Aug 29, 2020
From: PULSE SECURE, LLC
To: KKR LOAN ADMINISTRATION SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 053638/0220 →
RELEASE OF SECURITY INTEREST Recorded Jul 21, 2020
From: JUNIPER NETWORKS, INC.
To: PULSE SECURE, LLC; SMOBILE SYSTEMS, INC.
Reel/Frame 053271/0307 →
GRANT OF SECURITY INTEREST PATENTS Recorded May 1, 2017
From: PULSE SECURE, LLC
To: CERBERUS BUSINESS FINANCE, LLC, AS COLLATERAL AGENT
Reel/Frame 042380/0859 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL 037338, FRAME 0408 Recorded May 1, 2017
From: US BANK NATIONAL ASSOCIATION
To: PULSE SECURE, LLC
Reel/Frame 042381/0568 →
SECURITY INTEREST Recorded Dec 21, 2015
From: PULSE SECURE, LLC
To: U.S BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037338/0408 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2014
From: JUNIPER NETWORKS, INC.
To: PULSE SECURE, LLC
Reel/Frame 034036/0904 →
SECURITY INTEREST Recorded Oct 23, 2014
From: PULSE SECURE, LLC; SMOBILE SYSTEMS, INC.
To: JUNIPER NETWORKS, INC.
Reel/Frame 034037/0526 →