Vaultless tokenization engine
First Claim
1. A computer-implemented method of tokenization comprising the steps of:
- receiving a request for tokenization from a user, the request containing a Session token, a token definition logically related to the user, and a received value, wherein the Session token includes a policy identifier logically related to the user and a unique key logically related to the user, and wherein the token definition comprises three or more of the following attributes;
a unique key;
a hashing algorithm;
an iteration count;
a token layout;
a token type;
one or more replacement values;
a token scope;
a token table version;
a masked character;
a force luhn check;
a language;
a mask layout;
a maximum token length;
a minimum token length;
a preserve case;
a preserve value type;
a unique token;
an attribute for whether or not to allow values to be replaced to a same value; and
one or more flags controlling how the resulting token should be formatted;
decoding and validating the Session token;
retrieving the token definition, a token key logically related to the token definition, and a security policy related to the user from a database logically relating the token definition, the token key, and the security policy to the user;
appending the user key and the token key to the received value to create an input value having more than one input value character;
replacing each input value character of the input value with a known character to create a replacement input value, where the known character is related within a lookup table to the input value character according to the token definition;
generating a cryptographically secure hash of the replacement input value to create a derived key;
substituting each character of the replacement input value with a character from one or more lookup tables to create a third input value, the one or more lookup tables being selected based on one or more of the received value, the position of the character being replaced within the replacement input value, and the derived key; and
returning the third input value to the user as a token.
3 Assignments
0 Petitions
Accused Products
Abstract
A method comprising the steps of receiving a request for tokenization from a user, the request including a Session Token; decoding and validating the Session Token; retrieving a token definition, a token key, and a security policy from a database; appending the user key and the token key to the received value to create an input value; replacing each input value character with a known character to create a replacement input value, where the known character is related within a lookup table; generating a secure hash of the replacement input value to create a derived key; substituting each character of the replacement input value with a character from lookup tables to create a third input value, the lookup tables being selected based on the received value, the position of the character being replaced within the replacement input value, and the derived key; and returning the input value to the user.
44 Citations
25 Claims
-
1. A computer-implemented method of tokenization comprising the steps of:
-
receiving a request for tokenization from a user, the request containing a Session token, a token definition logically related to the user, and a received value, wherein the Session token includes a policy identifier logically related to the user and a unique key logically related to the user, and wherein the token definition comprises three or more of the following attributes; a unique key; a hashing algorithm; an iteration count; a token layout; a token type; one or more replacement values; a token scope; a token table version; a masked character; a force luhn check; a language; a mask layout; a maximum token length; a minimum token length; a preserve case; a preserve value type; a unique token; an attribute for whether or not to allow values to be replaced to a same value; and one or more flags controlling how the resulting token should be formatted; decoding and validating the Session token; retrieving the token definition, a token key logically related to the token definition, and a security policy related to the user from a database logically relating the token definition, the token key, and the security policy to the user; appending the user key and the token key to the received value to create an input value having more than one input value character; replacing each input value character of the input value with a known character to create a replacement input value, where the known character is related within a lookup table to the input value character according to the token definition; generating a cryptographically secure hash of the replacement input value to create a derived key; substituting each character of the replacement input value with a character from one or more lookup tables to create a third input value, the one or more lookup tables being selected based on one or more of the received value, the position of the character being replaced within the replacement input value, and the derived key; and returning the third input value to the user as a token. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-implemented method of tokenization comprising the steps of:
-
receiving a request for tokenization from a user, the request containing a Session token, a token definition logically related to the user, and a received value, wherein the Session token includes a policy identifier logically related to the user and a unique key logically related to the user, and wherein a customer has an API key and access to a configuration management portal; decoding and validating the Session token; retrieving the token definition, a token key logically related to the token definition, and one or more security policies related to the user from a database logically relating the token definition, the token key, and the security policy to the user, wherein a customer manages how data is accessed and who can obtain the full clear text or partially masked data after combining all the “
partial-keys”
from the various entities involved using one or more security policies;appending the user key and the token key to the received value to create an input value having more than one input value character; replacing each input value character of the input value with a known character to create a replacement input value, where the known character is related within a lookup table to the input value character according to the token definition; generating a cryptographically secure hash of the replacement input value to create a derived key; substituting each character of the replacement input value with a character from one or more lookup tables to create a third input value, the one or more lookup tables being selected based on one or more of the received value, the position of the character being replaced within the replacement input value, and the derived key; and returning the third input value to the user as a token. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A method of tokenization carried out by one or more tokenization servers comprising the steps of:
-
receiving a request for tokenization from a user, the request containing a Session token, a token definition logically related to the user, a user secret, and a received value, wherein the Session token includes a policy identifier logically related to the user and a unique key logically related to the user, and a security provider does not have access to any of the one or more tokenization servers; decoding and validating the Session token; retrieving the token definition, a token key logically related to the token definition, and a security policy related to the user from a database logically relating the token definition, the token key, and the security policy to the user; appending the user key and the token key to the received value to create an input value having more than one input value character; replacing each input value character of the input value with a known character to create a replacement input value, where the known character is related within a lookup table to the input value character according to the token definition; generating a cryptographically secure hash of the replacement input value to create a derived key; substituting each character of the replacement input value with a character from one or more lookup tables to create a third input value, the one or more lookup tables being selected based on one or more of the received value, the position of the character being replaced within the replacement input value, and the derived key; and returning the third input value to the user as a token. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25)
-
Specification