IP Library Granted Patent US 8,819,427
Granted Patent B2
US 8,819,427 · App. 13/524,297 · Granted Aug 26, 2014

Device specific secure licensing

Inventors: Noah Tilman Rowles (Pasadena, CA); Daniel Harlan Hawks (University City, MO); Dennis Barry Bottrell (La Crescenta, CA)
Assignee: iolo technologies, LLC
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,819,427
App. No.
13/524,297
Granted
Aug 26, 2014
Kind
B2
Abstract

Device-specific secure software licensing techniques are disclosed. In various embodiments, a key/token pair associated with a client requesting license validation is received. It is determined whether the key/token pair matches an entry in a store of currently valid key/token pairs. An affirmative response is sent in the event the key/token pair matches a corresponding entry in the store of currently valid key/token pairs.

Claims (32)

1. A method of licensing software, comprising:

receiving, at a server, a key-token pair associated with a client requesting license validation in response to the client (a) obtaining a network connection or (b) determining that the license validation is due based on the current day and time;

determining that the key-token pair matches an entry in a store of currently valid key-token pairs;

generating a new token based at least in part on the determination that the key-token pair matches the entry;

replacing the entry with a new key-token pair including the new token; and

sending to the client an encrypted file that includes (a) the new token and (b) a next check time, wherein the next check time defines a particular day and a particular time by which a next validation request should be sent to the server.

2. The method of claim 1 , further comprising taking responsive action in the event the key-token pair does not match any entry in the store of currently valid key-token pairs.

3. The method of claim 1 , wherein the key comprises an activation key.

4. The method of claim 3 , further comprising receiving an activation request that includes the activation key; determining that activation is authorized; and generating and providing a response that includes the key-token pair.

5. The method of claim 1 , further comprising configuring the client to request validation opportunistically without at least initially interfering with access to or use of the licensed software.

6. The method of claim 1 , further comprising configuring the client to at least temporarily block or otherwise restrict access to or use of the licensed software in the event a successful validation has not been completed within a prescribed time.

7. The method of claim 2 , wherein the responsive action includes blocking or otherwise restricting access to and/or use of the licensed software at the client.

8. The method of claim 2 , wherein the responsive action includes blocking or otherwise restricting access to and/or use of the licensed software at clients associated with the key included in the key-token pair received from the client.

9. A license enforcement system, comprising:

a communication interface configured to receive a key-token pair associated with a client requesting license validation in response to the client (a) obtaining a network connection or (b) determining that the license validation is due based on the current day and time; and

a computer processor coupled to the communication interface and configured to:

determine that the key-token pair matches an entry in a store of currently valid key-token pairs;

generate a new token based at least in part on the determination that the key-token pair matches the entry;

replace the entry with a new key-token pair including the new token; and

send to the client an encrypted file that includes (a) the new token and (b) a next check time, wherein the next check time defines a particular day and a particular time by which a next validation request should be sent to the server.

10. The system of claim 9 , wherein the processor is further configured to take responsive action in the event the key-token pair does not match any entry in the store of currently valid key-token pairs.

11. The system of claim 10 , wherein the responsive action includes blocking or otherwise restricting access to and/or use of the licensed software at the client.

12. The system of claim 10 , wherein the responsive action includes blocking or otherwise restricting access to and/or use of the licensed software at clients associated with the key included in the key-token pair received from the client.

13. A computer program product embodied in a tangible, non-transitory computer readable storage medium and comprising computer instructions for:

receiving a key-token pair associated with a client requesting license validation in response to the client (a) obtaining a network connection or (b) determining that the license validation is due based on the current day and time;

determining that the key-token pair matches an entry in a store of currently valid key-token pairs;

generating a new token based at least in part on the determination that the key-token pair matches the entry;

replacing the entry with a new key-token pair including the new token; and

sending to the client an encrypted file that includes (a) the new token and (b) a next check time, wherein the next check time defines a particular day and a particular time by which a next validation request should be sent to the server.

14. The computer program product of claim 13 , further comprising computer instructions for taking responsive action in the event the key-token pair does not match any entry in the store of currently valid key-token pairs.

15. The method of claim 1 , further comprising configuring the client to at least temporarily block or otherwise restrict access to or use of the licensed software if a successful validation has not been completed prior to the next check time.

16. The system of claim 9 , further comprising configuring the client to at least temporarily block or otherwise restrict access to or use of the licensed software if a successful validation has not been completed prior to the next check time.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 7, 2020
From: IOLO TECHNOLOGIES LLC
To: REALDEFENSE LLC
Reel/Frame 053142/0044 →
SECURITY INTEREST Recorded Jul 1, 2020
From: REALDEFENSE LLC; REALDEFENSE HOLDINGS LLC
To: SUNFLOWER BANK, N.A.
Reel/Frame 053098/0927 →
SECURITY INTEREST Recorded Jun 30, 2020
From: REALDEFENSE, LLC
To: CORBEL STRUCTURED EQUITY PARTNERS, L.P., AS AGENT
Reel/Frame 053093/0589 →
IP SECURITY AGREEMENT - PATENTS Recorded Sep 30, 2013
From: IOLO TECHNOLOGIES, LLC
To: CERBERUS BUSINESS FINANCE, LLC, AS COLLATERAL AGENT
Reel/Frame 031315/0686 →
RELEASE OF SECURITY INTEREST IN PATENTS, TRADEMARKS AND COPYRIGHTS Recorded Sep 30, 2013
From: EAST WEST BANK
To: IOLO TECHNOLOGIES, LLC
Reel/Frame 031315/0585 →
SECURITY AGREEMENT Recorded Jul 16, 2013
From: IOLO TECHNOLOGIES, LLC
To: EAST WEST BANK
Reel/Frame 030872/0534 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2012
From: ROWLES, NOAH TILMAN; HAWKS, DANIEL HARLAN; BOTTRELL, DENNIS BARRY
To: IOLO TECHNOLOGIES, LLC
Reel/Frame 028840/0747 →
Continuity (1)
Related Publication 20130339731A1 · Dec 19, 2013