System and method for generating an unpredictable number using a seeded algorithm
First Claim
Patent Images
1. A method comprising:
- determining, by a computer based system for generating a truncated unpredictable number to facilitate securing a transaction and based upon at least one of an account issuer or a merchant system, a proposed maximum value for an unpredictable number;
performing, by the computer based system, a secure hashing algorithm on variable data to produce a message digest, wherein the secure hashing algorithm is configured to produce a digest of at least 16 bytes;
selecting, by the computer based system, at least one of a left-most 16 bytes or a right-most 16 bytes of the message digest to form a random 16-byte value;
creating, by the computer based system, the unpredictable number using the random 16-byte value as an input for a seeded pseudo-random number generator;
truncating, by the computer based system, the unpredictable number to create the truncated unpredictable number, wherein the truncated unpredictable number is limited to the proposed maximum value; and
sending, by the computer based system, the truncated unpredictable number and a cryptogram to an account issuer, wherein the account issuer validates the cryptogram and verifies that the cryptogram includes the truncated unpredictable number.
3 Assignments
0 Petitions
Accused Products
Abstract
A random number generating algorithm is seeded with an unpredictable number. The seed value is computed by subjecting variable data to a Secure Hashing Algorithm, and truncating the right most, or left most, 16 bytes from the message digest generated. The algorithm generates the unpredictable number by using the seed value as a counter value in the random number generator, and performing a data encryption standard operation. In one exemplary embodiment, the unpredictable number is modified to a predetermined maximum unpredictable number value as determined by the sender and receiver of the unpredictable number.
-
Citations
18 Claims
-
1. A method comprising:
-
determining, by a computer based system for generating a truncated unpredictable number to facilitate securing a transaction and based upon at least one of an account issuer or a merchant system, a proposed maximum value for an unpredictable number; performing, by the computer based system, a secure hashing algorithm on variable data to produce a message digest, wherein the secure hashing algorithm is configured to produce a digest of at least 16 bytes; selecting, by the computer based system, at least one of a left-most 16 bytes or a right-most 16 bytes of the message digest to form a random 16-byte value; creating, by the computer based system, the unpredictable number using the random 16-byte value as an input for a seeded pseudo-random number generator; truncating, by the computer based system, the unpredictable number to create the truncated unpredictable number, wherein the truncated unpredictable number is limited to the proposed maximum value; and sending, by the computer based system, the truncated unpredictable number and a cryptogram to an account issuer, wherein the account issuer validates the cryptogram and verifies that the cryptogram includes the truncated unpredictable number. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An article of manufacture including a non-transitory, tangible computer readable storage medium having instructions stored thereon that, in response to execution by a computer-based system for generating a truncated unpredictable number to facilitate securing a transaction, cause the computer-based system to perform operations comprising:
-
determining, by the computer based system and based upon at least one of an account issuer or a merchant system, a proposed maximum value for an unpredictable number; performing by the computer based system, a secure hashing algorithm on variable data to produce a message digest, wherein the secure hashing algorithm is configured to produce a digest of at least 16 bytes; selecting, by the computer based system, at least one of a left-most 16 bytes or a right-most 16 bytes of the message digest to form a random 16-byte value; creating by the computer based system, the unpredictable number using the random 16-byte value as an input for a seeded pseudo-random number generator; truncating, by the computer based system, the unpredictable number to create the truncated unpredictable number, wherein the truncated unpredictable number is limited to the proposed maximum value; and sending, by the computer based system, the truncated unpredictable number and a cryptogram to an account issuer, wherein the account issuer validates the cryptogram and verifies that the cryptogram includes the truncated unpredictable number.
-
-
12. A system comprising:
-
a processor for generating a truncated unpredictable number to facilitate securing a transaction, a tangible, non-transitory memory configured to communicate with the processor, the tangible, non-transitory memory having instructions stored thereon that, in response to execution by the processor, cause the processor to perform operations comprising; determining, by the processor and based upon at least one of an account issuer or a merchant system, a proposed maximum value for an unpredictable number; performing by the processor, a secure hashing algorithm on variable data to produce a message digest, wherein the secure hashing algorithm is configured to produce a digest of at least 16 bytes; selecting by the processor, at least one of a left-most 16 bytes or a right-most 16 bytes of the message digest to form a random 16-byte value; creating, by the processor, the unpredictable number using the random 16-byte value as an input for a seeded pseudo-random number generator; truncating, by the processor, the unpredictable number to create the truncated unpredictable number, wherein the truncated unpredictable number is limited to the proposed maximum value; and sending, by the processor, the truncated unpredictable number and a cryptogram to an account issuer, wherein the account issuer validates the cryptogram and verifies that the cryptogram includes the truncated unpredictable number. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
Specification