IP Library Granted Patent US 9,276,933
Granted Patent B2
US 9,276,933 · App. 14/137,630 · Granted Mar 1, 2016

Security token caching in centralized authentication systems

Inventor: Swee Huat Sng (Torrance, CA)
Assignee: Sharp Laboratories of America, Inc.
H04L63/0884G06F12/121G06F21/33G06F21/335H04L9/321H04L9/3202H04L9/3213H04L9/3226H04L63/0815H04L63/0838H04L63/0846
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 9,276,933
App. No.
14/137,630
Granted
Mar 1, 2016
Kind
B2
Abstract

Methods, systems, and devices for determining a time-expiry algorithm based on a cached and verified security token, a disposition of the security token, and a cache table, where the disposition of the security token is based on whether the received security token is a single-use token or a multiple-use token and where the cache table is selected from two separate cache tables.

Claims (61)

1. A method comprising:

receiving, by a client device, a security token from an authentication server based on user credentials submitted to the authentication server;

sending, by the client device, the security token to an application server;

verifying, by the application server, the security token with the authentication server and determining whether to allow or deny access to the client device based on the security token verification;

determining, by the application server, a disposition of the security token based on whether the received security token is a single-use token or a multiple-use token;

associating, by the application server, the security token with a corresponding cache table based on the determined disposition of the token;

caching, by the application server, the security token based on the associated cache table;

determining a time-expiry algorithm for the cache table based on the cached security token, the disposition of the security token, and associated cache table, and wherein the time-expiry algorithm determines a timeout interval for the security token and the timeout interval is longer for a single-use token than the timeout interval for a multiple-use token; and

managing the cache table based on the determination of the time-expiry algorithm.

2. The method of claim 1 , wherein the security token is a token string and determined based on an authentication of the user credentials.

3. The method of claim 1 further comprising:

selecting the associated cache table for caching the security token; and

storing the security token in the cache table for future retrieval.

4. The method of claim 1 wherein the timeout interval for the security token having a multiple-use token disposition is based on an absolute algorithm.

5. The method of claim 1 , wherein a number of entries for the cache table is determined based on an expected number of concurrent active users in the application server.

6. The method of claim 1 , wherein the cache table is selected from two separate cache tables.

7. The method of claim 6 , wherein the two separate cache tables store a different number of entries from each other.

8. The method of claim 6 , wherein the two separate cache tables are unique from each other.

9. The method of claim 6 , wherein the two separate cache tables comprise a first cache table for storing single-use tokens and a second cache table for storing multiple-use tokens.

10. The method of claim 1 further comprising:

determining, by the application server, a timeout interval for the security token based on the determined time-expiry algorithm.

11. A device comprising:

a processor and addressable memory, the processor configured to:

receive a security token from a client device;

verify the security token with an authentication server and determine whether to allow or deny access to the client device based on the security token verification;

determine a disposition of the security token based on whether the received security token is a single-use token or a multiple-use token;

associate the security token with a corresponding cache table based on the disposition of the token, wherein the cache table is selected from two separate cache tables;

cache the security token based on the associated cache table;

determine a time-expiry algorithm based on the cached security token, the disposition of the security token, and associated cache table, wherein the time-expiry algorithm determines a timeout interval for the security token and wherein the timeout interval is longer for a single-use token than the timeout interval for a multiple-use token; and

manage the cache table based on the determined time-expiry algorithm.

12. The device of claim 11 , wherein the processor is further configured to:

save the security token to the cache table; and

retrieve the security token from the cache table.

13. The device of claim 11 , wherein the received security token from the client device has already been authenticated by the authentication server.

14. A centralized authentication system for security token caching, the centralized authentication system comprising:

a first computing device, wherein the first computing device comprises a processor and an addressable memory, the processor configured to:

transmit a set of one or more user credentials associated with a user to a second computing device;

receive a security token from the second computing device based on the one or more user credentials being authenticated successfully; and

send the security token to a third computing device;

the second computing device, wherein the second computing device comprising a processor and an addressable memory, the processor configured to:

receive from the first computing device the set of one or more user credentials associated with the user;

authenticate the received set of one or more user credentials; and

validate a received security token of the user in response to a verification request from the third computing device;

the third computing device, wherein the third computing device comprises a processor and an addressable memory, the processor configured to:

verify the security token with the second computing device;

determine whether to allow or deny access to the first computing device based on the security token verification;

determine a disposition of the security token based on whether the received security token is a single-use token or a multiple-use token;

associate the security token with a corresponding cache table based on the disposition of the token, wherein the cache table is selected from two separate cache tables and wherein the two separate cache tables comprise a first cache table for storing single-use tokens and a second cache table for storing multiple-use tokens;

cache the security token based on the associated cache table;

determine a time-expiry algorithm based on the cached security token, the disposition of the security token, and associated cache table; and

manage the cache table based on the determined time-expiry algorithm.

15. The system of claim 14 , wherein the first computing device is a client computing device, the second computing device is an authentication server, and the third computing device is an application server.

16. A method comprising:

receiving, by a client device, a security token from an authentication server based on user credentials submitted to the authentication server;

sending, by the client device, the security token to an application server;

verifying, by the application server, the security token with the authentication server and determining whether to allow or deny access to the client device based on the security token verification;

determining, by the application server, a disposition of the security token based on whether the received security token is a single-use token or a multiple-use token;

associating, by the application server, the security token with a corresponding cache table based on the determined disposition of the token, wherein the cache table is selected from two separate cache tables and wherein the two separate cache tables comprise a first cache table for storing single-use tokens and a second cache table for storing multiple-use tokens;

caching, by the application server, the security token based on the associated cache table; and

determining a time-expiry algorithm for the cache table based on the cached security token, the disposition of the security token, and associated cache table; and

managing the cache table based on the determined time-expiry algorithm.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2016
From: SHARP LABORATORIES OF AMERICA, INC.
To: SHARP KABUSHIKI KAISHA
Reel/Frame 037923/0546 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2016
From: SNG, SWEE HUAT
To: SHARP LABORATORIES OF AMERICA, INC.
Reel/Frame 037562/0726 →
Continuity (1)
Related Publication 20150180868A1 · Jun 25, 2015