IP Library Granted Patent US 10,650,165
Granted Patent B2
US 10,650,165 · App. 16/054,081 · Granted May 12, 2020

Systems and methods for tokenization to support pseudonymization of sensitive data

Inventors: Jerald Dawkins (Tulsa, OK); Michael Ray Oglesby (Broken Arrow, OK); Justin Stanley (Bixby, OK)
Assignee: TOKENEX, LLC
G06F21/6254G06F21/602G09C1/00H04L9/0618H04L9/0656H04L9/3236G06F7/588H04L2209/08
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,650,165
App. No.
16/054,081
Granted
May 12, 2020
Kind
B2
Abstract

Systems and methods for tokenization to support pseudonymization are provided herein. An example method includes receiving an input set, seeding a random number generator with one or more secret data, transposing the input set using a first random number/transposition parameter generated by the random number generator to create a transposed input set, transposing a token set using a second random number/transposition parameter generated by the random number generator to create a transposed token set, and generating a token by substituting transposed input set values with transposed token set values.

Claims (47)

1. A polyalphabetic ciphering method for tokenizing data, comprising:

receiving an input set;

seeding a random number generator with one or more secret or non-secret data sets;

transposing the input set using a first random number generated by the random number generator to create a transposed input set;

transposing a token set using a second random number generated by the random number generator to create a transposed token set; and

generating a token by substituting transposed input set values with transposed token set values.

2. The method according to claim 1 , further comprising repeating part or all of the method of claim 1 a plurality of times creating additional transposed input sets and transposed token sets.

3. The method according to claim 1 , further comprising encoding a validation value into the token.

4. The method according to claim 3 , further comprising hashing the transposed input set to create the validation value, the validation value represented as a binary value set.

5. The method according to claim 4 , further comprising extending the token set to create an extended token set.

6. The method according to claim 5 , wherein the validation value is encoded into the token using an extended transposed token set created from the extended token set.

7. The method according to claim 6 , wherein substituting further comprises:

wherein when a digit of the input set equals zero, a token value position is equal to the value of a character of the transposed input set;

locating the token value by counting through the extended transposed token set using the token value position; and

substituting a position of the transposed input set with the located token value.

8. The method according to claim 7 , wherein the extended token set has a number of token values that is at least twice a number of input characters in the input set.

9. The method according to claim 8 , further comprising validating the token by recovering the validation value using the token and the transposed token set.

10. The method according to claim 1 , wherein the one or more secret data comprises an identifier for an entity.

11. The method according to claim 10 , wherein the input data comprises sensitive information that comprises any of at least a portion of a social security number and at least a portion of a credit card number.

12. The method according to claim 1 , wherein seeding the random number generator with one or more secret data or non-secret data and a hash of the transposed input set generates the first random number that is used to transpose the input set.

13. The method according to claim 12 , wherein the first random number is generated using any of the one or more secret data and data associated with the input set.

14. The method according to claim 1 , further comprising pseudonymizing an object in a document that comprises the input set by replacing the input set included in the document with the token.

15. The method according to claim 1 , further comprising encoding the input set prior to transposing.

16. The method according to claim 1 , wherein the first and second random numbers and other subsequently generated random numbers are deterministically generated.

17. The method according to claim 1 , further comprising:

receiving a detokenization request that comprises the token and the one or more secret or non-secret data sets;

calculating the first random number using the one or more secret or non-secret data sets;

regenerating the transposed token set;

recovering the transposed input set using the transposed token set and the one or more secret or non-secret data sets and the first random number; and

recovering the input using the transposed input set.

18. A polyalphabetic ciphering method for tokenizing data, comprising:

generating a hash of an input set;

seeding a random number generator with any of the hash and secret or non-secret data;

transposing the input set using a random number generated by the random number generator;

extending a token set to generate an extended token set;

transposing the extended token set using another random number to create an extended, transposed token set;

generating a token by substituting transposed input set values with transposed token set values;

repeating the prior steps a plurality of rounds to generate a final token, wherein in each round the input set is replaced with a newly generated token from a prior round;

wherein during generation of the final token, encoding a validation value into the final token that is used to validate the token during a detokenizing process;

receiving a document that includes the input set in at least one field of the document;

replacing the input set in the at least one field with the final token to pseudonymize the document;

receiving a detokenization request;

calculating the random number using the one or more secret or non-secret data sets;

regenerating the transposed token set;

recovering the transposed input set using the transposed token set and the one or more secret or non-secret data sets and the random number; and

recovering the input set using the transposed input set.

19. The method according to claim 18 , further comprising encoding the final token as a readable object.

Assignments (6)
SECURITY INTEREST Recorded Mar 6, 2025
From: IXOPAY, INC.
To: CRESTLINE DIRECT FINANCE, L.P. AS COLLATERAL AGENT
Reel/Frame 070430/0260 →
RELEASE OF SECURITY INTEREST Recorded Feb 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: IXOPAY, INC. (F/K/A TOKENEX, INC.)
Reel/Frame 070316/0833 →
CHANGE OF NAME Recorded Feb 19, 2025
From: TOKENEX, INC.
To: IXOPAY, INC.
Reel/Frame 070268/0826 →
SECURITY INTEREST Recorded May 5, 2023
From: TOKENEX, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 063549/0171 →
NUNC PRO TUNC ASSIGNMENT Recorded Nov 30, 2021
From: TOKENEX LLC
To: TOKENEX INC.
Reel/Frame 058247/0166 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2019
From: DAWKINS, JERALD, DR; OGLESBY, MICHAEL RAY; STANLEY, JUSTIN
To: TOKENEX, LLC
Reel/Frame 051340/0072 →
Continuity (2)
Continuation 15683173 · Aug 22, 2017
Related Publication 20190065781A1 · Feb 28, 2019
Cited By (1)
US 12,572,686