System and method for monitoring software
First Claim
1. A method for generating a plurality of authorization codes for use in monitoring software to reduce unauthorized copying or use of the software, the method comprising:
- requiring a user of the software to contact an authorized software representative during installation of the software;
obtaining registration information from the user during contact with the authorized software representative;
obtaining an activation key associated with the software from the user during contact with the authorized software representative, upon entry the activation key enabling use of the software during first authorization interval having a finite period;
determining whether the user is an authorized user based on the registration information and the activation key;
supplying an authorization code from a plurality of authorization codes corresponding to the activation key based on the determination of whether the user is an authorized user; and
repeatedly requiring entry of another authorization code prior to expiration of an associated authorization interval for continued use of the software beyond the associated authorization interval by prompting the user to obtain the authorization code for continued use of the software beyond the associated authorization interval prior to expiration of the associated authorization interval.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for monitoring, testing, distribution, and use of computer software with associated methods and systems for repeatedly contacting a software user and exchanging information, such as passwords, authorization information, marketing, advertising, or promotional information include associating a list of passwords with each copy or group of copies of computer software which must be entered at predetermined intervals to provide continued use of the software. Software monitoring and network license metering may be providing by storing information relative to software operation on a local computer or server and transferring the information to a remote computer or server at predetermined intervals.
282 Citations
40 Claims
-
1. A method for generating a plurality of authorization codes for use in monitoring software to reduce unauthorized copying or use of the software, the method comprising:
-
requiring a user of the software to contact an authorized software representative during installation of the software;
obtaining registration information from the user during contact with the authorized software representative;
obtaining an activation key associated with the software from the user during contact with the authorized software representative, upon entry the activation key enabling use of the software during first authorization interval having a finite period;
determining whether the user is an authorized user based on the registration information and the activation key;
supplying an authorization code from a plurality of authorization codes corresponding to the activation key based on the determination of whether the user is an authorized user; and
repeatedly requiring entry of another authorization code prior to expiration of an associated authorization interval for continued use of the software beyond the associated authorization interval by prompting the user to obtain the authorization code for continued use of the software beyond the associated authorization interval prior to expiration of the associated authorization interval. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
encrypting the authorization code prior to supplying the authorization code to an authorized user of the software.
-
-
7. The method of claim 1 wherein the plurality of authorization codes is generated prior to distribution of the authorization codes.
-
8. The method of claim 1 wherein the step of supplying comprises:
supplying a master authorization code which disables the software if the user is an unauthorized user.
-
9. The method of claim 1 wherein the step of supplying comprises:
supplying a master authorization code which allows for indefinite use of the software.
-
10. The method of claim 1 wherein the step of supplying comprises:
supplying a master authorization coded which allows operation of the software for a predetermined period of time, wherein the master authorization code is not associated with any particular copy of the software.
-
11. The method of claim 1 further comprising:
transferring advertising, marketing, or promotional information to the user while supplying the authorization code.
-
12. The method of claim 1 wherein the step of determining comprises:
-
comparing the registration information with previously obtained registration information associated with the activation key; and
determining that the user is an authorized user if no previously obtained registration information exists or if the previously obtained registration information substantially matches the registration information supplied by the user.
-
-
13. A method for generating a plurality of authorization codes for use in monitoring software to reduce unauthorized copying or use of the software, the method comprising:
-
requiring a user of the software to contact an authorized software representative during installation of the software;
obtaining registration information from the user during contact with the authorized software representative;
obtaining an activation key associated with the software from the user during contact with the authorized software representative, upon entry the activation key enabling use of the software during a first authorization interval having a finite period;
determining whether the user is an authorized user based on the registration information and the activation key;
supplying an authorization code from a plurality of authorization codes corresponding to the activation key based on the determination of whether the user is an authorized user;
wherein the step of supplying includes determining a password code based on the activation key, accessing a look-up table indexed by the password code to identify an algorithm for generating a plurality of passwords associated with a particular copy of the software, selecting one of the plurality of passwords to supply to the user, and repeatedly requiring entry of a different authorization code prior to expiration of an associated authorization interval for continued use of the software beyond the associated authorization interval. - View Dependent Claims (14, 15)
selecting one of the plurality of passwords based on a previously supplied password.
-
-
16. A method for monitoring software to reduce unauthorized use, the method comprising:
-
associating an authorization code with a copy of the software, the authorization code including a password code associated with a plurality of passwords which must be repeatedly entered prior to expiration of selected intervals for continued use of the software beyond the selected intervals, the authorization code being distributed with the copy of the software and the plurality of passwords being maintained by an authorized software representative;
obtaining the authorization code from a user or a user computer;
parsing the authorization code to determine the associated password code;
selecting one of the plurality of passwords associated with the password code;
providing the selected password to the user or the user computer to allow operation of the software for the selected interval;
prompting the user to obtain a new password from the plurality of passwords prior to expiration of the selected interval; and
automatically and repeatedly contacting the authorized software representative prior to expiration of the selected interval to obtain the new password from the plurality of passwords to authorize continued use of the software for a subsequent interval after the selected interval. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
associating a customer code with a developer of the software;
generating a serial number for each copy of the software; and
combining the customer code, the serial number, and the password code to form the authorization code.
-
-
19. The method of claim 18 wherein the step of generating a serial number comprises generating a unique serial number for each copy of the software.
-
20. The method of claim 18 wherein the step of generating a serial number comprises generating an identical serial number for a predetermined number of copies of the software.
-
21. The method of claim 18 wherein the serial number comprises a plurality of alphanumeric characters.
-
22. The method of claim 16 wherein the step of obtaining comprises automatically obtaining the authorization code at predetermined intervals when the user computer is connected to the internet.
-
23. The method of claim 16 further comprising transferring advertising, marketing, or promotional information while obtaining the authorization code.
-
24. The method of claim 16, further comprising:
transferring advertising, marketing, or promotional information to the user, user computer, or software while providing the password.
-
25. The method of claim 16 wherein the step of selecting one of the plurality of passwords comprises:
selecting one of the plurality of passwords based on a previously selected password.
-
26. The method of claim 16 wherein the plurality of passwords is generated prior to distribution of the authorization code.
-
27. The method of claim 16 wherein the step of providing comprises:
providing a master password which disables the software if the user is an unauthorized user.
-
28. The method of claim 16 wherein the step of providing comprises:
providing a master password which allows for indefinite use of the software.
-
29. The method of claim 16 wherein the step of providing comprises:
providing a master password which allows operation of the software for a predetermined period of time, wherein the master password is not associated with any particular copy of the software.
-
30. The method of claim 16 wherein the step of providing comprises:
providing the password to a user for manual entry into the software.
-
31. The method of claim 16 wherein the step of providing comprises:
providing the password to a user for manual entry into the software to authorize use of the software for a predetermined interval.
-
32. The method of claim 16 wherein the step of providing comprises:
encoding the password prior to providing the password to the user or the user computer.
-
33. The method of claim 16 wherein the step of automatically contacting comprises establishing a connection over the internet using a browser application.
-
34. A method for monitoring software installed on a plurality of computers in communication with one another or a central computer to form a computer network, the method comprising:
-
associating an activation code with the software for authorizing a predetermined number of copies of the software to be installed on computers associated with the computer network, the activation code having a corresponding plurality of passwords;
collecting registration information from each computer associated with the computer network during installation of the software, providing a first password from the plurality of passwords to the computers associated with the computer network for the predetermined number of copies of the software to authorize operation of the software for a first interval;
requiring entry of another one of the plurality of passwords prior to expiration of the first interval for each copy of the software to continue operating beyond the first interval and starting a subsequent interval; and
prompting each computer user prior to expiration of the first or subsequent intervals to contact an authorized software representative to obtain a subsequent password for continued operation of the software beyond the first or subsequent intervals so that enablement of the software can be continuous from the first interval to a subsequent interval without requiring further communication with the authorized software representative following entry of the subsequent password. - View Dependent Claims (35, 36, 37, 38, 39, 40)
monitoring use of each computer to determining when the computer is idle; and
automatically obtaining a subsequent password from the plurality of passwords for continued operation of the software when the computer is idle.
-
-
37. The method of claim 34 wherein each password includes information to uniquely identify a particular computer associated with the computer network.
-
38. The method of claim 34 further comprising encrypting the passwords prior to providing the passwords to the computers associated with the computer network.
-
39. The method of claim 34 wherein the plurality of passwords are related such that subsequent passwords are determined based on one or more previous passwords.
-
40. The method of claim 34 further comprising:
-
collecting registration information from each computer associated with the computer network during contact between each computer user and the authorized software representative;
comparing the registration information to previously collected registration information associated with the activation code; and
providing a subsequent password only if the registration information substantially matches the previously collected registration information for the activation code.
-
Specification