Reversible hashing for E-signature verification
First Claim
1. A computer storage medium, wherein the storage medium does not consist of a propagated data signal, encoding computer executable instructions that, when executed a processor, perform a method for providing verification of a digital signature associated with a software license, the method comprising:
- receiving an original seed value, wherein the original seed value is the same for all software packages of the same type;
providing one or more items of data related to the customer;
receiving providing a digital signature;
extracting a reversible hash value from the digital signature;
reversing the reversible hash to obtain a determined seed value, wherein the one or more items of data related to the customer are used to reverse the reversible hash;
comparing the determined seed value to the original seed value; and
if the determined seed value compares to the original seed value, verifying the signature and the associated software license.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the present invention relate to systems and methods to authenticate software licenses. One embodiment of the present invention comprises a method where a vendor creates a reversible hash from a known, predetermined seed value, encrypts the hash to generate a digital signature, and sends the digital signature to the customer. The customer enters the digital signature. The customer'"'"'s client computer reverses the reversible hash to obtain a determined seed value. The client has access to the known seed value used by the vendor. The known seed value is compared to the determined seed value. If the seed values compare, the software license and the associated software is authenticate.
19 Citations
19 Claims
-
1. A computer storage medium, wherein the storage medium does not consist of a propagated data signal, encoding computer executable instructions that, when executed a processor, perform a method for providing verification of a digital signature associated with a software license, the method comprising:
-
receiving an original seed value, wherein the original seed value is the same for all software packages of the same type; providing one or more items of data related to the customer; receiving providing a digital signature; extracting a reversible hash value from the digital signature; reversing the reversible hash to obtain a determined seed value, wherein the one or more items of data related to the customer are used to reverse the reversible hash; comparing the determined seed value to the original seed value; and if the determined seed value compares to the original seed value, verifying the signature and the associated software license. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer storage medium, wherein the storage medium does not consist of a propagated data signal, encoding computer executable instructions that, when executed by a processor, perform a method for providing a reversible digital signature associated with a software license, the method comprising:
-
receiving a seed value, wherein the seed value is the same for all software packages of the same type; receiving at least one other item of information related to the customer; generating a reversible hash from a first function with the seed value as a first operand and at least one other item of information related to the customer as the second operand, wherein the reversible hash is operable to be reversed at a client using a counter function that reverses the first function; encrypting the reversible hash to create a digital signature; and providing the digital signature to a client, wherein the client reverses the reversible hash using the at least one other item of information related to the customer to verify the software license. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A system for verifying a digital signature associated with a software license, the system comprising:
-
a processor; and a memory storing components executed by the processor, the components comprising; a reverse hash algorithm component, the reverse hash algorithm component operable to receive a reversible hash, to execute one or more counter functions operating on data from one of a data packet comprising information related to a customer, or a software to extract a determined seed value from the reversible hash; a compare seed value component in electrical communication with the reverse hash algorithm component, the compare seed value component operable to receive the determined seed value, to receive the known seed value, to compare the determined seed value to the known seed value, and to verify authenticity of the software license if the determined seed value compares to the known seed value, wherein the known seed value is the same for all software packages of the same type; and a decryption engine in electrical communication with the reverse hash algorithm component, the decryption engine operable to receive a digital signature, to decrypt the digital signature to extract the reversible hash, and to provide the reversible hash to the reverse hash algorithm component. - View Dependent Claims (18, 19)
-
Specification