System for persistently encrypting critical software data to control the operation of an executable software program
First Claim
1. A method of protecting a software program from piracy comprising the steps of:
- selecting at least one data element from said software program for encryption, said data element affecting operation of said software program and comprising usable data that supports any of usable, viewable and executable forms of content;
encrypting said selected data element such that a user is required to obtain a valid license to decrypt said selected data element;
distributing said selected data element and said software program to said user;
decrypting said selected data element during runtime of said software program upon said user obtaining a valid license; and
erasing the decrypted said selected data element after said software program executes correctly such that said selected data element is only available at runtime of said software program and in the presence of said valid license.
5 Assignments
0 Petitions
Accused Products
Abstract
A data encryption/decryption system is provided which maintains in encrypted form one or more critical data elements required by a software program. A user must obtain a license key in order to decrypt the critical data elements before the software program can use them. The data elements can be chosen such that their contents provide a control mechanism for the correct operation of the executable software program. The system allows for the inclusion of different data elements with or within a single version of the software program. The different data elements are encrypted for different license keys to allow for different license options and corresponding levels of control and flexibility in the delivery of the software program.
44 Citations
25 Claims
-
1. A method of protecting a software program from piracy comprising the steps of:
-
selecting at least one data element from said software program for encryption, said data element affecting operation of said software program and comprising usable data that supports any of usable, viewable and executable forms of content;
encrypting said selected data element such that a user is required to obtain a valid license to decrypt said selected data element;
distributing said selected data element and said software program to said user;
decrypting said selected data element during runtime of said software program upon said user obtaining a valid license; and
erasing the decrypted said selected data element after said software program executes correctly such that said selected data element is only available at runtime of said software program and in the presence of said valid license. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method of protecting a software program from piracy comprising the steps of:
-
selecting at least one data element from said software program for encryption, said data element affecting operation of said software program and comprising usable data that supports any of usable, viewable and executable forms of content;
encrypting said selected data element such that a user is required to obtain a valid license to decrypt said selected data element;
distributing said selected data element and said software program to said user;
decrypting said selected data element during runtime of said software program upon said user obtaining a valid license; and
operating said software program sub-optimally if no valid license is obtained by said user and said selected data element is not decrypted. - View Dependent Claims (14)
-
-
15. A method of protecting a software program comprising the steps of:
-
bundling different functionalities in at least one software program that require respective license terms such that they are subject to respective licenses;
encrypting each of said functionalities;
providing said software program to a user with all of encrypted said functionalities; and
decrypting and enabling each of said functionalities whenever said user obtains the corresponding one of said licenses therefor. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
Specification