System for persistently encrypting critical software file to prevent installation of software program on unauthorized computers
First Claim
Patent Images
1. A method of protecting a software program from piracy, the software program comprising a plurality of program files, the method comprising the steps of:
- selecting at least one of said plurality of program files that is required for said software program to successful run on a computer, said computer being connected to memory device, a display device and a user input device;
encrypting said selected file with an embedded executable that is hidden from a user of said computer;
providing said software program comprising said selected file to said computer, said software program being incapable of being executed until said selected file is encrypted;
invoking said embedded executable to obtain a key code to decrypt said selected file and run said software program, said invoking step comprising the step of generating at least one user prompt on said display device using said embedded executable to query said user as to whether running said software progam is desired;
receiving an input signal from said user input device indicating that said user desires decryption of said embedded executable to run said software program;
generating a key request using said computer via said embedded executable;
providing said key request to a remote computer in accordance with said embedded executable; and
transmitting a key to said computer in response to said key request, said key being operable to decrypt said selected file.
5 Assignments
0 Petitions
Accused Products
Abstract
A data encryption/decryption system is provided which encrypts a critical file to a software program using an embedded executable. The executable programs a user computer to prompt a user to purchase a license key to decrypt the critical file in order to run the software program.
286 Citations
7 Claims
-
1. A method of protecting a software program from piracy, the software program comprising a plurality of program files, the method comprising the steps of:
-
selecting at least one of said plurality of program files that is required for said software program to successful run on a computer, said computer being connected to memory device, a display device and a user input device;
encrypting said selected file with an embedded executable that is hidden from a user of said computer;
providing said software program comprising said selected file to said computer, said software program being incapable of being executed until said selected file is encrypted;
invoking said embedded executable to obtain a key code to decrypt said selected file and run said software program, said invoking step comprising the step of generating at least one user prompt on said display device using said embedded executable to query said user as to whether running said software progam is desired;
receiving an input signal from said user input device indicating that said user desires decryption of said embedded executable to run said software program;
generating a key request using said computer via said embedded executable;
providing said key request to a remote computer in accordance with said embedded executable; and
transmitting a key to said computer in response to said key request, said key being operable to decrypt said selected file. - View Dependent Claims (2)
-
-
3. A system for protecting a software program from piracy comprising:
-
a consumer computer on which said software program is desired to be run;
an encryption device configured to encrypt a critical file required to successfully run said software program on said consumer computer using an embedded executable and to generate a key to decrypt said critical file;
a server and key database configured to store said key;
a communication link for connecting said consumer computer and said server and key database, said embedded executable being programmed to generate a key request for processing by said server and key database and to receive said key therefrom via said communication link, said consumer computer being operable in accordance with said executable file to decrypt said critical file using said key and to run said software program, said embedded executable being programmed to delete said decrypted critical file after said software program has begun to run. - View Dependent Claims (4)
-
-
5. A method of protecting a software program from piracy, the software program comprising a ply of program files, the method comprising the steps of:
-
selecting at least one of said plurality of program files that is required for said software program to successfully run on a computer, said computer being connected to memory device, a display device and a user input device;
encrypting said selected file with an embedded executable that is hidden from a user of said computer;
providing said software program comprising said selected file to said computer, said software program being incapable of being executed until said selected file is encrypted; and
invoking said embedded executable to obtain a key code to decrypt said selected file and run said software program;
wherein said invoking step further comprises the steps of generating a key request using said computer via said embedded executable;
providing said key request to a remote computer in accordance with said embedded executable; and
transmitting a key to said computer in response to said key request, said key being operable to decrypt said selected file.
-
-
6. A method of protecting a software program from piracy, the software program comprising a plurality of program files, the method comprising the steps of:
-
selecting at least one of said plurality of program files that is required for said software program to successfully run on a computer, said computer being connected to memory device, a display device and a user input device;
encrypting said selected file with an embedded executable that is hidden from a user of said computer;
providing said software program comprising said selected file to said computer, said software program being incapable of being executed until said selected file is encrypted;
invoking said embedded executable to obtain a key code to decrypt said selected file and run said software progam; and
deleting said decrypted embedded executable file from said memory device after said software program is initialized. - View Dependent Claims (7)
-
Specification