Method of restricting software operation within a license limitation
DC CAFCFirst Claim
Patent Images
1. A method of restricting software operation within a license for use with a computer including an erasable, non-volatile memory area of a BIOS of the computer, and a volatile memory area;
- the method comprising the steps of;
selecting a program residing in the volatile memory, using an agent to set up a verification structure in the erasable, non-volatile memory of the BIOS, the verification structure accommodating data that includes at least one license record, verifying the program using at least the verification structure from the erasable non-volatile memory of the BIOS, and acting on the program according to the verification.
4 Assignments
Litigations
10 Petitions
Reexaminations
Accused Products
Abstract
A method of restricting software operation within a license limitation that is applicable for a computer having a first non-volatile memory area, a second non-volatile memory area, and a volatile memory area. The method includes the steps of selecting a program residing in the volatile memory, setting up a verification structure in the non-volatile memories, verifying the program using the structure, and acting on the program according to the verification.
-
Citations
19 Claims
-
1. A method of restricting software operation within a license for use with a computer including an erasable, non-volatile memory area of a BIOS of the computer, and a volatile memory area;
- the method comprising the steps of;
selecting a program residing in the volatile memory, using an agent to set up a verification structure in the erasable, non-volatile memory of the BIOS, the verification structure accommodating data that includes at least one license record, verifying the program using at least the verification structure from the erasable non-volatile memory of the BIOS, and acting on the program according to the verification. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
establishing a license authentication bureau.
- the method comprising the steps of;
-
3. A method according to claim 2, wherein setting up a verification structure further comprising the steps of:
- establishing, between the computer and the bureau, a two-way data-communications linkage;
transferring, from the computer to the bureau, a request-for-license including an identification of the computer and the license-record'"'"'s contents from the selected program;
forming an encrypted license-record at the bureau by encrypting parts of the request-for-license using part of the identification as an encryption key;
transferring, from the bureau to the computer, the encrypted license-record; and
storing the encrypted license record in the erasable non-volatile memory area of the BIOS.
- establishing, between the computer and the bureau, a two-way data-communications linkage;
-
4. A method according to claim 2, wherein verifying the program further comprises the steps of:
- establishing, between the computer and the bureau, a two-way data-communications linkage;
transferring, from the computer to the bureau, a request-for-license verification including an identification of the computer, an encrypted license-record for the selected program from the erasable, non-volatile memory area of the BIOS, and the program'"'"'s license-record;
enabling the comparing at the bureau; and
transferring, from the bureau to the computer, the result of the comparing.
- establishing, between the computer and the bureau, a two-way data-communications linkage;
-
5. A method according to claim 3 wherein the identification of the computer includes the unique key.
-
6. A method according to claim 1 wherein selecting a program includes the steps of:
- establishing a licensed-software-program in the volatile memory of the computer wherein said licensed-software-program includes contents used to form the license-record.
-
7. A method according to claim 6 wherein using an agent to set up the verification structure includes the steps of:
- establishing or certifying the existence of a pseudo-unique key in a first non-volatile memory area of the computer; and
establishing at least one license-record location in the first nonvolatile memory area or in the erasable, non-volatile memory area of the BIOS.
- establishing or certifying the existence of a pseudo-unique key in a first non-volatile memory area of the computer; and
-
8. A method according to claim 6 wherein establishing a license-record includes the steps of:
- forming a license-record by encrypting of the contents used to form a license-record with other predetermined data contents, using the key; and
establishing the encrypted license-record in one of the at least one established license-record locations.
- forming a license-record by encrypting of the contents used to form a license-record with other predetermined data contents, using the key; and
-
9. A method according to claim 7 wherein verifying the program includes the steps of:
- encrypting the licensed-software-program'"'"'s license-record contents from the volatile memory area or decrypting the license-record in the erasable, non-volatile memory area of the BIOS, using the pseudo-unique key; and
comparing the encrypted licenses-software-program'"'"'s license-record contents with the encrypted license-record in the erasable, non-volatile memory area of the BIOS, or comparing the license-software-program'"'"'s license-record contents with the decrypted license-record in erasable non-volatile memory area of the BIOS.
- encrypting the licensed-software-program'"'"'s license-record contents from the volatile memory area or decrypting the license-record in the erasable, non-volatile memory area of the BIOS, using the pseudo-unique key; and
-
10. A method according to claim 9 wherein acting on the program includes the step:
- restricting the program'"'"'s operation with predetermined limitations if the comparing yields non-unity or insufficiency.
-
11. A method according to claim 1 wherein the volatile memory is a RAM.
-
12. The method of claim 1, wherein a pseudo-unique key is stored in the non-volatile memory of the BIOS.
-
13. The method of claim 1, wherein a unique key is stored in a first non-volatile memory area of the computer.
-
14. The method according claim 13, wherein the step of using the agent to set up the verification record, including the license record, includes encrypting a license record data in the program using at least the unique key.
-
15. The method according to claim 14, wherein the verification comprises:
-
extracting the license record from the software program;
encrypting the license record using the unique key stored in the first non-volatile memory area of the computer to form second encrypted license information; and
comparing the encrypted license information stored in the erasable, non-volatile memory area of the BIOS of the computer with the second encrypted license information.
-
-
16. The method according to claim 13, wherein the step of verifying the program includes a decrypting the license record data accommodated in the erasable second non-volatile memory area of the BIOS using at least the unique key.
-
17. The method according to claim 13, wherein the step of verifying the program includes encrypting the license record that is accommodated in the program using at least the unique key.
-
18. A method for accessing an application software program using a pseudo-unique key stored in a first non-erasable non-volatile memory area of a computer, the first non-volatile memory area being unable to be programmatically changed, the method, comprising:
-
loading the application software program residing in a non-volatile memory area of the computer;
using an agent to perform the following steps;
extracting license information from software program;
encrypting license information using the pseudo-unique key stored in the first non-volatile memory area;
storing the encrypting license information in a second erasable, writable, non-volatile memory area of the BIOS of the computer;
subsequently verifying the application software program based on the encrypted license information stored in the second erasable, writable, non-volatile memory area of the BIOS; and
acting on the application software program based on the verification. - View Dependent Claims (19)
extracting the license information from the software program;
encrypting the license information using the pseudo-unique key stored in the first non-volatile memory area of the computer to form second encrypted license information; and
comparing the encrypted license information stored in the second erasable, writable, non-volatile memory area of the BIOS of the computer with the second encrypted license information.
-
Specification