System and method for managing try-and-buy usage of application programs
First Claim
1. A method for managing usage of an application program by a user on a distributed computer system, said application program being initially stored as a stored version of said application program on a server coupled to said distributed computer system, said method comprising the steps of:
- at said server, performing steps of;
recognizing a user request to access said application program;
determining whether predetermined access conditions are satisfied;
transmitting a transmission version of said application program to a computer associated with said user for receipt and storage only when said access conditions have been satisfied;
wherein said transmission version of said application program is at least partially encrypted and is not directly executable;
at a client computer, performing steps of;
verifying prior to execution of said program that said user is currently entitled to execute said received application program; and
generating an executable version of said application program from said transmission version only if said verification is affirmative, said generating step including decrypting encrypted portions of said transmission version.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for managing the distribution of licensed application programs stored on a server over a distributed computer system maintains control over the program even after the program has been distributed to a client computer from a provider on an information server. Protection may include license expiration date verification, authorized user ID verification, and protection against decompilation and reverse engineering by maintaining the program in an encrypted form until verification of the expiration date and user identity are complete and the program is ready for decoding, loading into the client computer CPU, and execution. A user identifies a program for trial use by any conventional means such as by using a network browser on the World Wide Web. The server recognizes a user request to access the application program. The server may have an agent on the client computer for performing certain predetermined administrative tasks. This agent may take the form of an application builder program module, provided by the trial application provider, which is resident on the client computer. The server (including the agent) determines whether program access conditions are satisfied, and if satisfied transmits a version of the program to the client. The transmitted file includes an encrypted portion. The server and agent also verify that the user is currently entitled to execute the application program including that the trial license has not expired at the time the user initiates execution, and generates an executable version of the application program.
1095 Citations
15 Claims
-
1. A method for managing usage of an application program by a user on a distributed computer system, said application program being initially stored as a stored version of said application program on a server coupled to said distributed computer system, said method comprising the steps of:
-
at said server, performing steps of; recognizing a user request to access said application program; determining whether predetermined access conditions are satisfied; transmitting a transmission version of said application program to a computer associated with said user for receipt and storage only when said access conditions have been satisfied;
wherein said transmission version of said application program is at least partially encrypted and is not directly executable;at a client computer, performing steps of; verifying prior to execution of said program that said user is currently entitled to execute said received application program; and generating an executable version of said application program from said transmission version only if said verification is affirmative, said generating step including decrypting encrypted portions of said transmission version. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A program usage management system for managing usage of an application program by a user associated with a client computer on a distributed computer network, said system comprising:
-
a server coupled to said distributed computer system and having memory storage for storing said application program; a controller coupled to said client computer for recognizing a user request to access said application program and for determining whether predetermined program access conditions associated with said application program are satisfied by said client computer; a program file formatter for generating a transmission version of said program file that incorporates identification information associated with said client and a version of said application program that is at least partially encrypted, said program file formatter responsive to said controller to generate said transmission version only when said access conditions are satisfied; a transmitter for transmitting said transmission version of said application program to said client computer associated with said user for receipt and storage only when said access conditions have been satisfied; a license verifier for verifying prior to execution of said application program by said client computer that the user associated with said client computer is currently entitled to execute said application program; and a program decoder coupled to said client computer for generating a decrypted machine executable version of said application program from said transmission version of said application program only if said license verifier verifies that the user associated with said client computer is currently entitled to execute said application program, said program decoder including instructions for decrypting encrypted portions of said transmission version. - View Dependent Claims (11, 12, 13, 14, 15)
-
Specification