Secure product enablement over channels with narrow bandwidth
First Claim
1. A method for enabling a product offering received by a client from a vendor, the method comprising:
- in a computer system at the client;
providing to the vendor a plurality of alphanumeric strings;
computing an index to a client side table using the plurality of strings;
receiving from the vendor a validation code for the product offering; and
verifying the validation code using the validation code and the index to the client side table.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method provide an enablement scheme that accommodates small bandwidth channels and does not rely on shared secrets between parties. This is accomplished by storing a table of messages on a vendor server and a table of hashes of the message on client machines. A process is used by the vendor to select a message from the table to use for a validation code for enablement, and an identical process is used by the client to find a corresponding hash in the hash table. By comparing the hash in the hash table to a hash of the validation code received, the client can verify the validation code. The system includes software portions for enabling the method.
-
Citations
42 Claims
-
1. A method for enabling a product offering received by a client from a vendor, the method comprising:
-
in a computer system at the client; providing to the vendor a plurality of alphanumeric strings; computing an index to a client side table using the plurality of strings; receiving from the vendor a validation code for the product offering; and verifying the validation code using the validation code and the index to the client side table. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for enabling a product offering received by a client from a vendor, the method comprising:
-
in a computer system at the client; downloading the product offering from a vendor, the product offering including a client side table; providing to the vendor a plurality of alphanumeric strings; computing an index to the client side table using the plurality of strings; receiving from the vendor a validation code for the product offering; and verifying the validation code using the validation code and the index to the client side table.
-
-
13. A method for enabling a product offering received by a client from a vendor, the method comprising:
in a computer system at the vendor; receiving from the client a plurality of alphanumeric strings; computing an index to a vendor side table using the plurality of alphanumeric strings, the vendor side table comprising vendor side secrets; and providing to the client a validation code for the product offering, the validation code generated from a selected vendor side secret. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
21. A computer program product for enabling a product offering received by a client from a vendor, comprising:
-
a non-transitory computer-readable medium; and computer program code, coded on the medium, that, when executed by a computer system in a client, cause the computer system in the client to; display to the client a plurality of alphanumeric strings; compute an index to a client side table using the plurality of strings; receive client input comprising a validation code for the product offering; and verify the validation code using the validation code and the index to the client side table. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A system for enabling a product offering received by a client from a vendor, the system comprising:
a computer system at the client configured to; display to the client a plurality of alphanumeric strings; compute an index to a client side table using the plurality of strings; receive client input comprising a validation code for the product offering; and verify the validation code using the validation code and the index to the client side table. - View Dependent Claims (31, 32, 33, 34, 35, 36)
-
37. A system for enabling a product offering received by a client from a vendor, the system comprising:
a computer system at the client configured to; download the product offering from a vendor, the product offering including a client side table; display to the client a plurality of alphanumeric strings; compute an index to the client side table using the plurality of strings; receive client input comprising a validation code for the product offering; and verify the validation code using the validation code and the index to the client side table.
-
38. A system for enabling a product offering received by a client from a vendor, the system comprising:
a computer system at the vendor configured to; receive user input comprising a plurality of alphanumeric strings; compute an index to a vendor side table using the plurality of alphanumeric strings, the vendor side table comprising vendor side secrets; and display to a user a validation code for the product offering, the validation code generated from a selected vendor side secret.
-
39. The system of 38, wherein the computer system at the vendor is further configured to:
create the vendor side table and a client side table of hashes.
-
40. The system of 39, wherein the hashes are associated with the vendor side table.
-
41. The system of 38, wherein the computer system at the vendor is further configured to:
generate a validation code.
-
42. The system of 41, wherein the vendor side secrets are random numbers, each of the random numbers comprising a first set of digits and a second set of digits, and the validation code is the first set of digits.
Specification