Method and apparatus for protecting information and privacy
First Claim
Patent Images
1. A method for supervising usage of software on a user device comprising the steps of:
- computing, by a supervising program within said user device, a first hash function value of a tag table;
sending, by said supervising program, a call-up message to a guardian center, said call up message comprising said first hash function value, an identifier value of said tag table, and a second hash function value of said tag table sent in a previous call-up message;
verifying, by said guardian center, that said hash function value of said tag table sent in said previous call-up message is a most recently stored value in a list of hash function values stored by said guardian center and associated with said identifier value of said tag table;
upon successful verification by said guardian center, appending said received first tag table hash function value to said list of hash function values associated with said identifier value of said tag table; and
sending, by said guardian center, a continuation message to said supervising program, said continuation message comprising a superfingerprint and a portion of said call-up message to detect and halt the duplication of a tag table on several user devices;
said superfingerprint comprising a list of hash functions resulting from hashes performed on software, a weight value W which defines how many times the supervising program should run, program P and conditions that the supervising program must hold in order to run P, and computer programs used by the supervising program to detect invalidly running software.
8 Assignments
0 Petitions
Accused Products
Abstract
A mechanism for the purchase of tags for copies of software ensures that identity of the purchaser of a tag table identifier value included in a purchased tag is not revealed. A mechanism of Call-Ups from the user device to a guardian center ensures that each tag table identifier value appears in only one user device and that the data included in a tag table and other data stored in the user device for the purpose of protecting vendor'"'"'s and owner'"'"'s rights in software, cannot be modified.
-
Citations
29 Claims
-
1. A method for supervising usage of software on a user device comprising the steps of:
-
computing, by a supervising program within said user device, a first hash function value of a tag table;
sending, by said supervising program, a call-up message to a guardian center, said call up message comprising said first hash function value, an identifier value of said tag table, and a second hash function value of said tag table sent in a previous call-up message;
verifying, by said guardian center, that said hash function value of said tag table sent in said previous call-up message is a most recently stored value in a list of hash function values stored by said guardian center and associated with said identifier value of said tag table;
upon successful verification by said guardian center, appending said received first tag table hash function value to said list of hash function values associated with said identifier value of said tag table; and
sending, by said guardian center, a continuation message to said supervising program, said continuation message comprising a superfingerprint and a portion of said call-up message to detect and halt the duplication of a tag table on several user devices;
said superfingerprint comprising a list of hash functions resulting from hashes performed on software, a weight value W which defines how many times the supervising program should run, program P and conditions that the supervising program must hold in order to run P, and computer programs used by the supervising program to detect invalidly running software. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
2. The method of clam 1 further comprising the steps of:
-
upon receiving said continuation message, verifying, by said supervising program, that a portion of said continuation message is equal to said corresponding portion sent in said call-up message; and
upon successful verification, by said supervising program, allowing by said supervising program continued use of said copy of software associated with said tag in said tag table on said user device. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
Specification