IP Library Granted Patent US 12,406,092
Granted Patent B2
US 12,406,092 · App. 18/102,842 · Granted Sep 2, 2025

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: Ixopay, Inc.
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 12,406,092
App. No.
18/102,842
Granted
Sep 2, 2025
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 (49)

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

seeding a random number generator with one or more secret or non-secret data sets to create a first transposition parameter;

transposing an input set using the first transposition parameter to create a transposed input set;

transposing a token set using a second transposition parameter 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 hashing the transposed input set to create a validation value, the validation value represented as a binary value set.

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

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

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

wherein when a digit of the transposed input set equals one, a token value position is determined by adding a value of a character of the transposed input set with an input size of the input;

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.

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

wherein when a digit of the input set equals zero, the token value position is equal to the value of the 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 or non-secret data sets comprises an identifier for an entity, the sensitive information being indicative of the entity.

11. The method according to claim 10 , wherein the one or more secret or non-secret data sets 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 the one or more secret data or non-secret data sets and a hash of the transposed input set generates the first transposition parameter 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 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 transposition parameter 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 transposition parameter 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:

seeding a random number generator with any of a hash and secret or non-secret data to generate a first transposition parameter;

transposing an input set using the first transposition parameter;

extending a token set to generate an extended token set;

transposing the extended token set using a second transposition parameter to create an extended, transposed token set;

generating a token by substituting transposed input set values with the extended, 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.

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

20. The method according to claim 19 , 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 first transposition parameter using the secret or non-secret data;

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.

Assignments (4)
CHANGE OF NAME Recorded Mar 14, 2025
From: TOKENEX, INC.
To: IXOPAY, INC.
Reel/Frame 070510/0549 →
SECURITY INTEREST Recorded Mar 6, 2025
From: IXOPAY, INC.
To: CRESTLINE DIRECT FINANCE, L.P. AS COLLATERAL AGENT
Reel/Frame 070430/0260 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2025
From: DAWKINS, JERALD; STANLEY, JUSTIN; OGLESBY, MICHAEL RAY
To: TOKENEX, LLC
Reel/Frame 070381/0714 →
NUNC PRO TUNC ASSIGNMENT Recorded Mar 3, 2025
From: TOKENEX, LLC
To: TOKENEX, INC.
Reel/Frame 070381/0875 →
Continuity (4)
Continuation 16871203 · May 11, 2020
Continuation 16054081 · Aug 3, 2018
Continuation 15683173 · Aug 22, 2017
Related Publication 20230359768A1 · Nov 9, 2023
References Cited (22)
US 4471459A · Dickinson · 1984 [cited by examiner]
US 4591704A · Sherwood · 1986 [cited by examiner]
US 6275301B1 · Bobrow · 2001 [cited by examiner]
US 7873569B1 · Cahn · 2011 [cited by examiner]
US 8010510B1 · Vo · 2011 [cited by examiner]
US 8775810B1 · Snodgrass · 2014 [cited by examiner]
US 9294915B2 · Fascenda · 2016 [cited by examiner]
US 20070071068A1 · Lablans · 2007 [cited by examiner]
US 20080104399A1 · Fascenda · 2008 [cited by examiner]
US 20100268966A1 · Leggette · 2010 [cited by examiner]
US 20120102548A1 · Tamura · 2012 [cited by examiner]
US 20140379823A1 · Wilsher · 2014 [cited by examiner]
US 20150033306A1 · Dickenson · 2015 [cited by examiner]
US 20150067881A1 · Badstieber · 2015 [cited by examiner]
US 20150379013A1 · Purcell · 2015 [cited by examiner]
US 20160085721A1 · Abali · 2016 [cited by examiner]
US 20160142409A1 · Frei · 2016 [cited by examiner]
US 20170118215A1 · Varadarajan · 2017 [cited by examiner]
US 20170134587A1 · Lawson · 2017 [cited by examiner]
US 20170147829A1 · Cismas · 2017 [cited by examiner]
US 20180314835A1 · Dodson · 2018 [cited by examiner]
US 20200044821A1 · Lopez Hernandez · 2020 [cited by examiner]