Method for encouraging purchase of executable and non-executable software
First Claim
1. A method of generating, and encouraging the purchase of passwords to protected software, said protected software containing advanced features which are desired by the programmer to be accessible only in the presence of a password which unlocks said advanced features only in the context of a specific id-target, said method comprising the steps of:
- executing a programmer'"'"'s program which controls the user'"'"'s processor in such a way as to;
generate a target-id in response to reliably measurable characteristics of the id-target;
generate a password-able id for each advanced feature,determine whether valid passwords are present for any advanced features,unlock advanced features whose passwords are present,enable a user to make an informed decision whether to unlock any locked advanced features,enable said user to purchase a password to unlock advanced feature in transmitting the passwordable id and other information to a licensing processor,executing a licensing program on a licensing processor which;
receives and stores said information transmitted from the user'"'"'s system,provides the user or user'"'"'s system with the password required for the passwordable ids just submitted, andarranges for transfer of funds from user to programmer and/or software vendorexecuting the programmer'"'"'s program upon receipt of a password in such a way as toinstall passwords in storage locations accessible upon future executions of the programmer'"'"'s program,unlock any advanced features whose passwords have just been obtained from the licensing system;
wherein said passwordable id is made adequately unique by synthesizing the three components;
target-id, software id, the feature id.
8 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus of encouraging distribution, registration, and purchase of free copyable software and other digital information which is accessed on a User'"'"'s System via a Programmer'"'"'s Program. Software tools which can be incorporated into a Programmer'"'"'s Program allow the User to access Advanced Features of the Programmer'"'"'s Program only in the presence of a valid Password which is unique to a particular Target ID generated on an ID-Target such as the User'"'"'s system. Advanced features will thus re-lock if the Password is copied to another ID-target. If a valid Password is not present, the User is invited to obtain one, and provided with the means of doing so, and of installing that Password in a place accessible to the User'"'"'s System on subsequent occasions. The present invention also provides Programmers with means to invoke business operations as well as computational operations with their programs, and thus to automatically obtain payment from Users who elect to obtain passwords.
-
Citations
19 Claims
-
1. A method of generating, and encouraging the purchase of passwords to protected software, said protected software containing advanced features which are desired by the programmer to be accessible only in the presence of a password which unlocks said advanced features only in the context of a specific id-target, said method comprising the steps of:
-
executing a programmer'"'"'s program which controls the user'"'"'s processor in such a way as to; generate a target-id in response to reliably measurable characteristics of the id-target; generate a password-able id for each advanced feature, determine whether valid passwords are present for any advanced features, unlock advanced features whose passwords are present, enable a user to make an informed decision whether to unlock any locked advanced features, enable said user to purchase a password to unlock advanced feature in transmitting the passwordable id and other information to a licensing processor, executing a licensing program on a licensing processor which; receives and stores said information transmitted from the user'"'"'s system, provides the user or user'"'"'s system with the password required for the passwordable ids just submitted, and arranges for transfer of funds from user to programmer and/or software vendor executing the programmer'"'"'s program upon receipt of a password in such a way as to install passwords in storage locations accessible upon future executions of the programmer'"'"'s program, unlock any advanced features whose passwords have just been obtained from the licensing system; wherein said passwordable id is made adequately unique by synthesizing the three components;
target-id, software id, the feature id. - View Dependent Claims (2, 3, 4)
-
-
5. A method of generating, and encouraging the purchase of passwords to protected software, said protected software containing advanced features which are desired by the programmer to be accessible only in the presence of a password which unlocks said advanced features only in the context of a specific id-target, said method comprising the steps of:
-
executing a programmer'"'"'s program which controls the user'"'"'s processor in such a way as to; generate a target-id in response to reliably measurable characteristics of the id-target; generate a password-able id for each advanced feature, determine whether valid passwords are present for any advanced features, unlock advanced features whose passwords are present, enable a user to make an informed decision whether to unlock any locked advanced features, enable said user to purchase a password to unlock advanced feature in transmitting the passwordable id and other information to a licensing processor, executing a licensing program on a licensing processor which; receives and stores said information transmitted from the user'"'"'s system, provides the user or user'"'"'s system with the password required for the passwordable ids just submitted, and arranges for transfer of funds from user to programmer and/or software vendor executing the programmer'"'"'s program upon receipt of a password in such a way as to install passwords in storage locations accessible upon future executions of the programmer'"'"'s program, unlock any advanced features whose passwords have just been obtained from the licensing system; wherein the password for a given passwordable id is a function of the passwordable id and the programmer'"'"'s program determines the validity of a candidate password.
-
-
6. A method of generating, and encouraging the purchase of, passwords to protected software, said protected software containing advanced features which are desired by the programmer to be accessible only in the presence of a password which unlocks said advanced features only in the context of a specific id-target, said method comprising the steps of:
-
executing a programmer'"'"'s program which controls the user'"'"'s processor in such a way as to; generate a target-id in response to reliably measurable characteristics of the id-target; generate a password-able id for each advanced feature, determine whether valid passwords are present for any advanced features, unlock advanced features whose passwords are present, enable a user to make an informed decision whether to unlock any locked advanced features, and enable said user to purchase a password to unlock advanced feature in transmitting the passwordable id and other information to a licensing processor, executing a licensing program on a licensing processor which; receives and stores said information transmitted from the user'"'"'s system, provides the user or user'"'"'s system with the password required for the passwordable ids just submitted, and arranges for transfer of funds from user to programmer or software vendor; and executing the programmer'"'"'s program upon receipt of a password in such a way as to; install passwords in storage locations accessible upon future executions of the programmer'"'"'s program, and unlock any advanced features whose passwords have just been obtained from the licensing system; the method further comprising evaluating users'"'"' reports of hardware changes which may necessitate new passwords, said method further comprising the steps of; generating a list of the characteristics of the id-target which are responsible for the uniqueness of the target-id each time the programmer'"'"'s program is executed; storing an encryption of said list in a non-volatile storage location accessible to the programmer'"'"'s program each time a valid password is encountered; generating a difference-list when the absence of a valid password is confirmed; making an encryption of this difference-list available to the user for use in corroborating the user'"'"'s report of a hardware changes, when the user contacts the managers of the licensing system to report said hardware change; and decryption of the difference-list by the managers of the licensing system in order to cross-check the users'"'"' report.
-
-
7. A method of generating passwords to protected software from any of a plurality of programmers and encouraging the payment of a purchase price for one of the passwords and the forwarding of the purchase price to the programmer associated with the one of the passwords, said protected software containing advanced features which are desired by the programmer thereof to be accessible only in the presence of a password which unlocks said advanced features only in the context of a specific id-target, said method comprising the steps of:
-
executing a program from one of the programmers which controls a user'"'"'s processor in such a way as to perform the steps of; generating a target-id in response to reliably measurable characteristics of the id-target; generating a password-able id for at least one advanced feature, determining whether a valid password is present for any advanced feature, unlocking such advanced feature whose password is present, enabling a user to make an informed decision whether to unlock one of the locked advanced features, enabling said user to purchase a password to unlock said locked advanced feature in transmitting the passwordable id to a licensing processor, the information transmitted being indicative of the one of the programmers; and executing a licensing program on a licensing processor to perform the steps of; receiving and storing said passwordable id transmitted from the user'"'"'s system, providing the user or user'"'"'s system with a password required for the passwordable id just received, and arranging for a transfer of funds from the user to a programmer or software vendor; and executing the programmer'"'"'s program upon receipt of a password to perform the steps of; installing the password in a storage location accessible upon future executions of the programmer'"'"'s program, and unlocking any advanced feature whose password has just been obtained from the licensing system, wherein said passwordable id is made adequately unique by synthesizing the three components;
target-id, software id, the feature id. - View Dependent Claims (8, 9, 10)
-
-
11. A method of generating passwords to protected software from any of a plurality of programmers and encouraging the payment of a purchase price for one of the passwords and the forwarding of the purchase price to the programmer associated with the one of the passwords, said protected software containing advanced features which are desired by the programmer thereof to be accessible only in the presence of a password which unlocks said advanced features only in the context of a specific id-target, said method comprising the steps of:
-
executing a program from one of the programmers which controls a user'"'"'s processor in such a way as to perform the steps of; generating a target-id in response to reliably measurable characteristics of the id-target; generating a password-able id for at least one advanced feature, determining whether a valid password is present for any advanced feature, unlocking such advanced feature whose password is present, enabling a user to make an informed decision whether to unlock one of the locked advanced features, enabling said user to purchase a password to unlock said locked advanced feature in transmitting the passwordable id to a licensing processor, the information transmitted being indicative of the one of the programmers; and executing a licensing program on a licensing processor to perform the steps of; receiving and storing said passwordable id transmitted from the user'"'"'s system, providing the user or user'"'"'s system with a password required for the passwordable id just received, and arranging for a transfer of funds from the user to a programmer or software vendor; and executing the programmer'"'"'s program upon receipt of a password to perform the steps of; installing the password in a storage location accessible upon future executions of the programmer'"'"'s program, and unlocking any advanced feature whose password has just been obtained from the licensing system, wherein the password for a given passwordable id is a function of the passwordable id and the programmer'"'"'s program determines the validity of a candidate password. - View Dependent Claims (17, 18)
-
-
12. A method of generating passwords to protected software from any of a plurality of programmers and encouraging the payment of a purchase price for one of the passwords and the forwarding of the purchase price to the programmer associated with the one of the passwords, said protected software containing advanced features which are desired by the programmer thereof to be accessible only in the presence of a password which unlocks said advanced features only in the context of a specific id-target, said method comprising the steps of:
-
executing a program from one of the programmers which controls a user'"'"'s processor in such a way as to perform the steps of; generating a target-id in response to reliably measurable characteristics of the id-target; generating a password-able id for at least one advanced feature, determining whether a valid password is present for any advanced feature, unlocking such advanced feature whose password is present, enabling a user to make an informed decision whether to unlock one of the locked advanced features, enabling said user to purchase a password to unlock said locked advanced feature in transmitting the passwordable id to a licensing processor, the information transmitted being indicative of the one of the programmers; and executing a licensing program on a licensing processor to perform the steps of; receiving and storing said passwordable id transmitted from the user'"'"'s system, providing the user or user'"'"'s system with a password required for the passwordable id just received, and arranging for a transfer of funds from the user to a programmer or software vendor; and executing the programmer'"'"'s program upon receipt of a password to perform the steps of; installing the password in a storage location accessible upon future executions of the programmer'"'"'s program, and unlocking any advanced feature whose password has just been obtained from the licensing system, wherein the programmer'"'"'s program determines the presence of a valid password by generating the valid password and comparing it to the candidate password, and wherein the passwordable id is used as a seed to a random character generator; and
the presence of a valid password is confirmed when the programmer'"'"'s program confirms that this method generates the password stored in the appropriate password storage location.
-
-
13. A method of generating passwords to protected software from any of a plurality of programmers and encouraging the payment of a purchase price for one of the passwords and the forwarding of the purchase price to the programmer associated with the one of the passwords, said protected software containing advanced features which are desired by the programmer thereof to be accessible only in the presence of a password which unlocks said advanced features only in the context of a specific id-target, said method comprising the steps of:
-
executing a program from one of the programmers which controls a user'"'"'s processor in such a way as to perform the steps of; generating a target-id in response to reliably measurable characteristics of the id-target; generating a password-able id for at least one advanced feature, determining whether a valid password is present for any advanced feature, unlocking such advanced feature whose password is present, enabling a user to make an informed decision whether to unlock one of the locked advanced features, enabling said user to purchase a password to unlock said locked advanced feature in transmitting the passwordable id to a licensing processor, the information transmitted being indicative of the one of the programmers; and executing a licensing program on a licensing processor to perform the steps of; receiving and storing said passwordable id transmitted from the user'"'"'s system, providing the suer or user'"'"'s system with a password required for the passwordable id just received, and arranging for a transfer of funds from the user to a programmer or software vendor; and executing the programmer'"'"'s program upon receipt of a password to perform the steps of; installing the password in a storage location accessible upon future executions of the programmer'"'"'s program, and unlocking any advanced feature whose password has just been obtained from the licensing system, wherein the programmer'"'"'s program does not contain the full algorithm for generating the password for a given passwordable id, and wherein the programmer'"'"'s program does contain the means of confirming the validity of a candidate password given a passwordable id. - View Dependent Claims (14, 15)
-
-
16. A method of generating passwords to protected software from any of a plurality of programmers and encouraging the payment of a purchase price for one of the passwords and the forwarding of the purchase price to the programmer associated with the one of the passwords, said protected software containing advanced features which are desired by the programmer thereof to be accessible only in the presence of a password which unlocks said advanced features only in the context of a specific id-target, said method comprising the steps of:
-
executing a program from one of the programmers which controls a user'"'"'s processor in such a way as to perform the steps of; generating a target-id in response to reliably measurable characteristics of the id-target; generating a password-able id for at least one advanced feature, determining whether a valid password is present for any advanced feature, unlocking such advanced feature whose password is present, enabling a user to make an informed decision whether to unlock one of the locked advanced features, enabling said user to purchase a password to unlock said locked advanced feature in transmitting the passwordable id to a licensing processor, the information transmitted being indicative of the one of the programmers; and executing a licensing program on a licensing processor to perform the steps of; receiving and storing said passwordable id transmitted from the user'"'"'s system, providing the user or user'"'"'s system with a password required for the passwordable id just received, and arranging for a transfer of funds from the user to a programmer or software vendor; and executing the programmer'"'"'s program upon receipt of a password to perform the steps of; installing the password in a storage location accessible upon future executions of the programmer'"'"'s program, and unlocking any advanced feature whose password has just been obtained from the licensing system, wherein the programmer'"'"'s program determines the presence of a valid password by generating the valid password and comparing it to the candidate password, and wherein the passwordable id is used as a seed to a random character generator, and the characters produced from said random character generator seeded with the passwordable id are used as a key stream for encrypting a feature-seed, said feature-seed to be used by the programmer'"'"'s program to decrypt an advanced feature of the protected software; and
the presence of a valid password is confirmed when the programmer'"'"'s program or the user confirms that the advanced feature has thereby been decrypted successfully.
-
-
19. A method of generating passwords to protected software from any of a plurality of programmers and encouraging the payment of a purchase price for one of the passwords and the forwarding of the purchase price to the programmer associated with the one of the passwords, said protected software containing advanced features which are desired by the programmer thereof to be accessible only in the presence of a password which unlocks said advanced features only in the context of a specific id-target, said method comprising the steps of:
-
executing a program from one of the programmers which controls a user'"'"'s processor in such a way as to perform the steps of; generating a target-id in response to reliably measurable characteristics of the id-target; generating a password-able id for at least one advanced feature, determining whether a valid password is present for any advanced feature, unlocking such advanced feature whose password is present, enabling a user to make an informed decision whether to unlock one of the locked advanced features, enabling said user to purchase a password to unlock said locked advanced feature in transmitting the passwordable id to a licensing processor, the information transmitted being indicative of the one of the programmers; and executing a licensing program on a licensing processor to perform the steps of; receiving and storing said passwordable id transmitted from the user'"'"'s system, providing the user or user'"'"'s system with a password required for the passwordable id just received, and arranging for a transfer of funds from the user to a programmer or software vendor; and executing the programmer'"'"'s program upon receipt of a password to perform the steps of; installing the password in a storage location accessible upon future executions of the programmer'"'"'s program, and unlocking any advanced feature whose password has just been obtained from the licensing system, further comprising the method of evaluating user'"'"' reports of hardware changes which may necessitate new passwords, said method comprising the steps of; generating a list of the characteristics of the id-target which are responsible for the uniqueness of the target-id each time the programmer'"'"'s program is executed; storing an encryption of said list in a non-volatile storage location accessible to the programmer'"'"'s program each time a valid password is encountered; generating a difference-list when the absence of a valid password is confirmed; making an encryption of this difference-list available to the user for use in corroborating the user'"'"'s report of a hardware changes, when the user contacts the managers of the licensing system to report said hardware change; and decryption of the difference-list by the managers of the licensing system in order to cross-check the user'"'"' report.
-
Specification