Methods and apparatus for protecting information
First Claim
1. A system for supervising usage of software comprising:
- a software vendor producing instances of software;
a tag server producing a plurality of tags, one tag per instance of software, each tag uniquely identifying an instance of software with which it is associated;
a user device receiving and installing an instance of software and securely receiving a tag uniquely associated with that instance of software, the user device including a supervising program which detects attempts to use the instance of software and which verifies the authenticity of the tag associated with the instance of software before allowing use of the instance of software; and
an untagged instance of software used on the user device;
wherein the supervising program detects the use of the untagged instance of software and performs a fingerprinting process on the untagged instance of software and stores fingerprints resulting from the fingerprinting process on the user device.
5 Assignments
0 Petitions
Accused Products
Abstract
System, methods and apparatus are applicable to enable owners and vendors of software to protect their intellectual property and other rights in that software. The system also enables vendors or distributors of software to charge per-use for an instance of software. The system produces a unique, unforgeable, tag for every vendor supplied instance (copy) of specific software. Each user device is equipped with a supervising program that ensures, by use of the tag and other information, that no software instance will be used on the device in a manner infringing on the vendor, distributor, or software owner'"'"'s rights. When installing or using a vendor-supplied software instance, the supervising program verifies the associated tag and stores the tag. When installing or using untagged software, the supervising program fingerprints selected portions of the software and stores the fingerprints. Software is used on a user'"'"'s device through the supervising program which ensures proper use of the software. A vendor can submit a copy of infringing software to a guardian center which fingerprints appropriate portions of the infringing software. A user device'"'"'s (104) supervising program periodically calls up, or can be called up, by the guardian center. During call-up, the supervising program can securely sends to the guardian center information about the use of the software instances associated with tags and fingerprints. The guardian center detects unauthorized use of software by comparison of current call-up data with records of past call-ups involving the same tags, and/or by comparing call-up supplied fingerprints with fingerprints of infringing software stored by the guardian center. The guardian center completes the call-up by enabling continued use of properly used software instances and generating appropriate punitive actions upon detection of improperly used software instances on the calling user'"'"'s device. The data supplied by a supervising program during call-up is also employed by the guardian center to prepare data on usage by a user'"'"'s device of vendor or distributor supplied software instances, for pay-per-use or pay-per-view billing.
-
Citations
21 Claims
-
1. A system for supervising usage of software comprising:
-
a software vendor producing instances of software;
a tag server producing a plurality of tags, one tag per instance of software, each tag uniquely identifying an instance of software with which it is associated;
a user device receiving and installing an instance of software and securely receiving a tag uniquely associated with that instance of software, the user device including a supervising program which detects attempts to use the instance of software and which verifies the authenticity of the tag associated with the instance of software before allowing use of the instance of software; and
an untagged instance of software used on the user device;
wherein the supervising program detects the use of the untagged instance of software and performs a fingerprinting process on the untagged instance of software and stores fingerprints resulting from the fingerprinting process on the user device. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A user device comprising:
-
an input port receiving an instance of software and receiving a tag uniquely associated with that instance of software and receiving a request to use the instance of software;
a processor executing a supervising program, the supervising program detecting the request to use the instance of software and verifying the authenticity of the tag associated with the instance of software before allowing use of the instance of software by the user device; and
an untagged instance of software used on the user device;
wherein the supervising program detects the untagged instance of software and performs a fingerprinting process on the untagged instance of software and stores fingerprints resulting from the fingerprinting process in a fingerprint table on the user device. - View Dependent Claims (7, 8)
-
-
9. A system for supervising usage of software comprising:
-
a software vendor producing instances of software, a user device receiving and installing an instance of software, the user device including a supervising program, an untagged instance of software used on the user device;
wherein the supervising program detects the use of the untagged instance of software and performs a fingerprinting process on the untagged instance of software and stores fingerprints resulting from the fingerprinting process on the user device. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
Specification