IP Library › Granted Patent US 8,533,470
Granted Patent B2
US 8,533,470 · App. 13/178,150 · Granted Sep 10, 2013

Segmented mapping

Inventors: Ilker Taskaya (Natick, MA); Alex Nauda (Melrose, MA)
Assignee: Axis Technology Software, LLC
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 8,533,470
App. No.
13/178,150
Granted
Sep 10, 2013
Kind
B2
Abstract

Described are methods and apparatus, including computer program products for masking data. The inventions involves receiving a mapping scheme with a number of segments and a different cryptographic algorithm for each segment and then receiving a target value to be masked. The target value is then split into a number of segments based on the number of segments of the mapping scheme and the cryptographic algorithm is applied for each segment in the mapping scheme to each segment of the target value to generate an encrypted segment for each segment in the target value. Then, the encrypted segments are concatenated to create a masked value.

Claims (36)

1. A method, executed on a computer processor, for irreversibly masking data comprising:

receiving a mapping scheme comprising a number of segments and a different cryptographic algorithm for each segment, wherein the number of segments of the mapping scheme and lengths of each segment are determined randomly;

receiving a target value to be masked;

splitting the target value into a number of segments based on the number of segments of the mapping scheme;

applying the cryptographic algorithm for each segment in the mapping scheme to each segment of the target value to generate an encrypted segment for each segment in the target value; and

concatenating the encrypted segments to create a masked value.

2. The method of claim 1 wherein the cryptographic algorithm for a segment comprises:

creating a table comprising rows of mask values, wherein the number of rows of the table corresponds to the length of each segment;

creating a random number for each row in the table;

sorting the rows of the table based on the random number associated with each row; and

performing a lookup function using a value of a segment of the target value as an index for the table to retrieve a mask value of a particular row.

3. The method of claim 1 wherein the cryptographic algorithm for a segment comprises:

creating a first table comprising all possible values for a variable of length equal to the length of the segment;

creating a second table comprising rows of mask values, wherein the number of rows of the second table corresponds to a number of all possible values for the variable of length equal to the length of the segment;

creating a random number for each row in the second table;

sorting the rows of the second table based on the random number associated with each row;

joining the first table and the second table such that each possible value is paired with a mask value; and

performing a lookup function using a value of a segment of the target value as an index for the table to retrieve a mask value of a particular row.

4. A computer program product, tangibly embodied in a non-transitory computer-readable storage medium, for irreversibly masking data, the computer program product including instructions operable to cause a data processing apparatus to:

receive a mapping scheme comprising a number of segments and a different cryptographic algorithm for each segment, wherein the number of segments of the mapping scheme and lengths of each segment are determined randomly;

receive a target value to be masked;

split the target value into a number of segments based on the number of segments of the mapping scheme;

apply the cryptographic algorithm for each segment in the mapping scheme to each segment of the target value to generate an encrypted segment for each segment in the target value; and

concatenate the encrypted segments to create a masked value.

5. The computer program product of claim 4 , wherein the cryptographic algorithm instructions are operable to cause the data processing apparatus to:

create a table comprising rows of mask values, wherein the number of rows of the table corresponds to the length of each segment;

create a random number for each row in the table;

sort the rows of the table based on the random number associated with each row; and

perform a lookup function using a value of a segment of the target value as an index for the table to retrieve a mask value of a particular row.

6. The computer program product of claim 4 , wherein the cryptographic algorithm instructions are operable to cause the data processing apparatus to:

create a first table comprising all possible values for a variable of length equal to the length of the segment;

create a second table comprising rows of mask values, wherein the number of rows of the second table corresponds to a number of all possible values for the variable of length equal to the length of the first segment;

create a random number for each row in the second table;

sort the rows of the second table based on the random number associated with each row;

join the first table and the second table such that each possible value is paired with a mask value; and

perform a lookup function using a value of a segment of the target value as an index for the table to retrieve a mask value of a particular row.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 11, 2011
From: TASKAYA, ILKER; NAUDA, ALEX
To: AXIS TECHNOLOGY SOFTWARE, LLC.
Reel/Frame 026733/0505 →
Continuity (3)
Continuation 12818808 · Jun 18, 2010
Related Publication 20110314300A1 · Dec 22, 2011
Related Publication 20120210139A2 · Aug 16, 2012