IP Library Granted Patent US 9,773,125
Granted Patent B2
US 9,773,125 · App. 14/958,705 · Granted Sep 26, 2017

Tokenization column replacement

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 9,773,125
App. No.
14/958,705
Granted
Sep 26, 2017
Kind
B2
Abstract

A tokenization system includes a vector table and one or more token tables. The tokenization system accesses sensitive data and a vector from a vector table column, and modifies the sensitive data based on the accessed vector. The tokenization system then queries the one or more token tables using a portion of the modified data to identify a token mapped to the portion of the modified data. The portion of the modified data is replaced with the token to create tokenized data. The vector table can be updated by replacing a vector table column with an updated vector table column. The tokenization system can modify subsequent data using the updated vector column prior to tokenization.

Claims (37)

1. A computer-implemented method for tokenizing data, comprising:

accessing, by an input module of a tokenization system, a set of initialization vectors comprising a plurality of initialization vectors;

tokenizing, by a tokenization engine of the tokenization system, first data using one or more initialization vectors from the set of initialization vectors to form first tokenized data;

accessing, by the input module of the tokenization system, one or more updated initialization vectors in response to one or more of a detection of a security violation, an identity of a user associated with the first data, and a circumstance of tokenizing the first data;

in response to a bandwidth available to the tokenization system being below a threshold bandwidth, replacing, by an update engine of the tokenization system, a subset of the set of initialization vectors with one or more updated initialization vectors to form an updated set of initialization vectors, the subset of initialization vectors including fewer initialization vectors than the set of initialization vectors; and

tokenizing, by the tokenization engine of the tokenization system, second data using one or more initialization vectors from the updated set of initialization vectors to form second tokenized data.

2. The method of claim 1 , wherein the set of initialization vectors is received from a server communicatively coupled to the tokenization system.

3. The method of claim 1 , wherein tokenizing the first data using the one or more initialization vectors comprises modifying the first data to form modified first data and then tokenizing the modified first data.

4. The method of claim 3 , wherein modifying the first data comprises performing modulo addition between a portion of the first data and a value of the one or more initialization vectors, and replacing the portion of the first data with the sum of the modulo addition.

5. The method of claim 3 , wherein tokenizing the modified first data comprises querying an accessed token table mapping each of a plurality of token values to a different one of a plurality of input values with a value of a portion of the first modified data to identify a token value mapped to the value of the portion of the modified first data and replacing the portion of the modified first data with the identified token value.

6. The method of claim 1 , wherein the one or more updated initialization vectors are accessed from a column of a vector table including a plurality of initialization vectors.

7. The method of claim 1 , wherein the one or more updated initialization vectors are generated based on seed values received from a vector table.

8. A tokenization system, comprising:

a non-transitory computer-readable storage medium storing executable computer instructions configured to, when executed by a processor, perform steps comprising:

accessing, by an input module, a set of initialization vectors comprising a plurality of initialization vectors;

tokenizing, by a tokenization engine, first data using one or more initialization vectors from the set of initialization vectors to form first tokenized data;

accessing, by the input module, one or more updated initialization vectors in response to one or more of a detection of a security violation, an identity of a user associated with the first data, and a circumstance of tokenizing the first data operation;

in response to a bandwidth available to the tokenization system being below a threshold bandwidth, replacing, by an update engine, a subset of the set of initialization vectors with one or more updated initialization vectors to form an updated set of initialization vectors, the subset of initialization vectors including fewer initialization vectors than the set of initialization vectors; and

tokenizing, by the tokenization engine, second data using one or more initialization vectors from the updated set of initialization vectors to form second tokenized data; and

a processor configured to execute the instructions.

9. The tokenization system of claim 8 , wherein the set of initialization vectors is received from a server communicatively coupled to the tokenization system.

10. The tokenization system of claim 8 , wherein tokenizing the first data using the one or more initialization vectors comprises modifying the first data to form modified first data and then tokenizing the modified first data.

11. The tokenization system of claim 10 , wherein modifying the first data comprises performing modulo addition between a portion of the first data and a value of the one or more initialization vectors, and replacing the portion of the first data with the sum of the modulo addition.

12. The tokenization system of claim 10 , wherein tokenizing the modified first data comprises querying an accessed token table mapping each of a plurality of token values to a different one of a plurality of input values with a value of a portion of the modified first data to identify a token value mapped to the value of the portion of the first modified data and replacing the portion of the modified first data with the identified token value.

13. The tokenization system of claim 8 , wherein the one or more updated initialization vectors are accessed from a column of a vector table including a plurality of initialization vectors.

14. The tokenization system of claim 8 , wherein the one or more updated initialization vectors are generated based on seed values received from a vector table.

15. A non-transitory computer-readable storage medium storing executable computer instructions configured to, when executed by a hardware processor of a tokenization system, perform steps comprising:

accessing, by an input module of the tokenization system, a set of initialization vectors comprising a plurality of initialization vectors;

tokenizing, by a tokenization engine of the tokenization system, first data using one or more initialization vectors from the set of initialization vectors to form first tokenized data;

accessing, by the input module of the tokenization system, one or more updated initialization vectors in response to one or more of a detection of a security violation, an identity of a user associated with the first data, and a circumstance of tokenizing the first data;

in response to a bandwidth available to the tokenization system being below a threshold bandwidth, replacing, by an update engine of the tokenization system, a subset of the set of initialization vectors with the one or more updated initialization vectors to form an updated set of initialization vectors, the subset of initialization vectors including fewer initialization vectors than the set of initialization vectors; and

tokenizing, by the tokenization engine of the tokenization system, second data using one or more initialization vectors from the updated set of initialization vectors to form second tokenized data.

16. The non-transitory computer-readable storage medium of claim 15 , wherein the set of initialization vectors is received from a server communicatively coupled to the tokenization system.

17. The non-transitory computer-readable storage medium of claim 15 , wherein tokenizing the first data using the one or more initialization vectors comprises modifying the first data to form modified first data and then tokenizing the modified first data.

18. The non-transitory computer-readable storage medium of claim 17 , wherein modifying the first data comprises performing modulo addition between a portion of the first data and a value of the one or more initialization vectors, and replacing the portion of the first data with the sum of the modulo addition.

19. The non-transitory computer-readable storage medium of claim 17 , wherein tokenizing the modified first data comprises querying an accessed token table mapping each of a plurality of token values to a different one of a plurality of input values with a value of a portion of the modified first data to identify a token value mapped to the value of the portion of the modified first data and replacing the portion of the first modified data with the identified token value.

20. The non-transitory computer-readable storage medium of claim 15 , wherein the one or more updated initialization vectors are accessed from a column of a vector table including a plurality of initialization vectors.

Assignments (3)
SECURITY INTEREST Recorded Aug 2, 2024
From: PROTEGRITY USA, INC.; PROTEGRITY LIMITED HOLDING, LLC; PROTEGRITY US HOLDING, LLC; PROTEGRITY CORPORATION; KAVADO, LLC
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 068326/0020 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: PROTEGRITY CORPORATION
To: PROTEGRITY US HOLDING, LLC
Reel/Frame 067566/0462 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2015
From: MATTSSON, ULF; ROZENBERG, YIGAL; LEVY, VICHAI
To: PROTEGRITY CORPORATION
Reel/Frame 037392/0583 →