Computer implemented masked representation of data tables
First Claim
Patent Images
1. A method of masking data, the data being in a set of computer instructions stored in computer readable memory, using a processor coupled to the computer readable memory, the method comprising the acts of:
- providing a first table of data in a first portion of the computer readable memory, wherein the first table has a length and an allocation in the first portion of the computer readable memory;
the processor detecting a pointer to a location in the first table in the set of computer instructions;
the processor modifying the detected pointer in the set of computer instructions, so the detected pointer is modified by a transformation function;
storing the modified pointer in an entry in a second table in a second portion of the computer readable memory, the entry including the allocation and length of the first table; and
storing the set of computer instructions and the second table in a third portion of the computer readable memory.
1 Assignment
0 Petitions
Accused Products
Abstract
In the computer software field, method and apparatus to obfuscate (mask or hide) computer data which is part of or accessed by a computer program. The method protects (hides) accesses to tables of data in terms of the place or position of each element in the table. It does this by providing an intermediate table which describes the positions of the elements of the first table or tables, but in a transformed (modified) fashion.
12 Citations
31 Claims
-
1. A method of masking data, the data being in a set of computer instructions stored in computer readable memory, using a processor coupled to the computer readable memory, the method comprising the acts of:
-
providing a first table of data in a first portion of the computer readable memory, wherein the first table has a length and an allocation in the first portion of the computer readable memory; the processor detecting a pointer to a location in the first table in the set of computer instructions; the processor modifying the detected pointer in the set of computer instructions, so the detected pointer is modified by a transformation function; storing the modified pointer in an entry in a second table in a second portion of the computer readable memory, the entry including the allocation and length of the first table; and storing the set of computer instructions and the second table in a third portion of the computer readable memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A method of accessing masked data, the data being in a set of computer instructions stored in a computer readable memory, using a processor coupled to the computer readable memory, the method comprising the acts of:
-
the processor detecting a pointer to a table of masked data in the set of computer instructions stored in a first portion of the computer readable memory; upon detecting the pointer, the processor accessing a second table stored in a second portion of the computer readable memory, the second table including a plurality of entries, each entry corresponding to a table of data and having a length and starting address of the corresponding masked table of data and a transformation function; the processor modifying the masked table of data pointed to by the detected pointer, so the masked table of data is modified by the transformation function so as to be unmasked; and storing the unmasked table of data in the computer readable memory. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
Specification