IP Library Granted Patent US 6,898,555
Granted Patent B2
US 6,898,555 · App. 10/617,756 · Granted May 24, 2005

Method for indicating the integrity of use-information of a computer program

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 6,898,555
App. No.
10/617,756
Granted
May 24, 2005
Kind
B2
Abstract

A method for indicating the integrity of the use-information of a program, comprising: providing a mechanism based on the state of a marker file (being one or more files dedicated especially for this purpose) for generating upon request an asymmetric (i.e. can be read by a user but cannot be altered by him) and unique or pseudo-unique value; instructing the mechanism to generate a value; sealing the use-information with the generated value; and indicating the integrity of the sealed data by the correspondence of the stored value with the current value returned by the mechanism. In a preferred embodiment of the invention, the information is stored in a secure manner (e.g. encrypted, digitally signed, and so forth). The invention may be implemented in any licensing model in which the use-information is important, like a Try before you Buy model, renting a program, and so forth.

Claims (59)

1. A method for indicating integrity of use-information of a program on a computer, comprising:

(a) providing a mechanism based on a state of a marker file accessible by the computer, for generating upon request an asymmetric, pseudo-unique value, said mechanism returning upon request said value that was most recently generated by said mechanism;

(b) instructing said mechanism to generate a said value;

(c) sealing the use-information with said generated value; and

(d) indicating the integrity of the use-information by a correspondence of said sealed value with a current value returned by said mechanism;

wherein said use-information is associated with an exhausting resource.

2. A method according to claim 1 , wherein said generated value is derived at least from a file ID of said marker file.

3. A method according to claim 1 , wherein said generated value is derived at least from a physical location of said marker file.

4. A method according to claim 3 , wherein said physical location of said marker file is derived from a number of a sector of said marker file.

5. A method according to claim 3 , wherein said physical location of said marker file is derived from a number of a cluster of said marker file.

6. A method according to claim 1 , wherein said sealing is carried out by an operation selected from the group comprising: storing said use-information with said current value returned by said mechanism in an encrypted form, digitally signing said use-information with said current value returned by said mechanism, and storing out of the reach of a hacker said use-information with said current value returned by said mechanism.

7. A method according to claim 1 , wherein said exhausting resource is based on at least one member selected from the group comprising: how many times the program is executed, an execution time of the program, a predefined period the program is allowed to run, and a trial period.

8. A method according to claim 1 , wherein said sealing of said use-information with the generated value is carried out at a stage selected from the group comprising: a start of an execution of the program, a termination of said execution of the program, during said execution of the program, while the program is idle, and periodically.

9. A method according to claim 1 , wherein said indicating the integrity of the use-information is carried out at a stage selected from the group comprising: a start of an execution of the program, a termination of said execution of the program, during said execution of the program, while the program is idle, and periodically.

10. A method according to claim 1 , wherein said sealed information is stored in a member of the group comprising: at least one file, at least one marker file, and at least one registry entry.

11. A method for indicating integrity of use-information of a program on a computer, comprising:

(a) providing a mechanism based on a state of a marker file accessible by the computer, for generating upon request an asymmetric, pseudo-unique value, said mechanism returning upon request said value that was most recently generated by said mechanism;

(b) instructing said mechanism to generate a said value;

(c) sealing the use-information with said generated value; and

(d) indicating the integrity of the use-information by a correspondence of said sealed value with a current value returned by said mechanism;

wherein an existing said marker file has a name, and wherein said generating a new value by said mechanism is carried out by steps including:

creating a new marker file with a different name from said existing marker file;

removing said existing marker file;

changing said name of said new marker file to said name of said removed marker file; and

retrieving an ID number of said new marker file.

12. A method for indicating integrity of use-information of a program on a computer, comprising:

(a) providing a mechanism based on a state of a marker file accessible by the computer, for generating upon request an asymmetric, pseudo-unique value, said mechanism returning upon request said value that was most recently generated by said mechanism;

(b) instructing said mechanism to generate a said value;

(c) sealing the use-information with said generated value; and

(d) indicating the integrity of the use-information by a correspondence of said sealed value with a current value returned by said mechanism;

wherein an existing said marker file has a name, and wherein said generating a new value by said mechanism is carried out by steps including:

creating a new marker file with a different name from said existing marker file;

removing said existing marker file;

changing said name of said new marker file to said name of said removed marker file; and

retrieving a parameter with relevance to a physical location of said new marker file.

13. A method for indicating integrity of use-information of a program on a computer, comprising:

(a) providing a mechanism based on a state of a marker file accessible by the computer, for generating upon request an asymmetric, pseudo-unique value, said mechanism returning upon request said value that was most recently generated by said mechanism;

(b) instructing said mechanism to generate a said value;

(c) sealing the use-information with said generated value; and

(d) indicating the integrity of the use-information by a correspondence of said sealed value with a current value returned by said mechanism;

wherein said generating of a value by said mechanism is carried out by the steps of:

removing an existing marker file; and

creating a new marker file; and

retrieving an ID number of said new marker file.

14. A method for indicating integrity of use-information of a program on a computer, comprising:

(a) providing a mechanism based on a state of a marker file accessible by the computer, for generating upon request an asymmetric, pseudo-unique value, said mechanism returning upon request said value that was most recently generated by said mechanism;

(b) instructing said mechanism to generate a said value;

(c) sealing the use-information with said generated value; and

(d) indicating the integrity of the use-information by a correspondence of said sealed value with a current value returned by said mechanism;

wherein said generating of a value by said mechanism is carried out by the steps of:

removing an existing marker file; and

creating a new marker file; and

retrieving a parameter with relevance to a physical location of said new marker file.

15. A method for indicating integrity of use-information of a program on a computer, comprising:

(a) providing a mechanism based on a state of a marker file accessible by the computer, for generating upon request an asymmetric, pseudo-unique value, said mechanism returning upon request said value that was most recently generated by said mechanism;

(b) instructing said mechanism to generate a said value;

(c) sealing the use-information with said generated value; and

(d) indicating the integrity of the use-information by a correspondence of said sealed value with a current value returned by said mechanism;

wherein said use-information is used in a license model in which usage information of the program is involved.

Assignments (7)
CHANGE OF NAME Recorded Sep 15, 2023
From: SAFENET DATA SECURITY (ISRAEL) LTD.
To: THALES DIS ISRAEL LTD
Reel/Frame 064914/0239 →
FIRST LIEN PATENT SECURITY AGREEMENT RELEASE Recorded Mar 12, 2014
From: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL AGENT
To: ALADDIN KNOWLEDGE SYSTEMS LTD
Reel/Frame 032437/0257 →
SECOND LIEN PATENT SECURITY AGREEMENT RELEASE Recorded Mar 12, 2014
From: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL AGENT
To: ALADDIN KNOWLEDGE SYSTEMS LTD
Reel/Frame 032437/0341 →
CHANGE OF NAME Recorded Feb 23, 2011
From: ALADDIN KNOWLEDGE SYSTEMS LTD.
To: SAFENET DATA SECURITY (ISRAEL) LTD.
Reel/Frame 025848/0923 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Aug 30, 2010
From: ALLADDIN KNOWLEDGE SYSTEMS LTD.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL AGENT
Reel/Frame 024900/0702 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Aug 27, 2010
From: ALLADDIN KNOWLEDGE SYSTEMS LTD.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS COLLATERAL AGENT
Reel/Frame 024892/0677 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 2, 2003
From: LEVI, ASAF; DARZIV, RON; MARGALIT, YANKI; MARGALIT, DANY
To: ALADDIN KNOWLEDGE SYSTEMS LTD.
Reel/Frame 014750/0776 →