Method of controlling usage of software components
First Claim
1. A method of generating a password for controlling usage of a selected copy of a software plug-in component by a selected copy of an authorized application program on a selected computer system comprising:
- creating a first key from an identifier of the selected copy of the authorized application program;
creating a second key from an identifier of the selected copy of the software plug-in component; and
creating the password from the first and second keys by encrypting a combination of the first key and the second key with a secret encryption key, thereby binding authorized usage of the selected copy of the software plug-in component to the selected copy of the authorized application program on the selected computer system.
1 Assignment
0 Petitions
Accused Products
Abstract
Controlling the usage of a software component by an application program in an end user computer system includes obtaining an identifier of the application program by a controller computer system and generating a first password from the received application program identifier and an identifier of the component. The component, the component'"'"'s identifier and the first password are communicated to the end user computer system. The component is registered with the application program as a “snap-in” or “plug-in” component. The application program generates a second password from the application program identifier and the received component identifier, compares the first password and the second password, and allows use of the “snapped-in” component by the application program on the end user computer system when the first password matches the second password.
232 Citations
24 Claims
-
1. A method of generating a password for controlling usage of a selected copy of a software plug-in component by a selected copy of an authorized application program on a selected computer system comprising:
-
creating a first key from an identifier of the selected copy of the authorized application program;
creating a second key from an identifier of the selected copy of the software plug-in component; and
creating the password from the first and second keys by encrypting a combination of the first key and the second key with a secret encryption key, thereby binding authorized usage of the selected copy of the software plug-in component to the selected copy of the authorized application program on the selected computer system. - View Dependent Claims (2, 3)
-
-
4. A method of controlling usage of a selected copy of a software plug-in component with a selected copy of an authorized application program having an identifier on a selected computer system comprising:
-
providing the application program identifier;
receiving the selected copy of the software plug-in component, a component identifier and a first password associated with a combination of the selected copy of the authorized application program and the selected copy of the software plug-in component;
registering the selected copy of the software plug-in component with the selected copy of the authorized application program by storing the component identifier and the first password in a registry on the selected computer system;
generating a second password from the application program identifier and the received component identifier;
comparing the first password from the registry and the second password; and
allowing use of the selected copy of the software plug-in component with the selected copy of the authorized application program on the selected computer system when the first password matches the second password. - View Dependent Claims (5, 6, 7, 8, 9)
creating a first key from the application program identifier;
creating a second key from the received component identifier; and
creating the second password from the first and second keys.
-
-
6. The method of claim 5, wherein creating the first key comprises encrypting at least a portion of the application program identifier with a secret encryption key.
-
7. The method of claim 5, wherein creating the second key comprises encrypting at least a portion of the component identifier with a secret encryption key.
-
8. The method of claim 5, wherein creating the second password comprises encrypting a combination of the first key and the second key with a secret encryption key.
-
9. The method of claim 4, wherein generating the second password comprises encrypting at least a portion of the application program identifier with the component identifier as an encryption key.
-
10. An article comprising a machine readable storage medium that stores instructions that when executed cause a computer system to generate a password for controlling usage of a selected copy of a software plug-in component by a selected copy of an authorized application program on a selected computer system by creating a first key from an identifier of the selected copy of the authorized application program, creating a second key from an identifier of the selected copy of the software plug-in component, and creating the password from the first and second keys by encrypting a combination of the first key and the second key with a secret encryption key, thereby binding authorized usage of the selected copy of the software plug-in component to the selected copy of the authorized application program on the selected computer system.
-
11. An article comprising a machine readable storage medium that stores instructions that cause a first computer system to provide an application program identifier of a selected copy of an authorized application program to a second computer system, receive a selected copy of a software plug-in component, a component identifier and a first password associated with a combination of the selected copy of the authorized application program and the selected copy of the software plug-in component from the second computer system, register the selected copy of the software plug-in component with the selected copy of the authorized application program by storing the component identifier and the first password in a registry on the first computer system, generate a second password from the application program identifier and the received component identifier, compare the first password from the registry and the second password, and allow use of the selected copy of the software plug-in component with the selected copy of the authorized application program on the first computer system when the first password matches the second password.
-
12. A method of controlling usage of a selected copy of a software plug-in component with a selected copy of an authorized application program resident in a computer system comprising:
-
generating a first password from an application program identifier of the selected copy of the authorized application program and an identifier of the selected copy of the software plug-in component;
registering the selected copy of the software plug-in component with the selected copy of the authorized application program by storing the component identifier and the first password in a registry on the computer system;
generating, by the selected copy of the authorized application program, a second password from the application program identifier and the component identifier from the registry;
comparing the first password from the registry and the second password; and
allowing use of the selected copy of the software plug-in component with the selected copy of the authorized application program on the computer system when the first password matches the second password. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
creating a third key from the application program identifier;
creating a fourth key from the communicated component identifier; and
creating the second password from the third and fourth keys.
-
-
15. The method of claim 14, wherein creating the third key comprises encrypting at least a portion of the application program identifier with a secret encryption key.
-
16. The method of claim 14, wherein creating the fourth key comprises encrypting at least a portion of the component identifier with a secret encryption key.
-
17. The method of claim 14, wherein creating the second password comprises encrypting a combination of the third key and the fourth key with a secret encryption key.
-
18. The method of claim 12, wherein generating the first password comprises:
-
creating a first key from the application program identifier;
creating a second key from the component identifier; and
creating the first password from the first and second keys.
-
-
19. The method of claim 18, wherein creating the first key comprises encrypting at least a portion of the application program identifier with a secret encryption key.
-
20. The method of claim 18, wherein creating the second key comprises encrypting at least a portion of the component identifier with a secret encryption key.
-
21. The method of claim 18, wherein creating the first password comprises encrypting a combination of the first key and the second key with a secret encryption key.
-
22. The method of claim 12, wherein generating the first password comprises encrypting at least a portion of the application program identifier with the component identifier as an encryption key.
-
23. In a system having an end user computer system coupled to a controller computer system, the end user computer system having an application program identified by an identifier, a method of controlling usage of a software component with the application program comprising:
-
obtaining, by the controller computer system, the application program identifier;
generating a first password from the application program identifier and an identifier of the component;
communicating the component, the component identifier, and the first password from the controller computer system to the end user computer system;
storing, by the end user computer system, the component identifier and the first password in a registry of the application program;
generating, by the application program, a second password from the application program identifier and the component identifier from the registry;
comparing the first password from the registry and the second password; and
allowing use of the component with the application program by the end user computer system when the first password matches the second password.
-
-
24. An article comprising:
- a machine readable storage medium that stores instructions that cause at least one computer system to generate a first password from an application program identifier of a selected copy of an authorized application program and an identifier of a selected copy of a software plug-in component, to register the selected copy of the software plug-in component for use with the selected copy of the authorized application program by storing the component identifier and the first password in a registry on the at least one computer system, to generate a second password from the application program identifier and the component identifier from the registry, to compare the first password from the registry and the second password, and to allow use of the selected copy of the software plug-in component with the selected copy of the authorized application program on the at least one computer system when the first password matches the second password.
Specification